@rokkit/themes 1.0.0-next.145 → 1.0.0-next.147

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 (91) hide show
  1. package/build.mjs +3 -2
  2. package/dist/base.css +349 -1
  3. package/dist/glass.css +276 -17
  4. package/dist/grada-ui.css +1681 -0
  5. package/dist/index.css +3596 -245
  6. package/dist/material.css +377 -61
  7. package/dist/minimal.css +522 -102
  8. package/dist/rokkit.css +327 -1
  9. package/package.json +5 -2
  10. package/src/base/alert-list.css +91 -0
  11. package/src/base/dropdown.css +166 -0
  12. package/src/base/index.css +4 -0
  13. package/src/base/message.css +62 -0
  14. package/src/base/status-list.css +19 -0
  15. package/src/base/toc.css +3 -1
  16. package/src/base/toolbar.css +4 -0
  17. package/src/glass/card.css +37 -0
  18. package/src/glass/dropdown.css +50 -0
  19. package/src/glass/index.css +4 -0
  20. package/src/glass/list.css +11 -11
  21. package/src/glass/menu.css +6 -6
  22. package/src/glass/message.css +36 -0
  23. package/src/glass/status-list.css +66 -0
  24. package/src/grada-ui/button.css +197 -0
  25. package/src/grada-ui/card.css +92 -0
  26. package/src/grada-ui/dropdown.css +53 -0
  27. package/src/grada-ui/floating-action.css +58 -0
  28. package/src/grada-ui/floating-navigation.css +64 -0
  29. package/src/grada-ui/index.css +54 -0
  30. package/src/grada-ui/input.css +155 -0
  31. package/src/grada-ui/list.css +109 -0
  32. package/src/grada-ui/menu.css +81 -0
  33. package/src/grada-ui/message.css +48 -0
  34. package/src/grada-ui/range.css +54 -0
  35. package/src/grada-ui/search-filter.css +42 -0
  36. package/src/grada-ui/select.css +168 -0
  37. package/src/grada-ui/status-list.css +61 -0
  38. package/src/grada-ui/switch.css +31 -0
  39. package/src/grada-ui/table.css +81 -0
  40. package/src/grada-ui/tabs.css +57 -0
  41. package/src/grada-ui/timeline.css +36 -0
  42. package/src/grada-ui/toc.css +24 -0
  43. package/src/grada-ui/toggle.css +42 -0
  44. package/src/grada-ui/toolbar.css +81 -0
  45. package/src/grada-ui/tree.css +93 -0
  46. package/src/material/button.css +4 -4
  47. package/src/material/card.css +38 -1
  48. package/src/material/dropdown.css +50 -0
  49. package/src/material/floating-action.css +9 -5
  50. package/src/material/floating-navigation.css +4 -4
  51. package/src/material/index.css +4 -0
  52. package/src/material/list.css +11 -11
  53. package/src/material/menu.css +6 -6
  54. package/src/material/message.css +36 -0
  55. package/src/material/range.css +1 -1
  56. package/src/material/search-filter.css +1 -1
  57. package/src/material/select.css +16 -11
  58. package/src/material/status-list.css +66 -0
  59. package/src/material/switch.css +2 -2
  60. package/src/material/table.css +3 -3
  61. package/src/material/tabs.css +23 -0
  62. package/src/material/toggle.css +3 -3
  63. package/src/material/toolbar.css +7 -7
  64. package/src/material/tree.css +24 -3
  65. package/src/minimal/button.css +6 -6
  66. package/src/minimal/card.css +38 -1
  67. package/src/minimal/dropdown.css +50 -0
  68. package/src/minimal/floating-action.css +9 -5
  69. package/src/minimal/floating-navigation.css +4 -4
  70. package/src/minimal/index.css +4 -0
  71. package/src/minimal/input.css +66 -15
  72. package/src/minimal/list.css +8 -8
  73. package/src/minimal/menu.css +6 -6
  74. package/src/minimal/message.css +36 -0
  75. package/src/minimal/range.css +1 -1
  76. package/src/minimal/search-filter.css +1 -1
  77. package/src/minimal/select.css +11 -11
  78. package/src/minimal/status-list.css +66 -0
  79. package/src/minimal/switch.css +2 -2
  80. package/src/minimal/table.css +3 -3
  81. package/src/minimal/tabs.css +91 -10
  82. package/src/minimal/toggle.css +3 -3
  83. package/src/minimal/toolbar.css +7 -7
  84. package/src/minimal/tree.css +24 -3
  85. package/src/rokkit/card.css +37 -0
  86. package/src/rokkit/dropdown.css +70 -0
  87. package/src/rokkit/index.css +4 -0
  88. package/src/rokkit/message.css +44 -0
  89. package/src/rokkit/status-list.css +68 -0
  90. package/src/rokkit/tabs.css +25 -1
  91. package/src/rokkit/toolbar.css +6 -0
