maverick-wave 4.4.2 → 4.5.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 (37) hide show
  1. package/.claude/skills/maverick-wave/SKILL.md +8 -5
  2. package/.claude/skills/maverick-wave/references/components.md +24 -13
  3. package/.claude/skills/maverick-wave/references/theming.md +54 -34
  4. package/CHANGELOG.md +7 -0
  5. package/README.md +65 -5
  6. package/index.html +1 -1
  7. package/maverick-wave.min.css +2 -2
  8. package/package.json +2 -2
  9. package/src/partials/colors-container.html +55 -2
  10. package/src/partials/get-started-container.html +15 -1
  11. package/src/partials/item-lists-container.html +3 -3
  12. package/src/scss/abstracts/_variables.scss +59 -11
  13. package/src/scss/base/_reset.scss +1 -1
  14. package/src/scss/components/_accordions.scss +1 -1
  15. package/src/scss/components/_avatars.scss +1 -1
  16. package/src/scss/components/_blog-post.scss +1 -1
  17. package/src/scss/components/_button-bar.scss +5 -5
  18. package/src/scss/components/_buttons.scss +11 -11
  19. package/src/scss/components/_calendar.scss +2 -2
  20. package/src/scss/components/_cards.scss +4 -3
  21. package/src/scss/components/_coming-soon.scss +2 -2
  22. package/src/scss/components/_info.scss +1 -1
  23. package/src/scss/components/_kanban.scss +1 -1
  24. package/src/scss/components/_lists.scss +144 -135
  25. package/src/scss/components/_modals.scss +1 -1
  26. package/src/scss/components/_panels.scss +2 -2
  27. package/src/scss/components/_progress.scss +7 -1
  28. package/src/scss/components/_segmented.scss +2 -1
  29. package/src/scss/components/_stepper.scss +2 -2
  30. package/src/scss/components/_tables.scss +1 -1
  31. package/src/scss/components/_tabs.scss +1 -1
  32. package/src/scss/components/_theme-toggle.scss +1 -1
  33. package/src/scss/components/_timelines.scss +2 -2
  34. package/src/scss/form-elements/_toggle.scss +2 -0
  35. package/src/scss/layout/_footer.scss +1 -1
  36. package/src/scss/layout/_header.scss +6 -1
  37. package/src/scss/layout/_section.scss +1 -1
@@ -1,5 +1,51 @@
1
1
  @use '../abstracts' as *;
2
2
 
3
+ // One scrollbar look for every scrollable list. Was copy-pasted per variant
4
+ // before, which is how the checkbox list ended up with track and thumb in the
5
+ // same color - an invisible scrollbar.
6
+ @mixin _list-scrollbar {
7
+ scrollbar-gutter: stable; // Prevent layout shift
8
+
9
+ &::-webkit-scrollbar {
10
+ width: 7px;
11
+ }
12
+
13
+ &::-webkit-scrollbar-track {
14
+ background: var(--mw-primary-background);
15
+ border-radius: 3px;
16
+ }
17
+
18
+ &::-webkit-scrollbar-thumb {
19
+ background: var(--mw-text-muted-color);
20
+ border-radius: 3px;
21
+
22
+ &:hover {
23
+ background: var(--mw-primary-color);
24
+ }
25
+ }
26
+
27
+ // Modern Firefox scrollbar - needs both thumb and track, a single value
28
+ // makes the whole declaration invalid
29
+ scrollbar-width: thin;
30
+ scrollbar-color: var(--mw-text-muted-color) var(--mw-gray-background);
31
+ }
32
+
33
+ // Checkbox box and checkmark sizes - shape-drawing values, so px instead of
34
+ // spacing() keys. The checkmark has to scale with the box: compact used to be
35
+ // an 8px box (4px of usable space inside the 2px border) holding a 5.6px
36
+ // checkmark, so the mark broke out of its own box.
37
+ $_checkbox-box-compact: 12px;
38
+ $_checkbox-box-default: 14px;
39
+ $_checkbox-box-large: 16px;
40
+ $_check-compact-w: 5px;
41
+ $_check-compact-h: 3px;
42
+ $_check-default-w: 6px;
43
+ $_check-default-h: 3px;
44
+ $_check-large-w: 7px;
45
+ $_check-large-h: 4px;
46
+ // Nudges the box down onto the first text line when a header is present
47
+ $_checkbox-box-offset: 3px;
48
+
3
49
  // Base list styles
