@blukavantui/community 1.1.0 → 1.2.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 (179) hide show
  1. package/dist/build-audit.json +127 -65
  2. package/dist/checkbox.js +1 -1
  3. package/dist/chunk-4LHIQROI.js +0 -0
  4. package/dist/chunk-6T677NSC.js +1 -0
  5. package/dist/chunk-7CEOCZ5L.js +0 -0
  6. package/dist/chunk-7DXFNK7C.js +1 -0
  7. package/dist/chunk-CNIIMGT3.js +0 -0
  8. package/dist/chunk-CSTCEBEK.js +1 -0
  9. package/dist/chunk-DRZM2AL3.js +0 -0
  10. package/dist/{chunk-JVE6CXCJ.js → chunk-EPPETNK6.js} +1 -1
  11. package/dist/chunk-EPPSBHZR.js +1 -0
  12. package/dist/{chunk-NTFHNL7T.js → chunk-G6OW4OZM.js} +1 -1
  13. package/dist/chunk-GS67ZBLI.js +1 -0
  14. package/dist/{chunk-6EHKOVZK.js → chunk-HVR2UDFX.js} +1 -1
  15. package/dist/chunk-IKYBFMHI.js +1 -0
  16. package/dist/chunk-KVOA55NE.js +0 -0
  17. package/dist/{chunk-MZBB5ROJ.js → chunk-LF2HELEZ.js} +1 -1
  18. package/dist/{chunk-UEOCR2C3.js → chunk-OLDA73XG.js} +2 -2
  19. package/dist/{chunk-IZJN3EF7.js → chunk-T45FJNEQ.js} +1 -1
  20. package/dist/chunk-TZSX4OTV.js +1 -0
  21. package/dist/{chunk-GK3INPAZ.js → chunk-V2YPIC6Z.js} +1 -1
  22. package/dist/chunk-V4ZQLQ7L.js +0 -0
  23. package/dist/chunk-VAM3FPCS.js +0 -0
  24. package/dist/chunk-VSTKXZYY.js +0 -0
  25. package/dist/chunk-WG4US4JH.js +1 -0
  26. package/dist/chunk-WGSTNXAQ.js +0 -0
  27. package/dist/chunk-WJHCVECU.js +1 -0
  28. package/dist/chunk-Y4AXWTAD.js +0 -0
  29. package/dist/chunk-YLFXSHKZ.js +0 -0
  30. package/dist/chunk-ZDGZGAYG.js +0 -0
  31. package/dist/command-palette.js +1 -1
  32. package/dist/component-motion.css +39 -0
  33. package/dist/component-motion.d.ts +45 -0
  34. package/dist/component-motion.js +1 -0
  35. package/dist/content.js +1 -1
  36. package/dist/core.css +8 -0
  37. package/dist/core.js +1 -1
  38. package/dist/data-motion.css +4 -0
  39. package/dist/data-motion.d.ts +23 -0
  40. package/dist/data-motion.js +1 -0
  41. package/dist/data.js +1 -1
  42. package/dist/date-picker.js +1 -1
  43. package/dist/date-range-picker.js +1 -1
  44. package/dist/date-time-picker.js +1 -1
  45. package/dist/drawer.js +1 -1
  46. package/dist/essentials.css +8 -0
  47. package/dist/feedback.js +1 -1
  48. package/dist/form-layout.js +1 -1
  49. package/dist/index.js +1 -1
  50. package/dist/inputs.js +1 -1
  51. package/dist/layout.js +1 -1
  52. package/dist/modal.js +1 -1
  53. package/dist/motion/action-feedback.d.ts +14 -0
  54. package/dist/motion/border-glow.d.ts +12 -0
  55. package/dist/motion/button.d.ts +11 -0
  56. package/dist/motion/component-settings.d.ts +51 -0
  57. package/dist/motion/controller.d.ts +33 -0
  58. package/dist/motion/effects.d.ts +30 -0
  59. package/dist/motion/feedback.d.ts +6 -0
  60. package/dist/motion/loading.d.ts +9 -0
  61. package/dist/motion/optional.d.ts +35 -0
  62. package/dist/motion/photo.d.ts +7 -0
  63. package/dist/motion/presence.d.ts +12 -0
  64. package/dist/motion/scene.d.ts +10 -0
  65. package/dist/motion/screen.d.ts +6 -0
  66. package/dist/motion/scroll-reveal.d.ts +13 -0
  67. package/dist/motion/settings-group.d.ts +14 -0
  68. package/dist/motion/stagger.d.ts +12 -0
  69. package/dist/motion/structure.d.ts +18 -0
  70. package/dist/motion/tabs.d.ts +19 -0
  71. package/dist/motion/tokens.d.ts +11 -0
  72. package/dist/motion/value.d.ts +21 -0
  73. package/dist/motion/view-transition.d.ts +14 -0
  74. package/dist/motion-enhancers.d.ts +12 -0
  75. package/dist/motion-enhancers.js +1 -0
  76. package/dist/motion-settings.d.ts +3 -0
  77. package/dist/motion-settings.js +1 -0
  78. package/dist/motion.css +1076 -0
  79. package/dist/motion.d.ts +20 -0
  80. package/dist/motion.js +1 -0
  81. package/dist/native/form-layout.js +1 -1
  82. package/dist/native-motion-components.d.ts +3 -0
  83. package/dist/native-motion-content.d.ts +1 -0
  84. package/dist/native-motion-foundations.d.ts +3 -0
  85. package/dist/native-motion-layout.d.ts +3 -0
  86. package/dist/native-motion-pilot.d.ts +34 -0
  87. package/dist/native-motion.d.ts +71 -0
  88. package/dist/notification.js +1 -1
  89. package/dist/pagination.js +1 -1
  90. package/dist/radio-button.js +1 -1
  91. package/dist/radio-group.js +1 -1
  92. package/dist/sidebar.js +1 -1
  93. package/dist/sizes.json +273 -151
  94. package/dist/skeleton.css +8 -0
  95. package/dist/styles.css +1130 -0
  96. package/dist/switch.js +1 -1
  97. package/dist/table.js +1 -1
  98. package/dist/time-picker.js +1 -1
  99. package/dist/tree-view.js +1 -1
  100. package/dist/web-motion/chip-ripple.d.ts +6 -0
  101. package/dist/web-motion/choice-ripple.d.ts +6 -0
  102. package/dist/web-motion/content.d.ts +9 -0
  103. package/dist/web-motion/data-rows.d.ts +12 -0
  104. package/dist/web-motion/fields.d.ts +6 -0
  105. package/dist/web-motion/navigation.d.ts +6 -0
  106. package/dist/web-motion/notifications.d.ts +6 -0
  107. package/dist/web-motion/select-ripple.d.ts +6 -0
  108. package/dist/web-motion/statistic.d.ts +13 -0
  109. package/dist/web-motion/surfaces.d.ts +10 -0
  110. package/dist/web-motion/tree.d.ts +6 -0
  111. package/docs/FORM-LAYOUT-ESSENTIALS.md +4 -4
  112. package/edition.json +1 -1
  113. package/npm-shrinkwrap.json +2 -2
  114. package/package.json +29 -3
  115. package/scripts/build-motion-css.mjs +36 -0
  116. package/scripts/build-motion-styles.mjs +29 -0
  117. package/scripts/build.mjs +5 -1
  118. package/scripts/motion-entries.mjs +2 -0
  119. package/src/component-motion.ts +101 -0
  120. package/src/data-motion.ts +60 -0
  121. package/src/form-layout/choice.ts +17 -1
  122. package/src/motion/action-feedback.ts +38 -0
  123. package/src/motion/border-glow.ts +41 -0
  124. package/src/motion/button.ts +56 -0
  125. package/src/motion/component-settings.ts +147 -0
  126. package/src/motion/controller.ts +191 -0
  127. package/src/motion/effects.ts +75 -0
  128. package/src/motion/feedback.ts +41 -0
  129. package/src/motion/loading.ts +40 -0
  130. package/src/motion/optional.ts +123 -0
  131. package/src/motion/photo.ts +19 -0
  132. package/src/motion/presence.ts +44 -0
  133. package/src/motion/scene.ts +103 -0
  134. package/src/motion/screen.ts +15 -0
  135. package/src/motion/scroll-reveal.ts +49 -0
  136. package/src/motion/settings-group.ts +28 -0
  137. package/src/motion/stagger.ts +26 -0
  138. package/src/motion/structure.ts +75 -0
  139. package/src/motion/tabs.ts +105 -0
  140. package/src/motion/tokens.ts +2 -0
  141. package/src/motion/value.ts +61 -0
  142. package/src/motion/view-transition.ts +57 -0
  143. package/src/motion-enhancers.ts +12 -0
  144. package/src/motion-settings.ts +3 -0
  145. package/src/motion.ts +20 -0
  146. package/src/native-motion-components.ts +76 -0
  147. package/src/native-motion-content.ts +10 -0
  148. package/src/native-motion-foundations.ts +56 -0
  149. package/src/native-motion-layout.ts +35 -0
  150. package/src/native-motion-pilot.ts +151 -0
  151. package/src/native-motion.ts +188 -0
  152. package/src/web-motion/chip-ripple.ts +31 -0
  153. package/src/web-motion/choice-ripple.ts +30 -0
  154. package/src/web-motion/content.ts +74 -0
  155. package/src/web-motion/data-rows.ts +106 -0
  156. package/src/web-motion/fields.ts +52 -0
  157. package/src/web-motion/navigation.ts +62 -0
  158. package/src/web-motion/notifications.ts +67 -0
  159. package/src/web-motion/select-ripple.ts +23 -0
  160. package/src/web-motion/statistic.ts +23 -0
  161. package/src/web-motion/surfaces.ts +137 -0
  162. package/src/web-motion/tree.ts +44 -0
  163. package/styles/component-motion.css +39 -0
  164. package/styles/data-motion.css +4 -0
  165. package/styles/motion-optional.css +15 -0
  166. package/styles/motion-presets.css +92 -0
  167. package/styles/motion-tokens.css +6 -0
  168. package/styles/motion.css +125 -0
  169. package/styles/skeleton.css +8 -0
  170. package/test/component-motion-settings.test.mjs +35 -0
  171. package/test/content-overlay-motion.test.mjs +36 -0
  172. package/test/isolation.test.mjs +1 -1
  173. package/test/motion.test.mjs +215 -0
  174. package/dist/chunk-GXHANADL.js +0 -1
  175. /package/dist/{chunk-3PNBQVYS.js → chunk-2BSBXDOT.js} +0 -0
  176. /package/dist/{chunk-H7ETPJVW.js → chunk-3PODK22R.js} +0 -0
  177. /package/dist/{chunk-SIU7DSOA.js → chunk-KBWB4OIF.js} +0 -0
  178. /package/dist/{chunk-OPMD7QNV.js → chunk-W3H7XTA7.js} +0 -0
  179. /package/dist/{chunk-XWXEH3SW.js → chunk-XVMJG26X.js} +0 -0
