@rokkit/themes 1.0.0-next.151 → 1.0.0-next.153

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 (262) hide show
  1. package/build.mjs +14 -5
  2. package/dist/ant-design.css +89 -25
  3. package/dist/base.css +488 -40
  4. package/dist/bits-ui.css +69 -16
  5. package/dist/carbon.css +82 -31
  6. package/dist/daisy-ui.css +73 -16
  7. package/dist/frosted.css +1953 -0
  8. package/dist/grada-ui.css +186 -37
  9. package/dist/index.css +2433 -1065
  10. package/dist/material.css +95 -18
  11. package/dist/minimal.css +120 -47
  12. package/dist/rokkit.css +174 -17
  13. package/dist/shadcn.css +70 -24
  14. package/package.json +5 -5
  15. package/src/ant-design/button.css +31 -24
  16. package/src/ant-design/card.css +4 -4
  17. package/src/ant-design/chart.css +5 -5
  18. package/src/ant-design/dropdown.css +7 -7
  19. package/src/ant-design/floating-action.css +5 -5
  20. package/src/ant-design/floating-navigation.css +4 -4
  21. package/src/ant-design/grid.css +1 -1
  22. package/src/ant-design/index.css +1 -0
  23. package/src/ant-design/input.css +4 -2
  24. package/src/ant-design/list.css +11 -11
  25. package/src/ant-design/menu.css +6 -6
  26. package/src/ant-design/range.css +1 -1
  27. package/src/ant-design/search-filter.css +2 -2
  28. package/src/ant-design/select.css +12 -12
  29. package/src/ant-design/status-list.css +1 -1
  30. package/src/ant-design/step-indicator.css +38 -0
  31. package/src/ant-design/switch.css +2 -2
  32. package/src/ant-design/table.css +8 -6
  33. package/src/ant-design/tabs.css +13 -9
  34. package/src/ant-design/toggle.css +3 -3
  35. package/src/ant-design/toolbar.css +7 -7
  36. package/src/ant-design/tree.css +21 -11
  37. package/src/ant-design/upload-progress.css +1 -1
  38. package/src/ant-design/upload-target.css +1 -1
  39. package/src/base/avatar.css +82 -0
  40. package/src/base/badge.css +41 -0
  41. package/src/base/button.css +6 -6
  42. package/src/base/card.css +7 -4
  43. package/src/base/chart.css +5 -5
  44. package/src/base/density.css +51 -0
  45. package/src/base/divider.css +49 -0
  46. package/src/base/dropdown.css +5 -4
  47. package/src/base/index.css +6 -0
  48. package/src/base/input.css +3 -1
  49. package/src/base/list.css +12 -7
  50. package/src/base/menu.css +7 -5
  51. package/src/base/stack.css +76 -0
  52. package/src/base/step-indicator.css +74 -0
  53. package/src/base/swatch.css +12 -6
  54. package/src/base/table.css +52 -2
  55. package/src/bits-ui/button.css +18 -18
  56. package/src/bits-ui/card.css +4 -4
  57. package/src/bits-ui/chart.css +5 -5
  58. package/src/bits-ui/dropdown.css +5 -5
  59. package/src/bits-ui/floating-action.css +5 -5
  60. package/src/bits-ui/floating-navigation.css +2 -2
  61. package/src/bits-ui/index.css +1 -0
  62. package/src/bits-ui/input.css +8 -4
  63. package/src/bits-ui/list.css +4 -4
  64. package/src/bits-ui/menu.css +5 -5
  65. package/src/bits-ui/range.css +2 -2
  66. package/src/bits-ui/search-filter.css +2 -2
  67. package/src/bits-ui/select.css +9 -9
  68. package/src/bits-ui/status-list.css +1 -1
  69. package/src/bits-ui/step-indicator.css +40 -0
  70. package/src/bits-ui/switch.css +2 -2
  71. package/src/bits-ui/table.css +1 -1
  72. package/src/bits-ui/tabs.css +5 -5
  73. package/src/bits-ui/toggle.css +2 -2
  74. package/src/bits-ui/toolbar.css +7 -7
  75. package/src/bits-ui/tree.css +12 -4
  76. package/src/bits-ui/upload-progress.css +1 -1
  77. package/src/carbon/button.css +23 -20
  78. package/src/carbon/card.css +5 -5
  79. package/src/carbon/chart.css +5 -5
  80. package/src/carbon/dropdown.css +8 -8
  81. package/src/carbon/floating-action.css +8 -8
  82. package/src/carbon/floating-navigation.css +5 -5
  83. package/src/carbon/index.css +1 -0
  84. package/src/carbon/input.css +2 -2
  85. package/src/carbon/list.css +12 -14
  86. package/src/carbon/menu.css +8 -8
  87. package/src/carbon/range.css +2 -2
  88. package/src/carbon/search-filter.css +2 -2
  89. package/src/carbon/select.css +13 -13
  90. package/src/carbon/status-list.css +1 -1
  91. package/src/carbon/step-indicator.css +40 -0
  92. package/src/carbon/switch.css +3 -3
  93. package/src/carbon/table.css +6 -6
  94. package/src/carbon/tabs.css +10 -8
  95. package/src/carbon/toc.css +2 -2
  96. package/src/carbon/toggle.css +3 -3
  97. package/src/carbon/toolbar.css +8 -9
  98. package/src/carbon/tree.css +22 -14
  99. package/src/carbon/upload-progress.css +2 -2
  100. package/src/carbon/upload-target.css +2 -2
  101. package/src/daisy-ui/button.css +20 -19
  102. package/src/daisy-ui/card.css +5 -5
  103. package/src/daisy-ui/chart.css +5 -5
  104. package/src/daisy-ui/dropdown.css +8 -8
  105. package/src/daisy-ui/floating-action.css +6 -6
  106. package/src/daisy-ui/floating-navigation.css +5 -5
  107. package/src/daisy-ui/grid.css +1 -1
  108. package/src/daisy-ui/index.css +1 -0
  109. package/src/daisy-ui/input.css +5 -3
  110. package/src/daisy-ui/list.css +9 -9
  111. package/src/daisy-ui/menu.css +7 -7
  112. package/src/daisy-ui/range.css +3 -3
  113. package/src/daisy-ui/search-filter.css +3 -3
  114. package/src/daisy-ui/select.css +14 -14
  115. package/src/daisy-ui/status-list.css +1 -1
  116. package/src/daisy-ui/step-indicator.css +37 -0
  117. package/src/daisy-ui/switch.css +3 -3
  118. package/src/daisy-ui/table.css +7 -5
  119. package/src/daisy-ui/tabs.css +10 -6
  120. package/src/daisy-ui/toggle.css +3 -3
  121. package/src/daisy-ui/toolbar.css +6 -6
  122. package/src/daisy-ui/tree.css +20 -10
  123. package/src/daisy-ui/upload-target.css +1 -1
  124. package/src/frosted/button.css +224 -0
  125. package/src/frosted/card.css +130 -0
  126. package/src/frosted/chart.css +38 -0
  127. package/src/frosted/dropdown.css +66 -0
  128. package/src/{glass → frosted}/floating-action.css +10 -10
  129. package/src/{glass → frosted}/floating-navigation.css +13 -13
  130. package/src/{glass → frosted}/index.css +1 -0
  131. package/src/frosted/input.css +135 -0
  132. package/src/frosted/list.css +122 -0
  133. package/src/frosted/menu.css +108 -0
  134. package/src/frosted/message.css +35 -0
  135. package/src/{glass → frosted}/range.css +10 -10
  136. package/src/{glass → frosted}/search-filter.css +8 -8
  137. package/src/{glass → frosted}/select.css +34 -34
  138. package/src/frosted/status-list.css +66 -0
  139. package/src/frosted/step-indicator.css +41 -0
  140. package/src/frosted/swatch.css +21 -0
  141. package/src/frosted/switch.css +43 -0
  142. package/src/frosted/table.css +106 -0
  143. package/src/{glass → frosted}/tabs.css +10 -10
  144. package/src/{glass → frosted}/timeline.css +7 -7
  145. package/src/frosted/toc.css +18 -0
  146. package/src/{glass → frosted}/toggle.css +9 -9
  147. package/src/{glass → frosted}/toolbar.css +16 -16
  148. package/src/{glass → frosted}/tree.css +20 -20
  149. package/src/grada-ui/button.css +20 -6
  150. package/src/grada-ui/card.css +12 -6
  151. package/src/grada-ui/chart.css +5 -5
  152. package/src/grada-ui/dropdown.css +7 -3
  153. package/src/grada-ui/floating-action.css +11 -4
  154. package/src/grada-ui/floating-navigation.css +5 -1
  155. package/src/grada-ui/index.css +1 -0
  156. package/src/grada-ui/input.css +2 -2
  157. package/src/grada-ui/list.css +15 -3
  158. package/src/grada-ui/menu.css +2 -2
  159. package/src/grada-ui/range.css +5 -1
  160. package/src/grada-ui/search-filter.css +6 -2
  161. package/src/grada-ui/select.css +27 -9
  162. package/src/grada-ui/status-list.css +5 -1
  163. package/src/grada-ui/step-indicator.css +37 -0
  164. package/src/grada-ui/switch.css +7 -3
  165. package/src/grada-ui/table.css +2 -2
  166. package/src/grada-ui/tabs.css +5 -1
  167. package/src/grada-ui/timeline.css +10 -2
  168. package/src/grada-ui/toggle.css +7 -3
  169. package/src/grada-ui/toolbar.css +10 -2
  170. package/src/grada-ui/tree.css +8 -2
  171. package/src/index.css +2 -2
  172. package/src/material/button.css +5 -5
  173. package/src/material/card.css +4 -4
  174. package/src/material/chart.css +5 -5
  175. package/src/material/dropdown.css +7 -7
  176. package/src/material/floating-action.css +5 -5
  177. package/src/material/floating-navigation.css +4 -4
  178. package/src/material/index.css +1 -0
  179. package/src/material/input.css +1 -1
  180. package/src/material/list.css +11 -11
  181. package/src/material/menu.css +6 -6
  182. package/src/material/message.css +0 -1
  183. package/src/material/range.css +1 -1
  184. package/src/material/search-filter.css +1 -1
  185. package/src/material/select.css +14 -12
  186. package/src/material/status-list.css +1 -1
  187. package/src/material/step-indicator.css +41 -0
  188. package/src/material/swatch.css +4 -2
  189. package/src/material/switch.css +2 -2
  190. package/src/material/table.css +24 -5
  191. package/src/material/tabs.css +6 -3
  192. package/src/material/toggle.css +3 -3
  193. package/src/material/toolbar.css +7 -7
  194. package/src/material/tree.css +17 -7
  195. package/src/minimal/button.css +7 -7
  196. package/src/minimal/card.css +4 -4
  197. package/src/minimal/chart.css +5 -5
  198. package/src/minimal/dropdown.css +7 -7
  199. package/src/minimal/floating-action.css +5 -5
  200. package/src/minimal/floating-navigation.css +4 -4
  201. package/src/minimal/index.css +1 -0
  202. package/src/minimal/list.css +18 -16
  203. package/src/minimal/menu.css +6 -6
  204. package/src/minimal/message.css +0 -1
  205. package/src/minimal/range.css +1 -1
  206. package/src/minimal/search-filter.css +1 -1
  207. package/src/minimal/select.css +11 -11
  208. package/src/minimal/status-list.css +1 -1
  209. package/src/minimal/step-indicator.css +40 -0
  210. package/src/minimal/swatch.css +4 -2
  211. package/src/minimal/table.css +24 -5
  212. package/src/minimal/tabs.css +10 -8
  213. package/src/minimal/toggle.css +1 -1
  214. package/src/minimal/toolbar.css +7 -7
  215. package/src/minimal/tree.css +14 -6
  216. package/src/rokkit/avatar.css +29 -0
  217. package/src/rokkit/badge.css +29 -0
  218. package/src/rokkit/button.css +1 -1
  219. package/src/rokkit/chart.css +5 -5
  220. package/src/rokkit/divider.css +26 -0
  221. package/src/rokkit/index.css +5 -0
  222. package/src/rokkit/stack.css +6 -0
  223. package/src/rokkit/step-indicator.css +41 -0
  224. package/src/rokkit/swatch.css +4 -2
  225. package/src/rokkit/table.css +25 -6
  226. package/src/shadcn/button.css +20 -21
  227. package/src/shadcn/card.css +4 -4
  228. package/src/shadcn/chart.css +5 -5
  229. package/src/shadcn/dropdown.css +7 -7
  230. package/src/shadcn/floating-action.css +5 -5
  231. package/src/shadcn/floating-navigation.css +4 -4
  232. package/src/shadcn/index.css +1 -0
  233. package/src/shadcn/input.css +4 -2
  234. package/src/shadcn/list.css +13 -15
  235. package/src/shadcn/menu.css +7 -7
  236. package/src/shadcn/range.css +2 -2
  237. package/src/shadcn/search-filter.css +2 -2
  238. package/src/shadcn/select.css +13 -13
  239. package/src/shadcn/status-list.css +1 -1
  240. package/src/shadcn/step-indicator.css +37 -0
  241. package/src/shadcn/switch.css +2 -2
  242. package/src/shadcn/table.css +4 -4
  243. package/src/shadcn/tabs.css +10 -8
  244. package/src/shadcn/toc.css +2 -2
  245. package/src/shadcn/toggle.css +4 -4
  246. package/src/shadcn/toolbar.css +8 -9
  247. package/src/shadcn/tree.css +21 -13
  248. package/src/shadcn/upload-progress.css +1 -1
  249. package/dist/glass.css +0 -1760
  250. package/src/glass/button.css +0 -174
  251. package/src/glass/card.css +0 -103
  252. package/src/glass/chart.css +0 -38
  253. package/src/glass/dropdown.css +0 -50
  254. package/src/glass/input.css +0 -128
  255. package/src/glass/list.css +0 -122
  256. package/src/glass/menu.css +0 -92
  257. package/src/glass/message.css +0 -36
  258. package/src/glass/status-list.css +0 -66
  259. package/src/glass/swatch.css +0 -19
  260. package/src/glass/switch.css +0 -28
  261. package/src/glass/table.css +0 -87
  262. package/src/glass/toc.css +0 -18
