figma-kit 0.0.0 → 1.0.0-beta.2

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,1451 @@
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: 0px;
9
+ --space-px: 1px;
10
+ --space-0_5: 2px;
11
+ --space-1: 4px;
12
+ --space-1_5: 6px;
13
+ --space-2: 8px;
14
+ --space-2_5: 10px;
15
+ --space-3: 12px;
16
+ --space-3_5: 14px;
17
+ --space-4: 16px;
18
+ --space-5: 20px;
19
+ --space-6: 24px;
20
+ --space-7: 28px;
21
+ --space-8: 32px;
22
+ --space-9: 36px;
23
+ --space-10: 40px;
24
+ --space-11: 44px;
25
+ --space-12: 48px;
26
+ --space-13: 52px;
27
+ --space-14: 56px;
28
+ --space-15: 60px;
29
+ --space-16: 64px;
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
+ 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-tooltip, 0 2px 7px rgba(0, 0, 0, 0.15));
635
+ }
636
+ .fp-arrow {
637
+ fill: var(--color-bg-tooltip);
638
+ }
639
+ .fp-textarea {
640
+ all: unset;
641
+ box-sizing: border-box;
642
+ display: block;
643
+ width: 100%;
644
+ height: var(--space-6);
645
+ padding: var(--space-1) var(--space-2);
646
+ background-color: var(--figma-color-bg-secondary);
647
+ border-radius: var(--radius-medium);
648
+ font-family: var(--font-family-default);
649
+ font-size: var(--font-size-default);
650
+ font-weight: var(--font-weight-default);
651
+ letter-spacing: var(--letter-spacing-default);
652
+ line-height: var(--line-height-default);
653
+ color: var(--figma-color-text);
654
+ outline-width: 1px;
655
+ outline-style: solid;
656
+ outline-offset: -1px;
657
+ outline-color: transparent;
658
+ resize: none;
659
+ word-break: break-word;
660
+ }
661
+ .fp-textarea:hover:where(:not(:disabled, :focus)) {
662
+ outline-color: var(--figma-color-border);
663
+ }
664
+ .fp-textarea:focus {
665
+ outline-color: var(--figma-color-border-selected);
666
+ }
667
+ .fp-textarea:disabled {
668
+ background-color: var(--figma-color-bg);
669
+ outline-color: var(--figma-color-border-disabled);
670
+ color: var(--figma-color-text-disabled);
671
+ }
672
+ .fp-textarea::placeholder {
673
+ color: var(--figma-color-text-tertiary);
674
+ }
675
+ .fp-MenuContent {
676
+ box-sizing: border-box;
677
+ -webkit-font-smoothing: antialiased;
678
+ -moz-osx-font-smoothing: grayscale;
679
+ cursor: default;
680
+ padding: var(--space-2);
681
+ background-color: var(--color-bg-menu);
682
+ border-radius: var(--radius-large);
683
+ font-size: var(--font-size-menu);
684
+ font-family: var(--font-family-default);
685
+ font-weight: var(--font-weight-default);
686
+ letter-spacing: var(--letter-spacing-default);
687
+ color: var(--color-text-menu);
688
+ box-shadow: var(--elevation-400);
689
+ }
690
+ .fp-MenuItem {
691
+ position: relative;
692
+ display: flex;
693
+ align-items: center;
694
+ height: var(--space-6);
695
+ padding: 0 var(--space-2);
696
+ color: var(--color-text-menu);
697
+ line-height: 1rem;
698
+ white-space: nowrap;
699
+ border-radius: var(--radius-medium);
700
+ }
701
+ .fp-MenuItem[data-highlighted] {
702
+ outline: 0;
703
+ background-color: var(--color-bg-menu-selected);
704
+ }
705
+ .fp-MenuItem[data-disabled] {
706
+ color: var(--color-text-menu-tertiary);
707
+ }
708
+ .fp-MenuSeparator {
709
+ margin: var(--space-2) 0;
710
+ height: 1px;
711
+ background-color: var(--color-border-menu);
712
+ }
713
+ .fp-MenuLabel {
714
+ display: flex;
715
+ align-items: center;
716
+ height: var(--space-6);
717
+ padding: 0 var(--space-4);
718
+ color: var(--color-text-menu-tertiary);
719
+ }
720
+ .fp-MenuGroup {
721
+ padding: var(--space-2) 0;
722
+ }
723
+ .fp-MenuGroup:first-child {
724
+ padding-top: 0;
725
+ }
726
+ .fp-MenuGroup:last-child {
727
+ padding-bottom: 0;
728
+ }
729
+ .fp-MenuGroup:not(:first-child) {
730
+ border-top: 1px solid var(--color-border-menu);
731
+ }
732
+ .fp-MenuSubtriggerCaret {
733
+ margin-left: auto;
734
+ margin-right: calc(-1 * var(--space-2));
735
+ padding-left: var(--space-6);
736
+ --color-icon: var(--color-icon-menu);
737
+ }
738
+ .fp-MenuCheckboxItem,
739
+ .fp-MenuRadioItem {
740
+ padding-left: var(--space-6);
741
+ }
742
+ .fp-MenuItemIndicator {
743
+ position: absolute;
744
+ left: var(--space-1);
745
+ --color-icon: var(--color-icon-menu);
746
+ }
747
+ .fp-SelectTrigger {
748
+ all: unset;
749
+ appearance: none;
750
+ box-sizing: border-box;
751
+ display: flex;
752
+ align-items: center;
753
+ gap: var(--space-1);
754
+ width: 100%;
755
+ padding: 0 0 0 var(--space-2);
756
+ height: var(--space-6);
757
+ border: 1px solid var(--figma-color-border);
758
+ border-radius: var(--radius-medium);
759
+ font-family: var(--font-family-default);
760
+ font-size: var(--font-size-default);
761
+ font-weight: var(--font-weight-default);
762
+ letter-spacing: var(--letter-spacing-default);
763
+ color: var(--figma-color-text);
764
+ }
765
+ .fp-SelectTriggerIcon {
766
+ margin-left: auto;
767
+ }
768
+ .fp-SelectScrollUpButton,
769
+ .fp-SelectScrollDownButton {
770
+ position: absolute;
771
+ left: 0;
772
+ right: 0;
773
+ z-index: 1;
774
+ display: flex;
775
+ align-items: center;
776
+ justify-content: center;
777
+ height: var(--space-6);
778
+ background-color: var(--color-bg-menu);
779
+ --color-icon: var(--color-icon-menu);
780
+ }
781
+ .fp-SelectScrollUpButton:hover, .fp-SelectScrollDownButton:hover {
782
+ background-color: var(--color-bg-menu-hover);
783
+ }
784
+ .fp-SelectScrollUpButton {
785
+ top: 0;
786
+ border-radius: var(--radius-large) var(--radius-large) 0 0;
787
+ }
788
+ .fp-SelectScrollDownButton {
789
+ bottom: 0;
790
+ border-radius: 0 0 var(--radius-large) var(--radius-large);
791
+ }
792
+ .fp-Button {
793
+ box-sizing: border-box;
794
+ background-clip: border-box;
795
+ background-color: transparent;
796
+ user-select: none;
797
+ appearance: none;
798
+ border: 0;
799
+ cursor: default;
800
+ display: flex;
801
+ align-items: center;
802
+ justify-content: center;
803
+ flex-shrink: 0;
804
+ width: fit-content;
805
+ outline-width: 1px;
806
+ outline-offset: -1px;
807
+ outline-style: solid;
808
+ outline-color: transparent;
809
+ font-family: var(--font-family-default);
810
+ font-size: var(--font-size-default);
811
+ font-weight: var(--font-weight-default);
812
+ letter-spacing: var(--letter-spacing-default);
813
+ line-height: var(--line-height-default);
814
+ border-radius: var(--radius-medium);
815
+ }
816
+ .fp-Button:where(.fp-variant-secondary) {
817
+ --button-color-bg: transparent;
818
+ --button-color-border: var(--figma-color-text);
819
+ --button-color-text: var(--figma-color-border);
820
+ }
821
+ .fp-Button:where(.fp-variant-secondary) {
822
+ color: var(--figma-color-text);
823
+ outline-color: var(--figma-color-border);
824
+ }
825
+ .fp-Button:where(.fp-variant-secondary):active {
826
+ background-color: var(--figma-color-bg-pressed);
827
+ }
828
+ .fp-Button:where(.fp-variant-secondary):focus-visible {
829
+ outline-color: var(--figma-color-border-selected);
830
+ }
831
+ .fp-Button:where(.fp-variant-secondary):disabled {
832
+ color: var(--figma-color-text-disabled);
833
+ outline-color: var(--figma-color-border-disabled);
834
+ }
835
+ .fp-Button:where(.fp-variant-primary) {
836
+ background-color: var(--figma-color-bg-brand);
837
+ color: var(--figma-color-text-onbrand);
838
+ }
839
+ .fp-Button:where(.fp-variant-primary):active {
840
+ background-color: var(--figma-color-bg-brand-pressed);
841
+ }
842
+ .fp-Button:where(.fp-variant-primary):focus-visible {
843
+ outline-color: var(--figma-color-border-onbrand-strong);
844
+ box-shadow: 0 0 0 1px var(--figma-color-border-selected-strong);
845
+ }
846
+ .fp-Button:where(.fp-variant-primary):disabled {
847
+ color: var(--figma-color-text-ondisabled);
848
+ background-color: var(--figma-color-bg-disabled);
849
+ }
850
+ .fp-Button:where(.fp-variant-destructive) {
851
+ background-color: var(--figma-color-bg-danger);
852
+ color: var(--figma-color-text-ondanger);
853
+ }
854
+ .fp-Button:where(.fp-variant-destructive):active {
855
+ background-color: var(--figma-color-bg-danger-pressed);
856
+ }
857
+ .fp-Button:where(.fp-variant-destructive):focus-visible {
858
+ outline-color: var(--figma-color-border-ondanger-strong);
859
+ box-shadow: 0 0 0 1px var(--figma-color-border-danger-strong);
860
+ }
861
+ .fp-Button:where(.fp-variant-destructive):disabled {
862
+ color: var(--figma-color-text-ondisabled);
863
+ background-color: var(--figma-color-bg-disabled);
864
+ }
865
+ .fp-Button:where(.fp-variant-success) {
866
+ background-color: var(--figma-color-bg-success);
867
+ color: var(--figma-color-text-onsuccess);
868
+ }
869
+ .fp-Button:where(.fp-variant-success):active {
870
+ background-color: var(--figma-color-bg-success-pressed);
871
+ }
872
+ .fp-Button:where(.fp-variant-success):focus-visible {
873
+ outline-color: var(--figma-color-border-onbrand-strong);
874
+ box-shadow: 0 0 0 1px var(--figma-color-border-success-strong);
875
+ }
876
+ .fp-Button:where(.fp-variant-success):disabled {
877
+ color: var(--figma-color-text-ondisabled);
878
+ background-color: var(--figma-color-bg-disabled);
879
+ }
880
+ .fp-Button:where(.fp-variant-inverse) {
881
+ background-color: var(--figma-color-bg-inverse);
882
+ color: var(--figma-color-text-oninverse);
883
+ font-weight: 400;
884
+ }
885
+ .fp-Button:where(.fp-variant-inverse):active {
886
+ background-color: var(--figma-color-bg-brand-pressed);
887
+ }
888
+ .fp-Button:where(.fp-variant-inverse):focus-visible {
889
+ outline-color: var(--figma-color-border-onbrand-strong);
890
+ box-shadow: 0 0 0 1px var(--figma-color-border-selected);
891
+ }
892
+ .fp-Button:where(.fp-variant-inverse):disabled {
893
+ color: var(--figma-color-text-ondisabled);
894
+ background-color: var(--figma-color-bg-disabled);
895
+ }
896
+ .fp-Button:where(.fp-variant-text) {
897
+ background-color: transparent;
898
+ outline-color: transparent;
899
+ color: var(--figma-color-text);
900
+ }
901
+ .fp-Button:where(.fp-variant-text):hover {
902
+ background-color: var(--figma-color-bg-hover);
903
+ }
904
+ .fp-Button:where(.fp-variant-text):active {
905
+ background-color: var(--figma-color-bg-pressed);
906
+ }
907
+ .fp-Button:where(.fp-variant-text):focus-visible {
908
+ outline-color: var(--figma-color-border-selected);
909
+ }
910
+ .fp-Button:where(.fp-variant-text):disabled {
911
+ color: var(--figma-color-text-disabled);
912
+ outline-color: var(--figma-color-border-disabled);
913
+ }
914
+ .fp-Button:where(.fp-full-width) {
915
+ width: 100%;
916
+ max-width: 100%;
917
+ }
918
+ .fp-Button:where(.fp-size-small) {
919
+ height: var(--space-6);
920
+ padding: var(--space-1) var(--space-2);
921
+ }
922
+ .fp-Button:where(.fp-size-medium) {
923
+ height: var(--space-8);
924
+ padding: var(--space-2) var(--space-3);
925
+ }
926
+ .fp-IconButton {
927
+ box-sizing: border-box;
928
+ background-clip: border-box;
929
+ background-color: transparent;
930
+ user-select: none;
931
+ appearance: none;
932
+ border: 0;
933
+ padding: 0;
934
+ cursor: default;
935
+ display: flex;
936
+ align-items: center;
937
+ justify-content: center;
938
+ flex-shrink: 0;
939
+ --color-icon: var(--figma-color-icon);
940
+ border-radius: var(--radius-medium);
941
+ }
942
+ .fp-IconButton:where(:hover:not(:disabled)) {
943
+ background-color: var(--figma-color-bg-pressed);
944
+ }
945
+ .fp-IconButton:focus-visible {
946
+ outline-offset: -1px;
947
+ outline: 1px solid var(--figma-color-border-selected);
948
+ }
949
+ .fp-IconButton:disabled {
950
+ --color-icon: var(--figma-color-icon-disabled);
951
+ }
952
+ .fp-IconButton:where(.fp-size-small) {
953
+ width: var(--space-6);
954
+ height: var(--space-6);
955
+ }
956
+ .fp-IconButton:where(.fp-size-medium) {
957
+ width: var(--space-8);
958
+ height: var(--space-8);
959
+ }
960
+ .fp-IconButton[data-state='open']:where(.fp-active-appearance-subtle) {
961
+ background-color: var(--figma-color-bg-selected);
962
+ --color-icon: var(--figma-color-icon-brand);
963
+ }
964
+ .fp-IconButton[data-state='open']:where(.fp-active-appearance-solid) {
965
+ background-color: var(--figma-color-bg-selected-strong);
966
+ --color-icon: var(--figma-color-icon-onbrand);
967
+ }
968
+ .fp-switchRoot {
969
+ appearance: none;
970
+ box-sizing: border-box;
971
+ position: relative;
972
+ display: block;
973
+ width: var(--space-6);
974
+ height: var(--space-3);
975
+ padding: 0;
976
+ background: linear-gradient(90deg, var(--figma-color-bg-brand) 0px 24px, var(--figma-color-icon-tertiary) 24px 48px);
977
+ background-repeat: no-repeat;
978
+ background-size: 200% 100%;
979
+ background-clip: padding-box;
980
+ border-radius: var(--radius-full);
981
+ border: 0;
982
+ transition: background-position 0.1s ease-out;
983
+ }
984
+ .fp-switchRoot:focus-visible {
985
+ outline-offset: 2px;
986
+ outline: 2px solid var(--figma-color-border-selected);
987
+ }
988
+ .fp-switchRoot[data-disabled] {
989
+ background: var(--figma-color-icon-disabled);
990
+ border-color: var(--figma-color-icon-disabled);
991
+ }
992
+ .fp-switchRoot[data-state='unchecked'] {
993
+ background-position: -24px;
994
+ }
995
+ .fp-switchRoot[data-state='checked'] {
996
+ background-position: 0;
997
+ }
998
+ .fp-switchThumb {
999
+ box-sizing: border-box;
1000
+ position: absolute;
1001
+ top: 1px;
1002
+ left: 1px;
1003
+ height: var(--space-2_5);
1004
+ width: var(--space-2_5);
1005
+ border-radius: var(--radius-full);
1006
+ background: var(--figma-color-icon-onbrand);
1007
+ transition: all 0.1s ease-out;
1008
+ }
1009
+ .fp-switchThumb[data-disabled] {
1010
+ background-color: var(--figma-color-bg);
1011
+ border-color: var(--figma-color-bg);
1012
+ }
1013
+ .fp-switchThumb[data-state='unchecked'] {
1014
+ left: 1px;
1015
+ }
1016
+ .fp-switchThumb[data-state='checked'] {
1017
+ left: calc(100% - var(--space-2_5) - 1px);
1018
+ }
1019
+ :root,
1020
+ .light,
1021
+ .light-theme {
1022
+ --slider-root-size: var(--space-6);
1023
+ --slider-track-size: var(--space-4);
1024
+ --slider-thumb-width: var(--space-4);
1025
+ --color-border-slider-track: #0000001a;
1026
+ }
1027
+ .dark,
1028
+ .dark-theme {
1029
+ --color-border-slider-track: #ffffff1a;
1030
+ }
1031
+ .fp-SliderRoot {
1032
+ position: relative;
1033
+ display: flex;
1034
+ align-items: center;
1035
+ flex-grow: 1;
1036
+ outline: 0;
1037
+ border-color: transparent;
1038
+ border-style: solid;
1039
+ }
1040
+ .fp-SliderRoot[data-orientation='horizontal'] {
1041
+ height: var(--slider-root-size);
1042
+ border-width: 0 calc(var(--slider-thumb-width) / 2);
1043
+ }
1044
+ .fp-SliderRoot[data-orientation='vertical'] {
1045
+ flex-direction: column;
1046
+ width: var(--slider-root-size);
1047
+ border-width: calc(var(--slider-thumb-width) / 2) 0;
1048
+ }
1049
+ .fp-SliderTrack {
1050
+ box-sizing: border-box;
1051
+ position: relative;
1052
+ overflow: hidden;
1053
+ flex-grow: 1;
1054
+ background-color: var(--figma-color-bg-secondary);
1055
+ border-radius: var(--radius-full);
1056
+ outline: 1px solid var(--color-border-slider-track);
1057
+ outline-offset: -1px;
1058
+ }
1059
+ .fp-SliderTrack[data-orientation='horizontal'] {
1060
+ margin-left: calc((var(--slider-thumb-width) / 2) * -1);
1061
+ margin-right: calc((var(--slider-thumb-width) / 2) * -1);
1062
+ height: var(--slider-track-size);
1063
+ }
1064
+ .fp-SliderTrack[data-orientation='vertical'] {
1065
+ margin-top: calc((var(--slider-thumb-width) / 2) * -1);
1066
+ margin-bottom: calc((var(--slider-thumb-width) / 2) * -1);
1067
+ width: var(--slider-track-size);
1068
+ }
1069
+ .fp-SliderRange {
1070
+ position: absolute;
1071
+ display: block;
1072
+ background-color: var(--figma-color-bg-brand);
1073
+ border-radius: var(--radius-full);
1074
+ }
1075
+ .fp-SliderRange[data-orientation='horizontal'] {
1076
+ height: var(--slider-track-size);
1077
+ margin-left: calc((var(--slider-thumb-width) / 2) * -1);
1078
+ margin-right: calc((var(--slider-thumb-width) / 2) * -1);
1079
+ }
1080
+ .fp-SliderRange[data-orientation='vertical'] {
1081
+ width: var(--slider-track-size);
1082
+ margin-top: calc((var(--slider-thumb-width) / 2) * -1);
1083
+ margin-bottom: calc((var(--slider-thumb-width) / 2) * -1);
1084
+ }
1085
+ .fp-SliderRange[data-disabled] {
1086
+ background-color: var(--figma-color-bg-disabled);
1087
+ }
1088
+ .fp-SliderThumb {
1089
+ box-sizing: border-box;
1090
+ display: block;
1091
+ width: var(--slider-track-size);
1092
+ height: var(--slider-track-size);
1093
+ background-color: var(--figma-color-icon-onbrand);
1094
+ border: 4px solid var(--figma-color-icon-onbrand);
1095
+ border-radius: var(--radius-full);
1096
+ box-shadow: var(--elevation-200);
1097
+ outline: 0;
1098
+ }
1099
+ .fp-SliderThumb[data-disabled] {
1100
+ background-color: var(--figma-color-bg-disabled-secondary);
1101
+ border: 0;
1102
+ box-shadow: none;
1103
+ }
1104
+ .fp-SliderThumb.fp-SliderThumb-focusVisible:focus-visible {
1105
+ outline: 1px solid var(--figma-color-border-selected);
1106
+ }
1107
+ .fp-SliderThumb.fp-SliderThumb-modified {
1108
+ background-color: transparent;
1109
+ }
1110
+ .fp-SliderHint {
1111
+ position: absolute;
1112
+ display: block;
1113
+ width: var(--space-1);
1114
+ height: var(--space-1);
1115
+ background-color: var(--figma-color-icon-tertiary);
1116
+ border-radius: var(--radius-full);
1117
+ }
1118
+ .fp-SliderHint[data-orientation='horizontal'] {
1119
+ top: 50%;
1120
+ transform: translateY(-50%);
1121
+ }
1122
+ .fp-SliderHint[data-orientation='vertical'] {
1123
+ left: 50%;
1124
+ transform: translateX(-50%);
1125
+ }
1126
+ .fp-SliderHint.fp-SliderHint-baseValue {
1127
+ background-color: var(--figma-color-icon);
1128
+ }
1129
+ .fp-DialogBaseContent {
1130
+ font-family: var(--font-family-default);
1131
+ color: var(--figma-color-text);
1132
+ background-color: var(--figma-color-bg);
1133
+ border-radius: var(--radius-large);
1134
+ box-shadow: var(--elevation-500);
1135
+ overflow-y: auto;
1136
+ outline: 0;
1137
+ }
1138
+ .fp-DialogBaseHeader {
1139
+ box-sizing: border-box;
1140
+ display: flex;
1141
+ align-items: center;
1142
+ height: var(--space-10);
1143
+ padding: var(--space-1) var(--space-2);
1144
+ border-bottom: 1px solid var(--figma-color-border);
1145
+ background-color: var(--figma-color-bg);
1146
+ }
1147
+ .fp-DialogBaseTitle {
1148
+ padding-left: var(--space-2);
1149
+ }
1150
+ .fp-DialogBaseControls {
1151
+ display: flex;
1152
+ align-items: center;
1153
+ margin-left: auto;
1154
+ }
1155
+ .fp-DialogBaseSection {
1156
+ box-sizing: border-box;
1157
+ padding: var(--space-4);
1158
+ border-bottom: 1px solid var(--figma-color-border);
1159
+ }
1160
+ .fp-DialogBaseSection:where(:last-child) {
1161
+ border-bottom: 0;
1162
+ }
1163
+ .fp-DialogBaseSection:where(.fp-DialogBaseSection-base) {
1164
+ padding: var(--space-4);
1165
+ }
1166
+ .fp-DialogBaseSection:where(.fp-DialogBaseSection-small) {
1167
+ padding: var(--space-2) var(--space-4);
1168
+ }
1169
+ .fp-DialogBaseOverlay {
1170
+ position: fixed;
1171
+ inset: 0;
1172
+ background-color: var(--color-overlay-dialog);
1173
+ }
1174
+ .fp-DialogContent {
1175
+ position: fixed;
1176
+ max-width: calc(100vw - 32px);
1177
+ max-height: 80%;
1178
+ }
1179
+ .fp-DialogContent:where(.fp-placement-center) {
1180
+ top: 50%;
1181
+ left: 50%;
1182
+ transform: translate(-50%, -50%);
1183
+ }
1184
+ .fp-DialogContent:where(.fp-placement-top) {
1185
+ top: min(10vh, 80px);
1186
+ left: 50%;
1187
+ transform: translateX(-50%);
1188
+ }
1189
+ .fp-DialogContent:where(.fp-size-1) {
1190
+ width: 288px;
1191
+ }
1192
+ .fp-DialogContent:where(.fp-size-2) {
1193
+ width: 352px;
1194
+ }
1195
+ .fp-DialogContent:where(.fp-size-3) {
1196
+ width: 448px;
1197
+ }
1198
+ .fp-DialogContent:where(.fp-size-fullscreen) {
1199
+ inset: 0;
1200
+ }
1201
+ .fp-AlertDialogContent {
1202
+ position: fixed;
1203
+ top: 50%;
1204
+ left: 50%;
1205
+ transform: translate(-50%, -50%);
1206
+ max-width: calc(100vw - 32px);
1207
+ max-height: 80%;
1208
+ display: flex;
1209
+ flex-direction: column;
1210
+ gap: var(--space-4);
1211
+ padding: var(--space-4);
1212
+ }
1213
+ .fp-AlertDialogContent:where(.fp-placement-center) {
1214
+ top: 50%;
1215
+ left: 50%;
1216
+ transform: translate(-50%, -50%);
1217
+ }
1218
+ .fp-AlertDialogContent:where(.fp-placement-top) {
1219
+ top: min(10vh, 80px);
1220
+ left: 50%;
1221
+ transform: translateX(-50%);
1222
+ }
1223
+ .fp-AlertDialogContent:where(.fp-size-1) {
1224
+ width: 288px;
1225
+ }
1226
+ .fp-AlertDialogContent:where(.fp-size-2) {
1227
+ width: 352px;
1228
+ }
1229
+ .fp-AlertDialogContent:where(.fp-size-3) {
1230
+ width: 448px;
1231
+ }
1232
+ .fp-AlertDialogTitle {
1233
+ margin: 0;
1234
+ }
1235
+ .fp-AlertDialogActions {
1236
+ display: flex;
1237
+ justify-content: flex-end;
1238
+ align-items: center;
1239
+ gap: var(--space-2);
1240
+ padding-top: var(--space-2);
1241
+ }
1242
+ .fp-TabsList {
1243
+ display: flex;
1244
+ overflow-y: auto;
1245
+ gap: var(--space-2);
1246
+ }
1247
+ .fp-TabsTrigger {
1248
+ all: unset;
1249
+ box-sizing: border-box;
1250
+ display: flex;
1251
+ align-items: center;
1252
+ justify-content: center;
1253
+ height: var(--space-6);
1254
+ padding: 0 var(--space-2);
1255
+ font-family: var(--font-family-default);
1256
+ font-size: var(--font-size-default);
1257
+ font-weight: var(--font-weight-default);
1258
+ letter-spacing: var(--letter-spacing-default);
1259
+ line-height: var(--line-height-default);
1260
+ }
1261
+ .fp-TabsTrigger:where([data-state='inactive']) {
1262
+ color: var(--figma-color-text-secondary);
1263
+ --color-icon: var(--figma-color-icon-secondary);
1264
+ }
1265
+ .fp-TabsTrigger:where([data-state='active']) {
1266
+ font-weight: var(--font-weight-strong);
1267
+ color: var(--figma-color-text);
1268
+ --color-icon: var(--figma-color-icon);
1269
+ background: var(--figma-color-bg-secondary);
1270
+ border-radius: var(--radius-medium);
1271
+ }
1272
+ .fp-CheckboxRoot {
1273
+ position: relative;
1274
+ display: grid;
1275
+ grid-template-columns: var(--space-4) auto;
1276
+ min-height: 24px;
1277
+ gap: var(--space-1) var(--space-2);
1278
+ }
1279
+ .fp-CheckboxInput {
1280
+ all: unset;
1281
+ box-sizing: border-box;
1282
+ display: block;
1283
+ width: var(--space-4);
1284
+ height: var(--space-4);
1285
+ margin: var(--space-1) 0;
1286
+ background-color: transparent;
1287
+ border: 1px solid var(--figma-color-border-strong);
1288
+ border-radius: var(--radius-medium);
1289
+ flex-shrink: 0;
1290
+ }
1291
+ .fp-CheckboxInput:focus-visible {
1292
+ outline-offset: -1px;
1293
+ outline: 1px solid var(--figma-color-border-selected);
1294
+ }
1295
+ .fp-CheckboxInput:focus-visible:checked {
1296
+ outline-offset: 0;
1297
+ outline: 1px solid var(--figma-color-border-selected-strong);
1298
+ border-color: var(--figma-color-icon-onbrand);
1299
+ }
1300
+ .fp-CheckboxInput:checked {
1301
+ background-color: var(--figma-color-bg-brand);
1302
+ border-color: transparent;
1303
+ }
1304
+ .fp-CheckboxInput:disabled {
1305
+ border-color: var(--figma-color-border-disabled-strong);
1306
+ }
1307
+ .fp-CheckboxInput:disabled:checked {
1308
+ border-color: transparent;
1309
+ background-color: var(--figma-color-border-disabled-strong);
1310
+ }
1311
+ .fp-CheckboxIndicator {
1312
+ display: block;
1313
+ pointer-events: none;
1314
+ position: absolute;
1315
+ top: var(--space-1);
1316
+ }
1317
+ .fp-CheckboxCheckmark,
1318
+ .fp-CheckboxIndeterminate {
1319
+ display: none;
1320
+ }
1321
+ .fp-CheckboxInput:checked ~ .fp-CheckboxIndicator .fp-CheckboxCheckmark {
1322
+ --color-icon: var(--figma-color-icon-onbrand);
1323
+ display: block;
1324
+ }
1325
+ .fp-CheckboxInput:indeterminate ~ .fp-CheckboxIndicator .fp-CheckboxIndeterminate {
1326
+ --color-icon: var(--figma-color-icon);
1327
+ display: block;
1328
+ }
1329
+ .fp-CheckboxInput:disabled:indeterminate ~ .fp-CheckboxIndicator .fp-CheckboxIndeterminate {
1330
+ --color-icon: var(--figma-color-icon-disabled);
1331
+ }
1332
+ .fp-CheckboxLabel {
1333
+ margin-top: var(--space-1);
1334
+ }
1335
+ .fp-CheckboxInput:disabled ~ .fp-CheckboxLabel {
1336
+ color: var(--figma-color-text-disabled);
1337
+ }
1338
+ .fp-CheckboxDescription {
1339
+ color: var(--figma-color-text-secondary);
1340
+ grid-area: 2 / 2;
1341
+ }
1342
+ .fp-RadioGroupRoot {
1343
+ display: flex;
1344
+ }
1345
+ .fp-RadioGroupRoot[data-orientation='horizontal'] {
1346
+ gap: var(--space-5);
1347
+ }
1348
+ .fp-RadioGroupRoot[data-orientation='vertical'] {
1349
+ flex-direction: column;
1350
+ gap: var(--space-2);
1351
+ }
1352
+ .fp-RadioGroupItem {
1353
+ all: unset;
1354
+ box-sizing: border-box;
1355
+ width: 16px;
1356
+ height: 16px;
1357
+ background-color: var(--figma-color-bg);
1358
+ border: 4px solid transparent;
1359
+ border-radius: var(--radius-full);
1360
+ outline-offset: -1px;
1361
+ outline: 1px solid var(--figma-color-icon);
1362
+ }
1363
+ .fp-RadioGroupItem:focus-visible {
1364
+ outline-color: var(--figma-color-border-selected);
1365
+ }
1366
+ .fp-RadioGroupItem[data-state='checked'] {
1367
+ background-color: var(--figma-color-icon);
1368
+ border-color: var(--figma-color-bg);
1369
+ }
1370
+ .fp-RadioGroupItem[data-disabled] {
1371
+ outline-color: var(--figma-color-icon-disabled);
1372
+ }
1373
+ .fp-RadioGroupItem[data-disabled][data-state='checked'] {
1374
+ background-color: var(--figma-color-icon-disabled);
1375
+ }
1376
+ .fp-RadioGroupLabel {
1377
+ display: flex;
1378
+ gap: var(--space-2);
1379
+ }
1380
+ .fp-RadioGroupLabel[data-disabled] {
1381
+ color: var(--figma-color-text-disabled);
1382
+ }
1383
+ .fp-SegmentedControlRoot {
1384
+ display: inline-flex;
1385
+ background-color: var(--figma-color-bg-secondary);
1386
+ border-radius: var(--radius-medium);
1387
+ }
1388
+ .fp-SegmentedControlRoot:where(.fp-full-width) {
1389
+ display: flex;
1390
+ }
1391
+ .fp-SegmentedControlItem {
1392
+ all: unset;
1393
+ display: flex;
1394
+ align-items: center;
1395
+ justify-content: center;
1396
+ width: fit-content;
1397
+ flex: 1 0 auto;
1398
+ min-width: var(--space-6);
1399
+ height: var(--space-6);
1400
+ background-color: transparent;
1401
+ border-radius: var(--radius-medium);
1402
+ font-family: var(--font-family-default);
1403
+ font-size: var(--font-size-default);
1404
+ font-weight: var(--font-weight-default);
1405
+ letter-spacing: var(--letter-spacing-default);
1406
+ line-height: var(--line-height-default);
1407
+ white-space: nowrap;
1408
+ --color-icon: var(--figma-color-icon-secondary);
1409
+ }
1410
+ .fp-SegmentedControlItem[aria-checked='true'] {
1411
+ --color-icon: var(--figma-color-icon);
1412
+ background-color: var(--figma-color-bg);
1413
+ box-shadow: inset 0 0 0 var(--space-px) var(--figma-color-border);
1414
+ }
1415
+ .fp-SegmentedControlItem:focus-visible {
1416
+ outline: 1px solid var(--figma-color-border-selected);
1417
+ outline-offset: -1px;
1418
+ }
1419
+ .fp-SegmentedControlItem:disabled {
1420
+ --color-icon: var(--figma-color-icon-disabled);
1421
+ }
1422
+ .fp-SegmentedControlText {
1423
+ display: flex;
1424
+ align-items: center;
1425
+ padding: var(--space-2);
1426
+ gap: var(--space-1_5);
1427
+ }
1428
+ [data-disabled] .fp-SegmentedControlText {
1429
+ color: var(--figma-color-text-disabled);
1430
+ }
1431
+ :where(.fp-CollapsibleContent .fp-CollapsibleRoot) {
1432
+ margin-left: calc(-1 * var(--space-1));
1433
+ }
1434
+ .fp-CollapsibleTrigger {
1435
+ all: unset;
1436
+ display: flex;
1437
+ align-items: center;
1438
+ width: 100%;
1439
+ padding: var(--space-2) 0;
1440
+ font-family: var(--font-family-default);
1441
+ font-size: var(--font-size-default);
1442
+ font-weight: var(--font-weight-default);
1443
+ letter-spacing: var(--letter-spacing-default);
1444
+ line-height: var(--line-height-default);
1445
+ }
1446
+ [data-state='open'] > .fp-CollapsibleIndicator {
1447
+ transform: rotate(90deg);
1448
+ }
1449
+ .fp-CollapsibleContent {
1450
+ margin-left: var(--space-4);
1451
+ }