@lab-anssi/ui-kit 1.61.3 → 1.62.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 (221) hide show
  1. package/README.md +102 -21
  2. package/dist/assets/assets.d.ts +1 -0
  3. package/dist/assets/assets.js +1 -0
  4. package/dist/assets/dsfr-icons.css +1 -0
  5. package/dist/composants/Alerte.svelte +83 -0
  6. package/dist/composants/Alerte.svelte.d.ts +32 -0
  7. package/dist/composants/AncresParcours.svelte +132 -0
  8. package/dist/composants/AncresParcours.svelte.d.ts +11 -0
  9. package/dist/composants/BandeauPage.svelte +218 -0
  10. package/dist/composants/BandeauPage.svelte.d.ts +58 -0
  11. package/dist/composants/BlocFonctionnalites.svelte +570 -0
  12. package/dist/composants/BlocFonctionnalites.svelte.d.ts +105 -0
  13. package/dist/composants/Bouton.svelte +156 -0
  14. package/dist/composants/Bouton.svelte.d.ts +36 -0
  15. package/dist/composants/CentreAide.svelte +223 -0
  16. package/dist/composants/CentreAide.svelte.d.ts +41 -0
  17. package/dist/composants/FiltresCatalogue.svelte +147 -0
  18. package/dist/composants/FiltresCatalogue.svelte.d.ts +15 -0
  19. package/dist/composants/Icone.svelte +42 -0
  20. package/dist/composants/Icone.svelte.d.ts +7 -0
  21. package/dist/composants/Lien.svelte +233 -0
  22. package/dist/composants/Lien.svelte.d.ts +39 -0
  23. package/dist/composants/MultiSelect.svelte +931 -0
  24. package/dist/composants/MultiSelect.svelte.d.ts +51 -0
  25. package/dist/composants/Reactions.svelte +360 -0
  26. package/dist/composants/Reactions.svelte.d.ts +23 -0
  27. package/dist/composants/ResumePssi.svelte +92 -0
  28. package/dist/composants/ResumePssi.svelte.d.ts +6 -0
  29. package/dist/composants/Tag.svelte +113 -0
  30. package/dist/composants/Tag.svelte.d.ts +35 -0
  31. package/dist/composants/blog/BandeauTitre.svelte +150 -0
  32. package/dist/composants/blog/BandeauTitre.svelte.d.ts +29 -0
  33. package/dist/composants/blog/CarteArticle.svelte +69 -0
  34. package/dist/composants/blog/CarteArticle.svelte.d.ts +8 -0
  35. package/dist/composants/blog/IconeChevronBas.svelte +22 -0
  36. package/dist/composants/blog/IconeChevronBas.svelte.d.ts +26 -0
  37. package/dist/composants/blog/IconeMenuLateral.svelte +15 -0
  38. package/dist/composants/blog/IconeMenuLateral.svelte.d.ts +26 -0
  39. package/dist/composants/blog/ListeArticles.svelte +62 -0
  40. package/dist/composants/blog/ListeArticles.svelte.d.ts +9 -0
  41. package/dist/composants/blog/ListeDeroulante.svelte +57 -0
  42. package/dist/composants/blog/ListeDeroulante.svelte.d.ts +10 -0
  43. package/dist/composants/blog/PageCrisp.svelte +244 -0
  44. package/dist/composants/blog/PageCrisp.svelte.d.ts +8 -0
  45. package/dist/composants/blog/SommaireBureau.svelte +64 -0
  46. package/dist/composants/blog/SommaireBureau.svelte.d.ts +9 -0
  47. package/dist/composants/blog/SommaireMobile.svelte +115 -0
  48. package/dist/composants/blog/SommaireMobile.svelte.d.ts +9 -0
  49. package/dist/composants/carrousel-tuiles/CarrouselTuiles.svelte +184 -0
  50. package/dist/composants/carrousel-tuiles/CarrouselTuiles.svelte.d.ts +34 -0
  51. package/dist/composants/carrousel-tuiles/IconeFlecheDroite.svelte +16 -0
  52. package/dist/composants/carrousel-tuiles/IconeFlecheDroite.svelte.d.ts +26 -0
  53. package/dist/composants/carrousel-tuiles/IconeFlecheGauche.svelte +12 -0
  54. package/dist/composants/carrousel-tuiles/IconeFlecheGauche.svelte.d.ts +26 -0
  55. package/dist/composants/carrousel-tuiles/Tuile.svelte +72 -0
  56. package/dist/composants/carrousel-tuiles/Tuile.svelte.d.ts +10 -0
  57. package/dist/composants/icones/Fleche.svelte +25 -0
  58. package/dist/composants/icones/Fleche.svelte.d.ts +6 -0
  59. package/dist/composants/icones/LienExterne.svelte +20 -0
  60. package/dist/composants/icones/LienExterne.svelte.d.ts +6 -0
  61. package/dist/composants/marelle/Etape.svelte +165 -0
  62. package/dist/composants/marelle/Etape.svelte.d.ts +32 -0
  63. package/dist/composants/marelle/Marelle.svelte +97 -0
  64. package/dist/composants/marelle/Marelle.svelte.d.ts +44 -0
  65. package/dist/composants/mes-services-cyber/bandeau/Bandeau.svelte +158 -0
  66. package/dist/composants/mes-services-cyber/bandeau/Bandeau.svelte.d.ts +3 -0
  67. package/dist/composants/mes-services-cyber/lien/LienDiagnosticCyber.svelte +125 -0
  68. package/dist/composants/mes-services-cyber/lien/LienDiagnosticCyber.svelte.d.ts +7 -0
  69. package/dist/composants/pied-de-page/NavigationPiedDePage.svelte +62 -0
  70. package/dist/composants/pied-de-page/NavigationPiedDePage.svelte.d.ts +6 -0
  71. package/dist/composants/suite-cyber/AccueilSuiteCyber.svelte +96 -0
  72. package/dist/composants/suite-cyber/AccueilSuiteCyber.svelte.d.ts +6 -0
  73. package/dist/composants/suite-cyber/LiensSuiteCyber.svelte +99 -0
  74. package/dist/composants/suite-cyber/LiensSuiteCyber.svelte.d.ts +14 -0
  75. package/dist/composants/suite-cyber/SuiteCyber.svelte +296 -0
  76. package/dist/composants/suite-cyber/SuiteCyber.svelte.d.ts +6 -0
  77. package/dist/composants/vitrines-produits/briques/Brique.svelte +50 -0
  78. package/dist/composants/vitrines-produits/briques/Brique.svelte.d.ts +9 -0
  79. package/dist/composants/vitrines-produits/briques/BriqueContenuADeuxColonnes.svelte +144 -0
  80. package/dist/composants/vitrines-produits/briques/BriqueContenuADeuxColonnes.svelte.d.ts +29 -0
  81. package/dist/composants/vitrines-produits/briques/BriqueHero.svelte +246 -0
  82. package/dist/composants/vitrines-produits/briques/BriqueHero.svelte.d.ts +31 -0
  83. package/dist/composants/vitrines-produits/briques/BriqueTitreMultimedia.svelte +50 -0
  84. package/dist/composants/vitrines-produits/briques/BriqueTitreMultimedia.svelte.d.ts +25 -0
  85. package/dist/composants/vitrines-produits/briques/LecteurVideo.svelte +14 -0
  86. package/dist/composants/vitrines-produits/briques/LecteurVideo.svelte.d.ts +9 -0
  87. package/dist/composants/vitrines-produits/briques/PresentationANSSI.svelte +148 -0
  88. package/dist/composants/vitrines-produits/briques/PresentationANSSI.svelte.d.ts +37 -0
  89. package/dist/composants/vitrines-produits/briques/RejoindreLaCommunaute.svelte +139 -0
  90. package/dist/composants/vitrines-produits/briques/RejoindreLaCommunaute.svelte.d.ts +36 -0
  91. package/dist/composants/vitrines-produits/briques/temoignages/IconeTemoignage.svelte +18 -0
  92. package/dist/composants/vitrines-produits/briques/temoignages/IconeTemoignage.svelte.d.ts +26 -0
  93. package/dist/composants/vitrines-produits/briques/temoignages/Temoignages.svelte +168 -0
  94. package/dist/composants/vitrines-produits/briques/temoignages/Temoignages.svelte.d.ts +13 -0
  95. package/dist/directives/actions.svelte.d.ts +32 -0
  96. package/dist/directives/actions.svelte.js +158 -0
  97. package/dist/dsfr/DsfrAccordion.svelte +889 -0
  98. package/dist/dsfr/DsfrAccordion.svelte.d.ts +40 -0
  99. package/dist/dsfr/DsfrAlert.svelte +2097 -0
  100. package/dist/dsfr/DsfrAlert.svelte.d.ts +36 -0
  101. package/dist/dsfr/DsfrBadge.svelte +532 -0
  102. package/dist/dsfr/DsfrBadge.svelte.d.ts +41 -0
  103. package/dist/dsfr/DsfrBadgesGroup.svelte +610 -0
  104. package/dist/dsfr/DsfrBadgesGroup.svelte.d.ts +25 -0
  105. package/dist/dsfr/DsfrBreadcrumb.svelte +657 -0
  106. package/dist/dsfr/DsfrBreadcrumb.svelte.d.ts +25 -0
  107. package/dist/dsfr/DsfrButton.svelte +1821 -0
  108. package/dist/dsfr/DsfrButton.svelte.d.ts +68 -0
  109. package/dist/dsfr/DsfrButtonsGroup.svelte +1896 -0
  110. package/dist/dsfr/DsfrButtonsGroup.svelte.d.ts +36 -0
  111. package/dist/dsfr/DsfrCallout.svelte +242 -0
  112. package/dist/dsfr/DsfrCallout.svelte.d.ts +46 -0
  113. package/dist/dsfr/DsfrCard.svelte +10223 -0
  114. package/dist/dsfr/DsfrCard.svelte.d.ts +102 -0
  115. package/dist/dsfr/DsfrCheckbox.svelte +1280 -0
  116. package/dist/dsfr/DsfrCheckbox.svelte.d.ts +69 -0
  117. package/dist/dsfr/DsfrCheckboxesGroup.svelte +1532 -0
  118. package/dist/dsfr/DsfrCheckboxesGroup.svelte.d.ts +73 -0
  119. package/dist/dsfr/DsfrConnect.svelte +511 -0
  120. package/dist/dsfr/DsfrConnect.svelte.d.ts +15 -0
  121. package/dist/dsfr/DsfrContainer.svelte +894 -0
  122. package/dist/dsfr/DsfrContainer.svelte.d.ts +31 -0
  123. package/dist/dsfr/DsfrContent.svelte +1140 -0
  124. package/dist/dsfr/DsfrContent.svelte.d.ts +60 -0
  125. package/dist/dsfr/DsfrDropdown.svelte +335 -0
  126. package/dist/dsfr/DsfrDropdown.svelte.d.ts +73 -0
  127. package/dist/dsfr/DsfrFooter.svelte +2370 -0
  128. package/dist/dsfr/DsfrFooter.svelte.d.ts +77 -0
  129. package/dist/dsfr/DsfrHeader.svelte +4162 -0
  130. package/dist/dsfr/DsfrHeader.svelte.d.ts +131 -0
  131. package/dist/dsfr/DsfrHighlight.svelte +294 -0
  132. package/dist/dsfr/DsfrHighlight.svelte.d.ts +33 -0
  133. package/dist/dsfr/DsfrInput.svelte +1270 -0
  134. package/dist/dsfr/DsfrInput.svelte.d.ts +86 -0
  135. package/dist/dsfr/DsfrLabel.svelte +438 -0
  136. package/dist/dsfr/DsfrLabel.svelte.d.ts +65 -0
  137. package/dist/dsfr/DsfrLink.svelte +1007 -0
  138. package/dist/dsfr/DsfrLink.svelte.d.ts +66 -0
  139. package/dist/dsfr/DsfrLogo.svelte +228 -0
  140. package/dist/dsfr/DsfrLogo.svelte.d.ts +11 -0
  141. package/dist/dsfr/DsfrMessagesGroup.svelte +260 -0
  142. package/dist/dsfr/DsfrMessagesGroup.svelte.d.ts +46 -0
  143. package/dist/dsfr/DsfrModal.svelte +2983 -0
  144. package/dist/dsfr/DsfrModal.svelte.d.ts +56 -0
  145. package/dist/dsfr/DsfrNavigation.svelte +7626 -0
  146. package/dist/dsfr/DsfrNotice.svelte +2948 -0
  147. package/dist/dsfr/DsfrNotice.svelte.d.ts +37 -0
  148. package/dist/dsfr/DsfrPagination.svelte +1036 -0
  149. package/dist/dsfr/DsfrPagination.svelte.d.ts +35 -0
  150. package/dist/dsfr/DsfrQuote.svelte +646 -0
  151. package/dist/dsfr/DsfrQuote.svelte.d.ts +29 -0
  152. package/dist/dsfr/DsfrRadio.svelte +1307 -0
  153. package/dist/dsfr/DsfrRadio.svelte.d.ts +37 -0
  154. package/dist/dsfr/DsfrRadiosGroup.svelte +1629 -0
  155. package/dist/dsfr/DsfrRadiosGroup.svelte.d.ts +76 -0
  156. package/dist/dsfr/DsfrRange.svelte +1329 -0
  157. package/dist/dsfr/DsfrRange.svelte.d.ts +77 -0
  158. package/dist/dsfr/DsfrSearch.svelte +2015 -0
  159. package/dist/dsfr/DsfrSearch.svelte.d.ts +51 -0
  160. package/dist/dsfr/DsfrSegmented.svelte +422 -0
  161. package/dist/dsfr/DsfrSegmented.svelte.d.ts +34 -0
  162. package/dist/dsfr/DsfrSelect.svelte +1068 -0
  163. package/dist/dsfr/DsfrSelect.svelte.d.ts +86 -0
  164. package/dist/dsfr/DsfrShare.svelte +2228 -0
  165. package/dist/dsfr/DsfrShare.svelte.d.ts +40 -0
  166. package/dist/dsfr/DsfrSideMenu.svelte +1211 -0
  167. package/dist/dsfr/DsfrSideMenu.svelte.d.ts +34 -0
  168. package/dist/dsfr/DsfrSkipLink.svelte +990 -0
  169. package/dist/dsfr/DsfrSkipLink.svelte.d.ts +13 -0
  170. package/dist/dsfr/DsfrStepper.svelte +340 -0
  171. package/dist/dsfr/DsfrStepper.svelte.d.ts +18 -0
  172. package/dist/dsfr/DsfrTable.svelte +829 -0
  173. package/dist/dsfr/DsfrTable.svelte.d.ts +202 -0
  174. package/dist/dsfr/DsfrTabnav.svelte +1149 -0
  175. package/dist/dsfr/DsfrTabnav.svelte.d.ts +36 -0
  176. package/dist/dsfr/DsfrTabs.svelte +926 -0
  177. package/dist/dsfr/DsfrTabs.svelte.d.ts +28 -0
  178. package/dist/dsfr/DsfrTag.svelte +1269 -0
  179. package/dist/dsfr/DsfrTag.svelte.d.ts +59 -0
  180. package/dist/dsfr/DsfrTagsGroup.svelte +1351 -0
  181. package/dist/dsfr/DsfrTagsGroup.svelte.d.ts +37 -0
  182. package/dist/dsfr/DsfrTextarea.svelte +1385 -0
  183. package/dist/dsfr/DsfrTextarea.svelte.d.ts +72 -0
  184. package/dist/dsfr/DsfrTile.svelte +7645 -0
  185. package/dist/dsfr/DsfrTile.svelte.d.ts +79 -0
  186. package/dist/dsfr/DsfrToggle.svelte +1453 -0
  187. package/dist/dsfr/DsfrToggle.svelte.d.ts +56 -0
  188. package/dist/dsfr/DsfrTooltip.svelte +396 -0
  189. package/dist/dsfr/DsfrTooltip.svelte.d.ts +36 -0
  190. package/dist/dsfr/DsfrTranscription.svelte +2962 -0
  191. package/dist/dsfr/DsfrTranscription.svelte.d.ts +39 -0
  192. package/dist/dsfr/DsfrTranslate.svelte +1384 -0
  193. package/dist/dsfr/DsfrTranslate.svelte.d.ts +19 -0
  194. package/dist/dsfr/DsfrUser.svelte +736 -0
  195. package/dist/dsfr/DsfrUser.svelte.d.ts +65 -0
  196. package/dist/index.d.ts +79 -0
  197. package/dist/index.js +79 -0
  198. package/dist/styles/apparence-bouton.scss +154 -0
  199. package/dist/styles/dsfr-icons.css +1 -0
  200. package/dist/styles/dsfr-icons.scss +4 -0
  201. package/dist/styles/dsfr-variables.scss +28 -0
  202. package/dist/styles/mixins-dsfr.scss +226 -0
  203. package/dist/styles/mixins.scss +51 -0
  204. package/dist/types/commun.d.ts +63 -0
  205. package/dist/types/commun.js +1 -0
  206. package/dist/types/global.d.ts +24 -0
  207. package/dist/types/global.js +9 -0
  208. package/dist/types/index.d.ts +2 -0
  209. package/dist/types/index.js +1 -0
  210. package/dist/ui-kit-components.json +142 -100
  211. package/dist/utilitaires/createFormValidation.svelte.d.ts +34 -0
  212. package/dist/utilitaires/createFormValidation.svelte.js +183 -0
  213. package/dist/utilitaires/icons-stylesheet.d.ts +370 -0
  214. package/dist/utilitaires/icons-stylesheet.js +33 -0
  215. package/dist/utilitaires/index.d.ts +14 -0
  216. package/dist/utilitaires/index.js +26 -0
  217. package/dist/web-types.json +149 -101
  218. package/dist/webcomponents/lab-anssi-ui-kit.iife.js +36 -9
  219. package/dist/webcomponents/lab-anssi-ui-kit.jsx.d.ts +42 -24
  220. package/package.json +49 -43
  221. package/dist/index.html +0 -0
