@coopdigital/styles 0.3.0 → 0.4.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/dist/main.css CHANGED
@@ -1,3 +1,429 @@
1
+ @import "https://cdn.fonts.net/t/1.css?apiType=css&projectid=d984f56e-f9bd-4c14-bb29-2558d7ff893e";
2
+ :root {
3
+ /* Core brands */
4
+ --color-brand-coop: #00a1cc;
5
+ --color-brand-deals: #d12430;
6
+ /* Core brands (backwards compatibility) */
7
+ --color-brand: var(--color-brand-coop);
8
+ --color-deal-red: var(--color-brand-deals);
9
+ /* Colours */
10
+ --color-white: #fff;
11
+ --color-black: #000;
12
+ /* Text greys */
13
+ --color-text: #282828;
14
+ --color-text-alt: #595959;
15
+ /* Tints */
16
+ --color-tint-purple: #fef2ff;
17
+ --color-tint-pink: #ffeaf2;
18
+ --color-tint-green: #f9fbdd;
19
+ --color-tint-orange: #ffede0;
20
+ --color-tint-red: #ffe8e9;
21
+ --color-tint-yellow: #fff6da;
22
+ --color-tint-lilac: #f2f2ff;
23
+ --color-tint-blue: #e6f6fa;
24
+ /* Grey backgrounds */
25
+ --color-grey-mid-light: #d8d8d8;
26
+ --color-grey-mid: #c4c4c4;
27
+ --color-grey-dark: #6e6e6e;
28
+ --color-grey-light: #f3f3f3;
29
+ --color-grey-neutral-light: #f3f3f3;
30
+ --color-grey-neutral-warm: #f5f5f0;
31
+ --color-grey-neutral-cool: #dde9ed;
32
+ --color-grey-neutral-cool-light: #f2f4f7;
33
+ /* Links */
34
+ --color-link: #00729a;
35
+ --color-link-hover: #00394e;
36
+ --color-link-focus: #8d44d8;
37
+ --color-link-active: #002c3d;
38
+ --color-link-visited: #002c3d;
39
+ --color-focus-ring: #8d44d8;
40
+ /* Reintroducing Co-op branding colours */
41
+ --color-navy: #003057;
42
+ --color-light-purple: #f8beff;
43
+ --color-light-pink: #ff94bf;
44
+ --color-light-green: #e1ec54;
45
+ --color-light-orange: #ffa465;
46
+ --color-light-red: #ff8c90;
47
+ --color-light-yellow: #ffd245;
48
+ --color-light-lilac: #bfbffd;
49
+ --color-light-blue: #bfe7f2;
50
+ --color-dark-purple: #c164c9;
51
+ --color-dark-pink: #f85792;
52
+ --color-dark-green: #819c00;
53
+ --color-dark-orange: #e85a00;
54
+ --color-dark-red: #f14f57;
55
+ --color-dark-yellow: #c08a00;
56
+ --color-dark-lilac: #6762f9;
57
+ /* Shades in use */
58
+ --color-green-light-6: #b9e277;
59
+ --color-red-dark-4: #ba2327;
60
+ /* Alternative colours */
61
+ --color-alt-light-blue: #99e0f5;
62
+ --color-alt-light-pink: #ffdbdb;
63
+ }
64
+
65
+ :root {
66
+ --ui-shadow: 0 2px 4px 0 rgb(0 0 0 / 15%);
67
+ --ui-shadow-hover: 0 2px 4px 0 rgb(0 0 0 / 35%);
68
+ --ui-border-radius: 4px;
69
+ --ui-transition-hover: 0.1s ease-out;
70
+ --ui-transition-hover-property: background-color, color;
71
+ }
72
+
73
+ :root {
74
+ /* Spacing */
75
+ --spacing-64: 4rem;
76
+ --spacing-48: 3rem;
77
+ --spacing-32: 2rem;
78
+ --spacing-24: 1.5rem;
79
+ --spacing-16: 1rem;
80
+ --spacing-12: 0.75rem;
81
+ --spacing-8: 0.5rem;
82
+ --spacing-4: 0.25rem;
83
+ --spacing-2: 0.125rem;
84
+ }
85
+
86
+ :root {
87
+ --font-family: "Avenir-Next", "Helvetica Neue", Helvetica, Arial, sans-serif;
88
+ --font-family-headline: "Co-opHeadline", "Impact", Helvetica, Arial, sans-serif;
89
+ /* Typography Sizes */
90
+ --type-size-12: 0.75rem;
91
+ --type-size-14: 0.875rem;
92
+ --type-size-16: 1rem;
93
+ --type-size-18: 1.125rem;
94
+ --type-size-20: 1.25rem;
95
+ --type-size-22: 1.375rem;
96
+ --type-size-24: 1.5rem;
97
+ --type-size-26: 1.625rem;
98
+ --type-size-28: 1.75rem;
99
+ --type-size-30: 1.875rem;
100
+ --type-size-32: 2rem;
101
+ --type-size-40: 2.5rem;
102
+ --type-size-46: 2.875rem;
103
+ --type-size-48: 3rem;
104
+ --type-size-56: 3.5rem;
105
+ --type-size-64: 4rem;
106
+ --type-size-82: 5.125rem;
107
+ /* Typography Line Height */
108
+ --type-line-height-default: 1.5;
109
+ --type-line-height-tight: 1.25;
110
+ --type-line-height-headline: 1.05;
111
+ }
112
+
113
+ *,
114
+ *::before,
115
+ *::after {
116
+ box-sizing: border-box;
117
+ }
118
+
119
+ html {
120
+ -moz-text-size-adjust: none;
121
+ -webkit-text-size-adjust: none;
122
+ text-size-adjust: none;
123
+ }
124
+
125
+ html,
1
126
  body {
2
- background-color: white;
127
+ font-family: "Avenir Next", sans-serif;
128
+ font-size: var(--type-size-default);
129
+ color: var(--color-text);
130
+ }
131
+
132
+ body {
133
+ margin: 0;
134
+ padding: 0;
135
+ border: 0;
136
+ min-height: 100vh;
137
+ line-height: var(--type-line-height);
138
+ -webkit-font-smoothing: antialiased;
139
+ -moz-osx-font-smoothing: grayscale;
140
+ }
141
+
142
+ body,
143
+ h1,
144
+ h2,
145
+ h3,
146
+ h4,
147
+ p,
148
+ figure,
149
+ blockquote,
150
+ dl,
151
+ dd {
152
+ margin-block-end: 0;
153
+ }
154
+
155
+ h1,
156
+ h2,
157
+ h3,
158
+ h4,
159
+ h5,
160
+ h6,
161
+ ul,
162
+ ol,
163
+ p,
164
+ address {
165
+ margin-top: 0;
166
+ }
167
+
168
+ input,
169
+ button,
170
+ textarea,
171
+ select {
172
+ font-family: inherit;
173
+ font-size: inherit;
174
+ }
175
+
176
+ button,
177
+ input,
178
+ label {
179
+ line-height: 1.1;
180
+ }
181
+
182
+ h1,
183
+ h2,
184
+ h3,
185
+ h4 {
186
+ text-wrap: balance;
187
+ }
188
+
189
+ a:not([class]) {
190
+ text-decoration-skip-ink: auto;
191
+ color: currentcolor;
192
+ }
193
+
194
+ img,
195
+ picture {
196
+ max-width: 100%;
197
+ display: block;
198
+ }
199
+
200
+ textarea:not([rows]) {
201
+ min-height: 10rem;
202
+ }
203
+
204
+ :target {
205
+ scroll-margin-block: 5ex;
206
+ }
207
+
208
+ @font-face {
209
+ font-family: "Avenir-Next";
210
+ font-weight: normal;
211
+ font-display: swap;
212
+ src: url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextRegular_normal_normal.woff2") format("woff2"), url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextRegular_normal_normal.woff") format("woff");
213
+ }
214
+ @font-face {
215
+ font-family: "Avenir-Next";
216
+ font-weight: 500;
217
+ font-display: swap;
218
+ src: url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextMedium_normal_normal.woff2") format("woff2"), url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextMedium_normal_normal.woff") format("woff");
219
+ }
220
+ @font-face {
221
+ font-family: "Avenir-Next";
222
+ font-weight: 600;
223
+ font-display: swap;
224
+ src: url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextDemi_normal_normal.woff2") format("woff2"), url("https://coop-fonts.s3.eu-west-1.amazonaws.com/AvenirNext/AvenirNextDemi_normal_normal.woff") format("woff");
225
+ }
226
+ @font-face {
227
+ font-family: "Co-opHeadline";
228
+ font-weight: 700;
229
+ font-display: swap;
230
+ src: url("https://coop-fonts.s3.eu-west-1.amazonaws.com/Co-opHeadline/Co-opHeadline-Bold.woff2") format("woff2"), url("https://coop-fonts.s3.eu-west-1.amazonaws.com/Co-opHeadline/Co-opHeadline-Bold.woff") format("woff");
231
+ }
232
+ a,
233
+ .coop-link {
234
+ color: var(--color-link);
235
+ text-decoration: underline;
236
+ }
237
+ a:hover,
238
+ .coop-link:hover {
239
+ color: var(--color-link-hover);
240
+ }
241
+ a:active, a:focus,
242
+ .coop-link:active,
243
+ .coop-link:focus {
244
+ transition: none;
245
+ outline: 2px solid var(--color-focus-ring);
246
+ outline-offset: 3px;
247
+ }
248
+
249
+ button.coop-link {
250
+ display: inline;
251
+ margin: 0;
252
+ padding: 0;
253
+ appearance: none;
254
+ background: none;
255
+ border: 0;
256
+ border-radius: 0;
257
+ cursor: pointer;
258
+ text-align: inherit;
259
+ }
260
+
261
+ .coop-link-white {
262
+ color: var(--color-white);
263
+ text-decoration: underline;
264
+ }
265
+ .coop-link-white:hover {
266
+ color: currentcolor;
267
+ }
268
+
269
+ .coop-link-black {
270
+ color: var(--color-black);
271
+ }
272
+ .coop-link-black:hover {
273
+ color: currentcolor;
274
+ }
275
+
276
+ p + *,
277
+ ul + *,
278
+ ol + * {
279
+ padding-top: var(--spacing-16);
280
+ }
281
+ @media (min-width: 48em) {
282
+ p + *,
283
+ ul + *,
284
+ ol + * {
285
+ padding-top: var(--spacing-32);
286
+ }
287
+ }
288
+
289
+ p {
290
+ margin-bottom: var(--spacing-16);
291
+ }
292
+
293
+ ul,
294
+ ol {
295
+ padding-left: var(--spacing-24);
296
+ /*
297
+ margin-bottom: var(--spacing-8);
298
+
299
+ @media (min-width: $mq-medium) {
300
+ margin-bottom: var(--spacing-16);
301
+ }
302
+ */
303
+ }
304
+
305
+ h1.coop-t-mega {
306
+ font-size: var(--type-size-48);
307
+ margin-bottom: var(--spacing-8);
308
+ }
309
+ @media (min-width: 48em) {
310
+ h1.coop-t-mega {
311
+ font-size: var(--type-size-56);
312
+ margin-bottom: var(--spacing-16);
313
+ }
314
+ }
315
+
316
+ h1 {
317
+ font-size: var(--type-size-30);
318
+ margin-bottom: var(--spacing-8);
319
+ }
320
+ @media (min-width: 48em) {
321
+ h1 {
322
+ font-size: var(--type-size-46);
323
+ margin-bottom: var(--spacing-16);
324
+ }
325
+ }
326
+
327
+ h2 {
328
+ font-size: var(--type-size-26);
329
+ margin-bottom: var(--spacing-8);
330
+ }
331
+ @media (min-width: 48em) {
332
+ h2 {
333
+ font-size: var(--type-size-32);
334
+ margin-bottom: var(--spacing-16);
335
+ }
336
+ }
337
+
338
+ h3 {
339
+ font-size: var(--type-size-26);
340
+ margin-bottom: var(--spacing-8);
341
+ }
342
+ @media (min-width: 48em) {
343
+ h3 {
344
+ font-size: var(--type-size-26);
345
+ margin-bottom: var(--spacing-16);
346
+ }
347
+ }
348
+
349
+ h4,
350
+ h5,
351
+ h6 {
352
+ font-size: var(--type-size-18);
353
+ margin-bottom: var(--spacing-8);
354
+ }
355
+ @media (min-width: 48em) {
356
+ h4,
357
+ h5,
358
+ h6 {
359
+ font-size: var(--type-size-22);
360
+ margin-bottom: var(--spacing-16);
361
+ }
362
+ }
363
+
364
+ .coop-t-headline {
365
+ font-family: var(--font-family-headline);
366
+ line-height: 105%;
367
+ }
368
+
369
+ .coop-t-headline-upper {
370
+ font-family: var(--font-family-headline);
371
+ text-transform: uppercase;
372
+ line-height: 100%;
373
+ }
374
+
375
+ h1.coop-t-headline-mega {
376
+ font-family: var(--font-family-headline);
377
+ color: var(--color-brand-coop);
378
+ font-size: var(--type-size-48);
379
+ }
380
+ @media (min-width: 37.5em) {
381
+ h1.coop-t-headline-mega {
382
+ font-size: var(--type-size-64);
383
+ }
384
+ }
385
+ @media (min-width: 48em) {
386
+ h1.coop-t-headline-mega {
387
+ font-size: var(--type-size-82);
388
+ }
389
+ }
390
+
391
+ h1.coop-t-headline {
392
+ color: var(--color-brand-coop);
393
+ font-size: var(--type-size-40);
394
+ }
395
+ @media (min-width: 37.5em) {
396
+ h1.coop-t-headline {
397
+ font-size: var(--type-size-48);
398
+ }
399
+ }
400
+ @media (min-width: 48em) {
401
+ h1.coop-t-headline {
402
+ font-size: var(--type-size-64);
403
+ }
404
+ }
405
+
406
+ .coop-t-lead-p {
407
+ font-size: var(--type-size-22);
408
+ margin-bottom: var(--spacing-16);
409
+ }
410
+ @media (min-width: 48em) {
411
+ .coop-t-lead-p {
412
+ font-size: var(--type-size-26);
413
+ }
414
+ }
415
+
416
+ hr {
417
+ display: block;
418
+ border-style: solid;
419
+ border-color: var(--color-grey-mid);
420
+ border-width: 0 0 1px 0;
421
+ height: 0;
422
+ color: var(--color-grey-mid);
423
+ margin: var(--spacing-16) 0;
424
+ }
425
+ @media (min-width: 48em) {
426
+ hr {
427
+ margin: var(--spacing-32) 0;
428
+ }
3
429
  }
