maverick-wave 4.28.0 → 5.0.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 (138) hide show
  1. package/.claude/settings.local.json +29 -1
  2. package/.claude/skills/mw-maverick-wave/SKILL.md +39 -24
  3. package/.claude/skills/mw-maverick-wave/examples/angular-services.md +16 -4
  4. package/.claude/skills/mw-maverick-wave/examples/static-landing-page.md +13 -4
  5. package/.claude/skills/mw-maverick-wave/references/components.md +42 -5
  6. package/.claude/skills/mw-maverick-wave/references/forms.md +14 -2
  7. package/.claude/skills/mw-maverick-wave/references/javascript.md +17 -4
  8. package/.claude/skills/mw-maverick-wave/references/layout.md +53 -19
  9. package/.claude/skills/mw-maverick-wave/references/theming.md +38 -1
  10. package/.impeccable/config.local.json +5 -0
  11. package/.impeccable/hook.cache.json +1 -0
  12. package/CHANGELOG.md +11 -0
  13. package/CLAUDE.md +5 -5
  14. package/README.md +48 -4
  15. package/index.html +19 -38
  16. package/maverick-wave.min.css +14 -12
  17. package/maverick-wave.min.js +1 -1
  18. package/package.json +2 -2
  19. package/scripts/verify.js +27 -2
  20. package/src/js/main.js +223 -83
  21. package/src/partials/accordions-container.html +6 -10
  22. package/src/partials/alerts-container.html +6 -6
  23. package/src/partials/announcement-container.html +5 -5
  24. package/src/partials/avatars-container.html +85 -17
  25. package/src/partials/badges-container.html +6 -6
  26. package/src/partials/blog-posts-container.html +11 -12
  27. package/src/partials/buttons-container.html +3 -3
  28. package/src/partials/cards-container.html +26 -9
  29. package/src/partials/code-container.html +5 -5
  30. package/src/partials/content-slider-container.html +5 -4
  31. package/src/partials/divider-container.html +7 -7
  32. package/src/partials/dropdown-container.html +2 -2
  33. package/src/partials/empty-state-container.html +5 -5
  34. package/src/partials/footer-container.html +21 -18
  35. package/src/partials/form-elements-container.html +14 -14
  36. package/src/partials/gallery-container.html +16 -8
  37. package/src/partials/get-started-container.html +4 -8
  38. package/src/partials/header-container.html +18 -7
  39. package/src/partials/home-container.html +10 -20
  40. package/src/partials/input-group-container.html +11 -2
  41. package/src/partials/kbd-container.html +1 -1
  42. package/src/partials/login-container.html +5 -1
  43. package/src/partials/media-container.html +2 -2
  44. package/src/partials/modals-container.html +22 -32
  45. package/src/partials/pricing-container.html +9 -9
  46. package/src/partials/skeleton-container.html +6 -6
  47. package/src/partials/stepper-container.html +2 -2
  48. package/src/partials/tables-container.html +12 -12
  49. package/src/partials/tabs-container.html +17 -27
  50. package/src/partials/tags-container.html +23 -17
  51. package/src/partials/techstack-bucket-container.html +13 -0
  52. package/src/partials/tiles-container.html +26 -9
  53. package/src/partials/typography-container.html +7 -6
  54. package/src/partials/utilities-container.html +35 -15
  55. package/src/scss/_layers.scss +10 -0
  56. package/src/scss/abstracts/_index.scss +6 -0
  57. package/src/scss/abstracts/_mixins.scss +61 -153
  58. package/src/scss/abstracts/_variables.scss +123 -319
  59. package/src/scss/base/_base.scss +170 -190
  60. package/src/scss/base/_reset.scss +106 -104
  61. package/src/scss/base/_typography.scss +153 -151
  62. package/src/scss/components/_accordions.scss +97 -97
  63. package/src/scss/components/_alerts.scss +71 -70
  64. package/src/scss/components/_announcement.scss +71 -70
  65. package/src/scss/components/_avatars.scss +130 -142
  66. package/src/scss/components/_badge.scss +131 -132
  67. package/src/scss/components/_blog-post.scss +223 -220
  68. package/src/scss/components/_breadcrumbs.scss +93 -92
  69. package/src/scss/components/_button-bar.scss +102 -110
  70. package/src/scss/components/_buttons.scss +319 -324
  71. package/src/scss/components/_calendar.scss +251 -252
  72. package/src/scss/components/_cards.scss +359 -386
  73. package/src/scss/components/_code.scss +190 -194
  74. package/src/scss/components/_coming-soon.scss +77 -75
  75. package/src/scss/components/_content-slider.scss +90 -89
  76. package/src/scss/components/_divider.scss +55 -53
  77. package/src/scss/components/_dropdown.scss +179 -185
  78. package/src/scss/components/_empty-state.scss +57 -57
  79. package/src/scss/components/_flag.scss +294 -278
  80. package/src/scss/components/_gallery.scss +131 -133
  81. package/src/scss/components/_info.scss +151 -167
  82. package/src/scss/components/_kanban.scss +332 -341
  83. package/src/scss/components/_kbd.scss +40 -38
  84. package/src/scss/components/_lang-switch.scss +89 -97
  85. package/src/scss/components/_links.scss +21 -28
  86. package/src/scss/components/_lists.scss +510 -514
  87. package/src/scss/components/_localhost-indicator.scss +26 -24
  88. package/src/scss/components/_media.scss +22 -20
  89. package/src/scss/components/_meta-info.scss +35 -33
  90. package/src/scss/components/_modals.scss +277 -186
  91. package/src/scss/components/_pagination.scss +81 -87
  92. package/src/scss/components/_panels.scss +99 -97
  93. package/src/scss/components/_pricing.scss +183 -241
  94. package/src/scss/components/_progress.scss +112 -89
  95. package/src/scss/components/_prose.scss +35 -33
  96. package/src/scss/components/_ratings.scss +40 -38
  97. package/src/scss/components/_segmented.scss +82 -84
  98. package/src/scss/components/_skeleton.scss +66 -72
  99. package/src/scss/components/_spinners.scss +155 -159
  100. package/src/scss/components/_stepper.scss +116 -116
  101. package/src/scss/components/_tables.scss +155 -148
  102. package/src/scss/components/_tabs.scss +232 -141
  103. package/src/scss/components/_tags.scss +109 -107
  104. package/src/scss/components/_techstack-bucket.scss +123 -122
  105. package/src/scss/components/_testimonial.scss +72 -70
  106. package/src/scss/components/_theme-toggle.scss +53 -51
  107. package/src/scss/components/_tiles.scss +174 -174
  108. package/src/scss/components/_timelines.scss +282 -280
  109. package/src/scss/components/_toasts.scss +66 -72
  110. package/src/scss/form-elements/_checkbox.scss +117 -132
  111. package/src/scss/form-elements/_form.scss +149 -115
  112. package/src/scss/form-elements/_input-group.scss +99 -103
  113. package/src/scss/form-elements/_input.scss +74 -74
  114. package/src/scss/form-elements/_login.scss +48 -48
  115. package/src/scss/form-elements/_prefilled.scss +53 -51
  116. package/src/scss/form-elements/_radio.scss +95 -107
  117. package/src/scss/form-elements/_select.scss +42 -42
  118. package/src/scss/form-elements/_slider.scss +117 -132
  119. package/src/scss/form-elements/_textarea.scss +68 -54
  120. package/src/scss/form-elements/_toggle.scss +127 -140
  121. package/src/scss/layout/_footer.scss +172 -171
  122. package/src/scss/layout/_grid.scss +268 -302
  123. package/src/scss/layout/_header.scss +426 -427
  124. package/src/scss/layout/_home.scss +28 -27
  125. package/src/scss/layout/_main.scss +275 -238
  126. package/src/scss/layout/_page-header.scss +38 -36
  127. package/src/scss/layout/_section.scss +150 -124
  128. package/src/scss/main.scss +1 -1
  129. package/src/scss/utilities/_accessibility.scss +46 -45
  130. package/src/scss/utilities/_aspect.scss +22 -20
  131. package/src/scss/utilities/_corner.scss +23 -5
  132. package/src/scss/utilities/_display.scss +76 -70
  133. package/src/scss/utilities/_elevation.scss +13 -11
  134. package/src/scss/utilities/_flex.scss +83 -85
  135. package/src/scss/utilities/_reveal.scss +40 -63
  136. package/src/scss/utilities/_spacing.scss +63 -64
  137. package/src/scss/utilities/_text.scss +139 -141
  138. package/src/scss/utilities/_touch-targets.scss +130 -147
