@conductor-by-89soone/tokens 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3081 @@
1
+ {
2
+ "themes": [
3
+ "dark",
4
+ "light"
5
+ ],
6
+ "tokens": [
7
+ {
8
+ "key": "surface.base",
9
+ "cssName": "--cdt-surface-base",
10
+ "tier": "semantic",
11
+ "usage": "decorative",
12
+ "description": "Application background. Contrast-exempt: surfaces are background arguments.",
13
+ "values": {
14
+ "dark": "#080b12",
15
+ "light": "#e8ecf2"
16
+ }
17
+ },
18
+ {
19
+ "key": "surface.canvas",
20
+ "cssName": "--cdt-surface-canvas",
21
+ "tier": "semantic",
22
+ "usage": "decorative",
23
+ "description": "Content canvas. Contrast-exempt: surfaces are background arguments.",
24
+ "values": {
25
+ "dark": "#0b101a",
26
+ "light": "#eef1f6"
27
+ }
28
+ },
29
+ {
30
+ "key": "surface.subtle",
31
+ "cssName": "--cdt-surface-subtle",
32
+ "tier": "semantic",
33
+ "usage": "decorative",
34
+ "description": "Recessed fill. Contrast-exempt: surfaces are background arguments.",
35
+ "values": {
36
+ "dark": "#101722",
37
+ "light": "#f3f6f9"
38
+ }
39
+ },
40
+ {
41
+ "key": "surface.2",
42
+ "cssName": "--cdt-surface-2",
43
+ "tier": "semantic",
44
+ "usage": "decorative",
45
+ "description": "Source alias of `surface.subtle`, kept as a reference (FR-THM-001 AC-2).",
46
+ "alias": "surface.subtle",
47
+ "values": {
48
+ "dark": "#101722",
49
+ "light": "#f3f6f9"
50
+ }
51
+ },
52
+ {
53
+ "key": "surface.raised",
54
+ "cssName": "--cdt-surface-raised",
55
+ "tier": "semantic",
56
+ "usage": "decorative",
57
+ "description": "Card and panel fill. Contrast-exempt: surfaces are background arguments.",
58
+ "values": {
59
+ "dark": "#141d2a",
60
+ "light": "#fbfcfd"
61
+ }
62
+ },
63
+ {
64
+ "key": "surface.elevated",
65
+ "cssName": "--cdt-surface-elevated",
66
+ "tier": "semantic",
67
+ "usage": "decorative",
68
+ "description": "Highest surface. Contrast-exempt: surfaces are background arguments.",
69
+ "values": {
70
+ "dark": "#192535",
71
+ "light": "#ffffff"
72
+ }
73
+ },
74
+ {
75
+ "key": "surface.overlay",
76
+ "cssName": "--cdt-surface-overlay",
77
+ "tier": "semantic",
78
+ "usage": "decorative",
79
+ "description": "Dialog scrim. Contrast-exempt: nothing is drawn on top of a scrim.",
80
+ "values": {
81
+ "dark": "rgba(4, 7, 12, 0.78)",
82
+ "light": "rgba(12, 18, 28, 0.45)"
83
+ }
84
+ },
85
+ {
86
+ "key": "surface.glass",
87
+ "cssName": "--cdt-surface-glass",
88
+ "tier": "semantic",
89
+ "usage": "decorative",
90
+ "description": "Translucent panel behind `backdrop-filter`. Contrast-exempt: translucent layer.",
91
+ "values": {
92
+ "dark": "rgba(16, 23, 34, 0.82)",
93
+ "light": "rgba(251, 252, 253, 0.86)"
94
+ }
95
+ },
96
+ {
97
+ "key": "surface.timeline",
98
+ "cssName": "--cdt-surface-timeline",
99
+ "tier": "semantic",
100
+ "usage": "decorative",
101
+ "description": "Timeline rail. Contrast-exempt: surfaces are background arguments.",
102
+ "values": {
103
+ "dark": "#0d141f",
104
+ "light": "#f1f4f8"
105
+ }
106
+ },
107
+ {
108
+ "key": "surface.track",
109
+ "cssName": "--cdt-surface-track",
110
+ "tier": "semantic",
111
+ "usage": "decorative",
112
+ "description": "Progress and meter track, matching the source 1:1.",
113
+ "values": {
114
+ "dark": "rgba(255, 255, 255, 0.05)",
115
+ "light": "rgba(12, 18, 28, 0.08)"
116
+ }
117
+ },
118
+ {
119
+ "key": "text.primary",
120
+ "cssName": "--cdt-text-primary",
121
+ "tier": "semantic",
122
+ "usage": "body",
123
+ "description": "Top of the text hierarchy. 14.40:1 to 18.32:1 across the five surfaces.",
124
+ "values": {
125
+ "dark": "#f4f7fb",
126
+ "light": "#0c121c"
127
+ }
128
+ },
129
+ {
130
+ "key": "text.secondary",
131
+ "cssName": "--cdt-text-secondary",
132
+ "tier": "semantic",
133
+ "usage": "body",
134
+ "description": "Supporting copy. 9.83:1 to 12.51:1 across the five surfaces.",
135
+ "values": {
136
+ "dark": "#c5cfdd",
137
+ "light": "#33415a"
138
+ }
139
+ },
140
+ {
141
+ "key": "text.muted",
142
+ "cssName": "--cdt-text-muted",
143
+ "tier": "semantic",
144
+ "usage": "body",
145
+ "description": "De-emphasised copy, table headers, field labels. 4.76:1 to 6.06:1.",
146
+ "values": {
147
+ "dark": "#8290a3",
148
+ "light": "#4d5a6e"
149
+ }
150
+ },
151
+ {
152
+ "key": "text.faint",
153
+ "cssName": "--cdt-text-faint",
154
+ "tier": "semantic",
155
+ "usage": "decorative",
156
+ "description": "Meta text, timestamps, uppercase labels and input placeholders only. Contrast-exempt: 2.94:1 to 3.74:1 never reaches body 4.5:1. Forbidden on `surface.elevated` (FR-THM-005 AC-3).",
157
+ "values": {
158
+ "dark": "#5f6d80",
159
+ "light": "#6b788c"
160
+ }
161
+ },
162
+ {
163
+ "key": "text.inverse",
164
+ "cssName": "--cdt-text-inverse",
165
+ "tier": "semantic",
166
+ "usage": "body",
167
+ "description": "Text on an accent, status or severity fill.",
168
+ "values": {
169
+ "dark": "#07111f",
170
+ "light": "#f4f7fb"
171
+ }
172
+ },
173
+ {
174
+ "key": "text.monoPayload",
175
+ "cssName": "--cdt-text-mono-payload",
176
+ "tier": "semantic",
177
+ "usage": "body",
178
+ "description": "Monospace payload text. 13.44:1 on `surface.raised`.",
179
+ "values": {
180
+ "dark": "#dce6f3",
181
+ "light": "#1b2537"
182
+ }
183
+ },
184
+ {
185
+ "key": "border.subtle",
186
+ "cssName": "--cdt-border-subtle",
187
+ "tier": "semantic",
188
+ "usage": "decorative",
189
+ "description": "Hairline divider. Contrast-exempt (1.13:1), WCAG 1.4.11 exception: card and panel edges are already identified by surface luminance and `elevation.*` (FR-THM-005 AC-4).",
190
+ "values": {
191
+ "dark": "rgba(148, 163, 184, 0.1)",
192
+ "light": "#e2e8f0"
193
+ }
194
+ },
195
+ {
196
+ "key": "border.default",
197
+ "cssName": "--cdt-border-default",
198
+ "tier": "semantic",
199
+ "usage": "decorative",
200
+ "description": "Default edge. Contrast-exempt (1.30:1), same WCAG 1.4.11 exception. Form controls use `border.control` instead (FR-THM-005 AC-4).",
201
+ "values": {
202
+ "dark": "rgba(148, 163, 184, 0.18)",
203
+ "light": "#6b788c"
204
+ }
205
+ },
206
+ {
207
+ "key": "border.strong",
208
+ "cssName": "--cdt-border-strong",
209
+ "tier": "semantic",
210
+ "usage": "decorative",
211
+ "description": "Pronounced edge for buttons and overlays. Contrast-exempt (1.69:1), same WCAG 1.4.11 exception (FR-THM-005 AC-4).",
212
+ "values": {
213
+ "dark": "rgba(148, 163, 184, 0.3)",
214
+ "light": "#5b6879"
215
+ }
216
+ },
217
+ {
218
+ "key": "border.control",
219
+ "cssName": "--cdt-border-control",
220
+ "tier": "semantic",
221
+ "usage": "nonText",
222
+ "description": "Form control edge. Corrected token (FR-THM-005 AC-2): the source reused `border.default` at 1.30:1. Alpha 0.60 yields 3.23:1 on `surface.raised`. Applies to TextField, TextArea, Select, Switch and Checkbox only.",
223
+ "values": {
224
+ "dark": "rgba(148, 163, 184, 0.6)",
225
+ "light": "#64748b"
226
+ }
227
+ },
228
+ {
229
+ "key": "border.DEFAULT",
230
+ "cssName": "--cdt-border",
231
+ "tier": "semantic",
232
+ "usage": "decorative",
233
+ "description": "Source alias of `border.default`, kept as a reference (FR-THM-001 AC-2).",
234
+ "alias": "border.default",
235
+ "values": {
236
+ "dark": "rgba(148, 163, 184, 0.18)",
237
+ "light": "#6b788c"
238
+ }
239
+ },
240
+ {
241
+ "key": "accent.DEFAULT",
242
+ "cssName": "--cdt-accent",
243
+ "tier": "semantic",
244
+ "usage": "body",
245
+ "description": "The single accent. 5.60:1 on `surface.base`, 4.82:1 on `surface.raised`. Body use on `surface.elevated` is forbidden (4.40:1); large text and non-text use are allowed.",
246
+ "values": {
247
+ "dark": "#6d7cff",
248
+ "light": "#4f5bd5"
249
+ }
250
+ },
251
+ {
252
+ "key": "accent.strong",
253
+ "cssName": "--cdt-accent-strong",
254
+ "tier": "semantic",
255
+ "usage": "nonText",
256
+ "description": "Second accent step. Never a fill beneath body text; 4.36:1 on `surface.base`.",
257
+ "values": {
258
+ "dark": "#5667f5",
259
+ "light": "#3f4ac0"
260
+ }
261
+ },
262
+ {
263
+ "key": "accent.soft",
264
+ "cssName": "--cdt-accent-soft",
265
+ "tier": "semantic",
266
+ "usage": "decorative",
267
+ "description": "Faint accent wash. Contrast-exempt: text above it is always `text.primary`.",
268
+ "values": {
269
+ "dark": "rgba(109, 124, 255, 0.14)",
270
+ "light": "rgba(79, 91, 213, 0.14)"
271
+ }
272
+ },
273
+ {
274
+ "key": "accent.glow",
275
+ "cssName": "--cdt-accent-glow",
276
+ "tier": "semantic",
277
+ "usage": "decorative",
278
+ "description": "Dark-only glow. Contrast-exempt: never the sole carrier of information.",
279
+ "values": {
280
+ "dark": "rgba(109, 124, 255, 0.28)",
281
+ "light": "rgba(79, 91, 213, 0.22)"
282
+ }
283
+ },
284
+ {
285
+ "key": "status.queued",
286
+ "cssName": "--cdt-status-queued",
287
+ "tier": "semantic",
288
+ "usage": "nonText",
289
+ "description": "Queued. 3.56:1 on `surface.raised`. Dot and marker only, never a text foreground; the component must render an icon and a label alongside it (FR-THM-005 AC-5, AC-7).",
290
+ "icon": "circle-dashed",
291
+ "values": {
292
+ "dark": "#64748b",
293
+ "light": "#52607a"
294
+ }
295
+ },
296
+ {
297
+ "key": "status.running",
298
+ "cssName": "--cdt-status-running",
299
+ "tier": "semantic",
300
+ "usage": "body",
301
+ "description": "Running. Resolves to the accent, matching the source 1:1 (`#6d7cff`); the reference keeps the accent family single-sourced (design principle P-5).",
302
+ "alias": "accent.DEFAULT",
303
+ "icon": "loader",
304
+ "values": {
305
+ "dark": "#6d7cff",
306
+ "light": "#4f5bd5"
307
+ }
308
+ },
309
+ {
310
+ "key": "status.waiting",
311
+ "cssName": "--cdt-status-waiting",
312
+ "tier": "semantic",
313
+ "usage": "body",
314
+ "description": "Waiting on input. 7.89:1 on `surface.raised`.",
315
+ "icon": "pause-circle",
316
+ "values": {
317
+ "dark": "#f59e0b",
318
+ "light": "#b45309"
319
+ }
320
+ },
321
+ {
322
+ "key": "status.success",
323
+ "cssName": "--cdt-status-success",
324
+ "tier": "semantic",
325
+ "usage": "body",
326
+ "description": "Completed successfully. 6.68:1 on `surface.raised`.",
327
+ "icon": "check-circle-2",
328
+ "values": {
329
+ "dark": "#10b981",
330
+ "light": "#047857"
331
+ }
332
+ },
333
+ {
334
+ "key": "status.partial",
335
+ "cssName": "--cdt-status-partial",
336
+ "tier": "semantic",
337
+ "usage": "body",
338
+ "description": "Completed with gaps. 8.84:1 on `surface.raised`.",
339
+ "icon": "alert-circle",
340
+ "values": {
341
+ "dark": "#eab308",
342
+ "light": "#a16207"
343
+ }
344
+ },
345
+ {
346
+ "key": "status.danger",
347
+ "cssName": "--cdt-status-danger",
348
+ "tier": "semantic",
349
+ "usage": "body",
350
+ "description": "Failed. 4.50:1 on `surface.raised`.",
351
+ "icon": "x-circle",
352
+ "values": {
353
+ "dark": "#ef4444",
354
+ "light": "#c81e1e"
355
+ }
356
+ },
357
+ {
358
+ "key": "status.neutralEnd",
359
+ "cssName": "--cdt-status-neutral-end",
360
+ "tier": "semantic",
361
+ "usage": "decorative",
362
+ "description": "Cancelled or superseded. Contrast-exempt per CR-006 (`srs_final.md` 12.1): 2.04:1 to 2.60:1 reaches non-text 3:1 on no surface. WCAG 1.4.11 exception — FR-THM-005 AC-7 forces an icon and a label alongside the colour, and the source's surface-coloured ring supplies the marker's shape boundary, so the dot's fill carries no identification on its own. Known cost: the dot reads faintly against a dark background.",
363
+ "icon": "circle-slash",
364
+ "values": {
365
+ "dark": "#475569",
366
+ "light": "#3f4b5f"
367
+ }
368
+ },
369
+ {
370
+ "key": "meter.normal",
371
+ "cssName": "--cdt-meter-normal",
372
+ "tier": "semantic",
373
+ "usage": "body",
374
+ "description": "Below the warning threshold. 8.82:1 on `surface.raised`.",
375
+ "values": {
376
+ "dark": "#34d399",
377
+ "light": "#047857"
378
+ }
379
+ },
380
+ {
381
+ "key": "meter.warning",
382
+ "cssName": "--cdt-meter-warning",
383
+ "tier": "semantic",
384
+ "usage": "body",
385
+ "description": "Past the warning threshold. 10.15:1 on `surface.raised`.",
386
+ "values": {
387
+ "dark": "#fbbf24",
388
+ "light": "#b45309"
389
+ }
390
+ },
391
+ {
392
+ "key": "meter.exceeded",
393
+ "cssName": "--cdt-meter-exceeded",
394
+ "tier": "semantic",
395
+ "usage": "body",
396
+ "description": "Past the hard limit. 6.13:1 on `surface.raised`.",
397
+ "alias": "red.400",
398
+ "values": {
399
+ "dark": "#f87171",
400
+ "light": "#dc2626"
401
+ }
402
+ },
403
+ {
404
+ "key": "severity.read",
405
+ "cssName": "--cdt-severity-read",
406
+ "tier": "semantic",
407
+ "usage": "body",
408
+ "description": "Read-only side effect. Fill only; 4.67:1 beneath `text.primary`.",
409
+ "icon": "eye",
410
+ "values": {
411
+ "dark": "#15803d",
412
+ "light": "#15803d"
413
+ }
414
+ },
415
+ {
416
+ "key": "severity.write",
417
+ "cssName": "--cdt-severity-write",
418
+ "tier": "semantic",
419
+ "usage": "body",
420
+ "description": "Mutating side effect. Fill only; 4.82:1 beneath `text.primary`.",
421
+ "icon": "pencil",
422
+ "values": {
423
+ "dark": "#c2410c",
424
+ "light": "#c2410c"
425
+ }
426
+ },
427
+ {
428
+ "key": "severity.destructive",
429
+ "cssName": "--cdt-severity-destructive",
430
+ "tier": "semantic",
431
+ "usage": "body",
432
+ "description": "Destructive side effect. Fill only; 6.02:1 beneath `text.primary`.",
433
+ "icon": "trash-2",
434
+ "values": {
435
+ "dark": "#b91c1c",
436
+ "light": "#b91c1c"
437
+ }
438
+ },
439
+ {
440
+ "key": "severity.blocked",
441
+ "cssName": "--cdt-severity-blocked",
442
+ "tier": "semantic",
443
+ "usage": "body",
444
+ "description": "Blocked by policy. Fill only; 9.32:1 beneath `text.primary`.",
445
+ "icon": "shield-x",
446
+ "values": {
447
+ "dark": "#7f1d1d",
448
+ "light": "#7f1d1d"
449
+ }
450
+ },
451
+ {
452
+ "key": "font.sans",
453
+ "cssName": "--cdt-font-sans",
454
+ "tier": "semantic",
455
+ "usage": "decorative",
456
+ "description": "Interface font stack. Not a colour.",
457
+ "alias": "stack.sans",
458
+ "values": {
459
+ "dark": "Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif",
460
+ "light": "Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif"
461
+ }
462
+ },
463
+ {
464
+ "key": "font.mono",
465
+ "cssName": "--cdt-font-mono",
466
+ "tier": "semantic",
467
+ "usage": "decorative",
468
+ "description": "Payload and code font stack. Not a colour.",
469
+ "alias": "stack.mono",
470
+ "values": {
471
+ "dark": "'JetBrains Mono', ui-monospace, SFMono-Regular, \"SF Mono\", Menlo, monospace",
472
+ "light": "'JetBrains Mono', ui-monospace, SFMono-Regular, \"SF Mono\", Menlo, monospace"
473
+ }
474
+ },
475
+ {
476
+ "key": "elevation.raised",
477
+ "cssName": "--cdt-elevation-raised",
478
+ "tier": "semantic",
479
+ "usage": "decorative",
480
+ "description": "Resting card shadow. Contrast-exempt: a shadow, not a colour.",
481
+ "values": {
482
+ "dark": "0 12px 30px rgba(0, 0, 0, 0.18)",
483
+ "light": "0 12px 30px rgba(12, 18, 28, 0.08)"
484
+ }
485
+ },
486
+ {
487
+ "key": "elevation.hover",
488
+ "cssName": "--cdt-elevation-hover",
489
+ "tier": "semantic",
490
+ "usage": "decorative",
491
+ "description": "Hovered card shadow. Contrast-exempt: a shadow, not a colour.",
492
+ "values": {
493
+ "dark": "0 18px 46px rgba(0, 0, 0, 0.26)",
494
+ "light": "0 18px 46px rgba(12, 18, 28, 0.12)"
495
+ }
496
+ },
497
+ {
498
+ "key": "elevation.overlay",
499
+ "cssName": "--cdt-elevation-overlay",
500
+ "tier": "semantic",
501
+ "usage": "decorative",
502
+ "description": "Overlay shadow plus a 1px ring. The ring references `border.strong` so each theme resolves its own edge. Contrast-exempt with that border (FR-THM-005 AC-4).",
503
+ "values": {
504
+ "dark": "0 24px 64px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(148, 163, 184, 0.3)",
505
+ "light": "0 24px 64px rgba(12, 18, 28, 0.2), 0 0 0 1px #5b6879"
506
+ }
507
+ },
508
+ {
509
+ "key": "focusRing",
510
+ "cssName": "--cdt-focus-ring",
511
+ "tier": "semantic",
512
+ "usage": "nonText",
513
+ "description": "Corrected token (FR-THM-005 AC-1). The source used accent alpha 0.30, which composites to 1.50:1 on `surface.base` and fails WCAG 2.4.11; a focus indicator cannot be decorative. Alpha 0.80 gives 3.93:1 on `surface.base` and 3.56:1 on `surface.raised`.",
514
+ "values": {
515
+ "dark": "0 0 0 3px rgba(109, 124, 255, 0.8)",
516
+ "light": "0 0 0 3px rgba(79, 91, 213, 0.8)"
517
+ }
518
+ },
519
+ {
520
+ "key": "state.hover",
521
+ "cssName": "--cdt-state-hover",
522
+ "tier": "semantic",
523
+ "usage": "decorative",
524
+ "description": "Hover wash. Contrast-exempt: nudges the surface, carries no meaning.",
525
+ "values": {
526
+ "dark": "rgba(255, 255, 255, 0.055)",
527
+ "light": "rgba(12, 18, 28, 0.05)"
528
+ }
529
+ },
530
+ {
531
+ "key": "state.selected",
532
+ "cssName": "--cdt-state-selected",
533
+ "tier": "semantic",
534
+ "usage": "decorative",
535
+ "description": "Selected wash. Contrast-exempt: selection is also announced via `aria-pressed` and text.",
536
+ "values": {
537
+ "dark": "rgba(109, 124, 255, 0.16)",
538
+ "light": "rgba(79, 91, 213, 0.12)"
539
+ }
540
+ },
541
+ {
542
+ "key": "state.disabled",
543
+ "cssName": "--cdt-state-disabled",
544
+ "tier": "semantic",
545
+ "usage": "decorative",
546
+ "description": "Disabled fill. Contrast-exempt as a fill; checked beneath `text.muted` (5.05:1).",
547
+ "values": {
548
+ "dark": "#18202c",
549
+ "light": "#e2e8f0"
550
+ }
551
+ },
552
+ {
553
+ "key": "state.disabledPolicy",
554
+ "cssName": "--cdt-state-disabled-policy",
555
+ "tier": "semantic",
556
+ "usage": "decorative",
557
+ "description": "Policy-blocked fill. Contrast-exempt as a fill; checked beneath the label (5.27:1).",
558
+ "values": {
559
+ "dark": "#422006",
560
+ "light": "#fef3c7"
561
+ }
562
+ },
563
+ {
564
+ "key": "font.size.2xs",
565
+ "cssName": "--cdt-font-size-2xs",
566
+ "tier": "semantic",
567
+ "usage": "decorative",
568
+ "description": "Font size step `2xs`.",
569
+ "values": {
570
+ "dark": "10px",
571
+ "light": "10px"
572
+ }
573
+ },
574
+ {
575
+ "key": "font.size.xs",
576
+ "cssName": "--cdt-font-size-xs",
577
+ "tier": "semantic",
578
+ "usage": "decorative",
579
+ "description": "Font size step `xs`.",
580
+ "values": {
581
+ "dark": "11px",
582
+ "light": "11px"
583
+ }
584
+ },
585
+ {
586
+ "key": "font.size.sm",
587
+ "cssName": "--cdt-font-size-sm",
588
+ "tier": "semantic",
589
+ "usage": "decorative",
590
+ "description": "Font size step `sm`.",
591
+ "values": {
592
+ "dark": "12px",
593
+ "light": "12px"
594
+ }
595
+ },
596
+ {
597
+ "key": "font.size.base",
598
+ "cssName": "--cdt-font-size-base",
599
+ "tier": "semantic",
600
+ "usage": "decorative",
601
+ "description": "Font size step `base`.",
602
+ "values": {
603
+ "dark": "13px",
604
+ "light": "13px"
605
+ }
606
+ },
607
+ {
608
+ "key": "font.size.md",
609
+ "cssName": "--cdt-font-size-md",
610
+ "tier": "semantic",
611
+ "usage": "decorative",
612
+ "description": "Font size step `md`.",
613
+ "values": {
614
+ "dark": "14px",
615
+ "light": "14px"
616
+ }
617
+ },
618
+ {
619
+ "key": "font.size.lg",
620
+ "cssName": "--cdt-font-size-lg",
621
+ "tier": "semantic",
622
+ "usage": "decorative",
623
+ "description": "Font size step `lg`.",
624
+ "values": {
625
+ "dark": "16px",
626
+ "light": "16px"
627
+ }
628
+ },
629
+ {
630
+ "key": "font.size.xl",
631
+ "cssName": "--cdt-font-size-xl",
632
+ "tier": "semantic",
633
+ "usage": "decorative",
634
+ "description": "Font size step `xl`.",
635
+ "values": {
636
+ "dark": "20px",
637
+ "light": "20px"
638
+ }
639
+ },
640
+ {
641
+ "key": "font.lineHeight.2xs",
642
+ "cssName": "--cdt-font-line-height-2xs",
643
+ "tier": "semantic",
644
+ "usage": "decorative",
645
+ "description": "Line height paired with `font.size.2xs`.",
646
+ "values": {
647
+ "dark": "14px",
648
+ "light": "14px"
649
+ }
650
+ },
651
+ {
652
+ "key": "font.lineHeight.xs",
653
+ "cssName": "--cdt-font-line-height-xs",
654
+ "tier": "semantic",
655
+ "usage": "decorative",
656
+ "description": "Line height paired with `font.size.xs`.",
657
+ "values": {
658
+ "dark": "16px",
659
+ "light": "16px"
660
+ }
661
+ },
662
+ {
663
+ "key": "font.lineHeight.sm",
664
+ "cssName": "--cdt-font-line-height-sm",
665
+ "tier": "semantic",
666
+ "usage": "decorative",
667
+ "description": "Line height paired with `font.size.sm`.",
668
+ "values": {
669
+ "dark": "18px",
670
+ "light": "18px"
671
+ }
672
+ },
673
+ {
674
+ "key": "font.lineHeight.base",
675
+ "cssName": "--cdt-font-line-height-base",
676
+ "tier": "semantic",
677
+ "usage": "decorative",
678
+ "description": "Line height paired with `font.size.base`.",
679
+ "values": {
680
+ "dark": "20px",
681
+ "light": "20px"
682
+ }
683
+ },
684
+ {
685
+ "key": "font.lineHeight.md",
686
+ "cssName": "--cdt-font-line-height-md",
687
+ "tier": "semantic",
688
+ "usage": "decorative",
689
+ "description": "Line height paired with `font.size.md`.",
690
+ "values": {
691
+ "dark": "21px",
692
+ "light": "21px"
693
+ }
694
+ },
695
+ {
696
+ "key": "font.lineHeight.lg",
697
+ "cssName": "--cdt-font-line-height-lg",
698
+ "tier": "semantic",
699
+ "usage": "decorative",
700
+ "description": "Line height paired with `font.size.lg`.",
701
+ "values": {
702
+ "dark": "24px",
703
+ "light": "24px"
704
+ }
705
+ },
706
+ {
707
+ "key": "font.lineHeight.xl",
708
+ "cssName": "--cdt-font-line-height-xl",
709
+ "tier": "semantic",
710
+ "usage": "decorative",
711
+ "description": "Line height paired with `font.size.xl`.",
712
+ "values": {
713
+ "dark": "26px",
714
+ "light": "26px"
715
+ }
716
+ },
717
+ {
718
+ "key": "space.1",
719
+ "cssName": "--cdt-space-1",
720
+ "tier": "semantic",
721
+ "usage": "decorative",
722
+ "description": "Tightest gap. Badge padding block.",
723
+ "alias": "scale.4",
724
+ "values": {
725
+ "dark": "4px",
726
+ "light": "4px"
727
+ }
728
+ },
729
+ {
730
+ "key": "space.2",
731
+ "cssName": "--cdt-space-2",
732
+ "tier": "semantic",
733
+ "usage": "decorative",
734
+ "description": "Button padding block, button gap.",
735
+ "alias": "scale.8",
736
+ "values": {
737
+ "dark": "8px",
738
+ "light": "8px"
739
+ }
740
+ },
741
+ {
742
+ "key": "space.3",
743
+ "cssName": "--cdt-space-3",
744
+ "tier": "semantic",
745
+ "usage": "decorative",
746
+ "description": "Table cell padding inline, input padding inline.",
747
+ "alias": "scale.12",
748
+ "values": {
749
+ "dark": "12px",
750
+ "light": "12px"
751
+ }
752
+ },
753
+ {
754
+ "key": "space.4",
755
+ "cssName": "--cdt-space-4",
756
+ "tier": "semantic",
757
+ "usage": "decorative",
758
+ "description": "Table cell padding block.",
759
+ "alias": "scale.16",
760
+ "values": {
761
+ "dark": "16px",
762
+ "light": "16px"
763
+ }
764
+ },
765
+ {
766
+ "key": "space.5",
767
+ "cssName": "--cdt-space-5",
768
+ "tier": "semantic",
769
+ "usage": "decorative",
770
+ "description": "Card padding, card grid gap, content stack gap.",
771
+ "alias": "scale.24",
772
+ "values": {
773
+ "dark": "24px",
774
+ "light": "24px"
775
+ }
776
+ },
777
+ {
778
+ "key": "space.6",
779
+ "cssName": "--cdt-space-6",
780
+ "tier": "semantic",
781
+ "usage": "decorative",
782
+ "description": "Page stack gap.",
783
+ "alias": "scale.32",
784
+ "values": {
785
+ "dark": "32px",
786
+ "light": "32px"
787
+ }
788
+ },
789
+ {
790
+ "key": "space.7",
791
+ "cssName": "--cdt-space-7",
792
+ "tier": "semantic",
793
+ "usage": "decorative",
794
+ "description": "Section spacing.",
795
+ "alias": "scale.40",
796
+ "values": {
797
+ "dark": "40px",
798
+ "light": "40px"
799
+ }
800
+ },
801
+ {
802
+ "key": "space.8",
803
+ "cssName": "--cdt-space-8",
804
+ "tier": "semantic",
805
+ "usage": "decorative",
806
+ "description": "Widest gap.",
807
+ "alias": "scale.48",
808
+ "values": {
809
+ "dark": "48px",
810
+ "light": "48px"
811
+ }
812
+ },
813
+ {
814
+ "key": "radius.xs",
815
+ "cssName": "--cdt-radius-xs",
816
+ "tier": "semantic",
817
+ "usage": "decorative",
818
+ "description": "Smallest radius.",
819
+ "alias": "curve.6",
820
+ "values": {
821
+ "dark": "6px",
822
+ "light": "6px"
823
+ }
824
+ },
825
+ {
826
+ "key": "radius.sm",
827
+ "cssName": "--cdt-radius-sm",
828
+ "tier": "semantic",
829
+ "usage": "decorative",
830
+ "description": "Form control radius.",
831
+ "alias": "curve.9",
832
+ "values": {
833
+ "dark": "9px",
834
+ "light": "9px"
835
+ }
836
+ },
837
+ {
838
+ "key": "radius.md",
839
+ "cssName": "--cdt-radius-md",
840
+ "tier": "semantic",
841
+ "usage": "decorative",
842
+ "description": "Button radius, compact card radius.",
843
+ "alias": "curve.12",
844
+ "values": {
845
+ "dark": "12px",
846
+ "light": "12px"
847
+ }
848
+ },
849
+ {
850
+ "key": "radius.lg",
851
+ "cssName": "--cdt-radius-lg",
852
+ "tier": "semantic",
853
+ "usage": "decorative",
854
+ "description": "Card and overlay radius.",
855
+ "alias": "curve.18",
856
+ "values": {
857
+ "dark": "18px",
858
+ "light": "18px"
859
+ }
860
+ },
861
+ {
862
+ "key": "radius.xl",
863
+ "cssName": "--cdt-radius-xl",
864
+ "tier": "semantic",
865
+ "usage": "decorative",
866
+ "description": "Largest radius.",
867
+ "alias": "curve.24",
868
+ "values": {
869
+ "dark": "24px",
870
+ "light": "24px"
871
+ }
872
+ },
873
+ {
874
+ "key": "radius.pill",
875
+ "cssName": "--cdt-radius-pill",
876
+ "tier": "semantic",
877
+ "usage": "decorative",
878
+ "description": "Fully rounded badge, toggle, marker and progress geometry.",
879
+ "values": {
880
+ "dark": "9999px",
881
+ "light": "9999px"
882
+ }
883
+ },
884
+ {
885
+ "key": "z.base",
886
+ "cssName": "--cdt-z-base",
887
+ "tier": "semantic",
888
+ "usage": "decorative",
889
+ "description": "Normal flow.",
890
+ "values": {
891
+ "dark": "0",
892
+ "light": "0"
893
+ }
894
+ },
895
+ {
896
+ "key": "z.raised",
897
+ "cssName": "--cdt-z-raised",
898
+ "tier": "semantic",
899
+ "usage": "decorative",
900
+ "description": "Lifts a focus ring out of an ancestor's `overflow: hidden`.",
901
+ "values": {
902
+ "dark": "10",
903
+ "light": "10"
904
+ }
905
+ },
906
+ {
907
+ "key": "z.sticky",
908
+ "cssName": "--cdt-z-sticky",
909
+ "tier": "semantic",
910
+ "usage": "decorative",
911
+ "description": "The app shell top bar.",
912
+ "values": {
913
+ "dark": "20",
914
+ "light": "20"
915
+ }
916
+ },
917
+ {
918
+ "key": "z.drawer",
919
+ "cssName": "--cdt-z-drawer",
920
+ "tier": "semantic",
921
+ "usage": "decorative",
922
+ "description": "Side navigation and the `Drawer` panel.",
923
+ "values": {
924
+ "dark": "30",
925
+ "light": "30"
926
+ }
927
+ },
928
+ {
929
+ "key": "z.overlay",
930
+ "cssName": "--cdt-z-overlay",
931
+ "tier": "semantic",
932
+ "usage": "decorative",
933
+ "description": "`Dialog` and `Drawer` scrims.",
934
+ "values": {
935
+ "dark": "40",
936
+ "light": "40"
937
+ }
938
+ },
939
+ {
940
+ "key": "z.popover",
941
+ "cssName": "--cdt-z-popover",
942
+ "tier": "semantic",
943
+ "usage": "decorative",
944
+ "description": "`Tooltip`, `DropdownMenu`, `Select` content, skip link.",
945
+ "values": {
946
+ "dark": "50",
947
+ "light": "50"
948
+ }
949
+ },
950
+ {
951
+ "key": "breakpoint.sm",
952
+ "cssName": "--cdt-breakpoint-sm",
953
+ "tier": "semantic",
954
+ "usage": "decorative",
955
+ "description": "Single-column card grid; taller form controls.",
956
+ "values": {
957
+ "dark": "560px",
958
+ "light": "560px"
959
+ }
960
+ },
961
+ {
962
+ "key": "breakpoint.md",
963
+ "cssName": "--cdt-breakpoint-md",
964
+ "tier": "semantic",
965
+ "usage": "decorative",
966
+ "description": "Single-column split layout; table horizontal scroll; off-canvas navigation.",
967
+ "values": {
968
+ "dark": "800px",
969
+ "light": "800px"
970
+ }
971
+ },
972
+ {
973
+ "key": "breakpoint.lg",
974
+ "cssName": "--cdt-breakpoint-lg",
975
+ "tier": "semantic",
976
+ "usage": "decorative",
977
+ "description": "Narrower navigation; narrower minimum grid column.",
978
+ "values": {
979
+ "dark": "1080px",
980
+ "light": "1080px"
981
+ }
982
+ },
983
+ {
984
+ "key": "motion.fast",
985
+ "cssName": "--cdt-motion-fast",
986
+ "tier": "semantic",
987
+ "usage": "decorative",
988
+ "description": "Colour, background and border transitions.",
989
+ "values": {
990
+ "dark": "140ms cubic-bezier(0.2, 0, 0, 1)",
991
+ "light": "140ms cubic-bezier(0.2, 0, 0, 1)"
992
+ }
993
+ },
994
+ {
995
+ "key": "motion.standard",
996
+ "cssName": "--cdt-motion-standard",
997
+ "tier": "semantic",
998
+ "usage": "decorative",
999
+ "description": "Overlay and page entrance.",
1000
+ "values": {
1001
+ "dark": "240ms cubic-bezier(0.2, 0, 0, 1)",
1002
+ "light": "240ms cubic-bezier(0.2, 0, 0, 1)"
1003
+ }
1004
+ },
1005
+ {
1006
+ "key": "motion.bounce",
1007
+ "cssName": "--cdt-motion-bounce",
1008
+ "tier": "semantic",
1009
+ "usage": "decorative",
1010
+ "description": "Toggle and switch settle.",
1011
+ "values": {
1012
+ "dark": "300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
1013
+ "light": "300ms cubic-bezier(0.34, 1.56, 0.64, 1)"
1014
+ }
1015
+ },
1016
+ {
1017
+ "key": "button.minHeight",
1018
+ "cssName": "--cdt-button-min-height",
1019
+ "tier": "component",
1020
+ "usage": "decorative",
1021
+ "description": "Minimum target height.",
1022
+ "values": {
1023
+ "dark": "40px",
1024
+ "light": "40px"
1025
+ }
1026
+ },
1027
+ {
1028
+ "key": "button.minHeightCompact",
1029
+ "cssName": "--cdt-button-min-height-compact",
1030
+ "tier": "component",
1031
+ "usage": "decorative",
1032
+ "description": "Minimum height below `breakpoint.sm`.",
1033
+ "values": {
1034
+ "dark": "42px",
1035
+ "light": "42px"
1036
+ }
1037
+ },
1038
+ {
1039
+ "key": "button.paddingBlock",
1040
+ "cssName": "--cdt-button-padding-block",
1041
+ "tier": "component",
1042
+ "usage": "decorative",
1043
+ "description": "Vertical padding.",
1044
+ "alias": "space.2",
1045
+ "values": {
1046
+ "dark": "8px",
1047
+ "light": "8px"
1048
+ }
1049
+ },
1050
+ {
1051
+ "key": "button.paddingInline",
1052
+ "cssName": "--cdt-button-padding-inline",
1053
+ "tier": "component",
1054
+ "usage": "decorative",
1055
+ "description": "Horizontal padding.",
1056
+ "values": {
1057
+ "dark": "14px",
1058
+ "light": "14px"
1059
+ }
1060
+ },
1061
+ {
1062
+ "key": "button.radius",
1063
+ "cssName": "--cdt-button-radius",
1064
+ "tier": "component",
1065
+ "usage": "decorative",
1066
+ "description": "Corner radius.",
1067
+ "alias": "radius.md",
1068
+ "values": {
1069
+ "dark": "12px",
1070
+ "light": "12px"
1071
+ }
1072
+ },
1073
+ {
1074
+ "key": "button.fontSize",
1075
+ "cssName": "--cdt-button-font-size",
1076
+ "tier": "component",
1077
+ "usage": "decorative",
1078
+ "description": "Label size. 14px for body-level readability.",
1079
+ "alias": "font.size.md",
1080
+ "values": {
1081
+ "dark": "14px",
1082
+ "light": "14px"
1083
+ }
1084
+ },
1085
+ {
1086
+ "key": "button.gap",
1087
+ "cssName": "--cdt-button-gap",
1088
+ "tier": "component",
1089
+ "usage": "decorative",
1090
+ "description": "Gap between icon and label.",
1091
+ "alias": "space.2",
1092
+ "values": {
1093
+ "dark": "8px",
1094
+ "light": "8px"
1095
+ }
1096
+ },
1097
+ {
1098
+ "key": "button.transition",
1099
+ "cssName": "--cdt-button-transition",
1100
+ "tier": "component",
1101
+ "usage": "decorative",
1102
+ "description": "State transition.",
1103
+ "alias": "motion.fast",
1104
+ "values": {
1105
+ "dark": "140ms cubic-bezier(0.2, 0, 0, 1)",
1106
+ "light": "140ms cubic-bezier(0.2, 0, 0, 1)"
1107
+ }
1108
+ },
1109
+ {
1110
+ "key": "button.primary.background",
1111
+ "cssName": "--cdt-button-primary-background",
1112
+ "tier": "component",
1113
+ "usage": "decorative",
1114
+ "description": "Primary fill.",
1115
+ "alias": "accent.DEFAULT",
1116
+ "values": {
1117
+ "dark": "#6d7cff",
1118
+ "light": "#4f5bd5"
1119
+ }
1120
+ },
1121
+ {
1122
+ "key": "button.primary.backgroundHover",
1123
+ "cssName": "--cdt-button-primary-background-hover",
1124
+ "tier": "component",
1125
+ "usage": "decorative",
1126
+ "description": "Primary fill stays flat on hover.",
1127
+ "alias": "accent.DEFAULT",
1128
+ "values": {
1129
+ "dark": "#6d7cff",
1130
+ "light": "#4f5bd5"
1131
+ }
1132
+ },
1133
+ {
1134
+ "key": "button.primary.text",
1135
+ "cssName": "--cdt-button-primary-text",
1136
+ "tier": "component",
1137
+ "usage": "body",
1138
+ "description": "Primary label. 5.39:1 on the fill.",
1139
+ "alias": "text.inverse",
1140
+ "values": {
1141
+ "dark": "#07111f",
1142
+ "light": "#f4f7fb"
1143
+ }
1144
+ },
1145
+ {
1146
+ "key": "button.primary.border",
1147
+ "cssName": "--cdt-button-primary-border",
1148
+ "tier": "component",
1149
+ "usage": "decorative",
1150
+ "description": "Primary needs no edge.",
1151
+ "values": {
1152
+ "dark": "transparent",
1153
+ "light": "transparent"
1154
+ }
1155
+ },
1156
+ {
1157
+ "key": "button.primary.shadow",
1158
+ "cssName": "--cdt-button-primary-shadow",
1159
+ "tier": "component",
1160
+ "usage": "decorative",
1161
+ "description": "Primary resting shadow.",
1162
+ "alias": "elevation.raised",
1163
+ "values": {
1164
+ "dark": "0 12px 30px rgba(0, 0, 0, 0.18)",
1165
+ "light": "0 12px 30px rgba(12, 18, 28, 0.08)"
1166
+ }
1167
+ },
1168
+ {
1169
+ "key": "button.primary.shadowHover",
1170
+ "cssName": "--cdt-button-primary-shadow-hover",
1171
+ "tier": "component",
1172
+ "usage": "decorative",
1173
+ "description": "Primary hover shadow.",
1174
+ "alias": "elevation.hover",
1175
+ "values": {
1176
+ "dark": "0 18px 46px rgba(0, 0, 0, 0.26)",
1177
+ "light": "0 18px 46px rgba(12, 18, 28, 0.12)"
1178
+ }
1179
+ },
1180
+ {
1181
+ "key": "button.secondary.background",
1182
+ "cssName": "--cdt-button-secondary-background",
1183
+ "tier": "component",
1184
+ "usage": "decorative",
1185
+ "description": "Secondary fill.",
1186
+ "alias": "surface.raised",
1187
+ "values": {
1188
+ "dark": "#141d2a",
1189
+ "light": "#fbfcfd"
1190
+ }
1191
+ },
1192
+ {
1193
+ "key": "button.secondary.backgroundHover",
1194
+ "cssName": "--cdt-button-secondary-background-hover",
1195
+ "tier": "component",
1196
+ "usage": "decorative",
1197
+ "description": "Secondary hover fill.",
1198
+ "alias": "surface.elevated",
1199
+ "values": {
1200
+ "dark": "#192535",
1201
+ "light": "#ffffff"
1202
+ }
1203
+ },
1204
+ {
1205
+ "key": "button.secondary.text",
1206
+ "cssName": "--cdt-button-secondary-text",
1207
+ "tier": "component",
1208
+ "usage": "body",
1209
+ "description": "Secondary label.",
1210
+ "alias": "text.primary",
1211
+ "values": {
1212
+ "dark": "#f4f7fb",
1213
+ "light": "#0c121c"
1214
+ }
1215
+ },
1216
+ {
1217
+ "key": "button.secondary.border",
1218
+ "cssName": "--cdt-button-secondary-border",
1219
+ "tier": "component",
1220
+ "usage": "decorative",
1221
+ "description": "Secondary edge. Not `border.control`: FR-THM-005 AC-2 scopes that token to the five form controls, and a button is identified by its fill, label and focus ring.",
1222
+ "alias": "border.strong",
1223
+ "values": {
1224
+ "dark": "rgba(148, 163, 184, 0.3)",
1225
+ "light": "#5b6879"
1226
+ }
1227
+ },
1228
+ {
1229
+ "key": "button.secondary.borderHover",
1230
+ "cssName": "--cdt-button-secondary-border-hover",
1231
+ "tier": "component",
1232
+ "usage": "decorative",
1233
+ "description": "Secondary hover edge.",
1234
+ "alias": "accent.DEFAULT",
1235
+ "values": {
1236
+ "dark": "#6d7cff",
1237
+ "light": "#4f5bd5"
1238
+ }
1239
+ },
1240
+ {
1241
+ "key": "button.ghost.background",
1242
+ "cssName": "--cdt-button-ghost-background",
1243
+ "tier": "component",
1244
+ "usage": "decorative",
1245
+ "description": "Ghost has no fill.",
1246
+ "values": {
1247
+ "dark": "transparent",
1248
+ "light": "transparent"
1249
+ }
1250
+ },
1251
+ {
1252
+ "key": "button.ghost.backgroundHover",
1253
+ "cssName": "--cdt-button-ghost-background-hover",
1254
+ "tier": "component",
1255
+ "usage": "decorative",
1256
+ "description": "Ghost hover wash.",
1257
+ "alias": "state.hover",
1258
+ "values": {
1259
+ "dark": "rgba(255, 255, 255, 0.055)",
1260
+ "light": "rgba(12, 18, 28, 0.05)"
1261
+ }
1262
+ },
1263
+ {
1264
+ "key": "button.ghost.text",
1265
+ "cssName": "--cdt-button-ghost-text",
1266
+ "tier": "component",
1267
+ "usage": "body",
1268
+ "description": "Ghost label.",
1269
+ "alias": "text.muted",
1270
+ "values": {
1271
+ "dark": "#8290a3",
1272
+ "light": "#4d5a6e"
1273
+ }
1274
+ },
1275
+ {
1276
+ "key": "button.ghost.textHover",
1277
+ "cssName": "--cdt-button-ghost-text-hover",
1278
+ "tier": "component",
1279
+ "usage": "body",
1280
+ "description": "Ghost hover label.",
1281
+ "alias": "text.primary",
1282
+ "values": {
1283
+ "dark": "#f4f7fb",
1284
+ "light": "#0c121c"
1285
+ }
1286
+ },
1287
+ {
1288
+ "key": "button.ghost.border",
1289
+ "cssName": "--cdt-button-ghost-border",
1290
+ "tier": "component",
1291
+ "usage": "decorative",
1292
+ "description": "Ghost has no edge.",
1293
+ "values": {
1294
+ "dark": "transparent",
1295
+ "light": "transparent"
1296
+ }
1297
+ },
1298
+ {
1299
+ "key": "button.disabled.background",
1300
+ "cssName": "--cdt-button-disabled-background",
1301
+ "tier": "component",
1302
+ "usage": "decorative",
1303
+ "description": "Disabled fill.",
1304
+ "alias": "state.disabled",
1305
+ "values": {
1306
+ "dark": "#18202c",
1307
+ "light": "#e2e8f0"
1308
+ }
1309
+ },
1310
+ {
1311
+ "key": "button.disabled.text",
1312
+ "cssName": "--cdt-button-disabled-text",
1313
+ "tier": "component",
1314
+ "usage": "body",
1315
+ "description": "Disabled label. 5.05:1 on the fill.",
1316
+ "alias": "text.muted",
1317
+ "values": {
1318
+ "dark": "#8290a3",
1319
+ "light": "#4d5a6e"
1320
+ }
1321
+ },
1322
+ {
1323
+ "key": "button.disabled.border",
1324
+ "cssName": "--cdt-button-disabled-border",
1325
+ "tier": "component",
1326
+ "usage": "decorative",
1327
+ "description": "Disabled edge.",
1328
+ "alias": "border.default",
1329
+ "values": {
1330
+ "dark": "rgba(148, 163, 184, 0.18)",
1331
+ "light": "#6b788c"
1332
+ }
1333
+ },
1334
+ {
1335
+ "key": "button.policyDisabled.background",
1336
+ "cssName": "--cdt-button-policy-disabled-background",
1337
+ "tier": "component",
1338
+ "usage": "decorative",
1339
+ "description": "Policy-blocked fill.",
1340
+ "alias": "state.disabledPolicy",
1341
+ "values": {
1342
+ "dark": "#422006",
1343
+ "light": "#fef3c7"
1344
+ }
1345
+ },
1346
+ {
1347
+ "key": "button.policyDisabled.text",
1348
+ "cssName": "--cdt-button-policy-disabled-text",
1349
+ "tier": "component",
1350
+ "usage": "body",
1351
+ "description": "Policy-blocked label. 5.27:1 on the dark amber fill (CP-041); `status.danger` would be 3.87:1.",
1352
+ "alias": "meter.exceeded",
1353
+ "values": {
1354
+ "dark": "#f87171",
1355
+ "light": "#b91c1c"
1356
+ }
1357
+ },
1358
+ {
1359
+ "key": "button.policyDisabled.border",
1360
+ "cssName": "--cdt-button-policy-disabled-border",
1361
+ "tier": "component",
1362
+ "usage": "decorative",
1363
+ "description": "Policy-blocked edge.",
1364
+ "alias": "status.danger",
1365
+ "values": {
1366
+ "dark": "#ef4444",
1367
+ "light": "#c81e1e"
1368
+ }
1369
+ },
1370
+ {
1371
+ "key": "button.focusRing",
1372
+ "cssName": "--cdt-button-focus-ring",
1373
+ "tier": "component",
1374
+ "usage": "decorative",
1375
+ "description": "Focus indicator.",
1376
+ "alias": "focusRing",
1377
+ "values": {
1378
+ "dark": "0 0 0 3px rgba(109, 124, 255, 0.8)",
1379
+ "light": "0 0 0 3px rgba(79, 91, 213, 0.8)"
1380
+ }
1381
+ },
1382
+ {
1383
+ "key": "card.background",
1384
+ "cssName": "--cdt-card-background",
1385
+ "tier": "component",
1386
+ "usage": "decorative",
1387
+ "description": "Card fill.",
1388
+ "alias": "surface.glass",
1389
+ "values": {
1390
+ "dark": "rgba(16, 23, 34, 0.82)",
1391
+ "light": "#ffffff"
1392
+ }
1393
+ },
1394
+ {
1395
+ "key": "card.border",
1396
+ "cssName": "--cdt-card-border",
1397
+ "tier": "component",
1398
+ "usage": "decorative",
1399
+ "description": "Card edge.",
1400
+ "alias": "border.default",
1401
+ "values": {
1402
+ "dark": "rgba(148, 163, 184, 0.18)",
1403
+ "light": "#5b6879"
1404
+ }
1405
+ },
1406
+ {
1407
+ "key": "card.radius",
1408
+ "cssName": "--cdt-card-radius",
1409
+ "tier": "component",
1410
+ "usage": "decorative",
1411
+ "description": "Card radius.",
1412
+ "alias": "radius.lg",
1413
+ "values": {
1414
+ "dark": "18px",
1415
+ "light": "18px"
1416
+ }
1417
+ },
1418
+ {
1419
+ "key": "card.radiusCompact",
1420
+ "cssName": "--cdt-card-radius-compact",
1421
+ "tier": "component",
1422
+ "usage": "decorative",
1423
+ "description": "Card radius below `breakpoint.sm`.",
1424
+ "alias": "radius.md",
1425
+ "values": {
1426
+ "dark": "12px",
1427
+ "light": "12px"
1428
+ }
1429
+ },
1430
+ {
1431
+ "key": "card.padding",
1432
+ "cssName": "--cdt-card-padding",
1433
+ "tier": "component",
1434
+ "usage": "decorative",
1435
+ "description": "Card padding.",
1436
+ "alias": "space.5",
1437
+ "values": {
1438
+ "dark": "24px",
1439
+ "light": "24px"
1440
+ }
1441
+ },
1442
+ {
1443
+ "key": "card.paddingCompact",
1444
+ "cssName": "--cdt-card-padding-compact",
1445
+ "tier": "component",
1446
+ "usage": "decorative",
1447
+ "description": "Card padding below `breakpoint.sm`.",
1448
+ "values": {
1449
+ "dark": "18px",
1450
+ "light": "18px"
1451
+ }
1452
+ },
1453
+ {
1454
+ "key": "card.shadow",
1455
+ "cssName": "--cdt-card-shadow",
1456
+ "tier": "component",
1457
+ "usage": "decorative",
1458
+ "description": "Card resting shadow.",
1459
+ "alias": "elevation.raised",
1460
+ "values": {
1461
+ "dark": "0 12px 30px rgba(0, 0, 0, 0.18)",
1462
+ "light": "0 12px 30px rgba(12, 18, 28, 0.08)"
1463
+ }
1464
+ },
1465
+ {
1466
+ "key": "card.interactive.borderHover",
1467
+ "cssName": "--cdt-card-interactive-border-hover",
1468
+ "tier": "component",
1469
+ "usage": "decorative",
1470
+ "description": "Interactive card hover edge.",
1471
+ "alias": "border.strong",
1472
+ "values": {
1473
+ "dark": "rgba(148, 163, 184, 0.3)",
1474
+ "light": "#5b6879"
1475
+ }
1476
+ },
1477
+ {
1478
+ "key": "card.interactive.shadowHover",
1479
+ "cssName": "--cdt-card-interactive-shadow-hover",
1480
+ "tier": "component",
1481
+ "usage": "decorative",
1482
+ "description": "Interactive card hover shadow.",
1483
+ "alias": "elevation.hover",
1484
+ "values": {
1485
+ "dark": "0 18px 46px rgba(0, 0, 0, 0.26)",
1486
+ "light": "0 18px 46px rgba(12, 18, 28, 0.12)"
1487
+ }
1488
+ },
1489
+ {
1490
+ "key": "card.interactive.translateHover",
1491
+ "cssName": "--cdt-card-interactive-translate-hover",
1492
+ "tier": "component",
1493
+ "usage": "decorative",
1494
+ "description": "Interactive card hover lift.",
1495
+ "values": {
1496
+ "dark": "-2px",
1497
+ "light": "-2px"
1498
+ }
1499
+ },
1500
+ {
1501
+ "key": "card.interactive.transition",
1502
+ "cssName": "--cdt-card-interactive-transition",
1503
+ "tier": "component",
1504
+ "usage": "decorative",
1505
+ "description": "Interactive card transition.",
1506
+ "alias": "motion.fast",
1507
+ "values": {
1508
+ "dark": "140ms cubic-bezier(0.2, 0, 0, 1)",
1509
+ "light": "140ms cubic-bezier(0.2, 0, 0, 1)"
1510
+ }
1511
+ },
1512
+ {
1513
+ "key": "card.grid.minColumn",
1514
+ "cssName": "--cdt-card-grid-min-column",
1515
+ "tier": "component",
1516
+ "usage": "decorative",
1517
+ "description": "`auto-fill` minimum column width.",
1518
+ "values": {
1519
+ "dark": "320px",
1520
+ "light": "320px"
1521
+ }
1522
+ },
1523
+ {
1524
+ "key": "card.grid.minColumnCompact",
1525
+ "cssName": "--cdt-card-grid-min-column-compact",
1526
+ "tier": "component",
1527
+ "usage": "decorative",
1528
+ "description": "Minimum column below `breakpoint.lg`.",
1529
+ "values": {
1530
+ "dark": "260px",
1531
+ "light": "260px"
1532
+ }
1533
+ },
1534
+ {
1535
+ "key": "card.grid.gap",
1536
+ "cssName": "--cdt-card-grid-gap",
1537
+ "tier": "component",
1538
+ "usage": "decorative",
1539
+ "description": "Grid gap.",
1540
+ "alias": "space.5",
1541
+ "values": {
1542
+ "dark": "24px",
1543
+ "light": "24px"
1544
+ }
1545
+ },
1546
+ {
1547
+ "key": "badge.radius",
1548
+ "cssName": "--cdt-badge-radius",
1549
+ "tier": "component",
1550
+ "usage": "decorative",
1551
+ "description": "Pill radius.",
1552
+ "values": {
1553
+ "dark": "9999px",
1554
+ "light": "9999px"
1555
+ }
1556
+ },
1557
+ {
1558
+ "key": "badge.paddingBlock",
1559
+ "cssName": "--cdt-badge-padding-block",
1560
+ "tier": "component",
1561
+ "usage": "decorative",
1562
+ "description": "Vertical padding.",
1563
+ "alias": "space.1",
1564
+ "values": {
1565
+ "dark": "4px",
1566
+ "light": "4px"
1567
+ }
1568
+ },
1569
+ {
1570
+ "key": "badge.paddingInline",
1571
+ "cssName": "--cdt-badge-padding-inline",
1572
+ "tier": "component",
1573
+ "usage": "decorative",
1574
+ "description": "Horizontal padding.",
1575
+ "values": {
1576
+ "dark": "10px",
1577
+ "light": "10px"
1578
+ }
1579
+ },
1580
+ {
1581
+ "key": "badge.fontSize",
1582
+ "cssName": "--cdt-badge-font-size",
1583
+ "tier": "component",
1584
+ "usage": "decorative",
1585
+ "description": "Label size.",
1586
+ "alias": "font.size.sm",
1587
+ "values": {
1588
+ "dark": "12px",
1589
+ "light": "12px"
1590
+ }
1591
+ },
1592
+ {
1593
+ "key": "badge.lineHeight",
1594
+ "cssName": "--cdt-badge-line-height",
1595
+ "tier": "component",
1596
+ "usage": "decorative",
1597
+ "description": "Label line height.",
1598
+ "alias": "font.lineHeight.sm",
1599
+ "values": {
1600
+ "dark": "18px",
1601
+ "light": "18px"
1602
+ }
1603
+ },
1604
+ {
1605
+ "key": "badge.gap",
1606
+ "cssName": "--cdt-badge-gap",
1607
+ "tier": "component",
1608
+ "usage": "decorative",
1609
+ "description": "Gap between icon and label.",
1610
+ "values": {
1611
+ "dark": "6px",
1612
+ "light": "6px"
1613
+ }
1614
+ },
1615
+ {
1616
+ "key": "badge.iconSize",
1617
+ "cssName": "--cdt-badge-icon-size",
1618
+ "tier": "component",
1619
+ "usage": "decorative",
1620
+ "description": "Icon box.",
1621
+ "values": {
1622
+ "dark": "12px",
1623
+ "light": "12px"
1624
+ }
1625
+ },
1626
+ {
1627
+ "key": "badge.fill.text",
1628
+ "cssName": "--cdt-badge-fill-text",
1629
+ "tier": "component",
1630
+ "usage": "body",
1631
+ "description": "Label on a status fill. 5.03:1 to 9.87:1.",
1632
+ "alias": "text.inverse",
1633
+ "values": {
1634
+ "dark": "#07111f",
1635
+ "light": "#f4f7fb"
1636
+ }
1637
+ },
1638
+ {
1639
+ "key": "badge.marker.background",
1640
+ "cssName": "--cdt-badge-marker-background",
1641
+ "tier": "component",
1642
+ "usage": "decorative",
1643
+ "description": "Marker-shape background.",
1644
+ "alias": "surface.raised",
1645
+ "values": {
1646
+ "dark": "#141d2a",
1647
+ "light": "#fbfcfd"
1648
+ }
1649
+ },
1650
+ {
1651
+ "key": "badge.marker.text",
1652
+ "cssName": "--cdt-badge-marker-text",
1653
+ "tier": "component",
1654
+ "usage": "body",
1655
+ "description": "Marker-shape label. 15.77:1.",
1656
+ "alias": "text.primary",
1657
+ "values": {
1658
+ "dark": "#f4f7fb",
1659
+ "light": "#0c121c"
1660
+ }
1661
+ },
1662
+ {
1663
+ "key": "badge.marker.border",
1664
+ "cssName": "--cdt-badge-marker-border",
1665
+ "tier": "component",
1666
+ "usage": "decorative",
1667
+ "description": "Marker-shape edge.",
1668
+ "alias": "border.strong",
1669
+ "values": {
1670
+ "dark": "rgba(148, 163, 184, 0.3)",
1671
+ "light": "#5b6879"
1672
+ }
1673
+ },
1674
+ {
1675
+ "key": "badge.marker.dotSize",
1676
+ "cssName": "--cdt-badge-marker-dot-size",
1677
+ "tier": "component",
1678
+ "usage": "decorative",
1679
+ "description": "Status dot diameter.",
1680
+ "values": {
1681
+ "dark": "9px",
1682
+ "light": "9px"
1683
+ }
1684
+ },
1685
+ {
1686
+ "key": "badge.marker.dotRing",
1687
+ "cssName": "--cdt-badge-marker-dot-ring",
1688
+ "tier": "component",
1689
+ "usage": "decorative",
1690
+ "description": "Marker dot ring.",
1691
+ "alias": "surface.raised",
1692
+ "values": {
1693
+ "dark": "#141d2a",
1694
+ "light": "#fbfcfd"
1695
+ }
1696
+ },
1697
+ {
1698
+ "key": "badge.marker.dotRingWidth",
1699
+ "cssName": "--cdt-badge-marker-dot-ring-width",
1700
+ "tier": "component",
1701
+ "usage": "decorative",
1702
+ "description": "Marker dot ring width.",
1703
+ "values": {
1704
+ "dark": "2px",
1705
+ "light": "2px"
1706
+ }
1707
+ },
1708
+ {
1709
+ "key": "badge.severity.text",
1710
+ "cssName": "--cdt-badge-severity-text",
1711
+ "tier": "component",
1712
+ "usage": "body",
1713
+ "description": "Label on a severity fill. 4.67:1 to 9.32:1.",
1714
+ "alias": "text.primary",
1715
+ "values": {
1716
+ "dark": "#f4f7fb",
1717
+ "light": "#f4f7fb"
1718
+ }
1719
+ },
1720
+ {
1721
+ "key": "table.headerText",
1722
+ "cssName": "--cdt-table-header-text",
1723
+ "tier": "component",
1724
+ "usage": "body",
1725
+ "description": "Column header text.",
1726
+ "alias": "text.muted",
1727
+ "values": {
1728
+ "dark": "#8290a3",
1729
+ "light": "#4d5a6e"
1730
+ }
1731
+ },
1732
+ {
1733
+ "key": "table.headerFontSize",
1734
+ "cssName": "--cdt-table-header-font-size",
1735
+ "tier": "component",
1736
+ "usage": "decorative",
1737
+ "description": "Column header size.",
1738
+ "alias": "font.size.base",
1739
+ "values": {
1740
+ "dark": "13px",
1741
+ "light": "13px"
1742
+ }
1743
+ },
1744
+ {
1745
+ "key": "table.headerBorder",
1746
+ "cssName": "--cdt-table-header-border",
1747
+ "tier": "component",
1748
+ "usage": "decorative",
1749
+ "description": "Header rule.",
1750
+ "alias": "border.default",
1751
+ "values": {
1752
+ "dark": "rgba(148, 163, 184, 0.18)",
1753
+ "light": "#6b788c"
1754
+ }
1755
+ },
1756
+ {
1757
+ "key": "table.headerBorderWidth",
1758
+ "cssName": "--cdt-table-header-border-width",
1759
+ "tier": "component",
1760
+ "usage": "decorative",
1761
+ "description": "Header rule width.",
1762
+ "values": {
1763
+ "dark": "2px",
1764
+ "light": "2px"
1765
+ }
1766
+ },
1767
+ {
1768
+ "key": "table.cellBorder",
1769
+ "cssName": "--cdt-table-cell-border",
1770
+ "tier": "component",
1771
+ "usage": "decorative",
1772
+ "description": "Row rule. A decorative border is correct here: row separators divide content, they do not identify a component, so WCAG 1.4.11 does not apply.",
1773
+ "alias": "border.default",
1774
+ "values": {
1775
+ "dark": "rgba(148, 163, 184, 0.18)",
1776
+ "light": "#6b788c"
1777
+ }
1778
+ },
1779
+ {
1780
+ "key": "table.cellPaddingBlock",
1781
+ "cssName": "--cdt-table-cell-padding-block",
1782
+ "tier": "component",
1783
+ "usage": "decorative",
1784
+ "description": "Cell vertical padding.",
1785
+ "alias": "space.4",
1786
+ "values": {
1787
+ "dark": "16px",
1788
+ "light": "16px"
1789
+ }
1790
+ },
1791
+ {
1792
+ "key": "table.cellPaddingInline",
1793
+ "cssName": "--cdt-table-cell-padding-inline",
1794
+ "tier": "component",
1795
+ "usage": "decorative",
1796
+ "description": "Cell horizontal padding.",
1797
+ "alias": "space.3",
1798
+ "values": {
1799
+ "dark": "12px",
1800
+ "light": "12px"
1801
+ }
1802
+ },
1803
+ {
1804
+ "key": "table.rowBackgroundHover",
1805
+ "cssName": "--cdt-table-row-background-hover",
1806
+ "tier": "component",
1807
+ "usage": "decorative",
1808
+ "description": "Row hover wash.",
1809
+ "alias": "state.hover",
1810
+ "values": {
1811
+ "dark": "rgba(255, 255, 255, 0.055)",
1812
+ "light": "rgba(12, 18, 28, 0.05)"
1813
+ }
1814
+ },
1815
+ {
1816
+ "key": "table.rowTransition",
1817
+ "cssName": "--cdt-table-row-transition",
1818
+ "tier": "component",
1819
+ "usage": "decorative",
1820
+ "description": "Row hover transition.",
1821
+ "alias": "motion.fast",
1822
+ "values": {
1823
+ "dark": "140ms cubic-bezier(0.2, 0, 0, 1)",
1824
+ "light": "140ms cubic-bezier(0.2, 0, 0, 1)"
1825
+ }
1826
+ },
1827
+ {
1828
+ "key": "table.linkText",
1829
+ "cssName": "--cdt-table-link-text",
1830
+ "tier": "component",
1831
+ "usage": "body",
1832
+ "description": "In-cell link.",
1833
+ "alias": "text.secondary",
1834
+ "values": {
1835
+ "dark": "#c5cfdd",
1836
+ "light": "#33415a"
1837
+ }
1838
+ },
1839
+ {
1840
+ "key": "table.linkTextHover",
1841
+ "cssName": "--cdt-table-link-text-hover",
1842
+ "tier": "component",
1843
+ "usage": "body",
1844
+ "description": "In-cell link hover.",
1845
+ "alias": "text.primary",
1846
+ "values": {
1847
+ "dark": "#f4f7fb",
1848
+ "light": "#0c121c"
1849
+ }
1850
+ },
1851
+ {
1852
+ "key": "table.numFontFamily",
1853
+ "cssName": "--cdt-table-num-font-family",
1854
+ "tier": "component",
1855
+ "usage": "decorative",
1856
+ "description": "Numeric cell font.",
1857
+ "alias": "font.mono",
1858
+ "values": {
1859
+ "dark": "'JetBrains Mono', ui-monospace, SFMono-Regular, \"SF Mono\", Menlo, monospace",
1860
+ "light": "'JetBrains Mono', ui-monospace, SFMono-Regular, \"SF Mono\", Menlo, monospace"
1861
+ }
1862
+ },
1863
+ {
1864
+ "key": "table.scrollBreakpoint",
1865
+ "cssName": "--cdt-table-scroll-breakpoint",
1866
+ "tier": "component",
1867
+ "usage": "decorative",
1868
+ "description": "Below this, the table scrolls.",
1869
+ "alias": "breakpoint.md",
1870
+ "values": {
1871
+ "dark": "800px",
1872
+ "light": "800px"
1873
+ }
1874
+ },
1875
+ {
1876
+ "key": "timeline.background",
1877
+ "cssName": "--cdt-timeline-background",
1878
+ "tier": "component",
1879
+ "usage": "decorative",
1880
+ "description": "Timeline fill.",
1881
+ "alias": "surface.timeline",
1882
+ "values": {
1883
+ "dark": "#0d141f",
1884
+ "light": "#f1f4f8"
1885
+ }
1886
+ },
1887
+ {
1888
+ "key": "timeline.border",
1889
+ "cssName": "--cdt-timeline-border",
1890
+ "tier": "component",
1891
+ "usage": "decorative",
1892
+ "description": "Timeline edge.",
1893
+ "alias": "border.default",
1894
+ "values": {
1895
+ "dark": "rgba(148, 163, 184, 0.18)",
1896
+ "light": "#6b788c"
1897
+ }
1898
+ },
1899
+ {
1900
+ "key": "timeline.stepBackgroundHover",
1901
+ "cssName": "--cdt-timeline-step-background-hover",
1902
+ "tier": "component",
1903
+ "usage": "decorative",
1904
+ "description": "Interactive step hover fill.",
1905
+ "alias": "state.hover",
1906
+ "values": {
1907
+ "dark": "rgba(255, 255, 255, 0.055)",
1908
+ "light": "rgba(12, 18, 28, 0.05)"
1909
+ }
1910
+ },
1911
+ {
1912
+ "key": "timeline.markerBackground",
1913
+ "cssName": "--cdt-timeline-marker-background",
1914
+ "tier": "component",
1915
+ "usage": "decorative",
1916
+ "description": "Default marker fill.",
1917
+ "alias": "accent.DEFAULT",
1918
+ "values": {
1919
+ "dark": "#6d7cff",
1920
+ "light": "#4f5bd5"
1921
+ }
1922
+ },
1923
+ {
1924
+ "key": "timeline.markerRing",
1925
+ "cssName": "--cdt-timeline-marker-ring",
1926
+ "tier": "component",
1927
+ "usage": "decorative",
1928
+ "description": "Default marker glow.",
1929
+ "alias": "accent.glow",
1930
+ "values": {
1931
+ "dark": "rgba(109, 124, 255, 0.28)",
1932
+ "light": "rgba(79, 91, 213, 0.22)"
1933
+ }
1934
+ },
1935
+ {
1936
+ "key": "timeline.markerBorder",
1937
+ "cssName": "--cdt-timeline-marker-border",
1938
+ "tier": "component",
1939
+ "usage": "decorative",
1940
+ "description": "Marker ring edge.",
1941
+ "alias": "surface.timeline",
1942
+ "values": {
1943
+ "dark": "#0d141f",
1944
+ "light": "#f1f4f8"
1945
+ }
1946
+ },
1947
+ {
1948
+ "key": "codeBlock.background",
1949
+ "cssName": "--cdt-code-block-background",
1950
+ "tier": "component",
1951
+ "usage": "decorative",
1952
+ "description": "Code block fill.",
1953
+ "alias": "surface.timeline",
1954
+ "values": {
1955
+ "dark": "#0d141f",
1956
+ "light": "#f1f4f8"
1957
+ }
1958
+ },
1959
+ {
1960
+ "key": "codeBlock.border",
1961
+ "cssName": "--cdt-code-block-border",
1962
+ "tier": "component",
1963
+ "usage": "decorative",
1964
+ "description": "Code block edge.",
1965
+ "alias": "border.default",
1966
+ "values": {
1967
+ "dark": "rgba(148, 163, 184, 0.18)",
1968
+ "light": "#6b788c"
1969
+ }
1970
+ },
1971
+ {
1972
+ "key": "codeBlock.text",
1973
+ "cssName": "--cdt-code-block-text",
1974
+ "tier": "component",
1975
+ "usage": "body",
1976
+ "description": "Code block text.",
1977
+ "alias": "text.monoPayload",
1978
+ "values": {
1979
+ "dark": "#dce6f3",
1980
+ "light": "#1b2537"
1981
+ }
1982
+ },
1983
+ {
1984
+ "key": "kbd.background",
1985
+ "cssName": "--cdt-kbd-background",
1986
+ "tier": "component",
1987
+ "usage": "decorative",
1988
+ "description": "Keycap fill.",
1989
+ "alias": "surface.raised",
1990
+ "values": {
1991
+ "dark": "#141d2a",
1992
+ "light": "#fbfcfd"
1993
+ }
1994
+ },
1995
+ {
1996
+ "key": "kbd.border",
1997
+ "cssName": "--cdt-kbd-border",
1998
+ "tier": "component",
1999
+ "usage": "decorative",
2000
+ "description": "Keycap edge.",
2001
+ "alias": "border.default",
2002
+ "values": {
2003
+ "dark": "rgba(148, 163, 184, 0.18)",
2004
+ "light": "#6b788c"
2005
+ }
2006
+ },
2007
+ {
2008
+ "key": "kbd.borderBottom",
2009
+ "cssName": "--cdt-kbd-border-bottom",
2010
+ "tier": "component",
2011
+ "usage": "decorative",
2012
+ "description": "Keycap lower edge.",
2013
+ "alias": "border.strong",
2014
+ "values": {
2015
+ "dark": "rgba(148, 163, 184, 0.3)",
2016
+ "light": "#5b6879"
2017
+ }
2018
+ },
2019
+ {
2020
+ "key": "kbd.text",
2021
+ "cssName": "--cdt-kbd-text",
2022
+ "tier": "component",
2023
+ "usage": "body",
2024
+ "description": "Keycap text.",
2025
+ "alias": "text.secondary",
2026
+ "values": {
2027
+ "dark": "#c5cfdd",
2028
+ "light": "#33415a"
2029
+ }
2030
+ },
2031
+ {
2032
+ "key": "banner.info.background",
2033
+ "cssName": "--cdt-banner-info-background",
2034
+ "tier": "component",
2035
+ "usage": "decorative",
2036
+ "description": "Info banner surface.",
2037
+ "alias": "surface.raised",
2038
+ "values": {
2039
+ "dark": "#141d2a",
2040
+ "light": "#fbfcfd"
2041
+ }
2042
+ },
2043
+ {
2044
+ "key": "banner.info.border",
2045
+ "cssName": "--cdt-banner-info-border",
2046
+ "tier": "component",
2047
+ "usage": "decorative",
2048
+ "description": "Info banner edge.",
2049
+ "alias": "status.running",
2050
+ "values": {
2051
+ "dark": "#6d7cff",
2052
+ "light": "#4f5bd5"
2053
+ }
2054
+ },
2055
+ {
2056
+ "key": "banner.info.text",
2057
+ "cssName": "--cdt-banner-info-text",
2058
+ "tier": "component",
2059
+ "usage": "body",
2060
+ "description": "Info banner body text.",
2061
+ "alias": "text.secondary",
2062
+ "values": {
2063
+ "dark": "#c5cfdd",
2064
+ "light": "#33415a"
2065
+ }
2066
+ },
2067
+ {
2068
+ "key": "banner.warning.background",
2069
+ "cssName": "--cdt-banner-warning-background",
2070
+ "tier": "component",
2071
+ "usage": "decorative",
2072
+ "description": "Warning banner surface.",
2073
+ "alias": "surface.raised",
2074
+ "values": {
2075
+ "dark": "#141d2a",
2076
+ "light": "#fbfcfd"
2077
+ }
2078
+ },
2079
+ {
2080
+ "key": "banner.warning.border",
2081
+ "cssName": "--cdt-banner-warning-border",
2082
+ "tier": "component",
2083
+ "usage": "decorative",
2084
+ "description": "Warning banner edge.",
2085
+ "alias": "status.waiting",
2086
+ "values": {
2087
+ "dark": "#f59e0b",
2088
+ "light": "#b45309"
2089
+ }
2090
+ },
2091
+ {
2092
+ "key": "banner.warning.text",
2093
+ "cssName": "--cdt-banner-warning-text",
2094
+ "tier": "component",
2095
+ "usage": "body",
2096
+ "description": "Warning banner body text.",
2097
+ "alias": "text.secondary",
2098
+ "values": {
2099
+ "dark": "#c5cfdd",
2100
+ "light": "#33415a"
2101
+ }
2102
+ },
2103
+ {
2104
+ "key": "banner.danger.background",
2105
+ "cssName": "--cdt-banner-danger-background",
2106
+ "tier": "component",
2107
+ "usage": "decorative",
2108
+ "description": "Danger banner surface.",
2109
+ "alias": "surface.raised",
2110
+ "values": {
2111
+ "dark": "#141d2a",
2112
+ "light": "#fbfcfd"
2113
+ }
2114
+ },
2115
+ {
2116
+ "key": "banner.danger.border",
2117
+ "cssName": "--cdt-banner-danger-border",
2118
+ "tier": "component",
2119
+ "usage": "decorative",
2120
+ "description": "Danger banner edge.",
2121
+ "alias": "status.danger",
2122
+ "values": {
2123
+ "dark": "#ef4444",
2124
+ "light": "#c81e1e"
2125
+ }
2126
+ },
2127
+ {
2128
+ "key": "banner.danger.text",
2129
+ "cssName": "--cdt-banner-danger-text",
2130
+ "tier": "component",
2131
+ "usage": "body",
2132
+ "description": "Danger banner body text.",
2133
+ "alias": "text.secondary",
2134
+ "values": {
2135
+ "dark": "#c5cfdd",
2136
+ "light": "#33415a"
2137
+ }
2138
+ },
2139
+ {
2140
+ "key": "emptyState.titleText",
2141
+ "cssName": "--cdt-empty-state-title-text",
2142
+ "tier": "component",
2143
+ "usage": "body",
2144
+ "description": "Empty-state title.",
2145
+ "alias": "text.primary",
2146
+ "values": {
2147
+ "dark": "#f4f7fb",
2148
+ "light": "#0c121c"
2149
+ }
2150
+ },
2151
+ {
2152
+ "key": "emptyState.descriptionText",
2153
+ "cssName": "--cdt-empty-state-description-text",
2154
+ "tier": "component",
2155
+ "usage": "body",
2156
+ "description": "Empty-state description.",
2157
+ "alias": "text.muted",
2158
+ "values": {
2159
+ "dark": "#8290a3",
2160
+ "light": "#4d5a6e"
2161
+ }
2162
+ },
2163
+ {
2164
+ "key": "emptyState.padding",
2165
+ "cssName": "--cdt-empty-state-padding",
2166
+ "tier": "component",
2167
+ "usage": "decorative",
2168
+ "description": "Empty-state padding.",
2169
+ "alias": "space.6",
2170
+ "values": {
2171
+ "dark": "32px",
2172
+ "light": "32px"
2173
+ }
2174
+ },
2175
+ {
2176
+ "key": "feedbackMeter.trackBackground",
2177
+ "cssName": "--cdt-feedback-meter-track-background",
2178
+ "tier": "component",
2179
+ "usage": "decorative",
2180
+ "description": "Meter track.",
2181
+ "alias": "surface.track",
2182
+ "values": {
2183
+ "dark": "rgba(255, 255, 255, 0.05)",
2184
+ "light": "rgba(12, 18, 28, 0.08)"
2185
+ }
2186
+ },
2187
+ {
2188
+ "key": "feedbackMeter.fillNormal",
2189
+ "cssName": "--cdt-feedback-meter-fill-normal",
2190
+ "tier": "component",
2191
+ "usage": "decorative",
2192
+ "description": "Normal meter fill.",
2193
+ "alias": "meter.normal",
2194
+ "values": {
2195
+ "dark": "#34d399",
2196
+ "light": "#047857"
2197
+ }
2198
+ },
2199
+ {
2200
+ "key": "feedbackMeter.fillWarning",
2201
+ "cssName": "--cdt-feedback-meter-fill-warning",
2202
+ "tier": "component",
2203
+ "usage": "decorative",
2204
+ "description": "Warning meter fill.",
2205
+ "alias": "meter.warning",
2206
+ "values": {
2207
+ "dark": "#fbbf24",
2208
+ "light": "#b45309"
2209
+ }
2210
+ },
2211
+ {
2212
+ "key": "feedbackMeter.fillExceeded",
2213
+ "cssName": "--cdt-feedback-meter-fill-exceeded",
2214
+ "tier": "component",
2215
+ "usage": "decorative",
2216
+ "description": "Exceeded meter fill.",
2217
+ "alias": "meter.exceeded",
2218
+ "values": {
2219
+ "dark": "#f87171",
2220
+ "light": "#dc2626"
2221
+ }
2222
+ },
2223
+ {
2224
+ "key": "feedbackMeter.height",
2225
+ "cssName": "--cdt-feedback-meter-height",
2226
+ "tier": "component",
2227
+ "usage": "decorative",
2228
+ "description": "Meter track height.",
2229
+ "values": {
2230
+ "dark": "8px",
2231
+ "light": "8px"
2232
+ }
2233
+ },
2234
+ {
2235
+ "key": "progressRing.trackStroke",
2236
+ "cssName": "--cdt-progress-ring-track-stroke",
2237
+ "tier": "component",
2238
+ "usage": "decorative",
2239
+ "description": "Progress-ring track.",
2240
+ "alias": "surface.track",
2241
+ "values": {
2242
+ "dark": "rgba(255, 255, 255, 0.05)",
2243
+ "light": "rgba(12, 18, 28, 0.08)"
2244
+ }
2245
+ },
2246
+ {
2247
+ "key": "progressRing.indicatorStroke",
2248
+ "cssName": "--cdt-progress-ring-indicator-stroke",
2249
+ "tier": "component",
2250
+ "usage": "decorative",
2251
+ "description": "Progress-ring indicator.",
2252
+ "alias": "accent.DEFAULT",
2253
+ "values": {
2254
+ "dark": "#6d7cff",
2255
+ "light": "#4f5bd5"
2256
+ }
2257
+ },
2258
+ {
2259
+ "key": "progressRing.labelText",
2260
+ "cssName": "--cdt-progress-ring-label-text",
2261
+ "tier": "component",
2262
+ "usage": "body",
2263
+ "description": "Progress-ring label.",
2264
+ "alias": "text.primary",
2265
+ "values": {
2266
+ "dark": "#f4f7fb",
2267
+ "light": "#0c121c"
2268
+ }
2269
+ },
2270
+ {
2271
+ "key": "progressRing.size",
2272
+ "cssName": "--cdt-progress-ring-size",
2273
+ "tier": "component",
2274
+ "usage": "decorative",
2275
+ "description": "Medium progress-ring diameter.",
2276
+ "values": {
2277
+ "dark": "64px",
2278
+ "light": "64px"
2279
+ }
2280
+ },
2281
+ {
2282
+ "key": "progressRing.sizeCompact",
2283
+ "cssName": "--cdt-progress-ring-size-compact",
2284
+ "tier": "component",
2285
+ "usage": "decorative",
2286
+ "description": "Small progress-ring diameter.",
2287
+ "values": {
2288
+ "dark": "40px",
2289
+ "light": "40px"
2290
+ }
2291
+ },
2292
+ {
2293
+ "key": "spinner.trackStroke",
2294
+ "cssName": "--cdt-spinner-track-stroke",
2295
+ "tier": "component",
2296
+ "usage": "decorative",
2297
+ "description": "Spinner track.",
2298
+ "alias": "surface.track",
2299
+ "values": {
2300
+ "dark": "rgba(255, 255, 255, 0.05)",
2301
+ "light": "rgba(12, 18, 28, 0.08)"
2302
+ }
2303
+ },
2304
+ {
2305
+ "key": "spinner.indicatorStroke",
2306
+ "cssName": "--cdt-spinner-indicator-stroke",
2307
+ "tier": "component",
2308
+ "usage": "decorative",
2309
+ "description": "Spinner indicator.",
2310
+ "alias": "accent.DEFAULT",
2311
+ "values": {
2312
+ "dark": "#6d7cff",
2313
+ "light": "#4f5bd5"
2314
+ }
2315
+ },
2316
+ {
2317
+ "key": "spinner.size",
2318
+ "cssName": "--cdt-spinner-size",
2319
+ "tier": "component",
2320
+ "usage": "decorative",
2321
+ "description": "Medium spinner diameter.",
2322
+ "values": {
2323
+ "dark": "24px",
2324
+ "light": "24px"
2325
+ }
2326
+ },
2327
+ {
2328
+ "key": "spinner.sizeCompact",
2329
+ "cssName": "--cdt-spinner-size-compact",
2330
+ "tier": "component",
2331
+ "usage": "decorative",
2332
+ "description": "Small spinner diameter.",
2333
+ "values": {
2334
+ "dark": "16px",
2335
+ "light": "16px"
2336
+ }
2337
+ },
2338
+ {
2339
+ "key": "input.minHeight",
2340
+ "cssName": "--cdt-input-min-height",
2341
+ "tier": "component",
2342
+ "usage": "decorative",
2343
+ "description": "Minimum target height.",
2344
+ "values": {
2345
+ "dark": "40px",
2346
+ "light": "40px"
2347
+ }
2348
+ },
2349
+ {
2350
+ "key": "input.minHeightCompact",
2351
+ "cssName": "--cdt-input-min-height-compact",
2352
+ "tier": "component",
2353
+ "usage": "decorative",
2354
+ "description": "Minimum height below `breakpoint.sm`.",
2355
+ "values": {
2356
+ "dark": "42px",
2357
+ "light": "42px"
2358
+ }
2359
+ },
2360
+ {
2361
+ "key": "input.background",
2362
+ "cssName": "--cdt-input-background",
2363
+ "tier": "component",
2364
+ "usage": "decorative",
2365
+ "description": "Field fill.",
2366
+ "alias": "surface.base",
2367
+ "values": {
2368
+ "dark": "#080b12",
2369
+ "light": "#ffffff"
2370
+ }
2371
+ },
2372
+ {
2373
+ "key": "input.backgroundFocus",
2374
+ "cssName": "--cdt-input-background-focus",
2375
+ "tier": "component",
2376
+ "usage": "decorative",
2377
+ "description": "Focused field fill.",
2378
+ "alias": "surface.canvas",
2379
+ "values": {
2380
+ "dark": "#0b101a",
2381
+ "light": "#ffffff"
2382
+ }
2383
+ },
2384
+ {
2385
+ "key": "input.text",
2386
+ "cssName": "--cdt-input-text",
2387
+ "tier": "component",
2388
+ "usage": "body",
2389
+ "description": "Field value.",
2390
+ "alias": "text.primary",
2391
+ "values": {
2392
+ "dark": "#f4f7fb",
2393
+ "light": "#0c121c"
2394
+ }
2395
+ },
2396
+ {
2397
+ "key": "input.placeholder",
2398
+ "cssName": "--cdt-input-placeholder",
2399
+ "tier": "component",
2400
+ "usage": "decorative",
2401
+ "description": "Placeholder. `text.faint` is allowed here and the dark field sits on `surface.base`, so the combination FR-THM-005 AC-3 forbids never renders.",
2402
+ "alias": "text.faint",
2403
+ "values": {
2404
+ "dark": "#5f6d80",
2405
+ "light": "#6b788c"
2406
+ }
2407
+ },
2408
+ {
2409
+ "key": "input.border",
2410
+ "cssName": "--cdt-input-border",
2411
+ "tier": "component",
2412
+ "usage": "decorative",
2413
+ "description": "Field edge. 3.23:1 on `surface.raised`.",
2414
+ "alias": "border.control",
2415
+ "values": {
2416
+ "dark": "rgba(148, 163, 184, 0.6)",
2417
+ "light": "#64748b"
2418
+ }
2419
+ },
2420
+ {
2421
+ "key": "input.borderHover",
2422
+ "cssName": "--cdt-input-border-hover",
2423
+ "tier": "component",
2424
+ "usage": "decorative",
2425
+ "description": "Hovered field edge.",
2426
+ "alias": "border.control",
2427
+ "values": {
2428
+ "dark": "rgba(148, 163, 184, 0.6)",
2429
+ "light": "#64748b"
2430
+ }
2431
+ },
2432
+ {
2433
+ "key": "input.borderFocus",
2434
+ "cssName": "--cdt-input-border-focus",
2435
+ "tier": "component",
2436
+ "usage": "decorative",
2437
+ "description": "Focused field edge.",
2438
+ "alias": "accent.DEFAULT",
2439
+ "values": {
2440
+ "dark": "#6d7cff",
2441
+ "light": "#4f5bd5"
2442
+ }
2443
+ },
2444
+ {
2445
+ "key": "input.borderInvalid",
2446
+ "cssName": "--cdt-input-border-invalid",
2447
+ "tier": "component",
2448
+ "usage": "decorative",
2449
+ "description": "Invalid field edge.",
2450
+ "alias": "status.danger",
2451
+ "values": {
2452
+ "dark": "#ef4444",
2453
+ "light": "#c81e1e"
2454
+ }
2455
+ },
2456
+ {
2457
+ "key": "input.radius",
2458
+ "cssName": "--cdt-input-radius",
2459
+ "tier": "component",
2460
+ "usage": "decorative",
2461
+ "description": "Field radius.",
2462
+ "alias": "radius.sm",
2463
+ "values": {
2464
+ "dark": "9px",
2465
+ "light": "9px"
2466
+ }
2467
+ },
2468
+ {
2469
+ "key": "input.paddingBlock",
2470
+ "cssName": "--cdt-input-padding-block",
2471
+ "tier": "component",
2472
+ "usage": "decorative",
2473
+ "description": "Field vertical padding.",
2474
+ "values": {
2475
+ "dark": "9px",
2476
+ "light": "9px"
2477
+ }
2478
+ },
2479
+ {
2480
+ "key": "input.paddingInline",
2481
+ "cssName": "--cdt-input-padding-inline",
2482
+ "tier": "component",
2483
+ "usage": "decorative",
2484
+ "description": "Field horizontal padding.",
2485
+ "alias": "space.3",
2486
+ "values": {
2487
+ "dark": "12px",
2488
+ "light": "12px"
2489
+ }
2490
+ },
2491
+ {
2492
+ "key": "input.focusRing",
2493
+ "cssName": "--cdt-input-focus-ring",
2494
+ "tier": "component",
2495
+ "usage": "decorative",
2496
+ "description": "Focus indicator.",
2497
+ "alias": "focusRing",
2498
+ "values": {
2499
+ "dark": "0 0 0 3px rgba(109, 124, 255, 0.8)",
2500
+ "light": "0 0 0 3px rgba(79, 91, 213, 0.8)"
2501
+ }
2502
+ },
2503
+ {
2504
+ "key": "input.label.text",
2505
+ "cssName": "--cdt-input-label-text",
2506
+ "tier": "component",
2507
+ "usage": "body",
2508
+ "description": "Field label with stronger hierarchy.",
2509
+ "alias": "text.secondary",
2510
+ "values": {
2511
+ "dark": "#c5cfdd",
2512
+ "light": "#33415a"
2513
+ }
2514
+ },
2515
+ {
2516
+ "key": "input.label.fontSize",
2517
+ "cssName": "--cdt-input-label-font-size",
2518
+ "tier": "component",
2519
+ "usage": "decorative",
2520
+ "description": "Field label size.",
2521
+ "alias": "font.size.base",
2522
+ "values": {
2523
+ "dark": "13px",
2524
+ "light": "13px"
2525
+ }
2526
+ },
2527
+ {
2528
+ "key": "input.error.text",
2529
+ "cssName": "--cdt-input-error-text",
2530
+ "tier": "component",
2531
+ "usage": "body",
2532
+ "description": "Field error message.",
2533
+ "alias": "status.danger",
2534
+ "values": {
2535
+ "dark": "#ef4444",
2536
+ "light": "#c81e1e"
2537
+ }
2538
+ },
2539
+ {
2540
+ "key": "input.transition",
2541
+ "cssName": "--cdt-input-transition",
2542
+ "tier": "component",
2543
+ "usage": "decorative",
2544
+ "description": "Field transition.",
2545
+ "alias": "motion.fast",
2546
+ "values": {
2547
+ "dark": "140ms cubic-bezier(0.2, 0, 0, 1)",
2548
+ "light": "140ms cubic-bezier(0.2, 0, 0, 1)"
2549
+ }
2550
+ },
2551
+ {
2552
+ "key": "overlay.scrim",
2553
+ "cssName": "--cdt-overlay-scrim",
2554
+ "tier": "component",
2555
+ "usage": "decorative",
2556
+ "description": "Backdrop behind Dialog and Drawer.",
2557
+ "alias": "surface.overlay",
2558
+ "values": {
2559
+ "dark": "rgba(4, 7, 12, 0.78)",
2560
+ "light": "rgba(12, 18, 28, 0.45)"
2561
+ }
2562
+ },
2563
+ {
2564
+ "key": "overlay.scrimBlur",
2565
+ "cssName": "--cdt-overlay-scrim-blur",
2566
+ "tier": "component",
2567
+ "usage": "decorative",
2568
+ "description": "Backdrop blur radius.",
2569
+ "values": {
2570
+ "dark": "4px",
2571
+ "light": "4px"
2572
+ }
2573
+ },
2574
+ {
2575
+ "key": "overlay.scrimZ",
2576
+ "cssName": "--cdt-overlay-scrim-z",
2577
+ "tier": "component",
2578
+ "usage": "decorative",
2579
+ "description": "Backdrop stacking layer.",
2580
+ "alias": "z.overlay",
2581
+ "values": {
2582
+ "dark": "40",
2583
+ "light": "40"
2584
+ }
2585
+ },
2586
+ {
2587
+ "key": "overlay.background",
2588
+ "cssName": "--cdt-overlay-background",
2589
+ "tier": "component",
2590
+ "usage": "decorative",
2591
+ "description": "Overlay panel fill.",
2592
+ "alias": "surface.glass",
2593
+ "values": {
2594
+ "dark": "rgba(16, 23, 34, 0.82)",
2595
+ "light": "#ffffff"
2596
+ }
2597
+ },
2598
+ {
2599
+ "key": "overlay.backgroundBlur",
2600
+ "cssName": "--cdt-overlay-background-blur",
2601
+ "tier": "component",
2602
+ "usage": "decorative",
2603
+ "description": "Overlay panel backdrop blur.",
2604
+ "values": {
2605
+ "dark": "16px",
2606
+ "light": "0px"
2607
+ }
2608
+ },
2609
+ {
2610
+ "key": "overlay.border",
2611
+ "cssName": "--cdt-overlay-border",
2612
+ "tier": "component",
2613
+ "usage": "decorative",
2614
+ "description": "Overlay panel edge.",
2615
+ "alias": "border.strong",
2616
+ "values": {
2617
+ "dark": "rgba(148, 163, 184, 0.3)",
2618
+ "light": "#5b6879"
2619
+ }
2620
+ },
2621
+ {
2622
+ "key": "overlay.radius",
2623
+ "cssName": "--cdt-overlay-radius",
2624
+ "tier": "component",
2625
+ "usage": "decorative",
2626
+ "description": "Overlay panel radius.",
2627
+ "alias": "radius.lg",
2628
+ "values": {
2629
+ "dark": "18px",
2630
+ "light": "18px"
2631
+ }
2632
+ },
2633
+ {
2634
+ "key": "overlay.shadow",
2635
+ "cssName": "--cdt-overlay-shadow",
2636
+ "tier": "component",
2637
+ "usage": "decorative",
2638
+ "description": "Overlay panel shadow.",
2639
+ "alias": "elevation.overlay",
2640
+ "values": {
2641
+ "dark": "0 24px 64px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(148, 163, 184, 0.3)",
2642
+ "light": "0 24px 64px rgba(12, 18, 28, 0.2), 0 0 0 1px #5b6879"
2643
+ }
2644
+ },
2645
+ {
2646
+ "key": "overlay.contentZ",
2647
+ "cssName": "--cdt-overlay-content-z",
2648
+ "tier": "component",
2649
+ "usage": "decorative",
2650
+ "description": "Tooltip, menu and select content layer.",
2651
+ "alias": "z.popover",
2652
+ "values": {
2653
+ "dark": "50",
2654
+ "light": "50"
2655
+ }
2656
+ },
2657
+ {
2658
+ "key": "overlay.drawerZ",
2659
+ "cssName": "--cdt-overlay-drawer-z",
2660
+ "tier": "component",
2661
+ "usage": "decorative",
2662
+ "description": "Drawer panel layer.",
2663
+ "alias": "z.drawer",
2664
+ "values": {
2665
+ "dark": "30",
2666
+ "light": "30"
2667
+ }
2668
+ },
2669
+ {
2670
+ "key": "overlay.drawerBackground",
2671
+ "cssName": "--cdt-overlay-drawer-background",
2672
+ "tier": "component",
2673
+ "usage": "decorative",
2674
+ "description": "Drawer panel fill.",
2675
+ "alias": "surface.raised",
2676
+ "values": {
2677
+ "dark": "#141d2a",
2678
+ "light": "#fbfcfd"
2679
+ }
2680
+ },
2681
+ {
2682
+ "key": "overlay.drawerWidth",
2683
+ "cssName": "--cdt-overlay-drawer-width",
2684
+ "tier": "component",
2685
+ "usage": "decorative",
2686
+ "description": "Drawer panel width.",
2687
+ "values": {
2688
+ "dark": "500px",
2689
+ "light": "500px"
2690
+ }
2691
+ },
2692
+ {
2693
+ "key": "overlay.enter",
2694
+ "cssName": "--cdt-overlay-enter",
2695
+ "tier": "component",
2696
+ "usage": "decorative",
2697
+ "description": "Overlay entrance.",
2698
+ "alias": "motion.standard",
2699
+ "values": {
2700
+ "dark": "240ms cubic-bezier(0.2, 0, 0, 1)",
2701
+ "light": "240ms cubic-bezier(0.2, 0, 0, 1)"
2702
+ }
2703
+ },
2704
+ {
2705
+ "key": "overlay.exit",
2706
+ "cssName": "--cdt-overlay-exit",
2707
+ "tier": "component",
2708
+ "usage": "decorative",
2709
+ "description": "Overlay exit.",
2710
+ "alias": "motion.fast",
2711
+ "values": {
2712
+ "dark": "140ms cubic-bezier(0.2, 0, 0, 1)",
2713
+ "light": "140ms cubic-bezier(0.2, 0, 0, 1)"
2714
+ }
2715
+ },
2716
+ {
2717
+ "key": "page.headingSize",
2718
+ "cssName": "--cdt-page-heading-size",
2719
+ "tier": "component",
2720
+ "usage": "decorative",
2721
+ "description": "Responsive page heading size, derived from `font.size.xl` (× 1.2 and × 1.6).",
2722
+ "values": {
2723
+ "dark": "clamp(24px, 3vw, 32px)",
2724
+ "light": "clamp(24px, 3vw, 32px)"
2725
+ }
2726
+ },
2727
+ {
2728
+ "key": "page.headingLineHeight",
2729
+ "cssName": "--cdt-page-heading-line-height",
2730
+ "tier": "component",
2731
+ "usage": "decorative",
2732
+ "description": "The only unitless line height: `clamp()` makes a px value impossible here.",
2733
+ "values": {
2734
+ "dark": "1.16",
2735
+ "light": "1.16"
2736
+ }
2737
+ },
2738
+ {
2739
+ "key": "page.stackGap",
2740
+ "cssName": "--cdt-page-stack-gap",
2741
+ "tier": "component",
2742
+ "usage": "decorative",
2743
+ "description": "Gap between page sections.",
2744
+ "alias": "space.6",
2745
+ "values": {
2746
+ "dark": "32px",
2747
+ "light": "32px"
2748
+ }
2749
+ },
2750
+ {
2751
+ "key": "page.stackGapCompact",
2752
+ "cssName": "--cdt-page-stack-gap-compact",
2753
+ "tier": "component",
2754
+ "usage": "decorative",
2755
+ "description": "Section gap below `breakpoint.sm`.",
2756
+ "alias": "space.5",
2757
+ "values": {
2758
+ "dark": "24px",
2759
+ "light": "24px"
2760
+ }
2761
+ },
2762
+ {
2763
+ "key": "page.contentStackGap",
2764
+ "cssName": "--cdt-page-content-stack-gap",
2765
+ "tier": "component",
2766
+ "usage": "decorative",
2767
+ "description": "Gap inside a content stack.",
2768
+ "alias": "space.5",
2769
+ "values": {
2770
+ "dark": "24px",
2771
+ "light": "24px"
2772
+ }
2773
+ },
2774
+ {
2775
+ "key": "page.splitBreakpoint",
2776
+ "cssName": "--cdt-page-split-breakpoint",
2777
+ "tier": "component",
2778
+ "usage": "decorative",
2779
+ "description": "Below this, a split layout stacks.",
2780
+ "alias": "breakpoint.md",
2781
+ "values": {
2782
+ "dark": "800px",
2783
+ "light": "800px"
2784
+ }
2785
+ },
2786
+ {
2787
+ "key": "page.splitAsideWidth",
2788
+ "cssName": "--cdt-page-split-aside-width",
2789
+ "tier": "component",
2790
+ "usage": "decorative",
2791
+ "description": "Split layout aside track.",
2792
+ "values": {
2793
+ "dark": "minmax(280px, 340px)",
2794
+ "light": "minmax(280px, 340px)"
2795
+ }
2796
+ },
2797
+ {
2798
+ "key": "page.shellNavWidth",
2799
+ "cssName": "--cdt-page-shell-nav-width",
2800
+ "tier": "component",
2801
+ "usage": "decorative",
2802
+ "description": "App shell navigation width.",
2803
+ "values": {
2804
+ "dark": "272px",
2805
+ "light": "272px"
2806
+ }
2807
+ },
2808
+ {
2809
+ "key": "page.shellNavWidthCompact",
2810
+ "cssName": "--cdt-page-shell-nav-width-compact",
2811
+ "tier": "component",
2812
+ "usage": "decorative",
2813
+ "description": "Navigation width below `breakpoint.lg`.",
2814
+ "values": {
2815
+ "dark": "232px",
2816
+ "light": "232px"
2817
+ }
2818
+ },
2819
+ {
2820
+ "key": "page.topbarZ",
2821
+ "cssName": "--cdt-page-topbar-z",
2822
+ "tier": "component",
2823
+ "usage": "decorative",
2824
+ "description": "Top bar stacking layer.",
2825
+ "alias": "z.sticky",
2826
+ "values": {
2827
+ "dark": "20",
2828
+ "light": "20"
2829
+ }
2830
+ },
2831
+ {
2832
+ "key": "page.navZ",
2833
+ "cssName": "--cdt-page-nav-z",
2834
+ "tier": "component",
2835
+ "usage": "decorative",
2836
+ "description": "Navigation stacking layer.",
2837
+ "alias": "z.drawer",
2838
+ "values": {
2839
+ "dark": "30",
2840
+ "light": "30"
2841
+ }
2842
+ },
2843
+ {
2844
+ "key": "page.skipLinkZ",
2845
+ "cssName": "--cdt-page-skip-link-z",
2846
+ "tier": "component",
2847
+ "usage": "decorative",
2848
+ "description": "Skip link stacking layer.",
2849
+ "alias": "z.popover",
2850
+ "values": {
2851
+ "dark": "50",
2852
+ "light": "50"
2853
+ }
2854
+ },
2855
+ {
2856
+ "key": "appShell.navWidth",
2857
+ "cssName": "--cdt-app-shell-nav-width",
2858
+ "tier": "component",
2859
+ "usage": "decorative",
2860
+ "description": "AppShell desktop navigation width.",
2861
+ "alias": "page.shellNavWidth",
2862
+ "values": {
2863
+ "dark": "272px",
2864
+ "light": "272px"
2865
+ }
2866
+ },
2867
+ {
2868
+ "key": "appShell.mainMaxWidth",
2869
+ "cssName": "--cdt-app-shell-main-max-width",
2870
+ "tier": "component",
2871
+ "usage": "decorative",
2872
+ "description": "AppShell main content maximum width.",
2873
+ "values": {
2874
+ "dark": "1480px",
2875
+ "light": "1480px"
2876
+ }
2877
+ },
2878
+ {
2879
+ "key": "appShell.overlayBackground",
2880
+ "cssName": "--cdt-app-shell-overlay-background",
2881
+ "tier": "component",
2882
+ "usage": "decorative",
2883
+ "description": "Mobile navigation scrim.",
2884
+ "alias": "surface.overlay",
2885
+ "values": {
2886
+ "dark": "rgba(4, 7, 12, 0.78)",
2887
+ "light": "rgba(12, 18, 28, 0.45)"
2888
+ }
2889
+ },
2890
+ {
2891
+ "key": "skipLink.background",
2892
+ "cssName": "--cdt-skip-link-background",
2893
+ "tier": "component",
2894
+ "usage": "decorative",
2895
+ "description": "Skip-link fill.",
2896
+ "alias": "accent.DEFAULT",
2897
+ "values": {
2898
+ "dark": "#6d7cff",
2899
+ "light": "#4f5bd5"
2900
+ }
2901
+ },
2902
+ {
2903
+ "key": "skipLink.text",
2904
+ "cssName": "--cdt-skip-link-text",
2905
+ "tier": "component",
2906
+ "usage": "decorative",
2907
+ "description": "Skip-link label.",
2908
+ "alias": "text.inverse",
2909
+ "values": {
2910
+ "dark": "#07111f",
2911
+ "light": "#f4f7fb"
2912
+ }
2913
+ },
2914
+ {
2915
+ "key": "navList.background",
2916
+ "cssName": "--cdt-nav-list-background",
2917
+ "tier": "component",
2918
+ "usage": "decorative",
2919
+ "description": "Navigation surface.",
2920
+ "alias": "surface.raised",
2921
+ "values": {
2922
+ "dark": "#141d2a",
2923
+ "light": "#fbfcfd"
2924
+ }
2925
+ },
2926
+ {
2927
+ "key": "navList.border",
2928
+ "cssName": "--cdt-nav-list-border",
2929
+ "tier": "component",
2930
+ "usage": "decorative",
2931
+ "description": "Navigation surface edge.",
2932
+ "alias": "border.subtle",
2933
+ "values": {
2934
+ "dark": "rgba(148, 163, 184, 0.1)",
2935
+ "light": "#e2e8f0"
2936
+ }
2937
+ },
2938
+ {
2939
+ "key": "navItem.text",
2940
+ "cssName": "--cdt-nav-item-text",
2941
+ "tier": "component",
2942
+ "usage": "decorative",
2943
+ "description": "Navigation item label.",
2944
+ "alias": "text.muted",
2945
+ "values": {
2946
+ "dark": "#8290a3",
2947
+ "light": "#4d5a6e"
2948
+ }
2949
+ },
2950
+ {
2951
+ "key": "navItem.textActive",
2952
+ "cssName": "--cdt-nav-item-text-active",
2953
+ "tier": "component",
2954
+ "usage": "decorative",
2955
+ "description": "Active navigation item label.",
2956
+ "alias": "text.primary",
2957
+ "values": {
2958
+ "dark": "#f4f7fb",
2959
+ "light": "#0c121c"
2960
+ }
2961
+ },
2962
+ {
2963
+ "key": "navItem.backgroundHover",
2964
+ "cssName": "--cdt-nav-item-background-hover",
2965
+ "tier": "component",
2966
+ "usage": "decorative",
2967
+ "description": "Navigation item hover wash.",
2968
+ "alias": "state.hover",
2969
+ "values": {
2970
+ "dark": "rgba(255, 255, 255, 0.055)",
2971
+ "light": "rgba(12, 18, 28, 0.05)"
2972
+ }
2973
+ },
2974
+ {
2975
+ "key": "navItem.backgroundActive",
2976
+ "cssName": "--cdt-nav-item-background-active",
2977
+ "tier": "component",
2978
+ "usage": "decorative",
2979
+ "description": "Active navigation item wash.",
2980
+ "alias": "state.selected",
2981
+ "values": {
2982
+ "dark": "rgba(109, 124, 255, 0.16)",
2983
+ "light": "rgba(79, 91, 213, 0.12)"
2984
+ }
2985
+ },
2986
+ {
2987
+ "key": "navItem.indicator",
2988
+ "cssName": "--cdt-nav-item-indicator",
2989
+ "tier": "component",
2990
+ "usage": "decorative",
2991
+ "description": "Active navigation item indicator.",
2992
+ "alias": "accent.DEFAULT",
2993
+ "values": {
2994
+ "dark": "#6d7cff",
2995
+ "light": "#4f5bd5"
2996
+ }
2997
+ },
2998
+ {
2999
+ "key": "navSectionLabel.text",
3000
+ "cssName": "--cdt-nav-section-label-text",
3001
+ "tier": "component",
3002
+ "usage": "decorative",
3003
+ "description": "Navigation section label.",
3004
+ "alias": "text.faint",
3005
+ "values": {
3006
+ "dark": "#5f6d80",
3007
+ "light": "#6b788c"
3008
+ }
3009
+ },
3010
+ {
3011
+ "key": "font.weight.sectionLabel",
3012
+ "cssName": "--cdt-font-weight-section-label",
3013
+ "tier": "component",
3014
+ "usage": "decorative",
3015
+ "description": "Navigation section label weight.",
3016
+ "values": {
3017
+ "dark": "700",
3018
+ "light": "700"
3019
+ }
3020
+ },
3021
+ {
3022
+ "key": "topBar.background",
3023
+ "cssName": "--cdt-top-bar-background",
3024
+ "tier": "component",
3025
+ "usage": "decorative",
3026
+ "description": "TopBar glass surface.",
3027
+ "alias": "surface.glass",
3028
+ "values": {
3029
+ "dark": "rgba(16, 23, 34, 0.82)",
3030
+ "light": "rgba(251, 252, 253, 0.86)"
3031
+ }
3032
+ },
3033
+ {
3034
+ "key": "topBar.border",
3035
+ "cssName": "--cdt-top-bar-border",
3036
+ "tier": "component",
3037
+ "usage": "decorative",
3038
+ "description": "TopBar lower edge.",
3039
+ "alias": "border.subtle",
3040
+ "values": {
3041
+ "dark": "rgba(148, 163, 184, 0.1)",
3042
+ "light": "#e2e8f0"
3043
+ }
3044
+ },
3045
+ {
3046
+ "key": "topBar.eyebrowText",
3047
+ "cssName": "--cdt-top-bar-eyebrow-text",
3048
+ "tier": "component",
3049
+ "usage": "decorative",
3050
+ "description": "TopBar eyebrow label.",
3051
+ "alias": "text.faint",
3052
+ "values": {
3053
+ "dark": "#5f6d80",
3054
+ "light": "#6b788c"
3055
+ }
3056
+ },
3057
+ {
3058
+ "key": "topBar.titleText",
3059
+ "cssName": "--cdt-top-bar-title-text",
3060
+ "tier": "component",
3061
+ "usage": "decorative",
3062
+ "description": "TopBar context title.",
3063
+ "alias": "text.secondary",
3064
+ "values": {
3065
+ "dark": "#c5cfdd",
3066
+ "light": "#33415a"
3067
+ }
3068
+ },
3069
+ {
3070
+ "key": "topBar.minHeight",
3071
+ "cssName": "--cdt-top-bar-min-height",
3072
+ "tier": "component",
3073
+ "usage": "decorative",
3074
+ "description": "TopBar minimum height.",
3075
+ "values": {
3076
+ "dark": "68px",
3077
+ "light": "68px"
3078
+ }
3079
+ }
3080
+ ]
3081
+ }