@mich8060/chg-design-system 0.1.0

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 (260) hide show
  1. package/.github/workflows/figma-sync.yml +30 -0
  2. package/ARCHITECTURE_FIX.md +241 -0
  3. package/LICENSE +21 -0
  4. package/README.lib.md +103 -0
  5. package/README.md +177 -0
  6. package/figma.config.json +9 -0
  7. package/package.json +67 -0
  8. package/package.lib.json +49 -0
  9. package/public/data/figma-variables.json +40026 -0
  10. package/public/favicon.ico +0 -0
  11. package/public/index.html +46 -0
  12. package/public/logo192.png +0 -0
  13. package/public/logo512.png +0 -0
  14. package/public/manifest.json +25 -0
  15. package/public/robots.txt +3 -0
  16. package/public/styles/tokens.css +1994 -0
  17. package/scripts/index.js +896 -0
  18. package/scripts/publish-lib.js +150 -0
  19. package/scripts/validate.js +94 -0
  20. package/src/App.css +457 -0
  21. package/src/App.css.map +1 -0
  22. package/src/App.js +161 -0
  23. package/src/App.scss +548 -0
  24. package/src/App.test.js +8 -0
  25. package/src/assets/images/.gitkeep +0 -0
  26. package/src/assets/images/doctors/Avatar-1.png +0 -0
  27. package/src/assets/images/doctors/Avatar-10.png +0 -0
  28. package/src/assets/images/doctors/Avatar-11.png +0 -0
  29. package/src/assets/images/doctors/Avatar-12.png +0 -0
  30. package/src/assets/images/doctors/Avatar-13.png +0 -0
  31. package/src/assets/images/doctors/Avatar-14.png +0 -0
  32. package/src/assets/images/doctors/Avatar-15.png +0 -0
  33. package/src/assets/images/doctors/Avatar-16.png +0 -0
  34. package/src/assets/images/doctors/Avatar-17.png +0 -0
  35. package/src/assets/images/doctors/Avatar-18.png +0 -0
  36. package/src/assets/images/doctors/Avatar-19.png +0 -0
  37. package/src/assets/images/doctors/Avatar-2.png +0 -0
  38. package/src/assets/images/doctors/Avatar-20.png +0 -0
  39. package/src/assets/images/doctors/Avatar-21.png +0 -0
  40. package/src/assets/images/doctors/Avatar-3.png +0 -0
  41. package/src/assets/images/doctors/Avatar-4.png +0 -0
  42. package/src/assets/images/doctors/Avatar-5.png +0 -0
  43. package/src/assets/images/doctors/Avatar-6.png +0 -0
  44. package/src/assets/images/doctors/Avatar-7.png +0 -0
  45. package/src/assets/images/doctors/Avatar-8.png +0 -0
  46. package/src/assets/images/doctors/Avatar-9.png +0 -0
  47. package/src/assets/images/doctors/Avatar.png +0 -0
  48. package/src/assets/images/doctors/index.js +141 -0
  49. package/src/data/figma-variables.json +90305 -0
  50. package/src/index.js +20 -0
  51. package/src/index.scss +10 -0
  52. package/src/pages/AccordionDemo.jsx +206 -0
  53. package/src/pages/AccordionDemo.scss +34 -0
  54. package/src/pages/ActionMenuDemo.jsx +957 -0
  55. package/src/pages/ActionMenuDemo.scss +34 -0
  56. package/src/pages/AvatarDemo.jsx +328 -0
  57. package/src/pages/AvatarDemo.scss +40 -0
  58. package/src/pages/BadgeDemo.jsx +254 -0
  59. package/src/pages/BadgeDemo.scss +40 -0
  60. package/src/pages/BorderRadiusDemo.jsx +112 -0
  61. package/src/pages/BorderRadiusDemo.scss +50 -0
  62. package/src/pages/BrandingDemo.jsx +117 -0
  63. package/src/pages/BreadcrumbDemo.jsx +172 -0
  64. package/src/pages/ButtonDemo.jsx +708 -0
  65. package/src/pages/ButtonDemo.scss +34 -0
  66. package/src/pages/CheckboxDemo.jsx +194 -0
  67. package/src/pages/ChipDemo.jsx +359 -0
  68. package/src/pages/ChipDemo.scss +40 -0
  69. package/src/pages/ColorsDemo.jsx +566 -0
  70. package/src/pages/ColorsDemo.scss +243 -0
  71. package/src/pages/ComponentsUsage.jsx +401 -0
  72. package/src/pages/DatepickerDemo.jsx +223 -0
  73. package/src/pages/DividerDemo.jsx +337 -0
  74. package/src/pages/DotStatusDemo.jsx +223 -0
  75. package/src/pages/DropdownDemo.jsx +229 -0
  76. package/src/pages/FieldDemo.jsx +253 -0
  77. package/src/pages/FigmaVariablesDemo.jsx +426 -0
  78. package/src/pages/FigmaVariablesDemo.scss +316 -0
  79. package/src/pages/FileUploadDemo.jsx +186 -0
  80. package/src/pages/FlexDemo.jsx +144 -0
  81. package/src/pages/FlexDemo.scss +119 -0
  82. package/src/pages/FontInstallation.jsx +252 -0
  83. package/src/pages/FontInstallation.scss +40 -0
  84. package/src/pages/Home.jsx +3156 -0
  85. package/src/pages/IconDemo.jsx +1680 -0
  86. package/src/pages/ImageAspectDemo.jsx +152 -0
  87. package/src/pages/InputDemo.jsx +245 -0
  88. package/src/pages/Installation.jsx +257 -0
  89. package/src/pages/Installation.scss +40 -0
  90. package/src/pages/KeyDemo.jsx +184 -0
  91. package/src/pages/MenuDemo.jsx +139 -0
  92. package/src/pages/MicroCalendarDemo.jsx +165 -0
  93. package/src/pages/PaginationDemo.jsx +176 -0
  94. package/src/pages/PillToggleDemo.jsx +212 -0
  95. package/src/pages/ProgressCircleDemo.jsx +206 -0
  96. package/src/pages/ProgressIndicatorDemo.jsx +227 -0
  97. package/src/pages/RadioDemo.jsx +282 -0
  98. package/src/pages/ShadowsDemo.jsx +118 -0
  99. package/src/pages/ShadowsDemo.scss +93 -0
  100. package/src/pages/SliderDemo.jsx +226 -0
  101. package/src/pages/SpacingDemo.jsx +160 -0
  102. package/src/pages/SpacingDemo.scss +107 -0
  103. package/src/pages/StatusDemo.jsx +196 -0
  104. package/src/pages/StepsDemo.jsx +308 -0
  105. package/src/pages/TableDemo.jsx +376 -0
  106. package/src/pages/TabsDemo.jsx +221 -0
  107. package/src/pages/ToastDemo.jsx +195 -0
  108. package/src/pages/ToggleDemo.jsx +187 -0
  109. package/src/pages/TokensDemo.jsx +637 -0
  110. package/src/pages/TokensDemo.scss +270 -0
  111. package/src/pages/TokensUsage.jsx +220 -0
  112. package/src/pages/TooltipDemo.jsx +170 -0
  113. package/src/pages/TypographyDemo.jsx +229 -0
  114. package/src/pages/TypographyDemo.scss +105 -0
  115. package/src/pages/UtilitiesDemo.jsx +381 -0
  116. package/src/pages/UtilitiesDemo.scss +214 -0
  117. package/src/reportWebVitals.js +13 -0
  118. package/src/setupTests.js +5 -0
  119. package/src/styles/_typography.scss +932 -0
  120. package/src/styles/_utilities.scss +3635 -0
  121. package/src/styles/_variables.scss +887 -0
  122. package/src/styles/prism-custom.css +206 -0
  123. package/src/styles/prism-custom.css.map +1 -0
  124. package/src/styles/prism-custom.scss +205 -0
  125. package/src/styles/tokens.css +4416 -0
  126. package/src/styles/tokens.css.map +1 -0
  127. package/src/styles/tokens.scss +1456 -0
  128. package/src/ui/Accordion/Accordion.jsx +70 -0
  129. package/src/ui/Accordion/Accordion.scss +82 -0
  130. package/src/ui/Accordion/index.js +1 -0
  131. package/src/ui/ActionMenu/ActionMenu.jsx +383 -0
  132. package/src/ui/ActionMenu/ActionMenu.scss +198 -0
  133. package/src/ui/ActionMenu/index.js +1 -0
  134. package/src/ui/Avatar/Avatar.jsx +49 -0
  135. package/src/ui/Avatar/Avatar.scss +82 -0
  136. package/src/ui/Avatar/index.js +1 -0
  137. package/src/ui/Badge/Badge.jsx +64 -0
  138. package/src/ui/Badge/Badge.scss +84 -0
  139. package/src/ui/Badge/index.js +1 -0
  140. package/src/ui/Branding/Branding.jsx +65 -0
  141. package/src/ui/Branding/Branding.scss +116 -0
  142. package/src/ui/Branding/index.js +1 -0
  143. package/src/ui/Breadcrumb/Breadcrumb.jsx +162 -0
  144. package/src/ui/Breadcrumb/Breadcrumb.scss +46 -0
  145. package/src/ui/Breadcrumb/index.js +2 -0
  146. package/src/ui/Button/Button.figma.tsx +49 -0
  147. package/src/ui/Button/Button.jsx +135 -0
  148. package/src/ui/Button/Button.scss +188 -0
  149. package/src/ui/Button/index.js +1 -0
  150. package/src/ui/Card/Card.jsx +25 -0
  151. package/src/ui/Card/Card.scss +47 -0
  152. package/src/ui/Card/index.js +1 -0
  153. package/src/ui/Checkbox/Checkbox.jsx +70 -0
  154. package/src/ui/Checkbox/Checkbox.scss +96 -0
  155. package/src/ui/Checkbox/index.js +1 -0
  156. package/src/ui/Chip/Chip.jsx +104 -0
  157. package/src/ui/Chip/Chip.scss +118 -0
  158. package/src/ui/Chip/index.js +1 -0
  159. package/src/ui/CopyButton/CopyButton.jsx +102 -0
  160. package/src/ui/CopyButton/CopyButton.scss +56 -0
  161. package/src/ui/CopyButton/index.js +1 -0
  162. package/src/ui/Datepicker/Datepicker.jsx +326 -0
  163. package/src/ui/Datepicker/Datepicker.scss +187 -0
  164. package/src/ui/Datepicker/index.js +2 -0
  165. package/src/ui/Divider/Divider.jsx +89 -0
  166. package/src/ui/Divider/Divider.scss +112 -0
  167. package/src/ui/Divider/index.js +1 -0
  168. package/src/ui/DotStatus/DotStatus.jsx +64 -0
  169. package/src/ui/DotStatus/DotStatus.scss +87 -0
  170. package/src/ui/DotStatus/index.js +1 -0
  171. package/src/ui/Dropdown/Dropdown.jsx +200 -0
  172. package/src/ui/Dropdown/Dropdown.scss +156 -0
  173. package/src/ui/Dropdown/index.js +1 -0
  174. package/src/ui/Field/Field.jsx +89 -0
  175. package/src/ui/Field/Field.scss +119 -0
  176. package/src/ui/Field/index.js +1 -0
  177. package/src/ui/FileUpload/FileUpload.figma.tsx +28 -0
  178. package/src/ui/FileUpload/FileUpload.jsx +153 -0
  179. package/src/ui/FileUpload/FileUpload.scss +78 -0
  180. package/src/ui/FileUpload/index.js +2 -0
  181. package/src/ui/Flex/Flex.jsx +42 -0
  182. package/src/ui/Flex/Flex.scss +119 -0
  183. package/src/ui/Flex/index.js +1 -0
  184. package/src/ui/Icon/Icon.figma.tsx +22 -0
  185. package/src/ui/Icon/Icon.jsx +47 -0
  186. package/src/ui/Icon/index.js +1 -0
  187. package/src/ui/ImageAspect/ImageAspect.jsx +56 -0
  188. package/src/ui/ImageAspect/ImageAspect.scss +62 -0
  189. package/src/ui/ImageAspect/index.js +1 -0
  190. package/src/ui/Input/Input.figma.tsx +35 -0
  191. package/src/ui/Input/Input.jsx +68 -0
  192. package/src/ui/Input/Input.scss +64 -0
  193. package/src/ui/Input/index.js +2 -0
  194. package/src/ui/Key/Key.jsx +37 -0
  195. package/src/ui/Key/Key.scss +34 -0
  196. package/src/ui/Key/index.js +1 -0
  197. package/src/ui/Menu/Menu.jsx +389 -0
  198. package/src/ui/Menu/Menu.scss +382 -0
  199. package/src/ui/Menu/index.js +1 -0
  200. package/src/ui/MicroCalendar/MicroCalendar.jsx +392 -0
  201. package/src/ui/MicroCalendar/MicroCalendar.scss +277 -0
  202. package/src/ui/MicroCalendar/index.js +1 -0
  203. package/src/ui/Pagination/Pagination.jsx +237 -0
  204. package/src/ui/Pagination/Pagination.scss +182 -0
  205. package/src/ui/Pagination/index.js +1 -0
  206. package/src/ui/PillToggle/PillToggle.jsx +56 -0
  207. package/src/ui/PillToggle/PillToggle.scss +84 -0
  208. package/src/ui/PillToggle/index.js +1 -0
  209. package/src/ui/Playground/Playground.jsx +524 -0
  210. package/src/ui/Playground/Playground.scss +310 -0
  211. package/src/ui/Playground/index.js +2 -0
  212. package/src/ui/ProgressCircle/ProgressCircle.jsx +147 -0
  213. package/src/ui/ProgressCircle/ProgressCircle.scss +143 -0
  214. package/src/ui/ProgressCircle/index.js +1 -0
  215. package/src/ui/ProgressIndicator/ProgressIndicator.jsx +92 -0
  216. package/src/ui/ProgressIndicator/ProgressIndicator.scss +133 -0
  217. package/src/ui/ProgressIndicator/index.js +1 -0
  218. package/src/ui/Radio/Radio.jsx +57 -0
  219. package/src/ui/Radio/Radio.scss +84 -0
  220. package/src/ui/Radio/index.js +1 -0
  221. package/src/ui/Slider/Slider.jsx +283 -0
  222. package/src/ui/Slider/Slider.scss +156 -0
  223. package/src/ui/Slider/index.js +1 -0
  224. package/src/ui/Status/Status.jsx +66 -0
  225. package/src/ui/Status/Status.scss +90 -0
  226. package/src/ui/Status/index.js +1 -0
  227. package/src/ui/Steps/Steps.jsx +201 -0
  228. package/src/ui/Steps/Steps.scss +240 -0
  229. package/src/ui/Steps/index.js +1 -0
  230. package/src/ui/Table/Table.jsx +143 -0
  231. package/src/ui/Table/Table.scss +90 -0
  232. package/src/ui/Table/index.js +1 -0
  233. package/src/ui/Tabs/TabItem.jsx +86 -0
  234. package/src/ui/Tabs/Tabs.figma.tsx +30 -0
  235. package/src/ui/Tabs/Tabs.jsx +318 -0
  236. package/src/ui/Tabs/Tabs.scss +164 -0
  237. package/src/ui/Tabs/Untitled +1 -0
  238. package/src/ui/Tabs/index.js +3 -0
  239. package/src/ui/Tag/Tag.figma.tsx +29 -0
  240. package/src/ui/Tag/Tag.jsx +93 -0
  241. package/src/ui/Tag/Tag.scss +229 -0
  242. package/src/ui/Tag/index.js +2 -0
  243. package/src/ui/Textarea/Textarea.figma.tsx +35 -0
  244. package/src/ui/Textarea/Textarea.jsx +68 -0
  245. package/src/ui/Textarea/Textarea.scss +69 -0
  246. package/src/ui/Textarea/index.js +2 -0
  247. package/src/ui/Toast/Toast.jsx +75 -0
  248. package/src/ui/Toast/Toast.scss +132 -0
  249. package/src/ui/Toast/index.js +2 -0
  250. package/src/ui/Toggle/Toggle.jsx +73 -0
  251. package/src/ui/Toggle/Toggle.scss +139 -0
  252. package/src/ui/Toggle/index.js +1 -0
  253. package/src/ui/Tooltip/Tooltip.figma.tsx +24 -0
  254. package/src/ui/Tooltip/Tooltip.jsx +123 -0
  255. package/src/ui/Tooltip/Tooltip.scss +80 -0
  256. package/src/ui/Tooltip/index.js +2 -0
  257. package/src/ui/index.js +63 -0
  258. package/src/utils/formatDate.js +27 -0
  259. package/src/utils/headerVariants.js +69 -0
  260. package/vite.config.lib.js +55 -0