@@ -0,0 +1,1076 @@
1
+ /* styles/motion-presets.css */
2
+ .blu-motion-enter-fade,
3
+ .blu-motion-fade-in {
4
+ animation: blu-motion-enter-fade var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
5
+ }
6
+ @keyframes blu-motion-enter-fade {
7
+ 0% {
8
+ opacity: 0;
9
+ }
10
+ 100% {
11
+ opacity: 1;
12
+ }
13
+ }
14
+ .blu-motion-exit-fade,
15
+ .blu-motion-fade-out {
16
+ animation: blu-motion-exit-fade var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
17
+ }
18
+ @keyframes blu-motion-exit-fade {
19
+ 0% {
20
+ opacity: 1;
21
+ }
22
+ 100% {
23
+ opacity: 0;
24
+ }
25
+ }
26
+ .blu-motion-enter-slide-up,
27
+ .blu-motion-slide-up {
28
+ animation: blu-motion-enter-slide-up var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
29
+ }
30
+ @keyframes blu-motion-enter-slide-up {
31
+ 0% {
32
+ opacity: 0;
33
+ transform: translateY(var(--blu-motion-distance));
34
+ }
35
+ 100% {
36
+ opacity: 1;
37
+ transform: none;
38
+ }
39
+ }
40
+ .blu-motion-exit-slide-up {
41
+ animation: blu-motion-exit-slide-up var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
42
+ }
43
+ @keyframes blu-motion-exit-slide-up {
44
+ 0% {
45
+ opacity: 1;
46
+ transform: none;
47
+ }
48
+ 100% {
49
+ opacity: 0;
50
+ transform: translateY(calc(-1 * var(--blu-motion-distance)));
51
+ }
52
+ }
53
+ .blu-motion-enter-slide-down {
54
+ animation: blu-motion-enter-slide-down var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
55
+ }
56
+ @keyframes blu-motion-enter-slide-down {
57
+ 0% {
58
+ opacity: 0;
59
+ transform: translateY(calc(-1 * var(--blu-motion-distance)));
60
+ }
61
+ 100% {
62
+ opacity: 1;
63
+ transform: none;
64
+ }
65
+ }
66
+ .blu-motion-exit-slide-down {
67
+ animation: blu-motion-exit-slide-down var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
68
+ }
69
+ @keyframes blu-motion-exit-slide-down {
70
+ 0% {
71
+ opacity: 1;
72
+ transform: none;
73
+ }
74
+ 100% {
75
+ opacity: 0;
76
+ transform: translateY(var(--blu-motion-distance));
77
+ }
78
+ }
79
+ .blu-motion-enter-slide-left {
80
+ animation: blu-motion-enter-slide-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
81
+ }
82
+ @keyframes blu-motion-enter-slide-left {
83
+ 0% {
84
+ opacity: 0;
85
+ transform: translateX(var(--blu-motion-distance));
86
+ }
87
+ 100% {
88
+ opacity: 1;
89
+ transform: none;
90
+ }
91
+ }
92
+ .blu-motion-exit-slide-left {
93
+ animation: blu-motion-exit-slide-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
94
+ }
95
+ @keyframes blu-motion-exit-slide-left {
96
+ 0% {
97
+ opacity: 1;
98
+ transform: none;
99
+ }
100
+ 100% {
101
+ opacity: 0;
102
+ transform: translateX(calc(-1 * var(--blu-motion-distance)));
103
+ }
104
+ }
105
+ .blu-motion-enter-slide-right {
106
+ animation: blu-motion-enter-slide-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
107
+ }
108
+ @keyframes blu-motion-enter-slide-right {
109
+ 0% {
110
+ opacity: 0;
111
+ transform: translateX(calc(-1 * var(--blu-motion-distance)));
112
+ }
113
+ 100% {
114
+ opacity: 1;
115
+ transform: none;
116
+ }
117
+ }
118
+ .blu-motion-exit-slide-right {
119
+ animation: blu-motion-exit-slide-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
120
+ }
121
+ @keyframes blu-motion-exit-slide-right {
122
+ 0% {
123
+ opacity: 1;
124
+ transform: none;
125
+ }
126
+ 100% {
127
+ opacity: 0;
128
+ transform: translateX(var(--blu-motion-distance));
129
+ }
130
+ }
131
+ .blu-motion-enter-zoom-in,
132
+ .blu-motion-scale-in {
133
+ animation: blu-motion-enter-zoom-in var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
134
+ }
135
+ @keyframes blu-motion-enter-zoom-in {
136
+ 0% {
137
+ opacity: 0;
138
+ transform: scale(.92);
139
+ }
140
+ 100% {
141
+ opacity: 1;
142
+ transform: none;
143
+ }
144
+ }
145
+ .blu-motion-exit-zoom-in {
146
+ animation: blu-motion-exit-zoom-in var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
147
+ }
148
+ @keyframes blu-motion-exit-zoom-in {
149
+ 0% {
150
+ opacity: 1;
151
+ transform: none;
152
+ }
153
+ 100% {
154
+ opacity: 0;
155
+ transform: scale(1.08);
156
+ }
157
+ }
158
+ .blu-motion-enter-zoom-out {
159
+ animation: blu-motion-enter-zoom-out var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
160
+ }
161
+ @keyframes blu-motion-enter-zoom-out {
162
+ 0% {
163
+ opacity: 0;
164
+ transform: scale(1.08);
165
+ }
166
+ 100% {
167
+ opacity: 1;
168
+ transform: none;
169
+ }
170
+ }
171
+ .blu-motion-exit-zoom-out {
172
+ animation: blu-motion-exit-zoom-out var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
173
+ }
174
+ @keyframes blu-motion-exit-zoom-out {
175
+ 0% {
176
+ opacity: 1;
177
+ transform: none;
178
+ }
179
+ 100% {
180
+ opacity: 0;
181
+ transform: scale(.92);
182
+ }
183
+ }
184
+ .blu-motion-enter-rotate-left {
185
+ animation: blu-motion-enter-rotate-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
186
+ }
187
+ @keyframes blu-motion-enter-rotate-left {
188
+ 0% {
189
+ opacity: 0;
190
+ transform: rotate(8deg) scale(.97);
191
+ }
192
+ 100% {
193
+ opacity: 1;
194
+ transform: none;
195
+ }
196
+ }
197
+ .blu-motion-exit-rotate-left {
198
+ animation: blu-motion-exit-rotate-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
199
+ }
200
+ @keyframes blu-motion-exit-rotate-left {
201
+ 0% {
202
+ opacity: 1;
203
+ transform: none;
204
+ }
205
+ 100% {
206
+ opacity: 0;
207
+ transform: rotate(-8deg) scale(.97);
208
+ }
209
+ }
210
+ .blu-motion-enter-rotate-right {
211
+ animation: blu-motion-enter-rotate-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
212
+ }
213
+ @keyframes blu-motion-enter-rotate-right {
214
+ 0% {
215
+ opacity: 0;
216
+ transform: rotate(-8deg) scale(.97);
217
+ }
218
+ 100% {
219
+ opacity: 1;
220
+ transform: none;
221
+ }
222
+ }
223
+ .blu-motion-exit-rotate-right {
224
+ animation: blu-motion-exit-rotate-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
225
+ }
226
+ @keyframes blu-motion-exit-rotate-right {
227
+ 0% {
228
+ opacity: 1;
229
+ transform: none;
230
+ }
231
+ 100% {
232
+ opacity: 0;
233
+ transform: rotate(8deg) scale(.97);
234
+ }
235
+ }
236
+ .blu-motion-enter-flip-x {
237
+ animation: blu-motion-enter-flip-x var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
238
+ }
239
+ @keyframes blu-motion-enter-flip-x {
240
+ 0% {
241
+ opacity: 0;
242
+ transform: perspective(600px) rotateX(30deg);
243
+ }
244
+ 100% {
245
+ opacity: 1;
246
+ transform: none;
247
+ }
248
+ }
249
+ .blu-motion-exit-flip-x {
250
+ animation: blu-motion-exit-flip-x var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
251
+ }
252
+ @keyframes blu-motion-exit-flip-x {
253
+ 0% {
254
+ opacity: 1;
255
+ transform: none;
256
+ }
257
+ 100% {
258
+ opacity: 0;
259
+ transform: perspective(600px) rotateX(-30deg);
260
+ }
261
+ }
262
+ .blu-motion-enter-flip-y {
263
+ animation: blu-motion-enter-flip-y var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
264
+ }
265
+ @keyframes blu-motion-enter-flip-y {
266
+ 0% {
267
+ opacity: 0;
268
+ transform: perspective(600px) rotateY(30deg);
269
+ }
270
+ 100% {
271
+ opacity: 1;
272
+ transform: none;
273
+ }
274
+ }
275
+ .blu-motion-exit-flip-y {
276
+ animation: blu-motion-exit-flip-y var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
277
+ }
278
+ @keyframes blu-motion-exit-flip-y {
279
+ 0% {
280
+ opacity: 1;
281
+ transform: none;
282
+ }
283
+ 100% {
284
+ opacity: 0;
285
+ transform: perspective(600px) rotateY(-30deg);
286
+ }
287
+ }
288
+ .blu-motion-enter-pop {
289
+ animation: blu-motion-enter-pop var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
290
+ }
291
+ @keyframes blu-motion-enter-pop {
292
+ 0% {
293
+ opacity: 0;
294
+ transform: scale(.9);
295
+ }
296
+ 72% {
297
+ opacity: 1;
298
+ transform: scale(1.025);
299
+ }
300
+ 100% {
301
+ opacity: 1;
302
+ transform: scale(1);
303
+ }
304
+ }
305
+ .blu-motion-exit-pop {
306
+ animation: blu-motion-exit-pop var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
307
+ }
308
+ @keyframes blu-motion-exit-pop {
309
+ 0% {
310
+ opacity: 1;
311
+ transform: scale(1);
312
+ }
313
+ 25% {
314
+ opacity: 1;
315
+ transform: scale(1.025);
316
+ }
317
+ 100% {
318
+ opacity: 0;
319
+ transform: scale(.9);
320
+ }
321
+ }
322
+ .blu-motion-enter-bounce {
323
+ animation: blu-motion-enter-bounce var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
324
+ }
325
+ @keyframes blu-motion-enter-bounce {
326
+ 0% {
327
+ opacity: 0;
328
+ transform: translateY(var(--blu-motion-distance));
329
+ }
330
+ 72% {
331
+ opacity: 1;
332
+ transform: translateY(-3px);
333
+ }
334
+ 100% {
335
+ opacity: 1;
336
+ transform: translateY(0);
337
+ }
338
+ }
339
+ .blu-motion-exit-bounce {
340
+ animation: blu-motion-exit-bounce var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
341
+ }
342
+ @keyframes blu-motion-exit-bounce {
343
+ 0% {
344
+ opacity: 1;
345
+ transform: translateY(0);
346
+ }
347
+ 25% {
348
+ opacity: 1;
349
+ transform: translateY(-3px);
350
+ }
351
+ 100% {
352
+ opacity: 0;
353
+ transform: translateY(var(--blu-motion-distance));
354
+ }
355
+ }
356
+ .blu-motion-enter-wipe-up {
357
+ animation: blu-motion-enter-wipe-up var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
358
+ }
359
+ @keyframes blu-motion-enter-wipe-up {
360
+ 0% {
361
+ opacity: 0;
362
+ clip-path: inset(100% 0 0 0);
363
+ }
364
+ 100% {
365
+ opacity: 1;
366
+ clip-path: inset(0 0 0 0);
367
+ }
368
+ }
369
+ .blu-motion-exit-wipe-up {
370
+ animation: blu-motion-exit-wipe-up var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
371
+ }
372
+ @keyframes blu-motion-exit-wipe-up {
373
+ 0% {
374
+ opacity: 1;
375
+ clip-path: inset(0 0 0 0);
376
+ }
377
+ 100% {
378
+ opacity: 0;
379
+ clip-path: inset(0 0 100% 0);
380
+ }
381
+ }
382
+ .blu-motion-enter-wipe-down {
383
+ animation: blu-motion-enter-wipe-down var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
384
+ }
385
+ @keyframes blu-motion-enter-wipe-down {
386
+ 0% {
387
+ opacity: 0;
388
+ clip-path: inset(0 0 100% 0);
389
+ }
390
+ 100% {
391
+ opacity: 1;
392
+ clip-path: inset(0 0 0 0);
393
+ }
394
+ }
395
+ .blu-motion-exit-wipe-down {
396
+ animation: blu-motion-exit-wipe-down var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
397
+ }
398
+ @keyframes blu-motion-exit-wipe-down {
399
+ 0% {
400
+ opacity: 1;
401
+ clip-path: inset(0 0 0 0);
402
+ }
403
+ 100% {
404
+ opacity: 0;
405
+ clip-path: inset(100% 0 0 0);
406
+ }
407
+ }
408
+ .blu-motion-enter-wipe-left {
409
+ animation: blu-motion-enter-wipe-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
410
+ }
411
+ @keyframes blu-motion-enter-wipe-left {
412
+ 0% {
413
+ opacity: 0;
414
+ clip-path: inset(0 0 0 100%);
415
+ }
416
+ 100% {
417
+ opacity: 1;
418
+ clip-path: inset(0 0 0 0);
419
+ }
420
+ }
421
+ .blu-motion-exit-wipe-left {
422
+ animation: blu-motion-exit-wipe-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
423
+ }
424
+ @keyframes blu-motion-exit-wipe-left {
425
+ 0% {
426
+ opacity: 1;
427
+ clip-path: inset(0 0 0 0);
428
+ }
429
+ 100% {
430
+ opacity: 0;
431
+ clip-path: inset(0 100% 0 0);
432
+ }
433
+ }
434
+ .blu-motion-enter-wipe-right {
435
+ animation: blu-motion-enter-wipe-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
436
+ }
437
+ @keyframes blu-motion-enter-wipe-right {
438
+ 0% {
439
+ opacity: 0;
440
+ clip-path: inset(0 100% 0 0);
441
+ }
442
+ 100% {
443
+ opacity: 1;
444
+ clip-path: inset(0 0 0 0);
445
+ }
446
+ }
447
+ .blu-motion-exit-wipe-right {
448
+ animation: blu-motion-exit-wipe-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
449
+ }
450
+ @keyframes blu-motion-exit-wipe-right {
451
+ 0% {
452
+ opacity: 1;
453
+ clip-path: inset(0 0 0 0);
454
+ }
455
+ 100% {
456
+ opacity: 0;
457
+ clip-path: inset(0 0 0 100%);
458
+ }
459
+ }
460
+ .blu-motion-enter-circle-reveal {
461
+ animation: blu-motion-enter-circle-reveal var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
462
+ }
463
+ @keyframes blu-motion-enter-circle-reveal {
464
+ 0% {
465
+ opacity: 0;
466
+ clip-path: circle(0% at 50% 50%);
467
+ }
468
+ 100% {
469
+ opacity: 1;
470
+ clip-path: circle(72% at 50% 50%);
471
+ }
472
+ }
473
+ .blu-motion-exit-circle-reveal {
474
+ animation: blu-motion-exit-circle-reveal var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
475
+ }
476
+ @keyframes blu-motion-exit-circle-reveal {
477
+ 0% {
478
+ opacity: 1;
479
+ clip-path: circle(72% at 50% 50%);
480
+ }
481
+ 100% {
482
+ opacity: 0;
483
+ clip-path: circle(0% at 50% 50%);
484
+ }
485
+ }
486
+ .blu-motion-enter-blur-clear {
487
+ animation: blu-motion-enter-blur-clear var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
488
+ }
489
+ @keyframes blu-motion-enter-blur-clear {
490
+ 0% {
491
+ opacity: 0;
492
+ filter: blur(6px);
493
+ }
494
+ 100% {
495
+ opacity: 1;
496
+ filter: blur(0px);
497
+ }
498
+ }
499
+ .blu-motion-exit-blur-clear {
500
+ animation: blu-motion-exit-blur-clear var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
501
+ }
502
+ @keyframes blu-motion-exit-blur-clear {
503
+ 0% {
504
+ opacity: 1;
505
+ filter: blur(0px);
506
+ }
507
+ 100% {
508
+ opacity: 0;
509
+ filter: blur(6px);
510
+ }
511
+ }
512
+ .blu-motion-ease-standard {
513
+ --blu-motion-ease: cubic-bezier(.2,.8,.2,1);
514
+ }
515
+ .blu-motion-ease-in {
516
+ --blu-motion-ease: cubic-bezier(.42,0,1,1);
517
+ }
518
+ .blu-motion-ease-out {
519
+ --blu-motion-ease: cubic-bezier(0,0,.58,1);
520
+ }
521
+ .blu-motion-ease-in-out {
522
+ --blu-motion-ease: cubic-bezier(.42,0,.58,1);
523
+ }
524
+ .blu-motion-ease-linear {
525
+ --blu-motion-ease: linear;
526
+ }
527
+ .blu-motion-ease-spring {
528
+ --blu-motion-ease: cubic-bezier(.34,1.25,.64,1);
529
+ }
530
+ .blu-motion-origin-center {
531
+ transform-origin: 50% 50%;
532
+ }
533
+ .blu-motion-origin-top {
534
+ transform-origin: 50% 0%;
535
+ }
536
+ .blu-motion-origin-bottom {
537
+ transform-origin: 50% 100%;
538
+ }
539
+ .blu-motion-origin-left {
540
+ transform-origin: 0% 50%;
541
+ }
542
+ .blu-motion-origin-right {
543
+ transform-origin: 100% 50%;
544
+ }
545
+ .blu-motion-origin-top-left {
546
+ transform-origin: 0% 0%;
547
+ }
548
+ .blu-motion-origin-top-right {
549
+ transform-origin: 100% 0%;
550
+ }
551
+ .blu-motion-origin-bottom-left {
552
+ transform-origin: 0% 100%;
553
+ }
554
+ .blu-motion-origin-bottom-right {
555
+ transform-origin: 100% 100%;
556
+ }
557
+
558
+ /* styles/motion-tokens.css */
559
+ :root {
560
+ --blu-motion-fast: 280ms;
561
+ --blu-motion-normal: 450ms;
562
+ --blu-motion-slow: 750ms;
563
+ }
564
+
565
+ /* styles/motion-optional.css */
566
+ .blu-motion-ripple,
567
+ .blu-motion-shimmer {
568
+ position: absolute;
569
+ inset: 0;
570
+ overflow: hidden;
571
+ border-radius: inherit;
572
+ pointer-events: none !important;
573
+ }
574
+ .blu-motion-ripple__wave {
575
+ position: absolute;
576
+ border-radius: 50%;
577
+ background: var(--blu-ripple-color,currentColor);
578
+ pointer-events: none !important;
579
+ opacity: 0;
580
+ }
581
+ .blu-motion-choice-ripple {
582
+ inset: -10px;
583
+ border-radius: 999px;
584
+ --blu-ripple-color:var(--bluui-primary,#4f46e5);
585
+ }
586
+ .blu-motion-shimmer__beam {
587
+ position: absolute;
588
+ inset: 0;
589
+ background:
590
+ linear-gradient(
591
+ 100deg,
592
+ transparent 20%,
593
+ var(--blu-shimmer-color,#ffffffb8) 50%,
594
+ transparent 80%);
595
+ animation: blu-motion-shimmer var(--blu-shimmer-duration,1800ms) ease-in-out infinite;
596
+ }
597
+ @keyframes blu-motion-shimmer {
598
+ from {
599
+ transform: translateX(-100%);
600
+ }
601
+ to {
602
+ transform: translateX(100%);
603
+ }
604
+ }
605
+ .blu-motion-shimmer[data-paused=true] .blu-motion-shimmer__beam {
606
+ animation-play-state: paused;
607
+ }
608
+ .blu-motion-icon {
609
+ display: block;
610
+ width: 24px;
611
+ height: 24px;
612
+ overflow: visible;
613
+ fill: none;
614
+ stroke: currentColor;
615
+ stroke-width: 1.8;
616
+ stroke-linecap: round;
617
+ stroke-linejoin: round;
618
+ pointer-events: none;
619
+ }
620
+ .blu-motion-emphasis {
621
+ position: absolute;
622
+ pointer-events: none !important;
623
+ color: var(--blu-emphasis-color,currentColor);
624
+ }
625
+ .blu-motion-emphasis--underline {
626
+ inset: auto 0 0;
627
+ height: 2px;
628
+ background: currentColor;
629
+ transform-origin: left center;
630
+ border-radius: 2px;
631
+ }
632
+ .blu-motion-emphasis--border {
633
+ inset: 0;
634
+ border-radius: inherit;
635
+ }
636
+ .blu-motion-emphasis--border svg {
637
+ display: block;
638
+ width: 100%;
639
+ height: 100%;
640
+ fill: none;
641
+ stroke: currentColor;
642
+ stroke-width: 2px;
643
+ }
644
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) :is(.blu-motion-shimmer__beam, .blu-motion-ripple__wave) {
645
+ display: none;
646
+ animation: none !important;
647
+ }
648
+ @media (prefers-reduced-motion: reduce) {
649
+ .blu-motion-shimmer__beam,
650
+ .blu-motion-ripple__wave {
651
+ display: none;
652
+ animation: none !important;
653
+ }
654
+ }
655
+ @media (forced-colors: active) {
656
+ .blu-motion-shimmer__beam,
657
+ .blu-motion-ripple__wave {
658
+ display: none;
659
+ }
660
+ .blu-motion-emphasis {
661
+ color: Highlight;
662
+ }
663
+ }
664
+
665
+ /* styles/motion.css */
666
+ :root {
667
+ --blu-motion-duration: var(--blu-motion-normal);
668
+ --blu-motion-delay: 0ms;
669
+ --blu-motion-distance: 12px;
670
+ --blu-motion-ease: cubic-bezier(.2, .8, .2, 1);
671
+ }
672
+ .blu-motion-fast {
673
+ --blu-motion-duration: var(--blu-motion-fast);
674
+ }
675
+ .blu-motion-slow {
676
+ --blu-motion-duration: var(--blu-motion-slow);
677
+ }
678
+ .blu-motion-delay-1 {
679
+ --blu-motion-delay: 60ms;
680
+ }
681
+ .blu-motion-delay-2 {
682
+ --blu-motion-delay: 120ms;
683
+ }
684
+ .blu-motion-delay-3 {
685
+ --blu-motion-delay: 180ms;
686
+ }
687
+ .blu-motion-spin {
688
+ animation: blu-motion-spin 800ms linear infinite;
689
+ }
690
+ .blu-motion-pulse {
691
+ animation: blu-motion-pulse 900ms ease-in-out 3;
692
+ }
693
+ .blu-motion-hover-lift {
694
+ transition: transform var(--blu-motion-duration) var(--blu-motion-ease), box-shadow var(--blu-motion-duration) var(--blu-motion-ease);
695
+ }
696
+ @media (hover: hover) {
697
+ .blu-motion-hover-lift:hover {
698
+ transform: translateY(calc(-1 * var(--blu-motion-lift-distance, 4px)));
699
+ box-shadow: 0 8px 20px #28334b12;
700
+ }
701
+ }
702
+ .blu-motion-hover-lift:is(:focus-visible, [data-blu-lifted=true]) {
703
+ transform: translateY(calc(-1 * var(--blu-motion-lift-distance, 4px)));
704
+ box-shadow: 0 8px 20px #28334b12;
705
+ }
706
+ .blu-motion-expand {
707
+ display: grid;
708
+ grid-template-rows: 0fr;
709
+ transition: grid-template-rows var(--blu-motion-duration) var(--blu-motion-ease);
710
+ }
711
+ .blu-motion-expand[data-open=true] {
712
+ grid-template-rows: 1fr;
713
+ }
714
+ .blu-motion-expand > * {
715
+ min-height: 0;
716
+ overflow: hidden;
717
+ }
718
+ @keyframes blu-motion-spin {
719
+ to {
720
+ transform: rotate(360deg);
721
+ }
722
+ }
723
+ @keyframes blu-motion-pulse {
724
+ 50% {
725
+ opacity: .45;
726
+ }
727
+ }
728
+ .blu-motion-button.blu-button {
729
+ display: inline-grid;
730
+ gap: 0;
731
+ transition-duration: var(--blu-motion-duration);
732
+ }
733
+ .blu-motion-button__face,
734
+ .blu-motion-button__reserve {
735
+ grid-area: 1 / 1;
736
+ padding-inline: 24px;
737
+ }
738
+ .blu-motion-button__face {
739
+ position: relative;
740
+ display: inline-flex;
741
+ align-items: center;
742
+ justify-content: center;
743
+ }
744
+ .blu-motion-button__reserve {
745
+ visibility: hidden;
746
+ pointer-events: none;
747
+ }
748
+ .blu-motion-button .blu-button__spinner {
749
+ position: absolute;
750
+ inset-inline-start: 0;
751
+ }
752
+ .blu-motion-button[data-spinner-position=Trailing] .blu-button__spinner {
753
+ inset-inline-start: auto;
754
+ inset-inline-end: 0;
755
+ }
756
+ .blu-motion-button .blu-button__spinner[hidden] {
757
+ display: none;
758
+ }
759
+ .blu-motion-button.blu-button--loading {
760
+ pointer-events: auto;
761
+ }
762
+ .blu-motion-sr-only {
763
+ position: absolute;
764
+ width: 1px;
765
+ height: 1px;
766
+ padding: 0;
767
+ overflow: hidden;
768
+ clip-path: inset(50%);
769
+ white-space: nowrap;
770
+ border: 0;
771
+ }
772
+ .blu-loading {
773
+ display: flex;
774
+ align-items: center;
775
+ gap: 10px;
776
+ font: inherit;
777
+ color: inherit;
778
+ }
779
+ .blu-loading [hidden] {
780
+ display: none !important;
781
+ }
782
+ .blu-loading__visual {
783
+ width: 20px;
784
+ height: 20px;
785
+ flex-shrink: 0;
786
+ }
787
+ .blu-loading[data-variant=Spinner] .blu-loading__visual {
788
+ border: 2px solid currentColor;
789
+ border-right-color: transparent;
790
+ border-radius: 50%;
791
+ animation: blu-motion-spin 800ms linear infinite;
792
+ }
793
+ .blu-loading[data-variant=Spinner] i {
794
+ display: none;
795
+ }
796
+ .blu-loading[data-variant=Dots] .blu-loading__visual {
797
+ display: flex;
798
+ align-items: center;
799
+ width: 32px;
800
+ gap: 3px;
801
+ }
802
+ .blu-loading[data-variant=Dots] i {
803
+ width: 7px;
804
+ height: 7px;
805
+ background: currentColor;
806
+ border-radius: 50%;
807
+ animation: blu-motion-pulse 900ms ease-in-out infinite;
808
+ }
809
+ .blu-loading[data-variant=Dots] i:nth-child(2) {
810
+ animation-delay: 150ms;
811
+ }
812
+ .blu-loading[data-variant=Dots] i:nth-child(3) {
813
+ animation-delay: 300ms;
814
+ }
815
+ .blu-loading progress {
816
+ width: 100%;
817
+ height: 8px;
818
+ accent-color: var(--bluui-primary, #5145e5);
819
+ border: 0;
820
+ border-radius: 8px;
821
+ background: #e7e8f1;
822
+ overflow: hidden;
823
+ }
824
+ .blu-loading progress::-webkit-progress-bar {
825
+ background: #e7e8f1;
826
+ border-radius: 8px;
827
+ }
828
+ .blu-loading progress::-webkit-progress-value {
829
+ background: var(--bluui-primary, #5145e5);
830
+ border-radius: 8px;
831
+ }
832
+ .blu-loading progress::-moz-progress-bar {
833
+ background: var(--bluui-primary, #5145e5);
834
+ }
835
+ .blu-loading[data-variant=Bar] {
836
+ flex-direction: column;
837
+ align-items: stretch;
838
+ }
839
+ .blu-loading__bar {
840
+ height: 8px;
841
+ overflow: hidden;
842
+ border-radius: 8px;
843
+ background: #e7e8f1;
844
+ }
845
+ .blu-loading__bar::after {
846
+ content: "";
847
+ display: block;
848
+ width: 35%;
849
+ height: 100%;
850
+ background: var(--bluui-primary, #5145e5);
851
+ border-radius: inherit;
852
+ animation: blu-motion-progress 1.2s ease-in-out infinite alternate;
853
+ }
854
+ @keyframes blu-motion-progress {
855
+ to {
856
+ transform: translateX(185%);
857
+ }
858
+ }
859
+ :is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off),
860
+ :is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) * {
861
+ --blu-motion-duration: 0ms;
862
+ --blu-motion-delay: 0ms;
863
+ }
864
+ :is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) :is([class*=blu-motion-], .blu-button__spinner, .blu-loading__visual, .blu-loading i),
865
+ :is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off)[class*=blu-motion-],
866
+ .blu-motion-off {
867
+ animation: none !important;
868
+ transition: none !important;
869
+ }
870
+ :is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) .blu-loading__bar::after {
871
+ animation: none !important;
872
+ }
873
+ :is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) .blu-motion-hover-lift:is(:hover, :focus-visible, [data-blu-lifted=true]) {
874
+ transform: none;
875
+ }
876
+ @media (prefers-reduced-motion: reduce) {
877
+ [class*=blu-motion-],
878
+ .blu-button__spinner,
879
+ .blu-loading__visual,
880
+ .blu-loading i,
881
+ .blu-loading__bar::after {
882
+ animation: none !important;
883
+ transition: none !important;
884
+ }
885
+ .blu-motion-hover-lift:is(:hover, :focus-visible, [data-blu-lifted=true]) {
886
+ transform: none;
887
+ }
888
+ }
889
+ .blu-motion-press[data-blu-pressed=true] {
890
+ transform: scale(.97);
891
+ }
892
+ .blu-motion-highlight {
893
+ animation: blu-motion-highlight 1400ms ease-in-out 1;
894
+ }
895
+ .blu-motion-nudge {
896
+ animation: blu-motion-nudge 280ms var(--blu-motion-ease) 1;
897
+ }
898
+ @keyframes blu-motion-highlight {
899
+ 45% {
900
+ box-shadow: 0 0 0 4px var(--blu-motion-highlight, #7770ed40);
901
+ }
902
+ }
903
+ @keyframes blu-motion-nudge {
904
+ 25% {
905
+ transform: translateX(-3px);
906
+ }
907
+ 60% {
908
+ transform: translateX(3px);
909
+ }
910
+ }
911
+ :is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) .blu-motion-press[data-blu-pressed=true],
912
+ .blu-motion-press.blu-motion-off[data-blu-pressed=true] {
913
+ transform: none;
914
+ }
915
+ @media (prefers-reduced-motion: reduce) {
916
+ .blu-motion-press[data-blu-pressed=true] {
917
+ transform: none;
918
+ }
919
+ }
920
+ .blu-motion-photo-frame {
921
+ position: relative;
922
+ overflow: hidden;
923
+ isolation: isolate;
924
+ }
925
+ .blu-motion-photo-frame > img {
926
+ display: block;
927
+ width: 100%;
928
+ height: 100%;
929
+ object-fit: cover;
930
+ }
931
+ .blu-motion-border-glow {
932
+ position: absolute;
933
+ inset: -1px;
934
+ border-radius: inherit;
935
+ pointer-events: none !important;
936
+ z-index: 1;
937
+ filter: drop-shadow(0 0 4px var(--blu-glow-halo,#9b85ee80));
938
+ }
939
+ .blu-motion-border-glow__rim {
940
+ position: absolute;
941
+ inset: 0;
942
+ padding: var(--blu-glow-width,2px);
943
+ border-radius: inherit;
944
+ overflow: hidden;
945
+ pointer-events: none !important;
946
+ -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
947
+ -webkit-mask-composite: xor;
948
+ mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
949
+ mask-composite: exclude;
950
+ }
951
+ .blu-motion-border-glow__beam {
952
+ position: absolute;
953
+ left: 50%;
954
+ top: 50%;
955
+ width: var(--blu-glow-size,1800px);
956
+ height: var(--blu-glow-size,1800px);
957
+ background:
958
+ conic-gradient(
959
+ transparent 0deg,
960
+ transparent 240deg,
961
+ var(--blu-glow-tail,#b5a4ef60) 265deg,
962
+ var(--blu-glow-color,#8060dd) 295deg,
963
+ var(--blu-glow-tip,#d7c6ff) 315deg,
964
+ transparent 340deg);
965
+ transform: translate(-50%, -50%) rotate(0turn);
966
+ animation: blu-border-orbit var(--blu-glow-duration,12s) linear infinite;
967
+ }
968
+ .blu-motion-border-glow[data-paused=true] .blu-motion-border-glow__beam {
969
+ animation-play-state: paused;
970
+ }
971
+ @keyframes blu-border-orbit {
972
+ from {
973
+ transform: translate(-50%, -50%) rotate(0turn);
974
+ }
975
+ to {
976
+ transform: translate(-50%, -50%) rotate(1turn);
977
+ }
978
+ }
979
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) .blu-motion-border-glow {
980
+ filter: none;
981
+ }
982
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) .blu-motion-border-glow__rim {
983
+ background: var(--blu-glow-static,#b5a4ef80);
984
+ }
985
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) .blu-motion-border-glow__beam {
986
+ animation: none !important;
987
+ display: none;
988
+ }
989
+ @media (prefers-reduced-motion: reduce) {
990
+ .blu-motion-border-glow {
991
+ filter: none;
992
+ }
993
+ .blu-motion-border-glow__rim {
994
+ background: var(--blu-glow-static,#b5a4ef80);
995
+ }
996
+ .blu-motion-border-glow__beam {
997
+ animation: none !important;
998
+ display: none;
999
+ }
1000
+ }
1001
+ @media (forced-colors: active) {
1002
+ .blu-motion-border-glow {
1003
+ display: none;
1004
+ }
1005
+ }
1006
+ [data-blu-content-motion] .blu-profile-card {
1007
+ transition: translate var(--blu-component-motion-duration,450ms) var(--blu-component-motion-ease,ease-in-out);
1008
+ }
1009
+ [data-blu-content-motion] .blu-profile-card:is(:hover, :focus-within) {
1010
+ translate: 0 -4px;
1011
+ }
1012
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] .blu-profile-card,
1013
+ [data-blu-content-motion]:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) .blu-profile-card {
1014
+ translate: none;
1015
+ transition: none;
1016
+ }
1017
+ [data-blu-content-motion] :is(.blu-tree-select__check, .blu-video-player__heatmap) {
1018
+ transition-duration: var(--blu-component-motion-duration,450ms);
1019
+ transition-timing-function: var(--blu-component-motion-ease,ease-in-out);
1020
+ }
1021
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] :is(.blu-tree-select__check, .blu-video-player__heatmap) {
1022
+ transition: none;
1023
+ }
1024
+ @media (prefers-reduced-motion: reduce) {
1025
+ [data-blu-content-motion] .blu-profile-card {
1026
+ translate: none;
1027
+ transition: none;
1028
+ }
1029
+ }
1030
+ [data-blu-content-motion=chip] .blu-chip__select {
1031
+ border-radius: inherit;
1032
+ }
1033
+ [data-blu-content-motion=skeleton] .blu-skeleton--animated::after {
1034
+ animation-duration: 1800ms;
1035
+ animation-iteration-count: 2;
1036
+ }
1037
+ [data-blu-component-motion=statistic] .blu-statistic__loading {
1038
+ animation-duration: 1800ms;
1039
+ animation-iteration-count: 2;
1040
+ }
1041
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion=skeleton] .blu-skeleton--animated::after {
1042
+ animation: none !important;
1043
+ display: none;
1044
+ }
1045
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-component-motion=statistic] .blu-statistic__loading {
1046
+ animation: none !important;
1047
+ }
1048
+ @media (prefers-reduced-motion: reduce) {
1049
+ [data-blu-content-motion=skeleton] .blu-skeleton--animated::after {
1050
+ animation: none !important;
1051
+ display: none;
1052
+ }
1053
+ [data-blu-component-motion=statistic] .blu-statistic__loading {
1054
+ animation: none !important;
1055
+ }
1056
+ }
1057
+ [data-blu-content-motion=media-image] img {
1058
+ transition-duration: var(--blu-component-motion-duration,650ms);
1059
+ transition-timing-function: var(--blu-component-motion-ease,ease-in-out);
1060
+ }
1061
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion=media-image] img {
1062
+ transition: none !important;
1063
+ transform: none !important;
1064
+ }
1065
+ [data-blu-content-motion] .blu-button {
1066
+ transition-duration: var(--blu-component-motion-duration,280ms);
1067
+ }
1068
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] *,
1069
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] *::before,
1070
+ :is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] *::after,
1071
+ [data-blu-content-motion]:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) *,
1072
+ [data-blu-content-motion]:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) *::before,
1073
+ [data-blu-content-motion]:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) *::after {
1074
+ transition: none !important;
1075
+ animation: none !important;
1076
+ }