@carbon/styles 1.82.0-rc.0 → 1.83.0-rc.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.
Files changed (50) hide show
  1. package/css/styles.css +686 -328
  2. package/css/styles.min.css +1 -1
  3. package/package.json +9 -9
  4. package/scss/__tests__/theme-test.js +4 -0
  5. package/scss/_layer.scss +7 -0
  6. package/scss/_reset.scss +2 -1
  7. package/scss/_theme.scss +49 -0
  8. package/scss/_zone.scss +3 -1
  9. package/scss/components/accordion/_accordion.scss +0 -7
  10. package/scss/components/breadcrumb/_breadcrumb.scss +1 -1
  11. package/scss/components/button/_button.scss +0 -9
  12. package/scss/components/checkbox/_checkbox.scss +17 -0
  13. package/scss/components/code-snippet/_code-snippet.scss +0 -5
  14. package/scss/components/content-switcher/_content-switcher.scss +424 -54
  15. package/scss/components/content-switcher/_index.scss +6 -1
  16. package/scss/components/content-switcher/_tokens.scss +110 -0
  17. package/scss/components/data-table/_data-table.scss +2 -1
  18. package/scss/components/data-table/expandable/_data-table-expandable.scss +0 -4
  19. package/scss/components/data-table/sort/_data-table-sort.scss +0 -7
  20. package/scss/components/date-picker/_date-picker.scss +0 -7
  21. package/scss/components/date-picker/_flatpickr.scss +0 -2
  22. package/scss/components/dialog/_dialog.scss +160 -13
  23. package/scss/components/dropdown/_dropdown.scss +0 -4
  24. package/scss/components/file-uploader/_file-uploader.scss +1 -5
  25. package/scss/components/fluid-number-input/_fluid-number-input.scss +103 -5
  26. package/scss/components/form/_form.scss +3 -1
  27. package/scss/components/list-box/_list-box.scss +0 -6
  28. package/scss/components/modal/_modal.scss +0 -5
  29. package/scss/components/notification/_actionable-notification.scss +0 -7
  30. package/scss/components/notification/_inline-notification.scss +0 -8
  31. package/scss/components/notification/_toast-notification.scss +0 -6
  32. package/scss/components/number-input/_number-input.scss +87 -18
  33. package/scss/components/overflow-menu/_overflow-menu.scss +0 -4
  34. package/scss/components/page-header/_page-header.scss +60 -19
  35. package/scss/components/pagination-nav/_pagination-nav.scss +0 -1
  36. package/scss/components/popover/_popover.scss +0 -1
  37. package/scss/components/radio-button/_radio-button.scss +1 -1
  38. package/scss/components/search/_search.scss +0 -7
  39. package/scss/components/select/_select.scss +0 -7
  40. package/scss/components/structured-list/_structured-list.scss +0 -8
  41. package/scss/components/tabs/_tabs.scss +6 -4
  42. package/scss/components/tag/_tag.scss +0 -5
  43. package/scss/components/text-input/_text-input.scss +0 -18
  44. package/scss/components/tile/_tile.scss +0 -22
  45. package/scss/components/ui-shell/side-nav/_side-nav.scss +0 -13
  46. package/scss/layer/_layer-sets.scss +5 -0
  47. package/scss/theme/_theme.scss +1 -0
  48. package/scss/utilities/_high-contrast-mode.scss +0 -4
  49. package/scss/utilities/_layout.scss +2 -1
  50. package/scss/utilities/_update_fields_on_layer.scss +1 -0
@@ -486,11 +486,4 @@
486
486
  .#{$prefix}--btn.#{$prefix}--btn--ghost.#{$prefix}--actionable-notification__action-button:focus {
487
487
  @include high-contrast-mode('focus');
488
488
  }
489
-
490
- .#{$prefix}--actionable-notification .#{$prefix}--inline-notification__icon,
491
- .#{$prefix}--actionable-notification .#{$prefix}--toast-notification__icon,
492
- .#{$prefix}--actionable-notification
493
- .#{$prefix}--actionable-notification__close-icon {
494
- @include high-contrast-mode('icon-fill');
495
- }
496
489
  }
