govuk_publishing_components 35.15.5 → 35.16.1

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 (108) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/config/govuk_publishing_components_manifest.js +1 -0
  3. data/app/assets/images/option-select/input-icon.svg +3 -0
  4. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-page-views.js +37 -15
  5. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-video-tracker.js +7 -1
  6. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/pii-remover.js +1 -1
  7. data/app/assets/javascripts/govuk_publishing_components/components/option-select.js +312 -0
  8. data/app/assets/stylesheets/component_guide/application.scss +6 -6
  9. data/app/assets/stylesheets/govuk_publishing_components/_all_components.scss +1 -0
  10. data/app/assets/stylesheets/govuk_publishing_components/components/_action-link.scss +15 -15
  11. data/app/assets/stylesheets/govuk_publishing_components/components/_big-number.scss +3 -2
  12. data/app/assets/stylesheets/govuk_publishing_components/components/_breadcrumbs.scss +3 -3
  13. data/app/assets/stylesheets/govuk_publishing_components/components/_button.scss +2 -2
  14. data/app/assets/stylesheets/govuk_publishing_components/components/_cards.scss +5 -5
  15. data/app/assets/stylesheets/govuk_publishing_components/components/_contents-list.scss +1 -1
  16. data/app/assets/stylesheets/govuk_publishing_components/components/_contextual-sidebar.scss +1 -1
  17. data/app/assets/stylesheets/govuk_publishing_components/components/_document-list.scss +2 -2
  18. data/app/assets/stylesheets/govuk_publishing_components/components/_image-card.scss +31 -5
  19. data/app/assets/stylesheets/govuk_publishing_components/components/_layout-super-navigation-header.scss +40 -35
  20. data/app/assets/stylesheets/govuk_publishing_components/components/_option-select.scss +172 -0
  21. data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav.scss +23 -19
  22. data/app/assets/stylesheets/govuk_publishing_components/components/_table.scss +6 -6
  23. data/app/assets/stylesheets/govuk_publishing_components/components/_tabs.scss +2 -1
  24. data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_steps.scss +3 -1
  25. data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_typography.scss +4 -4
  26. data/app/assets/stylesheets/govuk_publishing_components/components/mixins/_media-down.scss +2 -2
  27. data/app/views/govuk_publishing_components/components/_attachment.html.erb +1 -1
  28. data/app/views/govuk_publishing_components/components/_contents_list.html.erb +20 -10
  29. data/app/views/govuk_publishing_components/components/_image_card.html.erb +8 -2
  30. data/app/views/govuk_publishing_components/components/_option_select.html.erb +71 -0
  31. data/app/views/govuk_publishing_components/components/_previous_and_next_navigation.html.erb +6 -6
  32. data/app/views/govuk_publishing_components/components/docs/contents_list.yml +1 -0
  33. data/app/views/govuk_publishing_components/components/docs/image_card.yml +13 -0
  34. data/app/views/govuk_publishing_components/components/docs/option_select.yml +343 -0
  35. data/config/locales/ar.yml +5 -0
  36. data/config/locales/az.yml +5 -0
  37. data/config/locales/be.yml +5 -0
  38. data/config/locales/bg.yml +5 -0
  39. data/config/locales/bn.yml +5 -0
  40. data/config/locales/cs.yml +5 -0
  41. data/config/locales/cy.yml +5 -0
  42. data/config/locales/da.yml +5 -0
  43. data/config/locales/de.yml +5 -0
  44. data/config/locales/dr.yml +5 -0
  45. data/config/locales/el.yml +5 -0
  46. data/config/locales/en.yml +6 -1
  47. data/config/locales/es-419.yml +5 -0
  48. data/config/locales/es.yml +5 -0
  49. data/config/locales/et.yml +5 -0
  50. data/config/locales/fa.yml +5 -0
  51. data/config/locales/fi.yml +5 -0
  52. data/config/locales/fr.yml +5 -0
  53. data/config/locales/gd.yml +5 -0
  54. data/config/locales/gu.yml +5 -0
  55. data/config/locales/he.yml +5 -0
  56. data/config/locales/hi.yml +5 -0
  57. data/config/locales/hr.yml +5 -0
  58. data/config/locales/hu.yml +5 -0
  59. data/config/locales/hy.yml +5 -0
  60. data/config/locales/id.yml +5 -0
  61. data/config/locales/is.yml +5 -0
  62. data/config/locales/it.yml +5 -0
  63. data/config/locales/ja.yml +5 -0
  64. data/config/locales/ka.yml +5 -0
  65. data/config/locales/kk.yml +5 -0
  66. data/config/locales/ko.yml +5 -0
  67. data/config/locales/lt.yml +5 -0
  68. data/config/locales/lv.yml +5 -0
  69. data/config/locales/ms.yml +5 -0
  70. data/config/locales/mt.yml +5 -0
  71. data/config/locales/nl.yml +5 -0
  72. data/config/locales/no.yml +5 -0
  73. data/config/locales/pa-pk.yml +5 -0
  74. data/config/locales/pa.yml +5 -0
  75. data/config/locales/pl.yml +5 -0
  76. data/config/locales/ps.yml +5 -0
  77. data/config/locales/pt.yml +5 -0
  78. data/config/locales/ro.yml +5 -0
  79. data/config/locales/ru.yml +5 -0
  80. data/config/locales/si.yml +5 -0
  81. data/config/locales/sk.yml +5 -0
  82. data/config/locales/sl.yml +5 -0
  83. data/config/locales/so.yml +5 -0
  84. data/config/locales/sq.yml +5 -0
  85. data/config/locales/sr.yml +5 -0
  86. data/config/locales/sv.yml +5 -0
  87. data/config/locales/sw.yml +5 -0
  88. data/config/locales/ta.yml +5 -0
  89. data/config/locales/th.yml +5 -0
  90. data/config/locales/tk.yml +5 -0
  91. data/config/locales/tr.yml +5 -0
  92. data/config/locales/uk.yml +5 -0
  93. data/config/locales/ur.yml +5 -0
  94. data/config/locales/uz.yml +5 -0
  95. data/config/locales/vi.yml +5 -0
  96. data/config/locales/zh-hk.yml +5 -0
  97. data/config/locales/zh-tw.yml +5 -0
  98. data/config/locales/zh.yml +5 -0
  99. data/lib/govuk_publishing_components/presenters/contents_list_helper.rb +8 -0
  100. data/lib/govuk_publishing_components/presenters/image_card_helper.rb +6 -2
  101. data/lib/govuk_publishing_components/presenters/meta_tags.rb +3 -0
  102. data/lib/govuk_publishing_components/version.rb +1 -1
  103. data/node_modules/axe-core/axe.js +6 -6
  104. data/node_modules/axe-core/axe.min.js +2 -2
  105. data/node_modules/axe-core/locales/_template.json +4 -4
  106. data/node_modules/axe-core/package.json +1 -1
  107. data/node_modules/axe-core/sri-history.json +4 -0
  108. metadata +7 -2
