jaci-ui 0.6.2 → 0.7.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 (170) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +31 -0
  3. package/dist/components/alert/alert.cjs +11 -1
  4. package/dist/components/alert/alert.cjs.map +1 -1
  5. package/dist/components/alert/alert.d.cts +4 -1
  6. package/dist/components/alert/alert.d.ts +4 -1
  7. package/dist/components/alert/alert.js +11 -2
  8. package/dist/components/alert/alert.js.map +1 -1
  9. package/dist/components/alert/index.d.cts +2 -2
  10. package/dist/components/alert/index.d.ts +2 -2
  11. package/dist/components/aspect-ratio/aspect-ratio.cjs +23 -0
  12. package/dist/components/aspect-ratio/aspect-ratio.cjs.map +1 -0
  13. package/dist/components/aspect-ratio/aspect-ratio.d.cts +9 -0
  14. package/dist/components/aspect-ratio/aspect-ratio.d.ts +9 -0
  15. package/dist/components/aspect-ratio/aspect-ratio.js +23 -0
  16. package/dist/components/aspect-ratio/aspect-ratio.js.map +1 -0
  17. package/dist/components/aspect-ratio/index.d.cts +2 -0
  18. package/dist/components/aspect-ratio/index.d.ts +2 -0
  19. package/dist/components/card/card.cjs +10 -1
  20. package/dist/components/card/card.cjs.map +1 -1
  21. package/dist/components/card/card.d.cts +15 -2
  22. package/dist/components/card/card.d.ts +15 -2
  23. package/dist/components/card/card.js +10 -2
  24. package/dist/components/card/card.js.map +1 -1
  25. package/dist/components/card/index.d.cts +2 -2
  26. package/dist/components/card/index.d.ts +2 -2
  27. package/dist/components/code/code.cjs +39 -0
  28. package/dist/components/code/code.cjs.map +1 -0
  29. package/dist/components/code/code.d.cts +14 -0
  30. package/dist/components/code/code.d.ts +14 -0
  31. package/dist/components/code/code.js +39 -0
  32. package/dist/components/code/code.js.map +1 -0
  33. package/dist/components/code/index.d.cts +2 -0
  34. package/dist/components/code/index.d.ts +2 -0
  35. package/dist/components/feedback/badge.cjs +6 -3
  36. package/dist/components/feedback/badge.cjs.map +1 -1
  37. package/dist/components/feedback/badge.d.cts +1 -0
  38. package/dist/components/feedback/badge.d.ts +1 -0
  39. package/dist/components/feedback/badge.js +6 -3
  40. package/dist/components/feedback/badge.js.map +1 -1
  41. package/dist/components/figure/figure.cjs +125 -0
  42. package/dist/components/figure/figure.cjs.map +1 -0
  43. package/dist/components/figure/figure.d.cts +24 -0
  44. package/dist/components/figure/figure.d.ts +24 -0
  45. package/dist/components/figure/figure.js +122 -0
  46. package/dist/components/figure/figure.js.map +1 -0
  47. package/dist/components/figure/index.d.cts +2 -0
  48. package/dist/components/figure/index.d.ts +2 -0
  49. package/dist/components/image/image.cjs +103 -0
  50. package/dist/components/image/image.cjs.map +1 -0
  51. package/dist/components/image/image.d.cts +21 -0
  52. package/dist/components/image/image.d.ts +21 -0
  53. package/dist/components/image/image.js +103 -0
  54. package/dist/components/image/image.js.map +1 -0
  55. package/dist/components/image/index.d.cts +2 -0
  56. package/dist/components/image/index.d.ts +2 -0
  57. package/dist/components/kbd/index.d.cts +2 -0
  58. package/dist/components/kbd/index.d.ts +2 -0
  59. package/dist/components/kbd/kbd.cjs +23 -0
  60. package/dist/components/kbd/kbd.cjs.map +1 -0
  61. package/dist/components/kbd/kbd.d.cts +12 -0
  62. package/dist/components/kbd/kbd.d.ts +12 -0
  63. package/dist/components/kbd/kbd.js +23 -0
  64. package/dist/components/kbd/kbd.js.map +1 -0
  65. package/dist/components/progress/progress.cjs +19 -7
  66. package/dist/components/progress/progress.cjs.map +1 -1
  67. package/dist/components/progress/progress.d.cts +4 -0
  68. package/dist/components/progress/progress.d.ts +4 -0
  69. package/dist/components/progress/progress.js +19 -7
  70. package/dist/components/progress/progress.js.map +1 -1
  71. package/dist/components/quote/index.d.cts +2 -0
  72. package/dist/components/quote/index.d.ts +2 -0
  73. package/dist/components/quote/quote.cjs +38 -0
  74. package/dist/components/quote/quote.cjs.map +1 -0
  75. package/dist/components/quote/quote.d.cts +19 -0
  76. package/dist/components/quote/quote.d.ts +19 -0
  77. package/dist/components/quote/quote.js +38 -0
  78. package/dist/components/quote/quote.js.map +1 -0
  79. package/dist/components/stat/index.d.cts +2 -0
  80. package/dist/components/stat/index.d.ts +2 -0
  81. package/dist/components/stat/stat.cjs +122 -0
  82. package/dist/components/stat/stat.cjs.map +1 -0
  83. package/dist/components/stat/stat.d.cts +51 -0
  84. package/dist/components/stat/stat.d.ts +51 -0
  85. package/dist/components/stat/stat.js +114 -0
  86. package/dist/components/stat/stat.js.map +1 -0
  87. package/dist/components/stat-group/index.d.cts +2 -0
  88. package/dist/components/stat-group/index.d.ts +2 -0
  89. package/dist/components/typography/heading.cjs +8 -2
  90. package/dist/components/typography/heading.cjs.map +1 -1
  91. package/dist/components/typography/heading.d.cts +8 -1
  92. package/dist/components/typography/heading.d.ts +8 -1
  93. package/dist/components/typography/heading.js +8 -2
  94. package/dist/components/typography/heading.js.map +1 -1
  95. package/dist/components/typography/index.d.cts +2 -2
  96. package/dist/components/typography/index.d.ts +2 -2
  97. package/dist/components/typography/paragraph.cjs +7 -2
  98. package/dist/components/typography/paragraph.cjs.map +1 -1
  99. package/dist/components/typography/paragraph.d.cts +8 -2
  100. package/dist/components/typography/paragraph.d.ts +8 -2
  101. package/dist/components/typography/paragraph.js +7 -2
  102. package/dist/components/typography/paragraph.js.map +1 -1
  103. package/dist/components/typography/text.cjs +6 -2
  104. package/dist/components/typography/text.cjs.map +1 -1
  105. package/dist/components/typography/text.d.cts +5 -0
  106. package/dist/components/typography/text.d.ts +5 -0
  107. package/dist/components/typography/text.js +6 -2
  108. package/dist/components/typography/text.js.map +1 -1
  109. package/dist/index.cjs +27 -0
  110. package/dist/index.d.cts +19 -4
  111. package/dist/index.d.ts +19 -4
  112. package/dist/index.js +10 -3
  113. package/dist/styled-system/recipes/alert.cjs +2 -1
  114. package/dist/styled-system/recipes/alert.cjs.map +1 -1
  115. package/dist/styled-system/recipes/alert.js +2 -1
  116. package/dist/styled-system/recipes/alert.js.map +1 -1
  117. package/dist/styled-system/recipes/aspect-ratio-box.cjs +25 -0
  118. package/dist/styled-system/recipes/aspect-ratio-box.cjs.map +1 -0
  119. package/dist/styled-system/recipes/aspect-ratio-box.js +25 -0
  120. package/dist/styled-system/recipes/aspect-ratio-box.js.map +1 -0
  121. package/dist/styled-system/recipes/badge.cjs +16 -6
  122. package/dist/styled-system/recipes/badge.cjs.map +1 -1
  123. package/dist/styled-system/recipes/badge.js +16 -6
  124. package/dist/styled-system/recipes/badge.js.map +1 -1
  125. package/dist/styled-system/recipes/code.cjs +33 -0
  126. package/dist/styled-system/recipes/code.cjs.map +1 -0
  127. package/dist/styled-system/recipes/code.js +33 -0
  128. package/dist/styled-system/recipes/code.js.map +1 -0
  129. package/dist/styled-system/recipes/figure.cjs +42 -0
  130. package/dist/styled-system/recipes/figure.cjs.map +1 -0
  131. package/dist/styled-system/recipes/figure.js +42 -0
  132. package/dist/styled-system/recipes/figure.js.map +1 -0
  133. package/dist/styled-system/recipes/heading.cjs +34 -9
  134. package/dist/styled-system/recipes/heading.cjs.map +1 -1
  135. package/dist/styled-system/recipes/heading.js +34 -9
  136. package/dist/styled-system/recipes/heading.js.map +1 -1
  137. package/dist/styled-system/recipes/image.cjs +56 -0
  138. package/dist/styled-system/recipes/image.cjs.map +1 -0
  139. package/dist/styled-system/recipes/image.js +56 -0
  140. package/dist/styled-system/recipes/image.js.map +1 -0
  141. package/dist/styled-system/recipes/kbd.cjs +39 -0
  142. package/dist/styled-system/recipes/kbd.cjs.map +1 -0
  143. package/dist/styled-system/recipes/kbd.js +39 -0
  144. package/dist/styled-system/recipes/kbd.js.map +1 -0
  145. package/dist/styled-system/recipes/paragraph.cjs +25 -2
  146. package/dist/styled-system/recipes/paragraph.cjs.map +1 -1
  147. package/dist/styled-system/recipes/paragraph.js +25 -2
  148. package/dist/styled-system/recipes/paragraph.js.map +1 -1
  149. package/dist/styled-system/recipes/progress.cjs +1 -0
  150. package/dist/styled-system/recipes/progress.cjs.map +1 -1
  151. package/dist/styled-system/recipes/progress.js +1 -0
  152. package/dist/styled-system/recipes/progress.js.map +1 -1
  153. package/dist/styled-system/recipes/quote.cjs +39 -0
  154. package/dist/styled-system/recipes/quote.cjs.map +1 -0
  155. package/dist/styled-system/recipes/quote.js +39 -0
  156. package/dist/styled-system/recipes/quote.js.map +1 -0
  157. package/dist/styled-system/recipes/stat-group.cjs +40 -0
  158. package/dist/styled-system/recipes/stat-group.cjs.map +1 -0
  159. package/dist/styled-system/recipes/stat-group.js +40 -0
  160. package/dist/styled-system/recipes/stat-group.js.map +1 -0
  161. package/dist/styled-system/recipes/stat.cjs +63 -0
  162. package/dist/styled-system/recipes/stat.cjs.map +1 -0
  163. package/dist/styled-system/recipes/stat.js +63 -0
  164. package/dist/styled-system/recipes/stat.js.map +1 -0
  165. package/dist/styled-system/recipes/text.cjs +23 -2
  166. package/dist/styled-system/recipes/text.cjs.map +1 -1
  167. package/dist/styled-system/recipes/text.js +23 -2
  168. package/dist/styled-system/recipes/text.js.map +1 -1
  169. package/dist/styles.css +1005 -81
  170. package/package.json +1 -1