@@ -316,12 +316,4 @@
316
316
  .#{$prefix}--btn.#{$prefix}--btn--ghost.#{$prefix}--inline-notification__action-button:focus {
317
317
  @include high-contrast-mode('focus');
318
318
  }
319
-
320
- .#{$prefix}--inline-notification .#{$prefix}--inline-notification__icon {
321
- @include high-contrast-mode('icon-fill');
322
- }
323
- .#{$prefix}--inline-notification
324
- .#{$prefix}--inline-notification__close-icon {
325
- @include high-contrast-mode('icon-fill');
326
- }
327
319
  }
@@ -231,10 +231,4 @@
231
231
  .#{$prefix}--toast-notification__close-button:focus {
232
232
  @include high-contrast-mode('focus');
233
233
  }
234
- .#{$prefix}--toast-notification .#{$prefix}--toast-notification__close-icon {
235
- @include high-contrast-mode('icon-fill');
236
- }
237
- .#{$prefix}--toast-notification .#{$prefix}--toast-notification__icon {
238
- @include high-contrast-mode('icon-fill');
239
- }
240
234
  }
@@ -35,11 +35,15 @@
35
35
 
36
36
  .#{$prefix}--number
37
37
  .#{$prefix}--number__input-wrapper--warning
38
- input[type='number'] {
38
+ input[type='number'],
39
+ .#{$prefix}--number
40
+ .#{$prefix}--number__input-wrapper--warning
41
+ input[type='text'] {
39
42
  padding-inline-end: convert.to-rem(128px);
40
43
  }
41
44
 
42
- .#{$prefix}--number input[type='number'] {
45
+ .#{$prefix}--number input[type='number'],
46
+ .#{$prefix}--number input[type='text'] {
43
47
  @include type-style('body-compact-01');
44
48
  @include focus-outline('reset');
45
49
 
@@ -93,7 +97,8 @@
93
97
  }
94
98
 
95
99
  .#{$prefix}--number--lg.#{$prefix}--number {
96
- input[type='number'] {
100
+ input[type='number'],
101
+ input[type='text'] {
97
102
  padding-inline-end: convert.to-rem(112px);
98
103
 
99
104
  &[data-invalid] {
@@ -101,13 +106,15 @@
101
106
  }
102
107
  }
103
108
 
104
- .#{$prefix}--number__input-wrapper--warning input[type='number'] {
109
+ .#{$prefix}--number__input-wrapper--warning input[type='number'],
110
+ .#{$prefix}--number__input-wrapper--warning input[type='text'] {
105
111
  padding-inline-end: convert.to-rem(144px);
106
112
  }
107
113
  }
108
114
 
109
115
  .#{$prefix}--number--sm.#{$prefix}--number {
110
- input[type='number'] {
116
+ input[type='number'],
117
+ input[type='text'] {
111
118
  padding-inline-end: convert.to-rem(80px);
112
119
 
113
120
  &[data-invalid] {
@@ -115,12 +122,14 @@
115
122
  }
116
123
  }
117
124
 
118
- .#{$prefix}--number__input-wrapper--warning input[type='number'] {
125
+ .#{$prefix}--number__input-wrapper--warning input[type='number'],
126
+ .#{$prefix}--number__input-wrapper--warning input[type='text'] {
119
127
  padding-inline-end: convert.to-rem(112px);
120
128
  }
121
129
  }
122
130
 
123
- .#{$prefix}--number input[type='number']:disabled {
131
+ .#{$prefix}--number input[type='number']:disabled,
132
+ .#{$prefix}--number input[type='text']:disabled {
124
133
  background-color: $field;
125
134
  border-block-end-color: transparent;
126
135
  color: $text-disabled;
@@ -197,6 +206,10 @@
197
206
  .#{$prefix}--number
198
207
  input[type='number'][data-invalid]
199
208
  ~ .#{$prefix}--number__controls
209
+ .#{$prefix}--number__control-btn,
210
+ .#{$prefix}--number
211
+ input[type='text'][data-invalid]
212
+ ~ .#{$prefix}--number__controls
200
213
  .#{$prefix}--number__control-btn {
