@rokkit/themes 1.1.14 → 1.1.16

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.
@@ -0,0 +1,2789 @@
1
+ /**
2
+ * @rokkit/themes - Rokkit Theme
3
+ *
4
+ * Rich gradients, glowing borders, and vibrant accents.
5
+ * Default theme — no wrapper needed.
6
+ */
7
+
8
+ /**
9
+ * Button - Rokkit Theme Styles
10
+ *
11
+ * Rich gradients and glowing borders.
12
+ */
13
+
14
+ /* =============================================================================
15
+ Default Style (filled)
16
+ ============================================================================= */
17
+
18
+ /*
19
+ * Branded fills use an explicit `linear-gradient(var(--primary),
20
+ * var(--accent))` rather than `@apply from-X to-Y bg-gradient-to-r` —
21
+ * preset-wind3's gradient utilities silently drop during @apply in
22
+ * `tokens: 'core'` mode, so the @apply path produces empty stops and an
23
+ * invisible button. Writing the gradient directly bypasses that bug.
24
+ *
25
+ * Skin can map accent === primary (the default for libraries that don't
26
+ * declare accent); the gradient then flattens to one tone, which is the
27
+ * expected fallback. The demo skin declares accent: 'hisui' so this
28
+ * surface gradients across saffron → jade.
29
+ */
30
+
31
+ /* Default variant */
32
+ [data-style='rokkit'] [data-button][data-style='default'][data-variant='default'],
33
+ [data-style='rokkit'] [data-button]:not([data-style])[data-variant='default'],
34
+ [data-style='rokkit'] [data-button][data-style='default']:not([data-variant]),
35
+ [data-style='rokkit'] [data-button]:not([data-style]):not([data-variant]) {
36
+ border-width:1px;border-color:var(--paper-edge);color:var(--ink-mute);
37
+ background: var(--paper-mute);
38
+ }
39
+
40
+ /* Primary variant */
41
+ [data-style='rokkit'] [data-button][data-style='default'][data-variant='primary'],
42
+ [data-style='rokkit'] [data-button]:not([data-style])[data-variant='primary'] {
43
+ border-width:1px;border-color:var(--primary);color:var(--on-primary);
44
+ background: linear-gradient(to right, var(--primary), var(--accent));
45
+ }
46
+
47
+ /* Secondary variant */
48
+ [data-style='rokkit'] [data-button][data-style='default'][data-variant='secondary'],
49
+ [data-style='rokkit'] [data-button]:not([data-style])[data-variant='secondary'] {
50
+ border-width:1px;border-color:var(--accent);color:var(--on-primary);
51
+ background: linear-gradient(to bottom, var(--accent), var(--accent));
52
+ }
53
+
54
+ /* Accent variant */
55
+ [data-style='rokkit'] [data-button][data-style='default'][data-variant='accent'],
56
+ [data-style='rokkit'] [data-button]:not([data-style])[data-variant='accent'] {
57
+ border-width:1px;--un-text-opacity:1;color:color-mix(in srgb, var(--color-accent-50) calc(var(--un-text-opacity) * 100%), transparent);border-color:var(--accent);
58
+ background: linear-gradient(to bottom, var(--accent), var(--accent));
59
+ }[data-mode="dark"][data-style="rokkit"] [data-button][data-style="default"][data-variant="accent"],[data-mode="dark"] [data-style="rokkit"] [data-button][data-style="default"][data-variant="accent"],[data-mode="dark"][data-style="rokkit"] [data-button]:not([data-style])[data-variant="accent"],[data-mode="dark"] [data-style="rokkit"] [data-button]:not([data-style])[data-variant="accent"]{--un-text-opacity:1;color:color-mix(in srgb, var(--color-accent-50) calc(var(--un-text-opacity) * 100%), transparent);}
60
+
61
+ /* Danger variant */
62
+ [data-style='rokkit'] [data-button][data-style='default'][data-variant='danger'],
63
+ [data-style='rokkit'] [data-button]:not([data-style])[data-variant='danger'] {
64
+ border-width:1px;--un-text-opacity:1;color:color-mix(in srgb, var(--color-danger-50) calc(var(--un-text-opacity) * 100%), transparent);border-color:var(--danger);
65
+ background: linear-gradient(to bottom, var(--danger), var(--danger));
66
+ }[data-mode="dark"][data-style="rokkit"] [data-button][data-style="default"][data-variant="danger"],[data-mode="dark"] [data-style="rokkit"] [data-button][data-style="default"][data-variant="danger"],[data-mode="dark"][data-style="rokkit"] [data-button]:not([data-style])[data-variant="danger"],[data-mode="dark"] [data-style="rokkit"] [data-button]:not([data-style])[data-variant="danger"]{--un-text-opacity:1;color:color-mix(in srgb, var(--color-danger-50) calc(var(--un-text-opacity) * 100%), transparent);}
67
+
68
+ /* =============================================================================
69
+ Outline Style
70
+ ============================================================================= */
71
+
72
+ [data-style='rokkit'] [data-button][data-style='outline'][data-variant='default'],
73
+ [data-style='rokkit'] [data-button][data-style='outline']:not([data-variant]) {
74
+ border-width:1px;background-color:transparent;border-color:var(--paper-edge);color:var(--ink-mute);
75
+ }
76
+
77
+ [data-style='rokkit'] [data-button][data-style='outline'][data-variant='primary'] {
78
+ border-width:1px;background-color:transparent;border-color:var(--primary);color:var(--primary);
79
+ }
80
+
81
+ [data-style='rokkit'] [data-button][data-style='outline'][data-variant='secondary'] {
82
+ border-width:1px;background-color:transparent;border-color:var(--accent);color:var(--accent);
83
+ }
84
+
85
+ [data-style='rokkit'] [data-button][data-style='outline'][data-variant='accent'] {
86
+ border-width:1px;background-color:transparent;border-color:var(--accent);color:var(--accent);
87
+ }
88
+
89
+ [data-style='rokkit'] [data-button][data-style='outline'][data-variant='danger'] {
90
+ border-width:1px;background-color:transparent;border-color:var(--danger);color:var(--danger);
91
+ }
92
+
93
+ /* =============================================================================
94
+ Ghost Style
95
+ ============================================================================= */
96
+
97
+ [data-style='rokkit'] [data-button][data-style='ghost'] {
98
+ border-color:transparent;background-color:transparent;
99
+ }
100
+
101
+ [data-style='rokkit'] [data-button][data-style='ghost'][data-variant='default'],
102
+ [data-style='rokkit'] [data-button][data-style='ghost']:not([data-variant]) {
103
+ color:var(--ink-mute);
104
+ }
105
+
106
+ [data-style='rokkit'] [data-button][data-style='ghost'][data-variant='primary'] {
107
+ color:var(--primary);
108
+ }
109
+
110
+ [data-style='rokkit'] [data-button][data-style='ghost'][data-variant='secondary'] {
111
+ color:var(--accent);
112
+ }
113
+
114
+ [data-style='rokkit'] [data-button][data-style='ghost'][data-variant='accent'] {
115
+ color:var(--accent);
116
+ }
117
+
118
+ [data-style='rokkit'] [data-button][data-style='ghost'][data-variant='danger'] {
119
+ color:var(--danger);
120
+ }
121
+
122
+ /* =============================================================================
123
+ Gradient Style
124
+ ============================================================================= */
125
+
126
+ [data-style='rokkit'] [data-button][data-style='gradient'][data-variant='default'],
127
+ [data-style='rokkit'] [data-button][data-style='gradient']:not([data-variant]) {
128
+ --un-gradient-shape:to bottom right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink);
129
+ }
130
+
131
+ [data-style='rokkit'] [data-button][data-style='gradient'][data-variant='primary'] {
132
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--on-primary);
133
+ }
134
+
135
+ [data-style='rokkit'] [data-button][data-style='gradient'][data-variant='secondary'] {
136
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--on-primary);
137
+ }
138
+
139
+ [data-style='rokkit'] [data-button][data-style='gradient'][data-variant='accent'] {
140
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-text-opacity:1;color:color-mix(in srgb, var(--color-accent-50) calc(var(--un-text-opacity) * 100%), transparent);
141
+ }[data-mode="dark"][data-style="rokkit"] [data-button][data-style="gradient"][data-variant="accent"],[data-mode="dark"] [data-style="rokkit"] [data-button][data-style="gradient"][data-variant="accent"]{--un-text-opacity:1;color:color-mix(in srgb, var(--color-accent-50) calc(var(--un-text-opacity) * 100%), transparent);}
142
+
143
+ [data-style='rokkit'] [data-button][data-style='gradient'][data-variant='danger'] {
144
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-danger) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-danger) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-text-opacity:1;color:color-mix(in srgb, var(--color-danger-50) calc(var(--un-text-opacity) * 100%), transparent);
145
+ }[data-mode="dark"][data-style="rokkit"] [data-button][data-style="gradient"][data-variant="danger"],[data-mode="dark"] [data-style="rokkit"] [data-button][data-style="gradient"][data-variant="danger"]{--un-text-opacity:1;color:color-mix(in srgb, var(--color-danger-50) calc(var(--un-text-opacity) * 100%), transparent);}
146
+
147
+ [data-style='rokkit']
148
+ [data-button][data-style='gradient']:hover:not(:disabled):not([data-disabled]) {
149
+ filter: brightness(1.1);
150
+ }
151
+
152
+ /* =============================================================================
153
+ Link Style
154
+ ============================================================================= */
155
+
156
+ [data-style='rokkit'] [data-button][data-style='link'][data-variant='default'],
157
+ [data-style='rokkit'] [data-button][data-style='link']:not([data-variant]) {
158
+ color:var(--ink-mute);
159
+ }
160
+
161
+ [data-style='rokkit'] [data-button][data-style='link'][data-variant='primary'] {
162
+ color:var(--primary);
163
+ }
164
+
165
+ [data-style='rokkit'] [data-button][data-style='link'][data-variant='secondary'] {
166
+ color:var(--accent);
167
+ }
168
+
169
+ [data-style='rokkit'] [data-button][data-style='link'][data-variant='accent'] {
170
+ color:var(--accent);
171
+ }
172
+
173
+ [data-style='rokkit'] [data-button][data-style='link'][data-variant='danger'] {
174
+ color:var(--danger);
175
+ }
176
+
177
+ [data-style='rokkit'] [data-button][data-style='link']:hover:not(:disabled):not([data-disabled]) {
178
+ color:var(--primary);
179
+ }
180
+
181
+ /* =============================================================================
182
+ Hover States
183
+ ============================================================================= */
184
+
185
+ /* Default style hover */
186
+ [data-style='rokkit'] [data-button][data-style='default']:hover:not(:disabled):not([data-disabled]),
187
+ [data-style='rokkit'] [data-button]:not([data-style]):hover:not(:disabled):not([data-disabled]) {
188
+ opacity:0.9;
189
+ }
190
+
191
+ /* Outline style hover */
192
+ [data-style='rokkit']
193
+ [data-button][data-style='outline']:hover:not(:disabled):not(
194
+ [data-disabled]
195
+ )[data-variant='default'],
196
+ [data-style='rokkit']
197
+ [data-button][data-style='outline']:hover:not(:disabled):not([data-disabled]):not(
198
+ [data-variant]
199
+ ) {
200
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
201
+ }
202
+
203
+ [data-style='rokkit']
204
+ [data-button][data-style='outline']:hover:not(:disabled):not(
205
+ [data-disabled]
206
+ )[data-variant='primary'] {
207
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
208
+ }
209
+
210
+ [data-style='rokkit']
211
+ [data-button][data-style='outline']:hover:not(:disabled):not(
212
+ [data-disabled]
213
+ )[data-variant='secondary'] {
214
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
215
+ }
216
+
217
+ [data-style='rokkit']
218
+ [data-button][data-style='outline']:hover:not(:disabled):not(
219
+ [data-disabled]
220
+ )[data-variant='accent'] {
221
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
222
+ }
223
+
224
+ [data-style='rokkit']
225
+ [data-button][data-style='outline']:hover:not(:disabled):not(
226
+ [data-disabled]
227
+ )[data-variant='danger'] {
228
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
229
+ }
230
+
231
+ /* Ghost style hover */
232
+ [data-style='rokkit']
233
+ [data-button][data-style='ghost']:hover:not(:disabled):not(
234
+ [data-disabled]
235
+ )[data-variant='default'],
236
+ [data-style='rokkit']
237
+ [data-button][data-style='ghost']:hover:not(:disabled):not([data-disabled]):not([data-variant]) {
238
+ background-color:var(--paper-mute);
239
+ }
240
+
241
+ [data-style='rokkit']
242
+ [data-button][data-style='ghost']:hover:not(:disabled):not(
243
+ [data-disabled]
244
+ )[data-variant='primary'] {
245
+ background-color:var(--primary);
246
+ }
247
+
248
+ [data-style='rokkit']
249
+ [data-button][data-style='ghost']:hover:not(:disabled):not(
250
+ [data-disabled]
251
+ )[data-variant='secondary'] {
252
+ background-color:var(--accent-soft);
253
+ }
254
+
255
+ [data-style='rokkit']
256
+ [data-button][data-style='ghost']:hover:not(:disabled):not(
257
+ [data-disabled]
258
+ )[data-variant='accent'] {
259
+ background-color:var(--accent-soft);
260
+ }
261
+
262
+ [data-style='rokkit']
263
+ [data-button][data-style='ghost']:hover:not(:disabled):not(
264
+ [data-disabled]
265
+ )[data-variant='danger'] {
266
+ background-color:var(--danger-soft);
267
+ }
268
+
269
+ /* =============================================================================
270
+ Active/Pressed State
271
+ ============================================================================= */
272
+
273
+ [data-style='rokkit'] [data-button]:active:not(:disabled):not([data-disabled]) {
274
+ --un-scale-x:0.95;--un-scale-y:0.95;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));
275
+ animation: button-pop 0.25s ease-out;
276
+ }
277
+
278
+ /* =============================================================================
279
+ Focus
280
+ ============================================================================= */
281
+
282
+ [data-style='rokkit'] [data-button]:focus-visible {
283
+ outline:2px solid transparent;outline-offset:2px;--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);
284
+ }
285
+
286
+ /* =============================================================================
287
+ Icon Colors
288
+ ============================================================================= */
289
+
290
+ [data-style='rokkit'] [data-button] [data-item-icon],
291
+ [data-style='rokkit'] [data-button] [data-button-icon-right] {
292
+ color: inherit;
293
+ opacity: 0.8;
294
+ }
295
+
296
+ [data-style='rokkit'] [data-button]:hover [data-item-icon],
297
+ [data-style='rokkit'] [data-button]:hover [data-button-icon-right] {
298
+ opacity: 1;
299
+ }
300
+
301
+ /* =============================================================================
302
+ Button Group
303
+ ============================================================================= */
304
+
305
+ [data-style='rokkit'] [data-button-group] {
306
+ gap:1px;
307
+ }
308
+
309
+ [data-style='rokkit'] [data-button-group] [data-button]:first-child {
310
+ border-top-left-radius:0.5rem;border-bottom-left-radius:0.5rem;border-top-right-radius:0;border-bottom-right-radius:0;
311
+ }
312
+
313
+ [data-style='rokkit'] [data-button-group] [data-button]:last-child {
314
+ border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:0.5rem;border-bottom-right-radius:0.5rem;
315
+ }
316
+
317
+ /**
318
+ * Toolbar - Rokkit Theme Styles
319
+ *
320
+ * Rich gradients and glowing borders.
321
+ */
322
+
323
+ /* =============================================================================
324
+ Toolbar Container
325
+ ============================================================================= */
326
+
327
+ [data-style='rokkit'] [data-toolbar] {
328
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
329
+ }
330
+
331
+ /* Position-based borders */
332
+ [data-style='rokkit'] [data-toolbar][data-toolbar-position='top'],
333
+ [data-style='rokkit'] [data-toolbar]:not([data-toolbar-position]) {
334
+ border-bottom-width:1px;--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgb(0 0 0 / 0.05));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--paper-edge);
335
+ }
336
+
337
+ [data-style='rokkit'] [data-toolbar][data-toolbar-position='bottom'] {
338
+ border-top-width:1px;--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgb(0 0 0 / 0.05));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--paper-edge);
339
+ }
340
+
341
+ [data-style='rokkit'] [data-toolbar][data-toolbar-position='left'] {
342
+ border-right-width:1px;--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgb(0 0 0 / 0.05));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--paper-edge);
343
+ }
344
+
345
+ [data-style='rokkit'] [data-toolbar][data-toolbar-position='right'] {
346
+ border-left-width:1px;--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgb(0 0 0 / 0.05));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--paper-edge);
347
+ }
348
+
349
+ /* Compact item spacing for small toolbars */
350
+ [data-style='rokkit'] [data-toolbar][data-toolbar-size='sm'],
351
+ [data-style='rokkit'] [data-toolbar][data-size='sm'] {
352
+ gap: 1px;
353
+ }
354
+
355
+ /* =============================================================================
356
+ Toolbar Items
357
+ ============================================================================= */
358
+
359
+ [data-style='rokkit'] [data-toolbar-item] {
360
+ color:var(--ink-mute);
361
+ }
362
+
363
+ [data-style='rokkit'] [data-toolbar-item]:hover:not(:disabled):not([data-disabled='true']) {
364
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink);
365
+ }
366
+
367
+ [data-style='rokkit'] [data-toolbar-item]:focus-visible:not(:disabled):not([data-disabled='true']) {
368
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));outline:2px solid transparent;outline-offset:2px;--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);color:var(--ink);--un-ring-color:var(--primary);
369
+ }
370
+
371
+ /* Active/pressed state */
372
+ [data-style='rokkit'] [data-toolbar-item][data-active='true'] {
373
+ border-width:1px;--un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);border-color:var(--primary);
374
+ }
375
+
376
+ [data-style='rokkit'] [data-toolbar-item][data-active='true']:hover:not(:disabled) {
377
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);
378
+ }
379
+
380
+ /* =============================================================================
381
+ Toolbar Icon
382
+ ============================================================================= */
383
+
384
+ [data-style='rokkit'] [data-toolbar-item] [data-toolbar-icon] {
385
+ color:var(--ink-soft);
386
+ }
387
+
388
+ [data-style='rokkit'] [data-toolbar-item]:hover:not(:disabled) [data-toolbar-icon] {
389
+ color:var(--ink);
390
+ }
391
+
392
+ [data-style='rokkit'] [data-toolbar-item][data-active='true'] [data-toolbar-icon] {
393
+ color:var(--primary);
394
+ }
395
+
396
+ /* =============================================================================
397
+ Separator & Divider
398
+ ============================================================================= */
399
+
400
+ [data-style='rokkit'] [data-toolbar-separator] {
401
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
402
+ }
403
+
404
+ [data-style='rokkit'] [data-toolbar-divider] {
405
+ --un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
406
+ }
407
+
408
+ /**
409
+ * Tabs - Rokkit Theme Styles
410
+ *
411
+ * Rich gradients and glowing borders.
412
+ */
413
+
414
+ /* =============================================================================
415
+ Tab List
416
+ ============================================================================= */
417
+
418
+ [data-style='rokkit'] [data-tabs-list] {
419
+ gap:0.25rem;border-bottom-width:2px;padding-left:0.25rem;padding-right:0.25rem;border-color:var(--paper-mute);
420
+ }
421
+
422
+ [data-style='rokkit'] [data-tabs][data-position='after'] [data-tabs-list] {
423
+ border-top-width:2px;border-bottom-width:0px;
424
+ }
425
+
426
+ [data-style='rokkit'] [data-tabs][data-orientation='vertical'] [data-tabs-list] {
427
+ border-right-width:2px;border-bottom-width:0px;padding-left:0;padding-right:0;padding-top:0.25rem;padding-bottom:0.25rem;
428
+ }
429
+
430
+ [data-style='rokkit']
431
+ [data-tabs][data-orientation='vertical'][data-position='after']
432
+ [data-tabs-list] {
433
+ border-top-width:0px;border-right-width:0px;border-left-width:2px;
434
+ }
435
+
436
+ [data-style='rokkit'] [data-tabs-list]:focus-within {
437
+ outline:2px solid transparent;outline-offset:2px;border-color:var(--accent);
438
+ }
439
+
440
+ /* =============================================================================
441
+ Tab Triggers
442
+ ============================================================================= */
443
+
444
+ [data-style='rokkit'] [data-tabs-trigger] {
445
+ flex-shrink:0;border-top-left-radius:0.25rem;border-top-right-radius:0.25rem;background-color:var(--paper-soft);color:var(--ink-mute);
446
+ }
447
+
448
+ [data-style='rokkit'] [data-tabs][data-position='after'] [data-tabs-trigger] {
449
+ border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0.25rem;border-bottom-right-radius:0.25rem;
450
+ }
451
+
452
+ [data-style='rokkit'] [data-tabs][data-orientation='vertical'] [data-tabs-trigger] {
453
+ border-radius:0;border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem;
454
+ }
455
+
456
+ [data-style='rokkit']
457
+ [data-tabs][data-orientation='vertical'][data-position='after']
458
+ [data-tabs-trigger] {
459
+ border-radius:0;border-top-right-radius:0.25rem;border-bottom-right-radius:0.25rem;
460
+ }
461
+
462
+ /* Hover only on UNSELECTED tabs — the selected tab keeps its branded
463
+ * gradient + on-primary text. Without `:not([data-selected])` the hover
464
+ * rule overrode the selected gradient's text color with `text-ink-mute`,
465
+ * making the label hard to read on the saffron fill. */
466
+ [data-style='rokkit']
467
+ [data-tabs-trigger]:hover:not([data-selected]):not(:disabled):not([data-disabled]) {
468
+ background-color:var(--paper-mute);color:var(--ink-mute);
469
+ }
470
+
471
+ /* Selected — branded sheen at rest. The gradient runs from `--primary`
472
+ * to `--accent` via direct CSS (not `@apply from-primary to-accent` —
473
+ * preset-wind3's gradient utilities silently drop in @apply when only
474
+ * named tokens are emitted). When the active skin maps accent ≡ primary,
475
+ * the gradient flattens to one tone, which is the expected fallback. */
476
+ [data-style='rokkit'] [data-tabs-trigger][data-selected] {
477
+ color:var(--on-primary);
478
+ background: linear-gradient(to bottom, var(--primary), var(--accent));
479
+ }
480
+
481
+ [data-style='rokkit']
482
+ [data-tabs][data-position='after']
483
+ [data-tabs-trigger][data-selected] {
484
+ background: linear-gradient(to top, var(--primary), var(--accent));
485
+ }
486
+
487
+ [data-style='rokkit']
488
+ [data-tabs][data-orientation='vertical']
489
+ [data-tabs-trigger][data-selected] {
490
+ background: linear-gradient(to right, var(--primary), var(--accent));
491
+ }
492
+
493
+ [data-style='rokkit']
494
+ [data-tabs][data-orientation='vertical'][data-position='after']
495
+ [data-tabs-trigger][data-selected] {
496
+ background: linear-gradient(to left, var(--primary), var(--accent));
497
+ }
498
+
499
+ /* =============================================================================
500
+ Tab Icon
501
+ ============================================================================= */
502
+
503
+ [data-style='rokkit'] [data-tabs-trigger] [data-tabs-icon] {
504
+ color:var(--ink-soft);
505
+ }
506
+
507
+ [data-style='rokkit'] [data-tabs-trigger]:hover:not(:disabled) [data-tabs-icon] {
508
+ color:var(--ink-mute);
509
+ }
510
+
511
+ [data-style='rokkit'] [data-tabs-trigger][data-selected] [data-tabs-icon] {
512
+ color:var(--on-primary);
513
+ }
514
+
515
+ /* =============================================================================
516
+ Tab Panel
517
+ ============================================================================= */
518
+
519
+ [data-style='rokkit'] [data-tabs-content] {
520
+ color:var(--ink-mute);
521
+ }
522
+
523
+ /**
524
+ * Toggle - Rokkit Theme Styles
525
+ *
526
+ * Rich gradients and glowing borders.
527
+ */
528
+
529
+ /* =============================================================================
530
+ Toggle Container
531
+ ============================================================================= */
532
+
533
+ /* `@apply from-X to-Y bg-gradient-to-r` silently drops in core token
534
+ * mode (preset-wind3 can't resolve `from-{role}` through @apply when
535
+ * only named tokens are emitted). The container and the selected
536
+ * option use explicit linear-gradient declarations that work in any
537
+ * token mode. */
538
+ [data-style='rokkit'] [data-toggle] {
539
+ border-width:1px;border-radius:0.5rem;border-color:var(--paper-edge);
540
+ background: linear-gradient(to right, var(--paper-mute), var(--paper-mute));
541
+ }
542
+
543
+ /* =============================================================================
544
+ Toggle Options
545
+ ============================================================================= */
546
+
547
+ [data-style='rokkit'] [data-toggle-option] {
548
+ color:var(--ink-soft);
549
+ }
550
+
551
+ /* Hover applies only to UNSELECTED options so the branded selected
552
+ * gradient isn't overridden when the cursor passes over it. */
553
+ [data-style='rokkit'] [data-toggle-option]:hover:not(:disabled):not([data-disabled='true']):not([data-selected='true']),
554
+ [data-style='rokkit'] [data-toggle-option]:focus:not(:disabled):not([data-disabled='true']):not([data-selected='true']) {
555
+ color:var(--ink-mute);
556
+ background: linear-gradient(to right, var(--paper-edge), var(--paper-mute));
557
+ }
558
+
559
+ /* Selected state — primary→accent branded sheen + on-primary label so
560
+ * the chip reads as filled in both modes regardless of token vocabulary. */
561
+ [data-style='rokkit'] [data-toggle-option][data-selected='true'] {
562
+ border-width:1px;--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgb(0 0 0 / 0.05));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--primary);color:var(--on-primary);
563
+ background: linear-gradient(to right, var(--primary), var(--accent));
564
+ }
565
+
566
+ /* =============================================================================
567
+ Toggle Icon
568
+ ============================================================================= */
569
+
570
+ [data-style='rokkit'] [data-toggle-option] [data-toggle-icon] {
571
+ color:var(--ink-soft);
572
+ }
573
+
574
+ [data-style='rokkit'] [data-toggle-option]:hover:not(:disabled) [data-toggle-icon],
575
+ [data-style='rokkit'] [data-toggle-option]:focus:not(:disabled) [data-toggle-icon] {
576
+ color:var(--ink-mute);
577
+ }
578
+
579
+ [data-style='rokkit'] [data-toggle-option][data-selected='true'] [data-toggle-icon] {
580
+ color:var(--on-primary);
581
+ }
582
+
583
+ /* =============================================================================
584
+ Button Variant — single cycling control (variant-agnostic color)
585
+ Higher specificity than the [data-toggle] container rule above, so it
586
+ neutralises the group-pill chrome and gives the single button the same
587
+ flipping icon treatment an unselected option gets.
588
+ ============================================================================= */
589
+
590
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button'] {
591
+ border-color:transparent;background-color:transparent;color:var(--ink-soft);
592
+ background-image: none;
593
+ }
594
+
595
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button']:hover:not(:disabled):not([data-toggle-disabled='true']),
596
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button']:focus-visible:not(:disabled):not([data-toggle-disabled='true']) {
597
+ background-color:var(--paper-mute);color:var(--ink-mute);
598
+ }
599
+
600
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button'] [data-toggle-icon] {
601
+ color:var(--ink-soft);
602
+ }
603
+
604
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button']:hover:not(:disabled) [data-toggle-icon],
605
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button']:focus-visible:not(:disabled) [data-toggle-icon] {
606
+ color:var(--ink-mute);
607
+ }
608
+
609
+ /**
610
+ * Switch - Rokkit Theme Styles
611
+ */
612
+
613
+ [data-style='rokkit'] [data-switch-track] {
614
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--paper-edge);
615
+ }
616
+
617
+ [data-style='rokkit'] [data-switch] [data-switch-thumb] {
618
+ --switch-thumb-travel: 1.125rem;
619
+ --un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgb(0 0 0 / 0.05));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);background-color:var(--ink-soft);
620
+ }
621
+
622
+ [data-style='rokkit'] [data-switch]:focus-visible [data-switch-track] {
623
+ --un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-offset-width:1px;--un-ring-color:var(--primary);
624
+ }
625
+
626
+ /* On state */
627
+ [data-style='rokkit'] [data-switch][aria-checked='true'] [data-switch-track] {
628
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--primary);
629
+ }
630
+
631
+ [data-style='rokkit'] [data-switch][aria-checked='true'] [data-switch-thumb] {
632
+ --un-shadow:var(--un-shadow-inset) 0 4px 6px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 2px 4px -2px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);background-color:var(--paper);
633
+ }
634
+
635
+ [data-style='rokkit'] [data-switch-label] {
636
+ color:var(--ink-mute);
637
+ }
638
+
639
+ /**
640
+ * List - Rokkit Theme Styles
641
+ *
642
+ * Rich gradients and glowing borders.
643
+ */
644
+
645
+ /* =============================================================================
646
+ List Container
647
+ ============================================================================= */
648
+
649
+ [data-style='rokkit'] [data-list]:focus-within {
650
+ border-radius:0.25rem;--un-ring-width:0px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);
651
+ }
652
+
653
+ /* =============================================================================
654
+ List Items
655
+ ============================================================================= */
656
+
657
+ [data-style='rokkit'] [data-list] [data-list-item] {
658
+ border-width:0px;border-color:transparent;border-radius:0;border-style:solid;color:var(--ink-mute);
659
+ }
660
+
661
+ [data-style='rokkit'] [data-list] a[data-list-item],
662
+ [data-style='rokkit'] [data-list] button[data-list-item] {
663
+ border-radius:0;color:var(--ink-mute);
664
+ }
665
+
666
+ /* Hover and focus (keyboard navigation) */
667
+ [data-style='rokkit'] [data-list] [data-list-item]:hover:not(:disabled):not([data-disabled='true']),
668
+ [data-style='rokkit']
669
+ [data-list]
670
+ [data-list-item]:focus:not(:disabled):not([data-disabled='true']) {
671
+ --un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));outline:2px solid transparent;outline-offset:2px;color:var(--ink);
672
+ }
673
+
674
+ /* Active state — muted gradient when list not focused */
675
+ [data-style='rokkit'] [data-list] [data-list-item][data-active='true'] {
676
+ --un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);
677
+ }
678
+
679
+ /* Active state — full gradient when list has focus */
680
+ [data-style='rokkit'] [data-list]:focus-within [data-list-item][data-active='true'] {
681
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--on-primary);
682
+ }
683
+
684
+ /* Active + hover — same as focus-within gradient */
685
+ [data-style='rokkit'] [data-list] [data-list-item][data-active='true']:hover:not(:disabled) {
686
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--on-primary);
687
+ }
688
+
689
+ /* =============================================================================
690
+ Item Elements
691
+ ============================================================================= */
692
+
693
+ [data-style='rokkit'] [data-list] [data-list-item] [data-item-icon] {
694
+ font-size: 1rem;
695
+ color:var(--ink-soft);
696
+ }
697
+
698
+ [data-style='rokkit'] [data-list] [data-list-item]:hover:not(:disabled) [data-item-icon],
699
+ [data-style='rokkit'] [data-list] [data-list-item]:focus:not(:disabled) [data-item-icon] {
700
+ color:var(--ink-mute);
701
+ }
702
+
703
+ [data-style='rokkit'] [data-list] [data-list-item][data-active='true'] [data-item-icon] {
704
+ color:var(--primary);
705
+ }
706
+
707
+ [data-style='rokkit']
708
+ [data-list]:focus-within
709
+ [data-list-item][data-active='true']
710
+ [data-item-icon],
711
+ [data-style='rokkit']
712
+ [data-list]
713
+ [data-list-item][data-active='true']:hover:not(:disabled)
714
+ [data-item-icon] {
715
+ color:var(--on-primary);
716
+ }
717
+
718
+ /* Literal / kanji icons */
719
+ [data-style='rokkit'] [data-list] [data-list-item] [data-item-icon-literal] {
720
+ color:var(--ink-soft);
721
+ }
722
+
723
+ [data-style='rokkit'] [data-list] [data-list-item]:hover:not(:disabled) [data-item-icon-literal],
724
+ [data-style='rokkit'] [data-list] [data-list-item]:focus:not(:disabled) [data-item-icon-literal] {
725
+ color:var(--ink-mute);
726
+ }
727
+
728
+ [data-style='rokkit'] [data-list] [data-list-item][data-active='true'] [data-item-icon-literal] {
729
+ color:var(--primary);
730
+ }
731
+
732
+ [data-style='rokkit']
733
+ [data-list]:focus-within
734
+ [data-list-item][data-active='true']
735
+ [data-item-icon-literal],
736
+ [data-style='rokkit']
737
+ [data-list]
738
+ [data-list-item][data-active='true']:hover:not(:disabled)
739
+ [data-item-icon-literal] {
740
+ color:var(--on-primary);
741
+ }
742
+
743
+ /* Item description */
744
+ [data-style='rokkit'] [data-list] [data-list-item] [data-item-description] {
745
+ color:var(--ink-soft);
746
+ }
747
+
748
+ [data-style='rokkit'] [data-list] [data-list-item][data-active='true'] [data-item-description] {
749
+ color:var(--primary);
750
+ }
751
+
752
+ [data-style='rokkit']
753
+ [data-list]:focus-within
754
+ [data-list-item][data-active='true']
755
+ [data-item-description],
756
+ [data-style='rokkit']
757
+ [data-list]
758
+ [data-list-item][data-active='true']:hover:not(:disabled)
759
+ [data-item-description] {
760
+ color:var(--on-primary);
761
+ }
762
+
763
+ /* Item badge */
764
+ [data-style='rokkit'] [data-list] [data-list-item] [data-item-badge] {
765
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink-soft);border-color:var(--paper-edge);
766
+ }
767
+
768
+ [data-style='rokkit'] [data-list] [data-list-item][data-active='true'] [data-item-badge] {
769
+ border-width:1px;--un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);border-color:var(--primary);
770
+ }
771
+
772
+ [data-style='rokkit']
773
+ [data-list]:focus-within
774
+ [data-list-item][data-active='true']
775
+ [data-item-badge] {
776
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);color:var(--on-primary);border-color:var(--primary);
777
+ }
778
+
779
+ /* =============================================================================
780
+ Indentation by nesting level
781
+ ============================================================================= */
782
+
783
+ [data-style='rokkit'] [data-list] [data-list-item][data-level='2'],
784
+ [data-style='rokkit'] [data-list] [data-list-group][data-level='2'] {
785
+ padding-left: 1.25rem;
786
+ }
787
+
788
+ [data-style='rokkit'] [data-list] [data-list-item][data-level='3'],
789
+ [data-style='rokkit'] [data-list] [data-list-group][data-level='3'] {
790
+ padding-left: 2rem;
791
+ }
792
+
793
+ /* =============================================================================
794
+ Groups
795
+ ============================================================================= */
796
+
797
+ [data-style='rokkit'] [data-list] [data-list-group] {
798
+ margin-top:0.5rem;color:var(--ink-soft);
799
+ }
800
+
801
+ [data-style='rokkit'] [data-list] [data-list-group]:first-child {
802
+ margin-top:0;
803
+ }
804
+
805
+ [data-style='rokkit'] [data-list] [data-list-group] [data-item-icon] {
806
+ font-size: 1rem;
807
+ }
808
+
809
+ [data-style='rokkit'] [data-list] [data-list-group]:hover:not(:disabled),
810
+ [data-style='rokkit'] [data-list] [data-list-group]:focus:not(:disabled) {
811
+ --un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink-mute);
812
+ }
813
+
814
+ /* =============================================================================
815
+ Separator
816
+ ============================================================================= */
817
+
818
+ [data-style='rokkit'] [data-list] [data-list-separator] {
819
+ --un-gradient-from-position:0%;--un-gradient-from:transparent var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
820
+ }
821
+
822
+ /* =============================================================================
823
+ Multi-Selection
824
+ ============================================================================= */
825
+
826
+ [data-style='rokkit'] [data-list] [data-list-item][data-selected='true'] {
827
+ background-color:var(--primary);color:var(--primary);
828
+ }
829
+
830
+ [data-style='rokkit'] [data-list]:focus-within [data-list-item][data-selected='true'] {
831
+ background-color:var(--primary);color:var(--primary);
832
+ }
833
+
834
+ [data-style='rokkit'] [data-list] [data-list-item][data-selected='true']:hover:not(:disabled) {
835
+ background-color:var(--primary);
836
+ }
837
+
838
+ [data-style='rokkit'] [data-list] [data-list-item][data-selected='true'] [data-item-icon] {
839
+ color:var(--primary);
840
+ }
841
+
842
+ /**
843
+ * Tree - Rokkit Theme Styles
844
+ *
845
+ * Rich gradients and glowing borders.
846
+ */
847
+
848
+ /* =============================================================================
849
+ Tree Container
850
+ ============================================================================= */
851
+
852
+ [data-style='rokkit'] [data-tree]:focus-within {
853
+ border-radius:0.25rem;--un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);
854
+ }
855
+
856
+ /* =============================================================================
857
+ Tree Toggle Button
858
+ ============================================================================= */
859
+
860
+ [data-style='rokkit'] [data-tree-toggle-btn] {
861
+ color:var(--ink-soft);
862
+ }
863
+
864
+ [data-style='rokkit'] [data-tree-toggle-btn]:hover {
865
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink-mute);
866
+ }
867
+
868
+ /* =============================================================================
869
+ Tree Item Content
870
+ ============================================================================= */
871
+
872
+ [data-style='rokkit'] [data-tree-item-content] {
873
+ color:var(--ink-mute);
874
+ }
875
+
876
+ [data-style='rokkit'] [data-tree-item-content]:hover:not(:disabled),
877
+ [data-style='rokkit'] [data-tree-item-content]:focus:not(:disabled) {
878
+ --un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));outline:2px solid transparent;outline-offset:2px;color:var(--ink);
879
+ }
880
+
881
+ /* Focus visible for keyboard navigation */
882
+ [data-style='rokkit'] [data-tree-item-content]:focus-visible {
883
+ outline:2px solid transparent;outline-offset:2px;--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);
884
+ }
885
+
886
+ /* Active/selected state - when focus is within tree */
887
+ [data-style='rokkit'] [data-tree]:focus-within [data-tree-item-content][data-active='true'] {
888
+ border-left-width:2px;--un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);border-left-color:var(--primary);
889
+ }
890
+
891
+ [data-style='rokkit']
892
+ [data-tree]:focus-within
893
+ [data-tree-item-content][data-active='true']:hover:not(:disabled) {
894
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
895
+ }
896
+
897
+ /* Active/selected state - when focus is outside tree (muted) */
898
+ [data-style='rokkit'] [data-tree]:not(:focus-within) [data-tree-item-content][data-active='true'] {
899
+ border-left-width:2px;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink);border-left-color:var(--ink-soft);
900
+ }
901
+
902
+ /* =============================================================================
903
+ Item Elements
904
+ ============================================================================= */
905
+
906
+ [data-style='rokkit'] [data-tree-item-content] [data-item-icon] {
907
+ color:var(--ink-soft);
908
+ }
909
+
910
+ [data-style='rokkit'] [data-tree-item-content]:hover:not(:disabled) [data-item-icon] {
911
+ color:var(--ink-mute);
912
+ }
913
+
914
+ [data-style='rokkit']
915
+ [data-tree]:focus-within
916
+ [data-tree-item-content][data-active='true']
917
+ [data-item-icon] {
918
+ color:var(--primary);
919
+ }
920
+
921
+ [data-style='rokkit']
922
+ [data-tree]:not(:focus-within)
923
+ [data-tree-item-content][data-active='true']
924
+ [data-item-icon] {
925
+ color:var(--ink-soft);
926
+ }
927
+
928
+ /* Item description */
929
+ [data-style='rokkit'] [data-tree-item-content] [data-item-description] {
930
+ color:var(--ink-soft);
931
+ }
932
+
933
+ [data-style='rokkit']
934
+ [data-tree]:focus-within
935
+ [data-tree-item-content][data-active='true']
936
+ [data-item-description] {
937
+ color:var(--primary);
938
+ }
939
+
940
+ [data-style='rokkit']
941
+ [data-tree]:not(:focus-within)
942
+ [data-tree-item-content][data-active='true']
943
+ [data-item-description] {
944
+ color:var(--ink-soft);
945
+ }
946
+
947
+ /* Item badge */
948
+ [data-style='rokkit'] [data-tree-item-content] [data-item-badge] {
949
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink-soft);border-color:var(--paper-edge);
950
+ }
951
+
952
+ [data-style='rokkit']
953
+ [data-tree]:focus-within
954
+ [data-tree-item-content][data-active='true']
955
+ [data-item-badge] {
956
+ border-width:1px;--un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);border-color:var(--primary);
957
+ }
958
+
959
+ [data-style='rokkit']
960
+ [data-tree]:not(:focus-within)
961
+ [data-tree-item-content][data-active='true']
962
+ [data-item-badge] {
963
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink-mute);
964
+ }
965
+
966
+ /* =============================================================================
967
+ Multi-Selection
968
+ ============================================================================= */
969
+
970
+ [data-style='rokkit'] [data-tree-node][data-selected='true'] [data-tree-node-row] {
971
+ background-color:var(--primary);
972
+ }
973
+
974
+ [data-style='rokkit']
975
+ [data-tree]:focus-within
976
+ [data-tree-node][data-selected='true']
977
+ [data-tree-node-row] {
978
+ background-color:var(--primary);
979
+ }
980
+
981
+ [data-style='rokkit'] [data-tree-node][data-selected='true'] [data-tree-item-content] {
982
+ color:var(--primary);
983
+ }
984
+
985
+ [data-style='rokkit']
986
+ [data-tree-node][data-selected='true']
987
+ [data-tree-item-content]
988
+ [data-item-icon] {
989
+ color:var(--primary);
990
+ }
991
+
992
+ /**
993
+ * Connector - Rokkit Theme Styles
994
+ *
995
+ * Visual theming for tree line connectors.
996
+ */
997
+
998
+ [data-style='rokkit'] [data-connector] [data-connector-v],
999
+ [data-style='rokkit'] [data-connector] [data-connector-h],
1000
+ [data-style='rokkit'] [data-connector] [data-connector-corner] {
1001
+ border-color:var(--paper-mute);
1002
+ }
1003
+
1004
+ /**
1005
+ * Select - Rokkit Theme Styles
1006
+ *
1007
+ * Rich gradients and glowing borders.
1008
+ */
1009
+
1010
+ /* =============================================================================
1011
+ Trigger Button
1012
+ ============================================================================= */
1013
+
1014
+ [data-style='rokkit'] [data-select-trigger] {
1015
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink-mute);border-color:var(--paper-edge);
1016
+ }
1017
+
1018
+ [data-style='rokkit'] [data-select-trigger]:hover:not(:disabled) {
1019
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--ink-soft);color:var(--ink);
1020
+ }
1021
+
1022
+ [data-style='rokkit'] [data-select-trigger]:focus-visible {
1023
+ outline:2px solid transparent;outline-offset:2px;--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);
1024
+ }
1025
+
1026
+ [data-style='rokkit'] [data-select][data-open='true'] [data-select-trigger] {
1027
+ --un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--primary);--un-ring-color:var(--primary);
1028
+ }
1029
+
1030
+ /* =============================================================================
1031
+ Placeholder
1032
+ ============================================================================= */
1033
+
1034
+ [data-style='rokkit'] [data-select-placeholder] {
1035
+ color:var(--ink-soft);
1036
+ }
1037
+
1038
+ /* =============================================================================
1039
+ Arrow
1040
+ ============================================================================= */
1041
+
1042
+ [data-style='rokkit'] [data-select-arrow] {
1043
+ color:var(--ink-soft);
1044
+ }
1045
+
1046
+ [data-style='rokkit'] [data-select-trigger]:hover:not(:disabled) [data-select-arrow] {
1047
+ color:var(--ink-mute);
1048
+ }
1049
+
1050
+ /* =============================================================================
1051
+ Tags (MultiSelect)
1052
+ ============================================================================= */
1053
+
1054
+ [data-style='rokkit'] [data-select-tag] {
1055
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink-mute);border-color:var(--ink-soft);
1056
+ }
1057
+
1058
+ [data-style='rokkit'] [data-select-tag-remove] {
1059
+ color:var(--ink-soft);
1060
+ }
1061
+
1062
+ [data-style='rokkit'] [data-select-tag-remove]:hover {
1063
+ color:var(--ink);
1064
+ }
1065
+
1066
+ /* =============================================================================
1067
+ Dropdown Panel
1068
+ ============================================================================= */
1069
+
1070
+ [data-style='rokkit'] [data-select-dropdown] {
1071
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 4px 6px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 2px 4px -2px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--paper-edge);
1072
+ }
1073
+
1074
+ /* =============================================================================
1075
+ Options
1076
+ ============================================================================= */
1077
+
1078
+ [data-style='rokkit'] [data-select-option] {
1079
+ border-width:0px;border-color:transparent;border-radius:0;border-style:solid;color:var(--ink-mute);
1080
+ }
1081
+
1082
+ /* Hover and focus */
1083
+ [data-style='rokkit'] [data-select-option]:hover:not(:disabled),
1084
+ [data-style='rokkit'] [data-select-option]:focus:not(:disabled) {
1085
+ --un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));outline:2px solid transparent;outline-offset:2px;color:var(--ink);
1086
+ }
1087
+
1088
+ /* Selected state — muted when dropdown not focused */
1089
+ [data-style='rokkit'] [data-select-option][data-selected='true'] {
1090
+ border-left-width:2px;background-color:var(--paper-mute);color:var(--primary);border-left-color:var(--primary);
1091
+ }
1092
+
1093
+ /* Selected state — full gradient when dropdown has focus */
1094
+ [data-style='rokkit']
1095
+ [data-select-dropdown]:focus-within
1096
+ [data-select-option][data-selected='true'] {
1097
+ border-left-width:2px;--un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);border-left-color:var(--primary);
1098
+ }
1099
+
1100
+ /* Selected + hover */
1101
+ [data-style='rokkit'] [data-select-option][data-selected='true']:hover:not(:disabled) {
1102
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
1103
+ }
1104
+
1105
+ /* Check mark */
1106
+ [data-style='rokkit'] [data-select-check] {
1107
+ color:var(--primary);
1108
+ }
1109
+
1110
+ /* Checkbox */
1111
+ [data-style='rokkit'] [data-select-checkbox] {
1112
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--ink-soft);
1113
+ }
1114
+
1115
+ [data-style='rokkit'] [data-select-checkbox][data-checked='true'] {
1116
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--primary);color:var(--on-primary);
1117
+ }
1118
+
1119
+ /* Item elements */
1120
+ [data-style='rokkit'] [data-select-option] [data-item-icon] {
1121
+ color:var(--ink-soft);
1122
+ }
1123
+
1124
+ [data-style='rokkit'] [data-select-option]:hover:not(:disabled) [data-item-icon] {
1125
+ color:var(--ink-mute);
1126
+ }
1127
+
1128
+ [data-style='rokkit'] [data-select-option][data-selected='true'] [data-item-icon] {
1129
+ color:var(--primary);
1130
+ }
1131
+
1132
+ [data-style='rokkit']
1133
+ [data-select-dropdown]:focus-within
1134
+ [data-select-option][data-selected='true']
1135
+ [data-item-icon] {
1136
+ color:var(--primary);
1137
+ }
1138
+
1139
+ [data-style='rokkit'] [data-select-option] [data-item-description] {
1140
+ color:var(--ink-soft);
1141
+ }
1142
+
1143
+ [data-style='rokkit'] [data-select-option][data-selected='true'] [data-item-description] {
1144
+ color:var(--primary);
1145
+ }
1146
+
1147
+ [data-style='rokkit'] [data-select-option] [data-item-badge] {
1148
+ color:var(--ink-soft);background-color:var(--paper-mute);
1149
+ }
1150
+
1151
+ [data-style='rokkit'] [data-select-option][data-selected='true'] [data-item-badge] {
1152
+ color:var(--primary);background-color:var(--primary);
1153
+ }
1154
+
1155
+ /* =============================================================================
1156
+ Groups
1157
+ ============================================================================= */
1158
+
1159
+ [data-style='rokkit'] [data-select-group-label] {
1160
+ color:var(--ink-soft);
1161
+ }
1162
+
1163
+ /* =============================================================================
1164
+ Divider
1165
+ ============================================================================= */
1166
+
1167
+ [data-style='rokkit'] [data-select-divider] {
1168
+ --un-gradient-from-position:0%;--un-gradient-from:transparent var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
1169
+ }
1170
+
1171
+ /* =============================================================================
1172
+ Filter Input
1173
+ ============================================================================= */
1174
+
1175
+ [data-style='rokkit'] [data-select-filter] {
1176
+ background-color:var(--paper-mute);
1177
+ }
1178
+
1179
+ [data-style='rokkit'] [data-select-filter-input] {
1180
+ border-width:1px;color:var(--ink-mute);border-color:var(--paper-edge);background-color:var(--paper-soft);
1181
+ }
1182
+
1183
+ [data-style='rokkit'] [data-select-filter-input]:focus {
1184
+ --un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--primary);--un-ring-color:var(--primary);
1185
+ }
1186
+
1187
+ [data-style='rokkit'] [data-select-filter-input]::placeholder {
1188
+ color:var(--ink-soft);
1189
+ }
1190
+
1191
+ [data-style='rokkit'] [data-select-empty] {
1192
+ color:var(--ink-soft);
1193
+ }
1194
+
1195
+ /**
1196
+ * Menu - Rokkit Theme Styles
1197
+ *
1198
+ * Rich gradients and glowing borders.
1199
+ */
1200
+
1201
+ /* =============================================================================
1202
+ Menu Trigger
1203
+ ============================================================================= */
1204
+
1205
+ [data-style='rokkit'] [data-menu-trigger] {
1206
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--paper-edge);color:var(--ink-mute);
1207
+ }
1208
+
1209
+ [data-style='rokkit'] [data-menu-trigger]:hover:not(:disabled) {
1210
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink);border-color:var(--ink-soft);
1211
+ }
1212
+
1213
+ [data-style='rokkit'] [data-menu-trigger]:focus-visible {
1214
+ outline:2px solid transparent;outline-offset:2px;
1215
+ }
1216
+
1217
+ [data-style='rokkit'] [data-menu][data-open='true'] [data-menu-trigger] {
1218
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--primary);
1219
+ }
1220
+
1221
+ /* Trigger elements */
1222
+ [data-style='rokkit'] [data-menu-trigger] [data-menu-icon] {
1223
+ color:var(--ink-soft);
1224
+ }
1225
+
1226
+ [data-style='rokkit'] [data-menu-trigger]:hover:not(:disabled) [data-menu-icon] {
1227
+ color:var(--ink-mute);
1228
+ }
1229
+
1230
+ [data-style='rokkit'] [data-menu-trigger] [data-menu-arrow] {
1231
+ color:var(--ink-soft);
1232
+ }
1233
+
1234
+ /* =============================================================================
1235
+ Menu Dropdown
1236
+ ============================================================================= */
1237
+
1238
+ [data-style='rokkit'] [data-menu-dropdown] {
1239
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 4px 6px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 2px 4px -2px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--paper-edge);
1240
+ }
1241
+
1242
+ [data-style='rokkit'] [data-menu-dropdown]:focus-within {
1243
+ outline:2px solid transparent;outline-offset:2px;
1244
+ }
1245
+
1246
+ /* =============================================================================
1247
+ Menu Items
1248
+ ============================================================================= */
1249
+
1250
+ [data-style='rokkit'] [data-menu-item] {
1251
+ border-width:0px;border-color:transparent;border-radius:0;border-style:solid;color:var(--ink-mute);
1252
+ }
1253
+
1254
+ [data-style='rokkit'] [data-menu-item]:hover:not(:disabled):not([data-disabled='true']),
1255
+ [data-style='rokkit'] [data-menu-item]:focus:not(:disabled):not([data-disabled='true']) {
1256
+ --un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));outline:2px solid transparent;outline-offset:2px;color:var(--ink);
1257
+ }
1258
+
1259
+ /* Item elements */
1260
+ [data-style='rokkit'] [data-menu-item] [data-item-icon] {
1261
+ color:var(--ink-soft);
1262
+ }
1263
+
1264
+ [data-style='rokkit'] [data-menu-item]:hover:not(:disabled) [data-item-icon],
1265
+ [data-style='rokkit'] [data-menu-item]:focus:not(:disabled) [data-item-icon] {
1266
+ color:var(--primary);
1267
+ }
1268
+
1269
+ [data-style='rokkit'] [data-menu-item] [data-item-description] {
1270
+ color:var(--ink-soft);
1271
+ }
1272
+
1273
+ /* =============================================================================
1274
+ Groups
1275
+ ============================================================================= */
1276
+
1277
+ [data-style='rokkit'] [data-menu-group] {
1278
+ color:var(--ink-soft);
1279
+ }
1280
+
1281
+ /* =============================================================================
1282
+ Divider
1283
+ ============================================================================= */
1284
+
1285
+ [data-style='rokkit'] [data-menu-separator] {
1286
+ --un-gradient-from-position:0%;--un-gradient-from:transparent var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
1287
+ }
1288
+
1289
+ /**
1290
+ * Dropdown - Rokkit Theme Styles
1291
+ *
1292
+ * Rich gradients and glowing borders.
1293
+ */
1294
+
1295
+ /* =============================================================================
1296
+ Trigger
1297
+ ============================================================================= */
1298
+
1299
+ [data-style='rokkit'] [data-dropdown-trigger] {
1300
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--paper-edge);color:var(--ink-mute);
1301
+ }
1302
+
1303
+ [data-style='rokkit'] [data-dropdown-trigger]:hover:not(:disabled) {
1304
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink);border-color:var(--ink-soft);
1305
+ }
1306
+
1307
+ [data-style='rokkit'] [data-dropdown-trigger]:focus-visible {
1308
+ outline:2px solid transparent;outline-offset:2px;
1309
+ }
1310
+
1311
+ [data-style='rokkit'] [data-dropdown][data-open='true'] [data-dropdown-trigger] {
1312
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--primary);
1313
+ }
1314
+
1315
+ [data-style='rokkit'] [data-dropdown-trigger] [data-dropdown-icon] {
1316
+ color:var(--ink-soft);
1317
+ }
1318
+
1319
+ [data-style='rokkit'] [data-dropdown-trigger]:hover:not(:disabled) [data-dropdown-icon] {
1320
+ color:var(--ink-mute);
1321
+ }
1322
+
1323
+ [data-style='rokkit'] [data-dropdown-trigger] [data-dropdown-arrow] {
1324
+ color:var(--ink-soft);
1325
+ }
1326
+
1327
+ /* =============================================================================
1328
+ Panel
1329
+ ============================================================================= */
1330
+
1331
+ [data-style='rokkit'] [data-dropdown-panel] {
1332
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 4px 6px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 2px 4px -2px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--paper-edge);
1333
+ }
1334
+
1335
+ /* =============================================================================
1336
+ Options
1337
+ ============================================================================= */
1338
+
1339
+ [data-style='rokkit'] [data-dropdown-option] {
1340
+ color:var(--ink-mute);
1341
+ }
1342
+
1343
+ [data-style='rokkit'] [data-dropdown-option]:hover:not(:disabled),
1344
+ [data-style='rokkit'] [data-dropdown-option]:focus:not(:disabled) {
1345
+ --un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));outline:2px solid transparent;outline-offset:2px;color:var(--ink);
1346
+ }
1347
+
1348
+ [data-style='rokkit'] [data-dropdown-option][data-active='true'] {
1349
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);
1350
+ }
1351
+
1352
+ /* =============================================================================
1353
+ Separator
1354
+ ============================================================================= */
1355
+
1356
+ [data-style='rokkit'] [data-dropdown-separator] {
1357
+ --un-gradient-from-position:0%;--un-gradient-from:transparent var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
1358
+ }
1359
+
1360
+ /**
1361
+ * FloatingAction - Rokkit Theme Styles
1362
+ *
1363
+ * Rich gradients and glowing borders.
1364
+ */
1365
+
1366
+ /* =============================================================================
1367
+ FAB Trigger Button
1368
+ ============================================================================= */
1369
+
1370
+ [data-style='rokkit'] [data-fab-trigger] {
1371
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 10px 15px -3px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 4px 6px -4px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);color:var(--on-primary);
1372
+ }
1373
+
1374
+ [data-style='rokkit'] [data-fab-trigger]:hover:not(:disabled) {
1375
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);
1376
+ transform: scale(1.05);
1377
+ }
1378
+
1379
+ [data-style='rokkit'] [data-fab-trigger]:focus-visible {
1380
+ --un-shadow:var(--un-shadow-inset) 0 10px 15px -3px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 4px 6px -4px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);outline:2px solid transparent;outline-offset:2px;--un-ring-width:3px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);
1381
+ }
1382
+
1383
+ [data-style='rokkit'] [data-fab][data-open='true'] [data-fab-trigger] {
1384
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 10px 15px -3px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 4px 6px -4px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);color:var(--ink);--un-ring-color:var(--ink-soft);
1385
+ transform: rotate(45deg);
1386
+ }
1387
+
1388
+ [data-style='rokkit'] [data-fab][data-open='true'] [data-fab-trigger]:hover:not(:disabled) {
1389
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
1390
+ transform: rotate(45deg) scale(1.05);
1391
+ }
1392
+
1393
+ /* =============================================================================
1394
+ FAB Items
1395
+ ============================================================================= */
1396
+
1397
+ [data-style='rokkit'] [data-fab-item] {
1398
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 4px 6px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 2px 4px -2px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);color:var(--ink-mute);--un-ring-color:var(--paper-mute);
1399
+ }
1400
+
1401
+ [data-style='rokkit'] [data-fab-item]:hover:not(:disabled) {
1402
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 10px 15px -3px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 4px 6px -4px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);color:var(--ink);--un-ring-color:var(--paper-mute);
1403
+ }
1404
+
1405
+ [data-style='rokkit'] [data-fab-item]:focus-visible {
1406
+ --un-shadow:var(--un-shadow-inset) 0 4px 6px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 2px 4px -2px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);outline:2px solid transparent;outline-offset:2px;--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);
1407
+ }
1408
+
1409
+ /* Item icon */
1410
+ [data-style='rokkit'] [data-fab-item] [data-fab-item-icon] {
1411
+ color:var(--primary);
1412
+ }
1413
+
1414
+ [data-style='rokkit'] [data-fab-item]:hover:not(:disabled) [data-fab-item-icon] {
1415
+ color:var(--primary);
1416
+ }
1417
+
1418
+ /* =============================================================================
1419
+ Backdrop
1420
+ ============================================================================= */
1421
+
1422
+ [data-style='rokkit'] [data-fab-backdrop] {
1423
+ background-color:color-mix(in srgb, var(--color-ink) calc(0.4 * 100%), transparent);
1424
+ }
1425
+
1426
+ /* Rokkit Theme - Form field and input styles */
1427
+
1428
+ /* Field root: text color, spacing, rounded */
1429
+ [data-style='rokkit'] [data-field-root] {
1430
+ gap:0.25rem;border-radius:0.375rem;transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;color:var(--ink);
1431
+ }
1432
+
1433
+ /* Disabled state */
1434
+ [data-style='rokkit'] [data-field-root][data-field-disabled] [data-input-root] {
1435
+ cursor:not-allowed;background-color:var(--paper-mute);color:var(--ink-soft);
1436
+ }
1437
+
1438
+ /* Labels */
1439
+ [data-style='rokkit'] [data-field] > label {
1440
+ color:var(--ink-mute);
1441
+ }
1442
+
1443
+ [data-style='rokkit'] [data-form-root] label {
1444
+ color:var(--ink-mute);
1445
+ }
1446
+
1447
+ /* Info field value */
1448
+ [data-style='rokkit'] [data-field-info] {
1449
+ font-weight:500;color:var(--primary);
1450
+ }
1451
+
1452
+ /* Separator */
1453
+ [data-style='rokkit'] [data-form-separator] {
1454
+ border-color:var(--paper-mute);
1455
+ }
1456
+
1457
+ /* Input root: gradient border wrapper */
1458
+ [data-style='rokkit'] [data-input-root] {
1459
+ display:flex;align-items:center;border-radius:0.375rem;padding:1px;transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;background-color:var(--paper-edge);
1460
+ }
1461
+
1462
+ [data-style='rokkit'] [data-input-root]:focus-within {
1463
+ border-color:transparent;--un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
1464
+ }
1465
+
1466
+ /* Standard inputs inside wrapper */
1467
+ [data-style='rokkit']
1468
+ [data-input-root]
1469
+ input:not([type='checkbox'], [type='radio'], [type='color']),
1470
+ [data-style='rokkit'] [data-input-root] select {
1471
+ border-radius:0.375rem;border-style:none;padding-left:0.75rem;padding-right:0.75rem;background-color:var(--paper-mute);color:var(--ink-mute);
1472
+ font-size: 0.875rem;
1473
+ height: 2.25rem;
1474
+ }[data-style="rokkit"] [data-input-root] input:not([type="checkbox"],[type="radio"],[type="color"]):focus,[data-style="rokkit"] [data-input-root] select:focus{outline:2px solid transparent;outline-offset:2px;}
1475
+
1476
+ [data-style='rokkit'] [data-input-root] textarea {
1477
+ border-radius:0.375rem;border-style:none;padding-left:0.75rem;padding-right:0.75rem;padding-top:0.5rem;padding-bottom:0.5rem;background-color:var(--paper-mute);color:var(--ink-mute);
1478
+ font-size: 0.875rem;
1479
+ }[data-style="rokkit"] [data-input-root] textarea:focus{outline:2px solid transparent;outline-offset:2px;}
1480
+
1481
+ /* Select inside input-root: remove trigger styles since input-root provides the border */
1482
+ [data-style='rokkit'] [data-input-root] [data-select-trigger] {
1483
+ border-radius:0.375rem;border-style:none;--un-shadow:0 0 var(--un-shadow-color, rgb(0 0 0 / 0));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-width:0px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);background-color:var(--paper-mute);color:var(--ink-mute);
1484
+ background-image: none;
1485
+ }[data-style="rokkit"] [data-input-root] [data-select-trigger]:focus{outline:2px solid transparent;outline-offset:2px;}
1486
+
1487
+ /* Suppress standalone select open-state ring/border when inside input-root */
1488
+ [data-style='rokkit'] [data-input-root] [data-select][data-open='true'] [data-select-trigger] {
1489
+ border-style:none;--un-shadow:0 0 var(--un-shadow-color, rgb(0 0 0 / 0));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-width:0px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);
1490
+ }
1491
+
1492
+ [data-style='rokkit'] [data-input-root] input::placeholder,
1493
+ [data-style='rokkit'] [data-input-root] textarea::placeholder {
1494
+ color:var(--ink-soft);
1495
+ }
1496
+
1497
+ /* Checkbox field */
1498
+ [data-style='rokkit'] [data-field-type='checkbox'] [data-field] {
1499
+ display:flex;align-items:center;line-height:2;
1500
+ }
1501
+
1502
+ /* Checkbox icon: theme-colored */
1503
+ [data-style='rokkit'] [data-checkbox-icon] {
1504
+ cursor:pointer;border-radius:0.25rem;font-size:1.125rem;line-height:1.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;color:var(--ink-soft);
1505
+ }
1506
+
1507
+ [data-style='rokkit'] [data-checkbox-icon]:focus-visible {
1508
+ outline-width:2px;outline-offset:2px;outline-color:var(--primary);
1509
+ }
1510
+
1511
+ [data-style='rokkit']
1512
+ [data-checkbox-root][data-variant='custom']:has(input:checked)
1513
+ [data-checkbox-icon] {
1514
+ color:var(--primary);
1515
+ }
1516
+
1517
+ [data-style='rokkit'] [data-field] textarea {
1518
+ min-height:5rem;padding-top:0.5rem;padding-bottom:0.5rem;
1519
+ }
1520
+
1521
+ /* Color input */
1522
+ [data-style='rokkit'] [data-field-type='color'] [data-input-root] {
1523
+ overflow:hidden;
1524
+ }
1525
+
1526
+ [data-style='rokkit'] [data-field-type='color'] input[type='color'] {
1527
+ min-height:2.75rem;display:flex;flex:1 1 0%;border-radius:0.375rem;background-color:var(--paper-mute);
1528
+ }[data-style="rokkit"] [data-field-type="color"] input[type="color"]:focus{outline:2px solid transparent;outline-offset:2px;}
1529
+
1530
+ /* Description and message */
1531
+ [data-style='rokkit'] [data-description],
1532
+ [data-style='rokkit'] [data-message] {
1533
+ color:var(--ink-soft);
1534
+ }
1535
+
1536
+ [data-style='rokkit'] [data-message] {
1537
+ border-radius:0.375rem;padding-left:0.5rem;padding-right:0.5rem;padding-top:0.25rem;padding-bottom:0.25rem;
1538
+ }
1539
+
1540
+ /* Validation state messages */
1541
+ [data-style='rokkit'] [data-field-state='success'] [data-message] {
1542
+ opacity:0.1;background-color:var(--success);color:var(--success);
1543
+ }
1544
+
1545
+ [data-style='rokkit'] [data-field-state='warning'] [data-message] {
1546
+ opacity:0.1;background-color:var(--warning);color:var(--warning);
1547
+ }
1548
+
1549
+ [data-style='rokkit'] [data-field-state='info'] [data-message] {
1550
+ opacity:0.1;background-color:var(--info);color:var(--info);
1551
+ }
1552
+
1553
+ [data-style='rokkit'] [data-field-state='error'] [data-message] {
1554
+ opacity:0.1;background-color:var(--error);color:var(--error);
1555
+ }
1556
+
1557
+ [data-style='rokkit'] [data-field-root][data-field-state='fail'] [data-input-root] {
1558
+ opacity:0.1;background-color:var(--error);color:var(--error);
1559
+ }
1560
+
1561
+ /**
1562
+ * Table - Rokkit Theme Styles
1563
+ *
1564
+ * Rich gradients and glowing borders.
1565
+ */
1566
+
1567
+ /* =============================================================================
1568
+ Header
1569
+ ============================================================================= */
1570
+
1571
+ [data-style='rokkit'] [data-table-header] th {
1572
+ border-bottom-width:1px;color:var(--ink-soft);border-color:var(--paper-edge);background-color:var(--paper-mute);
1573
+ }
1574
+
1575
+ [data-style='rokkit'] [data-table-header-cell][data-sortable='true']:hover {
1576
+ color:var(--ink-mute);
1577
+ }
1578
+
1579
+ [data-style='rokkit'] [data-table-header-cell][data-sort-order='ascending'],
1580
+ [data-style='rokkit'] [data-table-header-cell][data-sort-order='descending'] {
1581
+ color:var(--primary);
1582
+ }
1583
+
1584
+ [data-style='rokkit'] [data-table-sort-icon] {
1585
+ color:var(--ink-soft);
1586
+ }
1587
+
1588
+ [data-style='rokkit'] [data-table-header-cell][data-sort-order='ascending'] [data-table-sort-icon],
1589
+ [data-style='rokkit']
1590
+ [data-table-header-cell][data-sort-order='descending']
1591
+ [data-table-sort-icon] {
1592
+ color:var(--primary);
1593
+ }
1594
+
1595
+ /* =============================================================================
1596
+ Caption
1597
+ ============================================================================= */
1598
+
1599
+ [data-style='rokkit'] [data-table-caption] {
1600
+ color:var(--ink-mute);
1601
+ }
1602
+
1603
+ /* =============================================================================
1604
+ Rows
1605
+ ============================================================================= */
1606
+
1607
+ [data-style='rokkit'] [data-table-row] {
1608
+ border-bottom-width:1px;color:var(--ink-mute);border-color:var(--paper-mute);
1609
+ }
1610
+
1611
+ [data-style='rokkit'] [data-table-row]:hover {
1612
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
1613
+ }
1614
+
1615
+ [data-style='rokkit'] [data-table-row]:focus {
1616
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));outline:2px solid transparent;outline-offset:2px;color:var(--ink);
1617
+ }
1618
+
1619
+ [data-style='rokkit'] [data-table-row][data-selected='true'] {
1620
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);
1621
+ }
1622
+
1623
+ /* Keyboard-focused row + synthesised TreeTable group row */
1624
+ [data-style='rokkit'] [data-table] tr[data-table-row][data-focused] {
1625
+ background-color:var(--paper-mute);
1626
+ }
1627
+
1628
+ [data-style='rokkit'] [data-table] tr[data-table-row][data-group] {
1629
+ background-color:var(--paper-soft);color:var(--ink);
1630
+ font-weight: 500;
1631
+ }
1632
+
1633
+ /* =============================================================================
1634
+ Striped
1635
+ ============================================================================= */
1636
+
1637
+ [data-style='rokkit'] [data-table-striped] [data-table-body] tr:nth-child(even) {
1638
+ background-color:var(--paper-mute);
1639
+ }
1640
+
1641
+ /* =============================================================================
1642
+ Empty
1643
+ ============================================================================= */
1644
+
1645
+ [data-style='rokkit'] [data-table-empty] {
1646
+ color:var(--ink-soft);
1647
+ }
1648
+
1649
+ /* =============================================================================
1650
+ Cell Icon
1651
+ ============================================================================= */
1652
+
1653
+ [data-style='rokkit'] [data-table-cell] [data-cell-icon] {
1654
+ color:var(--ink-soft);
1655
+ }
1656
+
1657
+ [data-style='rokkit'] [data-table-row][data-selected='true'] [data-cell-icon] {
1658
+ color:var(--primary);
1659
+ }
1660
+
1661
+ /* =============================================================================
1662
+ Responsive Card Layout
1663
+ ============================================================================= */
1664
+
1665
+ @media (max-width: 639px) {
1666
+ [data-style='rokkit'] [data-table-responsive] [data-table-row] {
1667
+ border-width:1px;background-color:var(--paper-mute);border-color:var(--paper-edge);
1668
+ }
1669
+
1670
+ [data-style='rokkit'] [data-table-responsive] [data-table-cell]::before {
1671
+ color:var(--ink-soft);
1672
+ }
1673
+
1674
+ /* Disable striped alternating bg in card layout */
1675
+ [data-style='rokkit'] [data-table-responsive][data-table-striped] [data-table-body] tr:nth-child(even) {
1676
+ background: unset;
1677
+ }
1678
+ }
1679
+
1680
+ /**
1681
+ * SearchFilter - Rokkit Theme Styles
1682
+ *
1683
+ * Rich gradients and glowing borders.
1684
+ */
1685
+
1686
+ /* =============================================================================
1687
+ Input
1688
+ ============================================================================= */
1689
+
1690
+ [data-style='rokkit'] [data-search-input] {
1691
+ border-width:1px;background-color:transparent;color:var(--ink-mute);border-color:var(--paper-edge);
1692
+ }
1693
+
1694
+ [data-style='rokkit'] [data-search-input]:focus {
1695
+ --un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--primary);--un-ring-color:var(--primary);
1696
+ }
1697
+
1698
+ [data-style='rokkit'] [data-search-input]::placeholder {
1699
+ color:var(--ink-soft);
1700
+ }
1701
+
1702
+ /* =============================================================================
1703
+ Clear Button
1704
+ ============================================================================= */
1705
+
1706
+ [data-style='rokkit'] [data-search-clear] {
1707
+ color:var(--ink-soft);
1708
+ }
1709
+
1710
+ [data-style='rokkit'] [data-search-clear]:hover {
1711
+ color:var(--ink-mute);
1712
+ }
1713
+
1714
+ /* =============================================================================
1715
+ Tags
1716
+ ============================================================================= */
1717
+
1718
+ [data-style='rokkit'] [data-search-tag] {
1719
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink-mute);border-color:var(--paper-edge);
1720
+ }
1721
+
1722
+ [data-style='rokkit'] [data-search-tag-remove] {
1723
+ color:var(--ink-soft);
1724
+ }
1725
+
1726
+ [data-style='rokkit'] [data-search-tag-remove]:hover {
1727
+ color:var(--ink);
1728
+ }
1729
+
1730
+ /**
1731
+ * Range - Rokkit Theme Styles
1732
+ *
1733
+ * Rich gradients and glowing borders.
1734
+ */
1735
+
1736
+ /* =============================================================================
1737
+ Track
1738
+ ============================================================================= */
1739
+
1740
+ [data-style='rokkit'] [data-range-bar] {
1741
+ border-width:1px;background-color:var(--paper-mute);border-color:var(--paper-mute);
1742
+ }
1743
+
1744
+ [data-style='rokkit'] [data-range-selected] {
1745
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
1746
+ }
1747
+
1748
+ /* =============================================================================
1749
+ Thumb
1750
+ ============================================================================= */
1751
+
1752
+ [data-style='rokkit'] [data-range-thumb] {
1753
+ --un-shadow:var(--un-shadow-inset) 0 10px 15px -3px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 4px 6px -4px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);background-color:var(--accent);border-color:var(--accent);
1754
+ }
1755
+
1756
+ [data-style='rokkit'] [data-range-thumb][data-sliding] {
1757
+ --un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);
1758
+ --un-ring-width:4px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:color-mix(in srgb, var(--color-accent) calc(0.3 * 100%), transparent);
1759
+ }
1760
+
1761
+ [data-style='rokkit'] [data-range-thumb]:focus-visible {
1762
+ --un-ring-width:4px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:color-mix(in srgb, var(--color-accent) calc(0.3 * 100%), transparent);
1763
+ }
1764
+
1765
+ /* =============================================================================
1766
+ Ticks
1767
+ ============================================================================= */
1768
+
1769
+ [data-style='rokkit'] [data-range-tick] {
1770
+ color:var(--ink-soft);
1771
+ }
1772
+
1773
+ [data-style='rokkit'] [data-tick-bar] {
1774
+ border-color:var(--ink-soft);
1775
+ }
1776
+
1777
+ [data-style='rokkit'] [data-tick-label] {
1778
+ color:var(--ink-soft);
1779
+ }
1780
+
1781
+ /* =============================================================================
1782
+ Disabled
1783
+ ============================================================================= */
1784
+
1785
+ [data-style='rokkit'] [data-range][data-disabled] [data-range-thumb] {
1786
+ background-color:var(--paper-edge);border-color:var(--paper-edge);
1787
+ }
1788
+
1789
+ [data-style='rokkit'] [data-range][data-disabled] [data-range-selected] {
1790
+ background-color:var(--paper-edge);
1791
+ }
1792
+
1793
+ /**
1794
+ * Timeline - Rokkit Theme Styles
1795
+ *
1796
+ * Rich gradients and glowing accents.
1797
+ */
1798
+
1799
+ /* =============================================================================
1800
+ Circle
1801
+ ============================================================================= */
1802
+
1803
+ [data-style='rokkit'] [data-timeline-circle] {
1804
+ border-color:var(--paper-edge);color:var(--ink-soft);
1805
+ }
1806
+
1807
+ [data-style='rokkit'] [data-timeline-item][data-completed] [data-timeline-circle] {
1808
+ background-color:var(--primary);border-color:var(--primary);color:var(--on-primary);
1809
+ }
1810
+
1811
+ [data-style='rokkit'] [data-timeline-item][data-active] [data-timeline-circle] {
1812
+ --un-ring-width:3px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:color-mix(in srgb, var(--color-primary) calc(0.2 * 100%), transparent);border-color:var(--primary);color:var(--primary);
1813
+ }
1814
+
1815
+ /* =============================================================================
1816
+ Connector
1817
+ ============================================================================= */
1818
+
1819
+ [data-style='rokkit'] [data-timeline-connector] {
1820
+ background-color:var(--paper-mute);
1821
+ }
1822
+
1823
+ [data-style='rokkit'] [data-timeline-item][data-completed] [data-timeline-connector] {
1824
+ background-color:var(--primary);
1825
+ }
1826
+
1827
+ /* =============================================================================
1828
+ Body
1829
+ ============================================================================= */
1830
+
1831
+ [data-style='rokkit'] [data-timeline-title] {
1832
+ color:var(--ink-mute);
1833
+ }
1834
+
1835
+ [data-style='rokkit'] [data-timeline-description] {
1836
+ color:var(--ink-soft);
1837
+ }
1838
+
1839
+ /**
1840
+ * FloatingNavigation - Rokkit Theme Styles
1841
+ *
1842
+ * Rich gradients and glowing borders.
1843
+ */
1844
+
1845
+ /* =============================================================================
1846
+ Container
1847
+ ============================================================================= */
1848
+
1849
+ [data-style='rokkit'] [data-floating-nav] {
1850
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-width:1px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--paper-mute);
1851
+ }
1852
+
1853
+ /* =============================================================================
1854
+ Header
1855
+ ============================================================================= */
1856
+
1857
+ [data-style='rokkit'] [data-floating-nav-title] {
1858
+ color:var(--ink-soft);
1859
+ }
1860
+
1861
+ [data-style='rokkit'] [data-floating-nav-pin] {
1862
+ color:var(--ink-soft);
1863
+ }
1864
+
1865
+ [data-style='rokkit'] [data-floating-nav-pin]:hover {
1866
+ color:var(--primary);
1867
+ }
1868
+
1869
+ [data-style='rokkit'] [data-floating-nav-pin][aria-pressed='true'] {
1870
+ color:var(--primary);
1871
+ }
1872
+
1873
+ /* =============================================================================
1874
+ Items
1875
+ ============================================================================= */
1876
+
1877
+ [data-style='rokkit'] [data-floating-nav-item] {
1878
+ color:var(--ink-mute);
1879
+ }
1880
+
1881
+ [data-style='rokkit'] [data-floating-nav-item]:hover {
1882
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--ink);
1883
+ }
1884
+
1885
+ [data-style='rokkit'] [data-floating-nav-item][data-active] {
1886
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(0.1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(0.05 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));color:var(--primary);
1887
+ }
1888
+
1889
+ [data-style='rokkit'] [data-floating-nav-item]:focus-visible {
1890
+ outline:2px solid transparent;outline-offset:2px;--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);
1891
+ }
1892
+
1893
+ /* Icon */
1894
+ [data-style='rokkit'] [data-floating-nav-icon] {
1895
+ color:var(--ink-soft);
1896
+ }
1897
+
1898
+ [data-style='rokkit'] [data-floating-nav-item]:hover [data-floating-nav-icon] {
1899
+ color:var(--primary);
1900
+ }
1901
+
1902
+ [data-style='rokkit'] [data-floating-nav-item][data-active] [data-floating-nav-icon] {
1903
+ color:var(--primary);
1904
+ }
1905
+
1906
+ /* Label */
1907
+ [data-style='rokkit'] [data-floating-nav-label] {
1908
+ color:var(--ink-mute);
1909
+ }
1910
+
1911
+ [data-style='rokkit'] [data-floating-nav-item][data-active] [data-floating-nav-label] {
1912
+ font-weight:500;color:var(--primary);
1913
+ }
1914
+
1915
+ /* =============================================================================
1916
+ Active Indicator
1917
+ ============================================================================= */
1918
+
1919
+ [data-style='rokkit'] [data-floating-nav-indicator] {
1920
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgb(0 0 0 / 0.05));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);
1921
+ }
1922
+
1923
+ /**
1924
+ * Grid - Rokkit Theme Styles
1925
+ *
1926
+ * Tile borders, hover/focus effects, selection highlight.
1927
+ */
1928
+
1929
+ /* =============================================================================
1930
+ Grid Tiles
1931
+ ============================================================================= */
1932
+
1933
+ [data-style='rokkit'] [data-grid] [data-grid-item] {
1934
+ border-color:var(--paper-mute);color:var(--ink-mute);
1935
+ }
1936
+
1937
+ [data-style='rokkit'] [data-grid] [data-grid-item]:hover:not(:disabled):not([data-disabled]) {
1938
+ border-color:var(--ink-soft);background-color:var(--paper-mute);color:var(--ink);
1939
+ }
1940
+
1941
+ [data-style='rokkit'] [data-grid] [data-grid-item]:focus:not(:disabled):not([data-disabled]) {
1942
+ outline:2px solid transparent;outline-offset:2px;border-color:var(--primary);background-color:var(--paper-mute);color:var(--ink);
1943
+ }
1944
+
1945
+ /* Active / selected tile */
1946
+ [data-style='rokkit'] [data-grid] [data-grid-item][data-active] {
1947
+ border-color:var(--primary);background-color:var(--primary);color:var(--primary);
1948
+ }
1949
+
1950
+ [data-style='rokkit'] [data-grid] [data-grid-item][data-active]:hover:not(:disabled) {
1951
+ background-color:var(--primary);
1952
+ }
1953
+
1954
+ /* =============================================================================
1955
+ Item Elements
1956
+ ============================================================================= */
1957
+
1958
+ [data-style='rokkit'] [data-grid] [data-grid-item] [data-item-icon] {
1959
+ color:var(--ink-soft);
1960
+ }
1961
+
1962
+ [data-style='rokkit'] [data-grid] [data-grid-item]:hover:not(:disabled) [data-item-icon] {
1963
+ color:var(--ink-mute);
1964
+ }
1965
+
1966
+ [data-style='rokkit'] [data-grid] [data-grid-item][data-active] [data-item-icon] {
1967
+ color:var(--primary);
1968
+ }
1969
+
1970
+ /**
1971
+ * UploadTarget - Rokkit Theme Styles
1972
+ *
1973
+ * Colors, drag-over highlight, hover/focus rings.
1974
+ */
1975
+
1976
+ /* =============================================================================
1977
+ Drop Zone
1978
+ ============================================================================= */
1979
+
1980
+ [data-style='rokkit'] [data-upload-target] {
1981
+ border-color:var(--paper-edge);color:var(--ink-soft);
1982
+ }
1983
+
1984
+ [data-style='rokkit'] [data-upload-target]:hover:not([data-disabled]) {
1985
+ border-color:var(--ink-soft);color:var(--ink-mute);background-color:var(--paper-mute);
1986
+ }
1987
+
1988
+ [data-style='rokkit'] [data-upload-target]:focus-visible:not([data-disabled]) {
1989
+ --un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--primary);--un-ring-color:var(--primary);
1990
+ }
1991
+
1992
+ /* Drag-over highlight */
1993
+ [data-style='rokkit'] [data-upload-target][data-dragging] {
1994
+ border-color:var(--primary);background-color:var(--primary);color:var(--primary);
1995
+ }
1996
+
1997
+ /* =============================================================================
1998
+ Upload Icon
1999
+ ============================================================================= */
2000
+
2001
+ [data-style='rokkit'] [data-upload-target] [data-upload-icon] {
2002
+ color:var(--ink-soft);
2003
+ }
2004
+
2005
+ [data-style='rokkit'] [data-upload-target][data-dragging] [data-upload-icon] {
2006
+ color:var(--primary);
2007
+ }
2008
+
2009
+ /* =============================================================================
2010
+ Browse Button
2011
+ ============================================================================= */
2012
+
2013
+ [data-style='rokkit'] [data-upload-target] [data-upload-button] {
2014
+ border-color:var(--paper-edge);color:var(--ink-mute);
2015
+ }
2016
+
2017
+ [data-style='rokkit'] [data-upload-target] [data-upload-button]:hover:not(:disabled) {
2018
+ background-color:var(--paper-mute);color:var(--ink);
2019
+ }
2020
+
2021
+ /**
2022
+ * UploadProgress - Rokkit Theme Styles
2023
+ *
2024
+ * Status colors, progress fill, action buttons.
2025
+ */
2026
+
2027
+ /* =============================================================================
2028
+ Header
2029
+ ============================================================================= */
2030
+
2031
+ [data-style='rokkit'] [data-upload-header] {
2032
+ color:var(--ink-mute);
2033
+ }
2034
+
2035
+ [data-style='rokkit'] [data-upload-clear] {
2036
+ border-color:var(--paper-edge);color:var(--ink-soft);
2037
+ }
2038
+
2039
+ [data-style='rokkit'] [data-upload-clear]:hover {
2040
+ background-color:var(--paper-mute);color:var(--ink);
2041
+ }
2042
+
2043
+ /* =============================================================================
2044
+ File Rows
2045
+ ============================================================================= */
2046
+
2047
+ [data-style='rokkit'] [data-upload-file-status] {
2048
+ color:var(--ink-mute);
2049
+ }
2050
+
2051
+ [data-style='rokkit'] [data-upload-file-status]:hover {
2052
+ background-color:var(--paper-mute);
2053
+ }
2054
+
2055
+ /* =============================================================================
2056
+ File Elements
2057
+ ============================================================================= */
2058
+
2059
+ [data-style='rokkit'] [data-upload-file-icon] {
2060
+ color:var(--ink-soft);
2061
+ }
2062
+
2063
+ [data-style='rokkit'] [data-upload-file-size] {
2064
+ color:var(--ink-soft);
2065
+ }
2066
+
2067
+ /* =============================================================================
2068
+ Progress Bar
2069
+ ============================================================================= */
2070
+
2071
+ [data-style='rokkit'] [data-upload-bar] {
2072
+ background-color:var(--paper-mute);
2073
+ }
2074
+
2075
+ [data-style='rokkit'] [data-upload-fill] {
2076
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
2077
+ }
2078
+
2079
+ /* =============================================================================
2080
+ Status Colors
2081
+ ============================================================================= */
2082
+
2083
+ [data-style='rokkit'] [data-upload-file-status][data-status='uploading'] [data-upload-status] {
2084
+ color:var(--primary);
2085
+ }
2086
+
2087
+ [data-style='rokkit'] [data-upload-file-status][data-status='done'] [data-upload-status] {
2088
+ color:var(--success);
2089
+ }
2090
+
2091
+ [data-style='rokkit'] [data-upload-file-status][data-status='error'] [data-upload-status] {
2092
+ color:var(--danger);
2093
+ }
2094
+
2095
+ [data-style='rokkit'] [data-upload-file-status][data-status='pending'] [data-upload-status] {
2096
+ color:var(--ink-soft);
2097
+ }
2098
+
2099
+ /* Status-based file icon tinting */
2100
+ [data-style='rokkit'] [data-upload-file-status][data-status='done'] [data-upload-file-icon] {
2101
+ color:var(--success);
2102
+ }
2103
+
2104
+ [data-style='rokkit'] [data-upload-file-status][data-status='error'] [data-upload-file-icon] {
2105
+ color:var(--danger);
2106
+ }
2107
+
2108
+ /* =============================================================================
2109
+ Action Buttons
2110
+ ============================================================================= */
2111
+
2112
+ [data-style='rokkit'] [data-upload-actions] button {
2113
+ color:var(--ink-soft);
2114
+ }
2115
+
2116
+ [data-style='rokkit'] [data-upload-actions] button:hover {
2117
+ background-color:var(--paper-mute);color:var(--ink);
2118
+ }
2119
+
2120
+ [data-style='rokkit'] [data-upload-file-status][data-status='error'] [data-upload-retry]:hover {
2121
+ color:var(--primary);
2122
+ }
2123
+
2124
+ /* TableOfContents — Rokkit theme */
2125
+
2126
+ [data-style='rokkit'] [data-toc] [data-toc-label] {
2127
+ color:var(--ink-soft);
2128
+ }
2129
+
2130
+ [data-style='rokkit'] [data-toc] [data-toc-item] {
2131
+ color:var(--ink-soft);
2132
+ }
2133
+
2134
+ [data-style='rokkit'] [data-toc] [data-toc-item]:hover,
2135
+ [data-style='rokkit'] [data-toc] [data-toc-item][data-toc-focused] {
2136
+ outline:2px solid transparent;outline-offset:2px;color:var(--ink);
2137
+ }
2138
+
2139
+ [data-style='rokkit'] [data-toc] [data-toc-item][data-toc-active] {
2140
+ color:var(--primary);border-left-color:var(--primary);
2141
+ }
2142
+
2143
+ /**
2144
+ * Card - Rokkit Theme Styles
2145
+ *
2146
+ * Rich gradients, elevated shadows, and vibrant surface styling.
2147
+ */
2148
+
2149
+ /* =============================================================================
2150
+ Base Card Styles
2151
+ ============================================================================= */
2152
+
2153
+ [data-style='rokkit'] [data-card] {
2154
+ border-width:1px;--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 10px 15px -3px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 4px 6px -4px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--ink-soft);color:var(--ink);
2155
+ }
2156
+
2157
+ /* Interactive cards (buttons) */
2158
+ [data-style='rokkit'] [data-card][data-card-interactive] {
2159
+ cursor: pointer;
2160
+ transition:
2161
+ transform 0.2s ease,
2162
+ box-shadow 0.2s ease;
2163
+ }
2164
+
2165
+ [data-style='rokkit'] [data-card][data-card-interactive]:hover {
2166
+ --un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);
2167
+ transform: translateY(-2px);
2168
+ }
2169
+
2170
+ [data-style='rokkit'] [data-card][data-card-interactive]:active {
2171
+ --un-shadow:var(--un-shadow-inset) 0 10px 15px -3px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 4px 6px -4px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);
2172
+ transform: translateY(0);
2173
+ }
2174
+
2175
+ /* =============================================================================
2176
+ Card Sections
2177
+ ============================================================================= */
2178
+
2179
+ [data-style='rokkit'] [data-card-header] {
2180
+ border-bottom-width:1px;border-color:var(--paper-edge);
2181
+ }
2182
+
2183
+ [data-style='rokkit'] [data-card-body] {
2184
+ color:var(--ink-mute);
2185
+ }
2186
+
2187
+ [data-style='rokkit'] [data-card-footer] {
2188
+ border-top-width:1px;border-color:var(--paper-edge);color:var(--ink-mute);
2189
+ }
2190
+
2191
+ /* =============================================================================
2192
+ Focus States
2193
+ ============================================================================= */
2194
+
2195
+ [data-style='rokkit'] [data-card][data-card-interactive]:focus-visible {
2196
+ outline:2px solid transparent;outline-offset:2px;--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:var(--primary);
2197
+ }
2198
+
2199
+ /* =============================================================================
2200
+ Disabled State
2201
+ ============================================================================= */
2202
+
2203
+ [data-style='rokkit'] [data-card][data-card-interactive][data-disabled],
2204
+ [data-style='rokkit'] [data-card][data-card-interactive]:disabled {
2205
+ cursor:not-allowed;opacity:0.5;
2206
+ transform: none;
2207
+ }
2208
+
2209
+ /* =============================================================================
2210
+ Variants
2211
+ ============================================================================= */
2212
+
2213
+ /* Primary — gradient from primary to secondary */
2214
+ [data-style='rokkit'] [data-card][data-variant='primary'] {
2215
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 10px 15px -3px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 4px 6px -4px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--primary);color:var(--on-primary);
2216
+ }
2217
+
2218
+ [data-style='rokkit'] [data-card][data-variant='primary'] [data-card-header],
2219
+ [data-style='rokkit'] [data-card][data-variant='primary'] [data-card-footer] {
2220
+ border-color:color-mix(in srgb, var(--color-primary) calc(0.4 * 100%), transparent);
2221
+ }
2222
+
2223
+ [data-style='rokkit'] [data-card][data-variant='primary'] [data-card-body] {
2224
+ color:color-mix(in srgb, var(--color-primary-50) calc(0.8 * 100%), transparent);
2225
+ }[data-mode="dark"][data-style="rokkit"] [data-card][data-variant="primary"] [data-card-body],[data-mode="dark"] [data-style="rokkit"] [data-card][data-variant="primary"] [data-card-body]{color:color-mix(in srgb, var(--color-primary-50) calc(0.8 * 100%), transparent);}
2226
+
2227
+ /* Secondary — muted secondary surface */
2228
+ [data-style='rokkit'] [data-card][data-variant='secondary'] {
2229
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--accent);color:var(--on-primary);
2230
+ }
2231
+
2232
+ [data-style='rokkit'] [data-card][data-variant='secondary'] [data-card-header],
2233
+ [data-style='rokkit'] [data-card][data-variant='secondary'] [data-card-footer] {
2234
+ border-color:color-mix(in srgb, var(--color-accent) calc(0.4 * 100%), transparent);
2235
+ }
2236
+
2237
+ [data-style='rokkit'] [data-card][data-variant='secondary'] [data-card-body] {
2238
+ color:color-mix(in srgb, var(--color-primary-50) calc(0.8 * 100%), transparent);
2239
+ }[data-mode="dark"][data-style="rokkit"] [data-card][data-variant="secondary"] [data-card-body],[data-mode="dark"] [data-style="rokkit"] [data-card][data-variant="secondary"] [data-card-body]{color:color-mix(in srgb, var(--color-primary-50) calc(0.8 * 100%), transparent);}
2240
+
2241
+ /* Tertiary — elevated surface, no color accent */
2242
+ [data-style='rokkit'] [data-card][data-variant='tertiary'] {
2243
+ --un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);border-color:var(--paper-edge);color:var(--ink-mute);
2244
+ }
2245
+
2246
+ /**
2247
+ * Frame — rokkit theme.
2248
+ * Border + background decoration. Base file owns layout / spacing.
2249
+ */
2250
+
2251
+ [data-style='rokkit'] [data-frame] {
2252
+ border-width:1px;background-color:var(--paper);border-color:var(--paper-edge);
2253
+ }
2254
+
2255
+ [data-style='rokkit'] [data-frame-header] {
2256
+ border-bottom-width:1px;background-color:var(--paper-soft);border-color:var(--paper-edge);
2257
+ }
2258
+
2259
+ [data-style='rokkit'] [data-frame-footer] {
2260
+ background-color:var(--paper);border-color:var(--paper-edge);
2261
+ border-top: 1px dashed var(--paper-edge);
2262
+ }
2263
+
2264
+ /**
2265
+ * CodeBlock — rokkit theme.
2266
+ * Frame supplies the chrome; this adds typography + muted tokens for
2267
+ * the title row, lang chip, action buttons, and pre/code body.
2268
+ */
2269
+
2270
+ [data-style='rokkit'] [data-code-block-icon] {
2271
+ color:var(--ink-soft);
2272
+ }
2273
+
2274
+ [data-style='rokkit'] [data-code-block-filename] {
2275
+ font: 500 11.5px var(--font-mono);
2276
+ color:var(--ink-mute);
2277
+ }
2278
+
2279
+ [data-style='rokkit'] [data-code-block-lang] {
2280
+ font: 500 10px var(--font-mono);
2281
+ border-width:1px;color:var(--ink-soft);border-color:var(--paper-edge);
2282
+ }
2283
+
2284
+ [data-style='rokkit'] [data-code-block-actions] button {
2285
+ font: 500 11px var(--font-mono);
2286
+ color:var(--ink-soft);
2287
+ }
2288
+
2289
+ [data-style='rokkit'] [data-code-block-actions] button:hover {
2290
+ background-color:var(--paper-mute);color:var(--ink);
2291
+ }
2292
+
2293
+ [data-style='rokkit'] [data-code-block-body] pre {
2294
+ font: 400 12px/1.65 var(--font-mono);
2295
+ color:var(--ink);
2296
+ }
2297
+
2298
+ /**
2299
+ * Message - Rokkit Theme Styles
2300
+ */
2301
+
2302
+ /* Type colors */
2303
+ [data-style='rokkit'] [data-message-root][data-type='error'] {
2304
+ background-color:var(--error-soft);border-color:var(--error);color:var(--error);
2305
+ }
2306
+ [data-style='rokkit'] [data-message-root][data-type='error'] [data-message-icon] {
2307
+ color:var(--error);
2308
+ }
2309
+ [data-style='rokkit'] [data-message-root][data-type='error'] [data-message-dismiss] {
2310
+ color:var(--error);
2311
+ }
2312
+
2313
+ [data-style='rokkit'] [data-message-root][data-type='warning'] {
2314
+ background-color:var(--warning-soft);border-color:var(--warning);color:var(--warning);
2315
+ }
2316
+ [data-style='rokkit'] [data-message-root][data-type='warning'] [data-message-icon] {
2317
+ color:var(--warning);
2318
+ }
2319
+ [data-style='rokkit'] [data-message-root][data-type='warning'] [data-message-dismiss] {
2320
+ color:var(--warning);
2321
+ }
2322
+
2323
+ [data-style='rokkit'] [data-message-root][data-type='info'] {
2324
+ background-color:var(--info-soft);border-color:var(--info);color:var(--info);
2325
+ }
2326
+ [data-style='rokkit'] [data-message-root][data-type='info'] [data-message-icon] {
2327
+ color:var(--info);
2328
+ }
2329
+ [data-style='rokkit'] [data-message-root][data-type='info'] [data-message-dismiss] {
2330
+ color:var(--info);
2331
+ }
2332
+
2333
+ [data-style='rokkit'] [data-message-root][data-type='success'] {
2334
+ background-color:var(--success-soft);border-color:var(--success);color:var(--success);
2335
+ }
2336
+ [data-style='rokkit'] [data-message-root][data-type='success'] [data-message-icon] {
2337
+ color:var(--success);
2338
+ }
2339
+ [data-style='rokkit'] [data-message-root][data-type='success'] [data-message-dismiss] {
2340
+ color:var(--success);
2341
+ }
2342
+
2343
+ /**
2344
+ * StatusList - Rokkit Theme Styles
2345
+ */
2346
+
2347
+ /* ── @rokkit/ui StatusList: icon colors by status (pass/fail/warn/unknown) ── */
2348
+
2349
+ [data-style='rokkit'] [data-status-item][data-status='pass'] span {
2350
+ color:var(--success);
2351
+ }
2352
+ [data-style='rokkit'] [data-status-item][data-status='fail'] span {
2353
+ color:var(--error);
2354
+ }
2355
+ [data-style='rokkit'] [data-status-item][data-status='warn'] span {
2356
+ color:var(--warning);
2357
+ }
2358
+ [data-style='rokkit'] [data-status-item][data-status='unknown'] span {
2359
+ color:var(--paper-edge);
2360
+ }
2361
+
2362
+ /* ── @rokkit/ui StatusList: text color by status ── */
2363
+
2364
+ [data-style='rokkit'] [data-status-item][data-status='pass'] {
2365
+ color:var(--success);
2366
+ }
2367
+ [data-style='rokkit'] [data-status-item][data-status='fail'] {
2368
+ color:var(--error);
2369
+ }
2370
+ [data-style='rokkit'] [data-status-item][data-status='warn'] {
2371
+ color:var(--warning);
2372
+ }
2373
+ [data-style='rokkit'] [data-status-item][data-status='unknown'] {
2374
+ color:var(--ink-soft);
2375
+ }
2376
+
2377
+ /* ── @rokkit/forms StatusList: group headers by severity ── */
2378
+
2379
+ [data-style='rokkit'] [data-status-group][data-severity='error'] [data-status-header] {
2380
+ color:var(--error);
2381
+ }
2382
+ [data-style='rokkit'] [data-status-group][data-severity='warning'] [data-status-header] {
2383
+ color:var(--warning);
2384
+ }
2385
+ [data-style='rokkit'] [data-status-group][data-severity='info'] [data-status-header] {
2386
+ color:var(--info);
2387
+ }
2388
+ [data-style='rokkit'] [data-status-group][data-severity='success'] [data-status-header] {
2389
+ color:var(--success);
2390
+ }
2391
+
2392
+ /* ── @rokkit/forms StatusList: item colors by severity ── */
2393
+
2394
+ [data-style='rokkit'] [data-status-item][data-status='error'] {
2395
+ color:var(--error);
2396
+ }
2397
+ [data-style='rokkit'] [data-status-item][data-status='warning'] {
2398
+ color:var(--warning);
2399
+ }
2400
+ [data-style='rokkit'] [data-status-item][data-status='info'] {
2401
+ color:var(--info);
2402
+ }
2403
+ [data-style='rokkit'] [data-status-item][data-status='success'] {
2404
+ color:var(--success);
2405
+ }
2406
+
2407
+ /* Count badge */
2408
+ [data-style='rokkit'] [data-status-count] {
2409
+ font-weight:600;background-color:var(--paper-mute);color:var(--ink-mute);
2410
+ }
2411
+
2412
+ /* StepIndicator — Rokkit theme (gradients + glows) */
2413
+
2414
+ /* ── Number circles ── */
2415
+
2416
+ [data-style='rokkit'] [data-step-item][data-step-state='complete'] [data-step-number] {
2417
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));border-color:var(--primary);color:var(--on-primary);
2418
+ }
2419
+
2420
+ [data-style='rokkit'] [data-step-item][data-step-state='current'] [data-step-number] {
2421
+ --un-ring-width:3px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-color:color-mix(in srgb, var(--color-primary) calc(0.2 * 100%), transparent);background-color:var(--paper-mute);border-color:var(--primary);color:var(--primary);
2422
+ }
2423
+
2424
+ [data-style='rokkit'] [data-step-item][data-step-state='upcoming'] [data-step-number] {
2425
+ background-color:var(--paper-soft);border-color:var(--paper-mute);color:var(--ink-soft);
2426
+ }
2427
+
2428
+ /* ── Labels ── */
2429
+
2430
+ [data-style='rokkit'] [data-step-item][data-step-state='complete'] [data-step-label] {
2431
+ color:var(--primary);
2432
+ }
2433
+
2434
+ [data-style='rokkit'] [data-step-item][data-step-state='current'] [data-step-label] {
2435
+ font-weight:600;color:var(--ink);
2436
+ }
2437
+
2438
+ [data-style='rokkit'] [data-step-item][data-step-state='upcoming'] [data-step-label] {
2439
+ color:var(--ink-soft);
2440
+ }
2441
+
2442
+ /* ── Connector lines ── */
2443
+
2444
+ [data-style='rokkit'] [data-step-item][data-step-state='complete']::after {
2445
+ background-color:var(--primary);
2446
+ }
2447
+
2448
+ [data-style='rokkit'] [data-step-item][data-step-state='current']::after,
2449
+ [data-style='rokkit'] [data-step-item][data-step-state='upcoming']::after {
2450
+ background-color:var(--paper-mute);
2451
+ }
2452
+
2453
+ /**
2454
+ * Chart - Rokkit Theme Styles
2455
+ */
2456
+
2457
+ [data-style='rokkit'] [data-chart-axis-line],
2458
+ [data-style='rokkit'] [data-chart-tick] line {
2459
+ stroke:var(--paper-edge);
2460
+ }
2461
+
2462
+ [data-style='rokkit'] [data-chart-tick-label] {
2463
+ fill:var(--ink-soft);
2464
+ }
2465
+
2466
+ [data-style='rokkit'] [data-chart-grid-line] {
2467
+ stroke:var(--paper-mute);
2468
+ stroke-dasharray: 4 4;
2469
+ stroke-opacity: 0.5;
2470
+ }
2471
+
2472
+ [data-style='rokkit'] [data-chart-legend-label] {
2473
+ fill:var(--ink-soft);
2474
+ }
2475
+
2476
+ [data-style='rokkit'] [data-chart-legend-item]:hover {
2477
+ color:var(--ink);
2478
+ }
2479
+
2480
+ [data-style='rokkit'] [data-plot-element='bar'][data-dimmed],
2481
+ [data-style='rokkit'] [data-plot-element='point'][data-dimmed],
2482
+ [data-style='rokkit'] [data-plot-element='arc'][data-dimmed],
2483
+ [data-style='rokkit'] [data-plot-element='line'][data-dimmed],
2484
+ [data-style='rokkit'] [data-plot-element='area'][data-dimmed] {
2485
+ opacity: 0.15;
2486
+ }
2487
+
2488
+ [data-style='rokkit'] [data-facet-title] {
2489
+ color:var(--ink-soft);
2490
+ }
2491
+
2492
+ /**
2493
+ * Swatch — Rokkit Theme
2494
+ * Selected ring uses primary→secondary gradient, matching input focus ring.
2495
+ */
2496
+
2497
+ [data-style='rokkit'] [data-swatch-item][data-selected] {
2498
+ --un-gradient-from-position:0%;--un-gradient-from:color-mix(in srgb, var(--color-primary) calc(1 * 100%), transparent) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(255 255 255 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);--un-gradient-to-position:100%;--un-gradient-to:color-mix(in srgb, var(--color-accent) calc(1 * 100%), transparent) var(--un-gradient-to-position);--un-gradient-shape:to bottom right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));
2499
+ }
2500
+
2501
+ [data-style='rokkit']
2502
+ [data-swatch-item]:hover:not(:disabled):not([data-disabled]):not([data-selected]),
2503
+ [data-style='rokkit']
2504
+ [data-swatch-item]:focus-visible:not(:disabled):not([data-disabled]):not([data-selected]) {
2505
+ outline-color:var(--primary);
2506
+ }
2507
+
2508
+ [data-style='rokkit'] [data-swatch-item][data-selected]:focus-visible {
2509
+ outline-color:var(--primary);
2510
+ outline-offset: 3px;
2511
+ }
2512
+
2513
+ /**
2514
+ * PaletteManager — Rokkit Theme
2515
+ * Color layer for the headless base structure in base/palette-manager.css.
2516
+ */
2517
+
2518
+ /* Container */
2519
+ [data-style='rokkit'] [data-palette-manager] {
2520
+ background-color:var(--paper);color:var(--ink);border-color:var(--paper-edge);
2521
+ }
2522
+
2523
+ /* Section labels */
2524
+ [data-style='rokkit'] [data-palette-presets-label],
2525
+ [data-style='rokkit'] [data-palette-custom-label] {
2526
+ color:var(--ink-mute);
2527
+ }
2528
+
2529
+ /* Presets */
2530
+ [data-style='rokkit'] [data-palette-preset] {
2531
+ background-color:var(--paper-soft);color:var(--ink);border-color:var(--paper-edge);
2532
+ }
2533
+
2534
+ [data-style='rokkit'] [data-palette-preset]:hover {
2535
+ background-color:var(--paper-mute);
2536
+ }
2537
+
2538
+ [data-style='rokkit'] [data-palette-preset][data-active] {
2539
+ color:var(--primary);border-color:var(--primary);
2540
+ }
2541
+
2542
+ [data-style='rokkit'] [data-palette-preset-swatch] {
2543
+ border-color:var(--paper-edge);
2544
+ }
2545
+
2546
+ /* Custom palettes */
2547
+ [data-style='rokkit'] [data-palette-custom-item] {
2548
+ background-color:var(--paper-soft);color:var(--ink-mute);border-color:var(--paper-edge);
2549
+ }
2550
+
2551
+ [data-style='rokkit'] [data-palette-custom-item]:hover {
2552
+ background-color:var(--paper-mute);color:var(--ink);
2553
+ }
2554
+
2555
+ [data-style='rokkit'] [data-palette-custom-item][data-active] {
2556
+ color:var(--primary);border-color:var(--primary);
2557
+ }
2558
+
2559
+ /* Role rows */
2560
+ [data-style='rokkit'] [data-palette-role-label] {
2561
+ color:var(--ink);
2562
+ }
2563
+
2564
+ /* Color pickers */
2565
+ [data-style='rokkit'] [data-palette-color-select],
2566
+ [data-style='rokkit'] [data-palette-color-input] {
2567
+ background-color:var(--paper-soft);color:var(--ink);border-color:var(--paper-edge);
2568
+ }
2569
+
2570
+ [data-style='rokkit'] [data-palette-color-input]::placeholder {
2571
+ color:var(--ink-faint);
2572
+ }
2573
+
2574
+ [data-style='rokkit'] [data-palette-color-select]:focus-visible,
2575
+ [data-style='rokkit'] [data-palette-color-input]:focus-visible {
2576
+ outline-color:var(--focus-ring);border-color:var(--focus-ring);
2577
+ }
2578
+
2579
+ /* Hex toggle */
2580
+ [data-style='rokkit'] [data-palette-hex-toggle] {
2581
+ background-color:var(--paper-soft);color:var(--ink-mute);border-color:var(--paper-edge);
2582
+ }
2583
+
2584
+ [data-style='rokkit'] [data-palette-hex-toggle]:hover {
2585
+ background-color:var(--paper-mute);color:var(--ink);
2586
+ }
2587
+
2588
+ /* Shade ramp */
2589
+ [data-style='rokkit'] [data-palette-shades] {
2590
+ border-color:var(--paper-edge);
2591
+ }
2592
+
2593
+ /* Actions — Save = secondary / outlined */
2594
+ [data-style='rokkit'] [data-palette-save] {
2595
+ background-color:var(--paper-soft);color:var(--ink-mute);border-color:var(--paper-edge);
2596
+ }
2597
+
2598
+ [data-style='rokkit'] [data-palette-save]:hover {
2599
+ background-color:var(--paper-mute);color:var(--ink);
2600
+ }
2601
+
2602
+ /* Actions — Apply = primary */
2603
+ [data-style='rokkit'] [data-palette-apply] {
2604
+ background-color:var(--primary);color:var(--on-primary);border-color:var(--primary);
2605
+ }
2606
+
2607
+ [data-style='rokkit'] [data-palette-apply]:hover {
2608
+ background-color:var(--accent);border-color:var(--accent);
2609
+ }
2610
+
2611
+ /**
2612
+ * ProgressBar - Rokkit Theme Styles
2613
+ *
2614
+ * Default track + primary fill colors.
2615
+ */
2616
+
2617
+ [data-style='rokkit'] [data-progress] {
2618
+ background-color:var(--paper-mute);
2619
+ }
2620
+
2621
+ [data-style='rokkit'] [data-progress-bar] {
2622
+ background-color:var(--primary);
2623
+ }
2624
+
2625
+ /**
2626
+ * Pill - Rokkit Theme Styles
2627
+ *
2628
+ * Muted surface chip with soft remove affordance.
2629
+ */
2630
+
2631
+ [data-style='rokkit'] [data-pill] {
2632
+ background-color:var(--paper-mute);color:var(--ink);
2633
+ }
2634
+
2635
+ [data-style='rokkit'] [data-pill-remove] {
2636
+ color:var(--ink-soft);
2637
+ }
2638
+
2639
+ [data-style='rokkit'] [data-pill-remove]:hover:not(:disabled) {
2640
+ color:var(--ink);
2641
+ }
2642
+
2643
+ /**
2644
+ * Rating - Rokkit Theme Styles
2645
+ *
2646
+ * Faint empty icons, warning-toned filled icons.
2647
+ */
2648
+
2649
+ [data-style='rokkit'] [data-rating-icon] {
2650
+ color:var(--ink-faint);
2651
+ }
2652
+
2653
+ [data-style='rokkit'] [data-rating-item][data-filled] [data-rating-icon] {
2654
+ color:var(--warning);
2655
+ }
2656
+
2657
+ /**
2658
+ * Divider - Rokkit Theme Styles
2659
+ */
2660
+
2661
+ [data-style='rokkit'] [data-divider][data-orientation='horizontal']::before,
2662
+ [data-style='rokkit'] [data-divider][data-orientation='horizontal']::after {
2663
+ background-color:var(--paper-edge);
2664
+ }
2665
+
2666
+ [data-style='rokkit'] [data-divider][data-orientation='vertical']::before,
2667
+ [data-style='rokkit'] [data-divider][data-orientation='vertical']::after {
2668
+ background-color:var(--paper-edge);
2669
+ }
2670
+
2671
+ /* No-label horizontal divider — color the element itself */
2672
+ [data-style='rokkit'] [data-divider][data-orientation='horizontal']:not(:has([data-divider-label])) {
2673
+ background-color:var(--paper-edge);
2674
+ }
2675
+
2676
+ [data-style='rokkit'] [data-divider][data-orientation='vertical']:not(:has([data-divider-label])) {
2677
+ background-color:var(--paper-edge);
2678
+ }
2679
+
2680
+ [data-style='rokkit'] [data-divider-label] {
2681
+ color:var(--ink-soft);
2682
+ }
2683
+
2684
+ /**
2685
+ * Badge - Rokkit Theme Styles
2686
+ */
2687
+
2688
+ /* Default variant */
2689
+ [data-style='rokkit'] [data-badge][data-variant='default'],
2690
+ [data-style='rokkit'] [data-badge]:not([data-variant]) {
2691
+ background-color:var(--ink-soft);color:var(--paper-soft);
2692
+ }
2693
+
2694
+ /* Primary */
2695
+ [data-style='rokkit'] [data-badge][data-variant='primary'] {
2696
+ background-color:var(--primary);color:var(--on-primary);
2697
+ }
2698
+
2699
+ /* Success */
2700
+ [data-style='rokkit'] [data-badge][data-variant='success'] {
2701
+ --un-text-opacity:1;color:color-mix(in srgb, var(--color-success-50) calc(var(--un-text-opacity) * 100%), transparent);background-color:var(--success);
2702
+ }[data-mode="dark"][data-style="rokkit"] [data-badge][data-variant="success"],[data-mode="dark"] [data-style="rokkit"] [data-badge][data-variant="success"]{--un-text-opacity:1;color:color-mix(in srgb, var(--color-success-50) calc(var(--un-text-opacity) * 100%), transparent);}
2703
+
2704
+ /* Warning */
2705
+ [data-style='rokkit'] [data-badge][data-variant='warning'] {
2706
+ --un-text-opacity:1;color:color-mix(in srgb, var(--color-warning-50) calc(var(--un-text-opacity) * 100%), transparent);background-color:var(--warning);
2707
+ }[data-mode="dark"][data-style="rokkit"] [data-badge][data-variant="warning"],[data-mode="dark"] [data-style="rokkit"] [data-badge][data-variant="warning"]{--un-text-opacity:1;color:color-mix(in srgb, var(--color-warning-50) calc(var(--un-text-opacity) * 100%), transparent);}
2708
+
2709
+ /* Error */
2710
+ [data-style='rokkit'] [data-badge][data-variant='error'] {
2711
+ --un-text-opacity:1;color:color-mix(in srgb, var(--color-error-50) calc(var(--un-text-opacity) * 100%), transparent);background-color:var(--error);
2712
+ }[data-mode="dark"][data-style="rokkit"] [data-badge][data-variant="error"],[data-mode="dark"] [data-style="rokkit"] [data-badge][data-variant="error"]{--un-text-opacity:1;color:color-mix(in srgb, var(--color-error-50) calc(var(--un-text-opacity) * 100%), transparent);}
2713
+
2714
+ /**
2715
+ * Avatar - Rokkit Theme Styles
2716
+ */
2717
+
2718
+ [data-style='rokkit'] [data-avatar] {
2719
+ background-color:var(--paper-edge);color:var(--ink-mute);
2720
+ }
2721
+
2722
+ /* Status dot colors */
2723
+ [data-style='rokkit'] [data-avatar-status][data-status='online'] {
2724
+ background-color:var(--success);
2725
+ }
2726
+
2727
+ [data-style='rokkit'] [data-avatar-status][data-status='offline'] {
2728
+ background-color:var(--ink-soft);
2729
+ }
2730
+
2731
+ [data-style='rokkit'] [data-avatar-status][data-status='away'] {
2732
+ background-color:var(--warning);
2733
+ }
2734
+
2735
+ [data-style='rokkit'] [data-avatar-status][data-status='busy'] {
2736
+ background-color:var(--error);
2737
+ }
2738
+
2739
+ /* Status dot border matches surrounding background — uses surface-z1 as a neutral */
2740
+ [data-style='rokkit'] [data-avatar-status] {
2741
+ border-color:var(--paper-soft);
2742
+ }
2743
+
2744
+ /**
2745
+ * Tooltip - Rokkit Theme Styles
2746
+ */
2747
+
2748
+ [data-style='rokkit'] [data-tooltip-content] {
2749
+ background-color:var(--ink-mute);color:var(--paper-soft);
2750
+ }
2751
+
2752
+ /**
2753
+ * CommandPalette - Rokkit Theme Styles
2754
+ *
2755
+ * Rich gradients and glowing borders.
2756
+ */
2757
+
2758
+ [data-style='rokkit'] [data-command-backdrop] {
2759
+ background: rgb(0 0 0 / 0.4);
2760
+ }
2761
+
2762
+ [data-style='rokkit'] [data-command-palette] {
2763
+ border-width:1px;background-color:var(--paper-soft);border-color:var(--paper-edge);
2764
+ }
2765
+
2766
+ [data-style='rokkit'] [data-command-input] {
2767
+ color:var(--ink);
2768
+ }[data-style='rokkit'] [data-command-input]::placeholder{color:var(--ink-faint);}
2769
+
2770
+ [data-style='rokkit'] [data-command-item] {
2771
+ color:var(--ink);
2772
+ }
2773
+
2774
+ [data-style='rokkit'] [data-command-item][data-active] {
2775
+ background-color:var(--primary);color:var(--on-primary);
2776
+ }
2777
+
2778
+ [data-style='rokkit'] [data-command-shortcut] {
2779
+ color:var(--ink-mute);
2780
+ }
2781
+
2782
+ [data-style='rokkit'] [data-command-label] {
2783
+ font-size:0.75rem;line-height:1rem;font-weight:500;color:var(--ink-soft);
2784
+ }
2785
+
2786
+ [data-style='rokkit'] [data-command-empty] {
2787
+ color:var(--ink-mute);
2788
+ }
2789
+