4
50
  .mw-list {
5
51
  margin: spacing('4') spacing('0');
@@ -82,15 +128,18 @@
82
128
 
83
129
  // Dot lists
84
130
  .mw-list-dot {
85
- padding-left: spacing('3');
86
- list-style: disc inside;
131
+ // outside keeps a wrapping line flush with the text instead of letting it
132
+ // run back underneath the bullet - the padding makes room for the marker
133
+ padding-left: spacing('6');
134
+ list-style: disc outside;
87
135
 
88
136
  li {
89
137
  padding-left: spacing('1');
90
138
  margin-bottom: spacing('1');
91
139
 
140
+ // ::marker only takes color, content and font properties - positioning
141
+ // it has no effect
92
142
  &::marker {
93
- left: spacing('0');
94
143
  color: var(--mw-primary-text-color);
95
144
  }
96
145
  }
@@ -102,14 +151,18 @@
102
151
  padding-left: spacing('3');
103
152
 
104
153
  li {
105
- padding-left: spacing('1');
154
+ position: relative;
155
+ padding-left: spacing('6');
106
156
  margin-bottom: spacing('1');
107
- }
108
157
 
109
- li::before {
110
- content: '✓';
111
- color: var(--mw-primary-text-color);
112
- padding-right: spacing('4');
158
+ // Taken out of the flow so a wrapping line keeps its indent instead of
159
+ // running back underneath the checkmark
160
+ &::before {
161
+ content: '';
162
+ position: absolute;
163
+ left: 0;
164
+ color: var(--mw-primary-text-color);
165
+ }
113
166
  }
114
167
  }
115
168
 
@@ -162,7 +215,10 @@
162
215
  padding: spacing('3');
163
216
  background: var(--mw-card-background);
164
217
  border: 1px solid transparent;
165
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
218
+ transition:
219
+ background 0.3s cubic-bezier(0.4, 0, 0.2, 1),
220
+ border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1),
221
+ transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
166
222
  overflow: hidden;
167
223
 
168
224
  &::before {
@@ -176,11 +232,13 @@
176
232
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
177
233
  }
178
234
 
235
+ // The card carries its own background and radius, so moving the whole
236
+ // thing reads the same as growing the padding did - and runs on the
237
+ // compositor instead of relaying out the item on every hover
179
238
  &:hover {
180
- padding-left: spacing('4');
181
239
  background: var(--mw-primary-background-hover);
182
240
  border-color: var(--mw-primary-text-color);
183
- transform: translateX(4px);
241
+ transform: translateX(8px);
184
242
 
185
243
  &::before {
186
244
  width: 4px;
@@ -189,10 +247,8 @@
189
247
  }
190
248
  }
191
249
 
192
- // Secondary variant
250
+ // Secondary variant - additive, sits alongside mw-item-list-slide
193
251
  .mw-item-list-slide-secondary {
194
- @extend .mw-item-list-slide;
195
-
196
252
  > * {
197
253
  &::before {
198
254
  background: var(--mw-secondary-text-color);
@@ -217,9 +273,24 @@
217
273
  > * {
218
274
  padding: spacing('3');
219
275
  border-bottom: 1px solid var(--mw-border);
220
- transition: all 0.2s ease;
276
+ transition:
277
+ background 0.2s ease,
278
+ padding-left 0.2s ease;
221
279
  position: relative;
222
280
 
281
+ // Always present at zero width so it can grow on hover - creating it
282
+ // inside :hover means it snaps in with no transition
283
+ &::before {
284
+ content: '';
285
+ position: absolute;
286
+ left: 0;
287
+ top: 0;
288
+ bottom: 0;
289
+ width: 0;
290
+ background: var(--mw-primary-text-color);
291
+ transition: width 0.2s ease;
292
+ }
293
+
223
294
  &:last-child {
224
295
  border-bottom: none;
225
296
  }
@@ -229,13 +300,7 @@
229
300
  padding-left: spacing('4');
230
301
 
231
302
  &::before {
232
- content: '';
233
- position: absolute;
234
- left: 0;
235
- top: 0;
236
- bottom: 0;
237
303
  width: 3px;
238
- background: var(--mw-primary-text-color);
239
304
  }
240
305
  }
241
306
 
@@ -247,18 +312,21 @@
247
312
  padding-left: spacing('4');
248
313
 
249
314
  &::before {
250
- display: none;
315
+ width: 0;
251
316
  }
252
317
  }
253
318
  }
254
319
  }
