@codegouvfr/react-dsfr
Version:
French State Design System React integration library
1,514 lines (1,283 loc) • 685 kB
CSS
/*!
* DSFR v1.12.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
*/
@charset "UTF-8";
/* ¯¯¯¯¯¯¯¯¯ *\
UPLOAD
\* ˍˍˍˍˍˍˍˍˍ */
.fr-upload-group .fr-label .fr-hint-text {
margin-top: 0.75rem;
}
.fr-upload-group .fr-label + .fr-upload {
margin-top: 1rem;
}
.fr-upload-group .fr-message:first-child {
margin-top: 0.5rem;
}
.fr-upload {
font-size: 0.875rem;
line-height: 1.5rem;
width: 100%;
display: inline-flex;
margin: 0;
}
.fr-upload:disabled::-webkit-file-upload-button {
outline-style: none;
cursor: not-allowed;
}
.fr-upload::-webkit-file-upload-button {
-webkit-appearance: button;
-moz-appearance: button;
appearance: button;
font: inherit;
cursor: pointer;
margin-right: 0.5rem;
}
/* ¯¯¯¯¯¯¯¯¯ *\
RANGE
\* ˍˍˍˍˍˍˍˍˍ */
.fr-range-group {
position: relative;
}
.fr-range-group--valid::before,
.fr-range-group--error::before {
content: "";
display: block;
pointer-events: none;
position: absolute;
top: 0;
right: -0.75rem;
bottom: 0;
left: -0.75rem;
background-repeat: no-repeat;
background-position: 0 0;
background-size: 0.125rem 100%;
}
.fr-range {
--thumb-size: 1.5rem;
position: relative;
display: flex;
flex-direction: row;
justify-content: space-between;
flex-wrap: wrap;
}
.fr-range input[type=range] {
outline: none;
width: 100%;
}
.fr-range__output {
visibility: hidden;
color: var(--text-active-blue-france);
}
.fr-range__output,
.fr-range__min,
.fr-range__max {
text-align: center;
min-width: var(--thumb-size);
font-size: 0.75rem;
line-height: 1.25rem;
}
.fr-range[data-fr-js-range] {
--progress-left: 0;
--progress-right: calc(var(--thumb-size) * 0.5);
}
.fr-range[data-fr-js-range]::before,
.fr-range[data-fr-js-range]::after {
content: "";
display: block;
position: absolute;
top: 1.625rem;
right: 0;
left: 0;
width: 100%;
height: 0.75rem;
border-radius: 0.375rem;
}
.fr-range[data-fr-js-range]::before {
outline-offset: -1px;
box-shadow: inset 0 0 0 1px var(--border-action-high-blue-france);
}
.fr-range[data-fr-js-range]::after {
clip-path: polygon(var(--progress-left) 0, var(--progress-right) 0, var(--progress-right) 100%, var(--progress-left) 100%);
background-color: var(--background-active-blue-france);
--idle: transparent;
--hover: var(--background-active-blue-france-hover);
--active: var(--background-active-blue-france-active);
}
.fr-range[data-fr-js-range] input[type=range] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background-color: transparent;
width: 100%;
height: var(--thumb-size);
z-index: 1;
}
.fr-range[data-fr-js-range] input[type=range]:not(:only-of-type) {
pointer-events: none;
}
.fr-range[data-fr-js-range] input[type=range]::-webkit-slider-thumb {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
width: var(--thumb-size);
height: var(--thumb-size);
border-radius: 50%;
border: none;
pointer-events: auto;
z-index: calc(var(--ground) + 500);
background-color: var(--background-raised-grey);
--hover: var(--background-raised-grey-hover);
--active: var(--background-raised-grey-active);
filter: drop-shadow(var(--raised-shadow));
background-color: var(--background-default-grey);
--idle: transparent;
--hover: var(--background-default-grey-hover);
--active: var(--background-default-grey-active);
border: 1px solid var(--border-action-high-blue-france);
}
.fr-range[data-fr-js-range] input[type=range]::-webkit-slider-thumb:active {
z-index: 2;
}
.fr-range[data-fr-js-range] input[type=range]::-moz-range-thumb {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
width: var(--thumb-size);
height: var(--thumb-size);
border-radius: 50%;
border: none;
pointer-events: auto;
z-index: calc(var(--ground) + 500);
background-color: var(--background-raised-grey);
--hover: var(--background-raised-grey-hover);
--active: var(--background-raised-grey-active);
filter: drop-shadow(var(--raised-shadow));
background-color: var(--background-default-grey);
--idle: transparent;
--hover: var(--background-default-grey-hover);
--active: var(--background-default-grey-active);
border: 1px solid var(--border-action-high-blue-france);
}
.fr-range[data-fr-js-range] input[type=range]::-moz-range-thumb:active {
z-index: 2;
}
.fr-range[data-fr-js-range] input[type=range]:disabled {
border-color: graytext;
}
.fr-range[data-fr-js-range] .fr-range__output {
visibility: visible;
}
.fr-range--sm {
--thumb-size: 1rem;
}
.fr-range--sm[data-fr-js-range]::before,
.fr-range--sm[data-fr-js-range]::after {
top: 1.5rem;
height: 0.5rem;
border-radius: 0.25rem;
}
.fr-range--step[data-fr-js-range] {
--step-width: 0;
}
.fr-range--step[data-fr-js-range]::before,
.fr-range--step[data-fr-js-range]::after {
padding-left: 0.625rem;
padding-right: 0.625rem;
background-repeat: repeat-x;
background-size: var(--step-width) 100%;
background-position: 0.625rem 0;
background-clip: content-box;
}
.fr-range--step.fr-range--sm[data-fr-js-range]::before,
.fr-range--step.fr-range--sm[data-fr-js-range]::after {
background-position: 0.375rem 0;
padding-left: 0.375rem;
padding-right: 0.375rem;
}
.fr-range--double .fr-range__output {
min-width: calc(var(--thumb-size) * 2);
}
.fr-range--double[data-fr-js-range] input[type=range] {
width: calc(100% - var(--thumb-size));
}
.fr-range--double[data-fr-js-range] input[type=range]:nth-of-type(1) {
margin-right: var(--thumb-size);
}
.fr-range--double[data-fr-js-range] input[type=range]:nth-of-type(2) {
position: absolute;
right: 0;
top: 1.25rem;
}
.fr-range--double.fr-range--step[data-fr-js-range]::before,
.fr-range--double.fr-range--step[data-fr-js-range]::after {
background-size: 0;
}
.fr-range[data-fr-js-range] input[type=range]:disabled::-webkit-slider-thumb {
border: 1px solid var(--border-disabled-grey);
}
.fr-range[data-fr-js-range] input[type=range]:disabled::-moz-range-thumb {
border: 1px solid var(--border-disabled-grey);
}
.fr-range__min,
.fr-range__max {
color: var(--text-mention-grey);
}
.fr-range--step[data-fr-js-range]::before {
background-image: radial-gradient(circle at 2px 50%, var(--background-action-high-blue-france) 0, var(--background-action-high-blue-france) 1px, transparent 1px);
}
.fr-range--step[data-fr-js-range]::after {
background-image: radial-gradient(circle at 2px 50%, var(--background-action-low-blue-france) 0, var(--background-action-low-blue-france) 2px, transparent 2px);
box-shadow: inset 10px 0 0 0 var(--border-active-blue-france), inset -10px 0 0 0 var(--border-active-blue-france);
}
.fr-range--step.fr-range--sm[data-fr-js-range]::after {
box-shadow: inset 6px 0 0 0 var(--border-active-blue-france), inset -6px 0 0 0 var(--border-active-blue-france);
}
.fr-range-group--error::before {
background-image: linear-gradient(0deg, var(--border-plain-error), var(--border-plain-error));
}
.fr-range-group--valid::before {
background-image: linear-gradient(0deg, var(--border-plain-success), var(--border-plain-success));
}
.fr-range-group--disabled .fr-range[data-fr-js-range]::before {
box-shadow: inset 0 0 0 1px var(--border-disabled-grey);
}
.fr-range-group--disabled .fr-range[data-fr-js-range]::after {
background-color: var(--background-disabled-grey);
--idle: transparent;
--hover: var(--background-disabled-grey-hover);
--active: var(--background-disabled-grey-active);
}
.fr-range-group--disabled .fr-range--step[data-fr-js-range]::before {
background-image: radial-gradient(circle at 2px 50%, var(--background-disabled-grey) 0, var(--background-disabled-grey) 1px, transparent 1px);
}
.fr-range-group--disabled .fr-range--step[data-fr-js-range]::after {
background-image: radial-gradient(circle at 2px 50%, var(--background-default-grey) 0, var(--background-default-grey) 2px, transparent 2px);
box-shadow: inset 10px 0 0 0 var(--border-disabled-grey), inset -10px 0 0 0 var(--border-disabled-grey);
}
.fr-range-group--disabled .fr-range__output,
.fr-range-group--disabled .fr-range__min,
.fr-range-group--disabled .fr-range__max {
color: var(--text-disabled-grey);
}
/* ¯¯¯¯¯¯¯¯¯ *\
ACCORDION
\* ˍˍˍˍˍˍˍˍˍ */
.fr-accordion {
position: relative;
}
.fr-accordion::before {
content: "";
display: block;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
box-shadow: inset 0 1px 0 0 var(--border-default-grey), 0 1px 0 0 var(--border-default-grey);
}
.fr-accordion__title {
margin: 0;
display: block;
font-size: unset;
line-height: unset;
}
.fr-accordion:focus-within {
z-index: 1;
}
.fr-accordion__btn {
--text-spacing: 0;
--title-spacing: 0;
display: inline-flex;
flex-direction: row;
align-items: center;
width: -moz-fit-content;
width: fit-content;
font-weight: 500;
font-size: 1rem;
line-height: 1.5rem;
min-height: 3rem;
padding: 0.75rem 1rem;
overflow: initial;
max-width: 100%;
max-height: none;
width: 100%;
text-align: left;
margin: 0;
color: var(--text-action-high-blue-france);
}
.fr-accordion__btn::before,
.fr-accordion__btn::after {
display: block;
}
.fr-accordion__btn::after {
--icon-size: 1rem;
margin-right: -0.125rem;
margin-left: 0.25rem;
flex: 0 0 auto;
display: inline-block;
vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
background-color: currentColor;
width: var(--icon-size);
height: var(--icon-size);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-image: url("../icons/system/arrow-down-s-line.svg");
mask-image: url("../icons/system/arrow-down-s-line.svg");
content: "";
transition: transform 0.3s;
margin-right: 0;
margin-left: auto;
}
.fr-accordion__btn::before {
content: none;
}
.fr-accordion__btn[aria-expanded=true]::after {
transform: rotate(-180deg);
}
.fr-accordion .fr-collapse {
--ul-type: disc;
--ol-type: decimal;
--ul-start: 1rem;
--ol-start: 1.5rem;
--xl-block: 0.5rem;
--li-bottom: 0.25rem;
--xl-base: 1em;
--ol-content: counters(li-counter, ".") ". ";
transition: visibility 0.3s, padding 0.3s;
}
.fr-accordion .fr-collapse--expanded {
padding-top: 1rem;
padding-bottom: 1.5rem;
}
.fr-accordions-group {
--ul-type: none;
--ol-type: none;
--ul-start: 0;
--ol-start: 0;
--xl-block: 0;
--li-bottom: 0;
--ol-content: none;
}
.fr-accordion__btn[aria-expanded=true] {
background-color: var(--background-open-blue-france);
--idle: transparent;
--hover: var(--background-open-blue-france-hover);
--active: var(--background-open-blue-france-active);
}
/* ------------------------------------ *\
Badge
\* ------------------------------------ */
.fr-badge {
--text-spacing: 0;
--title-spacing: 0;
display: inline-flex;
flex-direction: row;
align-items: center;
width: -moz-fit-content;
width: fit-content;
--underline-img: none;
--hover-tint: var(--hover);
font-size: 0.875rem;
line-height: 1.5rem;
min-height: 1.5rem;
padding: 0 0.5rem;
overflow: initial;
max-height: none;
font-weight: 700;
max-width: 100%;
text-transform: uppercase;
border-radius: 0.25rem;
color: var(--text-default-grey);
background-color: var(--background-contrast-grey);
--idle: transparent;
--hover: var(--background-contrast-grey-hover);
--active: var(--background-contrast-grey-active);
}
.fr-badge::before,
.fr-badge::after {
display: block;
}
.fr-badge--icon-left[class^=fr-icon-],
.fr-badge--icon-left[class*=" fr-icon-"],
.fr-badge--icon-left[class^=fr-fi-],
.fr-badge--icon-left[class*=" fr-fi-"] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-badge--icon-left[class^=fr-icon-]::before,
.fr-badge--icon-left[class*=" fr-icon-"]::before,
.fr-badge--icon-left[class^=fr-fi-]::before,
.fr-badge--icon-left[class*=" fr-fi-"]::before {
--icon-size: 1rem;
margin-left: -0.125rem;
margin-right: 0.25rem;
}
.fr-badge[class^=fr-icon-]:not([class*=fr-badge--icon-])::before,
.fr-badge[class*=" fr-icon-"]:not([class*=fr-badge--icon-])::before,
.fr-badge[class^=fr-fi-]:not([class*=fr-badge--icon-])::before,
.fr-badge[class*=" fr-fi-"]:not([class*=fr-badge--icon-])::before {
content: none;
}
.fr-badge--sm {
font-size: 0.75rem;
line-height: 1.25rem;
min-height: 1.125rem;
padding: 0 0.375rem;
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-badge--sm.fr-badge--icon-left[class^=fr-icon-],
.fr-badge--sm.fr-badge--icon-left[class*=" fr-icon-"],
.fr-badge--sm.fr-badge--icon-left[class^=fr-fi-],
.fr-badge--sm.fr-badge--icon-left[class*=" fr-fi-"] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-badge--sm.fr-badge--icon-left[class^=fr-icon-]::before,
.fr-badge--sm.fr-badge--icon-left[class*=" fr-icon-"]::before,
.fr-badge--sm.fr-badge--icon-left[class^=fr-fi-]::before,
.fr-badge--sm.fr-badge--icon-left[class*=" fr-fi-"]::before {
--icon-size: 0.75rem;
margin-left: -0.09375rem;
margin-right: 0.25rem;
}
.fr-badge--sm[class^=fr-icon-]:not([class*=fr-badge--icon-])::before,
.fr-badge--sm[class*=" fr-icon-"]:not([class*=fr-badge--icon-])::before,
.fr-badge--sm[class^=fr-fi-]:not([class*=fr-badge--icon-])::before,
.fr-badge--sm[class*=" fr-fi-"]:not([class*=fr-badge--icon-])::before {
content: none;
}
.fr-badge::before {
--icon-size: 1rem;
margin-left: -0.125rem;
margin-right: 0.25rem;
flex: 0 0 auto;
display: inline-block;
vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
background-color: currentColor;
width: var(--icon-size);
height: var(--icon-size);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
}
.fr-badge--sm::before {
--icon-size: 0.75rem;
margin-left: -0.09375rem;
margin-right: 0.25rem;
}
.fr-badge.fr-badge--info::before,
.fr-badge--sm.fr-badge--info::before {
-webkit-mask-image: url("../icons/system/fr--info-fill.svg");
mask-image: url("../icons/system/fr--info-fill.svg");
}
.fr-badge.fr-badge--success::before,
.fr-badge--sm.fr-badge--success::before {
-webkit-mask-image: url("../icons/system/fr--success-fill.svg");
mask-image: url("../icons/system/fr--success-fill.svg");
}
.fr-badge.fr-badge--error::before,
.fr-badge--sm.fr-badge--error::before {
-webkit-mask-image: url("../icons/system/fr--error-fill.svg");
mask-image: url("../icons/system/fr--error-fill.svg");
}
.fr-badge.fr-badge--warning::before,
.fr-badge--sm.fr-badge--warning::before {
-webkit-mask-image: url("../icons/system/fr--warning-fill.svg");
mask-image: url("../icons/system/fr--warning-fill.svg");
}
.fr-badge.fr-badge--new::before,
.fr-badge--sm.fr-badge--new::before {
-webkit-mask-image: url("../icons/weather/flashlight-fill.svg");
mask-image: url("../icons/weather/flashlight-fill.svg");
}
.fr-badge--info::before,
.fr-badge--success::before,
.fr-badge--error::before,
.fr-badge--warning::before,
.fr-badge--new::before,
.fr-badge--sm--info::before,
.fr-badge--sm--success::before,
.fr-badge--sm--error::before,
.fr-badge--sm--warning::before,
.fr-badge--sm--new::before {
content: "";
}
.fr-badge.fr-badge--no-icon::before,
.fr-badge--sm.fr-badge--no-icon::before {
content: none;
}
.fr-badges-group {
--ul-type: none;
--ol-type: none;
--ul-start: 0;
--ol-start: 0;
--xl-block: 0;
--li-bottom: 0;
--ol-content: none;
display: flex;
flex-wrap: wrap;
margin-left: -0.25rem;
margin-right: -0.25rem;
margin-bottom: 0;
}
.fr-badges-group > li {
display: inline-flex;
max-width: 100%;
}
.fr-badges-group .fr-badge {
margin: 0 0.25rem 0.5rem 0.25rem;
}
.fr-badges-group--sm .fr-badge {
font-size: 0.75rem;
line-height: 1.25rem;
min-height: 1.125rem;
padding: 0 0.375rem;
}
.fr-badges-group--sm .fr-badge::before,
.fr-badges-group--sm .fr-badge::after {
--icon-size: 0.75rem;
}
.fr-badge--info {
color: var(--text-default-info);
background-color: var(--background-contrast-info);
--idle: transparent;
--hover: var(--background-contrast-info-hover);
--active: var(--background-contrast-info-active);
}
.fr-badge--error {
color: var(--text-default-error);
background-color: var(--background-contrast-error);
--idle: transparent;
--hover: var(--background-contrast-error-hover);
--active: var(--background-contrast-error-active);
}
.fr-badge--success {
color: var(--text-default-success);
background-color: var(--background-contrast-success);
--idle: transparent;
--hover: var(--background-contrast-success-hover);
--active: var(--background-contrast-success-active);
}
.fr-badge--warning {
color: var(--text-default-warning);
background-color: var(--background-contrast-warning);
--idle: transparent;
--hover: var(--background-contrast-warning-hover);
--active: var(--background-contrast-warning-active);
}
.fr-badge--new {
color: var(--text-action-high-yellow-moutarde);
background-color: var(--background-contrast-yellow-moutarde);
--idle: transparent;
--hover: var(--background-contrast-yellow-moutarde-hover);
--active: var(--background-contrast-yellow-moutarde-active);
}
.fr-badge--green-tilleul-verveine {
color: var(--text-label-green-tilleul-verveine);
background-color: var(--background-contrast-green-tilleul-verveine);
--idle: transparent;
--hover: var(--background-contrast-green-tilleul-verveine-hover);
--active: var(--background-contrast-green-tilleul-verveine-active);
}
.fr-badge--green-bourgeon {
color: var(--text-label-green-bourgeon);
background-color: var(--background-contrast-green-bourgeon);
--idle: transparent;
--hover: var(--background-contrast-green-bourgeon-hover);
--active: var(--background-contrast-green-bourgeon-active);
}
.fr-badge--green-emeraude {
color: var(--text-label-green-emeraude);
background-color: var(--background-contrast-green-emeraude);
--idle: transparent;
--hover: var(--background-contrast-green-emeraude-hover);
--active: var(--background-contrast-green-emeraude-active);
}
.fr-badge--green-menthe {
color: var(--text-label-green-menthe);
background-color: var(--background-contrast-green-menthe);
--idle: transparent;
--hover: var(--background-contrast-green-menthe-hover);
--active: var(--background-contrast-green-menthe-active);
}
.fr-badge--green-archipel {
color: var(--text-label-green-archipel);
background-color: var(--background-contrast-green-archipel);
--idle: transparent;
--hover: var(--background-contrast-green-archipel-hover);
--active: var(--background-contrast-green-archipel-active);
}
.fr-badge--blue-ecume {
color: var(--text-label-blue-ecume);
background-color: var(--background-contrast-blue-ecume);
--idle: transparent;
--hover: var(--background-contrast-blue-ecume-hover);
--active: var(--background-contrast-blue-ecume-active);
}
.fr-badge--blue-cumulus {
color: var(--text-label-blue-cumulus);
background-color: var(--background-contrast-blue-cumulus);
--idle: transparent;
--hover: var(--background-contrast-blue-cumulus-hover);
--active: var(--background-contrast-blue-cumulus-active);
}
.fr-badge--purple-glycine {
color: var(--text-label-purple-glycine);
background-color: var(--background-contrast-purple-glycine);
--idle: transparent;
--hover: var(--background-contrast-purple-glycine-hover);
--active: var(--background-contrast-purple-glycine-active);
}
.fr-badge--pink-macaron {
color: var(--text-label-pink-macaron);
background-color: var(--background-contrast-pink-macaron);
--idle: transparent;
--hover: var(--background-contrast-pink-macaron-hover);
--active: var(--background-contrast-pink-macaron-active);
}
.fr-badge--pink-tuile {
color: var(--text-label-pink-tuile);
background-color: var(--background-contrast-pink-tuile);
--idle: transparent;
--hover: var(--background-contrast-pink-tuile-hover);
--active: var(--background-contrast-pink-tuile-active);
}
.fr-badge--yellow-tournesol {
color: var(--text-label-yellow-tournesol);
background-color: var(--background-contrast-yellow-tournesol);
--idle: transparent;
--hover: var(--background-contrast-yellow-tournesol-hover);
--active: var(--background-contrast-yellow-tournesol-active);
}
.fr-badge--yellow-moutarde {
color: var(--text-label-yellow-moutarde);
background-color: var(--background-contrast-yellow-moutarde);
--idle: transparent;
--hover: var(--background-contrast-yellow-moutarde-hover);
--active: var(--background-contrast-yellow-moutarde-active);
}
.fr-badge--orange-terre-battue {
color: var(--text-label-orange-terre-battue);
background-color: var(--background-contrast-orange-terre-battue);
--idle: transparent;
--hover: var(--background-contrast-orange-terre-battue-hover);
--active: var(--background-contrast-orange-terre-battue-active);
}
.fr-badge--brown-cafe-creme {
color: var(--text-label-brown-cafe-creme);
background-color: var(--background-contrast-brown-cafe-creme);
--idle: transparent;
--hover: var(--background-contrast-brown-cafe-creme-hover);
--active: var(--background-contrast-brown-cafe-creme-active);
}
.fr-badge--brown-caramel {
color: var(--text-label-brown-caramel);
background-color: var(--background-contrast-brown-caramel);
--idle: transparent;
--hover: var(--background-contrast-brown-caramel-hover);
--active: var(--background-contrast-brown-caramel-active);
}
.fr-badge--brown-opera {
color: var(--text-label-brown-opera);
background-color: var(--background-contrast-brown-opera);
--idle: transparent;
--hover: var(--background-contrast-brown-opera-hover);
--active: var(--background-contrast-brown-opera-active);
}
.fr-badge--beige-gris-galet {
color: var(--text-label-beige-gris-galet);
background-color: var(--background-contrast-beige-gris-galet);
--idle: transparent;
--hover: var(--background-contrast-beige-gris-galet-hover);
--active: var(--background-contrast-beige-gris-galet-active);
}
.fr-badge-group {
--ul-type: none;
--ol-type: none;
--ul-start: 0;
--ol-start: 0;
--xl-block: 0;
--li-bottom: 0;
--ol-content: none;
display: flex;
flex-wrap: wrap;
margin-bottom: 0;
}
.fr-badge-group > li {
display: inline-flex;
max-width: 100%;
}
.fr-badge-group .fr-badge {
margin-right: 0.5rem;
margin-bottom: 0.5rem;
}
/* ¯¯¯¯¯¯¯¯¯ *\
LOGO
\* ˍˍˍˍˍˍˍˍˍ */
.fr-logo {
--text-spacing: 0;
--underline-img: none;
display: inline-block;
font-weight: 700;
line-height: 1.0317460317em;
letter-spacing: -0.01em;
text-transform: uppercase;
vertical-align: middle;
text-indent: -0.1em;
font-size: 1.05rem;
color: var(--text-black-white-grey);
}
.fr-logo::before {
width: 2.75rem;
height: 1rem;
margin-bottom: 0.3333333333rem;
background-size: 2.75rem 1.125rem, 2.75rem 1rem, 0;
background-position: 0 -0.0625rem, 0 0, 0 0;
content: "";
display: block;
background-repeat: no-repeat, no-repeat, no-repeat;
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 18'%3E%3Cpath fill='%23fff' d='M11.3 10.2c-.9.6-1.7 1.3-2.3 2.1v-.1c.4-.5.7-1 1-1.5.4-.2.7-.5 1-.8.5-.5 1-1 1.7-1.3.3-.1.5-.1.8 0-.1.1-.2.1-.4.2H13v-.1c-.3.3-.7.5-1 .9-.1.2-.2.6-.7.6 0 .1.1 0 0 0zm1.6 4.6c0-.1-.1 0-.2 0l-.1.1-.1.1-.2.2s.1.1.2 0l.1-.1c.1 0 .2-.1.2-.2.1 0 .1 0 .1-.1 0 .1 0 0 0 0zm-1.6-4.3c.1 0 .2 0 .2-.1s.1-.1.1-.1v-.1c-.2.1-.3.2-.3.3zm2.4 1.9s0-.1 0 0c.1-.1.2-.1.3-.1.7-.1 1.4-.3 2.1-.6-.8-.5-1.7-.9-2.6-1h.1c-.1-.1-.3-.1-.5-.2h.1c-.2-.1-.5-.1-.7-.2.1 0 .2-.2.2-.3h-.1c-.4.2-.6.5-.8.9.2.1.5 0 .7.1h-.3c-.1 0-.2.1-.2.2h.1c-.1 0-.1.1-.2.1.1.1.2 0 .4 0 0 .1.1.1.1.1-.1 0-.2.1-.3.3-.1.2-.2.2-.3.3v.1c-.3.2-.6.5-.9.8v.1c-.1.1-.2.1-.2.2v.1c.4-.1.6-.4 1-.5l.6-.3c.2 0 .3-.1.5-.1v.1h.2c0 .1-.2 0-.1.1s.3.1.4 0c.2-.2.3-.2.4-.2zM12.4 14c-.4.2-.9.2-1.2.4 0 0 0 .1-.1.1 0 0-.1 0-.1.1-.1 0-.1.1-.2.2l-.1.1s0 .1.1 0l.1-.1s-.1.1-.1.2V15.3l-.1.1s0 .1-.1.1l-.1.1.2-.2.1-.1h.2s0-.1.1-.1c.1-.1.2-.2.3-.2h.1c.1-.1.3-.1.4-.2.1-.1.2-.2.3-.2.2-.2.5-.3.8-.5-.1 0-.2-.1-.3-.1 0 .1-.2 0-.3 0zM30 9.7c-.1.2-.4.2-.6.3-.2.2 0 .4.1.5.1.3-.2.5-.4.5.1.1.2.1.2.1 0 .2.2.2.1.4s-.5.3-.3.5c.1.2.1.5 0 .7-.1.2-.3.4-.5.5-.2.1-.4.1-.6 0-.1 0-.1-.1-.2-.1-.5-.1-1-.2-1.5-.2-.1 0-.3.1-.4.1-.1.1-.3.2-.4.3l-.1.1c-.1.1-.2.2-.2.3-.1.2-.2.4-.2.6-.2.5-.2 1 0 1.4 0 0 1 .3 1.7.6.2.1.5.2.7.4l1.7 1H13.2l1.6-1c.6-.4 1.3-.7 2-1 .5-.2 1.1-.5 1.5-.9.2-.2.3-.4.5-.5.3-.4.6-.7 1-1l.3-.3s0-.1.1-.1c-.2.1-.2.2-.4.2 0 0-.1 0 0-.1s.2-.2.3-.2v-.1c-.4 0-.7.2-1 .5h-.2c-.5.2-.8.5-1.2.7v-.1c-.2.1-.4.2-.5.2-.2 0-.5.1-.8 0-.4 0-.7.1-1.1.2-.2.1-.4.1-.6.2v.1l-.2.2c-.2.1-.3.2-.5.4l-.5.5h-.1l.1-.1.1-.1c0-.1.1-.1.1-.2.2-.1.3-.3.5-.4 0 0-.1 0 0 0 0 0 0-.1.1-.1l-.1.1c-.1.1-.1.2-.2.2v-.1-.1l.2-.2c.1-.1.2-.1.3-.2h.1c-.2.1-.3.1-.5.2H14h-.1c0-.1.1-.1.2-.2h.1c1-.8 2.3-.6 3.4-1 .1-.1.2-.1.3-.2.1-.1.3-.2.5-.3.2-.2.4-.4.5-.7v-.1c-.4.4-.8.7-1.3 1-.6.2-1.3.4-2 .4 0-.1.1-.1.1-.1 0-.1.1-.1.1-.2h.1s0-.1.1-.1h.1c-.1-.1-.3.1-.4 0 .1-.1 0-.2.1-.2h.1s0-.1.1-.1c.5-.3.9-.5 1.3-.7-.1 0-.1.1-.2 0 .1 0 0-.1.1-.1.3-.1.6-.3.9-.4-.1 0-.2.1-.3 0 .1 0 .1-.1.2-.1v-.1h0c0-.1.1 0 .2-.1h-.1c.1-.1.2-.2.4-.2 0-.1-.1 0-.1-.1h.1-.5c-.1 0 0-.1 0-.1.1-.2.2-.5.3-.7h-.1c-.3.3-.8.5-1.2.6h-.2c-.2.1-.4.1-.5 0-.1-.1-.2-.2-.3-.2-.2-.1-.5-.3-.8-.4-.7-.2-1.5-.4-2.3-.3.3-.1.7-.2 1.1-.3.5-.2 1-.3 1.5-.3h-.3c-.4 0-.9.1-1.3.2-.3.1-.6.2-.9.2-.2.1-.3.2-.5.2v-.1c.3-.4.7-.7 1.1-.8.5-.1 1.1 0 1.6.1.4 0 .8.1 1.1.2.1 0 .2.2.3.3.2.1.4 0 .5.1v-.2c.1-.1.3 0 .4 0 .2-.2-.2-.4-.3-.6v-.1c.2.2.5.4.7.6.1.1.5.2.5 0-.2-.3-.4-.6-.7-.9v-.2c-.1 0-.1 0-.1-.1-.1-.1-.1-.2-.1-.3-.1-.2 0-.4-.1-.5-.1-.2-.1-.3-.1-.5-.1-.5-.2-1-.3-1.4-.1-.6.3-1 .6-1.5.2-.4.5-.7.8-1 .1-.4.3-.7.6-1 .3-.3.6-.5.9-.6.3-.1.5-.2.8-.3l2.5-.4H25l1.8.3c.1 0 .2 0 .2.1.1.1.3.2.4.2.2.1.4.3.6.5.1.1.2.3.1.4-.1.1-.1.4-.2.4-.2.1-.4.1-.6.1-.1 0-.2 0-.4-.1.5.2.9.4 1.2.8 0 .1.2.1.3.1v.1c-.1.1-.1.1-.1.2h.1c.1-.1.1-.4.3-.3.2.1.2.3.1.4-.1.1-.2.2-.4.3v.2c.1.1.1.2.2.4s.1.5.2.7c.1.5.2.9.2 1.4 0 .2-.1.5 0 .7l.3.6c.1.2.2.3.3.5.2.3.6.6.4 1zm-15.6 5.2c-.1 0-.1.1-.1.1s.1 0 .1-.1zm5.8-1.8c-.1.1 0 0 0 0zm-6.7-.2c0 .1.1 0 .1 0 .2-.1.5 0 .6-.2-.1-.1-.2 0-.2-.1-.1 0-.2 0-.2.1-.1.1-.3.1-.3.2z'/%3E%3Cpath fill='gray' d='M27.9 6.8c.1 0 .3 0 .3.1-.1.2-.4.3-.6.5h-.1c-.1.1-.1.2-.1.2h-.3c.1.1.3.2.5.2l.1.1h.2V8c-.1.1-.2.1-.4.1.2.1.5.1.7 0 .2-.1 0-.4.1-.5-.1 0 0-.1-.1-.1.1-.1.1-.2.2-.2s.1 0 .2-.1c0-.1-.1-.1-.1-.2.2-.1.3-.3.3-.5 0-.1-.3-.1-.4-.2h-.5c-.2 0-.3.1-.5.1l-.6.3c.2-.1.4-.1.7-.2 0 .3.2.3.4.3'/%3E%3C/svg%3E"), linear-gradient(90deg, #000091 0%, #000091 50%, #e1000f 50%, #e1000f 100%), linear-gradient(90deg, #000 0%, #000 100%);
forced-color-adjust: none;
}
:root[data-fr-mourning] .fr-logo::before {
background-size: 2.75rem 1.125rem, 0, 2.75rem 1rem;
box-shadow: 0 0 0 1px #fff;
}
.fr-logo::after {
min-width: 2.625rem;
background-size: 5.25rem 3.75rem;
background-position: 0 calc(100% + 1.875rem);
padding-top: 2.2083333333rem;
content: "";
display: block;
background-repeat: no-repeat;
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 252 180'%3E%3Cdefs%3E%3Csymbol id='a' viewBox='0 0 11 15.5'%3E%3Cpath d='M10.4 5.3C11.9 1.5 10.1 0 7.9 0 4.2 0 0 6.5 0 11.7c0 2.5 1.2 3.8 3 3.8 2.1 0 4.3-2 6.2-5.5h-1c-1.2 1.5-2.6 2.6-3.9 2.6-1.3 0-2-.8-2-2.6a10.7 10.7 0 01.3-2.2zm-4-3.1c1.1 0 2 .8 1.5 2.6L3.1 6.1c.8-2.2 2.2-4 3.4-4z'/%3E%3C/symbol%3E%3Csymbol id='b' viewBox='0 0 12.4 21.8'%3E%3Cuse width='11' height='15.5' y='6.4' href='%23a'/%3E%3Cpath d='M7.9 4.7L12.4.6V0h-3L6.7 4.7H8z'/%3E%3C/symbol%3E%3Csymbol id='c' viewBox='0 0 11.5 19'%3E%3Cpath d='M1.7 5.7h2.6L.1 17.1a1.3 1.3 0 001.2 2c3 0 6.4-2.6 7.8-6.2h-.7a9.4 9.4 0 01-5.1 3.5L7 5.7H11l.5-1.6H7.7L9 0H7.6L4.9 4.1l-3.2.4v1.2z'/%3E%3C/symbol%3E%3Csymbol id='d' viewBox='0 0 9.8 21.9'%3E%3Cpath d='M7.6 8c.3-1-.4-1.6-1-1.6-2.2 0-5 2.1-6 5h.7A5.6 5.6 0 014.4 9L.1 20.3a1.1 1.1 0 001 1.6c2.2 0 4.7-2 5.8-5H6A5.6 5.6 0 013 19.5zM8 3.7a1.8 1.8 0 001.8-1.8A1.8 1.8 0 008 0a1.8 1.8 0 00-1.8 1.8A1.8 1.8 0 008 3.6'/%3E%3C/symbol%3E%3Csymbol id='e' viewBox='0 0 14.8 15.5'%3E%3Cpath d='M3.3 3.1c.7 0 1 1 0 3.4l-3 6.8c-.7 1.3 0 2.2 1.2 2.2a1.3 1.3 0 001.5-1l3-8C7.4 4.8 10 3 11 3s.8.6.3 1.6l-4.6 9a1.3 1.3 0 001.1 1.9c2.3 0 5-2 6-5h-.6A5.6 5.6 0 0110 13l4-8a6.1 6.1 0 00.8-2.8A2 2 0 0012.6 0c-2 0-3.6 2.2-6 5V2.8C6.6 1.4 6.1 0 4.8 0 3.2 0 1.8 2.5.7 4.9h.7c.7-1.1 1.3-1.8 2-1.8'/%3E%3C/symbol%3E%3Csymbol id='f' viewBox='0 0 12 15.5'%3E%3Cpath d='M11.8 3.5c.5-1.9.2-3.5-1.2-3.5-1.8 0-2.3 1.2-4 5V2.8C6.5 1.3 6 0 4.6 0 3.1 0 1.7 2.5.5 5h.8C2 3.7 2.8 3 3.3 3c.7 0 1 1 0 3.4l-3 6.8c-.7 1.3 0 2.1 1.2 2.1a1.3 1.3 0 001.5-1l3-8a50.3 50.3 0 012.6-3h3.2z'/%3E%3C/symbol%3E%3Csymbol id='g' viewBox='0 0 14.7 16.2'%3E%3Cpath d='M10.5 13.1c-.6 0-1-1 0-3.4L14.6.1 13.4 0l-1.3 1.3h-.3C6.1 1.3 0 8.6 0 14.2a2 2 0 002.1 2.1c1.7 0 3.3-2.4 5.2-5l-.1 1c-.3 2.6.6 4 2 4 1.5 0 3-2.4 4-4.9h-.7c-.7 1.1-1.5 1.8-2 1.8zM7.9 9.8c-1.3 1.6-3.4 3.5-4.3 3.5-.5 0-.9-.5-.9-1.6 0-3.5 4-8.2 6-8.2a4.2 4.2 0 011.4.2z'/%3E%3C/symbol%3E%3Csymbol id='h' viewBox='0 0 21.9 19.8'%3E%3Cpath d='M11.2 19.8l.3-.9c-3.8-.7-4.3-.7-2.7-4.8l1.4-3.9h3c1.9 0 1.9.9 1.6 3h1l2.6-6.9h-1c-1 1.6-1.8 2.9-3.8 2.9h-3l2-5.6c.8-2 1.1-2.4 3.7-2.4h.7c2.6 0 3 .7 3 3.5h1l.9-4.7H7.3L7 .9c3 .6 3.3.9 2 4.8L5.7 14c-1.5 3.9-2 4.2-5.5 4.8l-.3.9z'/%3E%3C/symbol%3E%3Csymbol id='i' viewBox='0 0 10.1 21.9'%3E%3Cpath d='M2.9 19.4L10.1.3 9.8 0l-5 .6v.6l1 .7c.9.7.6 1.3-.2 3.4L.2 19.9a1.3 1.3 0 001.1 2c2.3 0 4.7-2.1 5.8-5h-.7a6.5 6.5 0 01-3.5 2.5'/%3E%3C/symbol%3E%3Csymbol id='j' viewBox='0 0 18 22'%3E%3Cpath d='M18 .6h-4.3a3.8 3.8 0 00-2.1-.6A6.6 6.6 0 005 6.5a3.3 3.3 0 003 3.6c-1.9.8-3 1.8-3 2.9a1.7 1.7 0 00.9 1.5c-4.3 1.3-6 2.8-6 4.7 0 2 2.6 2.8 5.6 2.8 5.3 0 9.6-2.7 9.6-5.1 0-1.8-1.6-2.5-4.3-3.3-2.2-.7-3.2-.8-3.2-1.6A2.4 2.4 0 019 10.2a6.6 6.6 0 006.1-6.5 4.5 4.5 0 00-.2-1.5h2.5zM9.8 16.2c2.1.7 3 1 3 1.6 0 1.4-2 2.5-5.6 2.5-2.7 0-4-.6-4-2 0-1.5 1.4-2.5 3.5-3.3a21.5 21.5 0 003 1.2zM9 9c-1 0-1.3-.8-1.3-1.7 0-2.8 1.4-6.2 3.5-6.2 1 0 1.3.8 1.3 1.6 0 2.9-1.4 6.3-3.5 6.3z'/%3E%3C/symbol%3E%3Csymbol id='k' viewBox='0 0 23 25.1'%3E%3Cpath d='M14.3 15.6c1.9 0 2 .8 1.6 2.8H17l2.5-6.8h-1c-1 1.6-1.7 2.9-3.8 2.9h-4.1l2-5.6c.7-2 1-2.4 3.7-2.4H18c2.6 0 3 .7 3 3.5h1l.9-4.7H7.3l-.3.9c3 .6 3.3.9 2 4.8l-3.2 8.4c-1.5 3.9-2 4.2-5.6 4.8l-.2 1h17.4l3.2-5h-1.2c-2 2-4 3.8-8 3.8-4.7 0-4.3-.3-2.7-4.6l1.4-3.8h4.2zm2.3-11.8L21 .6V0h-3l-2.6 3.9h1.2v-.1z'/%3E%3C/symbol%3E%3Csymbol id='l' viewBox='0 0 13.6 21.8'%3E%3Cpath d='M11.4 6.4c-2 0-4 2.2-5.8 4.8L9.6.3 9.4 0l-5 .6V1l1 .8c.9.7.6 1.3-.2 3.4L.8 16.8A13.9 13.9 0 000 19c0 1.4 1.8 2.7 3.5 2.7 3.8 0 10-6.9 10-12.2 0-2.3-.5-3.2-2.1-3.2zM4.8 19.5c-.8 0-1.9-.7-1.9-1.3a15.5 15.5 0 01.8-2.2L5 12.7C6.3 11 8.4 9.3 9.6 9.3c.7 0 1.2.4 1.2 1.5 0 3.1-2.9 8.7-6 8.7z'/%3E%3C/symbol%3E%3Csymbol id='m' viewBox='0 0 19.2 19.9'%3E%3Cpath d='M17.6 0H7.3L7 .9c3 .6 3.3.9 2 4.8l-3.2 8.5c-1.5 3.9-2 4.2-5.5 4.8L0 20h15.7l3.5-6H18c-2 2-4.2 4.8-7.7 4.8-2.7 0-3-.5-1.6-4.5l3.1-8.5c1.4-3.9 2-4.2 5.5-4.8z'/%3E%3C/symbol%3E%3Csymbol id='n' viewBox='0 0 126 90'%3E%3Cuse width='12.4' height='21.8' x='112.7' y='66.1' href='%23b'/%3E%3Cuse width='11.5' height='19' x='102.2' y='69' href='%23c'/%3E%3Cuse width='9.8' height='21.9' x='93.6' y='66.1' href='%23d'/%3E%3Cuse width='14.8' height='15.5' x='77.2' y='72.5' href='%23e'/%3E%3Cuse width='12' height='15.5' x='65.7' y='72.5' href='%23f'/%3E%3Cuse width='11' height='15.5' x='54.3' y='72.5' href='%23a'/%3E%3Cuse width='11.5' height='19' x='43.7' y='69' href='%23c'/%3E%3Cuse width='14.7' height='16.2' x='28.9' y='71.8' href='%23g'/%3E%3Cuse width='12' height='15.5' x='19.6' y='72.5' href='%23f'/%3E%3Cuse width='21.9' height='19.8' y='67.6' href='%23h'/%3E%3Cuse width='12.4' height='21.8' x='77.3' y='33.1' href='%23b'/%3E%3Cuse width='11.5' height='19' x='66.8' y='36' href='%23c'/%3E%3Cuse width='9.8' height='21.9' x='58.2' y='33' href='%23d'/%3E%3Cuse width='10.1' height='21.9' x='49.4' y='33.1' href='%23i'/%3E%3Cuse width='14.7' height='16.2' x='34.9' y='38.8' href='%23g'/%3E%3Cuse width='18' height='22' x='18.6' y='39.4' href='%23j'/%3E%3Cuse width='23' height='25.1' y='29.3' href='%23k'/%3E%3Cuse width='12.4' height='21.8' x='76.8' y='.1' href='%23b'/%3E%3Cuse width='11.5' height='19' x='66.2' y='2.9' href='%23c'/%3E%3Cuse width='12' height='15.5' x='54.8' y='6.5' href='%23f'/%3E%3Cuse width='11' height='15.5' x='43.4' y='6.4' href='%23a'/%3E%3Cuse width='13.6' height='21.8' x='29.4' y='.1' href='%23l'/%3E%3Cuse width='9.8' height='21.9' x='20.6' href='%23d'/%3E%3Cuse width='19.2' height='19.9' y='1.4' href='%23m'/%3E%3C/symbol%3E%3C/defs%3E%3Cuse fill='%23000' width='126' height='90' x='0' y='0' href='%23n'/%3E%3Cuse fill='%23fff' width='126' height='90' x='126' y='90' href='%23n'/%3E%3C/svg%3E");
}
[data-fr-theme=dark] .fr-logo::after {
background-position: -2.625rem 100%;
}
.fr-logo--sm {
font-size: 0.7875rem;
}
.fr-logo--sm::before {
width: 2.0625rem;
height: 0.75rem;
margin-bottom: 0.25rem;
background-size: 2.0625rem 0.84375rem, 2.0625rem 0.75rem, 0;
background-position: 0 -0.046875rem, 0 0, 0 0;
}
:root[data-fr-mourning] .fr-logo--sm::before {
background-size: 2.0625rem 0.84375rem, 0, 2.0625rem 0.75rem;
}
.fr-logo--sm::after {
min-width: 1.96875rem;
background-size: 3.9375rem 2.8125rem;
background-position: 0 calc(100% + 1.40625rem);
padding-top: 1.65625rem;
}
[data-fr-theme=dark] .fr-logo--sm::after {
background-position: -1.96875rem 100%;
}
.fr-logo--lg {
font-size: 1.3125rem;
}
.fr-logo--lg::before {
width: 3.4375rem;
height: 1.25rem;
margin-bottom: 0.4166666667rem;
background-size: 3.4375rem 1.40625rem, 3.4375rem 1.25rem, 0;
background-position: 0 -0.078125rem, 0 0, 0 0;
}
:root[data-fr-mourning] .fr-logo--lg::before {
background-size: 3.4375rem 1.40625rem, 0, 3.4375rem 1.25rem;
}
.fr-logo--lg::after {
min-width: 3.28125rem;
background-size: 6.5625rem 4.6875rem;
background-position: 0 calc(100% + 2.34375rem);
padding-top: 2.7604166667rem;
}
[data-fr-theme=dark] .fr-logo--lg::after {
background-position: -3.28125rem 100%;
}
/* ¯¯¯¯¯¯¯¯¯ *\
BUTTON
\* ˍˍˍˍˍˍˍˍˍ */
.fr-btn {
--text-spacing: 0;
--title-spacing: 0;
display: inline-flex;
flex-direction: row;
align-items: center;
width: -moz-fit-content;
width: fit-content;
--underline-img: none;
--hover-tint: var(--hover);
font-weight: 500;
font-size: 1rem;
line-height: 1.5rem;
min-height: 2.5rem;
padding: 0.5rem 1rem;
background-color: var(--background-action-high-blue-france);
--idle: transparent;
--hover: var(--background-action-high-blue-france-hover);
--active: var(--background-action-high-blue-france-active);
color: var(--text-inverted-blue-france);
}
.fr-btn::before,
.fr-btn::after {
display: block;
}
.fr-btn[target=_blank] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btn[target=_blank]::after {
content: "";
--icon-size: 1rem;
margin-right: -0.125rem;
margin-left: 0.5rem;
}
.fr-btn--align-on-content {
margin-left: -1rem;
margin-right: -1rem;
}
.fr-btn[class^=fr-icon-]:not([class*=fr-btn--icon-]),
.fr-btn[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
.fr-btn[class^=fr-fi-]:not([class*=fr-btn--icon-]),
.fr-btn[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
overflow: hidden;
white-space: nowrap;
max-width: 2.5rem;
max-height: 2.5rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
}
.fr-btn[class^=fr-icon-]:not([class*=fr-btn--icon-])::before,
.fr-btn[class*=" fr-icon-"]:not([class*=fr-btn--icon-])::before,
.fr-btn[class^=fr-fi-]:not([class*=fr-btn--icon-])::before,
.fr-btn[class*=" fr-fi-"]:not([class*=fr-btn--icon-])::before {
--icon-size: 1.5rem;
margin-left: 0;
margin-right: 0.5rem;
}
.fr-btn--align-on-content[class^=fr-icon-]:not([class*=fr-btn--icon-]),
.fr-btn--align-on-content[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
.fr-btn--align-on-content[class^=fr-fi-]:not([class*=fr-btn--icon-]),
.fr-btn--align-on-content[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
margin-left: -0.5rem;
margin-right: -0.5rem;
}
.fr-btn--icon-left[class^=fr-icon-],
.fr-btn--icon-left[class*=" fr-icon-"],
.fr-btn--icon-left[class^=fr-fi-],
.fr-btn--icon-left[class*=" fr-fi-"] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btn--icon-left[class^=fr-icon-]::before,
.fr-btn--icon-left[class*=" fr-icon-"]::before,
.fr-btn--icon-left[class^=fr-fi-]::before,
.fr-btn--icon-left[class*=" fr-fi-"]::before {
--icon-size: 1rem;
margin-left: -0.125rem;
margin-right: 0.5rem;
}
.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-icon-],
.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-icon-"],
.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-fi-],
.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-fi-"] {
margin-left: -0.875rem;
margin-right: -1rem;
}
.fr-btn--icon-right[class^=fr-icon-],
.fr-btn--icon-right[class*=" fr-icon-"],
.fr-btn--icon-right[class^=fr-fi-],
.fr-btn--icon-right[class*=" fr-fi-"] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btn--icon-right[class^=fr-icon-]::after,
.fr-btn--icon-right[class*=" fr-icon-"]::after,
.fr-btn--icon-right[class^=fr-fi-]::after,
.fr-btn--icon-right[class*=" fr-fi-"]::after {
content: "";
--icon-size: 1rem;
margin-right: -0.125rem;
margin-left: 0.5rem;
}
.fr-btn--icon-right[class^=fr-icon-]::before,
.fr-btn--icon-right[class*=" fr-icon-"]::before,
.fr-btn--icon-right[class^=fr-fi-]::before,
.fr-btn--icon-right[class*=" fr-fi-"]::before {
content: none;
}
.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-icon-],
.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-icon-"],
.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-fi-],
.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-fi-"] {
margin-left: -1rem;
margin-right: -0.875rem;
}
.fr-btn--sm {
font-size: 0.875rem;
line-height: 1.5rem;
min-height: 2rem;
padding: 0.25rem 0.75rem;
}
.fr-btn--sm[target=_blank] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btn--sm[target=_blank]::after {
content: "";
--icon-size: 1rem;
margin-right: -0.125rem;
margin-left: 0.5rem;
}
.fr-btn--sm.fr-btn--align-on-content {
margin-left: -0.75rem;
margin-right: -0.75rem;
}
.fr-btn--sm[class^=fr-icon-]:not([class*=fr-btn--icon-]),
.fr-btn--sm[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
.fr-btn--sm[class^=fr-fi-]:not([class*=fr-btn--icon-]),
.fr-btn--sm[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
overflow: hidden;
white-space: nowrap;
max-width: 2rem;
max-height: 2rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
}
.fr-btn--sm[class^=fr-icon-]:not([class*=fr-btn--icon-])::before,
.fr-btn--sm[class*=" fr-icon-"]:not([class*=fr-btn--icon-])::before,
.fr-btn--sm[class^=fr-fi-]:not([class*=fr-btn--icon-])::before,
.fr-btn--sm[class*=" fr-fi-"]:not([class*=fr-btn--icon-])::before {
--icon-size: 1rem;
margin-left: 0;
margin-right: 0.5rem;
}
.fr-btn--sm.fr-btn--align-on-content[class^=fr-icon-]:not([class*=fr-btn--icon-]),
.fr-btn--sm.fr-btn--align-on-content[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
.fr-btn--sm.fr-btn--align-on-content[class^=fr-fi-]:not([class*=fr-btn--icon-]),
.fr-btn--sm.fr-btn--align-on-content[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
margin-left: -0.5rem;
margin-right: -0.5rem;
}
.fr-btn--sm.fr-btn--icon-left[class^=fr-icon-],
.fr-btn--sm.fr-btn--icon-left[class*=" fr-icon-"],
.fr-btn--sm.fr-btn--icon-left[class^=fr-fi-],
.fr-btn--sm.fr-btn--icon-left[class*=" fr-fi-"] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btn--sm.fr-btn--icon-left[class^=fr-icon-]::before,
.fr-btn--sm.fr-btn--icon-left[class*=" fr-icon-"]::before,
.fr-btn--sm.fr-btn--icon-left[class^=fr-fi-]::before,
.fr-btn--sm.fr-btn--icon-left[class*=" fr-fi-"]::before {
--icon-size: 1rem;
margin-left: -0.125rem;
margin-right: 0.5rem;
}
.fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-icon-],
.fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-icon-"],
.fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-fi-],
.fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-fi-"] {
margin-left: -0.625rem;
margin-right: -0.75rem;
}
.fr-btn--sm.fr-btn--icon-right[class^=fr-icon-],
.fr-btn--sm.fr-btn--icon-right[class*=" fr-icon-"],
.fr-btn--sm.fr-btn--icon-right[class^=fr-fi-],
.fr-btn--sm.fr-btn--icon-right[class*=" fr-fi-"] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btn--sm.fr-btn--icon-right[class^=fr-icon-]::after,
.fr-btn--sm.fr-btn--icon-right[class*=" fr-icon-"]::after,
.fr-btn--sm.fr-btn--icon-right[class^=fr-fi-]::after,
.fr-btn--sm.fr-btn--icon-right[class*=" fr-fi-"]::after {
content: "";
--icon-size: 1rem;
margin-right: -0.125rem;
margin-left: 0.5rem;
}
.fr-btn--sm.fr-btn--icon-right[class^=fr-icon-]::before,
.fr-btn--sm.fr-btn--icon-right[class*=" fr-icon-"]::before,
.fr-btn--sm.fr-btn--icon-right[class^=fr-fi-]::before,
.fr-btn--sm.fr-btn--icon-right[class*=" fr-fi-"]::before {
content: none;
}
.fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-icon-],
.fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-icon-"],
.fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-fi-],
.fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-fi-"] {
margin-left: -0.75rem;
margin-right: -0.625rem;
}
.fr-btn--lg {
font-size: 1.125rem;
line-height: 1.75rem;
min-height: 3rem;
padding: 0.5rem 1.5rem;
}
.fr-btn--lg[target=_blank] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btn--lg[target=_blank]::after {
content: "";
--icon-size: 1.5rem;
margin-right: -0.1875rem;
margin-left: 0.5rem;
}
.fr-btn--lg.fr-btn--align-on-content {
margin-left: -1.5rem;
margin-right: -1.5rem;
}
.fr-btn--lg[class^=fr-icon-]:not([class*=fr-btn--icon-]),
.fr-btn--lg[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
.fr-btn--lg[class^=fr-fi-]:not([class*=fr-btn--icon-]),
.fr-btn--lg[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
overflow: hidden;
white-space: nowrap;
max-width: 3rem;
max-height: 3rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
}
.fr-btn--lg[class^=fr-icon-]:not([class*=fr-btn--icon-])::before,
.fr-btn--lg[class*=" fr-icon-"]:not([class*=fr-btn--icon-])::before,
.fr-btn--lg[class^=fr-fi-]:not([class*=fr-btn--icon-])::before,
.fr-btn--lg[class*=" fr-fi-"]:not([class*=fr-btn--icon-])::before {
--icon-size: 2rem;
margin-left: 0;
margin-right: 0.5rem;
}
.fr-btn--lg.fr-btn--align-on-content[class^=fr-icon-]:not([class*=fr-btn--icon-]),
.fr-btn--lg.fr-btn--align-on-content[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
.fr-btn--lg.fr-btn--align-on-content[class^=fr-fi-]:not([class*=fr-btn--icon-]),
.fr-btn--lg.fr-btn--align-on-content[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
margin-left: -0.5rem;
margin-right: -0.5rem;
}
.fr-btn--lg.fr-btn--icon-left[class^=fr-icon-],
.fr-btn--lg.fr-btn--icon-left[class*=" fr-icon-"],
.fr-btn--lg.fr-btn--icon-left[class^=fr-fi-],
.fr-btn--lg.fr-btn--icon-left[class*=" fr-fi-"] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btn--lg.fr-btn--icon-left[class^=fr-icon-]::before,
.fr-btn--lg.fr-btn--icon-left[class*=" fr-icon-"]::before,
.fr-btn--lg.fr-btn--icon-left[class^=fr-fi-]::before,
.fr-btn--lg.fr-btn--icon-left[class*=" fr-fi-"]::before {
--icon-size: 1.5rem;
margin-left: -0.1875rem;
margin-right: 0.5rem;
}
.fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-icon-],
.fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-icon-"],
.fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-fi-],
.fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-fi-"] {
margin-left: -1.3125rem;
margin-right: -1.5rem;
}
.fr-btn--lg.fr-btn--icon-right[class^=fr-icon-],
.fr-btn--lg.fr-btn--icon-right[class*=" fr-icon-"],
.fr-btn--lg.fr-btn--icon-right[class^=fr-fi-],
.fr-btn--lg.fr-btn--icon-right[class*=" fr-fi-"] {
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btn--lg.fr-btn--icon-right[class^=fr-icon-]::after,
.fr-btn--lg.fr-btn--icon-right[class*=" fr-icon-"]::after,
.fr-btn--lg.fr-btn--icon-right[class^=fr-fi-]::after,
.fr-btn--lg.fr-btn--icon-right[class*=" fr-fi-"]::after {
content: "";
--icon-size: 1.5rem;
margin-right: -0.1875rem;
margin-left: 0.5rem;
}
.fr-btn--lg.fr-btn--icon-right[class^=fr-icon-]::before,
.fr-btn--lg.fr-btn--icon-right[class*=" fr-icon-"]::before,
.fr-btn--lg.fr-btn--icon-right[class^=fr-fi-]::before,
.fr-btn--lg.fr-btn--icon-right[class*=" fr-fi-"]::before {
content: none;
}
.fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-icon-],
.fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-icon-"],
.fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-fi-],
.fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-fi-"] {
margin-left: -1.5rem;
margin-right: -1.3125rem;
}
.fr-btns-group {
--ul-type: none;
--ol-type: none;
--ul-start: 0;
--ol-start: 0;
--xl-block: 0;
--li-bottom: 0;
--ol-content: none;
display: flex;
align-items: stretch;
flex-wrap: wrap;
margin-left: -0.5rem;
margin-right: -0.5rem;
/**
* fr-btns-group--inline : aligne les boutons horizontalement dans tout les cas
* fr-btns-group--inline-(sm/md/lg) : permet de passer en horizontal à partir de la valeur du breakpoint appliqué (sm, md, lg)
*/
/**
* fr-btns-group--left : (Défaut) aligne les boutons sur la gauche (en lecture L-t-R)
*/
/**
* fr-btns-group--right : aligne les boutons sur la droite
*/
/**
* fr-btns-group--center : aligne les boutons au centre du conteneur
*/
/**
* fr-btns-group--center : aligne les boutons au centre du conteneur
*/
/**
* fr-btns-group--equisized : Fixe la largeur des boutons à celle du plus grand. Géré en grande partie en JS.
*/
/**
* fr-btns-group--sm : Fixe les boutons à la taille SM
*/
/**
* fr-btns-group--md : (défaut) Fixe les boutons à la taille MD
*/
/**
* fr-btns-group--lg : Fixe les boutons à la taille LG (sans modfifieur => MD)
*/
}
.fr-btns-group > li,
.fr-btns-group > div {
width: 100%;
max-width: 100%;
}
.fr-btns-group .fr-btn {
width: calc(100% - 1rem);
margin: 0 0.5rem 1rem;
justify-content: center;
}
.fr-btns-group--inline .fr-btn {
width: auto;
max-width: 100%;
margin-left: 0.5rem;
margin-right: 0.5rem;
}
.fr-btns-group--inline > li {
display: inline-flex;
max-width: 100%;
width: auto;
}
.fr-btns-group--inline.fr-btns-group--right.fr-btns-group--inline-reverse {
flex-direction: row-reverse;
justify-content: flex-start;
}
.fr-btns-group--left,
.fr-btns-group--left li {
justify-content: flex-start;
text-align: left;
}
.fr-btns-group--right,
.fr-btns-group--right li {
justify-content: flex-end;
text-align: right;
}
.fr-btns-group--center,
.fr-btns-group--center li {
justify-content: center;
text-align: center;
}
.fr-btns-group--between,
.fr-btns-group--between li {
justify-content: space-between;
text-align: center;
}
.fr-btns-group--equisized {
--equisized-width: auto;
}
.fr-btns-group--equisized .fr-btn {
justify-content: center;
width: var(--equisized-width);
}
.fr-btns-group--sm .fr-btn:not([class^=fr-icon-]):not([class*=" fr-icon-"]):not([class^=fr-fi-]):not([class*=" fr-fi-"]) {
font-size: 0.875rem;
line-height: 1.5rem;
min-height: 2rem;
padding: 0.25rem 0.75rem;
}
.fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-icon-],
.fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-icon-"],
.fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-fi-],
.fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-fi-"] {
font-size: 0.875rem;
line-height: 1.5rem;
min-height: 2rem;
padding: 0.25rem 0.75rem;
overflow: hidden;
white-space: nowrap;
max-width: 2rem;
max-height: 2rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
justify-content: flex-start;
}
.fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-icon-]::before,
.fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-icon-"]::before,
.fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-fi-]::before,
.fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-fi-"]::before {
--icon-size: 1rem;
margin-left: 0;
margin-right: 0.5rem;
}
.fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class^=fr-icon-],
.fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class*=" fr-icon-"],
.fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class^=fr-fi-],
.fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class*=" fr-fi-"] {
font-size: 0.875rem;
line-height: 1.5rem;
min-height: 2rem;
padding: 0.25rem 0.75rem;
overflow: initial;
max-width: 100%;
max-height: none;
}
.fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class^=fr-icon-]::before,
.fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class*=" fr-icon-"]::before,
.fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class^=fr-fi-]::before,
.fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class*=" fr-fi-"]::before {
--icon-size: 1rem;
margin-left: -0.125rem;
margin-right: 0.5rem;
}
.fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class^=fr-icon-],
.fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"],
.fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class^=fr-fi-],
.fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"] {
font-size: 0.875rem;
line-height: 1.5rem;
min-height: 2rem;
padding: 0.25r