@newlogic-digital/ui 3.0.4 → 3.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 (109) hide show
  1. package/README.md +6 -10
  2. package/gulpfile.js +17 -168
  3. package/package.json +13 -8
  4. package/src/emails/email.css +3 -3
  5. package/src/emails/email.twig +1 -1
  6. package/src/icons.svg +32 -0
  7. package/src/main.json +12 -10
  8. package/src/scripts/Components/+.js +2 -2
  9. package/src/scripts/Components/CookieConsent.js +66 -64
  10. package/src/scripts/Components/Form.js +28 -21
  11. package/src/scripts/Layout/+.js +2 -1
  12. package/src/scripts/Layout/Header.js +18 -0
  13. package/src/scripts/Layout/Main.js +49 -45
  14. package/src/scripts/Libraries/+.js +12 -10
  15. package/src/scripts/Libraries/Anchor.js +18 -43
  16. package/src/scripts/Libraries/CookieConsent.js +37 -58
  17. package/src/scripts/Libraries/Dialog.js +56 -55
  18. package/src/scripts/Libraries/Drawer.js +23 -23
  19. package/src/scripts/Libraries/NativeSlider.js +86 -86
  20. package/src/scripts/Libraries/ReCaptcha.js +20 -18
  21. package/src/scripts/Libraries/Ripple.js +16 -32
  22. package/src/scripts/Libraries/Stimulus.js +30 -34
  23. package/src/scripts/Libraries/Swup.js +47 -50
  24. package/src/scripts/Libraries/Tabs.js +12 -18
  25. package/src/scripts/Libraries/Tippy.js +118 -0
  26. package/src/scripts/Ui/+.js +5 -3
  27. package/src/scripts/Ui/Checkbox.js +19 -0
  28. package/src/scripts/Ui/Input.js +188 -161
  29. package/src/scripts/Ui/Radio.js +23 -0
  30. package/src/scripts/Ui/Select.js +64 -37
  31. package/src/scripts/Ui/Text.js +25 -0
  32. package/src/scripts/Utils/Functions/+.js +6 -6
  33. package/src/scripts/Utils/Functions/dataValue.js +28 -25
  34. package/src/scripts/Utils/Functions/importScript.js +9 -11
  35. package/src/scripts/Utils/Functions/importStyle.js +18 -5
  36. package/src/scripts/Utils/Functions/inView.js +19 -21
  37. package/src/scripts/Utils/Functions/loadStimulus.js +22 -20
  38. package/src/scripts/Utils/cdn.js +6 -4
  39. package/src/scripts/Utils/global.js +10 -33
  40. package/src/scripts/main.js +6 -6
  41. package/src/styles/Components/CookieConsent.css +40 -179
  42. package/src/styles/Components/Dialog/Default.css +12 -15
  43. package/src/styles/Components/Form/CookieConsent.css +7 -12
  44. package/src/styles/Layout/+.css +2 -0
  45. package/src/{templates/Sections/.gitkeep → styles/Layout/Header.css} +0 -0
  46. package/src/styles/Layout/Main.css +28 -63
  47. package/src/styles/Layout/Nav.css +43 -0
  48. package/src/styles/Libraries/+.css +1 -1
  49. package/src/styles/Libraries/Datepicker.css +85 -39
  50. package/src/styles/Libraries/Dialog.css +6 -5
  51. package/src/styles/Libraries/Drawer.css +15 -14
  52. package/src/styles/Libraries/Hint.css +29 -23
  53. package/src/styles/Libraries/Lazysizes.css +2 -1
  54. package/src/styles/Libraries/NativeSlider.css +18 -17
  55. package/src/styles/Libraries/Ripple.css +8 -5
  56. package/src/styles/Libraries/Tabs.css +4 -4
  57. package/src/styles/Libraries/Tippy.css +87 -0
  58. package/src/styles/Ui/+.css +5 -1
  59. package/src/styles/Ui/Badge.css +33 -19
  60. package/src/styles/Ui/Btn.css +80 -53
  61. package/src/styles/Ui/Checkbox.css +80 -41
  62. package/src/styles/Ui/Dropdown.css +5 -0
  63. package/src/styles/Ui/Heading.css +12 -12
  64. package/src/styles/Ui/Icon.css +27 -8
  65. package/src/styles/Ui/Image.css +23 -0
  66. package/src/styles/Ui/Input.css +295 -220
  67. package/src/styles/Ui/Label.css +14 -0
  68. package/src/styles/Ui/Link.css +3 -3
  69. package/src/styles/Ui/Notice.css +14 -16
  70. package/src/styles/Ui/Progress.css +10 -21
  71. package/src/styles/Ui/Radio.css +3 -8
  72. package/src/styles/Ui/Select.css +63 -112
  73. package/src/styles/Ui/Switch.css +70 -0
  74. package/src/styles/Ui/{Wsw.css → Text.css} +61 -80
  75. package/src/styles/Ui/Title.css +8 -4
  76. package/src/styles/Utils/default.css +75 -67
  77. package/src/styles/Utils/icons.css +9 -0
  78. package/src/styles/Utils/keyframes.css +182 -0
  79. package/src/styles/Utils/normalize.css +223 -0
  80. package/src/styles/Utils/print.css +1 -1
  81. package/src/styles/Utils/tailwind/base.css +15 -0
  82. package/src/styles/Utils/tailwind/gutters.css +264 -263
  83. package/src/styles/Utils/theme/main.css +24 -21
  84. package/src/styles/Utils/vars.css +58 -35
  85. package/src/styles/Utils/vendor.css +1 -2
  86. package/src/styles/main.css +6 -3
  87. package/src/styles/tailwind.css +1 -4
  88. package/src/templates/Components/CookieConsent.twig +30 -0
  89. package/src/templates/Components/Dialogs/Basic.twig +7 -3
  90. package/src/templates/Layout/Header.twig +42 -0
  91. package/src/templates/Layout/Main.twig +52 -67
  92. package/src/templates/Sections/Gdpr.twig +64 -0
  93. package/src/templates/Sections/Ui.twig +2104 -0
  94. package/src/templates/dialog-basic.twig +2 -2
  95. package/src/templates/gdpr.json +11 -0
  96. package/src/templates/index.json +8 -2
  97. package/src/templates/json-tippy.twig +16 -0
  98. package/src/templates/ui.json +11 -0
  99. package/CHANGELOG +0 -231
  100. package/src/icons/iconfont.css +0 -171
  101. package/src/icons/selection.json +0 -1
  102. package/src/icons/variables.css +0 -31
  103. package/src/scripts/Ui/Wsw.js +0 -25
  104. package/src/scripts/Utils/Functions/bodyLoaded.js +0 -12
  105. package/src/styles/Libraries/Animate.css +0 -184
  106. package/src/styles/Utils/reference.css +0 -2
  107. package/src/styles/Utils/tailwind/content.css +0 -24
  108. package/src/styles/Utils/theme/vars.css +0 -19
  109. package/src/styles/preload.css +0 -29