@@ -0,0 +1,109 @@
1
+ /**
2
+ * List - Grada UI Theme Styles
3
+ */
4
+
5
+ [data-style='grada-ui'] [data-list]:focus-within {
6
+ @apply outline-none;
7
+ }
8
+
9
+ [data-style='grada-ui'] [data-list] [data-list-item] {
10
+ @apply text-surface-z8;
11
+ }
12
+
13
+ [data-style='grada-ui'] [data-list] a[data-list-item],
14
+ [data-style='grada-ui'] [data-list] button[data-list-item] {
15
+ @apply text-surface-z7;
16
+ }
17
+
18
+ /* Hover and focus */
19
+ [data-style='grada-ui']
20
+ [data-list]
21
+ [data-list-item]:hover:not(:disabled):not([data-disabled='true']),
22
+ [data-style='grada-ui']
23
+ [data-list]
24
+ [data-list-item]:focus:not(:disabled):not([data-disabled='true']) {
25
+ @apply bg-surface-z1 text-surface-z10 outline-none;
26
+ }
27
+
28
+ /* Active state — muted when list not focused */
29
+ [data-style='grada-ui'] [data-list] [data-list-item][data-active='true'] {
30
+ @apply bg-surface-z1;
31
+ color: var(--gd-primary);
32
+ }
33
+
34
+ /* Active state — gradient left border when list has focus */
35
+ [data-style='grada-ui'] [data-list]:focus-within [data-list-item][data-active='true'] {
36
+ @apply bg-surface-z1;
37
+ border-left: 3px solid var(--gd-primary);
38
+ color: var(--gd-primary);
39
+ }
40
+
41
+ [data-style='grada-ui'] [data-list] [data-list-item][data-active='true']:hover:not(:disabled),
42
+ [data-style='grada-ui'] [data-list] [data-list-item][data-active='true']:focus:not(:disabled) {
43
+ @apply bg-surface-z2;
44
+ }
45
+
46
+ /* Item Elements */
47
+ [data-style='grada-ui'] [data-list] [data-list-item] [data-item-icon] {
48
+ @apply text-surface-z5;
49
+ }
50
+
51
+ [data-style='grada-ui'] [data-list] [data-list-item]:hover:not(:disabled) [data-item-icon],
52
+ [data-style='grada-ui'] [data-list] [data-list-item]:focus:not(:disabled) [data-item-icon] {
53
+ @apply text-surface-z7;
54
+ }
55
+
56
+ [data-style='grada-ui'] [data-list] [data-list-item][data-active='true'] [data-item-icon] {
57
+ color: var(--gd-primary);
58
+ }
59
+
60
+ [data-style='grada-ui'] [data-list] [data-list-item] [data-item-description] {
61
+ @apply text-surface-z5;
62
+ }
63
+
64
+ [data-style='grada-ui'] [data-list] [data-list-item] [data-item-badge] {
65
+ @apply bg-surface-z2 text-surface-z6;
66
+ border-radius: 20px;
67
+ }
68
+
69
+ [data-style='grada-ui'] [data-list] [data-list-item][data-active='true'] [data-item-badge] {
70
+ background: var(--gd-gradient);
71
+ color: white;
72
+ }
73
+
74
+ /* Groups */
75
+ [data-style='grada-ui'] [data-list] [data-list-group] {
76
+ @apply text-surface-z6 font-medium;
77
+ font-family: 'Montserrat', sans-serif;
78
+ font-size: 0.625rem;
79
+ text-transform: uppercase;
80
+ letter-spacing: 0.06em;
81
+ }
82
+
83
+ [data-style='grada-ui'] [data-list] [data-list-group]:hover:not(:disabled),
84
+ [data-style='grada-ui'] [data-list] [data-list-group]:focus:not(:disabled) {
85
+ @apply bg-surface-z2 text-surface-z8;
86
+ }
87
+
88
+ /* Separator */
89
+ [data-style='grada-ui'] [data-list] [data-list-separator] {
90
+ @apply bg-surface-z3;
91
+ }
92
+
93
+ /* Multi-Selection */
94
+ [data-style='grada-ui'] [data-list] [data-list-item][data-selected='true'] {
95
+ background: var(--gd-gradient);
96
+ color: white;
97
+ }
98
+
99
+ [data-style='grada-ui'] [data-list]:focus-within [data-list-item][data-selected='true'] {
100
+ background: var(--gd-gradient);
101
+ }
102
+
103
+ [data-style='grada-ui'] [data-list] [data-list-item][data-selected='true']:hover:not(:disabled) {
104
+ filter: brightness(1.08);
105
+ }
106
+
107
+ [data-style='grada-ui'] [data-list] [data-list-item][data-selected='true'] [data-item-icon] {
108
+ color: white;
109
+ }
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Menu - Grada UI Theme Styles
3
+ */
4
+
5
+ [data-style='grada-ui'] [data-menu-trigger] {
6
+ @apply bg-white text-surface-z8 border-surface-z4 border;
7
+ border-radius: 3px;
8
+ }
9
+
10
+ [data-style='grada-ui'] [data-menu-trigger]:hover:not(:disabled) {
11
+ @apply text-surface-z10 border-surface-z5;
12
+ border-color: var(--gd-primary);
13
+ }
14
+
15
+ [data-style='grada-ui'] [data-menu-trigger]:focus-visible {
16
+ outline: 2px solid var(--gd-primary);
17
+ outline-offset: -2px;
18
+ }
19
+
20
+ [data-style='grada-ui'] [data-menu][data-open='true'] [data-menu-trigger] {
21
+ border-color: var(--gd-primary);
22
+ }
23
+
24
+ [data-style='grada-ui'] [data-menu-trigger] [data-menu-icon] {
25
+ @apply text-surface-z5;
26
+ }
27
+
28
+ [data-style='grada-ui'] [data-menu-trigger]:hover:not(:disabled) [data-menu-icon] {
29
+ color: var(--gd-primary);
30
+ }
31
+
32
+ [data-style='grada-ui'] [data-menu-trigger] [data-menu-arrow] {
33
+ @apply text-surface-z5;
34
+ }
35
+
36
+ /* Dropdown */
37
+ [data-style='grada-ui'] [data-menu-dropdown] {
38
+ @apply bg-white border-surface-z3 border shadow-lg;
39
+ border-radius: 3px;
40
+ }
41
+
42
+ /* Items */
43
+ [data-style='grada-ui'] [data-menu-item] {
44
+ @apply text-surface-z8;
45
+ }
46
+
47
+ [data-style='grada-ui'] [data-menu-item]:hover:not(:disabled),
48
+ [data-style='grada-ui'] [data-menu-item]:focus:not(:disabled) {
49
+ @apply bg-surface-z1 text-surface-z10 outline-none;
50
+ }
51
+
52
+ [data-style='grada-ui'] [data-menu-item]:focus-visible {
53
+ outline: 2px solid var(--gd-primary);
54
+ outline-offset: -2px;
55
+ }
56
+
57
+ [data-style='grada-ui'] [data-menu-item] [data-item-icon] {
58
+ @apply text-surface-z5;
59
+ }
60
+
61
+ [data-style='grada-ui'] [data-menu-item]:hover:not(:disabled) [data-item-icon] {
62
+ color: var(--gd-primary);
63
+ }
64
+
65
+ [data-style='grada-ui'] [data-menu-item] [data-item-description] {
66
+ @apply text-surface-z5;
67
+ }
68
+
69
+ /* Groups */
70
+ [data-style='grada-ui'] [data-menu-group] {
71
+ @apply text-surface-z5 font-medium;
72
+ font-family: 'Montserrat', sans-serif;
73
+ font-size: 0.625rem;
74
+ text-transform: uppercase;
75
+ letter-spacing: 0.06em;
76
+ }
77
+
78
+ /* Divider */
79
+ [data-style='grada-ui'] [data-menu-separator] {
80
+ @apply bg-surface-z3;
81
+ }
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Message - Grada UI Theme Styles
3
+ *
4
+ * Left border accent style matching Figma form field states.
5
+ */
6
+
7
+ [data-style='grada-ui'] [data-message-root] {
8
+ border-radius: 3px;
9
+ border-left-width: 4px;
10
+ }
11
+
12
+ [data-style='grada-ui'] [data-message-root][data-type='error'] {
13
+ background-color: #fff5f7;
14
+ border-color: var(--gd-error-border);
15
+ color: var(--gd-error-text);
16
+ }
17
+ [data-style='grada-ui'] [data-message-root][data-type='error'] [data-message-icon],
18
+ [data-style='grada-ui'] [data-message-root][data-type='error'] [data-message-dismiss] {
19
+ color: var(--gd-error-border);
20
+ }
21
+
22
+ [data-style='grada-ui'] [data-message-root][data-type='warning'] {
23
+ @apply bg-warning-z1 border-warning-z3 text-warning-z9;
24
+ }
25
+ [data-style='grada-ui'] [data-message-root][data-type='warning'] [data-message-icon],
26
+ [data-style='grada-ui'] [data-message-root][data-type='warning'] [data-message-dismiss] {
27
+ @apply text-warning-z6;
28
+ }
29
+
30
+ [data-style='grada-ui'] [data-message-root][data-type='info'] {
31
+ background-color: #f0f4ff;
32
+ border-color: var(--gd-secondary);
33
+ color: #4a3d7a;
34
+ }
35
+ [data-style='grada-ui'] [data-message-root][data-type='info'] [data-message-icon],
36
+ [data-style='grada-ui'] [data-message-root][data-type='info'] [data-message-dismiss] {
37
+ color: var(--gd-secondary);
38
+ }
39
+
40
+ [data-style='grada-ui'] [data-message-root][data-type='success'] {
41
+ background-color: #f0faf4;
42
+ border-color: var(--gd-success);
43
+ color: #1a5c35;
44
+ }
45
+ [data-style='grada-ui'] [data-message-root][data-type='success'] [data-message-icon],
46
+ [data-style='grada-ui'] [data-message-root][data-type='success'] [data-message-dismiss] {
47
+ color: var(--gd-success);
48
+ }
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Range - Grada UI Theme Styles
3
+ *
4
+ * Gradient selected track, white square thumb handles.
5
+ */
6
+
7
+ /* Track */
8
+ [data-style='grada-ui'] [data-range-bar] {
9
+ @apply bg-surface-z3;
10
+ }
11
+
12
+ [data-style='grada-ui'] [data-range-selected] {
13
+ background: var(--gd-gradient);
14
+ }
15
+
16
+ /* Thumb — white square */
17
+ [data-style='grada-ui'] [data-range-thumb] {
18
+ background-color: white;
19
+ border: 2px solid var(--gd-primary);
20
+ border-radius: 2px;
21
+ @apply shadow-md;
22
+ }
23
+
24
+ [data-style='grada-ui'] [data-range-thumb][data-sliding] {
25
+ @apply shadow-lg;
26
+ box-shadow: 0 0 0 4px color-mix(in srgb, var(--gd-primary) 25%, transparent);
27
+ }
28
+
29
+ [data-style='grada-ui'] [data-range-thumb]:focus-visible {
30
+ box-shadow: 0 0 0 4px color-mix(in srgb, var(--gd-primary) 25%, transparent);
31
+ }
32
+
33
+ /* Ticks */
34
+ [data-style='grada-ui'] [data-range-tick] {
35
+ @apply text-surface-z6;
36
+ }
37
+
38
+ [data-style='grada-ui'] [data-tick-bar] {
39
+ @apply border-surface-z5;
40
+ }
41
+
42
+ [data-style='grada-ui'] [data-tick-label] {
43
+ @apply text-surface-z6;
44
+ }
45
+
46
+ /* Disabled */
47
+ [data-style='grada-ui'] [data-range][data-disabled] [data-range-thumb] {
48
+ @apply bg-surface-z4 border-surface-z4 shadow-none;
49
+ }
50
+
51
+ [data-style='grada-ui'] [data-range][data-disabled] [data-range-selected] {
52
+ @apply bg-surface-z4;
53
+ background: none;
54
+ }
@@ -0,0 +1,42 @@
1
+ /**
2
+ * SearchFilter - Grada UI Theme Styles
3
+ */
4
+
5
+ [data-style='grada-ui'] [data-search-input] {
6
+ @apply text-surface-z8 border-surface-z4 bg-white border;
7
+ border-radius: 3px;
8
+ }
9
+
10
+ [data-style='grada-ui'] [data-search-input]:focus {
11
+ border-color: var(--gd-primary);
12
+ outline: none;
13
+ }
14
+
15
+ [data-style='grada-ui'] [data-search-input]::placeholder {
16
+ color: var(--gd-grey-c);
17
+ }
18
+
19
+ [data-style='grada-ui'] [data-search-clear] {
20
+ @apply text-surface-z5;
21
+ }
22
+
23
+ [data-style='grada-ui'] [data-search-clear]:hover {
24
+ @apply text-surface-z8 bg-surface-z1;
25
+ border-radius: 3px;
26
+ }
27
+
28
+ [data-style='grada-ui'] [data-search-tag] {
29
+ background: var(--gd-gradient);
30
+ color: white;
31
+ border-radius: 20px;
32
+ }
33
+
34
+ [data-style='grada-ui'] [data-search-tag-remove] {
35
+ color: rgba(255, 255, 255, 0.8);
36
+ border-radius: 50%;
37
+ }
38
+
39
+ [data-style='grada-ui'] [data-search-tag-remove]:hover {
40
+ color: white;
41
+ background: rgba(255, 255, 255, 0.2);
42
+ }
@@ -0,0 +1,168 @@
1
+ /**
2
+ * Select - Grada UI Theme Styles
3
+ *
4
+ * White dropdown with gradient selected highlight, 3px radius.
5
+ */
6
+
7
+ /* Trigger */
8
+ [data-style='grada-ui'] [data-select-trigger] {
9
+ @apply bg-white text-surface-z8 border-surface-z4 border;
10
+ border-radius: 3px;
11
+ }
12
+
13
+ [data-style='grada-ui'] [data-select-trigger]:hover:not(:disabled) {
14
+ @apply border-surface-z6;
15
+ }
16
+
17
+ [data-style='grada-ui'] [data-select-trigger]:focus-visible {
18
+ outline: 2px solid var(--gd-primary);
19
+ outline-offset: -2px;
20
+ }
21
+
22
+ [data-style='grada-ui'] [data-select][data-open='true'] [data-select-trigger] {
23
+ border-color: var(--gd-primary);
24
+ }
25
+
26
+ /* Placeholder */
27
+ [data-style='grada-ui'] [data-select-placeholder] {
28
+ color: var(--gd-grey-c);
29
+ }
30
+
31
+ /* Arrow */
32
+ [data-style='grada-ui'] [data-select-arrow] {
33
+ @apply text-surface-z5;
34
+ }
35
+
36
+ [data-style='grada-ui'] [data-select-trigger]:hover:not(:disabled) [data-select-arrow] {
37
+ color: var(--gd-primary);
38
+ }
39
+
40
+ /* Tags (MultiSelect) */
41
+ [data-style='grada-ui'] [data-select-tag] {
42
+ background: var(--gd-gradient);
43
+ color: white;
44
+ border-radius: 20px;
45
+ }
46
+
47
+ [data-style='grada-ui'] [data-select-tag-remove] {
48
+ color: rgba(255, 255, 255, 0.8);
49
+ border-radius: 50%;
50
+ }
51
+
52
+ [data-style='grada-ui'] [data-select-tag-remove]:hover {
53
+ color: white;
54
+ background: rgba(255, 255, 255, 0.2);
55
+ }
56
+
57
+ /* Dropdown Panel */
58
+ [data-style='grada-ui'] [data-select-dropdown] {
59
+ @apply bg-white border-surface-z3 border shadow-lg;
60
+ border-radius: 3px;
61
+ }
62
+
63
+ /* Options */
64
+ [data-style='grada-ui'] [data-select-option] {
65
+ @apply text-surface-z8;
66
+ }
67
+
68
+ [data-style='grada-ui'] [data-select-option]:hover:not(:disabled),
69
+ [data-style='grada-ui'] [data-select-option]:focus:not(:disabled) {
70
+ @apply bg-surface-z1 text-surface-z10;
71
+ }
72
+
73
+ [data-style='grada-ui'] [data-select-option]:focus-visible {
74
+ outline: 2px solid var(--gd-primary);
75
+ outline-offset: -2px;
76
+ }
77
+
78
+ /* Selected option — gradient background */
79
+ [data-style='grada-ui'] [data-select-option][data-selected='true'] {
80
+ background: var(--gd-gradient);
81
+ color: white;
82
+ }
83
+
84
+ [data-style='grada-ui'] [data-select-option][data-selected='true']:hover:not(:disabled),
85
+ [data-style='grada-ui'] [data-select-option][data-selected='true']:focus:not(:disabled) {
86
+ background: var(--gd-gradient);
87
+ filter: brightness(1.1);
88
+ color: white;
89
+ }
90
+
91
+ [data-style='grada-ui'] [data-select-dropdown]:focus-within [data-select-option][data-selected='true'] {
92
+ background: var(--gd-gradient);
93
+ }
94
+
95
+ /* Check mark */
96
+ [data-style='grada-ui'] [data-select-check] {
97
+ color: white;
98
+ }
99
+
100
+ /* Checkbox */
101
+ [data-style='grada-ui'] [data-select-checkbox] {
102
+ @apply bg-white border-surface-z5 border;
103
+ border-radius: 2px;
104
+ }
105
+
106
+ [data-style='grada-ui'] [data-select-checkbox][data-checked='true'] {
107
+ background: var(--gd-primary);
108
+ border-color: var(--gd-primary);
109
+ color: white;
110
+ }
111
+
112
+ /* Item elements */
113
+ [data-style='grada-ui'] [data-select-option] [data-item-icon] {
114
+ @apply text-surface-z5;
115
+ }
116
+
117
+ [data-style='grada-ui'] [data-select-option]:hover:not(:disabled) [data-item-icon] {
118
+ @apply text-surface-z7;
119
+ }
120
+
121
+ [data-style='grada-ui'] [data-select-option][data-selected='true'] [data-item-icon] {
122
+ color: white;
123
+ }
124
+
125
+ [data-style='grada-ui'] [data-select-option] [data-item-description] {
126
+ @apply text-surface-z5;
127
+ }
128
+
129
+ [data-style='grada-ui'] [data-select-option][data-selected='true'] [data-item-description] {
130
+ color: rgba(255, 255, 255, 0.8);
131
+ }
132
+
133
+ /* Groups */
134
+ [data-style='grada-ui'] [data-select-group-label] {
135
+ @apply text-surface-z5 font-medium;
136
+ font-family: 'Montserrat', sans-serif;
137
+ font-size: 0.625rem;
138
+ text-transform: uppercase;
139
+ letter-spacing: 0.06em;
140
+ }
141
+
142
+ /* Divider */
143
+ [data-style='grada-ui'] [data-select-divider] {
144
+ @apply bg-surface-z3;
145
+ }
146
+
147
+ /* Filter Input */
148
+ [data-style='grada-ui'] [data-select-filter] {
149
+ @apply bg-white;
150
+ }
151
+
152
+ [data-style='grada-ui'] [data-select-filter-input] {
153
+ @apply text-surface-z8 border-surface-z4 bg-white border;
154
+ border-radius: 3px;
155
+ }
156
+
157
+ [data-style='grada-ui'] [data-select-filter-input]:focus {
158
+ border-color: var(--gd-primary);
159
+ outline: none;
160
+ }
161
+
162
+ [data-style='grada-ui'] [data-select-filter-input]::placeholder {
163
+ color: var(--gd-grey-c);
164
+ }
165
+
166
+ [data-style='grada-ui'] [data-select-empty] {
167
+ @apply text-surface-z5;
168
+ }
@@ -0,0 +1,61 @@
1
+ /**
2
+ * StatusList - Grada UI Theme Styles
3
+ */
4
+
5
+ [data-style='grada-ui'] [data-status-item][data-status='pass'] span {
6
+ color: var(--gd-success);
7
+ }
8
+ [data-style='grada-ui'] [data-status-item][data-status='fail'] span {
9
+ color: var(--gd-error-border);
10
+ }
11
+ [data-style='grada-ui'] [data-status-item][data-status='warn'] span {
12
+ @apply text-warning-z6;
13
+ }
14
+ [data-style='grada-ui'] [data-status-item][data-status='unknown'] span {
15
+ @apply text-surface-z4;
16
+ }
17
+
18
+ [data-style='grada-ui'] [data-status-item][data-status='pass'] {
19
+ @apply text-surface-z8;
20
+ }
21
+ [data-style='grada-ui'] [data-status-item][data-status='fail'] {
22
+ color: var(--gd-error-text);
23
+ }
24
+ [data-style='grada-ui'] [data-status-item][data-status='warn'] {
25
+ @apply text-warning-z8;
26
+ }
27
+ [data-style='grada-ui'] [data-status-item][data-status='unknown'] {
28
+ @apply text-surface-z5;
29
+ }
30
+
31
+ [data-style='grada-ui'] [data-status-group][data-severity='error'] [data-status-header] {
32
+ color: var(--gd-error-border);
33
+ }
34
+ [data-style='grada-ui'] [data-status-group][data-severity='warning'] [data-status-header] {
35
+ @apply text-warning-z6;
36
+ }
37
+ [data-style='grada-ui'] [data-status-group][data-severity='info'] [data-status-header] {
38
+ color: var(--gd-secondary);
39
+ }
40
+ [data-style='grada-ui'] [data-status-group][data-severity='success'] [data-status-header] {
41
+ color: var(--gd-success);
42
+ }
43
+
44
+ [data-style='grada-ui'] [data-status-item][data-status='error'] {
45
+ color: var(--gd-error-text);
46
+ }
47
+ [data-style='grada-ui'] [data-status-item][data-status='warning'] {
48
+ @apply text-warning-z8;
49
+ }
50
+ [data-style='grada-ui'] [data-status-item][data-status='info'] {
51
+ @apply text-info-z8;
52
+ }
53
+ [data-style='grada-ui'] [data-status-item][data-status='success'] {
54
+ @apply text-surface-z8;
55
+ }
56
+
57
+ [data-style='grada-ui'] [data-status-count] {
58
+ background: var(--gd-gradient);
59
+ color: white;
60
+ font-weight: 600;
61
+ }
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Switch - Grada UI Theme Styles
3
+ *
4
+ * Gradient track when active.
5
+ */
6
+
7
+ [data-style='grada-ui'] [data-switch-track] {
8
+ @apply bg-none bg-surface-z3;
9
+ }
10
+
11
+ [data-style='grada-ui'] [data-switch-thumb] {
12
+ @apply bg-white shadow-md;
13
+ }
14
+
15
+ [data-style='grada-ui'] [data-switch]:focus-visible [data-switch-track] {
16
+ outline: 2px solid var(--gd-primary);
17
+ outline-offset: 2px;
18
+ }
19
+
20
+ /* On state — gradient track */
21
+ [data-style='grada-ui'] [data-switch][aria-checked='true'] [data-switch-track] {
22
+ background: var(--gd-gradient);
23
+ }
24
+
25
+ [data-style='grada-ui'] [data-switch][aria-checked='true'] [data-switch-thumb] {
26
+ @apply bg-white shadow-lg;
27
+ }
28
+
29
+ [data-style='grada-ui'] [data-switch-label] {
30
+ @apply text-surface-z7;
31
+ }
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Table - Grada UI Theme Styles
3
+ */
4
+
5
+ [data-style='grada-ui'] [data-table-header] th {
6
+ @apply text-surface-z6 border-b font-medium;
7
+ font-family: 'Montserrat', sans-serif;
8
+ font-size: 0.625rem;
9
+ text-transform: uppercase;
10
+ letter-spacing: 0.06em;
11
+ background-color: var(--gd-surface-a);
12
+ border-color: var(--gd-grey-a);
13
+ }
14
+
15
+ [data-style='grada-ui'] [data-table-header-cell][data-sortable='true']:hover {
16
+ @apply text-surface-z9;
17
+ background-color: var(--gd-surface-b);
18
+ }
19
+
20
+ [data-style='grada-ui'] [data-table-header-cell][data-sort-order='ascending'],
21
+ [data-style='grada-ui'] [data-table-header-cell][data-sort-order='descending'] {
22
+ color: var(--gd-primary);
23
+ }
24
+
25
+ [data-style='grada-ui'] [data-table-sort-icon] {
26
+ @apply text-surface-z5;
27
+ }
28
+
29
+ [data-style='grada-ui']
30
+ [data-table-header-cell][data-sort-order='ascending']
31
+ [data-table-sort-icon],
32
+ [data-style='grada-ui']
33
+ [data-table-header-cell][data-sort-order='descending']
34
+ [data-table-sort-icon] {
35
+ color: var(--gd-primary);
36
+ }
37
+
38
+ /* Caption */
39
+ [data-style='grada-ui'] [data-table-caption] {
40
+ @apply text-surface-z7;
41
+ }
42
+
43
+ /* Rows */
44
+ [data-style='grada-ui'] [data-table-row] {
45
+ @apply text-surface-z8 border-b;
46
+ border-color: var(--gd-grey-a);
47
+ }
48
+
49
+ [data-style='grada-ui'] [data-table-row]:hover {
50
+ @apply bg-surface-z1;
51
+ }
52
+
53
+ [data-style='grada-ui'] [data-table-row]:focus {
54
+ @apply bg-surface-z1 text-surface-z10 outline-none;
55
+ outline: 2px solid var(--gd-primary);
56
+ outline-offset: -2px;
57
+ }
58
+
59
+ [data-style='grada-ui'] [data-table-row][data-selected='true'] {
60
+ background: color-mix(in srgb, var(--gd-primary) 10%, transparent);
61
+ color: var(--gd-primary);
62
+ }
63
+
64
+ /* Striped */
65
+ [data-style='grada-ui'] [data-striped='true'] [data-table-body] tr:nth-child(even) {
66
+ @apply bg-surface-z1;
67
+ }
68
+
69
+ /* Empty */
70
+ [data-style='grada-ui'] [data-table-empty] {
71
+ @apply text-surface-z5;
72
+ }
73
+
74
+ /* Cell Icon */
75
+ [data-style='grada-ui'] [data-table-cell] [data-cell-icon] {
76
+ @apply text-surface-z5;
77
+ }
78
+
79
+ [data-style='grada-ui'] [data-table-row][data-selected='true'] [data-cell-icon] {
80
+ color: var(--gd-primary);
81
+ }