@@ -18,7 +18,7 @@
18
18
  color: govuk-colour("white");
19
19
  }
20
20
 
21
- .gem-c-breadcrumbs--inverse .govuk-breadcrumbs__list-item:before {
21
+ .gem-c-breadcrumbs--inverse .govuk-breadcrumbs__list-item::before {
22
22
  border-color: govuk-colour("white");
23
23
  }
24
24
 
@@ -40,11 +40,11 @@
40
40
  padding-bottom: 14px;
41
41
  }
42
42
 
43
- .govuk-breadcrumbs__list-item:before {
43
+ .govuk-breadcrumbs__list-item::before {
44
44
  top: 18px;
45
45
  }
46
46
 
47
- .govuk-breadcrumbs__link:after {
47
+ .govuk-breadcrumbs__link::after {
48
48
  content: "";
49
49
  position: absolute;
50
50
  top: 0;
@@ -65,7 +65,7 @@
65
65
  text-decoration: none;
66
66
  }
67
67
 
68
- &:before {
68
+ &::before {
69
69
  content: none;
70
70
  }
71
71
  }
@@ -97,7 +97,7 @@
97
97
  text-decoration: none;
98
98
  }
99
99
 
100
- &:before {
100
+ &::before {
101
101
  content: none;
102
102
  }
103
103
  }
@@ -65,7 +65,7 @@
65
65
 
66
66
  .gem-c-cards__link {
67
67
  // Make the entire list item area clickable
68
- &:after {
68
+ &::after {
69
69
  bottom: 0;
70
70
  content: "";
71
71
  left: 0;
@@ -74,7 +74,7 @@
74
74
  top: 0;
75
75
  }
76
76
 
77
- &:before {
77
+ &::before {
78
78
  $dimension: 7px;
79
79
  $width: 3px;
80
80
 
@@ -90,13 +90,13 @@
90
90
  }
91
91
 
92
92
  &:hover {
93
- &:before {
93
+ &::before {
94
94
  border-color: $govuk-link-hover-colour;
95
95
  }
96
96
  }
97
97
 
98
98
  &:focus {
99
- &:before {
99
+ &::before {
100
100
  border-color: $govuk-focus-text-colour;
101
101
  }
102
102
  }
@@ -120,7 +120,7 @@
120
120
  margin-bottom: govuk-spacing(1);
121
121
  }
122
122
 
123
- .gem-c-cards__link:before {
123
+ .gem-c-cards__link::before {
124
124
  display: none;
125
125
  }
126
126
  }
@@ -50,7 +50,7 @@
50
50
  padding-left: $contents-spacing;
51
51
  padding-right: $contents-spacing;
52
52
 
53
- &:before {
53
+ &::before {
54
54
  content: "—";
55
55
  position: absolute;
56
56
  left: 0;
@@ -37,7 +37,7 @@
37
37
  border-top: 7px solid #fed700;
38
38
  position: relative;
39
39
 
40
- &:before {
40
+ &::before {
41
41
  content: "";
42
42
  position: absolute;
43
43
  left: 0;
@@ -135,7 +135,7 @@
135
135
  padding-left: govuk-spacing(5);
136
136
  padding-top: govuk-spacing(2);
137
137
 
138
- &:before {
138
+ &::before {
139
139
  content: "—";
140
140
  position: absolute;
141
141
  left: 0;
@@ -146,7 +146,7 @@
146
146
  padding: 0;
147
147
  padding-bottom: govuk-spacing(2);
148
148
 
149
- &:before {
149
+ &::before {
150
150
  display: none;
151
151
  }
152
152
  }
@@ -41,6 +41,13 @@
41
41
  }
42
42
  }
43
43
 
44
+ @include govuk-media-query($from: tablet) {
45
+ .gem-c-image-card.gem-c-image-card--two-thirds {
46
+ margin: 0 (- govuk-spacing(3)) govuk-spacing(6) (- govuk-spacing(3));
47
+ display: block;
48
+ }
49
+ }
50
+
44
51
  @include govuk-media-query($from: mobile, $until: tablet) {
45
52
  .gem-c-image-card {
46
53
  margin: 0 (- govuk-spacing(3)) govuk-spacing(6) (- govuk-spacing(3));
@@ -53,6 +60,25 @@
53
60
  .gem-c-image-card__text-wrapper {
54
61
  @include govuk-grid-column($width: one-half, $at: mobile);
55
62
  }
63
+
64
+ .gem-c-image-card__image-wrapper.gem-c-image-card__image-wrapper--one-third {
65
+ @include govuk-grid-column($width: one-third, $float: right, $at: mobile);
66
+ }
67
+
68
+ .gem-c-image-card__text-wrapper.gem-c-image-card__text-wrapper--two-thirds {
69
+ @include govuk-grid-column($width: two-thirds, $float: right, $at: mobile);
70
+ }
71
+ }
72
+
73
+ @include govuk-media-query($from: tablet) {
74
+ .gem-c-image-card__image-wrapper.gem-c-image-card__image-wrapper--one-third {
75
+ @include govuk-grid-column($width: one-third, $float: right, $at: tablet);
76
+ }
77
+
78
+ .gem-c-image-card__text-wrapper.gem-c-image-card__text-wrapper--two-thirds {
79
+ @include govuk-grid-column($width: two-thirds, $float: right, $at: tablet);
80
+ padding-left: 0;
81
+ }
56
82
  }
57
83
 
58
84
  .gem-c-image-card__image {
@@ -77,7 +103,7 @@
77
103
  // the after element extends the link to cover the image, removing the
78
104
  // need for a duplicate link. Other elements apart from the image are given
79
105
  // position relative and a higher z-index to put them above the after element
80
- &:after {
106
+ &::after {
81
107
  content: "";
82
108
  position: absolute;
83
109
  z-index: 1;
@@ -91,7 +117,7 @@
91
117
  }
92
118
 
93
119
  @include govuk-media-query($from: mobile, $until: tablet) {
94
- &:after {
120
+ &::after {
95
121
  left: govuk-spacing(3);
96
122
  right: govuk-spacing(3);
97
123
  }
@@ -150,7 +176,7 @@
150
176
  .gem-c-image-card__list-item {
151
177
  position: relative;
152
178
 
153
- &:before { // stylelint-disable-line max-nesting-depth
179
+ &::before { // stylelint-disable-line max-nesting-depth
154
180
  content: "-";
155
181
  position: absolute;
156
182
  left: (- govuk-spacing(3));
@@ -200,7 +226,7 @@
200
226
  padding-bottom: govuk-spacing(2);
201
227
  }
202
228
 
203
- .gem-c-image-card__title-link:after {
229
+ .gem-c-image-card__title-link::after {
204
230
  left: 0;
205
231
  right: 0;
206
232
  }
@@ -263,7 +289,7 @@
263
289
  .gem-c-image-card__youtube-thumbnail-image-container {
264
290
  position: relative;
265
291
 
266
- &:before {
292
+ &::before {
267
293
  background: url("govuk_publishing_components/youtube-play-icon.png");
268
294
  background: url("govuk_publishing_components/youtube-play-icon.svg"), linear-gradient(transparent, transparent);
269
295
  background-repeat: no-repeat;
@@ -182,7 +182,7 @@ $after-button-padding-left: govuk-spacing(4);
182
182
  }
183
183
  }
184
184
 
185
- &:after {
185
+ &::after {
186
186
  @include make-selectable-area-bigger;
187
187
  @include pseudo-underline($left: $after-link-padding, $right: $after-link-padding);
188
188
  }
@@ -193,14 +193,14 @@ $after-button-padding-left: govuk-spacing(4);
193
193
  font-size: govuk-px-to-rem(16px);
194
194
  height: govuk-spacing(4);
195
195
 
196
- &:before {
196
+ &::before {
197
197
  @include chevron(govuk-colour("white"), true);
198
198
  }
199
199
 
200
200
  &:hover {
201
201
  color: govuk-colour("mid-grey");
202
202
 
203
- &:after {
203
+ &::after {
204
204
  background: govuk-colour("mid-grey");
205
205
  }
206
206
  }
@@ -216,7 +216,7 @@ $after-button-padding-left: govuk-spacing(4);
216
216
  box-shadow: none;
217
217
  color: $govuk-focus-text-colour;
218
218
 
219
- &:after {
219
+ &::after {
220
220
  background: $govuk-focus-text-colour;
221
221
  }
222
222
  }
@@ -235,12 +235,12 @@ $after-button-padding-left: govuk-spacing(4);
235
235
  &:hover {
236
236
  color: govuk-colour("mid-grey");
237
237
 
238
- &:after {
238
+ &::after {
239
239
  background: govuk-colour("mid-grey");
240
240
  }
241
241
  }
242
242
 
243
- &:after {
243
+ &::after {
244
244
  background: none;
245
245
  }
246
246
  }
@@ -255,14 +255,14 @@ $after-button-padding-left: govuk-spacing(4);
255
255
  padding: 0;
256
256
  margin: 0;
257
257
 
258
- &:after {
258
+ &::after {
259
259
  @include pseudo-underline($left: $after-button-padding-left, $right: $after-button-padding-right, $width: 100%);
260
260
  }
261
261
  }
262
262
  // stylelint-enable max-nesting-depth
263
263
  }
264
264
 
265
- &:after {
265
+ &::after {
266
266
  @include make-selectable-area-bigger;
267
267
  }
268
268
  }
@@ -299,7 +299,7 @@ $after-button-padding-left: govuk-spacing(4);
299
299
  &:hover {
300
300
  background: govuk-colour("black");
301
301
 
302
- &:before {
302
+ &::before {
303
303
  left: 0;
304
304
  right: 0;
305
305
  }
@@ -308,12 +308,12 @@ $after-button-padding-left: govuk-spacing(4);
308
308
  &:focus {
309
309
  background: $govuk-focus-colour;
310
310
 
311
- &:before {
311
+ &::before {
312
312
  content: none;
313
313
  }
314
314
  }
315
315
 
316
- &:after {
316
+ &::after {
317
317
  left: 0;
318
318
  right: 0;
319
319
  width: 100%;
@@ -332,8 +332,8 @@ $after-button-padding-left: govuk-spacing(4);
332
332
  background: $govuk-focus-colour;
333
333
  }
334
334
 
335
- &:after,
336
- &:hover:after {
335
+ &::after,
336
+ &:hover::after {
337
337
  background: $govuk-focus-colour;
338
338
  }
339
339
  }
@@ -364,19 +364,19 @@ $after-button-padding-left: govuk-spacing(4);
364
364
  @include govuk-link-style-no-visited-state;
365
365
  @include govuk-link-style-no-underline;
366
366
 
367
- &:after {
367
+ &::after {
368
368
  @include pseudo-underline($left: $after-button-padding-left, $right: $after-button-padding-right);
369
369
  }
370
370
 
371
371
  &:hover {
372
372
  color: govuk-colour("mid-grey");
373
373
 
374
- &:after {
374
+ &::after {
375
375
  background: govuk-colour("mid-grey");
376
376
  }
377
377
 
378
378
  .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
379
- &:before {
379
+ &::before {
380
380
  border-color: govuk-colour("mid-grey");
381
381
  }
382
382
  }
@@ -411,11 +411,11 @@ $after-button-padding-left: govuk-spacing(4);
411
411
  .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
412
412
  color: govuk-colour("black");
413
413
 
414
- &:after {
414
+ &::after {
415
415
  background: govuk-colour("black");
416
416
  }
417
417
 
418
- &:before {
418
+ &::before {
419
419
  @include chevron(govuk-colour("black"), true);
420
420
  }
421
421
  }
@@ -428,22 +428,23 @@ $after-button-padding-left: govuk-spacing(4);
428
428
  box-shadow: none;
429
429
 
430
430
  &:hover {
431
- &:after {
431
+ &::after {
432
432
  background-color: govuk-colour("black");
433
433
  }
434
434
  }
435
435
 
436
- &:after {
436
+ &::after {
437
437
  background-color: govuk-colour("black");
438
438
  }
439
-
439
+ // stylelint-disable max-nesting-depth
440
440
  .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
441
441
  border-color: $govuk-focus-colour;
442
442
 
443
- &:before {
443
+ &::before {
444
444
  @include chevron(govuk-colour("black"), true);
445
445
  }
446
446
  }
447
+ // stylelint-enable max-nesting-depth
447
448
  }
448
449
 
449
450
  // Undoes the :focus styles *only* for browsers that support :focus-visible.
@@ -453,16 +454,17 @@ $after-button-padding-left: govuk-spacing(4);
453
454
  box-shadow: none;
454
455
  color: govuk-colour("white");
455
456
 
457
+ // stylelint-disable max-nesting-depth
456
458
  &:hover {
457
459
  .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
458
- &:before {
460
+ &::before {
459
461
  @include chevron(govuk-colour("mid-grey"), true);
460
462
  }
461
463
 
462
464
  color: govuk-colour("mid-grey");
463
465
  }
464
466
 
465
- &:after {
467
+ &::after {
466
468
  background: govuk-colour("mid-grey");
467
469
  }
468
470
  }
@@ -471,11 +473,12 @@ $after-button-padding-left: govuk-spacing(4);
471
473
  border-color: $button-pipe-colour;
472
474
 
473
475
  @include govuk-media-query($from: 360px) {
474
- &:before {
476
+ &::before {
475
477
  @include chevron(govuk-colour("white"), true);
476
478
  }
477
479
  }
478
480
  }
481
+ // stylelint-enable max-nesting-depth
479
482
  }
480
483
 
481
484
  // Open button modifier
@@ -485,7 +488,7 @@ $after-button-padding-left: govuk-spacing(4);
485
488
  @include govuk-focused-text;
486
489
  box-shadow: none;
487
490
 
488
- &:after {
491
+ &::after {
489
492
  background-color: govuk-colour("black");
490
493
  }
491
494
 
@@ -494,7 +497,7 @@ $after-button-padding-left: govuk-spacing(4);
494
497
  border-color: $govuk-focus-colour;
495
498
 
496
499
  @include govuk-media-query($from: 360px) {
497
- &:before {
500
+ &::before {
498
501
  @include chevron(govuk-colour("black"), true);
499
502
  @include prefixed-transform($rotate: 225deg, $translateY: 1px);
500
503
  }
@@ -505,7 +508,7 @@ $after-button-padding-left: govuk-spacing(4);
505
508
  @include focus-not-focus-visible {
506
509
  background: govuk-colour("light-grey");
507
510
 
508
- &:after {
511
+ &::after {
509
512
  background-color: $govuk-link-colour;
510
513
  }
511
514
 
@@ -514,7 +517,7 @@ $after-button-padding-left: govuk-spacing(4);
514
517
  border-color: govuk-colour("light-grey");
515
518
 
516
519
  @include govuk-media-query($from: 360px) {
517
- &:before {
520
+ &::before {
518
521
  @include chevron($govuk-link-colour);
519
522
  @include prefixed-transform($rotate: 225deg, $translateY: 1px);
520
523
  }
@@ -533,7 +536,7 @@ $after-button-padding-left: govuk-spacing(4);
533
536
  padding: govuk-spacing(1) govuk-spacing(4);
534
537
 
535
538
  @include govuk-media-query($from: 360px) {
536
- &:before {
539
+ &::before {
537
540
  @include chevron(govuk-colour("white"));
538
541
  }
539
542
  }
@@ -597,11 +600,13 @@ $after-button-padding-left: govuk-spacing(4);
597
600
  box-shadow: none;
598
601
  color: $govuk-focus-colour;
599
602
 
603
+ // stylelint-disable max-nesting-depth
600
604
  @include govuk-media-query($from: 360px) {
601
- &:before {
605
+ &::before {
602
606
  @include chevron($govuk-focus-colour, true);
603
607
  }
604
608
  }
609
+ // stylelint-enable max-nesting-depth
605
610
  }
606
611
 
607
612
  @include focus-not-focus-visible {
@@ -708,14 +713,14 @@ $after-button-padding-left: govuk-spacing(4);
708
713
  font-size: govuk-px-to-rem(16px);
709
714
  font-weight: bold;
710
715
 
711
- &:after {
716
+ &::after {
712
717
  @include make-selectable-area-bigger;
713
718
  }
714
719
 
715
720
  @include govuk-media-query($from: "desktop") {
716
721
  padding: 0;
717
722
 
718
- &:after {
723
+ &::after {
719
724
  @include make-selectable-area-bigger;
720
725
  }
721
726
  }
@@ -726,7 +731,7 @@ $after-button-padding-left: govuk-spacing(4);
726
731
  font-size: govuk-px-to-rem(16px);
727
732
  font-weight: bold;
728
733
 
729
- &:after {
734
+ &::after {
730
735
  @include make-selectable-area-bigger;
731
736
  height: calc(100% - 20px);
732
737
  }
@@ -756,7 +761,7 @@ $after-button-padding-left: govuk-spacing(4);
756
761
  font-size: govuk-px-to-rem(16px);
757
762
  padding: 0;
758
763
 
759
- &:after {
764
+ &::after {
760
765
  @include make-selectable-area-bigger;
761
766
  }
762
767
  }
@@ -0,0 +1,172 @@
1
+ @import "govuk_publishing_components/individual_component_support";
2
+
3
+ .gem-c-option-select {
4
+ position: relative;
5
+ padding: 0 0 govuk-spacing(2);
6
+ margin-bottom: govuk-spacing(2);
7
+ border-bottom: 1px solid $govuk-border-colour;
8
+
9
+ @include govuk-media-query($from: desktop) {
10
+ // Redefine scrollbars on desktop where these lists are scrollable
11
+ // so they are always visible in option lists
12
+ ::-webkit-scrollbar {
13
+ -webkit-appearance: none;
14
+ width: 7px;
15
+ }
16
+
17
+ ::-webkit-scrollbar-thumb {
18
+ border-radius: 4px;
19
+
20
+ background-color: rgba(0, 0, 0, .5);
21
+ -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, .87);
22
+ }
23
+ }
24
+
25
+ .gem-c-checkboxes {
26
+ margin: 0;
27
+ }
28
+ }
29
+
30
+ .gem-c-option-select__title {
31
+ @include govuk-font(19);
32
+ margin: 0;
33
+ }
34
+
35
+ .gem-c-option-select__button {
36
+ z-index: 1;
37
+ background: none;
38
+ border: 0;
39
+ text-align: left;
40
+ padding: 0;
41
+ cursor: pointer;
42
+ color: $govuk-link-colour;
43
+
44
+ &:hover {
45
+ text-decoration: underline;
46
+ text-underline-offset: .1em;
47
+ @include govuk-link-hover-decoration;
48
+ }
49
+
50
+ &::-moz-focus-inner {
51
+ border: 0;
52
+ }
53
+
54
+ &:focus {
55
+ outline: none;
56
+ text-decoration: none;
57
+ @include govuk-focused-text;
58
+ }
59
+
60
+ &[disabled] {
61
+ background-image: none;
62
+ color: inherit;
63
+ }
64
+
65
+ // Extend the touch area of the button to span the heading
66
+ &::after {
67
+ content: "";
68
+ position: absolute;
69
+ top: 0;
70
+ right: 0;
71
+ bottom: 0;
72
+ left: 0;
73
+ z-index: 2;
74
+ }
75
+ }
76
+
77
+ .gem-c-option-select__icon {
78
+ display: none;
79
+ position: absolute;
80
+ top: 0;
81
+ left: 9px;
82
+ width: 30px;
83
+ height: 40px;
84
+ fill: govuk-colour("black");
85
+ }
86
+
87
+ .gem-c-option-select__container {
88
+ position: relative;
89
+ max-height: 200px;
90
+ overflow-y: auto;
91
+ overflow-x: hidden;
92
+ background-color: govuk-colour("white");
93
+
94
+ &:focus {
95
+ outline: 0;
96
+ }
97
+ }
98
+
99
+ .gem-c-option-select__container--large {
100
+ max-height: 600px;
101
+ }
102
+
103
+ .gem-c-option-select__container-inner {
104
+ padding: govuk-spacing(1) 13px;
105
+ }
106
+
107
+ .gem-c-option-select__filter {
108
+ position: relative;
109
+ background: govuk-colour("white");
110
+ padding: 13px 13px govuk-spacing(2) 13px;
111
+ }
112
+
113
+ .gem-c-option-select__filter-input {
114
+ @include govuk-font(19);
115
+ background: image-url("option-select/input-icon.svg") govuk-colour("white") no-repeat -5px -3px;
116
+
117
+ @include govuk-media-query($from: tablet) {
118
+ @include govuk-font(16);
119
+ }
120
+ }
121
+
122
+ .gem-c-option-select__filter-input.govuk-input {
123
+ padding-left: 33px;
124
+ }
125
+
126
+ .js-enabled {
127
+ .gem-c-option-select__heading {
128
+ position: relative;
129
+ padding: 10px 8px 5px 43px;
130
+ margin: 0;
131
+ }
132
+
133
+ [aria-expanded="true"] ~ .gem-c-option-select__icon--up {
134
+ display: block;
135
+ }
136
+
137
+ [aria-expanded="false"] ~ .gem-c-option-select__icon--down {
138
+ display: block;
139
+ }
140
+
141
+ .gem-c-option-select__container {
142
+ height: 200px;
143
+ }
144
+
145
+ .gem-c-option-select__container--large {
146
+ height: 600px;
147
+ }
148
+
149
+ [data-closed-on-load="true"] .gem-c-option-select__container {
150
+ display: none;
151
+ }
152
+ }
153
+
154
+ .gem-c-option-select__selected-counter {
155
+ @include govuk-font($size: 14);
156
+ color: $govuk-text-colour;
157
+ margin-top: 3px;
158
+ }
159
+
160
+ .gem-c-option-select.js-closed {
161
+ .gem-c-option-select__filter,
162
+ .gem-c-option-select__container {
163
+ display: none;
164
+ }
165
+ }
166
+
167
+ .gem-c-option-select.js-opened {
168
+ .gem-c-option-select__filter,
169
+ .gem-c-option-select__container {
170
+ display: block;
171
+ }
172
+ }