figma-kit 1.0.0-beta.25 → 1.0.0-beta.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/tailwind.css +2250 -8
  2. package/package.json +2 -2
package/dist/tailwind.css CHANGED
@@ -1,3 +1,2253 @@
1
+ @layer components {
2
+ :root {
3
+ --font-family-default: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans,
4
+ sans-serif, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif,
5
+ SFProLocalRange;
6
+ --font-family-monospace: 'Roboto Mono', monospace;
7
+ }
8
+ }
9
+ @layer components {
10
+ :root {
11
+ --space-0: 0rem;
12
+ --space-px: 0.0625rem;
13
+ --space-0_5: 0.125rem;
14
+ --space-1: 0.25rem;
15
+ --space-1_5: 0.375rem;
16
+ --space-2: 0.5rem;
17
+ --space-2_5: 0.625rem;
18
+ --space-3: 0.75rem;
19
+ --space-3_5: 0.875rem;
20
+ --space-4: 1rem;
21
+ --space-5: 1.25rem;
22
+ --space-6: 1.5rem;
23
+ --space-7: 1.75rem;
24
+ --space-8: 2rem;
25
+ --space-9: 2.25rem;
26
+ --space-10: 2.5rem;
27
+ --space-11: 2.75rem;
28
+ --space-12: 3rem;
29
+ --space-13: 3.25rem;
30
+ --space-14: 3.5rem;
31
+ --space-15: 3.75rem;
32
+ --space-16: 4rem;
33
+ }
34
+ }
35
+ @layer components {
36
+ :root {
37
+ --radius-extra-small: 0.0625rem;
38
+ --radius-small: 0.125rem;
39
+ --radius-medium: 0.3125rem;
40
+ --radius-large: 0.8125rem;
41
+ --radius-full: 9999px;
42
+ --radius-default: var(--radius-small);
43
+ }
44
+ }
45
+ @layer components {
46
+ :root {
47
+ --font-size-1: 0.5625rem;
48
+ --font-size-2: 0.625rem;
49
+ --font-size-3: 0.6875rem;
50
+ --font-size-4: 0.75rem;
51
+ --font-size-5: 0.8125rem;
52
+ --font-size-6: 0.875rem;
53
+ --font-size-7: 0.9375rem;
54
+ --font-size-8: 1rem;
55
+ --font-size-9: 1.25rem;
56
+ --font-size-10: 1.5rem;
57
+ --font-size-default: var(--font-size-3);
58
+ }
59
+ }
60
+ @layer components {
61
+ :root {
62
+ --font-weight-default: 450;
63
+ --font-weight-strong: 550;
64
+ }
65
+ }
66
+ @layer components {
67
+ :root {
68
+ --line-height-1: 0.875rem;
69
+ --line-height-2: 0.875rem;
70
+ --line-height-3: 1rem;
71
+ --line-height-4: 1rem;
72
+ --line-height-5: 1.375rem;
73
+ --line-height-6: 1.5rem;
74
+ --line-height-7: 1.5625rem;
75
+ --line-height-8: 1.5625rem;
76
+ --line-height-9: 2rem;
77
+ --line-height-10: 2rem;
78
+ --line-height-default: var(--line-height-3);
79
+ }
80
+ }
81
+ @layer components {
82
+ :root {
83
+ --letter-spacing-1: 0.00281rem;
84
+ --letter-spacing-2: 0.00625rem;
85
+ --letter-spacing-3: 0.00344rem;
86
+ --letter-spacing-4: 0;
87
+ --letter-spacing-5: -0.002rem;
88
+ --letter-spacing-6: -0.00525rem;
89
+ --letter-spacing-7: -0.00469rem;
90
+ --letter-spacing-8: -0.011rem;
91
+ --letter-spacing-9: -0.013812rem;
92
+ --letter-spacing-10: -0.0255rem;
93
+ --letter-spacing-default: var(--letter-spacing-3);
94
+ }
95
+ }
96
+ @layer components {
97
+
98
+
99
+ :root,
100
+ .light,
101
+ .light-theme {
102
+ --elevation-100: 0px 0px 0.5px rgba(0, 0, 0, 0.3), 0px 1px 3px rgba(0, 0, 0, 0.15);
103
+ --elevation-200: 0px 0px 0.5px rgba(0, 0, 0, 0.18), 0px 3px 8px rgba(0, 0, 0, 0.1), 0px 1px 3px rgba(0, 0, 0, 0.1);
104
+ --elevation-300: 0px 0px 0.5px rgba(0, 0, 0, 0.15), 0px 5px 12px rgba(0, 0, 0, 0.13), 0px 1px 3px rgba(0, 0, 0, 0.1);
105
+ --elevation-400: 0px 0px 0.5px rgba(0, 0, 0, 0.12), 0px 10px 16px rgba(0, 0, 0, 0.12), 0px 2px 5px rgba(0, 0, 0, 0.15);
106
+ --elevation-500: 0px 0px 0.5px rgba(0, 0, 0, 0.08), 0px 10px 24px rgba(0, 0, 0, 0.18), 0px 2px 5px rgba(0, 0, 0, 0.15);
107
+ }
108
+
109
+
110
+ .figma-dark {
111
+ --elevation-100: 0px 0px 0.5px rgba(0, 0, 0, 0.5), 0px 1px 3px rgba(0, 0, 0, 0.4),
112
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.1), inset 0px 0px 0.5px rgba(255, 255, 255, 0.3);
113
+
114
+ --elevation-200: 0px 3px 8px rgba(0, 0, 0, 0.35), 0px 1px 3px rgba(0, 0, 0, 0.5),
115
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.08), inset 0px 0px 0.5px rgba(255, 255, 255, 0.3);
116
+
117
+ --elevation-300: 0px 5px 12px rgba(0, 0, 0, 0.35), 0px 1px 3px rgba(0, 0, 0, 0.5),
118
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.08), inset 0px 0px 0.5px rgba(255, 255, 255, 0.3);
119
+
120
+ --elevation-400: 0px 10px 16px rgba(0, 0, 0, 0.35), 0px 2px 5px rgba(0, 0, 0, 0.35),
121
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.08), inset 0px 0px 0.5px rgba(255, 255, 255, 0.35);
122
+
123
+ --elevation-500: 0px 10px 24px rgba(0, 0, 0, 0.45), 0px 3px 5px rgba(0, 0, 0, 0.35),
124
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.08), inset 0px 0px 0.5px rgba(255, 255, 255, 0.35);
125
+ }
126
+ }
127
+ @layer components {
128
+ :root {
129
+ --color-bg-menu: #1e1e1e;
130
+ --color-bg-menu-hover: #2c2c2c;
131
+ --color-bg-menu-selected: var(--figma-color-bg-selected-strong);
132
+ --color-border-menu: #383838;
133
+ --color-text-menu: var(--figma-color-text-oncomponent);
134
+ --color-text-menu-secondary: var(--figma-color-text-oncomponent-secondary);
135
+ --color-text-menu-tertiary: var(--figma-color-text-oncomponent-tertiary);
136
+ --color-icon-menu: var(--figma-color-icon-oncomponent);
137
+ --shadow-menu: var(--elevation-400);
138
+ --font-size-menu: var(--font-size-3);
139
+
140
+ --color-bg-tooltip: #1e1e1e;
141
+ --color-text-tooltip: #fff;
142
+ --shadow-tooltip: var(--elevation-300);
143
+
144
+ --color-overlay-dialog: #00000080;
145
+
146
+ /* Aliased for brevity when using in icon attributes */
147
+ --color-icon: var(--figma-color-icon);
148
+ --color-icon-secondary: var(--figma-color-icon-secondary);
149
+ --color-icon-tertiary: var(--figma-color-icon-tertiary);
150
+ }
151
+ }
152
+ @layer components {
153
+
154
+ .fp-Flex {
155
+ display: flex;
156
+ }
157
+
158
+ .fp-Flex:where(.fp-direction-row) {
159
+ flex-direction: row;
160
+ }
161
+ .fp-Flex:where(.fp-direction-column) {
162
+ flex-direction: column;
163
+ }
164
+ .fp-Flex:where(.fp-direction-row-reverse) {
165
+ flex-direction: row-reverse;
166
+ }
167
+ .fp-Flex:where(.fp-direction-column-reverse) {
168
+ flex-direction: column-reverse;
169
+ }
170
+
171
+ .fp-Flex:where(.fp-align-start) {
172
+ align-items: flex-start;
173
+ }
174
+ .fp-Flex:where(.fp-align-center) {
175
+ align-items: center;
176
+ }
177
+ .fp-Flex:where(.fp-align-end) {
178
+ align-items: flex-end;
179
+ }
180
+ .fp-Flex:where(.fp-align-baseline) {
181
+ align-items: baseline;
182
+ }
183
+ .fp-Flex:where(.fp-align-stretch) {
184
+ align-items: stretch;
185
+ }
186
+
187
+ /* Justify Classes */
188
+ .fp-Flex:where(.fp-justify-start) {
189
+ justify-content: flex-start;
190
+ }
191
+ .fp-Flex:where(.fp-justify-center) {
192
+ justify-content: center;
193
+ }
194
+ .fp-Flex:where(.fp-justify-end) {
195
+ justify-content: flex-end;
196
+ }
197
+ .fp-Flex:where(.fp-justify-between) {
198
+ justify-content: space-between;
199
+ }
200
+
201
+ .fp-Flex:where(.fp-wrap-nowrap) {
202
+ flex-wrap: nowrap;
203
+ }
204
+ .fp-Flex:where(.fp-wrap-wrap) {
205
+ flex-wrap: wrap;
206
+ }
207
+ .fp-Flex:where(.fp-wrap-wrap-reverse) {
208
+ flex-wrap: wrap-reverse;
209
+ }
210
+
211
+ .fp-Flex:where(.fp-gap-0) {
212
+ gap: var(--space-0);
213
+ }
214
+ .fp-Flex:where(.fp-gap-px) {
215
+ gap: var(--space-px);
216
+ }
217
+ .fp-Flex:where(.fp-gap-0_5) {
218
+ gap: var(--space-0_5);
219
+ }
220
+ .fp-Flex:where(.fp-gap-1) {
221
+ gap: var(--space-1);
222
+ }
223
+ .fp-Flex:where(.fp-gap-1_5) {
224
+ gap: var(--space-1_5);
225
+ }
226
+ .fp-Flex:where(.fp-gap-2) {
227
+ gap: var(--space-2);
228
+ }
229
+ .fp-Flex:where(.fp-gap-2_5) {
230
+ gap: var(--space-2_5);
231
+ }
232
+ .fp-Flex:where(.fp-gap-3) {
233
+ gap: var(--space-3);
234
+ }
235
+ .fp-Flex:where(.fp-gap-3_5) {
236
+ gap: var(--space-3_5);
237
+ }
238
+ .fp-Flex:where(.fp-gap-4) {
239
+ gap: var(--space-4);
240
+ }
241
+ .fp-Flex:where(.fp-gap-5) {
242
+ gap: var(--space-5);
243
+ }
244
+ .fp-Flex:where(.fp-gap-6) {
245
+ gap: var(--space-6);
246
+ }
247
+ .fp-Flex:where(.fp-gap-7) {
248
+ gap: var(--space-7);
249
+ }
250
+ .fp-Flex:where(.fp-gap-8) {
251
+ gap: var(--space-8);
252
+ }
253
+ .fp-Flex:where(.fp-gap-9) {
254
+ gap: var(--space-9);
255
+ }
256
+ .fp-Flex:where(.fp-gap-10) {
257
+ gap: var(--space-10);
258
+ }
259
+ .fp-Flex:where(.fp-gap-11) {
260
+ gap: var(--space-11);
261
+ }
262
+ .fp-Flex:where(.fp-gap-12) {
263
+ gap: var(--space-12);
264
+ }
265
+ .fp-Flex:where(.fp-gap-13) {
266
+ gap: var(--space-13);
267
+ }
268
+ .fp-Flex:where(.fp-gap-14) {
269
+ gap: var(--space-14);
270
+ }
271
+ .fp-Flex:where(.fp-gap-15) {
272
+ gap: var(--space-15);
273
+ }
274
+ .fp-Flex:where(.fp-gap-16) {
275
+ gap: var(--space-16);
276
+ }
277
+
278
+ /* Row Gap Classes */
279
+ .fp-Flex:where(.fp-rowGap-0) {
280
+ row-gap: var(--space-0);
281
+ }
282
+ .fp-Flex:where(.fp-rowGap-px) {
283
+ row-gap: var(--space-px);
284
+ }
285
+ .fp-Flex:where(.fp-rowGap-0_5) {
286
+ row-gap: var(--space-0_5);
287
+ }
288
+ .fp-Flex:where(.fp-rowGap-1) {
289
+ row-gap: var(--space-1);
290
+ }
291
+ .fp-Flex:where(.fp-rowGap-1_5) {
292
+ row-gap: var(--space-1_5);
293
+ }
294
+ .fp-Flex:where(.fp-rowGap-2) {
295
+ row-gap: var(--space-2);
296
+ }
297
+ .fp-Flex:where(.fp-rowGap-2_5) {
298
+ row-gap: var(--space-2_5);
299
+ }
300
+ .fp-Flex:where(.fp-rowGap-3) {
301
+ row-gap: var(--space-3);
302
+ }
303
+ .fp-Flex:where(.fp-rowGap-3_5) {
304
+ row-gap: var(--space-3_5);
305
+ }
306
+ .fp-Flex:where(.fp-rowGap-4) {
307
+ row-gap: var(--space-4);
308
+ }
309
+ .fp-Flex:where(.fp-rowGap-5) {
310
+ row-gap: var(--space-5);
311
+ }
312
+ .fp-Flex:where(.fp-rowGap-6) {
313
+ row-gap: var(--space-6);
314
+ }
315
+ .fp-Flex:where(.fp-rowGap-7) {
316
+ row-gap: var(--space-7);
317
+ }
318
+ .fp-Flex:where(.fp-rowGap-8) {
319
+ row-gap: var(--space-8);
320
+ }
321
+ .fp-Flex:where(.fp-rowGap-9) {
322
+ row-gap: var(--space-9);
323
+ }
324
+ .fp-Flex:where(.fp-rowGap-10) {
325
+ row-gap: var(--space-10);
326
+ }
327
+ .fp-Flex:where(.fp-rowGap-11) {
328
+ row-gap: var(--space-11);
329
+ }
330
+ .fp-Flex:where(.fp-rowGap-12) {
331
+ row-gap: var(--space-12);
332
+ }
333
+ .fp-Flex:where(.fp-rowGap-13) {
334
+ row-gap: var(--space-13);
335
+ }
336
+ .fp-Flex:where(.fp-rowGap-14) {
337
+ row-gap: var(--space-14);
338
+ }
339
+ .fp-Flex:where(.fp-rowGap-15) {
340
+ row-gap: var(--space-15);
341
+ }
342
+ .fp-Flex:where(.fp-rowGap-16) {
343
+ row-gap: var(--space-16);
344
+ }
345
+
346
+ .fp-Flex:where(.fp-columnGap-0) {
347
+ column-gap: var(--space-0);
348
+ }
349
+ .fp-Flex:where(.fp-columnGap-px) {
350
+ column-gap: var(--space-px);
351
+ }
352
+ .fp-Flex:where(.fp-columnGap-0_5) {
353
+ column-gap: var(--space-0_5);
354
+ }
355
+ .fp-Flex:where(.fp-columnGap-1) {
356
+ column-gap: var(--space-1);
357
+ }
358
+ .fp-Flex:where(.fp-columnGap-1_5) {
359
+ column-gap: var(--space-1_5);
360
+ }
361
+ .fp-Flex:where(.fp-columnGap-2) {
362
+ column-gap: var(--space-2);
363
+ }
364
+ .fp-Flex:where(.fp-columnGap-2_5) {
365
+ column-gap: var(--space-2_5);
366
+ }
367
+ .fp-Flex:where(.fp-columnGap-3) {
368
+ column-gap: var(--space-3);
369
+ }
370
+ .fp-Flex:where(.fp-columnGap-3_5) {
371
+ column-gap: var(--space-3_5);
372
+ }
373
+ .fp-Flex:where(.fp-columnGap-4) {
374
+ column-gap: var(--space-4);
375
+ }
376
+ .fp-Flex:where(.fp-columnGap-5) {
377
+ column-gap: var(--space-5);
378
+ }
379
+ .fp-Flex:where(.fp-columnGap-6) {
380
+ column-gap: var(--space-6);
381
+ }
382
+ .fp-Flex:where(.fp-columnGap-7) {
383
+ column-gap: var(--space-7);
384
+ }
385
+ .fp-Flex:where(.fp-columnGap-8) {
386
+ column-gap: var(--space-8);
387
+ }
388
+ .fp-Flex:where(.fp-columnGap-9) {
389
+ column-gap: var(--space-9);
390
+ }
391
+ .fp-Flex:where(.fp-columnGap-10) {
392
+ column-gap: var(--space-10);
393
+ }
394
+ .fp-Flex:where(.fp-columnGap-11) {
395
+ column-gap: var(--space-11);
396
+ }
397
+ .fp-Flex:where(.fp-columnGap-12) {
398
+ column-gap: var(--space-12);
399
+ }
400
+ .fp-Flex:where(.fp-columnGap-13) {
401
+ column-gap: var(--space-13);
402
+ }
403
+ .fp-Flex:where(.fp-columnGap-14) {
404
+ column-gap: var(--space-14);
405
+ }
406
+ .fp-Flex:where(.fp-columnGap-15) {
407
+ column-gap: var(--space-15);
408
+ }
409
+ .fp-Flex:where(.fp-columnGap-16) {
410
+ column-gap: var(--space-16);
411
+ }
412
+ }
413
+ @layer components {
414
+
415
+ .fp-Text {
416
+ margin: 0;
417
+ font-family: var(--font-family-default);
418
+ color: var(--figma-color-text);
419
+ font-size: var(--font-size, var(--font-size-default));
420
+ line-height: var(--line-height, var(--line-height-3));
421
+ letter-spacing: var(--letter-spacing, var(--letter-spacing-3));
422
+ font-weight: var(--font-weight, var(--font-weight-default));
423
+
424
+ /**
425
+ Use custom properties to avoid specificy issues when nesting Text.
426
+ Nested Text components inherit properties of the parent Text, unless customized.
427
+ At the same time, Text falls back to default values without requiring :root level styling. */
428
+ }
429
+ .fp-Text:where(.fp-size-small) {
430
+ --font-size: var(--font-size-1);
431
+ --line-height: var(--line-height-1);
432
+ --letter-spacing: var(--letter-spacing-1);
433
+ }
434
+
435
+ .fp-Text:where(.fp-size-medium) {
436
+ --font-size: var(--font-size-3);
437
+ --line-height: var(--line-height-3);
438
+ --letter-spacing: var(--letter-spacing-3);
439
+ }
440
+
441
+ .fp-Text:where(.fp-size-large) {
442
+ --font-size: var(--font-size-5);
443
+ --line-height: var(--line-height-5);
444
+ --letter-spacing: var(--letter-spacing-5);
445
+ }
446
+
447
+ .fp-Text:where(.fp-weight-default) {
448
+ --font-weight: var(--font-weight-default);
449
+ }
450
+
451
+ .fp-Text:where(.fp-weight-strong) {
452
+ --font-weight: var(--font-weight-strong);
453
+ }
454
+
455
+ .fp-Text:where(.fp-align-start) {
456
+ text-align: start;
457
+ }
458
+
459
+ .fp-Text:where(.fp-align-center) {
460
+ text-align: center;
461
+ }
462
+
463
+ .fp-Text:where(.fp-align-end) {
464
+ text-align: end;
465
+ }
466
+
467
+ .fp-Text:where(.fp-block) {
468
+ display: block;
469
+ }
470
+
471
+ .fp-Text strong {
472
+ font-weight: var(--font-weight-strong);
473
+ }
474
+
475
+ .fp-Text code {
476
+ font-family: var(--font-family-monospace);
477
+ font-size: var(--font-size-2);
478
+ background-color: var(--figma-color-bg-brand-tertiary);
479
+ padding: 0.05rem 0.15rem;
480
+ border-radius: var(--radius-extra-small);
481
+ }
482
+
483
+ .fp-Text mark {
484
+ background-color: var(--figma-color-bg-onselected);
485
+ }
486
+
487
+ .fp-Link {
488
+ color: var(--figma-color-text-brand);
489
+ text-decoration: none;
490
+ }
491
+
492
+ .fp-Link:focus-visible {
493
+ outline: 1px solid var(--figma-color-border-selected-strong);
494
+ }
495
+ }
496
+ @layer components {
497
+ .fp-Icon {
498
+ display: block;
499
+ flex-shrink: 0;
500
+ pointer-events: none;
501
+ }
502
+
503
+ .fp-Icon:where(.fp-size-1) {
504
+ width: var(--space-1);
505
+ }
506
+
507
+ .fp-Icon:where(.fp-size-2) {
508
+ width: var(--space-2);
509
+ }
510
+
511
+ .fp-Icon:where(.fp-size-2_5) {
512
+ width: var(--space-2_5);
513
+ }
514
+
515
+ .fp-Icon:where(.fp-size-3) {
516
+ width: var(--space-3);
517
+ }
518
+
519
+ .fp-Icon:where(.fp-size-3_5) {
520
+ width: var(--space-3_5);
521
+ }
522
+
523
+ .fp-Icon:where(.fp-size-4) {
524
+ width: var(--space-4);
525
+ }
526
+
527
+ .fp-Icon:where(.fp-size-5) {
528
+ width: var(--space-5);
529
+ }
530
+
531
+ .fp-Icon:where(.fp-size-6) {
532
+ width: var(--space-6);
533
+ }
534
+
535
+ .fp-Icon:where(.fp-size-7) {
536
+ width: var(--space-7);
537
+ }
538
+
539
+ .fp-Icon:where(.fp-size-8) {
540
+ width: var(--space-8);
541
+ }
542
+
543
+ .fp-Icon:where(.fp-size-9) {
544
+ width: var(--space-9);
545
+ }
546
+
547
+ .fp-Icon:where(.fp-size-10) {
548
+ width: var(--space-10);
549
+ }
550
+ }
551
+ @layer components {
552
+ .fp-Input {
553
+ all: unset;
554
+ box-sizing: border-box;
555
+ display: block;
556
+ width: 100%;
557
+ height: var(--space-6);
558
+ padding: var(--space-1) 0 var(--space-1) var(--space-2);
559
+ background-color: var(--figma-color-bg-secondary);
560
+ border-radius: var(--radius-medium);
561
+ font-family: var(--font-family-default);
562
+ font-size: var(--font-size-default);
563
+ font-weight: var(--font-weight-default);
564
+ letter-spacing: var(--letter-spacing-default);
565
+ line-height: var(--line-height-default);
566
+ color: var(--figma-color-text);
567
+ outline-width: 1px;
568
+ outline-style: solid;
569
+ outline-offset: -1px;
570
+ outline-color: transparent;
571
+ }
572
+
573
+ .fp-Input:hover:where(:not(:disabled, :focus)) {
574
+ outline-color: var(--figma-color-border);
575
+ }
576
+
577
+ .fp-Input:focus {
578
+ outline-color: var(--figma-color-border-selected);
579
+ }
580
+
581
+ .fp-Input:disabled {
582
+ background-color: var(--figma-color-bg);
583
+ outline-color: var(--figma-color-border-disabled);
584
+ color: var(--figma-color-text-disabled);
585
+ }
586
+
587
+ .fp-Input::placeholder {
588
+ color: var(--figma-color-text-tertiary);
589
+ }
590
+ }
591
+ @layer components {
592
+
593
+ .fp-ValueFieldRoot {
594
+ box-sizing: border-box;
595
+ display: flex;
596
+ position: relative;
597
+ align-items: center;
598
+ border-radius: var(--radius-medium);
599
+ padding: 0 1px;
600
+ background-color: var(--figma-color-bg-secondary);
601
+ font-family: var(--font-family-default);
602
+ font-size: var(--font-size-default);
603
+ font-weight: var(--font-weight-default);
604
+ letter-spacing: var(--letter-spacing-default);
605
+ line-height: var(--line-height-default);
606
+ outline-width: 1px;
607
+ outline-style: solid;
608
+ outline-offset: -1px;
609
+ outline-color: transparent;
610
+ }
611
+
612
+ .fp-ValueFieldRoot:hover:where(:not([data-disabled])) {
613
+ outline-color: var(--figma-color-border);
614
+ }
615
+
616
+ .fp-ValueFieldRoot:focus-within {
617
+ outline-color: var(--figma-color-border-selected);
618
+ }
619
+
620
+ .fp-ValueFieldRoot[data-disabled] {
621
+ background-color: var(--figma-color-bg);
622
+ outline-color: var(--figma-color-border-disabled);
623
+ color: var(--figma-color-text-disabled);
624
+ }
625
+
626
+ .fp-ValueFieldRoot .fp-ValueFieldBase {
627
+ cursor: default;
628
+ outline: 0;
629
+ }
630
+
631
+ .fp-ValueFieldScrubber {
632
+ display: flex;
633
+ align-items: center;
634
+ align-self: stretch;
635
+ flex-shrink: 0;
636
+ cursor: ew-resize;
637
+ color: var(--figma-color-text-secondary);
638
+ --color-icon: var(--figma-color-icon-secondary);
639
+ }
640
+
641
+ .fp-ValueFieldScrubber:empty {
642
+ position: absolute;
643
+ top: 0;
644
+ bottom: 0;
645
+ left: 0;
646
+ z-index: 1;
647
+ width: var(--space-6);
648
+ }
649
+
650
+ .fp-ValueFieldScrubber[data-disabled] {
651
+ cursor: default;
652
+ color: var(--figma-color-text-disabled);
653
+ --color-icon: var(--figma-color-icon-disabled);
654
+ }
655
+
656
+ .fp-ValueFieldScrubber:not(:empty) + .fp-ValueFieldBase {
657
+ padding-left: 0;
658
+ }
659
+
660
+ .fp-ValueFieldScrubber .fp-ValueFieldLabel:last-child {
661
+ width: var(--space-6);
662
+ }
663
+
664
+ .fp-ValueFieldScrubberCursor {
665
+ position: fixed;
666
+ top: 0;
667
+ left: 0;
668
+ z-index: 2147483647;
669
+ width: 26px;
670
+ height: 14px;
671
+ pointer-events: none;
672
+ color: var(--figma-color-text-oninverse);
673
+ filter: drop-shadow(0 1px 1px var(--figma-color-bg-inverse));
674
+ }
675
+
676
+ .fp-ValueFieldScrubberCursorIcon {
677
+ display: block;
678
+ width: 26px;
679
+ height: 14px;
680
+ fill: var(--figma-color-bg-inverse);
681
+ stroke: var(--figma-color-text-oninverse);
682
+ }
683
+
684
+ .fp-ValueFieldLabel {
685
+ display: flex;
686
+ align-items: center;
687
+ justify-content: center;
688
+ align-self: stretch;
689
+ flex-shrink: 0;
690
+ color: var(--figma-color-text-secondary);
691
+ --color-icon: var(--figma-color-icon-secondary);
692
+ height: var(--space-6);
693
+ width: var(--space-6);
694
+
695
+ /* Usually used for suffixes.
696
+ TODO: Replace with a variant. */
697
+ }
698
+ .fp-ValueFieldLabel:last-child {
699
+ width: var(--space-5);
700
+ }
701
+
702
+ .fp-ValueFieldLabel + .fp-ValueFieldBase {
703
+ padding-left: 0;
704
+ }
705
+
706
+ .fp-ValueFieldLabel[data-disabled] {
707
+ color: var(--figma-color-text-disabled);
708
+ --color-icon: var(--figma-color-icon-disabled);
709
+ }
710
+
711
+ .fp-ValueFieldMulti {
712
+ display: flex;
713
+ position: relative;
714
+ border-radius: var(--radius-medium);
715
+ outline-offset: -1px;
716
+ box-sizing: border-box;
717
+ border: 1px solid transparent;
718
+ height: var(--space-6);
719
+ background-color: var(--figma-color-bg-secondary);
720
+ }
721
+
722
+ .fp-ValueFieldMulti:hover:where(:not([data-disabled])) {
723
+ border: 1px solid var(--figma-color-border);
724
+ }
725
+
726
+ .fp-ValueFieldMulti:focus-within {
727
+ outline: 1px solid var(--figma-color-border-selected);
728
+ }
729
+
730
+ .fp-ValueFieldMulti[data-disabled] {
731
+ border: 1px solid var(--figma-color-border-disabled);
732
+ background-color: var(--figma-color-bg);
733
+ }
734
+
735
+ .fp-ValueFieldMulti .fp-ValueFieldRoot {
736
+ height: var(--space-6);
737
+ flex-grow: 1;
738
+ outline: 0;
739
+ border-radius: 0;
740
+ background-color: transparent;
741
+ margin-top: -1px;
742
+ }
743
+
744
+ .fp-ValueFieldMulti .fp-ValueFieldRoot:not(:first-child) {
745
+ border-left: 1px solid var(--figma-color-bg);
746
+ }
747
+
748
+ .fp-ValueFieldMulti .fp-ValueFieldRoot:first-child {
749
+ border-top-left-radius: var(--radius-medium);
750
+ border-bottom-left-radius: var(--radius-medium);
751
+ }
752
+
753
+ .fp-ValueFieldMulti .fp-ValueFieldRoot:last-child {
754
+ border-top-right-radius: var(--radius-medium);
755
+ border-bottom-right-radius: var(--radius-medium);
756
+ }
757
+
758
+ .fp-ValueFieldMulti .fp-ValueFieldBase {
759
+ background-color: transparent;
760
+ padding-left: calc(var(--space-2) - 1px);
761
+ }
762
+
763
+ .fp-ValueFieldNumericSelect {
764
+ width: 100%;
765
+ }
766
+
767
+ .fp-ValueFieldNumericSelect:hover:where(:not([data-disabled])) {
768
+ border-color: transparent;
769
+ }
770
+
771
+ .fp-ValueFieldNumericSelect:has(.fp-ValueFieldNumericSelectField:hover):where(:not([data-disabled])) {
772
+ border-color: var(--figma-color-border);
773
+ }
774
+
775
+ .fp-ValueFieldNumericSelect .fp-ValueFieldNumericSelectField {
776
+ min-width: 0;
777
+ }
778
+
779
+ .fp-ValueFieldNumericSelectTrigger {
780
+ all: unset;
781
+ appearance: none;
782
+ box-sizing: border-box;
783
+ align-self: flex-start;
784
+ display: flex;
785
+ align-items: center;
786
+ justify-content: center;
787
+ flex: 0 0 var(--space-6);
788
+ height: var(--space-6);
789
+ margin-top: -1px;
790
+ border-left: 1px solid var(--figma-color-bg);
791
+ border-top-right-radius: var(--radius-medium);
792
+ border-bottom-right-radius: var(--radius-medium);
793
+ color: var(--figma-color-text);
794
+ --color-icon: var(--figma-color-icon);
795
+ }
796
+
797
+ .fp-ValueFieldNumericSelectTrigger:hover:where(:not(:disabled)) {
798
+ background-color: var(--figma-color-bg-tertiary);
799
+ }
800
+
801
+ .fp-ValueFieldNumericSelectTrigger:disabled {
802
+ color: var(--figma-color-text-disabled);
803
+ --color-icon: var(--figma-color-icon-disabled);
804
+ }
805
+
806
+ .fp-ValueFieldNumericSelectTrigger > span:first-child {
807
+ position: absolute;
808
+ left: var(--space-2);
809
+ top: 0;
810
+ width: 0;
811
+ height: var(--space-6);
812
+ overflow: hidden;
813
+ opacity: 0;
814
+ pointer-events: none;
815
+ white-space: nowrap;
816
+ }
817
+
818
+ .fp-ValueFieldNumericSelectPositioner {
819
+ display: flex;
820
+ flex-direction: column;
821
+ min-width: calc(var(--anchor-width) + var(--space-6) - 2px);
822
+ min-height: calc(var(--available-height) + var(--space-6) - 2px);
823
+ }
824
+
825
+ .fp-ValueFieldNumericSelectPositionerInOptions {
826
+ margin-top: calc(var(--space-2) + 1px) !important;
827
+ }
828
+
829
+ .fp-ValueFieldNumericSelectIcon {
830
+ display: flex;
831
+ align-items: center;
832
+ justify-content: center;
833
+ }
834
+
835
+ .fp-ValueFieldNumericSelectCurrentItem {
836
+ background-color: var(--color-bg-menu-selected);
837
+ }
838
+ }
839
+ @layer components {
840
+
841
+ .fp-tooltip {
842
+ box-sizing: border-box;
843
+ padding: var(--space-1) var(--space-2);
844
+ background-color: var(--color-bg-tooltip);
845
+ font-family: var(--font-family-default);
846
+ font-size: var(--font-size-default);
847
+ font-weight: var(--font-weight-default);
848
+ letter-spacing: var(--letter-spacing-default);
849
+ line-height: var(--line-height-default);
850
+ min-height: var(--space-6);
851
+ color: var(--color-text-tooltip);
852
+ white-space: pre-wrap;
853
+ word-break: break-word;
854
+ border-radius: var(--radius-medium);
855
+ box-shadow: var(--elevation-300, 0 2px 7px rgba(0, 0, 0, 0.15));
856
+ }
857
+
858
+ .fp-tooltip-arrow {
859
+ fill: var(--color-bg-tooltip);
860
+ width: var(--space-3_5);
861
+ height: 7px;
862
+ position: absolute;
863
+ }
864
+
865
+ .fp-tooltip-arrow[data-side='top'] {
866
+ top: calc(100% - 1px);
867
+ }
868
+
869
+ .fp-tooltip-arrow[data-side='bottom'] {
870
+ bottom: calc(100% - 1px);
871
+ transform: rotate(180deg);
872
+ }
873
+
874
+ .fp-tooltip-arrow[data-side='left'] {
875
+ left: calc(100% - 1px);
876
+ transform: rotate(-90deg);
877
+ }
878
+
879
+ .fp-tooltip-arrow[data-side='right'] {
880
+ right: calc(100% - 1px);
881
+ transform: rotate(90deg);
882
+ }
883
+ }
884
+ @layer components {
885
+ .fp-textarea {
886
+ all: unset;
887
+ box-sizing: border-box;
888
+ display: block;
889
+ width: 100%;
890
+ height: var(--space-6);
891
+ padding: var(--space-1) var(--space-2);
892
+ background-color: var(--figma-color-bg-secondary);
893
+ border-radius: var(--radius-medium);
894
+ font-family: var(--font-family-default);
895
+ font-size: var(--font-size-default);
896
+ font-weight: var(--font-weight-default);
897
+ letter-spacing: var(--letter-spacing-default);
898
+ line-height: var(--line-height-default);
899
+ color: var(--figma-color-text);
900
+ outline-width: 1px;
901
+ outline-style: solid;
902
+ outline-offset: -1px;
903
+ outline-color: transparent;
904
+ resize: none;
905
+ word-break: break-word;
906
+ }
907
+
908
+ .fp-textarea:hover:where(:not(:disabled, :focus)) {
909
+ outline-color: var(--figma-color-border);
910
+ }
911
+
912
+ .fp-textarea:focus {
913
+ outline-color: var(--figma-color-border-selected);
914
+ }
915
+
916
+ .fp-textarea:disabled {
917
+ background-color: var(--figma-color-bg);
918
+ outline-color: var(--figma-color-border-disabled);
919
+ color: var(--figma-color-text-disabled);
920
+ }
921
+
922
+ .fp-textarea::placeholder {
923
+ color: var(--figma-color-text-tertiary);
924
+ }
925
+ }
926
+ @layer components {
927
+
928
+ .fp-MenuContent {
929
+ box-sizing: border-box;
930
+ -webkit-font-smoothing: antialiased;
931
+ -moz-osx-font-smoothing: grayscale;
932
+ cursor: default;
933
+ padding: var(--space-2);
934
+ background-color: var(--color-bg-menu);
935
+ border-radius: var(--radius-large);
936
+ font-size: var(--font-size-menu);
937
+ font-family: var(--font-family-default);
938
+ font-weight: var(--font-weight-default);
939
+ letter-spacing: var(--letter-spacing-default);
940
+ color: var(--color-text-menu);
941
+ box-shadow: var(--elevation-400);
942
+ outline: 0;
943
+ }
944
+
945
+ .fp-MenuItem {
946
+ position: relative;
947
+ display: flex;
948
+ align-items: center;
949
+ height: var(--space-6);
950
+ padding: 0 var(--space-2);
951
+ color: var(--color-text-menu);
952
+ line-height: 1rem;
953
+ white-space: nowrap;
954
+ border-radius: var(--radius-medium);
955
+ }
956
+
957
+ .fp-MenuItem[data-highlighted] {
958
+ outline: 0;
959
+ background-color: var(--color-bg-menu-selected);
960
+ }
961
+
962
+ .fp-MenuItem[data-disabled] {
963
+ color: var(--color-text-menu-tertiary);
964
+ }
965
+
966
+ .fp-MenuSeparator {
967
+ margin: var(--space-2) 0;
968
+ height: 1px;
969
+ background-color: var(--color-border-menu);
970
+ }
971
+
972
+ .fp-MenuLabel {
973
+ display: flex;
974
+ align-items: center;
975
+ height: var(--space-6);
976
+ padding: 0 var(--space-2);
977
+ color: var(--color-text-menu-tertiary);
978
+ }
979
+
980
+ .fp-MenuLabel:where(.fp-MenuContent:has(.fp-MenuCheckboxItem, .fp-MenuRadioItem) .fp-MenuLabel) {
981
+ padding-left: var(--space-6);
982
+ }
983
+
984
+ .fp-MenuGroup {
985
+ padding: var(--space-2) 0;
986
+ }
987
+
988
+ .fp-MenuGroup:first-child {
989
+ padding-top: 0;
990
+ }
991
+
992
+ .fp-MenuGroup:last-child {
993
+ padding-bottom: 0;
994
+ }
995
+
996
+ .fp-MenuGroup:not(:first-child) {
997
+ border-top: 1px solid var(--color-border-menu);
998
+ }
999
+
1000
+ .fp-MenuSubtriggerCaret {
1001
+ margin-left: auto;
1002
+ margin-right: calc(-1 * var(--space-2));
1003
+ padding-left: var(--space-6);
1004
+ --color-icon: var(--color-icon-menu);
1005
+ }
1006
+
1007
+ .fp-MenuCheckboxItem,
1008
+ .fp-MenuRadioItem {
1009
+ padding-left: var(--space-6);
1010
+ }
1011
+
1012
+ .fp-MenuItemIndicator {
1013
+ position: absolute;
1014
+ left: var(--space-1);
1015
+ --color-icon: var(--color-icon-menu);
1016
+ }
1017
+ }
1018
+ @layer components {
1019
+
1020
+ .fp-SelectTrigger {
1021
+ all: unset;
1022
+ appearance: none;
1023
+ box-sizing: border-box;
1024
+ display: flex;
1025
+ align-items: center;
1026
+ gap: var(--space-1);
1027
+ width: 100%;
1028
+ padding: 0 0 0 var(--space-2);
1029
+ height: var(--space-6);
1030
+ border: 1px solid var(--figma-color-border);
1031
+ border-radius: var(--radius-medium);
1032
+ font-family: var(--font-family-default);
1033
+ font-size: var(--font-size-default);
1034
+ font-weight: var(--font-weight-default);
1035
+ letter-spacing: var(--letter-spacing-default);
1036
+ color: var(--figma-color-text);
1037
+ }
1038
+
1039
+ .fp-SelectTriggerIcon {
1040
+ margin-left: auto;
1041
+ }
1042
+
1043
+ .fp-SelectPositioner {
1044
+ display: flex;
1045
+ flex-direction: column;
1046
+ min-width: calc(var(--anchor-width) + var(--space-6) - 1px);
1047
+ }
1048
+
1049
+ .fp-SelectScrollUpButton,
1050
+ .fp-SelectScrollDownButton {
1051
+ position: absolute;
1052
+ left: 0;
1053
+ right: 0;
1054
+ z-index: 1;
1055
+ display: flex;
1056
+ align-items: center;
1057
+ justify-content: center;
1058
+ height: var(--space-6);
1059
+ background-color: var(--color-bg-menu);
1060
+ --color-icon: var(--color-icon-menu);
1061
+ }
1062
+
1063
+ .fp-SelectScrollUpButton:hover, .fp-SelectScrollDownButton:hover {
1064
+ background-color: var(--color-bg-menu-hover);
1065
+ }
1066
+
1067
+ .fp-SelectScrollUpButton {
1068
+ top: 0;
1069
+ border-radius: var(--radius-large) var(--radius-large) 0 0;
1070
+ }
1071
+
1072
+ .fp-SelectScrollDownButton {
1073
+ bottom: 0;
1074
+ border-radius: 0 0 var(--radius-large) var(--radius-large);
1075
+ }
1076
+ }
1077
+ @layer components {
1078
+
1079
+ .fp-ComboboxTrigger {
1080
+ cursor: default;
1081
+ }
1082
+
1083
+ .fp-ComboboxTrigger:focus-visible {
1084
+ border-color: var(--figma-color-border-selected);
1085
+ }
1086
+
1087
+ .fp-ComboboxTrigger[data-disabled] {
1088
+ color: var(--figma-color-text-disabled);
1089
+ border-color: var(--figma-color-border-disabled);
1090
+ }
1091
+
1092
+ .fp-ComboboxPositioner {
1093
+ display: flex;
1094
+ flex-direction: column;
1095
+ min-width: var(--anchor-width);
1096
+ max-width: min(var(--available-width), 24rem);
1097
+ }
1098
+
1099
+ .fp-ComboboxPopup {
1100
+ box-sizing: border-box;
1101
+ display: flex;
1102
+ flex-direction: column;
1103
+ gap: var(--space-2);
1104
+ max-height: min(var(--available-height), 20rem);
1105
+ min-width: var(--anchor-width);
1106
+ padding: var(--space-2);
1107
+ background-color: var(--figma-color-bg);
1108
+ border-radius: var(--radius-large);
1109
+ box-shadow: var(--elevation-500);
1110
+ color: var(--figma-color-text);
1111
+ font-family: var(--font-family-default);
1112
+ font-size: var(--font-size-default);
1113
+ font-weight: var(--font-weight-default);
1114
+ letter-spacing: var(--letter-spacing-default);
1115
+ outline: 0;
1116
+ overflow: auto;
1117
+ }
1118
+
1119
+ .fp-ComboboxInputGroup {
1120
+ box-sizing: border-box;
1121
+ position: relative;
1122
+ flex-shrink: 0;
1123
+ --color-icon: var(--figma-color-icon-secondary);
1124
+ }
1125
+
1126
+ .fp-ComboboxInputGroup > .fp-Icon {
1127
+ position: absolute;
1128
+ top: 50%;
1129
+ left: var(--space-2);
1130
+ z-index: 1;
1131
+ transform: translateY(-50%);
1132
+ }
1133
+
1134
+ .fp-ComboboxInputGroup:has(.fp-ComboboxInput:disabled) {
1135
+ --color-icon: var(--figma-color-icon-disabled);
1136
+ }
1137
+
1138
+ .fp-ComboboxInput {
1139
+ min-width: 0;
1140
+ padding-left: calc(var(--space-2) + var(--space-6) + var(--space-1));
1141
+ padding-right: var(--space-6);
1142
+ }
1143
+
1144
+ .fp-ComboboxList {
1145
+ display: flex;
1146
+ flex-direction: column;
1147
+ }
1148
+
1149
+ .fp-ComboboxItem {
1150
+ width: 100%;
1151
+ box-sizing: border-box;
1152
+ color: var(--figma-color-text);
1153
+ line-height: var(--line-height-default);
1154
+ }
1155
+
1156
+ .fp-ComboboxItem[data-selected] {
1157
+ background-color: var(--figma-color-bg-selected-secondary);
1158
+ }
1159
+
1160
+ .fp-ComboboxItem[data-highlighted] {
1161
+ background-color: var(--figma-color-bg-hover);
1162
+ }
1163
+
1164
+ .fp-ComboboxItem[data-selected][data-highlighted] {
1165
+ background-color: var(--figma-color-bg-selected);
1166
+ }
1167
+
1168
+ .fp-ComboboxItem[data-disabled] {
1169
+ color: var(--figma-color-text-disabled);
1170
+ }
1171
+
1172
+ .fp-ComboboxItemIndicator {
1173
+ --color-icon: var(--figma-color-icon);
1174
+ }
1175
+
1176
+ .fp-ComboboxMessage {
1177
+ display: flex;
1178
+ align-items: center;
1179
+ min-height: var(--space-6);
1180
+ padding: 0 var(--space-2);
1181
+ color: var(--figma-color-text-secondary);
1182
+ }
1183
+
1184
+ .fp-ComboboxMessage:empty {
1185
+ min-height: 0;
1186
+ padding: 0;
1187
+ }
1188
+
1189
+ .fp-ComboboxClear.fp-IconButton,
1190
+ .fp-ComboboxSearchClear.fp-IconButton {
1191
+ --color-icon: var(--figma-color-icon-secondary);
1192
+ }
1193
+
1194
+ .fp-ComboboxClear.fp-IconButton:hover, .fp-ComboboxSearchClear.fp-IconButton:hover {
1195
+ background-color: transparent;
1196
+ --color-icon: var(--figma-color-icon-secondary-hover);
1197
+ }
1198
+
1199
+ .fp-ComboboxClear.fp-IconButton[data-disabled] {
1200
+ --color-icon: var(--figma-color-icon-disabled);
1201
+ }
1202
+
1203
+ .fp-ComboboxSearchClear.fp-IconButton {
1204
+ position: absolute;
1205
+ top: 0;
1206
+ right: 0;
1207
+ }
1208
+
1209
+ .fp-ComboboxInput:placeholder-shown + .fp-ComboboxSearchClear.fp-IconButton {
1210
+ display: none;
1211
+ }
1212
+ }
1213
+ @layer components {
1214
+
1215
+ .fp-Button {
1216
+ box-sizing: border-box;
1217
+ background-clip: border-box;
1218
+ background-color: transparent;
1219
+ user-select: none;
1220
+ appearance: none;
1221
+ border: 0;
1222
+ cursor: default;
1223
+ display: flex;
1224
+ align-items: center;
1225
+ justify-content: center;
1226
+ flex-shrink: 0;
1227
+ width: fit-content;
1228
+ outline-width: 1px;
1229
+ outline-offset: -1px;
1230
+ outline-style: solid;
1231
+ outline-color: transparent;
1232
+ font-family: var(--font-family-default);
1233
+ font-size: var(--font-size-default);
1234
+ font-weight: var(--font-weight-default);
1235
+ letter-spacing: var(--letter-spacing-default);
1236
+ line-height: var(--line-height-default);
1237
+ border-radius: var(--radius-medium);
1238
+ --color-icon: currentColor;
1239
+ }
1240
+
1241
+ .fp-Button:where(.fp-variant-secondary) {
1242
+ --button-color-bg: transparent;
1243
+ --button-color-border: var(--figma-color-text);
1244
+ --button-color-text: var(--figma-color-border);
1245
+ }
1246
+
1247
+ .fp-Button:where(.fp-variant-secondary) {
1248
+ color: var(--figma-color-text);
1249
+ outline-color: var(--figma-color-border);
1250
+ }
1251
+
1252
+ .fp-Button:where(.fp-variant-secondary):active {
1253
+ background-color: var(--figma-color-bg-pressed);
1254
+ }
1255
+
1256
+ .fp-Button:where(.fp-variant-secondary):focus-visible {
1257
+ outline-color: var(--figma-color-border-selected);
1258
+ }
1259
+
1260
+ .fp-Button:where(.fp-variant-secondary):disabled {
1261
+ color: var(--figma-color-text-disabled);
1262
+ outline-color: var(--figma-color-border-disabled);
1263
+ }
1264
+
1265
+ .fp-Button:where(.fp-variant-primary) {
1266
+ background-color: var(--figma-color-bg-brand);
1267
+ color: var(--figma-color-text-onbrand);
1268
+ }
1269
+
1270
+ .fp-Button:where(.fp-variant-primary):active {
1271
+ background-color: var(--figma-color-bg-brand-pressed);
1272
+ }
1273
+
1274
+ .fp-Button:where(.fp-variant-primary):focus-visible {
1275
+ outline-color: var(--figma-color-border-onbrand-strong);
1276
+ box-shadow: 0 0 0 1px var(--figma-color-border-selected-strong);
1277
+ }
1278
+
1279
+ .fp-Button:where(.fp-variant-primary):disabled {
1280
+ color: var(--figma-color-text-ondisabled);
1281
+ background-color: var(--figma-color-bg-disabled);
1282
+ }
1283
+ .fp-Button:where(.fp-variant-destructive) {
1284
+ background-color: var(--figma-color-bg-danger);
1285
+ color: var(--figma-color-text-ondanger);
1286
+ }
1287
+
1288
+ .fp-Button:where(.fp-variant-destructive):active {
1289
+ background-color: var(--figma-color-bg-danger-pressed);
1290
+ }
1291
+
1292
+ .fp-Button:where(.fp-variant-destructive):focus-visible {
1293
+ outline-color: var(--figma-color-border-ondanger-strong);
1294
+ box-shadow: 0 0 0 1px var(--figma-color-border-danger-strong);
1295
+ }
1296
+
1297
+ .fp-Button:where(.fp-variant-destructive):disabled {
1298
+ color: var(--figma-color-text-ondisabled);
1299
+ background-color: var(--figma-color-bg-disabled);
1300
+ }
1301
+
1302
+ .fp-Button:where(.fp-variant-success) {
1303
+ background-color: var(--figma-color-bg-success);
1304
+ color: var(--figma-color-text-onsuccess);
1305
+ }
1306
+
1307
+ .fp-Button:where(.fp-variant-success):active {
1308
+ background-color: var(--figma-color-bg-success-pressed);
1309
+ }
1310
+
1311
+ .fp-Button:where(.fp-variant-success):focus-visible {
1312
+ outline-color: var(--figma-color-border-onbrand-strong);
1313
+ box-shadow: 0 0 0 1px var(--figma-color-border-success-strong);
1314
+ }
1315
+
1316
+ .fp-Button:where(.fp-variant-success):disabled {
1317
+ color: var(--figma-color-text-ondisabled);
1318
+ background-color: var(--figma-color-bg-disabled);
1319
+ }
1320
+
1321
+ .fp-Button:where(.fp-variant-inverse) {
1322
+ background-color: var(--figma-color-bg-inverse);
1323
+ color: var(--figma-color-text-oninverse);
1324
+ font-weight: 400;
1325
+ }
1326
+
1327
+ .fp-Button:where(.fp-variant-inverse):active {
1328
+ background-color: var(--figma-color-bg-brand-pressed);
1329
+ }
1330
+
1331
+ .fp-Button:where(.fp-variant-inverse):focus-visible {
1332
+ outline-color: var(--figma-color-border-onbrand-strong);
1333
+ box-shadow: 0 0 0 1px var(--figma-color-border-selected);
1334
+ }
1335
+
1336
+ .fp-Button:where(.fp-variant-inverse):disabled {
1337
+ color: var(--figma-color-text-ondisabled);
1338
+ background-color: var(--figma-color-bg-disabled);
1339
+ }
1340
+
1341
+ .fp-Button:where(.fp-variant-text) {
1342
+ background-color: transparent;
1343
+ outline-color: transparent;
1344
+ color: var(--figma-color-text);
1345
+ }
1346
+
1347
+ .fp-Button:where(.fp-variant-text):hover {
1348
+ background-color: var(--figma-color-bg-hover);
1349
+ }
1350
+
1351
+ .fp-Button:where(.fp-variant-text):active {
1352
+ background-color: var(--figma-color-bg-pressed);
1353
+ }
1354
+
1355
+ .fp-Button:where(.fp-variant-text):focus-visible {
1356
+ outline-color: var(--figma-color-border-selected);
1357
+ }
1358
+
1359
+ .fp-Button:where(.fp-variant-text):disabled {
1360
+ color: var(--figma-color-text-disabled);
1361
+ outline-color: var(--figma-color-border-disabled);
1362
+ }
1363
+
1364
+ .fp-Button:where(.fp-full-width) {
1365
+ width: 100%;
1366
+ max-width: 100%;
1367
+ }
1368
+
1369
+ .fp-Button:where(.fp-size-small) {
1370
+ height: var(--space-6);
1371
+ padding: var(--space-1) var(--space-2);
1372
+ }
1373
+
1374
+ .fp-Button:where(.fp-size-medium) {
1375
+ height: var(--space-8);
1376
+ padding: var(--space-2) var(--space-3);
1377
+ }
1378
+ }
1379
+ @layer components {
1380
+
1381
+ .fp-IconButton {
1382
+ box-sizing: border-box;
1383
+ background-clip: border-box;
1384
+ background-color: transparent;
1385
+ user-select: none;
1386
+ appearance: none;
1387
+ border: 0;
1388
+ padding: 0;
1389
+ cursor: default;
1390
+ display: flex;
1391
+ align-items: center;
1392
+ justify-content: center;
1393
+ flex-shrink: 0;
1394
+ --color-icon: var(--figma-color-icon);
1395
+ border-radius: var(--radius-medium);
1396
+ }
1397
+
1398
+ .fp-IconButton:where(:hover:not(:disabled)) {
1399
+ background-color: var(--figma-color-bg-pressed);
1400
+ }
1401
+
1402
+ .fp-IconButton:focus-visible {
1403
+ outline-offset: -1px;
1404
+ outline: 1px solid var(--figma-color-border-selected);
1405
+ }
1406
+
1407
+ .fp-IconButton:disabled {
1408
+ --color-icon: var(--figma-color-icon-disabled);
1409
+ }
1410
+
1411
+ .fp-IconButton:where(.fp-size-small) {
1412
+ width: var(--space-6);
1413
+ height: var(--space-6);
1414
+ }
1415
+
1416
+ .fp-IconButton:where(.fp-size-medium) {
1417
+ width: var(--space-8);
1418
+ height: var(--space-8);
1419
+ }
1420
+ .fp-IconButton:where(.fp-active-appearance-subtle):where([data-state='open'], [data-popup-open]) {
1421
+ background-color: var(--figma-color-bg-selected);
1422
+ --color-icon: var(--figma-color-icon-brand);
1423
+ }
1424
+ .fp-IconButton:where(.fp-active-appearance-solid):where([data-state='open'], [data-popup-open]) {
1425
+ background-color: var(--figma-color-bg-selected-strong);
1426
+ --color-icon: var(--figma-color-icon-onbrand);
1427
+ }
1428
+ }
1429
+ @layer components {
1430
+
1431
+ .fp-switchRoot {
1432
+ appearance: none;
1433
+ box-sizing: border-box;
1434
+ position: relative;
1435
+ display: block;
1436
+ width: var(--space-8);
1437
+ height: var(--space-4);
1438
+ padding: 0;
1439
+ background: none;
1440
+ background-clip: padding-box;
1441
+ border-radius: var(--radius-full);
1442
+ border: 0;
1443
+ transition: background-position 0.08s ease-out;
1444
+
1445
+ /* Using ::before to render the background to create the real gap between the
1446
+ outline and the background in the focused mode as it is in Figma. */
1447
+ }
1448
+ .fp-switchRoot::before {
1449
+ position: absolute;
1450
+ inset: 0;
1451
+ border-radius: var(--radius-full);
1452
+ background: none;
1453
+ content: '';
1454
+ }
1455
+
1456
+ .fp-switchRoot[data-unchecked]::before {
1457
+ background: var(--figma-color-bg-tertiary);
1458
+ }
1459
+
1460
+ .fp-switchRoot[data-checked]::before {
1461
+ background: var(--figma-color-bg-brand);
1462
+ }
1463
+
1464
+ .fp-switchRoot:focus-visible {
1465
+ outline-offset: -1px;
1466
+ outline: 1px solid var(--figma-color-border-selected-strong);
1467
+ }
1468
+
1469
+ .fp-switchRoot:focus-visible::before {
1470
+ inset: 2px;
1471
+ }
1472
+ .fp-switchRoot[data-disabled][data-unchecked]::before {
1473
+ /* This gives it more contrast than the disabled checked state but this is
1474
+ how it is in Figma. ¯\_(ツ)_/¯ */
1475
+ background: var(--figma-color-bg-disabled);
1476
+ }
1477
+
1478
+ .fp-switchRoot[data-disabled][data-checked]::before {
1479
+ background: var(--figma-color-bg-tertiary);
1480
+ }
1481
+
1482
+ .fp-switchThumb {
1483
+ box-sizing: border-box;
1484
+ position: absolute;
1485
+ top: 1px;
1486
+ left: 1px;
1487
+ height: var(--space-3_5);
1488
+ width: var(--space-3_5);
1489
+ border-radius: var(--radius-full);
1490
+ background: var(--figma-color-icon-onbrand);
1491
+ transition: all 0.08s ease-out;
1492
+ }
1493
+
1494
+ .fp-switchThumb[data-disabled] {
1495
+ background-color: var(--figma-color-icon-ondisabled);
1496
+ }
1497
+
1498
+ .fp-switchThumb[data-unchecked] {
1499
+ left: 1px;
1500
+ }
1501
+
1502
+ .fp-switchThumb[data-checked] {
1503
+ left: calc(100% - var(--space-3_5) - 1px);
1504
+ }
1505
+ }
1506
+ @layer components {
1507
+
1508
+ :root,
1509
+ .light,
1510
+ .light-theme {
1511
+ --slider-root-size: var(--space-6);
1512
+ --slider-track-size: var(--space-4);
1513
+ --slider-thumb-width: var(--space-4);
1514
+ --slider-track-border-color: #0000001a;
1515
+ --slider-track-bg: var(--figma-color-bg-secondary);
1516
+ --slider-thumb-bg: transparent;
1517
+ }
1518
+
1519
+ .figma-dark {
1520
+ --slider-track-border-color: #ffffff1a;
1521
+ }
1522
+
1523
+ .fp-SliderRoot {
1524
+ position: relative;
1525
+ display: flex;
1526
+ align-items: center;
1527
+ flex-grow: 1;
1528
+ outline: 0;
1529
+ border-color: transparent;
1530
+ border-style: solid;
1531
+ }
1532
+
1533
+ .fp-SliderRoot[data-orientation='horizontal'] {
1534
+ height: var(--slider-root-size);
1535
+ border-width: 0 calc(var(--slider-thumb-width) / 2);
1536
+ }
1537
+
1538
+ .fp-SliderRoot[data-orientation='vertical'] {
1539
+ flex-direction: column;
1540
+ width: var(--slider-root-size);
1541
+ border-width: calc(var(--slider-thumb-width) / 2) 0;
1542
+ }
1543
+
1544
+ .fp-SliderControl {
1545
+ position: relative;
1546
+ display: flex;
1547
+ align-items: center;
1548
+ flex-grow: 1;
1549
+ width: 100%;
1550
+ height: 100%;
1551
+ outline: 0;
1552
+ }
1553
+
1554
+ .fp-SliderRoot[data-orientation='vertical'] .fp-SliderControl {
1555
+ flex-direction: column;
1556
+ }
1557
+
1558
+ .fp-SliderTrack {
1559
+ box-sizing: border-box;
1560
+ position: static;
1561
+ overflow: visible;
1562
+ flex-grow: 1;
1563
+ background: var(--slider-track-bg);
1564
+ border-radius: var(--radius-full);
1565
+ outline: 1px solid var(--slider-track-border-color);
1566
+ outline-offset: -1px;
1567
+ }
1568
+
1569
+ .fp-SliderTrack[data-orientation='horizontal'] {
1570
+ margin-left: calc((var(--slider-thumb-width) / 2) * -1);
1571
+ margin-right: calc((var(--slider-thumb-width) / 2) * -1);
1572
+ height: var(--slider-track-size);
1573
+ }
1574
+
1575
+ .fp-SliderTrack[data-orientation='vertical'] {
1576
+ margin-top: calc((var(--slider-thumb-width) / 2) * -1);
1577
+ margin-bottom: calc((var(--slider-thumb-width) / 2) * -1);
1578
+ width: var(--slider-track-size);
1579
+ }
1580
+
1581
+ .fp-SliderRange {
1582
+ position: absolute;
1583
+ display: block;
1584
+ background-color: var(--figma-color-bg-brand);
1585
+ border-radius: var(--radius-full);
1586
+ }
1587
+
1588
+ .fp-SliderRange[data-orientation='horizontal'] {
1589
+ height: var(--slider-track-size);
1590
+ margin-left: calc((var(--slider-thumb-width) / 2) * -1);
1591
+ margin-right: calc((var(--slider-thumb-width) / 2) * -1);
1592
+ }
1593
+
1594
+ .fp-SliderRange[data-orientation='vertical'] {
1595
+ width: var(--slider-track-size);
1596
+ margin-top: calc((var(--slider-thumb-width) / 2) * -1);
1597
+ margin-bottom: calc((var(--slider-thumb-width) / 2) * -1);
1598
+ }
1599
+
1600
+ .fp-SliderRange[data-disabled] {
1601
+ background-color: var(--figma-color-bg-disabled);
1602
+ }
1603
+
1604
+ .fp-SliderThumb {
1605
+ box-sizing: border-box;
1606
+ display: block;
1607
+ z-index: 1;
1608
+ width: var(--slider-track-size);
1609
+ height: var(--slider-track-size);
1610
+ background-color: var(--slider-thumb-bg);
1611
+ border: 4px solid var(--figma-color-icon-onbrand);
1612
+ border-radius: var(--radius-full);
1613
+ box-shadow: var(--elevation-200);
1614
+ outline: 0;
1615
+ }
1616
+
1617
+ .fp-SliderThumb[data-disabled] {
1618
+ background-color: var(--figma-color-bg-disabled-secondary);
1619
+ border: 0;
1620
+ box-shadow: none;
1621
+ }
1622
+
1623
+ .fp-SliderThumb.fp-SliderThumb-focusVisible:focus-visible {
1624
+ outline: 1px solid var(--figma-color-border-selected);
1625
+ }
1626
+
1627
+ .fp-SliderThumb.fp-SliderThumb-baseValue {
1628
+ --slider-thumb-bg: var(--figma-color-icon-onbrand);
1629
+ }
1630
+
1631
+ .fp-SliderHint {
1632
+ position: absolute;
1633
+ display: block;
1634
+ width: var(--space-1);
1635
+ height: var(--space-1);
1636
+ background-color: var(--figma-color-icon-tertiary);
1637
+ border-radius: var(--radius-full);
1638
+ }
1639
+
1640
+ .fp-SliderHint[data-orientation='horizontal'] {
1641
+ top: 50%;
1642
+ transform: translateY(-50%);
1643
+ }
1644
+
1645
+ .fp-SliderHint[data-orientation='vertical'] {
1646
+ left: 50%;
1647
+ transform: translateX(-50%);
1648
+ }
1649
+
1650
+ .fp-SliderHint.fp-SliderHint-baseValue {
1651
+ background-color: var(--figma-color-icon);
1652
+ }
1653
+ }
1654
+ @layer components {
1655
+
1656
+ .fp-DialogBaseContent {
1657
+ font-family: var(--font-family-default);
1658
+ color: var(--figma-color-text);
1659
+ background-color: var(--figma-color-bg);
1660
+ border-radius: var(--radius-large);
1661
+ box-shadow: var(--elevation-500);
1662
+ overflow-y: auto;
1663
+ outline: 0;
1664
+ }
1665
+
1666
+ .fp-DialogBaseHeader {
1667
+ box-sizing: border-box;
1668
+ display: flex;
1669
+ align-items: center;
1670
+ height: var(--space-10);
1671
+ padding: var(--space-1) var(--space-2);
1672
+ border-bottom: 1px solid var(--figma-color-border);
1673
+ background-color: var(--figma-color-bg);
1674
+ }
1675
+
1676
+ .fp-DialogBaseTitle {
1677
+ padding-left: var(--space-2);
1678
+ }
1679
+
1680
+ .fp-DialogBaseControls {
1681
+ display: flex;
1682
+ align-items: center;
1683
+ margin-left: auto;
1684
+ }
1685
+
1686
+ .fp-DialogBaseSection {
1687
+ box-sizing: border-box;
1688
+ padding: var(--space-4);
1689
+ border-bottom: 1px solid var(--figma-color-border);
1690
+ }
1691
+
1692
+ .fp-DialogBaseSection:where(:last-child) {
1693
+ border-bottom: 0;
1694
+ }
1695
+
1696
+ .fp-DialogBaseSection:where(.fp-DialogBaseSection-base) {
1697
+ padding: var(--space-4);
1698
+ }
1699
+
1700
+ .fp-DialogBaseSection:where(.fp-DialogBaseSection-small) {
1701
+ padding: var(--space-2) var(--space-4);
1702
+ }
1703
+
1704
+ .fp-DialogBaseOverlay {
1705
+ position: fixed;
1706
+ inset: 0;
1707
+ background-color: var(--color-overlay-dialog);
1708
+ }
1709
+ }
1710
+ @layer components {
1711
+ .fp-DialogContent {
1712
+ position: fixed;
1713
+ max-width: calc(100vw - 32px);
1714
+ max-height: 80%;
1715
+ }
1716
+
1717
+ .fp-DialogContent:where(.fp-placement-center) {
1718
+ top: 50%;
1719
+ left: 50%;
1720
+ transform: translate(-50%, -50%);
1721
+ }
1722
+
1723
+ .fp-DialogContent:where(.fp-placement-top) {
1724
+ top: min(10vh, 80px);
1725
+ left: 50%;
1726
+ transform: translateX(-50%);
1727
+ }
1728
+
1729
+ .fp-DialogContent:where(.fp-size-1) {
1730
+ width: 288px;
1731
+ }
1732
+
1733
+ .fp-DialogContent:where(.fp-size-2) {
1734
+ width: 352px;
1735
+ }
1736
+
1737
+ .fp-DialogContent:where(.fp-size-3) {
1738
+ width: 448px;
1739
+ }
1740
+
1741
+ .fp-DialogContent:where(.fp-size-fullscreen) {
1742
+ inset: 0;
1743
+ }
1744
+ }
1745
+ @layer components {
1746
+
1747
+ .fp-AlertDialogContent {
1748
+ position: fixed;
1749
+ top: 50%;
1750
+ left: 50%;
1751
+ transform: translate(-50%, -50%);
1752
+ max-width: calc(100vw - 32px);
1753
+ max-height: 80%;
1754
+ display: flex;
1755
+ flex-direction: column;
1756
+ gap: var(--space-4);
1757
+ padding: var(--space-4);
1758
+ }
1759
+
1760
+ .fp-AlertDialogContent:where(.fp-placement-center) {
1761
+ top: 50%;
1762
+ left: 50%;
1763
+ transform: translate(-50%, -50%);
1764
+ }
1765
+
1766
+ .fp-AlertDialogContent:where(.fp-placement-top) {
1767
+ top: min(10vh, 80px);
1768
+ left: 50%;
1769
+ transform: translateX(-50%);
1770
+ }
1771
+
1772
+ .fp-AlertDialogContent:where(.fp-size-1) {
1773
+ width: 288px;
1774
+ }
1775
+
1776
+ .fp-AlertDialogContent:where(.fp-size-2) {
1777
+ width: 352px;
1778
+ }
1779
+
1780
+ .fp-AlertDialogContent:where(.fp-size-3) {
1781
+ width: 448px;
1782
+ }
1783
+
1784
+ .fp-AlertDialogTitle {
1785
+ margin: 0;
1786
+ }
1787
+
1788
+ .fp-AlertDialogActions {
1789
+ display: flex;
1790
+ justify-content: flex-end;
1791
+ align-items: center;
1792
+ gap: var(--space-2);
1793
+ padding-top: var(--space-2);
1794
+ }
1795
+ }
1796
+ @layer components {
1797
+
1798
+ .fp-TabsList {
1799
+ display: flex;
1800
+ overflow-y: auto;
1801
+ gap: var(--space-2);
1802
+ }
1803
+
1804
+ .fp-TabsTrigger {
1805
+ all: unset;
1806
+ box-sizing: border-box;
1807
+ display: flex;
1808
+ align-items: center;
1809
+ justify-content: center;
1810
+ flex-shrink: 0;
1811
+ height: var(--space-6);
1812
+ padding: 0 var(--space-2);
1813
+ font-family: var(--font-family-default);
1814
+ font-size: var(--font-size-default);
1815
+ font-weight: var(--font-weight-default);
1816
+ letter-spacing: var(--letter-spacing-default);
1817
+ line-height: var(--line-height-default);
1818
+ white-space: nowrap;
1819
+ }
1820
+
1821
+ .fp-TabsTrigger:where(:not([data-active])) {
1822
+ color: var(--figma-color-text-secondary);
1823
+ --color-icon: var(--figma-color-icon-secondary);
1824
+ }
1825
+
1826
+ .fp-TabsTrigger:where([data-active]) {
1827
+ font-weight: var(--font-weight-strong);
1828
+ color: var(--figma-color-text);
1829
+ --color-icon: var(--figma-color-icon);
1830
+ background: var(--figma-color-bg-secondary);
1831
+ border-radius: var(--radius-medium);
1832
+ }
1833
+ }
1834
+ @layer components {
1835
+
1836
+ .fp-CheckboxRoot {
1837
+ position: relative;
1838
+ display: grid;
1839
+ grid-template-columns: var(--space-4) auto;
1840
+ min-height: 24px;
1841
+ gap: var(--space-1) var(--space-2);
1842
+ }
1843
+
1844
+ .fp-CheckboxInput {
1845
+ all: unset;
1846
+ box-sizing: border-box;
1847
+ display: block;
1848
+ width: var(--space-4);
1849
+ height: var(--space-4);
1850
+ margin: var(--space-1) 0;
1851
+ background-color: transparent;
1852
+ border: 1px solid var(--figma-color-border-strong);
1853
+ border-radius: var(--radius-medium);
1854
+ flex-shrink: 0;
1855
+ }
1856
+
1857
+ .fp-CheckboxInput:focus-visible {
1858
+ outline-offset: -1px;
1859
+ outline: 1px solid var(--figma-color-border-selected);
1860
+ }
1861
+
1862
+ .fp-CheckboxInput:focus-visible:checked {
1863
+ outline-offset: 0;
1864
+ outline: 1px solid var(--figma-color-border-selected-strong);
1865
+ border-color: var(--figma-color-icon-onbrand);
1866
+ }
1867
+
1868
+ .fp-CheckboxInput:checked {
1869
+ background-color: var(--figma-color-bg-brand);
1870
+ border-color: transparent;
1871
+ }
1872
+
1873
+ .fp-CheckboxInput:disabled {
1874
+ border-color: var(--figma-color-border-disabled-strong);
1875
+ }
1876
+
1877
+ .fp-CheckboxInput:disabled:checked {
1878
+ border-color: transparent;
1879
+ background-color: var(--figma-color-border-disabled-strong);
1880
+ }
1881
+
1882
+ .fp-CheckboxIndicator {
1883
+ display: block;
1884
+ pointer-events: none;
1885
+ position: absolute;
1886
+ top: var(--space-1);
1887
+ }
1888
+
1889
+ .fp-CheckboxCheckmark,
1890
+ .fp-CheckboxIndeterminate {
1891
+ display: none;
1892
+ }
1893
+
1894
+ .fp-CheckboxInput:checked ~ .fp-CheckboxIndicator .fp-CheckboxCheckmark {
1895
+ --color-icon: var(--figma-color-icon-onbrand);
1896
+ display: block;
1897
+ }
1898
+
1899
+ .fp-CheckboxInput:indeterminate ~ .fp-CheckboxIndicator .fp-CheckboxIndeterminate {
1900
+ --color-icon: var(--figma-color-icon);
1901
+ display: block;
1902
+ }
1903
+
1904
+ .fp-CheckboxInput:disabled:indeterminate ~ .fp-CheckboxIndicator .fp-CheckboxIndeterminate {
1905
+ --color-icon: var(--figma-color-icon-disabled);
1906
+ }
1907
+
1908
+ .fp-CheckboxLabel {
1909
+ margin-top: var(--space-1);
1910
+ }
1911
+
1912
+ .fp-CheckboxInput:disabled ~ .fp-CheckboxLabel {
1913
+ color: var(--figma-color-text-disabled);
1914
+ }
1915
+
1916
+ .fp-CheckboxDescription {
1917
+ color: var(--figma-color-text-secondary);
1918
+ grid-area: 2 / 2;
1919
+ }
1920
+ }
1921
+ @layer components {
1922
+
1923
+ .fp-RadioGroupRoot {
1924
+ display: flex;
1925
+ }
1926
+
1927
+ .fp-RadioGroupRoot[data-orientation='horizontal'] {
1928
+ gap: var(--space-5);
1929
+ }
1930
+
1931
+ .fp-RadioGroupRoot[data-orientation='vertical'] {
1932
+ flex-direction: column;
1933
+ gap: var(--space-2);
1934
+ }
1935
+
1936
+ .fp-RadioGroupItem {
1937
+ all: unset;
1938
+ box-sizing: border-box;
1939
+ display: inline-block;
1940
+ width: 16px;
1941
+ height: 16px;
1942
+ background-color: var(--figma-color-bg);
1943
+ border: 4px solid transparent;
1944
+ border-radius: var(--radius-full);
1945
+ outline-offset: -1px;
1946
+ outline: 1px solid var(--figma-color-icon);
1947
+ }
1948
+
1949
+ .fp-RadioGroupItem:focus-visible {
1950
+ outline-color: var(--figma-color-border-selected);
1951
+ }
1952
+
1953
+ .fp-RadioGroupItem[data-checked] {
1954
+ background-color: var(--figma-color-icon);
1955
+ border-color: var(--figma-color-bg);
1956
+ }
1957
+
1958
+ .fp-RadioGroupItem[data-disabled] {
1959
+ outline-color: var(--figma-color-icon-disabled);
1960
+ }
1961
+
1962
+ .fp-RadioGroupItem[data-disabled][data-checked] {
1963
+ background-color: var(--figma-color-icon-disabled);
1964
+ }
1965
+
1966
+ .fp-RadioGroupLabel {
1967
+ display: flex;
1968
+ gap: var(--space-2);
1969
+ }
1970
+
1971
+ .fp-RadioGroupLabel[data-disabled] {
1972
+ color: var(--figma-color-text-disabled);
1973
+ }
1974
+ }
1975
+ @layer components {
1976
+
1977
+ .fp-SegmentedControlRoot {
1978
+ display: inline-flex;
1979
+ background-color: var(--figma-color-bg-secondary);
1980
+ border-radius: var(--radius-medium);
1981
+ }
1982
+
1983
+ .fp-SegmentedControlRoot:where(.fp-full-width) {
1984
+ display: flex;
1985
+ }
1986
+
1987
+ .fp-SegmentedControlItem {
1988
+ all: unset;
1989
+ display: flex;
1990
+ align-items: center;
1991
+ justify-content: center;
1992
+ width: fit-content;
1993
+ flex: 1 0 auto;
1994
+ min-width: var(--space-6);
1995
+ height: var(--space-6);
1996
+ background-color: transparent;
1997
+ border-radius: var(--radius-medium);
1998
+ font-family: var(--font-family-default);
1999
+ font-size: var(--font-size-default);
2000
+ font-weight: var(--font-weight-default);
2001
+ letter-spacing: var(--letter-spacing-default);
2002
+ line-height: var(--line-height-default);
2003
+ white-space: nowrap;
2004
+ --color-icon: var(--figma-color-icon-secondary);
2005
+ }
2006
+
2007
+ .fp-SegmentedControlItem[data-pressed] {
2008
+ --color-icon: var(--figma-color-icon);
2009
+ background-color: var(--figma-color-bg);
2010
+ box-shadow: inset 0 0 0 var(--space-px) var(--figma-color-border);
2011
+ }
2012
+
2013
+ .fp-SegmentedControlItem:focus-visible {
2014
+ outline: 1px solid var(--figma-color-border-selected);
2015
+ outline-offset: -1px;
2016
+ }
2017
+
2018
+ .fp-SegmentedControlItem:disabled {
2019
+ --color-icon: var(--figma-color-icon-disabled);
2020
+ }
2021
+
2022
+ .fp-SegmentedControlText {
2023
+ display: flex;
2024
+ align-items: center;
2025
+ padding: var(--space-2);
2026
+ gap: var(--space-1_5);
2027
+ }
2028
+
2029
+ [data-disabled] .fp-SegmentedControlText {
2030
+ color: var(--figma-color-text-disabled);
2031
+ }
2032
+ }
2033
+ @layer components {
2034
+ :where(.fp-CollapsibleContent .fp-CollapsibleRoot) {
2035
+ margin-left: calc(-1 * var(--space-1));
2036
+ }
2037
+
2038
+ .fp-CollapsibleTrigger {
2039
+ all: unset;
2040
+ display: flex;
2041
+ align-items: center;
2042
+ width: 100%;
2043
+ padding: var(--space-2) 0;
2044
+ font-family: var(--font-family-default);
2045
+ font-size: var(--font-size-default);
2046
+ font-weight: var(--font-weight-default);
2047
+ letter-spacing: var(--letter-spacing-default);
2048
+ line-height: var(--line-height-default);
2049
+ color: var(--figma-color-text-secondary);
2050
+ }
2051
+
2052
+ .fp-CollapsibleIndicator {
2053
+ --color-icon: var(--figma-color-icon-secondary);
2054
+ }
2055
+
2056
+ [data-panel-open] > .fp-CollapsibleIndicator {
2057
+ transform: rotate(90deg);
2058
+ }
2059
+
2060
+ .fp-CollapsibleContent {
2061
+ margin-left: var(--space-4);
2062
+ }
2063
+ }
2064
+ @layer components {
2065
+
2066
+ .fp-ColorPickerHueSlider:where(.fp-color-model-hsv, .fp-color-model-hsl, .fp-color-model-rgb, .fp-color-model-hex) {
2067
+ --slider-track-bg: linear-gradient(
2068
+ 90deg,
2069
+ rgba(255, 0, 0, 1) calc(var(--slider-track-size) / 2),
2070
+ rgba(255, 48, 0, 1),
2071
+ rgba(255, 96, 0, 1),
2072
+ rgba(255, 143, 0, 1),
2073
+ rgba(255, 191, 0, 1),
2074
+ rgba(255, 239, 0, 1),
2075
+ rgba(223, 255, 0, 1),
2076
+ rgba(175, 255, 0, 1),
2077
+ rgba(128, 255, 0, 1),
2078
+ rgba(80, 255, 0, 1),
2079
+ rgba(32, 255, 0, 1),
2080
+ rgba(0, 255, 16, 1),
2081
+ rgba(0, 255, 64, 1),
2082
+ rgba(0, 255, 112, 1),
2083
+ rgba(0, 255, 159, 1),
2084
+ rgba(0, 255, 207, 1),
2085
+ rgba(0, 255, 255, 1),
2086
+ rgba(0, 207, 255, 1),
2087
+ rgba(0, 159, 255, 1),
2088
+ rgba(0, 112, 255, 1),
2089
+ rgba(0, 64, 255, 1),
2090
+ rgba(0, 16, 255, 1),
2091
+ rgba(32, 0, 255, 1),
2092
+ rgba(80, 0, 255, 1),
2093
+ rgba(127, 0, 255, 1),
2094
+ rgba(175, 0, 255, 1),
2095
+ rgba(223, 0, 255, 1),
2096
+ rgba(255, 0, 239, 1),
2097
+ rgba(255, 0, 191, 1),
2098
+ rgba(255, 0, 143, 1),
2099
+ rgba(255, 0, 96, 1),
2100
+ rgba(255, 0, 48, 1) calc(100% - calc(var(--slider-track-size) / 2))
2101
+ );
2102
+ }
2103
+ @supports (color: color(display-p3 1 1 1)) {
2104
+ @media (color-gamut: p3) {
2105
+
2106
+ .fp-ColorPickerHueSlider:where(.fp-color-model-hsv, .fp-color-model-hsl):where(.fp-color-space-display-p3) {
2107
+ --slider-track-bg: linear-gradient(
2108
+ 90deg,
2109
+ color(display-p3 1 0 0) calc(var(--slider-track-size) / 2),
2110
+ color(display-p3 1 0.1875 0),
2111
+ color(display-p3 1 0.375 0),
2112
+ color(display-p3 1 0.5625 0),
2113
+ color(display-p3 1 0.75 0),
2114
+ color(display-p3 1 0.9375 0),
2115
+ color(display-p3 0.875 1 0),
2116
+ color(display-p3 0.6875 1 0),
2117
+ color(display-p3 0.5 1 0),
2118
+ color(display-p3 0.3125 1 0),
2119
+ color(display-p3 0.125 1 0),
2120
+ color(display-p3 0 1 0.0625),
2121
+ color(display-p3 0 1 0.25),
2122
+ color(display-p3 0 1 0.4375),
2123
+ color(display-p3 0 1 0.625),
2124
+ color(display-p3 0 1 0.8125),
2125
+ color(display-p3 0 1 1),
2126
+ color(display-p3 0 0.8125 1),
2127
+ color(display-p3 0 0.625 1),
2128
+ color(display-p3 0 0.4375 1),
2129
+ color(display-p3 0 0.25 1),
2130
+ color(display-p3 0 0.0625 1),
2131
+ color(display-p3 0.125 0 1),
2132
+ color(display-p3 0.3125 0 1),
2133
+ color(display-p3 0.5 0 1),
2134
+ color(display-p3 0.6875 0 1),
2135
+ color(display-p3 0.875 0 1),
2136
+ color(display-p3 1 0 0.9375),
2137
+ color(display-p3 1 0 0.75),
2138
+ color(display-p3 1 0 0.5625),
2139
+ color(display-p3 1 0 0.375),
2140
+ color(display-p3 1 0 0.1875) calc(100% - calc(var(--slider-track-size) / 2))
2141
+ );
2142
+ }
2143
+ }
2144
+ }
2145
+
2146
+ .fp-ColorPickerAlphaSlider {
2147
+ --track-bg-step-1: var(--track-bg-transparent-srgb);
2148
+ --track-bg-step-2: var(--track-bg-opaque-srgb);
2149
+ --slider-thumb-bg: var(--thumb-bg-srgb);
2150
+
2151
+ --slider-track-bg: linear-gradient(
2152
+ to right,
2153
+ var(--track-bg-step-1) 0 calc(var(--slider-track-size) / 2),
2154
+ var(--track-bg-step-2) calc(100% - calc(var(--slider-track-size) / 2)) 100%
2155
+ ),
2156
+ url('data:image/svg+xml;utf8,%3Csvg%20width%3D%222%22%20height%3D%222%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200h1v2h1V1H0%22%20fill-rule%3D%22nonzero%22%20fill%3D%22%23e1e1e1%22/%3E%3C/svg%3E')
2157
+ 0 0 / auto 66.66%,
2158
+ #fff;
2159
+ }
2160
+ @supports (color: color(display-p3 1 1 1)) {
2161
+ @media (color-gamut: p3) {
2162
+
2163
+ .fp-ColorPickerAlphaSlider:where(.fp-color-space-display-p3) {
2164
+ --slider-thumb-bg: var(--thumb-bg-p3);
2165
+ --track-bg-step-1: var(--track-bg-transparent-p3);
2166
+ --track-bg-step-2: var(--track-bg-opaque-p3);
2167
+ }
2168
+ }
2169
+ }
2170
+
2171
+ .fp-ColorPickerArea {
2172
+ position: relative;
2173
+ width: 100%;
2174
+ aspect-ratio: 1 / 1;
2175
+ }
2176
+
2177
+ .fp-ColorPickerAreaCanvas {
2178
+ width: 100%;
2179
+ height: 100%;
2180
+ outline-width: 1px;
2181
+ outline-style: solid;
2182
+ outline-color: #0000001a; /*TODO: color-bordertranslucent*/
2183
+ outline-offset: -1px;
2184
+ --base-color: var(--base-color-srgb);
2185
+ --gradient-step-black: rgb(0 0 0);
2186
+ --gradient-step-black-transparent: rgb(0 0 0 / 0);
2187
+ --gradient-step-white: rgb(255 255 255);
2188
+ --gradient-step-white-transparent: rgb(255 255 255 / 0);
2189
+ --gradient-step-gray: rgb(128 128 128);
2190
+ --gradient-step-gray-transparent: rgb(128 128 128 / 0);
2191
+ }
2192
+ @supports (color: color(display-p3 1 1 1)) {
2193
+ @media (color-gamut: p3) {
2194
+
2195
+ .fp-ColorPickerAreaCanvas:where(.fp-color-space-display-p3) {
2196
+ --base-color: var(--base-color-p3);
2197
+ --gradient-step-black: color(display-p3 0 0 0);
2198
+ --gradient-step-black-transparent: color(display-p3 0 0 0 / 0);
2199
+ --gradient-step-white: color(display-p3 1 1 1);
2200
+ --gradient-step-white-transparent: color(display-p3 1 1 1 / 0);
2201
+ --gradient-step-gray: color(display-p3 0.5 0.5 0.5);
2202
+ --gradient-step-gray-transparent: color(display-p3 0.5 0.5 0.5 / 0);
2203
+ }
2204
+ }
2205
+ }
2206
+
2207
+ .fp-ColorPickerAreaCanvas:where(.fp-color-model-hsv, .fp-color-model-hex, .fp-color-model-rgb) {
2208
+ background: linear-gradient(to bottom, var(--gradient-step-black-transparent) 0%, var(--gradient-step-black) 100%),
2209
+ linear-gradient(to right, var(--gradient-step-white) 0%, var(--base-color) 100%);
2210
+ }
2211
+
2212
+ .fp-ColorPickerAreaCanvas:where(.fp-color-model-hsl) {
2213
+ background: linear-gradient(
2214
+ to bottom,
2215
+ var(--gradient-step-white) 0%,
2216
+ var(--gradient-step-white-transparent) 49.99%,
2217
+ var(--gradient-step-black-transparent) 50.01%,
2218
+ var(--gradient-step-black) 100%
2219
+ ),
2220
+ linear-gradient(to right, var(--gradient-step-gray) 0%, var(--gradient-step-gray-transparent) 100%),
2221
+ var(--base-color);
2222
+ }
2223
+
2224
+ .fp-ColorPickerThumb {
2225
+ position: absolute;
2226
+ box-sizing: border-box;
2227
+ box-shadow: var(--elevation-200);
2228
+ left: 0;
2229
+ transform: translate(-50%, -50%);
2230
+ width: 16px;
2231
+ height: 16px;
2232
+ border-radius: 8px;
2233
+ border-style: solid;
2234
+ border-width: 4px;
2235
+ border-color: white;
2236
+ background: var(--thumb-bg-srgb);
2237
+ }
2238
+
2239
+ .fp-ColorPickerThumb:focus-visible {
2240
+ outline: 1px solid var(--figma-color-border-selected);
2241
+ }
2242
+ @supports (color: color(display-p3 1 1 1)) {
2243
+ @media (color-gamut: p3) {
2244
+
2245
+ .fp-ColorPickerThumb:where(.fp-color-space-display-p3) {
2246
+ background: var(--thumb-bg-p3);
2247
+ }
2248
+ }
2249
+ }
2250
+ }
1
2251
  @theme {
2
2252
  --color-*: initial;
3
2253
 
@@ -181,15 +2431,12 @@
181
2431
  --icon-color-warning-secondary: var(--figma-color-icon-warning-secondary);
182
2432
  --icon-color-warning-tertiary: var(--figma-color-icon-warning-tertiary);
183
2433
  }
