@cfpb/cfpb-design-system 4.2.4 → 4.3.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/CHANGELOG.md +166 -1
- package/dist/components/cfpb-expandables/index.js +1 -1
- package/dist/components/cfpb-expandables/index.js.map +3 -3
- package/dist/components/cfpb-forms/index.js +1 -1
- package/dist/components/cfpb-forms/index.js.map +2 -2
- package/dist/elements/cfpb-button/index.js +4 -4
- package/dist/elements/cfpb-button/index.js.map +3 -3
- package/dist/elements/cfpb-checkbox-icon/index.js +29 -0
- package/dist/elements/{cfpb-checkbox → cfpb-checkbox-icon}/index.js.map +4 -4
- package/dist/elements/cfpb-expandable/index.css +2 -0
- package/dist/elements/cfpb-expandable/index.css.map +7 -0
- package/dist/elements/cfpb-expandable/index.js +33 -0
- package/dist/elements/cfpb-expandable/index.js.map +7 -0
- package/dist/elements/cfpb-file-upload/index.js +4 -4
- package/dist/elements/cfpb-file-upload/index.js.map +3 -3
- package/dist/elements/cfpb-form-alert/index.js +32 -0
- package/dist/elements/cfpb-form-alert/index.js.map +7 -0
- package/dist/elements/cfpb-form-choice/index.js +12 -3
- package/dist/elements/cfpb-form-choice/index.js.map +4 -4
- package/dist/elements/cfpb-form-search/index.js +41 -0
- package/dist/elements/cfpb-form-search/index.js.map +7 -0
- package/dist/elements/cfpb-form-search-input/index.js +41 -0
- package/dist/elements/cfpb-form-search-input/index.js.map +7 -0
- package/dist/elements/cfpb-icon-text/index.js +3 -3
- package/dist/elements/cfpb-icon-text/index.js.map +3 -3
- package/dist/elements/cfpb-label/index.js +3 -3
- package/dist/elements/cfpb-label/index.js.map +2 -2
- package/dist/elements/cfpb-list/index.js +39 -0
- package/dist/elements/cfpb-list/index.js.map +7 -0
- package/dist/elements/cfpb-list-item/index.js +39 -0
- package/dist/elements/cfpb-list-item/index.js.map +7 -0
- package/dist/elements/cfpb-multiselect/index.js +13 -4
- package/dist/elements/cfpb-multiselect/index.js.map +4 -4
- package/dist/elements/cfpb-pagination/index.js +3 -3
- package/dist/elements/cfpb-pagination/index.js.map +2 -2
- package/dist/elements/cfpb-select/index.css +2 -0
- package/dist/elements/cfpb-select/index.css.map +7 -0
- package/dist/elements/cfpb-select/index.js +42 -0
- package/dist/elements/cfpb-select/index.js.map +7 -0
- package/dist/elements/cfpb-select-list/index.js +39 -0
- package/dist/elements/cfpb-select-list/index.js.map +7 -0
- package/dist/elements/cfpb-tag-filter/index.js +3 -3
- package/dist/elements/cfpb-tag-filter/index.js.map +3 -3
- package/dist/elements/cfpb-tag-group/index.js +3 -3
- package/dist/elements/cfpb-tag-group/index.js.map +4 -4
- package/dist/elements/cfpb-tag-topic/index.js +4 -4
- package/dist/elements/cfpb-tag-topic/index.js.map +1 -1
- package/dist/elements/index.css +2 -0
- package/dist/elements/index.css.map +7 -0
- package/dist/elements/index.js +7 -6
- package/dist/elements/index.js.map +4 -4
- package/dist/index.js +7 -6
- package/dist/index.js.map +4 -4
- package/dist/utilities/index.js +1 -1
- package/dist/utilities/index.js.map +3 -3
- package/package.json +1 -1
- package/src/components/cfpb-expandables/expandable.js +3 -0
- package/src/components/cfpb-forms/multiselect.js +1 -1
- package/src/elements/abstracts/custom-props.css +123 -0
- package/src/elements/abstracts/grid-mixins.scss +83 -0
- package/src/elements/abstracts/heading-mixins.scss +346 -0
- package/src/elements/abstracts/index.scss +7 -0
- package/src/elements/abstracts/media-queries.scss +35 -0
- package/src/elements/abstracts/sizing-vars.scss +65 -0
- package/src/elements/abstracts/vars-breakpoints.scss +16 -0
- package/src/elements/abstracts/vars.css +79 -0
- package/src/elements/base/base.scss +375 -0
- package/src/elements/base/font.scss +27 -0
- package/src/elements/base/index.scss +3 -0
- package/src/elements/base/normalize.scss +290 -0
- package/src/elements/cfpb-button/cfpb-button-group.scss +10 -0
- package/src/elements/cfpb-button/cfpb-button-link.scss +96 -0
- package/src/elements/cfpb-button/cfpb-button.component.scss +11 -4
- package/src/elements/cfpb-button/cfpb-button.scss +222 -0
- package/src/elements/cfpb-button/index.js +28 -29
- package/src/elements/cfpb-button/vars.css +30 -0
- package/src/elements/cfpb-checkbox-icon/cfpb-checkbox-icon.component.scss +88 -0
- package/src/elements/cfpb-checkbox-icon/index.js +104 -0
- package/src/elements/cfpb-expandable/cfpb-expandable.component.scss +218 -0
- package/src/elements/cfpb-expandable/index.js +127 -0
- package/src/elements/cfpb-file-upload/cfpb-file-upload.component.scss +2 -2
- package/src/elements/cfpb-file-upload/index.js +16 -18
- package/src/elements/cfpb-form-alert/cfpb-form-alert.component.scss +36 -0
- package/src/elements/cfpb-form-alert/index.js +55 -0
- package/src/elements/cfpb-form-choice/cfpb-form-choice.component.scss +42 -81
- package/src/elements/cfpb-form-choice/index.js +58 -18
- package/src/elements/cfpb-form-search/cfpb-form-search.component.scss +54 -0
- package/src/elements/cfpb-form-search/index.js +194 -0
- package/src/elements/cfpb-form-search-input/cfpb-form-search-input.component.scss +217 -0
- package/src/elements/cfpb-form-search-input/index.js +136 -0
- package/src/elements/cfpb-icon-text/cfpb-icon-text.component.scss +32 -39
- package/src/elements/cfpb-icon-text/index.js +32 -104
- package/src/elements/cfpb-label/cfpb-label.component.scss +2 -2
- package/src/elements/cfpb-label/index.js +6 -9
- package/src/elements/cfpb-list/cfpb-list.component.scss +23 -0
- package/src/elements/cfpb-list/index.js +357 -0
- package/src/elements/cfpb-list/index.spec.js +169 -0
- package/src/elements/cfpb-list-item/cfpb-list-item.component.scss +69 -0
- package/src/elements/cfpb-list-item/index.js +215 -0
- package/src/elements/cfpb-pagination/cfpb-pagination.component.scss +2 -7
- package/src/elements/cfpb-pagination/index.js +6 -8
- package/src/elements/cfpb-select/cfpb-select.component.scss +241 -0
- package/src/elements/cfpb-select/index.js +381 -0
- package/src/elements/cfpb-tag-filter/cfpb-tag-filter.component.scss +6 -3
- package/src/elements/cfpb-tag-filter/index.js +15 -7
- package/src/elements/cfpb-tag-group/cfpb-tag-group.component.scss +2 -2
- package/src/elements/cfpb-tag-group/index.js +53 -6
- package/src/elements/cfpb-tag-topic/index.js +5 -7
- package/src/elements/cfpb-utilities/parse-child-data.js +50 -0
- package/src/elements/cfpb-utilities/parse-child-data.spec.js +56 -0
- package/src/elements/cfpb-utilities/search-service.js +46 -0
- package/src/elements/cfpb-utilities/search-service.spec.js +138 -0
- package/src/elements/cfpb-utilities/transition/transition.scss +98 -0
- package/src/elements/index.js +7 -1
- package/src/index.scss +11 -0
- package/src/tokens/abstracts/custom-props.json +1642 -0
- package/src/tokens/abstracts/vars.json +1319 -0
- package/src/tokens/cfpb-button/vars.json +436 -0
- package/src/utilities/transition/max-height-transition.js +74 -0
- package/dist/elements/cfpb-checkbox/index.js +0 -29
- package/src/elements/cfpb-multiselect/cfpb-multiselect.component.scss +0 -225
- package/src/elements/cfpb-multiselect/index.js +0 -444
- package/src/elements/cfpb-multiselect/multiselect-model.js +0 -288
- package/src/elements/cfpb-multiselect/multiselect-model.spec.js +0 -236
|
@@ -0,0 +1,375 @@
|
|
|
1
|
+
@use 'sass:math';
|
|
2
|
+
@use '../abstracts' as *;
|
|
3
|
+
|
|
4
|
+
/* ==========================================================================
|
|
5
|
+
Design System
|
|
6
|
+
Base styles
|
|
7
|
+
========================================================================== */
|
|
8
|
+
|
|
9
|
+
//
|
|
10
|
+
// Type hierarchy
|
|
11
|
+
//
|
|
12
|
+
body {
|
|
13
|
+
color: var(--text);
|
|
14
|
+
font-family: var(--font-stack);
|
|
15
|
+
font-size: math.div($base-font-size, 16) * 100%;
|
|
16
|
+
font-size-adjust: var(--font-adjust-body);
|
|
17
|
+
line-height: $base-line-height;
|
|
18
|
+
-webkit-font-smoothing: antialiased;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
button,
|
|
22
|
+
input,
|
|
23
|
+
select,
|
|
24
|
+
textarea {
|
|
25
|
+
// Must set these explicitly to override Normalize.css's provided default
|
|
26
|
+
// of `font-family: sans-serif;`
|
|
27
|
+
font-family: var(--font-stack);
|
|
28
|
+
|
|
29
|
+
// Characters in some languages, like Chinese, have a larger x-height,
|
|
30
|
+
// which will make the button taller than the input.
|
|
31
|
+
// Fix that by setting the line height on the button and the input.
|
|
32
|
+
line-height: math.div(19px, $base-font-size-px);
|
|
33
|
+
font-size-adjust: var(--font-adjust-body);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/*
|
|
37
|
+
* On iOS Safari the input is collapsed till it's clicked.
|
|
38
|
+
* This sets the default min width and height to what it would be if the
|
|
39
|
+
* appearance was a textfield.
|
|
40
|
+
*/
|
|
41
|
+
input[type='date'] {
|
|
42
|
+
display: revert;
|
|
43
|
+
min-width: 100px;
|
|
44
|
+
min-height: 35px;
|
|
45
|
+
padding-top: 0;
|
|
46
|
+
padding-bottom: 0;
|
|
47
|
+
|
|
48
|
+
&.a-text-input--full {
|
|
49
|
+
min-width: 100%;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// Globally remove inset border style from HR elements.
|
|
54
|
+
hr {
|
|
55
|
+
border: none;
|
|
56
|
+
border-top: 1px solid var(--gray-40);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
strong,
|
|
60
|
+
b {
|
|
61
|
+
font-weight: 600;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// Resetting default browser styling for margin-top on headings
|
|
65
|
+
h1,
|
|
66
|
+
h2,
|
|
67
|
+
h3,
|
|
68
|
+
h4,
|
|
69
|
+
h5,
|
|
70
|
+
h6 {
|
|
71
|
+
margin-top: 0;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
h1,
|
|
75
|
+
.h1 {
|
|
76
|
+
@include heading-1;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
h2,
|
|
80
|
+
.h2 {
|
|
81
|
+
@include heading-2;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
h3,
|
|
85
|
+
.h3 {
|
|
86
|
+
@include heading-3;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
h4,
|
|
90
|
+
.h4 {
|
|
91
|
+
@include heading-4;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
h5,
|
|
95
|
+
.h5 {
|
|
96
|
+
@include heading-5;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
h6,
|
|
100
|
+
.h6 {
|
|
101
|
+
@include heading-6;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.lead-paragraph {
|
|
105
|
+
@include u-lead-paragraph;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.superheading {
|
|
109
|
+
@include u-superheading;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
//
|
|
113
|
+
// Body copy element vertical margins
|
|
114
|
+
//
|
|
115
|
+
|
|
116
|
+
p,
|
|
117
|
+
ul,
|
|
118
|
+
ol,
|
|
119
|
+
dl,
|
|
120
|
+
figure,
|
|
121
|
+
table,
|
|
122
|
+
blockquote {
|
|
123
|
+
margin-top: 0;
|
|
124
|
+
margin-bottom: math.div(15px, $base-font-size-px) + em;
|
|
125
|
+
|
|
126
|
+
&:last-child {
|
|
127
|
+
margin-bottom: 0;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
p + ul,
|
|
132
|
+
p + ol {
|
|
133
|
+
margin-top: math.div(-5px, $base-font-size-px) + em;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
ul ul,
|
|
137
|
+
ol ol,
|
|
138
|
+
ul ol,
|
|
139
|
+
ol ul {
|
|
140
|
+
margin-top: math.div(8px, $base-font-size-px) + em;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
li {
|
|
144
|
+
margin-bottom: math.div(8px, $base-font-size-px) + em;
|
|
145
|
+
|
|
146
|
+
&:last-child,
|
|
147
|
+
nav & {
|
|
148
|
+
margin-bottom: 0;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
//
|
|
153
|
+
// Default link
|
|
154
|
+
//
|
|
155
|
+
|
|
156
|
+
a {
|
|
157
|
+
color: var(--link-text);
|
|
158
|
+
|
|
159
|
+
text-decoration-color: var(--link-underline);
|
|
160
|
+
text-decoration-line: underline;
|
|
161
|
+
text-decoration-thickness: 1px;
|
|
162
|
+
text-decoration-style: dotted;
|
|
163
|
+
text-underline-offset: 4.5px;
|
|
164
|
+
|
|
165
|
+
// Note: The class definitions below are only for use in
|
|
166
|
+
// demonstrating link states. Do not use in production.
|
|
167
|
+
|
|
168
|
+
&:visited,
|
|
169
|
+
&.visited {
|
|
170
|
+
text-decoration-color: var(--link-underline-visited);
|
|
171
|
+
color: var(--link-text-visited);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
&:hover,
|
|
175
|
+
&.hover {
|
|
176
|
+
text-decoration-style: solid;
|
|
177
|
+
text-decoration-color: var(--link-underline-hover);
|
|
178
|
+
color: var(--link-text-hover);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
&:focus,
|
|
182
|
+
&.focus {
|
|
183
|
+
outline: thin dotted;
|
|
184
|
+
outline-offset: 1px;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
&:active,
|
|
188
|
+
&.active {
|
|
189
|
+
text-decoration-style: solid;
|
|
190
|
+
text-decoration-color: var(--link-underline-active);
|
|
191
|
+
color: var(--link-text-active);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
nav a {
|
|
196
|
+
// Don't show underlines if they're part of a nav list.
|
|
197
|
+
text-decoration-line: none;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
//
|
|
201
|
+
// Lists
|
|
202
|
+
//
|
|
203
|
+
|
|
204
|
+
ul {
|
|
205
|
+
padding-left: math.div(18px, $base-font-size-px) + em;
|
|
206
|
+
list-style: square;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
ul ul {
|
|
210
|
+
list-style-type: circle;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
ol {
|
|
214
|
+
// Slightly larger than necessary, but this is the minimum value
|
|
215
|
+
// for numbers to not be partially in the margin in Internet Explorer.
|
|
216
|
+
padding-left: math.div(21px, $base-font-size-px) + em;
|
|
217
|
+
|
|
218
|
+
li:nth-last-child(n + 10),
|
|
219
|
+
li:nth-last-child(n + 10) ~ li {
|
|
220
|
+
// 0.5625rem
|
|
221
|
+
margin-left: math.div(9px, $base-font-size-px) + rem;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
ol ol {
|
|
226
|
+
list-style-type: lower-alpha;
|
|
227
|
+
|
|
228
|
+
// Negate margin added to lists longer than 9 items.
|
|
229
|
+
li {
|
|
230
|
+
margin-left: 0 !important;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
ol ol ol {
|
|
235
|
+
list-style-type: lower-roman;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
// Lists in the nav should be unstyled
|
|
239
|
+
nav ul,
|
|
240
|
+
nav ol,
|
|
241
|
+
nav ul ul,
|
|
242
|
+
nav ol ol {
|
|
243
|
+
list-style: none;
|
|
244
|
+
list-style-image: none;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
//
|
|
248
|
+
// Tables
|
|
249
|
+
//
|
|
250
|
+
|
|
251
|
+
caption {
|
|
252
|
+
margin-bottom: math.div(10px, $base-font-size-px) + em;
|
|
253
|
+
text-align: left;
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
th,
|
|
257
|
+
td {
|
|
258
|
+
padding: math.div(10px, $base-font-size-px) + em;
|
|
259
|
+
|
|
260
|
+
thead & {
|
|
261
|
+
// 10px / 14px
|
|
262
|
+
padding: math.div(10px, $size-v) + em;
|
|
263
|
+
background: var(--table-head-bg);
|
|
264
|
+
color: var(--table-head-text);
|
|
265
|
+
font-size: math.div(16px, $base-font-size-px) + em;
|
|
266
|
+
vertical-align: top;
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
thead,
|
|
271
|
+
tbody tr {
|
|
272
|
+
border-bottom: 1px solid var(--table-border);
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
th {
|
|
276
|
+
font-weight: 600;
|
|
277
|
+
text-align: left;
|
|
278
|
+
|
|
279
|
+
thead & {
|
|
280
|
+
// Heading elements may at times appear inside `th` elements
|
|
281
|
+
// as required for navigating the page's content with screenreaders.
|
|
282
|
+
// These rules prevent those headings from overriding the desired style
|
|
283
|
+
// of their parent `th` elements.
|
|
284
|
+
h2,
|
|
285
|
+
.h2,
|
|
286
|
+
h3,
|
|
287
|
+
.h3,
|
|
288
|
+
h4,
|
|
289
|
+
.h4,
|
|
290
|
+
h5,
|
|
291
|
+
.h5,
|
|
292
|
+
h6,
|
|
293
|
+
.h6 {
|
|
294
|
+
margin: 0;
|
|
295
|
+
font-size: inherit;
|
|
296
|
+
font-weight: inherit;
|
|
297
|
+
letter-spacing: inherit;
|
|
298
|
+
line-height: inherit;
|
|
299
|
+
text-transform: inherit;
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
//
|
|
305
|
+
// Block quote
|
|
306
|
+
//
|
|
307
|
+
|
|
308
|
+
blockquote {
|
|
309
|
+
margin-right: math.div(15px, $base-font-size-px) + em;
|
|
310
|
+
margin-left: math.div(15px, $base-font-size-px) + em;
|
|
311
|
+
|
|
312
|
+
// Tablet and above.
|
|
313
|
+
@include respond-to-min($bp-sm-min) {
|
|
314
|
+
margin-right: math.div(30px, $base-font-size-px) + em;
|
|
315
|
+
margin-left: math.div(30px, $base-font-size-px) + em;
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
//
|
|
320
|
+
// Form elements have been moved to the @cfpb/cfpb-forms component.
|
|
321
|
+
//
|
|
322
|
+
|
|
323
|
+
//
|
|
324
|
+
// Images
|
|
325
|
+
//
|
|
326
|
+
|
|
327
|
+
img {
|
|
328
|
+
max-width: 100%;
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
//
|
|
332
|
+
// Figure
|
|
333
|
+
//
|
|
334
|
+
|
|
335
|
+
figure {
|
|
336
|
+
// reset browser default side margins
|
|
337
|
+
margin-right: 0;
|
|
338
|
+
margin-left: 0;
|
|
339
|
+
|
|
340
|
+
img {
|
|
341
|
+
// Removes weird vertical spacing below images.
|
|
342
|
+
// TODO: Discuss whether this could just be universally applied to img
|
|
343
|
+
vertical-align: middle;
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
//
|
|
348
|
+
// Code blocks
|
|
349
|
+
//
|
|
350
|
+
|
|
351
|
+
pre,
|
|
352
|
+
code {
|
|
353
|
+
background: var(--code-bg);
|
|
354
|
+
border-radius: 4px;
|
|
355
|
+
color: var(--code-text);
|
|
356
|
+
font-family: 'Input Mono', Consolas, Monaco, 'Courier New', monospace;
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
code {
|
|
360
|
+
padding: math.div(3px, $size-code) + em math.div(3px, $size-code) + em 0;
|
|
361
|
+
font-size: math.div($size-code, $base-font-size-px) + em;
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
pre {
|
|
365
|
+
display: block;
|
|
366
|
+
padding: math.div(10px, $base-font-size-px) + em
|
|
367
|
+
math.div(15px, $base-font-size-px) + em;
|
|
368
|
+
white-space: pre-wrap;
|
|
369
|
+
overflow-wrap: break-word;
|
|
370
|
+
|
|
371
|
+
code {
|
|
372
|
+
padding: 0;
|
|
373
|
+
background-color: transparent;
|
|
374
|
+
}
|
|
375
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
@mixin licensed-font($path: '/static/fonts') {
|
|
2
|
+
/* ==========================================================================
|
|
3
|
+
Design System
|
|
4
|
+
Licensed font URLs – for CFPB use only.
|
|
5
|
+
========================================================================== */
|
|
6
|
+
|
|
7
|
+
@if $path {
|
|
8
|
+
// Refer to https://fontsource.org/fonts/source-sans-3/install for
|
|
9
|
+
// generating @font-face rules.
|
|
10
|
+
@font-face {
|
|
11
|
+
font-family: 'Source Sans 3 Variable';
|
|
12
|
+
font-style: normal;
|
|
13
|
+
font-display: fallback;
|
|
14
|
+
font-weight: 200 900;
|
|
15
|
+
src: url('#{$path}/source-sans-3-latin-wght-normal.woff2')
|
|
16
|
+
format('woff2-variations');
|
|
17
|
+
unicode-range:
|
|
18
|
+
U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
|
|
19
|
+
U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
|
|
20
|
+
U+2212, U+2215, U+FEFF, U+FFFD;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
:root {
|
|
24
|
+
--font-stack: 'Source Sans 3 Variable', arial, sans-serif;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
|
|
2
|
+
|
|
3
|
+
/* ==========================================================================
|
|
4
|
+
Base
|
|
5
|
+
========================================================================== */
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* 1. Set default font family to sans-serif.
|
|
9
|
+
* 2. Prevent iOS text size adjust after orientation change, without disabling
|
|
10
|
+
* user zoom.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
html {
|
|
14
|
+
font-family: sans-serif; /* 1 */
|
|
15
|
+
text-size-adjust: 100%; /* 2 */
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Remove default margin.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
body {
|
|
23
|
+
margin: 0;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/* ==========================================================================
|
|
27
|
+
Links
|
|
28
|
+
========================================================================== */
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Address `outline` inconsistency between Chrome and other browsers.
|
|
32
|
+
*/
|
|
33
|
+
|
|
34
|
+
a:focus {
|
|
35
|
+
outline: thin dotted;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Improve readability when focused and also mouse hovered in all browsers.
|
|
40
|
+
*/
|
|
41
|
+
|
|
42
|
+
a:active,
|
|
43
|
+
a:hover {
|
|
44
|
+
outline: 0;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/* ==========================================================================
|
|
48
|
+
Typography
|
|
49
|
+
========================================================================== */
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Address variable `h1` font-size and margin within `section` and `article`
|
|
53
|
+
* contexts in Firefox 4+, Safari 5, and Chrome.
|
|
54
|
+
*/
|
|
55
|
+
|
|
56
|
+
h1 {
|
|
57
|
+
font-size: 2em;
|
|
58
|
+
margin: 0.67em 0;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Address differences between Firefox and other browsers.
|
|
63
|
+
*/
|
|
64
|
+
|
|
65
|
+
hr {
|
|
66
|
+
box-sizing: content-box;
|
|
67
|
+
height: 0;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Correct font family set oddly in Safari 5 and Chrome.
|
|
72
|
+
*/
|
|
73
|
+
|
|
74
|
+
code,
|
|
75
|
+
kbd,
|
|
76
|
+
pre,
|
|
77
|
+
samp {
|
|
78
|
+
font-family: monospace, serif;
|
|
79
|
+
font-size: 1em;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Improve readability of pre-formatted text in all browsers.
|
|
84
|
+
*/
|
|
85
|
+
|
|
86
|
+
pre {
|
|
87
|
+
white-space: pre-wrap;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Set consistent quote types.
|
|
92
|
+
*/
|
|
93
|
+
|
|
94
|
+
q {
|
|
95
|
+
quotes: '\201C' '\201D' '\2018' '\2019';
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Address inconsistent and variable font size in all browsers.
|
|
100
|
+
*/
|
|
101
|
+
|
|
102
|
+
small {
|
|
103
|
+
font-size: 80%;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
|
|
108
|
+
*/
|
|
109
|
+
|
|
110
|
+
sub,
|
|
111
|
+
sup {
|
|
112
|
+
font-size: 75%;
|
|
113
|
+
line-height: 0;
|
|
114
|
+
position: relative;
|
|
115
|
+
vertical-align: baseline;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
sup {
|
|
119
|
+
top: -0.5em;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
sub {
|
|
123
|
+
bottom: -0.25em;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/* ==========================================================================
|
|
127
|
+
Figures
|
|
128
|
+
========================================================================== */
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Address margin not present in IE 8/9 and Safari 5.
|
|
132
|
+
*/
|
|
133
|
+
|
|
134
|
+
figure {
|
|
135
|
+
margin: 0;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
/* ==========================================================================
|
|
139
|
+
Forms
|
|
140
|
+
========================================================================== */
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Define consistent border, margin, and padding.
|
|
144
|
+
*/
|
|
145
|
+
|
|
146
|
+
fieldset {
|
|
147
|
+
border: 1px solid #c0c0c0;
|
|
148
|
+
margin: 0 2px;
|
|
149
|
+
padding: 0.35em 0.625em 0.75em;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* 1. Correct `color` not being inherited in IE 8/9.
|
|
154
|
+
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
|
|
155
|
+
*/
|
|
156
|
+
|
|
157
|
+
legend {
|
|
158
|
+
border: 0; /* 1 */
|
|
159
|
+
padding: 0; /* 2 */
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* 1. Correct font family not being inherited in all browsers.
|
|
164
|
+
* 2. Correct font size not being inherited in all browsers.
|
|
165
|
+
* 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
|
|
166
|
+
*/
|
|
167
|
+
|
|
168
|
+
button,
|
|
169
|
+
input,
|
|
170
|
+
select,
|
|
171
|
+
textarea {
|
|
172
|
+
font-family: inherit; /* 1 */
|
|
173
|
+
font-size: 100%; /* 2 */
|
|
174
|
+
margin: 0; /* 3 */
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
|
|
179
|
+
* the UA stylesheet.
|
|
180
|
+
*/
|
|
181
|
+
|
|
182
|
+
button,
|
|
183
|
+
input {
|
|
184
|
+
line-height: normal;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Address inconsistent `text-transform` inheritance for `button` and `select`.
|
|
189
|
+
* All other form control elements do not inherit `text-transform` values.
|
|
190
|
+
* Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
|
|
191
|
+
* Correct `select` style inheritance in Firefox 4+ and Opera.
|
|
192
|
+
*/
|
|
193
|
+
|
|
194
|
+
button,
|
|
195
|
+
select {
|
|
196
|
+
text-transform: none;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
|
|
201
|
+
* and `video` controls.
|
|
202
|
+
* 2. Correct inability to style clickable `input` types in iOS.
|
|
203
|
+
* 3. Improve usability and consistency of cursor style between image-type
|
|
204
|
+
* `input` and others.
|
|
205
|
+
*/
|
|
206
|
+
|
|
207
|
+
button,
|
|
208
|
+
html input[type="button"], /* 1 */
|
|
209
|
+
input[type="reset"],
|
|
210
|
+
input[type="submit"] {
|
|
211
|
+
/* TODO: stylelint wants to convert `appearance: button` to `appearance: auto`
|
|
212
|
+
Investigate why. */
|
|
213
|
+
/* stylelint-disable */
|
|
214
|
+
appearance: button; /* 2 */
|
|
215
|
+
/* stylelint-enable */
|
|
216
|
+
cursor: pointer; /* 3 */
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
/**
|
|
220
|
+
* Re-set default cursor for disabled elements.
|
|
221
|
+
*/
|
|
222
|
+
|
|
223
|
+
button[disabled],
|
|
224
|
+
html input[disabled] {
|
|
225
|
+
cursor: default;
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
* 1. Address box sizing set to `content-box` in IE 8/9/10.
|
|
230
|
+
* 2. Remove excess padding in IE 8/9/10.
|
|
231
|
+
*/
|
|
232
|
+
|
|
233
|
+
input[type='checkbox'],
|
|
234
|
+
input[type='radio'] {
|
|
235
|
+
box-sizing: border-box; /* 1 */
|
|
236
|
+
padding: 0; /* 2 */
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
|
|
241
|
+
* 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome.
|
|
242
|
+
*/
|
|
243
|
+
|
|
244
|
+
input[type='search'] {
|
|
245
|
+
appearance: textfield; /* 1 */
|
|
246
|
+
box-sizing: content-box; /* 2 */
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
/**
|
|
250
|
+
* Remove inner padding and search cancel button in Safari 5 and Chrome
|
|
251
|
+
* on OS X.
|
|
252
|
+
*/
|
|
253
|
+
|
|
254
|
+
input[type='search']::-webkit-search-cancel-button,
|
|
255
|
+
input[type='search']::-webkit-search-decoration {
|
|
256
|
+
appearance: none;
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
/**
|
|
260
|
+
* Remove inner padding and border in Firefox 4+.
|
|
261
|
+
*/
|
|
262
|
+
|
|
263
|
+
button::-moz-focus-inner,
|
|
264
|
+
input::-moz-focus-inner {
|
|
265
|
+
border: 0;
|
|
266
|
+
padding: 0;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
/**
|
|
270
|
+
* 1. Remove default vertical scrollbar in IE 8/9.
|
|
271
|
+
* 2. Improve readability and alignment in all browsers.
|
|
272
|
+
*/
|
|
273
|
+
|
|
274
|
+
textarea {
|
|
275
|
+
overflow: auto; /* 1 */
|
|
276
|
+
vertical-align: top; /* 2 */
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
/* ==========================================================================
|
|
280
|
+
Tables
|
|
281
|
+
========================================================================== */
|
|
282
|
+
|
|
283
|
+
/**
|
|
284
|
+
* Remove most spacing between table cells.
|
|
285
|
+
*/
|
|
286
|
+
|
|
287
|
+
table {
|
|
288
|
+
border-collapse: collapse;
|
|
289
|
+
border-spacing: 0;
|
|
290
|
+
}
|