@rokkit/themes 1.0.5 → 1.1.1

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 (155) hide show
  1. package/build.mjs +4 -2
  2. package/package.json +3 -2
  3. package/src/base/carousel.css +2 -1
  4. package/src/base/code-block.css +76 -0
  5. package/src/base/display.css +16 -8
  6. package/src/base/frame.css +36 -0
  7. package/src/base/index.css +2 -0
  8. package/src/base/input.css +49 -10
  9. package/src/base/nav-content.css +3 -3
  10. package/src/base/stepper.css +14 -7
  11. package/src/base/tabs.css +15 -2
  12. package/src/base/typography.css +32 -13
  13. package/src/frosted/button.css +27 -27
  14. package/src/frosted/card.css +8 -8
  15. package/src/frosted/chart.css +6 -6
  16. package/src/frosted/code-block.css +33 -0
  17. package/src/frosted/dropdown.css +9 -9
  18. package/src/frosted/floating-action.css +10 -10
  19. package/src/frosted/floating-navigation.css +13 -13
  20. package/src/frosted/frame.css +17 -0
  21. package/src/frosted/index.css +2 -0
  22. package/src/frosted/input.css +16 -16
  23. package/src/frosted/list.css +25 -25
  24. package/src/frosted/menu.css +13 -13
  25. package/src/frosted/message.css +8 -8
  26. package/src/frosted/range.css +8 -8
  27. package/src/frosted/search-filter.css +8 -8
  28. package/src/frosted/select.css +31 -31
  29. package/src/frosted/status-list.css +17 -17
  30. package/src/frosted/step-indicator.css +8 -8
  31. package/src/frosted/swatch.css +3 -3
  32. package/src/frosted/switch.css +3 -3
  33. package/src/frosted/table.css +16 -16
  34. package/src/frosted/tabs.css +8 -8
  35. package/src/frosted/timeline.css +5 -5
  36. package/src/frosted/toc.css +4 -4
  37. package/src/frosted/toggle.css +7 -7
  38. package/src/frosted/toolbar.css +15 -15
  39. package/src/frosted/tree.css +19 -19
  40. package/src/material/button.css +29 -29
  41. package/src/material/card.css +12 -12
  42. package/src/material/chart.css +6 -6
  43. package/src/material/code-block.css +33 -0
  44. package/src/material/dropdown.css +11 -11
  45. package/src/material/floating-action.css +10 -10
  46. package/src/material/floating-navigation.css +13 -13
  47. package/src/material/frame.css +17 -0
  48. package/src/material/index.css +2 -0
  49. package/src/material/input.css +21 -21
  50. package/src/material/list.css +23 -23
  51. package/src/material/menu.css +16 -16
  52. package/src/material/message.css +8 -8
  53. package/src/material/range.css +8 -8
  54. package/src/material/search-filter.css +8 -8
  55. package/src/material/select.css +31 -31
  56. package/src/material/status-list.css +17 -17
  57. package/src/material/step-indicator.css +8 -8
  58. package/src/material/swatch.css +3 -3
  59. package/src/material/switch.css +6 -6
  60. package/src/material/table.css +16 -16
  61. package/src/material/tabs.css +7 -7
  62. package/src/material/timeline.css +5 -5
  63. package/src/material/toc.css +4 -4
  64. package/src/material/toggle.css +6 -6
  65. package/src/material/toolbar.css +11 -11
  66. package/src/material/tree.css +17 -17
  67. package/src/minimal/button.css +30 -30
  68. package/src/minimal/card.css +13 -13
  69. package/src/minimal/chart.css +6 -6
  70. package/src/minimal/code-block.css +33 -0
  71. package/src/minimal/dropdown.css +11 -11
  72. package/src/minimal/floating-action.css +10 -10
  73. package/src/minimal/floating-navigation.css +12 -12
  74. package/src/minimal/frame.css +17 -0
  75. package/src/minimal/index.css +2 -0
  76. package/src/minimal/input.css +24 -24
  77. package/src/minimal/list.css +52 -26
  78. package/src/minimal/menu.css +15 -15
  79. package/src/minimal/message.css +8 -8
  80. package/src/minimal/range.css +7 -7
  81. package/src/minimal/search-filter.css +8 -8
  82. package/src/minimal/select.css +27 -27
  83. package/src/minimal/status-list.css +17 -17
  84. package/src/minimal/step-indicator.css +8 -8
  85. package/src/minimal/swatch.css +3 -3
  86. package/src/minimal/switch.css +6 -6
  87. package/src/minimal/table.css +16 -16
  88. package/src/minimal/tabs.css +14 -14
  89. package/src/minimal/timeline.css +4 -4
  90. package/src/minimal/toc.css +4 -4
  91. package/src/minimal/toggle.css +7 -7
  92. package/src/minimal/toolbar.css +14 -14
  93. package/src/minimal/tree.css +24 -18
  94. package/src/rokkit/avatar.css +6 -6
  95. package/src/rokkit/badge.css +5 -5
  96. package/src/rokkit/button.css +55 -37
  97. package/src/rokkit/card.css +11 -11
  98. package/src/rokkit/chart.css +6 -6
  99. package/src/rokkit/code-block.css +33 -0
  100. package/src/rokkit/connector.css +1 -1
  101. package/src/rokkit/divider.css +5 -5
  102. package/src/rokkit/dropdown.css +11 -11
  103. package/src/rokkit/floating-action.css +11 -11
  104. package/src/rokkit/floating-navigation.css +15 -15
  105. package/src/rokkit/frame.css +17 -0
  106. package/src/rokkit/grid.css +8 -8
  107. package/src/rokkit/index.css +2 -0
  108. package/src/rokkit/input.css +17 -17
  109. package/src/rokkit/list.css +24 -24
  110. package/src/rokkit/menu.css +14 -14
  111. package/src/rokkit/message.css +12 -12
  112. package/src/rokkit/range.css +10 -10
  113. package/src/rokkit/search-filter.css +8 -8
  114. package/src/rokkit/select.css +34 -34
  115. package/src/rokkit/status-list.css +17 -17
  116. package/src/rokkit/step-indicator.css +8 -8
  117. package/src/rokkit/swatch.css +3 -3
  118. package/src/rokkit/switch.css +6 -6
  119. package/src/rokkit/table.css +16 -16
  120. package/src/rokkit/tabs.css +31 -28
  121. package/src/rokkit/timeline.css +5 -5
  122. package/src/rokkit/toc.css +4 -4
  123. package/src/rokkit/toggle.css +21 -10
  124. package/src/rokkit/toolbar.css +15 -15
  125. package/src/rokkit/tooltip.css +1 -1
  126. package/src/rokkit/tree.css +23 -23
  127. package/src/rokkit/upload-progress.css +18 -18
  128. package/src/rokkit/upload-target.css +8 -8
  129. package/src/zen-sumi/button.css +29 -29
  130. package/src/zen-sumi/card.css +12 -12
  131. package/src/zen-sumi/chart.css +6 -6
  132. package/src/zen-sumi/code-block.css +35 -0
  133. package/src/zen-sumi/dropdown.css +10 -10
  134. package/src/zen-sumi/floating-action.css +7 -7
  135. package/src/zen-sumi/floating-navigation.css +11 -11
  136. package/src/zen-sumi/frame.css +20 -0
  137. package/src/zen-sumi/index.css +2 -0
  138. package/src/zen-sumi/input.css +49 -23
  139. package/src/zen-sumi/list.css +20 -20
  140. package/src/zen-sumi/menu.css +14 -14
  141. package/src/zen-sumi/message.css +8 -8
  142. package/src/zen-sumi/range.css +7 -7
  143. package/src/zen-sumi/search-filter.css +8 -8
  144. package/src/zen-sumi/select.css +26 -26
  145. package/src/zen-sumi/status-list.css +17 -17
  146. package/src/zen-sumi/step-indicator.css +8 -8
  147. package/src/zen-sumi/swatch.css +3 -3
  148. package/src/zen-sumi/switch.css +5 -5
  149. package/src/zen-sumi/table.css +16 -16
  150. package/src/zen-sumi/tabs.css +8 -8
  151. package/src/zen-sumi/timeline.css +4 -4
  152. package/src/zen-sumi/toc.css +4 -4
  153. package/src/zen-sumi/toggle.css +18 -10
  154. package/src/zen-sumi/toolbar.css +14 -14
  155. package/src/zen-sumi/tree.css +16 -16