184
-
185
2434
  @utility icon-* {
186
2435
  --color-icon: --value(--icon-color-*);
187
2436
  }
188
-
189
2437
  @theme {
190
2438
  --radius-*: initial;
191
2439
  }
192
-
193
2440
  @theme inline {
194
2441
  --radius-extra-small: var(--radius-extra-small);
195
2442
  --radius-small: var(--radius-small);
@@ -197,11 +2444,9 @@
197
2444
  --radius-large: var(--radius-large);
198
2445
  --radius-full: var(--radius-full);
199
2446
  }
200
-
201
2447
  @utility rounded {
202
2448
  border-radius: var(--radius-default);
203
2449
  }
204
-
205
2450
  @theme {
206
2451
  --font-*: initial;
207
2452
  --font-weight-*: initial;
@@ -209,7 +2454,6 @@
209
2454
  --tracking-*: initial;
210
2455
  --leading-*: initial;
211
2456
  }
212
-
213
2457
  @theme inline {
214
2458
  --font-sans: var(--font-family-default);
215
2459
  --font-monospace: var(--font-family-monospace);
@@ -259,11 +2503,9 @@
259
2503
  --leading-medium: var(--line-height-3);
260
2504
  --leading-large: var(--line-height-5);
261
2505
  }
262
-
263
2506
  @theme {
264
2507
  --shadow-*: initial;
265
2508
  }
266
-
267
2509
  @theme inline {
268
2510
  --shadow-100: var(--elevation-100);
269
2511
  --shadow-200: var(--elevation-200);