@@ -0,0 +1,1384 @@
1
+ <svelte:options
2
+ customElement={{
3
+ tag: "dsfr-translate",
4
+ props: {
5
+ id: { attribute: "id", type: "String" },
6
+ collapseId: { attribute: "collapse-id", type: "String" },
7
+ noBorder: { attribute: "no-border", type: "Boolean" },
8
+ languages: { attribute: "languages", type: "Array" },
9
+ buttonId: { attribute: "button-id", type: "String" },
10
+ buttonTitle: { attribute: "button-title", type: "String" },
11
+ buttonKind: { attribute: "button-kind", type: "String" },
12
+ },
13
+ }}
14
+ />
15
+
16
+ <script lang="ts">import { setThemeable } from "../utilitaires";
17
+ setThemeable($host());
18
+ let { id, collapseId, noBorder: _noBorder, languages, buttonId, buttonTitle, buttonKind = "tertiary" } = $props();
19
+ let expanded = $state(false);
20
+ // Récupère l'itam dans le tableau `languages` qui est actif
21
+ const activeLanguage = $derived(languages.find((language) => language.active) ?? languages[0]);
22
+ </script>
23
+
24
+ <div {id} class="fr-translate fr-nav">
25
+ <div class="fr-nav__item">
26
+ <button
27
+ aria-controls={collapseId}
28
+ aria-expanded={expanded}
29
+ title={buttonTitle}
30
+ type="button"
31
+ id={buttonId}
32
+ class={["fr-translate__btn fr-btn", `fr-btn--${buttonKind}`]}
33
+ onclick={() => (expanded = !expanded)}
34
+ >
35
+ {activeLanguage.locale.toUpperCase()}
36
+ <span class="fr-hidden-lg">&nbsp;- {activeLanguage.name}</span>
37
+ </button>
38
+ <div
39
+ class={["fr-collapse fr-translate__menu fr-menu", { "fr-collapse--expanded": expanded }]}
40
+ id={collapseId}
41
+ >
42
+ {#if languages && languages.length > 0}
43
+ <ul class="fr-menu__list">
44
+ {#each languages as language (language.locale)}
45
+ <li>
46
+ <a
47
+ class="fr-translate__language fr-nav__link"
48
+ hreflang={language.locale}
49
+ lang={language.locale}
50
+ href={language.href}
51
+ id={language.id}
52
+ aria-current={language.active ? "true" : undefined}
53
+ >
54
+ {language.locale.toUpperCase()} - {language.name}
55
+ </a>
56
+ </li>
57
+ {/each}
58
+ </ul>
59
+ {/if}
60
+ </div>
61
+ </div>
62
+ </div>
63
+
64
+ <style>/*!
65
+ * DSFR v1.14.4 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
66
+ *//* ¯¯¯¯¯¯¯¯¯ *\
67
+ TRANSLATE
68
+ \* ˍˍˍˍˍˍˍˍˍ */
69
+ .fr-translate {
70
+ --rows: 8;
71
+ position: relative;
72
+ }
73
+
74
+ .fr-translate .fr-translate__btn {
75
+ font-size: 1rem;
76
+ line-height: 1.5rem;
77
+ min-height: 2.5rem;
78
+ padding: 0.5rem 1rem;
79
+ overflow: initial;
80
+ max-width: 100%;
81
+ max-height: none;
82
+ font-weight: 500;
83
+ min-height: 3rem;
84
+ width: 100%;
85
+ }
86
+
87
+ .fr-translate .fr-translate__btn::before {
88
+ --icon-size: 1rem;
89
+ margin-left: -0.125rem;
90
+ margin-right: 0.5rem;
91
+ flex: 0 0 auto;
92
+ display: inline-block;
93
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
94
+ background-color: currentColor;
95
+ width: var(--icon-size);
96
+ height: var(--icon-size);
97
+ -webkit-mask-size: 100% 100%;
98
+ mask-size: 100% 100%;
99
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/editor/translate-2.svg");
100
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/editor/translate-2.svg");
101
+ content: "";
102
+ }
103
+
104
+ .fr-translate .fr-translate__btn::after {
105
+ transition: transform 0.3s;
106
+ flex: 0 0 auto;
107
+ display: inline-block;
108
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
109
+ background-color: currentColor;
110
+ width: var(--icon-size);
111
+ height: var(--icon-size);
112
+ -webkit-mask-size: 100% 100%;
113
+ mask-size: 100% 100%;
114
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/arrows/arrow-down-s-line.svg");
115
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/arrows/arrow-down-s-line.svg");
116
+ --icon-size: 1rem;
117
+ content: "";
118
+ margin-left: auto;
119
+ }
120
+
121
+ .fr-translate .fr-translate__btn[aria-expanded=true]::after {
122
+ transform: rotate(-180deg);
123
+ }
124
+
125
+ .fr-translate__language {
126
+ white-space: nowrap;
127
+ }
128
+
129
+ .fr-translate__language[aria-current]:not([aria-current=false]) {
130
+ display: none;
131
+ }
132
+
133
+ .fr-translate__menu {
134
+ margin: -0.25rem 0;
135
+ }
136
+
137
+ .fr-translate .fr-nav__item::before {
138
+ content: none;
139
+ }
140
+
141
+ .fr-translate .fr-menu__list {
142
+ width: auto;
143
+ padding: 0;
144
+ }
145
+
146
+ .fr-translate .fr-translate__btn[aria-expanded=true] {
147
+ color: var(--text-active-blue-france);
148
+ background-color: var(--background-open-blue-france);
149
+
150
+ --idle: transparent;
151
+ --hover: var(--background-open-blue-france-hover);
152
+ --active: var(--background-open-blue-france-active);
153
+ }
154
+
155
+ .fr-translate .fr-translate__btn[aria-expanded=true]:hover {
156
+ background-color: var(--hover-tint);
157
+ }
158
+
159
+ .fr-translate .fr-translate__btn[aria-expanded=true]:active {
160
+ background-color: var(--active-tint);
161
+ }
162
+
163
+ .fr-translate__menu .fr-translate__language {
164
+ box-shadow: none;
165
+ }
166
+ @media (min-width: 36em) {
167
+ /*! media sm */
168
+ }
169
+ @media (min-width: 48em) {
170
+ /*! media md */
171
+ }
172
+ @media (min-width: 62em) {
173
+ /*! media lg */
174
+ .fr-translate .fr-translate__btn {
175
+ min-height: auto;
176
+ width: auto;
177
+ font-size: 0.875rem;
178
+ line-height: 1.5rem;
179
+ padding: 0.25rem 0.75rem;
180
+ }
181
+
182
+ .fr-translate .fr-translate__btn::after {
183
+ margin-left: 0.25rem;
184
+ margin-right: -0.25rem;
185
+ }
186
+
187
+ .fr-translate .fr-translate__btn::before {
188
+ --icon-size: 1rem;
189
+ }
190
+
191
+ .fr-translate__language[aria-current]:not([aria-current=false]) {
192
+ display: inline-flex;
193
+ }
194
+
195
+ .fr-translate__menu {
196
+ margin: -0.25rem -1rem;
197
+ }
198
+
199
+ .fr-translate .fr-menu__list {
200
+ display: grid;
201
+ grid-template-rows: repeat(var(--rows), auto);
202
+ grid-auto-flow: column;
203
+ }
204
+
205
+ .fr-btns-group .fr-translate__menu {
206
+ margin: -1.25rem -0.75rem 0;
207
+ }
208
+ }
209
+ @media (min-width: 78em) {
210
+ /*! media xl */
211
+ }
212
+ @media (-ms-high-contrast: active), (forced-colors: active) {
213
+ .fr-translate .fr-translate__btn::before {
214
+ forced-color-adjust: none;
215
+ background-color: buttontext;
216
+ }
217
+
218
+ .fr-translate .fr-translate__btn::before,
219
+ .fr-translate .fr-translate__btn::after {
220
+ forced-color-adjust: none;
221
+ background-color: buttontext;
222
+ }
223
+ }
224
+ @media (prefers-reduced-motion: reduce) {
225
+ .fr-translate .fr-translate__btn::after {
226
+ transition: none;
227
+ }
228
+
229
+ .fr-translate__menu {
230
+ transition: none;
231
+ }
232
+ }
233
+ @media (min-width: 62em) and (-ms-high-contrast: active), (min-width: 62em) and (forced-colors: active) {
234
+ .fr-translate .fr-menu__list {
235
+ border-top: 1px solid;
236
+ }
237
+ }
238
+ a {
239
+ text-decoration: var(--text-decoration);
240
+ color: inherit;
241
+ }
242
+ @media (-ms-high-contrast: active), (forced-colors: active) {
243
+ a:not([href]) {
244
+ color: graytext;
245
+ }
246
+ }
247
+
248
+ :root {
249
+ --underline-max-width: 100%;
250
+ --underline-hover-width: 0;
251
+ --underline-idle-width: var(--underline-max-width);
252
+ --underline-x: calc(var(--underline-max-width) * 0);
253
+ --underline-thickness: 0.0625em;
254
+ --underline-img: linear-gradient(0deg, currentColor, currentColor);
255
+ --external-link-content: '';
256
+ --text-decoration: none;
257
+ }
258
+
259
+ [href] {
260
+ background-image: var(--underline-img), var(--underline-img);
261
+ background-position: var(--underline-x) 100%, var(--underline-x) calc(100% - var(--underline-thickness));
262
+ background-repeat: no-repeat, no-repeat;
263
+ transition: background-size 0s;
264
+ background-size: var(--underline-hover-width) calc(var(--underline-thickness) * 2), var(--underline-idle-width) var(--underline-thickness);
265
+ }
266
+ @media (-ms-high-contrast: active), (forced-colors: active) {
267
+ [href], [href]:visited {
268
+ color: linktext;
269
+ }
270
+ }
271
+
272
+ [target=_blank]::after {
273
+ flex: 0 0 auto;
274
+ display: inline-block;
275
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
276
+ background-color: currentColor;
277
+ width: var(--icon-size);
278
+ height: var(--icon-size);
279
+ -webkit-mask-size: 100% 100%;
280
+ mask-size: 100% 100%;
281
+ }
282
+ [target=_blank]::after {
283
+ --icon-size: 1rem;
284
+ }
285
+ [target=_blank]::after {
286
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/external-link-line.svg");
287
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/external-link-line.svg");
288
+ }
289
+ @media (-ms-high-contrast: active), (forced-colors: active) {
290
+ [target=_blank]::after {
291
+ forced-color-adjust: none;
292
+ background-color: linktext;
293
+ }
294
+ }
295
+ [target=_blank]::after {
296
+ content: var(--external-link-content);
297
+ margin-left: 0.25rem;
298
+ }
299
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
300
+ flex: 0 0 auto;
301
+ display: inline-block;
302
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
303
+ background-color: currentColor;
304
+ width: var(--icon-size);
305
+ height: var(--icon-size);
306
+ -webkit-mask-size: 100% 100%;
307
+ mask-size: 100% 100%;
308
+ }
309
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
310
+ --icon-size: 1rem;
311
+ }
312
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
313
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/external-link-line.svg");
314
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/external-link-line.svg");
315
+ }
316
+ @media (-ms-high-contrast: active), (forced-colors: active) {
317
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
318
+ forced-color-adjust: none;
319
+ background-color: linktext;
320
+ }
321
+ }
322
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
323
+ content: var(--external-link-content);
324
+ margin-left: 0.25rem;
325
+ }
326
+
327
+ form[target=_blank]::after {
328
+ content: none;
329
+ }
330
+
331
+ .fr-raw-link {
332
+ --text-decoration: none;
333
+ }
334
+ .fr-raw-link[href],
335
+ .fr-raw-link [href] {
336
+ --underline-img: none;
337
+ --external-link-content: none;
338
+ }
339
+
340
+ .fr-reset-link {
341
+ --text-decoration: underline;
342
+ }
343
+ .fr-reset-link[href],
344
+ .fr-reset-link [href] {
345
+ --underline-img: none;
346
+ text-underline-offset: 2px;
347
+ }
348
+
349
+ button {
350
+ -webkit-appearance: none;
351
+ -moz-appearance: none;
352
+ appearance: none;
353
+ border: none;
354
+ margin: 0;
355
+ color: inherit;
356
+ background-color: transparent;
357
+ font-family: inherit;
358
+ font-size: inherit;
359
+ }
360
+ @media (-ms-high-contrast: active), (forced-colors: active) {
361
+ button {
362
+ color: buttontext;
363
+ }
364
+ }
365
+
366
+ @media (-ms-high-contrast: active), (forced-colors: active) {
367
+ button:disabled {
368
+ color: graytext;
369
+ }
370
+ }
371
+
372
+ input[type=range]:focus::-webkit-slider-thumb {
373
+ outline-offset: 2px;
374
+ outline-width: 2px;
375
+ outline-color: #0a76f6;
376
+ }
377
+
378
+ input[type=range]:focus::-moz-range-thumb {
379
+ outline-offset: 2px;
380
+ outline-width: 2px;
381
+ outline-color: #0a76f6;
382
+ }
383
+
384
+ input[type=range]:focus::-ms-thumb {
385
+ outline-offset: 2px;
386
+ outline-width: 2px;
387
+ outline-color: #0a76f6;
388
+ }
389
+
390
+ a:focus, button:focus, input:focus, input[type=checkbox]:focus + label::before, input[type=radio]:focus + label::before, input[type=button]:focus, input[type=image]:focus, input[type=reset]:focus, input[type=submit]:focus, select:focus, textarea:focus, [tabindex]:focus, video:focus[controls], audio:focus[controls], [contenteditable]:not([contenteditable=false]):focus, details:focus, details > summary:first-of-type:focus {
391
+ outline-offset: 2px;
392
+ outline-width: 2px;
393
+ outline-color: #0a76f6;
394
+ }
395
+
396
+ input[type=range]:focus::-webkit-slider-thumb {
397
+ outline-style: solid;
398
+ }
399
+
400
+ input[type=range]:focus::-moz-range-thumb {
401
+ outline-style: solid;
402
+ }
403
+
404
+ input[type=range]:focus::-ms-thumb {
405
+ outline-style: solid;
406
+ }
407
+
408
+ a:focus, button:focus, input:focus, input[type=checkbox]:focus + label::before, input[type=radio]:focus + label::before, input[type=button]:focus, input[type=image]:focus, input[type=reset]:focus, input[type=submit]:focus, select:focus, textarea:focus, [tabindex]:focus, video:focus[controls], audio:focus[controls], [contenteditable]:not([contenteditable=false]):focus, details:focus, details > summary:first-of-type:focus {
409
+ outline-style: solid;
410
+ }
411
+
412
+ input[type=range]:focus:not(:focus-visible)::-webkit-slider-thumb {
413
+ outline-style: none;
414
+ }
415
+
416
+ input[type=range]:focus:not(:focus-visible)::-moz-range-thumb {
417
+ outline-style: none;
418
+ }
419
+
420
+ input[type=range]:focus:not(:focus-visible)::-ms-thumb {
421
+ outline-style: none;
422
+ }
423
+
424
+ a:focus:not(:focus-visible), button:focus:not(:focus-visible), input:focus:not(:focus-visible), input[type=checkbox]:focus:not(:focus-visible) + label::before, input[type=radio]:focus:not(:focus-visible) + label::before, input[type=button]:focus:not(:focus-visible), input[type=image]:focus:not(:focus-visible), input[type=reset]:focus:not(:focus-visible), input[type=submit]:focus:not(:focus-visible), select:focus:not(:focus-visible), textarea:focus:not(:focus-visible), [tabindex]:focus:not(:focus-visible), video:focus:not(:focus-visible)[controls], audio:focus:not(:focus-visible)[controls], [contenteditable]:not([contenteditable=false]):focus:not(:focus-visible), details:focus:not(:focus-visible), details > summary:first-of-type:focus:not(:focus-visible) {
425
+ outline-style: none;
426
+ }
427
+
428
+ input[type=range]:focus-visible::-webkit-slider-thumb {
429
+ outline-style: solid;
430
+ }
431
+
432
+ input[type=range]:focus-visible::-moz-range-thumb {
433
+ outline-style: solid;
434
+ }
435
+
436
+ input[type=range]:focus-visible::-ms-thumb {
437
+ outline-style: solid;
438
+ }
439
+
440
+ a:focus-visible, button:focus-visible, input:focus-visible, input[type=checkbox]:focus-visible + label::before, input[type=radio]:focus-visible + label::before, input[type=button]:focus-visible, input[type=image]:focus-visible, input[type=reset]:focus-visible, input[type=submit]:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible, video:focus-visible[controls], audio:focus-visible[controls], [contenteditable]:not([contenteditable=false]):focus-visible, details:focus-visible, details > summary:first-of-type:focus-visible {
441
+ outline-style: solid;
442
+ }
443
+
444
+ @media (hover: hover) and (pointer: fine) {
445
+ :root {
446
+ --brighten: -1;
447
+ }
448
+ a[href]:hover, button:not(:disabled):hover, input[type=button]:not(:disabled):hover, input[type=image]:not(:disabled):hover, input[type=reset]:not(:disabled):hover, input[type=submit]:not(:disabled):hover {
449
+ background-color: var(--hover-tint);
450
+ }
451
+ a[href]:active, button:not(:disabled):active, input[type=button]:not(:disabled):active, input[type=image]:not(:disabled):active, input[type=reset]:not(:disabled):active, input[type=submit]:not(:disabled):active {
452
+ background-color: var(--active-tint);
453
+ }
454
+ a[href]:hover, a[href]:active {
455
+ --underline-hover-width: var(--underline-max-width);
456
+ }
457
+ }
458
+ button, input[type=button], input[type=image], input[type=reset], input[type=submit] {
459
+ --hover-tint: var(--hover);
460
+ --active-tint: var(--active);
461
+ }
462
+
463
+ a {
464
+ --hover-tint: var(--idle);
465
+ --active-tint: var(--active);
466
+ }
467
+
468
+ a, button, input[type=checkbox], input[type=checkbox] + label, input[type=radio], input[type=radio] + label, input[type=file], input[type=range], input[type=button], input[type=image], input[type=reset], input[type=submit], select, video[controls], audio[controls], details, details > summary:first-of-type {
469
+ cursor: pointer;
470
+ }
471
+
472
+ input[type=range]:disabled::-webkit-slider-thumb, input[type=range]:disabled::-webkit-slider-thumb:active {
473
+ cursor: not-allowed;
474
+ }
475
+
476
+ input[type=range]:disabled::-moz-range-thumb, input[type=range]:disabled::-moz-range-thumb:active {
477
+ cursor: not-allowed;
478
+ }
479
+
480
+ input[type=range]:disabled::-ms-thumb, input[type=range]:disabled::-ms-thumb:active {
481
+ cursor: not-allowed;
482
+ }
483
+
484
+ a:not([href]), button:disabled, input:disabled, input[type=checkbox]:disabled, input[type=checkbox]:disabled + label, input[type=radio]:disabled, input[type=radio]:disabled + label, input[type=file]:disabled, input[type=range]:disabled, input[type=button]:disabled, input[type=image]:disabled, input[type=reset]:disabled, input[type=submit]:disabled, select:disabled, textarea:disabled, video:not([href])[controls], audio:not([href])[controls] {
485
+ cursor: not-allowed;
486
+ }
487
+
488
+ input[type=range]::-webkit-slider-thumb {
489
+ cursor: grab;
490
+ }
491
+
492
+ input[type=range]::-moz-range-thumb {
493
+ cursor: grab;
494
+ }
495
+
496
+ input[type=range]::-ms-thumb {
497
+ cursor: grab;
498
+ }
499
+
500
+ input[type=range]::-webkit-slider-thumb:active {
501
+ cursor: grabbing;
502
+ }
503
+
504
+ input[type=range]::-moz-range-thumb:active {
505
+ cursor: grabbing;
506
+ }
507
+
508
+ input[type=range]::-ms-thumb:active {
509
+ cursor: grabbing;
510
+ }
511
+
512
+ :root {
513
+ --ul-type: disc;
514
+ --ol-type: decimal;
515
+ --ul-start: 1rem;
516
+ --ol-start: 1.5rem;
517
+ --xl-block: 0.5rem;
518
+ --li-bottom: 0.25rem;
519
+ --xl-base: 1em;
520
+ --ol-content: counters(li-counter, ".") ".\00a0\00a0";
521
+ }
522
+
523
+ ul,
524
+ ol,
525
+ dl {
526
+ margin: 0;
527
+ padding: 0;
528
+ margin-block-start: var(--xl-block);
529
+ margin-block-end: var(--xl-block);
530
+ --xl-size: var(--xl-base);
531
+ }
532
+
533
+ ul {
534
+ list-style-type: var(--ul-type);
535
+ padding-inline-start: var(--ul-start);
536
+ }
537
+ ul > li::marker {
538
+ font-size: calc(var(--xl-size) * 0.9);
539
+ }
540
+ @media (-ms-high-contrast: active), (forced-colors: active) {
541
+ ul > li::marker {
542
+ color: graytext;
543
+ }
544
+ }
545
+
546
+ ol {
547
+ list-style-type: var(--ol-type);
548
+ padding-inline-start: var(--ol-start);
549
+ counter-reset: li-counter;
550
+ }
551
+ ol > li {
552
+ counter-increment: li-counter;
553
+ }
554
+ ol > li::marker {
555
+ content: var(--ol-content);
556
+ font-size: var(--xl-size);
557
+ font-weight: bold;
558
+ }
559
+
560
+ dl,
561
+ dd {
562
+ margin: 0;
563
+ padding-inline-start: var(--ul-start);
564
+ }
565
+
566
+ li,
567
+ dd,
568
+ dt {
569
+ --xl-base: calc(var(--xl-size) * 0.9);
570
+ padding-bottom: var(--li-bottom);
571
+ }
572
+
573
+ .fr-raw-list {
574
+ --ul-type: none;
575
+ --ol-type: none;
576
+ --ul-start: 0;
577
+ --ol-start: 0;
578
+ --xl-block: 0;
579
+ --li-bottom: 0;
580
+ --ol-content: none;
581
+ }
582
+
583
+ .fr-list {
584
+ --ul-type: disc;
585
+ --ol-type: decimal;
586
+ --ul-start: 1rem;
587
+ --ol-start: 1.5rem;
588
+ --xl-block: 0.5rem;
589
+ --li-bottom: 0.25rem;
590
+ --xl-base: 1em;
591
+ --ol-content: counters(li-counter, ".") ".\00a0\00a0";
592
+ }
593
+
594
+ *,
595
+ *::before,
596
+ *::after {
597
+ box-sizing: inherit;
598
+ }
599
+
600
+ :root {
601
+ box-sizing: border-box;
602
+ }
603
+
604
+ input,
605
+ select,
606
+ textarea,
607
+ label,
608
+ button,
609
+ a {
610
+ -webkit-tap-highlight-color: transparent;
611
+ }
612
+
613
+ .fr-hidden {
614
+ display: none !important;
615
+ }
616
+
617
+ @media (min-width: 36em) {
618
+ .fr-hidden-sm {
619
+ display: none !important;
620
+ }
621
+ }
622
+ @media (min-width: 48em) {
623
+ .fr-hidden-md {
624
+ display: none !important;
625
+ }
626
+ }
627
+ @media (min-width: 62em) {
628
+ .fr-hidden-lg {
629
+ display: none !important;
630
+ }
631
+ }
632
+ @media (min-width: 78em) {
633
+ .fr-hidden-xl {
634
+ display: none !important;
635
+ }
636
+ }
637
+ .fr-unhidden {
638
+ display: inherit !important;
639
+ }
640
+
641
+ @media (min-width: 36em) {
642
+ .fr-unhidden-sm {
643
+ display: inherit !important;
644
+ }
645
+ }
646
+ @media (min-width: 48em) {
647
+ .fr-unhidden-md {
648
+ display: inherit !important;
649
+ }
650
+ }
651
+ @media (min-width: 62em) {
652
+ .fr-unhidden-lg {
653
+ display: inherit !important;
654
+ }
655
+ }
656
+ @media (min-width: 78em) {
657
+ .fr-unhidden-xl {
658
+ display: inherit !important;
659
+ }
660
+ }
661
+ .fr-collapse {
662
+ --collapse: -99999px;
663
+ --collapser: '';
664
+ --collapse-max-height: none;
665
+ overflow: hidden;
666
+ transition: visibility 0.3s;
667
+ max-height: var(--collapse-max-height);
668
+ }
669
+ .fr-collapse--expanded {
670
+ overflow-x: hidden;
671
+ overflow-y: auto;
672
+ }
673
+ @media (prefers-reduced-motion: reduce) {
674
+ .fr-collapse {
675
+ transition: none;
676
+ }
677
+ }
678
+ .fr-collapse::before {
679
+ display: block;
680
+ content: "";
681
+ content: var(--collapser);
682
+ transition: margin-top 0.3s;
683
+ margin-top: 0;
684
+ }
685
+ @media (prefers-reduced-motion: reduce) {
686
+ .fr-collapse::before {
687
+ transition: none;
688
+ }
689
+ }
690
+ .fr-collapse:not(.fr-collapse--expanded):not(.fr-collapsing) {
691
+ --collapse-max-height: 0;
692
+ }
693
+ .fr-collapse:not(.fr-collapse--expanded) {
694
+ visibility: hidden;
695
+ }
696
+ .fr-collapse:not(.fr-collapse--expanded)::before {
697
+ margin-top: -99999px;
698
+ margin-top: var(--collapse);
699
+ }
700
+
701
+ :root {
702
+ --ground: 0;
703
+ --shadow-color: rgba(0, 0, 18, 0.16);
704
+ --raised-shadow: 0 1px 3px var(--shadow-color);
705
+ --overlap-shadow: 0 2px 6px var(--shadow-color);
706
+ --lifted-shadow: 0 3px 9px var(--shadow-color);
707
+ }
708
+
709
+ :root[data-fr-theme=dark] {
710
+ --shadow-color: rgba(0, 0, 18, 0.32);
711
+ }
712
+
713
+ .fr-btn {
714
+ --text-spacing: 0;
715
+ --title-spacing: 0;
716
+ display: inline-flex;
717
+ flex-direction: row;
718
+ align-items: center;
719
+ width: -moz-fit-content;
720
+ width: fit-content;
721
+ }
722
+ .fr-btn::before, .fr-btn::after {
723
+ display: block;
724
+ }
725
+ .fr-btn {
726
+ --underline-img: none;
727
+ --hover-tint: var(--hover);
728
+ font-weight: 500;
729
+ }
730
+ @media (-ms-high-contrast: active), (forced-colors: active) {
731
+ .fr-btn::before, .fr-btn::after {
732
+ background-color: buttontext;
733
+ }
734
+ }
735
+
736
+ .fr-btn {
737
+ font-size: 1rem;
738
+ line-height: 1.5rem;
739
+ min-height: 2.5rem;
740
+ padding: 0.5rem 1rem;
741
+ }
742
+ .fr-btn[target=_blank] {
743
+ overflow: initial;
744
+ max-width: 100%;
745
+ max-height: none;
746
+ }
747
+ .fr-btn[target=_blank]::after {
748
+ content: "";
749
+ --icon-size: 1rem;
750
+ margin-right: -0.125rem;
751
+ margin-left: 0.5rem;
752
+ }
753
+
754
+ .fr-btn--align-on-content {
755
+ margin-left: -1rem;
756
+ margin-right: -1rem;
757
+ }
758
+
759
+ .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-]) {
760
+ overflow: hidden;
761
+ white-space: nowrap;
762
+ max-width: 2.5rem;
763
+ max-height: 2.5rem;
764
+ padding-left: 0.5rem;
765
+ padding-right: 0.5rem;
766
+ }
767
+ .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 {
768
+ --icon-size: 1.5rem;
769
+ margin-left: 0;
770
+ margin-right: 0.5rem;
771
+ }
772
+
773
+ .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-]) {
774
+ margin-left: -0.5rem;
775
+ margin-right: -0.5rem;
776
+ }
777
+
778
+ .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-"] {
779
+ overflow: initial;
780
+ max-width: 100%;
781
+ max-height: none;
782
+ }
783
+ .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 {
784
+ --icon-size: 1rem;
785
+ margin-left: -0.125rem;
786
+ margin-right: 0.5rem;
787
+ }
788
+
789
+ .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-"] {
790
+ margin-left: -0.875rem;
791
+ margin-right: -1rem;
792
+ }
793
+
794
+ .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-"] {
795
+ overflow: initial;
796
+ max-width: 100%;
797
+ max-height: none;
798
+ }
799
+ .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 {
800
+ content: "";
801
+ --icon-size: 1rem;
802
+ margin-right: -0.125rem;
803
+ margin-left: 0.5rem;
804
+ }
805
+ .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 {
806
+ content: none;
807
+ }
808
+
809
+ .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-"] {
810
+ margin-left: -1rem;
811
+ margin-right: -0.875rem;
812
+ }
813
+
814
+ .fr-btn--sm {
815
+ font-size: 0.875rem;
816
+ line-height: 1.5rem;
817
+ min-height: 2rem;
818
+ padding: 0.25rem 0.75rem;
819
+ }
820
+ .fr-btn--sm[target=_blank] {
821
+ overflow: initial;
822
+ max-width: 100%;
823
+ max-height: none;
824
+ }
825
+ .fr-btn--sm[target=_blank]::after {
826
+ content: "";
827
+ --icon-size: 1rem;
828
+ margin-right: -0.125rem;
829
+ margin-left: 0.5rem;
830
+ }
831
+
832
+ .fr-btn--sm.fr-btn--align-on-content {
833
+ margin-left: -0.75rem;
834
+ margin-right: -0.75rem;
835
+ }
836
+
837
+ .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-]) {
838
+ overflow: hidden;
839
+ white-space: nowrap;
840
+ max-width: 2rem;
841
+ max-height: 2rem;
842
+ padding-left: 0.5rem;
843
+ padding-right: 0.5rem;
844
+ }
845
+ .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 {
846
+ --icon-size: 1rem;
847
+ margin-left: 0;
848
+ margin-right: 0.5rem;
849
+ }
850
+
851
+ .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-]) {
852
+ margin-left: -0.5rem;
853
+ margin-right: -0.5rem;
854
+ }
855
+
856
+ .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-"] {
857
+ overflow: initial;
858
+ max-width: 100%;
859
+ max-height: none;
860
+ }
861
+ .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 {
862
+ --icon-size: 1rem;
863
+ margin-left: -0.125rem;
864
+ margin-right: 0.5rem;
865
+ }
866
+
867
+ .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-"] {
868
+ margin-left: -0.625rem;
869
+ margin-right: -0.75rem;
870
+ }
871
+
872
+ .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-"] {
873
+ overflow: initial;
874
+ max-width: 100%;
875
+ max-height: none;
876
+ }
877
+ .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 {
878
+ content: "";
879
+ --icon-size: 1rem;
880
+ margin-right: -0.125rem;
881
+ margin-left: 0.5rem;
882
+ }
883
+ .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 {
884
+ content: none;
885
+ }
886
+
887
+ .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-"] {
888
+ margin-left: -0.75rem;
889
+ margin-right: -0.625rem;
890
+ }
891
+
892
+ .fr-btn--lg {
893
+ font-size: 1.125rem;
894
+ line-height: 1.75rem;
895
+ min-height: 3rem;
896
+ padding: 0.5rem 1.5rem;
897
+ }
898
+ .fr-btn--lg[target=_blank] {
899
+ overflow: initial;
900
+ max-width: 100%;
901
+ max-height: none;
902
+ }
903
+ .fr-btn--lg[target=_blank]::after {
904
+ content: "";
905
+ --icon-size: 1.5rem;
906
+ margin-right: -0.1875rem;
907
+ margin-left: 0.5rem;
908
+ }
909
+
910
+ .fr-btn--lg.fr-btn--align-on-content {
911
+ margin-left: -1.5rem;
912
+ margin-right: -1.5rem;
913
+ }
914
+
915
+ .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-]) {
916
+ overflow: hidden;
917
+ white-space: nowrap;
918
+ max-width: 3rem;
919
+ max-height: 3rem;
920
+ padding-left: 0.5rem;
921
+ padding-right: 0.5rem;
922
+ }
923
+ .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 {
924
+ --icon-size: 2rem;
925
+ margin-left: 0;
926
+ margin-right: 0.5rem;
927
+ }
928
+
929
+ .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-]) {
930
+ margin-left: -0.5rem;
931
+ margin-right: -0.5rem;
932
+ }
933
+
934
+ .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-"] {
935
+ overflow: initial;
936
+ max-width: 100%;
937
+ max-height: none;
938
+ }
939
+ .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 {
940
+ --icon-size: 1.5rem;
941
+ margin-left: -0.1875rem;
942
+ margin-right: 0.5rem;
943
+ }
944
+
945
+ .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-"] {
946
+ margin-left: -1.3125rem;
947
+ margin-right: -1.5rem;
948
+ }
949
+
950
+ .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-"] {
951
+ overflow: initial;
952
+ max-width: 100%;
953
+ max-height: none;
954
+ }
955
+ .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 {
956
+ content: "";
957
+ --icon-size: 1.5rem;
958
+ margin-right: -0.1875rem;
959
+ margin-left: 0.5rem;
960
+ }
961
+ .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 {
962
+ content: none;
963
+ }
964
+
965
+ .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-"] {
966
+ margin-left: -1.5rem;
967
+ margin-right: -1.3125rem;
968
+ }
969
+
970
+ @media (-ms-high-contrast: active), (forced-colors: active) {
971
+ .fr-btn:disabled::before, .fr-btn:disabled::after, a.fr-btn:not([href])::before, a.fr-btn:not([href])::after {
972
+ background-color: graytext;
973
+ }
974
+ }
975
+ @media (-ms-high-contrast: active), (forced-colors: active) {
976
+ .fr-btn:disabled, a.fr-btn:not([href]) {
977
+ border-color: graytext;
978
+ color: graytext;
979
+ }
980
+ }
981
+
982
+ @media (-ms-high-contrast: active), (forced-colors: active) {
983
+ a[href].fr-btn::before, a[href].fr-btn::after {
984
+ background-color: linktext;
985
+ }
986
+ }
987
+
988
+ @media (-ms-high-contrast: active), (forced-colors: active) {
989
+ button.fr-btn {
990
+ border: 1px solid buttontext;
991
+ }
992
+ }
993
+
994
+ .fr-btn {
995
+ background-color: var(--background-action-high-blue-france);
996
+ --idle: transparent;
997
+ --hover: var(--background-action-high-blue-france-hover);
998
+ --active: var(--background-action-high-blue-france-active);
999
+ color: var(--text-inverted-blue-france);
1000
+ }
1001
+ .fr-btn:disabled, a.fr-btn:not([href]) {
1002
+ color: var(--text-disabled-grey);
1003
+ background-color: var(--background-disabled-grey);
1004
+ --idle: transparent;
1005
+ --hover: var(--background-disabled-grey-hover);
1006
+ --active: var(--background-disabled-grey-active);
1007
+ }
1008
+
1009
+ .fr-btn--secondary {
1010
+ background-color: transparent;
1011
+ --hover: inherit;
1012
+ --active: inherit;
1013
+ color: var(--text-action-high-blue-france);
1014
+ box-shadow: inset 0 0 0 1px var(--border-action-high-blue-france);
1015
+ }
1016
+ .fr-btn--secondary:disabled, a.fr-btn--secondary:not([href]) {
1017
+ color: var(--text-disabled-grey);
1018
+ box-shadow: inset 0 0 0 1px var(--border-disabled-grey);
1019
+ background-color: transparent;
1020
+ --hover: inherit;
1021
+ --active: inherit;
1022
+ }
1023
+
1024
+ .fr-btn--tertiary, .fr-btn--sort, .fr-btn--sort-asc, .fr-btn--sort-desc, .fr-btn--account {
1025
+ background-color: transparent;
1026
+ --hover: inherit;
1027
+ --active: inherit;
1028
+ color: var(--text-action-high-blue-france);
1029
+ box-shadow: inset 0 0 0 1px var(--border-default-grey);
1030
+ }
1031
+ .fr-btn--tertiary:disabled, a.fr-btn--tertiary:not([href]), a.fr-btn--sort:not([href]), a.fr-btn--sort-asc:not([href]), a.fr-btn--sort-desc:not([href]), a.fr-btn--account:not([href]), .fr-btn--sort:disabled, .fr-btn--sort-asc:disabled, .fr-btn--sort-desc:disabled, .fr-btn--account:disabled {
1032
+ color: var(--text-disabled-grey);
1033
+ box-shadow: inset 0 0 0 1px var(--border-disabled-grey);
1034
+ background-color: transparent;
1035
+ --hover: inherit;
1036
+ --active: inherit;
1037
+ }
1038
+
1039
+ .fr-btn--tertiary-no-outline, .fr-btn--close, .fr-btn--display, .fr-btn--fullscreen, .fr-btn--tooltip, .fr-btn--briefcase, .fr-btn--team {
1040
+ background-color: transparent;
1041
+ --hover: inherit;
1042
+ --active: inherit;
1043
+ color: var(--text-action-high-blue-france);
1044
+ }
1045
+ .fr-btn--tertiary-no-outline:disabled, a.fr-btn--tertiary-no-outline:not([href]), a.fr-btn--close:not([href]), a.fr-btn--display:not([href]), a.fr-btn--fullscreen:not([href]), a.fr-btn--tooltip:not([href]), a.fr-btn--briefcase:not([href]), a.fr-btn--team:not([href]), .fr-btn--close:disabled, .fr-btn--display:disabled, .fr-btn--fullscreen:disabled, .fr-btn--tooltip:disabled, .fr-btn--briefcase:disabled, .fr-btn--team:disabled {
1046
+ color: var(--text-disabled-grey);
1047
+ background-color: transparent;
1048
+ --hover: inherit;
1049
+ --active: inherit;
1050
+ }
1051
+
1052
+ .fr-nav {
1053
+ --underline-img: none;
1054
+ --ul-type: none;
1055
+ --ol-type: none;
1056
+ --ul-start: 0;
1057
+ --ol-start: 0;
1058
+ --xl-block: 0;
1059
+ --li-bottom: 0;
1060
+ --ol-content: none;
1061
+ --text-spacing: 0;
1062
+ --title-spacing: 0;
1063
+ }
1064
+ .fr-nav__list {
1065
+ display: flex;
1066
+ flex-direction: column;
1067
+ margin: 0;
1068
+ padding: 0;
1069
+ }
1070
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1071
+ .fr-nav__list {
1072
+ border-top: 1px solid;
1073
+ border-bottom: 1px solid;
1074
+ }
1075
+ }
1076
+ @media (min-width: 62em) {
1077
+ .fr-nav__list {
1078
+ flex-direction: row;
1079
+ flex-wrap: nowrap;
1080
+ }
1081
+ .fr-nav__list > *:first-child:nth-last-child(2) ~ *, .fr-nav__list > *:first-child:nth-last-child(3) ~ *, .fr-nav__list > *:first-child:nth-last-child(4) ~ * {
1082
+ margin-left: 1.25rem;
1083
+ }
1084
+ }
1085
+ .fr-nav__item {
1086
+ display: flex;
1087
+ flex-direction: column;
1088
+ align-items: stretch;
1089
+ flex: 0 1 auto;
1090
+ position: relative;
1091
+ }
1092
+ .fr-nav__item::before {
1093
+ content: "";
1094
+ display: block;
1095
+ position: absolute;
1096
+ top: 0;
1097
+ right: 0;
1098
+ bottom: 0;
1099
+ left: 0;
1100
+ width: 100%;
1101
+ height: 100%;
1102
+ pointer-events: none;
1103
+ }
1104
+ .fr-nav__item:first-child:last-child::before {
1105
+ box-shadow: none;
1106
+ }
1107
+ .fr-nav__item .fr-btn,
1108
+ .fr-nav__item .fr-link {
1109
+ min-height: 3rem;
1110
+ }
1111
+ @media (min-width: 62em) {
1112
+ .fr-nav__item .fr-btn,
1113
+ .fr-nav__item .fr-link {
1114
+ min-height: auto;
1115
+ }
1116
+ }
1117
+ @media (min-width: 62em) {
1118
+ .fr-nav__item {
1119
+ position: initial;
1120
+ }
1121
+ .fr-nav__item::before {
1122
+ content: none;
1123
+ }
1124
+ .fr-nav__item {
1125
+ align-items: flex-start;
1126
+ }
1127
+ .fr-nav__item--align-right {
1128
+ align-items: flex-end;
1129
+ }
1130
+ }
1131
+ .fr-nav__link, .fr-nav__btn {
1132
+ display: flex;
1133
+ flex-direction: row;
1134
+ align-items: center;
1135
+ justify-content: space-between;
1136
+ --hover-tint: var(--hover);
1137
+ --active-tint: var(--active);
1138
+ font-weight: bold;
1139
+ padding: 0.75rem 1rem;
1140
+ margin: 0;
1141
+ width: auto;
1142
+ height: 100%;
1143
+ font-size: 1rem;
1144
+ line-height: 1.5rem;
1145
+ text-align: left;
1146
+ }
1147
+ @media (min-width: 62em) {
1148
+ .fr-nav__link, .fr-nav__btn {
1149
+ min-height: 3.5rem;
1150
+ padding: 1rem;
1151
+ font-size: 0.875rem;
1152
+ line-height: 1.5rem;
1153
+ font-weight: normal;
1154
+ }
1155
+ .fr-nav__link[aria-current]:not([aria-current=false]), .fr-nav__btn[aria-current]:not([aria-current=false]) {
1156
+ position: relative;
1157
+ }
1158
+ .fr-nav__link[aria-current]:not([aria-current=false])::before, .fr-nav__btn[aria-current]:not([aria-current=false])::before {
1159
+ content: "";
1160
+ position: absolute;
1161
+ top: auto;
1162
+ bottom: 0;
1163
+ left: 0;
1164
+ width: 100%;
1165
+ height: 2px;
1166
+ margin-top: 0;
1167
+ }
1168
+ }
1169
+ @media (min-width: 62em) and (-ms-high-contrast: active), (min-width: 62em) and (forced-colors: active) {
1170
+ .fr-nav__link[aria-current]:not([aria-current=false])::before, .fr-nav__btn[aria-current]:not([aria-current=false])::before {
1171
+ background-color: highlight;
1172
+ height: 0.25rem;
1173
+ }
1174
+ }
1175
+ .fr-nav__link:not([href])[aria-current]:not([aria-current=false]) {
1176
+ pointer-events: none;
1177
+ cursor: default;
1178
+ }
1179
+ .fr-nav__btn::after {
1180
+ flex: 0 0 auto;
1181
+ display: inline-block;
1182
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
1183
+ background-color: currentColor;
1184
+ width: var(--icon-size);
1185
+ height: var(--icon-size);
1186
+ -webkit-mask-size: 100% 100%;
1187
+ mask-size: 100% 100%;
1188
+ }
1189
+ .fr-nav__btn::after {
1190
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/arrows/arrow-down-s-line.svg");
1191
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/arrows/arrow-down-s-line.svg");
1192
+ }
1193
+ .fr-nav__btn::after {
1194
+ --icon-size: 1rem;
1195
+ }
1196
+ .fr-nav__btn::after {
1197
+ content: "";
1198
+ margin-left: 0.5rem;
1199
+ margin-right: 0;
1200
+ transition: transform 0.3s;
1201
+ }
1202
+ @media (prefers-reduced-motion: reduce) {
1203
+ .fr-nav__btn::after {
1204
+ transition: none;
1205
+ }
1206
+ }
1207
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1208
+ .fr-nav__btn::after {
1209
+ forced-color-adjust: none;
1210
+ background-color: buttontext;
1211
+ }
1212
+ }
1213
+ @media (min-width: 62em) {
1214
+ .fr-nav__btn {
1215
+ justify-content: flex-start;
1216
+ }
1217
+ }
1218
+ .fr-nav__btn[aria-expanded=true]::after {
1219
+ transform: rotate(-180deg);
1220
+ }
1221
+
1222
+ .fr-menu {
1223
+ margin: -4px -1rem;
1224
+ padding: 4px 1rem;
1225
+ width: auto;
1226
+ }
1227
+ .fr-menu.fr-collapsing {
1228
+ margin-top: 0;
1229
+ padding-top: 0;
1230
+ }
1231
+ @media (min-width: 62em) {
1232
+ .fr-menu {
1233
+ pointer-events: none;
1234
+ position: absolute;
1235
+ top: 100%;
1236
+ }
1237
+ }
1238
+ .fr-menu__list {
1239
+ margin: 0;
1240
+ padding: 0 1rem 1rem;
1241
+ }
1242
+ @media (min-width: 62em) {
1243
+ .fr-menu__list {
1244
+ width: 20rem;
1245
+ pointer-events: auto;
1246
+ padding: 0;
1247
+ margin-bottom: 2rem;
1248
+ background-size: 100% 1px;
1249
+ background-position: 0 0;
1250
+ background-repeat: no-repeat;
1251
+ }
1252
+ }
1253
+ @media (min-width: 62em) and (-ms-high-contrast: active), (min-width: 62em) and (forced-colors: active) {
1254
+ .fr-menu__list {
1255
+ outline: 1px solid;
1256
+ }
1257
+ }
1258
+ .fr-menu .fr-nav__link {
1259
+ padding: 0.75rem 1rem;
1260
+ width: 100%;
1261
+ height: auto;
1262
+ font-weight: normal;
1263
+ min-height: auto;
1264
+ }
1265
+ .fr-menu .fr-nav__link[aria-current]:not([aria-current=false]) {
1266
+ position: relative;
1267
+ }
1268
+ .fr-menu .fr-nav__link[aria-current]:not([aria-current=false])::before {
1269
+ content: "";
1270
+ display: block;
1271
+ position: absolute;
1272
+ top: 50%;
1273
+ left: 0;
1274
+ width: 2px;
1275
+ height: 1.5rem;
1276
+ margin-top: -0.75rem;
1277
+ }
1278
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1279
+ .fr-menu .fr-nav__link[aria-current]:not([aria-current=false])::before {
1280
+ background-color: highlight;
1281
+ width: 0.25rem;
1282
+ }
1283
+ }
1284
+
1285
+ .fr-nav__link, .fr-nav__btn {
1286
+ color: var(--text-action-high-grey);
1287
+ }
1288
+ .fr-nav__link[aria-current]:not([aria-current=false]), .fr-nav__btn[aria-current]:not([aria-current=false]) {
1289
+ color: var(--text-active-blue-france);
1290
+ }
1291
+ .fr-nav__link[aria-current]:not([aria-current=false])::before, .fr-nav__btn[aria-current]:not([aria-current=false])::before {
1292
+ background-color: var(--background-active-blue-france);
1293
+ --idle: transparent;
1294
+ --hover: var(--background-active-blue-france-hover);
1295
+ --active: var(--background-active-blue-france-active);
1296
+ }
1297
+ .fr-nav__btn[aria-expanded=true] {
1298
+ background-color: var(--background-open-blue-france);
1299
+ --idle: transparent;
1300
+ --hover: var(--background-open-blue-france-hover);
1301
+ --active: var(--background-open-blue-france-active);
1302
+ color: var(--text-action-high-blue-france);
1303
+ }
1304
+ .fr-nav__btn[aria-expanded=true]:disabled {
1305
+ color: var(--text-disabled-grey);
1306
+ background-color: var(--background-disabled-grey);
1307
+ --idle: transparent;
1308
+ --hover: var(--background-disabled-grey-hover);
1309
+ --active: var(--background-disabled-grey-active);
1310
+ }
1311
+
1312
+ .fr-nav__item::before {
1313
+ box-shadow: 0 -1px 0 0 var(--border-default-grey), inset 0 -1px 0 0 var(--border-default-grey);
1314
+ }
1315
+ .fr-nav__item:first-child::before {
1316
+ box-shadow: inset 0 -1px 0 0 var(--border-default-grey);
1317
+ }
1318
+ .fr-nav__item:last-child::before {
1319
+ box-shadow: 0 -1px 0 0 var(--border-default-grey);
1320
+ }
1321
+
1322
+ @media (min-width: 62em) {
1323
+ .fr-menu {
1324
+ z-index: calc(var(--ground) + 1000);
1325
+ }
1326
+ .fr-menu__list {
1327
+ background-color: var(--background-overlap-grey);
1328
+ --idle: transparent;
1329
+ --hover: var(--background-overlap-grey-hover);
1330
+ --active: var(--background-overlap-grey-active);
1331
+ }
1332
+ .fr-menu {
1333
+ filter: drop-shadow(var(--overlap-shadow));
1334
+ }
1335
+ .fr-menu__list {
1336
+ background-image: linear-gradient(0deg, var(--background-open-blue-france), var(--background-open-blue-france));
1337
+ }
1338
+ .fr-menu__list > *:first-child, .fr-menu__list > *:first-child .fr-nav__link, .fr-menu__list > *:hover, .fr-menu__list > *:hover .fr-nav__link, .fr-menu__list > *:hover + *, .fr-menu__list > *:hover + * .fr-nav__link {
1339
+ box-shadow: none;
1340
+ }
1341
+ .fr-menu .fr-nav__link {
1342
+ box-shadow: 0 calc(-1rem - 1px) 0 -1rem var(--border-default-grey);
1343
+ }
1344
+ }
1345
+
1346
+ @media (min-width: 62em) {
1347
+ .fr-mega-menu {
1348
+ z-index: calc(var(--ground) + 1000);
1349
+ background-color: var(--background-overlap-grey);
1350
+ --idle: transparent;
1351
+ --hover: var(--background-overlap-grey-hover);
1352
+ --active: var(--background-overlap-grey-active);
1353
+ filter: drop-shadow(var(--overlap-shadow));
1354
+ box-shadow: inset 0 1px 0 0 var(--border-open-blue-france);
1355
+ }
1356
+ }
1357
+ .fr-mega-menu__list::before {
1358
+ box-shadow: 0 1px 0 0 var(--border-default-grey);
1359
+ }
1360
+ @media (min-width: 62em) {
1361
+ .fr-mega-menu__category {
1362
+ box-shadow: 0 calc(1rem + 1px) 0 -1rem var(--border-default-grey);
1363
+ }
1364
+ }
1365
+
1366
+ :host {
1367
+ display: block;
1368
+ text-rendering: optimizeLegibility;
1369
+ -webkit-font-smoothing: antialiased;
1370
+ -moz-osx-font-smoothing: grayscale;
1371
+ -webkit-text-size-adjust: 100%;
1372
+ font-size: 1rem;
1373
+ line-height: 1.5rem;
1374
+ background-color: var(--background-default-grey);
1375
+ --idle: transparent;
1376
+ --hover: var(--background-default-grey-hover);
1377
+ --active: var(--background-default-grey-active);
1378
+ color: var(--text-default-grey);
1379
+ background-color: transparent;
1380
+ }
1381
+
1382
+ .fr-translate {
1383
+ box-sizing: border-box;
1384
+ }</style>