@oneli8/tokens 1.0.0-beta.10

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,2041 @@
1
+ {
2
+ "$schema": "../schema/token-file.schema.json",
3
+ "$description": "Approved Oneli8 semantic roles consumed by products and components.",
4
+ "color": {
5
+ "primary": {
6
+ "120": {
7
+ "$type": "color",
8
+ "$value": "{color.blue.120}",
9
+ "$description": "Active Primary-family 120 alias; overridden only by the independent Primary Family axis."
10
+ },
11
+ "240": {
12
+ "$type": "color",
13
+ "$value": "{color.blue.240}",
14
+ "$description": "Active Primary-family 240 alias; overridden only by the independent Primary Family axis."
15
+ },
16
+ "360": {
17
+ "$type": "color",
18
+ "$value": "{color.blue.360}",
19
+ "$description": "Active Primary-family 360 alias; overridden only by the independent Primary Family axis."
20
+ },
21
+ "480": {
22
+ "$type": "color",
23
+ "$value": "{color.blue.480}",
24
+ "$description": "Active Primary-family 480 alias; overridden only by the independent Primary Family axis."
25
+ },
26
+ "600": {
27
+ "$type": "color",
28
+ "$value": "{color.blue.600}",
29
+ "$description": "Active Primary-family 600 alias; overridden only by the independent Primary Family axis."
30
+ },
31
+ "720": {
32
+ "$type": "color",
33
+ "$value": "{color.blue.720}",
34
+ "$description": "Active Primary-family 720 alias; overridden only by the independent Primary Family axis."
35
+ },
36
+ "840": {
37
+ "$type": "color",
38
+ "$value": "{color.blue.840}",
39
+ "$description": "Active Primary-family 840 alias; overridden only by the independent Primary Family axis."
40
+ },
41
+ "930": {
42
+ "$type": "color",
43
+ "$value": "{color.blue.930}",
44
+ "$description": "Active Primary-family 930 alias; overridden only by the independent Primary Family axis."
45
+ },
46
+ "030": {
47
+ "$type": "color",
48
+ "$value": "{color.blue.030}",
49
+ "$description": "Active Primary-family 030 alias; overridden only by the independent Primary Family axis."
50
+ },
51
+ "060": {
52
+ "$type": "color",
53
+ "$value": "{color.blue.060}",
54
+ "$description": "Active Primary-family 060 alias; overridden only by the independent Primary Family axis."
55
+ },
56
+ "090": {
57
+ "$type": "color",
58
+ "$value": "{color.blue.090}",
59
+ "$description": "Active Primary-family 090 alias; overridden only by the independent Primary Family axis."
60
+ }
61
+ },
62
+ "background": {
63
+ "canvas": {
64
+ "$type": "color",
65
+ "$value": "{color.neutral.030}",
66
+ "$description": "Root page or application background."
67
+ },
68
+ "subtle": {
69
+ "$type": "color",
70
+ "$value": "{color.neutral.060}",
71
+ "$description": "Quiet section differentiation."
72
+ },
73
+ "inverse": {
74
+ "$type": "color",
75
+ "$value": "{color.blue.930}",
76
+ "$description": "Intentionally inverted region."
77
+ }
78
+ },
79
+ "surface": {
80
+ "default": {
81
+ "$type": "color",
82
+ "$value": "{color.neutral.030}",
83
+ "$description": "Cards, menus, controls, and panels."
84
+ },
85
+ "raised": {
86
+ "$type": "color",
87
+ "$value": "{color.neutral.030}",
88
+ "$description": "Popovers, dialogs, and floating surfaces."
89
+ },
90
+ "sunken": {
91
+ "$type": "color",
92
+ "$value": "{color.neutral.060}",
93
+ "$description": "Wells, grouped fields, and recessed regions."
94
+ },
95
+ "selected": {
96
+ "$type": "color",
97
+ "$value": "{color.primary.060}",
98
+ "$description": "Persistent selection surface qualified by the active Primary family."
99
+ },
100
+ "disabled": {
101
+ "$type": "color",
102
+ "$value": "{color.neutral.090}",
103
+ "$description": "Unavailable interactive surface."
104
+ }
105
+ },
106
+ "text": {
107
+ "primary": {
108
+ "$type": "color",
109
+ "$value": "{color.neutral.930}",
110
+ "$description": "Essential content and sustained reading."
111
+ },
112
+ "secondary": {
113
+ "$type": "color",
114
+ "$value": "{color.neutral.720}",
115
+ "$description": "Supporting content."
116
+ },
117
+ "muted": {
118
+ "$type": "color",
119
+ "$value": "{color.neutral.600}",
120
+ "$description": "Metadata and low-emphasis content."
121
+ },
122
+ "disabled": {
123
+ "$type": "color",
124
+ "$value": "{color.neutral.480}",
125
+ "$description": "Disabled labels; never the only disabled cue."
126
+ },
127
+ "inverse": {
128
+ "$type": "color",
129
+ "$value": "{color.neutral.030}",
130
+ "$description": "Content on inverse regions."
131
+ },
132
+ "link": {
133
+ "default": {
134
+ "$type": "color",
135
+ "$value": "{color.primary.600}",
136
+ "$description": "Navigational text at rest; underline by default."
137
+ },
138
+ "hover": {
139
+ "$type": "color",
140
+ "$value": "{color.primary.720}",
141
+ "$description": "Navigational text on Hover."
142
+ },
143
+ "pressed": {
144
+ "$type": "color",
145
+ "$value": "{color.primary.840}",
146
+ "$description": "Navigational text while Pressed."
147
+ },
148
+ "visited": {
149
+ "$type": "color",
150
+ "$value": "{color.violet.600}",
151
+ "$description": "Optional privacy-safe Visited orientation cue for content and reference contexts."
152
+ }
153
+ }
154
+ },
155
+ "icon": {
156
+ "primary": {
157
+ "$type": "color",
158
+ "$value": "{color.neutral.930}",
159
+ "$description": "Essential icons."
160
+ },
161
+ "secondary": {
162
+ "$type": "color",
163
+ "$value": "{color.neutral.480}",
164
+ "$description": "Supporting icons."
165
+ },
166
+ "muted": {
167
+ "$type": "color",
168
+ "$value": "{color.neutral.360}",
169
+ "$description": "Quiet nonessential icons."
170
+ },
171
+ "disabled": {
172
+ "$type": "color",
173
+ "$value": "{color.neutral.240}",
174
+ "$description": "Inactive redundant icon cue."
175
+ },
176
+ "inverse": {
177
+ "$type": "color",
178
+ "$value": "{color.neutral.030}",
179
+ "$description": "Icons on inverse regions."
180
+ },
181
+ "onGem": {
182
+ "$type": "color",
183
+ "$value": "{color.neutral.030}",
184
+ "$description": "High-contrast near-white icon artwork on translucent or saturated Gem controls; remains stable across Light and Dark appearances."
185
+ }
186
+ },
187
+ "control": {
188
+ "thumb": {
189
+ "$type": "color",
190
+ "$value": "{color.neutral.030}",
191
+ "$description": "Stable near-white moving thumb surface for Switch across Light and Dark appearances."
192
+ }
193
+ },
194
+ "border": {
195
+ "subtle": {
196
+ "$type": "color",
197
+ "$value": "{color.neutral.090}",
198
+ "$description": "Decorative separation only."
199
+ },
200
+ "default": {
201
+ "$type": "color",
202
+ "$value": "{color.neutral.360}",
203
+ "$description": "Essential standard boundary."
204
+ },
205
+ "strong": {
206
+ "$type": "color",
207
+ "$value": "{color.neutral.480}",
208
+ "$description": "Emphasized essential boundary."
209
+ },
210
+ "disabled": {
211
+ "$type": "color",
212
+ "$value": "{color.neutral.480}",
213
+ "$description": "Disabled control boundary."
214
+ }
215
+ },
216
+ "focus": {
217
+ "inner": {
218
+ "$type": "color",
219
+ "$value": "{color.primary.030}",
220
+ "$description": "Light appearance focus highlight from the active qualified family."
221
+ },
222
+ "outer": {
223
+ "$type": "color",
224
+ "$value": "{color.primary.930}",
225
+ "$description": "Light appearance focus shadow from the active qualified family."
226
+ }
227
+ },
228
+ "actionPrimary": {
229
+ "default": {
230
+ "$type": "color",
231
+ "$value": "{color.primary.600}",
232
+ "$description": "Primary action default surface."
233
+ },
234
+ "hover": {
235
+ "$type": "color",
236
+ "$value": "{color.primary.720}",
237
+ "$description": "Primary action hover surface."
238
+ },
239
+ "pressed": {
240
+ "$type": "color",
241
+ "$value": "{color.primary.840}",
242
+ "$description": "Primary action pressed surface."
243
+ },
244
+ "content": {
245
+ "$type": "color",
246
+ "$value": "{color.neutral.030}",
247
+ "$description": "Primary action foreground."
248
+ },
249
+ "disabled": {
250
+ "$type": "color",
251
+ "$value": "{color.neutral.090}",
252
+ "$description": "Primary action disabled surface."
253
+ },
254
+ "disabledContent": {
255
+ "$type": "color",
256
+ "$value": "{color.neutral.480}",
257
+ "$description": "Primary action disabled foreground."
258
+ }
259
+ },
260
+ "actionSecondary": {
261
+ "surfaceDefault": {
262
+ "$type": "color",
263
+ "$value": "transparent",
264
+ "$description": "Secondary action default surface inherits its permitted adjacent surface."
265
+ },
266
+ "surfaceHover": {
267
+ "$type": "color",
268
+ "$value": "{color.primary.030}",
269
+ "$description": "Secondary action hover surface."
270
+ },
271
+ "surfacePressed": {
272
+ "$type": "color",
273
+ "$value": "{color.primary.060}",
274
+ "$description": "Secondary action pressed surface."
275
+ },
276
+ "surfaceDisabled": {
277
+ "$type": "color",
278
+ "$value": "transparent",
279
+ "$description": "Secondary action disabled surface inherits its permitted adjacent surface."
280
+ },
281
+ "contentDefault": {
282
+ "$type": "color",
283
+ "$value": "{color.primary.600}",
284
+ "$description": "Secondary action default content and border."
285
+ },
286
+ "contentHover": {
287
+ "$type": "color",
288
+ "$value": "{color.primary.720}",
289
+ "$description": "Secondary action hover content and border."
290
+ },
291
+ "contentPressed": {
292
+ "$type": "color",
293
+ "$value": "{color.primary.840}",
294
+ "$description": "Secondary action pressed content and border."
295
+ },
296
+ "contentDisabled": {
297
+ "$type": "color",
298
+ "$value": "{color.neutral.480}",
299
+ "$description": "Secondary action disabled content and border."
300
+ }
301
+ },
302
+ "actionQuiet": {
303
+ "surfaceDefault": {
304
+ "$type": "color",
305
+ "$value": "transparent",
306
+ "$description": "Quiet action default surface."
307
+ },
308
+ "surfaceHover": {
309
+ "$type": "color",
310
+ "$value": "{color.primary.030}",
311
+ "$description": "Quiet action hover surface."
312
+ },
313
+ "surfacePressed": {
314
+ "$type": "color",
315
+ "$value": "{color.primary.060}",
316
+ "$description": "Quiet action pressed surface."
317
+ },
318
+ "surfaceDisabled": {
319
+ "$type": "color",
320
+ "$value": "transparent",
321
+ "$description": "Quiet action disabled surface."
322
+ },
323
+ "contentDefault": {
324
+ "$type": "color",
325
+ "$value": "{color.primary.600}",
326
+ "$description": "Quiet action default content."
327
+ },
328
+ "contentHover": {
329
+ "$type": "color",
330
+ "$value": "{color.primary.720}",
331
+ "$description": "Quiet action hover content."
332
+ },
333
+ "contentPressed": {
334
+ "$type": "color",
335
+ "$value": "{color.primary.840}",
336
+ "$description": "Quiet action pressed content."
337
+ },
338
+ "contentDisabled": {
339
+ "$type": "color",
340
+ "$value": "{color.neutral.480}",
341
+ "$description": "Quiet action disabled content."
342
+ }
343
+ },
344
+ "iconButton": {
345
+ "secondaryHoverSurface": {
346
+ "$type": "color",
347
+ "$value": "{color.primary.060}",
348
+ "$description": "Icon Button Secondary hover surface with sufficient visible separation from the surrounding canvas."
349
+ },
350
+ "quietHoverSurface": {
351
+ "$type": "color",
352
+ "$value": "{color.primary.060}",
353
+ "$description": "Icon Button Quiet hover surface with sufficient visible separation from the surrounding canvas."
354
+ }
355
+ },
356
+ "navigationBadge": {
357
+ "surfaceDefault": {
358
+ "$type": "color",
359
+ "$value": "{color.surface.raised}",
360
+ "$description": "Neutral Navigation Badge surface; resolves through the active color scheme."
361
+ },
362
+ "contentDefault": {
363
+ "$type": "color",
364
+ "$value": "{color.text.secondary}",
365
+ "$description": "Neutral Navigation Badge content; resolves through the active color scheme."
366
+ },
367
+ "surfaceSelected": {
368
+ "$type": "color",
369
+ "$value": "{color.selection.content}",
370
+ "$description": "Navigation Badge surface when its destination is selected."
371
+ },
372
+ "contentSelected": {
373
+ "$type": "color",
374
+ "$value": "{color.selection.surface}",
375
+ "$description": "Navigation Badge content when its destination is selected."
376
+ },
377
+ "surfaceGem": {
378
+ "$type": "color",
379
+ "$value": "{material.gem.color.cutEdge.high}",
380
+ "$description": "Navigation Badge surface on an unselected Gem navigation destination."
381
+ },
382
+ "contentGem": {
383
+ "$type": "color",
384
+ "$value": "{color.text.primary}",
385
+ "$description": "Navigation Badge content on an unselected Gem navigation destination."
386
+ }
387
+ },
388
+ "actionDestructive": {
389
+ "default": {
390
+ "$type": "color",
391
+ "$value": "{color.red.600}",
392
+ "$description": "Destructive action default surface."
393
+ },
394
+ "hover": {
395
+ "$type": "color",
396
+ "$value": "{color.red.720}",
397
+ "$description": "Destructive action hover surface."
398
+ },
399
+ "pressed": {
400
+ "$type": "color",
401
+ "$value": "{color.red.840}",
402
+ "$description": "Destructive action pressed surface."
403
+ },
404
+ "content": {
405
+ "$type": "color",
406
+ "$value": "{color.neutral.030}",
407
+ "$description": "Destructive action foreground."
408
+ },
409
+ "disabled": {
410
+ "$type": "color",
411
+ "$value": "{color.neutral.090}",
412
+ "$description": "Destructive action disabled surface."
413
+ },
414
+ "disabledContent": {
415
+ "$type": "color",
416
+ "$value": "{color.neutral.480}",
417
+ "$description": "Destructive action disabled foreground."
418
+ }
419
+ },
420
+ "feedbackInformative": {
421
+ "surface": {
422
+ "$type": "color",
423
+ "$value": "{color.cyan.720}",
424
+ "$description": "Filled informative feedback surface."
425
+ },
426
+ "content": {
427
+ "$type": "color",
428
+ "$value": "{color.neutral.030}",
429
+ "$description": "Content on filled informative feedback."
430
+ },
431
+ "inlineContent": {
432
+ "$type": "color",
433
+ "$value": "{color.blue.600}",
434
+ "$description": "Informative icon and text on neutral surfaces."
435
+ }
436
+ },
437
+ "feedbackPositive": {
438
+ "surface": {
439
+ "$type": "color",
440
+ "$value": "{color.green.600}",
441
+ "$description": "Filled positive feedback surface."
442
+ },
443
+ "content": {
444
+ "$type": "color",
445
+ "$value": "{color.neutral.030}",
446
+ "$description": "Content on filled positive feedback."
447
+ },
448
+ "inlineContent": {
449
+ "$type": "color",
450
+ "$value": "{color.green.600}",
451
+ "$description": "Positive icon and text on neutral surfaces."
452
+ }
453
+ },
454
+ "feedbackCaution": {
455
+ "surface": {
456
+ "$type": "color",
457
+ "$value": "{color.yellow.090}",
458
+ "$description": "Filled caution feedback surface."
459
+ },
460
+ "content": {
461
+ "$type": "color",
462
+ "$value": "{color.neutral.840}",
463
+ "$description": "Content on filled caution feedback."
464
+ },
465
+ "inlineContent": {
466
+ "$type": "color",
467
+ "$value": "{color.yellow.600}",
468
+ "$description": "Caution icon and text on neutral surfaces."
469
+ }
470
+ },
471
+ "feedbackCritical": {
472
+ "surface": {
473
+ "$type": "color",
474
+ "$value": "{color.red.600}",
475
+ "$description": "Filled critical feedback surface."
476
+ },
477
+ "content": {
478
+ "$type": "color",
479
+ "$value": "{color.neutral.030}",
480
+ "$description": "Content on filled critical feedback."
481
+ },
482
+ "inlineContent": {
483
+ "$type": "color",
484
+ "$value": "{color.red.480}",
485
+ "$description": "Light Critical icon, text, and essential boundaries on neutral surfaces; the brighter existing Red 480 preserves a recognizably red signal while meeting AA contrast."
486
+ }
487
+ },
488
+ "selection": {
489
+ "surface": {
490
+ "$type": "color",
491
+ "$value": "{color.primary.060}",
492
+ "$description": "Persistent selected surface qualified by the active Primary family."
493
+ },
494
+ "content": {
495
+ "$type": "color",
496
+ "$value": "{color.primary.840}",
497
+ "$description": "Content on a persistent selected surface qualified by the active Primary family."
498
+ }
499
+ },
500
+ "scrim": {
501
+ "pressed": {
502
+ "$type": "color",
503
+ "$value": {
504
+ "color": "{color.cyan.840}",
505
+ "alpha": 0.24
506
+ },
507
+ "$extensions": {
508
+ "oneli8.composite": "color-alpha"
509
+ },
510
+ "$description": "Pressed darkening laid over a controls own surface. Uses the systems cyan ink, never default black."
511
+ }
512
+ }
513
+ },
514
+ "elevation": {
515
+ "surface": {
516
+ "flat": {
517
+ "$type": "shadow",
518
+ "$value": [],
519
+ "$description": "No visual elevation."
520
+ },
521
+ "raised": {
522
+ "$type": "shadow",
523
+ "$value": [
524
+ {
525
+ "color": "{color.cyan.840}",
526
+ "offsetX": "{dimension.scale.000}",
527
+ "offsetY": "{dimension.scale.003}",
528
+ "blur": "{dimension.scale.006}",
529
+ "spread": "{dimension.scale.000}",
530
+ "alpha": 0.12
531
+ }
532
+ ],
533
+ "$description": "Lifted card, toolbar, or sticky-region depth."
534
+ },
535
+ "floating": {
536
+ "$type": "shadow",
537
+ "$value": [
538
+ {
539
+ "color": "{color.cyan.840}",
540
+ "offsetX": "{dimension.scale.000}",
541
+ "offsetY": "{dimension.scale.006}",
542
+ "blur": "{dimension.scale.018}",
543
+ "spread": {
544
+ "value": -3,
545
+ "unit": "px"
546
+ },
547
+ "alpha": 0.18
548
+ },
549
+ {
550
+ "color": "{color.cyan.840}",
551
+ "offsetX": "{dimension.scale.000}",
552
+ "offsetY": "{dimension.scale.003}",
553
+ "blur": "{dimension.scale.006}",
554
+ "spread": "{dimension.scale.000}",
555
+ "alpha": 0.12
556
+ }
557
+ ],
558
+ "$description": "Menu, popover, picker, or transient-panel depth."
559
+ },
560
+ "overlay": {
561
+ "$type": "shadow",
562
+ "$value": [
563
+ {
564
+ "color": "{color.cyan.840}",
565
+ "offsetX": "{dimension.scale.000}",
566
+ "offsetY": "{dimension.scale.012}",
567
+ "blur": "{dimension.scale.036}",
568
+ "spread": {
569
+ "value": -6,
570
+ "unit": "px"
571
+ },
572
+ "alpha": 0.24
573
+ },
574
+ {
575
+ "color": "{color.cyan.840}",
576
+ "offsetX": "{dimension.scale.000}",
577
+ "offsetY": "{dimension.scale.006}",
578
+ "blur": "{dimension.scale.012}",
579
+ "spread": "{dimension.scale.000}",
580
+ "alpha": 0.18
581
+ }
582
+ ],
583
+ "$description": "Drawer, dialog, or command-surface depth."
584
+ },
585
+ "blocking": {
586
+ "$type": "shadow",
587
+ "$value": [
588
+ {
589
+ "color": "{color.cyan.840}",
590
+ "offsetX": "{dimension.scale.000}",
591
+ "offsetY": "{dimension.scale.024}",
592
+ "blur": "{dimension.scale.072}",
593
+ "spread": {
594
+ "value": -12,
595
+ "unit": "px"
596
+ },
597
+ "alpha": 0.36
598
+ },
599
+ {
600
+ "color": "{color.cyan.840}",
601
+ "offsetX": "{dimension.scale.000}",
602
+ "offsetY": "{dimension.scale.012}",
603
+ "blur": "{dimension.scale.024}",
604
+ "spread": "{dimension.scale.000}",
605
+ "alpha": 0.24
606
+ }
607
+ ],
608
+ "$description": "Rare high-attention blocking depth."
609
+ }
610
+ }
611
+ },
612
+ "layer": {
613
+ "stack": {
614
+ "base": {
615
+ "$type": "number",
616
+ "$value": 0,
617
+ "$description": "Normal content and ordinary surfaces."
618
+ },
619
+ "sticky": {
620
+ "$type": "number",
621
+ "$value": 300,
622
+ "$description": "Sticky headers and local pinned controls."
623
+ },
624
+ "overlay": {
625
+ "$type": "number",
626
+ "$value": 600,
627
+ "$description": "Menus, popovers, tooltips, and nonmodal overlays."
628
+ },
629
+ "modal": {
630
+ "$type": "number",
631
+ "$value": 900,
632
+ "$description": "Dialogs, drawers, and modal backdrops."
633
+ },
634
+ "notification": {
635
+ "$type": "number",
636
+ "$value": 1200,
637
+ "$description": "Toasts and urgent transient notices."
638
+ }
639
+ }
640
+ },
641
+ "material": {
642
+ "control": {
643
+ "gem": {
644
+ "primary": {
645
+ "start": {
646
+ "$type": "color",
647
+ "$value": "{color.primary.480}",
648
+ "$description": "Gem Primary leading tonal stop in Light appearance."
649
+ },
650
+ "mid": {
651
+ "$type": "color",
652
+ "$value": "{color.primary.600}",
653
+ "$description": "Gem Primary middle tonal stop in Light appearance."
654
+ },
655
+ "end": {
656
+ "$type": "color",
657
+ "$value": "{color.primary.720}",
658
+ "$description": "Gem Primary trailing tonal stop in Light appearance."
659
+ },
660
+ "hoverStart": {
661
+ "$type": "color",
662
+ "$value": "{color.primary.600}",
663
+ "$description": "Gem Primary Hover leading tonal stop in Light appearance."
664
+ },
665
+ "hoverMid": {
666
+ "$type": "color",
667
+ "$value": "{color.primary.720}",
668
+ "$description": "Gem Primary Hover middle tonal stop in Light appearance."
669
+ },
670
+ "hoverEnd": {
671
+ "$type": "color",
672
+ "$value": "{color.primary.840}",
673
+ "$description": "Gem Primary Hover trailing tonal stop in Light appearance."
674
+ },
675
+ "loadingStart": {
676
+ "$type": "color",
677
+ "$value": "{color.primary.720}",
678
+ "$description": "Shared Button and Icon Button Gem Loading leading stop; visibly busy without implying Hover."
679
+ },
680
+ "loadingMid": {
681
+ "$type": "color",
682
+ "$value": "{color.primary.840}",
683
+ "$description": "Shared Button and Icon Button Gem Loading middle stop."
684
+ },
685
+ "loadingEnd": {
686
+ "$type": "color",
687
+ "$value": "{color.primary.930}",
688
+ "$description": "Shared Button and Icon Button Gem Loading trailing stop."
689
+ },
690
+ "content": {
691
+ "$type": "color",
692
+ "$value": "{color.neutral.030}",
693
+ "$description": "Stable foreground on the qualified Gem Primary ramp."
694
+ }
695
+ },
696
+ "secondary": {
697
+ "high": {
698
+ "$type": "color",
699
+ "$value": {
700
+ "color": "{color.neutral.030}",
701
+ "alpha": 0.09
702
+ },
703
+ "$extensions": {
704
+ "oneli8.composite": "color-alpha"
705
+ },
706
+ "$description": "Quiet Gem glass leading stop in the Light appearance. 0.09, down from 0.22: the gem field face is TWO stacked near-white layers, this gradient over material.gem.color.quiet.stabilizedFace, which composited to 31-43% white and is what made light Gem read as milk rather than glass. Dark keeps 0.22 via an override, because the same near-white gradient over a dark environment is the sheen that makes the material legible as glass. Every state on this ladder is one 0.03 step apart, which is the 3-point rhythm expressed in alpha."
707
+ },
708
+ "mid": {
709
+ "$type": "color",
710
+ "$value": {
711
+ "color": "{color.neutral.030}",
712
+ "alpha": 0.03
713
+ },
714
+ "$extensions": {
715
+ "oneli8.composite": "color-alpha"
716
+ },
717
+ "$description": "Gem Secondary quiet middle transparency."
718
+ },
719
+ "low": {
720
+ "$type": "color",
721
+ "$value": {
722
+ "color": "{color.neutral.030}",
723
+ "alpha": 0.06
724
+ },
725
+ "$extensions": {
726
+ "oneli8.composite": "color-alpha"
727
+ },
728
+ "$description": "Gem Secondary trailing transparent tint."
729
+ },
730
+ "hoverHigh": {
731
+ "$type": "color",
732
+ "$value": {
733
+ "color": "{color.neutral.030}",
734
+ "alpha": 0.12
735
+ },
736
+ "$extensions": {
737
+ "oneli8.composite": "color-alpha"
738
+ },
739
+ "$description": "Gem Secondary Hover leading transparent highlight."
740
+ },
741
+ "hoverMid": {
742
+ "$type": "color",
743
+ "$value": {
744
+ "color": "{color.neutral.030}",
745
+ "alpha": 0.06
746
+ },
747
+ "$extensions": {
748
+ "oneli8.composite": "color-alpha"
749
+ },
750
+ "$description": "Gem Secondary Hover middle transparency."
751
+ },
752
+ "hoverLow": {
753
+ "$type": "color",
754
+ "$value": {
755
+ "color": "{color.neutral.030}",
756
+ "alpha": 0.09
757
+ },
758
+ "$extensions": {
759
+ "oneli8.composite": "color-alpha"
760
+ },
761
+ "$description": "Gem Secondary Hover trailing transparent tint."
762
+ },
763
+ "loadingHigh": {
764
+ "$type": "color",
765
+ "$value": {
766
+ "color": "{color.neutral.030}",
767
+ "alpha": 0.15
768
+ },
769
+ "$extensions": {
770
+ "oneli8.composite": "color-alpha"
771
+ },
772
+ "$description": "Shared Button and Icon Button Gem Secondary Loading highlight."
773
+ },
774
+ "loadingMid": {
775
+ "$type": "color",
776
+ "$value": {
777
+ "color": "{color.neutral.030}",
778
+ "alpha": 0.09
779
+ },
780
+ "$extensions": {
781
+ "oneli8.composite": "color-alpha"
782
+ },
783
+ "$description": "Shared Button and Icon Button Gem Secondary Loading middle transparency."
784
+ },
785
+ "loadingLow": {
786
+ "$type": "color",
787
+ "$value": {
788
+ "color": "{color.neutral.030}",
789
+ "alpha": 0.12
790
+ },
791
+ "$extensions": {
792
+ "oneli8.composite": "color-alpha"
793
+ },
794
+ "$description": "Shared Button and Icon Button Gem Secondary Loading trailing tint."
795
+ },
796
+ "content": {
797
+ "$type": "color",
798
+ "$value": "{color.neutral.030}",
799
+ "$description": "Approved stable near-white Gem Secondary content in Light and Dark. Text and icons share this role; qualify backing contrast separately."
800
+ }
801
+ },
802
+ "rim": {
803
+ "default": {
804
+ "$type": "color",
805
+ "$value": {
806
+ "color": "{color.neutral.030}",
807
+ "alpha": 0.24
808
+ },
809
+ "$extensions": {
810
+ "oneli8.composite": "color-alpha"
811
+ },
812
+ "$description": "One-pixel inset Gem control rim; never an external border."
813
+ },
814
+ "hover": {
815
+ "$type": "color",
816
+ "$value": {
817
+ "color": "{color.neutral.030}",
818
+ "alpha": 0.36
819
+ },
820
+ "$extensions": {
821
+ "oneli8.composite": "color-alpha"
822
+ },
823
+ "$description": "Raised inset Gem control rim for Hover."
824
+ },
825
+ "specular": {
826
+ "$type": "color",
827
+ "$value": {
828
+ "color": "{color.neutral.030}",
829
+ "alpha": 0.54
830
+ },
831
+ "$extensions": {
832
+ "oneli8.composite": "color-alpha"
833
+ },
834
+ "$description": "Restrained integrated Gem control highlight."
835
+ }
836
+ },
837
+ "blur": {
838
+ "$type": "dimension",
839
+ "$value": "{dimension.scale.012}",
840
+ "$description": "Backdrop blur candidate for transparent Gem controls."
841
+ },
842
+ "gradient": {
843
+ "start": {
844
+ "$type": "dimension",
845
+ "$value": {
846
+ "value": 14.639,
847
+ "unit": "%"
848
+ },
849
+ "$description": "Gem body gradient leading position, measured from the Figma Gem Button fill."
850
+ },
851
+ "mid": {
852
+ "$type": "dimension",
853
+ "$value": {
854
+ "value": 48.586,
855
+ "unit": "%"
856
+ },
857
+ "$description": "Gem body gradient middle position, measured from the Figma Gem Button fill."
858
+ },
859
+ "end": {
860
+ "$type": "dimension",
861
+ "$value": {
862
+ "value": 85.361,
863
+ "unit": "%"
864
+ },
865
+ "$description": "Gem body gradient trailing position, measured from the Figma Gem Button fill."
866
+ }
867
+ }
868
+ }
869
+ },
870
+ "gem": {
871
+ "color": {
872
+ "quiet": {
873
+ "environmentalFace": {
874
+ "$type": "color",
875
+ "$value": {
876
+ "color": "{color.neutral.030}",
877
+ "alpha": 0.09
878
+ },
879
+ "$extensions": {
880
+ "oneli8.composite": "color-alpha"
881
+ },
882
+ "$description": "Quiet Gem environmental face. 0.09 in Light, the most transparent value on the 0.03 grid, because transparency turns out to be nearly free: measured against near-white ink on the brightest region of a daylight plate, a 0.12 face reads 3.24:1 and a 0.18 face reads 3.18:1 -- a 0.06 difference in tint moves contrast by 0.06:1. Legibility is governed almost entirely by the content halo, not by the face, so the face is free to go as thin as the appearance wants. Dark stays a dark tint at 0.48. A dark tint belongs to the Dark appearance; Light stays light."
883
+ },
884
+ "legibilityFace": {
885
+ "$type": "color",
886
+ "$value": {
887
+ "color": "{color.neutral.930}",
888
+ "alpha": 0.72
889
+ },
890
+ "$extensions": {
891
+ "oneli8.composite": "color-alpha"
892
+ },
893
+ "$description": "Reduced-transparency Gem face. NOT an opaque panel: 0.72 leaves 28 percent of the scene reaching the eye, which is the whole point. Gem is worn, so the background is the real world; a fully opaque surface would occlude the street for the person who needs help reading it most. Solved against the actual daylight plate, whose regions run from rgb(9,9,9) to rgb(229,226,223): at 0.72 near-white ink reads 7.70:1 in the WORST region, which is WCAG AAA, with no credit taken for the halo. The same value in both appearances, because when legibility is the priority there is one answer rather than a light and a dark preference. On a head-mounted display prefers-reduced-transparency should resolve HERE, not to opaqueEquivalent."
894
+ },
895
+ "stabilizedFace": {
896
+ "$type": "color",
897
+ "$value": {
898
+ "color": "{color.neutral.030}",
899
+ "alpha": 0.15
900
+ },
901
+ "$extensions": {
902
+ "oneli8.composite": "color-alpha"
903
+ },
904
+ "$description": "Quiet Light Gem stabilized content plane. Stays near-white at 0.15, and deliberately does NOT follow environmentalFace into smoked glass. These two faces do different jobs: the environmental face sits over imagery and carries near-white content, while this one is the local content plane the text field stacks under its Control Gem Secondary gradient, and that surface carries ordinary dark text. 0.15 under the 0.09 ladder composites to 0.2265, the approved clear-glass presence."
905
+ },
906
+ "content": {
907
+ "$type": "color",
908
+ "$value": "{color.neutral.030}",
909
+ "$description": "Content on a quiet Gem surface. Near-white in BOTH appearances, exactly as color.icon.onGem and color.control.thumb already are \u2014 'remains stable across Light and Dark appearances'. Gem sits over imagery whose brightness is unknown, so the ink cannot follow the app's appearance; it stays white and the halo does the work."
910
+ },
911
+ "contentDisabled": {
912
+ "$type": "color",
913
+ "$value": {
914
+ "color": "{color.neutral.030}",
915
+ "alpha": 0.48
916
+ },
917
+ "$extensions": {
918
+ "oneli8.composite": "color-alpha"
919
+ },
920
+ "$description": "Disabled content on a quiet Gem surface, text and control geometry alike. A whitish grey: the same near-white ink at 0.48, which renders around rgb(200,197,192) over the face. One value for both, because a disabled label and a disabled indicator reading different greys is the thing that makes a row look broken rather than unavailable. It does NOT use color.text.disabled, which is dark in the Light appearance and would put a dark glyph on glass whose enabled content is near-white. Exempt from 1.4.3, which excludes inactive controls, and it carries no halo -- the absence of the glow is part of how unavailable reads."
921
+ },
922
+ "contentGlow": {
923
+ "$type": "color",
924
+ "$value": {
925
+ "color": "{color.neutral.930}",
926
+ "alpha": 0.78
927
+ },
928
+ "$extensions": {
929
+ "oneli8.composite": "color-alpha"
930
+ },
931
+ "$description": "Halo behind content on a quiet Gem surface, applied as four stacked shadows for text and three for control geometry. 0.78 is the SOFTEST alpha that still holds WCAG 1.4.3: at 3px in four stacks it reads 4.62:1 on the brightest region of the daylight plate, where 0.72 reads 4.21:1 and fails. It was 0.84, which measured 5.06:1 but read harsh. Anything softer than this trades away AA for text, so this is the floor, not a preference. See proof/gem-halo-contrast.html."
932
+ },
933
+ "opaqueEquivalent": {
934
+ "$type": "color",
935
+ "$value": "{color.neutral.030}",
936
+ "$description": "Quiet Light Gem reduced-transparency equivalent. The opaque form of the light face, so it follows the face back to a light neutral; Dark keeps neutral.840 through its override."
937
+ }
938
+ },
939
+ "cutEdge": {
940
+ "outerHigh": {
941
+ "$type": "color",
942
+ "$value": {
943
+ "color": "{color.neutral.060}",
944
+ "alpha": 0.93
945
+ },
946
+ "$extensions": {
947
+ "oneli8.composite": "color-alpha"
948
+ },
949
+ "$description": "Bright outer cut-edge stop."
950
+ },
951
+ "outerMid": {
952
+ "$type": "color",
953
+ "$value": {
954
+ "color": "{color.blue.120}",
955
+ "alpha": 0.48
956
+ },
957
+ "$extensions": {
958
+ "oneli8.composite": "color-alpha"
959
+ },
960
+ "$description": "Cool outer cut-edge middle stop."
961
+ },
962
+ "outerLow": {
963
+ "$type": "color",
964
+ "$value": {
965
+ "color": "{color.neutral.060}",
966
+ "alpha": 0.03
967
+ },
968
+ "$extensions": {
969
+ "oneli8.composite": "color-alpha"
970
+ },
971
+ "$description": "Fading outer cut-edge stop."
972
+ },
973
+ "outerAccent": {
974
+ "$type": "color",
975
+ "$value": {
976
+ "color": "{color.cyan.360}",
977
+ "alpha": 0.36
978
+ },
979
+ "$extensions": {
980
+ "oneli8.composite": "color-alpha"
981
+ },
982
+ "$description": "Restrained chromatic outer cut-edge accent."
983
+ },
984
+ "high": {
985
+ "$type": "color",
986
+ "$value": {
987
+ "color": "{color.neutral.060}",
988
+ "alpha": 0.72
989
+ },
990
+ "$extensions": {
991
+ "oneli8.composite": "color-alpha"
992
+ },
993
+ "$description": "Light directional bevel high stop."
994
+ },
995
+ "mid": {
996
+ "$type": "color",
997
+ "$value": {
998
+ "color": "{color.blue.060}",
999
+ "alpha": 0.36
1000
+ },
1001
+ "$extensions": {
1002
+ "oneli8.composite": "color-alpha"
1003
+ },
1004
+ "$description": "Light directional bevel middle stop."
1005
+ },
1006
+ "low": {
1007
+ "$type": "color",
1008
+ "$value": {
1009
+ "color": "{color.neutral.060}",
1010
+ "alpha": 0.03
1011
+ },
1012
+ "$extensions": {
1013
+ "oneli8.composite": "color-alpha"
1014
+ },
1015
+ "$description": "Light directional bevel fade."
1016
+ },
1017
+ "shadow": {
1018
+ "$type": "color",
1019
+ "$value": {
1020
+ "color": "{color.blue.930}",
1021
+ "alpha": 0.16
1022
+ },
1023
+ "$extensions": {
1024
+ "oneli8.composite": "color-alpha"
1025
+ },
1026
+ "$description": "Light directional bevel shadow."
1027
+ }
1028
+ },
1029
+ "innerThinCut": {
1030
+ "face": {
1031
+ "$type": "color",
1032
+ "$value": {
1033
+ "color": "{color.neutral.060}",
1034
+ "alpha": 0.72
1035
+ },
1036
+ "$extensions": {
1037
+ "oneli8.composite": "color-alpha"
1038
+ },
1039
+ "$description": "Quiet inner information-plane face."
1040
+ },
1041
+ "high": {
1042
+ "$type": "color",
1043
+ "$value": {
1044
+ "color": "{color.neutral.060}",
1045
+ "alpha": 0.54
1046
+ },
1047
+ "$extensions": {
1048
+ "oneli8.composite": "color-alpha"
1049
+ },
1050
+ "$description": "Quiet inner Thin-Cut highlight."
1051
+ },
1052
+ "mid": {
1053
+ "$type": "color",
1054
+ "$value": {
1055
+ "color": "{color.blue.120}",
1056
+ "alpha": 0.18
1057
+ },
1058
+ "$extensions": {
1059
+ "oneli8.composite": "color-alpha"
1060
+ },
1061
+ "$description": "Quiet inner Thin-Cut middle tint."
1062
+ },
1063
+ "low": {
1064
+ "$type": "color",
1065
+ "$value": {
1066
+ "color": "{color.neutral.060}",
1067
+ "alpha": 0.03
1068
+ },
1069
+ "$extensions": {
1070
+ "oneli8.composite": "color-alpha"
1071
+ },
1072
+ "$description": "Quiet inner Thin-Cut fade."
1073
+ }
1074
+ },
1075
+ "facet": {
1076
+ "cool": {
1077
+ "$type": "color",
1078
+ "$value": {
1079
+ "color": "{color.blue.600}",
1080
+ "alpha": 0.18
1081
+ },
1082
+ "$extensions": {
1083
+ "oneli8.composite": "color-alpha"
1084
+ },
1085
+ "$description": "Optional cool decorative facet tint."
1086
+ },
1087
+ "warm": {
1088
+ "$type": "color",
1089
+ "$value": {
1090
+ "color": "{color.orange.240}",
1091
+ "alpha": 0.12
1092
+ },
1093
+ "$extensions": {
1094
+ "oneli8.composite": "color-alpha"
1095
+ },
1096
+ "$description": "Optional warm decorative facet tint."
1097
+ }
1098
+ },
1099
+ "family": {
1100
+ "emerald": {
1101
+ "environmentalFace": {
1102
+ "$type": "color",
1103
+ "$value": {
1104
+ "color": "{color.green.930}",
1105
+ "alpha": 0.48
1106
+ },
1107
+ "$extensions": {
1108
+ "oneli8.composite": "color-alpha"
1109
+ },
1110
+ "$description": "Approved Emerald environmental face."
1111
+ },
1112
+ "stabilizedFace": {
1113
+ "$type": "color",
1114
+ "$value": {
1115
+ "color": "{color.green.930}",
1116
+ "alpha": 0.27
1117
+ },
1118
+ "$extensions": {
1119
+ "oneli8.composite": "color-alpha"
1120
+ },
1121
+ "$description": "Approved Emerald stabilized plane."
1122
+ },
1123
+ "edge": {
1124
+ "$type": "color",
1125
+ "$value": {
1126
+ "color": "{color.green.240}",
1127
+ "alpha": 0.66
1128
+ },
1129
+ "$extensions": {
1130
+ "oneli8.composite": "color-alpha"
1131
+ },
1132
+ "$description": "Approved Emerald family edge."
1133
+ },
1134
+ "innerHigh": {
1135
+ "$type": "color",
1136
+ "$value": {
1137
+ "color": "{color.green.090}",
1138
+ "alpha": 0.36
1139
+ },
1140
+ "$extensions": {
1141
+ "oneli8.composite": "color-alpha"
1142
+ },
1143
+ "$description": "Approved Emerald inner highlight."
1144
+ },
1145
+ "innerMid": {
1146
+ "$type": "color",
1147
+ "$value": {
1148
+ "color": "{color.green.240}",
1149
+ "alpha": 0.18
1150
+ },
1151
+ "$extensions": {
1152
+ "oneli8.composite": "color-alpha"
1153
+ },
1154
+ "$description": "Approved Emerald inner middle tint."
1155
+ },
1156
+ "innerLow": {
1157
+ "$type": "color",
1158
+ "$value": {
1159
+ "color": "{color.green.090}",
1160
+ "alpha": 0.03
1161
+ },
1162
+ "$extensions": {
1163
+ "oneli8.composite": "color-alpha"
1164
+ },
1165
+ "$description": "Approved Emerald inner fade."
1166
+ },
1167
+ "opaqueEquivalent": {
1168
+ "$type": "color",
1169
+ "$value": "{color.green.930}",
1170
+ "$description": "Approved Emerald opaque equivalent."
1171
+ }
1172
+ },
1173
+ "ruby": {
1174
+ "environmentalFace": {
1175
+ "$type": "color",
1176
+ "$value": {
1177
+ "color": "{color.red.930}",
1178
+ "alpha": 0.48
1179
+ },
1180
+ "$extensions": {
1181
+ "oneli8.composite": "color-alpha"
1182
+ },
1183
+ "$description": "Approved Ruby environmental face."
1184
+ },
1185
+ "stabilizedFace": {
1186
+ "$type": "color",
1187
+ "$value": {
1188
+ "color": "{color.red.930}",
1189
+ "alpha": 0.27
1190
+ },
1191
+ "$extensions": {
1192
+ "oneli8.composite": "color-alpha"
1193
+ },
1194
+ "$description": "Approved Ruby stabilized plane."
1195
+ },
1196
+ "edge": {
1197
+ "$type": "color",
1198
+ "$value": {
1199
+ "color": "{color.red.240}",
1200
+ "alpha": 0.66
1201
+ },
1202
+ "$extensions": {
1203
+ "oneli8.composite": "color-alpha"
1204
+ },
1205
+ "$description": "Approved Ruby family edge."
1206
+ },
1207
+ "innerHigh": {
1208
+ "$type": "color",
1209
+ "$value": {
1210
+ "color": "{color.red.090}",
1211
+ "alpha": 0.36
1212
+ },
1213
+ "$extensions": {
1214
+ "oneli8.composite": "color-alpha"
1215
+ },
1216
+ "$description": "Approved Ruby inner highlight."
1217
+ },
1218
+ "innerMid": {
1219
+ "$type": "color",
1220
+ "$value": {
1221
+ "color": "{color.red.240}",
1222
+ "alpha": 0.18
1223
+ },
1224
+ "$extensions": {
1225
+ "oneli8.composite": "color-alpha"
1226
+ },
1227
+ "$description": "Approved Ruby inner middle tint."
1228
+ },
1229
+ "innerLow": {
1230
+ "$type": "color",
1231
+ "$value": {
1232
+ "color": "{color.red.090}",
1233
+ "alpha": 0.03
1234
+ },
1235
+ "$extensions": {
1236
+ "oneli8.composite": "color-alpha"
1237
+ },
1238
+ "$description": "Approved Ruby inner fade."
1239
+ },
1240
+ "opaqueEquivalent": {
1241
+ "$type": "color",
1242
+ "$value": "{color.red.930}",
1243
+ "$description": "Approved Ruby opaque equivalent."
1244
+ }
1245
+ },
1246
+ "sapphire": {
1247
+ "environmentalFace": {
1248
+ "$type": "color",
1249
+ "$value": {
1250
+ "color": "{color.blue.930}",
1251
+ "alpha": 0.48
1252
+ },
1253
+ "$extensions": {
1254
+ "oneli8.composite": "color-alpha"
1255
+ },
1256
+ "$description": "Approved Sapphire environmental face."
1257
+ },
1258
+ "stabilizedFace": {
1259
+ "$type": "color",
1260
+ "$value": {
1261
+ "color": "{color.blue.930}",
1262
+ "alpha": 0.3
1263
+ },
1264
+ "$extensions": {
1265
+ "oneli8.composite": "color-alpha"
1266
+ },
1267
+ "$description": "Approved Sapphire stabilized plane."
1268
+ },
1269
+ "edge": {
1270
+ "$type": "color",
1271
+ "$value": {
1272
+ "color": "{color.blue.240}",
1273
+ "alpha": 0.66
1274
+ },
1275
+ "$extensions": {
1276
+ "oneli8.composite": "color-alpha"
1277
+ },
1278
+ "$description": "Approved Sapphire family edge."
1279
+ },
1280
+ "innerHigh": {
1281
+ "$type": "color",
1282
+ "$value": {
1283
+ "color": "{color.blue.060}",
1284
+ "alpha": 0.39
1285
+ },
1286
+ "$extensions": {
1287
+ "oneli8.composite": "color-alpha"
1288
+ },
1289
+ "$description": "Approved Sapphire inner highlight cap."
1290
+ },
1291
+ "innerMid": {
1292
+ "$type": "color",
1293
+ "$value": {
1294
+ "color": "{color.blue.240}",
1295
+ "alpha": 0.18
1296
+ },
1297
+ "$extensions": {
1298
+ "oneli8.composite": "color-alpha"
1299
+ },
1300
+ "$description": "Approved Sapphire inner middle tint."
1301
+ },
1302
+ "innerLow": {
1303
+ "$type": "color",
1304
+ "$value": {
1305
+ "color": "{color.blue.060}",
1306
+ "alpha": 0.03
1307
+ },
1308
+ "$extensions": {
1309
+ "oneli8.composite": "color-alpha"
1310
+ },
1311
+ "$description": "Approved Sapphire inner fade."
1312
+ },
1313
+ "opaqueEquivalent": {
1314
+ "$type": "color",
1315
+ "$value": "{color.blue.930}",
1316
+ "$description": "Approved Sapphire opaque equivalent."
1317
+ }
1318
+ },
1319
+ "amethyst": {
1320
+ "environmentalFace": {
1321
+ "$type": "color",
1322
+ "$value": {
1323
+ "color": "{color.violet.930}",
1324
+ "alpha": 0.48
1325
+ },
1326
+ "$extensions": {
1327
+ "oneli8.composite": "color-alpha"
1328
+ },
1329
+ "$description": "Approved Amethyst environmental face."
1330
+ },
1331
+ "stabilizedFace": {
1332
+ "$type": "color",
1333
+ "$value": {
1334
+ "color": "{color.violet.930}",
1335
+ "alpha": 0.27
1336
+ },
1337
+ "$extensions": {
1338
+ "oneli8.composite": "color-alpha"
1339
+ },
1340
+ "$description": "Approved Amethyst stabilized plane."
1341
+ },
1342
+ "edge": {
1343
+ "$type": "color",
1344
+ "$value": {
1345
+ "color": "{color.violet.240}",
1346
+ "alpha": 0.66
1347
+ },
1348
+ "$extensions": {
1349
+ "oneli8.composite": "color-alpha"
1350
+ },
1351
+ "$description": "Approved Amethyst family edge."
1352
+ },
1353
+ "innerHigh": {
1354
+ "$type": "color",
1355
+ "$value": {
1356
+ "color": "{color.violet.090}",
1357
+ "alpha": 0.36
1358
+ },
1359
+ "$extensions": {
1360
+ "oneli8.composite": "color-alpha"
1361
+ },
1362
+ "$description": "Approved Amethyst inner highlight."
1363
+ },
1364
+ "innerMid": {
1365
+ "$type": "color",
1366
+ "$value": {
1367
+ "color": "{color.violet.240}",
1368
+ "alpha": 0.18
1369
+ },
1370
+ "$extensions": {
1371
+ "oneli8.composite": "color-alpha"
1372
+ },
1373
+ "$description": "Approved Amethyst inner middle tint."
1374
+ },
1375
+ "innerLow": {
1376
+ "$type": "color",
1377
+ "$value": {
1378
+ "color": "{color.violet.090}",
1379
+ "alpha": 0.03
1380
+ },
1381
+ "$extensions": {
1382
+ "oneli8.composite": "color-alpha"
1383
+ },
1384
+ "$description": "Approved Amethyst inner fade."
1385
+ },
1386
+ "opaqueEquivalent": {
1387
+ "$type": "color",
1388
+ "$value": "{color.violet.930}",
1389
+ "$description": "Approved Amethyst opaque equivalent."
1390
+ }
1391
+ }
1392
+ }
1393
+ },
1394
+ "blur": {
1395
+ "environmental": {
1396
+ "$type": "dimension",
1397
+ "$value": "{dimension.scale.009}",
1398
+ "$description": "Backdrop blur for the environmental Gem face. 9px, down from 18px, and the pair is no longer inverted. 18px was the larger of the two, which had the semantics backwards: the environmental face exists so the environment can be SEEN, so it must blur LESS than the stabilized plane, not more. At 18px a soft environment flattens into a single grey wash and the surface reads as opaque no matter how low its alpha is \u2014 which is why dropping the face from 0.48 to 0.18 appeared to change nothing. The blur was doing the damage, not the tint. Verified on the Light and Dark comparison in Figma (297:610): at 9px the environment reads through in both appearances."
1399
+ },
1400
+ "stabilized": {
1401
+ "$type": "dimension",
1402
+ "$value": "{dimension.scale.012}",
1403
+ "$description": "Local stabilized information-plane blur. 12px, and now the HIGHER of the pair, which is the point: the stabilized plane is being read rather than looked through, so it settles the background down more than the environmental face does."
1404
+ },
1405
+ "contentGlow": {
1406
+ "$type": "dimension",
1407
+ "$value": "{dimension.scale.003}",
1408
+ "$description": "Radius of the halo behind content on a Gem surface. 3px, the tightest value on the scale, and it is both the crispest AND the strongest: measured in the ring touching the glyph stems, a 3px halo in four stacks reads 5.06:1 on the brightest region of the daylight plate against 4.74:1 at 6px and 4.16:1 at 9px. Wider is weaker, because blur spreads a fixed alpha budget over more area, and wider also reads as fog rather than as an edge. So the tight radius is what stops the surface looking over-glowed while giving the most headroom. See proof/gem-halo-contrast.html."
1409
+ }
1410
+ },
1411
+ "opacity": {
1412
+ "environmental": {
1413
+ "$type": "number",
1414
+ "$value": 0.48,
1415
+ "$description": "Current high-variance specimen family-tint floor."
1416
+ },
1417
+ "edgeHigh": {
1418
+ "$type": "number",
1419
+ "$value": 0.93,
1420
+ "$description": "Gem edge highlight maximum."
1421
+ },
1422
+ "edgeLow": {
1423
+ "$type": "number",
1424
+ "$value": 0.03,
1425
+ "$description": "Gem edge highlight minimum."
1426
+ },
1427
+ "cutLight": {
1428
+ "$type": "number",
1429
+ "$value": 0.72,
1430
+ "$description": "Light directional bevel layer strength."
1431
+ },
1432
+ "cutDark": {
1433
+ "$type": "number",
1434
+ "$value": 0.54,
1435
+ "$description": "Dark directional bevel layer strength."
1436
+ }
1437
+ },
1438
+ "spacing": {
1439
+ "slabInset": {
1440
+ "$type": "dimension",
1441
+ "$value": "{dimension.scale.030}",
1442
+ "$description": "Desktop Gem slab content inset."
1443
+ },
1444
+ "clusterGap": {
1445
+ "$type": "dimension",
1446
+ "$value": "{dimension.scale.024}",
1447
+ "$description": "Desktop related Gem slab gap."
1448
+ },
1449
+ "innerSeparation": {
1450
+ "$type": "dimension",
1451
+ "$value": "{dimension.scale.024}",
1452
+ "$description": "Separation before a stabilized inner tile."
1453
+ }
1454
+ }
1455
+ }
1456
+ },
1457
+ "spacing": {
1458
+ "none": {
1459
+ "$type": "dimension",
1460
+ "$value": "{dimension.scale.000}",
1461
+ "$description": "Flush adjoining items with no additional separation."
1462
+ },
1463
+ "inline": {
1464
+ "minimal": {
1465
+ "$type": "dimension",
1466
+ "$value": "{dimension.scale.003}",
1467
+ "$description": "Tight icon-to-text or micro relationship."
1468
+ },
1469
+ "related": {
1470
+ "$type": "dimension",
1471
+ "$value": "{dimension.scale.006}",
1472
+ "$description": "Related inline content."
1473
+ },
1474
+ "standard": {
1475
+ "$type": "dimension",
1476
+ "$value": "{dimension.scale.012}",
1477
+ "$description": "Default inline separation."
1478
+ }
1479
+ },
1480
+ "stack": {
1481
+ "tight": {
1482
+ "$type": "dimension",
1483
+ "$value": "{dimension.scale.006}",
1484
+ "$description": "Tight vertical stack."
1485
+ },
1486
+ "related": {
1487
+ "$type": "dimension",
1488
+ "$value": "{dimension.scale.012}",
1489
+ "$description": "Related stacked content."
1490
+ },
1491
+ "grouped": {
1492
+ "$type": "dimension",
1493
+ "$value": "{dimension.scale.018}",
1494
+ "$description": "Grouped component stack."
1495
+ },
1496
+ "separated": {
1497
+ "$type": "dimension",
1498
+ "$value": "{dimension.scale.024}",
1499
+ "$description": "Separated content groups."
1500
+ }
1501
+ },
1502
+ "inset": {
1503
+ "compact": {
1504
+ "$type": "dimension",
1505
+ "$value": "{dimension.scale.012}",
1506
+ "$description": "Compact component inset."
1507
+ },
1508
+ "standard": {
1509
+ "$type": "dimension",
1510
+ "$value": "{dimension.scale.018}",
1511
+ "$description": "Standard component inset."
1512
+ },
1513
+ "comfortable": {
1514
+ "$type": "dimension",
1515
+ "$value": "{dimension.scale.024}",
1516
+ "$description": "Comfortable component inset."
1517
+ },
1518
+ "spacious": {
1519
+ "$type": "dimension",
1520
+ "$value": "{dimension.scale.036}",
1521
+ "$description": "Spacious container inset."
1522
+ }
1523
+ },
1524
+ "layout": {
1525
+ "margin": {
1526
+ "$type": "dimension",
1527
+ "$value": "{dimension.scale.024}",
1528
+ "$description": "Default page margin."
1529
+ },
1530
+ "gutter": {
1531
+ "$type": "dimension",
1532
+ "$value": "{dimension.scale.024}",
1533
+ "$description": "Default layout gutter."
1534
+ },
1535
+ "region": {
1536
+ "$type": "dimension",
1537
+ "$value": "{dimension.scale.036}",
1538
+ "$description": "Region separation."
1539
+ }
1540
+ },
1541
+ "section": {
1542
+ "compact": {
1543
+ "$type": "dimension",
1544
+ "$value": "{dimension.scale.036}",
1545
+ "$description": "Compact section separation."
1546
+ },
1547
+ "standard": {
1548
+ "$type": "dimension",
1549
+ "$value": "{dimension.scale.048}",
1550
+ "$description": "Standard section separation."
1551
+ },
1552
+ "spacious": {
1553
+ "$type": "dimension",
1554
+ "$value": "{dimension.scale.072}",
1555
+ "$description": "Spacious section separation."
1556
+ },
1557
+ "expansive": {
1558
+ "$type": "dimension",
1559
+ "$value": "{dimension.scale.108}",
1560
+ "$description": "Expansive display section separation."
1561
+ }
1562
+ }
1563
+ },
1564
+ "size": {
1565
+ "control": {
1566
+ "compact": {
1567
+ "$type": "dimension",
1568
+ "$value": "{dimension.scale.036}",
1569
+ "$description": "Dense visible control height."
1570
+ },
1571
+ "standard": {
1572
+ "$type": "dimension",
1573
+ "$value": "{dimension.scale.042}",
1574
+ "$description": "General visible control height."
1575
+ },
1576
+ "comfortable": {
1577
+ "$type": "dimension",
1578
+ "$value": "{dimension.scale.048}",
1579
+ "$description": "Default cross-platform control height."
1580
+ },
1581
+ "large": {
1582
+ "$type": "dimension",
1583
+ "$value": "{dimension.scale.060}",
1584
+ "$description": "Prominent or accessibility-forward control height."
1585
+ }
1586
+ },
1587
+ "target": {
1588
+ "minimum": {
1589
+ "$type": "dimension",
1590
+ "$value": "{dimension.scale.048}",
1591
+ "$description": "Minimum standalone interaction target."
1592
+ },
1593
+ "comfortable": {
1594
+ "$type": "dimension",
1595
+ "$value": "{dimension.scale.060}",
1596
+ "$description": "Touch-led comfortable target."
1597
+ },
1598
+ "spacious": {
1599
+ "$type": "dimension",
1600
+ "$value": "{dimension.scale.072}",
1601
+ "$description": "Kiosk or generous target."
1602
+ }
1603
+ },
1604
+ "icon": {
1605
+ "micro": {
1606
+ "$type": "dimension",
1607
+ "$value": "{dimension.scale.009}",
1608
+ "$description": "Micro icon presentation for tightly bounded internal indicators."
1609
+ },
1610
+ "compact": {
1611
+ "$type": "dimension",
1612
+ "$value": "{dimension.scale.012}",
1613
+ "$description": "Compact icon presentation for small internal indicators."
1614
+ },
1615
+ "small": {
1616
+ "$type": "dimension",
1617
+ "$value": "{dimension.scale.018}",
1618
+ "$description": "Compact supporting icon artwork box."
1619
+ },
1620
+ "standard": {
1621
+ "$type": "dimension",
1622
+ "$value": "{dimension.scale.024}",
1623
+ "$description": "Default icon artwork box."
1624
+ },
1625
+ "medium": {
1626
+ "$type": "dimension",
1627
+ "$value": "{dimension.scale.030}",
1628
+ "$description": "Intermediate icon artwork box."
1629
+ },
1630
+ "large": {
1631
+ "$type": "dimension",
1632
+ "$value": "{dimension.scale.036}",
1633
+ "$description": "Emphasized icon artwork box."
1634
+ },
1635
+ "xlarge": {
1636
+ "$type": "dimension",
1637
+ "$value": "{dimension.scale.048}",
1638
+ "$description": "Expressive icon artwork box."
1639
+ },
1640
+ "spacious": {
1641
+ "$type": "dimension",
1642
+ "$value": "{dimension.scale.060}",
1643
+ "$description": "Spacious icon artwork box."
1644
+ },
1645
+ "display": {
1646
+ "$type": "dimension",
1647
+ "$value": "{dimension.scale.072}",
1648
+ "$description": "Display icon artwork box."
1649
+ },
1650
+ "hero": {
1651
+ "$type": "dimension",
1652
+ "$value": "{dimension.scale.096}",
1653
+ "$description": "Hero icon artwork box."
1654
+ },
1655
+ "landmark": {
1656
+ "$type": "dimension",
1657
+ "$value": "{dimension.scale.108}",
1658
+ "$description": "Largest governed icon presentation for landmarks and spatial use."
1659
+ }
1660
+ },
1661
+ "avatar": {
1662
+ "micro": {
1663
+ "$type": "dimension",
1664
+ "$value": "{dimension.scale.018}",
1665
+ "$description": "Micro avatar."
1666
+ },
1667
+ "small": {
1668
+ "$type": "dimension",
1669
+ "$value": "{dimension.scale.024}",
1670
+ "$description": "Small avatar."
1671
+ },
1672
+ "standard": {
1673
+ "$type": "dimension",
1674
+ "$value": "{dimension.scale.036}",
1675
+ "$description": "Standard avatar."
1676
+ },
1677
+ "large": {
1678
+ "$type": "dimension",
1679
+ "$value": "{dimension.scale.048}",
1680
+ "$description": "Large avatar."
1681
+ },
1682
+ "xlarge": {
1683
+ "$type": "dimension",
1684
+ "$value": "{dimension.scale.072}",
1685
+ "$description": "Extra-large avatar."
1686
+ },
1687
+ "display": {
1688
+ "$type": "dimension",
1689
+ "$value": "{dimension.scale.096}",
1690
+ "$description": "Display avatar."
1691
+ }
1692
+ },
1693
+ "indicator": {
1694
+ "micro": {
1695
+ "$type": "dimension",
1696
+ "$value": "{dimension.scale.006}",
1697
+ "$description": "Micro indicator."
1698
+ },
1699
+ "small": {
1700
+ "$type": "dimension",
1701
+ "$value": "{dimension.scale.012}",
1702
+ "$description": "Small indicator."
1703
+ },
1704
+ "standard": {
1705
+ "$type": "dimension",
1706
+ "$value": "{dimension.scale.018}",
1707
+ "$description": "Standard indicator."
1708
+ },
1709
+ "large": {
1710
+ "$type": "dimension",
1711
+ "$value": "{dimension.scale.024}",
1712
+ "$description": "Large indicator."
1713
+ }
1714
+ },
1715
+ "loader": {
1716
+ "small": {
1717
+ "$type": "dimension",
1718
+ "$value": "{dimension.scale.018}",
1719
+ "$description": "Small loader."
1720
+ },
1721
+ "standard": {
1722
+ "$type": "dimension",
1723
+ "$value": "{dimension.scale.024}",
1724
+ "$description": "Standard loader."
1725
+ },
1726
+ "large": {
1727
+ "$type": "dimension",
1728
+ "$value": "{dimension.scale.036}",
1729
+ "$description": "Large loader."
1730
+ },
1731
+ "display": {
1732
+ "$type": "dimension",
1733
+ "$value": "{dimension.scale.048}",
1734
+ "$description": "Display loader."
1735
+ }
1736
+ }
1737
+ },
1738
+ "shape": {
1739
+ "radius": {
1740
+ "none": {
1741
+ "$type": "dimension",
1742
+ "$value": "{dimension.scale.000}",
1743
+ "$description": "Flush regions and hard edges."
1744
+ },
1745
+ "subtle": {
1746
+ "$type": "dimension",
1747
+ "$value": "{dimension.scale.003}",
1748
+ "$description": "Tiny internal radius."
1749
+ },
1750
+ "compact": {
1751
+ "$type": "dimension",
1752
+ "$value": "{dimension.scale.006}",
1753
+ "$description": "Dense control radius."
1754
+ },
1755
+ "medium": {
1756
+ "$type": "dimension",
1757
+ "$value": "{dimension.scale.009}",
1758
+ "$description": "Intermediate nested radius."
1759
+ },
1760
+ "standard": {
1761
+ "$type": "dimension",
1762
+ "$value": "{dimension.scale.012}",
1763
+ "$description": "Default control and small-card radius."
1764
+ },
1765
+ "comfortable": {
1766
+ "$type": "dimension",
1767
+ "$value": "{dimension.scale.018}",
1768
+ "$description": "Spacious card and menu radius."
1769
+ },
1770
+ "container": {
1771
+ "$type": "dimension",
1772
+ "$value": "{dimension.scale.024}",
1773
+ "$description": "Dialog and major-container radius."
1774
+ },
1775
+ "display": {
1776
+ "$type": "dimension",
1777
+ "$value": "{dimension.scale.036}",
1778
+ "$description": "Expressive surface radius."
1779
+ },
1780
+ "full": {
1781
+ "$type": "dimension",
1782
+ "$value": {
1783
+ "value": 999,
1784
+ "unit": "px"
1785
+ },
1786
+ "$extensions": {
1787
+ "oneli8.exception": "categorical-full-radius"
1788
+ },
1789
+ "$description": "Fully rounded categorical shape."
1790
+ }
1791
+ }
1792
+ },
1793
+ "border": {
1794
+ "width": {
1795
+ "none": {
1796
+ "$type": "dimension",
1797
+ "$value": "{dimension.scale.000}",
1798
+ "$description": "No visible boundary."
1799
+ },
1800
+ "hairline": {
1801
+ "$type": "dimension",
1802
+ "$value": {
1803
+ "value": 1,
1804
+ "unit": "px"
1805
+ },
1806
+ "$extensions": {
1807
+ "oneli8.exception": "decorative-optical-boundary"
1808
+ },
1809
+ "$description": "Decorative nonessential separation."
1810
+ },
1811
+ "standard": {
1812
+ "$type": "dimension",
1813
+ "$value": {
1814
+ "value": 2,
1815
+ "unit": "px"
1816
+ },
1817
+ "$extensions": {
1818
+ "oneli8.exception": "essential-optical-boundary"
1819
+ },
1820
+ "$description": "Standard essential boundary."
1821
+ },
1822
+ "strong": {
1823
+ "$type": "dimension",
1824
+ "$value": "{dimension.scale.003}",
1825
+ "$description": "Selected or emphasized boundary."
1826
+ }
1827
+ }
1828
+ },
1829
+ "focus": {
1830
+ "ring": {
1831
+ "innerWidth": {
1832
+ "$type": "dimension",
1833
+ "$value": "{dimension.scale.003}",
1834
+ "$description": "First focus band width."
1835
+ },
1836
+ "outerWidth": {
1837
+ "$type": "dimension",
1838
+ "$value": "{dimension.scale.003}",
1839
+ "$description": "Second focus band width."
1840
+ },
1841
+ "totalWidth": {
1842
+ "$type": "dimension",
1843
+ "$value": "{dimension.scale.006}",
1844
+ "$description": "Combined focus treatment width."
1845
+ },
1846
+ "offset": {
1847
+ "$type": "dimension",
1848
+ "$value": "{dimension.scale.003}",
1849
+ "$description": "Focus separation when geometry requires it."
1850
+ }
1851
+ }
1852
+ },
1853
+ "typography": {
1854
+ "display": {
1855
+ "large": {
1856
+ "$type": "typography",
1857
+ "$value": {
1858
+ "fontFamily": "{font.family.display}",
1859
+ "fontSize": "{font.size.066}",
1860
+ "fontWeight": "{font.weight.bold}",
1861
+ "letterSpacing": "{font.tracking.snug}",
1862
+ "lineHeight": "{font.line.072}"
1863
+ },
1864
+ "$description": "Compact Display Large."
1865
+ },
1866
+ "medium": {
1867
+ "$type": "typography",
1868
+ "$value": {
1869
+ "fontFamily": "{font.family.display}",
1870
+ "fontSize": "{font.size.051}",
1871
+ "fontWeight": "{font.weight.bold}",
1872
+ "letterSpacing": "{font.tracking.displaySoft}",
1873
+ "lineHeight": "{font.line.060}"
1874
+ },
1875
+ "$description": "Compact Display Medium."
1876
+ },
1877
+ "small": {
1878
+ "$type": "typography",
1879
+ "$value": {
1880
+ "fontFamily": "{font.family.display}",
1881
+ "fontSize": "{font.size.039}",
1882
+ "fontWeight": "{font.weight.semibold}",
1883
+ "letterSpacing": "{font.tracking.titleTight}",
1884
+ "lineHeight": "{font.line.048}"
1885
+ },
1886
+ "$description": "Compact Display Small."
1887
+ }
1888
+ },
1889
+ "title": {
1890
+ "large": {
1891
+ "$type": "typography",
1892
+ "$value": {
1893
+ "fontFamily": "{font.family.functional}",
1894
+ "fontSize": "{font.size.039}",
1895
+ "fontWeight": "{font.weight.semibold}",
1896
+ "letterSpacing": "{font.tracking.titleSoft}",
1897
+ "lineHeight": "{font.line.048}"
1898
+ },
1899
+ "$description": "Compact Title Large."
1900
+ },
1901
+ "medium": {
1902
+ "$type": "typography",
1903
+ "$value": {
1904
+ "fontFamily": "{font.family.functional}",
1905
+ "fontSize": "{font.size.030}",
1906
+ "fontWeight": "{font.weight.semibold}",
1907
+ "letterSpacing": "{font.tracking.normal}",
1908
+ "lineHeight": "{font.line.039}"
1909
+ },
1910
+ "$description": "Compact Title Medium."
1911
+ },
1912
+ "small": {
1913
+ "$type": "typography",
1914
+ "$value": {
1915
+ "fontFamily": "{font.family.functional}",
1916
+ "fontSize": "{font.size.021}",
1917
+ "fontWeight": "{font.weight.semibold}",
1918
+ "letterSpacing": "{font.tracking.normal}",
1919
+ "lineHeight": "{font.line.030}"
1920
+ },
1921
+ "$description": "Compact Title Small."
1922
+ }
1923
+ },
1924
+ "body": {
1925
+ "large": {
1926
+ "$type": "typography",
1927
+ "$value": {
1928
+ "fontFamily": "{font.family.functional}",
1929
+ "fontSize": "{font.size.021}",
1930
+ "fontWeight": "{font.weight.regular}",
1931
+ "letterSpacing": "{font.tracking.normal}",
1932
+ "lineHeight": "{font.line.030}"
1933
+ },
1934
+ "$description": "Body Large."
1935
+ },
1936
+ "medium": {
1937
+ "$type": "typography",
1938
+ "$value": {
1939
+ "fontFamily": "{font.family.functional}",
1940
+ "fontSize": "{font.size.016}",
1941
+ "fontWeight": "{font.weight.regular}",
1942
+ "letterSpacing": "{font.tracking.normal}",
1943
+ "lineHeight": "{font.line.024}"
1944
+ },
1945
+ "$description": "Default sustained-reading role."
1946
+ },
1947
+ "small": {
1948
+ "$type": "typography",
1949
+ "$value": {
1950
+ "fontFamily": "{font.family.functional}",
1951
+ "fontSize": "{font.size.012}",
1952
+ "fontWeight": "{font.weight.regular}",
1953
+ "letterSpacing": "{font.tracking.open}",
1954
+ "lineHeight": "{font.line.018}"
1955
+ },
1956
+ "$description": "Supporting text role."
1957
+ }
1958
+ }
1959
+ },
1960
+ "motion": {
1961
+ "distance": {
1962
+ "minimal": {
1963
+ "$type": "dimension",
1964
+ "$value": "{dimension.scale.003}",
1965
+ "$description": "Tiny press or emphasis travel."
1966
+ },
1967
+ "short": {
1968
+ "$type": "dimension",
1969
+ "$value": "{dimension.scale.006}",
1970
+ "$description": "Compact reveal travel."
1971
+ },
1972
+ "standard": {
1973
+ "$type": "dimension",
1974
+ "$value": "{dimension.scale.012}",
1975
+ "$description": "Popover or local-panel travel."
1976
+ },
1977
+ "large": {
1978
+ "$type": "dimension",
1979
+ "$value": "{dimension.scale.024}",
1980
+ "$description": "Major panel travel."
1981
+ },
1982
+ "expansive": {
1983
+ "$type": "dimension",
1984
+ "$value": "{dimension.scale.048}",
1985
+ "$description": "Rare route travel."
1986
+ }
1987
+ },
1988
+ "interaction": {
1989
+ "press": {
1990
+ "$type": "transition",
1991
+ "$value": {
1992
+ "duration": "{motion.duration.quick}",
1993
+ "delay": "{motion.duration.instant}",
1994
+ "timingFunction": "{motion.easing.standard}"
1995
+ },
1996
+ "$extensions": {
1997
+ "oneli8.maximumDistance": "{dimension.scale.003}"
1998
+ },
1999
+ "$description": "Press feedback recipe."
2000
+ },
2001
+ "hover": {
2002
+ "$type": "transition",
2003
+ "$value": {
2004
+ "duration": "{motion.duration.fast}",
2005
+ "delay": "{motion.duration.instant}",
2006
+ "timingFunction": "{motion.easing.standard}"
2007
+ },
2008
+ "$extensions": {
2009
+ "oneli8.maximumDistance": "icon-only-purposeful-motion"
2010
+ },
2011
+ "$description": "Stable-body hover recipe."
2012
+ },
2013
+ "focus": {
2014
+ "$type": "transition",
2015
+ "$value": {
2016
+ "duration": "{motion.duration.fast}",
2017
+ "delay": "{motion.duration.instant}",
2018
+ "timingFunction": "{motion.easing.standard}"
2019
+ },
2020
+ "$extensions": {
2021
+ "oneli8.maximumDistance": "{dimension.scale.000}"
2022
+ },
2023
+ "$description": "Focus appearance recipe."
2024
+ }
2025
+ },
2026
+ "state": {
2027
+ "change": {
2028
+ "$type": "transition",
2029
+ "$value": {
2030
+ "duration": "{motion.duration.standard}",
2031
+ "delay": "{motion.duration.instant}",
2032
+ "timingFunction": "{motion.easing.standard}"
2033
+ },
2034
+ "$extensions": {
2035
+ "oneli8.maximumDistance": "{dimension.scale.006}"
2036
+ },
2037
+ "$description": "Local state-change recipe."
2038
+ }
2039
+ }
2040
+ }
2041
+ }