@rokkit/themes 1.0.3 → 1.0.5

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 (252) hide show
  1. package/README.md +11 -19
  2. package/build.mjs +5 -21
  3. package/package.json +23 -132
  4. package/src/base/carousel.css +1 -2
  5. package/src/base/density.css +3 -3
  6. package/src/base/gradient-border.css +32 -0
  7. package/src/base/index.css +3 -0
  8. package/src/base/input.css +9 -5
  9. package/src/base/item.css +13 -0
  10. package/src/base/layout.css +17 -0
  11. package/src/base/nav-content.css +3 -3
  12. package/src/base/radius.css +41 -0
  13. package/src/base/stepper.css +9 -14
  14. package/src/frosted/button.css +6 -11
  15. package/src/frosted/card.css +5 -9
  16. package/src/frosted/dropdown.css +5 -10
  17. package/src/frosted/floating-action.css +2 -2
  18. package/src/frosted/input.css +2 -3
  19. package/src/frosted/list.css +25 -0
  20. package/src/frosted/menu.css +4 -8
  21. package/src/frosted/range.css +2 -2
  22. package/src/frosted/select.css +1 -1
  23. package/src/frosted/step-indicator.css +1 -2
  24. package/src/frosted/switch.css +2 -3
  25. package/src/frosted/timeline.css +1 -2
  26. package/src/index.css +2 -0
  27. package/src/index.js +0 -1
  28. package/src/material/floating-action.css +2 -2
  29. package/src/material/list.css +14 -0
  30. package/src/material/range.css +2 -2
  31. package/src/material/select.css +1 -1
  32. package/src/material/step-indicator.css +1 -2
  33. package/src/material/switch.css +1 -1
  34. package/src/material/tabs.css +2 -2
  35. package/src/material/timeline.css +1 -2
  36. package/src/material/toggle.css +2 -2
  37. package/src/minimal/floating-action.css +1 -1
  38. package/src/minimal/list.css +14 -0
  39. package/src/minimal/select.css +1 -13
  40. package/src/rokkit/floating-action.css +5 -5
  41. package/src/rokkit/floating-navigation.css +1 -1
  42. package/src/rokkit/index.css +0 -1
  43. package/src/rokkit/input.css +1 -1
  44. package/src/rokkit/list.css +25 -0
  45. package/src/rokkit/range.css +2 -2
  46. package/src/rokkit/select.css +1 -1
  47. package/src/rokkit/step-indicator.css +1 -2
  48. package/src/rokkit/swatch.css +1 -1
  49. package/src/rokkit/switch.css +1 -1
  50. package/src/rokkit/timeline.css +1 -2
  51. package/src/rokkit/upload-progress.css +4 -4
  52. package/src/zen-sumi/button.css +176 -0
  53. package/src/zen-sumi/card.css +104 -0
  54. package/src/zen-sumi/chart.css +41 -0
  55. package/src/zen-sumi/dropdown.css +53 -0
  56. package/src/zen-sumi/floating-action.css +68 -0
  57. package/src/zen-sumi/floating-navigation.css +74 -0
  58. package/src/{grada-ui → zen-sumi}/index.css +25 -30
  59. package/src/zen-sumi/input.css +145 -0
  60. package/src/zen-sumi/list.css +128 -0
  61. package/src/zen-sumi/menu.css +91 -0
  62. package/src/zen-sumi/message.css +37 -0
  63. package/src/zen-sumi/range.css +62 -0
  64. package/src/zen-sumi/search-filter.css +49 -0
  65. package/src/zen-sumi/select.css +160 -0
  66. package/src/zen-sumi/status-list.css +66 -0
  67. package/src/zen-sumi/step-indicator.css +40 -0
  68. package/src/zen-sumi/swatch.css +21 -0
  69. package/src/zen-sumi/switch.css +34 -0
  70. package/src/zen-sumi/table.css +118 -0
  71. package/src/zen-sumi/tabs.css +78 -0
  72. package/src/zen-sumi/timeline.css +46 -0
  73. package/src/zen-sumi/toc.css +22 -0
  74. package/src/zen-sumi/toggle.css +51 -0
  75. package/src/zen-sumi/toolbar.css +86 -0
  76. package/src/zen-sumi/tree.css +137 -0
  77. package/dist/ant-design.css +0 -2129
  78. package/dist/base.css +0 -6378
  79. package/dist/bits-ui.css +0 -2113
  80. package/dist/carbon.css +0 -2123
  81. package/dist/daisy-ui.css +0 -2138
  82. package/dist/frosted.css +0 -1953
  83. package/dist/grada-ui.css +0 -1915
  84. package/dist/index.css +0 -27231
  85. package/dist/material.css +0 -1924
  86. package/dist/minimal.css +0 -1978
  87. package/dist/rokkit.css +0 -2471
  88. package/dist/shadcn.css +0 -2099
  89. package/src/ant-design/button.css +0 -190
  90. package/src/ant-design/card.css +0 -100
  91. package/src/ant-design/chart.css +0 -34
  92. package/src/ant-design/connector.css +0 -11
  93. package/src/ant-design/dropdown.css +0 -50
  94. package/src/ant-design/floating-action.css +0 -63
  95. package/src/ant-design/floating-navigation.css +0 -70
  96. package/src/ant-design/grid.css +0 -46
  97. package/src/ant-design/index.css +0 -35
  98. package/src/ant-design/input.css +0 -151
  99. package/src/ant-design/list.css +0 -126
  100. package/src/ant-design/menu.css +0 -88
  101. package/src/ant-design/message.css +0 -35
  102. package/src/ant-design/range.css +0 -61
  103. package/src/ant-design/search-filter.css +0 -49
  104. package/src/ant-design/select.css +0 -158
  105. package/src/ant-design/status-list.css +0 -66
  106. package/src/ant-design/step-indicator.css +0 -38
  107. package/src/ant-design/switch.css +0 -29
  108. package/src/ant-design/table.css +0 -91
  109. package/src/ant-design/tabs.css +0 -153
  110. package/src/ant-design/timeline.css +0 -45
  111. package/src/ant-design/toc.css +0 -18
  112. package/src/ant-design/toggle.css +0 -48
  113. package/src/ant-design/toolbar.css +0 -85
  114. package/src/ant-design/tree.css +0 -137
  115. package/src/ant-design/upload-progress.css +0 -102
  116. package/src/ant-design/upload-target.css +0 -50
  117. package/src/bits-ui/button.css +0 -176
  118. package/src/bits-ui/card.css +0 -99
  119. package/src/bits-ui/chart.css +0 -34
  120. package/src/bits-ui/connector.css +0 -11
  121. package/src/bits-ui/dropdown.css +0 -50
  122. package/src/bits-ui/floating-action.css +0 -63
  123. package/src/bits-ui/floating-navigation.css +0 -70
  124. package/src/bits-ui/grid.css +0 -46
  125. package/src/bits-ui/index.css +0 -35
  126. package/src/bits-ui/input.css +0 -154
  127. package/src/bits-ui/list.css +0 -126
  128. package/src/bits-ui/menu.css +0 -88
  129. package/src/bits-ui/message.css +0 -35
  130. package/src/bits-ui/range.css +0 -61
  131. package/src/bits-ui/search-filter.css +0 -49
  132. package/src/bits-ui/select.css +0 -158
  133. package/src/bits-ui/status-list.css +0 -66
  134. package/src/bits-ui/step-indicator.css +0 -40
  135. package/src/bits-ui/switch.css +0 -29
  136. package/src/bits-ui/table.css +0 -89
  137. package/src/bits-ui/tabs.css +0 -151
  138. package/src/bits-ui/timeline.css +0 -45
  139. package/src/bits-ui/toc.css +0 -18
  140. package/src/bits-ui/toggle.css +0 -48
  141. package/src/bits-ui/toolbar.css +0 -85
  142. package/src/bits-ui/tree.css +0 -135
  143. package/src/bits-ui/upload-progress.css +0 -102
  144. package/src/bits-ui/upload-target.css +0 -50
  145. package/src/carbon/button.css +0 -186
  146. package/src/carbon/card.css +0 -97
  147. package/src/carbon/chart.css +0 -34
  148. package/src/carbon/connector.css +0 -11
  149. package/src/carbon/dropdown.css +0 -50
  150. package/src/carbon/floating-action.css +0 -63
  151. package/src/carbon/floating-navigation.css +0 -70
  152. package/src/carbon/grid.css +0 -46
  153. package/src/carbon/index.css +0 -34
  154. package/src/carbon/input.css +0 -148
  155. package/src/carbon/list.css +0 -124
  156. package/src/carbon/menu.css +0 -88
  157. package/src/carbon/message.css +0 -37
  158. package/src/carbon/range.css +0 -61
  159. package/src/carbon/search-filter.css +0 -49
  160. package/src/carbon/select.css +0 -158
  161. package/src/carbon/status-list.css +0 -66
  162. package/src/carbon/step-indicator.css +0 -40
  163. package/src/carbon/switch.css +0 -31
  164. package/src/carbon/table.css +0 -93
  165. package/src/carbon/tabs.css +0 -151
  166. package/src/carbon/timeline.css +0 -45
  167. package/src/carbon/toc.css +0 -22
  168. package/src/carbon/toggle.css +0 -48
  169. package/src/carbon/toolbar.css +0 -84
  170. package/src/carbon/tree.css +0 -135
  171. package/src/carbon/upload-progress.css +0 -102
  172. package/src/carbon/upload-target.css +0 -50
  173. package/src/daisy-ui/button.css +0 -196
  174. package/src/daisy-ui/card.css +0 -99
  175. package/src/daisy-ui/chart.css +0 -34
  176. package/src/daisy-ui/connector.css +0 -11
  177. package/src/daisy-ui/dropdown.css +0 -50
  178. package/src/daisy-ui/floating-action.css +0 -63
  179. package/src/daisy-ui/floating-navigation.css +0 -70
  180. package/src/daisy-ui/grid.css +0 -46
  181. package/src/daisy-ui/index.css +0 -34
  182. package/src/daisy-ui/input.css +0 -148
  183. package/src/daisy-ui/list.css +0 -127
  184. package/src/daisy-ui/menu.css +0 -88
  185. package/src/daisy-ui/message.css +0 -37
  186. package/src/daisy-ui/range.css +0 -61
  187. package/src/daisy-ui/search-filter.css +0 -49
  188. package/src/daisy-ui/select.css +0 -158
  189. package/src/daisy-ui/status-list.css +0 -66
  190. package/src/daisy-ui/step-indicator.css +0 -37
  191. package/src/daisy-ui/switch.css +0 -31
  192. package/src/daisy-ui/table.css +0 -91
  193. package/src/daisy-ui/tabs.css +0 -153
  194. package/src/daisy-ui/timeline.css +0 -45
  195. package/src/daisy-ui/toc.css +0 -22
  196. package/src/daisy-ui/toggle.css +0 -48
  197. package/src/daisy-ui/toolbar.css +0 -85
  198. package/src/daisy-ui/tree.css +0 -137
  199. package/src/daisy-ui/upload-progress.css +0 -102
  200. package/src/daisy-ui/upload-target.css +0 -50
  201. package/src/grada-ui/button.css +0 -249
  202. package/src/grada-ui/card.css +0 -96
  203. package/src/grada-ui/chart.css +0 -34
  204. package/src/grada-ui/dropdown.css +0 -58
  205. package/src/grada-ui/floating-action.css +0 -66
  206. package/src/grada-ui/floating-navigation.css +0 -69
  207. package/src/grada-ui/input.css +0 -154
  208. package/src/grada-ui/list.css +0 -124
  209. package/src/grada-ui/menu.css +0 -81
  210. package/src/grada-ui/message.css +0 -48
  211. package/src/grada-ui/range.css +0 -59
  212. package/src/grada-ui/search-filter.css +0 -47
  213. package/src/grada-ui/select.css +0 -190
  214. package/src/grada-ui/status-list.css +0 -66
  215. package/src/grada-ui/step-indicator.css +0 -37
  216. package/src/grada-ui/switch.css +0 -35
  217. package/src/grada-ui/table.css +0 -79
  218. package/src/grada-ui/tabs.css +0 -59
  219. package/src/grada-ui/timeline.css +0 -46
  220. package/src/grada-ui/toc.css +0 -24
  221. package/src/grada-ui/toggle.css +0 -47
  222. package/src/grada-ui/toolbar.css +0 -91
  223. package/src/grada-ui/tree.css +0 -100
  224. package/src/rokkit/stack.css +0 -6
  225. package/src/shadcn/button.css +0 -175
  226. package/src/shadcn/card.css +0 -99
  227. package/src/shadcn/chart.css +0 -34
  228. package/src/shadcn/connector.css +0 -11
  229. package/src/shadcn/dropdown.css +0 -50
  230. package/src/shadcn/floating-action.css +0 -63
  231. package/src/shadcn/floating-navigation.css +0 -70
  232. package/src/shadcn/grid.css +0 -46
  233. package/src/shadcn/index.css +0 -35
  234. package/src/shadcn/input.css +0 -143
  235. package/src/shadcn/list.css +0 -124
  236. package/src/shadcn/menu.css +0 -88
  237. package/src/shadcn/message.css +0 -35
  238. package/src/shadcn/range.css +0 -61
  239. package/src/shadcn/search-filter.css +0 -49
  240. package/src/shadcn/select.css +0 -158
  241. package/src/shadcn/status-list.css +0 -66
  242. package/src/shadcn/step-indicator.css +0 -37
  243. package/src/shadcn/switch.css +0 -31
  244. package/src/shadcn/table.css +0 -89
  245. package/src/shadcn/tabs.css +0 -151
  246. package/src/shadcn/timeline.css +0 -45
  247. package/src/shadcn/toc.css +0 -20
  248. package/src/shadcn/toggle.css +0 -48
  249. package/src/shadcn/toolbar.css +0 -84
  250. package/src/shadcn/tree.css +0 -135
  251. package/src/shadcn/upload-progress.css +0 -102
  252. package/src/shadcn/upload-target.css +0 -50
