@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,145 @@
1
+ /**
2
+ * Input - Zen-Sumi Theme Styles
3
+ *
4
+ * Calm, bordered inputs. No glow on focus — just border darkening.
5
+ * Error: border becomes danger-z4. No background fill on error state.
6
+ */
7
+
8
+ /* Input root: subtle border, paper background */
9
+ [data-style='zen-sumi'] [data-input-root] {
10
+ @apply border-surface-z3 bg-surface-z1 relative flex items-center border;
11
+ background-image: none;
12
+ transition: border-color 150ms ease;
13
+ }
14
+
15
+ /* Hover: border darkens slightly */
16
+ [data-style='zen-sumi'] [data-input-root]:hover:not(:focus-within) {
17
+ @apply border-surface-z4;
18
+ background-image: none;
19
+ }
20
+
21
+ /* Focus: border darkens — no glow */
22
+ [data-style='zen-sumi'] [data-input-root]:focus-within {
23
+ @apply border-surface-z6;
24
+ background-image: none;
25
+ }
26
+
27
+ /* Inputs inside wrapper */
28
+ [data-style='zen-sumi']
29
+ [data-input-root]
30
+ input:not([type='checkbox'], [type='radio'], [type='color']),
31
+ [data-style='zen-sumi'] [data-input-root] textarea,
32
+ [data-style='zen-sumi'] [data-input-root] select {
33
+ @apply text-ink-z1 w-full border-none bg-transparent px-2 py-1.5 outline-none;
34
+ font-size: 0.8125rem;
35
+ line-height: 1.25rem;
36
+ }
37
+
38
+ [data-style='zen-sumi'] [data-input-root] textarea {
39
+ @apply resize-vertical min-h-20 py-2;
40
+ }
41
+
42
+ /* Select inside input-root */
43
+ [data-style='zen-sumi'] [data-input-root] [data-select-trigger] {
44
+ @apply text-ink-z1 border-none bg-transparent px-2 shadow-none ring-0 focus:outline-none;
45
+ font-size: 0.8125rem;
46
+ background-image: none;
47
+ }
48
+
49
+ [data-style='zen-sumi'] [data-input-root] [data-select-trigger]:hover:not(:disabled) {
50
+ @apply bg-transparent;
51
+ background-image: none;
52
+ }
53
+
54
+ [data-style='zen-sumi'] [data-input-root] [data-select][data-open='true'] [data-select-trigger] {
55
+ @apply border-none bg-transparent shadow-none ring-0;
56
+ }
57
+
58
+ /* Labels: smaller, spaced */
59
+ [data-style='zen-sumi'] [data-field] > label {
60
+ @apply text-ink-z4 text-xs tracking-wide;
61
+ transition: color 150ms ease;
62
+ }
63
+
64
+ [data-style='zen-sumi'] [data-form-root] label {
65
+ @apply text-ink-z4 text-xs tracking-wide;
66
+ }
67
+
68
+ /* Focused label: primary accent */
69
+ [data-style='zen-sumi'] [data-field]:has([data-input-root]:focus-within) > label {
70
+ @apply text-primary-z5;
71
+ }
72
+
73
+ /* Field root */
74
+ [data-style='zen-sumi'] [data-field-root] {
75
+ @apply gap-1;
76
+ }
77
+
78
+ /* Info field value */
79
+ [data-style='zen-sumi'] [data-field-info] {
80
+ @apply text-primary-z5;
81
+ }
82
+
83
+ /* Separator */
84
+ [data-style='zen-sumi'] [data-form-separator] {
85
+ @apply border-surface-z2;
86
+ }
87
+
88
+ /* Disabled state */
89
+ [data-style='zen-sumi'] [data-field-disabled] [data-input-root] {
90
+ @apply border-surface-z2 cursor-not-allowed opacity-40;
91
+ }
92
+
93
+ /* Error state — border becomes shu (primary/danger) */
94
+ [data-style='zen-sumi'] [data-field-state='fail'] [data-input-root] {
95
+ @apply border-danger-z4;
96
+ }
97
+
98
+ [data-style='zen-sumi'] [data-field-state='fail'] [data-input-root]:hover:not(:focus-within) {
99
+ @apply border-danger-z5;
100
+ }
101
+
102
+ [data-style='zen-sumi'] [data-field-state='fail'] [data-input-root]:focus-within {
103
+ @apply border-danger-z5;
104
+ }
105
+
106
+ /* Pass state */
107
+ [data-style='zen-sumi'] [data-field-state='pass'] [data-input-root] {
108
+ @apply border-success-z4;
109
+ }
110
+
111
+ [data-style='zen-sumi'] [data-field-state='pass'] [data-input-root]:focus-within {
112
+ @apply border-success-z5;
113
+ }
114
+
115
+ /* Description */
116
+ [data-style='zen-sumi'] [data-description] {
117
+ @apply text-ink-z5 mt-0.5 text-xs;
118
+ }
119
+
120
+ /* Message */
121
+ [data-style='zen-sumi'] [data-message] {
122
+ @apply text-danger-z5 mt-0.5 text-xs;
123
+ }
124
+
125
+ /* Checkbox */
126
+ [data-style='zen-sumi'] [data-checkbox-icon] {
127
+ @apply text-ink-z5 text-lg;
128
+ }
129
+
130
+ [data-style='zen-sumi']
131
+ [data-checkbox-root][data-variant='custom']:has(input:checked)
132
+ [data-checkbox-icon] {
133
+ @apply text-primary-z5;
134
+ }
135
+
136
+ /* Checkbox label: primary on focus */
137
+ [data-style='zen-sumi'] [data-field-type='checkbox'] [data-field]:has(:focus-within) > label {
138
+ @apply text-primary-z5;
139
+ }
140
+
141
+ /* Placeholders */
142
+ [data-style='zen-sumi'] [data-input-root] input::placeholder,
143
+ [data-style='zen-sumi'] [data-input-root] textarea::placeholder {
144
+ @apply text-surface-z4;
145
+ }
@@ -0,0 +1,128 @@
1
+ /**
2
+ * List - Zen-Sumi Theme Styles
3
+ *
4
+ * Transparent default. Paper-2 on hover. Ink bg + paper text on active.
5
+ * Primary (shu) accent on active icon.
6
+ * No shadows. Clean state transitions through background tone only.
7
+ */
8
+
9
+ /* =============================================================================
10
+ List Container
11
+ ============================================================================= */
12
+
13
+ [data-style='zen-sumi'] [data-list]:focus-within {
14
+ @apply outline-none;
15
+ }
16
+
17
+ /* =============================================================================
18
+ List Items
19
+ ============================================================================= */
20
+
21
+ [data-style='zen-sumi'] [data-list] [data-list-item] {
22
+ @apply text-ink-z3 border-0 border-solid border-transparent bg-transparent;
23
+ }
24
+
25
+ [data-style='zen-sumi'] [data-list] a[data-list-item],
26
+ [data-style='zen-sumi'] [data-list] button[data-list-item] {
27
+ @apply text-ink-z4;
28
+ }
29
+
30
+ /* Hover and focus — subtle paper wash */
31
+ [data-style='zen-sumi']
32
+ [data-list]
33
+ [data-list-item]:hover:not(:disabled):not([data-disabled='true']),
34
+ [data-style='zen-sumi']
35
+ [data-list]
36
+ [data-list-item]:focus:not(:disabled):not([data-disabled='true']) {
37
+ @apply bg-surface-z2 text-ink-z2 bg-none outline-none;
38
+ }
39
+
40
+ /* Active state — ink wash background */
41
+ [data-style='zen-sumi'] [data-list] [data-list-item][data-active='true'] {
42
+ @apply bg-surface-z1 text-ink-z1 bg-none;
43
+ }
44
+
45
+ /* Active state — richer ink when list has focus */
46
+ [data-style='zen-sumi'] [data-list]:focus-within [data-list-item][data-active='true'] {
47
+ @apply bg-surface-z2 text-ink-z1 bg-none;
48
+ }
49
+
50
+ /* Active + hover/focus */
51
+ [data-style='zen-sumi'] [data-list] [data-list-item][data-active='true']:hover:not(:disabled),
52
+ [data-style='zen-sumi'] [data-list] [data-list-item][data-active='true']:focus:not(:disabled) {
53
+ @apply bg-surface-z3 bg-none;
54
+ }
55
+
56
+ /* =============================================================================
57
+ Item Elements
58
+ ============================================================================= */
59
+
60
+ [data-style='zen-sumi'] [data-list] [data-list-item] [data-item-icon] {
61
+ @apply text-ink-z5;
62
+ }
63
+
64
+ [data-style='zen-sumi'] [data-list] [data-list-item]:hover:not(:disabled) [data-item-icon],
65
+ [data-style='zen-sumi'] [data-list] [data-list-item]:focus:not(:disabled) [data-item-icon] {
66
+ @apply text-ink-z4;
67
+ }
68
+
69
+ [data-style='zen-sumi'] [data-list] [data-list-item][data-active='true'] [data-item-icon] {
70
+ @apply text-primary-z5;
71
+ }
72
+
73
+ [data-style='zen-sumi'] [data-list] [data-list-item] [data-item-description] {
74
+ @apply text-ink-z5;
75
+ }
76
+
77
+ [data-style='zen-sumi'] [data-list] [data-list-item][data-active='true'] [data-item-description] {
78
+ @apply text-ink-z4;
79
+ }
80
+
81
+ [data-style='zen-sumi'] [data-list] [data-list-item] [data-item-badge] {
82
+ @apply text-ink-z4 border-surface-z3 border bg-transparent bg-none;
83
+ }
84
+
85
+ [data-style='zen-sumi'] [data-list] [data-list-item][data-active='true'] [data-item-badge] {
86
+ @apply text-ink-z2 border-surface-z4 bg-none;
87
+ }
88
+
89
+ /* =============================================================================
90
+ Groups
91
+ ============================================================================= */
92
+
93
+ [data-style='zen-sumi'] [data-list] [data-list-group] {
94
+ @apply text-ink-z5;
95
+ }
96
+
97
+ [data-style='zen-sumi'] [data-list] [data-list-group]:hover:not(:disabled),
98
+ [data-style='zen-sumi'] [data-list] [data-list-group]:focus:not(:disabled) {
99
+ @apply text-ink-z3 bg-none;
100
+ }
101
+
102
+ /* =============================================================================
103
+ Separator
104
+ ============================================================================= */
105
+
106
+ [data-style='zen-sumi'] [data-list] [data-list-separator] {
107
+ @apply bg-surface-z2 bg-none;
108
+ }
109
+
110
+ /* =============================================================================
111
+ Multi-Selection
112
+ ============================================================================= */
113
+
114
+ [data-style='zen-sumi'] [data-list] [data-list-item][data-selected='true'] {
115
+ @apply text-primary-z6 border-primary-z4 border-l-2;
116
+ }
117
+
118
+ [data-style='zen-sumi'] [data-list]:focus-within [data-list-item][data-selected='true'] {
119
+ @apply text-primary-z7 border-primary-z5 border-l-2;
120
+ }
121
+
122
+ [data-style='zen-sumi'] [data-list] [data-list-item][data-selected='true']:hover:not(:disabled) {
123
+ @apply text-primary-z8;
124
+ }
125
+
126
+ [data-style='zen-sumi'] [data-list] [data-list-item][data-selected='true'] [data-item-icon] {
127
+ @apply text-primary-z5;
128
+ }
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Menu - Zen-Sumi Theme Styles
3
+ *
4
+ * Hairline trigger. Dropdown: paper bg, hairline border, no shadow.
5
+ * Items: transparent default, surface-z2 hover.
6
+ */
7
+
8
+ /* =============================================================================
9
+ Menu Trigger
10
+ ============================================================================= */
11
+
12
+ [data-style='zen-sumi'] [data-menu-trigger] {
13
+ @apply border-surface-z3 text-ink-z3 border bg-transparent bg-none;
14
+ }
15
+
16
+ [data-style='zen-sumi'] [data-menu-trigger]:hover:not(:disabled) {
17
+ @apply text-ink-z1 border-surface-z4 bg-none;
18
+ }
19
+
20
+ [data-style='zen-sumi'] [data-menu-trigger]:focus-visible {
21
+ @apply outline-none;
22
+ box-shadow: 0 0 0 1px var(--color-surface-z5);
23
+ }
24
+
25
+ [data-style='zen-sumi'] [data-menu][data-open='true'] [data-menu-trigger] {
26
+ @apply border-surface-z5 bg-none;
27
+ }
28
+
29
+ /* Trigger elements */
30
+ [data-style='zen-sumi'] [data-menu-trigger] [data-menu-icon] {
31
+ @apply text-ink-z5;
32
+ }
33
+
34
+ [data-style='zen-sumi'] [data-menu-trigger]:hover:not(:disabled) [data-menu-icon] {
35
+ @apply text-ink-z3;
36
+ }
37
+
38
+ [data-style='zen-sumi'] [data-menu-trigger] [data-menu-arrow] {
39
+ @apply text-surface-z4;
40
+ }
41
+
42
+ /* =============================================================================
43
+ Menu Dropdown — paper bg, hairline border, no shadow
44
+ ============================================================================= */
45
+
46
+ [data-style='zen-sumi'] [data-menu-dropdown] {
47
+ @apply bg-surface-z0 border-surface-z2 border bg-none;
48
+ box-shadow: none;
49
+ }
50
+
51
+ /* =============================================================================
52
+ Menu Items
53
+ ============================================================================= */
54
+
55
+ [data-style='zen-sumi'] [data-menu-item] {
56
+ @apply text-ink-z3 border-0 border-solid border-transparent;
57
+ }
58
+
59
+ [data-style='zen-sumi'] [data-menu-item]:hover:not(:disabled),
60
+ [data-style='zen-sumi'] [data-menu-item]:focus:not(:disabled) {
61
+ @apply bg-surface-z2 text-ink-z1 bg-none outline-none;
62
+ }
63
+
64
+ /* Item elements */
65
+ [data-style='zen-sumi'] [data-menu-item] [data-item-icon] {
66
+ @apply text-ink-z5;
67
+ }
68
+
69
+ [data-style='zen-sumi'] [data-menu-item]:hover:not(:disabled) [data-item-icon] {
70
+ @apply text-ink-z4;
71
+ }
72
+
73
+ [data-style='zen-sumi'] [data-menu-item] [data-item-description] {
74
+ @apply text-ink-z5;
75
+ }
76
+
77
+ /* =============================================================================
78
+ Groups
79
+ ============================================================================= */
80
+
81
+ [data-style='zen-sumi'] [data-menu-group] {
82
+ @apply text-surface-z4;
83
+ }
84
+
85
+ /* =============================================================================
86
+ Divider
87
+ ============================================================================= */
88
+
89
+ [data-style='zen-sumi'] [data-menu-separator] {
90
+ @apply bg-surface-z2 bg-none;
91
+ }
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Message - Zen-Sumi Theme Styles
3
+ *
4
+ * Restrained message banners. No shadows. Light tint bg with hairline border.
5
+ */
6
+
7
+ [data-style='zen-sumi'] [data-message-root][data-type='error'] {
8
+ @apply bg-error-z1 border-error-z2 text-error-z8;
9
+ }
10
+ [data-style='zen-sumi'] [data-message-root][data-type='error'] [data-message-icon],
11
+ [data-style='zen-sumi'] [data-message-root][data-type='error'] [data-message-dismiss] {
12
+ @apply text-error-z5;
13
+ }
14
+
15
+ [data-style='zen-sumi'] [data-message-root][data-type='warning'] {
16
+ @apply bg-warning-z1 border-warning-z2 text-warning-z8;
17
+ }
18
+ [data-style='zen-sumi'] [data-message-root][data-type='warning'] [data-message-icon],
19
+ [data-style='zen-sumi'] [data-message-root][data-type='warning'] [data-message-dismiss] {
20
+ @apply text-warning-z5;
21
+ }
22
+
23
+ [data-style='zen-sumi'] [data-message-root][data-type='info'] {
24
+ @apply bg-info-z1 border-info-z2 text-info-z8;
25
+ }
26
+ [data-style='zen-sumi'] [data-message-root][data-type='info'] [data-message-icon],
27
+ [data-style='zen-sumi'] [data-message-root][data-type='info'] [data-message-dismiss] {
28
+ @apply text-info-z5;
29
+ }
30
+
31
+ [data-style='zen-sumi'] [data-message-root][data-type='success'] {
32
+ @apply bg-success-z1 border-success-z2 text-success-z8;
33
+ }
34
+ [data-style='zen-sumi'] [data-message-root][data-type='success'] [data-message-icon],
35
+ [data-style='zen-sumi'] [data-message-root][data-type='success'] [data-message-dismiss] {
36
+ @apply text-success-z5;
37
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Range - Zen-Sumi Theme Styles
3
+ *
4
+ * Surface-z3 track. Primary (shu) fill for selected range.
5
+ * Paper-z0 thumb with primary border.
6
+ */
7
+
8
+ /* =============================================================================
9
+ Track
10
+ ============================================================================= */
11
+
12
+ [data-style='zen-sumi'] [data-range-bar] {
13
+ @apply bg-surface-z2;
14
+ }
15
+
16
+ [data-style='zen-sumi'] [data-range-selected] {
17
+ @apply bg-primary bg-none;
18
+ }
19
+
20
+ /* =============================================================================
21
+ Thumb
22
+ ============================================================================= */
23
+
24
+ [data-style='zen-sumi'] [data-range-thumb] {
25
+ @apply bg-surface-z0 border-primary border-2;
26
+ }
27
+
28
+ [data-style='zen-sumi'] [data-range-thumb][data-sliding] {
29
+ @apply bg-primary;
30
+ }
31
+
32
+ [data-style='zen-sumi'] [data-range-thumb]:focus-visible {
33
+ @apply bg-primary;
34
+ }
35
+
36
+ /* =============================================================================
37
+ Ticks
38
+ ============================================================================= */
39
+
40
+ [data-style='zen-sumi'] [data-range-tick] {
41
+ @apply text-ink-z5;
42
+ }
43
+
44
+ [data-style='zen-sumi'] [data-tick-bar] {
45
+ @apply border-surface-z3;
46
+ }
47
+
48
+ [data-style='zen-sumi'] [data-tick-label] {
49
+ @apply text-ink-z5;
50
+ }
51
+
52
+ /* =============================================================================
53
+ Disabled
54
+ ============================================================================= */
55
+
56
+ [data-style='zen-sumi'] [data-range][data-disabled] [data-range-thumb] {
57
+ @apply bg-surface-z2 border-surface-z3;
58
+ }
59
+
60
+ [data-style='zen-sumi'] [data-range][data-disabled] [data-range-selected] {
61
+ @apply bg-surface-z3;
62
+ }
@@ -0,0 +1,49 @@
1
+ /**
2
+ * SearchFilter - Zen-Sumi Theme Styles
3
+ *
4
+ * Hairline bordered input. Focus: border darkens. No ring glow.
5
+ */
6
+
7
+ /* =============================================================================
8
+ Input
9
+ ============================================================================= */
10
+
11
+ [data-style='zen-sumi'] [data-search-input] {
12
+ @apply text-ink-z2 border-surface-z3 border bg-transparent;
13
+ }
14
+
15
+ [data-style='zen-sumi'] [data-search-input]:focus {
16
+ @apply border-surface-z5 outline-none;
17
+ }
18
+
19
+ [data-style='zen-sumi'] [data-search-input]::placeholder {
20
+ @apply text-surface-z4;
21
+ }
22
+
23
+ /* =============================================================================
24
+ Clear Button
25
+ ============================================================================= */
26
+
27
+ [data-style='zen-sumi'] [data-search-clear] {
28
+ @apply text-surface-z4;
29
+ }
30
+
31
+ [data-style='zen-sumi'] [data-search-clear]:hover {
32
+ @apply text-ink-z3;
33
+ }
34
+
35
+ /* =============================================================================
36
+ Tags
37
+ ============================================================================= */
38
+
39
+ [data-style='zen-sumi'] [data-search-tag] {
40
+ @apply text-ink-z3 border-surface-z3 border bg-transparent bg-none;
41
+ }
42
+
43
+ [data-style='zen-sumi'] [data-search-tag-remove] {
44
+ @apply text-ink-z5;
45
+ }
46
+
47
+ [data-style='zen-sumi'] [data-search-tag-remove]:hover {
48
+ @apply text-ink-z2;
49
+ }
@@ -0,0 +1,160 @@
1
+ /**
2
+ * Select - Zen-Sumi Theme Styles
3
+ *
4
+ * Hairline border trigger. Dropdown: paper-z1 bg, no shadow.
5
+ * Options: transparent default, surface-z2 hover, primary accent on selected.
6
+ * Focus: border darkens — no ring glow.
7
+ */
8
+
9
+ /* =============================================================================
10
+ Trigger Button
11
+ ============================================================================= */
12
+
13
+ [data-style='zen-sumi'] [data-select-trigger] {
14
+ @apply text-ink-z3 border-surface-z3 border bg-transparent bg-none;
15
+ }
16
+
17
+ [data-style='zen-sumi'] [data-select-trigger]:hover:not(:disabled) {
18
+ @apply border-surface-z4 text-ink-z2 bg-none;
19
+ }
20
+
21
+ [data-style='zen-sumi'] [data-select-trigger]:focus-visible {
22
+ @apply outline-none;
23
+ box-shadow: 0 0 0 1px var(--color-surface-z5);
24
+ }
25
+
26
+ [data-style='zen-sumi'] [data-select][data-open='true'] [data-select-trigger] {
27
+ @apply border-surface-z5 bg-none;
28
+ }
29
+
30
+ /* =============================================================================
31
+ Placeholder
32
+ ============================================================================= */
33
+
34
+ [data-style='zen-sumi'] [data-select-placeholder] {
35
+ @apply text-surface-z4;
36
+ }
37
+
38
+ /* =============================================================================
39
+ Arrow
40
+ ============================================================================= */
41
+
42
+ [data-style='zen-sumi'] [data-select-arrow] {
43
+ @apply text-surface-z4;
44
+ }
45
+
46
+ [data-style='zen-sumi'] [data-select-trigger]:hover:not(:disabled) [data-select-arrow] {
47
+ @apply text-ink-z5;
48
+ }
49
+
50
+ /* =============================================================================
51
+ Tags (MultiSelect)
52
+ ============================================================================= */
53
+
54
+ [data-style='zen-sumi'] [data-select-tag] {
55
+ @apply text-ink-z3 border-surface-z3 border bg-transparent bg-none;
56
+ }
57
+
58
+ [data-style='zen-sumi'] [data-select-tag-remove] {
59
+ @apply text-ink-z5;
60
+ }
61
+
62
+ [data-style='zen-sumi'] [data-select-tag-remove]:hover {
63
+ @apply text-ink-z2;
64
+ }
65
+
66
+ /* =============================================================================
67
+ Dropdown Panel — paper bg, hairline border, no shadow
68
+ ============================================================================= */
69
+
70
+ [data-style='zen-sumi'] [data-select-dropdown] {
71
+ @apply bg-surface-z0 border-surface-z2 border bg-none;
72
+ box-shadow: none;
73
+ }
74
+
75
+ /* =============================================================================
76
+ Options
77
+ ============================================================================= */
78
+
79
+ [data-style='zen-sumi'] [data-select-option] {
80
+ @apply text-ink-z3 border-0 border-solid border-transparent;
81
+ }
82
+
83
+ [data-style='zen-sumi'] [data-select-option]:hover:not(:disabled),
84
+ [data-style='zen-sumi'] [data-select-option]:focus:not(:disabled) {
85
+ @apply bg-surface-z2 text-ink-z2 bg-none outline-none;
86
+ }
87
+
88
+ /* Selected state */
89
+ [data-style='zen-sumi'] [data-select-option][data-selected='true'] {
90
+ @apply text-ink-z1 border-primary-z4 border-l-2 bg-none;
91
+ }
92
+
93
+ [data-style='zen-sumi']
94
+ [data-select-dropdown]:focus-within
95
+ [data-select-option][data-selected='true'] {
96
+ @apply text-primary-z6 border-primary-z5 border-l-2 bg-none;
97
+ }
98
+
99
+ /* Check mark */
100
+ [data-style='zen-sumi'] [data-select-check] {
101
+ @apply text-primary-z5;
102
+ }
103
+
104
+ /* Checkbox */
105
+ [data-style='zen-sumi'] [data-select-checkbox] {
106
+ @apply border-surface-z4 bg-transparent bg-none;
107
+ }
108
+
109
+ [data-style='zen-sumi'] [data-select-checkbox][data-checked='true'] {
110
+ @apply bg-primary-z5 border-primary-z5 bg-none text-on-primary;
111
+ }
112
+
113
+ /* Item elements */
114
+ [data-style='zen-sumi'] [data-select-option] [data-item-description] {
115
+ @apply text-ink-z5;
116
+ }
117
+
118
+ [data-style='zen-sumi'] [data-select-option][data-selected='true'] [data-item-description] {
119
+ @apply text-primary-z5;
120
+ }
121
+
122
+ /* =============================================================================
123
+ Groups
124
+ ============================================================================= */
125
+
126
+ [data-style='zen-sumi'] [data-select-group-label] {
127
+ @apply text-surface-z4;
128
+ }
129
+
130
+ /* =============================================================================
131
+ Divider
132
+ ============================================================================= */
133
+
134
+ [data-style='zen-sumi'] [data-select-divider] {
135
+ @apply bg-surface-z2 bg-none;
136
+ }
137
+
138
+ /* =============================================================================
139
+ Filter Input
140
+ ============================================================================= */
141
+
142
+ [data-style='zen-sumi'] [data-select-filter] {
143
+ @apply bg-surface-z0;
144
+ }
145
+
146
+ [data-style='zen-sumi'] [data-select-filter-input] {
147
+ @apply text-ink-z2 border-surface-z3 border bg-transparent;
148
+ }
149
+
150
+ [data-style='zen-sumi'] [data-select-filter-input]:focus {
151
+ @apply border-surface-z5;
152
+ }
153
+
154
+ [data-style='zen-sumi'] [data-select-filter-input]::placeholder {
155
+ @apply text-surface-z4;
156
+ }
157
+
158
+ [data-style='zen-sumi'] [data-select-empty] {
159
+ @apply text-ink-z5;
160
+ }