201
214
  border-block-end-color: $support-error;
202
215
  }
@@ -205,6 +218,10 @@
205
218
  .#{$prefix}--number
206
219
  input[type='number']:focus
207
220
  ~ .#{$prefix}--number__controls
221
+ .#{$prefix}--number__control-btn,
222
+ .#{$prefix}--number
223
+ input[type='text']:focus
224
+ ~ .#{$prefix}--number__controls
208
225
  .#{$prefix}--number__control-btn {
209
226
  border-width: 2px 0;
210
227
  border-style: solid;
@@ -216,6 +233,10 @@
216
233
  .#{$prefix}--number
217
234
  input[type='number']:focus
218
235
  ~ .#{$prefix}--number__controls
236
+ .#{$prefix}--number__control-btn:last-of-type:hover,
237
+ .#{$prefix}--number
238
+ input[type='text']:focus
239
+ ~ .#{$prefix}--number__controls
219
240
  .#{$prefix}--number__control-btn:last-of-type:hover {
220
241
  box-shadow: -4px 0 0 -2px $focus inset;
221
242
  }
@@ -224,6 +245,10 @@
224
245
  .#{$prefix}--number
225
246
  input[type='number'][data-invalid]:not(:focus)
226
247
  ~ .#{$prefix}--number__controls
248
+ .#{$prefix}--number__control-btn:last-of-type:hover,
249
+ .#{$prefix}--number
250
+ input[type='text'][data-invalid]:not(:focus)
251
+ ~ .#{$prefix}--number__controls
227
252
  .#{$prefix}--number__control-btn:last-of-type:hover {
228
253
  box-shadow: -4px 0 0 -2px $support-error inset;
229
254
  }
@@ -231,6 +256,10 @@
231
256
  .#{$prefix}--number
232
257
  input[type='number'][data-invalid]:not(:focus)
233
258
  ~ .#{$prefix}--number__controls
259
+ .#{$prefix}--number__control-btn:hover,
260
+ .#{$prefix}--number
261
+ input[type='text'][data-invalid]:not(:focus)
262
+ ~ .#{$prefix}--number__controls
234
263
  .#{$prefix}--number__control-btn:hover {
235
264
  border-width: 2px 0;
236
265
  border-style: solid;
@@ -242,6 +271,10 @@
242
271
  .#{$prefix}--number
243
272
  input[type='number'][data-invalid]:not(:focus)
244
273
  ~ .#{$prefix}--number__controls
274
+ .#{$prefix}--number__control-btn:focus:hover,
275
+ .#{$prefix}--number
276
+ input[type='text'][data-invalid]:not(:focus)
277
+ ~ .#{$prefix}--number__controls
245
278
  .#{$prefix}--number__control-btn:focus:hover {
246
279
  @include focus-outline('outline');
247
280
  }
@@ -283,6 +316,10 @@
283
316
  .#{$prefix}--number
284
317
  input[type='number']:disabled
285
318
  + .#{$prefix}--number__controls
319
+ .#{$prefix}--number__rule-divider:first-of-type,
320
+ .#{$prefix}--number
321
+ input[type='text']:disabled
322
+ + .#{$prefix}--number__controls
286
323
  .#{$prefix}--number__rule-divider:first-of-type {
287
324
  background-color: transparent;
288
325
  }
@@ -290,6 +327,10 @@
290
327
  .#{$prefix}--number
291
328
  input[type='number']:disabled
292
329
  + .#{$prefix}--number__controls
330
+ .#{$prefix}--number__rule-divider,
331
+ .#{$prefix}--number
332
+ input[type='text']:disabled
333
+ + .#{$prefix}--number__controls
293
334
  .#{$prefix}--number__rule-divider {
294
335
  background-color: $icon-disabled;
295
336
  }
@@ -350,7 +391,8 @@
350
391
  }
351
392
 
352
393
  // Size Variant styles
353
- .#{$prefix}--number--lg input[type='number'] {
394
+ .#{$prefix}--number--lg input[type='number'],
395
+ .#{$prefix}--number--lg input[type='text'] {
354
396
  block-size: convert.to-rem(48px);