package/dist/styles.css CHANGED
@@ -593,6 +593,21 @@
593
593
  @layer recipes{
594
594
  @layer _base{
595
595
 
596
+ .jaci-aspectRatioBox {
597
+ overflow: hidden;
598
+ box-sizing: border-box;
599
+ display: block;
600
+ position: relative;
601
+ width: 100%;
602
+ }
603
+
604
+ .jaci-aspectRatioBox > * {
605
+ inset: var(--jaci-spacing-0);
606
+ position: absolute;
607
+ height: 100%;
608
+ width: 100%;
609
+ }
610
+
596
611
  .jaci-spinner {
597
612
  animation: var(--jaci-animations-spin);
598
613
  border-color: var(--jaci-colors-transparent);
@@ -644,6 +659,21 @@
644
659
  transform: translateY(0);
645
660
  }
646
661
 
662
+ .jaci-code {
663
+ border-color: var(--jaci-colors-border-default);
664
+ border-radius: var(--jaci-radii-md);
665
+ border-style: solid;
666
+ border-width: 1px;
667
+ background-color: var(--jaci-colors-surface-subtle);
668
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
669
+ font-size: var(--jaci-font-sizes-sm);
670
+ max-width: 100%;
671
+ }
672
+
673
+ .jaci-code,.jaci-input {
674
+ color: var(--jaci-colors-fg-default);
675
+ }
676
+
647
677
  .jaci-input {
648
678
  border-color: var(--jaci-colors-border-default);
649
679
  border-radius: var(--jaci-radii-lg);
@@ -652,7 +682,6 @@
652
682
  outline: var(--jaci-borders-none);
653
683
  background-color: var(--jaci-colors-transparent);
654
684
  box-sizing: border-box;
655
- color: var(--jaci-colors-fg-default);
656
685
  font-family: system-ui, sans-serif;
657
686
  --transition-duration: var(--jaci-durations-slow);
658
687
  transition-duration: var(--jaci-durations-slow);
@@ -788,6 +817,17 @@
788
817
  outline-offset: 2px;
789
818
  }
790
819
 
820
+ .jaci-kbd {
821
+ border-radius: var(--jaci-radii-md);
822
+ align-items: center;
823
+ display: inline-flex;
824
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
825
+ font-weight: 600;
826
+ justify-content: center;
827
+ line-height: 1;
828
+ white-space: nowrap;
829
+ }
830
+
791
831
  .jaci-stack {
792
832
  display: flex;
793
833
  }
@@ -803,12 +843,53 @@
803
843
  flex-shrink: 0;
804
844
  }
805
845
 
846
+ .jaci-quote {
847
+ border-inline-start: 4px solid;
848
+ gap: var(--jaci-spacing-3);
849
+ margin-inline: var(--jaci-spacing-0);
850
+ padding-block: var(--jaci-spacing-3);
851
+ box-sizing: border-box;
852
+ color: var(--jaci-colors-fg-default);
853
+ display: grid;
854
+ overflow-wrap: anywhere;
855
+ padding-inline-end: var(--jaci-spacing-4);
856
+ padding-inline-start: var(--jaci-spacing-5);
857
+ font-style: italic;
858
+ line-height: 1.6;
859
+ max-width: 100%;
860
+ min-width: var(--jaci-sizes-0);
861
+ }
862
+
863
+ .jaci-quote > [data-slot='quote-footer'] {
864
+ gap: var(--jaci-spacing-2);
865
+ align-items: baseline;
866
+ color: var(--jaci-colors-fg-muted);
867
+ display: flex;
868
+ flex-wrap: wrap;
869
+ font-size: var(--jaci-font-sizes-sm);
870
+ font-style: normal;
871
+ min-width: var(--jaci-sizes-0);
872
+ }
873
+
874
+ .jaci-quote > [data-slot='quote-author'] {
875
+ font-weight: 600;
876
+ }
877
+
878
+ .jaci-quote > [data-slot='quote-source'] {
879
+ overflow-wrap: anywhere;
880
+ }
881
+
806
882
  .jaci-skeleton {
807
883
  overflow: hidden;
808
884
  background-color: var(--jaci-colors-surface-subtle);
809
885
  display: block;
810
886
  }
811
887
 
888
+ .jaci-statGroup {
889
+ display: grid;
890
+ min-width: var(--jaci-sizes-0);
891
+ }
892
+
812
893
  .jaci-toggle {
813
894
  border-color: var(--jaci-colors-border-default);
814
895
  border-radius: var(--jaci-radii-md);
@@ -1033,6 +1114,30 @@
1033
1114
  width: 100%;
1034
1115
  }
1035
1116
 
1117
+ .jaci-code--variant_inline {
1118
+ padding-inline: var(--jaci-spacing-1);
1119
+ padding-block: var(--jaci-spacing-0\.5);
1120
+ display: inline;
1121
+ }
1122
+
1123
+ .jaci-code--variant_block {
1124
+ padding: var(--jaci-spacing-4);
1125
+ display: block;
1126
+ white-space: pre;
1127
+ overflow-x: auto;
1128
+ }
1129
+
1130
+ .jaci-code--wrap_true {
1131
+ white-space: pre-wrap;
1132
+ overflow-wrap: anywhere;
1133
+ }
1134
+
1135
+ .jaci-code--truncate_true {
1136
+ overflow: hidden;
1137
+ text-overflow: ellipsis;
1138
+ white-space: nowrap;
1139
+ }
1140
+
1036
1141
  .jaci-input--size_md {
1037
1142
  min-height: var(--jaci-sizes-10);
1038
1143
  }
@@ -1066,31 +1171,96 @@
1066
1171
  font-size: var(--jaci-font-sizes-lg);
1067
1172
  }
1068
1173
 
