@rokkit/themes 1.1.7 → 1.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/package.json +3 -3
  2. package/src/base/index.css +1 -0
  3. package/src/base/palette-manager.css +244 -0
  4. package/src/base/pill.css +3 -2
  5. package/src/base/stepper.css +6 -0
  6. package/src/base/toggle.css +47 -0
  7. package/src/frosted/grid.css +26 -0
  8. package/src/frosted/index.css +6 -0
  9. package/src/frosted/palette-manager.css +97 -0
  10. package/src/frosted/pill.css +17 -0
  11. package/src/frosted/progress.css +13 -0
  12. package/src/frosted/rating.css +13 -0
  13. package/src/frosted/table.css +10 -0
  14. package/src/frosted/toggle.css +26 -0
  15. package/src/frosted/tooltip.css +7 -0
  16. package/src/material/grid.css +26 -0
  17. package/src/material/index.css +6 -0
  18. package/src/material/palette-manager.css +97 -0
  19. package/src/material/pill.css +17 -0
  20. package/src/material/progress.css +13 -0
  21. package/src/material/rating.css +13 -0
  22. package/src/material/table.css +10 -0
  23. package/src/material/toggle.css +26 -0
  24. package/src/material/tooltip.css +7 -0
  25. package/src/minimal/grid.css +26 -0
  26. package/src/minimal/index.css +6 -0
  27. package/src/minimal/palette-manager.css +97 -0
  28. package/src/minimal/pill.css +17 -0
  29. package/src/minimal/progress.css +13 -0
  30. package/src/minimal/rating.css +13 -0
  31. package/src/minimal/table.css +10 -0
  32. package/src/minimal/toggle.css +26 -0
  33. package/src/minimal/tooltip.css +7 -0
  34. package/src/rokkit/index.css +4 -0
  35. package/src/rokkit/palette-manager.css +97 -0
  36. package/src/rokkit/pill.css +17 -0
  37. package/src/rokkit/progress.css +13 -0
  38. package/src/rokkit/rating.css +13 -0
  39. package/src/rokkit/table.css +10 -0
  40. package/src/rokkit/toggle.css +26 -0
  41. package/src/zen-sumi/grid.css +26 -0
  42. package/src/zen-sumi/index.css +6 -0
  43. package/src/zen-sumi/palette-manager.css +97 -0
  44. package/src/zen-sumi/pill.css +17 -0
  45. package/src/zen-sumi/progress.css +13 -0
  46. package/src/zen-sumi/rating.css +13 -0
  47. package/src/zen-sumi/table.css +10 -0
  48. package/src/zen-sumi/toggle.css +26 -0
  49. package/src/zen-sumi/tooltip.css +7 -0