255
320
 
256
- // Nested compact lists styling
321
+ // Nested compact lists styling - only the left rule, the full border comes
322
+ // from the outer rule and would frame the nested list a second time
257
323
  .mw-item-list-compact {
258
324
  margin-top: spacing('2');
259
325
  margin-left: spacing('2');
326
+ border: none;
260
327
  border-left: 2px solid var(--mw-border);
261
328
  border-radius: 0;
329
+ background: transparent;
262
330
 
263
331
  > * {
264
332
  padding: spacing('2');
@@ -286,7 +354,11 @@
286
354
  > * {
287
355
  padding: spacing('4');
288
356
  border-bottom: 1px solid var(--mw-border);
289
- transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
357
+ transition:
358
+ background 0.2s cubic-bezier(0.4, 0, 0.2, 1),
359
+ padding-left 0.2s cubic-bezier(0.4, 0, 0.2, 1),
360
+ color 0.2s cubic-bezier(0.4, 0, 0.2, 1),
361
+ transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
290
362
  cursor: pointer;
291
363
  display: flex;
292
364
  align-items: center;
@@ -303,7 +375,7 @@
303
375
 
304
376
  &:active {
305
377
  background: var(--mw-primary-color);
306
- color: var(--mw-accent-text-color);
378
+ color: var(--mw-primary-accent-text-color);
307
379
  transform: scale(0.98);
308
380
  }
309
381
  }
@@ -318,37 +390,14 @@
318
390
  border: 1px solid var(--mw-border);
319
391
  border-radius: radius('md');
320
392
  background: var(--mw-card-background);
321
- scrollbar-gutter: stable; // Prevent layout shift
322
-
323
- // Custom scrollbar styling
324
- &::-webkit-scrollbar {
325
- width: 7px;
326
- }
327
-
328
- &::-webkit-scrollbar-track {
329
- background: var(--mw-primary-background);
330
- border-radius: 3px;
331
- }
332
-
333
- &::-webkit-scrollbar-thumb {
334
- background: var(--mw-text-muted-color);
335
- border-radius: 3px;
336
- opacity: 0.6;
337
-
338
- &:hover {
339
- background: var(--mw-primary-color);
340
- opacity: 1;
341
- }
342
- }
343
-
344
- // Modern Firefox scrollbar
345
- scrollbar-width: thin;
346
- scrollbar-color: var(--mw-text-muted-color) var(--mw-gray-background);
393
+ @include _list-scrollbar;
347
394
 
348
395
  > * {
349
396
  padding: spacing('3');
350
397
  border-bottom: 1px solid var(--mw-border);
351
- transition: all 0.2s ease;
398
+ transition:
399
+ background 0.2s ease,
400
+ color 0.2s ease;
352
401
 
353
402
  &:last-child {
354
403
  border-bottom: none;
@@ -361,24 +410,23 @@
361
410
 
362
411
  &:active {
363
412
  background: var(--mw-primary-color);
364
- color: var(--mw-accent-text-color);
413
+ color: var(--mw-primary-accent-text-color);
365
414
  }
366
415
  }
367
416
  }
368
417
 
369
- // Height variants
418
+ // Height modifiers - additive, put them alongside mw-item-list-scroll.
419
+ // Extending duplicated the whole scroll block three times over for what is
420
+ // one declaration each.
370
421
  .mw-item-list-scroll-sm {
371
- @extend .mw-item-list-scroll;
372
422
  max-height: 200px;
373
423
  }
374
424
 
375
425
  .mw-item-list-scroll-lg {
376
- @extend .mw-item-list-scroll;
377
426
  max-height: 400px;
378
427
  }
379
428
 
380
429
  .mw-item-list-scroll-xl {
381
- @extend .mw-item-list-scroll;
382
430
  max-height: 500px;
383
431
  }
384
432
 
@@ -398,7 +446,11 @@
398
446
  border-bottom: 1px solid var(--mw-border);
399
447
  border-left: 3px solid transparent;
400
448
  cursor: pointer;
401
- transition: all 0.2s ease;
449
+ transition:
450
+ background 0.2s ease,
451
+ color 0.2s ease,
452
+ transform 0.2s ease,
453
+ border-left-color 0.2s ease;
402
454
  user-select: none;
403
455
 
404
456
  &:last-child {
@@ -411,63 +463,35 @@
411
463
 
412
464
  &:active {
413
465
  background: var(--mw-primary-color);
414
- color: var(--mw-accent-text-color);
466
+ color: var(--mw-primary-accent-text-color);
415
467
  transform: scale(0.98);
416
468
  }
417
469
 
470
+ // Only the deltas to the .mw-checkbox in form-elements. The hidden input,
471
+ // the box chrome and the checked, focus-visible, disabled and color states
472
+ // all come from there - copying them here used to shadow disabled and the
473
+ // size variants, because the nesting gave the copy a higher specificity.
418
474
  .mw-checkbox {
419
475
  display: flex;
420
- align-items: center;
421
476
  gap: spacing('3');
422
477
  flex: 1;
423
478
 
424
- // Hide native checkbox
425
- input[type='checkbox'] {
426
- position: absolute;
427
- opacity: 0;
428
- width: 0;
429
- height: 0;
430
- margin: spacing('0');
431
- }
432
-
433
- // Visual checkbox (the label)
479
+ // A list checkbox is smaller than a standalone one. Size is a list
480
+ // concern here - the -compact and -large list modifiers drive it, not
481
+ // mw-checkbox-sm/-lg, which sit on the wrong element to reach this.
434
482
  .mw-checkbox-box {
435
- position: relative;
436
- flex-shrink: 0;
437
- width: 14px;
438
- height: 14px;
439
- border: 2px solid var(--mw-border);
440
- border-radius: radius('sm');
441
- background: var(--mw-form-elements-background);
442
- transition: var(--mw-transition);
443
- margin-top: 3px;
444
- cursor: pointer;
445
- display: block;
446
-
447
- &::after {
448
- content: '';
449
- position: absolute;
450
- top: 50%;
451
- left: 50%;
452
- width: spacing('2');
453
- height: spacing('1');
454
- border-left: 2px solid var(--mw-primary-color);
455
- border-bottom: 2px solid var(--mw-primary-color);
456
- transform: translate(-50%, -60%) rotate(-45deg) scale(0);
457
- transform-origin: center;
458
- transition: var(--mw-transition);
459
- }
460
- }
461
-
462
- // Checked state
463
- input[type='checkbox']:checked + .mw-checkbox-box {
464
- border-color: var(--mw-primary-color);
483
+ width: $_checkbox-box-default;
484
+ height: $_checkbox-box-default;
485
+ margin-top: $_checkbox-box-offset;
465
486
 
466
487
  &::after {
467
- transform: translate(-50%, -60%) rotate(-45deg) scale(1);
488
+ width: $_check-default-w;
489
+ height: $_check-default-h;
468
490
  }
469
491
  }
470
492
 
493
+ // Header plus description stacked next to the box - a list-only
494
+ // extension, the form element carries a single label
471
495
  .mw-checkbox-content {
472
496
  display: flex;
473
497
  flex-direction: column;
@@ -530,9 +554,14 @@
530
554
  gap: spacing('1');
531
555
 
532
556
  .mw-checkbox-box {
533
- width: spacing('3');
534
- height: spacing('3');
557
+ width: $_checkbox-box-compact;
558
+ height: $_checkbox-box-compact;
535
559
  margin-top: spacing('1');
560
+
561
+ &::after {
562
+ width: $_check-compact-w;
563
+ height: $_check-compact-h;
564
+ }
536
565
  }
537
566
 
538
567
  .mw-checkbox-content {
@@ -571,9 +600,14 @@
571
600
  gap: spacing('3');
572
601
 
573
602
  .mw-checkbox-box {
574
- width: spacing('5');
575
- height: spacing('5');
603
+ width: $_checkbox-box-large;
604
+ height: $_checkbox-box-large;
576
605
  margin-top: spacing('1');
606
+
607
+ &::after {
608
+ width: $_check-large-w;
609
+ height: $_check-large-h;
610
+ }
577
611
  }
578
612
 
579
613
  .mw-checkbox-content {
@@ -604,10 +638,9 @@
604
638
  }
605
639
  }
606
640
 
607
- // Color variants for checkbox lists
641
+ // Color variants for checkbox lists - additive, sits alongside
642
+ // mw-item-list-checkbox
608
643
  .mw-item-list-checkbox-secondary {
609
- @extend .mw-item-list-checkbox;
610
-
611
644
  > * {
612
645
  &:hover {
613
646
  background: var(--mw-secondary-background-hover);
@@ -615,7 +648,7 @@
615
648
 
616
649
  &:active {
617
650
  background: var(--mw-secondary-color);
618
- color: var(--mw-accent-text-color);
651
+ color: var(--mw-secondary-accent-text-color);
619
652
  }
620
653
 
621
654
  &.mw-selected {
@@ -630,29 +663,5 @@
630
663
  @extend .mw-item-list-checkbox;
631
664
  max-height: 300px;
632
665
  overflow-y: auto;
633
- scrollbar-gutter: stable;
634
-
635
- // Same scrollbar styling as scroll lists
636
- &::-webkit-scrollbar {
637
- width: 6px;
638
- }
639
-
640
- &::-webkit-scrollbar-track {
641
- background: var(--mw-text-muted-color);
642
- border-radius: 3px;
643
- }
644
-
645
- &::-webkit-scrollbar-thumb {
646
- background: var(--mw-text-muted-color);
647
- border-radius: 3px;
648
- opacity: 0.6;
649
-
650
- &:hover {
651
- background: var(--mw-primary-color);
652
- opacity: 1;
653
- }
654
- }
655
-
656
- scrollbar-width: thin;
657
- scrollbar-color: var(--mw-text-muted-color);
666
+ @include _list-scrollbar;
658
667
  }
@@ -111,7 +111,7 @@
111
111
 
112
112
  &:hover {
113
113
  background: var(--mw-primary-color-hover);
114
- color: var(--mw-accent-text-color);
114
+ color: var(--mw-primary-accent-text-color);
115
115
  }
116
116
  }
117
117
 
@@ -52,14 +52,14 @@
52
52
  &-primary {
53
53
  .mw-panel-header {
54
54
  background: var(--mw-primary-color);
55
- color: var(--mw-accent-text-color);
55
+ color: var(--mw-primary-accent-text-color);
56
56
  }
57
57
  }
58
58
 
59
59
  &-secondary {
60
60
  .mw-panel-header {
61
61
  background: var(--mw-secondary-color);
62
- color: var(--mw-accent-text-color);
62
+ color: var(--mw-secondary-accent-text-color);
63
63
  }
64
64
  }
65
65
 
@@ -65,6 +65,11 @@ $_mw-progress-colors: (
65
65
  }
66
66
 
67
67
  &-fill {
68
+ // The label sits *inside* the fill, so its ink follows whichever color
69
+ // variant is on the element - preset to the default fill, re-pointed by
70
+ // the variants at the bottom of the file
71
+ --mw-progress-ink: var(--mw-secondary-accent-text-color);
72
+
68
73
  height: 100%;
69
74
  background: var(--mw-secondary-color);
70
75
  border-radius: radius('sm');
@@ -96,7 +101,7 @@ $_mw-progress-colors: (
96
101
  padding-left: spacing('6');
97
102
  font-size: font-size('xs');
98
103
  font-weight: font-weight('medium');
99
- color: var(--mw-accent-text-color);
104
+ color: var(--mw-progress-ink);
100
105
  }
101
106
  }
102
107
  }
@@ -104,5 +109,6 @@ $_mw-progress-colors: (
104
109
  @each $name, $col in $_mw-progress-colors {
105
110
  .mw-progress-#{$name} {
106
111
  background: #{$col};
112
+ --mw-progress-ink: var(--mw-#{$name}-accent-text-color);
107
113
  }
108
114
  }
@@ -60,7 +60,7 @@
60
60
  &.active {
61
61
  background: var(--mw-primary-color);
62
62
  border-color: var(--mw-primary-text-color);
63
- color: var(--mw-accent-text-color);
63
+ color: var(--mw-primary-accent-text-color);
64
64
  }
65
65
  }
66
66
 
@@ -70,6 +70,7 @@
70
70
  &.active {
71
71
  background: var(--mw-secondary-color);
72
72
  border-color: var(--mw-secondary-text-color);
73
+ color: var(--mw-secondary-accent-text-color);
73
74
  }
74
75
  }
75
76
 
@@ -49,13 +49,13 @@
49
49
  &.mw-active {
50
50
  border-color: var(--mw-primary-color);
51
51
  background: var(--mw-primary-color);
52
- color: var(--mw-accent-text-color);
52
+ color: var(--mw-primary-accent-text-color);
53
53
  }
54
54
 
55
55
  &.mw-done {
56
56
  border-color: var(--mw-success-color);
57
57
  background: var(--mw-success-color);
58
- color: var(--mw-accent-text-color);
58
+ color: var(--mw-success-accent-text-color);
59
59
  }
60
60
  }
61
61
 
@@ -17,7 +17,7 @@
17
17
 
18
18
  th {
19
19
  font-weight: font-weight('medium');
20
- color: var(--mw-accent-text-color);
20
+ color: var(--mw-primary-accent-text-color);
21
21
  background: var(--mw-primary-color);
22
22
  user-select: none;
23
23
  }
@@ -146,7 +146,7 @@
146
146
  &.mw-active,
147
147
  &.active {
148
148
  background: var(--mw-primary-color);
149
- color: var(--mw-accent-text-color);
149
+ color: var(--mw-primary-accent-text-color);
150
150
  }
151
151
  }
152
152
  }
@@ -29,7 +29,7 @@
29
29
  display: flex;
30
30
  align-items: center;
31
31
  justify-content: center;
32
- color: var(--mw-accent-text-color);
32
+ color: var(--mw-secondary-accent-text-color);
33
33
  font-size: font-size('md');
34
34
  }
35
35
 
@@ -188,7 +188,7 @@ $_simple-date-width: 110px;
188
188
 
189
189
  .mw-timeline-big-date-main,
190
190
  .mw-timeline-big-date-sub {
191
- color: var(--mw-accent-text-color);
191
+ color: var(--mw-primary-accent-text-color);
192
192
  }
193
193
  }
