@rogieking/figui3 1.5.2 → 1.5.4

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.
package/components.css ADDED
@@ -0,0 +1,2450 @@
1
+ :root {
2
+ --figma-color-bg: #ffffff;
3
+ --figma-color-bg-brand: #0d99ff;
4
+ --figma-color-bg-menu: #1e1e1e;
5
+ --figma-color-bg-menu-hover: #0c8ce9;
6
+ --figma-color-bg-brand-hover: #007be5;
7
+ --figma-color-bg-brand-pressed: #007be5;
8
+ --figma-color-bg-brand-secondary: #0768cf;
9
+ --figma-color-bg-brand-tertiary: #e5f4ff;
10
+ --figma-color-bg-component: #9747ff;
11
+ --figma-color-bg-component-hover: #8638e5;
12
+ --figma-color-bg-component-pressed: #8638e5;
13
+ --figma-color-bg-component-secondary: #7c2bda;
14
+ --figma-color-bg-component-tertiary: #f1e5ff;
15
+ --figma-color-bg-danger: #f24822;
16
+ --figma-color-bg-danger-hover: #dc3412;
17
+ --figma-color-bg-danger-pressed: #dc3412;
18
+ --figma-color-bg-danger-secondary: #bd2915;
19
+ --figma-color-bg-danger-tertiary: #ffe2e0;
20
+ --figma-color-bg-disabled: #d9d9d9;
21
+ --figma-color-bg-disabled-secondary: #b3b3b3;
22
+ --figma-color-bg-hover: #f5f5f5;
23
+ --figma-color-bg-inverse: #2c2c2c;
24
+ --figma-color-bg-onselected: #bde3ff;
25
+ --figma-color-bg-onselected-hover: #bde3ff;
26
+ --figma-color-bg-onselected-pressed: #bde3ff;
27
+ --figma-color-bg-pressed: #f5f5f5;
28
+ --figma-color-bg-secondary: #f5f5f5;
29
+ --figma-color-bg-selected: #e5f4ff;
30
+ --figma-color-bg-selected-hover: #bde3ff;
31
+ --figma-color-bg-selected-pressed: #bde3ff;
32
+ --figma-color-bg-selected-secondary: #f2f9ff;
33
+ --figma-color-bg-selected-strong: #0d99ff;
34
+ --figma-color-bg-selected-tertiary: #f2f9ff;
35
+ --figma-color-bg-success: #14ae5c;
36
+ --figma-color-bg-success-hover: #009951;
37
+ --figma-color-bg-success-pressed: #009951;
38
+ --figma-color-bg-success-secondary: #008043;
39
+ --figma-color-bg-success-tertiary: #cff7d3;
40
+ --figma-color-bg-tertiary: #e6e6e6;
41
+ --figma-color-bg-warning: #ffcd29;
42
+ --figma-color-bg-warning-hover: #ffc21a;
43
+ --figma-color-bg-warning-pressed: #ffc21a;
44
+ --figma-color-bg-warning-secondary: #fab815;
45
+ --figma-color-bg-warning-tertiary: #fff1c2;
46
+ --figma-color-border: #e6e6e6;
47
+ --figma-color-border-brand: #bde3ff;
48
+ --figma-color-border-brand-strong: #007be5;
49
+ --figma-color-border-component: #e4ccff;
50
+ --figma-color-border-component-hover: #9747ff;
51
+ --figma-color-border-component-strong: #8638e5;
52
+ --figma-color-border-danger: #ffc7c2;
53
+ --figma-color-border-danger-strong: #dc3412;
54
+ --figma-color-border-disabled: #e6e6e6;
55
+ --figma-color-border-disabled-strong: #0000004d;
56
+ --figma-color-border-menu: #383838;
57
+ --figma-color-border-onbrand: #007be5;
58
+ --figma-color-border-onbrand-strong: #ffffff;
59
+ --figma-color-border-oncomponent: #8638e5;
60
+ --figma-color-border-oncomponent-strong: #ffffff;
61
+ --figma-color-border-ondanger: #dc3412;
62
+ --figma-color-border-ondanger-strong: #ffffff;
63
+ --figma-color-border-onselected: #bde3ff;
64
+ --figma-color-border-onselected-strong: #000000e5;
65
+ --figma-color-border-onsuccess: #009951;
66
+ --figma-color-border-onsuccess-strong: #ffffff;
67
+ --figma-color-border-onwarning: #fab815;
68
+ --figma-color-border-onwarning-strong: #000000e5;
69
+ --figma-color-border-selected: #0d99ff;
70
+ --figma-color-border-selected-strong: #007be5;
71
+ --figma-color-border-strong: #2c2c2c;
72
+ --figma-color-border-success: #aff4c6;
73
+ --figma-color-border-success-strong: #009951;
74
+ --figma-color-border-warning: #ffe8a3;
75
+ --figma-color-border-warning-strong: #b86200;
76
+ --figma-color-icon: #000000e5;
77
+ --figma-color-icon-brand: #007be5;
78
+ --figma-color-icon-brand-pressed: #0768cf;
79
+ --figma-color-icon-brand-secondary: #80caff;
80
+ --figma-color-icon-brand-tertiary: #bde3ff;
81
+ --figma-color-icon-component: #8638e5;
82
+ --figma-color-icon-component-pressed: #7c2bda;
83
+ --figma-color-icon-component-secondary: #c5b2dc;
84
+ --figma-color-icon-component-tertiary: #c5b2dc;
85
+ --figma-color-icon-danger: #f24822;
86
+ --figma-color-icon-danger-hover: #bd2915;
87
+ --figma-color-icon-danger-pressed: #bd2915;
88
+ --figma-color-icon-danger-secondary: #f24822;
89
+ --figma-color-icon-danger-secondary-hover: #f24822;
90
+ --figma-color-icon-danger-tertiary: #f24822;
91
+ --figma-color-icon-disabled: #0000004d;
92
+ --figma-color-icon-hover: #000000e5;
93
+ --figma-color-icon-onbrand: #ffffff;
94
+ --figma-color-icon-onbrand-secondary: #ffffffcc;
95
+ --figma-color-icon-onbrand-tertiary: #ffffff66;
96
+ --figma-color-icon-oncomponent: #ffffff;
97
+ --figma-color-icon-oncomponent-secondary: #ffffffcc;
98
+ --figma-color-icon-oncomponent-tertiary: #ffffff66;
99
+ --figma-color-icon-ondanger: #ffffff;
100
+ --figma-color-icon-ondanger-secondary: #ffffffcc;
101
+ --figma-color-icon-ondanger-tertiary: #ffffff66;
102
+ --figma-color-icon-ondisabled: #ffffff;
103
+ --figma-color-icon-oninverse: #ffffffe5;
104
+ --figma-color-icon-onselected: #000000e5;
105
+ --figma-color-icon-onselected-secondary: #00000080;
106
+ --figma-color-icon-onselected-strong: #ffffff;
107
+ --figma-color-icon-onselected-tertiary: #0000004d;
108
+ --figma-color-icon-onsuccess: #ffffff;
109
+ --figma-color-icon-onsuccess-secondary: #ffffffcc;
110
+ --figma-color-icon-onsuccess-tertiary: #ffffff66;
111
+ --figma-color-icon-onwarning: #000000e5;
112
+ --figma-color-icon-onwarning-secondary: #00000080;
113
+ --figma-color-icon-onwarning-tertiary: #0000004d;
114
+ --figma-color-icon-pressed: #007be5;
115
+ --figma-color-icon-secondary: #00000080;
116
+ --figma-color-icon-secondary-hover: #000000e5;
117
+ --figma-color-icon-selected: #007be5;
118
+ --figma-color-icon-selected-secondary: #007be5;
119
+ --figma-color-icon-selected-tertiary: #007be5;
120
+ --figma-color-icon-success: #14ae5c;
121
+ --figma-color-icon-success-pressed: #008043;
122
+ --figma-color-icon-success-secondary: #14ae5c;
123
+ --figma-color-icon-success-tertiary: #14ae5c;
124
+ --figma-color-icon-tertiary: #0000004d;
125
+ --figma-color-icon-tertiary-hover: #000000e5;
126
+ --figma-color-icon-warning: #ffcd29;
127
+ --figma-color-icon-warning-pressed: #b86200;
128
+ --figma-color-icon-warning-secondary: #ffcd29;
129
+ --figma-color-icon-warning-tertiary: #ffcd29;
130
+ --figma-color-text: #000000e5;
131
+ --figma-color-text-brand: #007be5;
132
+ --figma-color-text-brand-secondary: #007be5;
133
+ --figma-color-text-brand-tertiary: #007be5;
134
+ --figma-color-text-component: #8638e5;
135
+ --figma-color-text-component-pressed: #7c2bda;
136
+ --figma-color-text-component-secondary: #c5b2dc;
137
+ --figma-color-text-component-tertiary: #c5b2dc;
138
+ --figma-color-text-danger: #dc3412;
139
+ --figma-color-text-danger-secondary: #dc3412;
140
+ --figma-color-text-danger-tertiary: #dc3412;
141
+ --figma-color-text-disabled: #0000004d;
142
+ --figma-color-text-hover: #000000e5;
143
+ --figma-color-text-onbrand: #ffffff;
144
+ --figma-color-text-onbrand-secondary: #ffffffcc;
145
+ --figma-color-text-onbrand-tertiary: #ffffff66;
146
+ --figma-color-text-oncomponent: #ffffff;
147
+ --figma-color-text-oncomponent-secondary: #ffffffcc;
148
+ --figma-color-text-oncomponent-tertiary: #ffffff66;
149
+ --figma-color-text-ondanger: #ffffff;
150
+ --figma-color-text-ondanger-secondary: #ffffffcc;
151
+ --figma-color-text-ondanger-tertiary: #ffffff66;
152
+ --figma-color-text-ondisabled: #ffffff;
153
+ --figma-color-text-oninverse: #ffffffe5;
154
+ --figma-color-text-onselected: #000000e5;
155
+ --figma-color-text-onselected-secondary: #00000080;
156
+ --figma-color-text-onselected-strong: #ffffff;
157
+ --figma-color-text-onselected-tertiary: #0000004d;
158
+ --figma-color-text-onsuccess: #ffffff;
159
+ --figma-color-text-onsuccess-secondary: #ffffffcc;
160
+ --figma-color-text-onsuccess-tertiary: #ffffff66;
161
+ --figma-color-text-onwarning: #000000e5;
162
+ --figma-color-text-onwarning-secondary: #00000080;
163
+ --figma-color-text-onwarning-tertiary: #0000004d;
164
+ --figma-color-text-secondary: #00000080;
165
+ --figma-color-text-secondary-hover: #000000e5;
166
+ --figma-color-text-selection: rgba(13, 153, 255, 0.4);
167
+ --figma-color-text-selected: #007be5;
168
+ --figma-color-text-selected-secondary: #007be5;
169
+ --figma-color-text-selected-tertiary: #007be5;
170
+ --figma-color-text-success: #009951;
171
+ --figma-color-text-success-secondary: #009951;
172
+ --figma-color-text-success-tertiary: #009951;
173
+ --figma-color-text-tertiary: #0000004d;
174
+ --figma-color-text-tertiary-hover: #000000e5;
175
+ --figma-color-text-warning: #b86200;
176
+ --figma-color-text-warning-secondary: #b86200;
177
+ --figma-color-text-warning-tertiary: #b86200;
178
+ --figma-color-text-menu: #ffffff;
179
+ --figma-color-text-menu-secondary: rgba(255, 255, 255, 0.7);
180
+ --figma-color-text-menu-tertiary: rgba(255, 255, 255, 0.4);
181
+ }
182
+
183
+ :root.figma-dark {
184
+ --figma-color-bg: #2c2c2c;
185
+ --figma-color-bg-brand: #0c8ce9;
186
+ --figma-color-bg-brand-hover: #0a6dc2;
187
+ --figma-color-bg-brand-pressed: #0a6dc2;
188
+ --figma-color-bg-brand-secondary: #105cad;
189
+ --figma-color-bg-brand-tertiary: #394360;
190
+ --figma-color-bg-component: #8a38f5;
191
+ --figma-color-bg-component-hover: #7a2ed6;
192
+ --figma-color-bg-component-pressed: #7a2ed6;
193
+ --figma-color-bg-component-secondary: #652ca8;
194
+ --figma-color-bg-component-tertiary: #473956;
195
+ --figma-color-bg-danger: #e03e1a;
196
+ --figma-color-bg-danger-hover: #c4381c;
197
+ --figma-color-bg-danger-pressed: #c4381c;
198
+ --figma-color-bg-danger-secondary: #963323;
199
+ --figma-color-bg-danger-tertiary: #60332a;
200
+ --figma-color-bg-disabled: #757575;
201
+ --figma-color-bg-disabled-secondary: #b3b3b3;
202
+ --figma-color-bg-hover: #383838;
203
+ --figma-color-bg-inverse: #ffffff;
204
+ --figma-color-bg-onselected: #667799;
205
+ --figma-color-bg-onselected-hover: #667799;
206
+ --figma-color-bg-onselected-pressed: #667799;
207
+ --figma-color-bg-pressed: #383838;
208
+ --figma-color-bg-secondary: #383838;
209
+ --figma-color-bg-selected: #4a5878;
210
+ --figma-color-bg-selected-hover: #536383;
211
+ --figma-color-bg-selected-pressed: #536383;
212
+ --figma-color-bg-selected-secondary: #394360;
213
+ --figma-color-bg-selected-strong: #0c8ce9;
214
+ --figma-color-bg-selected-tertiary: #394360;
215
+ --figma-color-bg-success: #198f51;
216
+ --figma-color-bg-success-hover: #078348;
217
+ --figma-color-bg-success-pressed: #078348;
218
+ --figma-color-bg-success-secondary: #0a5c35;
219
+ --figma-color-bg-success-tertiary: #476656;
220
+ --figma-color-bg-tertiary: #444444;
221
+ --figma-color-bg-warning: #f3c11b;
222
+ --figma-color-bg-warning-hover: #f2b50d;
223
+ --figma-color-bg-warning-pressed: #f2b50d;
224
+ --figma-color-bg-warning-secondary: #e4a711;
225
+ --figma-color-bg-warning-tertiary: #5c4100;
226
+ --figma-color-border: #444444;
227
+ --figma-color-border-brand: #105cad;
228
+ --figma-color-border-brand-strong: #7cc4f8;
229
+ --figma-color-border-component: #652ca8;
230
+ --figma-color-border-component-hover: #8a38f5;
231
+ --figma-color-border-component-strong: #d6b6fb;
232
+ --figma-color-border-danger: #963323;
233
+ --figma-color-border-danger-strong: #fca397;
234
+ --figma-color-border-disabled: #444444;
235
+ --figma-color-border-disabled-strong: #ffffff66;
236
+ --figma-color-border-onbrand: #0a6dc2;
237
+ --figma-color-border-onbrand-strong: #ffffff;
238
+ --figma-color-border-oncomponent: #7a2ed6;
239
+ --figma-color-border-oncomponent-strong: #ffffff;
240
+ --figma-color-border-ondanger: #c4381c;
241
+ --figma-color-border-ondanger-strong: #ffffff;
242
+ --figma-color-border-onselected: #667799;
243
+ --figma-color-border-onselected-strong: #ffffffe5;
244
+ --figma-color-border-onsuccess: #078348;
245
+ --figma-color-border-onsuccess-strong: #ffffff;
246
+ --figma-color-border-onwarning: #e4a711;
247
+ --figma-color-border-onwarning-strong: #000000e5;
248
+ --figma-color-border-selected: #0c8ce9;
249
+ --figma-color-border-selected-strong: #7cc4f8;
250
+ --figma-color-border-strong: #ffffffe5;
251
+ --figma-color-border-success: #0a5c35;
252
+ --figma-color-border-success-strong: #79d297;
253
+ --figma-color-border-warning: #925711;
254
+ --figma-color-border-warning-strong: #f7d15f;
255
+ --figma-color-icon: #ffffff;
256
+ --figma-color-icon-brand: #7cc4f8;
257
+ --figma-color-icon-brand-pressed: #0c8ce9;
258
+ --figma-color-icon-brand-secondary: #0a6dc2;
259
+ --figma-color-icon-brand-tertiary: #394360;
260
+ --figma-color-icon-component: #d1a8ff;
261
+ --figma-color-icon-component-pressed: #d6b6fb;
262
+ --figma-color-icon-component-secondary: #7f699b;
263
+ --figma-color-icon-component-tertiary: #7f699b;
264
+ --figma-color-icon-danger: #e03e1a;
265
+ --figma-color-icon-danger-hover: #fbbcb6;
266
+ --figma-color-icon-danger-pressed: #fbbcb6;
267
+ --figma-color-icon-danger-secondary: #e03e1a;
268
+ --figma-color-icon-danger-secondary-hover: #e03e1a;
269
+ --figma-color-icon-danger-tertiary: #e03e1a;
270
+ --figma-color-icon-disabled: #ffffff66;
271
+ --figma-color-icon-hover: #ffffff;
272
+ --figma-color-icon-onbrand: #ffffff;
273
+ --figma-color-icon-onbrand-secondary: #ffffffcc;
274
+ --figma-color-icon-onbrand-tertiary: #ffffff66;
275
+ --figma-color-icon-oncomponent: #ffffff;
276
+ --figma-color-icon-oncomponent-secondary: #ffffffcc;
277
+ --figma-color-icon-oncomponent-tertiary: #ffffff66;
278
+ --figma-color-icon-ondanger: #ffffff;
279
+ --figma-color-icon-ondanger-secondary: #ffffffcc;
280
+ --figma-color-icon-ondanger-tertiary: #ffffff66;
281
+ --figma-color-icon-ondisabled: #2c2c2c;
282
+ --figma-color-icon-oninverse: #000000e5;
283
+ --figma-color-icon-onselected: #ffffff;
284
+ --figma-color-icon-onselected-secondary: #ffffffb2;
285
+ --figma-color-icon-onselected-strong: #ffffff;
286
+ --figma-color-icon-onselected-tertiary: #ffffff66;
287
+ --figma-color-icon-onsuccess: #ffffff;
288
+ --figma-color-icon-onsuccess-secondary: #ffffffcc;
289
+ --figma-color-icon-onsuccess-tertiary: #ffffff66;
290
+ --figma-color-icon-onwarning: #000000e5;
291
+ --figma-color-icon-onwarning-secondary: #00000080;
292
+ --figma-color-icon-onwarning-tertiary: #0000004d;
293
+ --figma-color-icon-pressed: #0a6dc2;
294
+ --figma-color-icon-secondary: #ffffffb2;
295
+ --figma-color-icon-secondary-hover: #ffffff;
296
+ --figma-color-icon-selected: #7cc4f8;
297
+ --figma-color-icon-selected-secondary: #7cc4f8;
298
+ --figma-color-icon-selected-tertiary: #7cc4f8;
299
+ --figma-color-icon-success: #198f51;
300
+ --figma-color-icon-success-pressed: #a1e8b9;
301
+ --figma-color-icon-success-secondary: #198f51;
302
+ --figma-color-icon-success-tertiary: #198f51;
303
+ --figma-color-icon-tertiary: #ffffff66;
304
+ --figma-color-icon-tertiary-hover: #ffffff;
305
+ --figma-color-icon-warning: #f3c11b;
306
+ --figma-color-icon-warning-pressed: #f7d15f;
307
+ --figma-color-icon-warning-secondary: #f3c11b;
308
+ --figma-color-icon-warning-tertiary: #f3c11b;
309
+ --figma-color-text: #ffffff;
310
+ --figma-color-text-brand: #7cc4f8;
311
+ --figma-color-text-brand-secondary: #7cc4f8;
312
+ --figma-color-text-brand-tertiary: #7cc4f8;
313
+ --figma-color-text-component: #d1a8ff;
314
+ --figma-color-text-component-pressed: #d6b6fb;
315
+ --figma-color-text-component-secondary: #7f699b;
316
+ --figma-color-text-component-tertiary: #7f699b;
317
+ --figma-color-text-danger: #fca397;
318
+ --figma-color-text-danger-secondary: #fca397;
319
+ --figma-color-text-danger-tertiary: #fca397;
320
+ --figma-color-text-disabled: #ffffff66;
321
+ --figma-color-text-hover: #ffffff;
322
+ --figma-color-text-onbrand: #ffffff;
323
+ --figma-color-text-onbrand-secondary: #ffffffcc;
324
+ --figma-color-text-onbrand-tertiary: #ffffff66;
325
+ --figma-color-text-oncomponent: #ffffff;
326
+ --figma-color-text-oncomponent-secondary: #ffffffcc;
327
+ --figma-color-text-oncomponent-tertiary: #ffffff66;
328
+ --figma-color-text-ondanger: #ffffff;
329
+ --figma-color-text-ondanger-secondary: #ffffffcc;
330
+ --figma-color-text-ondanger-tertiary: #ffffff66;
331
+ --figma-color-text-ondisabled: #2c2c2c;
332
+ --figma-color-text-oninverse: #000000e5;
333
+ --figma-color-text-onselected: #ffffffe5;
334
+ --figma-color-text-onselected-secondary: #ffffffb2;
335
+ --figma-color-text-onselected-strong: #ffffff;
336
+ --figma-color-text-onselected-tertiary: #ffffff66;
337
+ --figma-color-text-onsuccess: #ffffff;
338
+ --figma-color-text-onsuccess-secondary: #ffffffcc;
339
+ --figma-color-text-onsuccess-tertiary: #ffffff66;
340
+ --figma-color-text-onwarning: #000000e5;
341
+ --figma-color-text-onwarning-secondary: #00000080;
342
+ --figma-color-text-onwarning-tertiary: #0000004d;
343
+ --figma-color-text-secondary: #ffffffb2;
344
+ --figma-color-text-secondary-hover: #ffffff;
345
+ --figma-color-text-selected: #7cc4f8;
346
+ --figma-color-text-selected-secondary: #7cc4f8;
347
+ --figma-color-text-selected-tertiary: #7cc4f8;
348
+ --figma-color-text-success: #79d297;
349
+ --figma-color-text-success-secondary: #79d297;
350
+ --figma-color-text-success-tertiary: #79d297;
351
+ --figma-color-text-tertiary: #ffffff66;
352
+ --figma-color-text-tertiary-hover: #ffffff;
353
+ --figma-color-text-warning: #f7d15f;
354
+ --figma-color-text-warning-secondary: #f7d15f;
355
+ --figma-color-text-warning-tertiary: #f7d15f;
356
+ }
357
+
358
+ :root {
359
+ --font-size: 16px;
360
+ --figma-color-bordertranslucent: rgba(0, 0, 0, 0.1);
361
+ --checkerboard: repeating-conic-gradient(
362
+ rgba(0, 0, 0, 0.1) 0% 25%,
363
+ rgba(255, 255, 255, 0.1) 0% 50%
364
+ )
365
+ 0 0 / 0.66666rem 0.66666rem;
366
+ --bg-hue: linear-gradient(
367
+ 90deg,
368
+ rgba(255, 0, 0, 1),
369
+ rgba(255, 48, 0, 1),
370
+ rgba(255, 96, 0, 1),
371
+ rgba(255, 143, 0, 1),
372
+ rgba(255, 191, 0, 1),
373
+ rgba(255, 239, 0, 1),
374
+ rgba(223, 255, 0, 1),
375
+ rgba(175, 255, 0, 1),
376
+ rgba(128, 255, 0, 1),
377
+ rgba(80, 255, 0, 1),
378
+ rgba(32, 255, 0, 1),
379
+ rgba(0, 255, 16, 1),
380
+ rgba(0, 255, 64, 1),
381
+ rgba(0, 255, 112, 1),
382
+ rgba(0, 255, 159, 1),
383
+ rgba(0, 255, 207, 1),
384
+ rgba(0, 255, 255, 1),
385
+ rgba(0, 207, 255, 1),
386
+ rgba(0, 159, 255, 1),
387
+ rgba(0, 112, 255, 1),
388
+ rgba(0, 64, 255, 1),
389
+ rgba(0, 16, 255, 1),
390
+ rgba(32, 0, 255, 1),
391
+ rgba(80, 0, 255, 1),
392
+ rgba(127, 0, 255, 1),
393
+ rgba(175, 0, 255, 1),
394
+ rgba(223, 0, 255, 1),
395
+ rgba(255, 0, 239, 1),
396
+ rgba(255, 0, 191, 1),
397
+ rgba(255, 0, 143, 1),
398
+ rgba(255, 0, 96, 1),
399
+ rgba(255, 0, 48, 1)
400
+ );
401
+ --input-transition: all 0.08s ease-out;
402
+ --bg-selected: #f5f5f5;
403
+ --bg-selected-active: #e5f4ff;
404
+ --bg-tooltip: #1e1e1e;
405
+ --body-medium-fontSize: 0.6875rem;
406
+ --body-large-fontSize: 0.8125rem;
407
+ --figma-color-border-selected: #0d99ff;
408
+ --spacer-1: 0.25rem;
409
+ --spacer-2: 0.5rem;
410
+ --spacer-3: 1rem;
411
+ --spacer-4: 1.5rem;
412
+ --spacer-5: 2rem;
413
+ --spacer-6: 2.5rem;
414
+ --color-tooltip: #ffffff;
415
+ --radius-medium: 0.3125rem;
416
+ --radius-large: 0.8125rem;
417
+ --body-letter-spacing: 0.055px;
418
+ --body-medium-strong-fontWeight: 550;
419
+ --body-large-strong-fontWeight: 500;
420
+ --body-medium-fontWeight: 450;
421
+ --handle-shadow: 0px 0 0 0.75px rgba(0, 0, 0, 0.05),
422
+ 0px 1px 3px 0px rgba(0, 0, 0, 0.05), 0px 3px 8px 0px rgba(0, 0, 0, 0.05),
423
+ 0px 0px 0.5px 0px rgba(0, 0, 0, 0.1), var(--figma-elevation-200);
424
+
425
+ --popover-min-width: 15rem;
426
+ --figma-color-bg-ghost-hover: rgba(0, 0, 0, 0.05);
427
+ --elevation-500-modal-window: 0px 0px 0.5px rgba(0, 0, 0, 0.08),
428
+ 0px 10px 24px rgba(0, 0, 0, 0.18), 0px 2px 5px rgba(0, 0, 0, 0.15);
429
+
430
+ --figma-elevation-400-menu-panel: 0px 0px 0.5px 0px rgba(0, 0, 0, 0.12),
431
+ 0px 10px 16px 0px rgba(0, 0, 0, 0.12), 0px 2px 5px 0px rgba(0, 0, 0, 0.15);
432
+
433
+ --figma-elevation-500-modal-window: 0px 0px 0.5px 0px rgba(0, 0, 0, 0.08),
434
+ 0px 10px 24px 0px rgba(0, 0, 0, 0.18), 0px 2px 5px 0px rgba(0, 0, 0, 0.15);
435
+
436
+ color-scheme: light dark;
437
+ /* Icons */
438
+ --icon-chevron: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.87868 7.12132L8 9.24264L10.1213 7.12132' stroke='rgb(0 0 0 / 90%)' stroke-linecap='round'/%3E%3C/svg%3E%0A");
439
+ --icon-checkmark: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.7773 4.08403C12.0071 4.2372 12.0692 4.54764 11.916 4.7774L7.91603 10.7774C7.83293 10.902 7.69834 10.9829 7.54927 10.9976C7.4002 11.0124 7.25237 10.9595 7.14645 10.8536L4.14645 7.85361C3.95118 7.65834 3.95118 7.34176 4.14645 7.1465C4.34171 6.95124 4.65829 6.95124 4.85355 7.1465L7.42229 9.71523L11.084 4.2227C11.2372 3.99294 11.5476 3.93085 11.7773 4.08403Z' fill='white'/%3E%3C/svg%3E%0A");
440
+ /* Elevations */
441
+ --figma-elevation-100: 0px 0px 0.5px 0px rgba(0, 0, 0, 0.3),
442
+ 0px 1px 3px 0px rgba(0, 0, 0, 0.15);
443
+
444
+ --figma-elevation-200: 0px 1px 3px 0px rgba(0, 0, 0, 0.102),
445
+ 0px 3px 8px 0px rgba(0, 0, 0, 0.102), 0px 0px 0.5px 0px rgba(0, 0, 0, 0.18);
446
+
447
+ --font-family: "Inter", AppleSystemUIFont, BlinkMacSystemFont, avenir next,
448
+ avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto,
449
+ arial, sans-serif;
450
+ }
451
+
452
+ :root.figma-dark {
453
+ --icon-chevron: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.87868 7.12132L8 9.24264L10.1213 7.12132' stroke='rgb(255 255 255 / 100%)' stroke-linecap='round'/%3E%3C/svg%3E%0A");
454
+ --handle-shadow: 0px 0 0 0.75px 0px 0 0 0.75px rgba(0, 0, 0, 0.1),
455
+ 0px 0px 0.5px 0px rgba(255, 255, 255, 0.1);
456
+ --figma-color-bg-ghost-hover: rgba(255, 255, 255, 0.05);
457
+ --figma-color-bordertranslucent: rgba(255, 255, 255, 0.1);
458
+ --figma-elevation-400-menu-panel: 0px 0.5px 0px 0px rgba(255, 255, 255, 0.08)
459
+ inset,
460
+ 0px 10px 16px 0px rgba(0, 0, 0, 0.35),
461
+ inset 0px 0.75px 0px rgba(255, 255, 255, 0.075),
462
+ 0px 2px 5px 0px rgba(0, 0, 0, 0.35);
463
+
464
+ --figma-elevation-500-modal-window: 0px 10px 24px rgba(0, 0, 0, 0.45),
465
+ 0px 3px 5px rgba(0, 0, 0, 0.35),
466
+ inset 0px 0.75px 0px rgba(255, 255, 255, 0.1);
467
+ --figma-elevation-100: 0px 0px 0.5px 0px rgba(0, 0, 0, 0.5),
468
+ 0px 0.75px 0px 0px rgba(255, 255, 255, 0.1) inset,
469
+ 0px 1px 3px 0px rgba(0, 0, 0, 0.4);
470
+ }
471
+
472
+ button,
473
+ select,
474
+ input,
475
+ fieldset {
476
+ display: inline-flex;
477
+ align-items: center;
478
+ margin: 0;
479
+ gap: 0.25rem;
480
+ font: inherit;
481
+ line-height: 1rem;
482
+ }
483
+
484
+ textarea,
485
+ input[type="text"],
486
+ input[type="number"],
487
+ input[type="password"],
488
+ .input {
489
+ background-color: var(--figma-color-bg-secondary);
490
+ border: 0;
491
+ border-radius: var(--radius-medium);
492
+ padding: var(--spacer-1) var(--spacer-2);
493
+ line-height: 1rem !important;
494
+ box-sizing: content-box;
495
+ resize: none;
496
+ min-width: 0;
497
+ font: inherit;
498
+ display: flex;
499
+ color: inherit;
500
+ -moz-appearance: textfield;
501
+
502
+ &:focus {
503
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
504
+ outline: 0;
505
+ }
506
+ &::-webkit-outer-spin-button,
507
+ &::-webkit-inner-spin-button {
508
+ display: none;
509
+ margin: 0;
510
+ }
511
+ }
512
+
513
+ /* Textarea */
514
+ textarea {
515
+ min-height: 2rem;
516
+ display: block;
517
+ width: 100%;
518
+ box-sizing: border-box;
519
+ }
520
+
521
+ /* Dropdown */
522
+ select,
523
+ input[type="text"][list] {
524
+ height: var(--spacer-4);
525
+ padding: 0 calc(var(--spacer-2) - 1px);
526
+ border-radius: var(--radius-medium);
527
+ display: flex;
528
+ appearance: none;
529
+ align-items: center;
530
+ flex: 1 0 0;
531
+ border: 0;
532
+ color: var(--figma-color-text);
533
+ background-color: var(--figma-color-bg);
534
+ box-shadow: inset 0 0 0 1px var(--figma-color-border);
535
+ accent-color: var(--figma-color-bg-brand);
536
+ overflow: hidden;
537
+ white-space: nowrap;
538
+ text-overflow: ellipsis;
539
+
540
+ &:focus {
541
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
542
+ outline: 0;
543
+ }
544
+
545
+ &::-webkit-calendar-picker-indicator {
546
+ opacity: 0;
547
+ }
548
+ }
549
+
550
+ @supports (appearance: base-select) {
551
+ select {
552
+ appearance: base-select;
553
+
554
+ option::checkmark {
555
+ content: var(--icon-checkmark);
556
+ display: block;
557
+ width: 1rem;
558
+ height: 1rem;
559
+ }
560
+
561
+ option {
562
+ display: flex;
563
+ gap: var(--spacer-1);
564
+ padding: 0 var(--spacer-4) 0 calc(var(--spacer-1) * 2 + var(--spacer-1));
565
+ font-weight: var(--body-medium-fontWeight);
566
+ color: var(--figma-color-text-menu);
567
+ position: relative;
568
+ &[hidden] {
569
+ display: none;
570
+ }
571
+ &:not(:checked):before {
572
+ content: "";
573
+ display: block;
574
+ position: absolute;
575
+ inset: 0 var(--spacer-2);
576
+ border-radius: var(--radius-medium);
577
+ z-index: -1;
578
+ background-color: transparent;
579
+ }
580
+ &:not(:disabled) {
581
+ &:hover,
582
+ &:active,
583
+ &:focus {
584
+ background-color: transparent;
585
+ outline: 0;
586
+ &:before {
587
+ background-color: var(--figma-color-bg-menu-hover);
588
+ }
589
+ }
590
+ }
591
+ }
592
+
593
+ optgroup {
594
+ color: var(--figma-color-text-menu-secondary);
595
+ text-align: left;
596
+ position: relative;
597
+ padding: 0 var(--spacer-1) 0 calc(var(--spacer-1) * 2 + var(--spacer-1));
598
+ font-weight: var(--body-medium-fontWeight);
599
+ &::-internal-optgroup-label {
600
+ display: none;
601
+ }
602
+ legend {
603
+ padding: var(--spacer-1, 0.3rem) var(--spacer-1, 1rem);
604
+ }
605
+ option {
606
+ margin: 0 calc(var(--spacer-1) * -1);
607
+ margin-left: calc((var(--spacer-1) * 2 + var(--spacer-1)) * -1);
608
+ }
609
+ &:not(:first-child) {
610
+ margin-top: var(--spacer-2);
611
+ padding-top: var(--spacer-2);
612
+
613
+ &:before {
614
+ content: "";
615
+ display: block;
616
+ position: absolute;
617
+ left: 0;
618
+ right: 0;
619
+ top: 1px;
620
+ height: 1px;
621
+ background-color: var(--figma-color-border-menu);
622
+ margin-bottom: var(--spacer-2);
623
+ }
624
+ }
625
+ }
626
+ option[hidden="true"]:first-child + optgroup {
627
+ margin-top: 0;
628
+ padding-top: 0;
629
+ &:before {
630
+ display: none;
631
+ }
632
+ }
633
+ }
634
+ ::picker-icon {
635
+ display: none;
636
+ }
637
+
638
+ ::picker(select) {
639
+ appearance: base-select;
640
+ scrollbar-width: thin;
641
+ outline: 0;
642
+ scrollbar-color: var(--figma-color-text-menu-tertiary)
643
+ var(--figma-color-bg-menu);
644
+ border-radius: var(--radius-large);
645
+ border: 0;
646
+ background-color: var(--figma-color-bg-menu);
647
+ padding: var(--spacer-2) 0;
648
+ box-shadow: var(--figma-elevation-400-menu-panel);
649
+ }
650
+ }
651
+ input[type="text"][list]:hover,
652
+ input[type="text"][list]:active,
653
+ input[type="text"][list]:focus,
654
+ select {
655
+ background-image: var(--icon-chevron);
656
+ background-position: calc(100% - 0.25rem) center;
657
+ background-repeat: no-repeat;
658
+ }
659
+
660
+ input[type="text"][list],
661
+ select {
662
+ padding-right: 1.5rem;
663
+ }
664
+
665
+ fig-dialog > *:not(dialog) {
666
+ display: none !important;
667
+ }
668
+
669
+ /* Dropdown */
670
+ fig-dropdown,
671
+ .fig-dropdown {
672
+ display: inline-flex;
673
+ position: relative;
674
+
675
+ & > *:not(select) {
676
+ display: none !important;
677
+ }
678
+ > select {
679
+ display: block;
680
+ width: 100%;
681
+ }
682
+ }
683
+
684
+ /* Button */
685
+ .fig-button,
686
+ fig-button {
687
+ color: var(--figma-color-text-onbrand);
688
+ display: flex;
689
+ align-items: center;
690
+ justify-content: center;
691
+ height: var(--spacer-4);
692
+ padding: 0 var(--spacer-2);
693
+ appearance: none;
694
+ border: 0;
695
+ color: var(--figma-color-text-onbrand);
696
+ outline: 0;
697
+ border-radius: var(--radius-medium);
698
+ background-color: var(--figma-color-bg-brand);
699
+ font-weight: 500;
700
+
701
+ &:active {
702
+ background-color: var(--figma-color-bg-brand-pressed);
703
+ }
704
+
705
+ /* Variant: Ghost */
706
+ &[variant="ghost"],
707
+ &[variant="link"] {
708
+ box-shadow: none;
709
+ background: none;
710
+ color: var(--figma-color-text);
711
+
712
+ &:hover:not(:active) {
713
+ background-color: var(--figma-color-bg-ghost-hover);
714
+ }
715
+
716
+ &:active {
717
+ outline: 0;
718
+ background-color: var(--figma-color-bg-selected);
719
+ }
720
+ }
721
+
722
+ &[variant="ghost"][disabled]:not([disabled="false"]) {
723
+ background-color: transparent;
724
+ }
725
+
726
+ &[variant="link"] {
727
+ color: var(--figma-color-text-brand);
728
+ }
729
+
730
+ /* Variant: Secondary */
731
+ &[variant="secondary"] {
732
+ border: 1px solid var(--figma-color-border);
733
+ padding: 0 calc(var(--spacer-2) - 1px);
734
+ background: none;
735
+ color: var(--figma-color-text);
736
+
737
+ &:active {
738
+ background-color: var(--figma-color-bg-secondary);
739
+ }
740
+ }
741
+
742
+ /* Variant: Input */
743
+ &[variant="input"] {
744
+ background-color: var(--figma-color-bg-secondary);
745
+ box-shadow: none;
746
+ }
747
+
748
+ /* Icon only */
749
+ &[icon] {
750
+ width: var(--spacer-4);
751
+ padding: 0;
752
+ flex-grow: 0;
753
+ flex-shrink: 0;
754
+ flex-basis: var(--spacer-4);
755
+ &[size="compact"] {
756
+ width: var(--spacer-3);
757
+ flex-basis: var(--spacer-3);
758
+ }
759
+ }
760
+
761
+ /* Disabled */
762
+ &[disabled]:not([disabled="false"]) {
763
+ background-color: var(--figma-color-bg-disabled);
764
+ pointer-events: none;
765
+ cursor: not-allowed;
766
+ &:not([variant="secondary"]) {
767
+ color: var(--figma-color-text-ondisabled);
768
+ box-shadow: none;
769
+ }
770
+ &[variant="secondary"],
771
+ &[variant="ghost"] {
772
+ color: var(--figma-color-text-disabled);
773
+ background-color: transparent;
774
+ }
775
+ }
776
+
777
+ /* Size */
778
+ &[size="large"],
779
+ &[size="large"] > button {
780
+ height: var(--spacer-5);
781
+ }
782
+
783
+ &[size="large"][icon],
784
+ &[size="large"][icon] > button {
785
+ width: var(--spacer-5);
786
+ }
787
+
788
+ /* Full width */
789
+ &[full] {
790
+ width: 100%;
791
+ }
792
+
793
+ /* Block button */
794
+ &[inline="false"],
795
+ &[inline="false"] > button {
796
+ display: flex;
797
+ width: 100%;
798
+ justify-content: left;
799
+ height: auto;
800
+ text-align: left;
801
+ align-items: center;
802
+ padding: var(--spacer-1) var(--spacer-2);
803
+ }
804
+
805
+ &[type="select"],
806
+ &[type="upload"] {
807
+ position: relative;
808
+ overflow: hidden;
809
+ > select,
810
+ > input,
811
+ > fig-dropdown {
812
+ position: absolute;
813
+ inset: 0;
814
+ opacity: 0;
815
+ appearance: none;
816
+ }
817
+ }
818
+
819
+ &[inline="false"] {
820
+ padding: 0;
821
+ }
822
+
823
+ &[selected]:not([selected="false"]) {
824
+ &,
825
+ &:hover {
826
+ color: var(--figma-color-icon-brand);
827
+ background-color: var(--figma-color-bg-selected);
828
+ }
829
+ }
830
+
831
+ &:focus,
832
+ &:focus-within {
833
+ &:not(:active) {
834
+ outline: 0;
835
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
836
+ }
837
+ }
838
+ }
839
+
840
+ /* Combo button */
841
+ .fig-button-combo,
842
+ fig-button-combo,
843
+ .fig-input-combo,
844
+ fig-input-combo {
845
+ display: inline-flex;
846
+ flex-wrap: nowrap;
847
+ align-items: center;
848
+ gap: 0px;
849
+ & > * {
850
+ &:first-child,
851
+ &:first-child > * {
852
+ border-top-right-radius: 0;
853
+ border-bottom-right-radius: 0;
854
+ }
855
+
856
+ &:last-child,
857
+ &:last-child > * {
858
+ border-top-left-radius: 0;
859
+ border-bottom-left-radius: 0;
860
+ }
861
+
862
+ &:not(:last-child):not(:first-child),
863
+ &:not(:last-child):not(:first-child) > * {
864
+ border-radius: 0;
865
+ }
866
+ }
867
+ }
868
+ .fig-button-combo,
869
+ fig-button-combo {
870
+ > *:not([variant="secondary"]):not(:first-child) {
871
+ box-shadow: inset 1px 0 0 0 var(--figma-color-bg-brand-hover);
872
+ &[disabled]:not([disabled="false"]) {
873
+ box-shadow: inset 1px 0 0 0 var(--figma-color-border-disabled);
874
+ }
875
+ }
876
+ > *[variant="secondary"]:not(:first-child) {
877
+ border-left-width: 0 !important;
878
+ &[disabled]:not([disabled="false"]) {
879
+ border-left-width: 0 !important;
880
+ }
881
+ }
882
+ }
883
+
884
+ /* Tabs */
885
+ fig-tab,
886
+ .fig-tab {
887
+ display: inline-flex;
888
+ flex-direction: column;
889
+ align-items: center;
890
+ justify-content: center;
891
+ height: 1.5rem;
892
+ padding: 0 var(--spacer-2);
893
+ appearance: none;
894
+ border: 0;
895
+ cursor: default;
896
+ gap: 0 !important;
897
+ user-select: none;
898
+ border-radius: var(--radius-medium);
899
+ color: var(--figma-color-text-secondary);
900
+ position: relative;
901
+
902
+ &[label] {
903
+ &::after {
904
+ content: attr(label);
905
+ color: var(--figma-color-text-secondary);
906
+ content: attr(label);
907
+ height: 0 !important;
908
+ width: auto !important;
909
+ visibility: hidden;
910
+ overflow: hidden;
911
+ user-select: none;
912
+ pointer-events: none;
913
+ font-weight: var(--body-medium-strong-fontWeight);
914
+ }
915
+ }
916
+
917
+ &:has(:checked),
918
+ &[selected]:not([selected="false"]) {
919
+ background-color: var(--figma-color-bg-secondary);
920
+ font-weight: var(--body-medium-strong-fontWeight);
921
+ color: var(--figma-color-text);
922
+ }
923
+
924
+ &:hover {
925
+ background-color: var(--figma-color-bg-secondary);
926
+ }
927
+
928
+ & [type="radio"] {
929
+ position: absolute;
930
+ inset: 0;
931
+ border-radius: 0;
932
+ opacity: 0;
933
+ z-index: 1;
934
+ width: 100%;
935
+ height: 100%;
936
+ }
937
+ }
938
+
939
+ fig-tabs,
940
+ .tabs {
941
+ display: flex;
942
+ gap: var(--spacer-2);
943
+ }
944
+
945
+ /* Avatar */
946
+ fig-avatar,
947
+ .fig-avatar {
948
+ --size: 1.5rem;
949
+ width: var(--size);
950
+ display: inline-grid;
951
+ place-items: center;
952
+ height: var(--size);
953
+ border-radius: 100%;
954
+ border: 0;
955
+ background: var(--figma-color-bg-brand);
956
+ overflow: hidden;
957
+ color: var(--figma-color-icon-onbrand);
958
+
959
+ img {
960
+ width: var(--size);
961
+ height: var(--size);
962
+ position: absolute;
963
+ border-radius: 100%;
964
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
965
+ &:not([src]) {
966
+ background: var(--checkerboard);
967
+ }
968
+ }
969
+ &[borderless] img {
970
+ box-shadow: none;
971
+ }
972
+
973
+ &:has(img[src]) {
974
+ background: none;
975
+ }
976
+ &::after {
977
+ content: attr(initials);
978
+ }
979
+ &[size="large"] {
980
+ --size: 3rem;
981
+ }
982
+ }
983
+
984
+ /* Color input */
985
+ input[type="color"] {
986
+ width: 0.875rem;
987
+ height: 0.875rem;
988
+ -webkit-appearance: none;
989
+ appearance: none;
990
+ border: 0;
991
+ padding: 0;
992
+ margin: 0;
993
+ background: none;
994
+ padding: 0.3125rem;
995
+ flex-shrink: 0;
996
+ box-sizing: content-box;
997
+ border-radius: var(--radius-medium);
998
+ background-color: var(--figma-color-bg-secondary);
999
+ display: inline-grid;
1000
+
1001
+ &:focus {
1002
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
1003
+ outline: 0;
1004
+ }
1005
+
1006
+ &::-webkit-color-swatch-wrapper {
1007
+ padding: 0;
1008
+ border: 0;
1009
+ appearance: none;
1010
+ border-radius: 0.125rem;
1011
+ background: var(--checkerboard);
1012
+ overflow: hidden;
1013
+ grid-area: 1/1;
1014
+ outline: 0;
1015
+ }
1016
+
1017
+ &::-webkit-color-swatch {
1018
+ padding: 0;
1019
+ border: 0;
1020
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1021
+ border-radius: 0.125rem;
1022
+ mask-image: linear-gradient(
1023
+ to right,
1024
+ black 0%,
1025
+ black 50%,
1026
+ rgba(0, 0, 0, var(--alpha)) 50%
1027
+ );
1028
+ }
1029
+ }
1030
+
1031
+ input[type="color"] {
1032
+ &::-moz-color-swatch {
1033
+ border-radius: 0.125rem;
1034
+ padding: 0;
1035
+ border: 0;
1036
+ appearance: none;
1037
+ mask-image: linear-gradient(
1038
+ to right,
1039
+ black 0%,
1040
+ black 50%,
1041
+ rgba(0, 0, 0, var(--alpha)) 50%
1042
+ );
1043
+ border-radius: 0.125rem;
1044
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1045
+ }
1046
+ }
1047
+
1048
+ fig-chit {
1049
+ --gradient-color-1: #ff90ff;
1050
+ --gradient-color-2: #0000ff;
1051
+ --size: 1.5rem;
1052
+ display: inline-grid;
1053
+ width: var(--size);
1054
+ height: var(--size);
1055
+ border-radius: var(--radius-medium);
1056
+
1057
+ &::before,
1058
+ &::after,
1059
+ input {
1060
+ grid-area: 1/1;
1061
+ }
1062
+
1063
+ &[selected]:not([selected="false"])::before {
1064
+ content: "";
1065
+ width: var(--size);
1066
+ height: var(--size);
1067
+ z-index: 1;
1068
+ border-radius: var(--radius-medium);
1069
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
1070
+ }
1071
+
1072
+ &[size="large"] {
1073
+ --size: 1.75rem;
1074
+
1075
+ &[type="gradient"]::after,
1076
+ &[type="image"]::after,
1077
+ &[type="color"]::after,
1078
+ input[type="color"] {
1079
+ padding: 0;
1080
+ width: var(--size);
1081
+ height: var(--size);
1082
+ border-radius: var(--radius-medium);
1083
+ }
1084
+ &[selected]:not([selected="false"])::before {
1085
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected),
1086
+ inset 0 0 0 3px var(--figma-color-bg);
1087
+ }
1088
+ input[type="color"]::-webkit-color-swatch-wrapper {
1089
+ border-radius: var(--radius-medium);
1090
+ }
1091
+
1092
+ input[type="color"]::-webkit-color-swatch {
1093
+ border-radius: var(--radius-medium);
1094
+ }
1095
+
1096
+ input[type="color"]::-moz-color-swatch {
1097
+ border-radius: var(--radius-medium);
1098
+ }
1099
+ }
1100
+
1101
+ &[disabled="true"] {
1102
+ input {
1103
+ pointer-events: none;
1104
+ }
1105
+ }
1106
+
1107
+ &[type="gradient"],
1108
+ &[type="image"] {
1109
+ &::after {
1110
+ content: "";
1111
+ width: 0.875rem;
1112
+ height: 0.875rem;
1113
+ background-image: var(--src);
1114
+ border-radius: 0.125rem;
1115
+ background-size: cover;
1116
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1117
+ }
1118
+ &::after,
1119
+ input {
1120
+ grid-area: 1/1;
1121
+ place-self: center;
1122
+ }
1123
+ input[type="color"] {
1124
+ opacity: 0;
1125
+ }
1126
+ input[type="color"]::-webkit-color-swatch-wrapper {
1127
+ background: none;
1128
+ }
1129
+ input[type="color"]::-moz-color-swatch {
1130
+ opacity: 0;
1131
+ }
1132
+ input[type="color"]::-webkit-color-swatch {
1133
+ opacity: 0;
1134
+ }
1135
+ }
1136
+
1137
+ &[type="image"] {
1138
+ &:not([src])::after {
1139
+ background: var(--checkerboard);
1140
+ }
1141
+ }
1142
+ &[type="gradient"] {
1143
+ &[variant="linear"]::after {
1144
+ --gradient: linear-gradient(
1145
+ to bottom,
1146
+ var(--gradient-color-1),
1147
+ var(--gradient-color-2)
1148
+ );
1149
+ }
1150
+ &[variant="angular"]::after {
1151
+ --gradient: conic-gradient(
1152
+ from 180deg,
1153
+ var(--gradient-color-1),
1154
+ var(--gradient-color-2)
1155
+ );
1156
+ }
1157
+ &[variant="radial"]::after {
1158
+ --gradient: radial-gradient(
1159
+ circle,
1160
+ var(--gradient-color-1),
1161
+ var(--gradient-color-2)
1162
+ );
1163
+ }
1164
+ &::after {
1165
+ background: var(--gradient);
1166
+ }
1167
+ }
1168
+ }
1169
+
1170
+ /* Fig Image */
1171
+ fig-image {
1172
+ --image-size: 2rem;
1173
+ display: inline-grid;
1174
+ place-items: center;
1175
+ width: var(--image-size);
1176
+ height: var(--image-size);
1177
+ > * {
1178
+ grid-area: 1/1;
1179
+ }
1180
+ fig-chit {
1181
+ --size: var(--image-size) !important;
1182
+ }
1183
+ fig-button {
1184
+ opacity: 0;
1185
+ pointer-events: none;
1186
+ }
1187
+ &:not([src]):not([src=""]) fig-button,
1188
+ &:hover fig-button {
1189
+ opacity: 1;
1190
+ pointer-events: all;
1191
+ }
1192
+ &[size="medium"] {
1193
+ --image-size: 4rem;
1194
+ }
1195
+ &[size="large"] {
1196
+ --image-size: 8rem;
1197
+ }
1198
+ }
1199
+
1200
+ /* Combo input */
1201
+ .input-combo {
1202
+ display: inline-flex;
1203
+ flex-wrap: nowrap;
1204
+ align-items: center;
1205
+ gap: 1px;
1206
+
1207
+ & > * {
1208
+ &:first-child,
1209
+ &:first-child > * {
1210
+ border-top-right-radius: 0;
1211
+ border-bottom-right-radius: 0;
1212
+ }
1213
+
1214
+ &:last-child,
1215
+ &:last-child > * {
1216
+ border-top-left-radius: 0;
1217
+ border-bottom-left-radius: 0;
1218
+ }
1219
+
1220
+ &:not(:last-child):not(:first-child),
1221
+ &:not(:last-child):not(:first-child) > * {
1222
+ border-radius: 0;
1223
+ }
1224
+ }
1225
+ }
1226
+
1227
+ /* Switch */
1228
+ input[type="checkbox"].switch {
1229
+ display: inline-flex;
1230
+ margin: 0;
1231
+ vertical-align: middle;
1232
+ padding: 0;
1233
+ width: 2rem;
1234
+ height: 1rem;
1235
+ left: 0;
1236
+ top: 0;
1237
+ margin: 0;
1238
+ background: transparent;
1239
+ appearance: none;
1240
+ -moz-appearance: none;
1241
+ -webkit-appearance: none;
1242
+ outline: none;
1243
+ border: 0;
1244
+ align-items: center;
1245
+ justify-content: center;
1246
+ border-radius: 0.5rem;
1247
+ background-color: var(--figma-color-bg-secondary);
1248
+ transition: var(--input-transition);
1249
+ box-sizing: border-box;
1250
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1251
+ }
1252
+
1253
+ input[type="checkbox"].switch:after {
1254
+ content: "";
1255
+ background-color: var(--figma-color-icon-onbrand);
1256
+ width: calc(1rem - 2px);
1257
+ height: calc(1rem - 2px);
1258
+ border-radius: 0.5rem;
1259
+ margin: 1px;
1260
+ transform: translate(calc(-0.5rem));
1261
+ transition: var(--input-transition);
1262
+ box-shadow: var(--handle-shadow);
1263
+ }
1264
+
1265
+ input[type="checkbox"].switch[indeterminate="true"]:after {
1266
+ width: 0.5rem;
1267
+ height: 0.125rem;
1268
+ transform: none;
1269
+ }
1270
+
1271
+ input[type="checkbox"].switch[indeterminate="true"],
1272
+ input[type="checkbox"].switch:checked {
1273
+ background-color: var(--figma-color-bg-brand);
1274
+ }
1275
+
1276
+ input[type="checkbox"].switch:checked:after {
1277
+ transform: translate(0.5rem);
1278
+ }
1279
+
1280
+ input[type="checkbox"].switch:disabled {
1281
+ background-color: var(--figma-color-bg-secondary);
1282
+ cursor: not-allowed;
1283
+ &:after {
1284
+ background-color: var(--figma-color-bg);
1285
+ }
1286
+ }
1287
+
1288
+ input[type="checkbox"].switch:focus {
1289
+ outline: 0;
1290
+ }
1291
+
1292
+ input[type="checkbox"].switch:checked:focus {
1293
+ outline: 0;
1294
+ }
1295
+
1296
+ /* Checkbox */
1297
+ input[type="checkbox"]:not(.switch) {
1298
+ appearance: none;
1299
+ border-radius: var(--radius-medium);
1300
+ width: 1rem;
1301
+ height: 1rem;
1302
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1303
+ background-color: var(--figma-color-bg-secondary);
1304
+ vertical-align: middle;
1305
+
1306
+ &:hover {
1307
+ background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.50012 7.5L7.50012 10.5L11.5001 4.5' stroke='white' opacity='0.25' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.125' /%3E%3C/svg%3E%0A");
1308
+ }
1309
+
1310
+ &:checked {
1311
+ background-color: var(--figma-color-bg-brand);
1312
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected-strong);
1313
+ background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.50012 7.5L7.50012 10.5L11.5001 4.5' stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.125' /%3E%3C/svg%3E%0A");
1314
+ }
1315
+
1316
+ &:focus {
1317
+ outline: 0;
1318
+
1319
+ &:not(:checked) {
1320
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
1321
+ }
1322
+ }
1323
+ }
1324
+ :root.figma-light {
1325
+ input[type="checkbox"]:not(.switch):hover {
1326
+ background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.50012 7.5L7.50012 10.5L11.5001 4.5' stroke='black' opacity='0.25' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.125' /%3E%3C/svg%3E%0A");
1327
+ }
1328
+ }
1329
+
1330
+ label.checkbox:has([type="checkbox"]) {
1331
+ padding-left: 1.5rem;
1332
+
1333
+ & [type="radio"] {
1334
+ margin-left: -1.5rem;
1335
+ }
1336
+ }
1337
+
1338
+ /* Radio */
1339
+ input[type="radio"] {
1340
+ appearance: none;
1341
+ border-radius: 0.5rem;
1342
+ width: 1rem;
1343
+ height: 1rem;
1344
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1345
+ background-color: var(--figma-color-bg-secondary);
1346
+ vertical-align: middle;
1347
+ margin: 0;
1348
+ display: inline-grid;
1349
+ place-content: center;
1350
+
1351
+ &:checked {
1352
+ background-color: var(--figma-color-bg-brand);
1353
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected-strong);
1354
+
1355
+ &::after {
1356
+ transform: scale(1);
1357
+ }
1358
+ }
1359
+
1360
+ &:focus {
1361
+ outline: 0;
1362
+
1363
+ &:not(:checked) {
1364
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
1365
+ }
1366
+ }
1367
+
1368
+ &:hover:not(:checked) {
1369
+ &::after {
1370
+ transform: scale(1);
1371
+ opacity: 0.25;
1372
+ background-color: var(--figma-color-icon);
1373
+ }
1374
+ }
1375
+
1376
+ &::after {
1377
+ content: "";
1378
+ width: 0.375rem;
1379
+ height: 0.375rem;
1380
+ border-radius: 100%;
1381
+ background-color: var(--figma-color-icon-onbrand);
1382
+ transform: scale(0);
1383
+ box-shadow: 0px 0 0 0.75px rgba(0, 0, 0, 0.1),
1384
+ 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 3px 8px 0px rgba(0, 0, 0, 0.1),
1385
+ 0px 0px 0.5px 0px rgba(0, 0, 0, 0.18);
1386
+ }
1387
+ }
1388
+
1389
+ label.radio:has([type="radio"]) {
1390
+ padding-left: 1.5rem;
1391
+
1392
+ & [type="radio"] {
1393
+ margin-left: -1.5rem;
1394
+ }
1395
+ }
1396
+
1397
+ /* Fieldset */
1398
+ fieldset {
1399
+ display: flex;
1400
+ flex-direction: column;
1401
+ gap: 0.25rem;
1402
+ border: 0;
1403
+ align-items: start;
1404
+ padding: var(--spacer-2) 0;
1405
+
1406
+ & > legend {
1407
+ margin-top: 0.125rem;
1408
+ font-weight: 500;
1409
+ font-size: 0.625rem;
1410
+ line-height: 0.875rem;
1411
+ color: var(--figma-color-text-secondary);
1412
+ }
1413
+
1414
+ & > label {
1415
+ display: grid;
1416
+ width: 100%;
1417
+ grid-template-columns: 4rem 1fr;
1418
+ column-gap: var(--spacer-2);
1419
+ align-items: center;
1420
+ }
1421
+ }
1422
+
1423
+ /* Details */
1424
+ details {
1425
+ & > summary {
1426
+ font-weight: var(--body-medium-strong-fontWeight);
1427
+ cursor: default;
1428
+ display: flex;
1429
+ align-items: center;
1430
+ padding: 0 1rem 0 0;
1431
+ height: var(--spacer-6);
1432
+ user-select: none;
1433
+ color: var(--figma-color-text-secondary);
1434
+
1435
+ &::before {
1436
+ content: "";
1437
+ mask-image: var(--icon-chevron);
1438
+ display: inline-flex;
1439
+ background: var(--figma-color-text-secondary);
1440
+ align-items: start;
1441
+ justify-content: center;
1442
+ width: 1rem;
1443
+ height: 1rem;
1444
+ transform: rotate(-90deg);
1445
+ transition: transform var(--transition-duration)
1446
+ var(--transition-timing-function);
1447
+ }
1448
+ &::-webkit-details-marker {
1449
+ display: none;
1450
+ }
1451
+ &::marker {
1452
+ content: "";
1453
+ }
1454
+ }
1455
+
1456
+ & > summary:hover,
1457
+ &[open] > summary {
1458
+ color: inherit;
1459
+
1460
+ &::before {
1461
+ opacity: 1;
1462
+ }
1463
+ }
1464
+
1465
+ &[open] {
1466
+ & > summary::before {
1467
+ transform: rotate(0deg);
1468
+ }
1469
+ }
1470
+ }
1471
+
1472
+ .figma-light details > summary:before {
1473
+ content: var(--icon-chevron);
1474
+ }
1475
+
1476
+ /* Sliders */
1477
+ .fig-slider,
1478
+ fig-slider {
1479
+ --slider-field-height: 1.5rem;
1480
+ --slider-height: 1rem;
1481
+ --slider-thumb-size: var(--slider-height);
1482
+ --slider-percent: calc(var(--slider-complete) * 100%);
1483
+ --start-percent: calc(var(--default, 0) * 100%);
1484
+ --slider-tick-size: calc(var(--slider-height) / 4);
1485
+ --slider-handle-shadow: inset 0 0 0 calc(4px + 0.5rem * var(--unchanged))
1486
+ var(--figma-color-icon-onbrand),
1487
+ inset 0 0 0 5px rgba(0, 0, 0, 0.1), var(--figma-elevation-200);
1488
+ --slider-handle-shadow-focus: inset 0 0 0 4px var(--figma-color-icon-onbrand),
1489
+ inset 0 0 0 5px rgba(0, 0, 0, 0.1), 0px 0 0 0.75px rgba(0, 0, 0, 0.1),
1490
+ 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 3px 8px 0px rgba(0, 0, 0, 0.1),
1491
+ 0px 0px 0.5px 0px rgba(0, 0, 0, 0.18),
1492
+ 0 0 0 1px var(--figma-color-border-selected);
1493
+ --slider-transition: all 0.1s ease-in-out;
1494
+ --handle-transition: var(--slider-transition);
1495
+
1496
+ display: inline-flex;
1497
+ align-items: center;
1498
+ position: relative;
1499
+ height: var(--slider-field-height);
1500
+ transition: var(--slider-transition);
1501
+
1502
+ .fig-slider-input-container {
1503
+ height: var(--slider-height);
1504
+ position: relative;
1505
+ display: block;
1506
+ width: 100%;
1507
+ transition: var(--slider-transition);
1508
+ background: var(--figma-color-bg-secondary);
1509
+ border-radius: 0.5rem;
1510
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1511
+
1512
+ /* Track */
1513
+ &::before {
1514
+ content: "";
1515
+ background: var(--figma-color-bg-brand);
1516
+ position: absolute;
1517
+ left: 0;
1518
+ top: 0;
1519
+ pointer-events: none;
1520
+ bottom: 0;
1521
+ border-radius: 0.5rem;
1522
+ min-width: var(--slider-height);
1523
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1524
+ width: calc(
1525
+ var(--slider-percent) + (1 - var(--slider-complete)) *
1526
+ var(--slider-height)
1527
+ );
1528
+ max-width: 100%;
1529
+ }
1530
+ }
1531
+ &[type="stepper"] {
1532
+ .fig-slider-input-container {
1533
+ &::before {
1534
+ display: none;
1535
+ }
1536
+ }
1537
+ }
1538
+
1539
+ &[type="delta"] {
1540
+ datalist option {
1541
+ position: absolute;
1542
+ margin: 0;
1543
+ left: calc(var(--start-percent) - var(--slider-tick-size) / 2);
1544
+ top: calc(50% - var(--slider-tick-size) / 2);
1545
+ }
1546
+ .fig-slider-input-container {
1547
+ &::before {
1548
+ --left-start: calc(var(--start-percent) - var(--slider-height) / 2);
1549
+ left: min(
1550
+ var(--left-start),
1551
+ var(--slider-percent) - (var(--slider-complete)) *
1552
+ var(--slider-height)
1553
+ );
1554
+ --width: calc(var(--slider-percent) - var(--start-percent));
1555
+ --abs-width: max(
1556
+ var(--width) + var(--slider-height) / 2 + (1 - var(--slider-complete)) *
1557
+ var(--slider-height),
1558
+ -1 * var(--width) + var(--slider-height) / 2 + (
1559
+ var(--slider-complete)
1560
+ ) * var(--slider-height)
1561
+ );
1562
+ width: var(--abs-width);
1563
+ --delta: calc(var(--slider-complete) - var(--default));
1564
+ --abs-delta: max(var(--delta), -1 * var(--delta));
1565
+ opacity: calc(var(--abs-delta) * 100);
1566
+ }
1567
+ }
1568
+ }
1569
+
1570
+ &[type="hue"],
1571
+ &[type="opacity"] {
1572
+ .fig-slider-input-container {
1573
+ &::before {
1574
+ display: none;
1575
+ }
1576
+ }
1577
+ }
1578
+
1579
+ /* Chromium */
1580
+ input[type="range"] {
1581
+ height: var(--slider-height);
1582
+ appearance: none;
1583
+ -webkit-appearance: none;
1584
+ border-radius: calc(var(--slider-height) / 2);
1585
+ display: block;
1586
+ width: 100%;
1587
+ background-color: transparent;
1588
+ transition: var(--slider-transition);
1589
+ position: relative;
1590
+
1591
+ &:active::-webkit-slider-thumb {
1592
+ cursor: grabbing;
1593
+ cursor: -webkit-grabbing;
1594
+ }
1595
+
1596
+ &:focus {
1597
+ outline: none;
1598
+ }
1599
+
1600
+ &::-webkit-slider-thumb {
1601
+ appearance: none;
1602
+ background: transparent;
1603
+ -webkit-appearance: none;
1604
+ transition: var(--handle-transition);
1605
+ border-radius: 100%;
1606
+ height: var(--slider-thumb-size);
1607
+ width: var(--slider-thumb-size);
1608
+ margin-top: calc(var(--slider-height) / 2 - var(--slider-thumb-size) / 2);
1609
+ aspect-ratio: 1;
1610
+ border: none;
1611
+ position: relative;
1612
+ z-index: 1;
1613
+ cursor: grab;
1614
+ cursor: -webkit-grab;
1615
+ box-shadow: var(--slider-handle-shadow);
1616
+ }
1617
+
1618
+ &:disabled {
1619
+ cursor: not-allowed;
1620
+
1621
+ &::-webkit-slider-runnable-track {
1622
+ background: linear-gradient(
1623
+ to right,
1624
+ var(--figma-color-bg-secondary) 0%,
1625
+ var(--figma-color-bg-secondary) var(--slider-percent),
1626
+ var(--figma-color-bg) var(--slider-percent)
1627
+ );
1628
+ }
1629
+
1630
+ &::-webkit-slider-thumb {
1631
+ box-shadow: inset 0 0 0 1rem var(--figma-color-bg-disabled);
1632
+ }
1633
+ }
1634
+
1635
+ &::-webkit-slider-runnable-track {
1636
+ height: var(--slider-height);
1637
+ background-color: transparent;
1638
+ transition: var(--slider-transition);
1639
+ border-radius: calc(var(--slider-height) / 2);
1640
+ }
1641
+
1642
+ &.hue::-webkit-slider-runnable-track {
1643
+ background: var(--bg-hue);
1644
+ }
1645
+
1646
+ &.opacity::-webkit-slider-runnable-track {
1647
+ background: linear-gradient(to right, transparent, var(--color)),
1648
+ var(--checkerboard);
1649
+ }
1650
+ }
1651
+
1652
+ /* Firefox */
1653
+ input[type="range"] {
1654
+ height: var(--slider-height);
1655
+ appearance: none;
1656
+ -moz-appearance: none;
1657
+ border-radius: calc(var(--slider-height) / 2);
1658
+ display: block;
1659
+ width: 100%;
1660
+ background-color: transparent;
1661
+ transition: var(--slider-transition);
1662
+ position: relative;
1663
+
1664
+ &:focus {
1665
+ outline: none;
1666
+ }
1667
+
1668
+ &:active::-moz-range-thumb {
1669
+ cursor: grabbing;
1670
+ cursor: -webkit-grabbing;
1671
+ }
1672
+
1673
+ &::-moz-range-thumb {
1674
+ appearance: none;
1675
+ -moz-appearance: none;
1676
+ background: transparent;
1677
+ border-radius: 100%;
1678
+ height: var(--slider-thumb-size);
1679
+ width: var(--slider-thumb-size);
1680
+ aspect-ratio: 1;
1681
+ border: none;
1682
+ position: relative;
1683
+ z-index: 1;
1684
+ cursor: grab;
1685
+ cursor: -moz-grab;
1686
+ box-shadow: var(--slider-handle-shadow);
1687
+ transition: var(--handle-transition);
1688
+ }
1689
+
1690
+ &:disabled {
1691
+ cursor: not-allowed;
1692
+
1693
+ &::-moz-range-track {
1694
+ background: linear-gradient(
1695
+ to right,
1696
+ var(--figma-color-bg-secondary) 0%,
1697
+ var(--figma-color-bg-secondary) var(--slider-percent),
1698
+ var(--figma-color-bg) var(--slider-percent)
1699
+ );
1700
+ }
1701
+
1702
+ &::-moz-range-thumb {
1703
+ box-shadow: inset 0 0 0 1rem var(--figma-color-bg-disabled);
1704
+ }
1705
+ }
1706
+
1707
+ &::-moz-range-track {
1708
+ height: var(--slider-height);
1709
+ background-color: transparent;
1710
+ border-radius: calc(var(--slider-height) / 2);
1711
+ transition: var(--slider-transition);
1712
+ }
1713
+
1714
+ &.hue::-moz-range-track {
1715
+ background: var(--bg-hue);
1716
+ }
1717
+
1718
+ &.opacity::-moz-range-track {
1719
+ background: linear-gradient(to right, transparent, var(--color)),
1720
+ var(--checkerboard);
1721
+ }
1722
+ }
1723
+
1724
+ datalist {
1725
+ position: absolute;
1726
+ inset: 0;
1727
+ top: 0;
1728
+ display: flex;
1729
+ transition: var(--slider-transition);
1730
+ background: transparent;
1731
+ align-items: center;
1732
+ margin: 0;
1733
+ border: 0;
1734
+ appearance: none;
1735
+ padding: 0 calc((var(--slider-height) / 2) - var(--slider-tick-size) / 2);
1736
+ height: var(--slider-height);
1737
+ pointer-events: none;
1738
+ justify-content: space-between;
1739
+ width: 100%;
1740
+
1741
+ & option {
1742
+ appearance: none;
1743
+ width: var(--slider-tick-size);
1744
+ height: var(--slider-tick-size);
1745
+ aspect-ratio: 1;
1746
+ padding: 0;
1747
+ border: 0;
1748
+ border-radius: 100%;
1749
+ font-size: 0;
1750
+ background: var(--figma-color-icon-tertiary);
1751
+ display: block;
1752
+ &[default] {
1753
+ background: var(--figma-color-icon);
1754
+ }
1755
+
1756
+ &:first-child:last-child {
1757
+ margin: 0 auto;
1758
+ }
1759
+ }
1760
+ }
1761
+
1762
+ &[variant="minimal"] {
1763
+ --slider-height: 0.25rem;
1764
+ --slider-thumb-size: 0.5rem;
1765
+ --slider-tick-size: calc(var(--slider-height) / 2);
1766
+ --handle-transition: none;
1767
+ --slider-transition: none;
1768
+
1769
+ .fig-slider-input-container {
1770
+ height: var(--slider-height);
1771
+ position: relative;
1772
+ display: block;
1773
+ width: 100%;
1774
+ box-shadow: none;
1775
+ background: var(--figma-color-bg-tertiary);
1776
+
1777
+ /* Track */
1778
+ &::before {
1779
+ box-shadow: none;
1780
+ background: var(--figma-color-text-tertiary);
1781
+ }
1782
+
1783
+ input[type="range"] {
1784
+ &::-webkit-slider-runnable-track {
1785
+ box-shadow: none;
1786
+ }
1787
+ }
1788
+ }
1789
+ fig-input-text {
1790
+ height: calc(var(--slider-height) * 2);
1791
+ background-color: transparent;
1792
+ }
1793
+ &:hover,
1794
+ &:focus-within {
1795
+ --slider-height: 1rem;
1796
+ --slider-thumb-size: 1rem;
1797
+ --slider-tick-size: calc(var(--slider-height) / 4);
1798
+ .fig-slider-input-container {
1799
+ background: var(--figma-color-bg-secondary);
1800
+ &::before {
1801
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1802
+ background: var(--figma-color-bg-brand);
1803
+ }
1804
+ }
1805
+ input[type="range"] {
1806
+ &::-webkit-slider-runnable-track {
1807
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
1808
+ }
1809
+ }
1810
+ fig-input-text {
1811
+ height: auto;
1812
+ }
1813
+ }
1814
+ }
1815
+ }
1816
+
1817
+ /* Popovers/Dialogs */
1818
+ .dialog,
1819
+ dialog,
1820
+ .popover,
1821
+ [popover] {
1822
+ padding: 0;
1823
+ outline: 0;
1824
+ border: 0;
1825
+ color: var(--figma-color-text);
1826
+ border-radius: var(--radius-large, 0.8125rem);
1827
+ background: var(--figma-color-bg);
1828
+ min-width: var(--popover-min-width);
1829
+
1830
+ box-shadow: var(--figma-elevation-500-modal-window);
1831
+
1832
+ footer {
1833
+ display: flex;
1834
+ justify-content: flex-end;
1835
+ padding: var(--spacer-2);
1836
+ gap: var(--spacer-2);
1837
+ }
1838
+ p {
1839
+ padding: 0 var(--spacer-3);
1840
+ }
1841
+
1842
+ &:popover-open {
1843
+ display: block;
1844
+ outline: none !important;
1845
+ }
1846
+
1847
+ & header {
1848
+ height: var(--spacer-6);
1849
+ margin: 0;
1850
+ padding: var(--spacer-2);
1851
+ display: flex;
1852
+ align-items: center;
1853
+ font-weight: var(--body-medium-strong-fontWeight);
1854
+ box-shadow: inset 0 -1px 0 0 var(--figma-color-border);
1855
+
1856
+ & h3 {
1857
+ font: inherit;
1858
+ }
1859
+
1860
+ & > :first-child {
1861
+ padding-left: var(--spacer-2);
1862
+ }
1863
+ }
1864
+
1865
+ &[tooltip] {
1866
+ color: var(--color-tooltip);
1867
+ background-color: var(--bg-tooltip);
1868
+ padding: var(--spacer-1) var(--spacer-2);
1869
+ line-height: 1rem !important;
1870
+ box-sizing: content-box;
1871
+ min-width: var(--popover-min-width);
1872
+ max-width: var(--popover-min-width);
1873
+ /*top: calc(anchor(top) - 1ch - (var(--spacer-1) * 2 + 1rem));*/
1874
+ top: anchor(top);
1875
+ left: anchor(center);
1876
+ /*transform: translate(-50%,-100%);*/
1877
+
1878
+ white-space: nowrap;
1879
+ overflow: hidden;
1880
+ text-overflow: ellipsis;
1881
+
1882
+ border-radius: var(--radius-medium, 0.3125rem);
1883
+ box-shadow: 0px 0px 0.5px 0px rgba(0, 0, 0, 0.15),
1884
+ 0px 5px 12px 0px rgba(0, 0, 0, 0.13), 0px 1px 3px 0px rgba(0, 0, 0, 0.1);
1885
+
1886
+ @supports (-webkit-line-clamp: 2) {
1887
+ white-space: initial;
1888
+ -webkit-line-clamp: 2;
1889
+ -webkit-box-orient: vertical;
1890
+ }
1891
+
1892
+ &:popover-open {
1893
+ display: inline-block;
1894
+
1895
+ @supports (-webkit-line-clamp: 2) {
1896
+ display: -webkit-box;
1897
+ }
1898
+
1899
+ min-width: 0;
1900
+ }
1901
+ }
1902
+ }
1903
+ fig-dialog,
1904
+ .fig-dialog {
1905
+ display: contents;
1906
+ --offset: 1rem;
1907
+ --translate-x: -50%;
1908
+ --translate-y: -50%;
1909
+
1910
+ dialog {
1911
+ position: fixed;
1912
+ top: 50%;
1913
+ left: 50%;
1914
+ margin: 0;
1915
+ z-index: 999999;
1916
+ transform: translate(var(--translate-x), var(--translate-y));
1917
+ }
1918
+
1919
+ &[position*="bottom"] {
1920
+ dialog {
1921
+ bottom: var(--offset);
1922
+ top: auto;
1923
+ --translate-y: 0;
1924
+ }
1925
+ }
1926
+ &[position*="top"] {
1927
+ dialog {
1928
+ top: var(--offset);
1929
+ bottom: auto;
1930
+ --translate-y: 0;
1931
+ }
1932
+ }
1933
+ &[position*="right"] {
1934
+ dialog {
1935
+ right: var(--offset);
1936
+ left: auto;
1937
+ --translate-x: 0;
1938
+ }
1939
+ }
1940
+ &[position*="left"] {
1941
+ dialog {
1942
+ left: var(--offset);
1943
+ right: auto;
1944
+ --translate-: 0;
1945
+ }
1946
+ }
1947
+ }
1948
+
1949
+ /* Tooltip */
1950
+ fig-tooltip {
1951
+ display: contents;
1952
+ }
1953
+ .fig-tooltip {
1954
+ inset: unset;
1955
+ display: block;
1956
+ color: var(--color-tooltip);
1957
+ background-color: var(--bg-tooltip);
1958
+ padding: var(--spacer-1) var(--spacer-2);
1959
+ line-height: 1rem !important;
1960
+ display: inline-flex;
1961
+ font-weight: inherit;
1962
+ border-radius: var(--radius-medium, 0.3125rem);
1963
+
1964
+ font: inherit;
1965
+ font-weight: normal;
1966
+
1967
+ &:after {
1968
+ content: "";
1969
+ background-color: var(--bg-tooltip);
1970
+ clip-path: path(
1971
+ "M16 0H0L0 1H0.757359C1.55301 1 2.31607 1.31607 2.87868 1.87868L6.29587 5.29587C7.23704 6.23704 8.76296 6.23704 9.70413 5.29587L13.1213 1.87868C13.6839 1.31607 14.447 1 15.2426 1H16V0Z"
1972
+ );
1973
+ width: 1rem;
1974
+ height: 6px;
1975
+ position: absolute;
1976
+ top: calc(100% - 1px);
1977
+ left: 50%;
1978
+ z-index: 2;
1979
+ transform: translate(-50%);
1980
+ }
1981
+
1982
+ &[position="bottom"] {
1983
+ &:after {
1984
+ top: 1px;
1985
+ transform: translate(-50%, -100%) scaleY(-1);
1986
+ }
1987
+ }
1988
+ }
1989
+
1990
+ .fig-tooltip,
1991
+ .fig-popover {
1992
+ overflow: visible;
1993
+ box-shadow: inset 0 0.5px 0 0 rgba(255, 255, 255, 0.1);
1994
+ filter: drop-shadow(0px 1px 1.5px rgba(0, 0, 0, 0.1))
1995
+ drop-shadow(0px 2.5px 6px rgba(0, 0, 0, 0.13))
1996
+ drop-shadow(0px 0px 0.5px rgba(0, 0, 0, 0.15));
1997
+
1998
+ &:after {
1999
+ content: "";
2000
+ background-color: inherit;
2001
+ clip-path: path(
2002
+ "M16 0H0L0 1H0.757359C1.55301 1 2.31607 1.31607 2.87868 1.87868L6.29587 5.29587C7.23704 6.23704 8.76296 6.23704 9.70413 5.29587L13.1213 1.87868C13.6839 1.31607 14.447 1 15.2426 1H16V0Z"
2003
+ );
2004
+ width: 1rem;
2005
+ height: 6px;
2006
+ position: absolute;
2007
+ top: calc(100% - 1px);
2008
+ left: 50%;
2009
+ z-index: 2;
2010
+ transform: translate(-50%);
2011
+ }
2012
+
2013
+ &[position="bottom"] {
2014
+ &:after {
2015
+ top: 1px;
2016
+ transform: translate(-50%, -100%) scaleY(-1);
2017
+ }
2018
+ }
2019
+ }
2020
+
2021
+ /* UI Icons */
2022
+ fig-icon {
2023
+ display: block;
2024
+ }
2025
+
2026
+ fig-icon.close {
2027
+ width: 1rem;
2028
+ height: 1rem;
2029
+ background-color: var(--figma-color-text);
2030
+ clip-path: path(
2031
+ "M11.6464 3.64645C11.8417 3.45118 12.1583 3.45118 12.3536 3.64645C12.5488 3.84171 12.5488 4.15829 12.3536 4.35355L8.70711 8L12.3536 11.6464C12.5488 11.8417 12.5488 12.1583 12.3536 12.3536C12.1583 12.5488 11.8417 12.5488 11.6464 12.3536L8 8.70711L4.35355 12.3536C4.15829 12.5488 3.84171 12.5488 3.64645 12.3536C3.45118 12.1583 3.45118 11.8417 3.64645 11.6464L7.29289 8L3.64645 4.35355C3.45118 4.15829 3.45118 3.84171 3.64645 3.64645C3.84171 3.45118 4.15829 3.45118 4.35355 3.64645L8 7.29289L11.6464 3.64645Z"
2032
+ );
2033
+ }
2034
+
2035
+ /* Web Components */
2036
+ fig-button,
2037
+ fig-popover,
2038
+ fig-content,
2039
+ fig-slider,
2040
+ fig-switch,
2041
+ fig-input-color,
2042
+ fig-checkbox,
2043
+ fig-radio,
2044
+ fig-tab,
2045
+ fig-tabs {
2046
+ display: inline-flex;
2047
+ gap: var(--spacer-2);
2048
+ user-select: none;
2049
+
2050
+ &[full] {
2051
+ display: flex;
2052
+ width: 100%;
2053
+ }
2054
+ }
2055
+
2056
+ fig-checkbox,
2057
+ fig-radio {
2058
+ align-items: center;
2059
+ padding-top: 0.25rem;
2060
+ padding-bottom: 0.25rem;
2061
+
2062
+ & label span {
2063
+ vertical-align: middle;
2064
+ }
2065
+ }
2066
+
2067
+ fig-switch {
2068
+ align-items: center;
2069
+ padding-top: 0.25rem;
2070
+ padding-bottom: 0.25rem;
2071
+ }
2072
+
2073
+ fig-input-color {
2074
+ --alpha: 1;
2075
+ }
2076
+
2077
+ fig-header {
2078
+ height: var(--spacer-6);
2079
+ margin: 0;
2080
+ padding: var(--spacer-1) var(--spacer-3);
2081
+ display: flex;
2082
+ align-items: center;
2083
+ box-shadow: inset 0 -1px 0 0 var(--figma-color-border);
2084
+ gap: 0.25rem;
2085
+
2086
+ & h3 {
2087
+ font-weight: var(--body-medium-strong-fontWeight);
2088
+ flex-grow: 1;
2089
+ }
2090
+
2091
+ &[borderless] {
2092
+ box-shadow: none;
2093
+ }
2094
+ }
2095
+
2096
+ fig-content {
2097
+ padding: var(--spacer-2) 0;
2098
+ display: block;
2099
+ }
2100
+
2101
+ vstack,
2102
+ .vstack,
2103
+ [vstack] {
2104
+ display: flex;
2105
+ flex-direction: column;
2106
+ align-items: start;
2107
+ gap: var(--spacer-2);
2108
+ flex-wrap: wrap;
2109
+ }
2110
+
2111
+ hstack,
2112
+ .hstack,
2113
+ [hstack] {
2114
+ display: flex;
2115
+ gap: var(--spacer-2);
2116
+ align-items: start;
2117
+ flex-wrap: nowrap;
2118
+ }
2119
+
2120
+ fig-input-text {
2121
+ background-color: var(--figma-color-bg-secondary);
2122
+ border: 0;
2123
+ border-radius: var(--radius-medium);
2124
+ display: inline-flex;
2125
+ flex-wrap: nowrap;
2126
+ justify-content: center;
2127
+ user-select: all;
2128
+ gap: 0;
2129
+
2130
+ &[multiline] {
2131
+ display: block;
2132
+ display: flex;
2133
+ }
2134
+ &[autoresize] input,
2135
+ &[autoresize] textarea {
2136
+ field-sizing: content;
2137
+ }
2138
+ &[resizable] input,
2139
+ &[resizable] textarea {
2140
+ resize: both;
2141
+ }
2142
+ &[resizable]:has(textarea[style*="width"]),
2143
+ &[resizable]:has(textarea[style*="height"]),
2144
+ &[resizable]:has(input[style*="width"]),
2145
+ &[resizable]:has(input[style*="height"]) {
2146
+ flex: unset;
2147
+ }
2148
+
2149
+ & label,
2150
+ & [slot] {
2151
+ display: flex;
2152
+ flex-wrap: nowrap;
2153
+ justify-content: center;
2154
+ align-items: center;
2155
+ width: 100%;
2156
+ }
2157
+
2158
+ & [slot] {
2159
+ user-select: none;
2160
+ width: 1.5rem;
2161
+ color: var(--figma-color-text-secondary);
2162
+ }
2163
+
2164
+ & [slot="prepend"] {
2165
+ padding-right: 0;
2166
+ margin-right: calc(var(--spacer-2) * -1);
2167
+ }
2168
+
2169
+ & [slot="append"] {
2170
+ padding-left: 0;
2171
+ margin-left: calc(var(--spacer-2) * -1);
2172
+ }
2173
+
2174
+ & input {
2175
+ background-color: transparent !important;
2176
+ flex: 1;
2177
+
2178
+ &:focus,
2179
+ &:active {
2180
+ box-shadow: none !important;
2181
+ }
2182
+ }
2183
+
2184
+ &:has(input:focus) {
2185
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
2186
+ outline: 0;
2187
+ }
2188
+ }
2189
+
2190
+ fig-input-color {
2191
+ & fig-input-text:not([type]),
2192
+ & fig-input-text[type="text"] {
2193
+ min-width: 6em;
2194
+ display: inline-flex;
2195
+ flex-direction: column;
2196
+ align-items: stretch;
2197
+
2198
+ & input[type="text"] {
2199
+ width: 100%;
2200
+ text-transform: uppercase;
2201
+ }
2202
+ }
2203
+
2204
+ & fig-input-text[type="number"] {
2205
+ width: 3.5rem;
2206
+ display: inline-flex;
2207
+ }
2208
+ }
2209
+
2210
+ fig-slider {
2211
+ display: flex;
2212
+
2213
+ & .slider {
2214
+ flex-grow: 1;
2215
+ }
2216
+
2217
+ & fig-input-text[type="number"] {
2218
+ width: 3.5rem;
2219
+ }
2220
+ }
2221
+
2222
+ fig-field,
2223
+ .fig-field {
2224
+ display: flex;
2225
+ padding: var(--spacer-1) var(--spacer-3);
2226
+ margin: 0;
2227
+ flex-direction: column;
2228
+ gap: 0;
2229
+ align-items: start;
2230
+
2231
+ & > [full] {
2232
+ flex: 1;
2233
+ }
2234
+
2235
+ & > label {
2236
+ flex: 0;
2237
+ padding: var(--spacer-1) 0;
2238
+ display: flex;
2239
+ justify-content: space-between;
2240
+ min-height: calc(1rem + var(--spacer-1) * 2);
2241
+ align-items: center;
2242
+ width: 100%;
2243
+ }
2244
+
2245
+ &[direction="horizontal"] {
2246
+ gap: var(--spacer-2);
2247
+ align-items: start;
2248
+ flex-direction: row;
2249
+ width: auto;
2250
+
2251
+ & > label {
2252
+ min-width: 4rem;
2253
+ }
2254
+ }
2255
+ }
2256
+
2257
+ fig-spinner {
2258
+ width: 1rem;
2259
+ height: 1rem;
2260
+ display: inline-flex;
2261
+ background-color: var(--figma-color-icon-oncomponent-tertiary);
2262
+ clip-path: path(
2263
+ "M15.9995 7.86066C16.0271 9.44267 15.585 10.9973 14.729 12.3281C13.8731 13.6588 12.6417 14.7058 11.1907 15.3368C9.73968 15.9677 8.13415 16.1542 6.57716 15.8726C5.02016 15.591 3.58161 14.8541 2.44344 13.755C1.30526 12.6559 0.518574 11.2439 0.182856 9.69769C-0.152862 8.15147 -0.0225313 6.54042 0.557366 5.06826C1.13726 3.59611 2.14068 2.32898 3.44073 1.4271C4.74079 0.525221 6.27908 0.0291073 7.86109 0.00149397L7.87922 1.04037C6.50268 1.06439 5.16418 1.49607 4.03298 2.28081C2.90177 3.06556 2.02868 4.16812 1.5241 5.44907C1.01952 6.73002 0.906114 8.13183 1.19823 9.47724C1.49034 10.8226 2.17486 12.0512 3.16521 13.0076C4.15556 13.9639 5.40727 14.6052 6.76204 14.8502C8.11682 15.0951 9.51382 14.9329 10.7764 14.3839C12.0389 13.8349 13.1104 12.9239 13.8552 11.766C14.5999 10.6081 14.9846 9.25533 14.9606 7.87879L15.9995 7.86066Z"
2264
+ );
2265
+ animation: fig-spinner-spin 1s linear infinite;
2266
+ }
2267
+
2268
+ /* Segmented control */
2269
+ .segmented-control,
2270
+ fig-segmented-control {
2271
+ display: inline-flex;
2272
+ user-select: none;
2273
+ background-color: var(--figma-color-bg-secondary);
2274
+ border: 0;
2275
+ border-radius: var(--radius-medium);
2276
+ height: 1.5rem;
2277
+ padding: 1px;
2278
+ gap: 0;
2279
+ display: inline-flex;
2280
+ align-items: stretch;
2281
+
2282
+ & fig-segment {
2283
+ flex: 1;
2284
+ display: flex;
2285
+ align-items: center;
2286
+ justify-content: center;
2287
+ position: relative;
2288
+ appearance: none;
2289
+ color: var(--figma-color-text-secondary);
2290
+ padding: 0 var(--spacer-2);
2291
+
2292
+ &[selected]:not([selected="false"]),
2293
+ &[selected="true"] {
2294
+ color: var(--figma-color-text);
2295
+ background-color: var(--figma-color-bg);
2296
+ border-radius: calc(var(--radius-medium) - 1px);
2297
+ box-shadow: 0 0 0 1px var(--figma-color-border);
2298
+ }
2299
+ }
2300
+ }
2301
+
2302
+ fig-input-joystick {
2303
+ --size: 1.5rem;
2304
+ display: inline-flex;
2305
+ gap: var(--spacer-2);
2306
+ user-select: none;
2307
+ .fig-input-joystick-plane-container {
2308
+ display: flex;
2309
+ width: 1.5rem;
2310
+ height: 1.5rem;
2311
+ place-items: center;
2312
+ flex-shrink: 0;
2313
+ flex-grow: 0;
2314
+ align-items: center;
2315
+ justify-content: center;
2316
+ &:focus {
2317
+ outline: 0;
2318
+ }
2319
+ }
2320
+ .fig-input-joystick-plane {
2321
+ display: inline-grid;
2322
+ place-items: center;
2323
+ position: relative;
2324
+ width: var(--size);
2325
+ height: var(--size);
2326
+ flex-shrink: 0;
2327
+ &.dragging {
2328
+ cursor: grab;
2329
+ --size: 3rem;
2330
+ z-index: 2;
2331
+ }
2332
+ }
2333
+ .fig-input-joystick-plane > * {
2334
+ grid-area: 1/1;
2335
+ }
2336
+ .fig-input-joystick-guides {
2337
+ position: absolute;
2338
+ width: var(--size);
2339
+ height: var(--size);
2340
+ box-shadow: inset 0 0 0 1px var(--figma-color-border);
2341
+ border-radius: var(--radius-medium);
2342
+ overflow: hidden;
2343
+ background: var(--figma-color-bg-secondary);
2344
+
2345
+ &:before {
2346
+ content: "";
2347
+ position: absolute;
2348
+ height: 0;
2349
+ border-left: 1px solid var(--figma-color-border);
2350
+ height: calc(100% - 2px);
2351
+ top: 1px;
2352
+ left: calc(50% - 0.5px);
2353
+ pointer-events: none;
2354
+ }
2355
+ &:after {
2356
+ content: "";
2357
+ position: absolute;
2358
+ height: 0;
2359
+ border-top: 1px solid var(--figma-color-border);
2360
+ width: calc(100% - 2px);
2361
+ top: calc(50% - 0.5px);
2362
+ left: 1px;
2363
+ pointer-events: none;
2364
+ }
2365
+ }
2366
+ .fig-input-joystick-plane.dragging .fig-input-joystick-guides {
2367
+ background: linear-gradient(
2368
+ 45deg,
2369
+ transparent calc(50% - 0.5px),
2370
+ var(--figma-color-border) calc(50% - 0.5px),
2371
+ var(--figma-color-border) calc(50% + 0.5px),
2372
+ transparent calc(50% + 0.5px)
2373
+ ),
2374
+ linear-gradient(
2375
+ -45deg,
2376
+ transparent calc(50% - 0.5px),
2377
+ var(--figma-color-border) calc(50% - 0.5px),
2378
+ var(--figma-color-border) calc(50% + 0.5px),
2379
+ transparent calc(50% + 0.5px)
2380
+ ),
2381
+ var(--figma-color-bg-secondary);
2382
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
2383
+ }
2384
+ .fig-input-joystick-plane-container:focus .fig-input-joystick-guides {
2385
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
2386
+ }
2387
+
2388
+ .fig-input-joystick-handle {
2389
+ position: absolute;
2390
+ z-index: 1;
2391
+ width: 0.5rem;
2392
+ height: 0.5rem;
2393
+ background: var(--figma-color-icon-onbrand);
2394
+ box-shadow: var(--handle-shadow);
2395
+ border-radius: 50%;
2396
+ transform: translate(-50%, -50%);
2397
+ }
2398
+ }
2399
+
2400
+ fig-input-angle {
2401
+ --size: 1.5rem;
2402
+ display: inline-flex;
2403
+ gap: var(--spacer-2);
2404
+ user-select: none;
2405
+
2406
+ .fig-input-angle-plane {
2407
+ display: inline-grid;
2408
+ place-items: center;
2409
+ width: var(--size);
2410
+ height: var(--size);
2411
+ aspect-ratio: 1/1;
2412
+ flex-shrink: 0;
2413
+ background-color: var(--figma-color-bg-secondary);
2414
+ border-radius: 100%;
2415
+ box-shadow: inset 0 0 0 1px var(--figma-color-border);
2416
+ &:focus,
2417
+ &.dragging {
2418
+ outline: 0;
2419
+ box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
2420
+ }
2421
+ }
2422
+ .fig-input-angle-handle {
2423
+ display: inline-grid;
2424
+ place-items: center;
2425
+ grid-area: 1/1;
2426
+ width: calc(0.5rem + 2px);
2427
+ height: calc(0.5rem + 2px);
2428
+ &:before {
2429
+ content: "";
2430
+ display: block;
2431
+ width: 0.5rem;
2432
+ height: 0.5rem;
2433
+ background: var(--figma-color-icon-onbrand);
2434
+ box-shadow: var(--handle-shadow);
2435
+ border-radius: 50%;
2436
+ }
2437
+ }
2438
+ }
2439
+
2440
+ /* Utilities */
2441
+
2442
+ @keyframes fig-spinner-spin {
2443
+ from {
2444
+ transform: rotate(0deg);
2445
+ }
2446
+
2447
+ to {
2448
+ transform: rotate(360deg);
2449
+ }
2450
+ }