|
7 | 7 | } |
8 | 8 | } |
9 | 9 |
|
10 | | - @keyframes prixClipFix { |
| 10 | + @keyframes growingCircle { |
11 | 11 | 0% { |
12 | 12 | opacity: 0.5; |
13 | 13 | border-color: #fff; |
|
16 | 16 |
|
17 | 17 | 25% { |
18 | 18 | opacity: 0.75; |
19 | | - border-color: var(--kol-spin-color, #000); |
| 19 | + border-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000)); |
20 | 20 | clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0); |
21 | 21 | } |
22 | 22 |
|
23 | 23 | 50% { |
24 | 24 | opacity: 1; |
25 | | - border-color: var(--kol-spin-color, #000); |
| 25 | + border-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000)); |
26 | 26 | clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%); |
27 | 27 | } |
28 | 28 |
|
29 | 29 | 75% { |
30 | 30 | opacity: 1; |
31 | | - border-color: var(--kol-spin-color, #000); |
| 31 | + border-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000)); |
32 | 32 | clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%); |
33 | 33 | } |
34 | 34 |
|
35 | 35 | 100% { |
36 | 36 | opacity: 0.1; |
37 | | - border-color: var(--kol-spin-color, #000); |
| 37 | + border-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000)); |
38 | 38 | clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0); |
39 | 39 | } |
40 | 40 | } |
41 | 41 |
|
42 | | - /* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion#toning_down_the_animation_scaling */ |
43 | | - @media (prefers-reduced-motion) { |
44 | | - .kol-spin__loader { |
45 | | - animation-duration: 4s !important; |
46 | | - |
47 | | - &::before { |
48 | | - animation-duration: 6s !important; |
49 | | - } |
50 | | - } |
51 | | - } |
52 | 42 | .kol-spin { |
53 | | - &__spinner { |
54 | | - &--cycle { |
55 | | - width: to-rem(var(--kol-spin-size, 48)); |
56 | | - height: to-rem(var(--kol-spin-size, 48)); |
57 | | - } |
58 | | - } |
59 | | - |
60 | | - &__loader { |
61 | | - border-radius: 50%; |
62 | | - display: block; |
63 | | - position: relative; |
64 | | - width: 100%; |
65 | | - height: 100%; |
66 | | - animation: 2s linear infinite rotate; |
| 43 | + &__spinner--cycle { |
| 44 | + width: to-rem(var(--kol-spin-size, 48)); |
| 45 | + height: to-rem(var(--kol-spin-size, 48)); |
67 | 46 |
|
68 | | - &::before { |
| 47 | + &__element { |
69 | 48 | border-radius: 50%; |
70 | | - position: absolute; |
71 | | - inset: 0; |
| 49 | + display: block; |
| 50 | + position: relative; |
| 51 | + width: 100%; |
| 52 | + height: 100%; |
| 53 | + animation: 2s linear infinite rotate; |
| 54 | + |
| 55 | + @media (prefers-reduced-motion) { |
| 56 | + animation-duration: 4s !important; |
| 57 | + } |
| 58 | + |
| 59 | + &::before { |
| 60 | + border-radius: 50%; |
| 61 | + position: absolute; |
| 62 | + inset: 0; |
| 63 | + |
| 64 | + content: ''; |
| 65 | + animation: 3s linear infinite growingCircle; |
| 66 | + border: 5px solid var(--kol-spin-color, var(--kol-theme-spin-color, #333)); |
72 | 67 |
|
73 | | - content: ''; |
74 | | - animation: 3s linear infinite prixClipFix; |
75 | | - border: 5px solid var(--kol-spin-color, #333); |
| 68 | + @media (prefers-reduced-motion) { |
| 69 | + animation-duration: 6s !important; |
| 70 | + } |
| 71 | + } |
76 | 72 | } |
77 | 73 | } |
78 | 74 | } |
|
0 commit comments