1069
- .jaci-badge--tone_neutral {
1174
+ .jaci-badge--tone_neutral-solid {
1070
1175
  background: var(--jaci-colors-neutral-600);
1071
1176
  color: var(--jaci-colors-fg-on-accent);
1072
1177
  }
1073
1178
 
1074
- .jaci-badge--tone_accent {
1179
+ .jaci-badge--tone_accent-solid {
1075
1180
  background: var(--jaci-colors-accent-default);
1076
1181
  color: var(--jaci-colors-fg-on-accent);
1077
1182
  }
1078
1183
 
1079
- .jaci-badge--tone_success {
1184
+ .jaci-badge--tone_success-solid {
1080
1185
  background: var(--jaci-colors-success);
1081
1186
  color: var(--jaci-colors-fg-on-accent);
1082
1187
  }
1083
1188
 
1084
- .jaci-badge--tone_warning {
1189
+ .jaci-badge--tone_warning-solid {
1085
1190
  background: var(--jaci-colors-warning);
1086
1191
  color: var(--jaci-colors-fg-on-accent);
1087
1192
  }
1088
1193
 
1089
- .jaci-badge--tone_danger {
1194
+ .jaci-badge--tone_danger-solid {
1090
1195
  background: var(--jaci-colors-danger);
1091
1196
  color: var(--jaci-colors-fg-on-accent);
1092
1197
  }
1093
1198
 
1199
+ .jaci-badge--tone_neutral-soft {
1200
+ background-color: var(--jaci-colors-surface-subtle);
1201
+ color: var(--jaci-colors-fg-default);
1202
+ }
1203
+
1204
+ .jaci-badge--tone_accent-soft {
1205
+ background-color: var(--jaci-colors-selected);
1206
+ color: var(--jaci-colors-accent-default);
1207
+ }
1208
+
1209
+ .jaci-badge--tone_success-soft {
1210
+ background-color: var(--jaci-colors-surface-subtle);
1211
+ color: var(--jaci-colors-success);
1212
+ }
1213
+
1214
+ .jaci-badge--tone_warning-soft {
1215
+ background-color: var(--jaci-colors-surface-subtle);
1216
+ color: var(--jaci-colors-warning);
1217
+ }
1218
+
1219
+ .jaci-badge--tone_danger-soft {
1220
+ background-color: var(--jaci-colors-surface-subtle);
1221
+ color: var(--jaci-colors-danger);
1222
+ }
1223
+
1224
+ .jaci-badge--tone_neutral-outline {
1225
+ border-color: var(--jaci-colors-border-strong);
1226
+ border-style: solid;
1227
+ border-width: 1px;
1228
+ background-color: var(--jaci-colors-transparent);
1229
+ color: var(--jaci-colors-fg-default);
1230
+ }
1231
+
1232
+ .jaci-badge--tone_accent-outline {
1233
+ border-color: var(--jaci-colors-accent-default);
1234
+ border-style: solid;
1235
+ border-width: 1px;
1236
+ background-color: var(--jaci-colors-transparent);
1237
+ color: var(--jaci-colors-accent-default);
1238
+ }
1239
+
1240
+ .jaci-badge--tone_success-outline {
1241
+ border-color: var(--jaci-colors-success);
1242
+ border-style: solid;
1243
+ border-width: 1px;
1244
+ background-color: var(--jaci-colors-transparent);
1245
+ color: var(--jaci-colors-success);
1246
+ }
1247
+
1248
+ .jaci-badge--tone_warning-outline {
1249
+ border-color: var(--jaci-colors-warning);
1250
+ border-style: solid;
1251
+ border-width: 1px;
1252
+ background-color: var(--jaci-colors-transparent);
1253
+ color: var(--jaci-colors-warning);
1254
+ }
1255
+
1256
+ .jaci-badge--tone_danger-outline {
1257
+ border-color: var(--jaci-colors-danger);
1258
+ border-style: solid;
1259
+ border-width: 1px;
1260
+ background-color: var(--jaci-colors-transparent);
1261
+ color: var(--jaci-colors-danger);
1262
+ }
1263
+
1094
1264
  .jaci-iconButton--variant_outline {
1095
1265
  background-color: var(--jaci-colors-transparent);
1096
1266
  color: var(--jaci-colors-fg-default);
@@ -1150,6 +1320,41 @@
1150
1320
  width: var(--jaci-sizes-12);
1151
1321
  }
1152
1322
 
1323
+ .jaci-kbd--size_md {
1324
+ padding-inline: var(--jaci-spacing-2);
1325
+ font-size: var(--jaci-font-sizes-sm);
1326
+ min-height: var(--jaci-sizes-6);
1327
+ }
1328
+
1329
+ .jaci-kbd--variant_subtle {
1330
+ background-color: var(--jaci-colors-surface-subtle);
1331
+ color: var(--jaci-colors-fg-default);
1332
+ }
1333
+
1334
+ .jaci-kbd--size_sm {
1335
+ padding-inline: var(--jaci-spacing-1\.5);
1336
+ font-size: var(--jaci-font-sizes-xs);
1337
+ min-height: var(--jaci-sizes-5);
1338
+ }
1339
+
1340
+ .jaci-kbd--size_lg {
1341
+ padding-inline: var(--jaci-spacing-2\.5);
1342
+ font-size: var(--jaci-font-sizes-md);
1343
+ min-height: var(--jaci-sizes-8);
1344
+ }
1345
+
1346
+ .jaci-kbd--variant_solid {
1347
+ background-color: var(--jaci-colors-fg-default);
1348
+ color: var(--jaci-colors-surface-canvas);
1349
+ }
1350
+
1351
+ .jaci-kbd--variant_outline {
1352
+ border-color: var(--jaci-colors-border-strong);
1353
+ border-style: solid;
1354
+ border-width: 1px;
1355
+ color: var(--jaci-colors-fg-default);
1356
+ }
1357
+
1153
1358
  .jaci-stack--direction_vertical {
1154
1359
  flex-direction: column;
1155
1360
  }
@@ -1257,6 +1462,33 @@
1257
1462
  height: 100%;
1258
1463
  }
1259
1464
 
1465
+ .jaci-quote--size_md {
1466
+ font-size: var(--jaci-font-sizes-md);
1467
+ }
1468
+
1469
+ .jaci-quote--variant_default {
1470
+ border-color: var(--jaci-colors-border-default);
1471
+ background-color: var(--jaci-colors-surface-raised);
1472
+ }
1473
+
1474
+ .jaci-quote--variant_accent {
1475
+ border-color: var(--jaci-colors-accent-default);
1476
+ background-color: var(--jaci-colors-selected);
1477
+ }
1478
+
1479
+ .jaci-quote--variant_subtle {
1480
+ border-color: var(--jaci-colors-border-strong);
1481
+ background-color: var(--jaci-colors-surface-subtle);
1482
+ }
1483
+
1484
+ .jaci-quote--size_sm {
1485
+ font-size: var(--jaci-font-sizes-sm);
1486
+ }
1487
+
1488
+ .jaci-quote--size_lg {
1489
+ font-size: var(--jaci-font-sizes-lg);
1490
+ }
1491
+
1260
1492
  .jaci-skeleton--animated_true {
1261
1493
  animation: jaciSkeletonPulse 1.5s cubic-bezier(0.4, 0, 0.6, 1) infinite;
1262
1494
  }
@@ -1279,6 +1511,26 @@
1279
1511
  width: var(--jaci-sizes-10);
1280
1512
  }
1281
1513
 
1514
+ .jaci-statGroup--columns_3 {
1515
+ grid-template-columns: minmax(0, 1fr);
1516
+ }
1517
+
1518
+ .jaci-statGroup--gap_md {
1519
+ gap: var(--jaci-spacing-4);
1520
+ }
1521
+
1522
+ .jaci-statGroup--columns_1,.jaci-statGroup--columns_2,.jaci-statGroup--columns_4 {
1523
+ grid-template-columns: minmax(0, 1fr);
1524
+ }
1525
+
1526
+ .jaci-statGroup--gap_sm {
1527
+ gap: var(--jaci-spacing-2);
1528
+ }
1529
+
1530
+ .jaci-statGroup--gap_lg {
1531
+ gap: var(--jaci-spacing-6);
1532
+ }
1533
+
1282
1534
  .jaci-toggle--size_md {
1283
1535
  padding-inline: var(--jaci-spacing-3);
1284
1536
  font-size: var(--jaci-font-sizes-sm);
@@ -1310,14 +1562,77 @@
1310
1562
  min-height: var(--jaci-sizes-11);
1311
1563
  }
1312
1564
 
1565
+ .jaci-heading--weight_bold {
1566
+ font-weight: 700;
1567
+ }
1568
+
1313
1569
  .jaci-heading--size_xl {
1314
1570
  font-size: var(--jaci-font-sizes-2xl);
1315
1571
  }
1316
1572
 
1573
+ .jaci-heading--width_auto {
1574
+ width: auto;
1575
+ }
1576
+
1317
1577
  .jaci-heading--size_md {
1318
1578
  font-size: var(--jaci-font-sizes-lg);
1319
1579
  }
1320
1580
 
1581
+ .jaci-heading--weight_normal {
1582
+ font-weight: 400;
1583
+ }
1584
+
1585
+ .jaci-heading--weight_medium {
1586
+ font-weight: 500;
1587
+ }
1588
+
1589
+ .jaci-heading--weight_semibold {
1590
+ font-weight: 600;
1591
+ }
1592
+
1593
+ .jaci-heading--truncate_true {
1594
+ overflow: hidden;
1595
+ text-overflow: ellipsis;
1596
+ white-space: nowrap;
1597
+ }
1598
+
1599
+ .jaci-heading--lineClamp_1 {
1600
+ -webkit-line-clamp: 1;
1601
+ }
1602
+
1603
+ .jaci-heading--lineClamp_1,.jaci-heading--lineClamp_2 {
1604
+ overflow: hidden;
1605
+ display: -webkit-box;
1606
+ -webkit-box-orient: vertical;
1607
+ }
1608
+
1609
+ .jaci-heading--lineClamp_2 {
1610
+ -webkit-line-clamp: 2;
1611
+ }
1612
+
1613
+ .jaci-heading--lineClamp_3 {
1614
+ -webkit-line-clamp: 3;
1615
+ }
1616
+
1617
+ .jaci-heading--lineClamp_3,.jaci-heading--lineClamp_4 {
1618
+ overflow: hidden;
1619
+ display: -webkit-box;
1620
+ -webkit-box-orient: vertical;
1621
+ }
1622
+
1623
+ .jaci-heading--lineClamp_4 {
1624
+ -webkit-line-clamp: 4;
1625
+ }
1626
+
1627
+ .jaci-heading--width_fit {
1628
+ width: fit-content;
1629
+ }
1630
+
1631
+ .jaci-heading--width_full {
1632
+ min-width: var(--jaci-sizes-0);
1633
+ width: 100%;
1634
+ }
1635
+
1321
1636
  .jaci-heading--size_xs,.jaci-heading--size_sm {
1322
1637
  font-size: var(--jaci-font-sizes-md);
1323
1638
  }
@@ -1340,6 +1655,73 @@
1340
1655
  color: var(--jaci-colors-accent-hover);
1341
1656
  }
1342
1657
 
1658
+ .jaci-paragraph--weight_normal {
1659
+ font-weight: 400;
1660
+ }
1661
+
1662
+ .jaci-paragraph--width_auto {
1663
+ width: auto;
1664
+ }
1665
+
1666
+ .jaci-paragraph--weight_medium {
1667
+ font-weight: 500;
1668
+ }
1669
+
1670
+ .jaci-paragraph--weight_semibold {
1671
+ font-weight: 600;
1672
+ }
1673
+
1674
+ .jaci-paragraph--weight_bold {
1675
+ font-weight: 700;
1676
+ }
1677
+
1678
+ .jaci-paragraph--truncate_true {
1679
+ overflow: hidden;
1680
+ text-overflow: ellipsis;
1681
+ white-space: nowrap;
1682
+ }
1683
+
1684
+ .jaci-paragraph--lineClamp_1 {
1685
+ -webkit-line-clamp: 1;
1686
+ }
1687
+
1688
+ .jaci-paragraph--lineClamp_1,.jaci-paragraph--lineClamp_2 {
1689
+ overflow: hidden;
1690
+ display: -webkit-box;
1691
+ -webkit-box-orient: vertical;
1692
+ }
1693
+
1694
+ .jaci-paragraph--lineClamp_2 {
1695
+ -webkit-line-clamp: 2;
1696
+ }
1697
+
1698
+ .jaci-paragraph--lineClamp_3 {
1699
+ -webkit-line-clamp: 3;
1700
+ }
1701
+
1702
+ .jaci-paragraph--lineClamp_3,.jaci-paragraph--lineClamp_4 {
1703
+ overflow: hidden;
1704
+ display: -webkit-box;
1705
+ -webkit-box-orient: vertical;
1706
+ }
1707
+
1708
+ .jaci-paragraph--lineClamp_4 {
1709
+ -webkit-line-clamp: 4;
1710
+ }
1711
+
1712
+ .jaci-paragraph--width_fit {
1713
+ width: fit-content;
1714
+ }
1715
+
1716
+ .jaci-paragraph--width_full {
1717
+ min-width: var(--jaci-sizes-0);
1718
+ width: 100%;
1719
+ }
1720
+
1721
+ .jaci-text--weight_normal {
1722
+ font-weight: 400;
1723
+ }
1724
+
1343
1725
  .jaci-text--size_md {
1344
1726
  font-size: var(--jaci-font-sizes-md);
1345
1727
  }
@@ -1348,6 +1730,22 @@
1348
1730
  color: var(--jaci-colors-fg-default);
1349
1731
  }
1350
1732
 
1733
+ .jaci-text--width_auto {
1734
+ width: auto;
1735
+ }
1736
+
1737
+ .jaci-text--weight_medium {
1738
+ font-weight: 500;
1739
+ }
1740
+
1741
+ .jaci-text--weight_semibold {
1742
+ font-weight: 600;
1743
+ }
1744
+
1745
+ .jaci-text--weight_bold {
1746
+ font-weight: 700;
1747
+ }
1748
+
1351
1749
  .jaci-text--size_sm {
1352
1750
  font-size: var(--jaci-font-sizes-sm);
1353
1751
  }
@@ -1360,6 +1758,49 @@
1360
1758
  color: var(--jaci-colors-fg-muted);
1361
1759
  }