@@ -13,7 +13,7 @@
13
13
  [data-style='frosted'] [data-button]:not([data-style])[data-variant='default'],
14
14
  [data-style='frosted'] [data-button][data-style='default']:not([data-variant]),
15
15
  [data-style='frosted'] [data-button]:not([data-style]):not([data-variant]) {
16
- @apply text-surface-z9 border backdrop-blur-xl bg-surface-z4/28;
16
+ @apply text-ink border backdrop-blur-xl bg-paper-edge/28;
17
17
  border-color: rgba(255, 255, 255, 0.22);
18
18
  box-shadow:
19
19
  inset 0 1px 0 rgba(255, 255, 255, 0.2),
@@ -22,7 +22,7 @@
22
22
 
23
23
  [data-style='frosted'] [data-button][data-style='default'][data-variant='primary'],
24
24
  [data-style='frosted'] [data-button]:not([data-style])[data-variant='primary'] {
25
- @apply text-on-primary border backdrop-blur-xl bg-primary-z5/60;
25
+ @apply text-on-primary border backdrop-blur-xl bg-primary/60;
26
26
  border-color: rgba(255, 255, 255, 0.25);
27
27
  box-shadow:
28
28
  inset 0 1px 0 rgba(255, 255, 255, 0.25),
@@ -31,7 +31,7 @@
31
31
 
32
32
  [data-style='frosted'] [data-button][data-style='default'][data-variant='secondary'],
33
33
  [data-style='frosted'] [data-button]:not([data-style])[data-variant='secondary'] {
34
- @apply text-on-secondary border backdrop-blur-xl bg-secondary-z5/60;
34
+ @apply text-on-primary border backdrop-blur-xl bg-accent/60;
35
35
  border-color: rgba(255, 255, 255, 0.25);
36
36
  box-shadow:
37
37
  inset 0 1px 0 rgba(255, 255, 255, 0.25),
@@ -40,7 +40,7 @@
40
40
 
41
41
  [data-style='frosted'] [data-button][data-style='default'][data-variant='accent'],
42
42
  [data-style='frosted'] [data-button]:not([data-style])[data-variant='accent'] {
43
- @apply text-on-accent border backdrop-blur-xl bg-accent-z5/60;
43
+ @apply text-on-accent border backdrop-blur-xl bg-accent/60;
44
44
  border-color: rgba(255, 255, 255, 0.25);
45
45
  box-shadow:
46
46
  inset 0 1px 0 rgba(255, 255, 255, 0.25),
@@ -49,7 +49,7 @@
49
49
 
50
50
  [data-style='frosted'] [data-button][data-style='default'][data-variant='danger'],
51
51
  [data-style='frosted'] [data-button]:not([data-style])[data-variant='danger'] {
52
- @apply text-on-danger border backdrop-blur-xl bg-danger-z5/60;
52
+ @apply text-on-danger border backdrop-blur-xl bg-danger/60;
53
53
  border-color: rgba(255, 255, 255, 0.25);
54
54
  box-shadow:
55
55
  inset 0 1px 0 rgba(255, 255, 255, 0.25),
@@ -62,28 +62,28 @@
62
62
 
63
63
  [data-style='frosted'] [data-button][data-style='outline'][data-variant='default'],
64
64
  [data-style='frosted'] [data-button][data-style='outline']:not([data-variant]) {
65
- @apply text-surface-z8 border bg-transparent;
65
+ @apply text-ink-mute border bg-transparent;
66
66
  border-color: rgba(255, 255, 255, 0.28);
67
67
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
68
68
  }
69
69
 
70
70
  [data-style='frosted'] [data-button][data-style='outline'][data-variant='primary'] {
71
- @apply text-primary-z6 border bg-transparent;
71
+ @apply text-primary border bg-transparent;
72
72
  border-color: rgba(255, 255, 255, 0.28);
73
73
  }
74
74
 
75
75
  [data-style='frosted'] [data-button][data-style='outline'][data-variant='secondary'] {
76
- @apply text-secondary-z6 border bg-transparent;
76
+ @apply text-accent border bg-transparent;
77
77
  border-color: rgba(255, 255, 255, 0.28);
78
78
  }
79
79
 
80
80
  [data-style='frosted'] [data-button][data-style='outline'][data-variant='accent'] {
81
- @apply text-accent-z6 border bg-transparent;
81
+ @apply text-accent border bg-transparent;
82
82
  border-color: rgba(255, 255, 255, 0.28);
83
83
  }
84
84
 
85
85
  [data-style='frosted'] [data-button][data-style='outline'][data-variant='danger'] {
86
- @apply text-danger-z4 border bg-transparent;
86
+ @apply text-danger border bg-transparent;
87
87
  border-color: rgba(255, 255, 255, 0.28);
88
88
  }
89
89
 
@@ -97,23 +97,23 @@
97
97
 
98
98
  [data-style='frosted'] [data-button][data-style='ghost'][data-variant='default'],
99
99
  [data-style='frosted'] [data-button][data-style='ghost']:not([data-variant]) {
100
- @apply text-surface-z8;
100
+ @apply text-ink-mute;
101
101
  }
102
102
 
103
103
  [data-style='frosted'] [data-button][data-style='ghost'][data-variant='primary'] {
104
- @apply text-primary-z6;
104
+ @apply text-primary;
105
105
  }
106
106
 
107
107
  [data-style='frosted'] [data-button][data-style='ghost'][data-variant='secondary'] {
108
- @apply text-secondary-z6;
108
+ @apply text-accent;
109
109
  }
110
110
 
111
111
  [data-style='frosted'] [data-button][data-style='ghost'][data-variant='accent'] {
112
- @apply text-accent-z6;
112
+ @apply text-accent;
113
113
  }
114
114
 
115
115
  [data-style='frosted'] [data-button][data-style='ghost'][data-variant='danger'] {
116
- @apply text-danger-z4;
116
+ @apply text-danger;
117
117
  }
118
118
 
119
119
  /* =============================================================================
@@ -122,31 +122,31 @@
122
122
 
123
123
  [data-style='frosted'] [data-button][data-style='gradient'][data-variant='default'],
124
124
  [data-style='frosted'] [data-button][data-style='gradient']:not([data-variant]) {
125
- @apply from-surface-z3/70 to-surface-z1/50 text-surface-z10 bg-gradient-to-br backdrop-blur-xl;
125
+ @apply from-paper-mute/70 to-paper-soft/50 text-ink bg-gradient-to-br backdrop-blur-xl;
126
126
  border-color: rgba(255, 255, 255, 0.2);
127
127
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
128
128
  }
129
129
 
130
130
  [data-style='frosted'] [data-button][data-style='gradient'][data-variant='primary'] {
131
- @apply from-primary-z5/80 to-primary-z3/60 text-on-primary bg-gradient-to-br backdrop-blur-xl;
131
+ @apply from-primary/80 to-primary/60 text-on-primary bg-gradient-to-br backdrop-blur-xl;
132
132
  border-color: rgba(255, 255, 255, 0.25);
133
133
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
134
134
  }
135
135
 
136
136
  [data-style='frosted'] [data-button][data-style='gradient'][data-variant='secondary'] {
137
- @apply from-secondary-z5/80 to-secondary-z3/60 text-on-secondary bg-gradient-to-br backdrop-blur-xl;
137
+ @apply from-accent/80 to-accent/60 text-on-primary bg-gradient-to-br backdrop-blur-xl;
138
138
  border-color: rgba(255, 255, 255, 0.25);
139
139
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
140
140
  }
141
141
 
142
142
  [data-style='frosted'] [data-button][data-style='gradient'][data-variant='accent'] {
143
- @apply from-accent-z5/80 to-accent-z3/60 text-on-accent bg-gradient-to-br backdrop-blur-xl;
143
+ @apply from-accent/80 to-accent/60 text-on-accent bg-gradient-to-br backdrop-blur-xl;
144
144
  border-color: rgba(255, 255, 255, 0.25);
145
145
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
146
146
  }
147
147
 
148
148
  [data-style='frosted'] [data-button][data-style='gradient'][data-variant='danger'] {
149
- @apply from-danger-z5/80 to-danger-z3/60 text-on-danger bg-gradient-to-br backdrop-blur-xl;
149
+ @apply from-danger/80 to-danger/60 text-on-danger bg-gradient-to-br backdrop-blur-xl;
150
150
  border-color: rgba(255, 255, 255, 0.25);
151
151
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
152
152
  }
@@ -162,27 +162,27 @@
162
162
 
163
163
  [data-style='frosted'] [data-button][data-style='link'][data-variant='default'],
164
164
  [data-style='frosted'] [data-button][data-style='link']:not([data-variant]) {
165
- @apply text-surface-z8;
165
+ @apply text-ink-mute;
166
166
  }
167
167
 
168
168
  [data-style='frosted'] [data-button][data-style='link'][data-variant='primary'] {
169
- @apply text-primary-z6;
169
+ @apply text-primary;
170
170
  }
171
171
 
172
172
  [data-style='frosted'] [data-button][data-style='link'][data-variant='secondary'] {
173
- @apply text-secondary-z6;
173
+ @apply text-accent;
174
174
  }
175
175
 
176
176
  [data-style='frosted'] [data-button][data-style='link'][data-variant='accent'] {
177
- @apply text-accent-z6;
177
+ @apply text-accent;
178
178
  }
179
179
 
180
180
  [data-style='frosted'] [data-button][data-style='link'][data-variant='danger'] {
181
- @apply text-danger-z4;
181
+ @apply text-danger;
182
182
  }
183
183
 
184
184
  [data-style='frosted'] [data-button][data-style='link']:hover:not(:disabled):not([data-disabled]) {
185
- @apply text-primary-z7;
185
+ @apply text-primary;
186
186
  }
187
187
 
188
188
  /* =============================================================================
@@ -191,7 +191,7 @@
191
191
 
192
192
  [data-style='frosted'] [data-button][data-style='default']:hover:not(:disabled):not([data-disabled]),
193
193
  [data-style='frosted'] [data-button]:not([data-style]):hover:not(:disabled):not([data-disabled]) {
194
- @apply bg-surface-z4/38;
194
+ @apply bg-paper-edge/38;
195
195
  border-color: rgba(255, 255, 255, 0.3);
196
196
  box-shadow:
197
197
  inset 0 1px 0 rgba(255, 255, 255, 0.28),
@@ -10,7 +10,7 @@
10
10
  ============================================================================= */
11
11
 
12
12
  [data-style='frosted'] [data-card] {
13
- @apply text-surface-z9 border shadow-lg backdrop-blur-xl bg-surface-z3/30;
13
+ @apply text-ink border shadow-lg backdrop-blur-xl bg-paper-mute/30;
14
14
  border-color: rgba(255, 255, 255, 0.18);
15
15
  box-shadow:
16
16
  inset 0 1px 0 rgba(255, 255, 255, 0.22),
@@ -27,7 +27,7 @@
27
27
  }
28
28
 
29
29
  [data-style='frosted'] [data-card][data-card-interactive]:hover {
30
- @apply bg-surface-z3/42;
30
+ @apply bg-paper-mute/42;
31
31
  box-shadow:
32
32
  inset 0 1px 0 rgba(255, 255, 255, 0.28),
33
33
  0 16px 40px rgba(0, 0, 0, 0.14);
@@ -50,11 +50,11 @@
50
50
  }
51
51
 
52
52
  [data-style='frosted'] [data-card-body] {
53
- @apply text-surface-z8;
53
+ @apply text-ink-mute;
54
54
  }
55
55
 
56
56
  [data-style='frosted'] [data-card-footer] {
57
- @apply text-surface-z7;
57
+ @apply text-ink-mute;
58
58
  border-top: 1px solid rgba(255, 255, 255, 0.12);
59
59
  }
60
60
 
@@ -85,7 +85,7 @@
85
85
 
86
86
  /* Primary — tinted primary glass */
87
87
  [data-style='frosted'] [data-card][data-variant='primary'] {
88
- @apply text-on-primary border shadow-lg backdrop-blur-xl bg-primary-z5/45;
88
+ @apply text-on-primary border shadow-lg backdrop-blur-xl bg-primary/45;
89
89
  border-color: rgba(255, 255, 255, 0.22);
90
90
  box-shadow:
91
91
  inset 0 1px 0 rgba(255, 255, 255, 0.28),
@@ -103,7 +103,7 @@
103
103
 
104
104
  /* Secondary — tinted secondary glass */
105
105
  [data-style='frosted'] [data-card][data-variant='secondary'] {
106
- @apply text-on-secondary border shadow-lg backdrop-blur-xl bg-secondary-z5/45;
106
+ @apply text-on-primary border shadow-lg backdrop-blur-xl bg-accent/45;
107
107
  border-color: rgba(255, 255, 255, 0.22);
108
108
  box-shadow:
109
109
  inset 0 1px 0 rgba(255, 255, 255, 0.28),
@@ -116,11 +116,11 @@
116
116
  }
117
117
 
118
118
  [data-style='frosted'] [data-card][data-variant='secondary'] [data-card-body] {
119
- @apply text-on-secondary/80;
119
+ @apply text-on-primary/80;
120
120
  }
121
121
 
122
122
  /* Tertiary — barely-there frosted glass */
123
123
  [data-style='frosted'] [data-card][data-variant='tertiary'] {
124
- @apply text-surface-z7 border backdrop-blur-xl bg-surface-z3/16;
124
+ @apply text-ink-mute border backdrop-blur-xl bg-paper-mute/16;
125
125
  border-color: rgba(255, 255, 255, 0.12);
126
126
  }
@@ -4,25 +4,25 @@
4
4
 
5
5
  [data-style='frosted'] [data-chart-axis-line],
6
6
  [data-style='frosted'] [data-chart-tick] line {
7
- @apply stroke-surface-z3;
7
+ @apply stroke-paper-mute;
8
8
  }
9
9
 
10
10
  [data-style='frosted'] [data-chart-tick-label] {
11
- @apply fill-surface-z5;
11
+ @apply fill-ink-soft;
12
12
  }
13
13
 
14
14
  [data-style='frosted'] [data-chart-grid-line] {
15
- @apply stroke-surface-z3;
15
+ @apply stroke-paper-mute;
16
16
  stroke-opacity: 0.5;
17
17
  stroke-dasharray: 2 4;
18
18
  }
19
19
 
20
20
  [data-style='frosted'] [data-chart-legend-label] {
21
- @apply fill-surface-z5;
21
+ @apply fill-ink-soft;
22
22
  }
23
23
 
24
24
  [data-style='frosted'] [data-chart-legend-item]:hover {
25
- @apply text-surface-z8;
25
+ @apply text-ink-mute;
26
26
  }
27
27
 
28
28
  [data-style='frosted'] [data-plot-element='bar'][data-dimmed],
@@ -34,5 +34,5 @@
34
34
  }
35
35
 
36
36
  [data-style='frosted'] [data-facet-title] {
37
- @apply text-surface-z5;
37
+ @apply text-ink-soft;
38
38
  }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * CodeBlock — frosted theme.
3
+ * Frame supplies the chrome; this adds typography + muted tokens for
4
+ * the title row, lang chip, action buttons, and pre/code body.
5
+ */
6
+
7
+ [data-style='frosted'] [data-code-block-icon] {
8
+ @apply text-ink-soft;
9
+ }
10
+
11
+ [data-style='frosted'] [data-code-block-filename] {
12
+ font: 500 11.5px var(--font-mono);
13
+ @apply text-ink-mute;
14
+ }
15
+
16
+ [data-style='frosted'] [data-code-block-lang] {
17
+ font: 500 10px var(--font-mono);
18
+ @apply text-ink-soft border-paper-edge border;
19
+ }
20
+
21
+ [data-style='frosted'] [data-code-block-actions] button {
22
+ font: 500 11px var(--font-mono);
23
+ @apply text-ink-soft;
24
+ }
25
+
26
+ [data-style='frosted'] [data-code-block-actions] button:hover {
27
+ @apply bg-paper-mute text-ink;
28
+ }
29
+
30
+ [data-style='frosted'] [data-code-block-body] pre {
31
+ font: 400 12px/1.65 var(--font-mono);
32
+ @apply text-ink;
33
+ }
@@ -5,13 +5,13 @@
5
5
  */
6
6
 
7
7
  [data-style='frosted'] [data-dropdown-trigger] {
8
- @apply text-surface-z8 border bg-none backdrop-blur-xl bg-surface-z3/25;
8
+ @apply text-ink-mute border bg-none backdrop-blur-xl bg-paper-mute/25;
9
9
  border-color: rgba(255, 255, 255, 0.2);
10
10
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
11
11
  }
12
12
 
13
13
  [data-style='frosted'] [data-dropdown-trigger]:hover:not(:disabled) {
14
- @apply text-surface-z10 bg-none bg-surface-z3/36;
14
+ @apply text-ink bg-none bg-paper-mute/36;
15
15
  border-color: rgba(255, 255, 255, 0.28);
16
16
  }
17
17
 
@@ -21,20 +21,20 @@
21
21
  }
22
22
 
23
23
  [data-style='frosted'] [data-dropdown][data-open='true'] [data-dropdown-trigger] {
24
- @apply bg-none bg-primary-z5/35;
24
+ @apply bg-none bg-primary/35;
25
25
  border-color: rgba(255, 255, 255, 0.3);
26
26
  }
27
27
 
28
28
  [data-style='frosted'] [data-dropdown-trigger] [data-dropdown-icon] {
29
- @apply text-surface-z5;
29
+ @apply text-ink-soft;
30
30
  }
31
31
 
32
32
  [data-style='frosted'] [data-dropdown-trigger] [data-dropdown-arrow] {
33
- @apply text-surface-z5;
33
+ @apply text-ink-soft;
34
34
  }
35
35
 
36
36
  [data-style='frosted'] [data-dropdown-panel] {
37
- @apply border bg-none shadow-xl backdrop-blur-2xl bg-surface-z2/45;
37
+ @apply border bg-none shadow-xl backdrop-blur-2xl bg-paper-mute/45;
38
38
  border-color: rgba(255, 255, 255, 0.2);
39
39
  box-shadow:
40
40
  inset 0 1px 0 rgba(255, 255, 255, 0.2),
@@ -42,17 +42,17 @@
42
42
  }
43
43
 
44
44
  [data-style='frosted'] [data-dropdown-option] {
45
- @apply text-surface-z8;
45
+ @apply text-ink-mute;
46
46
  }
47
47
 
48
48
  [data-style='frosted'] [data-dropdown-option]:hover:not(:disabled),
49
49
  [data-style='frosted'] [data-dropdown-option]:focus:not(:disabled) {
50
- @apply text-surface-z10 bg-none outline-none;
50
+ @apply text-ink bg-none outline-none;
51
51
  background: rgba(255, 255, 255, 0.08);
52
52
  }
53
53
 
54
54
  [data-style='frosted'] [data-dropdown-option][data-active='true'] {
55
- @apply text-surface-z10 bg-none bg-primary-z5/22;
55
+ @apply text-ink bg-none bg-primary/22;
56
56
  }
57
57
 
58
58
  [data-style='frosted'] [data-dropdown-separator] {
@@ -9,20 +9,20 @@
9
9
  ============================================================================= */
10
10
 
11
11
  [data-style='frosted'] [data-fab-trigger] {
12
- @apply bg-primary-z5/80 text-on-primary shadow-lg backdrop-blur-md;
12
+ @apply bg-primary/80 text-on-primary shadow-lg backdrop-blur-md;
13
13
  }
14
14
 
15
15
  [data-style='frosted'] [data-fab-trigger]:hover:not(:disabled) {
16
- @apply bg-primary-z5/90 shadow-xl;
16
+ @apply bg-primary/90 shadow-xl;
17
17
  transform: scale(1.05);
18
18
  }
19
19
 
20
20
  [data-style='frosted'] [data-fab-trigger]:focus-visible {
21
- @apply ring-surface-z5/40 ring-2 outline-none;
21
+ @apply ring-ink-soft/40 ring-2 outline-none;
22
22
  }
23
23
 
24
24
  [data-style='frosted'] [data-fab][data-open='true'] [data-fab-trigger] {
25
- @apply bg-surface-z6/80;
25
+ @apply bg-ink-soft/80;
26
26
  transform: rotate(45deg);
27
27
  }
28
28
 
@@ -31,24 +31,24 @@
31
31
  ============================================================================= */
32
32
 
33
33
  [data-style='frosted'] [data-fab-item] {
34
- @apply text-surface-z9 bg-surface-z1/70 border-surface-z5/20 border shadow-md backdrop-blur-md;
34
+ @apply text-ink bg-paper-soft/70 border-ink-soft/20 border shadow-md backdrop-blur-md;
35
35
  }
36
36
 
37
37
  [data-style='frosted'] [data-fab-item]:hover:not(:disabled) {
38
- @apply text-surface-z10 bg-surface-z2/80 shadow-lg;
38
+ @apply text-ink bg-paper-mute/80 shadow-lg;
39
39
  }
40
40
 
41
41
  [data-style='frosted'] [data-fab-item]:focus-visible {
42
- @apply ring-surface-z5/40 ring-2 outline-none;
42
+ @apply ring-ink-soft/40 ring-2 outline-none;
43
43
  }
44
44
 
45
45
  /* Item icon */
46
46
  [data-style='frosted'] [data-fab-item] [data-fab-item-icon] {
47
- @apply text-primary-z6;
47
+ @apply text-primary;
48
48
  }
49
49
 
50
50
  [data-style='frosted'] [data-fab-item]:hover:not(:disabled) [data-fab-item-icon] {
51
- @apply text-primary-z7;
51
+ @apply text-primary;
52
52
  }
53
53
 
54
54
  /* =============================================================================
@@ -56,6 +56,6 @@
56
56
  ============================================================================= */
57
57
 
58
58
  [data-style='frosted'] [data-fab-backdrop] {
59
- @apply bg-surface-z10/30;
59
+ @apply bg-ink/30;
60
60
  backdrop-filter: blur(4px);
61
61
  }
@@ -9,7 +9,7 @@
9
9
  ============================================================================= */
10
10
 
11
11
  [data-style='frosted'] [data-floating-nav] {
12
- @apply bg-surface-z1/70 border-surface-z5/20 border shadow-xl backdrop-blur-xl;
12
+ @apply bg-paper-soft/70 border-ink-soft/20 border shadow-xl backdrop-blur-xl;
13
13
  }
14
14
 
15
15
  /* =============================================================================
@@ -17,19 +17,19 @@
17
17
  ============================================================================= */
18
18
 
19
19
  [data-style='frosted'] [data-floating-nav-title] {
20
- @apply text-surface-z6;
20
+ @apply text-ink-soft;
21
21
  }
22
22
 
23
23
  [data-style='frosted'] [data-floating-nav-pin] {
24
- @apply text-surface-z6;
24
+ @apply text-ink-soft;
25
25
  }
26
26
 
27
27
  [data-style='frosted'] [data-floating-nav-pin]:hover {
28
- @apply text-primary-z6;
28
+ @apply text-primary;
29
29
  }
30
30
 
31
31
  [data-style='frosted'] [data-floating-nav-pin][aria-pressed='true'] {
32
- @apply text-primary-z7;
32
+ @apply text-primary;
33
33
  }
34
34
 
35
35
  /* =============================================================================
@@ -37,32 +37,32 @@
37
37
  ============================================================================= */
38
38
 
39
39
  [data-style='frosted'] [data-floating-nav-item] {
40
- @apply text-surface-z8;
40
+ @apply text-ink-mute;
41
41
  }
42
42
 
43
43
  [data-style='frosted'] [data-floating-nav-item]:hover {
44
- @apply text-surface-z10 bg-surface-z2/50;
44
+ @apply text-ink bg-paper-mute/50;
45
45
  }
46
46
 
47
47
  [data-style='frosted'] [data-floating-nav-item][data-active] {
48
- @apply text-primary-z7 bg-primary-z5/10;
48
+ @apply text-primary bg-primary/10;
49
49
  }
50
50
 
51
51
  [data-style='frosted'] [data-floating-nav-item]:focus-visible {
52
- @apply ring-surface-z5/40 ring-2 outline-none;
52
+ @apply ring-ink-soft/40 ring-2 outline-none;
53
53
  }
54
54
 
55
55
  /* Icon */
56
56
  [data-style='frosted'] [data-floating-nav-icon] {
57
- @apply text-surface-z6;
57
+ @apply text-ink-soft;
58
58
  }
59
59
 
60
60
  [data-style='frosted'] [data-floating-nav-item]:hover [data-floating-nav-icon] {
61
- @apply text-primary-z6;
61
+ @apply text-primary;
62
62
  }
63
63
 
64
64
  [data-style='frosted'] [data-floating-nav-item][data-active] [data-floating-nav-icon] {
65
- @apply text-primary-z7;
65
+ @apply text-primary;
66
66
  }
67
67
 
68
68
  /* =============================================================================
@@ -70,5 +70,5 @@
70
70
  ============================================================================= */
71
71
 
72
72
  [data-style='frosted'] [data-floating-nav-indicator] {
73
- @apply bg-primary-z5/80;
73
+ @apply bg-primary/80;
74
74
  }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Frame — frosted theme.
3
+ * Border + background decoration. Base file owns layout / spacing.
4
+ */
5
+
6
+ [data-style='frosted'] [data-frame] {
7
+ @apply bg-paper border-paper-edge border;
8
+ }
9
+
10
+ [data-style='frosted'] [data-frame-header] {
11
+ @apply bg-paper-soft border-paper-edge border-b;
12
+ }
13
+
14
+ [data-style='frosted'] [data-frame-footer] {
15
+ @apply bg-paper border-paper-edge;
16
+ border-top: 1px dashed var(--paper-edge);
17
+ }
@@ -24,6 +24,8 @@
24
24
  @import './floating-navigation.css';
25
25
  @import './toc.css';
26
26
  @import './card.css';
27
+ @import './frame.css';
28
+ @import './code-block.css';
27
29
  @import './message.css';
28
30
  @import './status-list.css';
29
31
  @import './step-indicator.css';
@@ -4,7 +4,7 @@
4
4
 
5
5
  /* Field root: text color, spacing */
6
6
  [data-style='frosted'] [data-field-root] {
7
- @apply text-surface-z9 gap-1 rounded-md transition-all;
7
+ @apply text-ink gap-1 rounded-md transition-all;
8
8
  }
9
9
 
10
10
  /* Disabled state */
@@ -14,28 +14,28 @@
14
14
 
15
15
  /* Labels */
16
16
  [data-style='frosted'] [data-field] > label {
17
- @apply text-surface-z7;
17
+ @apply text-ink-mute;
18
18
  }
19
19
 
20
20
  [data-style='frosted'] [data-form-root] label {
21
- @apply text-surface-z7;
21
+ @apply text-ink-mute;
22
22
  }
23
23
 
24
24
  /* Info field value */
25
25
  [data-style='frosted'] [data-field-info] {
26
- @apply text-primary-z6 font-medium;
26
+ @apply text-primary font-medium;
27
27
  }
28
28
 
29
29
  /* Separator */
30
30
  [data-style='frosted'] [data-form-separator] {
31
- @apply border-surface-z5/20;
31
+ @apply border-ink-soft/20;
32
32
  }
33
33
 
34
34
  /* Input root: frosted glass container — p-0.5 gives a small gap between border and content.
35
35
  * No backdrop-blur here: it creates a stacking context that traps select dropdowns.
36
36
  * The semi-transparent background + specular border provides the liquid glass look. */
37
37
  [data-style='frosted'] [data-input-root] {
38
- @apply flex items-center rounded-md border p-0.5 transition-all bg-surface-z3/22;
38
+ @apply flex items-center rounded-md border p-0.5 transition-all bg-paper-mute/22;
39
39
  background-image: none;
40
40
  border-color: rgba(255, 255, 255, 0.2);
41
41
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
@@ -46,7 +46,7 @@
46
46
  }
47
47
 
48
48
  [data-style='frosted'] [data-input-root]:focus-within {
49
- @apply bg-surface-z3/28;
49
+ @apply bg-paper-mute/28;
50
50
  background-image: none;
51
51
  border-color: rgba(255, 255, 255, 0.35);
52
52
  box-shadow:
@@ -57,19 +57,19 @@
57
57
  /* Standard inputs inside wrapper */
58
58
  [data-style='frosted'] [data-input-root] input:not([type='checkbox'], [type='radio'], [type='color']),
59
59
  [data-style='frosted'] [data-input-root] select {
60
- @apply text-surface-z8 rounded-md border-none bg-transparent px-3 focus:outline-none;
60
+ @apply text-ink-mute rounded-md border-none bg-transparent px-3 focus:outline-none;
61
61
  font-size: 0.875rem;
62
62
  height: 2.25rem;
63
63
  }
64
64
 
65
65
  [data-style='frosted'] [data-input-root] textarea {
66
- @apply text-surface-z8 rounded-md border-none bg-transparent px-3 py-2 focus:outline-none;
66
+ @apply text-ink-mute rounded-md border-none bg-transparent px-3 py-2 focus:outline-none;
67
67
  font-size: 0.875rem;
68
68
  }
69
69
 
70
70
  /* Select inside input-root: suppress standalone glass select styles */
71
71
  [data-style='frosted'] [data-input-root] [data-select-trigger] {
72
- @apply text-surface-z8 rounded-md border-none bg-transparent shadow-none ring-0 focus:outline-none;
72
+ @apply text-ink-mute rounded-md border-none bg-transparent shadow-none ring-0 focus:outline-none;
73
73
  background-image: none;
74
74
  backdrop-filter: none;
75
75
  }
@@ -82,7 +82,7 @@
82
82
  /* Placeholders */
83
83
  [data-style='frosted'] [data-input-root] input::placeholder,
84
84
  [data-style='frosted'] [data-input-root] textarea::placeholder {
85
- @apply text-surface-z5;
85
+ @apply text-ink-soft;
86
86
  }
87
87
 
88
88
  /* Checkbox field */
@@ -92,17 +92,17 @@
92
92
 
93
93
  /* Checkbox icon */
94
94
  [data-style='frosted'] [data-checkbox-icon] {
95
- @apply text-surface-z5 cursor-pointer rounded text-lg transition-colors;
95
+ @apply text-ink-soft cursor-pointer rounded text-lg transition-colors;
96
96
  }
97
97
 
98
98
  [data-style='frosted'] [data-checkbox-icon]:focus-visible {
99
- @apply outline-primary-z4 outline-2 outline-offset-2;
99
+ @apply outline-primary outline-2 outline-offset-2;
100
100
  }
101
101
 
102
102
  [data-style='frosted']
103
103
  [data-checkbox-root][data-variant='custom']:has(input:checked)
104
104
  [data-checkbox-icon] {
105
- @apply text-primary-z6;
105
+ @apply text-primary;
106
106
  }
107
107
 
108
108
  [data-style='frosted'] [data-field] textarea {
@@ -121,7 +121,7 @@
121
121
  /* Description and message */
122
122
  [data-style='frosted'] [data-description],
123
123
  [data-style='frosted'] [data-message] {
124
- @apply text-surface-z6;
124
+ @apply text-ink-soft;
125
125
  }
126
126
 
127
127
  [data-style='frosted'] [data-message] {
@@ -130,5 +130,5 @@
130
130
 
131
131
  /* Error state */
132
132
  [data-style='frosted'] [data-field-root][data-field-state='fail'] [data-input-root] {
133
- @apply border-danger-z5/50;
133
+ @apply border-danger/50;
134
134
  }