@@ -0,0 +1,66 @@
1
+ /**
2
+ * StatusList - Zen-Sumi Theme Styles
3
+ */
4
+
5
+ /* ── @rokkit/ui StatusList: icon and text colors by status ── */
6
+
7
+ [data-style='zen-sumi'] [data-status-item][data-status='pass'] span {
8
+ @apply text-success-z5;
9
+ }
10
+ [data-style='zen-sumi'] [data-status-item][data-status='fail'] span {
11
+ @apply text-error-z5;
12
+ }
13
+ [data-style='zen-sumi'] [data-status-item][data-status='warn'] span {
14
+ @apply text-warning-z5;
15
+ }
16
+ [data-style='zen-sumi'] [data-status-item][data-status='unknown'] span {
17
+ @apply text-surface-z4;
18
+ }
19
+
20
+ [data-style='zen-sumi'] [data-status-item][data-status='pass'] {
21
+ @apply text-success-z7;
22
+ }
23
+ [data-style='zen-sumi'] [data-status-item][data-status='fail'] {
24
+ @apply text-error-z7;
25
+ }
26
+ [data-style='zen-sumi'] [data-status-item][data-status='warn'] {
27
+ @apply text-warning-z7;
28
+ }
29
+ [data-style='zen-sumi'] [data-status-item][data-status='unknown'] {
30
+ @apply text-ink-z5;
31
+ }
32
+
33
+ /* ── @rokkit/forms StatusList: group headers by severity ── */
34
+
35
+ [data-style='zen-sumi'] [data-status-group][data-severity='error'] [data-status-header] {
36
+ @apply text-error-z5;
37
+ }
38
+ [data-style='zen-sumi'] [data-status-group][data-severity='warning'] [data-status-header] {
39
+ @apply text-warning-z5;
40
+ }
41
+ [data-style='zen-sumi'] [data-status-group][data-severity='info'] [data-status-header] {
42
+ @apply text-info-z5;
43
+ }
44
+ [data-style='zen-sumi'] [data-status-group][data-severity='success'] [data-status-header] {
45
+ @apply text-success-z5;
46
+ }
47
+
48
+ /* ── @rokkit/forms StatusList: item colors ── */
49
+
50
+ [data-style='zen-sumi'] [data-status-item][data-status='error'] {
51
+ @apply text-error-z7;
52
+ }
53
+ [data-style='zen-sumi'] [data-status-item][data-status='warning'] {
54
+ @apply text-warning-z7;
55
+ }
56
+ [data-style='zen-sumi'] [data-status-item][data-status='info'] {
57
+ @apply text-info-z7;
58
+ }
59
+ [data-style='zen-sumi'] [data-status-item][data-status='success'] {
60
+ @apply text-success-z7;
61
+ }
62
+
63
+ /* Count badge */
64
+ [data-style='zen-sumi'] [data-status-count] {
65
+ @apply text-ink-z5 bg-none font-medium;
66
+ }
@@ -0,0 +1,40 @@
1
+ /* StepIndicator — Zen-Sumi theme (flat, hairline border) */
2
+
3
+ /* ── Number circles ── */
4
+
5
+ [data-style='zen-sumi'] [data-step-item][data-step-state='complete'] [data-step-number] {
6
+ @apply bg-primary-z5 border-primary-z5 text-on-primary bg-none;
7
+ }
8
+
9
+ [data-style='zen-sumi'] [data-step-item][data-step-state='current'] [data-step-number] {
10
+ @apply bg-transparent border-primary-z4 text-primary-z6 bg-none;
11
+ }
12
+
13
+ [data-style='zen-sumi'] [data-step-item][data-step-state='upcoming'] [data-step-number] {
14
+ @apply bg-transparent border-surface-z2 text-ink-z5 bg-none;
15
+ }
16
+
17
+ /* ── Labels ── */
18
+
19
+ [data-style='zen-sumi'] [data-step-item][data-step-state='complete'] [data-step-label] {
20
+ @apply text-primary-z6 bg-none;
21
+ }
22
+
23
+ [data-style='zen-sumi'] [data-step-item][data-step-state='current'] [data-step-label] {
24
+ @apply text-ink-z1 font-medium bg-none;
25
+ }
26
+
27
+ [data-style='zen-sumi'] [data-step-item][data-step-state='upcoming'] [data-step-label] {
28
+ @apply text-surface-z4 bg-none;
29
+ }
30
+
31
+ /* ── Connector lines ── */
32
+
33
+ [data-style='zen-sumi'] [data-step-item][data-step-state='complete']::after {
34
+ @apply bg-primary-z4;
35
+ }
36
+
37
+ [data-style='zen-sumi'] [data-step-item][data-step-state='current']::after,
38
+ [data-style='zen-sumi'] [data-step-item][data-step-state='upcoming']::after {
39
+ @apply bg-surface-z2;
40
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Swatch — Zen-Sumi Theme
3
+ * Selected: primary (shu) outline. Hover/focus: surface-z5 outline.
4
+ */
5
+
6
+ [data-style='zen-sumi'] [data-swatch-item][data-selected] {
7
+ background: transparent;
8
+ @apply outline-primary-z5;
9
+ }
10
+
11
+ [data-style='zen-sumi']
12
+ [data-swatch-item]:hover:not(:disabled):not([data-disabled]):not([data-selected]),
13
+ [data-style='zen-sumi']
14
+ [data-swatch-item]:focus-visible:not(:disabled):not([data-disabled]):not([data-selected]) {
15
+ @apply outline-surface-z4;
16
+ }
17
+
18
+ [data-style='zen-sumi'] [data-swatch-item][data-selected]:focus-visible {
19
+ @apply outline-primary-z6;
20
+ outline-offset: 3px;
21
+ }
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Switch - Zen-Sumi Theme Styles
3
+ *
4
+ * Flat pill. Off: surface-z3 track. On: primary-z5 (shu vermillion) track.
5
+ * Thumb: paper white. No shadows.
6
+ */
7
+
8
+ [data-style='zen-sumi'] [data-switch-track] {
9
+ @apply bg-surface-z3 border-0;
10
+ background-image: none;
11
+ }
12
+
13
+ [data-style='zen-sumi'] [data-switch] [data-switch-thumb] {
14
+ --switch-thumb-travel: 1.25rem;
15
+ @apply bg-surface-z0;
16
+ }
17
+
18
+ [data-style='zen-sumi'] [data-switch]:focus-visible [data-switch-track] {
19
+ box-shadow: 0 0 0 2px var(--color-surface-z5);
20
+ }
21
+
22
+ /* On state — shu vermillion */
23
+ [data-style='zen-sumi'] [data-switch][aria-checked='true'] [data-switch-track] {
24
+ @apply bg-primary-z5 border-0;
25
+ background-image: none;
26
+ }
27
+
28
+ [data-style='zen-sumi'] [data-switch][aria-checked='true'] [data-switch-thumb] {
29
+ @apply bg-surface-z0;
30
+ }
31
+
32
+ [data-style='zen-sumi'] [data-switch-label] {
33
+ @apply text-ink-z3;
34
+ }
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Table - Zen-Sumi Theme Styles
3
+ *
4
+ * Clean, flat rows. Header: uppercase small text, hairline bottom border.
5
+ * No shadow on header. Row hover: surface-z1 wash. No bg on selected — left border only.
6
+ */
7
+
8
+ /* =============================================================================
9
+ Header
10
+ ============================================================================= */
11
+
12
+ [data-style='zen-sumi'] [data-table-header] th {
13
+ @apply text-ink-z5 border-surface-z2 border-b bg-transparent;
14
+ font-size: 0.6875rem;
15
+ font-weight: 600;
16
+ letter-spacing: 0.05em;
17
+ text-transform: uppercase;
18
+ }
19
+
20
+ [data-style='zen-sumi'] [data-table-header-cell][data-sortable='true']:hover {
21
+ @apply text-ink-z2;
22
+ }
23
+
24
+ [data-style='zen-sumi'] [data-table-header-cell][data-sort-order='ascending'],
25
+ [data-style='zen-sumi'] [data-table-header-cell][data-sort-order='descending'] {
26
+ @apply text-primary-z6;
27
+ }
28
+
29
+ [data-style='zen-sumi'] [data-table-sort-icon] {
30
+ @apply text-surface-z4;
31
+ }
32
+
33
+ [data-style='zen-sumi']
34
+ [data-table-header-cell][data-sort-order='ascending']
35
+ [data-table-sort-icon],
36
+ [data-style='zen-sumi']
37
+ [data-table-header-cell][data-sort-order='descending']
38
+ [data-table-sort-icon] {
39
+ @apply text-primary-z5;
40
+ }
41
+
42
+ /* =============================================================================
43
+ Caption
44
+ ============================================================================= */
45
+
46
+ [data-style='zen-sumi'] [data-table-caption] {
47
+ @apply text-ink-z4;
48
+ }
49
+
50
+ /* =============================================================================
51
+ Rows
52
+ ============================================================================= */
53
+
54
+ [data-style='zen-sumi'] [data-table-row] {
55
+ @apply text-ink-z3 border-surface-z2 border-b;
56
+ }
57
+
58
+ [data-style='zen-sumi'] [data-table-row]:hover {
59
+ @apply bg-surface-z1 text-ink-z2 bg-none;
60
+ }
61
+
62
+ [data-style='zen-sumi'] [data-table-row]:focus {
63
+ @apply text-ink-z1 bg-none outline-none;
64
+ box-shadow: inset 0 0 0 1px var(--color-surface-z4);
65
+ }
66
+
67
+ [data-style='zen-sumi'] [data-table-row][data-selected='true'] {
68
+ @apply text-primary-z7 border-l-primary-z4 border-l-2 bg-none;
69
+ }
70
+
71
+ /* =============================================================================
72
+ Striped
73
+ ============================================================================= */
74
+
75
+ [data-style='zen-sumi'] [data-table-striped] [data-table-body] tr:nth-child(even) {
76
+ @apply bg-surface-z1;
77
+ }
78
+
79
+ /* =============================================================================
80
+ Empty
81
+ ============================================================================= */
82
+
83
+ [data-style='zen-sumi'] [data-table-empty] {
84
+ @apply text-ink-z5;
85
+ }
86
+
87
+ /* =============================================================================
88
+ Cell Icon
89
+ ============================================================================= */
90
+
91
+ [data-style='zen-sumi'] [data-table-cell] [data-cell-icon] {
92
+ @apply text-ink-z5;
93
+ }
94
+
95
+ [data-style='zen-sumi'] [data-table-row][data-selected='true'] [data-cell-icon] {
96
+ @apply text-primary-z5;
97
+ }
98
+
99
+ /* =============================================================================
100
+ Responsive Card Layout
101
+ ============================================================================= */
102
+
103
+ @media (max-width: 639px) {
104
+ [data-style='zen-sumi'] [data-table-responsive] [data-table-row] {
105
+ @apply border-surface-z2 border bg-none;
106
+ }
107
+
108
+ [data-style='zen-sumi'] [data-table-responsive] [data-table-cell]::before {
109
+ @apply text-ink-z5;
110
+ }
111
+
112
+ [data-style='zen-sumi']
113
+ [data-table-responsive][data-table-striped]
114
+ [data-table-body]
115
+ tr:nth-child(even) {
116
+ background: unset;
117
+ }
118
+ }
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Tabs - Zen-Sumi Theme Styles
3
+ *
4
+ * Pill-style tabs with filled active state (ink background, paper text).
5
+ * No underlines — depth through background fill only.
6
+ * Inactive: transparent. Hover: surface-z2 wash. Active: surface-z9 fill.
7
+ */
8
+
9
+ /* =============================================================================
10
+ Tab List — borderless container
11
+ ============================================================================= */
12
+
13
+ [data-style='zen-sumi'] [data-tabs-list] {
14
+ @apply bg-surface-z1 gap-1 border-0 p-1;
15
+ border-radius: var(--radius-md, 0.375rem);
16
+ }
17
+
18
+ [data-style='zen-sumi'] [data-tabs][data-orientation='vertical'] [data-tabs-list] {
19
+ @apply flex-col;
20
+ }
21
+
22
+ /* =============================================================================
23
+ Tab Triggers — pill fill, not underline
24
+ ============================================================================= */
25
+
26
+ [data-style='zen-sumi'] [data-tabs-trigger] {
27
+ @apply text-ink-z4 bg-transparent border-0;
28
+ font-weight: 400;
29
+ border-radius: var(--radius-sm, 0.125rem);
30
+ transition:
31
+ background-color 150ms ease,
32
+ color 150ms ease;
33
+ }
34
+
35
+ [data-style='zen-sumi'] [data-tabs-trigger]:hover:not(:disabled):not([data-disabled]) {
36
+ @apply bg-surface-z2 text-ink-z2;
37
+ }
38
+
39
+ [data-style='zen-sumi'] [data-tabs-trigger][data-selected] {
40
+ @apply bg-surface-z9 text-surface-z0 bg-none;
41
+ font-weight: 500;
42
+ }
43
+
44
+ /* Reset any gradient leakage */
45
+ [data-style='zen-sumi'] [data-tabs-list]:focus-within [data-tabs-trigger][data-selected] {
46
+ @apply bg-none;
47
+ }
48
+
49
+ [data-style='zen-sumi']
50
+ [data-tabs][data-orientation='vertical']
51
+ [data-tabs-list]:focus-within
52
+ [data-tabs-trigger][data-selected] {
53
+ @apply bg-none;
54
+ }
55
+
56
+ /* =============================================================================
57
+ Tab Icon
58
+ ============================================================================= */
59
+
60
+ [data-style='zen-sumi'] [data-tabs-trigger] [data-tabs-icon] {
61
+ @apply text-surface-z4;
62
+ }
63
+
64
+ [data-style='zen-sumi'] [data-tabs-trigger]:hover:not(:disabled) [data-tabs-icon] {
65
+ @apply text-ink-z4;
66
+ }
67
+
68
+ [data-style='zen-sumi'] [data-tabs-trigger][data-selected] [data-tabs-icon] {
69
+ @apply text-surface-z1;
70
+ }
71
+
72
+ /* =============================================================================
73
+ Tab Panel
74
+ ============================================================================= */
75
+
76
+ [data-style='zen-sumi'] [data-tabs-content] {
77
+ @apply text-ink-z2;
78
+ }
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Timeline - Zen-Sumi Theme Styles
3
+ *
4
+ * Restrained timeline. Completed/active: primary (shu) accent.
5
+ * Connectors: surface-z2 default, primary when completed.
6
+ */
7
+
8
+ /* =============================================================================
9
+ Circle
10
+ ============================================================================= */
11
+
12
+ [data-style='zen-sumi'] [data-timeline-circle] {
13
+ @apply border-surface-z3 text-ink-z5;
14
+ }
15
+
16
+ [data-style='zen-sumi'] [data-timeline-item][data-completed] [data-timeline-circle] {
17
+ @apply border-primary text-primary;
18
+ }
19
+
20
+ [data-style='zen-sumi'] [data-timeline-item][data-active] [data-timeline-circle] {
21
+ @apply border-primary text-primary;
22
+ }
23
+
24
+ /* =============================================================================
25
+ Connector
26
+ ============================================================================= */
27
+
28
+ [data-style='zen-sumi'] [data-timeline-connector] {
29
+ @apply bg-surface-z2;
30
+ }
31
+
32
+ [data-style='zen-sumi'] [data-timeline-item][data-completed] [data-timeline-connector] {
33
+ @apply bg-primary;
34
+ }
35
+
36
+ /* =============================================================================
37
+ Body
38
+ ============================================================================= */
39
+
40
+ [data-style='zen-sumi'] [data-timeline-title] {
41
+ @apply text-ink-z2;
42
+ }
43
+
44
+ [data-style='zen-sumi'] [data-timeline-description] {
45
+ @apply text-ink-z5;
46
+ }
@@ -0,0 +1,22 @@
1
+ /* TableOfContents — Zen-Sumi theme */
2
+
3
+ [data-style='zen-sumi'] [data-toc] [data-toc-label] {
4
+ @apply text-surface-z4;
5
+ font-size: 0.6875rem;
6
+ font-weight: 600;
7
+ letter-spacing: 0.05em;
8
+ text-transform: uppercase;
9
+ }
10
+
11
+ [data-style='zen-sumi'] [data-toc] [data-toc-item] {
12
+ @apply text-ink-z5;
13
+ }
14
+
15
+ [data-style='zen-sumi'] [data-toc] [data-toc-item]:hover,
16
+ [data-style='zen-sumi'] [data-toc] [data-toc-item][data-toc-focused] {
17
+ @apply text-ink-z2 outline-none;
18
+ }
19
+
20
+ [data-style='zen-sumi'] [data-toc] [data-toc-item][data-toc-active] {
21
+ @apply text-primary-z5 border-l-primary-z4;
22
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Toggle - Zen-Sumi Theme Styles
3
+ *
4
+ * Pill container with filled active state.
5
+ * Inactive: transparent. Hover: surface-z2. Active: ink fill (surface-z9).
6
+ */
7
+
8
+ /* =============================================================================
9
+ Toggle Container
10
+ ============================================================================= */
11
+
12
+ [data-style='zen-sumi'] [data-toggle] {
13
+ @apply bg-surface-z1 border-surface-z2 border;
14
+ border-radius: var(--radius-md, 0.375rem);
15
+ }
16
+
17
+ /* =============================================================================
18
+ Toggle Options
19
+ ============================================================================= */
20
+
21
+ [data-style='zen-sumi'] [data-toggle-option] {
22
+ @apply text-ink-z4 border-0 border-solid border-transparent;
23
+ }
24
+
25
+ [data-style='zen-sumi'] [data-toggle-option]:hover:not(:disabled):not([data-disabled='true']),
26
+ [data-style='zen-sumi'] [data-toggle-option]:focus:not(:disabled):not([data-disabled='true']) {
27
+ @apply bg-surface-z2 text-ink-z2;
28
+ }
29
+
30
+ /* Selected state — ink fill */
31
+ [data-style='zen-sumi'] [data-toggle-option][data-selected='true'] {
32
+ @apply bg-surface-z9 text-surface-z0 bg-none;
33
+ font-weight: 500;
34
+ }
35
+
36
+ /* =============================================================================
37
+ Toggle Icon
38
+ ============================================================================= */
39
+
40
+ [data-style='zen-sumi'] [data-toggle-option] [data-toggle-icon] {
41
+ @apply text-ink-z5;
42
+ }
43
+
44
+ [data-style='zen-sumi'] [data-toggle-option]:hover:not(:disabled) [data-toggle-icon],
45
+ [data-style='zen-sumi'] [data-toggle-option]:focus:not(:disabled) [data-toggle-icon] {
46
+ @apply text-ink-z3;
47
+ }
48
+
49
+ [data-style='zen-sumi'] [data-toggle-option][data-selected='true'] [data-toggle-icon] {
50
+ @apply text-surface-z1;
51
+ }
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Toolbar - Zen-Sumi Theme Styles
3
+ *
4
+ * Transparent base with hairline border by position.
5
+ * Items: surface-z6 → surface-z9 on hover. Active: primary-z5.
6
+ */
7
+
8
+ /* =============================================================================
9
+ Toolbar Container
10
+ ============================================================================= */
11
+
12
+ [data-style='zen-sumi'] [data-toolbar] {
13
+ @apply bg-transparent bg-none;
14
+ }
15
+
16
+ [data-style='zen-sumi'] [data-toolbar][data-toolbar-position='top'],
17
+ [data-style='zen-sumi'] [data-toolbar]:not([data-toolbar-position]) {
18
+ @apply border-surface-z2 border-b;
19
+ }
20
+
21
+ [data-style='zen-sumi'] [data-toolbar][data-toolbar-position='bottom'] {
22
+ @apply border-surface-z2 border-t;
23
+ }
24
+
25
+ [data-style='zen-sumi'] [data-toolbar][data-toolbar-position='left'] {
26
+ @apply border-surface-z2 border-r;
27
+ }
28
+
29
+ [data-style='zen-sumi'] [data-toolbar][data-toolbar-position='right'] {
30
+ @apply border-surface-z2 border-l;
31
+ }
32
+
33
+ /* =============================================================================
34
+ Toolbar Items
35
+ ============================================================================= */
36
+
37
+ [data-style='zen-sumi'] [data-toolbar-item] {
38
+ @apply text-ink-z4;
39
+ }
40
+
41
+ [data-style='zen-sumi'] [data-toolbar-item]:hover:not(:disabled):not([data-disabled='true']) {
42
+ @apply bg-surface-z2 text-ink-z1 bg-none;
43
+ }
44
+
45
+ [data-style='zen-sumi']
46
+ [data-toolbar-item]:focus-visible:not(:disabled):not([data-disabled='true']) {
47
+ @apply text-ink-z1 bg-none outline-none;
48
+ box-shadow: inset 0 0 0 1px var(--color-surface-z4);
49
+ }
50
+
51
+ /* Active/pressed state */
52
+ [data-style='zen-sumi'] [data-toolbar-item][data-active='true'] {
53
+ @apply text-primary-z5 bg-none;
54
+ }
55
+
56
+ [data-style='zen-sumi'] [data-toolbar-item][data-active='true']:hover:not(:disabled) {
57
+ @apply text-primary-z6 bg-none;
58
+ }
59
+
60
+ /* =============================================================================
61
+ Toolbar Icon
62
+ ============================================================================= */
63
+
64
+ [data-style='zen-sumi'] [data-toolbar-item] [data-toolbar-icon] {
65
+ @apply text-ink-z5;
66
+ }
67
+
68
+ [data-style='zen-sumi'] [data-toolbar-item]:hover:not(:disabled) [data-toolbar-icon] {
69
+ @apply text-ink-z2;
70
+ }
71
+
72
+ [data-style='zen-sumi'] [data-toolbar-item][data-active='true'] [data-toolbar-icon] {
73
+ @apply text-primary-z5;
74
+ }
75
+
76
+ /* =============================================================================
77
+ Separator & Divider
78
+ ============================================================================= */
79
+
80
+ [data-style='zen-sumi'] [data-toolbar-separator] {
81
+ @apply bg-surface-z2 bg-none;
82
+ }
83
+
84
+ [data-style='zen-sumi'] [data-toolbar-divider] {
85
+ @apply bg-surface-z2 bg-none;
86
+ }