355
397
  }
356
398
 
@@ -362,7 +404,8 @@
362
404
  inline-size: convert.to-rem(48px);
363
405
  }
364
406
 
365
- .#{$prefix}--number--sm input[type='number'] {
407
+ .#{$prefix}--number--sm input[type='number'],
408
+ .#{$prefix}--number--sm input[type='text'] {
366
409
  block-size: convert.to-rem(32px);
367
410
  }
368
411
 
@@ -382,14 +425,19 @@
382
425
  }
383
426
 
384
427
  // No steppers
385
- .#{$prefix}--number--nosteppers input[type='number'] {
428
+ .#{$prefix}--number--nosteppers input[type='number'],
429
+ .#{$prefix}--number--nosteppers input[type='text'] {
386
430
  padding-inline-end: 0;
387
431
  }
388
432
 
389
433
  .#{$prefix}--number--nosteppers input[type='number'][data-invalid],
434
+ .#{$prefix}--number--nosteppers input[type='text'][data-invalid],
435
+ .#{$prefix}--number--nosteppers
436
+ .#{$prefix}--number__input-wrapper--warning
437
+ input[type='number'],
390
438
  .#{$prefix}--number--nosteppers
391
439
  .#{$prefix}--number__input-wrapper--warning
392
- input[type='number'] {
440
+ input[type='text'] {
393
441
  padding-inline-end: convert.to-rem(48px);
394
442
  }
395
443
 
@@ -398,7 +446,8 @@
398
446
  }
399
447
 
400
448
  // Readonly
401
- .#{$prefix}--number--readonly input[type='number'] {
449
+ .#{$prefix}--number--readonly input[type='number'],
450
+ .#{$prefix}--number--readonly input[type='text'] {
402
451
  background: transparent;
403
452
  border-block-end-color: $border-subtle;
404
453
  }
@@ -416,6 +465,10 @@
416
465
  .#{$prefix}--number--readonly
417
466
  input[type='number']:focus
418
467
  ~ .#{$prefix}--number__controls
468
+ .#{$prefix}--number__control-btn:hover,
469
+ .#{$prefix}--number--readonly
470
+ input[type='text']:focus
471
+ ~ .#{$prefix}--number__controls
419
472
  .#{$prefix}--number__control-btn:hover {
420
473
  outline: none;
421
474
  }
@@ -564,7 +617,26 @@
564
617
  input[type='number']:has(~ .#{$prefix}--slug):not(
565
618
  :has(~ .#{$prefix}--slug--revert)
566
619
  ),
567
- .#{$prefix}--number__input-wrapper--slug input[type='number']:disabled {
620
+ .#{$prefix}--number__input-wrapper--slug input[type='number']:disabled,
621
+ .#{$prefix}--number__input-wrapper--decorator
622
+ input[type='text']:has(
623
+ ~ .#{$prefix}--number__input-inner-wrapper--decorator
624
+ .#{$prefix}--ai-label
625
+ ):not(
626
+ :has(
627
+ ~ .#{$prefix}--number__input-inner-wrapper--decorator
628
+ .#{$prefix}--ai-label--revert
629
+ )
630
+ ),
631
+ .#{$prefix}--number__input-wrapper--slug
632
+ input[type='text']:has(~ .#{$prefix}--ai-label):not(
633
+ :has(~ .#{$prefix}--ai-label--revert)
634
+ ),
635
+ .#{$prefix}--number__input-wrapper--slug
636
+ input[type='text']:has(~ .#{$prefix}--slug):not(
637
+ :has(~ .#{$prefix}--slug--revert)
638
+ ),
639
+ .#{$prefix}--number__input-wrapper--slug input[type='text']:disabled {
568
640
  @include ai-gradient;
569
641
 
570
642
  padding-inline-end: convert.to-rem(145px);
@@ -577,7 +649,8 @@
577
649
 
578
650
  inline-size: 100%;
579
651
 
580
- input[type='number'] {
652
+ input[type='number'],
653
+ input[type='text'] {
581
654
  display: none;
582
655
  }
583
656
  }
@@ -604,10 +677,6 @@
604
677
  .#{$prefix}--number__control-btn {
605
678
  @include high-contrast-mode('outline');
606
679
  }
607
-
608
- .#{$prefix}--number__control-btn svg {
609
- @include high-contrast-mode('icon-fill');
610
- }
611
680
  }
