@twentyfirstmedia/pro 0.0.0-stage → 0.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.
- package/LICENSE +30 -0
- package/README.md +48 -2
- package/dist/fonts/Geist-LICENSE.txt +93 -0
- package/dist/fonts/Geist-Mono-LICENSE.txt +93 -0
- package/dist/fonts/geist-latin-ext-wght-normal.woff2 +0 -0
- package/dist/fonts/geist-latin-wght-normal.woff2 +0 -0
- package/dist/fonts/geist-mono-latin-ext-wght-normal.woff2 +0 -0
- package/dist/fonts/geist-mono-latin-wght-normal.woff2 +0 -0
- package/dist/fonts.css +33 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/scoped.css +14104 -0
- package/dist/styles.css +14105 -0
- package/dist/tailwind.css +219 -0
- package/dist/themes/blue.css +54 -0
- package/dist/themes/emerald.css +54 -0
- package/dist/themes/orange.css +54 -0
- package/dist/themes/rose.css +54 -0
- package/dist/themes/teal.css +54 -0
- package/dist/themes/violet.css +54 -0
- package/dist/tokens.css +850 -0
- package/dist/tokens.json +1457 -0
- package/package.json +67 -3
package/dist/tokens.json
ADDED
|
@@ -0,0 +1,1457 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Pro",
|
|
3
|
+
"defaultTheme": "dark",
|
|
4
|
+
"defaultDensity": "compact",
|
|
5
|
+
"color": [
|
|
6
|
+
{
|
|
7
|
+
"name": "background",
|
|
8
|
+
"value": {
|
|
9
|
+
"light": "#f6f6f7",
|
|
10
|
+
"dark": "#09090b"
|
|
11
|
+
},
|
|
12
|
+
"usage": "Theme: page background behind every panel (shadcn `background`)."
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "foreground",
|
|
16
|
+
"value": {
|
|
17
|
+
"light": "#111114",
|
|
18
|
+
"dark": "#ededf0"
|
|
19
|
+
},
|
|
20
|
+
"usage": "Theme: default text and icons (shadcn `foreground`)."
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"name": "card",
|
|
24
|
+
"value": {
|
|
25
|
+
"light": "#ffffff",
|
|
26
|
+
"dark": "#0e0e11"
|
|
27
|
+
},
|
|
28
|
+
"usage": "Theme: cards, panels, inputs and the workspace sheet (shadcn `card`)."
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"name": "card-foreground",
|
|
32
|
+
"value": {
|
|
33
|
+
"light": "{foreground}",
|
|
34
|
+
"dark": "{foreground}"
|
|
35
|
+
},
|
|
36
|
+
"usage": "Theme: text on cards."
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "popover",
|
|
40
|
+
"value": {
|
|
41
|
+
"light": "{card}",
|
|
42
|
+
"dark": "{card}"
|
|
43
|
+
},
|
|
44
|
+
"usage": "Theme: menus, popovers, select lists, command palette, hover cards, dialogs."
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"name": "popover-foreground",
|
|
48
|
+
"value": {
|
|
49
|
+
"light": "{foreground}",
|
|
50
|
+
"dark": "{foreground}"
|
|
51
|
+
},
|
|
52
|
+
"usage": "Theme: text on popovers."
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"name": "primary",
|
|
56
|
+
"value": {
|
|
57
|
+
"light": "#111114",
|
|
58
|
+
"dark": "#ededf0"
|
|
59
|
+
},
|
|
60
|
+
"usage": "Theme: the brand colour. Primary buttons, checked boxes, switches, selected chips and days, progress, active marks."
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"name": "primary-foreground",
|
|
64
|
+
"value": {
|
|
65
|
+
"light": "#ffffff",
|
|
66
|
+
"dark": "#09090b"
|
|
67
|
+
},
|
|
68
|
+
"usage": "Theme: text and icons on `primary`."
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"name": "primary-hover",
|
|
72
|
+
"value": {
|
|
73
|
+
"light": "color-mix(in oklab, {primary} 70%, #000000)",
|
|
74
|
+
"dark": "color-mix(in oklab, {primary} 70%, #ffffff)"
|
|
75
|
+
},
|
|
76
|
+
"usage": "Theme: `primary` under the pointer."
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"name": "secondary",
|
|
80
|
+
"value": {
|
|
81
|
+
"light": "#f0f0f2",
|
|
82
|
+
"dark": "#16161a"
|
|
83
|
+
},
|
|
84
|
+
"usage": "Theme: secondary actions. Soft buttons and icon buttons, neutral chips and badges."
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"name": "secondary-foreground",
|
|
88
|
+
"value": {
|
|
89
|
+
"light": "{foreground}",
|
|
90
|
+
"dark": "{foreground}"
|
|
91
|
+
},
|
|
92
|
+
"usage": "Theme: text on `secondary`."
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"name": "muted",
|
|
96
|
+
"value": {
|
|
97
|
+
"light": "#f0f0f2",
|
|
98
|
+
"dark": "#16161a"
|
|
99
|
+
},
|
|
100
|
+
"usage": "Theme: quiet fills. Tracks of segmented controls, tabs and progress, search fields, code, placeholders."
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"name": "muted-foreground",
|
|
104
|
+
"value": {
|
|
105
|
+
"light": "#4f4f58",
|
|
106
|
+
"dark": "#a6a6b0"
|
|
107
|
+
},
|
|
108
|
+
"usage": "Theme: secondary text, captions, metadata."
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"name": "accent",
|
|
112
|
+
"value": {
|
|
113
|
+
"light": "#f0f0f2",
|
|
114
|
+
"dark": "#16161a"
|
|
115
|
+
},
|
|
116
|
+
"usage": "Theme: highlight under the pointer or keyboard. Menu items, list rows, options, ghost buttons, nav items."
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"name": "accent-foreground",
|
|
120
|
+
"value": {
|
|
121
|
+
"light": "{foreground}",
|
|
122
|
+
"dark": "{foreground}"
|
|
123
|
+
},
|
|
124
|
+
"usage": "Theme: text on `accent`."
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"name": "destructive",
|
|
128
|
+
"value": {
|
|
129
|
+
"light": "#b0301f",
|
|
130
|
+
"dark": "#ef6f61"
|
|
131
|
+
},
|
|
132
|
+
"usage": "Theme: destructive actions and errors. Danger buttons, error text and icons."
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"name": "destructive-foreground",
|
|
136
|
+
"value": {
|
|
137
|
+
"light": "{card}",
|
|
138
|
+
"dark": "{card}"
|
|
139
|
+
},
|
|
140
|
+
"usage": "Theme: text on solid `destructive`."
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
"name": "border",
|
|
144
|
+
"value": {
|
|
145
|
+
"light": "#dfdfe3",
|
|
146
|
+
"dark": "#26262c"
|
|
147
|
+
},
|
|
148
|
+
"usage": "Theme: hairlines and dividers between surfaces."
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"name": "input",
|
|
152
|
+
"value": {
|
|
153
|
+
"light": "#8a8a94",
|
|
154
|
+
"dark": "#62626d"
|
|
155
|
+
},
|
|
156
|
+
"usage": "Theme: borders of fields, checkboxes and radios, and strong lines."
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"name": "ring",
|
|
160
|
+
"value": {
|
|
161
|
+
"light": "{foreground}",
|
|
162
|
+
"dark": "{foreground}"
|
|
163
|
+
},
|
|
164
|
+
"usage": "Theme: keyboard focus rings."
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"name": "chart-1",
|
|
168
|
+
"value": {
|
|
169
|
+
"light": "{sky-ink}",
|
|
170
|
+
"dark": "{sky-ink}"
|
|
171
|
+
},
|
|
172
|
+
"usage": "Theme: chart series 1 (sky series)."
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"name": "chart-2",
|
|
176
|
+
"value": {
|
|
177
|
+
"light": "{mint-ink}",
|
|
178
|
+
"dark": "{mint-ink}"
|
|
179
|
+
},
|
|
180
|
+
"usage": "Theme: chart series 2 (mint series)."
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"name": "chart-3",
|
|
184
|
+
"value": {
|
|
185
|
+
"light": "{butter-ink}",
|
|
186
|
+
"dark": "{butter-ink}"
|
|
187
|
+
},
|
|
188
|
+
"usage": "Theme: chart series 3 (butter series)."
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"name": "chart-4",
|
|
192
|
+
"value": {
|
|
193
|
+
"light": "{lilac-ink}",
|
|
194
|
+
"dark": "{lilac-ink}"
|
|
195
|
+
},
|
|
196
|
+
"usage": "Theme: chart series 4 (lilac series)."
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"name": "chart-5",
|
|
200
|
+
"value": {
|
|
201
|
+
"light": "{blush-ink}",
|
|
202
|
+
"dark": "{blush-ink}"
|
|
203
|
+
},
|
|
204
|
+
"usage": "Theme: chart series 5 (blush series)."
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"name": "sidebar",
|
|
208
|
+
"value": {
|
|
209
|
+
"light": "{card}",
|
|
210
|
+
"dark": "{card}"
|
|
211
|
+
},
|
|
212
|
+
"usage": "Theme: Sidebar background."
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
"name": "sidebar-foreground",
|
|
216
|
+
"value": {
|
|
217
|
+
"light": "{foreground}",
|
|
218
|
+
"dark": "{foreground}"
|
|
219
|
+
},
|
|
220
|
+
"usage": "Theme: Sidebar text."
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"name": "sidebar-primary",
|
|
224
|
+
"value": {
|
|
225
|
+
"light": "{primary}",
|
|
226
|
+
"dark": "{primary}"
|
|
227
|
+
},
|
|
228
|
+
"usage": "Theme: Sidebar emphasis (current item mark, badges)."
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
"name": "sidebar-primary-foreground",
|
|
232
|
+
"value": {
|
|
233
|
+
"light": "{primary-foreground}",
|
|
234
|
+
"dark": "{primary-foreground}"
|
|
235
|
+
},
|
|
236
|
+
"usage": "Theme: text on `sidebar-primary`."
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
"name": "sidebar-accent",
|
|
240
|
+
"value": {
|
|
241
|
+
"light": "{accent}",
|
|
242
|
+
"dark": "{accent}"
|
|
243
|
+
},
|
|
244
|
+
"usage": "Theme: Sidebar item under the pointer and the current item."
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
"name": "sidebar-accent-foreground",
|
|
248
|
+
"value": {
|
|
249
|
+
"light": "{accent-foreground}",
|
|
250
|
+
"dark": "{accent-foreground}"
|
|
251
|
+
},
|
|
252
|
+
"usage": "Theme: text on `sidebar-accent`."
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
"name": "sidebar-border",
|
|
256
|
+
"value": {
|
|
257
|
+
"light": "{border}",
|
|
258
|
+
"dark": "{border}"
|
|
259
|
+
},
|
|
260
|
+
"usage": "Theme: Sidebar edges and dividers."
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
"name": "sidebar-ring",
|
|
264
|
+
"value": {
|
|
265
|
+
"light": "{ring}",
|
|
266
|
+
"dark": "{ring}"
|
|
267
|
+
},
|
|
268
|
+
"usage": "Theme: focus rings inside the Sidebar."
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"name": "canvas",
|
|
272
|
+
"value": {
|
|
273
|
+
"light": "{bg-000}",
|
|
274
|
+
"dark": "{bg-000}"
|
|
275
|
+
},
|
|
276
|
+
"usage": "Page background behind every panel and card."
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"name": "surface",
|
|
280
|
+
"value": {
|
|
281
|
+
"light": "{bg-100}",
|
|
282
|
+
"dark": "{bg-100}"
|
|
283
|
+
},
|
|
284
|
+
"usage": "Cards, panels, inputs and the main workspace sheet."
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"name": "surface-sunken",
|
|
288
|
+
"value": {
|
|
289
|
+
"light": "{bg-200}",
|
|
290
|
+
"dark": "{bg-200}"
|
|
291
|
+
},
|
|
292
|
+
"usage": "Search fields, segmented-tab tracks, quiet chips and icon-button fills on `surface`."
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
"name": "frame",
|
|
296
|
+
"value": {
|
|
297
|
+
"light": "{bg-100}",
|
|
298
|
+
"dark": "{bg-100}"
|
|
299
|
+
},
|
|
300
|
+
"usage": "The dark app frame: top bar, dock and the outer shell around the workspace."
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
"name": "on-frame",
|
|
304
|
+
"value": {
|
|
305
|
+
"light": "{fg-100}",
|
|
306
|
+
"dark": "{fg-100}"
|
|
307
|
+
},
|
|
308
|
+
"usage": "Text and icons on `frame`."
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"name": "on-frame-muted",
|
|
312
|
+
"value": {
|
|
313
|
+
"light": "{fg-300}",
|
|
314
|
+
"dark": "{fg-300}"
|
|
315
|
+
},
|
|
316
|
+
"usage": "Secondary text and idle nav icons on `frame` (7:1+)."
|
|
317
|
+
},
|
|
318
|
+
{
|
|
319
|
+
"name": "ink",
|
|
320
|
+
"value": {
|
|
321
|
+
"light": "{fg-100}",
|
|
322
|
+
"dark": "{fg-100}"
|
|
323
|
+
},
|
|
324
|
+
"usage": "Headings, numbers and body copy on `surface`, `canvas`, `surface-sunken` and every tint."
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
"name": "ink-muted",
|
|
328
|
+
"value": {
|
|
329
|
+
"light": "{fg-200}",
|
|
330
|
+
"dark": "{fg-200}"
|
|
331
|
+
},
|
|
332
|
+
"usage": "Descriptions, meta lines and labels on `surface` and `canvas` (4.5:1+ in both themes)."
|
|
333
|
+
},
|
|
334
|
+
{
|
|
335
|
+
"name": "ink-subtle",
|
|
336
|
+
"value": {
|
|
337
|
+
"light": "{fg-300}",
|
|
338
|
+
"dark": "{fg-300}"
|
|
339
|
+
},
|
|
340
|
+
"usage": "Placeholders, disabled text and the quietest meta; 4.5:1 on surface and surface-sunken in both themes, still clearly lighter than ink-muted."
|
|
341
|
+
},
|
|
342
|
+
{
|
|
343
|
+
"name": "line",
|
|
344
|
+
"value": {
|
|
345
|
+
"light": "{line-200}",
|
|
346
|
+
"dark": "{line-200}"
|
|
347
|
+
},
|
|
348
|
+
"usage": "Hairline dividers and table rules; decorative, never the only boundary of a control."
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
"name": "line-strong",
|
|
352
|
+
"value": {
|
|
353
|
+
"light": "{line-300}",
|
|
354
|
+
"dark": "{line-300}"
|
|
355
|
+
},
|
|
356
|
+
"usage": "Dashed placeholder tiles and input borders (3:1 on `surface`)."
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
"name": "sky",
|
|
360
|
+
"value": {
|
|
361
|
+
"light": "{info-bg}",
|
|
362
|
+
"dark": "{info-bg}"
|
|
363
|
+
},
|
|
364
|
+
"usage": "Info tint: stat tiles, event cards, the 'scheduled' state. Text on it is `ink`."
|
|
365
|
+
},
|
|
366
|
+
{
|
|
367
|
+
"name": "sky-ink",
|
|
368
|
+
"value": {
|
|
369
|
+
"light": "{info}",
|
|
370
|
+
"dark": "{info}"
|
|
371
|
+
},
|
|
372
|
+
"usage": "Icons and labels on `sky` or as an icon colour on `surface`."
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
"name": "mint",
|
|
376
|
+
"value": {
|
|
377
|
+
"light": "{ok-bg}",
|
|
378
|
+
"dark": "{ok-bg}"
|
|
379
|
+
},
|
|
380
|
+
"usage": "Success tint: published/live states, positive stat tiles. Text on it is `ink`."
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
"name": "mint-ink",
|
|
384
|
+
"value": {
|
|
385
|
+
"light": "{ok}",
|
|
386
|
+
"dark": "{ok}"
|
|
387
|
+
},
|
|
388
|
+
"usage": "Icons and labels on `mint`; success marks on `surface`."
|
|
389
|
+
},
|
|
390
|
+
{
|
|
391
|
+
"name": "lilac",
|
|
392
|
+
"value": {
|
|
393
|
+
"light": "{signal-bg}",
|
|
394
|
+
"dark": "{signal-bg}"
|
|
395
|
+
},
|
|
396
|
+
"usage": "Highlight tint: the one featured card in a grid, lesson events. Text on it is `ink`."
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
"name": "lilac-ink",
|
|
400
|
+
"value": {
|
|
401
|
+
"light": "{signal}",
|
|
402
|
+
"dark": "{signal}"
|
|
403
|
+
},
|
|
404
|
+
"usage": "Icons and labels on `lilac`."
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
"name": "butter",
|
|
408
|
+
"value": {
|
|
409
|
+
"light": "{warn-bg}",
|
|
410
|
+
"dark": "{warn-bg}"
|
|
411
|
+
},
|
|
412
|
+
"usage": "Money and attention tint: revenue tiles, task events, pending states. Text on it is `ink`."
|
|
413
|
+
},
|
|
414
|
+
{
|
|
415
|
+
"name": "butter-ink",
|
|
416
|
+
"value": {
|
|
417
|
+
"light": "{warn}",
|
|
418
|
+
"dark": "{warn}"
|
|
419
|
+
},
|
|
420
|
+
"usage": "Icons and labels on `butter`."
|
|
421
|
+
},
|
|
422
|
+
{
|
|
423
|
+
"name": "blush",
|
|
424
|
+
"value": {
|
|
425
|
+
"light": "{danger-bg}",
|
|
426
|
+
"dark": "{danger-bg}"
|
|
427
|
+
},
|
|
428
|
+
"usage": "Danger and support tint: errors, tickets, destructive confirms. Text on it is `ink`."
|
|
429
|
+
},
|
|
430
|
+
{
|
|
431
|
+
"name": "blush-ink",
|
|
432
|
+
"value": {
|
|
433
|
+
"light": "{danger}",
|
|
434
|
+
"dark": "{danger}"
|
|
435
|
+
},
|
|
436
|
+
"usage": "Icons and labels on `blush`; destructive text on `surface`."
|
|
437
|
+
},
|
|
438
|
+
{
|
|
439
|
+
"name": "focus",
|
|
440
|
+
"value": {
|
|
441
|
+
"light": "{ring}",
|
|
442
|
+
"dark": "{ring}"
|
|
443
|
+
},
|
|
444
|
+
"usage": "Focus ring: 2px solid outline, 1px offset, on every interactive element."
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
"name": "count",
|
|
448
|
+
"value": {
|
|
449
|
+
"light": "{signal}",
|
|
450
|
+
"dark": "{signal}"
|
|
451
|
+
},
|
|
452
|
+
"usage": "Count pills on nav items and tabs (unread, open approvals)."
|
|
453
|
+
},
|
|
454
|
+
{
|
|
455
|
+
"name": "on-count",
|
|
456
|
+
"value": {
|
|
457
|
+
"light": "{bg-000}",
|
|
458
|
+
"dark": "{bg-000}"
|
|
459
|
+
},
|
|
460
|
+
"usage": "Text on `count`."
|
|
461
|
+
},
|
|
462
|
+
{
|
|
463
|
+
"name": "on-frame-success",
|
|
464
|
+
"value": {
|
|
465
|
+
"light": "{ok}",
|
|
466
|
+
"dark": "{ok}"
|
|
467
|
+
},
|
|
468
|
+
"usage": "Success marks on frame: the brand dot, ok lines in logs."
|
|
469
|
+
},
|
|
470
|
+
{
|
|
471
|
+
"name": "on-frame-danger",
|
|
472
|
+
"value": {
|
|
473
|
+
"light": "{danger}",
|
|
474
|
+
"dark": "{danger}"
|
|
475
|
+
},
|
|
476
|
+
"usage": "Error lines in logs and other danger marks on frame."
|
|
477
|
+
},
|
|
478
|
+
{
|
|
479
|
+
"name": "scrim",
|
|
480
|
+
"value": {
|
|
481
|
+
"light": "rgba(17,17,20,0.36)",
|
|
482
|
+
"dark": "rgba(0,0,0,0.62)"
|
|
483
|
+
},
|
|
484
|
+
"usage": "Backdrop behind dialogs, sheets and the command palette."
|
|
485
|
+
},
|
|
486
|
+
{
|
|
487
|
+
"name": "scrim-strong",
|
|
488
|
+
"value": {
|
|
489
|
+
"light": "{scrim}",
|
|
490
|
+
"dark": "{scrim}"
|
|
491
|
+
},
|
|
492
|
+
"usage": "Backdrop behind modals and the command palette."
|
|
493
|
+
},
|
|
494
|
+
{
|
|
495
|
+
"name": "bg-000",
|
|
496
|
+
"value": {
|
|
497
|
+
"light": "{background}",
|
|
498
|
+
"dark": "{background}"
|
|
499
|
+
},
|
|
500
|
+
"usage": "Canvas: app background, behind hairline grids, inputs on surfaces."
|
|
501
|
+
},
|
|
502
|
+
{
|
|
503
|
+
"name": "bg-100",
|
|
504
|
+
"value": {
|
|
505
|
+
"light": "{card}",
|
|
506
|
+
"dark": "{card}"
|
|
507
|
+
},
|
|
508
|
+
"usage": "Surface: every grid cell, panel, table, sidebar, dialog."
|
|
509
|
+
},
|
|
510
|
+
{
|
|
511
|
+
"name": "bg-200",
|
|
512
|
+
"value": {
|
|
513
|
+
"light": "{muted}",
|
|
514
|
+
"dark": "{muted}"
|
|
515
|
+
},
|
|
516
|
+
"usage": "Raised: row and button hover, kbd keys, skeletons, code blocks."
|
|
517
|
+
},
|
|
518
|
+
{
|
|
519
|
+
"name": "bg-300",
|
|
520
|
+
"value": {
|
|
521
|
+
"light": "color-mix(in oklab, {foreground} 3%, {muted})",
|
|
522
|
+
"dark": "color-mix(in oklab, {foreground} 5%, {muted})"
|
|
523
|
+
},
|
|
524
|
+
"usage": "Selected: active nav item, selected row, pressed segment, open menu trigger."
|
|
525
|
+
},
|
|
526
|
+
{
|
|
527
|
+
"name": "fg-100",
|
|
528
|
+
"value": {
|
|
529
|
+
"light": "{foreground}",
|
|
530
|
+
"dark": "{foreground}"
|
|
531
|
+
},
|
|
532
|
+
"usage": "Primary text and icons on every surface (bg-000 to bg-300)."
|
|
533
|
+
},
|
|
534
|
+
{
|
|
535
|
+
"name": "fg-200",
|
|
536
|
+
"value": {
|
|
537
|
+
"light": "{muted-foreground}",
|
|
538
|
+
"dark": "{muted-foreground}"
|
|
539
|
+
},
|
|
540
|
+
"usage": "Secondary text: descriptions, table cells that are not the row's key, inactive nav items. On bg-000 to bg-300."
|
|
541
|
+
},
|
|
542
|
+
{
|
|
543
|
+
"name": "fg-300",
|
|
544
|
+
"value": {
|
|
545
|
+
"light": "color-mix(in oklab, {muted-foreground} 92%, {background})",
|
|
546
|
+
"dark": "color-mix(in oklab, {muted-foreground} 90%, {background})"
|
|
547
|
+
},
|
|
548
|
+
"usage": "Muted text: meta, timestamps, column headers, eyebrows. On bg-000 to bg-300."
|
|
549
|
+
},
|
|
550
|
+
{
|
|
551
|
+
"name": "fg-400",
|
|
552
|
+
"value": {
|
|
553
|
+
"light": "color-mix(in oklab, {muted-foreground} 47%, {background})",
|
|
554
|
+
"dark": "color-mix(in oklab, {muted-foreground} 57%, {background})"
|
|
555
|
+
},
|
|
556
|
+
"usage": "Disabled text and placeholders only. Below 4.5:1 by design; never for information."
|
|
557
|
+
},
|
|
558
|
+
{
|
|
559
|
+
"name": "line-100",
|
|
560
|
+
"value": {
|
|
561
|
+
"light": "color-mix(in oklab, {border} 59%, {card})",
|
|
562
|
+
"dark": "color-mix(in oklab, {border} 52%, {card})"
|
|
563
|
+
},
|
|
564
|
+
"usage": "Faint hairline: row separators inside tables and lists, background grid."
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
"name": "line-200",
|
|
568
|
+
"value": {
|
|
569
|
+
"light": "{border}",
|
|
570
|
+
"dark": "{border}"
|
|
571
|
+
},
|
|
572
|
+
"usage": "Hairline: the structural 1px grid between cells, panel and overlay borders, table header rule. Decorative, not a control boundary."
|
|
573
|
+
},
|
|
574
|
+
{
|
|
575
|
+
"name": "line-300",
|
|
576
|
+
"value": {
|
|
577
|
+
"light": "{input}",
|
|
578
|
+
"dark": "{input}"
|
|
579
|
+
},
|
|
580
|
+
"usage": "Control border (3:1 on bg-000, bg-100, bg-200): inputs, checkboxes, secondary buttons, crosshair marks."
|
|
581
|
+
},
|
|
582
|
+
{
|
|
583
|
+
"name": "chart-grid",
|
|
584
|
+
"value": {
|
|
585
|
+
"light": "{line-100}",
|
|
586
|
+
"dark": "{line-100}"
|
|
587
|
+
},
|
|
588
|
+
"usage": "Chart gridlines."
|
|
589
|
+
},
|
|
590
|
+
{
|
|
591
|
+
"name": "chart-sky",
|
|
592
|
+
"value": {
|
|
593
|
+
"light": "{fg-100}",
|
|
594
|
+
"dark": "{fg-100}"
|
|
595
|
+
},
|
|
596
|
+
"usage": "Chart series tinted sky: a step of the monochrome ramp (charts carry no decorative colour)."
|
|
597
|
+
},
|
|
598
|
+
{
|
|
599
|
+
"name": "chart-mint",
|
|
600
|
+
"value": {
|
|
601
|
+
"light": "color-mix(in oklab, {foreground} 38%, {card})",
|
|
602
|
+
"dark": "color-mix(in oklab, {foreground} 48%, {card})"
|
|
603
|
+
},
|
|
604
|
+
"usage": "Chart series tinted mint: a step of the monochrome ramp (charts carry no decorative colour)."
|
|
605
|
+
},
|
|
606
|
+
{
|
|
607
|
+
"name": "chart-lilac",
|
|
608
|
+
"value": {
|
|
609
|
+
"light": "{fg-300}",
|
|
610
|
+
"dark": "{fg-300}"
|
|
611
|
+
},
|
|
612
|
+
"usage": "Chart series tinted lilac: a step of the monochrome ramp (charts carry no decorative colour)."
|
|
613
|
+
},
|
|
614
|
+
{
|
|
615
|
+
"name": "chart-butter",
|
|
616
|
+
"value": {
|
|
617
|
+
"light": "{fg-200}",
|
|
618
|
+
"dark": "{fg-200}"
|
|
619
|
+
},
|
|
620
|
+
"usage": "Chart series tinted butter: a step of the monochrome ramp (charts carry no decorative colour)."
|
|
621
|
+
},
|
|
622
|
+
{
|
|
623
|
+
"name": "chart-blush",
|
|
624
|
+
"value": {
|
|
625
|
+
"light": "{line-300}",
|
|
626
|
+
"dark": "{line-300}"
|
|
627
|
+
},
|
|
628
|
+
"usage": "Chart series tinted blush: a step of the monochrome ramp (charts carry no decorative colour)."
|
|
629
|
+
},
|
|
630
|
+
{
|
|
631
|
+
"name": "ok",
|
|
632
|
+
"value": {
|
|
633
|
+
"light": "#177447",
|
|
634
|
+
"dark": "#5cc28f"
|
|
635
|
+
},
|
|
636
|
+
"usage": "Success / done / healthy: text and status shapes (circle). On bg-000 to bg-300."
|
|
637
|
+
},
|
|
638
|
+
{
|
|
639
|
+
"name": "ok-bg",
|
|
640
|
+
"value": {
|
|
641
|
+
"light": "rgba(23,116,71,0.09)",
|
|
642
|
+
"dark": "rgba(92,194,143,0.12)"
|
|
643
|
+
},
|
|
644
|
+
"usage": "Tint behind ok badges, banners and diff additions."
|
|
645
|
+
},
|
|
646
|
+
{
|
|
647
|
+
"name": "info",
|
|
648
|
+
"value": {
|
|
649
|
+
"light": "#2856b0",
|
|
650
|
+
"dark": "#7aa7f5"
|
|
651
|
+
},
|
|
652
|
+
"usage": "Running / in progress / neutral notices. Shape: pulsing dot."
|
|
653
|
+
},
|
|
654
|
+
{
|
|
655
|
+
"name": "info-bg",
|
|
656
|
+
"value": {
|
|
657
|
+
"light": "rgba(40,86,176,0.08)",
|
|
658
|
+
"dark": "rgba(122,167,245,0.12)"
|
|
659
|
+
},
|
|
660
|
+
"usage": "Tint behind info badges and banners."
|
|
661
|
+
},
|
|
662
|
+
{
|
|
663
|
+
"name": "warn",
|
|
664
|
+
"value": {
|
|
665
|
+
"light": "#765600",
|
|
666
|
+
"dark": "#d9b44a"
|
|
667
|
+
},
|
|
668
|
+
"usage": "Warning: budget at 80 %, expiring domains, degraded checks. Shape: triangle."
|
|
669
|
+
},
|
|
670
|
+
{
|
|
671
|
+
"name": "warn-bg",
|
|
672
|
+
"value": {
|
|
673
|
+
"light": "rgba(118,86,0,0.09)",
|
|
674
|
+
"dark": "rgba(217,180,74,0.12)"
|
|
675
|
+
},
|
|
676
|
+
"usage": "Tint behind warning badges and banners."
|
|
677
|
+
},
|
|
678
|
+
{
|
|
679
|
+
"name": "danger",
|
|
680
|
+
"value": {
|
|
681
|
+
"light": "{destructive}",
|
|
682
|
+
"dark": "{destructive}"
|
|
683
|
+
},
|
|
684
|
+
"usage": "Error, failed run, destructive actions, budget stop. Shape: square."
|
|
685
|
+
},
|
|
686
|
+
{
|
|
687
|
+
"name": "danger-bg",
|
|
688
|
+
"value": {
|
|
689
|
+
"light": "rgba(176,48,31,0.08)",
|
|
690
|
+
"dark": "rgba(239,111,97,0.12)"
|
|
691
|
+
},
|
|
692
|
+
"usage": "Tint behind error badges, banners, diff removals."
|
|
693
|
+
},
|
|
694
|
+
{
|
|
695
|
+
"name": "signal",
|
|
696
|
+
"value": {
|
|
697
|
+
"light": "#9a4807",
|
|
698
|
+
"dark": "#f2994a"
|
|
699
|
+
},
|
|
700
|
+
"usage": "Needs a human: approval waiting, beacons, the approval count. Shape: diamond. The only hue that may draw the eye unprompted."
|
|
701
|
+
},
|
|
702
|
+
{
|
|
703
|
+
"name": "signal-bg",
|
|
704
|
+
"value": {
|
|
705
|
+
"light": "rgba(154,72,7,0.09)",
|
|
706
|
+
"dark": "rgba(242,153,74,0.14)"
|
|
707
|
+
},
|
|
708
|
+
"usage": "Tint behind approval cards' header and signal badges."
|
|
709
|
+
},
|
|
710
|
+
{
|
|
711
|
+
"name": "idle",
|
|
712
|
+
"value": {
|
|
713
|
+
"light": "{fg-300}",
|
|
714
|
+
"dark": "{fg-300}"
|
|
715
|
+
},
|
|
716
|
+
"usage": "Status idle: ready, inactive (ring). Alias of `ink-muted`."
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
"name": "diff-add",
|
|
720
|
+
"value": {
|
|
721
|
+
"light": "{ok}",
|
|
722
|
+
"dark": "{ok}"
|
|
723
|
+
},
|
|
724
|
+
"usage": "Added lines in override diffs."
|
|
725
|
+
},
|
|
726
|
+
{
|
|
727
|
+
"name": "diff-add-bg",
|
|
728
|
+
"value": {
|
|
729
|
+
"light": "{ok-bg}",
|
|
730
|
+
"dark": "{ok-bg}"
|
|
731
|
+
},
|
|
732
|
+
"usage": "Fill of added lines. Alias of `mint`."
|
|
733
|
+
},
|
|
734
|
+
{
|
|
735
|
+
"name": "diff-del",
|
|
736
|
+
"value": {
|
|
737
|
+
"light": "{danger}",
|
|
738
|
+
"dark": "{danger}"
|
|
739
|
+
},
|
|
740
|
+
"usage": "Removed lines in override diffs."
|
|
741
|
+
},
|
|
742
|
+
{
|
|
743
|
+
"name": "diff-del-bg",
|
|
744
|
+
"value": {
|
|
745
|
+
"light": "{danger-bg}",
|
|
746
|
+
"dark": "{danger-bg}"
|
|
747
|
+
},
|
|
748
|
+
"usage": "Fill of removed lines. Alias of `blush`."
|
|
749
|
+
},
|
|
750
|
+
{
|
|
751
|
+
"name": "paper",
|
|
752
|
+
"value": {
|
|
753
|
+
"light": "#ffffff",
|
|
754
|
+
"dark": "#ffffff"
|
|
755
|
+
},
|
|
756
|
+
"usage": "Document previews (invoices, PDFs): paper is white in both themes."
|
|
757
|
+
},
|
|
758
|
+
{
|
|
759
|
+
"name": "paper-ink",
|
|
760
|
+
"value": {
|
|
761
|
+
"light": "#111114",
|
|
762
|
+
"dark": "#111114"
|
|
763
|
+
},
|
|
764
|
+
"usage": "Text on paper."
|
|
765
|
+
},
|
|
766
|
+
{
|
|
767
|
+
"name": "frame-hover",
|
|
768
|
+
"value": {
|
|
769
|
+
"light": "{bg-200}",
|
|
770
|
+
"dark": "{bg-200}"
|
|
771
|
+
},
|
|
772
|
+
"usage": "Hover fill on the dark frame (top bar, dock, code blocks). Same in both themes."
|
|
773
|
+
},
|
|
774
|
+
{
|
|
775
|
+
"name": "frame-active",
|
|
776
|
+
"value": {
|
|
777
|
+
"light": "{bg-300}",
|
|
778
|
+
"dark": "{bg-300}"
|
|
779
|
+
},
|
|
780
|
+
"usage": "Active or selected fill on the dark frame. Same in both themes."
|
|
781
|
+
},
|
|
782
|
+
{
|
|
783
|
+
"name": "frame-strong",
|
|
784
|
+
"value": {
|
|
785
|
+
"light": "{bg-300}",
|
|
786
|
+
"dark": "{bg-300}"
|
|
787
|
+
},
|
|
788
|
+
"usage": "Strong fill or divider on the dark frame. Same in both themes."
|
|
789
|
+
},
|
|
790
|
+
{
|
|
791
|
+
"name": "on-frame-strong",
|
|
792
|
+
"value": {
|
|
793
|
+
"light": "{fg-100}",
|
|
794
|
+
"dark": "{fg-100}"
|
|
795
|
+
},
|
|
796
|
+
"usage": "Highlighted text on the frame (log highlights). Same in both themes."
|
|
797
|
+
},
|
|
798
|
+
{
|
|
799
|
+
"name": "on-frame-warn",
|
|
800
|
+
"value": {
|
|
801
|
+
"light": "{warn}",
|
|
802
|
+
"dark": "{warn}"
|
|
803
|
+
},
|
|
804
|
+
"usage": "Warnings and numbers in logs and code on the frame. Same in both themes."
|
|
805
|
+
},
|
|
806
|
+
{
|
|
807
|
+
"name": "on-frame-signal",
|
|
808
|
+
"value": {
|
|
809
|
+
"light": "{signal}",
|
|
810
|
+
"dark": "{signal}"
|
|
811
|
+
},
|
|
812
|
+
"usage": "Keywords in code on the frame. Same in both themes."
|
|
813
|
+
},
|
|
814
|
+
{
|
|
815
|
+
"name": "ink-hover",
|
|
816
|
+
"value": {
|
|
817
|
+
"light": "{bg-200}",
|
|
818
|
+
"dark": "{bg-200}"
|
|
819
|
+
},
|
|
820
|
+
"usage": "Hover fill on tinted surfaces such as alerts. Same in both themes."
|
|
821
|
+
},
|
|
822
|
+
{
|
|
823
|
+
"name": "hairline",
|
|
824
|
+
"value": {
|
|
825
|
+
"light": "{line-200}",
|
|
826
|
+
"dark": "{line-200}"
|
|
827
|
+
},
|
|
828
|
+
"usage": "Thin outline around swatches and colour wells. Same in both themes."
|
|
829
|
+
},
|
|
830
|
+
{
|
|
831
|
+
"name": "media-scrim",
|
|
832
|
+
"value": {
|
|
833
|
+
"light": "rgba(10, 10, 10, 0.6)",
|
|
834
|
+
"dark": "rgba(10, 10, 10, 0.6)"
|
|
835
|
+
},
|
|
836
|
+
"usage": "Labels and counters on top of photos. Same in both themes."
|
|
837
|
+
},
|
|
838
|
+
{
|
|
839
|
+
"name": "media-ink",
|
|
840
|
+
"value": {
|
|
841
|
+
"light": "#ffffff",
|
|
842
|
+
"dark": "#ffffff"
|
|
843
|
+
},
|
|
844
|
+
"usage": "Text and lines on top of photos. Same in both themes."
|
|
845
|
+
},
|
|
846
|
+
{
|
|
847
|
+
"name": "media-shadow",
|
|
848
|
+
"value": {
|
|
849
|
+
"light": "rgba(0, 0, 0, 0.3)",
|
|
850
|
+
"dark": "rgba(0, 0, 0, 0.3)"
|
|
851
|
+
},
|
|
852
|
+
"usage": "Shadow behind lines drawn on photos. Same in both themes."
|
|
853
|
+
},
|
|
854
|
+
{
|
|
855
|
+
"name": "lightbox",
|
|
856
|
+
"value": {
|
|
857
|
+
"light": "rgba(8, 8, 8, 0.92)",
|
|
858
|
+
"dark": "rgba(8, 8, 8, 0.92)"
|
|
859
|
+
},
|
|
860
|
+
"usage": "Full-screen image viewer background. Same in both themes."
|
|
861
|
+
},
|
|
862
|
+
{
|
|
863
|
+
"name": "lightbox-ink",
|
|
864
|
+
"value": {
|
|
865
|
+
"light": "rgba(255, 255, 255, 0.8)",
|
|
866
|
+
"dark": "rgba(255, 255, 255, 0.8)"
|
|
867
|
+
},
|
|
868
|
+
"usage": "Captions in the image viewer. Same in both themes."
|
|
869
|
+
},
|
|
870
|
+
{
|
|
871
|
+
"name": "paper-muted",
|
|
872
|
+
"value": {
|
|
873
|
+
"light": "#706f6a",
|
|
874
|
+
"dark": "#706f6a"
|
|
875
|
+
},
|
|
876
|
+
"usage": "Secondary text on paper (4.5:1 on white)."
|
|
877
|
+
},
|
|
878
|
+
{
|
|
879
|
+
"name": "paper-subtle",
|
|
880
|
+
"value": {
|
|
881
|
+
"light": "#6b6a65",
|
|
882
|
+
"dark": "#6b6a65"
|
|
883
|
+
},
|
|
884
|
+
"usage": "Small print on `paper`. Same in both themes."
|
|
885
|
+
},
|
|
886
|
+
{
|
|
887
|
+
"name": "serp-ink",
|
|
888
|
+
"value": {
|
|
889
|
+
"light": "#202124",
|
|
890
|
+
"dark": "#202124"
|
|
891
|
+
},
|
|
892
|
+
"usage": "Search ad preview: text. Same in both themes."
|
|
893
|
+
},
|
|
894
|
+
{
|
|
895
|
+
"name": "serp-muted",
|
|
896
|
+
"value": {
|
|
897
|
+
"light": "#4d5156",
|
|
898
|
+
"dark": "#4d5156"
|
|
899
|
+
},
|
|
900
|
+
"usage": "Search ad preview: description and URL. Same in both themes."
|
|
901
|
+
},
|
|
902
|
+
{
|
|
903
|
+
"name": "serp-link",
|
|
904
|
+
"value": {
|
|
905
|
+
"light": "#1a0dab",
|
|
906
|
+
"dark": "#1a0dab"
|
|
907
|
+
},
|
|
908
|
+
"usage": "Search ad preview: headline link. Same in both themes."
|
|
909
|
+
},
|
|
910
|
+
{
|
|
911
|
+
"name": "serp-chip",
|
|
912
|
+
"value": {
|
|
913
|
+
"light": "#f1f3f4",
|
|
914
|
+
"dark": "#f1f3f4"
|
|
915
|
+
},
|
|
916
|
+
"usage": "Search ad preview: favicon chip. Same in both themes."
|
|
917
|
+
}
|
|
918
|
+
],
|
|
919
|
+
"shadow": [
|
|
920
|
+
{
|
|
921
|
+
"name": "shadow-card",
|
|
922
|
+
"value": {
|
|
923
|
+
"light": "none",
|
|
924
|
+
"dark": "none"
|
|
925
|
+
},
|
|
926
|
+
"usage": "Resting cards. Pro: none, hairlines divide."
|
|
927
|
+
},
|
|
928
|
+
{
|
|
929
|
+
"name": "shadow-lift",
|
|
930
|
+
"value": {
|
|
931
|
+
"light": "none",
|
|
932
|
+
"dark": "none"
|
|
933
|
+
},
|
|
934
|
+
"usage": "Hovered card. Pro: none."
|
|
935
|
+
},
|
|
936
|
+
{
|
|
937
|
+
"name": "shadow-float",
|
|
938
|
+
"value": {
|
|
939
|
+
"light": "0 16px 40px rgba(17,17,20,0.12)",
|
|
940
|
+
"dark": "0 16px 40px rgba(0,0,0,0.55)"
|
|
941
|
+
},
|
|
942
|
+
"usage": "Floating layers: dock, toasts, menus and dialogs."
|
|
943
|
+
},
|
|
944
|
+
{
|
|
945
|
+
"name": "shadow-overlay",
|
|
946
|
+
"value": {
|
|
947
|
+
"light": "0 16px 40px rgba(17,17,20,0.12)",
|
|
948
|
+
"dark": "0 16px 40px rgba(0,0,0,0.55)"
|
|
949
|
+
},
|
|
950
|
+
"usage": "Only floating layers: menus, popovers, dialogs, toasts, command palette. Always paired with a line-200 border."
|
|
951
|
+
}
|
|
952
|
+
],
|
|
953
|
+
"component": [
|
|
954
|
+
{
|
|
955
|
+
"name": "button-radius",
|
|
956
|
+
"value": "{radius-1}",
|
|
957
|
+
"usage": "Corners of buttons (Button, IconButton). One knob for a theme's button shape."
|
|
958
|
+
},
|
|
959
|
+
{
|
|
960
|
+
"name": "field-radius",
|
|
961
|
+
"value": "{radius-1}",
|
|
962
|
+
"usage": "Corners of inputs and selects."
|
|
963
|
+
},
|
|
964
|
+
{
|
|
965
|
+
"name": "badge-radius",
|
|
966
|
+
"value": "{radius-1}",
|
|
967
|
+
"usage": "Corners of badges and chips."
|
|
968
|
+
},
|
|
969
|
+
{
|
|
970
|
+
"name": "panel-bg",
|
|
971
|
+
"value": "{bg-100}",
|
|
972
|
+
"usage": "Background of a panel: a cell of the hairline grid, a section, a side column."
|
|
973
|
+
},
|
|
974
|
+
{
|
|
975
|
+
"name": "panel-border",
|
|
976
|
+
"value": "{line-200}",
|
|
977
|
+
"usage": "Border colour of a panel standing on its own; transparent where panels float."
|
|
978
|
+
},
|
|
979
|
+
{
|
|
980
|
+
"name": "panel-radius",
|
|
981
|
+
"value": "{radius-0}",
|
|
982
|
+
"usage": "Corners of a panel. Pro: square cells of the hairline grid."
|
|
983
|
+
},
|
|
984
|
+
{
|
|
985
|
+
"name": "panel-shadow",
|
|
986
|
+
"value": "none",
|
|
987
|
+
"usage": "Resting shadow of a panel. Pro: none, the hairlines divide."
|
|
988
|
+
},
|
|
989
|
+
{
|
|
990
|
+
"name": "panel-pad",
|
|
991
|
+
"value": "{space-4}",
|
|
992
|
+
"usage": "Inner padding of a panel."
|
|
993
|
+
},
|
|
994
|
+
{
|
|
995
|
+
"name": "panel-gap",
|
|
996
|
+
"value": "1px",
|
|
997
|
+
"usage": "Gap between panels in a grid: the hairline in Pro, air between cards in Halo."
|
|
998
|
+
}
|
|
999
|
+
],
|
|
1000
|
+
"font": [
|
|
1001
|
+
{
|
|
1002
|
+
"name": "font-sans",
|
|
1003
|
+
"value": "\"Geist\", ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", sans-serif",
|
|
1004
|
+
"usage": "UI text."
|
|
1005
|
+
},
|
|
1006
|
+
{
|
|
1007
|
+
"name": "font-mono",
|
|
1008
|
+
"value": "\"Geist Mono\", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",
|
|
1009
|
+
"usage": "Numbers, IDs, addresses, code, timestamps and eyebrows."
|
|
1010
|
+
}
|
|
1011
|
+
],
|
|
1012
|
+
"type": [
|
|
1013
|
+
{
|
|
1014
|
+
"name": "display",
|
|
1015
|
+
"family": "sans",
|
|
1016
|
+
"fontSize": "28px",
|
|
1017
|
+
"lineHeight": "32px",
|
|
1018
|
+
"fontWeight": 600,
|
|
1019
|
+
"letterSpacing": "-0.02em",
|
|
1020
|
+
"usage": "One per screen at most: module title on overview pages, login."
|
|
1021
|
+
},
|
|
1022
|
+
{
|
|
1023
|
+
"name": "number-xl",
|
|
1024
|
+
"family": "mono",
|
|
1025
|
+
"fontSize": "24px",
|
|
1026
|
+
"lineHeight": "28px",
|
|
1027
|
+
"fontWeight": 500,
|
|
1028
|
+
"letterSpacing": "-0.02em",
|
|
1029
|
+
"usage": "The value in a stat cell (same as numeric)."
|
|
1030
|
+
},
|
|
1031
|
+
{
|
|
1032
|
+
"name": "h1",
|
|
1033
|
+
"family": "sans",
|
|
1034
|
+
"fontSize": "28px",
|
|
1035
|
+
"lineHeight": "32px",
|
|
1036
|
+
"fontWeight": 600,
|
|
1037
|
+
"letterSpacing": "-0.02em",
|
|
1038
|
+
"usage": "Page title (same as display)."
|
|
1039
|
+
},
|
|
1040
|
+
{
|
|
1041
|
+
"name": "h2",
|
|
1042
|
+
"family": "sans",
|
|
1043
|
+
"fontSize": "18px",
|
|
1044
|
+
"lineHeight": "24px",
|
|
1045
|
+
"fontWeight": 600,
|
|
1046
|
+
"letterSpacing": "-0.01em",
|
|
1047
|
+
"usage": "Section and panel titles (same as heading)."
|
|
1048
|
+
},
|
|
1049
|
+
{
|
|
1050
|
+
"name": "h3",
|
|
1051
|
+
"family": "sans",
|
|
1052
|
+
"fontSize": "14px",
|
|
1053
|
+
"lineHeight": "20px",
|
|
1054
|
+
"fontWeight": 600,
|
|
1055
|
+
"usage": "Card titles (same as title)."
|
|
1056
|
+
},
|
|
1057
|
+
{
|
|
1058
|
+
"name": "body",
|
|
1059
|
+
"family": "sans",
|
|
1060
|
+
"fontSize": "14px",
|
|
1061
|
+
"lineHeight": "20px",
|
|
1062
|
+
"fontWeight": 400,
|
|
1063
|
+
"usage": "Running text in comfortable density, chat messages, mail bodies."
|
|
1064
|
+
},
|
|
1065
|
+
{
|
|
1066
|
+
"name": "body-long",
|
|
1067
|
+
"family": "sans",
|
|
1068
|
+
"fontSize": "14px",
|
|
1069
|
+
"lineHeight": "22px",
|
|
1070
|
+
"fontWeight": 400,
|
|
1071
|
+
"usage": "Reading text: mail bodies, chat messages."
|
|
1072
|
+
},
|
|
1073
|
+
{
|
|
1074
|
+
"name": "body-sm",
|
|
1075
|
+
"family": "sans",
|
|
1076
|
+
"fontSize": "13px",
|
|
1077
|
+
"lineHeight": "18px",
|
|
1078
|
+
"fontWeight": 400,
|
|
1079
|
+
"usage": "Default UI text in compact density: tables, lists, nav, controls."
|
|
1080
|
+
},
|
|
1081
|
+
{
|
|
1082
|
+
"name": "label",
|
|
1083
|
+
"family": "sans",
|
|
1084
|
+
"fontSize": "12px",
|
|
1085
|
+
"lineHeight": "16px",
|
|
1086
|
+
"fontWeight": 500,
|
|
1087
|
+
"usage": "Form labels, button text in small buttons, badge text."
|
|
1088
|
+
},
|
|
1089
|
+
{
|
|
1090
|
+
"name": "small",
|
|
1091
|
+
"family": "sans",
|
|
1092
|
+
"fontSize": "12px",
|
|
1093
|
+
"lineHeight": "16px",
|
|
1094
|
+
"fontWeight": 400,
|
|
1095
|
+
"usage": "Meta lines, hints and timestamps (same as caption)."
|
|
1096
|
+
},
|
|
1097
|
+
{
|
|
1098
|
+
"name": "caption",
|
|
1099
|
+
"family": "mono",
|
|
1100
|
+
"fontSize": "11px",
|
|
1101
|
+
"lineHeight": "16px",
|
|
1102
|
+
"fontWeight": 500,
|
|
1103
|
+
"letterSpacing": "0.08em",
|
|
1104
|
+
"textTransform": "uppercase",
|
|
1105
|
+
"usage": "Uppercase eyebrows and table headers (same as eyebrow)."
|
|
1106
|
+
},
|
|
1107
|
+
{
|
|
1108
|
+
"name": "micro",
|
|
1109
|
+
"family": "mono",
|
|
1110
|
+
"fontSize": "10px",
|
|
1111
|
+
"lineHeight": "12px",
|
|
1112
|
+
"fontWeight": 600,
|
|
1113
|
+
"usage": "Counts inside nav dots and tiny badges."
|
|
1114
|
+
},
|
|
1115
|
+
{
|
|
1116
|
+
"name": "code",
|
|
1117
|
+
"family": "mono",
|
|
1118
|
+
"fontSize": "13px",
|
|
1119
|
+
"lineHeight": "20px",
|
|
1120
|
+
"fontWeight": 400,
|
|
1121
|
+
"usage": "Logs, DNS records, IDs and code (same as mono)."
|
|
1122
|
+
},
|
|
1123
|
+
{
|
|
1124
|
+
"name": "heading",
|
|
1125
|
+
"family": "sans",
|
|
1126
|
+
"fontSize": "18px",
|
|
1127
|
+
"lineHeight": "24px",
|
|
1128
|
+
"fontWeight": 600,
|
|
1129
|
+
"letterSpacing": "-0.01em",
|
|
1130
|
+
"usage": "Panel and dialog titles, mail subject in the reader."
|
|
1131
|
+
},
|
|
1132
|
+
{
|
|
1133
|
+
"name": "title",
|
|
1134
|
+
"family": "sans",
|
|
1135
|
+
"fontSize": "14px",
|
|
1136
|
+
"lineHeight": "20px",
|
|
1137
|
+
"fontWeight": 600,
|
|
1138
|
+
"usage": "Card and section titles, agent names, table row keys."
|
|
1139
|
+
},
|
|
1140
|
+
{
|
|
1141
|
+
"name": "eyebrow",
|
|
1142
|
+
"family": "mono",
|
|
1143
|
+
"fontSize": "11px",
|
|
1144
|
+
"lineHeight": "16px",
|
|
1145
|
+
"fontWeight": 500,
|
|
1146
|
+
"letterSpacing": "0.08em",
|
|
1147
|
+
"textTransform": "uppercase",
|
|
1148
|
+
"usage": "Uppercase section labels, table column headers, grid cell labels. Uppercase via CSS."
|
|
1149
|
+
},
|
|
1150
|
+
{
|
|
1151
|
+
"name": "mono",
|
|
1152
|
+
"family": "mono",
|
|
1153
|
+
"fontSize": "13px",
|
|
1154
|
+
"lineHeight": "20px",
|
|
1155
|
+
"fontWeight": 400,
|
|
1156
|
+
"usage": "Logs, tool calls, IDs, DNS values, email addresses in lists."
|
|
1157
|
+
},
|
|
1158
|
+
{
|
|
1159
|
+
"name": "mono-sm",
|
|
1160
|
+
"family": "mono",
|
|
1161
|
+
"fontSize": "12px",
|
|
1162
|
+
"lineHeight": "16px",
|
|
1163
|
+
"fontWeight": 400,
|
|
1164
|
+
"usage": "Timestamps, amounts in dense tables, shortcuts."
|
|
1165
|
+
},
|
|
1166
|
+
{
|
|
1167
|
+
"name": "numeric",
|
|
1168
|
+
"family": "mono",
|
|
1169
|
+
"fontSize": "24px",
|
|
1170
|
+
"lineHeight": "28px",
|
|
1171
|
+
"fontWeight": 500,
|
|
1172
|
+
"letterSpacing": "-0.02em",
|
|
1173
|
+
"usage": "KPI values in stat cells. Always tabular figures."
|
|
1174
|
+
}
|
|
1175
|
+
],
|
|
1176
|
+
"space": [
|
|
1177
|
+
{
|
|
1178
|
+
"name": "space-0-5",
|
|
1179
|
+
"value": "2px",
|
|
1180
|
+
"usage": "Icon-to-badge nudges, hairline offsets."
|
|
1181
|
+
},
|
|
1182
|
+
{
|
|
1183
|
+
"name": "space-1",
|
|
1184
|
+
"value": "4px",
|
|
1185
|
+
"usage": "Gap inside badges and kbd groups."
|
|
1186
|
+
},
|
|
1187
|
+
{
|
|
1188
|
+
"name": "space-2",
|
|
1189
|
+
"value": "8px",
|
|
1190
|
+
"usage": "Gap between icon and label, between buttons in a group."
|
|
1191
|
+
},
|
|
1192
|
+
{
|
|
1193
|
+
"name": "space-3",
|
|
1194
|
+
"value": "12px",
|
|
1195
|
+
"usage": "Compact horizontal cell and control padding."
|
|
1196
|
+
},
|
|
1197
|
+
{
|
|
1198
|
+
"name": "space-4",
|
|
1199
|
+
"value": "16px",
|
|
1200
|
+
"usage": "Grid cell padding, comfortable control padding, page gutter on mobile."
|
|
1201
|
+
},
|
|
1202
|
+
{
|
|
1203
|
+
"name": "space-5",
|
|
1204
|
+
"value": "20px",
|
|
1205
|
+
"usage": "Dialog body padding."
|
|
1206
|
+
},
|
|
1207
|
+
{
|
|
1208
|
+
"name": "space-6",
|
|
1209
|
+
"value": "24px",
|
|
1210
|
+
"usage": "Cell padding on overview grids; background-grid pitch."
|
|
1211
|
+
},
|
|
1212
|
+
{
|
|
1213
|
+
"name": "space-8",
|
|
1214
|
+
"value": "32px",
|
|
1215
|
+
"usage": "Gap between stacked sections inside a panel."
|
|
1216
|
+
},
|
|
1217
|
+
{
|
|
1218
|
+
"name": "space-10",
|
|
1219
|
+
"value": "40px",
|
|
1220
|
+
"usage": "Outer margin of the app frame on large screens."
|
|
1221
|
+
},
|
|
1222
|
+
{
|
|
1223
|
+
"name": "space-12",
|
|
1224
|
+
"value": "48px",
|
|
1225
|
+
"usage": "Empty-state padding."
|
|
1226
|
+
},
|
|
1227
|
+
{
|
|
1228
|
+
"name": "space-16",
|
|
1229
|
+
"value": "64px",
|
|
1230
|
+
"usage": "Login and onboarding vertical rhythm."
|
|
1231
|
+
}
|
|
1232
|
+
],
|
|
1233
|
+
"radius": [
|
|
1234
|
+
{
|
|
1235
|
+
"name": "radius",
|
|
1236
|
+
"value": "2px",
|
|
1237
|
+
"usage": "Theme: the base corner radius; Pro is square at 2px, larger values round cards and menus too (shadcn `radius`)."
|
|
1238
|
+
},
|
|
1239
|
+
{
|
|
1240
|
+
"name": "radius-sm",
|
|
1241
|
+
"value": "{radius-1}",
|
|
1242
|
+
"usage": "Inputs inside cells, row hovers, small tiles."
|
|
1243
|
+
},
|
|
1244
|
+
{
|
|
1245
|
+
"name": "radius-md",
|
|
1246
|
+
"value": "calc((var(--radius) - 2px) * 1)",
|
|
1247
|
+
"usage": "Stat cells, event cards, menus: square in Pro."
|
|
1248
|
+
},
|
|
1249
|
+
{
|
|
1250
|
+
"name": "radius-lg",
|
|
1251
|
+
"value": "calc((var(--radius) - 2px) * 1.375)",
|
|
1252
|
+
"usage": "Cards and panels: square cells of the hairline grid."
|
|
1253
|
+
},
|
|
1254
|
+
{
|
|
1255
|
+
"name": "radius-xl",
|
|
1256
|
+
"value": "calc((var(--radius) - 2px) * 1.875)",
|
|
1257
|
+
"usage": "The workspace sheet and app frame: square in Pro."
|
|
1258
|
+
},
|
|
1259
|
+
{
|
|
1260
|
+
"name": "radius-pill",
|
|
1261
|
+
"value": "{radius-1}",
|
|
1262
|
+
"usage": "Buttons, chips, badges, tabs and inputs: 2px in Pro."
|
|
1263
|
+
},
|
|
1264
|
+
{
|
|
1265
|
+
"name": "radius-0",
|
|
1266
|
+
"value": "0px",
|
|
1267
|
+
"usage": "Default for everything structural: cells, panels, tables, dialogs, sheets, cards."
|
|
1268
|
+
},
|
|
1269
|
+
{
|
|
1270
|
+
"name": "radius-1",
|
|
1271
|
+
"value": "var(--radius)",
|
|
1272
|
+
"usage": "Controls: buttons, inputs, badges, kbd, switches, tooltips."
|
|
1273
|
+
},
|
|
1274
|
+
{
|
|
1275
|
+
"name": "radius-full",
|
|
1276
|
+
"value": "9999px",
|
|
1277
|
+
"usage": "Only status dots and radio buttons."
|
|
1278
|
+
}
|
|
1279
|
+
],
|
|
1280
|
+
"motion": [
|
|
1281
|
+
{
|
|
1282
|
+
"name": "dur-fast",
|
|
1283
|
+
"value": "{duration-fast}",
|
|
1284
|
+
"usage": "Press, hover colour changes, chip toggles."
|
|
1285
|
+
},
|
|
1286
|
+
{
|
|
1287
|
+
"name": "dur-base",
|
|
1288
|
+
"value": "{duration-base}",
|
|
1289
|
+
"usage": "Tab indicator slide, menu open, card lift."
|
|
1290
|
+
},
|
|
1291
|
+
{
|
|
1292
|
+
"name": "dur-enter",
|
|
1293
|
+
"value": "{duration-base}",
|
|
1294
|
+
"usage": "Entrances: short and quiet in Pro."
|
|
1295
|
+
},
|
|
1296
|
+
{
|
|
1297
|
+
"name": "dur-slow",
|
|
1298
|
+
"value": "{duration-base}",
|
|
1299
|
+
"usage": "Count-ups, chart draw-ins and progress fills: short in Pro."
|
|
1300
|
+
},
|
|
1301
|
+
{
|
|
1302
|
+
"name": "stagger-step",
|
|
1303
|
+
"value": "0ms",
|
|
1304
|
+
"usage": "No staggered entrances in Pro."
|
|
1305
|
+
},
|
|
1306
|
+
{
|
|
1307
|
+
"name": "ease-out",
|
|
1308
|
+
"value": "{ease-standard}",
|
|
1309
|
+
"usage": "Entrances."
|
|
1310
|
+
},
|
|
1311
|
+
{
|
|
1312
|
+
"name": "ease-spring",
|
|
1313
|
+
"value": "{ease-standard}",
|
|
1314
|
+
"usage": "No overshoot in Pro: the standard curve."
|
|
1315
|
+
},
|
|
1316
|
+
{
|
|
1317
|
+
"name": "ease-in-out",
|
|
1318
|
+
"value": "{ease-standard}",
|
|
1319
|
+
"usage": "Things moving between two resting places."
|
|
1320
|
+
},
|
|
1321
|
+
{
|
|
1322
|
+
"name": "duration-fast",
|
|
1323
|
+
"value": "90ms",
|
|
1324
|
+
"usage": "Hover and press feedback."
|
|
1325
|
+
},
|
|
1326
|
+
{
|
|
1327
|
+
"name": "duration-base",
|
|
1328
|
+
"value": "140ms",
|
|
1329
|
+
"usage": "Menus, popovers, sheets, toasts entering."
|
|
1330
|
+
},
|
|
1331
|
+
{
|
|
1332
|
+
"name": "ease-standard",
|
|
1333
|
+
"value": "cubic-bezier(0.2, 0, 0, 1)",
|
|
1334
|
+
"usage": "The only easing curve."
|
|
1335
|
+
}
|
|
1336
|
+
],
|
|
1337
|
+
"size": [
|
|
1338
|
+
{
|
|
1339
|
+
"name": "control-sm",
|
|
1340
|
+
"value": "24px",
|
|
1341
|
+
"usage": "Small buttons in dense toolbars."
|
|
1342
|
+
},
|
|
1343
|
+
{
|
|
1344
|
+
"name": "control-md",
|
|
1345
|
+
"value": "{control-dense}",
|
|
1346
|
+
"usage": "Default control height (follows density in components)."
|
|
1347
|
+
},
|
|
1348
|
+
{
|
|
1349
|
+
"name": "control-lg",
|
|
1350
|
+
"value": "{control-comfy}",
|
|
1351
|
+
"usage": "Large controls."
|
|
1352
|
+
},
|
|
1353
|
+
{
|
|
1354
|
+
"name": "row-dense",
|
|
1355
|
+
"value": "28px",
|
|
1356
|
+
"usage": "Row height for tables, lists and nav items in compact density."
|
|
1357
|
+
},
|
|
1358
|
+
{
|
|
1359
|
+
"name": "row-comfy",
|
|
1360
|
+
"value": "36px",
|
|
1361
|
+
"usage": "Row height in comfortable density."
|
|
1362
|
+
},
|
|
1363
|
+
{
|
|
1364
|
+
"name": "control-dense",
|
|
1365
|
+
"value": "28px",
|
|
1366
|
+
"usage": "Button and input height in compact density."
|
|
1367
|
+
},
|
|
1368
|
+
{
|
|
1369
|
+
"name": "control-comfy",
|
|
1370
|
+
"value": "34px",
|
|
1371
|
+
"usage": "Button and input height in comfortable density."
|
|
1372
|
+
},
|
|
1373
|
+
{
|
|
1374
|
+
"name": "topbar-h",
|
|
1375
|
+
"value": "44px",
|
|
1376
|
+
"usage": "Top bar height."
|
|
1377
|
+
},
|
|
1378
|
+
{
|
|
1379
|
+
"name": "sidebar-w",
|
|
1380
|
+
"value": "232px",
|
|
1381
|
+
"usage": "Sidebar width, expanded."
|
|
1382
|
+
},
|
|
1383
|
+
{
|
|
1384
|
+
"name": "sidebar-w-collapsed",
|
|
1385
|
+
"value": "52px",
|
|
1386
|
+
"usage": "Sidebar width, icon-only."
|
|
1387
|
+
},
|
|
1388
|
+
{
|
|
1389
|
+
"name": "subnav-w",
|
|
1390
|
+
"value": "{sidebar-w}",
|
|
1391
|
+
"usage": "SubNav width."
|
|
1392
|
+
},
|
|
1393
|
+
{
|
|
1394
|
+
"name": "side-panel-w",
|
|
1395
|
+
"value": "320px",
|
|
1396
|
+
"usage": "Side panel width."
|
|
1397
|
+
},
|
|
1398
|
+
{
|
|
1399
|
+
"name": "icon-sm",
|
|
1400
|
+
"value": "14px",
|
|
1401
|
+
"usage": "Icons inside badges and dense table cells."
|
|
1402
|
+
},
|
|
1403
|
+
{
|
|
1404
|
+
"name": "icon-md",
|
|
1405
|
+
"value": "16px",
|
|
1406
|
+
"usage": "Default Lucide icon size."
|
|
1407
|
+
},
|
|
1408
|
+
{
|
|
1409
|
+
"name": "icon-lg",
|
|
1410
|
+
"value": "16px",
|
|
1411
|
+
"usage": "Icons in navigation: same as icon-md in Pro."
|
|
1412
|
+
},
|
|
1413
|
+
{
|
|
1414
|
+
"name": "line-width",
|
|
1415
|
+
"value": "1px",
|
|
1416
|
+
"usage": "Every border and grid line (Pro calls it hairline)."
|
|
1417
|
+
}
|
|
1418
|
+
],
|
|
1419
|
+
"z": [
|
|
1420
|
+
{
|
|
1421
|
+
"name": "z-sticky",
|
|
1422
|
+
"value": "10",
|
|
1423
|
+
"usage": "Sticky table headers, top bar."
|
|
1424
|
+
},
|
|
1425
|
+
{
|
|
1426
|
+
"name": "z-overlay",
|
|
1427
|
+
"value": "40",
|
|
1428
|
+
"usage": "Menus, popovers, sheets, dialogs."
|
|
1429
|
+
},
|
|
1430
|
+
{
|
|
1431
|
+
"name": "z-palette",
|
|
1432
|
+
"value": "60",
|
|
1433
|
+
"usage": "Command palette."
|
|
1434
|
+
},
|
|
1435
|
+
{
|
|
1436
|
+
"name": "z-toast",
|
|
1437
|
+
"value": "50",
|
|
1438
|
+
"usage": "Toast stack."
|
|
1439
|
+
}
|
|
1440
|
+
],
|
|
1441
|
+
"density": {
|
|
1442
|
+
"compact": {
|
|
1443
|
+
"density-control": "{control-dense}",
|
|
1444
|
+
"density-row": "{row-dense}",
|
|
1445
|
+
"density-pad-x": "{space-3}",
|
|
1446
|
+
"density-font-size": "13px",
|
|
1447
|
+
"density-line-height": "18px"
|
|
1448
|
+
},
|
|
1449
|
+
"comfortable": {
|
|
1450
|
+
"density-control": "{control-comfy}",
|
|
1451
|
+
"density-row": "{row-comfy}",
|
|
1452
|
+
"density-pad-x": "{space-4}",
|
|
1453
|
+
"density-font-size": "14px",
|
|
1454
|
+
"density-line-height": "20px"
|
|
1455
|
+
}
|
|
1456
|
+
}
|
|
1457
|
+
}
|