@@ -1,6 +1,3 @@
1
- /* ===================================
2
- * Fonts - Co-op Front-end Foundations
3
- * =================================== */
4
1
  @import "https://cdn.fonts.net/t/1.css?apiType=css&projectid=d984f56e-f9bd-4c14-bb29-2558d7ff893e";
5
2
  @font-face {
6
3
  font-family: "Avenir-Next";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@coopdigital/styles",
3
3
  "type": "module",
4
- "version": "0.3.0",
4
+ "version": "0.4.0",
5
5
  "private": false,
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -22,5 +22,5 @@
22
22
  "glob": "^11.0.1",
23
23
  "sass-embedded": "^1.85.0"
24
24
  },
25
- "gitHead": "b4f150b50ac188607cc82d50730660eae296c53f"
25
+ "gitHead": "500daac771417639d21d083af67e4570ad1da09b"
26
26
  }
package/src/main.scss CHANGED
@@ -1,5 +1,3 @@
1
- body {
2
- background-color: white;
3
- }
4
-
5
- // TODO: add vars and reset scss import
1
+ @use "./vars";
2
+ @use "./reset";
3
+ @use "./typography";
@@ -1,7 +1,3 @@
1
- /* ===================================
2
- * Fonts - Co-op Front-end Foundations
3
- * =================================== */
4
-
5
1
  @import "https://cdn.fonts.net/t/1.css?apiType=css&projectid=d984f56e-f9bd-4c14-bb29-2558d7ff893e";
6
2
 
7
3
  @font-face {