@@ -0,0 +1,3635 @@
1
+ /* ===========================================================================
2
+ Utility Classes using design tokens
3
+ Auto-generated utility classes for common CSS patterns
4
+ =========================================================================== */
5
+
6
+ /* ========================================
7
+ LAYOUT
8
+ ======================================== */
9
+
10
+ .block {
11
+ display: block;
12
+ }
13
+
14
+ .inline {
15
+ display: inline;
16
+ }
17
+
18
+ .inline-block {
19
+ display: inline-block;
20
+ }
21
+
22
+ .flex {
23
+ display: flex;
24
+ }
25
+
26
+ .grid {
27
+ display: grid;
28
+ }
29
+
30
+ .hidden {
31
+ display: none;
32
+ }
33
+
34
+ .container {
35
+ width: 100%;
36
+ }
37
+
38
+ .box-border {
39
+ box-sizing: border-box;
40
+ }
41
+
42
+ .box-content {
43
+ box-sizing: content-box;
44
+ }
45
+
46
+ .static {
47
+ position: static;
48
+ }
49
+
50
+ .fixed {
51
+ position: fixed;
52
+ }
53
+
54
+ .absolute {
55
+ position: absolute;
56
+ }
57
+
58
+ .relative {
59
+ position: relative;
60
+ }
61
+
62
+ .sticky {
63
+ position: sticky;
64
+ }
65
+
66
+ .inset {
67
+ &-0 {
68
+ top: 0;
69
+ right: 0;
70
+ bottom: 0;
71
+ left: 0;
72
+ }
73
+
74
+ &-auto {
75
+ top: auto;
76
+ right: auto;
77
+ bottom: auto;
78
+ left: auto;
79
+ }
80
+
81
+ &-2 {
82
+ top: var(--uds-spacing-2);
83
+ right: var(--uds-spacing-2);
84
+ bottom: var(--uds-spacing-2);
85
+ left: var(--uds-spacing-2);
86
+ }
87
+
88
+ &-4 {
89
+ top: var(--uds-spacing-4);
90
+ right: var(--uds-spacing-4);
91
+ bottom: var(--uds-spacing-4);
92
+ left: var(--uds-spacing-4);
93
+ }
94
+
95
+ &-8 {
96
+ top: var(--uds-spacing-8);
97
+ right: var(--uds-spacing-8);
98
+ bottom: var(--uds-spacing-8);
99
+ left: var(--uds-spacing-8);
100
+ }
101
+
102
+ &-12 {
103
+ top: var(--uds-spacing-12);
104
+ right: var(--uds-spacing-12);
105
+ bottom: var(--uds-spacing-12);
106
+ left: var(--uds-spacing-12);
107
+ }
108
+
109
+ &-16 {
110
+ top: var(--uds-spacing-16);
111
+ right: var(--uds-spacing-16);
112
+ bottom: var(--uds-spacing-16);
113
+ left: var(--uds-spacing-16);
114
+ }
115
+
116
+ &-24 {
117
+ top: var(--uds-spacing-24);
118
+ right: var(--uds-spacing-24);
119
+ bottom: var(--uds-spacing-24);
120
+ left: var(--uds-spacing-24);
121
+ }
122
+ }
123
+
124
+ .top {
125
+ &-0 {
126
+ top: 0;
127
+ }
128
+
129
+ &-2 {
130
+ top: var(--uds-spacing-2);
131
+ }
132
+
133
+ &-4 {
134
+ top: var(--uds-spacing-4);
135
+ }
136
+
137
+ &-8 {
138
+ top: var(--uds-spacing-8);
139
+ }
140
+
141
+ &-12 {
142
+ top: var(--uds-spacing-12);
143
+ }
144
+
145
+ &-16 {
146
+ top: var(--uds-spacing-16);
147
+ }
148
+
149
+ &-24 {
150
+ top: var(--uds-spacing-24);
151
+ }
152
+
153
+ &-auto {
154
+ top: auto;
155
+ }
156
+ }
157
+
158
+ .right {
159
+ &-0 {
160
+ right: 0;
161
+ }
162
+
163
+ &-2 {
164
+ right: var(--uds-spacing-2);
165
+ }
166
+
167
+ &-4 {
168
+ right: var(--uds-spacing-4);
169
+ }
170
+
171
+ &-8 {
172
+ right: var(--uds-spacing-8);
173
+ }
174
+
175
+ &-12 {
176
+ right: var(--uds-spacing-12);
177
+ }
178
+
179
+ &-16 {
180
+ right: var(--uds-spacing-16);
181
+ }
182
+
183
+ &-24 {
184
+ right: var(--uds-spacing-24);
185
+ }
186
+
187
+ &-auto {
188
+ right: auto;
189
+ }
190
+ }
191
+
192
+ .bottom {
193
+ &-0 {
194
+ bottom: 0;
195
+ }
196
+
197
+ &-2 {
198
+ bottom: var(--uds-spacing-2);
199
+ }
200
+
201
+ &-4 {
202
+ bottom: var(--uds-spacing-4);
203
+ }
204
+
205
+ &-8 {
206
+ bottom: var(--uds-spacing-8);
207
+ }
208
+
209
+ &-12 {
210
+ bottom: var(--uds-spacing-12);
211
+ }
212
+
213
+ &-16 {
214
+ bottom: var(--uds-spacing-16);
215
+ }
216
+
217
+ &-24 {
218
+ bottom: var(--uds-spacing-24);
219
+ }
220
+
221
+ &-auto {
222
+ bottom: auto;
223
+ }
224
+ }
225
+
226
+ .left {
227
+ &-0 {
228
+ left: 0;
229
+ }
230
+
231
+ &-2 {
232
+ left: var(--uds-spacing-2);
233
+ }
234
+
235
+ &-4 {
236
+ left: var(--uds-spacing-4);
237
+ }
238
+
239
+ &-8 {
240
+ left: var(--uds-spacing-8);
241
+ }
242
+
243
+ &-12 {
244
+ left: var(--uds-spacing-12);
245
+ }
246
+
247
+ &-16 {
248
+ left: var(--uds-spacing-16);
249
+ }
250
+
251
+ &-24 {
252
+ left: var(--uds-spacing-24);
253
+ }
254
+
255
+ &-auto {
256
+ left: auto;
257
+ }
258
+ }
259
+
260
+ .overflow {
261
+ &-auto {
262
+ overflow: auto;
263
+ }
264
+
265
+ &-hidden {
266
+ overflow: hidden;
267
+ }
268
+
269
+ &-visible {
270
+ overflow: visible;
271
+ }
272
+
273
+ &-scroll {
274
+ overflow: scroll;
275
+ }
276
+
277
+ &-x {
278
+ &-auto {
279
+ overflow-x: auto;
280
+ }
281
+
282
+ &-hidden {
283
+ overflow-x: hidden;
284
+ }
285
+
286
+ &-scroll {
287
+ overflow-x: scroll;
288
+ }
289
+ }
290
+
291
+ &-y {
292
+ &-auto {
293
+ overflow-y: auto;
294
+ }
295
+
296
+ &-hidden {
297
+ overflow-y: hidden;
298
+ }
299
+
300
+ &-scroll {
301
+ overflow-y: scroll;
302
+ }
303
+ }
304
+ }
305
+
306
+ .overscroll {
307
+ &-auto {
308
+ overscroll-behavior: auto;
309
+ }
310
+
311
+ &-contain {
312
+ overscroll-behavior: contain;
313
+ }
314
+
315
+ &-none {
316
+ overscroll-behavior: none;
317
+ }
318
+ }
319
+
320
+ .z {
321
+ &-0 {
322
+ z-index: var(--uds-elevation-base);
323
+ }
324
+
325
+ &-sticky {
326
+ z-index: var(--uds-elevation-sticky);
327
+ }
328
+
329
+ &-dropdown {
330
+ z-index: var(--uds-elevation-dropdown);
331
+ }
332
+
333
+ &-overlay {
334
+ z-index: var(--uds-elevation-overlay);
335
+ }
336
+
337
+ &-modal {
338
+ z-index: var(--uds-elevation-modal);
339
+ }
340
+
341
+ &-toast {
342
+ z-index: var(--uds-elevation-toast);
343
+ }
344
+
345
+ &-tooltip {
346
+ z-index: var(--uds-elevation-tooltip);
347
+ }
348
+ }
349
+
350
+ /* ========================================
351
+ FLEXBOX & GRID
352
+ ======================================== */
353
+
354
+ .flex {
355
+ &-row {
356
+ flex-direction: row;
357
+
358
+ &-reverse {
359
+ flex-direction: row-reverse;
360
+ }
361
+ }
362
+
363
+ &-col {
364
+ flex-direction: column;
365
+
366
+ &-reverse {
367
+ flex-direction: column-reverse;
368
+ }
369
+ }
370
+
371
+ &-wrap {
372
+ flex-wrap: wrap;
373
+
374
+ &-reverse {
375
+ flex-wrap: wrap-reverse;
376
+ }
377
+ }
378
+
379
+ &-nowrap {
380
+ flex-wrap: nowrap;
381
+ }
382
+ }
383
+
384
+ .items {
385
+ &-start {
386
+ align-items: flex-start;
387
+ }
388
+
389
+ &-end {
390
+ align-items: flex-end;
391
+ }
392
+
393
+ &-center {
394
+ align-items: center;
395
+ }
396
+
397
+ &-baseline {
398
+ align-items: baseline;
399
+ }
400
+
401
+ &-stretch {
402
+ align-items: stretch;
403
+ }
404
+ }
405
+
406
+ .justify {
407
+ &-start {
408
+ justify-content: flex-start;
409
+ }
410
+
411
+ &-end {
412
+ justify-content: flex-end;
413
+ }
414
+
415
+ &-center {
416
+ justify-content: center;
417
+ }
418
+
419
+ &-between {
420
+ justify-content: space-between;
421
+ }
422
+
423
+ &-around {
424
+ justify-content: space-around;
425
+ }
426
+
427
+ &-evenly {
428
+ justify-content: space-evenly;
429
+ }
430
+ }
431
+
432
+ .content {
433
+ &-start {
434
+ align-content: flex-start;
435
+ }
436
+
437
+ &-end {
438
+ align-content: flex-end;
439
+ }
440
+
441
+ &-center {
442
+ align-content: center;
443
+ }
444
+
445
+ &-between {
446
+ align-content: space-between;
447
+ }
448
+
449
+ &-around {
450
+ align-content: space-around;
451
+ }
452
+
453
+ &-evenly {
454
+ align-content: space-evenly;
455
+ }
456
+ }
457
+
458
+ .grow {
459
+ flex-grow: 1;
460
+
461
+ &-0 {
462
+ flex-grow: 0;
463
+ }
464
+ }
465
+
466
+ .shrink {
467
+ flex-shrink: 1;
468
+
469
+ &-0 {
470
+ flex-shrink: 0;
471
+ }
472
+ }
473
+
474
+ .basis {
475
+ &-auto {
476
+ flex-basis: auto;
477
+ }
478
+
479
+ &-0 {
480
+ flex-basis: 0;
481
+ }
482
+
483
+ &-full {
484
+ flex-basis: 100%;
485
+ }
486
+ }
487
+
488
+ .order {
489
+ &-1 {
490
+ order: 1;
491
+ }
492
+
493
+ &-2 {
494
+ order: 2;
495
+ }
496
+
497
+ &-3 {
498
+ order: 3;
499
+ }
500
+
501
+ &-4 {
502
+ order: 4;
503
+ }
504
+
505
+ &-5 {
506
+ order: 5;
507
+ }
508
+
509
+ &-first {
510
+ order: -9999;
511
+ }
512
+
513
+ &-last {
514
+ order: 9999;
515
+ }
516
+
517
+ &-none {
518
+ order: 0;
519
+ }
520
+ }
521
+
522
+ .grid {
523
+ &-cols {
524
+ &-1 {
525
+ grid-template-columns: repeat(1, minmax(0, 1fr));
526
+ }
527
+
528
+ &-2 {
529
+ grid-template-columns: repeat(2, minmax(0, 1fr));
530
+ }
531
+
532
+ &-3 {
533
+ grid-template-columns: repeat(3, minmax(0, 1fr));
534
+ }
535
+
536
+ &-4 {
537
+ grid-template-columns: repeat(4, minmax(0, 1fr));
538
+ }
539
+
540
+ &-5 {
541
+ grid-template-columns: repeat(5, minmax(0, 1fr));
542
+ }
543
+
544
+ &-6 {
545
+ grid-template-columns: repeat(6, minmax(0, 1fr));
546
+ }
547
+
548
+ &-12 {
549
+ grid-template-columns: repeat(12, minmax(0, 1fr));
550
+ }
551
+
552
+ &-none {
553
+ grid-template-columns: none;
554
+ }
555
+ }
556
+
557
+ &-rows {
558
+ &-1 {
559
+ grid-template-rows: repeat(1, minmax(0, 1fr));
560
+ }
561
+
562
+ &-2 {
563
+ grid-template-rows: repeat(2, minmax(0, 1fr));
564
+ }
565
+
566
+ &-3 {
567
+ grid-template-rows: repeat(3, minmax(0, 1fr));
568
+ }
569
+
570
+ &-4 {
571
+ grid-template-rows: repeat(4, minmax(0, 1fr));
572
+ }
573
+
574
+ &-5 {
575
+ grid-template-rows: repeat(5, minmax(0, 1fr));
576
+ }
577
+
578
+ &-6 {
579
+ grid-template-rows: repeat(6, minmax(0, 1fr));
580
+ }
581
+
582
+ &-none {
583
+ grid-template-rows: none;
584
+ }
585
+ }
586
+ }
587
+
588
+ .gap {
589
+ &-0 {
590
+ gap: var(--uds-gap-0);
591
+ }
592
+
593
+ &-2 {
594
+ gap: var(--uds-gap-2);
595
+ }
596
+
597
+ &-4 {
598
+ gap: var(--uds-gap-4);
599
+ }
600
+
601
+ &-8 {
602
+ gap: var(--uds-gap-8);
603
+ }
604
+
605
+ &-12 {
606
+ gap: var(--uds-gap-12);
607
+ }
608
+
609
+ &-16 {
610
+ gap: var(--uds-gap-16);
611
+ }
612
+
613
+ &-24 {
614
+ gap: var(--uds-gap-24);
615
+ }
616
+
617
+ &-32 {
618
+ gap: var(--uds-gap-32);
619
+ }
620
+ }
621
+
622
+ .col {
623
+ &-span {
624
+ &-1 {
625
+ grid-column: span 1/span 1;
626
+ }
627
+
628
+ &-2 {
629
+ grid-column: span 2/span 2;
630
+ }
631
+
632
+ &-3 {
633
+ grid-column: span 3/span 3;
634
+ }
635
+
636
+ &-4 {
637
+ grid-column: span 4/span 4;
638
+ }
639
+
640
+ &-5 {
641
+ grid-column: span 5/span 5;
642
+ }
643
+
644
+ &-6 {
645
+ grid-column: span 6/span 6;
646
+ }
647
+
648
+ &-full {
649
+ grid-column: 1/-1;
650
+ }
651
+ }
652
+
653
+ &-auto {
654
+ grid-column: auto;
655
+ }
656
+ }
657
+
658
+ .row {
659
+ &-span {
660
+ &-1 {
661
+ grid-row: span 1/span 1;
662
+ }
663
+
664
+ &-2 {
665
+ grid-row: span 2/span 2;
666
+ }
667
+
668
+ &-3 {
669
+ grid-row: span 3/span 3;
670
+ }
671
+
672
+ &-4 {
673
+ grid-row: span 4/span 4;
674
+ }
675
+
676
+ &-5 {
677
+ grid-row: span 5/span 5;
678
+ }
679
+
680
+ &-6 {
681
+ grid-row: span 6/span 6;
682
+ }
683
+
684
+ &-full {
685
+ grid-row: 1/-1;
686
+ }
687
+ }
688
+
689
+ &-auto {
690
+ grid-row: auto;
691
+ }
692
+ }
693
+
694
+ /* ========================================
695
+ SPACING
696
+ ======================================== */
697
+
698
+ .p {
699
+ &-0 {
700
+ padding: var(--uds-spacing-0);
701
+ }
702
+
703
+ &-2 {
704
+ padding: var(--uds-spacing-2);
705
+ }
706
+
707
+ &-4 {
708
+ padding: var(--uds-spacing-4);
709
+ }
710
+
711
+ &-6 {
712
+ padding: var(--uds-spacing-6);
713
+ }
714
+
715
+ &-8 {
716
+ padding: var(--uds-spacing-8);
717
+ }
718
+
719
+ &-10 {
720
+ padding: var(--uds-spacing-10);
721
+ }
722
+
723
+ &-12 {
724
+ padding: var(--uds-spacing-12);
725
+ }
726
+
727
+ &-14 {
728
+ padding: var(--uds-spacing-14);
729
+ }
730
+
731
+ &-16 {
732
+ padding: var(--uds-spacing-16);
733
+ }
734
+
735
+ &-18 {
736
+ padding: var(--uds-spacing-18);
737
+ }
738
+
739
+ &-24 {
740
+ padding: var(--uds-spacing-24);
741
+ }
742
+
743
+ &-32 {
744
+ padding: var(--uds-spacing-32);
745
+ }
746
+
747
+ &-48 {
748
+ padding: var(--uds-spacing-48);
749
+ }
750
+
751
+ &-64 {
752
+ padding: var(--uds-spacing-64);
753
+ }
754
+
755
+ &-80 {
756
+ padding: var(--uds-spacing-80);
757
+ }
758
+
759
+ &x {
760
+ &-0 {
761
+ padding-left: var(--uds-spacing-0);
762
+ padding-right: var(--uds-spacing-0);
763
+ }
764
+
765
+ &-2 {
766
+ padding-left: var(--uds-spacing-2);
767
+ padding-right: var(--uds-spacing-2);
768
+ }
769
+
770
+ &-4 {
771
+ padding-left: var(--uds-spacing-4);
772
+ padding-right: var(--uds-spacing-4);
773
+ }
774
+
775
+ &-6 {
776
+ padding-left: var(--uds-spacing-6);
777
+ padding-right: var(--uds-spacing-6);
778
+ }
779
+
780
+ &-8 {
781
+ padding-left: var(--uds-spacing-8);
782
+ padding-right: var(--uds-spacing-8);
783
+ }
784
+
785
+ &-10 {
786
+ padding-left: var(--uds-spacing-10);
787
+ padding-right: var(--uds-spacing-10);
788
+ }
789
+
790
+ &-12 {
791
+ padding-left: var(--uds-spacing-12);
792
+ padding-right: var(--uds-spacing-12);
793
+ }
794
+
795
+ &-14 {
796
+ padding-left: var(--uds-spacing-14);
797
+ padding-right: var(--uds-spacing-14);
798
+ }
799
+
800
+ &-16 {
801
+ padding-left: var(--uds-spacing-16);
802
+ padding-right: var(--uds-spacing-16);
803
+ }
804
+
805
+ &-18 {
806
+ padding-left: var(--uds-spacing-18);
807
+ padding-right: var(--uds-spacing-18);
808
+ }
809
+
810
+ &-24 {
811
+ padding-left: var(--uds-spacing-24);
812
+ padding-right: var(--uds-spacing-24);
813
+ }
814
+
815
+ &-32 {
816
+ padding-left: var(--uds-spacing-32);
817
+ padding-right: var(--uds-spacing-32);
818
+ }
819
+
820
+ &-48 {
821
+ padding-left: var(--uds-spacing-48);
822
+ padding-right: var(--uds-spacing-48);
823
+ }
824
+
825
+ &-64 {
826
+ padding-left: var(--uds-spacing-64);
827
+ padding-right: var(--uds-spacing-64);
828
+ }
829
+
830
+ &-80 {
831
+ padding-left: var(--uds-spacing-80);
832
+ padding-right: var(--uds-spacing-80);
833
+ }
834
+ }
835
+
836
+ &y {
837
+ &-0 {
838
+ padding-top: var(--uds-spacing-0);
839
+ padding-bottom: var(--uds-spacing-0);
840
+ }
841
+
842
+ &-2 {
843
+ padding-top: var(--uds-spacing-2);
844
+ padding-bottom: var(--uds-spacing-2);
845
+ }
846
+
847
+ &-4 {
848
+ padding-top: var(--uds-spacing-4);
849
+ padding-bottom: var(--uds-spacing-4);
850
+ }
851
+
852
+ &-6 {
853
+ padding-top: var(--uds-spacing-6);
854
+ padding-bottom: var(--uds-spacing-6);
855
+ }
856
+
857
+ &-8 {
858
+ padding-top: var(--uds-spacing-8);
859
+ padding-bottom: var(--uds-spacing-8);
860
+ }
861
+
862
+ &-10 {
863
+ padding-top: var(--uds-spacing-10);
864
+ padding-bottom: var(--uds-spacing-10);
865
+ }
866
+
867
+ &-12 {
868
+ padding-top: var(--uds-spacing-12);
869
+ padding-bottom: var(--uds-spacing-12);
870
+ }
871
+
872
+ &-14 {
873
+ padding-top: var(--uds-spacing-14);
874
+ padding-bottom: var(--uds-spacing-14);
875
+ }
876
+
877
+ &-16 {
878
+ padding-top: var(--uds-spacing-16);
879
+ padding-bottom: var(--uds-spacing-16);
880
+ }
881
+
882
+ &-18 {
883
+ padding-top: var(--uds-spacing-18);
884
+ padding-bottom: var(--uds-spacing-18);
885
+ }
886
+
887
+ &-24 {
888
+ padding-top: var(--uds-spacing-24);
889
+ padding-bottom: var(--uds-spacing-24);
890
+ }
891
+
892
+ &-32 {
893
+ padding-top: var(--uds-spacing-32);
894
+ padding-bottom: var(--uds-spacing-32);
895
+ }
896
+
897
+ &-48 {
898
+ padding-top: var(--uds-spacing-48);
899
+ padding-bottom: var(--uds-spacing-48);
900
+ }
901
+
902
+ &-64 {
903
+ padding-top: var(--uds-spacing-64);
904
+ padding-bottom: var(--uds-spacing-64);
905
+ }
906
+
907
+ &-80 {
908
+ padding-top: var(--uds-spacing-80);
909
+ padding-bottom: var(--uds-spacing-80);
910
+ }
911
+ }
912
+
913
+ &t {
914
+ &-0 {
915
+ padding-top: var(--uds-spacing-0);
916
+ }
917
+
918
+ &-2 {
919
+ padding-top: var(--uds-spacing-2);
920
+ }
921
+
922
+ &-4 {
923
+ padding-top: var(--uds-spacing-4);
924
+ }
925
+
926
+ &-6 {
927
+ padding-top: var(--uds-spacing-6);
928
+ }
929
+
930
+ &-8 {
931
+ padding-top: var(--uds-spacing-8);
932
+ }
933
+
934
+ &-10 {
935
+ padding-top: var(--uds-spacing-10);
936
+ }
937
+
938
+ &-12 {
939
+ padding-top: var(--uds-spacing-12);
940
+ }
941
+
942
+ &-14 {
943
+ padding-top: var(--uds-spacing-14);
944
+ }
945
+
946
+ &-16 {
947
+ padding-top: var(--uds-spacing-16);
948
+ }
949
+
950
+ &-18 {
951
+ padding-top: var(--uds-spacing-18);
952
+ }
953
+
954
+ &-24 {
955
+ padding-top: var(--uds-spacing-24);
956
+ }
957
+
958
+ &-32 {
959
+ padding-top: var(--uds-spacing-32);
960
+ }
961
+
962
+ &-48 {
963
+ padding-top: var(--uds-spacing-48);
964
+ }
965
+
966
+ &-64 {
967
+ padding-top: var(--uds-spacing-64);
968
+ }
969
+
970
+ &-80 {
971
+ padding-top: var(--uds-spacing-80);
972
+ }
973
+ }
974
+
975
+ &r {
976
+ &-0 {
977
+ padding-right: var(--uds-spacing-0);
978
+ }
979
+
980
+ &-2 {
981
+ padding-right: var(--uds-spacing-2);
982
+ }
983
+
984
+ &-4 {
985
+ padding-right: var(--uds-spacing-4);
986
+ }
987
+
988
+ &-6 {
989
+ padding-right: var(--uds-spacing-6);
990
+ }
991
+
992
+ &-8 {
993
+ padding-right: var(--uds-spacing-8);
994
+ }
995
+
996
+ &-10 {
997
+ padding-right: var(--uds-spacing-10);
998
+ }
999
+
1000
+ &-12 {
1001
+ padding-right: var(--uds-spacing-12);
1002
+ }
1003
+
1004
+ &-14 {
1005
+ padding-right: var(--uds-spacing-14);
1006
+ }
1007
+
1008
+ &-16 {
1009
+ padding-right: var(--uds-spacing-16);
1010
+ }
1011
+
1012
+ &-18 {
1013
+ padding-right: var(--uds-spacing-18);
1014
+ }
1015
+
1016
+ &-24 {
1017
+ padding-right: var(--uds-spacing-24);
1018
+ }
1019
+
1020
+ &-32 {
1021
+ padding-right: var(--uds-spacing-32);
1022
+ }
1023
+
1024
+ &-48 {
1025
+ padding-right: var(--uds-spacing-48);
1026
+ }
1027
+
1028
+ &-64 {
1029
+ padding-right: var(--uds-spacing-64);
1030
+ }
1031
+
1032
+ &-80 {
1033
+ padding-right: var(--uds-spacing-80);
1034
+ }
1035
+ }
1036
+
1037
+ &b {
1038
+ &-0 {
1039
+ padding-bottom: var(--uds-spacing-0);
1040
+ }
1041
+
1042
+ &-2 {
1043
+ padding-bottom: var(--uds-spacing-2);
1044
+ }
1045
+
1046
+ &-4 {
1047
+ padding-bottom: var(--uds-spacing-4);
1048
+ }
1049
+
1050
+ &-6 {
1051
+ padding-bottom: var(--uds-spacing-6);
1052
+ }
1053
+
1054
+ &-8 {
1055
+ padding-bottom: var(--uds-spacing-8);
1056
+ }
1057
+
1058
+ &-10 {
1059
+ padding-bottom: var(--uds-spacing-10);
1060
+ }
1061
+
1062
+ &-12 {
1063
+ padding-bottom: var(--uds-spacing-12);
1064
+ }
1065
+
1066
+ &-14 {
1067
+ padding-bottom: var(--uds-spacing-14);
1068
+ }
1069
+
1070
+ &-16 {
1071
+ padding-bottom: var(--uds-spacing-16);
1072
+ }
1073
+
1074
+ &-18 {
1075
+ padding-bottom: var(--uds-spacing-18);
1076
+ }
1077
+
1078
+ &-24 {
1079
+ padding-bottom: var(--uds-spacing-24);
1080
+ }
1081
+
1082
+ &-32 {
1083
+ padding-bottom: var(--uds-spacing-32);
1084
+ }
1085
+
1086
+ &-48 {
1087
+ padding-bottom: var(--uds-spacing-48);
1088
+ }
1089
+
1090
+ &-64 {
1091
+ padding-bottom: var(--uds-spacing-64);
1092
+ }
1093
+
1094
+ &-80 {
1095
+ padding-bottom: var(--uds-spacing-80);
1096
+ }
1097
+ }
1098
+
1099
+ &l {
1100
+ &-0 {
1101
+ padding-left: var(--uds-spacing-0);
1102
+ }
1103
+
1104
+ &-2 {
1105
+ padding-left: var(--uds-spacing-2);
1106
+ }
1107
+
1108
+ &-4 {
1109
+ padding-left: var(--uds-spacing-4);
1110
+ }
1111
+
1112
+ &-6 {
1113
+ padding-left: var(--uds-spacing-6);
1114
+ }
1115
+
1116
+ &-8 {
1117
+ padding-left: var(--uds-spacing-8);
1118
+ }
1119
+
1120
+ &-10 {
1121
+ padding-left: var(--uds-spacing-10);
1122
+ }
1123
+
1124
+ &-12 {
1125
+ padding-left: var(--uds-spacing-12);
1126
+ }
1127
+
1128
+ &-14 {
1129
+ padding-left: var(--uds-spacing-14);
1130
+ }
1131
+
1132
+ &-16 {
1133
+ padding-left: var(--uds-spacing-16);
1134
+ }
1135
+
1136
+ &-18 {
1137
+ padding-left: var(--uds-spacing-18);
1138
+ }
1139
+
1140
+ &-24 {
1141
+ padding-left: var(--uds-spacing-24);
1142
+ }
1143
+
1144
+ &-32 {
1145
+ padding-left: var(--uds-spacing-32);
1146
+ }
1147
+
1148
+ &-48 {
1149
+ padding-left: var(--uds-spacing-48);
1150
+ }
1151
+
1152
+ &-64 {
1153
+ padding-left: var(--uds-spacing-64);
1154
+ }
1155
+
1156
+ &-80 {
1157
+ padding-left: var(--uds-spacing-80);
1158
+ }
1159
+ }
1160
+ }
1161
+
1162
+ .m {
1163
+ &-0 {
1164
+ margin: var(--uds-spacing-0);
1165
+ }
1166
+
1167
+ &-2 {
1168
+ margin: var(--uds-spacing-2);
1169
+ }
1170
+
1171
+ &-4 {
1172
+ margin: var(--uds-spacing-4);
1173
+ }
1174
+
1175
+ &-6 {
1176
+ margin: var(--uds-spacing-6);
1177
+ }
1178
+
1179
+ &-8 {
1180
+ margin: var(--uds-spacing-8);
1181
+ }
1182
+
1183
+ &-10 {
1184
+ margin: var(--uds-spacing-10);
1185
+ }
1186
+
1187
+ &-12 {
1188
+ margin: var(--uds-spacing-12);
1189
+ }
1190
+
1191
+ &-14 {
1192
+ margin: var(--uds-spacing-14);
1193
+ }
1194
+
1195
+ &-16 {
1196
+ margin: var(--uds-spacing-16);
1197
+ }
1198
+
1199
+ &-18 {
1200
+ margin: var(--uds-spacing-18);
1201
+ }
1202
+
1203
+ &-24 {
1204
+ margin: var(--uds-spacing-24);
1205
+ }
1206
+
1207
+ &-32 {
1208
+ margin: var(--uds-spacing-32);
1209
+ }
1210
+
1211
+ &-48 {
1212
+ margin: var(--uds-spacing-48);
1213
+ }
1214
+
1215
+ &-64 {
1216
+ margin: var(--uds-spacing-64);
1217
+ }
1218
+
1219
+ &-80 {
1220
+ margin: var(--uds-spacing-80);
1221
+ }
1222
+
1223
+ &-auto {
1224
+ margin: auto;
1225
+ }
1226
+
1227
+ &x {
1228
+ &-0 {
1229
+ margin-left: var(--uds-spacing-0);
1230
+ margin-right: var(--uds-spacing-0);
1231
+ }
1232
+
1233
+ &-2 {
1234
+ margin-left: var(--uds-spacing-2);
1235
+ margin-right: var(--uds-spacing-2);
1236
+ }
1237
+
1238
+ &-4 {
1239
+ margin-left: var(--uds-spacing-4);
1240
+ margin-right: var(--uds-spacing-4);
1241
+ }
1242
+
1243
+ &-6 {
1244
+ margin-left: var(--uds-spacing-6);
1245
+ margin-right: var(--uds-spacing-6);
1246
+ }
1247
+
1248
+ &-8 {
1249
+ margin-left: var(--uds-spacing-8);
1250
+ margin-right: var(--uds-spacing-8);
1251
+ }
1252
+
1253
+ &-10 {
1254
+ margin-left: var(--uds-spacing-10);
1255
+ margin-right: var(--uds-spacing-10);
1256
+ }
1257
+
1258
+ &-12 {
1259
+ margin-left: var(--uds-spacing-12);
1260
+ margin-right: var(--uds-spacing-12);
1261
+ }
1262
+
1263
+ &-14 {
1264
+ margin-left: var(--uds-spacing-14);
1265
+ margin-right: var(--uds-spacing-14);
1266
+ }
1267
+
1268
+ &-16 {
1269
+ margin-left: var(--uds-spacing-16);
1270
+ margin-right: var(--uds-spacing-16);
1271
+ }
1272
+
1273
+ &-18 {
1274
+ margin-left: var(--uds-spacing-18);
1275
+ margin-right: var(--uds-spacing-18);
1276
+ }
1277
+
1278
+ &-24 {
1279
+ margin-left: var(--uds-spacing-24);
1280
+ margin-right: var(--uds-spacing-24);
1281
+ }
1282
+
1283
+ &-32 {
1284
+ margin-left: var(--uds-spacing-32);
1285
+ margin-right: var(--uds-spacing-32);
1286
+ }
1287
+
1288
+ &-48 {
1289
+ margin-left: var(--uds-spacing-48);
1290
+ margin-right: var(--uds-spacing-48);
1291
+ }
1292
+
1293
+ &-64 {
1294
+ margin-left: var(--uds-spacing-64);
1295
+ margin-right: var(--uds-spacing-64);
1296
+ }
1297
+
1298
+ &-80 {
1299
+ margin-left: var(--uds-spacing-80);
1300
+ margin-right: var(--uds-spacing-80);
1301
+ }
1302
+
1303
+ &-auto {
1304
+ margin-left: auto;
1305
+ margin-right: auto;
1306
+ }
1307
+ }
1308
+
1309
+ &y {
1310
+ &-0 {
1311
+ margin-top: var(--uds-spacing-0);
1312
+ margin-bottom: var(--uds-spacing-0);
1313
+ }
1314
+
1315
+ &-2 {
1316
+ margin-top: var(--uds-spacing-2);
1317
+ margin-bottom: var(--uds-spacing-2);
1318
+ }
1319
+
1320
+ &-4 {
1321
+ margin-top: var(--uds-spacing-4);
1322
+ margin-bottom: var(--uds-spacing-4);
1323
+ }
1324
+
1325
+ &-6 {
1326
+ margin-top: var(--uds-spacing-6);
1327
+ margin-bottom: var(--uds-spacing-6);
1328
+ }
1329
+
1330
+ &-8 {
1331
+ margin-top: var(--uds-spacing-8);
1332
+ margin-bottom: var(--uds-spacing-8);
1333
+ }
1334
+
1335
+ &-10 {
1336
+ margin-top: var(--uds-spacing-10);
1337
+ margin-bottom: var(--uds-spacing-10);
1338
+ }
1339
+
1340
+ &-12 {
1341
+ margin-top: var(--uds-spacing-12);
1342
+ margin-bottom: var(--uds-spacing-12);
1343
+ }
1344
+
1345
+ &-14 {
1346
+ margin-top: var(--uds-spacing-14);
1347
+ margin-bottom: var(--uds-spacing-14);
1348
+ }
1349
+
1350
+ &-16 {
1351
+ margin-top: var(--uds-spacing-16);
1352
+ margin-bottom: var(--uds-spacing-16);
1353
+ }
1354
+
1355
+ &-18 {
1356
+ margin-top: var(--uds-spacing-18);
1357
+ margin-bottom: var(--uds-spacing-18);
1358
+ }
1359
+
1360
+ &-24 {
1361
+ margin-top: var(--uds-spacing-24);
1362
+ margin-bottom: var(--uds-spacing-24);
1363
+ }
1364
+
1365
+ &-32 {
1366
+ margin-top: var(--uds-spacing-32);
1367
+ margin-bottom: var(--uds-spacing-32);
1368
+ }
1369
+
1370
+ &-48 {
1371
+ margin-top: var(--uds-spacing-48);
1372
+ margin-bottom: var(--uds-spacing-48);
1373
+ }
1374
+
1375
+ &-64 {
1376
+ margin-top: var(--uds-spacing-64);
1377
+ margin-bottom: var(--uds-spacing-64);
1378
+ }
1379
+
1380
+ &-80 {
1381
+ margin-top: var(--uds-spacing-80);
1382
+ margin-bottom: var(--uds-spacing-80);
1383
+ }
1384
+
1385
+ &-auto {
1386
+ margin-top: auto;
1387
+ margin-bottom: auto;
1388
+ }
1389
+ }
1390
+
1391
+ &t {
1392
+ &-0 {
1393
+ margin-top: var(--uds-spacing-0);
1394
+ }
1395
+
1396
+ &-2 {
1397
+ margin-top: var(--uds-spacing-2);
1398
+ }
1399
+
1400
+ &-4 {
1401
+ margin-top: var(--uds-spacing-4);
1402
+ }
1403
+
1404
+ &-6 {
1405
+ margin-top: var(--uds-spacing-6);
1406
+ }
1407
+
1408
+ &-8 {
1409
+ margin-top: var(--uds-spacing-8);
1410
+ }
1411
+
1412
+ &-10 {
1413
+ margin-top: var(--uds-spacing-10);
1414
+ }
1415
+
1416
+ &-12 {
1417
+ margin-top: var(--uds-spacing-12);
1418
+ }
1419
+
1420
+ &-14 {
1421
+ margin-top: var(--uds-spacing-14);
1422
+ }
1423
+
1424
+ &-16 {
1425
+ margin-top: var(--uds-spacing-16);
1426
+ }
1427
+
1428
+ &-18 {
1429
+ margin-top: var(--uds-spacing-18);
1430
+ }
1431
+
1432
+ &-24 {
1433
+ margin-top: var(--uds-spacing-24);
1434
+ }
1435
+
1436
+ &-32 {
1437
+ margin-top: var(--uds-spacing-32);
1438
+ }
1439
+
1440
+ &-48 {
1441
+ margin-top: var(--uds-spacing-48);
1442
+ }
1443
+
1444
+ &-64 {
1445
+ margin-top: var(--uds-spacing-64);
1446
+ }
1447
+
1448
+ &-80 {
1449
+ margin-top: var(--uds-spacing-80);
1450
+ }
1451
+
1452
+ &-auto {
1453
+ margin-top: auto;
1454
+ }
1455
+ }
1456
+
1457
+ &r {
1458
+ &-0 {
1459
+ margin-right: var(--uds-spacing-0);
1460
+ }
1461
+
1462
+ &-2 {
1463
+ margin-right: var(--uds-spacing-2);
1464
+ }
1465
+
1466
+ &-4 {
1467
+ margin-right: var(--uds-spacing-4);
1468
+ }
1469
+
1470
+ &-6 {
1471
+ margin-right: var(--uds-spacing-6);
1472
+ }
1473
+
1474
+ &-8 {
1475
+ margin-right: var(--uds-spacing-8);
1476
+ }
1477
+
1478
+ &-10 {
1479
+ margin-right: var(--uds-spacing-10);
1480
+ }
1481
+
1482
+ &-12 {
1483
+ margin-right: var(--uds-spacing-12);
1484
+ }
1485
+
1486
+ &-14 {
1487
+ margin-right: var(--uds-spacing-14);
1488
+ }
1489
+
1490
+ &-16 {
1491
+ margin-right: var(--uds-spacing-16);
1492
+ }
1493
+
1494
+ &-18 {
1495
+ margin-right: var(--uds-spacing-18);
1496
+ }
1497
+
1498
+ &-24 {
1499
+ margin-right: var(--uds-spacing-24);
1500
+ }
1501
+
1502
+ &-32 {
1503
+ margin-right: var(--uds-spacing-32);
1504
+ }
1505
+
1506
+ &-48 {
1507
+ margin-right: var(--uds-spacing-48);
1508
+ }
1509
+
1510
+ &-64 {
1511
+ margin-right: var(--uds-spacing-64);
1512
+ }
1513
+
1514
+ &-80 {
1515
+ margin-right: var(--uds-spacing-80);
1516
+ }
1517
+
1518
+ &-auto {
1519
+ margin-right: auto;
1520
+ }
1521
+ }
1522
+
1523
+ &b {
1524
+ &-0 {
1525
+ margin-bottom: var(--uds-spacing-0);
1526
+ }
1527
+
1528
+ &-2 {
1529
+ margin-bottom: var(--uds-spacing-2);
1530
+ }
1531
+
1532
+ &-4 {
1533
+ margin-bottom: var(--uds-spacing-4);
1534
+ }
1535
+
1536
+ &-6 {
1537
+ margin-bottom: var(--uds-spacing-6);
1538
+ }
1539
+
1540
+ &-8 {
1541
+ margin-bottom: var(--uds-spacing-8);
1542
+ }
1543
+
1544
+ &-10 {
1545
+ margin-bottom: var(--uds-spacing-10);
1546
+ }
1547
+
1548
+ &-12 {
1549
+ margin-bottom: var(--uds-spacing-12);
1550
+ }
1551
+
1552
+ &-14 {
1553
+ margin-bottom: var(--uds-spacing-14);
1554
+ }
1555
+
1556
+ &-16 {
1557
+ margin-bottom: var(--uds-spacing-16);
1558
+ }
1559
+
1560
+ &-18 {
1561
+ margin-bottom: var(--uds-spacing-18);
1562
+ }
1563
+
1564
+ &-24 {
1565
+ margin-bottom: var(--uds-spacing-24);
1566
+ }
1567
+
1568
+ &-32 {
1569
+ margin-bottom: var(--uds-spacing-32);
1570
+ }
1571
+
1572
+ &-48 {
1573
+ margin-bottom: var(--uds-spacing-48);
1574
+ }
1575
+
1576
+ &-64 {
1577
+ margin-bottom: var(--uds-spacing-64);
1578
+ }
1579
+
1580
+ &-80 {
1581
+ margin-bottom: var(--uds-spacing-80);
1582
+ }
1583
+
1584
+ &-auto {
1585
+ margin-bottom: auto;
1586
+ }
1587
+ }
1588
+
1589
+ &l {
1590
+ &-0 {
1591
+ margin-left: var(--uds-spacing-0);
1592
+ }
1593
+
1594
+ &-2 {
1595
+ margin-left: var(--uds-spacing-2);
1596
+ }
1597
+
1598
+ &-4 {
1599
+ margin-left: var(--uds-spacing-4);
1600
+ }
1601
+
1602
+ &-6 {
1603
+ margin-left: var(--uds-spacing-6);
1604
+ }
1605
+
1606
+ &-8 {
1607
+ margin-left: var(--uds-spacing-8);
1608
+ }
1609
+
1610
+ &-10 {
1611
+ margin-left: var(--uds-spacing-10);
1612
+ }
1613
+
1614
+ &-12 {
1615
+ margin-left: var(--uds-spacing-12);
1616
+ }
1617
+
1618
+ &-14 {
1619
+ margin-left: var(--uds-spacing-14);
1620
+ }
1621
+
1622
+ &-16 {
1623
+ margin-left: var(--uds-spacing-16);
1624
+ }
1625
+
1626
+ &-18 {
1627
+ margin-left: var(--uds-spacing-18);
1628
+ }
1629
+
1630
+ &-24 {
1631
+ margin-left: var(--uds-spacing-24);
1632
+ }
1633
+
1634
+ &-32 {
1635
+ margin-left: var(--uds-spacing-32);
1636
+ }
1637
+
1638
+ &-48 {
1639
+ margin-left: var(--uds-spacing-48);
1640
+ }
1641
+
1642
+ &-64 {
1643
+ margin-left: var(--uds-spacing-64);
1644
+ }
1645
+
1646
+ &-80 {
1647
+ margin-left: var(--uds-spacing-80);
1648
+ }
1649
+
1650
+ &-auto {
1651
+ margin-left: auto;
1652
+ }
1653
+ }
1654
+ }
1655
+
1656
+ .space {
1657
+ &-x {
1658
+ &-0 > * + * {
1659
+ margin-left: var(--uds-spacing-0);
1660
+ }
1661
+
1662
+ &-2 > * + * {
1663
+ margin-left: var(--uds-spacing-2);
1664
+ }
1665
+
1666
+ &-4 > * + * {
1667
+ margin-left: var(--uds-spacing-4);
1668
+ }
1669
+
1670
+ &-8 > * + * {
1671
+ margin-left: var(--uds-spacing-8);
1672
+ }
1673
+
1674
+ &-12 > * + * {
1675
+ margin-left: var(--uds-spacing-12);
1676
+ }
1677
+
1678
+ &-16 > * + * {
1679
+ margin-left: var(--uds-spacing-16);
1680
+ }
1681
+
1682
+ &-24 > * + * {
1683
+ margin-left: var(--uds-spacing-24);
1684
+ }
1685
+
1686
+ &-32 > * + * {
1687
+ margin-left: var(--uds-spacing-32);
1688
+ }
1689
+ }
1690
+
1691
+ &-y {
1692
+ &-0 > * + * {
1693
+ margin-top: var(--uds-spacing-0);
1694
+ }
1695
+
1696
+ &-2 > * + * {
1697
+ margin-top: var(--uds-spacing-2);
1698
+ }
1699
+
1700
+ &-4 > * + * {
1701
+ margin-top: var(--uds-spacing-4);
1702
+ }
1703
+
1704
+ &-8 > * + * {
1705
+ margin-top: var(--uds-spacing-8);
1706
+ }
1707
+
1708
+ &-12 > * + * {
1709
+ margin-top: var(--uds-spacing-12);
1710
+ }
1711
+
1712
+ &-16 > * + * {
1713
+ margin-top: var(--uds-spacing-16);
1714
+ }
1715
+
1716
+ &-24 > * + * {
1717
+ margin-top: var(--uds-spacing-24);
1718
+ }
1719
+
1720
+ &-32 > * + * {
1721
+ margin-top: var(--uds-spacing-32);
1722
+ }
1723
+ }
1724
+ }
1725
+
1726
+ /* ========================================
1727
+ SIZING
1728
+ ======================================== */
1729
+
1730
+ .w {
1731
+ &-auto {
1732
+ width: auto;
1733
+ }
1734
+
1735
+ &-full {
1736
+ width: 100%;
1737
+ }
1738
+
1739
+ &-screen {
1740
+ width: 100vw;
1741
+ }
1742
+
1743
+ &-fit {
1744
+ width: fit-content;
1745
+ }
1746
+
1747
+ &-min {
1748
+ width: min-content;
1749
+ }
1750
+
1751
+ &-max {
1752
+ width: max-content;
1753
+ }
1754
+
1755
+ &-12 {
1756
+ width: var(--uds-sizing-12);
1757
+ }
1758
+
1759
+ &-16 {
1760
+ width: var(--uds-sizing-16);
1761
+ }
1762
+
1763
+ &-20 {
1764
+ width: var(--uds-sizing-20);
1765
+ }
1766
+
1767
+ &-24 {
1768
+ width: var(--uds-sizing-24);
1769
+ }
1770
+
1771
+ &-32 {
1772
+ width: var(--uds-sizing-32);
1773
+ }
1774
+
1775
+ &-40 {
1776
+ width: var(--uds-sizing-40);
1777
+ }
1778
+
1779
+ &-48 {
1780
+ width: var(--uds-sizing-48);
1781
+ }
1782
+ }
1783
+
1784
+ .min-w {
1785
+ &-0 {
1786
+ min-width: 0;
1787
+ }
1788
+
1789
+ &-full {
1790
+ min-width: 100%;
1791
+ }
1792
+
1793
+ &-min {
1794
+ min-width: min-content;
1795
+ }
1796
+
1797
+ &-max {
1798
+ min-width: max-content;
1799
+ }
1800
+
1801
+ &-fit {
1802
+ min-width: fit-content;
1803
+ }
1804
+ }
1805
+
1806
+ .max-w {
1807
+ &-none {
1808
+ max-width: none;
1809
+ }
1810
+
1811
+ &-full {
1812
+ max-width: 100%;
1813
+ }
1814
+
1815
+ &-screen {
1816
+ max-width: 100vw;
1817
+ }
1818
+ }
1819
+
1820
+ .h {
1821
+ &-auto {
1822
+ height: auto;
1823
+ }
1824
+
1825
+ &-full {
1826
+ height: 100%;
1827
+ }
1828
+
1829
+ &-screen {
1830
+ height: 100vh;
1831
+ }
1832
+
1833
+ &-fit {
1834
+ height: fit-content;
1835
+ }
1836
+
1837
+ &-min {
1838
+ height: min-content;
1839
+ }
1840
+
1841
+ &-max {
1842
+ height: max-content;
1843
+ }
1844
+
1845
+ &-12 {
1846
+ height: var(--uds-sizing-12);
1847
+ }
1848
+
1849
+ &-16 {
1850
+ height: var(--uds-sizing-16);
1851
+ }
1852
+
1853
+ &-20 {
1854
+ height: var(--uds-sizing-20);
1855
+ }
1856
+
1857
+ &-24 {
1858
+ height: var(--uds-sizing-24);
1859
+ }
1860
+
1861
+ &-32 {
1862
+ height: var(--uds-sizing-32);
1863
+ }
1864
+
1865
+ &-40 {
1866
+ height: var(--uds-sizing-40);
1867
+ }
1868
+
1869
+ &-48 {
1870
+ height: var(--uds-sizing-48);
1871
+ }
1872
+ }
1873
+
1874
+ .min-h {
1875
+ &-0 {
1876
+ min-height: 0;
1877
+ }
1878
+
1879
+ &-full {
1880
+ min-height: 100%;
1881
+ }
1882
+
1883
+ &-screen {
1884
+ min-height: 100vh;
1885
+ }
1886
+
1887
+ &-fit {
1888
+ min-height: fit-content;
1889
+ }
1890
+ }
1891
+
1892
+ .max-h {
1893
+ &-none {
1894
+ max-height: none;
1895
+ }
1896
+
1897
+ &-full {
1898
+ max-height: 100%;
1899
+ }
1900
+
1901
+ &-screen {
1902
+ max-height: 100vh;
1903
+ }
1904
+ }
1905
+
1906
+ .size {
1907
+ &-12 {
1908
+ width: var(--uds-sizing-12);
1909
+ height: var(--uds-sizing-12);
1910
+ }
1911
+
1912
+ &-16 {
1913
+ width: var(--uds-sizing-16);
1914
+ height: var(--uds-sizing-16);
1915
+ }
1916
+
1917
+ &-20 {
1918
+ width: var(--uds-sizing-20);
1919
+ height: var(--uds-sizing-20);
1920
+ }
1921
+
1922
+ &-24 {
1923
+ width: var(--uds-sizing-24);
1924
+ height: var(--uds-sizing-24);
1925
+ }
1926
+
1927
+ &-32 {
1928
+ width: var(--uds-sizing-32);
1929
+ height: var(--uds-sizing-32);
1930
+ }
1931
+
1932
+ &-40 {
1933
+ width: var(--uds-sizing-40);
1934
+ height: var(--uds-sizing-40);
1935
+ }
1936
+
1937
+ &-48 {
1938
+ width: var(--uds-sizing-48);
1939
+ height: var(--uds-sizing-48);
1940
+ }
1941
+
1942
+ &-auto {
1943
+ width: auto;
1944
+ height: auto;
1945
+ }
1946
+
1947
+ &-full {
1948
+ width: 100%;
1949
+ height: 100%;
1950
+ }
1951
+ }
1952
+
1953
+ .aspect {
1954
+ &-auto {
1955
+ aspect-ratio: var(--uds-aspect-ratio-auto);
1956
+ }
1957
+
1958
+ &-square {
1959
+ aspect-ratio: var(--uds-aspect-ratio-square);
1960
+ }
1961
+
1962
+ &-video {
1963
+ aspect-ratio: var(--uds-aspect-ratio-video);
1964
+ }
1965
+
1966
+ &-portrait {
1967
+ aspect-ratio: var(--uds-aspect-ratio-portrait);
1968
+ }
1969
+
1970
+ &-4-3 {
1971
+ aspect-ratio: var(--uds-aspect-ratio-4-3);
1972
+ }
1973
+
1974
+ &-3-2 {
1975
+ aspect-ratio: var(--uds-aspect-ratio-3-2);
1976
+ }
1977
+
1978
+ &-21-9 {
1979
+ aspect-ratio: var(--uds-aspect-ratio-21-9);
1980
+ }
1981
+ }
1982
+
1983
+ /* ========================================
1984
+ TYPOGRAPHY
1985
+ ======================================== */
1986
+
1987
+ .font-primary {
1988
+ font-family: var(--uds-font-family);
1989
+ }
1990
+
1991
+ .text {
1992
+ &-12 {
1993
+ font-size: var(--uds-font-size-12);
1994
+ }
1995
+
1996
+ &-14 {
1997
+ font-size: var(--uds-font-size-14);
1998
+ }
1999
+
2000
+ &-16 {
2001
+ font-size: var(--uds-font-size-16);
2002
+ }
2003
+
2004
+ &-18 {
2005
+ font-size: var(--uds-font-size-18);
2006
+ }
2007
+
2008
+ &-20 {
2009
+ font-size: var(--uds-font-size-20);
2010
+ }
2011
+
2012
+ &-24 {
2013
+ font-size: var(--uds-font-size-24);
2014
+ }
2015
+
2016
+ &-28 {
2017
+ font-size: var(--uds-font-size-28);
2018
+ }
2019
+
2020
+ &-32 {
2021
+ font-size: var(--uds-font-size-32);
2022
+ }
2023
+
2024
+ &-36 {
2025
+ font-size: var(--uds-font-size-36);
2026
+ }
2027
+
2028
+ &-48 {
2029
+ font-size: var(--uds-font-size-48);
2030
+ }
2031
+
2032
+ &-60 {
2033
+ font-size: var(--uds-font-size-60);
2034
+ }
2035
+
2036
+ &-72 {
2037
+ font-size: var(--uds-font-size-72);
2038
+ }
2039
+
2040
+ &-96 {
2041
+ font-size: var(--uds-font-size-96);
2042
+ }
2043
+
2044
+ &-128 {
2045
+ font-size: var(--uds-font-size-128);
2046
+ }
2047
+ }
2048
+
2049
+ .font {
2050
+ &-normal {
2051
+ font-weight: var(--uds-font-weight);
2052
+ }
2053
+
2054
+ &-medium {
2055
+ font-weight: var(--uds-font-weight-medium);
2056
+ }
2057
+
2058
+ &-semibold {
2059
+ font-weight: var(--uds-font-weight-semibold);
2060
+ }
2061
+
2062
+ &-bold {
2063
+ font-weight: var(--uds-font-weight-bold);
2064
+ }
2065
+ }
2066
+
2067
+ .leading {
2068
+ &-12 {
2069
+ line-height: var(--uds-line-12);
2070
+ }
2071
+
2072
+ &-14 {
2073
+ line-height: var(--uds-line-14);
2074
+ }
2075
+
2076
+ &-16 {
2077
+ line-height: var(--uds-line-16);
2078
+ }
2079
+
2080
+ &-18 {
2081
+ line-height: var(--uds-line-18);
2082
+ }
2083
+
2084
+ &-20 {
2085
+ line-height: var(--uds-line-20);
2086
+ }
2087
+
2088
+ &-24 {
2089
+ line-height: var(--uds-line-24);
2090
+ }
2091
+
2092
+ &-28 {
2093
+ line-height: var(--uds-line-28);
2094
+ }
2095
+
2096
+ &-32 {
2097
+ line-height: var(--uds-line-32);
2098
+ }
2099
+
2100
+ &-36 {
2101
+ line-height: var(--uds-line-36);
2102
+ }
2103
+
2104
+ &-40 {
2105
+ line-height: var(--uds-line-40);
2106
+ }
2107
+
2108
+ &-48 {
2109
+ line-height: var(--uds-line-48);
2110
+ }
2111
+
2112
+ &-60 {
2113
+ line-height: var(--uds-line-60);
2114
+ }
2115
+
2116
+ &-72 {
2117
+ line-height: var(--uds-line-72);
2118
+ }
2119
+
2120
+ &-96 {
2121
+ line-height: var(--uds-line-96);
2122
+ }
2123
+
2124
+ &-128 {
2125
+ line-height: var(--uds-line-128);
2126
+ }
2127
+
2128
+ &-none {
2129
+ line-height: 1;
2130
+ }
2131
+
2132
+ &-tight {
2133
+ line-height: 1.25;
2134
+ }
2135
+
2136
+ &-snug {
2137
+ line-height: 1.375;
2138
+ }
2139
+
2140
+ &-normal {
2141
+ line-height: 1.5;
2142
+ }
2143
+
2144
+ &-relaxed {
2145
+ line-height: 1.625;
2146
+ }
2147
+
2148
+ &-loose {
2149
+ line-height: 2;
2150
+ }
2151
+ }
2152
+
2153
+ .tracking {
2154
+ &-tight {
2155
+ letter-spacing: var(--uds-letter-spacing-tight);
2156
+ }
2157
+
2158
+ &-medium {
2159
+ letter-spacing: var(--uds-letter-spacing-medium);
2160
+ }
2161
+
2162
+ &-normal {
2163
+ letter-spacing: var(--uds-letter-spacing-normal);
2164
+ }
2165
+
2166
+ &-loose {
2167
+ letter-spacing: var(--uds-letter-spacing-loose);
2168
+ }
2169
+ }
2170
+
2171
+ .uppercase {
2172
+ text-transform: uppercase;
2173
+ }
2174
+
2175
+ .lowercase {
2176
+ text-transform: lowercase;
2177
+ }
2178
+
2179
+ .capitalize {
2180
+ text-transform: capitalize;
2181
+ }
2182
+
2183
+ .normal-case {
2184
+ text-transform: none;
2185
+ }
2186
+
2187
+ .italic {
2188
+ font-style: italic;
2189
+ }
2190
+
2191
+ .not-italic {
2192
+ font-style: normal;
2193
+ }
2194
+
2195
+ .underline {
2196
+ text-decoration-line: underline;
2197
+ }
2198
+
2199
+ .line-through {
2200
+ text-decoration-line: line-through;
2201
+ }
2202
+
2203
+ .no-underline {
2204
+ text-decoration-line: none;
2205
+ }
2206
+
2207
+ .truncate {
2208
+ overflow: hidden;
2209
+ text-overflow: ellipsis;
2210
+ white-space: nowrap;
2211
+ }
2212
+
2213
+ .line-clamp {
2214
+ &-1 {
2215
+ overflow: hidden;
2216
+ display: -webkit-box;
2217
+ -webkit-box-orient: vertical;
2218
+ -webkit-line-clamp: 1;
2219
+ line-clamp: 1;
2220
+ }
2221
+
2222
+ &-2 {
2223
+ overflow: hidden;
2224
+ display: -webkit-box;
2225
+ -webkit-box-orient: vertical;
2226
+ -webkit-line-clamp: 2;
2227
+ line-clamp: 2;
2228
+ }
2229
+
2230
+ &-3 {
2231
+ overflow: hidden;
2232
+ display: -webkit-box;
2233
+ -webkit-box-orient: vertical;
2234
+ -webkit-line-clamp: 3;
2235
+ line-clamp: 3;
2236
+ }
2237
+
2238
+ &-4 {
2239
+ overflow: hidden;
2240
+ display: -webkit-box;
2241
+ -webkit-box-orient: vertical;
2242
+ -webkit-line-clamp: 4;
2243
+ line-clamp: 4;
2244
+ }
2245
+
2246
+ &-5 {
2247
+ overflow: hidden;
2248
+ display: -webkit-box;
2249
+ -webkit-box-orient: vertical;
2250
+ -webkit-line-clamp: 5;
2251
+ line-clamp: 5;
2252
+ }
2253
+
2254
+ &-6 {
2255
+ overflow: hidden;
2256
+ display: -webkit-box;
2257
+ -webkit-box-orient: vertical;
2258
+ -webkit-line-clamp: 6;
2259
+ line-clamp: 6;
2260
+ }
2261
+
2262
+ &-none {
2263
+ overflow: visible;
2264
+ display: block;
2265
+ -webkit-box-orient: horizontal;
2266
+ -webkit-line-clamp: none;
2267
+ line-clamp: none;
2268
+ }
2269
+ }
2270
+
2271
+ /* ========================================
2272
+ BACKGROUNDS
2273
+ ======================================== */
2274
+
2275
+ .bg {
2276
+ &-transparent {
2277
+ background-color: var(--uds-color-transparent);
2278
+ }
2279
+
2280
+ &-white {
2281
+ background-color: var(--uds-color-white);
2282
+ }
2283
+
2284
+ &-black {
2285
+ background-color: var(--uds-color-black);
2286
+ }
2287
+
2288
+ &-primary {
2289
+ background-color: var(--uds-surface-primary);
2290
+ }
2291
+
2292
+ &-secondary {
2293
+ background-color: var(--uds-surface-secondary);
2294
+ }
2295
+
2296
+ &-tertiary {
2297
+ background-color: var(--uds-surface-tertiary);
2298
+ }
2299
+
2300
+ &-quaternary {
2301
+ background-color: var(--uds-surface-quaternary);
2302
+ }
2303
+
2304
+ &-brand-primary {
2305
+ background-color: var(--uds-surface-brand-primary);
2306
+ }
2307
+
2308
+ &-brand-secondary {
2309
+ background-color: var(--uds-surface-brand-secondary);
2310
+ }
2311
+
2312
+ &-brand-tertiary {
2313
+ background-color: var(--uds-surface-brand-tertiary);
2314
+ }
2315
+
2316
+ &-brand-quaternary {
2317
+ background-color: var(--uds-surface-brand-quaternary);
2318
+ }
2319
+
2320
+ &-gradient-to {
2321
+ &-r {
2322
+ background-image: linear-gradient(to right, var(--tw-gradient-stops));
2323
+ }
2324
+
2325
+ &-l {
2326
+ background-image: linear-gradient(to left, var(--tw-gradient-stops));
2327
+ }
2328
+
2329
+ &-t {
2330
+ background-image: linear-gradient(to top, var(--tw-gradient-stops));
2331
+ }
2332
+
2333
+ &-b {
2334
+ background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
2335
+ }
2336
+
2337
+ &-tr {
2338
+ background-image: linear-gradient(to top right, var(--tw-gradient-stops));
2339
+ }
2340
+
2341
+ &-tl {
2342
+ background-image: linear-gradient(to top left, var(--tw-gradient-stops));
2343
+ }
2344
+
2345
+ &-br {
2346
+ background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
2347
+ }
2348
+
2349
+ &-bl {
2350
+ background-image: linear-gradient(to bottom left, var(--tw-gradient-stops));
2351
+ }
2352
+ }
2353
+
2354
+ &-auto {
2355
+ background-size: auto;
2356
+ }
2357
+
2358
+ &-cover {
2359
+ background-size: cover;
2360
+ }
2361
+
2362
+ &-contain {
2363
+ background-size: contain;
2364
+ }
2365
+
2366
+ &-center {
2367
+ background-position: center;
2368
+ }
2369
+
2370
+ &-top {
2371
+ background-position: top;
2372
+ }
2373
+
2374
+ &-right {
2375
+ background-position: right;
2376
+ }
2377
+
2378
+ &-bottom {
2379
+ background-position: bottom;
2380
+ }
2381
+
2382
+ &-left {
2383
+ background-position: left;
2384
+ }
2385
+ }
2386
+
2387
+ /* ========================================
2388
+ BORDERS & EFFECTS
2389
+ ======================================== */
2390
+
2391
+ .border {
2392
+ border-width: var(--uds-border-width-1);
2393
+
2394
+ &-0 {
2395
+ border-width: var(--uds-border-width-none);
2396
+ }
2397
+
2398
+ &-2 {
2399
+ border-width: var(--uds-border-width-2);
2400
+ }
2401
+
2402
+ &-4 {
2403
+ border-width: var(--uds-border-width-4);
2404
+ }
2405
+
2406
+ &-6 {
2407
+ border-width: var(--uds-border-width-6);
2408
+ }
2409
+
2410
+ &-t {
2411
+ border-top-width: var(--uds-border-width-1);
2412
+
2413
+ &-0 {
2414
+ border-top-width: var(--uds-border-width-none);
2415
+ }
2416
+ }
2417
+
2418
+ &-r {
2419
+ border-right-width: var(--uds-border-width-1);
2420
+
2421
+ &-0 {
2422
+ border-right-width: var(--uds-border-width-none);
2423
+ }
2424
+ }
2425
+
2426
+ &-b {
2427
+ border-bottom-width: var(--uds-border-width-1);
2428
+
2429
+ &-0 {
2430
+ border-bottom-width: var(--uds-border-width-none);
2431
+ }
2432
+ }
2433
+
2434
+ &-l {
2435
+ border-left-width: var(--uds-border-width-1);
2436
+
2437
+ &-0 {
2438
+ border-left-width: var(--uds-border-width-none);
2439
+ }
2440
+ }
2441
+
2442
+ &-primary {
2443
+ border-color: var(--uds-border-primary);
2444
+ }
2445
+
2446
+ &-secondary {
2447
+ border-color: var(--uds-border-secondary);
2448
+ }
2449
+
2450
+ &-tertiary {
2451
+ border-color: var(--uds-border-tertiary);
2452
+ }
2453
+
2454
+ &-quaternary {
2455
+ border-color: var(--uds-border-quaternary);
2456
+ }
2457
+
2458
+ &-brand-primary {
2459
+ border-color: var(--uds-border-brand-primary);
2460
+ }
2461
+
2462
+ &-disabled {
2463
+ border-color: var(--uds-border-disabled);
2464
+ }
2465
+
2466
+ &-transparent {
2467
+ border-color: var(--uds-border-transparent);
2468
+ }
2469
+ }
2470
+
2471
+ .rounded {
2472
+ &-none {
2473
+ border-radius: var(--uds-radius-none);
2474
+ }
2475
+
2476
+ &-2 {
2477
+ border-radius: var(--uds-radius-2);
2478
+ }
2479
+
2480
+ &-4 {
2481
+ border-radius: var(--uds-radius-4);
2482
+ }
2483
+
2484
+ &-6 {
2485
+ border-radius: var(--uds-radius-6);
2486
+ }
2487
+
2488
+ &-8 {
2489
+ border-radius: var(--uds-radius-8);
2490
+ }
2491
+
2492
+ &-12 {
2493
+ border-radius: var(--uds-radius-12);
2494
+ }
2495
+
2496
+ &-16 {
2497
+ border-radius: var(--uds-radius-16);
2498
+ }
2499
+
2500
+ &-20 {
2501
+ border-radius: var(--uds-radius-20);
2502
+ }
2503
+
2504
+ &-24 {
2505
+ border-radius: var(--uds-radius-24);
2506
+ }
2507
+
2508
+ &-full {
2509
+ border-radius: var(--uds-radius-9999);
2510
+ }
2511
+
2512
+ &-t {
2513
+ &-none {
2514
+ border-top-left-radius: var(--uds-radius-none);
2515
+ border-top-right-radius: var(--uds-radius-none);
2516
+ }
2517
+
2518
+ &-2 {
2519
+ border-top-left-radius: var(--uds-radius-2);
2520
+ border-top-right-radius: var(--uds-radius-2);
2521
+ }
2522
+
2523
+ &-4 {
2524
+ border-top-left-radius: var(--uds-radius-4);
2525
+ border-top-right-radius: var(--uds-radius-4);
2526
+ }
2527
+
2528
+ &-8 {
2529
+ border-top-left-radius: var(--uds-radius-8);
2530
+ border-top-right-radius: var(--uds-radius-8);
2531
+ }
2532
+
2533
+ &-full {
2534
+ border-top-left-radius: var(--uds-radius-9999);
2535
+ border-top-right-radius: var(--uds-radius-9999);
2536
+ }
2537
+ }
2538
+
2539
+ &-r {
2540
+ &-none {
2541
+ border-top-right-radius: var(--uds-radius-none);
2542
+ border-bottom-right-radius: var(--uds-radius-none);
2543
+ }
2544
+
2545
+ &-2 {
2546
+ border-top-right-radius: var(--uds-radius-2);
2547
+ border-bottom-right-radius: var(--uds-radius-2);
2548
+ }
2549
+
2550
+ &-4 {
2551
+ border-top-right-radius: var(--uds-radius-4);
2552
+ border-bottom-right-radius: var(--uds-radius-4);
2553
+ }
2554
+
2555
+ &-8 {
2556
+ border-top-right-radius: var(--uds-radius-8);
2557
+ border-bottom-right-radius: var(--uds-radius-8);
2558
+ }
2559
+
2560
+ &-full {
2561
+ border-top-right-radius: var(--uds-radius-9999);
2562
+ border-bottom-right-radius: var(--uds-radius-9999);
2563
+ }
2564
+ }
2565
+
2566
+ &-b {
2567
+ &-none {
2568
+ border-bottom-right-radius: var(--uds-radius-none);
2569
+ border-bottom-left-radius: var(--uds-radius-none);
2570
+ }
2571
+
2572
+ &-2 {
2573
+ border-bottom-right-radius: var(--uds-radius-2);
2574
+ border-bottom-left-radius: var(--uds-radius-2);
2575
+ }
2576
+
2577
+ &-4 {
2578
+ border-bottom-right-radius: var(--uds-radius-4);
2579
+ border-bottom-left-radius: var(--uds-radius-4);
2580
+ }
2581
+
2582
+ &-8 {
2583
+ border-bottom-right-radius: var(--uds-radius-8);
2584
+ border-bottom-left-radius: var(--uds-radius-8);
2585
+ }
2586
+
2587
+ &-full {
2588
+ border-bottom-right-radius: var(--uds-radius-9999);
2589
+ border-bottom-left-radius: var(--uds-radius-9999);
2590
+ }
2591
+ }
2592
+
2593
+ &-l {
2594
+ &-none {
2595
+ border-top-left-radius: var(--uds-radius-none);
2596
+ border-bottom-left-radius: var(--uds-radius-none);
2597
+ }
2598
+
2599
+ &-2 {
2600
+ border-top-left-radius: var(--uds-radius-2);
2601
+ border-bottom-left-radius: var(--uds-radius-2);
2602
+ }
2603
+
2604
+ &-4 {
2605
+ border-top-left-radius: var(--uds-radius-4);
2606
+ border-bottom-left-radius: var(--uds-radius-4);
2607
+ }
2608
+
2609
+ &-8 {
2610
+ border-top-left-radius: var(--uds-radius-8);
2611
+ border-bottom-left-radius: var(--uds-radius-8);
2612
+ }
2613
+
2614
+ &-full {
2615
+ border-top-left-radius: var(--uds-radius-9999);
2616
+ border-bottom-left-radius: var(--uds-radius-9999);
2617
+ }
2618
+ }
2619
+ }
2620
+
2621
+ .divide {
2622
+ &-y {
2623
+ & > * + * {
2624
+ border-top-width: var(--uds-border-width-1);
2625
+ border-top-color: var(--uds-border-primary);
2626
+ }
2627
+
2628
+ &-0 > * + * {
2629
+ border-top-width: var(--uds-border-width-none);
2630
+ }
2631
+ }
2632
+
2633
+ &-x {
2634
+ & > * + * {
2635
+ border-left-width: var(--uds-border-width-1);
2636
+ border-left-color: var(--uds-border-primary);
2637
+ }
2638
+
2639
+ &-0 > * + * {
2640
+ border-left-width: var(--uds-border-width-none);
2641
+ }
2642
+ }
2643
+ }
2644
+
2645
+ .ring {
2646
+ box-shadow: 0 0 0 var(--uds-focus-ring-width) var(--uds-focus-ring-border);
2647
+
2648
+ &-0 {
2649
+ box-shadow: none;
2650
+ }
2651
+
2652
+ &-offset {
2653
+ &-0 {
2654
+ box-shadow: 0 0 0 var(--uds-focus-ring-offset) var(--uds-color-white);
2655
+ }
2656
+
2657
+ &-2 {
2658
+ box-shadow: 0 0 0 var(--uds-focus-ring-offset) var(--uds-color-white);
2659
+ }
2660
+ }
2661
+ }
2662
+
2663
+ .shadow {
2664
+ &-none {
2665
+ box-shadow: none;
2666
+ }
2667
+
2668
+ &-sm {
2669
+ box-shadow: 0 1px 2px 0 var(--uds-shadow-8);
2670
+ }
2671
+
2672
+ &-md {
2673
+ box-shadow: 0 4px 6px -1px var(--uds-shadow-10), 0 2px 4px -2px var(--uds-shadow-10);
2674
+ }
2675
+
2676
+ &-lg {
2677
+ box-shadow: 0 10px 15px -3px var(--uds-shadow-10), 0 4px 6px -4px var(--uds-shadow-10);
2678
+ }
2679
+
2680
+ &-xl {
2681
+ box-shadow: 0 20px 25px -5px var(--uds-shadow-10), 0 8px 10px -6px var(--uds-shadow-10);
2682
+ }
2683
+
2684
+ &-2xl {
2685
+ box-shadow: 0 25px 50px -12px var(--uds-shadow-25);
2686
+ }
2687
+ }
2688
+
2689
+ .shadow {
2690
+ box-shadow: 0 1px 3px 0 var(--uds-shadow-8), 0 1px 2px -1px var(--uds-shadow-8);
2691
+ }
2692
+
2693
+ .opacity {
2694
+ &-0 {
2695
+ opacity: 0;
2696
+ }
2697
+
2698
+ &-5 {
2699
+ opacity: 0.05;
2700
+ }
2701
+
2702
+ &-10 {
2703
+ opacity: 0.1;
2704
+ }
2705
+
2706
+ &-20 {
2707
+ opacity: 0.2;
2708
+ }
2709
+
2710
+ &-25 {
2711
+ opacity: 0.25;
2712
+ }
2713
+
2714
+ &-30 {
2715
+ opacity: 0.3;
2716
+ }
2717
+
2718
+ &-40 {
2719
+ opacity: 0.4;
2720
+ }
2721
+
2722
+ &-50 {
2723
+ opacity: 0.5;
2724
+ }
2725
+
2726
+ &-60 {
2727
+ opacity: 0.6;
2728
+ }
2729
+
2730
+ &-70 {
2731
+ opacity: 0.7;
2732
+ }
2733
+
2734
+ &-75 {
2735
+ opacity: 0.75;
2736
+ }
2737
+
2738
+ &-80 {
2739
+ opacity: 0.8;
2740
+ }
2741
+
2742
+ &-90 {
2743
+ opacity: 0.9;
2744
+ }
2745
+
2746
+ &-95 {
2747
+ opacity: 0.95;
2748
+ }
2749
+
2750
+ &-100 {
2751
+ opacity: 1;
2752
+ }
2753
+ }
2754
+
2755
+ .blur {
2756
+ &-none {
2757
+ filter: blur(var(--uds-blur-none));
2758
+ }
2759
+
2760
+ &-sm {
2761
+ filter: blur(var(--uds-blur-sm));
2762
+ }
2763
+
2764
+ &-md {
2765
+ filter: blur(var(--uds-blur-md));
2766
+ }
2767
+
2768
+ &-lg {
2769
+ filter: blur(var(--uds-blur-lg));
2770
+ }
2771
+
2772
+ &-xl {
2773
+ filter: blur(var(--uds-blur-xl));
2774
+ }
2775
+
2776
+ &-2xl {
2777
+ filter: blur(var(--uds-blur-2xl));
2778
+ }
2779
+
2780
+ &-3xl {
2781
+ filter: blur(var(--uds-blur-3xl));
2782
+ }
2783
+ }
2784
+
2785
+ .contrast {
2786
+ &-0 {
2787
+ filter: contrast(0);
2788
+ }
2789
+
2790
+ &-50 {
2791
+ filter: contrast(0.5);
2792
+ }
2793
+
2794
+ &-75 {
2795
+ filter: contrast(0.75);
2796
+ }
2797
+
2798
+ &-100 {
2799
+ filter: contrast(1);
2800
+ }
2801
+
2802
+ &-125 {
2803
+ filter: contrast(1.25);
2804
+ }
2805
+
2806
+ &-150 {
2807
+ filter: contrast(1.5);
2808
+ }
2809
+
2810
+ &-200 {
2811
+ filter: contrast(2);
2812
+ }
2813
+ }
2814
+
2815
+ .grayscale {
2816
+ &-0 {
2817
+ filter: grayscale(0);
2818
+ }
2819
+ }
2820
+
2821
+ .grayscale {
2822
+ filter: grayscale(100%);
2823
+ }
2824
+
2825
+ /* ========================================
2826
+ TRANSFORMS & ANIMATION
2827
+ ======================================== */
2828
+
2829
+ .scale {
2830
+ &-0 {
2831
+ transform: scale(0);
2832
+ }
2833
+
2834
+ &-50 {
2835
+ transform: scale(0.5);
2836
+ }
2837
+
2838
+ &-75 {
2839
+ transform: scale(0.75);
2840
+ }
2841
+
2842
+ &-90 {
2843
+ transform: scale(0.9);
2844
+ }
2845
+
2846
+ &-95 {
2847
+ transform: scale(0.95);
2848
+ }
2849
+
2850
+ &-100 {
2851
+ transform: scale(1);
2852
+ }
2853
+
2854
+ &-105 {
2855
+ transform: scale(1.05);
2856
+ }
2857
+
2858
+ &-110 {
2859
+ transform: scale(1.1);
2860
+ }
2861
+
2862
+ &-125 {
2863
+ transform: scale(1.25);
2864
+ }
2865
+
2866
+ &-150 {
2867
+ transform: scale(1.5);
2868
+ }
2869
+ }
2870
+
2871
+ .rotate {
2872
+ &-0 {
2873
+ transform: rotate(0deg);
2874
+ }
2875
+
2876
+ &-1 {
2877
+ transform: rotate(1deg);
2878
+ }
2879
+
2880
+ &-2 {
2881
+ transform: rotate(2deg);
2882
+ }
2883
+
2884
+ &-3 {
2885
+ transform: rotate(3deg);
2886
+ }
2887
+
2888
+ &-6 {
2889
+ transform: rotate(6deg);
2890
+ }
2891
+
2892
+ &-12 {
2893
+ transform: rotate(12deg);
2894
+ }
2895
+
2896
+ &-45 {
2897
+ transform: rotate(45deg);
2898
+ }
2899
+
2900
+ &-90 {
2901
+ transform: rotate(90deg);
2902
+ }
2903
+
2904
+ &-180 {
2905
+ transform: rotate(180deg);
2906
+ }
2907
+ }
2908
+
2909
+ .-rotate {
2910
+ &-180 {
2911
+ transform: rotate(-180deg);
2912
+ }
2913
+
2914
+ &-90 {
2915
+ transform: rotate(-90deg);
2916
+ }
2917
+
2918
+ &-45 {
2919
+ transform: rotate(-45deg);
2920
+ }
2921
+
2922
+ &-12 {
2923
+ transform: rotate(-12deg);
2924
+ }
2925
+
2926
+ &-6 {
2927
+ transform: rotate(-6deg);
2928
+ }
2929
+
2930
+ &-3 {
2931
+ transform: rotate(-3deg);
2932
+ }
2933
+
2934
+ &-2 {
2935
+ transform: rotate(-2deg);
2936
+ }
2937
+
2938
+ &-1 {
2939
+ transform: rotate(-1deg);
2940
+ }
2941
+ }
2942
+
2943
+ .translate {
2944
+ &-x {
2945
+ &-0 {
2946
+ transform: translateX(0);
2947
+ }
2948
+
2949
+ &-2 {
2950
+ transform: translateX(var(--uds-spacing-2));
2951
+ }
2952
+
2953
+ &-4 {
2954
+ transform: translateX(var(--uds-spacing-4));
2955
+ }
2956
+
2957
+ &-8 {
2958
+ transform: translateX(var(--uds-spacing-8));
2959
+ }
2960
+
2961
+ &-12 {
2962
+ transform: translateX(var(--uds-spacing-12));
2963
+ }
2964
+
2965
+ &-16 {
2966
+ transform: translateX(var(--uds-spacing-16));
2967
+ }
2968
+
2969
+ &-24 {
2970
+ transform: translateX(var(--uds-spacing-24));
2971
+ }
2972
+
2973
+ &-full {
2974
+ transform: translateX(100%);
2975
+ }
2976
+ }
2977
+
2978
+ &-y {
2979
+ &-0 {
2980
+ transform: translateY(0);
2981
+ }
2982
+
2983
+ &-2 {
2984
+ transform: translateY(var(--uds-spacing-2));
2985
+ }
2986
+
2987
+ &-4 {
2988
+ transform: translateY(var(--uds-spacing-4));
2989
+ }
2990
+
2991
+ &-8 {
2992
+ transform: translateY(var(--uds-spacing-8));
2993
+ }
2994
+
2995
+ &-12 {
2996
+ transform: translateY(var(--uds-spacing-12));
2997
+ }
2998
+
2999
+ &-16 {
3000
+ transform: translateY(var(--uds-spacing-16));
3001
+ }
3002
+
3003
+ &-24 {
3004
+ transform: translateY(var(--uds-spacing-24));
3005
+ }
3006
+
3007
+ &-full {
3008
+ transform: translateY(100%);
3009
+ }
3010
+ }
3011
+ }
3012
+
3013
+ .-translate {
3014
+ &-x {
3015
+ &-2 {
3016
+ transform: translateX(calc(var(--uds-spacing-2) * -1));
3017
+ }
3018
+
3019
+ &-4 {
3020
+ transform: translateX(calc(var(--uds-spacing-4) * -1));
3021
+ }
3022
+
3023
+ &-8 {
3024
+ transform: translateX(calc(var(--uds-spacing-8) * -1));
3025
+ }
3026
+
3027
+ &-12 {
3028
+ transform: translateX(calc(var(--uds-spacing-12) * -1));
3029
+ }
3030
+
3031
+ &-16 {
3032
+ transform: translateX(calc(var(--uds-spacing-16) * -1));
3033
+ }
3034
+
3035
+ &-24 {
3036
+ transform: translateX(calc(var(--uds-spacing-24) * -1));
3037
+ }
3038
+
3039
+ &-full {
3040
+ transform: translateX(-100%);
3041
+ }
3042
+ }
3043
+
3044
+ &-y {
3045
+ &-2 {
3046
+ transform: translateY(calc(var(--uds-spacing-2) * -1));
3047
+ }
3048
+
3049
+ &-4 {
3050
+ transform: translateY(calc(var(--uds-spacing-4) * -1));
3051
+ }
3052
+
3053
+ &-8 {
3054
+ transform: translateY(calc(var(--uds-spacing-8) * -1));
3055
+ }
3056
+
3057
+ &-12 {
3058
+ transform: translateY(calc(var(--uds-spacing-12) * -1));
3059
+ }
3060
+
3061
+ &-16 {
3062
+ transform: translateY(calc(var(--uds-spacing-16) * -1));
3063
+ }
3064
+
3065
+ &-24 {
3066
+ transform: translateY(calc(var(--uds-spacing-24) * -1));
3067
+ }
3068
+
3069
+ &-full {
3070
+ transform: translateY(-100%);
3071
+ }
3072
+ }
3073
+ }
3074
+
3075
+ .skew {
3076
+ &-x {
3077
+ &-0 {
3078
+ transform: skewX(0deg);
3079
+ }
3080
+
3081
+ &-1 {
3082
+ transform: skewX(1deg);
3083
+ }
3084
+
3085
+ &-2 {
3086
+ transform: skewX(2deg);
3087
+ }
3088
+
3089
+ &-3 {
3090
+ transform: skewX(3deg);
3091
+ }
3092
+
3093
+ &-6 {
3094
+ transform: skewX(6deg);
3095
+ }
3096
+
3097
+ &-12 {
3098
+ transform: skewX(12deg);
3099
+ }
3100
+ }
3101
+
3102
+ &-y {
3103
+ &-0 {
3104
+ transform: skewY(0deg);
3105
+ }
3106
+
3107
+ &-1 {
3108
+ transform: skewY(1deg);
3109
+ }
3110
+
3111
+ &-2 {
3112
+ transform: skewY(2deg);
3113
+ }
3114
+
3115
+ &-3 {
3116
+ transform: skewY(3deg);
3117
+ }
3118
+
3119
+ &-6 {
3120
+ transform: skewY(6deg);
3121
+ }
3122
+
3123
+ &-12 {
3124
+ transform: skewY(12deg);
3125
+ }
3126
+ }
3127
+ }
3128
+
3129
+ .-skew {
3130
+ &-x {
3131
+ &-12 {
3132
+ transform: skewX(-12deg);
3133
+ }
3134
+
3135
+ &-6 {
3136
+ transform: skewX(-6deg);
3137
+ }
3138
+
3139
+ &-3 {
3140
+ transform: skewX(-3deg);
3141
+ }
3142
+
3143
+ &-2 {
3144
+ transform: skewX(-2deg);
3145
+ }
3146
+
3147
+ &-1 {
3148
+ transform: skewX(-1deg);
3149
+ }
3150
+ }
3151
+
3152
+ &-y {
3153
+ &-12 {
3154
+ transform: skewY(-12deg);
3155
+ }
3156
+
3157
+ &-6 {
3158
+ transform: skewY(-6deg);
3159
+ }
3160
+
3161
+ &-3 {
3162
+ transform: skewY(-3deg);
3163
+ }
3164
+
3165
+ &-2 {
3166
+ transform: skewY(-2deg);
3167
+ }
3168
+
3169
+ &-1 {
3170
+ transform: skewY(-1deg);
3171
+ }
3172
+ }
3173
+ }
3174
+
3175
+ .origin {
3176
+ &-center {
3177
+ transform-origin: center;
3178
+ }
3179
+
3180
+ &-top {
3181
+ transform-origin: top;
3182
+
3183
+ &-left {
3184
+ transform-origin: top left;
3185
+ }
3186
+
3187
+ &-right {
3188
+ transform-origin: top right;
3189
+ }
3190
+ }
3191
+
3192
+ &-right {
3193
+ transform-origin: right;
3194
+ }
3195
+
3196
+ &-bottom {
3197
+ transform-origin: bottom;
3198
+
3199
+ &-left {
3200
+ transform-origin: bottom left;
3201
+ }
3202
+
3203
+ &-right {
3204
+ transform-origin: bottom right;
3205
+ }
3206
+ }
3207
+
3208
+ &-left {
3209
+ transform-origin: left;
3210
+ }
3211
+ }
3212
+
3213
+ .transition {
3214
+ &-none {
3215
+ transition-property: none;
3216
+ }
3217
+
3218
+ &-all {
3219
+ transition-property: all;
3220
+ }
3221
+
3222
+ &-colors {
3223
+ transition-property: var(--uds-transition-property-colors);
3224
+ }
3225
+
3226
+ &-opacity {
3227
+ transition-property: opacity;
3228
+ }
3229
+
3230
+ &-shadow {
3231
+ transition-property: box-shadow;
3232
+ }
3233
+
3234
+ &-transform {
3235
+ transition-property: transform;
3236
+ }
3237
+ }
3238
+
3239
+ .transition {
3240
+ transition-property: var(--uds-transition-property-colors);
3241
+ }
3242
+
3243
+ .duration {
3244
+ &-100 {
3245
+ transition-duration: var(--uds-animation-duration-100);
3246
+ }
3247
+
3248
+ &-200 {
3249
+ transition-duration: var(--uds-animation-duration-200);
3250
+ }
3251
+
3252
+ &-300 {
3253
+ transition-duration: var(--uds-animation-duration-300);
3254
+ }
3255
+
3256
+ &-500 {
3257
+ transition-duration: var(--uds-animation-duration-500);
3258
+ }
3259
+ }
3260
+
3261
+ .ease {
3262
+ &-linear {
3263
+ transition-timing-function: linear;
3264
+ }
3265
+
3266
+ &-in {
3267
+ transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
3268
+ }
3269
+
3270
+ &-out {
3271
+ transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
3272
+ }
3273
+
3274
+ &-in-out {
3275
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
3276
+ }
3277
+
3278
+ &-standard {
3279
+ transition-timing-function: var(--uds-animation-ease-standard);
3280
+ }
3281
+
3282
+ &-accelerate {
3283
+ transition-timing-function: var(--uds-animation-ease-accelerate);
3284
+ }
3285
+
3286
+ &-decelerate {
3287
+ transition-timing-function: var(--uds-animation-ease-decelerate);
3288
+ }
3289
+
3290
+ &-emphasized {
3291
+ transition-timing-function: var(--uds-animation-ease-emphasized);
3292
+ }
3293
+ }
3294
+
3295
+ /* ========================================
3296
+ INTERACTIVITY & ACCESSIBILITY
3297
+ ======================================== */
3298
+
3299
+ .cursor {
3300
+ &-auto {
3301
+ cursor: auto;
3302
+ }
3303
+
3304
+ &-default {
3305
+ cursor: default;
3306
+ }
3307
+
3308
+ &-pointer {
3309
+ cursor: var(--uds-cursor-interactive);
3310
+ }
3311
+
3312
+ &-wait {
3313
+ cursor: wait;
3314
+ }
3315
+
3316
+ &-text {
3317
+ cursor: text;
3318
+ }
3319
+
3320
+ &-move {
3321
+ cursor: move;
3322
+ }
3323
+
3324
+ &-help {
3325
+ cursor: help;
3326
+ }
3327
+
3328
+ &-not-allowed {
3329
+ cursor: var(--uds-cursor-disabled);
3330
+ }
3331
+
3332
+ &-grab {
3333
+ cursor: var(--uds-cursor-drag);
3334
+ }
3335
+
3336
+ &-grabbing {
3337
+ cursor: var(--uds-cursor-dragging);
3338
+ }
3339
+ }
3340
+
3341
+ .pointer-events {
3342
+ &-none {
3343
+ pointer-events: none;
3344
+ }
3345
+
3346
+ &-auto {
3347
+ pointer-events: auto;
3348
+ }
3349
+ }
3350
+
3351
+ .select {
3352
+ &-none {
3353
+ user-select: none;
3354
+ }
3355
+
3356
+ &-text {
3357
+ user-select: text;
3358
+ }
3359
+
3360
+ &-all {
3361
+ user-select: all;
3362
+ }
3363
+
3364
+ &-auto {
3365
+ user-select: auto;
3366
+ }
3367
+ }
3368
+
3369
+ .resize {
3370
+ &-none {
3371
+ resize: none;
3372
+ }
3373
+
3374
+ &-y {
3375
+ resize: vertical;
3376
+ }
3377
+
3378
+ &-x {
3379
+ resize: horizontal;
3380
+ }
3381
+ }
3382
+
3383
+ .resize {
3384
+ resize: both;
3385
+ }
3386
+
3387
+ .sr-only {
3388
+ position: absolute;
3389
+ width: 1px;
3390
+ height: 1px;
3391
+ padding: 0;
3392
+ margin: -1px;
3393
+ overflow: hidden;
3394
+ clip: rect(0, 0, 0, 0);
3395
+ white-space: nowrap;
3396
+ border-width: 0;
3397
+ }
3398
+
3399
+ .not-sr-only {
3400
+ position: static;
3401
+ width: auto;
3402
+ height: auto;
3403
+ padding: 0;
3404
+ margin: 0;
3405
+ overflow: visible;
3406
+ clip: auto;
3407
+ white-space: normal;
3408
+ }
3409
+
3410
+ .focus-visible\:outline-none:focus-visible {
3411
+ outline: none;
3412
+ }
3413
+
3414
+ .focus-visible\:ring:focus-visible {
3415
+ box-shadow: 0 0 0 var(--uds-focus-ring-width) var(--uds-focus-ring-border);
3416
+ }
3417
+
3418
+ .focus-visible\:ring-2:focus-visible {
3419
+ box-shadow: 0 0 0 var(--uds-focus-ring-width) var(--uds-focus-ring-border);
3420
+ }
3421
+
3422
+ /* ========================================
3423
+ VARIANTS (using SCSS nesting)
3424
+ ======================================== */
3425
+
3426
+ .hover {
3427
+ &\:bg-primary:hover {
3428
+ background-color: var(--uds-surface-primary);
3429
+ }
3430
+
3431
+ &\:bg-secondary:hover {
3432
+ background-color: var(--uds-surface-secondary);
3433
+ }
3434
+
3435
+ &\:bg-tertiary:hover {
3436
+ background-color: var(--uds-surface-tertiary);
3437
+ }
3438
+
3439
+ &\:text-primary:hover {
3440
+ color: var(--uds-text-primary);
3441
+ }
3442
+
3443
+ &\:text-secondary:hover {
3444
+ color: var(--uds-text-secondary);
3445
+ }
3446
+
3447
+ &\:text-brand-primary:hover {
3448
+ color: var(--uds-text-brand-primary);
3449
+ }
3450
+
3451
+ &\:opacity-75:hover {
3452
+ opacity: 0.75;
3453
+ }
3454
+
3455
+ &\:opacity-50:hover {
3456
+ opacity: 0.5;
3457
+ }
3458
+
3459
+ &\:scale-105:hover {
3460
+ transform: scale(1.05);
3461
+ }
3462
+
3463
+ &\:shadow-lg:hover {
3464
+ box-shadow: 0 10px 15px -3px var(--uds-shadow-10), 0 4px 6px -4px var(--uds-shadow-10);
3465
+ }
3466
+ }
3467
+
3468
+ .focus {
3469
+ &\:outline-none:focus {
3470
+ outline: none;
3471
+ }
3472
+
3473
+ &\:ring:focus {
3474
+ box-shadow: 0 0 0 var(--uds-focus-ring-width) var(--uds-focus-ring-border);
3475
+ }
3476
+
3477
+ &\:ring-2:focus {
3478
+ box-shadow: 0 0 0 var(--uds-focus-ring-width) var(--uds-focus-ring-border);
3479
+ }
3480
+
3481
+ &\:border-brand-primary:focus {
3482
+ border-color: var(--uds-border-brand-primary);
3483
+ }
3484
+ }
3485
+
3486
+ .active {
3487
+ &\:scale-95:active {
3488
+ transform: scale(0.95);
3489
+ }
3490
+
3491
+ &\:opacity-75:active {
3492
+ opacity: 0.75;
3493
+ }
3494
+ }
3495
+
3496
+ .disabled {
3497
+ &\:opacity-50:disabled {
3498
+ opacity: 0.5;
3499
+ }
3500
+
3501
+ &\:cursor-not-allowed:disabled {
3502
+ cursor: var(--uds-cursor-disabled);
3503
+ }
3504
+
3505
+ &\:pointer-events-none:disabled {
3506
+ pointer-events: none;
3507
+ }
3508
+ }
3509
+
3510
+ .dark {
3511
+ &\:bg-primary[data-theme=dark] {
3512
+ background-color: var(--uds-surface-primary);
3513
+ }
3514
+
3515
+ &\:bg-secondary[data-theme=dark] {
3516
+ background-color: var(--uds-surface-secondary);
3517
+ }
3518
+
3519
+ &\:bg-tertiary[data-theme=dark] {
3520
+ background-color: var(--uds-surface-tertiary);
3521
+ }
3522
+
3523
+ &\:text-primary[data-theme=dark] {
3524
+ color: var(--uds-text-primary);
3525
+ }
3526
+
3527
+ &\:text-secondary[data-theme=dark] {
3528
+ color: var(--uds-text-secondary);
3529
+ }
3530
+
3531
+ &\:border-primary[data-theme=dark] {
3532
+ border-color: var(--uds-border-primary);
3533
+ }
3534
+ }
3535
+
3536
+ /* Responsive Breakpoints */
3537
+ @media (min-width: 640px) {
3538
+ .sm {
3539
+ &\:block {
3540
+ display: block;
3541
+ }
3542
+
3543
+ &\:hidden {
3544
+ display: none;
3545
+ }
3546
+
3547
+ &\:flex {
3548
+ display: flex;
3549
+ }
3550
+
3551
+ &\:grid {
3552
+ display: grid;
3553
+ }
3554
+ }
3555
+ }
3556
+
3557
+ @media (min-width: 768px) {
3558
+ .md {
3559
+ &\:block {
3560
+ display: block;
3561
+ }
3562
+
3563
+ &\:hidden {
3564
+ display: none;
3565
+ }
3566
+
3567
+ &\:flex {
3568
+ display: flex;
3569
+ }
3570
+
3571
+ &\:grid {
3572
+ display: grid;
3573
+ }
3574
+ }
3575
+ }
3576
+
3577
+ @media (min-width: 1024px) {
3578
+ .lg {
3579
+ &\:block {
3580
+ display: block;
3581
+ }
3582
+
3583
+ &\:hidden {
3584
+ display: none;
3585
+ }
3586
+
3587
+ &\:flex {
3588
+ display: flex;
3589
+ }
3590
+
3591
+ &\:grid {
3592
+ display: grid;
3593
+ }
3594
+ }
3595
+ }
3596
+
3597
+ @media (min-width: 1280px) {
3598
+ .xl {
3599
+ &\:block {
3600
+ display: block;
3601
+ }
3602
+
3603
+ &\:hidden {
3604
+ display: none;
3605
+ }
3606
+
3607
+ &\:flex {
3608
+ display: flex;
3609
+ }
3610
+
3611
+ &\:grid {
3612
+ display: grid;
3613
+ }
3614
+ }
3615
+ }
3616
+
3617
+ @media (min-width: 1536px) {
3618
+ .\32 xl {
3619
+ &\:block {
3620
+ display: block;
3621
+ }
3622
+
3623
+ &\:hidden {
3624
+ display: none;
3625
+ }
3626
+
3627
+ &\:flex {
3628
+ display: flex;
3629
+ }
3630
+
3631
+ &\:grid {
3632
+ display: grid;
3633
+ }
3634
+ }
3635
+ }