612
681
 
613
682
  .#{$prefix}--number__controls:hover .#{$prefix}--number__control-btn::after {
@@ -361,10 +361,6 @@
361
361
  .#{$prefix}--overflow-menu-options__btn:focus {
362
362
  @include high-contrast-mode('focus');
363
363
  }
364
-
365
- .#{$prefix}--overflow-menu svg {
366
- @include high-contrast-mode('icon-fill');
367
- }
368
364
  /*stylelint-enable */
369
365
 
370
366
  $popover-offset: custom-property.get-var('popover-offset', 2.5rem);
@@ -7,33 +7,68 @@
7
7
 
8
8
  @use '../../config' as *;
9
9
  @use '../../breakpoint' as *;
10
- // @use '../../motion' as *;
10
+ @use '../../colors' as *;
11
11
  @use '../../spacing' as *;
12
- // @use '../../theme' as *;
12
+ @use '../../theme' as *;
13
13
  @use '../../type' as *;
14
- // @use '../../layer' as *;
15
- // @use '../../utilities/box-shadow' as *;
16
- // @use '../../utilities/button-reset';
17
- // @use '../../utilities/component-reset';
18
- // @use '../../utilities/focus-outline' as *;
19
- // @use '../../utilities/high-contrast-mode' as *;
20
14
  @use '../../utilities/convert';
21
- // @use '../../utilities/z-index' as *;
22
- // @use '../../utilities/custom-property';
23
15
 
24
16
  /// Page header styles
25
17
  /// @access public
26
18
  /// @group page-header
27
19
  @mixin page-header {
28
20
  .#{$prefix}--page-header {
29
- border: 1px solid rebeccapurple; /* stylelint-disable-line */
21
+ background-color: $layer-01;
30
22
  }
23
+
31
24
  .#{$prefix}--page-header__breadcrumb-bar {
32
- border: 1px solid blue; /* stylelint-disable-line */
25
+ block-size: convert.to-rem(40px);
26
+ }
27
+
28
+ .#{$prefix}--page-header__breadcrumb-bar .#{$prefix}--subgrid {
29
+ block-size: 100%;
30
+ }
31
+
32
+ .#{$prefix}--page-header__breadcrumb-container {
33
+ display: inline-flex;
34
+ align-items: center;
35
+ justify-content: space-between;
36
+ block-size: 100%;
37
+ inline-size: 100%;
38
+ }
39
+
40
+ .#{$prefix}--page-header__breadcrumb__actions-flush {
41
+ .#{$prefix}--css-grid {
42
+ padding-inline-end: 0;
43
+ }
44
+
45
+ .#{$prefix}--css-grid-column {
46
+ margin-inline-end: 0;
47
+ }
48
+ }
49
+
50
+ .#{$prefix}--page-header__breadcrumb-bar-border {
51
+ border-block-end: 1px solid $border-subtle-01;
33
52
  }
53
+
54
+ .#{$prefix}--page-header__breadcrumb__icon {
55
+ margin-inline-end: $spacing-03;
56
+ }
57
+
58
+ .#{$prefix}--page-header__breadcrumb__actions {
59
+ display: inline-flex;
60
+ }
61
+
62
+ .#{$prefix}--page-header__breadcrumb__content-actions {
63
+ margin-inline-end: $spacing-04;
64
+ }
65
+
66
+ .#{$prefix}--page-header__breadcrumb-wrapper {
67
+ display: inline-flex;
68
+ }
69
+
34
70
  .#{$prefix}--page-header__content {
35
- margin: $spacing-06 0;
36
- border: 1px solid red; /* stylelint-disable-line */
71
+ padding: $spacing-06 0;
37
72
  }
38
73
 
39
74
  .#{$prefix}--page-header__content__title-wrapper {