1362
1760
 
1761
+ .jaci-text--truncate_true {
1762
+ overflow: hidden;
1763
+ text-overflow: ellipsis;
1764
+ white-space: nowrap;
1765
+ }
1766
+
1767
+ .jaci-text--lineClamp_1 {
1768
+ -webkit-line-clamp: 1;
1769
+ }
1770
+
1771
+ .jaci-text--lineClamp_1,.jaci-text--lineClamp_2 {
1772
+ overflow: hidden;
1773
+ display: -webkit-box;
1774
+ -webkit-box-orient: vertical;
1775
+ }
1776
+
1777
+ .jaci-text--lineClamp_2 {
1778
+ -webkit-line-clamp: 2;
1779
+ }
1780
+
1781
+ .jaci-text--lineClamp_3 {
1782
+ -webkit-line-clamp: 3;
1783
+ }
1784
+
1785
+ .jaci-text--lineClamp_3,.jaci-text--lineClamp_4 {
1786
+ overflow: hidden;
1787
+ display: -webkit-box;
1788
+ -webkit-box-orient: vertical;
1789
+ }
1790
+
1791
+ .jaci-text--lineClamp_4 {
1792
+ -webkit-line-clamp: 4;
1793
+ }
1794
+
1795
+ .jaci-text--width_fit {
1796
+ width: fit-content;
1797
+ }
1798
+
1799
+ .jaci-text--width_full {
1800
+ min-width: var(--jaci-sizes-0);
1801
+ width: 100%;
1802
+ }
1803
+
1363
1804
  .jaci-control--kind_checkbox {
1364
1805
  border-radius: var(--jaci-radii-sm);
1365
1806
  }
@@ -1369,7 +1810,7 @@
1369
1810
  }
1370
1811
 
1371
1812
  @media screen and (min-width: 40rem) {
1372
- .jaci-grid--columns_4 {
1813
+ .jaci-grid--columns_4,.jaci-statGroup--columns_4 {
1373
1814
  grid-template-columns: repeat(2, minmax(0, 1fr));
1374
1815
  }
1375
1816
  }
@@ -1380,6 +1821,9 @@
1380
1821
  }
1381
1822
  .jaci-grid--columns_4 {
1382
1823
  grid-template-columns: repeat(3, minmax(0, 1fr));
1824
+ }
1825
+ .jaci-statGroup--columns_3,.jaci-statGroup--columns_2 {
1826
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1383
1827
  }
