figma-kit 0.0.0 → 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,1461 @@
1
+ :root {
2
+ --font-family-default: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans,
3
+ sans-serif, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif,
4
+ SFProLocalRange;
5
+ --font-family-monospace: 'Roboto Mono', monospace;
6
+ }
7
+ :root {
8
+ --space-0: 0rem;
9
+ --space-px: 0.0625rem;
10
+ --space-0_5: 0.125rem;
11
+ --space-1: 0.25rem;
12
+ --space-1_5: 0.375rem;
13
+ --space-2: 0.5rem;
14
+ --space-2_5: 0.625rem;
15
+ --space-3: 0.75rem;
16
+ --space-3_5: 0.875rem;
17
+ --space-4: 1rem;
18
+ --space-5: 1.25rem;
19
+ --space-6: 1.5rem;
20
+ --space-7: 1.75rem;
21
+ --space-8: 2rem;
22
+ --space-9: 2.25rem;
23
+ --space-10: 2.5rem;
24
+ --space-11: 2.75rem;
25
+ --space-12: 3rem;
26
+ --space-13: 3.25rem;
27
+ --space-14: 3.5rem;
28
+ --space-15: 3.75rem;
29
+ --space-16: 4rem;
30
+ }
31
+ :root {
32
+ --radius-extra-small: 0.0625rem;
33
+ --radius-small: 0.125rem;
34
+ --radius-medium: 0.3125rem;
35
+ --radius-large: 0.8125rem;
36
+ --radius-full: 9999px;
37
+ --radius-default: var(--radius-small);
38
+ }
39
+ :root {
40
+ --font-size-1: 0.5625rem;
41
+ --font-size-2: 0.625rem;
42
+ --font-size-3: 0.6875rem;
43
+ --font-size-4: 0.75rem;
44
+ --font-size-5: 0.8125rem;
45
+ --font-size-6: 0.875rem;
46
+ --font-size-7: 0.9375rem;
47
+ --font-size-8: 1rem;
48
+ --font-size-9: 1.25rem;
49
+ --font-size-10: 1.5rem;
50
+ --font-size-default: var(--font-size-3);
51
+ }
52
+ :root {
53
+ --font-weight-default: 450;
54
+ --font-weight-strong: 550;
55
+ }
56
+ :root {
57
+ --line-height-1: 0.875rem;
58
+ --line-height-2: 0.875rem;
59
+ --line-height-3: 1rem;
60
+ --line-height-4: 1rem;
61
+ --line-height-5: 1.375rem;
62
+ --line-height-6: 1.5rem;
63
+ --line-height-7: 1.5625rem;
64
+ --line-height-8: 1.5625rem;
65
+ --line-height-9: 2rem;
66
+ --line-height-10: 2rem;
67
+ --line-height-default: var(--line-height-3);
68
+ }
69
+ :root {
70
+ --letter-spacing-1: 0.00281rem;
71
+ --letter-spacing-2: 0.00625rem;
72
+ --letter-spacing-3: 0.00344rem;
73
+ --letter-spacing-4: 0;
74
+ --letter-spacing-5: -0.002rem;
75
+ --letter-spacing-6: -0.00525rem;
76
+ --letter-spacing-7: -0.00469rem;
77
+ --letter-spacing-8: -0.011rem;
78
+ --letter-spacing-9: -0.013812rem;
79
+ --letter-spacing-10: -0.0255rem;
80
+ --letter-spacing-default: var(--letter-spacing-3);
81
+ }
82
+ :root {
83
+ --elevation-100: 0px 0px 0.5px rgba(0, 0, 0, 0.3), 0px 1px 3px rgba(0, 0, 0, 0.15);
84
+ --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);
85
+ --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);
86
+ --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);
87
+ --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);
88
+ }
89
+ .dark,
90
+ .dark-theme {
91
+ --elevation-100: 0px 0px 0.5px rgba(0, 0, 0, 0.5), 0px 1px 3px rgba(0, 0, 0, 0.4),
92
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.1), inset 0px 0px 0.5px rgba(255, 255, 255, 0.3);
93
+
94
+ --elevation-200: 0px 3px 8px rgba(0, 0, 0, 0.35), 0px 1px 3px rgba(0, 0, 0, 0.5),
95
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.08), inset 0px 0px 0.5px rgba(255, 255, 255, 0.3);
96
+
97
+ --elevation-300: 0px 5px 12px rgba(0, 0, 0, 0.35), 0px 1px 3px rgba(0, 0, 0, 0.5),
98
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.08), inset 0px 0px 0.5px rgba(255, 255, 255, 0.3);
99
+
100
+ --elevation-400: 0px 10px 16px rgba(0, 0, 0, 0.35), 0px 2px 5px rgba(0, 0, 0, 0.35),
101
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.08), inset 0px 0px 0.5px rgba(255, 255, 255, 0.35);
102
+
103
+ --elevation-500: 0px 10px 24px rgba(0, 0, 0, 0.45), 0px 3px 5px rgba(0, 0, 0, 0.35),
104
+ inset 0px 0.5px 0px rgba(255, 255, 255, 0.08), inset 0px 0px 0.5px rgba(255, 255, 255, 0.35);
105
+ }
106
+ :root {
107
+ --color-bg-menu: #1e1e1e;
108
+ --color-bg-menu-hover: #2c2c2c;
109
+ --color-bg-menu-selected: var(--figma-color-bg-selected-strong);
110
+ --color-border-menu: #383838;
111
+ --color-text-menu: var(--figma-color-text-oncomponent);
112
+ --color-text-menu-secondary: var(--figma-color-text-oncomponent-secondary);
113
+ --color-text-menu-tertiary: var(--figma-color-text-oncomponent-tertiary);
114
+ --color-icon-menu: var(--figma-color-icon-oncomponent);
115
+ --shadow-menu: var(--elevation-400);
116
+ --font-size-menu: 12px;
117
+
118
+ --color-bg-tooltip: #1e1e1e;
119
+ --color-text-tooltip: #fff;
120
+ --shadow-tooltip: var(--elevation-300);
121
+
122
+ --color-overlay-dialog: #00000080;
123
+
124
+ /* Aliased for brevity when using in icon attributes */
125
+ --color-icon: var(--figma-color-icon);
126
+ --color-icon-secondary: var(--figma-color-icon-secondary);
127
+ --color-icon-tertiary: var(--figma-color-icon-tertiary);
128
+ }
129
+ .fp-Flex {
130
+ display: flex;
131
+ }
132
+ .fp-Flex:where(.fp-direction-row) {
133
+ flex-direction: row;
134
+ }
135
+ .fp-Flex:where(.fp-direction-column) {
136
+ flex-direction: column;
137
+ }
138
+ .fp-Flex:where(.fp-direction-row-reverse) {
139
+ flex-direction: row-reverse;
140
+ }
141
+ .fp-Flex:where(.fp-direction-column-reverse) {
142
+ flex-direction: column-reverse;
143
+ }
144
+ .fp-Flex:where(.fp-align-start) {
145
+ align-items: flex-start;
146
+ }
147
+ .fp-Flex:where(.fp-align-center) {
148
+ align-items: center;
149
+ }
150
+ .fp-Flex:where(.fp-align-end) {
151
+ align-items: flex-end;
152
+ }
153
+ .fp-Flex:where(.fp-align-baseline) {
154
+ align-items: baseline;
155
+ }
156
+ .fp-Flex:where(.fp-align-stretch) {
157
+ align-items: stretch;
158
+ }
159
+ /* Justify Classes */
160
+ .fp-Flex:where(.fp-justify-start) {
161
+ justify-content: flex-start;
162
+ }
163
+ .fp-Flex:where(.fp-justify-center) {
164
+ justify-content: center;
165
+ }
166
+ .fp-Flex:where(.fp-justify-end) {
167
+ justify-content: flex-end;
168
+ }
169
+ .fp-Flex:where(.fp-justify-between) {
170
+ justify-content: space-between;
171
+ }
172
+ .fp-Flex:where(.fp-wrap-nowrap) {
173
+ flex-wrap: nowrap;
174
+ }
175
+ .fp-Flex:where(.fp-wrap-wrap) {
176
+ flex-wrap: wrap;
177
+ }
178
+ .fp-Flex:where(.fp-wrap-wrap-reverse) {
179
+ flex-wrap: wrap-reverse;
180
+ }
181
+ .fp-Flex:where(.fp-gap-0) {
182
+ gap: var(--space-0);
183
+ }
184
+ .fp-Flex:where(.fp-gap-px) {
185
+ gap: var(--space-px);
186
+ }
187
+ .fp-Flex:where(.fp-gap-0_5) {
188
+ gap: var(--space-0_5);
189
+ }
190
+ .fp-Flex:where(.fp-gap-1) {
191
+ gap: var(--space-1);
192
+ }
193
+ .fp-Flex:where(.fp-gap-1_5) {
194
+ gap: var(--space-1_5);
195
+ }
196
+ .fp-Flex:where(.fp-gap-2) {
197
+ gap: var(--space-2);
198
+ }
199
+ .fp-Flex:where(.fp-gap-2_5) {
200
+ gap: var(--space-2_5);
201
+ }
202
+ .fp-Flex:where(.fp-gap-3) {
203
+ gap: var(--space-3);
204
+ }
205
+ .fp-Flex:where(.fp-gap-3_5) {
206
+ gap: var(--space-3_5);
207
+ }
208
+ .fp-Flex:where(.fp-gap-4) {
209
+ gap: var(--space-4);
210
+ }
211
+ .fp-Flex:where(.fp-gap-5) {
212
+ gap: var(--space-5);
213
+ }
214
+ .fp-Flex:where(.fp-gap-6) {
215
+ gap: var(--space-6);
216
+ }
217
+ .fp-Flex:where(.fp-gap-7) {
218
+ gap: var(--space-7);
219
+ }
220
+ .fp-Flex:where(.fp-gap-8) {
221
+ gap: var(--space-8);
222
+ }
223
+ .fp-Flex:where(.fp-gap-9) {
224
+ gap: var(--space-9);
225
+ }
226
+ .fp-Flex:where(.fp-gap-10) {
227
+ gap: var(--space-10);
228
+ }
229
+ .fp-Flex:where(.fp-gap-11) {
230
+ gap: var(--space-11);
231
+ }
232
+ .fp-Flex:where(.fp-gap-12) {
233
+ gap: var(--space-12);
234
+ }
235
+ .fp-Flex:where(.fp-gap-13) {
236
+ gap: var(--space-13);
237
+ }
238
+ .fp-Flex:where(.fp-gap-14) {
239
+ gap: var(--space-14);
240
+ }
241
+ .fp-Flex:where(.fp-gap-15) {
242
+ gap: var(--space-15);
243
+ }
244
+ .fp-Flex:where(.fp-gap-16) {
245
+ gap: var(--space-16);
246
+ }
247
+ /* Row Gap Classes */
248
+ .fp-Flex:where(.fp-rowGap-0) {
249
+ row-gap: var(--space-0);
250
+ }
251
+ .fp-Flex:where(.fp-rowGap-px) {
252
+ row-gap: var(--space-px);
253
+ }
254
+ .fp-Flex:where(.fp-rowGap-0_5) {
255
+ row-gap: var(--space-0_5);
256
+ }
257
+ .fp-Flex:where(.fp-rowGap-1) {
258
+ row-gap: var(--space-1);
259
+ }
260
+ .fp-Flex:where(.fp-rowGap-1_5) {
261
+ row-gap: var(--space-1_5);
262
+ }
263
+ .fp-Flex:where(.fp-rowGap-2) {
264
+ row-gap: var(--space-2);
265
+ }
266
+ .fp-Flex:where(.fp-rowGap-2_5) {
267
+ row-gap: var(--space-2_5);
268
+ }
269
+ .fp-Flex:where(.fp-rowGap-3) {
270
+ row-gap: var(--space-3);
271
+ }
272
+ .fp-Flex:where(.fp-rowGap-3_5) {
273
+ row-gap: var(--space-3_5);
274
+ }
275
+ .fp-Flex:where(.fp-rowGap-4) {
276
+ row-gap: var(--space-4);
277
+ }
278
+ .fp-Flex:where(.fp-rowGap-5) {
279
+ row-gap: var(--space-5);
280
+ }
281
+ .fp-Flex:where(.fp-rowGap-6) {
282
+ row-gap: var(--space-6);
283
+ }
284
+ .fp-Flex:where(.fp-rowGap-7) {
285
+ row-gap: var(--space-7);
286
+ }
287
+ .fp-Flex:where(.fp-rowGap-8) {
288
+ row-gap: var(--space-8);
289
+ }
290
+ .fp-Flex:where(.fp-rowGap-9) {
291
+ row-gap: var(--space-9);
292
+ }
293
+ .fp-Flex:where(.fp-rowGap-10) {
294
+ row-gap: var(--space-10);
295
+ }
296
+ .fp-Flex:where(.fp-rowGap-11) {
297
+ row-gap: var(--space-11);
298
+ }
299
+ .fp-Flex:where(.fp-rowGap-12) {
300
+ row-gap: var(--space-12);
301
+ }
302
+ .fp-Flex:where(.fp-rowGap-13) {
303
+ row-gap: var(--space-13);
304
+ }
305
+ .fp-Flex:where(.fp-rowGap-14) {
306
+ row-gap: var(--space-14);
307
+ }
308
+ .fp-Flex:where(.fp-rowGap-15) {
309
+ row-gap: var(--space-15);
310
+ }
311
+ .fp-Flex:where(.fp-rowGap-16) {
312
+ row-gap: var(--space-16);
313
+ }
314
+ .fp-Flex:where(.fp-columnGap-0) {
315
+ column-gap: var(--space-0);
316
+ }
317
+ .fp-Flex:where(.fp-columnGap-px) {
318
+ column-gap: var(--space-px);
319
+ }
320
+ .fp-Flex:where(.fp-columnGap-0_5) {
321
+ column-gap: var(--space-0_5);
322
+ }
323
+ .fp-Flex:where(.fp-columnGap-1) {
324
+ column-gap: var(--space-1);
325
+ }
326
+ .fp-Flex:where(.fp-columnGap-1_5) {
327
+ column-gap: var(--space-1_5);
328
+ }
329
+ .fp-Flex:where(.fp-columnGap-2) {
330
+ column-gap: var(--space-2);
331
+ }
332
+ .fp-Flex:where(.fp-columnGap-2_5) {
333
+ column-gap: var(--space-2_5);
334
+ }
335
+ .fp-Flex:where(.fp-columnGap-3) {
336
+ column-gap: var(--space-3);
337
+ }
338
+ .fp-Flex:where(.fp-columnGap-3_5) {
339
+ column-gap: var(--space-3_5);
340
+ }
341
+ .fp-Flex:where(.fp-columnGap-4) {
342
+ column-gap: var(--space-4);
343
+ }
344
+ .fp-Flex:where(.fp-columnGap-5) {
345
+ column-gap: var(--space-5);
346
+ }
347
+ .fp-Flex:where(.fp-columnGap-6) {
348
+ column-gap: var(--space-6);
349
+ }
350
+ .fp-Flex:where(.fp-columnGap-7) {
351
+ column-gap: var(--space-7);
352
+ }
353
+ .fp-Flex:where(.fp-columnGap-8) {
354
+ column-gap: var(--space-8);
355
+ }
356
+ .fp-Flex:where(.fp-columnGap-9) {
357
+ column-gap: var(--space-9);
358
+ }
359
+ .fp-Flex:where(.fp-columnGap-10) {
360
+ column-gap: var(--space-10);
361
+ }
362
+ .fp-Flex:where(.fp-columnGap-11) {
363
+ column-gap: var(--space-11);
364
+ }
365
+ .fp-Flex:where(.fp-columnGap-12) {
366
+ column-gap: var(--space-12);
367
+ }
368
+ .fp-Flex:where(.fp-columnGap-13) {
369
+ column-gap: var(--space-13);
370
+ }
371
+ .fp-Flex:where(.fp-columnGap-14) {
372
+ column-gap: var(--space-14);
373
+ }
374
+ .fp-Flex:where(.fp-columnGap-15) {
375
+ column-gap: var(--space-15);
376
+ }
377
+ .fp-Flex:where(.fp-columnGap-16) {
378
+ column-gap: var(--space-16);
379
+ }
380
+ .fp-Text {
381
+ margin: 0;
382
+ font-family: var(--font-family-default);
383
+ color: var(--figma-color-text);
384
+ font-size: var(--font-size, var(--font-size-default));
385
+ line-height: var(--line-height, var(--line-height-3));
386
+ letter-spacing: var(--letter-spacing, var(--letter-spacing-3));
387
+ font-weight: var(--font-weight, var(--font-weight-default));
388
+
389
+ /**
390
+ Use custom properties to avoid specificy issues when nesting Text.
391
+ Nested Text components inherit properties of the parent Text, unless customized.
392
+ At the same time, Text falls back to default values without requiring :root level styling. */
393
+ }
394
+ .fp-Text:where(.fp-size-small) {
395
+ --font-size: var(--font-size-1);
396
+ --line-height: var(--line-height-1);
397
+ --letter-spacing: var(--letter-spacing-1);
398
+ }
399
+ .fp-Text:where(.fp-size-medium) {
400
+ --font-size: var(--font-size-3);
401
+ --line-height: var(--line-height-3);
402
+ --letter-spacing: --letter-spacing-3;
403
+ }
404
+ .fp-Text:where(.fp-size-large) {
405
+ --font-size: var(--font-size-5);
406
+ --line-height: var(--line-height-5);
407
+ --letter-spacing: var(--letter-spacing-5);
408
+ }
409
+ .fp-Text:where(.fp-weight-default) {
410
+ --font-weight: var(--font-weight-default);
411
+ }
412
+ .fp-Text:where(.fp-weight-strong) {
413
+ --font-weight: var(--font-weight-strong);
414
+ }
415
+ .fp-Text:where(.fp-align-start) {
416
+ text-align: start;
417
+ }
418
+ .fp-Text:where(.fp-align-center) {
419
+ text-align: center;
420
+ }
421
+ .fp-Text:where(.fp-align-end) {
422
+ text-align: end;
423
+ }
424
+ .fp-Text:where(.fp-block) {
425
+ display: block;
426
+ }
427
+ .fp-Text strong {
428
+ font-weight: var(--font-weight-strong);
429
+ }
430
+ .fp-Text code {
431
+ font-family: var(--font-family-monospace);
432
+ font-size: var(var(--font-size-2));
433
+ background-color: var(--figma-color-bg-brand-tertiary);
434
+ padding: 0.05rem 0.15rem;
435
+ border-radius: var(--radius-extra-small);
436
+ }
437
+ .fp-Text mark {
438
+ background-color: var(--figma-color-bg-onselected);
439
+ }
440
+ .fp-Link {
441
+ color: var(--figma-color-text-brand);
442
+ text-decoration: none;
443
+ }
444
+ .fp-Link:focus-visible {
445
+ outline: 1px solid var(--figma-color-border-selected-strong);
446
+ }
447
+ .fp-Icon {
448
+ display: block;
449
+ flex-shrink: 0;
450
+ pointer-events: none;
451
+ }
452
+ .fp-Icon:where(.fp-size-1) {
453
+ width: var(--space-1);
454
+ }
455
+ .fp-Icon:where(.fp-size-2) {
456
+ width: var(--space-2);
457
+ }
458
+ .fp-Icon:where(.fp-size-2_5) {
459
+ width: var(--space-2_5);
460
+ }
461
+ .fp-Icon:where(.fp-size-3) {
462
+ width: var(--space-3);
463
+ }
464
+ .fp-Icon:where(.fp-size-3_5) {
465
+ width: var(--space-3_5);
466
+ }
467
+ .fp-Icon:where(.fp-size-4) {
468
+ width: var(--space-4);
469
+ }
470
+ .fp-Icon:where(.fp-size-5) {
471
+ width: var(--space-5);
472
+ }
473
+ .fp-Icon:where(.fp-size-6) {
474
+ width: var(--space-6);
475
+ }
476
+ .fp-Icon:where(.fp-size-7) {
477
+ width: var(--space-7);
478
+ }
479
+ .fp-Icon:where(.fp-size-8) {
480
+ width: var(--space-8);
481
+ }
482
+ .fp-Icon:where(.fp-size-9) {
483
+ width: var(--space-9);
484
+ }
485
+ .fp-Icon:where(.fp-size-10) {
486
+ width: var(--space-10);
487
+ }
488
+ .fp-Input {
489
+ all: unset;
490
+ box-sizing: border-box;
491
+ display: block;
492
+ width: 100%;
493
+ height: var(--space-6);
494
+ padding: var(--space-1) 0 var(--space-1) var(--space-2);
495
+ background-color: var(--figma-color-bg-secondary);
496
+ border-radius: var(--radius-medium);
497
+ font-family: var(--font-family-default);
498
+ font-size: var(--font-size-default);
499
+ font-weight: var(--font-weight-default);
500
+ letter-spacing: var(--letter-spacing-default);
501
+ line-height: var(--line-height-default);
502
+ color: var(--figma-color-text);
503
+ outline-width: 1px;
504
+ outline-style: solid;
505
+ outline-offset: -1px;
506
+ outline-color: transparent;
507
+ }
508
+ .fp-Input:hover:where(:not(:disabled, :focus)) {
509
+ outline-color: var(--figma-color-border);
510
+ }
511
+ .fp-Input:focus {
512
+ outline-color: var(--figma-color-border-selected);
513
+ }
514
+ .fp-Input:disabled {
515
+ background-color: var(--figma-color-bg);
516
+ outline-color: var(--figma-color-border-disabled);
517
+ color: var(--figma-color-text-disabled);
518
+ }
519
+ .fp-Input::placeholder {
520
+ color: var(--figma-color-text-tertiary);
521
+ }
522
+ .fp-ValueFieldRoot {
523
+ box-sizing: border-box;
524
+ display: flex;
525
+ align-items: center;
526
+ border-radius: var(--radius-medium);
527
+ padding: 0 1px;
528
+ background-color: var(--figma-color-bg-secondary);
529
+ font-family: var(--font-family-default);
530
+ font-size: var(--font-size-default);
531
+ font-weight: var(--font-weight-default);
532
+ letter-spacing: var(--letter-spacing-default);
533
+ line-height: var(--line-height-default);
534
+ outline-width: 1px;
535
+ outline-style: solid;
536
+ outline-offset: -1px;
537
+ outline-color: transparent;
538
+ }
539
+ .fp-ValueFieldRoot:hover:where(:not([data-disabled])) {
540
+ outline-color: var(--figma-color-border);
541
+ }
542
+ .fp-ValueFieldRoot:focus-within {
543
+ outline-color: var(--figma-color-border-selected);
544
+ }
545
+ .fp-ValueFieldRoot[data-disabled] {
546
+ background-color: var(--figma-color-bg);
547
+ outline-color: var(--figma-color-border-disabled);
548
+ color: var(--figma-color-text-disabled);
549
+ }
550
+ .fp-ValueFieldRoot .fp-ValueFieldBase {
551
+ cursor: default;
552
+ outline: 0;
553
+ }
554
+ .fp-ValueFieldLabel {
555
+ display: flex;
556
+ align-items: center;
557
+ justify-content: center;
558
+ align-self: stretch;
559
+ flex-shrink: 0;
560
+ color: var(--figma-color-text-secondary);
561
+ --color-icon: var(--figma-color-icon-secondary);
562
+ height: var(--space-6);
563
+ width: var(--space-6);
564
+
565
+ /* Usually used for suffixes.
566
+ TODO: Replace with a variant. */
567
+ }
568
+ .fp-ValueFieldLabel:last-child {
569
+ width: var(--space-5);
570
+ }
571
+ .fp-ValueFieldLabel + .fp-ValueFieldBase {
572
+ padding-left: 0;
573
+ }
574
+ .fp-ValueFieldLabel[data-disabled] {
575
+ color: var(--figma-color-text-disabled);
576
+ --color-icon: var(--figma-color-icon-disabled);
577
+ }
578
+ .fp-ValueFieldMulti {
579
+ display: flex;
580
+ border-radius: var(--radius-medium);
581
+ outline-offset: -1px;
582
+ box-sizing: border-box;
583
+ border: 1px solid transparent;
584
+ height: var(--space-6);
585
+ background-color: var(--figma-color-bg-secondary);
586
+ }
587
+ .fp-ValueFieldMulti:hover:where(:not([data-disabled])) {
588
+ border: 1px solid var(--figma-color-border);
589
+ }
590
+ .fp-ValueFieldMulti:focus-within {
591
+ outline: 1px solid var(--figma-color-border-selected);
592
+ }
593
+ .fp-ValueFieldMulti[data-disabled] {
594
+ border: 1px solid var(--figma-color-border-disabled);
595
+ background-color: var(--figma-color-bg);
596
+ }
597
+ .fp-ValueFieldMulti .fp-ValueFieldRoot {
598
+ height: var(--space-6);
599
+ flex-grow: 1;
600
+ outline: 0;
601
+ border-radius: 0;
602
+ background-color: transparent;
603
+ margin-top: -1px;
604
+ }
605
+ .fp-ValueFieldMulti .fp-ValueFieldRoot:not(:first-child) {
606
+ border-left: 1px solid var(--figma-color-bg);
607
+ }
608
+ .fp-ValueFieldMulti .fp-ValueFieldRoot:first-child {
609
+ border-top-left-radius: var(--radius-medium);
610
+ border-bottom-left-radius: var(--radius-medium);
611
+ }
612
+ .fp-ValueFieldMulti .fp-ValueFieldRoot:last-child {
613
+ border-top-right-radius: var(--radius-medium);
614
+ border-bottom-right-radius: var(--radius-medium);
615
+ }
616
+ .fp-ValueFieldMulti .fp-ValueFieldBase {
617
+ background-color: transparent;
618
+ padding-left: calc(var(--space-2) - 1px);
619
+ }
620
+ .fp-tooltip {
621
+ box-sizing: border-box;
622
+ padding: var(--space-1) var(--space-2);
623
+ background-color: var(--color-bg-tooltip);
624
+ font-family: var(--font-family-default);
625
+ font-size: var(--font-size-default);
626
+ font-weight: var(--font-weight-default);
627
+ letter-spacing: var(--letter-spacing-default);
628
+ line-height: var(--line-height-default);
629
+ min-height: var(--space-6);
630
+ color: var(--color-text-tooltip);
631
+ white-space: pre-wrap;
632
+ word-break: break-word;
633
+ border-radius: var(--radius-medium);
634
+ box-shadow: var(--elevation-300, 0 2px 7px rgba(0, 0, 0, 0.15));
635
+ }
636
+ .fp-tooltip-arrow {
637
+ fill: var(--color-bg-tooltip);
638
+ width: var(--space-3_5);
639
+ height: var(--space-1_5);
640
+ position: relative;
641
+ bottom: 1px;
642
+ }
643
+ .fp-textarea {
644
+ all: unset;
645
+ box-sizing: border-box;
646
+ display: block;
647
+ width: 100%;
648
+ height: var(--space-6);
649
+ padding: var(--space-1) var(--space-2);
650
+ background-color: var(--figma-color-bg-secondary);
651
+ border-radius: var(--radius-medium);
652
+ font-family: var(--font-family-default);
653
+ font-size: var(--font-size-default);
654
+ font-weight: var(--font-weight-default);
655
+ letter-spacing: var(--letter-spacing-default);
656
+ line-height: var(--line-height-default);
657
+ color: var(--figma-color-text);
658
+ outline-width: 1px;
659
+ outline-style: solid;
660
+ outline-offset: -1px;
661
+ outline-color: transparent;
662
+ resize: none;
663
+ word-break: break-word;
664
+ }
665
+ .fp-textarea:hover:where(:not(:disabled, :focus)) {
666
+ outline-color: var(--figma-color-border);
667
+ }
668
+ .fp-textarea:focus {
669
+ outline-color: var(--figma-color-border-selected);
670
+ }
671
+ .fp-textarea:disabled {
672
+ background-color: var(--figma-color-bg);
673
+ outline-color: var(--figma-color-border-disabled);
674
+ color: var(--figma-color-text-disabled);
675
+ }
676
+ .fp-textarea::placeholder {
677
+ color: var(--figma-color-text-tertiary);
678
+ }
679
+ .fp-MenuContent {
680
+ box-sizing: border-box;
681
+ -webkit-font-smoothing: antialiased;
682
+ -moz-osx-font-smoothing: grayscale;
683
+ cursor: default;
684
+ padding: var(--space-2);
685
+ background-color: var(--color-bg-menu);
686
+ border-radius: var(--radius-large);
687
+ font-size: var(--font-size-menu);
688
+ font-family: var(--font-family-default);
689
+ font-weight: var(--font-weight-default);
690
+ letter-spacing: var(--letter-spacing-default);
691
+ color: var(--color-text-menu);
692
+ box-shadow: var(--elevation-400);
693
+ }
694
+ .fp-MenuItem {
695
+ position: relative;
696
+ display: flex;
697
+ align-items: center;
698
+ height: var(--space-6);
699
+ padding: 0 var(--space-2);
700
+ color: var(--color-text-menu);
701
+ line-height: 1rem;
702
+ white-space: nowrap;
703
+ border-radius: var(--radius-medium);
704
+ }
705
+ .fp-MenuItem[data-highlighted] {
706
+ outline: 0;
707
+ background-color: var(--color-bg-menu-selected);
708
+ }
709
+ .fp-MenuItem[data-disabled] {
710
+ color: var(--color-text-menu-tertiary);
711
+ }
712
+ .fp-MenuSeparator {
713
+ margin: var(--space-2) 0;
714
+ height: 1px;
715
+ background-color: var(--color-border-menu);
716
+ }
717
+ .fp-MenuLabel {
718
+ display: flex;
719
+ align-items: center;
720
+ height: var(--space-6);
721
+ padding: 0 var(--space-4);
722
+ color: var(--color-text-menu-tertiary);
723
+ }
724
+ .fp-MenuLabel:where(.fp-MenuContent:has(.fp-MenuCheckboxItem, .fp-MenuRadioItem) .fp-MenuLabel) {
725
+ padding-left: var(--space-6);
726
+ }
727
+ .fp-MenuGroup {
728
+ padding: var(--space-2) 0;
729
+ }
730
+ .fp-MenuGroup:first-child {
731
+ padding-top: 0;
732
+ }
733
+ .fp-MenuGroup:last-child {
734
+ padding-bottom: 0;
735
+ }
736
+ .fp-MenuGroup:not(:first-child) {
737
+ border-top: 1px solid var(--color-border-menu);
738
+ }
739
+ .fp-MenuSubtriggerCaret {
740
+ margin-left: auto;
741
+ margin-right: calc(-1 * var(--space-2));
742
+ padding-left: var(--space-6);
743
+ --color-icon: var(--color-icon-menu);
744
+ }
745
+ .fp-MenuCheckboxItem,
746
+ .fp-MenuRadioItem {
747
+ padding-left: var(--space-6);
748
+ }
749
+ .fp-MenuItemIndicator {
750
+ position: absolute;
751
+ left: var(--space-1);
752
+ --color-icon: var(--color-icon-menu);
753
+ }
754
+ .fp-SelectTrigger {
755
+ all: unset;
756
+ appearance: none;
757
+ box-sizing: border-box;
758
+ display: flex;
759
+ align-items: center;
760
+ gap: var(--space-1);
761
+ width: 100%;
762
+ padding: 0 0 0 var(--space-2);
763
+ height: var(--space-6);
764
+ border: 1px solid var(--figma-color-border);
765
+ border-radius: var(--radius-medium);
766
+ font-family: var(--font-family-default);
767
+ font-size: var(--font-size-default);
768
+ font-weight: var(--font-weight-default);
769
+ letter-spacing: var(--letter-spacing-default);
770
+ color: var(--figma-color-text);
771
+ }
772
+ .fp-SelectTriggerIcon {
773
+ margin-left: auto;
774
+ }
775
+ .fp-SelectScrollUpButton,
776
+ .fp-SelectScrollDownButton {
777
+ position: absolute;
778
+ left: 0;
779
+ right: 0;
780
+ z-index: 1;
781
+ display: flex;
782
+ align-items: center;
783
+ justify-content: center;
784
+ height: var(--space-6);
785
+ background-color: var(--color-bg-menu);
786
+ --color-icon: var(--color-icon-menu);
787
+ }
788
+ .fp-SelectScrollUpButton:hover, .fp-SelectScrollDownButton:hover {
789
+ background-color: var(--color-bg-menu-hover);
790
+ }
791
+ .fp-SelectScrollUpButton {
792
+ top: 0;
793
+ border-radius: var(--radius-large) var(--radius-large) 0 0;
794
+ }
795
+ .fp-SelectScrollDownButton {
796
+ bottom: 0;
797
+ border-radius: 0 0 var(--radius-large) var(--radius-large);
798
+ }
799
+ .fp-Button {
800
+ box-sizing: border-box;
801
+ background-clip: border-box;
802
+ background-color: transparent;
803
+ user-select: none;
804
+ appearance: none;
805
+ border: 0;
806
+ cursor: default;
807
+ display: flex;
808
+ align-items: center;
809
+ justify-content: center;
810
+ flex-shrink: 0;
811
+ width: fit-content;
812
+ outline-width: 1px;
813
+ outline-offset: -1px;
814
+ outline-style: solid;
815
+ outline-color: transparent;
816
+ font-family: var(--font-family-default);
817
+ font-size: var(--font-size-default);
818
+ font-weight: var(--font-weight-default);
819
+ letter-spacing: var(--letter-spacing-default);
820
+ line-height: var(--line-height-default);
821
+ border-radius: var(--radius-medium);
822
+ }
823
+ .fp-Button:where(.fp-variant-secondary) {
824
+ --button-color-bg: transparent;
825
+ --button-color-border: var(--figma-color-text);
826
+ --button-color-text: var(--figma-color-border);
827
+ }
828
+ .fp-Button:where(.fp-variant-secondary) {
829
+ color: var(--figma-color-text);
830
+ outline-color: var(--figma-color-border);
831
+ }
832
+ .fp-Button:where(.fp-variant-secondary):active {
833
+ background-color: var(--figma-color-bg-pressed);
834
+ }
835
+ .fp-Button:where(.fp-variant-secondary):focus-visible {
836
+ outline-color: var(--figma-color-border-selected);
837
+ }
838
+ .fp-Button:where(.fp-variant-secondary):disabled {
839
+ color: var(--figma-color-text-disabled);
840
+ outline-color: var(--figma-color-border-disabled);
841
+ }
842
+ .fp-Button:where(.fp-variant-primary) {
843
+ background-color: var(--figma-color-bg-brand);
844
+ color: var(--figma-color-text-onbrand);
845
+ }
846
+ .fp-Button:where(.fp-variant-primary):active {
847
+ background-color: var(--figma-color-bg-brand-pressed);
848
+ }
849
+ .fp-Button:where(.fp-variant-primary):focus-visible {
850
+ outline-color: var(--figma-color-border-onbrand-strong);
851
+ box-shadow: 0 0 0 1px var(--figma-color-border-selected-strong);
852
+ }
853
+ .fp-Button:where(.fp-variant-primary):disabled {
854
+ color: var(--figma-color-text-ondisabled);
855
+ background-color: var(--figma-color-bg-disabled);
856
+ }
857
+ .fp-Button:where(.fp-variant-destructive) {
858
+ background-color: var(--figma-color-bg-danger);
859
+ color: var(--figma-color-text-ondanger);
860
+ }
861
+ .fp-Button:where(.fp-variant-destructive):active {
862
+ background-color: var(--figma-color-bg-danger-pressed);
863
+ }
864
+ .fp-Button:where(.fp-variant-destructive):focus-visible {
865
+ outline-color: var(--figma-color-border-ondanger-strong);
866
+ box-shadow: 0 0 0 1px var(--figma-color-border-danger-strong);
867
+ }
868
+ .fp-Button:where(.fp-variant-destructive):disabled {
869
+ color: var(--figma-color-text-ondisabled);
870
+ background-color: var(--figma-color-bg-disabled);
871
+ }
872
+ .fp-Button:where(.fp-variant-success) {
873
+ background-color: var(--figma-color-bg-success);
874
+ color: var(--figma-color-text-onsuccess);
875
+ }
876
+ .fp-Button:where(.fp-variant-success):active {
877
+ background-color: var(--figma-color-bg-success-pressed);
878
+ }
879
+ .fp-Button:where(.fp-variant-success):focus-visible {
880
+ outline-color: var(--figma-color-border-onbrand-strong);
881
+ box-shadow: 0 0 0 1px var(--figma-color-border-success-strong);
882
+ }
883
+ .fp-Button:where(.fp-variant-success):disabled {
884
+ color: var(--figma-color-text-ondisabled);
885
+ background-color: var(--figma-color-bg-disabled);
886
+ }
887
+ .fp-Button:where(.fp-variant-inverse) {
888
+ background-color: var(--figma-color-bg-inverse);
889
+ color: var(--figma-color-text-oninverse);
890
+ font-weight: 400;
891
+ }
892
+ .fp-Button:where(.fp-variant-inverse):active {
893
+ background-color: var(--figma-color-bg-brand-pressed);
894
+ }
895
+ .fp-Button:where(.fp-variant-inverse):focus-visible {
896
+ outline-color: var(--figma-color-border-onbrand-strong);
897
+ box-shadow: 0 0 0 1px var(--figma-color-border-selected);
898
+ }
899
+ .fp-Button:where(.fp-variant-inverse):disabled {
900
+ color: var(--figma-color-text-ondisabled);
901
+ background-color: var(--figma-color-bg-disabled);
902
+ }
903
+ .fp-Button:where(.fp-variant-text) {
904
+ background-color: transparent;
905
+ outline-color: transparent;
906
+ color: var(--figma-color-text);
907
+ }
908
+ .fp-Button:where(.fp-variant-text):hover {
909
+ background-color: var(--figma-color-bg-hover);
910
+ }
911
+ .fp-Button:where(.fp-variant-text):active {
912
+ background-color: var(--figma-color-bg-pressed);
913
+ }
914
+ .fp-Button:where(.fp-variant-text):focus-visible {
915
+ outline-color: var(--figma-color-border-selected);
916
+ }
917
+ .fp-Button:where(.fp-variant-text):disabled {
918
+ color: var(--figma-color-text-disabled);
919
+ outline-color: var(--figma-color-border-disabled);
920
+ }
921
+ .fp-Button:where(.fp-full-width) {
922
+ width: 100%;
923
+ max-width: 100%;
924
+ }
925
+ .fp-Button:where(.fp-size-small) {
926
+ height: var(--space-6);
927
+ padding: var(--space-1) var(--space-2);
928
+ }
929
+ .fp-Button:where(.fp-size-medium) {
930
+ height: var(--space-8);
931
+ padding: var(--space-2) var(--space-3);
932
+ }
933
+ .fp-IconButton {
934
+ box-sizing: border-box;
935
+ background-clip: border-box;
936
+ background-color: transparent;
937
+ user-select: none;
938
+ appearance: none;
939
+ border: 0;
940
+ padding: 0;
941
+ cursor: default;
942
+ display: flex;
943
+ align-items: center;
944
+ justify-content: center;
945
+ flex-shrink: 0;
946
+ --color-icon: var(--figma-color-icon);
947
+ border-radius: var(--radius-medium);
948
+ }
949
+ .fp-IconButton:where(:hover:not(:disabled)) {
950
+ background-color: var(--figma-color-bg-pressed);
951
+ }
952
+ .fp-IconButton:focus-visible {
953
+ outline-offset: -1px;
954
+ outline: 1px solid var(--figma-color-border-selected);
955
+ }
956
+ .fp-IconButton:disabled {
957
+ --color-icon: var(--figma-color-icon-disabled);
958
+ }
959
+ .fp-IconButton:where(.fp-size-small) {
960
+ width: var(--space-6);
961
+ height: var(--space-6);
962
+ }
963
+ .fp-IconButton:where(.fp-size-medium) {
964
+ width: var(--space-8);
965
+ height: var(--space-8);
966
+ }
967
+ .fp-IconButton[data-state='open']:where(.fp-active-appearance-subtle) {
968
+ background-color: var(--figma-color-bg-selected);
969
+ --color-icon: var(--figma-color-icon-brand);
970
+ }
971
+ .fp-IconButton[data-state='open']:where(.fp-active-appearance-solid) {
972
+ background-color: var(--figma-color-bg-selected-strong);
973
+ --color-icon: var(--figma-color-icon-onbrand);
974
+ }
975
+ .fp-switchRoot {
976
+ appearance: none;
977
+ box-sizing: border-box;
978
+ position: relative;
979
+ display: block;
980
+ width: var(--space-6);
981
+ height: var(--space-3);
982
+ padding: 0;
983
+ background: linear-gradient(90deg, var(--figma-color-bg-brand) 0px 24px, var(--figma-color-icon-tertiary) 24px 48px);
984
+ background-repeat: no-repeat;
985
+ background-size: 200% 100%;
986
+ background-clip: padding-box;
987
+ border-radius: var(--radius-full);
988
+ border: 0;
989
+ transition: background-position 0.1s ease-out;
990
+ }
991
+ .fp-switchRoot:focus-visible {
992
+ outline-offset: 2px;
993
+ outline: 2px solid var(--figma-color-border-selected);
994
+ }
995
+ .fp-switchRoot[data-disabled] {
996
+ background: var(--figma-color-icon-disabled);
997
+ border-color: var(--figma-color-icon-disabled);
998
+ }
999
+ .fp-switchRoot[data-state='unchecked'] {
1000
+ background-position: -24px;
1001
+ }
1002
+ .fp-switchRoot[data-state='checked'] {
1003
+ background-position: 0;
1004
+ }
1005
+ .fp-switchThumb {
1006
+ box-sizing: border-box;
1007
+ position: absolute;
1008
+ top: 1px;
1009
+ left: 1px;
1010
+ height: var(--space-2_5);
1011
+ width: var(--space-2_5);
1012
+ border-radius: var(--radius-full);
1013
+ background: var(--figma-color-icon-onbrand);
1014
+ transition: all 0.1s ease-out;
1015
+ }
1016
+ .fp-switchThumb[data-disabled] {
1017
+ background-color: var(--figma-color-bg);
1018
+ border-color: var(--figma-color-bg);
1019
+ }
1020
+ .fp-switchThumb[data-state='unchecked'] {
1021
+ left: 1px;
1022
+ }
1023
+ .fp-switchThumb[data-state='checked'] {
1024
+ left: calc(100% - var(--space-2_5) - 1px);
1025
+ }
1026
+ :root,
1027
+ .light,
1028
+ .light-theme {
1029
+ --slider-root-size: var(--space-6);
1030
+ --slider-track-size: var(--space-4);
1031
+ --slider-thumb-width: var(--space-4);
1032
+ --color-border-slider-track: #0000001a;
1033
+ }
1034
+ .figma-dark {
1035
+ --color-border-slider-track: #ffffff1a;
1036
+ }
1037
+ .fp-SliderRoot {
1038
+ position: relative;
1039
+ display: flex;
1040
+ align-items: center;
1041
+ flex-grow: 1;
1042
+ outline: 0;
1043
+ border-color: transparent;
1044
+ border-style: solid;
1045
+ }
1046
+ .fp-SliderRoot[data-orientation='horizontal'] {
1047
+ height: var(--slider-root-size);
1048
+ border-width: 0 calc(var(--slider-thumb-width) / 2);
1049
+ }
1050
+ .fp-SliderRoot[data-orientation='vertical'] {
1051
+ flex-direction: column;
1052
+ width: var(--slider-root-size);
1053
+ border-width: calc(var(--slider-thumb-width) / 2) 0;
1054
+ }
1055
+ .fp-SliderTrack {
1056
+ box-sizing: border-box;
1057
+ position: relative;
1058
+ overflow: hidden;
1059
+ flex-grow: 1;
1060
+ background-color: var(--figma-color-bg-secondary);
1061
+ border-radius: var(--radius-full);
1062
+ outline: 1px solid var(--color-border-slider-track);
1063
+ outline-offset: -1px;
1064
+ }
1065
+ .fp-SliderTrack[data-orientation='horizontal'] {
1066
+ margin-left: calc((var(--slider-thumb-width) / 2) * -1);
1067
+ margin-right: calc((var(--slider-thumb-width) / 2) * -1);
1068
+ height: var(--slider-track-size);
1069
+ }
1070
+ .fp-SliderTrack[data-orientation='vertical'] {
1071
+ margin-top: calc((var(--slider-thumb-width) / 2) * -1);
1072
+ margin-bottom: calc((var(--slider-thumb-width) / 2) * -1);
1073
+ width: var(--slider-track-size);
1074
+ }
1075
+ .fp-SliderRange {
1076
+ position: absolute;
1077
+ display: block;
1078
+ background-color: var(--figma-color-bg-brand);
1079
+ border-radius: var(--radius-full);
1080
+ }
1081
+ .fp-SliderRange[data-orientation='horizontal'] {
1082
+ height: var(--slider-track-size);
1083
+ margin-left: calc((var(--slider-thumb-width) / 2) * -1);
1084
+ margin-right: calc((var(--slider-thumb-width) / 2) * -1);
1085
+ }
1086
+ .fp-SliderRange[data-orientation='vertical'] {
1087
+ width: var(--slider-track-size);
1088
+ margin-top: calc((var(--slider-thumb-width) / 2) * -1);
1089
+ margin-bottom: calc((var(--slider-thumb-width) / 2) * -1);
1090
+ }
1091
+ .fp-SliderRange[data-disabled] {
1092
+ background-color: var(--figma-color-bg-disabled);
1093
+ }
1094
+ .fp-SliderThumb {
1095
+ box-sizing: border-box;
1096
+ display: block;
1097
+ width: var(--slider-track-size);
1098
+ height: var(--slider-track-size);
1099
+ background-color: var(--figma-color-icon-onbrand);
1100
+ border: 4px solid var(--figma-color-icon-onbrand);
1101
+ border-radius: var(--radius-full);
1102
+ box-shadow: var(--elevation-200);
1103
+ outline: 0;
1104
+ }
1105
+ .fp-SliderThumb[data-disabled] {
1106
+ background-color: var(--figma-color-bg-disabled-secondary);
1107
+ border: 0;
1108
+ box-shadow: none;
1109
+ }
1110
+ .fp-SliderThumb.fp-SliderThumb-focusVisible:focus-visible {
1111
+ outline: 1px solid var(--figma-color-border-selected);
1112
+ }
1113
+ .fp-SliderThumb.fp-SliderThumb-modified {
1114
+ background-color: transparent;
1115
+ }
1116
+ .fp-SliderHint {
1117
+ position: absolute;
1118
+ display: block;
1119
+ width: var(--space-1);
1120
+ height: var(--space-1);
1121
+ background-color: var(--figma-color-icon-tertiary);
1122
+ border-radius: var(--radius-full);
1123
+ }
1124
+ .fp-SliderHint[data-orientation='horizontal'] {
1125
+ top: 50%;
1126
+ transform: translateY(-50%);
1127
+ }
1128
+ .fp-SliderHint[data-orientation='vertical'] {
1129
+ left: 50%;
1130
+ transform: translateX(-50%);
1131
+ }
1132
+ .fp-SliderHint.fp-SliderHint-baseValue {
1133
+ background-color: var(--figma-color-icon);
1134
+ }
1135
+ .fp-DialogBaseContent {
1136
+ font-family: var(--font-family-default);
1137
+ color: var(--figma-color-text);
1138
+ background-color: var(--figma-color-bg);
1139
+ border-radius: var(--radius-large);
1140
+ box-shadow: var(--elevation-500);
1141
+ overflow-y: auto;
1142
+ outline: 0;
1143
+ }
1144
+ .fp-DialogBaseHeader {
1145
+ box-sizing: border-box;
1146
+ display: flex;
1147
+ align-items: center;
1148
+ height: var(--space-10);
1149
+ padding: var(--space-1) var(--space-2);
1150
+ border-bottom: 1px solid var(--figma-color-border);
1151
+ background-color: var(--figma-color-bg);
1152
+ }
1153
+ .fp-DialogBaseTitle {
1154
+ padding-left: var(--space-2);
1155
+ }
1156
+ .fp-DialogBaseControls {
1157
+ display: flex;
1158
+ align-items: center;
1159
+ margin-left: auto;
1160
+ }
1161
+ .fp-DialogBaseSection {
1162
+ box-sizing: border-box;
1163
+ padding: var(--space-4);
1164
+ border-bottom: 1px solid var(--figma-color-border);
1165
+ }
1166
+ .fp-DialogBaseSection:where(:last-child) {
1167
+ border-bottom: 0;
1168
+ }
1169
+ .fp-DialogBaseSection:where(.fp-DialogBaseSection-base) {
1170
+ padding: var(--space-4);
1171
+ }
1172
+ .fp-DialogBaseSection:where(.fp-DialogBaseSection-small) {
1173
+ padding: var(--space-2) var(--space-4);
1174
+ }
1175
+ .fp-DialogBaseOverlay {
1176
+ position: fixed;
1177
+ inset: 0;
1178
+ background-color: var(--color-overlay-dialog);
1179
+ }
1180
+ .fp-DialogContent {
1181
+ position: fixed;
1182
+ max-width: calc(100vw - 32px);
1183
+ max-height: 80%;
1184
+ }
1185
+ .fp-DialogContent:where(.fp-placement-center) {
1186
+ top: 50%;
1187
+ left: 50%;
1188
+ transform: translate(-50%, -50%);
1189
+ }
1190
+ .fp-DialogContent:where(.fp-placement-top) {
1191
+ top: min(10vh, 80px);
1192
+ left: 50%;
1193
+ transform: translateX(-50%);
1194
+ }
1195
+ .fp-DialogContent:where(.fp-size-1) {
1196
+ width: 288px;
1197
+ }
1198
+ .fp-DialogContent:where(.fp-size-2) {
1199
+ width: 352px;
1200
+ }
1201
+ .fp-DialogContent:where(.fp-size-3) {
1202
+ width: 448px;
1203
+ }
1204
+ .fp-DialogContent:where(.fp-size-fullscreen) {
1205
+ inset: 0;
1206
+ }
1207
+ .fp-AlertDialogContent {
1208
+ position: fixed;
1209
+ top: 50%;
1210
+ left: 50%;
1211
+ transform: translate(-50%, -50%);
1212
+ max-width: calc(100vw - 32px);
1213
+ max-height: 80%;
1214
+ display: flex;
1215
+ flex-direction: column;
1216
+ gap: var(--space-4);
1217
+ padding: var(--space-4);
1218
+ }
1219
+ .fp-AlertDialogContent:where(.fp-placement-center) {
1220
+ top: 50%;
1221
+ left: 50%;
1222
+ transform: translate(-50%, -50%);
1223
+ }
1224
+ .fp-AlertDialogContent:where(.fp-placement-top) {
1225
+ top: min(10vh, 80px);
1226
+ left: 50%;
1227
+ transform: translateX(-50%);
1228
+ }
1229
+ .fp-AlertDialogContent:where(.fp-size-1) {
1230
+ width: 288px;
1231
+ }
1232
+ .fp-AlertDialogContent:where(.fp-size-2) {
1233
+ width: 352px;
1234
+ }
1235
+ .fp-AlertDialogContent:where(.fp-size-3) {
1236
+ width: 448px;
1237
+ }
1238
+ .fp-AlertDialogTitle {
1239
+ margin: 0;
1240
+ }
1241
+ .fp-AlertDialogActions {
1242
+ display: flex;
1243
+ justify-content: flex-end;
1244
+ align-items: center;
1245
+ gap: var(--space-2);
1246
+ padding-top: var(--space-2);
1247
+ }
1248
+ .fp-TabsList {
1249
+ display: flex;
1250
+ overflow-y: auto;
1251
+ gap: var(--space-2);
1252
+ }
1253
+ .fp-TabsTrigger {
1254
+ all: unset;
1255
+ box-sizing: border-box;
1256
+ display: flex;
1257
+ align-items: center;
1258
+ justify-content: center;
1259
+ height: var(--space-6);
1260
+ padding: 0 var(--space-2);
1261
+ font-family: var(--font-family-default);
1262
+ font-size: var(--font-size-default);
1263
+ font-weight: var(--font-weight-default);
1264
+ letter-spacing: var(--letter-spacing-default);
1265
+ line-height: var(--line-height-default);
1266
+ }
1267
+ .fp-TabsTrigger:where([data-state='inactive']) {
1268
+ color: var(--figma-color-text-secondary);
1269
+ --color-icon: var(--figma-color-icon-secondary);
1270
+ }
1271
+ .fp-TabsTrigger:where([data-state='active']) {
1272
+ font-weight: var(--font-weight-strong);
1273
+ color: var(--figma-color-text);
1274
+ --color-icon: var(--figma-color-icon);
1275
+ background: var(--figma-color-bg-secondary);
1276
+ border-radius: var(--radius-medium);
1277
+ }
1278
+ .fp-CheckboxRoot {
1279
+ position: relative;
1280
+ display: grid;
1281
+ grid-template-columns: var(--space-4) auto;
1282
+ min-height: 24px;
1283
+ gap: var(--space-1) var(--space-2);
1284
+ }
1285
+ .fp-CheckboxInput {
1286
+ all: unset;
1287
+ box-sizing: border-box;
1288
+ display: block;
1289
+ width: var(--space-4);
1290
+ height: var(--space-4);
1291
+ margin: var(--space-1) 0;
1292
+ background-color: transparent;
1293
+ border: 1px solid var(--figma-color-border-strong);
1294
+ border-radius: var(--radius-medium);
1295
+ flex-shrink: 0;
1296
+ }
1297
+ .fp-CheckboxInput:focus-visible {
1298
+ outline-offset: -1px;
1299
+ outline: 1px solid var(--figma-color-border-selected);
1300
+ }
1301
+ .fp-CheckboxInput:focus-visible:checked {
1302
+ outline-offset: 0;
1303
+ outline: 1px solid var(--figma-color-border-selected-strong);
1304
+ border-color: var(--figma-color-icon-onbrand);
1305
+ }
1306
+ .fp-CheckboxInput:checked {
1307
+ background-color: var(--figma-color-bg-brand);
1308
+ border-color: transparent;
1309
+ }
1310
+ .fp-CheckboxInput:disabled {
1311
+ border-color: var(--figma-color-border-disabled-strong);
1312
+ }
1313
+ .fp-CheckboxInput:disabled:checked {
1314
+ border-color: transparent;
1315
+ background-color: var(--figma-color-border-disabled-strong);
1316
+ }
1317
+ .fp-CheckboxIndicator {
1318
+ display: block;
1319
+ pointer-events: none;
1320
+ position: absolute;
1321
+ top: var(--space-1);
1322
+ }
1323
+ .fp-CheckboxCheckmark,
1324
+ .fp-CheckboxIndeterminate {
1325
+ display: none;
1326
+ }
1327
+ .fp-CheckboxInput:checked ~ .fp-CheckboxIndicator .fp-CheckboxCheckmark {
1328
+ --color-icon: var(--figma-color-icon-onbrand);
1329
+ display: block;
1330
+ }
1331
+ .fp-CheckboxInput:indeterminate ~ .fp-CheckboxIndicator .fp-CheckboxIndeterminate {
1332
+ --color-icon: var(--figma-color-icon);
1333
+ display: block;
1334
+ }
1335
+ .fp-CheckboxInput:disabled:indeterminate ~ .fp-CheckboxIndicator .fp-CheckboxIndeterminate {
1336
+ --color-icon: var(--figma-color-icon-disabled);
1337
+ }
1338
+ .fp-CheckboxLabel {
1339
+ margin-top: var(--space-1);
1340
+ }
1341
+ .fp-CheckboxInput:disabled ~ .fp-CheckboxLabel {
1342
+ color: var(--figma-color-text-disabled);
1343
+ }
1344
+ .fp-CheckboxDescription {
1345
+ color: var(--figma-color-text-secondary);
1346
+ grid-area: 2 / 2;
1347
+ }
1348
+ .fp-RadioGroupRoot {
1349
+ display: flex;
1350
+ }
1351
+ .fp-RadioGroupRoot[data-orientation='horizontal'] {
1352
+ gap: var(--space-5);
1353
+ }
1354
+ .fp-RadioGroupRoot[data-orientation='vertical'] {
1355
+ flex-direction: column;
1356
+ gap: var(--space-2);
1357
+ }
1358
+ .fp-RadioGroupItem {
1359
+ all: unset;
1360
+ box-sizing: border-box;
1361
+ width: 16px;
1362
+ height: 16px;
1363
+ background-color: var(--figma-color-bg);
1364
+ border: 4px solid transparent;
1365
+ border-radius: var(--radius-full);
1366
+ outline-offset: -1px;
1367
+ outline: 1px solid var(--figma-color-icon);
1368
+ }
1369
+ .fp-RadioGroupItem:focus-visible {
1370
+ outline-color: var(--figma-color-border-selected);
1371
+ }
1372
+ .fp-RadioGroupItem[data-state='checked'] {
1373
+ background-color: var(--figma-color-icon);
1374
+ border-color: var(--figma-color-bg);
1375
+ }
1376
+ .fp-RadioGroupItem[data-disabled] {
1377
+ outline-color: var(--figma-color-icon-disabled);
1378
+ }
1379
+ .fp-RadioGroupItem[data-disabled][data-state='checked'] {
1380
+ background-color: var(--figma-color-icon-disabled);
1381
+ }
1382
+ .fp-RadioGroupLabel {
1383
+ display: flex;
1384
+ gap: var(--space-2);
1385
+ }
1386
+ .fp-RadioGroupLabel[data-disabled] {
1387
+ color: var(--figma-color-text-disabled);
1388
+ }
1389
+ .fp-SegmentedControlRoot {
1390
+ display: inline-flex;
1391
+ background-color: var(--figma-color-bg-secondary);
1392
+ border-radius: var(--radius-medium);
1393
+ }
1394
+ .fp-SegmentedControlRoot:where(.fp-full-width) {
1395
+ display: flex;
1396
+ }
1397
+ .fp-SegmentedControlItem {
1398
+ all: unset;
1399
+ display: flex;
1400
+ align-items: center;
1401
+ justify-content: center;
1402
+ width: fit-content;
1403
+ flex: 1 0 auto;
1404
+ min-width: var(--space-6);
1405
+ height: var(--space-6);
1406
+ background-color: transparent;
1407
+ border-radius: var(--radius-medium);
1408
+ font-family: var(--font-family-default);
1409
+ font-size: var(--font-size-default);
1410
+ font-weight: var(--font-weight-default);
1411
+ letter-spacing: var(--letter-spacing-default);
1412
+ line-height: var(--line-height-default);
1413
+ white-space: nowrap;
1414
+ --color-icon: var(--figma-color-icon-secondary);
1415
+ }
1416
+ .fp-SegmentedControlItem[aria-checked='true'] {
1417
+ --color-icon: var(--figma-color-icon);
1418
+ background-color: var(--figma-color-bg);
1419
+ box-shadow: inset 0 0 0 var(--space-px) var(--figma-color-border);
1420
+ }
1421
+ .fp-SegmentedControlItem:focus-visible {
1422
+ outline: 1px solid var(--figma-color-border-selected);
1423
+ outline-offset: -1px;
1424
+ }
1425
+ .fp-SegmentedControlItem:disabled {
1426
+ --color-icon: var(--figma-color-icon-disabled);
1427
+ }
1428
+ .fp-SegmentedControlText {
1429
+ display: flex;
1430
+ align-items: center;
1431
+ padding: var(--space-2);
1432
+ gap: var(--space-1_5);
1433
+ }
1434
+ [data-disabled] .fp-SegmentedControlText {
1435
+ color: var(--figma-color-text-disabled);
1436
+ }
1437
+ :where(.fp-CollapsibleContent .fp-CollapsibleRoot) {
1438
+ margin-left: calc(-1 * var(--space-1));
1439
+ }
1440
+ .fp-CollapsibleTrigger {
1441
+ all: unset;
1442
+ display: flex;
1443
+ align-items: center;
1444
+ width: 100%;
1445
+ padding: var(--space-2) 0;
1446
+ font-family: var(--font-family-default);
1447
+ font-size: var(--font-size-default);
1448
+ font-weight: var(--font-weight-default);
1449
+ letter-spacing: var(--letter-spacing-default);
1450
+ line-height: var(--line-height-default);
1451
+ color: var(--figma-color-text-secondary);
1452
+ }
1453
+ .fp-CollapsibleIndicator {
1454
+ --color-icon: var(--figma-color-icon-secondary);
1455
+ }
1456
+ [data-state='open'] > .fp-CollapsibleIndicator {
1457
+ transform: rotate(90deg);
1458
+ }
1459
+ .fp-CollapsibleContent {
1460
+ margin-left: var(--space-4);
1461
+ }