@@ -0,0 +1,97 @@
1
+ /**
2
+ * PaletteManager — Material Theme
3
+ * Color layer for the headless base structure in base/palette-manager.css.
4
+ */
5
+
6
+ /* Container */
7
+ [data-style='material'] [data-palette-manager] {
8
+ @apply bg-paper text-ink border-paper-edge;
9
+ }
10
+
11
+ /* Section labels */
12
+ [data-style='material'] [data-palette-presets-label],
13
+ [data-style='material'] [data-palette-custom-label] {
14
+ @apply text-ink-mute;
15
+ }
16
+
17
+ /* Presets */
18
+ [data-style='material'] [data-palette-preset] {
19
+ @apply bg-paper-soft text-ink border-paper-edge;
20
+ }
21
+
22
+ [data-style='material'] [data-palette-preset]:hover {
23
+ @apply bg-paper-mute;
24
+ }
25
+
26
+ [data-style='material'] [data-palette-preset][data-active] {
27
+ @apply text-primary border-primary;
28
+ }
29
+
30
+ [data-style='material'] [data-palette-preset-swatch] {
31
+ @apply border-paper-edge;
32
+ }
33
+
34
+ /* Custom palettes */
35
+ [data-style='material'] [data-palette-custom-item] {
36
+ @apply bg-paper-soft text-ink-mute border-paper-edge;
37
+ }
38
+
39
+ [data-style='material'] [data-palette-custom-item]:hover {
40
+ @apply bg-paper-mute text-ink;
41
+ }
42
+
43
+ [data-style='material'] [data-palette-custom-item][data-active] {
44
+ @apply text-primary border-primary;
45
+ }
46
+
47
+ /* Role rows */
48
+ [data-style='material'] [data-palette-role-label] {
49
+ @apply text-ink;
50
+ }
51
+
52
+ /* Color pickers */
53
+ [data-style='material'] [data-palette-color-select],
54
+ [data-style='material'] [data-palette-color-input] {
55
+ @apply bg-paper-soft text-ink border-paper-edge;
56
+ }
57
+
58
+ [data-style='material'] [data-palette-color-input]::placeholder {
59
+ @apply text-ink-faint;
60
+ }
61
+
62
+ [data-style='material'] [data-palette-color-select]:focus-visible,
63
+ [data-style='material'] [data-palette-color-input]:focus-visible {
64
+ @apply outline-focus-ring border-focus-ring;
65
+ }
66
+
67
+ /* Hex toggle */
68
+ [data-style='material'] [data-palette-hex-toggle] {
69
+ @apply bg-paper-soft text-ink-mute border-paper-edge;
70
+ }
71
+
72
+ [data-style='material'] [data-palette-hex-toggle]:hover {
73
+ @apply bg-paper-mute text-ink;
74
+ }
75
+
76
+ /* Shade ramp */
77
+ [data-style='material'] [data-palette-shades] {
78
+ @apply border-paper-edge;
79
+ }
80
+
81
+ /* Actions — Save = secondary / outlined */
82
+ [data-style='material'] [data-palette-save] {
83
+ @apply bg-paper-soft text-ink-mute border-paper-edge;
84
+ }
85
+
86
+ [data-style='material'] [data-palette-save]:hover {
87
+ @apply bg-paper-mute text-ink;
88
+ }
89
+
90
+ /* Actions — Apply = primary */
91
+ [data-style='material'] [data-palette-apply] {
92
+ @apply bg-primary text-on-primary border-primary;
93
+ }
94
+
95
+ [data-style='material'] [data-palette-apply]:hover {
96
+ @apply bg-accent border-accent;
97
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Pill - Material Theme Styles
3
+ *
4
+ * Muted surface chip with soft remove affordance.
5
+ */
6
+
7
+ [data-style='material'] [data-pill] {
8
+ @apply bg-paper-mute text-ink;
9
+ }
10
+
11
+ [data-style='material'] [data-pill-remove] {
12
+ @apply text-ink-soft;
13
+ }
14
+
15
+ [data-style='material'] [data-pill-remove]:hover:not(:disabled) {
16
+ @apply text-ink;
17
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * ProgressBar - Material Theme Styles
3
+ *
4
+ * Default track + primary fill colors.
5
+ */
6
+
7
+ [data-style='material'] [data-progress] {
8
+ @apply bg-paper-mute;
9
+ }
10
+
11
+ [data-style='material'] [data-progress-bar] {
12
+ @apply bg-primary;
13
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Rating - Material Theme Styles
3
+ *
4
+ * Faint empty icons, warning-toned filled icons.
5
+ */
6
+
7
+ [data-style='material'] [data-rating-icon] {
8
+ @apply text-ink-faint;
9
+ }
10
+
11
+ [data-style='material'] [data-rating-item][data-filled] [data-rating-icon] {
12
+ @apply text-warning;
13
+ }
@@ -62,6 +62,16 @@
62
62
  @apply bg-primary text-primary bg-none;
63
63
  }
64
64
 
65
+ /* Keyboard-focused row + synthesised TreeTable group row */
66
+ [data-style='material'] [data-table] tr[data-table-row][data-focused] {
67
+ @apply bg-paper-mute;
68
+ }
69
+
70
+ [data-style='material'] [data-table] tr[data-table-row][data-group] {
71
+ @apply bg-paper-soft text-ink;
72
+ font-weight: 500;
73
+ }
74
+
65
75
  /* =============================================================================
66
76
  Striped
67
77
  ============================================================================= */
@@ -46,3 +46,29 @@
46
46
  [data-style='material'] [data-toggle-option][data-selected='true'] [data-toggle-icon] {
47
47
  @apply text-on-primary;
48
48
  }
49
+
50
+ /* =============================================================================
51
+ Button Variant — single cycling control (variant-agnostic color)
52
+ Higher specificity than the [data-toggle] container rule above, so it
53
+ neutralises the group-pill chrome and gives the single button the same
54
+ flipping icon treatment an unselected option gets.
55
+ ============================================================================= */
56
+
57
+ [data-style='material'] [data-toggle][data-toggle-variant='button'] {
58
+ @apply border-transparent bg-transparent text-ink-soft;
59
+ background-image: none;
60
+ }
61
+
62
+ [data-style='material'] [data-toggle][data-toggle-variant='button']:hover:not(:disabled):not([data-toggle-disabled='true']),
63
+ [data-style='material'] [data-toggle][data-toggle-variant='button']:focus-visible:not(:disabled):not([data-toggle-disabled='true']) {
64
+ @apply bg-paper-mute text-ink-mute;
65
+ }
66
+
67
+ [data-style='material'] [data-toggle][data-toggle-variant='button'] [data-toggle-icon] {
68
+ @apply text-ink-soft;
69
+ }
70
+
71
+ [data-style='material'] [data-toggle][data-toggle-variant='button']:hover:not(:disabled) [data-toggle-icon],
72
+ [data-style='material'] [data-toggle][data-toggle-variant='button']:focus-visible:not(:disabled) [data-toggle-icon] {
73
+ @apply text-ink-mute;
74
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Tooltip - Material Theme Styles
3
+ */
4
+
5
+ [data-style='material'] [data-tooltip-content] {
6
+ @apply bg-ink text-paper;
7
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Grid - Minimal Theme Styles
3
+ *
4
+ * Tile borders, hover/focus effects, selection highlight.
5
+ */
6
+
7
+ [data-style='minimal'] [data-grid-item] {
8
+ @apply border-paper-edge text-ink-mute;
9
+ }
10
+
11
+ [data-style='minimal'] [data-grid-item]:hover:not(:disabled):not([data-disabled]),
12
+ [data-style='minimal'] [data-grid-item]:focus:not(:disabled):not([data-disabled]) {
13
+ @apply border-ink-soft bg-paper-mute text-ink;
14
+ }
15
+
16
+ [data-style='minimal'] [data-grid-item][data-active] {
17
+ @apply border-primary text-primary;
18
+ }
19
+
20
+ [data-style='minimal'] [data-grid-item] [data-item-icon] {
21
+ @apply text-ink-soft;
22
+ }
23
+
24
+ [data-style='minimal'] [data-grid-item][data-active] [data-item-icon] {
25
+ @apply text-primary;
26
+ }
@@ -18,6 +18,8 @@
18
18
  @import './floating-action.css';
19
19
  @import './input.css';
20
20
  @import './table.css';
21
+ @import './grid.css';
22
+ @import './tooltip.css';
21
23
  @import './search-filter.css';
22
24
  @import './range.css';
23
25
  @import './timeline.css';
@@ -31,3 +33,7 @@
31
33
  @import './step-indicator.css';
32
34
  @import './chart.css';
33
35
  @import './swatch.css';
36
+ @import './palette-manager.css';
37
+ @import './progress.css';
38
+ @import './pill.css';
39
+ @import './rating.css';
@@ -0,0 +1,97 @@
1
+ /**
2
+ * PaletteManager — Minimal Theme
3
+ * Color layer for the headless base structure in base/palette-manager.css.
4
+ */
5
+
6
+ /* Container */
7
+ [data-style='minimal'] [data-palette-manager] {
8
+ @apply bg-paper text-ink border-paper-edge;
9
+ }
10
+
11
+ /* Section labels */
12
+ [data-style='minimal'] [data-palette-presets-label],
13
+ [data-style='minimal'] [data-palette-custom-label] {
14
+ @apply text-ink-mute;
15
+ }
16
+
17
+ /* Presets */
18
+ [data-style='minimal'] [data-palette-preset] {
19
+ @apply bg-paper-soft text-ink border-paper-edge;
20
+ }
21
+
22
+ [data-style='minimal'] [data-palette-preset]:hover {
23
+ @apply bg-paper-mute;
24
+ }
25
+
26
+ [data-style='minimal'] [data-palette-preset][data-active] {
27
+ @apply text-primary border-primary;
28
+ }
29
+
30
+ [data-style='minimal'] [data-palette-preset-swatch] {
31
+ @apply border-paper-edge;
32
+ }
33
+
34
+ /* Custom palettes */
35
+ [data-style='minimal'] [data-palette-custom-item] {
36
+ @apply bg-paper-soft text-ink-mute border-paper-edge;
37
+ }
38
+
39
+ [data-style='minimal'] [data-palette-custom-item]:hover {
40
+ @apply bg-paper-mute text-ink;
41
+ }
42
+
43
+ [data-style='minimal'] [data-palette-custom-item][data-active] {
44
+ @apply text-primary border-primary;
45
+ }
46
+
47
+ /* Role rows */
48
+ [data-style='minimal'] [data-palette-role-label] {
49
+ @apply text-ink;
50
+ }
51
+
52
+ /* Color pickers */
53
+ [data-style='minimal'] [data-palette-color-select],
54
+ [data-style='minimal'] [data-palette-color-input] {
55
+ @apply bg-paper-soft text-ink border-paper-edge;
56
+ }
57
+
58
+ [data-style='minimal'] [data-palette-color-input]::placeholder {
59
+ @apply text-ink-faint;
60
+ }
61
+
62
+ [data-style='minimal'] [data-palette-color-select]:focus-visible,
63
+ [data-style='minimal'] [data-palette-color-input]:focus-visible {
64
+ @apply outline-focus-ring border-focus-ring;
65
+ }
66
+
67
+ /* Hex toggle */
68
+ [data-style='minimal'] [data-palette-hex-toggle] {
69
+ @apply bg-paper-soft text-ink-mute border-paper-edge;
70
+ }
71
+
72
+ [data-style='minimal'] [data-palette-hex-toggle]:hover {
73
+ @apply bg-paper-mute text-ink;
74
+ }
75
+
76
+ /* Shade ramp */
77
+ [data-style='minimal'] [data-palette-shades] {
78
+ @apply border-paper-edge;
79
+ }
80
+
81
+ /* Actions — Save = secondary / outlined */
82
+ [data-style='minimal'] [data-palette-save] {
83
+ @apply bg-paper-soft text-ink-mute border-paper-edge;
84
+ }
85
+
86
+ [data-style='minimal'] [data-palette-save]:hover {
87
+ @apply bg-paper-mute text-ink;
88
+ }
89
+
90
+ /* Actions — Apply = primary */
91
+ [data-style='minimal'] [data-palette-apply] {
92
+ @apply bg-primary text-on-primary border-primary;
93
+ }
94
+
95
+ [data-style='minimal'] [data-palette-apply]:hover {
96
+ @apply bg-accent border-accent;
97
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Pill - Minimal Theme Styles
3
+ *
4
+ * Muted surface chip with soft remove affordance.
5
+ */
6
+
7
+ [data-style='minimal'] [data-pill] {
8
+ @apply bg-paper-mute text-ink;
9
+ }
10
+
11
+ [data-style='minimal'] [data-pill-remove] {
12
+ @apply text-ink-soft;
13
+ }
14
+
15
+ [data-style='minimal'] [data-pill-remove]:hover:not(:disabled) {
16
+ @apply text-ink;
17
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * ProgressBar - Minimal Theme Styles
3
+ *
4
+ * Default track + primary fill colors.
5
+ */
6
+
7
+ [data-style='minimal'] [data-progress] {
8
+ @apply bg-paper-mute;
9
+ }
10
+
11
+ [data-style='minimal'] [data-progress-bar] {
12
+ @apply bg-primary;
13
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Rating - Minimal Theme Styles
3
+ *
4
+ * Faint empty icons, warning-toned filled icons.
5
+ */
6
+
7
+ [data-style='minimal'] [data-rating-icon] {
8
+ @apply text-ink-faint;
9
+ }
10
+
11
+ [data-style='minimal'] [data-rating-item][data-filled] [data-rating-icon] {
12
+ @apply text-warning;
13
+ }
@@ -60,6 +60,16 @@
60
60
  @apply text-primary border-l-primary border-l-2 bg-none;
61
61
  }
62
62
 
63
+ /* Keyboard-focused row + synthesised TreeTable group row */
64
+ [data-style='minimal'] [data-table] tr[data-table-row][data-focused] {
65
+ @apply bg-paper-mute;
66
+ }
67
+
68
+ [data-style='minimal'] [data-table] tr[data-table-row][data-group] {
69
+ @apply bg-paper-soft text-ink;
70
+ font-weight: 500;
71
+ }
72
+
63
73
  /* =============================================================================
64
74
  Striped
65
75
  ============================================================================= */
@@ -46,3 +46,29 @@
46
46
  [data-style='minimal'] [data-toggle-option][data-selected='true'] [data-toggle-icon] {
47
47
  @apply text-ink-mute;
48
48
  }
49
+
50
+ /* =============================================================================
51
+ Button Variant — single cycling control (variant-agnostic color)
52
+ Higher specificity than the [data-toggle] container rule above, so it
53
+ neutralises the group-pill chrome and gives the single button the same
54
+ flipping icon treatment an unselected option gets.
55
+ ============================================================================= */
56
+
57
+ [data-style='minimal'] [data-toggle][data-toggle-variant='button'] {
58
+ @apply border-transparent bg-transparent text-ink-soft;
59
+ background-image: none;
60
+ }
61
+
62
+ [data-style='minimal'] [data-toggle][data-toggle-variant='button']:hover:not(:disabled):not([data-toggle-disabled='true']),
63
+ [data-style='minimal'] [data-toggle][data-toggle-variant='button']:focus-visible:not(:disabled):not([data-toggle-disabled='true']) {
64
+ @apply bg-paper-mute text-ink-mute;
65
+ }
66
+
67
+ [data-style='minimal'] [data-toggle][data-toggle-variant='button'] [data-toggle-icon] {
68
+ @apply text-ink-soft;
69
+ }
70
+
71
+ [data-style='minimal'] [data-toggle][data-toggle-variant='button']:hover:not(:disabled) [data-toggle-icon],
72
+ [data-style='minimal'] [data-toggle][data-toggle-variant='button']:focus-visible:not(:disabled) [data-toggle-icon] {
73
+ @apply text-ink-mute;
74
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Tooltip - Minimal Theme Styles
3
+ */
4
+
5
+ [data-style='minimal'] [data-tooltip-content] {
6
+ @apply bg-ink text-paper;
7
+ }
@@ -35,6 +35,10 @@
35
35
  @import './step-indicator.css';
36
36
  @import './chart.css';
37
37
  @import './swatch.css';
38
+ @import './palette-manager.css';
39
+ @import './progress.css';
40
+ @import './pill.css';
41
+ @import './rating.css';
38
42
  @import './divider.css';
39
43
  @import './badge.css';
40
44
  @import './avatar.css';
@@ -0,0 +1,97 @@
1
+ /**
2
+ * PaletteManager — Rokkit Theme
3
+ * Color layer for the headless base structure in base/palette-manager.css.
4
+ */
5
+
6
+ /* Container */
7
+ [data-style='rokkit'] [data-palette-manager] {
8
+ @apply bg-paper text-ink border-paper-edge;
9
+ }
10
+
11
+ /* Section labels */
12
+ [data-style='rokkit'] [data-palette-presets-label],
13
+ [data-style='rokkit'] [data-palette-custom-label] {
14
+ @apply text-ink-mute;
15
+ }
16
+
17
+ /* Presets */
18
+ [data-style='rokkit'] [data-palette-preset] {
19
+ @apply bg-paper-soft text-ink border-paper-edge;
20
+ }
21
+
22
+ [data-style='rokkit'] [data-palette-preset]:hover {
23
+ @apply bg-paper-mute;
24
+ }
25
+
26
+ [data-style='rokkit'] [data-palette-preset][data-active] {
27
+ @apply text-primary border-primary;
28
+ }
29
+
30
+ [data-style='rokkit'] [data-palette-preset-swatch] {
31
+ @apply border-paper-edge;
32
+ }
33
+
34
+ /* Custom palettes */
35
+ [data-style='rokkit'] [data-palette-custom-item] {
36
+ @apply bg-paper-soft text-ink-mute border-paper-edge;
37
+ }
38
+
39
+ [data-style='rokkit'] [data-palette-custom-item]:hover {
40
+ @apply bg-paper-mute text-ink;
41
+ }
42
+
43
+ [data-style='rokkit'] [data-palette-custom-item][data-active] {
44
+ @apply text-primary border-primary;
45
+ }
46
+
47
+ /* Role rows */
48
+ [data-style='rokkit'] [data-palette-role-label] {
49
+ @apply text-ink;
50
+ }
51
+
52
+ /* Color pickers */
53
+ [data-style='rokkit'] [data-palette-color-select],
54
+ [data-style='rokkit'] [data-palette-color-input] {
55
+ @apply bg-paper-soft text-ink border-paper-edge;
56
+ }
57
+
58
+ [data-style='rokkit'] [data-palette-color-input]::placeholder {
59
+ @apply text-ink-faint;
60
+ }
61
+
62
+ [data-style='rokkit'] [data-palette-color-select]:focus-visible,
63
+ [data-style='rokkit'] [data-palette-color-input]:focus-visible {
64
+ @apply outline-focus-ring border-focus-ring;
65
+ }
66
+
67
+ /* Hex toggle */
68
+ [data-style='rokkit'] [data-palette-hex-toggle] {
69
+ @apply bg-paper-soft text-ink-mute border-paper-edge;
70
+ }
71
+
72
+ [data-style='rokkit'] [data-palette-hex-toggle]:hover {
73
+ @apply bg-paper-mute text-ink;
74
+ }
75
+
76
+ /* Shade ramp */
77
+ [data-style='rokkit'] [data-palette-shades] {
78
+ @apply border-paper-edge;
79
+ }
80
+
81
+ /* Actions — Save = secondary / outlined */
82
+ [data-style='rokkit'] [data-palette-save] {
83
+ @apply bg-paper-soft text-ink-mute border-paper-edge;
84
+ }
85
+
86
+ [data-style='rokkit'] [data-palette-save]:hover {
87
+ @apply bg-paper-mute text-ink;
88
+ }
89
+
90
+ /* Actions — Apply = primary */
91
+ [data-style='rokkit'] [data-palette-apply] {
92
+ @apply bg-primary text-on-primary border-primary;
93
+ }
94
+
95
+ [data-style='rokkit'] [data-palette-apply]:hover {
96
+ @apply bg-accent border-accent;
97
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Pill - Rokkit Theme Styles
3
+ *
4
+ * Muted surface chip with soft remove affordance.
5
+ */
6
+
7
+ [data-style='rokkit'] [data-pill] {
8
+ @apply bg-paper-mute text-ink;
9
+ }
10
+
11
+ [data-style='rokkit'] [data-pill-remove] {
12
+ @apply text-ink-soft;
13
+ }
14
+
15
+ [data-style='rokkit'] [data-pill-remove]:hover:not(:disabled) {
16
+ @apply text-ink;
17
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * ProgressBar - Rokkit Theme Styles
3
+ *
4
+ * Default track + primary fill colors.
5
+ */
6
+
7
+ [data-style='rokkit'] [data-progress] {
8
+ @apply bg-paper-mute;
9
+ }
10
+
11
+ [data-style='rokkit'] [data-progress-bar] {
12
+ @apply bg-primary;
13
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Rating - Rokkit Theme Styles
3
+ *
4
+ * Faint empty icons, warning-toned filled icons.
5
+ */
6
+
7
+ [data-style='rokkit'] [data-rating-icon] {
8
+ @apply text-ink-faint;
9
+ }
10
+
11
+ [data-style='rokkit'] [data-rating-item][data-filled] [data-rating-icon] {
12
+ @apply text-warning;
13
+ }
@@ -60,6 +60,16 @@
60
60
  @apply from-primary to-accent text-primary bg-gradient-to-r;
61
61
  }
62
62
 
63
+ /* Keyboard-focused row + synthesised TreeTable group row */
64
+ [data-style='rokkit'] [data-table] tr[data-table-row][data-focused] {
65
+ @apply bg-paper-mute;
66
+ }
67
+
68
+ [data-style='rokkit'] [data-table] tr[data-table-row][data-group] {
69
+ @apply bg-paper-soft text-ink;
70
+ font-weight: 500;
71
+ }
72
+
63
73
  /* =============================================================================
64
74
  Striped
65
75
  ============================================================================= */
@@ -57,3 +57,29 @@
57
57
  [data-style='rokkit'] [data-toggle-option][data-selected='true'] [data-toggle-icon] {
58
58
  @apply text-on-primary;
59
59
  }
60
+
61
+ /* =============================================================================
62
+ Button Variant — single cycling control (variant-agnostic color)
63
+ Higher specificity than the [data-toggle] container rule above, so it
64
+ neutralises the group-pill chrome and gives the single button the same
65
+ flipping icon treatment an unselected option gets.
66
+ ============================================================================= */
67
+
68
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button'] {
69
+ @apply border-transparent bg-transparent text-ink-soft;
70
+ background-image: none;
71
+ }
72
+
73
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button']:hover:not(:disabled):not([data-toggle-disabled='true']),
74
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button']:focus-visible:not(:disabled):not([data-toggle-disabled='true']) {
75
+ @apply bg-paper-mute text-ink-mute;
76
+ }
77
+
78
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button'] [data-toggle-icon] {
79
+ @apply text-ink-soft;
80
+ }
81
+
82
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button']:hover:not(:disabled) [data-toggle-icon],
83
+ [data-style='rokkit'] [data-toggle][data-toggle-variant='button']:focus-visible:not(:disabled) [data-toggle-icon] {
84
+ @apply text-ink-mute;
85
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Grid - Zen-Sumi Theme Styles
3
+ *
4
+ * Tile borders, hover/focus effects, selection highlight.
5
+ */
6
+
7
+ [data-style='zen-sumi'] [data-grid-item] {
8
+ @apply border-paper-edge text-ink-mute;
9
+ }
10
+
11
+ [data-style='zen-sumi'] [data-grid-item]:hover:not(:disabled):not([data-disabled]),
12
+ [data-style='zen-sumi'] [data-grid-item]:focus:not(:disabled):not([data-disabled]) {
13
+ @apply border-ink-soft bg-paper-mute text-ink;
14
+ }
15
+
16
+ [data-style='zen-sumi'] [data-grid-item][data-active] {
17
+ @apply border-primary text-primary;
18
+ }
19
+
20
+ [data-style='zen-sumi'] [data-grid-item] [data-item-icon] {
21
+ @apply text-ink-soft;
22
+ }
23
+
24
+ [data-style='zen-sumi'] [data-grid-item][data-active] [data-item-icon] {
25
+ @apply text-primary;
26
+ }