diff --git a/src/component/breadcrumb/style/_module.scss b/src/component/breadcrumb/style/_module.scss index df72b4946..34f8d5bc6 100644 --- a/src/component/breadcrumb/style/_module.scss +++ b/src/component/breadcrumb/style/_module.scss @@ -5,6 +5,7 @@ @use 'module/spacing'; @use 'module/selector'; +@use 'module/preference'; /** un padding de 4px et une marge négative en compensation sont mis en place afin d'éviter de couper le focus. @@ -66,6 +67,7 @@ un padding de 4px et une marge négative en compensation sont mis en place afin * flèche séparatrice en font-icon */ &:not(:first-child) { + @include icon-forced-color(canvastext, true, before); @include icon(arrow-right-s-line, sm, before) { @include margin-x(1v); vertical-align: -0.0625em; @@ -83,10 +85,19 @@ un padding de 4px et une marge négative en compensation sont mis en place afin @include hover-underline; @include padding(0); + @include preference.forced-colors { + text-decoration: underline; + text-underline-offset: 5px; + } + @include selector.current { pointer-events: none; cursor: default; @include disable-underline; + + @include preference.forced-colors { + text-decoration: none; + } } } } diff --git a/src/component/card/style/module/_content.scss b/src/component/card/style/module/_content.scss index 7a7178a6c..cecd3302e 100644 --- a/src/component/card/style/module/_content.scss +++ b/src/component/card/style/module/_content.scss @@ -104,7 +104,8 @@ @include padding-bottom(20v); // 8v (padding card) + 6v (icon) + 2v (padding end) + 4v (marge texte icon) } - &#{ns(enlarge-link)} &__title a { + &#{ns(enlarge-link)} &__title a, + &#{ns(enlarge-button)} &__title button { @include preference.forced-colors { text-decoration: none; } diff --git a/src/component/connect/style/module/_group.scss b/src/component/connect/style/module/_group.scss index 18366ee06..1427de0cd 100644 --- a/src/component/connect/style/module/_group.scss +++ b/src/component/connect/style/module/_group.scss @@ -3,6 +3,8 @@ /// @group connect //// +@use 'module/preference'; + #{ns-group(connect)} { @include set-text-margin(0 0 4v 0); @@ -12,5 +14,10 @@ #{ns(connect)} + p a { @include text-style(sm); + + @include preference.forced-colors { + text-decoration: underline; + text-underline-offset: 5px; + } } } diff --git a/src/component/consent/style/module/_services.scss b/src/component/consent/style/module/_services.scss index 441753378..48df67cc8 100644 --- a/src/component/consent/style/module/_services.scss +++ b/src/component/consent/style/module/_services.scss @@ -4,6 +4,7 @@ //// @use 'module/spacing'; +@use 'module/preference'; #{ns(consent-service)} { @include relative; @@ -96,6 +97,10 @@ @include after { @include margin-right(-5v); transition: transform 0.3s; + + @include preference.reduce-motion { + transition: none; + } } &[aria-expanded="true"] { diff --git a/src/component/form/deprecated/style/_module.scss b/src/component/form/deprecated/style/_module.scss index 50b376b1b..c2dba2c69 100644 --- a/src/component/form/deprecated/style/_module.scss +++ b/src/component/form/deprecated/style/_module.scss @@ -3,6 +3,8 @@ /// @group form //// +@use 'module/preference'; + #{ns-group(select), ns-group(input)} { &:not(:last-child) { @include margin-bottom(6v); @@ -100,6 +102,9 @@ display: inline-block; @include margin-right(1v); } + @include icon-forced-color(canvastext, true, before); + + & + #{ns(error-text)}, & + #{ns(valid-text)}, diff --git a/src/component/modal/style/_module.scss b/src/component/modal/style/_module.scss index 4ff88a7c3..5cd2d1afe 100644 --- a/src/component/modal/style/_module.scss +++ b/src/component/modal/style/_module.scss @@ -131,6 +131,14 @@ transition: box-shadow 0.3s; z-index: z-index(modal-footer); + @include preference.forced-colors { + border-top: 1px solid; + } + + @include preference.reduce-motion { + transition: none; + } + #{ns-group(btns)} { margin-bottom: -1rem; width: calc(100% + #{space(4v)}); diff --git a/src/component/radio/deprecated/style/_module.scss b/src/component/radio/deprecated/style/_module.scss index f14263b0d..c6a58bc08 100644 --- a/src/component/radio/deprecated/style/_module.scss +++ b/src/component/radio/deprecated/style/_module.scss @@ -1,9 +1,12 @@ @use 'module/spacing'; +@use 'module/preference'; #{ns(fieldset)} { #{ns(fieldset__content)} { #{ns-group(radio)}:not(#{ns(radio-rich)}) { input[type="radio"] { + top: spacing.space(3v); + + label { background-position: calc(#{space(-1v)} + 1px) calc(#{space(2v)} + 1px), calc(#{space(-1v)} + 1px) calc(#{space(2v)} + 1px); } @@ -12,6 +15,8 @@ #{ns-group(radio)}--sm:not(#{ns(radio-rich)}) { input[type="radio"] { + top: spacing.space(4v); + + label { background-position: calc(#{space(-0.5v)} + 1px) calc(#{space(4v)} - 1px), calc(#{space(-0.5v)} + 1px) calc(#{space(4v)} - 1px); } @@ -78,6 +83,10 @@ background-repeat: no-repeat, no-repeat, no-repeat, no-repeat; background-position: 0 0, 0 100%, 100% 0, 0 0.25rem; + @include preference.forced-colors { + outline: 1px solid; + } + img, svg { @include max-size(14v, 14v); diff --git a/src/component/select/style/_module.scss b/src/component/select/style/_module.scss index 3b0cdb8f8..aa18770e6 100644 --- a/src/component/select/style/_module.scss +++ b/src/component/select/style/_module.scss @@ -5,6 +5,7 @@ @use 'module/spacing'; @use 'module/reset'; +@use 'module/preference'; #{ns(select)} { display: block; @@ -16,6 +17,9 @@ background-repeat: no-repeat; background-position: spacing.space(calc(100% - 4v) 50%); background-size: spacing.space(4v 4v); + @include preference.forced-colors { + background-image: url("data:image/svg+xml;charset=utf-8,"); + } } #{ns(select-group)} { diff --git a/src/component/summary/style/_module.scss b/src/component/summary/style/_module.scss index 377c7b1d8..be8cd9b5c 100644 --- a/src/component/summary/style/_module.scss +++ b/src/component/summary/style/_module.scss @@ -44,6 +44,11 @@ font-weight: bold; } + @include preference.forced-colors { + text-decoration: underline; + text-underline-offset: 5px; + } + &:not(:hover):not(:active) { @include link-underline-hover-only; } diff --git a/src/core/style/display/tool/_hr.scss b/src/core/style/display/tool/_hr.scss index 857886a9d..2fef8b1fe 100644 --- a/src/core/style/display/tool/_hr.scss +++ b/src/core/style/display/tool/_hr.scss @@ -3,6 +3,7 @@ /// @group core //// +@use 'module/preference'; @use 'module/color'; @mixin build-hr() { @@ -13,6 +14,10 @@ background-size: 100% 1px; background-repeat: no-repeat; background-position: 0 0; + + @include preference.forced-colors { + border-top: 1px solid; + } } @mixin build-hr-scheme($legacy) {