@@ -138,13 +173,19 @@
138
173
  display: flex;
139
174
  overflow: hidden;
140
175
  align-items: center;
141
- justify-content: end;
176
+ justify-content: flex-end;
142
177
  block-size: 100%;
143
178
  }
144
179
 
145
- .#{$prefix}--page-header__tab-bar {
146
- display: grid;
147
- padding: 0 $spacing-05;
148
- border: 1px solid green; /* stylelint-disable-line */
180
+ .#{$prefix}--page-header__tablist-wrapper {
181
+ border-block-end: 1px solid $border-subtle-01;
182
+ }
183
+
184
+ .#{$prefix}--page-header__tab-bar .#{$prefix}--tabs {
185
+ margin-inline-start: -$spacing-05;
186
+ }
187
+
188
+ .#{$prefix}--tab-content {
189
+ background: $background;
149
190
  }
150
191
  }
@@ -14,7 +14,6 @@
14
14
  @use '../../theme' as *;
15
15
  @use '../../utilities/button-reset';
16
16
  @use '../../utilities/focus-outline' as *;
17
- @use '../../utilities/high-contrast-mode' as *;
18
17
  @use '../../utilities/layout';
19
18
  @use '../../utilities/visually-hidden' as *;
20
19
 
@@ -12,7 +12,6 @@
12
12
  @use '../../utilities/button-reset';
13
13
  @use '../../utilities/component-reset';
14
14
  @use '../../utilities/custom-property';
15
- @use '../../utilities/high-contrast-mode' as *;
16
15
  @use '../../utilities/focus-outline' as *;
17
16
  @use '../../utilities/' as *;
18
17
  @use '../../utilities/convert';
@@ -120,7 +120,7 @@ $radio-border-width: 1px !default;
120
120
  transform: scale(0.5);
121
121
 
122
122
  // Allow the selected button to be seen in Windows HCM for IE/Edge
123
- @include high-contrast-mode('icon-fill') {
123
+ @include high-contrast-mode {
124
124
  background-color: ButtonText;
125
125
  }
126
126
 
@@ -20,7 +20,6 @@
20
20
  @use '../../utilities/visually-hidden' as *;
21
21
  @use '../../utilities/component-reset' as *;
22
22
  @use '../../utilities/skeleton' as *;
23
- @use '../../utilities/high-contrast-mode' as *;
24
23
  @use '../../utilities/convert';
25
24
  @use '../../utilities/button-reset';
26
25
 
@@ -381,10 +380,4 @@
381
380
  .#{$prefix}--search--expandable.#{$prefix}--search--disabled svg {
382
381
  fill: $icon-disabled;
383
382
  }
384
-
385
- // Windows HCM fix
386
- .#{$prefix}--search-close svg,
387
- .#{$prefix}--search-magnifier-icon {
388
- @include high-contrast-mode('icon-fill');
389
- }
390
383
  }
@@ -17,7 +17,6 @@
17
17
  @use '../../utilities/component-reset';
18
18
  @use '../../utilities/convert';
19
19
  @use '../../utilities/focus-outline' as *;
20
- @use '../../utilities/high-contrast-mode' as *;
21
20
  @use '../../utilities/skeleton' as *;
22
21
 
23
22
  /// Select styles
@@ -419,10 +418,4 @@
419
418
  ~ .#{$prefix}--select__invalid-icon {
420
419
  inset-inline-end: $spacing-11;
421
420
  }
422
-
423
- // Windows HCM fix
424
-
425
- .#{$prefix}--select__arrow {
426
- @include high-contrast-mode('icon-fill');
427
- }
428
421
  }
@@ -15,7 +15,6 @@
15
15
  @use '../../spacing' as *;
16
16
  @use '../../utilities/focus-outline' as *;
17
17
  @use '../../utilities/skeleton' as *;
18
- @use '../../utilities/high-contrast-mode' as *;
19
18
  @use '../../utilities/convert';
20
19
  @use '../../utilities/component-reset';
21
20
 
@@ -260,13 +259,6 @@
260
259
  }
261
260
  }
262
261
 