@@ -1,267 +1,263 @@
1
1
  @use '../abstracts' as *;
2
2
 
3
- code,
4
- pre {
5
- font-family: var(--mw-font-family-mono);
6
- font-size: font-size('xs');
7
- border-radius: radius('sm');
8
- }
9
-
10
- code {
11
- color: var(--mw-text-muted-color);
12
- padding: spacing('1') spacing('2');
13
- white-space: pre-wrap;
14
- word-break: break-word;
15
- }
16
-
17
- // Inline code - a token in a sentence, a class name in a table cell - gets a
18
- // surface of its own so it reads as a quoted thing rather than as prose that
19
- // changed font halfway through. Only outside a `pre`: the block already paints
20
- // one, and a second box inside it is just a box inside a box.
21
- :not(pre) > code {
22
- padding: 0.15em 0.4em;
23
- border-radius: radius('xs');
24
- background: var(--mw-surface-muted);
25
- color: var(--mw-text-color);
26
- // Mono faces run visibly larger than the body face at the same nominal size.
27
- // `em` rather than a step off the scale, so it follows whatever it is set in -
28
- // a paragraph, a table cell, a heading.
29
- font-size: 0.88em;
30
- }
31
-
32
- pre {
33
- color: var(--mw-text-color);
34
- padding: spacing('4');
35
- overflow-x: auto;
36
- border: none;
3
+ @layer mw.components {
4
+ code,
5
+ pre {
6
+ font-family: var(--mw-font-family-mono);
7
+ font-size: font-size('xs');
8
+ border-radius: radius('sm');
9
+ }
37
10
 
38
11
  code {
39
- color: inherit;
40
- padding: spacing('0');
12
+ color: var(--mw-text-muted-color);
13
+ padding: spacing('1') spacing('2');
41
14
  white-space: pre-wrap;
42
- display: block;
43
- line-height: 1.5;
44
-
45
- @include media-down('sm') {
46
- font-size: font-size('2xs');
47
- white-space: pre-wrap;
48
- word-break: break-word;
49
- }
50
-
51
- @include media-down('xs') {
52
- font-size: font-size('3xs');
53
- }
15
+ word-break: break-word;
54
16
  }
55
- }
56
17
 
57
- // Code block with filename
58
- .mw-code-block {
59
- border-radius: radius('sm');
60
- overflow: hidden;
61
- border: 1px solid var(--mw-border);
62
- width: 100%;
18
+ // Inline code - a token in a sentence, a class name in a table cell - gets a
19
+ // surface of its own so it reads as a quoted thing rather than as prose that
20
+ // changed font halfway through. Only outside a `pre`: the block already paints
21
+ // one, and a second box inside it is just a box inside a box.
22
+ :not(pre) > code {
23
+ padding: 0.15em 0.4em;
24
+ border-radius: radius('xs');
25
+ background: var(--mw-surface-muted);
26
+ color: var(--mw-text-color);
27
+ // Mono faces run visibly larger than the body face at the same nominal size.
28
+ // `em` rather than a step off the scale, so it follows whatever it is set in -
29
+ // a paragraph, a table cell, a heading.
30
+ font-size: 0.88em;
31
+ }
63
32
 
64
- &-header {
65
- padding: spacing('2') spacing('4');
66
- border-bottom: 1px solid var(--mw-border);
67
- font-family: var(--mw-font-family-mono);
68
- font-size: font-size('xs');
69
- color: var(--mw-text-muted-color);
70
- display: flex;
71
- justify-content: space-between;
72
- align-items: center;
73
- flex-wrap: wrap;
33
+ pre {
34
+ color: var(--mw-text-color);
35
+ padding: spacing('4');
36
+ overflow-x: auto;
37
+ border: none;
74
38
 
75
- @include media-down('sm') {
76
- padding: spacing('2');
77
- }
78
- }
39
+ code {
40
+ color: inherit;
41
+ padding: spacing('0');
42
+ white-space: pre-wrap;
43
+ display: block;
44
+ line-height: 1.5;
79
45
 
80
- &-filename {
81
- font-weight: font-weight('medium');
82
- margin-right: spacing('2');
46
+ @include media-down('sm') {
47
+ font-size: font-size('2xs');
48
+ white-space: pre-wrap;
49
+ word-break: break-word;
50
+ }
83
51
 
84
- @include media-down('sm') {
85
- font-size: font-size('2xs');
86
- margin-bottom: spacing('1');
52
+ @include media-down('xs') {
53
+ font-size: font-size('3xs');
54
+ }
87
55
  }
88
56
  }
89
57
 
90
- &-language {
91
- font-size: font-size('xs');
92
- padding: spacing('1');
58
+ .mw-code-block {
93
59
  border-radius: radius('sm');
60
+ overflow: hidden;
61
+ border: 1px solid var(--mw-border);
62
+ width: 100%;
94
63
 
95
- @include media-down('sm') {
96
- font-size: font-size('2xs');
64
+ &-header {
65
+ padding: spacing('2');
66
+ border-bottom: 1px solid var(--mw-border);
67
+ font-family: var(--mw-font-family-mono);
68
+ font-size: font-size('xs');
69
+ color: var(--mw-text-muted-color);
70
+ display: flex;
71
+ justify-content: space-between;
72
+ align-items: center;
73
+ flex-wrap: wrap;
74
+
75
+ @include media-up('sm') {
76
+ padding: spacing('2') spacing('4');
77
+ }
97
78
  }
98
- }
99
79
 
100
- pre {
101
- margin: spacing('0');
102
- border: none;
103
- max-width: 100%;
104
- overflow-x: auto;
80
+ &-filename {
81
+ font-weight: font-weight('medium');
82
+ margin-right: spacing('2');
105
83
 
106
- @include media-down('sm') {
84
+ @include media-down('sm') {
85
+ font-size: font-size('2xs');
86
+ margin-bottom: spacing('1');
87
+ }
88
+ }
89
+
90
+ &-language {
107
91
  font-size: font-size('2xs');
108
92
  padding: spacing('1');
93
+ border-radius: radius('sm');
109
94
 
110
- code {
111
- white-space: pre-wrap;
112
- word-break: break-word;
95
+ @include media-up('sm') {
96
+ font-size: font-size('xs');
113
97
  }
114
98
  }
115
99
 
116
- @include media-down('xs') {
117
- font-size: font-size('3xs');
100
+ pre {
101
+ margin: spacing('0');
102
+ border: none;
103
+ max-width: 100%;
104
+ overflow-x: auto;
105
+
106
+ @include media-down('sm') {
107
+ font-size: font-size('2xs');
108
+ padding: spacing('1');
109
+
110
+ code {
111
+ white-space: pre-wrap;
112
+ word-break: break-word;
113
+ }
114
+ }
115
+
116
+ @include media-down('xs') {
117
+ font-size: font-size('3xs');
118
+ }
118
119
  }
119
120
  }
120
- }
121
121
 
122
- // Terminal
123
- .mw-terminal {
124
- background: #232323; // fix color
125
- color: #f2f3f4; // fix color
126
- border-radius: radius('sm');
127
- padding: spacing('4');
128
- margin: spacing('1');
129
- font-family: var(--mw-font-family-mono);
130
- font-size: font-size('xs');
131
- line-height: 1.5;
132
- overflow: auto;
133
- max-width: 100%;
134
-
135
- @include media-down('sm') {
136
- font-size: font-size('2xs');
122
+ .mw-terminal {
123
+ background: #232323;
124
+ color: #f2f3f4;
125
+ border-radius: radius('sm');
137
126
  padding: spacing('1');
138
- }
139
-
140
- @include media-down('xs') {
127
+ margin: spacing('1');
128
+ font-family: var(--mw-font-family-mono);
141
129
  font-size: font-size('3xs');
142
- }
143
-
144
- &-line {
145
- display: block;
146
- word-break: break-word;
130
+ line-height: 1.5;
131
+ overflow: auto;
132
+ max-width: 100%;
147
133
 
148
- &::before {
149
- content: '$ ';
150
- color: #6bdd6b;
151
- font-weight: font-weight('medium');
134
+ @include media-up('xs') {
135
+ font-size: font-size('2xs');
152
136
  }
153
137
 
154
- &.mw-terminal-output::before {
155
- content: '';
138
+ @include media-up('sm') {
139
+ font-size: font-size('xs');
140
+ padding: spacing('4');
156
141
  }
157
- }
158
- }
159
142
 
160
- // Syntax highlighting
161
- .mw-code-keyword {
162
- color: #bd63d9;
163
- }
164
-
165
- .mw-code-string {
166
- color: #98c379;
167
- }
168
-
169
- .mw-code-comment {
170
- color: #7f848e;
171
- font-style: italic;
172
- }
173
-
174
- .mw-code-function {
175
- color: #489bde;
176
- }
143
+ &-line {
144
+ display: block;
145
+ word-break: break-word;
177
146
 
178
- .mw-code-number {
179
- color: #d19a66;
180
- }
147
+ &::before {
148
+ content: '$ ';
149
+ color: #6bdd6b;
150
+ font-weight: font-weight('medium');
151
+ }
181
152
 
182
- .mw-code-operator {
183
- color: #56b6c2;
184
- }
153
+ &.mw-terminal-output::before {
154
+ content: '';
155
+ }
156
+ }
157
+ }
185
158
 
186
- // Light theme adjustments
187
- .mw-theme-light {
188
159
  .mw-code-keyword {
189
- color: #9d1a9a;
160
+ color: #bd63d9;
190
161
  }
191
162
 
192
163
  .mw-code-string {
193
- color: #43a342;
164
+ color: #98c379;
194
165
  }
195
166
 
196
167
  .mw-code-comment {
197
- color: #a0a1a7;
168
+ color: #7f848e;
169
+ font-style: italic;
198
170
  }
199
171
 
200
172
  .mw-code-function {
201
- color: #4078f2;
173
+ color: #489bde;
202
174
  }
203
175
 
204
176
  .mw-code-number {
205
- color: #89610c;
177
+ color: #d19a66;
206
178
  }
207
179
 
208
180
  .mw-code-operator {
209
- color: #0184bc;
181
+ color: #56b6c2;
210
182
  }
211
- }
212
183
 
213
- // Responsive container
214
- .mw-code-container {
215
- width: 100%;
216
- max-width: 100%;
217
- overflow-x: auto;
218
- position: relative;
219
-
220
- // Add horizontal scrolling indicator for small screens
221
- @include media-down('sm') {
222
- background-position:
223
- left center,
224
- right center;
225
- background-repeat: no-repeat;
226
- background-size:
227
- 20px 100%,
228
- 20px 100%;
229
- background-attachment: local, local;
230
- }
184
+ .mw-theme-light {
185
+ .mw-code-keyword {
186
+ color: #9d1a9a;
187
+ }
231
188
 
232
- // Children should not be wider than the container
233
- & > * {
234
- max-width: 100%;
189
+ .mw-code-string {
190
+ color: #43a342;
191
+ }
192
+
193
+ .mw-code-comment {
194
+ color: #a0a1a7;
195
+ }
196
+
197
+ .mw-code-function {
198
+ color: #4078f2;
199
+ }
200
+
201
+ .mw-code-number {
202
+ color: #89610c;
203
+ }
204
+
205
+ .mw-code-operator {
206
+ color: #0184bc;
207
+ }
235
208
  }
236
209
 
237
- .mw-code-block {
238
- margin: spacing('0');
210
+ .mw-code-container {
239
211
  width: 100%;
212
+ max-width: 100%;
213
+ overflow-x: auto;
214
+ position: relative;
240
215
 
241
- pre {
242
- white-space: pre;
243
- width: 100%;
244
- overflow-x: auto;
216
+ // Add horizontal scrolling indicator for small screens
217
+ @include media-down('sm') {
218
+ background-position:
219
+ left center,
220
+ right center;
221
+ background-repeat: no-repeat;
222
+ background-size:
223
+ 20px 100%,
224
+ 20px 100%;
225
+ background-attachment: local, local;
226
+ }
245
227
 
246
- // For very small screens, allow wrapping
247
- @include media-down('xs') {
248
- white-space: pre-wrap;
249
- word-break: break-word;
250
- }
228
+ & > * {
229
+ max-width: 100%;
251
230
  }
252
231
 
253
- // Add horizontal scrolling for code that can't wrap nicely
254
- &.mw-code-nowrap {
232
+ .mw-code-block {
233
+ margin: spacing('0');
234
+ width: 100%;
235
+
255
236
  pre {
256
237
  white-space: pre;
257
- code {
238
+ width: 100%;
239
+ overflow-x: auto;
240
+
241
+ // For very small screens, allow wrapping
242
+ @include media-down('xs') {
243
+ white-space: pre-wrap;
244
+ word-break: break-word;
245
+ }
246
+ }
247
+
248
+ // Add horizontal scrolling for code that can't wrap nicely
249
+ &.mw-code-nowrap {
250
+ pre {
258
251
  white-space: pre;
252
+ code {
253
+ white-space: pre;
254
+ }
259
255
  }
260
256
  }
261
257
  }
262
- }
263
258
 
264
- .mw-terminal {
265
- width: 100%;
259
+ .mw-terminal {
260
+ width: 100%;
261
+ }
266
262
  }
267
263
  }
@@ -1,95 +1,97 @@
1
1
  @use '../abstracts' as *;
2
2
 
3
- .mw-coming-soon {
4
- display: flex;
5
- align-items: center;
6
- justify-content: center;
7
- background: var(--mw-card-background);
8
- border-radius: radius('md');
9
- border: 3px dashed var(--mw-border-accent);
10
- overflow: hidden;
11
- position: relative;
12
- transition: var(--mw-transition);
13
- padding: spacing('12') spacing('0');
14
-
15
- &-icon {
16
- margin-right: spacing('7');
17
- font-size: font-size('3xl');
18
- transition: var(--mw-transition);
19
- position: relative;
20
- z-index: z-index('lift');
21
- color: var(--mw-text-muted-color);
22
- }
23
-
24
- &-text {
25
- font-size: font-size('3xl');
26
- font-weight: font-weight('bold');
27
- color: var(--mw-text-muted-color);
28
- text-transform: uppercase;
29
- letter-spacing: spacing('3');
3
+ @layer mw.components {
4
+ .mw-coming-soon {
5
+ display: flex;
6
+ align-items: center;
7
+ justify-content: center;
8
+ background: var(--mw-card-background);
9
+ border-radius: radius('md');
10
+ border: 3px dashed var(--mw-border-accent);
11
+ overflow: hidden;
30
12
  position: relative;
31
- z-index: z-index('lift');
32
13
  transition: var(--mw-transition);
33
- text-align: center;
34
- }
14
+ padding: spacing('12') spacing('0');
35
15
 
36
- &::before {
37
- content: '';
38
- position: absolute;
39
- top: spacing('0');
40
- left: spacing('0');
41
- width: 100%;
42
- height: 100%;
43
- background: linear-gradient(
44
- 125deg,
45
- var(--mw-primary-color) 40%,
46
- var(--mw-secondary-color) 100%
47
- );
48
- opacity: 0;
49
- z-index: z-index('lift');
50
- transition: opacity var(--mw-duration-slower) var(--mw-ease-out);
51
- }
52
-
53
- @include hover {
54
- transform: translateY(-3px);
55
- }
16
+ &-icon {
17
+ margin-right: spacing('7');
18
+ font-size: font-size('3xl');
19
+ transition: var(--mw-transition);
20
+ position: relative;
21
+ z-index: z-index('lift');
22
+ color: var(--mw-text-muted-color);
23
+ }
56
24
 
57
- &:hover {
58
- border-style: solid;
25
+ &-text {
26
+ font-size: font-size('3xl');
27
+ font-weight: font-weight('bold');
28
+ color: var(--mw-text-muted-color);
29
+ text-transform: uppercase;
30
+ letter-spacing: spacing('3');
31
+ position: relative;
32
+ z-index: z-index('lift');
33
+ transition: var(--mw-transition);
34
+ text-align: center;
35
+ }
59
36
 
60
- .mw-coming-soon-icon {
61
- color: var(--mw-primary-accent-text-color);
62
- transform: rotate(27deg);
37
+ &::before {
38
+ content: '';
39
+ position: absolute;
40
+ top: spacing('0');
41
+ left: spacing('0');
42
+ width: 100%;
43
+ height: 100%;
44
+ background: linear-gradient(
45
+ 125deg,
46
+ var(--mw-primary-color) 40%,
47
+ var(--mw-secondary-color) 100%
48
+ );
49
+ opacity: 0;
50
+ z-index: z-index('lift');
51
+ transition: opacity var(--mw-duration-slower) var(--mw-ease-out);
63
52
  }
64
53
 
65
- .mw-coming-soon-text {
66
- color: var(--mw-primary-accent-text-color);
67
- transform: scale(1.05);
54
+ @include hover {
55
+ transform: translateY(-3px);
68
56
  }
69
57
 
70
- &::before {
71
- opacity: 0.9;
58
+ &:hover {
59
+ border-style: solid;
60
+
61
+ .mw-coming-soon-icon {
62
+ color: var(--mw-primary-accent-text-color);
63
+ transform: rotate(27deg);
64
+ }
65
+
66
+ .mw-coming-soon-text {
67
+ color: var(--mw-primary-accent-text-color);
68
+ transform: scale(1.05);
69
+ }
70
+
71
+ &::before {
72
+ opacity: 0.9;
73
+ }
72
74
  }
73
- }
74
75
 
75
- // Add responsive adjustments
76
- @include media-down('md') {
77
- min-height: 150px;
76
+ // Add responsive adjustments
77
+ @include media-down('md') {
78
+ min-height: 150px;
78
79
 
79
- &-text,
80
- &-icon {
81
- font-size: font-size('xl');
80
+ &-text,
81
+ &-icon {
82
+ font-size: font-size('xl');
83
+ }
82
84
  }
83
- }
84
85
 
85
- @include media-down('sm') {
86
- min-height: 120px;
86
+ @include media-down('sm') {
87
+ min-height: 120px;
87
88
 
88
- &-text,
89
- &-icon {
90
- margin-right: spacing('5');
91
- letter-spacing: spacing('2');
92
- font-size: font-size('lg');
89
+ &-text,
90
+ &-icon {
91
+ margin-right: spacing('5');
92
+ letter-spacing: spacing('2');
93
+ font-size: font-size('lg');
94
+ }
93
95
  }
94
96
  }
95
97
  }