@@ -1,19 +1,18 @@
1
- .ui-wsw {
2
- --ui-wsw-size: 0.9375rem;
3
- --ui-wsw-weight: var(--font-normal);
4
- --ui-wsw-weight-bold: var(--font-semibold);
5
- --ui-wsw-marker-color: var(--color-primary);
6
- --ui-wsw-link-color: var(--color-primary);
7
- font-weight: var(--ui-wsw-weight);
8
- font-size: var(--ui-wsw-size);
9
- line-height: 1.75;
1
+ .ui-text {
2
+ --ui-text-size: 0.9375rem;
3
+ --ui-text-weight: var(--font-normal);
4
+ --ui-text-weight-bold: var(--font-semibold);
5
+
6
+ font-weight: var(--ui-text-weight);
7
+ font-size: var(--ui-text-size);
8
+ line-height: calc(var(--ui-text-size) + 0.75rem);
10
9
 
11
10
  & a {
12
11
  text-decoration: underline;
13
12
  transition: var(--transition-opacity);
14
13
 
15
14
  &:not([class*="text-"]) {
16
- color: rgb(var(--ui-wsw-link-color));
15
+ color: rgb(var(--color-accent));
17
16
 
18
17
  @nest .no-touch &[href]:hover {
19
18
  opacity: 0.8;
@@ -22,7 +21,7 @@
22
21
  }
23
22
 
24
23
  & b, & strong {
25
- font-weight: var(--ui-wsw-weight-bold);
24
+ font-weight: var(--ui-text-weight-bold);
26
25
  }
27
26
 
28
27
  & i, & em {
@@ -33,7 +32,7 @@
33
32
  & figure {
34
33
  margin: 1rem 0;
35
34
 
36
- @media (--media-min-768) {
35
+ @media (--media-t) {
37
36
  margin: 2rem 0;
38
37
  }
39
38
 
@@ -48,17 +47,17 @@
48
47
  max-width: 100%;
49
48
  height: auto !important;
50
49
 
51
- @media (--media-400) {
50
+ @media (--media-m) {
52
51
  display: block;
53
52
  float: none !important;
54
53
  }
55
54
 
56
- @media (--media-min-768) {
55
+ @media (--media-t) {
57
56
  &[style*="right"], &.float-right {
58
57
  margin: 0 0 2rem 4rem;
59
58
  }
60
59
 
61
- &[style="left"], &.float-left {
60
+ &[style*="left"], &.float-left {
62
61
  margin: 0 2rem 4rem 0;
63
62
  }
64
63
  }
@@ -72,50 +71,39 @@
72
71
  line-height: 1rem;
73
72
  }
74
73
 
75
- &:after {
74
+ &::after {
76
75
  content: "\00a0";
77
76
  }
78
77
  }
79
78
 
80
79
  & hr {
81
- margin: 1.125rem 0;
80
+ margin: 1.25rem 0;
82
81
  }
83
82
 
84
- & h1, & h2, & h3, & h4, & h5, & h6 {
85
- font-weight: var(--ui-wsw-weight-bold);
83
+ & :is(h1, h2, h3, h4, h5, h6) {
84
+ font-weight: var(--ui-text-weight-bold);
86
85
  font-family: var(--font-secondary);
87
- line-height: 1.15;
88
- margin: 0 0 1.125rem;
86
+ font-size: var(--ui-text-heading-size, 1rem);
87
+ line-height: calc(var(--ui-text-heading-size) + 0.5rem);
88
+ margin: 0 0 1.25rem;
89
89
  }
90
90
 
91
91
  & h1 {
92
- font-size: 2rem;
92
+ --ui-text-heading-size: 2.25rem;
93
93
  }
94
94
 
95
95
  & h2 {
96
- font-size: 1.5rem;
97
- }
98
-
99
- & h3 {
100
- font-size: 1.125rem;
101
- }
102
-
103
- & h4 {
104
- font-size: 1.125rem;
96
+ --ui-text-heading-size: 1.75rem;
105
97
  }
106
98
 
107
- & h5 {
108
- font-size: 1rem;
109
- }
110
-
111
- & h6 {
112
- font-size: 1rem;
99
+ & h3, & h4 {
100
+ --ui-text-heading-size: 1.25rem;
113
101
  }
114
102
 
115
103
  & table {
116
104
  border: 0;
117
105
 
118
- @media (--media-400) {
106
+ @media (--media-m) {
119
107
  min-width: 100%;
120
108
  }
121
109
 
@@ -125,14 +113,14 @@
125
113
  }
126
114
 
127
115
  & thead {
128
- font-weight: var(--ui-wsw-weight-bold);
129
- border-bottom: 1px solid rgb(var(--color-background-200));
116
+ font-weight: var(--ui-text-weight-bold);
117
+ border-bottom: 1px solid rgb(var(--color-current) / 0.075);
130
118
  }
131
119
 
132
120
  & tbody {
133
121
  & tr {
134
122
  &:nth-of-type(even) {
135
- background-color: rgb(var(--color-background-100));
123
+ background-color: rgb(var(--color-current) / 0.05);
136
124
  }
137
125
  }
138
126
  }
@@ -143,8 +131,8 @@
143
131
  }
144
132
 
145
133
  & blockquote {
146
- background-color: rgb(var(--color-background-100));
147
- border-left: 0.3125rem solid rgb(var(--color-background-200));
134
+ background-color: rgb(var(--color-current) / 0.075);
135
+ border-left: 0.3125rem solid rgb(var(--color-accent) / 1);
148
136
  padding: 1.25em 1.5em;
149
137
  margin: 0;
150
138
  font-size: inherit;
@@ -153,21 +141,34 @@
153
141
  & code {
154
142
  margin: 0;
155
143
  border-radius: var(--radius);
156
- padding: .25rem .5rem;
157
- font-size: .85em;
144
+ padding: 0.25rem 0.5rem;
145
+ font-size: 0.85em;
158
146
  color: #476582;
159
- font-family: source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace;
160
- background-color: rgba(27, 31, 35, .05);
147
+ font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace;
148
+ background-color: rgb(27 31 35 / 0.05);
161
149
 
162
150
  @nest .dark & {
163
151
  background-color: rgb(var(--color-background-100));
164
- color: #da1039;
152
+ color: rgb(var(--color-primary));
153
+ }
154
+ }
155
+
156
+ & ol {
157
+ margin: 0 0 1.5rem;
158
+ padding: 0 0 0 1rem;
159
+
160
+ & li {
161
+ padding-left: 0.5rem;
162
+
163
+ &::marker {
164
+ color: rgb(var(--color-accent));
165
+ }
165
166
  }
166
167
  }
167
168
 
168
169
  & ul {
169
170
  list-style-type: none !important;
170
- margin: 0;
171
+ margin: 0 0 1.5rem;
171
172
  padding: 0;
172
173
 
173
174
  & li {
@@ -179,30 +180,23 @@
179
180
  margin: 0 0 0.5rem;
180
181
  }
181
182
 
182
- &:before {
183
+ &::before {
183
184
  width: 0.25rem;
184
185
  height: 0.25rem;
185
186
  position: absolute;
186
187
  content: "";
187
- border: 1px solid rgb(var(--ui-wsw-marker-color));
188
- background-color: rgb(var(--ui-wsw-marker-color));
188
+ border: 1px solid rgb(var(--color-accent));
189
+ background-color: rgb(var(--color-accent));
189
190
  left: 0;
190
191
  top: 0.625rem;
191
192
  text-indent: 0;
192
- }
193
- }
194
-
195
- &, &[style*="disc"] {
196
- & li {
197
- &:before {
198
- border-radius: 50%;
199
- }
193
+ border-radius: 50%;
200
194
  }
201
195
  }
202
196
 
203
197
  &[style*="square"] {
204
198
  & li {
205
- &:before {
199
+ &::before {
206
200
  border-radius: 0;
207
201
  }
208
202
  }
@@ -210,7 +204,7 @@
210
204
 
211
205
  &[style*="circle"] {
212
206
  & li {
213
- &:before {
207
+ &::before {
214
208
  border-radius: 50%;
215
209
  background-color: transparent;
216
210
  }
@@ -218,33 +212,20 @@
218
212
  }
219
213
  }
220
214
 
221
- & ol {
222
- margin: 0;
223
- padding: 0 0 0 1rem;
224
-
225
- & li {
226
- padding-left: 0.5rem;
227
-
228
- &::marker {
229
- color: rgb(var(--ui-wsw-marker-color));
230
- }
231
- }
232
- }
233
-
234
- & .elm_wsw_table {
215
+ & .elm_text_table {
235
216
  display: block;
236
217
 
237
- @media (--media-400) {
218
+ @media (--media-m) {
238
219
  max-width: 100%;
239
220
  overflow: auto;
240
221
  }
241
222
  }
242
223
 
243
- & .elm_wsw_video {
224
+ & .elm_text_video {
244
225
  aspect-ratio: 16/9;
245
226
  position: relative;
246
227
 
247
- &:before {
228
+ &::before {
248
229
  content: "";
249
230
  display: block;
250
231
  }
@@ -256,4 +237,4 @@
256
237
  height: 100%;
257
238
  }
258
239
  }
259
- }
240
+ }
@@ -1,10 +1,14 @@
1
1
  .ui-title {
2
+ --ui-title-size: 0.875rem;
3
+ --ui-title-size-line: 0.5rem;
4
+ --ui-title-spacing: 0.05rem;
5
+
2
6
  display: block;
3
- line-height: 1.15;
4
- font-size: 0.875rem;
7
+ font-size: var(--ui-title-size);
8
+ line-height: calc(var(--ui-title-size) + var(--ui-title-size-line));
5
9
  font-weight: var(--font-semibold);
6
10
 
7
11
  &[class*="uppercase"] {
8
- letter-spacing: 0.05rem;
12
+ letter-spacing: var(--ui-title-spacing);
9
13
  }
10
- }
14
+ }
@@ -1,23 +1,47 @@
1
- @define-mixin iconfont {
2
- font-family: 'iconfont' !important;
3
- speak: none;
4
- font-style: normal;
5
- font-weight: normal;
6
- font-variant: normal;
7
- text-transform: none;
8
- line-height: 1;
9
- -webkit-font-smoothing: antialiased;
10
- -moz-osx-font-smoothing: grayscale;
1
+ ::selection {
2
+ color: rgb(var(--color-light));
3
+ background-color: rgb(var(--color-accent));
11
4
  }
12
5
 
13
- ::selection {
14
- color: rgb(var(--color-invert));
15
- background-color: rgb(var(--color-primary));
6
+ ul, ol {
7
+ padding: 0;
8
+ margin: 0;
9
+ }
10
+
11
+ ul {
12
+ list-style: none;
16
13
  }
17
14
 
18
- ::-ms-input-placeholder {
19
- color: rgba(var(--color-default),0.54) !important;
20
- opacity: initial !important;
15
+ blockquote,
16
+ dl,
17
+ dd,
18
+ h1,
19
+ h2,
20
+ h3,
21
+ h4,
22
+ h5,
23
+ h6,
24
+ hr,
25
+ figure,
26
+ p,
27
+ pre {
28
+ margin: 0;
29
+ }
30
+
31
+ img,
32
+ svg,
33
+ video,
34
+ canvas,
35
+ audio,
36
+ iframe,
37
+ embed,
38
+ object {
39
+ display: block;
40
+ vertical-align: middle;
41
+ }
42
+
43
+ a, area, button, input, label, select, summary, textarea, [tabindex] {
44
+ touch-action: manipulation;
21
45
  }
22
46
 
23
47
  hr {
@@ -26,8 +50,8 @@ hr {
26
50
  display: block;
27
51
  border: 0;
28
52
  color: inherit;
29
- border-top: 1px solid currentColor;
30
- opacity: 0.15;
53
+ border-top: 1px solid rgb(var(--color-current));
54
+ opacity: 0.2;
31
55
  margin: 1rem 0;
32
56
  padding: 0;
33
57
  }
@@ -56,77 +80,61 @@ textarea {
56
80
  resize: vertical;
57
81
  }
58
82
 
59
- * {
60
- box-sizing: border-box;
61
- outline: none;
62
- -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
63
- }
64
-
65
- h1, h2, h3, h4, h5, h6 {
66
- font-size: inherit;
67
- margin: 0;
68
- }
69
-
70
- ul {
71
- margin: 0;
72
- padding: 0;
73
- list-style: none;
74
- }
75
-
76
83
  table {
77
84
  border-collapse: collapse;
78
85
  border-spacing: 0;
79
86
  }
80
87
 
81
- img {
82
- max-width: 100%;
83
- display: block;
88
+ svg[class^="icon"] {
89
+ width: 1em;
90
+ height: 1em;
84
91
  }
85
92
 
86
- a, area, button, input, label, select, summary, textarea, [tabindex] {
87
- touch-action: manipulation;
88
- }
93
+ a {
94
+ color: inherit;
95
+ text-decoration: none;
89
96
 
90
- @-moz-document url-prefix() {
91
- select {
92
- text-indent: -0.125rem;
97
+ &:active,
98
+ &:hover {
99
+ outline-width: 0;
93
100
  }
94
101
  }
95
102
 
96
- [class^="icon"], [class*="icon"] {
97
- &:before {
98
- display: block;
99
- }
103
+ * {
104
+ box-sizing: border-box;
105
+ outline: none;
106
+ -webkit-tap-highlight-color: rgb(255 255 255 / 0);
100
107
  }
101
108
 
102
- [class^="path"] {
103
- @mixin iconfont;
109
+ *,
110
+ ::before,
111
+ ::after {
112
+ border-width: 0;
113
+ border-style: solid;
114
+ border-color: rgb(var(--color-current) / var(--tw-text-opacity, 1));
104
115
  }
105
116
 
106
- [data-ratio] {
107
- position: relative;
108
-
109
- &:not(.bg-transparent) {
110
- background-color: rgb(var(--color-background-100));
111
- }
112
-
113
- &:before {
117
+ [class*="aspect-"] {
118
+ &::before {
114
119
  content: "";
115
120
  display: block;
116
121
  }
122
+ }
117
123
 
118
- & > * {
119
- position: absolute;
120
- inset: 0;
121
- width: 100%;
122
- height: 100%;
123
- }
124
+ [hidden] {
125
+ display: none;
126
+ }
124
127
 
125
- @nest picture& > img {
126
- object-fit: cover;
128
+ @supports (-moz-appearance: none) {
129
+ select {
130
+ text-indent: -0.125rem;
127
131
  }
128
132
  }
129
133
 
130
134
  .grecaptcha-badge {
131
135
  display: none;
132
- }
136
+ }
137
+
138
+ .google-map * {
139
+ border-style: none;
140
+ }
@@ -0,0 +1,9 @@
1
+ :root {
2
+ --icon-check: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7" /></svg>') no-repeat 50% 50% / contain;
3
+ --icon-radio: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M256 160c-53.019 0-96 42.981-96 96v0c0 53.019 42.981 96 96 96v0c53.019 0 96-42.981 96-96v0c0-53.019-42.981-96-96-96z"></path></svg>') no-repeat 50% 50% / contain;
4
+ --icon-chevron-right: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7" /></svg>') no-repeat 50% 50% / contain;
5
+ --icon-chevron-left: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 19l-7-7 7-7" /></svg>') no-repeat 50% 50% / contain;
6
+ --icon-angle-up: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24" stroke="currentColor"><path d="M10.998 15.467c.491.71 1.513.71 2.004 0l3.767-5.453c.581-.843 0-2.013-1.002-2.014H8.234C7.232 8 6.65 9.17 7.231 10.014z" style="transform: scaleY(-1) translateY(1px); transform-origin: 50% 50%;" /></svg>') no-repeat 50% 50% / contain;
7
+ --icon-angle-down: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24" stroke="currentColor"><path d="M10.998 15.467c.491.71 1.513.71 2.004 0l3.767-5.453c.581-.843 0-2.013-1.002-2.014H8.234C7.232 8 6.65 9.17 7.231 10.014z" /></svg>') no-repeat 50% 50% / contain;
8
+ --icon-upload: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12" /></svg>') no-repeat 50% 50% / contain;
9
+ }
@@ -0,0 +1,182 @@
1
+ @keyframes spin {
2
+ 0% {
3
+ transform: rotate(0deg);
4
+ }
5
+
6
+ 100% {
7
+ transform: rotate(360deg);
8
+ }
9
+ }
10
+
11
+ @keyframes move-indeterminate {
12
+ from {
13
+ background-position: 200% 0;
14
+ }
15
+
16
+ to {
17
+ background-position: -200% 0;
18
+ }
19
+ }
20
+
21
+ @keyframes fade-in-left {
22
+ from {
23
+ opacity: 0;
24
+ transform: translateX(-5rem);
25
+ }
26
+
27
+ to {
28
+ opacity: 1;
29
+ transform: none;
30
+ }
31
+ }
32
+
33
+ @keyframes fade-in-right {
34
+ from {
35
+ opacity: 0;
36
+ transform: translateX(5rem);
37
+ }
38
+
39
+ to {
40
+ opacity: 1;
41
+ transform: none;
42
+ }
43
+ }
44
+
45
+ @keyframes fade-in-up {
46
+ 0% {
47
+ opacity: 0;
48
+ transform: translateY(2rem);
49
+ }
50
+
51
+ to {
52
+ opacity: 1;
53
+ transform: translateY(0);
54
+ }
55
+ }
56
+
57
+ @keyframes fade-in-down {
58
+ 0% {
59
+ opacity: 0;
60
+ transform: translateY(-2rem);
61
+ }
62
+
63
+ to {
64
+ opacity: 1;
65
+ transform: translateY(0);
66
+ }
67
+ }
68
+
69
+ @keyframes fade-out-left {
70
+ from {
71
+ opacity: 1;
72
+ transform: none;
73
+ }
74
+
75
+ to {
76
+ opacity: 0;
77
+ transform: translateX(-5rem);
78
+ }
79
+ }
80
+
81
+ @keyframes fade-out-right {
82
+ from {
83
+ opacity: 1;
84
+ transform: none;
85
+ }
86
+
87
+ to {
88
+ opacity: 0;
89
+ transform: translateX(5rem);
90
+ }
91
+ }
92
+
93
+ @keyframes fade-out-up {
94
+ 0% {
95
+ opacity: 1;
96
+ transform: translateY(0);
97
+ }
98
+
99
+ to {
100
+ opacity: 0;
101
+ transform: translateY(-2rem);
102
+ }
103
+ }
104
+
105
+ @keyframes fade-out-down {
106
+ 0% {
107
+ opacity: 1;
108
+ transform: translateY(0);
109
+ }
110
+
111
+ to {
112
+ opacity: 0;
113
+ transform: translateY(2rem);
114
+ }
115
+ }
116
+
117
+ @keyframes fade-in {
118
+ from {
119
+ opacity: 0;
120
+ }
121
+
122
+ to {
123
+ opacity: 1;
124
+ }
125
+ }
126
+
127
+ @keyframes fade-out {
128
+ from {
129
+ opacity: 1;
130
+ }
131
+
132
+ to {
133
+ opacity: 0;
134
+ }
135
+ }
136
+
137
+ @keyframes slide-in-down {
138
+ 0% {
139
+ transform: translateY(-100%);
140
+ }
141
+
142
+ 100% {
143
+ transform: translateY(0);
144
+ }
145
+ }
146
+
147
+ @keyframes slide-out-up {
148
+ 0% {
149
+ transform: translateY(0);
150
+ }
151
+
152
+ 100% {
153
+ transform: translateY(-100%);
154
+ }
155
+ }
156
+
157
+ @keyframes slide-in-up {
158
+ 0% {
159
+ transform: translateY(100%);
160
+ }
161
+
162
+ 100% {
163
+ transform: translateY(0);
164
+ }
165
+ }
166
+
167
+ @keyframes slide-out-down {
168
+ 0% {
169
+ transform: translateY(0);
170
+ }
171
+
172
+ 100% {
173
+ transform: translateY(100%);
174
+ }
175
+ }
176
+
177
+ @keyframes ripple {
178
+ 100% {
179
+ transform: scale(2.5);
180
+ opacity: 0;
181
+ }
182
+ }