263
- // Windows HCM fix
264
- .#{$prefix}--structured-list-input:checked
265
- + .#{$prefix}--structured-list-td
266
- .#{$prefix}--structured-list-svg {
267
- @include high-contrast-mode('icon-fill');
268
- }
269
-
270
262
  .#{$prefix}--structured-list__icon {
271
263
  margin-block-start: $spacing-01;
272
264
  vertical-align: top;
@@ -410,7 +410,7 @@
410
410
  }
411
411
 
412
412
  svg:hover {
413
- fill: $text-primary;
413
+ fill: $icon-primary;
414
414
  }
415
415
 
416
416
  &:hover {
@@ -427,12 +427,12 @@
427
427
  + .#{$prefix}--tabs__nav-item--close
428
428
  .#{$prefix}--tabs__nav-item--close-icon
429
429
  svg {
430
- fill: $text-primary;
430
+ fill: $icon-primary;
431
431
  }
432
432
 
433
433
  .#{$prefix}--tabs__nav-item--close-icon--selected {
434
434
  svg {
435
- fill: $text-primary;
435
+ fill: $icon-primary;
436
436
  }
437
437
  }
438
438
 
@@ -445,7 +445,9 @@
445
445
  cursor: not-allowed;
446
446
 
447
447
  svg {
448
- fill: $tab-text-disabled;
448
+ // Note: $icon-disabled maps to the same color as $tab-text-disabled, but in high contrast mode, $icon-disabled
449
+ // maps to the system-defined "GrayText" color, which is better for high contrast mode support.
450
+ fill: $icon-disabled;
449
451
  }
450
452
 
451
453
  &:focus,
@@ -432,11 +432,6 @@
432
432
  @include high-contrast-mode('outline');
433
433
  }
434
434
 
435
- .#{$prefix}--tag__close-icon svg,
436
- .#{$prefix}--tag__custom-icon svg {
437
- @include high-contrast-mode('icon-fill');
438
- }
439
-
440
435
  .#{$prefix}--tag__close-icon:focus {
441
436
  @include high-contrast-mode('focus');
442
437
  }
@@ -20,7 +20,6 @@
20
20
  @use '../../utilities/placeholder-colors' as *;
21
21
  @use '../../utilities/tooltip' as *;
22
22
  @use '../../utilities/skeleton' as *;
23
- @use '../../utilities/high-contrast-mode' as *;
24
23
  @use '../../utilities/convert';
25
24
  @use '../../utilities/layout';
26
25
  @use '../../utilities/focus-outline' as *;
@@ -155,13 +154,6 @@
155
154
  svg {
156
155
  fill: $icon-secondary;
157
156
  transition: fill $duration-fast-01 motion(standard, productive);
158
-
159
- // Windows, Firefox HCM Fix
160
- @media screen and (-ms-high-contrast: active),
161
- screen and (prefers-contrast) {
162
- // `ButtonText` is a CSS2 system color to help improve colors in HCM
163
- fill: ButtonText;
164
- }
165
157
  }
166
158
 
167
159
  .#{$prefix}--btn.#{$prefix}--text-input--password__visibility__toggle.#{$prefix}--tooltip__trigger:focus {
@@ -173,8 +165,6 @@
173
165
  .#{$prefix}--btn.#{$prefix}--text-input--password__visibility__toggle.#{$prefix}--tooltip__trigger:focus
174
166
  svg {
175
167
  fill: $icon-primary;
176
-
177
- @include high-contrast-mode('icon-fill');
178
168
  }
179
169
 
180
170
  .#{$prefix}--text-input--invalid,
@@ -525,14 +515,6 @@
525
515
  block-size: 1rem;
526
516
  }
527
517
 
528
- // Windows HCM fix
529
- .#{$prefix}--btn.#{$prefix}--btn--icon-only.#{$prefix}--text-input--password__visibility__toggle.#{$prefix}--tooltip__trigger
530
- svg,
531
- .#{$prefix}--btn.#{$prefix}--btn--icon-only.#{$prefix}--text-input--password__visibility__toggle.#{$prefix}--tooltip__trigger:hover
532
- svg {
533
- @include high-contrast-mode('icon-fill');
534
- }
535
-
536
518
  .#{$prefix}--text-input__label-wrapper {