package/src/base/list.css CHANGED
@@ -44,9 +44,11 @@ a[data-list-item],
44
44
  button[data-list-item] {
45
45
  display: flex;
46
46
  align-items: center;
47
- gap: 0.75rem;
48
- padding: 0.375rem 0.75rem;
47
+ gap: var(--density-spacing-md);
48
+ padding-block: var(--density-spacing-xs);
49
+ padding-inline: var(--density-spacing-md);
49
50
  font-size: 0.875rem;
51
+ line-height: var(--density-line-height);
50
52
  text-decoration: none;
51
53
  cursor: pointer;
52
54
  transition:
@@ -80,9 +82,11 @@ button[data-list-item] {
80
82
  [data-list]:not([data-size]) a[data-list-item],
81
83
  [data-list][data-size='md'] button[data-list-item],
82
84
  [data-list]:not([data-size]) button[data-list-item] {
83
- gap: 0.625rem;
84
- padding: 0.375rem 0.75rem;
85
+ gap: var(--density-spacing-md);
86
+ padding-block: var(--density-spacing-xs);
87
+ padding-inline: var(--density-spacing-md);
85
88
  font-size: 0.875rem;
89
+ line-height: var(--density-line-height);
86
90
  }
87
91
 
88
92
  [data-list][data-size='lg'] [data-list-item],
@@ -105,8 +109,8 @@ button[data-list-item] {
105
109
  display: flex;
106
110
  align-items: center;
107
111
  width: 100%;
108
- gap: 0.5rem;
109
- padding-block: 0.25rem;
112
+ gap: var(--density-spacing-sm);
113
+ padding-block: var(--density-spacing-xs);
110
114
  font-size: 0.75rem;
111
115
  font-weight: 600;
112
116
  text-align: left;
@@ -131,7 +135,8 @@ button[data-list-item] {
131
135
  }
132
136
  [data-list][data-size='md'] [data-list-group],
133
137
  [data-list]:not([data-size]) [data-list-group] {
134
- padding: 0.375rem 0.75rem;
138
+ padding-block: var(--density-spacing-xs);
139
+ padding-inline: var(--density-spacing-md);
135
140
  }
136
141
  [data-list][data-size='lg'] [data-list-group] {
137
142
  padding: 0.5rem 1rem;
package/src/base/menu.css CHANGED
@@ -55,8 +55,8 @@
55
55
 
56
56
  [data-menu][data-size='md'] [data-menu-trigger],
57
57
  [data-menu]:not([data-size]) [data-menu-trigger] {
58
- height: 2rem;
59
- padding-inline: 0.625rem;
58
+ height: calc(var(--density-icon-size) + var(--density-spacing-xs) * 2);
59
+ padding-inline: var(--density-spacing-md);
60
60
  font-size: 0.875rem;
61
61
  }
62
62
 
@@ -199,8 +199,9 @@
199
199
 
200
200
  [data-menu][data-size='md'] [data-menu-item],
201
201
  [data-menu]:not([data-size]) [data-menu-item] {
202
- gap: 0.625rem;
203
- padding: 0.5rem 0.75rem;
202
+ gap: var(--density-spacing-md);
203
+ padding-block: var(--density-spacing-sm);
204
+ padding-inline: var(--density-spacing-md);
204
205
  font-size: 0.875rem;
205
206
  }
206
207
 
@@ -237,7 +238,8 @@
237
238
  }
238
239
  [data-menu][data-size='md'] [data-menu-group],
239
240
  [data-menu]:not([data-size]) [data-menu-group] {
240
- padding: 0.375rem 0.75rem;
241
+ padding-block: var(--density-spacing-xs);
242
+ padding-inline: var(--density-spacing-md);
241
243
  }
242
244
  [data-menu][data-size='lg'] [data-menu-group] {
243
245
  padding: 0.5rem 1rem;
@@ -0,0 +1,76 @@
1
+ /* Stack — base structural styles */
2
+
3
+ [data-stack] {
4
+ display: flex;
5
+ }
6
+
7
+ [data-stack][data-direction='vertical'] {
8
+ flex-direction: column;
9
+ }
10
+
11
+ [data-stack][data-direction='horizontal'] {
12
+ flex-direction: row;
13
+ }
14
+
15
+ /* Gap sizes */
16
+ [data-stack][data-gap='none'] {
17
+ gap: 0;
18
+ }
19
+
20
+ [data-stack][data-gap='xs'] {
21
+ gap: 0.25rem;
22
+ }
23
+
24
+ [data-stack][data-gap='sm'] {
25
+ gap: 0.5rem;
26
+ }
27
+
28
+ [data-stack][data-gap='md'] {
29
+ gap: 1rem;
30
+ }
31
+
32
+ [data-stack][data-gap='lg'] {
33
+ gap: 1.5rem;
34
+ }
35
+
36
+ [data-stack][data-gap='xl'] {
37
+ gap: 2rem;
38
+ }
39
+
40
+ /* Alignment */
41
+ [data-stack][data-align='start'] {
42
+ align-items: flex-start;
43
+ }
44
+
45
+ [data-stack][data-align='center'] {
46
+ align-items: center;
47
+ }
48
+
49
+ [data-stack][data-align='end'] {
50
+ align-items: flex-end;
51
+ }
52
+
53
+ [data-stack][data-align='stretch'] {
54
+ align-items: stretch;
55
+ }
56
+
57
+ /* Justification */
58
+ [data-stack][data-justify='start'] {
59
+ justify-content: flex-start;
60
+ }
61
+
62
+ [data-stack][data-justify='center'] {
63
+ justify-content: center;
64
+ }
65
+
66
+ [data-stack][data-justify='end'] {
67
+ justify-content: flex-end;
68
+ }
69
+
70
+ [data-stack][data-justify='between'] {
71
+ justify-content: space-between;
72
+ }
73
+
74
+ [data-stack][data-justify='around'] {
75
+ justify-content: space-around;
76
+ }
@@ -0,0 +1,74 @@
1
+ /* StepIndicator — base structural styles */
2
+
3
+ [data-step-indicator] {
4
+ display: flex;
5
+ list-style: none;
6
+ margin: 0;
7
+ padding: 0;
8
+ align-items: flex-start;
9
+ }
10
+
11
+ [data-step-item] {
12
+ display: flex;
13
+ flex-direction: column;
14
+ align-items: center;
15
+ flex: 1;
16
+ position: relative;
17
+ }
18
+
19
+ /* Connector line between steps */
20
+ [data-step-item]:not(:last-child)::after {
21
+ content: '';
22
+ position: absolute;
23
+ top: 1.25rem; /* vertically centered with the 2.5rem number circle */
24
+ left: 50%;
25
+ width: 100%;
26
+ height: 2px;
27
+ }
28
+
29
+ /* Reset button element when used as step-number (complete steps) */
30
+ button[data-step-number] {
31
+ appearance: none;
32
+ background: none;
33
+ padding: 0;
34
+ cursor: pointer;
35
+ font-family: inherit;
36
+ }
37
+
38
+ [data-step-number] {
39
+ width: 2.5rem;
40
+ height: 2.5rem;
41
+ border-radius: 9999px;
42
+ border-width: 2px;
43
+ border-style: solid;
44
+ display: flex;
45
+ align-items: center;
46
+ justify-content: center;
47
+ font-weight: 600;
48
+ font-size: 0.875rem;
49
+ position: relative;
50
+ z-index: 1;
51
+ transition:
52
+ background-color 0.2s ease,
53
+ border-color 0.2s ease,
54
+ color 0.2s ease;
55
+ }
56
+
57
+ [data-step-label] {
58
+ margin-top: 0.5rem;
59
+ font-size: 0.8125rem;
60
+ text-align: center;
61
+ max-width: 6rem;
62
+ line-height: 1.3;
63
+ transition: color 0.2s ease;
64
+ }
65
+
66
+ /* Interaction affordances */
67
+ [data-step-item][data-step-state='complete'] {
68
+ cursor: pointer;
69
+ }
70
+
71
+ [data-step-item][data-step-state='current'],
72
+ [data-step-item][data-step-state='upcoming'] {
73
+ cursor: default;
74
+ }
@@ -10,7 +10,9 @@
10
10
  /* Button: padding creates the ring gap; background is the gradient ring */
11
11
  [data-swatch-item] {
12
12
  @apply cursor-pointer border-0 bg-transparent p-0.5 leading-none;
13
- transition: background 120ms ease, outline-color 120ms ease;
13
+ transition:
14
+ background 120ms ease,
15
+ outline-color 120ms ease;
14
16
  outline: 2px solid transparent;
15
17
  outline-offset: 0;
16
18
  }
@@ -27,7 +29,11 @@
27
29
  /* ── Selected: gradient shows through the padding gap as a ring ────────────── */
28
30
 
29
31
  [data-swatch-item][data-selected] {
30
- background: linear-gradient(135deg, var(--swatch-fill, currentColor), var(--swatch-stroke, currentColor));
32
+ background: linear-gradient(
33
+ 135deg,
34
+ var(--swatch-fill, currentColor),
35
+ var(--swatch-stroke, currentColor)
36
+ );
31
37
  }
32
38
 
33
39
  /* ── Hover + keyboard focus: same visual treatment ────────────────────────── */
@@ -59,21 +65,21 @@
59
65
  }
60
66
 
61
67
  [data-swatch-square] {
62
- @apply w-6 h-6 rounded-sm;
68
+ @apply h-6 w-6 rounded-sm;
63
69
  }
64
70
 
65
71
  [data-swatch-circle] {
66
- @apply w-6 h-6 rounded-full;
72
+ @apply h-6 w-6 rounded-full;
67
73
  }
68
74
 
69
75
  /* ── Size variants ─────────────────────────────────────────────────────────── */
70
76
 
71
77
  [data-swatch][data-swatch-size='sm'] [data-swatch-square],
72
78
  [data-swatch][data-swatch-size='sm'] [data-swatch-circle] {
73
- @apply w-5 h-5;
79
+ @apply h-5 w-5;
74
80
  }
75
81
 
76
82
  [data-swatch][data-swatch-size='lg'] [data-swatch-square],
77
83
  [data-swatch][data-swatch-size='lg'] [data-swatch-circle] {
78
- @apply w-8 h-8;
84
+ @apply h-8 w-8;
79
85
  }
@@ -40,6 +40,9 @@
40
40
  ============================================================================= */
41
41
 
42
42
  [data-table-header] th {
43
+ position: sticky;
44
+ top: 0;
45
+ z-index: 1;
43
46
  text-align: left;
44
47
  font-weight: 600;
45
48
  white-space: nowrap;
@@ -81,6 +84,10 @@
81
84
  transition: background-color 150ms ease;
82
85
  }
83
86
 
87
+ [data-table][data-selectable='false'] [data-table-row] {
88
+ cursor: default;
89
+ }
90
+
84
91
  [data-table-row]:focus {
85
92
  outline: none;
86
93
  }
@@ -120,12 +127,12 @@
120
127
 
121
128
  [data-table][data-size='sm'] [data-table-header-cell],
122
129
  [data-table][data-size='sm'] [data-table-cell] {
123
- padding: 0.25rem 0.5rem;
130
+ padding: 0.375rem 0.625rem;
124
131
  font-size: 0.75rem;
125
132
  }
126
133
 
127
134
  [data-table][data-size='sm'] [data-table-caption] {
128
- padding: 0.25rem 0.5rem;
135
+ padding: 0.375rem 0.625rem;
129
136
  font-size: 0.75rem;
130
137
  }
131
138
 
@@ -157,3 +164,46 @@
157
164
  [data-table-empty] {
158
165
  padding: 1.5rem 0.75rem;
159
166
  }
167
+
168
+ /* =============================================================================
169
+ Responsive Card Layout (mobile < 640px)
170
+ ============================================================================= */
171
+
172
+ @media (max-width: 639px) {
173
+ [data-table-responsive] table {
174
+ display: block;
175
+ }
176
+
177
+ [data-table-responsive] thead {
178
+ display: none;
179
+ }
180
+
181
+ [data-table-responsive] tbody {
182
+ display: block;
183
+ }
184
+
185
+ [data-table-responsive] [data-table-row] {
186
+ display: block;
187
+ padding: 0.75rem;
188
+ margin-bottom: 0.5rem;
189
+ border-radius: 0.5rem;
190
+ border-bottom: none !important;
191
+ }
192
+
193
+ [data-table-responsive] [data-table-cell] {
194
+ display: flex;
195
+ align-items: flex-start;
196
+ gap: 0.5rem;
197
+ padding: 0.2rem 0 !important;
198
+ text-align: left !important;
199
+ border: none;
200
+ }
201
+
202
+ [data-table-responsive] [data-table-cell]::before {
203
+ content: attr(data-label);
204
+ font-weight: 600;
205
+ font-size: 0.75rem;
206
+ min-width: 7rem;
207
+ flex-shrink: 0;
208
+ }
209
+ }
@@ -12,27 +12,27 @@
12
12
  [data-style='bits-ui'] [data-button]:not([data-style])[data-variant='default'],
13
13
  [data-style='bits-ui'] [data-button][data-style='default']:not([data-variant]),
14
14
  [data-style='bits-ui'] [data-button]:not([data-style]):not([data-variant]) {
15
- @apply bg-none bg-surface-z2 border-surface-z3 text-surface-z8 border rounded-lg shadow-sm;
15
+ @apply bg-surface-z2 border-surface-z3 text-surface-z8 rounded-lg border bg-none shadow-sm;
16
16
  }
17
17
 
18
18
  [data-style='bits-ui'] [data-button][data-style='default'][data-variant='primary'],
19
19
  [data-style='bits-ui'] [data-button]:not([data-style])[data-variant='primary'] {
20
- @apply bg-none bg-primary-z5 text-on-primary border-transparent rounded-lg shadow-sm;
20
+ @apply bg-primary-z5 text-on-primary rounded-lg border-transparent bg-none shadow-sm;
21
21
  }
22
22
 
23
23
  [data-style='bits-ui'] [data-button][data-style='default'][data-variant='secondary'],
24
24
  [data-style='bits-ui'] [data-button]:not([data-style])[data-variant='secondary'] {
25
- @apply bg-none bg-secondary-z4 text-on-secondary border-transparent rounded-lg shadow-sm;
25
+ @apply bg-secondary-z4 text-on-secondary rounded-lg border-transparent bg-none shadow-sm;
26
26
  }
27
27
 
28
28
  [data-style='bits-ui'] [data-button][data-style='default'][data-variant='accent'],
29
29
  [data-style='bits-ui'] [data-button]:not([data-style])[data-variant='accent'] {
30
- @apply bg-none bg-accent-z4 text-on-accent border-transparent rounded-lg shadow-sm;
30
+ @apply bg-accent-z4 text-on-accent rounded-lg border-transparent bg-none shadow-sm;
31
31
  }
32
32
 
33
33
  [data-style='bits-ui'] [data-button][data-style='default'][data-variant='danger'],
34
34
  [data-style='bits-ui'] [data-button]:not([data-style])[data-variant='danger'] {
35
- @apply bg-none bg-danger-z4 text-on-danger border-transparent rounded-lg shadow-sm;
35
+ @apply bg-danger-z4 text-on-danger rounded-lg border-transparent bg-none shadow-sm;
36
36
  }
37
37
 
38
38
  /* =============================================================================
@@ -41,23 +41,23 @@
41
41
 
42
42
  [data-style='bits-ui'] [data-button][data-style='outline'][data-variant='default'],
43
43
  [data-style='bits-ui'] [data-button][data-style='outline']:not([data-variant]) {
44
- @apply border-surface-z3 text-surface-z7 border bg-transparent rounded-lg shadow-sm;
44
+ @apply border-surface-z3 text-surface-z7 rounded-lg border bg-transparent shadow-sm;
45
45
  }
46
46
 
47
47
  [data-style='bits-ui'] [data-button][data-style='outline'][data-variant='primary'] {
48
- @apply border-primary-z4 text-primary-z6 border bg-transparent rounded-lg shadow-sm;
48
+ @apply border-primary-z4 text-primary-z6 rounded-lg border bg-transparent shadow-sm;
49
49
  }
50
50
 
51
51
  [data-style='bits-ui'] [data-button][data-style='outline'][data-variant='secondary'] {
52
- @apply border-secondary-z4 text-secondary-z6 border bg-transparent rounded-lg shadow-sm;
52
+ @apply border-secondary-z4 text-secondary-z6 rounded-lg border bg-transparent shadow-sm;
53
53
  }
54
54
 
55
55
  [data-style='bits-ui'] [data-button][data-style='outline'][data-variant='accent'] {
56
- @apply border-accent-z4 text-accent-z6 border bg-transparent rounded-lg shadow-sm;
56
+ @apply border-accent-z4 text-accent-z6 rounded-lg border bg-transparent shadow-sm;
57
57
  }
58
58
 
59
59
  [data-style='bits-ui'] [data-button][data-style='outline'][data-variant='danger'] {
60
- @apply border-danger-z4 text-danger-z4 border bg-transparent rounded-lg shadow-sm;
60
+ @apply border-danger-z4 text-danger-z4 rounded-lg border bg-transparent shadow-sm;
61
61
  }
62
62
 
63
63
  /* =============================================================================
@@ -65,7 +65,7 @@
65
65
  ============================================================================= */
66
66
 
67
67
  [data-style='bits-ui'] [data-button][data-style='ghost'] {
68
- @apply border-transparent bg-transparent rounded-lg;
68
+ @apply rounded-lg border-transparent bg-transparent;
69
69
  }
70
70
 
71
71
  [data-style='bits-ui'] [data-button][data-style='ghost'][data-variant='default'],
@@ -95,23 +95,23 @@
95
95
 
96
96
  [data-style='bits-ui'] [data-button][data-style='gradient'][data-variant='default'],
97
97
  [data-style='bits-ui'] [data-button][data-style='gradient']:not([data-variant]) {
98
- @apply from-surface-z3 to-surface-z1 text-surface-z10 bg-gradient-to-br rounded-lg shadow-sm;
98
+ @apply from-surface-z3 to-surface-z1 text-surface-z10 rounded-lg bg-gradient-to-br shadow-sm;
99
99
  }
100
100
 
101
101
  [data-style='bits-ui'] [data-button][data-style='gradient'][data-variant='primary'] {
102
- @apply from-primary-z5 to-primary-z3 text-on-primary bg-gradient-to-br rounded-lg shadow-sm;
102
+ @apply from-primary-z5 to-primary-z3 text-on-primary rounded-lg bg-gradient-to-br shadow-sm;
103
103
  }
104
104
 
105
105
  [data-style='bits-ui'] [data-button][data-style='gradient'][data-variant='secondary'] {
106
- @apply from-secondary-z5 to-secondary-z3 text-on-secondary bg-gradient-to-br rounded-lg shadow-sm;
106
+ @apply from-secondary-z5 to-secondary-z3 text-on-secondary rounded-lg bg-gradient-to-br shadow-sm;
107
107
  }
108
108
 
109
109
  [data-style='bits-ui'] [data-button][data-style='gradient'][data-variant='accent'] {
110
- @apply from-accent-z5 to-accent-z3 text-on-accent bg-gradient-to-br rounded-lg shadow-sm;
110
+ @apply from-accent-z5 to-accent-z3 text-on-accent rounded-lg bg-gradient-to-br shadow-sm;
111
111
  }
112
112
 
113
113
  [data-style='bits-ui'] [data-button][data-style='gradient'][data-variant='danger'] {
114
- @apply from-danger-z5 to-danger-z3 text-on-danger bg-gradient-to-br rounded-lg shadow-sm;
114
+ @apply from-danger-z5 to-danger-z3 text-on-danger rounded-lg bg-gradient-to-br shadow-sm;
115
115
  }
116
116
 
117
117
  [data-style='bits-ui']
@@ -155,12 +155,12 @@
155
155
  [data-style='bits-ui']
156
156
  [data-button][data-style='default']:hover:not(:disabled):not([data-disabled]),
157
157
  [data-style='bits-ui'] [data-button]:not([data-style]):hover:not(:disabled):not([data-disabled]) {
158
- @apply bg-none bg-surface-z3 border-surface-z4 shadow-md;
158
+ @apply bg-surface-z3 border-surface-z4 bg-none shadow-md;
159
159
  }
160
160
 
161
161
  [data-style='bits-ui']
162
162
  [data-button][data-style='outline']:hover:not(:disabled):not([data-disabled]) {
163
- @apply bg-none bg-surface-z1 border-surface-z4 shadow-md;
163
+ @apply bg-surface-z1 border-surface-z4 bg-none shadow-md;
164
164
  }
165
165
 
166
166
  [data-style='bits-ui'] [data-button][data-style='ghost']:hover:not(:disabled):not([data-disabled]) {
@@ -9,7 +9,7 @@
9
9
  ============================================================================= */
10
10
 
11
11
  [data-style='bits-ui'] [data-card] {
12
- @apply bg-none bg-surface-z1 border-surface-z2 text-surface-z9 border shadow-sm rounded-xl;
12
+ @apply bg-surface-z1 border-surface-z2 text-surface-z9 rounded-xl border bg-none shadow-sm;
13
13
  }
14
14
 
15
15
  /* Interactive cards (buttons) */
@@ -67,7 +67,7 @@
67
67
 
68
68
  /* Primary — solid primary fill */
69
69
  [data-style='bits-ui'] [data-card][data-variant='primary'] {
70
- @apply bg-none bg-primary-z5 border-primary-z6 text-on-primary border shadow-sm;
70
+ @apply bg-primary-z5 border-primary-z6 text-on-primary border bg-none shadow-sm;
71
71
  }
72
72
 
73
73
  [data-style='bits-ui'] [data-card][data-variant='primary'] [data-card-header],
@@ -81,7 +81,7 @@
81
81
 
82
82
  /* Secondary — solid secondary fill */
83
83
  [data-style='bits-ui'] [data-card][data-variant='secondary'] {
84
- @apply bg-none bg-secondary-z4 border-secondary-z5 text-on-secondary border shadow-sm;
84
+ @apply bg-secondary-z4 border-secondary-z5 text-on-secondary border bg-none shadow-sm;
85
85
  }
86
86
 
87
87
  [data-style='bits-ui'] [data-card][data-variant='secondary'] [data-card-header],
@@ -95,5 +95,5 @@
95
95
 
96
96
  /* Tertiary — recessed surface, lighter border */
97
97
  [data-style='bits-ui'] [data-card][data-variant='tertiary'] {
98
- @apply bg-none bg-surface-z0 border-surface-z2 text-surface-z7 border shadow-none;
98
+ @apply bg-surface-z0 border-surface-z2 text-surface-z7 border bg-none shadow-none;
99
99
  }
@@ -25,10 +25,10 @@
25
25
  @apply text-surface-z8;
26
26
  }
27
27
 
28
- [data-style='bits-ui'] [data-plot-element="bar"][data-dimmed],
29
- [data-style='bits-ui'] [data-plot-element="point"][data-dimmed],
30
- [data-style='bits-ui'] [data-plot-element="arc"][data-dimmed],
31
- [data-style='bits-ui'] [data-plot-element="line"][data-dimmed],
32
- [data-style='bits-ui'] [data-plot-element="area"][data-dimmed] {
28
+ [data-style='bits-ui'] [data-plot-element='bar'][data-dimmed],
29
+ [data-style='bits-ui'] [data-plot-element='point'][data-dimmed],
30
+ [data-style='bits-ui'] [data-plot-element='arc'][data-dimmed],
31
+ [data-style='bits-ui'] [data-plot-element='line'][data-dimmed],
32
+ [data-style='bits-ui'] [data-plot-element='area'][data-dimmed] {
33
33
  opacity: 0.15;
34
34
  }
@@ -5,11 +5,11 @@
5
5
  */
6
6
 
7
7
  [data-style='bits-ui'] [data-dropdown-trigger] {
8
- @apply bg-none border-surface-z3 text-surface-z7 border bg-surface-z1 rounded-lg shadow-sm;
8
+ @apply border-surface-z3 text-surface-z7 bg-surface-z1 rounded-lg border bg-none shadow-sm;
9
9
  }
10
10
 
11
11
  [data-style='bits-ui'] [data-dropdown-trigger]:hover:not(:disabled) {
12
- @apply bg-none text-surface-z9 border-surface-z4 shadow-md;
12
+ @apply text-surface-z9 border-surface-z4 bg-none shadow-md;
13
13
  }
14
14
 
15
15
  [data-style='bits-ui'] [data-dropdown-trigger]:focus-visible {
@@ -17,7 +17,7 @@
17
17
  }
18
18
 
19
19
  [data-style='bits-ui'] [data-dropdown][data-open='true'] [data-dropdown-trigger] {
20
- @apply bg-none border-surface-z5 ring-primary-z3 ring-2;
20
+ @apply border-surface-z5 ring-primary-z3 bg-none ring-2;
21
21
  }
22
22
 
23
23
  [data-style='bits-ui'] [data-dropdown-trigger] [data-dropdown-icon] {
@@ -29,7 +29,7 @@
29
29
  }
30
30
 
31
31
  [data-style='bits-ui'] [data-dropdown-panel] {
32
- @apply bg-none bg-surface-z1 border-surface-z3 border shadow-lg rounded-xl;
32
+ @apply bg-surface-z1 border-surface-z3 rounded-xl border bg-none shadow-lg;
33
33
  }
34
34
 
35
35
  [data-style='bits-ui'] [data-dropdown-option] {
@@ -46,5 +46,5 @@
46
46
  }
47
47
 
48
48
  [data-style='bits-ui'] [data-dropdown-separator] {
49
- @apply bg-none bg-surface-z3;
49
+ @apply bg-surface-z3 bg-none;
50
50
  }
@@ -9,11 +9,11 @@
9
9
  ============================================================================= */
10
10
 
11
11
  [data-style='bits-ui'] [data-fab-trigger] {
12
- @apply bg-none bg-surface-z2 text-surface-z8 border-surface-z3 border rounded-lg shadow-sm;
12
+ @apply bg-surface-z2 text-surface-z8 border-surface-z3 rounded-lg border bg-none shadow-sm;
13
13
  }
14
14
 
15
15
  [data-style='bits-ui'] [data-fab-trigger]:hover:not(:disabled) {
16
- @apply bg-none bg-surface-z3 text-surface-z10 border-surface-z4 shadow-md;
16
+ @apply bg-surface-z3 text-surface-z10 border-surface-z4 bg-none shadow-md;
17
17
  }
18
18
 
19
19
  [data-style='bits-ui'] [data-fab-trigger]:focus-visible {
@@ -21,7 +21,7 @@
21
21
  }
22
22
 
23
23
  [data-style='bits-ui'] [data-fab][data-open='true'] [data-fab-trigger] {
24
- @apply bg-none bg-surface-z3 border-surface-z4 shadow-md;
24
+ @apply bg-surface-z3 border-surface-z4 bg-none shadow-md;
25
25
  transform: rotate(45deg);
26
26
  }
27
27
 
@@ -34,11 +34,11 @@
34
34
  ============================================================================= */
35
35
 
36
36
  [data-style='bits-ui'] [data-fab-item] {
37
- @apply bg-none bg-surface-z1 text-surface-z7 border-surface-z3 border rounded-lg shadow-sm;
37
+ @apply bg-surface-z1 text-surface-z7 border-surface-z3 rounded-lg border bg-none shadow-sm;
38
38
  }
39
39
 
40
40
  [data-style='bits-ui'] [data-fab-item]:hover:not(:disabled) {
41
- @apply bg-none bg-surface-z2 text-surface-z9 border-surface-z4 shadow-md;
41
+ @apply bg-surface-z2 text-surface-z9 border-surface-z4 bg-none shadow-md;
42
42
  }
43
43
 
44
44
  [data-style='bits-ui'] [data-fab-item]:focus-visible {
@@ -9,7 +9,7 @@
9
9
  ============================================================================= */
10
10
 
11
11
  [data-style='bits-ui'] [data-floating-nav] {
12
- @apply bg-none bg-surface-z1 border-surface-z3 border rounded-xl shadow-sm;
12
+ @apply bg-surface-z1 border-surface-z3 rounded-xl border bg-none shadow-sm;
13
13
  }
14
14
 
15
15
  /* =============================================================================
@@ -66,5 +66,5 @@
66
66
  ============================================================================= */
67
67
 
68
68
  [data-style='bits-ui'] [data-floating-nav-indicator] {
69
- @apply bg-none bg-primary-z5 rounded-lg;
69
+ @apply bg-primary-z5 rounded-lg bg-none;
70
70
  }
@@ -31,4 +31,5 @@
31
31
  @import './card.css';
32
32
  @import './message.css';
33
33
  @import './status-list.css';
34
+ @import './step-indicator.css';
34
35
  @import './chart.css';
@@ -6,7 +6,7 @@
6
6
 
7
7
  /* Input root: rounded border, subtle background */
8
8
  [data-style='bits-ui'] [data-input-root] {
9
- @apply border-surface-z3 relative flex items-center border bg-surface-z1 rounded-lg shadow-sm;
9
+ @apply border-surface-z3 bg-surface-z1 relative flex items-center rounded-lg border shadow-sm;
10
10
  background-image: none;
11
11
  transition:
12
12
  background-color 150ms ease,
@@ -24,7 +24,9 @@
24
24
  [data-style='bits-ui'] [data-input-root]:focus-within {
25
25
  @apply border-primary-z4 bg-surface-z1;
26
26
  background-image: none;
27
- box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06), 0 0 0 2px var(--color-primary-z3, rgba(0,0,0,0.08));
27
+ box-shadow:
28
+ inset 0 1px 3px rgba(0, 0, 0, 0.06),
29
+ 0 0 0 2px var(--color-primary-z3, rgba(0, 0, 0, 0.08));
28
30
  }
29
31
 
30
32
  /* Inputs inside wrapper */
@@ -45,7 +47,7 @@
45
47
 
46
48
  /* Select inside input-root: match text input appearance */
47
49
  [data-style='bits-ui'] [data-input-root] [data-select-trigger] {
48
- @apply text-surface-z9 border-none bg-transparent px-3 shadow-none ring-0 focus:outline-none rounded-lg;
50
+ @apply text-surface-z9 rounded-lg border-none bg-transparent px-3 shadow-none ring-0 focus:outline-none;
49
51
  font-size: 0.875rem;
50
52
  background-image: none;
51
53
  transition: color 150ms ease;
@@ -105,7 +107,9 @@
105
107
  }
106
108
 
107
109
  [data-style='bits-ui'] [data-field-state='fail'] [data-input-root]:focus-within {
108
- box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06), 0 0 0 2px var(--color-danger-z3, rgba(0,0,0,0.08));
110
+ box-shadow:
111
+ inset 0 1px 3px rgba(0, 0, 0, 0.06),
112
+ 0 0 0 2px var(--color-danger-z3, rgba(0, 0, 0, 0.08));
109
113
  }
110
114
 
111
115
  /* Pass state */