maverick-wave 4.6.0 → 4.8.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.
- package/.claude/skills/maverick-wave/SKILL.md +2 -1
- package/.claude/skills/maverick-wave/references/components.md +47 -4
- package/.claude/skills/maverick-wave/references/layout.md +9 -6
- package/.claude/skills/maverick-wave/references/theming.md +7 -6
- package/CHANGELOG.md +12 -0
- package/gulpfile.js +14 -5
- package/index.html +5 -0
- package/maverick-wave.min.css +9 -2
- package/package.json +5 -5
- package/src/partials/cards-container.html +82 -1
- package/src/partials/tables-container.html +38 -35
- package/src/scss/base/_base.scss +21 -5
- package/src/scss/base/_reset.scss +1 -1
- package/src/scss/base/_typography.scss +11 -0
- package/src/scss/components/_blog-post.scss +8 -1
- package/src/scss/components/_cards.scss +112 -2
- package/src/scss/components/_meta-info.scss +10 -0
- package/src/scss/components/_modals.scss +19 -1
- package/src/scss/components/_tables.scss +3 -0
- package/src/scss/components/_tiles.scss +10 -3
- package/src/scss/components/_timelines.scss +4 -0
- package/src/scss/form-elements/_form.scss +12 -0
- package/src/scss/form-elements/_login.scss +4 -0
- package/src/scss/layout/_footer.scss +8 -9
- package/src/scss/layout/_header.scss +7 -1
- package/src/scss/layout/_main.scss +21 -9
- package/src/scss/layout/_section.scss +1 -2
- package/src/scss/utilities/_touch-targets.scss +12 -0
|
@@ -81,16 +81,17 @@
|
|
|
81
81
|
|
|
82
82
|
.mw-social-links {
|
|
83
83
|
display: flex;
|
|
84
|
+
flex-wrap: wrap;
|
|
84
85
|
justify-content: center;
|
|
85
86
|
align-items: center;
|
|
86
87
|
column-gap: spacing('8');
|
|
87
88
|
row-gap: spacing('4');
|
|
88
89
|
margin: spacing('6') auto;
|
|
89
90
|
|
|
90
|
-
//
|
|
91
|
+
// Modifier for more elements
|
|
91
92
|
&.mod-wrap {
|
|
92
|
-
flex-wrap: wrap;
|
|
93
93
|
width: 510px;
|
|
94
|
+
max-width: 100%;
|
|
94
95
|
}
|
|
95
96
|
|
|
96
97
|
a {
|
|
@@ -162,7 +163,7 @@
|
|
|
162
163
|
width: 330px;
|
|
163
164
|
}
|
|
164
165
|
|
|
165
|
-
|
|
166
|
+
a {
|
|
166
167
|
width: 40px;
|
|
167
168
|
height: 40px;
|
|
168
169
|
font-size: font-size('md');
|
|
@@ -191,19 +192,17 @@
|
|
|
191
192
|
max-width: 100%;
|
|
192
193
|
padding: spacing('0') spacing('4');
|
|
193
194
|
}
|
|
194
|
-
|
|
195
|
-
button {
|
|
196
|
-
width: 33px;
|
|
197
|
-
height: 33px;
|
|
198
|
-
font-size: font-size('md');
|
|
199
|
-
}
|
|
200
195
|
}
|
|
201
196
|
|
|
197
|
+
// A second 15% inset inside a container that already keeps a gutter only
|
|
198
|
+
// narrows the line to no purpose
|
|
202
199
|
.mw-disclaimer {
|
|
200
|
+
width: 100%;
|
|
203
201
|
font-size: font-size('xs');
|
|
204
202
|
}
|
|
205
203
|
|
|
206
204
|
.mw-copyright {
|
|
205
|
+
width: 100%;
|
|
207
206
|
margin-top: spacing('5');
|
|
208
207
|
font-size: font-size('xs');
|
|
209
208
|
}
|
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
display: flex;
|
|
30
30
|
justify-content: space-between;
|
|
31
31
|
align-items: center;
|
|
32
|
+
gap: spacing('3');
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
.mw-logo {
|
|
@@ -36,17 +37,21 @@
|
|
|
36
37
|
align-items: center;
|
|
37
38
|
z-index: z-index('header') + 5;
|
|
38
39
|
position: relative;
|
|
39
|
-
flex-shrink:
|
|
40
|
+
flex-shrink: 1;
|
|
41
|
+
min-width: 0;
|
|
40
42
|
|
|
41
43
|
button {
|
|
42
44
|
display: inline-block;
|
|
43
45
|
text-decoration: none;
|
|
46
|
+
min-width: 0;
|
|
44
47
|
}
|
|
45
48
|
|
|
46
49
|
img {
|
|
47
50
|
height: 42px;
|
|
48
51
|
width: auto;
|
|
49
52
|
max-width: 100%;
|
|
53
|
+
object-fit: contain;
|
|
54
|
+
object-position: left center;
|
|
50
55
|
display: block;
|
|
51
56
|
}
|
|
52
57
|
}
|
|
@@ -55,6 +60,7 @@
|
|
|
55
60
|
display: flex;
|
|
56
61
|
align-items: center;
|
|
57
62
|
gap: spacing('2');
|
|
63
|
+
flex-shrink: 0;
|
|
58
64
|
}
|
|
59
65
|
|
|
60
66
|
// Login button styling
|
|
@@ -13,10 +13,6 @@
|
|
|
13
13
|
margin: spacing('0') auto;
|
|
14
14
|
padding: spacing('0');
|
|
15
15
|
|
|
16
|
-
@include media-down('sm') {
|
|
17
|
-
width: var(--mw-container-width-sm);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
16
|
// add a hero part for a full size background picture
|
|
21
17
|
@supports (selector(:has(.mw-hero))) {
|
|
22
18
|
// if it has *any* descendant .mw-hero
|
|
@@ -68,6 +64,14 @@
|
|
|
68
64
|
// Pure CSS, no script needed. The flip side of that: it is a pseudo element on
|
|
69
65
|
// the trigger, so an ancestor with `overflow: hidden` (a card, a scroll
|
|
70
66
|
// container) cuts it off.
|
|
67
|
+
//
|
|
68
|
+
// Hidden means `display: none`, not `visibility: hidden`. A box that is hidden
|
|
69
|
+
// but still laid out counts towards the page's scrollable overflow: a 280px
|
|
70
|
+
// bubble centred on a trigger near the right edge added 50px of sideways scroll
|
|
71
|
+
// to a 320px screen, on a page where nothing visible was out of place. Coming
|
|
72
|
+
// back from `display: none` is a discrete transition, hence `allow-discrete`
|
|
73
|
+
// and the starting style - a browser that knows neither simply drops the
|
|
74
|
+
// transition and shows the bubble at once.
|
|
71
75
|
$_mw-tooltip-arrow: 6px;
|
|
72
76
|
$_mw-tooltip-gap: 8px;
|
|
73
77
|
|
|
@@ -91,8 +95,10 @@ $_mw-tooltip-gap: 8px;
|
|
|
91
95
|
box-shadow: 0 2px 5px var(--mw-shadow);
|
|
92
96
|
pointer-events: none;
|
|
93
97
|
opacity: 0;
|
|
94
|
-
|
|
95
|
-
transition:
|
|
98
|
+
display: none;
|
|
99
|
+
transition:
|
|
100
|
+
opacity 0.2s ease,
|
|
101
|
+
display 0.2s allow-discrete;
|
|
96
102
|
z-index: z-index('tooltip');
|
|
97
103
|
}
|
|
98
104
|
|
|
@@ -107,8 +113,10 @@ $_mw-tooltip-gap: 8px;
|
|
|
107
113
|
border-bottom-width: 0;
|
|
108
114
|
border-top-color: var(--mw-gray-color);
|
|
109
115
|
opacity: 0;
|
|
110
|
-
|
|
111
|
-
transition:
|
|
116
|
+
display: none;
|
|
117
|
+
transition:
|
|
118
|
+
opacity 0.2s ease,
|
|
119
|
+
display 0.2s allow-discrete;
|
|
112
120
|
z-index: z-index('tooltip');
|
|
113
121
|
}
|
|
114
122
|
|
|
@@ -117,7 +125,11 @@ $_mw-tooltip-gap: 8px;
|
|
|
117
125
|
&:focus-visible::before,
|
|
118
126
|
&:focus-visible::after {
|
|
119
127
|
opacity: 1;
|
|
120
|
-
|
|
128
|
+
display: block;
|
|
129
|
+
|
|
130
|
+
@starting-style {
|
|
131
|
+
opacity: 0;
|
|
132
|
+
}
|
|
121
133
|
}
|
|
122
134
|
}
|
|
123
135
|
|
|
@@ -22,6 +22,18 @@
|
|
|
22
22
|
min-height: 2.5rem;
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
+
.mw-input,
|
|
26
|
+
.mw-input-sm,
|
|
27
|
+
.mw-input-lg,
|
|
28
|
+
.mw-select,
|
|
29
|
+
.mw-select-sm,
|
|
30
|
+
.mw-select-lg,
|
|
31
|
+
.mw-textarea,
|
|
32
|
+
.mw-textarea-sm,
|
|
33
|
+
.mw-textarea-lg {
|
|
34
|
+
font-size: 16px;
|
|
35
|
+
}
|
|
36
|
+
|
|
25
37
|
// A tab strip is the one navigation a phone has no fallback for
|
|
26
38
|
.mw-tabs-nav-item {
|
|
27
39
|
display: flex;
|