537
519
  display: flex;
538
520
  justify-content: space-between;
@@ -18,7 +18,6 @@
18
18
  @use '../../utilities/convert';
19
19
  @use '../../utilities/component-reset';
20
20
  @use '../../utilities/focus-outline' as *;
21
- @use '../../utilities/high-contrast-mode' as *;
22
21
  @use '../../utilities/visually-hidden' as *;
23
22
  @use '../../utilities/layout';
24
23
 
@@ -214,13 +213,6 @@ $-icon-container-size: calc(#{layout.density('padding-inline')} * 2 + 1rem);
214
213
  @media screen and (prefers-reduced-motion: reduce) {
215
214
  transition: none;
216
215
  }
217
-
218
- // Windows, Firefox HCM Fix
219
- @media screen and (-ms-high-contrast: active),
220
- screen and (prefers-contrast) {
221
- // `ButtonText` is a CSS2 system color to help improve colors in HCM
222
- fill: ButtonText;
223
- }
224
216
  }
225
217
  }
226
218
 
@@ -342,13 +334,6 @@ $-icon-container-size: calc(#{layout.density('padding-inline')} * 2 + 1rem);
342
334
 
343
335
  .#{$prefix}--tile--is-selected .#{$prefix}--tile__checkmark svg {
344
336
  fill: $icon-primary;
345
-
346
- // Windows, Firefox HCM Fix
347
- @media screen and (-ms-high-contrast: active),
348
- screen and (prefers-contrast) {
349
- // `ButtonText` is a CSS2 system color to help improve colors in HCM
350
- fill: ButtonText;
351
- }
352
337
  }
353
338
 
354
339
  .#{$prefix}--tile-content {
@@ -632,11 +617,4 @@ $-icon-container-size: calc(#{layout.density('padding-inline')} * 2 + 1rem);
632
617
  .#{$prefix}--tile--slug-rounded .#{$prefix}--tile__chevron {
633
618
  border-end-end-radius: $spacing-03;
634
619
  }
635
-
636
- // Windows HCM fix
637
- .#{$prefix}--tile__chevron svg,
638
- .#{$prefix}--tile__checkmark svg,
639
- .#{$prefix}--tile--is-selected .#{$prefix}--tile__checkmark svg {
640
- @include high-contrast-mode('icon-fill');
641
- }
642
620
  }
@@ -18,7 +18,6 @@
18
18
  @use '../../../utilities/component-reset';
19
19
  @use '../../../utilities/convert';
20
20
  @use '../../../utilities/focus-outline' as *;
21
- @use '../../../utilities/high-contrast-mode' as *;
22
21
  @use '../../../utilities/z-index' as *;
23
22
 
24
23
  /// UI shell side nav
@@ -542,16 +541,4 @@
542
541
  .#{$prefix}--side-nav .#{$prefix}--header__menu-arrow {
543
542
  fill: $icon-secondary;
544
543
  }
545
-
546
- // Windows HCM fix
547
- .#{$prefix}--side-nav__icon > svg,
548
- .#{$prefix}--side-nav
549
- a.#{$prefix}--header__menu-item:hover
550
- .#{$prefix}--header__menu-arrow,
551
- .#{$prefix}--side-nav
552
- a.#{$prefix}--header__menu-item:focus
553
- .#{$prefix}--header__menu-arrow,
554
- .#{$prefix}--side-nav .#{$prefix}--header__menu-arrow {
555
- @include high-contrast-mode('icon-fill');
556
- }
557
544
  }
@@ -19,6 +19,11 @@ $-default-layer-sets: (
19
19
  theme.$layer-active-02,
20
20
  theme.$layer-active-03,
21
21
  ),
22
+ layer-background: (
23
+ theme.$layer-background-01,
24
+ theme.$layer-background-02,
25
+ theme.$layer-background-03,
26
+ ),
22
27
  layer-hover: (
23
28
  theme.$layer-hover-01,
24
29
  theme.$layer-hover-02,