194
194
 
@@ -311,7 +311,7 @@ $_simple-date-width: 110px;
311
311
  &-step.mw-active &-date,
312
312
  &-step.active &-date {
313
313
  background: var(--mw-primary-color);
314
- color: var(--mw-accent-text-color);
314
+ color: var(--mw-primary-accent-text-color);
315
315
  transform: scale(1.1);
316
316
  animation: mw-pulse-ring-simple 2s infinite;
317
317
  }
@@ -69,6 +69,8 @@ $_knob-travel-lg: calc(
69
69
  left: $_knob-offset;
70
70
  width: $_knob-size;
71
71
  height: $_knob-size;
72
+ // The shared token, not a per-color one: the knob has to read on the
73
+ // fill *and* on the empty track, so it cannot follow the fill color
72
74
  background: var(--mw-accent-text-color);
73
75
  border-radius: radius('full');
74
76
  transition: transform 0.25s ease;
@@ -111,7 +111,7 @@
111
111
 
112
112
  &:hover {
113
113
  background: var(--mw-primary-color);
114
- color: var(--mw-accent-text-color);
114
+ color: var(--mw-primary-accent-text-color);
115
115
  transform: translateY(-2px);
116
116
  border-color: var(--mw-primary-color);
117
117
  }
@@ -60,7 +60,7 @@
60
60
  // Login button styling
61
61
  .mw-login-btn {
62
62
  background: var(--mw-primary-color);
63
- color: var(--mw-accent-text-color);
63
+ color: var(--mw-primary-accent-text-color);
64
64
  border: none;
65
65
  border-radius: radius('md');
66
66
  font-size: font-size('md');
@@ -124,6 +124,11 @@
124
124
  background: var(--mw-secondary-color);
125
125
  z-index: z-index('header') + 10;
126
126
 
127
+ // The surface under the burger switches to secondary, so its ink has to
128
+ // switch with it. Set on the button, so the bar and both pseudo-elements
129
+ // pick it up.
130
+ --mw-header-burgerbutton-color: var(--mw-header-burgerbutton-open-color);
131
+
127
132
  &:hover {
128
133
  background: var(--mw-secondary-color-hover);
129
134
  }
@@ -73,7 +73,7 @@
73
73
 
74
74
  &:hover:not(:disabled) {
75
75
  background: var(--mw-primary-color);
76
- color: var(--mw-accent-text-color);
76
+ color: var(--mw-primary-accent-text-color);
77
77
  }
78
78
 
79
79
  &:focus-visible {