1384
1828
  .jaci-heading--size_xl {
1385
1829
  font-size: var(--jaci-font-sizes-3xl);
@@ -1408,10 +1852,16 @@
1408
1852
  font-size: var(--jaci-font-sizes-md);
1409
1853
  min-height: var(--jaci-sizes-12);
1410
1854
  }
1411
- .jaci-grid--columns_3 {
1855
+ .jaci-grid--columns_3 {
1856
+ grid-template-columns: repeat(3, minmax(0, 1fr));
1857
+ }
1858
+ .jaci-grid--columns_4 {
1859
+ grid-template-columns: repeat(4, minmax(0, 1fr));
1860
+ }
1861
+ .jaci-statGroup--columns_3 {
1412
1862
  grid-template-columns: repeat(3, minmax(0, 1fr));
1413
1863
  }
1414
- .jaci-grid--columns_4 {
1864
+ .jaci-statGroup--columns_4 {
1415
1865
  grid-template-columns: repeat(4, minmax(0, 1fr));
1416
1866
  }
1417
1867
  .jaci-heading--size_xl {
@@ -1585,6 +2035,15 @@
1585
2035
  margin-top: var(--jaci-spacing-1);
1586
2036
  }
1587
2037
 
2038
+ .jaci-alert__actions {
2039
+ gap: var(--jaci-spacing-2);
2040
+ grid-column: 2;
2041
+ display: flex;
2042
+ flex-wrap: wrap;
2043
+ min-width: var(--jaci-sizes-0);
2044
+ margin-top: var(--jaci-spacing-2);
2045
+ }
2046
+
1588
2047
  .jaci-dialog__trigger {
1589
2048
  border-color: var(--jaci-colors-border-interactive);
1590
2049
  border-radius: var(--jaci-radii-lg);
@@ -2162,6 +2621,7 @@
2162
2621
  transition-property: background-color, border-color, box-shadow, transform;
2163
2622
  --transition-easing: var(--jaci-easings-standard);
2164
2623
  transition-timing-function: var(--jaci-easings-standard);
2624
+ min-width: var(--jaci-sizes-0);
2165
2625
  }
2166
2626
 
2167
2627
  .jaci-card__root:is(:hover, [data-hover]) {
@@ -2172,6 +2632,8 @@
2172
2632
  .jaci-card__header {
2173
2633
  padding-inline: var(--jaci-spacing-6);
2174
2634
  flex-direction: column;
2635
+ overflow-wrap: anywhere;
2636
+ min-width: var(--jaci-sizes-0);
2175
2637
  padding-top: var(--jaci-spacing-6);
2176
2638
  }
2177
2639
 
@@ -2189,13 +2651,18 @@
2189
2651
 
2190
2652
  .jaci-card__content {
2191
2653
  flex: 1 1 0%;
2192
- padding-inline: var(--jaci-spacing-6);
2193
2654
  padding-block: var(--jaci-spacing-6);
2655
+ overflow-wrap: anywhere;
2656
+ }
2657
+
2658
+ .jaci-card__content,.jaci-card__footer {
2659
+ padding-inline: var(--jaci-spacing-6);
2660
+ min-width: var(--jaci-sizes-0);
2194
2661
  }
2195
2662
 
2196
2663
  .jaci-card__footer {
2197
2664
  gap: var(--jaci-spacing-2);
2198
- padding-inline: var(--jaci-spacing-6);
2665
+ flex-wrap: wrap;
2199
2666
  margin-top: auto;
2200
2667
  padding-bottom: var(--jaci-spacing-6);
2201
2668
  padding-top: var(--jaci-spacing-2);
@@ -4687,102 +5154,411 @@
4687
5154
  white-space: normal;
4688
5155
  overflow-wrap: anywhere;
4689
5156
  max-width: 100%;
4690
- min-height: var(--jaci-sizes-9);
5157
+ min-height: var(--jaci-sizes-9);
5158
+ min-width: var(--jaci-sizes-0);
5159
+ }
5160
+
5161
+ .jaci-drawer__action:is(:disabled, [disabled], [data-disabled], [aria-disabled=true]) {
5162
+ cursor: not-allowed;
5163
+ opacity: 0.5;
5164
+ }
5165
+
5166
+ .jaci-drawer__action:is(:focus-visible, [data-focus-visible]) {
5167
+ outline: 2px solid;
5168
+ outline-color: var(--jaci-colors-accent-default);
5169
+ outline-offset: 2px;
5170
+ }
5171
+
5172
+ .jaci-drawer__action:is(:hover, [data-hover]) {
5173
+ border-color: var(--jaci-colors-fg-muted);
5174
+ background-color: var(--jaci-colors-surface-subtle);
5175
+ box-shadow: var(--jaci-shadows-xl);
5176
+ transform: translateY(-1px);
5177
+ }
5178
+
5179
+ .jaci-drawer__action:is(:active, [data-active]) {
5180
+ transform: translateY(0);
5181
+ }
5182
+
5183
+ .jaci-emptyState__root {
5184
+ padding: var(--jaci-spacing-8);
5185
+ border-color: var(--jaci-colors-border-default);
5186
+ border-radius: var(--jaci-radii-2xl);
5187
+ border-style: dashed;
5188
+ border-width: 1px;
5189
+ gap: var(--jaci-spacing-3);
5190
+ align-items: center;
5191
+ background-color: var(--jaci-colors-surface-default);
5192
+ box-sizing: border-box;
5193
+ color: var(--jaci-colors-fg-default);
5194
+ display: flex;
5195
+ flex-direction: column;
5196
+ justify-content: center;
5197
+ text-align: center;
5198
+ max-width: 100%;
5199
+ min-height: var(--jaci-sizes-32);
5200
+ }
5201
+
5202
+ .jaci-emptyState__icon {
5203
+ color: var(--jaci-colors-fg-muted);
5204
+ font-size: var(--jaci-font-sizes-2xl);
5205
+ line-height: 1;
5206
+ }
5207
+
5208
+ .jaci-emptyState__title {
5209
+ font-size: var(--jaci-font-sizes-lg);
5210
+ font-weight: 700;
5211
+ }
5212
+
5213
+ .jaci-emptyState__description {
5214
+ color: var(--jaci-colors-fg-muted);
5215
+ font-size: var(--jaci-font-sizes-sm);
5216
+ max-width: var(--jaci-sizes-prose);
5217
+ }
5218
+
5219
+ .jaci-emptyState__action {
5220
+ gap: var(--jaci-spacing-2);
5221
+ display: flex;
5222
+ flex-wrap: wrap;
5223
+ justify-content: center;
5224
+ max-width: 100%;
5225
+ }
5226
+
5227
+ .jaci-fieldset__root {
5228
+ border: 0;
5229
+ margin: var(--jaci-spacing-0);
5230
+ padding: var(--jaci-spacing-0);
5231
+ gap: var(--jaci-spacing-3);
5232
+ display: flex;
5233
+ flex-direction: column;
5234
+ min-inline-size: var(--jaci-sizes-0);
5235
+ width: 100%;
5236
+ }
5237
+
5238
+ .jaci-fieldset__legend {
5239
+ padding: var(--jaci-spacing-0);
5240
+ color: var(--jaci-colors-fg-default);
5241
+ font-family: system-ui, sans-serif;
5242
+ font-size: var(--jaci-font-sizes-md);
5243
+ font-weight: 700;
5244
+ margin-block-end: var(--jaci-spacing-1);
5245
+ }
5246
+
5247
+ .jaci-fieldset__description {
5248
+ margin: var(--jaci-spacing-0);
5249
+ color: var(--jaci-colors-fg-muted);
5250
+ font-family: system-ui, sans-serif;
5251
+ font-size: var(--jaci-font-sizes-sm);
5252
+ line-height: 1.5;
5253
+ }
5254
+
5255
+ .jaci-image__root {
5256
+ border-radius: var(--jaci-radii-xl);
5257
+ overflow: hidden;
5258
+ display: inline-flex;
5259
+ position: relative;
5260
+ vertical-align: middle;
5261
+ max-width: 100%;
5262
+ }
5263
+
5264
+ .jaci-image__image {
5265
+ display: block;
5266
+ --transition-duration: var(--jaci-durations-normal);
5267
+ transition-duration: var(--jaci-durations-normal);
5268
+ --transition-prop: opacity;
5269
+ transition-property: opacity;
5270
+ --transition-easing: var(--jaci-easings-standard);
5271
+ transition-timing-function: var(--jaci-easings-standard);
5272
+ max-width: 100%;
5273
+ }
5274
+
5275
+ .jaci-image__fallback {
5276
+ inset: var(--jaci-spacing-0);
5277
+ align-items: center;
5278
+ background-color: var(--jaci-colors-surface-subtle);
5279
+ color: var(--jaci-colors-fg-muted);
5280
+ display: flex;
5281
+ justify-content: center;
5282
+ overflow-wrap: anywhere;
5283
+ position: absolute;
5284
+ text-align: center;
5285
+ min-height: var(--jaci-sizes-12);
5286
+ }
5287
+
5288
+ .jaci-image__trigger {
5289
+ border: 0;
5290
+ padding: var(--jaci-spacing-0);
5291
+ border-radius: var(--jaci-radii-xl);
5292
+ overflow: hidden;
5293
+ appearance: none;
5294
+ -webkit-appearance: none;
5295
+ background-color: var(--jaci-colors-transparent);
5296
+ cursor: zoom-in;
5297
+ display: inline-flex;
5298
+ max-width: 100%;
5299
+ }
5300
+
5301
+ .jaci-image__trigger:is(:focus-visible, [data-focus-visible]) {
5302
+ outline: 2px solid;
5303
+ outline-color: focus.ring;
5304
+ outline-offset: 3px;
5305
+ }
5306
+
5307
+ .jaci-image__backdrop {
5308
+ inset: var(--jaci-spacing-0);
5309
+ --backdrop-blur: blur(var(--jaci-blurs-md));
5310
+ backdrop-filter: var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );
5311
+ -webkit-backdrop-filter: var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );
5312
+ background-color: var(--jaci-colors-surface-overlay);
5313
+ position: fixed;
5314
+ z-index: 60;
5315
+ min-height: 100dvh;
5316
+ }
5317
+
5318
+ .jaci-image__backdrop[data-ending-style],.jaci-image__backdrop[data-starting-style] {
5319
+ opacity: 0;
5320
+ }
5321
+
5322
+ .jaci-image__viewport {
5323
+ inset: var(--jaci-spacing-0);
5324
+ padding: var(--jaci-spacing-4);
5325
+ overflow: auto;
5326
+ justify-content: center;
5327
+ position: fixed;
5328
+ z-index: 60;
5329
+ }
5330
+
5331
+ .jaci-image__viewport,.jaci-image__popup {
5332
+ align-items: center;
5333
+ display: flex;
5334
+ }
5335
+
5336
+ .jaci-image__popup {
5337
+ padding: var(--jaci-spacing-2);
5338
+ border-color: var(--jaci-colors-border-default);
5339
+ border-radius: var(--jaci-radii-2xl);
5340
+ border-style: solid;
5341
+ border-width: 1px;
5342
+ overflow: hidden;
5343
+ background-color: var(--jaci-colors-surface-canvas);
5344
+ box-shadow: var(--jaci-shadows-xl);
5345
+ position: relative;
5346
+ --transition-duration: var(--jaci-durations-normal);
5347
+ transition-duration: var(--jaci-durations-normal);
5348
+ --transition-prop: opacity, transform;
5349
+ transition-property: opacity, transform;
5350
+ --transition-easing: var(--jaci-easings-standard);
5351
+ transition-timing-function: var(--jaci-easings-standard);
5352
+ max-height: calc(100dvh - 2rem);
5353
+ max-width: calc(100vw - 2rem);
5354
+ min-width: var(--jaci-sizes-0);
5355
+ }
5356
+
5357
+ .jaci-image__popup[data-ending-style],.jaci-image__popup[data-starting-style] {
5358
+ opacity: 0;
5359
+ transform: scale(0.98);
5360
+ }
5361
+
5362
+ .jaci-image__lightboxImage {
5363
+ border-radius: var(--jaci-radii-xl);
5364
+ display: block;
5365
+ object-fit: contain;
5366
+ max-height: calc(100dvh - 4rem);
5367
+ max-width: calc(100vw - 4rem);
5368
+ }
5369
+
5370
+ .jaci-image__close {
5371
+ border-color: var(--jaci-colors-border-default);
5372
+ border-radius: var(--jaci-radii-full);
5373
+ border-style: solid;
5374
+ border-width: 1px;
5375
+ align-items: center;
5376
+ appearance: none;
5377
+ -webkit-appearance: none;
5378
+ background-color: var(--jaci-colors-surface-raised);
5379
+ color: var(--jaci-colors-fg-default);
5380
+ cursor: pointer;
5381
+ display: inline-flex;
5382
+ justify-content: center;
5383
+ position: absolute;
5384
+ z-index: 1;
5385
+ height: var(--jaci-sizes-8);
5386
+ right: var(--jaci-spacing-3);
5387
+ top: var(--jaci-spacing-3);
5388
+ width: var(--jaci-sizes-8);
5389
+ }
5390
+
5391
+ .jaci-image__close:is(:focus-visible, [data-focus-visible]) {
5392
+ outline: 2px solid;
5393
+ outline-color: focus.ring;
5394
+ outline-offset: 2px;
5395
+ }
5396
+
5397
+ .jaci-image__close:is(:hover, [data-hover]) {
5398
+ background-color: var(--jaci-colors-surface-subtle);
5399
+ }
5400
+
5401
+ .jaci-image__title {
5402
+ overflow: hidden;
5403
+ position: absolute;
5404
+ clip: rect(0 0 0 0);
5405
+ white-space: nowrap;
5406
+ width: 1px;
5407
+ height: 1px;
5408
+ }
5409
+
5410
+ .jaci-figure__root {
5411
+ margin: var(--jaci-spacing-0);
5412
+ gap: var(--jaci-spacing-2);
5413
+ display: grid;
5414
+ max-width: 100%;
5415
+ min-width: var(--jaci-sizes-0);
5416
+ }
5417
+
5418
+ .jaci-figure__image {
5419
+ border-radius: var(--jaci-radii-xl);
5420
+ display: block;
5421
+ max-width: 100%;
5422
+ }
5423
+
5424
+ .jaci-figure__caption {
5425
+ color: var(--jaci-colors-fg-muted);
5426
+ font-size: var(--jaci-font-sizes-sm);
5427
+ line-height: 1.5;
5428
+ overflow-wrap: anywhere;
4691
5429
  min-width: var(--jaci-sizes-0);
4692
5430
  }
4693
5431
 
4694
- .jaci-drawer__action:is(:disabled, [disabled], [data-disabled], [aria-disabled=true]) {
4695
- cursor: not-allowed;
4696
- opacity: 0.5;
5432
+ .jaci-figure__trigger {
5433
+ border: 0;
5434
+ padding: var(--jaci-spacing-0);
5435
+ border-radius: var(--jaci-radii-xl);
5436
+ overflow: hidden;
5437
+ appearance: none;
5438
+ -webkit-appearance: none;
5439
+ background-color: var(--jaci-colors-transparent);
5440
+ cursor: zoom-in;
5441
+ display: inline-flex;
5442
+ max-width: 100%;
4697
5443
  }
4698
5444
 
4699
- .jaci-drawer__action:is(:focus-visible, [data-focus-visible]) {
5445
+ .jaci-figure__trigger:is(:focus-visible, [data-focus-visible]) {
4700
5446
  outline: 2px solid;
4701
- outline-color: var(--jaci-colors-accent-default);
4702
- outline-offset: 2px;
5447
+ outline-color: focus.ring;
5448
+ outline-offset: 3px;
4703
5449
  }
4704
5450
 
4705
- .jaci-drawer__action:is(:hover, [data-hover]) {
4706
- border-color: var(--jaci-colors-fg-muted);
4707
- background-color: var(--jaci-colors-surface-subtle);
4708
- box-shadow: var(--jaci-shadows-xl);
4709
- transform: translateY(-1px);
5451
+ .jaci-figure__backdrop {
5452
+ inset: var(--jaci-spacing-0);
5453
+ --backdrop-blur: blur(var(--jaci-blurs-md));
5454
+ backdrop-filter: var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );
5455
+ -webkit-backdrop-filter: var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );
5456
+ background-color: var(--jaci-colors-surface-overlay);
5457
+ position: fixed;
5458
+ z-index: 60;
5459
+ min-height: 100dvh;
4710
5460
  }
4711
5461
 
4712
- .jaci-drawer__action:is(:active, [data-active]) {
4713
- transform: translateY(0);
5462
+ .jaci-figure__backdrop[data-ending-style],.jaci-figure__backdrop[data-starting-style] {
5463
+ opacity: 0;
4714
5464
  }
4715
5465
 
4716
- .jaci-emptyState__root {
4717
- padding: var(--jaci-spacing-8);
5466
+ .jaci-figure__viewport {
5467
+ inset: var(--jaci-spacing-0);
5468
+ padding: var(--jaci-spacing-4);
5469
+ justify-content: center;
5470
+ position: fixed;
5471
+ z-index: 60;
5472
+ }
5473
+
5474
+ .jaci-figure__viewport,.jaci-figure__popup {
5475
+ overflow: auto;
5476
+ align-items: center;
5477
+ display: flex;
5478
+ }
5479
+
5480
+ .jaci-figure__popup {
5481
+ padding: var(--jaci-spacing-2);
4718
5482
  border-color: var(--jaci-colors-border-default);
4719
5483
  border-radius: var(--jaci-radii-2xl);
4720
- border-style: dashed;
5484
+ border-style: solid;
4721
5485
  border-width: 1px;
4722
5486
  gap: var(--jaci-spacing-3);
4723
- align-items: center;
4724
- background-color: var(--jaci-colors-surface-default);
4725
- box-sizing: border-box;
4726
- color: var(--jaci-colors-fg-default);
4727
- display: flex;
5487
+ background-color: var(--jaci-colors-surface-canvas);
5488
+ box-shadow: var(--jaci-shadows-xl);
4728
5489
  flex-direction: column;
4729
- justify-content: center;
4730
- text-align: center;
4731
- max-width: 100%;
4732
- min-height: var(--jaci-sizes-32);
5490
+ position: relative;
5491
+ --transition-duration: var(--jaci-durations-normal);
5492
+ transition-duration: var(--jaci-durations-normal);
5493
+ --transition-prop: opacity, transform;
5494
+ transition-property: opacity, transform;
5495
+ --transition-easing: var(--jaci-easings-standard);
5496
+ transition-timing-function: var(--jaci-easings-standard);
5497
+ max-height: calc(100dvh - 2rem);
5498
+ max-width: calc(100vw - 2rem);
5499
+ min-width: var(--jaci-sizes-0);
4733
5500
  }
4734
5501
 
4735
- .jaci-emptyState__icon {
4736
- color: var(--jaci-colors-fg-muted);
4737
- font-size: var(--jaci-font-sizes-2xl);
4738
- line-height: 1;
5502
+ .jaci-figure__popup[data-ending-style],.jaci-figure__popup[data-starting-style] {
5503
+ opacity: 0;
5504
+ transform: scale(0.98);
4739
5505
  }
4740
5506
 
4741
- .jaci-emptyState__title {
4742
- font-size: var(--jaci-font-sizes-lg);
4743
- font-weight: 700;
5507
+ .jaci-figure__lightboxImage {
5508
+ border-radius: var(--jaci-radii-xl);
5509
+ display: block;
5510
+ object-fit: contain;
5511
+ max-height: calc(100dvh - 8rem);
5512
+ max-width: calc(100vw - 4rem);
4744
5513
  }
4745
5514
 
4746
- .jaci-emptyState__description {
4747
- color: var(--jaci-colors-fg-muted);
5515
+ .jaci-figure__lightboxCaption {
5516
+ color: var(--jaci-colors-fg-default);
4748
5517
  font-size: var(--jaci-font-sizes-sm);
4749
- max-width: var(--jaci-sizes-prose);
5518
+ line-height: 1.5;
5519
+ overflow-wrap: anywhere;
5520
+ text-align: center;
5521
+ max-width: min(48rem, calc(100vw - 4rem));
4750
5522
  }
4751
5523
 
4752
- .jaci-emptyState__action {
4753
- gap: var(--jaci-spacing-2);
4754
- display: flex;
4755
- flex-wrap: wrap;
5524
+ .jaci-figure__close {
5525
+ border-color: var(--jaci-colors-border-default);
5526
+ border-radius: var(--jaci-radii-full);
5527
+ border-style: solid;
5528
+ border-width: 1px;
5529
+ align-items: center;
5530
+ appearance: none;
5531
+ -webkit-appearance: none;
5532
+ background-color: var(--jaci-colors-surface-raised);
5533
+ color: var(--jaci-colors-fg-default);
5534
+ cursor: pointer;
5535
+ display: inline-flex;
4756
5536
  justify-content: center;
4757
- max-width: 100%;
5537
+ position: absolute;
5538
+ z-index: 1;
5539
+ height: var(--jaci-sizes-8);
5540
+ right: var(--jaci-spacing-3);
5541
+ top: var(--jaci-spacing-3);
5542
+ width: var(--jaci-sizes-8);
4758
5543
  }
4759
5544
 
4760
- .jaci-fieldset__root {
4761
- border: 0;
4762
- margin: var(--jaci-spacing-0);
4763
- padding: var(--jaci-spacing-0);
4764
- gap: var(--jaci-spacing-3);
4765
- display: flex;
4766
- flex-direction: column;
4767
- min-inline-size: var(--jaci-sizes-0);
4768
- width: 100%;
5545
+ .jaci-figure__close:is(:focus-visible, [data-focus-visible]) {
5546
+ outline: 2px solid;
5547
+ outline-color: focus.ring;
5548
+ outline-offset: 2px;
4769
5549
  }
4770
5550
 
4771
- .jaci-fieldset__legend {
4772
- padding: var(--jaci-spacing-0);
4773
- color: var(--jaci-colors-fg-default);
4774
- font-family: system-ui, sans-serif;
4775
- font-size: var(--jaci-font-sizes-md);
4776
- font-weight: 700;
4777
- margin-block-end: var(--jaci-spacing-1);
5551
+ .jaci-figure__close:is(:hover, [data-hover]) {
5552
+ background-color: var(--jaci-colors-surface-subtle);
4778
5553
  }
4779
5554
 
4780
- .jaci-fieldset__description {
4781
- margin: var(--jaci-spacing-0);
4782
- color: var(--jaci-colors-fg-muted);
4783
- font-family: system-ui, sans-serif;
4784
- font-size: var(--jaci-font-sizes-sm);
4785
- line-height: 1.5;
5555
+ .jaci-figure__title {
5556
+ overflow: hidden;
5557
+ position: absolute;
5558
+ clip: rect(0 0 0 0);
5559
+ white-space: nowrap;
5560
+ width: 1px;
5561
+ height: 1px;
4786
5562
  }
4787
5563
 
4788
5564
  .jaci-list__root {
@@ -4986,8 +5762,7 @@
4986
5762
  border-width: 1px;
4987
5763
  gap: var(--jaci-spacing-2);
4988
5764
  align-items: center;
4989
- backdrop-filter: blur(4px);
4990
- -webkit-backdrop-filter: blur(4px);
5765
+ backdrop-filter: var(--jaci-navbar-backdrop-filter, blur(4px));
4991
5766
  background-color: var(--jaci-colors-surface-overlay);
4992
5767
  box-shadow: var(--jaci-shadows-xl);
4993
5768
  box-sizing: border-box;
@@ -5074,8 +5849,7 @@
5074
5849
 
5075
5850
  .jaci-navbar__drawerBackdrop {
5076
5851
  inset: var(--jaci-spacing-0);
5077
- backdrop-filter: blur(4px);
5078
- -webkit-backdrop-filter: blur(4px);
5852
+ backdrop-filter: var(--jaci-navbar-backdrop-filter, blur(4px));
5079
5853
  background-color: var(--jaci-colors-surface-overlay);
5080
5854
  position: fixed;
5081
5855
  --transition-duration: var(--jaci-durations-normal);
@@ -5106,8 +5880,7 @@
5106
5880
  border-color: var(--jaci-colors-border-default);
5107
5881
  gap: var(--jaci-spacing-2);
5108
5882
  background-color: var(--jaci-colors-surface-default);
5109
- backdrop-filter: blur(8px);
5110
- -webkit-backdrop-filter: blur(8px);
5883
+ backdrop-filter: var(--jaci-navbar-drawer-backdrop-filter, blur(8px));
5111
5884
  box-sizing: border-box;
5112
5885
  box-shadow: var(--jaci-shadows-xl);
5113
5886
  color: var(--jaci-colors-fg-default);
@@ -6013,6 +6786,13 @@
6013
6786
  line-height: 1.5;
6014
6787
  }
6015
6788
 
6789
+ .jaci-progress__value {
6790
+ color: var(--jaci-colors-fg-muted);
6791
+ font-size: var(--jaci-font-sizes-sm);
6792
+ font-variant-numeric: tabular-nums;
6793
+ margin-inline-start: auto;
6794
+ }
6795
+
6016
6796
  .jaci-progress__track {
6017
6797
  border-radius: var(--jaci-radii-full);
6018
6798
  overflow: hidden;
@@ -6802,6 +7582,61 @@
6802
7582
  box-shadow: var(--jaci-shadows-lg);
6803
7583
  }
6804
7584
 
7585
+ .jaci-stat__root {
7586
+ padding: var(--jaci-spacing-4);
7587
+ border-color: var(--jaci-colors-border-default);
7588
+ border-radius: var(--jaci-radii-xl);
7589
+ border-style: solid;
7590
+ border-width: 1px;
7591
+ gap: var(--jaci-spacing-1);
7592
+ overflow: hidden;
7593
+ background-color: var(--jaci-colors-surface-raised);
7594
+ display: grid;
7595
+ min-width: var(--jaci-sizes-0);
7596
+ }
7597
+
7598
+ .jaci-stat__icon {
7599
+ border-radius: var(--jaci-radii-lg);
7600
+ align-items: center;
7601
+ background-color: var(--jaci-colors-surface-subtle);
7602
+ color: var(--jaci-colors-accent-default);
7603
+ display: inline-flex;
7604
+ justify-content: center;
7605
+ height: var(--jaci-sizes-8);
7606
+ width: var(--jaci-sizes-8);
7607
+ }
7608
+
7609
+ .jaci-stat__label {
7610
+ color: var(--jaci-colors-fg-muted);
7611
+ font-size: var(--jaci-font-sizes-sm);
7612
+ font-weight: 600;
7613
+ min-width: var(--jaci-sizes-0);
7614
+ }
7615
+
7616
+ .jaci-stat__value {
7617
+ color: var(--jaci-colors-fg-default);
7618
+ font-size: var(--jaci-font-sizes-2xl);
7619
+ font-variant-numeric: tabular-nums;
7620
+ font-weight: 700;
7621
+ line-height: 1.2;
7622
+ }
7623
+
7624
+ .jaci-stat__value,.jaci-stat__description {
7625
+ overflow-wrap: anywhere;
7626
+ min-width: var(--jaci-sizes-0);
7627
+ }
7628
+
7629
+ .jaci-stat__description {
7630
+ color: var(--jaci-colors-fg-muted);
7631
+ font-size: var(--jaci-font-sizes-sm);
7632
+ }
7633
+
7634
+ .jaci-stat__trend {
7635
+ font-size: var(--jaci-font-sizes-sm);
7636
+ font-weight: 700;
7637
+ min-width: var(--jaci-sizes-0);
7638
+ }
7639
+
6805
7640
  .jaci-stepper__root {
6806
7641
  gap: var(--jaci-spacing-4);
6807
7642
  color: var(--jaci-colors-fg-default);
@@ -8399,6 +9234,9 @@
8399
9234
  }
8400
9235
 
8401
9236
  @media screen and (min-width: 40rem) {
9237
+ .jaci-card__footer {
9238
+ flex-direction: row;
9239
+ }
8402
9240
  .jaci-data-view__root[data-layout='grid'][data-columns='4'] [data-slot='data-view-content'] {
8403
9241
  grid-template-columns: repeat(2, minmax(0, 1fr));
8404
9242
  }
@@ -8449,6 +9287,18 @@
8449
9287
  }
8450
9288
  .jaci-drawer__footer {
8451
9289
  padding: var(--jaci-spacing-6);
9290
+ }
9291
+ .jaci-image__viewport {
9292
+ padding: var(--jaci-spacing-8);
9293
+ }
9294
+ .jaci-image__popup {
9295
+ padding: var(--jaci-spacing-3);
9296
+ }
9297
+ .jaci-figure__viewport {
9298
+ padding: var(--jaci-spacing-8);
9299
+ }
9300
+ .jaci-figure__popup {
9301
+ padding: var(--jaci-spacing-3);
8452
9302
  }
8453
9303
  .jaci-navbar__bar {
8454
9304
  padding: var(--jaci-spacing-4);
@@ -8473,6 +9323,9 @@
8473
9323
  font-size: var(--jaci-font-sizes-md);
8474
9324
  min-height: var(--jaci-sizes-10);
8475
9325
  min-width: var(--jaci-sizes-10);
9326
+ }
9327
+ .jaci-stat__value {
9328
+ font-size: var(--jaci-font-sizes-3xl);
8476
9329
  }
8477
9330
  .jaci-table__head[data-hide-below=md],.jaci-table__cell[data-hide-below=md] {
8478
9331
  display: table-cell;
@@ -8519,7 +9372,7 @@
8519
9372
  }
8520
9373
 
8521
9374
  @media (prefers-reduced-motion: reduce) {
8522
- .jaci-dialog__popup,.jaci-menu__popup,.jaci-drawer__popup,.jaci-menubar__trigger,.jaci-popover__popup,.jaci-select__popup {
9375
+ .jaci-dialog__popup,.jaci-menu__popup,.jaci-drawer__popup,.jaci-image__popup,.jaci-figure__popup,.jaci-menubar__trigger,.jaci-popover__popup,.jaci-select__popup {
8523
9376
  --transition-duration: 0ms;
8524
9377
  transition-duration: 0ms;
8525
9378
  --transition-prop: none;
@@ -8742,6 +9595,30 @@
8742
9595
  opacity: 0.65;
8743
9596
  }
8744
9597
 
9598
+ .jaci-image__image--fit_cover {
9599
+ object-fit: cover;
9600
+ }
9601
+
9602
+ .jaci-image__image--status_loading {
9603
+ opacity: 0;
9604
+ }
9605
+
9606
+ .jaci-image__image--fit_contain {
9607
+ object-fit: contain;
9608
+ }
9609
+
9610
+ .jaci-image__image--fit_fill {
9611
+ object-fit: fill;
9612
+ }
9613
+
9614
+ .jaci-image__image--fit_none {
9615
+ object-fit: none;
9616
+ }
9617
+
9618
+ .jaci-image__image--status_loaded {
9619
+ opacity: 1;
9620
+ }
9621
+
8745
9622
  .jaci-list__root--gap_md {
8746
9623
  gap: var(--jaci-spacing-2);
8747
9624
  }
@@ -9065,6 +9942,50 @@
9065
9942
  width: var(--jaci-sizes-6);
9066
9943
  }
9067
9944
 
9945
+ .jaci-stat__trend--tone_neutral,.jaci-stat__trend--direction_neutral {
9946
+ color: var(--jaci-colors-fg-muted);
9947
+ }
9948
+
9949
+ .jaci-stat__trend--tone_accent {
9950
+ color: var(--jaci-colors-accent-default);
9951
+ }
9952
+
9953
+ .jaci-stat__trend--tone_success {
9954
+ color: var(--jaci-colors-success);
9955
+ }
9956
+
9957
+ .jaci-stat__trend--tone_warning {
9958
+ color: var(--jaci-colors-warning);
9959
+ }
9960
+
9961
+ .jaci-stat__trend--tone_danger {
9962
+ color: var(--jaci-colors-danger);
9963
+ }
9964
+
9965
+ .jaci-stat__root--size_sm {
9966
+ padding: var(--jaci-spacing-3);
9967
+ }
9968
+
9969
+ .jaci-stat__value--size_sm {
9970
+ font-size: var(--jaci-font-sizes-xl);
9971
+ }
9972
+
9973
+ .jaci-stat__root--size_lg {
9974
+ padding: var(--jaci-spacing-6);
9975
+ }
9976
+
9977
+ .jaci-stat__value--size_lg {
9978
+ font-size: var(--jaci-font-sizes-3xl);
9979
+ }
9980
+
9981
+ .jaci-stat__trend--direction_up {
9982
+ color: var(--jaci-colors-success);
9983
+ }
9984
+
9985
+ .jaci-stat__trend--direction_down {
9986
+ color: var(--jaci-colors-danger);
9987
+ }
9988
+
9068
9989
  .jaci-stepper__list--orientation_horizontal {
9069
9990
  align-items: flex-start;
9070
9991
  flex-direction: row;
@@ -9273,6 +10194,9 @@
9273
10194
  }
9274
10195
  .jaci-sidebar__root--open_false {
9275
10196
  width: var(--jaci-sizes-20);
10197
+ }
10198
+ .jaci-stat__value--size_lg {
10199
+ font-size: var(--jaci-font-sizes-4xl);
9276
10200
  }
9277
10201
  }
9278
10202