figma-kit 1.0.0-beta.3 → 1.0.0-beta.31

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