@lab-anssi/ui-kit 1.61.3 → 1.62.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +925 -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,1896 @@
1
+ <svelte:options
2
+ customElement={{
3
+ tag: "dsfr-buttons-group",
4
+ props: {
5
+ size: { attribute: "size", type: "String" },
6
+ hasIcon: { attribute: "has-icon", type: "Boolean" },
7
+ iconPlace: { attribute: "icon-place", type: "String" },
8
+ groupMarkup: { attribute: "group-markup", type: "String" },
9
+ inline: { attribute: "inline", type: "String" },
10
+ equisized: { attribute: "equisized", type: "Boolean" },
11
+ align: { attribute: "align", type: "String" },
12
+ reverse: { attribute: "reverse", type: "Boolean" },
13
+ buttons: { attribute: "buttons", type: "Object" },
14
+ },
15
+ extend: withIconsStyleSheet,
16
+ }}
17
+ />
18
+
19
+ <script lang="ts">import { withIconsStyleSheet, setIconClass, setThemeable } from "../utilitaires";
20
+ setThemeable($host());
21
+ let { size = "md", hasIcon = false, iconPlace = "left", groupMarkup = "ul", inline = "false", equisized = false, align = "left", reverse = false, buttons = [] } = $props();
22
+ const alignClass = $derived.by(() => {
23
+ if (!inline) return "";
24
+ switch (align) {
25
+ case "center": return "fr-btns-group--center";
26
+ case "right": return reverse ? "fr-btns-group--right fr-btns-group--inline-reverse" : "fr-btns-group--right";
27
+ default: return "fr-btns-group--left";
28
+ }
29
+ });
30
+ const equisizedClass = $derived(equisized && "fr-btns-group--equisized");
31
+ const iconClass = $derived(hasIcon && iconPlace !== "only" && `fr-btns-group--icon-${iconPlace}`);
32
+ const inlineClass = $derived.by(() => {
33
+ switch (inline) {
34
+ case "true": return "fr-btns-group--inline";
35
+ case "sm": return "fr-btns-group--inline-sm";
36
+ case "md": return "fr-btns-group--inline-md";
37
+ case "lg": return "fr-btns-group--inline-lg";
38
+ default: return "";
39
+ }
40
+ });
41
+ function setButtonClass(btn) {
42
+ let classes = [];
43
+ if (btn.kind) {
44
+ classes.push(`fr-btn--${btn.kind}`);
45
+ }
46
+ if (btn.preset) {
47
+ classes.push(`fr-btn--${btn.preset}`);
48
+ }
49
+ if (hasIcon && btn.icon) {
50
+ classes.push(setIconClass(btn.icon));
51
+ }
52
+ return classes;
53
+ }
54
+ </script>
55
+
56
+ {#snippet dsfrbutton(btn: Button)}
57
+ <svelte:element
58
+ this={btn.href ? "a" : "button"}
59
+ type={!btn.href ? "button" : undefined}
60
+ href={btn.href}
61
+ target={btn.blank ? "_blank" : undefined}
62
+ class={["fr-btn", setButtonClass(btn)]}
63
+ disabled={btn.disabled}
64
+ id={btn.id}
65
+ title={btn.title}
66
+ >
67
+ {btn.label}
68
+ </svelte:element>
69
+ {/snippet}
70
+
71
+ <svelte:element
72
+ this={groupMarkup}
73
+ class={[
74
+ "fr-btns-group",
75
+ `fr-btns-group--${size}`,
76
+ alignClass,
77
+ equisizedClass,
78
+ iconClass,
79
+ inlineClass,
80
+ ]}
81
+ >
82
+ {#each buttons as button, index (index)}
83
+ {#if groupMarkup === "ul"}
84
+ <li>
85
+ {@render dsfrbutton(button)}
86
+ </li>
87
+ {:else}
88
+ {@render dsfrbutton(button)}
89
+ {/if}
90
+ {/each}
91
+ </svelte:element>
92
+
93
+ <style>@charset "UTF-8";
94
+
95
+ /*!
96
+ * DSFR v1.14.4 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
97
+ */
98
+
99
+ /* ¯¯¯¯¯¯¯¯¯ *\
100
+ BUTTON
101
+ \* ˍˍˍˍˍˍˍˍˍ */
102
+ .fr-btn {
103
+ --text-spacing: 0;
104
+ --title-spacing: 0;
105
+ display: inline-flex;
106
+ flex-direction: row;
107
+ align-items: center;
108
+ width: -moz-fit-content;
109
+ width: fit-content;
110
+ --underline-img: none;
111
+ --hover-tint: var(--hover);
112
+ font-weight: 500;
113
+ font-size: 1rem;
114
+ line-height: 1.5rem;
115
+ min-height: 2.5rem;
116
+ padding: 0.5rem 1rem;
117
+ background-color: var(--background-action-high-blue-france);
118
+
119
+ --idle: transparent;
120
+ --hover: var(--background-action-high-blue-france-hover);
121
+ --active: var(--background-action-high-blue-france-active);
122
+ color: var(--text-inverted-blue-france);
123
+ }
124
+
125
+ .fr-btn::before,
126
+ .fr-btn::after {
127
+ display: block;
128
+ }
129
+
130
+ .fr-btn[target=_blank] {
131
+ overflow: initial;
132
+ max-width: 100%;
133
+ max-height: none;
134
+ }
135
+
136
+ .fr-btn[target=_blank]::after {
137
+ content: "";
138
+
139
+ --icon-size: 1rem;
140
+ margin-right: -0.125rem;
141
+ margin-left: 0.5rem;
142
+ }
143
+
144
+ .fr-btn--align-on-content {
145
+ margin-left: -1rem;
146
+ margin-right: -1rem;
147
+ }
148
+
149
+ .fr-btn[class^=fr-icon-]:not([class*=fr-btn--icon-]),
150
+ .fr-btn[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
151
+ .fr-btn[class^=fr-fi-]:not([class*=fr-btn--icon-]),
152
+ .fr-btn[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
153
+ overflow: hidden;
154
+ white-space: nowrap;
155
+ max-width: 2.5rem;
156
+ max-height: 2.5rem;
157
+ padding-left: 0.5rem;
158
+ padding-right: 0.5rem;
159
+ }
160
+
161
+ .fr-btn[class^=fr-icon-]:not([class*=fr-btn--icon-])::before,
162
+ .fr-btn[class*=" fr-icon-"]:not([class*=fr-btn--icon-])::before,
163
+ .fr-btn[class^=fr-fi-]:not([class*=fr-btn--icon-])::before,
164
+ .fr-btn[class*=" fr-fi-"]:not([class*=fr-btn--icon-])::before {
165
+ --icon-size: 1.5rem;
166
+ margin-left: 0;
167
+ margin-right: 0.5rem;
168
+ }
169
+
170
+ .fr-btn--align-on-content[class^=fr-icon-]:not([class*=fr-btn--icon-]),
171
+ .fr-btn--align-on-content[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
172
+ .fr-btn--align-on-content[class^=fr-fi-]:not([class*=fr-btn--icon-]),
173
+ .fr-btn--align-on-content[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
174
+ margin-left: -0.5rem;
175
+ margin-right: -0.5rem;
176
+ }
177
+
178
+ .fr-btn--icon-left[class^=fr-icon-],
179
+ .fr-btn--icon-left[class*=" fr-icon-"],
180
+ .fr-btn--icon-left[class^=fr-fi-],
181
+ .fr-btn--icon-left[class*=" fr-fi-"] {
182
+ overflow: initial;
183
+ max-width: 100%;
184
+ max-height: none;
185
+ }
186
+
187
+ .fr-btn--icon-left[class^=fr-icon-]::before,
188
+ .fr-btn--icon-left[class*=" fr-icon-"]::before,
189
+ .fr-btn--icon-left[class^=fr-fi-]::before,
190
+ .fr-btn--icon-left[class*=" fr-fi-"]::before {
191
+ --icon-size: 1rem;
192
+ margin-left: -0.125rem;
193
+ margin-right: 0.5rem;
194
+ }
195
+
196
+ .fr-btn--align-on-content.fr-btn--icon-left[class^=fr-icon-],
197
+ .fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-icon-"],
198
+ .fr-btn--align-on-content.fr-btn--icon-left[class^=fr-fi-],
199
+ .fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-fi-"] {
200
+ margin-left: -0.875rem;
201
+ margin-right: -1rem;
202
+ }
203
+
204
+ .fr-btn--icon-right[class^=fr-icon-],
205
+ .fr-btn--icon-right[class*=" fr-icon-"],
206
+ .fr-btn--icon-right[class^=fr-fi-],
207
+ .fr-btn--icon-right[class*=" fr-fi-"] {
208
+ overflow: initial;
209
+ max-width: 100%;
210
+ max-height: none;
211
+ }
212
+
213
+ .fr-btn--icon-right[class^=fr-icon-]::after,
214
+ .fr-btn--icon-right[class*=" fr-icon-"]::after,
215
+ .fr-btn--icon-right[class^=fr-fi-]::after,
216
+ .fr-btn--icon-right[class*=" fr-fi-"]::after {
217
+ content: "";
218
+
219
+ --icon-size: 1rem;
220
+ margin-right: -0.125rem;
221
+ margin-left: 0.5rem;
222
+ }
223
+
224
+ .fr-btn--icon-right[class^=fr-icon-]::before,
225
+ .fr-btn--icon-right[class*=" fr-icon-"]::before,
226
+ .fr-btn--icon-right[class^=fr-fi-]::before,
227
+ .fr-btn--icon-right[class*=" fr-fi-"]::before {
228
+ content: none;
229
+ }
230
+
231
+ .fr-btn--align-on-content.fr-btn--icon-right[class^=fr-icon-],
232
+ .fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-icon-"],
233
+ .fr-btn--align-on-content.fr-btn--icon-right[class^=fr-fi-],
234
+ .fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-fi-"] {
235
+ margin-left: -1rem;
236
+ margin-right: -0.875rem;
237
+ }
238
+
239
+ .fr-btn--sm {
240
+ font-size: 0.875rem;
241
+ line-height: 1.5rem;
242
+ min-height: 2rem;
243
+ padding: 0.25rem 0.75rem;
244
+ }
245
+
246
+ .fr-btn--sm[target=_blank] {
247
+ overflow: initial;
248
+ max-width: 100%;
249
+ max-height: none;
250
+ }
251
+
252
+ .fr-btn--sm[target=_blank]::after {
253
+ content: "";
254
+
255
+ --icon-size: 1rem;
256
+ margin-right: -0.125rem;
257
+ margin-left: 0.5rem;
258
+ }
259
+
260
+ .fr-btn--sm.fr-btn--align-on-content {
261
+ margin-left: -0.75rem;
262
+ margin-right: -0.75rem;
263
+ }
264
+
265
+ .fr-btn--sm[class^=fr-icon-]:not([class*=fr-btn--icon-]),
266
+ .fr-btn--sm[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
267
+ .fr-btn--sm[class^=fr-fi-]:not([class*=fr-btn--icon-]),
268
+ .fr-btn--sm[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
269
+ overflow: hidden;
270
+ white-space: nowrap;
271
+ max-width: 2rem;
272
+ max-height: 2rem;
273
+ padding-left: 0.5rem;
274
+ padding-right: 0.5rem;
275
+ }
276
+
277
+ .fr-btn--sm[class^=fr-icon-]:not([class*=fr-btn--icon-])::before,
278
+ .fr-btn--sm[class*=" fr-icon-"]:not([class*=fr-btn--icon-])::before,
279
+ .fr-btn--sm[class^=fr-fi-]:not([class*=fr-btn--icon-])::before,
280
+ .fr-btn--sm[class*=" fr-fi-"]:not([class*=fr-btn--icon-])::before {
281
+ --icon-size: 1rem;
282
+ margin-left: 0;
283
+ margin-right: 0.5rem;
284
+ }
285
+
286
+ .fr-btn--sm.fr-btn--align-on-content[class^=fr-icon-]:not([class*=fr-btn--icon-]),
287
+ .fr-btn--sm.fr-btn--align-on-content[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
288
+ .fr-btn--sm.fr-btn--align-on-content[class^=fr-fi-]:not([class*=fr-btn--icon-]),
289
+ .fr-btn--sm.fr-btn--align-on-content[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
290
+ margin-left: -0.5rem;
291
+ margin-right: -0.5rem;
292
+ }
293
+
294
+ .fr-btn--sm.fr-btn--icon-left[class^=fr-icon-],
295
+ .fr-btn--sm.fr-btn--icon-left[class*=" fr-icon-"],
296
+ .fr-btn--sm.fr-btn--icon-left[class^=fr-fi-],
297
+ .fr-btn--sm.fr-btn--icon-left[class*=" fr-fi-"] {
298
+ overflow: initial;
299
+ max-width: 100%;
300
+ max-height: none;
301
+ }
302
+
303
+ .fr-btn--sm.fr-btn--icon-left[class^=fr-icon-]::before,
304
+ .fr-btn--sm.fr-btn--icon-left[class*=" fr-icon-"]::before,
305
+ .fr-btn--sm.fr-btn--icon-left[class^=fr-fi-]::before,
306
+ .fr-btn--sm.fr-btn--icon-left[class*=" fr-fi-"]::before {
307
+ --icon-size: 1rem;
308
+ margin-left: -0.125rem;
309
+ margin-right: 0.5rem;
310
+ }
311
+
312
+ .fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-icon-],
313
+ .fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-icon-"],
314
+ .fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-fi-],
315
+ .fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-fi-"] {
316
+ margin-left: -0.625rem;
317
+ margin-right: -0.75rem;
318
+ }
319
+
320
+ .fr-btn--sm.fr-btn--icon-right[class^=fr-icon-],
321
+ .fr-btn--sm.fr-btn--icon-right[class*=" fr-icon-"],
322
+ .fr-btn--sm.fr-btn--icon-right[class^=fr-fi-],
323
+ .fr-btn--sm.fr-btn--icon-right[class*=" fr-fi-"] {
324
+ overflow: initial;
325
+ max-width: 100%;
326
+ max-height: none;
327
+ }
328
+
329
+ .fr-btn--sm.fr-btn--icon-right[class^=fr-icon-]::after,
330
+ .fr-btn--sm.fr-btn--icon-right[class*=" fr-icon-"]::after,
331
+ .fr-btn--sm.fr-btn--icon-right[class^=fr-fi-]::after,
332
+ .fr-btn--sm.fr-btn--icon-right[class*=" fr-fi-"]::after {
333
+ content: "";
334
+
335
+ --icon-size: 1rem;
336
+ margin-right: -0.125rem;
337
+ margin-left: 0.5rem;
338
+ }
339
+
340
+ .fr-btn--sm.fr-btn--icon-right[class^=fr-icon-]::before,
341
+ .fr-btn--sm.fr-btn--icon-right[class*=" fr-icon-"]::before,
342
+ .fr-btn--sm.fr-btn--icon-right[class^=fr-fi-]::before,
343
+ .fr-btn--sm.fr-btn--icon-right[class*=" fr-fi-"]::before {
344
+ content: none;
345
+ }
346
+
347
+ .fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-icon-],
348
+ .fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-icon-"],
349
+ .fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-fi-],
350
+ .fr-btn--sm.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-fi-"] {
351
+ margin-left: -0.75rem;
352
+ margin-right: -0.625rem;
353
+ }
354
+
355
+ .fr-btn--lg {
356
+ font-size: 1.125rem;
357
+ line-height: 1.75rem;
358
+ min-height: 3rem;
359
+ padding: 0.5rem 1.5rem;
360
+ }
361
+
362
+ .fr-btn--lg[target=_blank] {
363
+ overflow: initial;
364
+ max-width: 100%;
365
+ max-height: none;
366
+ }
367
+
368
+ .fr-btn--lg[target=_blank]::after {
369
+ content: "";
370
+
371
+ --icon-size: 1.5rem;
372
+ margin-right: -0.1875rem;
373
+ margin-left: 0.5rem;
374
+ }
375
+
376
+ .fr-btn--lg.fr-btn--align-on-content {
377
+ margin-left: -1.5rem;
378
+ margin-right: -1.5rem;
379
+ }
380
+
381
+ .fr-btn--lg[class^=fr-icon-]:not([class*=fr-btn--icon-]),
382
+ .fr-btn--lg[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
383
+ .fr-btn--lg[class^=fr-fi-]:not([class*=fr-btn--icon-]),
384
+ .fr-btn--lg[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
385
+ overflow: hidden;
386
+ white-space: nowrap;
387
+ max-width: 3rem;
388
+ max-height: 3rem;
389
+ padding-left: 0.5rem;
390
+ padding-right: 0.5rem;
391
+ }
392
+
393
+ .fr-btn--lg[class^=fr-icon-]:not([class*=fr-btn--icon-])::before,
394
+ .fr-btn--lg[class*=" fr-icon-"]:not([class*=fr-btn--icon-])::before,
395
+ .fr-btn--lg[class^=fr-fi-]:not([class*=fr-btn--icon-])::before,
396
+ .fr-btn--lg[class*=" fr-fi-"]:not([class*=fr-btn--icon-])::before {
397
+ --icon-size: 2rem;
398
+ margin-left: 0;
399
+ margin-right: 0.5rem;
400
+ }
401
+
402
+ .fr-btn--lg.fr-btn--align-on-content[class^=fr-icon-]:not([class*=fr-btn--icon-]),
403
+ .fr-btn--lg.fr-btn--align-on-content[class*=" fr-icon-"]:not([class*=fr-btn--icon-]),
404
+ .fr-btn--lg.fr-btn--align-on-content[class^=fr-fi-]:not([class*=fr-btn--icon-]),
405
+ .fr-btn--lg.fr-btn--align-on-content[class*=" fr-fi-"]:not([class*=fr-btn--icon-]) {
406
+ margin-left: -0.5rem;
407
+ margin-right: -0.5rem;
408
+ }
409
+
410
+ .fr-btn--lg.fr-btn--icon-left[class^=fr-icon-],
411
+ .fr-btn--lg.fr-btn--icon-left[class*=" fr-icon-"],
412
+ .fr-btn--lg.fr-btn--icon-left[class^=fr-fi-],
413
+ .fr-btn--lg.fr-btn--icon-left[class*=" fr-fi-"] {
414
+ overflow: initial;
415
+ max-width: 100%;
416
+ max-height: none;
417
+ }
418
+
419
+ .fr-btn--lg.fr-btn--icon-left[class^=fr-icon-]::before,
420
+ .fr-btn--lg.fr-btn--icon-left[class*=" fr-icon-"]::before,
421
+ .fr-btn--lg.fr-btn--icon-left[class^=fr-fi-]::before,
422
+ .fr-btn--lg.fr-btn--icon-left[class*=" fr-fi-"]::before {
423
+ --icon-size: 1.5rem;
424
+ margin-left: -0.1875rem;
425
+ margin-right: 0.5rem;
426
+ }
427
+
428
+ .fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-icon-],
429
+ .fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-icon-"],
430
+ .fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-left[class^=fr-fi-],
431
+ .fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-left[class*=" fr-fi-"] {
432
+ margin-left: -1.3125rem;
433
+ margin-right: -1.5rem;
434
+ }
435
+
436
+ .fr-btn--lg.fr-btn--icon-right[class^=fr-icon-],
437
+ .fr-btn--lg.fr-btn--icon-right[class*=" fr-icon-"],
438
+ .fr-btn--lg.fr-btn--icon-right[class^=fr-fi-],
439
+ .fr-btn--lg.fr-btn--icon-right[class*=" fr-fi-"] {
440
+ overflow: initial;
441
+ max-width: 100%;
442
+ max-height: none;
443
+ }
444
+
445
+ .fr-btn--lg.fr-btn--icon-right[class^=fr-icon-]::after,
446
+ .fr-btn--lg.fr-btn--icon-right[class*=" fr-icon-"]::after,
447
+ .fr-btn--lg.fr-btn--icon-right[class^=fr-fi-]::after,
448
+ .fr-btn--lg.fr-btn--icon-right[class*=" fr-fi-"]::after {
449
+ content: "";
450
+
451
+ --icon-size: 1.5rem;
452
+ margin-right: -0.1875rem;
453
+ margin-left: 0.5rem;
454
+ }
455
+
456
+ .fr-btn--lg.fr-btn--icon-right[class^=fr-icon-]::before,
457
+ .fr-btn--lg.fr-btn--icon-right[class*=" fr-icon-"]::before,
458
+ .fr-btn--lg.fr-btn--icon-right[class^=fr-fi-]::before,
459
+ .fr-btn--lg.fr-btn--icon-right[class*=" fr-fi-"]::before {
460
+ content: none;
461
+ }
462
+
463
+ .fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-icon-],
464
+ .fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-icon-"],
465
+ .fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-right[class^=fr-fi-],
466
+ .fr-btn--lg.fr-btn--align-on-content.fr-btn--icon-right[class*=" fr-fi-"] {
467
+ margin-left: -1.5rem;
468
+ margin-right: -1.3125rem;
469
+ }
470
+
471
+ .fr-btns-group {
472
+ --ul-type: none;
473
+ --ol-type: none;
474
+ --ul-start: 0;
475
+ --ol-start: 0;
476
+ --xl-block: 0;
477
+ --li-bottom: 0;
478
+ --ol-content: none;
479
+ display: flex;
480
+ align-items: stretch;
481
+ flex-wrap: wrap;
482
+ margin-left: -0.5rem;
483
+ margin-right: -0.5rem;
484
+
485
+ /**
486
+ * fr-btns-group--inline : aligne les boutons horizontalement dans tout les cas
487
+ * fr-btns-group--inline-(sm/md/lg) : permet de passer en horizontal à partir de la valeur du breakpoint appliqué (sm, md, lg)
488
+ */
489
+ /**
490
+ * fr-btns-group--left : (Défaut) aligne les boutons sur la gauche (en lecture L-t-R)
491
+ */
492
+ /**
493
+ * fr-btns-group--right : aligne les boutons sur la droite
494
+ */
495
+ /**
496
+ * fr-btns-group--center : aligne les boutons au centre du conteneur
497
+ */
498
+ /**
499
+ * fr-btns-group--center : aligne les boutons au centre du conteneur
500
+ */
501
+ /**
502
+ * fr-btns-group--equisized : Fixe la largeur des boutons à celle du plus grand. Géré en grande partie en JS.
503
+ */
504
+ /**
505
+ * fr-btns-group--sm : Fixe les boutons à la taille SM
506
+ */
507
+ /**
508
+ * fr-btns-group--md : (défaut) Fixe les boutons à la taille MD
509
+ */
510
+ /**
511
+ * fr-btns-group--lg : Fixe les boutons à la taille LG (sans modfifieur => MD)
512
+ */
513
+ }
514
+
515
+ .fr-btns-group > li,
516
+ .fr-btns-group > div {
517
+ width: 100%;
518
+ max-width: 100%;
519
+ }
520
+
521
+ .fr-btns-group .fr-btn {
522
+ width: calc(100% - 1rem);
523
+ margin: 0 0.5rem 1rem;
524
+ justify-content: center;
525
+ }
526
+
527
+ .fr-btns-group--inline .fr-btn {
528
+ width: auto;
529
+ max-width: 100%;
530
+ margin-left: 0.5rem;
531
+ margin-right: 0.5rem;
532
+ }
533
+
534
+ .fr-btns-group--inline > li {
535
+ display: inline-flex;
536
+ max-width: 100%;
537
+ width: auto;
538
+ }
539
+
540
+ .fr-btns-group--inline.fr-btns-group--right.fr-btns-group--inline-reverse {
541
+ flex-direction: row-reverse;
542
+ justify-content: flex-start;
543
+ }
544
+
545
+ .fr-btns-group--left,
546
+ .fr-btns-group--left li {
547
+ justify-content: flex-start;
548
+ text-align: left;
549
+ }
550
+
551
+ .fr-btns-group--right,
552
+ .fr-btns-group--right li {
553
+ justify-content: flex-end;
554
+ text-align: right;
555
+ }
556
+
557
+ .fr-btns-group--center,
558
+ .fr-btns-group--center li {
559
+ justify-content: center;
560
+ text-align: center;
561
+ }
562
+
563
+ .fr-btns-group--between,
564
+ .fr-btns-group--between li {
565
+ justify-content: space-between;
566
+ text-align: center;
567
+ }
568
+
569
+ .fr-btns-group--equisized {
570
+ --equisized-width: auto;
571
+ }
572
+
573
+ .fr-btns-group--equisized .fr-btn {
574
+ justify-content: center;
575
+ width: var(--equisized-width);
576
+ }
577
+
578
+ .fr-btns-group--sm .fr-btn:not([class^=fr-icon-]):not([class*=" fr-icon-"]):not([class^=fr-fi-]):not([class*=" fr-fi-"]) {
579
+ font-size: 0.875rem;
580
+ line-height: 1.5rem;
581
+ min-height: 2rem;
582
+ padding: 0.25rem 0.75rem;
583
+ }
584
+
585
+ .fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-icon-],
586
+ .fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-icon-"],
587
+ .fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-fi-],
588
+ .fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-fi-"] {
589
+ font-size: 0.875rem;
590
+ line-height: 1.5rem;
591
+ min-height: 2rem;
592
+ padding: 0.25rem 0.75rem;
593
+ overflow: hidden;
594
+ white-space: nowrap;
595
+ max-width: 2rem;
596
+ max-height: 2rem;
597
+ padding-left: 0.5rem;
598
+ padding-right: 0.5rem;
599
+ justify-content: flex-start;
600
+ }
601
+
602
+ .fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-icon-]::before,
603
+ .fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-icon-"]::before,
604
+ .fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-fi-]::before,
605
+ .fr-btns-group--sm:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-fi-"]::before {
606
+ --icon-size: 1rem;
607
+ margin-left: 0;
608
+ margin-right: 0.5rem;
609
+ }
610
+
611
+ .fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class^=fr-icon-],
612
+ .fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class*=" fr-icon-"],
613
+ .fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class^=fr-fi-],
614
+ .fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class*=" fr-fi-"] {
615
+ font-size: 0.875rem;
616
+ line-height: 1.5rem;
617
+ min-height: 2rem;
618
+ padding: 0.25rem 0.75rem;
619
+ overflow: initial;
620
+ max-width: 100%;
621
+ max-height: none;
622
+ }
623
+
624
+ .fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class^=fr-icon-]::before,
625
+ .fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class*=" fr-icon-"]::before,
626
+ .fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class^=fr-fi-]::before,
627
+ .fr-btns-group--sm.fr-btns-group--icon-left .fr-btn[class*=" fr-fi-"]::before {
628
+ --icon-size: 1rem;
629
+ margin-left: -0.125rem;
630
+ margin-right: 0.5rem;
631
+ }
632
+
633
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class^=fr-icon-],
634
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"],
635
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class^=fr-fi-],
636
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"] {
637
+ font-size: 0.875rem;
638
+ line-height: 1.5rem;
639
+ min-height: 2rem;
640
+ padding: 0.25rem 0.75rem;
641
+ overflow: initial;
642
+ max-width: 100%;
643
+ max-height: none;
644
+ }
645
+
646
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class^=fr-icon-]::after,
647
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"]::after,
648
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class^=fr-fi-]::after,
649
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"]::after {
650
+ content: "";
651
+
652
+ --icon-size: 1rem;
653
+ margin-right: -0.125rem;
654
+ margin-left: 0.5rem;
655
+ }
656
+
657
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class^=fr-icon-]::before,
658
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"]::before,
659
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class^=fr-fi-]::before,
660
+ .fr-btns-group--sm.fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"]::before {
661
+ content: none;
662
+ }
663
+
664
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg) .fr-btn:not([class^=fr-icon-]):not([class*=" fr-icon-"]):not([class^=fr-fi-]):not([class*=" fr-fi-"]) {
665
+ font-size: 1rem;
666
+ line-height: 1.5rem;
667
+ min-height: 2.5rem;
668
+ padding: 0.5rem 1rem;
669
+ }
670
+
671
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg):not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-icon-],
672
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg):not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-icon-"],
673
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg):not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-fi-],
674
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg):not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-fi-"] {
675
+ font-size: 1rem;
676
+ line-height: 1.5rem;
677
+ min-height: 2.5rem;
678
+ padding: 0.5rem 1rem;
679
+ overflow: hidden;
680
+ white-space: nowrap;
681
+ max-width: 2.5rem;
682
+ max-height: 2.5rem;
683
+ padding-left: 0.5rem;
684
+ padding-right: 0.5rem;
685
+ justify-content: flex-start;
686
+ }
687
+
688
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg):not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-icon-]::before,
689
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg):not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-icon-"]::before,
690
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg):not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-fi-]::before,
691
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg):not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-fi-"]::before {
692
+ --icon-size: 1.5rem;
693
+ margin-left: 0;
694
+ margin-right: 0.5rem;
695
+ }
696
+
697
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-left .fr-btn[class^=fr-icon-],
698
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-left .fr-btn[class*=" fr-icon-"],
699
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-left .fr-btn[class^=fr-fi-],
700
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-left .fr-btn[class*=" fr-fi-"] {
701
+ font-size: 1rem;
702
+ line-height: 1.5rem;
703
+ min-height: 2.5rem;
704
+ padding: 0.5rem 1rem;
705
+ overflow: initial;
706
+ max-width: 100%;
707
+ max-height: none;
708
+ }
709
+
710
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-left .fr-btn[class^=fr-icon-]::before,
711
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-left .fr-btn[class*=" fr-icon-"]::before,
712
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-left .fr-btn[class^=fr-fi-]::before,
713
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-left .fr-btn[class*=" fr-fi-"]::before {
714
+ --icon-size: 1rem;
715
+ margin-left: -0.125rem;
716
+ margin-right: 0.5rem;
717
+ }
718
+
719
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class^=fr-icon-],
720
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"],
721
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class^=fr-fi-],
722
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"] {
723
+ font-size: 1rem;
724
+ line-height: 1.5rem;
725
+ min-height: 2.5rem;
726
+ padding: 0.5rem 1rem;
727
+ overflow: initial;
728
+ max-width: 100%;
729
+ max-height: none;
730
+ }
731
+
732
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class^=fr-icon-]::after,
733
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"]::after,
734
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class^=fr-fi-]::after,
735
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"]::after {
736
+ content: "";
737
+
738
+ --icon-size: 1rem;
739
+ margin-right: -0.125rem;
740
+ margin-left: 0.5rem;
741
+ }
742
+
743
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class^=fr-icon-]::before,
744
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"]::before,
745
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class^=fr-fi-]::before,
746
+ .fr-btns-group:not(.fr-btns-group--sm):not(.fr-btns-group--lg).fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"]::before {
747
+ content: none;
748
+ }
749
+
750
+ .fr-btns-group--lg .fr-btn:not([class^=fr-icon-]):not([class*=" fr-icon-"]):not([class^=fr-fi-]):not([class*=" fr-fi-"]) {
751
+ font-size: 1.125rem;
752
+ line-height: 1.75rem;
753
+ min-height: 3rem;
754
+ padding: 0.5rem 1.5rem;
755
+ }
756
+
757
+ .fr-btns-group--lg:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-icon-],
758
+ .fr-btns-group--lg:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-icon-"],
759
+ .fr-btns-group--lg:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-fi-],
760
+ .fr-btns-group--lg:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-fi-"] {
761
+ font-size: 1.125rem;
762
+ line-height: 1.75rem;
763
+ min-height: 3rem;
764
+ padding: 0.5rem 1.5rem;
765
+ overflow: hidden;
766
+ white-space: nowrap;
767
+ max-width: 3rem;
768
+ max-height: 3rem;
769
+ padding-left: 0.5rem;
770
+ padding-right: 0.5rem;
771
+ justify-content: flex-start;
772
+ }
773
+
774
+ .fr-btns-group--lg:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-icon-]::before,
775
+ .fr-btns-group--lg:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-icon-"]::before,
776
+ .fr-btns-group--lg:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class^=fr-fi-]::before,
777
+ .fr-btns-group--lg:not([class^=fr-btns-group--icon-]):not([class*=" fr-btns-group--icon-"]) .fr-btn[class*=" fr-fi-"]::before {
778
+ --icon-size: 2rem;
779
+ margin-left: 0;
780
+ margin-right: 0.5rem;
781
+ }
782
+
783
+ .fr-btns-group--lg.fr-btns-group--icon-left .fr-btn[class^=fr-icon-],
784
+ .fr-btns-group--lg.fr-btns-group--icon-left .fr-btn[class*=" fr-icon-"],
785
+ .fr-btns-group--lg.fr-btns-group--icon-left .fr-btn[class^=fr-fi-],
786
+ .fr-btns-group--lg.fr-btns-group--icon-left .fr-btn[class*=" fr-fi-"] {
787
+ font-size: 1.125rem;
788
+ line-height: 1.75rem;
789
+ min-height: 3rem;
790
+ padding: 0.5rem 1.5rem;
791
+ overflow: initial;
792
+ max-width: 100%;
793
+ max-height: none;
794
+ }
795
+
796
+ .fr-btns-group--lg.fr-btns-group--icon-left .fr-btn[class^=fr-icon-]::before,
797
+ .fr-btns-group--lg.fr-btns-group--icon-left .fr-btn[class*=" fr-icon-"]::before,
798
+ .fr-btns-group--lg.fr-btns-group--icon-left .fr-btn[class^=fr-fi-]::before,
799
+ .fr-btns-group--lg.fr-btns-group--icon-left .fr-btn[class*=" fr-fi-"]::before {
800
+ --icon-size: 1.5rem;
801
+ margin-left: -0.1875rem;
802
+ margin-right: 0.5rem;
803
+ }
804
+
805
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class^=fr-icon-],
806
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"],
807
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class^=fr-fi-],
808
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"] {
809
+ font-size: 1.125rem;
810
+ line-height: 1.75rem;
811
+ min-height: 3rem;
812
+ padding: 0.5rem 1.5rem;
813
+ overflow: initial;
814
+ max-width: 100%;
815
+ max-height: none;
816
+ }
817
+
818
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class^=fr-icon-]::after,
819
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"]::after,
820
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class^=fr-fi-]::after,
821
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"]::after {
822
+ content: "";
823
+
824
+ --icon-size: 1.5rem;
825
+ margin-right: -0.1875rem;
826
+ margin-left: 0.5rem;
827
+ }
828
+
829
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class^=fr-icon-]::before,
830
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class*=" fr-icon-"]::before,
831
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class^=fr-fi-]::before,
832
+ .fr-btns-group--lg.fr-btns-group--icon-right .fr-btn[class*=" fr-fi-"]::before {
833
+ content: none;
834
+ }
835
+
836
+ .fr-fieldset__element > .fr-btns-group {
837
+ margin-bottom: -1rem;
838
+ }
839
+
840
+ .fr-btn--close {
841
+ font-size: 0.875rem;
842
+ line-height: 1.5rem;
843
+ min-height: 2rem;
844
+ padding: 0.25rem 0.75rem;
845
+ overflow: initial;
846
+ max-width: 100%;
847
+ max-height: none;
848
+ display: flex;
849
+ margin-left: auto;
850
+ }
851
+
852
+ .fr-btn--close::after {
853
+
854
+ --icon-size: 1rem;
855
+ margin-right: -0.125rem;
856
+ margin-left: 0.5rem;
857
+ flex: 0 0 auto;
858
+ display: inline-block;
859
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
860
+ background-color: currentColor;
861
+ width: var(--icon-size);
862
+ height: var(--icon-size);
863
+ -webkit-mask-size: 100% 100%;
864
+ mask-size: 100% 100%;
865
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/close-line.svg");
866
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/close-line.svg");
867
+ content: "";
868
+ }
869
+
870
+ .fr-btn--close::before {
871
+ content: none;
872
+ }
873
+
874
+ .fr-btn--tooltip {
875
+ font-size: 0.875rem;
876
+ line-height: 1.5rem;
877
+ min-height: 2rem;
878
+ padding: 0.25rem 0.75rem;
879
+ overflow: hidden;
880
+ white-space: nowrap;
881
+ max-width: 2rem;
882
+ max-height: 2rem;
883
+ padding-left: 0.5rem;
884
+ padding-right: 0.5rem;
885
+ }
886
+
887
+ .fr-btn--tooltip::before {
888
+ --icon-size: 1rem;
889
+ margin-left: 0;
890
+ margin-right: 0.5rem;
891
+ flex: 0 0 auto;
892
+ display: inline-block;
893
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
894
+ background-color: currentColor;
895
+ width: var(--icon-size);
896
+ height: var(--icon-size);
897
+ -webkit-mask-size: 100% 100%;
898
+ mask-size: 100% 100%;
899
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/question-line.svg");
900
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/question-line.svg");
901
+ content: "";
902
+ }
903
+
904
+ .fr-btn--fullscreen {
905
+ font-size: 0.875rem;
906
+ line-height: 1.5rem;
907
+ min-height: 2rem;
908
+ padding: 0.25rem 0.75rem;
909
+ overflow: initial;
910
+ max-width: 100%;
911
+ max-height: none;
912
+ }
913
+
914
+ .fr-btn--fullscreen::after {
915
+
916
+ --icon-size: 1rem;
917
+ margin-right: -0.125rem;
918
+ margin-left: 0.5rem;
919
+ flex: 0 0 auto;
920
+ display: inline-block;
921
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
922
+ background-color: currentColor;
923
+ width: var(--icon-size);
924
+ height: var(--icon-size);
925
+ -webkit-mask-size: 100% 100%;
926
+ mask-size: 100% 100%;
927
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/media/fullscreen-line.svg");
928
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/media/fullscreen-line.svg");
929
+ content: "";
930
+ }
931
+
932
+ .fr-btn--fullscreen::before {
933
+ content: none;
934
+ }
935
+
936
+ .fr-btn--display {
937
+ font-size: 1rem;
938
+ line-height: 1.5rem;
939
+ min-height: 2.5rem;
940
+ padding: 0.5rem 1rem;
941
+ overflow: initial;
942
+ max-width: 100%;
943
+ max-height: none;
944
+ }
945
+
946
+ .fr-btn--display::before {
947
+ --icon-size: 1rem;
948
+ margin-left: -0.125rem;
949
+ margin-right: 0.5rem;
950
+ flex: 0 0 auto;
951
+ display: inline-block;
952
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
953
+ background-color: currentColor;
954
+ width: var(--icon-size);
955
+ height: var(--icon-size);
956
+ -webkit-mask-size: 100% 100%;
957
+ mask-size: 100% 100%;
958
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/fr--theme-fill.svg");
959
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/fr--theme-fill.svg");
960
+ content: "";
961
+ }
962
+
963
+ .fr-btn--account {
964
+ font-size: 0.875rem;
965
+ line-height: 1.5rem;
966
+ min-height: 2rem;
967
+ padding: 0.25rem 0.75rem;
968
+ overflow: initial;
969
+ max-width: 100%;
970
+ max-height: none;
971
+ }
972
+
973
+ .fr-btn--account::before {
974
+ --icon-size: 1rem;
975
+ margin-left: -0.125rem;
976
+ margin-right: 0.5rem;
977
+ flex: 0 0 auto;
978
+ display: inline-block;
979
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
980
+ background-color: currentColor;
981
+ width: var(--icon-size);
982
+ height: var(--icon-size);
983
+ -webkit-mask-size: 100% 100%;
984
+ mask-size: 100% 100%;
985
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/user/account-circle-fill.svg");
986
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/user/account-circle-fill.svg");
987
+ content: "";
988
+ }
989
+
990
+ .fr-btn--team {
991
+ font-size: 0.875rem;
992
+ line-height: 1.5rem;
993
+ min-height: 2rem;
994
+ padding: 0.25rem 0.75rem;
995
+ overflow: initial;
996
+ max-width: 100%;
997
+ max-height: none;
998
+ }
999
+
1000
+ .fr-btn--team::before {
1001
+ --icon-size: 1rem;
1002
+ margin-left: -0.125rem;
1003
+ margin-right: 0.5rem;
1004
+ flex: 0 0 auto;
1005
+ display: inline-block;
1006
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
1007
+ background-color: currentColor;
1008
+ width: var(--icon-size);
1009
+ height: var(--icon-size);
1010
+ -webkit-mask-size: 100% 100%;
1011
+ mask-size: 100% 100%;
1012
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/user/team-line.svg");
1013
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/user/team-line.svg");
1014
+ content: "";
1015
+ }
1016
+
1017
+ .fr-btn--briefcase {
1018
+ font-size: 0.875rem;
1019
+ line-height: 1.5rem;
1020
+ min-height: 2rem;
1021
+ padding: 0.25rem 0.75rem;
1022
+ overflow: initial;
1023
+ max-width: 100%;
1024
+ max-height: none;
1025
+ }
1026
+
1027
+ .fr-btn--briefcase::before {
1028
+ --icon-size: 1rem;
1029
+ margin-left: -0.125rem;
1030
+ margin-right: 0.5rem;
1031
+ flex: 0 0 auto;
1032
+ display: inline-block;
1033
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
1034
+ background-color: currentColor;
1035
+ width: var(--icon-size);
1036
+ height: var(--icon-size);
1037
+ -webkit-mask-size: 100% 100%;
1038
+ mask-size: 100% 100%;
1039
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/business/briefcase-fill.svg");
1040
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/business/briefcase-fill.svg");
1041
+ content: "";
1042
+ }
1043
+
1044
+ .fr-btn--sort {
1045
+ font-size: 0.875rem;
1046
+ line-height: 1.5rem;
1047
+ min-height: 2rem;
1048
+ padding: 0.25rem 0.75rem;
1049
+ overflow: hidden;
1050
+ white-space: nowrap;
1051
+ max-width: 2rem;
1052
+ max-height: 2rem;
1053
+ padding-left: 0.5rem;
1054
+ padding-right: 0.5rem;
1055
+ }
1056
+
1057
+ .fr-btn--sort::before {
1058
+ --icon-size: 1rem;
1059
+ margin-left: 0;
1060
+ margin-right: 0.5rem;
1061
+ flex: 0 0 auto;
1062
+ display: inline-block;
1063
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
1064
+ background-color: currentColor;
1065
+ width: var(--icon-size);
1066
+ height: var(--icon-size);
1067
+ -webkit-mask-size: 100% 100%;
1068
+ mask-size: 100% 100%;
1069
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/arrows/arrow-up-down-line.svg");
1070
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/arrows/arrow-up-down-line.svg");
1071
+ content: "";
1072
+ }
1073
+
1074
+ .fr-btn--sort[aria-sort=ascending],
1075
+ .fr-btn--sort[aria-sort=descending],
1076
+ .fr-btn--sort-asc,
1077
+ .fr-btn--sort-desc {
1078
+ font-size: 0.875rem;
1079
+ line-height: 1.5rem;
1080
+ min-height: 2rem;
1081
+ padding: 0.25rem 0.75rem;
1082
+ overflow: hidden;
1083
+ white-space: nowrap;
1084
+ max-width: 2rem;
1085
+ max-height: 2rem;
1086
+ padding-left: 0.5rem;
1087
+ padding-right: 0.5rem;
1088
+ }
1089
+
1090
+ .fr-btn--sort[aria-sort=ascending]::before,
1091
+ .fr-btn--sort[aria-sort=descending]::before,
1092
+ .fr-btn--sort-asc::before,
1093
+ .fr-btn--sort-desc::before {
1094
+ --icon-size: 1rem;
1095
+ margin-left: 0;
1096
+ margin-right: 0.5rem;
1097
+ flex: 0 0 auto;
1098
+ display: inline-block;
1099
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
1100
+ background-color: currentColor;
1101
+ width: var(--icon-size);
1102
+ height: var(--icon-size);
1103
+ -webkit-mask-size: 100% 100%;
1104
+ mask-size: 100% 100%;
1105
+ -webkit-mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/arrows/arrow-up-line.svg");
1106
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/arrows/arrow-up-line.svg");
1107
+ content: "";
1108
+ transition: transform 0.3s;
1109
+ transform: rotate(0deg);
1110
+ }
1111
+
1112
+ .fr-btn--sort[aria-sort=descending]::before,
1113
+ .fr-btn--sort-desc::before {
1114
+ transition: transform 0.3s;
1115
+ transform: rotate(-180deg);
1116
+ }
1117
+
1118
+ .fr-btn:disabled,
1119
+ a.fr-btn:not([href]) {
1120
+ color: var(--text-disabled-grey);
1121
+ background-color: var(--background-disabled-grey);
1122
+
1123
+ --idle: transparent;
1124
+ --hover: var(--background-disabled-grey-hover);
1125
+ --active: var(--background-disabled-grey-active);
1126
+ }
1127
+
1128
+ .fr-btn--secondary {
1129
+ background-color: transparent;
1130
+
1131
+ --hover: inherit;
1132
+ --active: inherit;
1133
+ color: var(--text-action-high-blue-france);
1134
+ box-shadow: inset 0 0 0 1px var(--border-action-high-blue-france);
1135
+ }
1136
+
1137
+ .fr-btn--secondary:disabled,
1138
+ a.fr-btn--secondary:not([href]) {
1139
+ color: var(--text-disabled-grey);
1140
+ box-shadow: inset 0 0 0 1px var(--border-disabled-grey);
1141
+ background-color: transparent;
1142
+
1143
+ --hover: inherit;
1144
+ --active: inherit;
1145
+ }
1146
+
1147
+ .fr-btn--tertiary,
1148
+ .fr-btn--sort,
1149
+ .fr-btn--sort-asc,
1150
+ .fr-btn--sort-desc,
1151
+ .fr-btn--account {
1152
+ background-color: transparent;
1153
+
1154
+ --hover: inherit;
1155
+ --active: inherit;
1156
+ color: var(--text-action-high-blue-france);
1157
+ box-shadow: inset 0 0 0 1px var(--border-default-grey);
1158
+ }
1159
+
1160
+ .fr-btn--tertiary:disabled,
1161
+ a.fr-btn--tertiary:not([href]),
1162
+ a.fr-btn--sort:not([href]),
1163
+ a.fr-btn--sort-asc:not([href]),
1164
+ a.fr-btn--sort-desc:not([href]),
1165
+ a.fr-btn--account:not([href]),
1166
+ .fr-btn--sort:disabled,
1167
+ .fr-btn--sort-asc:disabled,
1168
+ .fr-btn--sort-desc:disabled,
1169
+ .fr-btn--account:disabled {
1170
+ color: var(--text-disabled-grey);
1171
+ box-shadow: inset 0 0 0 1px var(--border-disabled-grey);
1172
+ background-color: transparent;
1173
+
1174
+ --hover: inherit;
1175
+ --active: inherit;
1176
+ }
1177
+
1178
+ .fr-btn--tertiary-no-outline,
1179
+ .fr-btn--close,
1180
+ .fr-btn--display,
1181
+ .fr-btn--fullscreen,
1182
+ .fr-btn--tooltip,
1183
+ .fr-btn--briefcase,
1184
+ .fr-btn--team {
1185
+ background-color: transparent;
1186
+
1187
+ --hover: inherit;
1188
+ --active: inherit;
1189
+ color: var(--text-action-high-blue-france);
1190
+ }
1191
+
1192
+ .fr-btn--tertiary-no-outline:disabled,
1193
+ a.fr-btn--tertiary-no-outline:not([href]),
1194
+ a.fr-btn--close:not([href]),
1195
+ a.fr-btn--display:not([href]),
1196
+ a.fr-btn--fullscreen:not([href]),
1197
+ a.fr-btn--tooltip:not([href]),
1198
+ a.fr-btn--briefcase:not([href]),
1199
+ a.fr-btn--team:not([href]),
1200
+ .fr-btn--close:disabled,
1201
+ .fr-btn--display:disabled,
1202
+ .fr-btn--fullscreen:disabled,
1203
+ .fr-btn--tooltip:disabled,
1204
+ .fr-btn--briefcase:disabled,
1205
+ .fr-btn--team:disabled {
1206
+ color: var(--text-disabled-grey);
1207
+ background-color: transparent;
1208
+
1209
+ --hover: inherit;
1210
+ --active: inherit;
1211
+ }
1212
+ @media (min-width: 36em) {
1213
+ /*! media sm */
1214
+ .fr-btns-group--inline-sm .fr-btn {
1215
+ width: auto;
1216
+ max-width: 100%;
1217
+ margin-left: 0.5rem;
1218
+ margin-right: 0.5rem;
1219
+ }
1220
+
1221
+ .fr-btns-group--inline-sm > li {
1222
+ display: inline-flex;
1223
+ max-width: 100%;
1224
+ width: auto;
1225
+ }
1226
+
1227
+ .fr-btns-group--inline-sm.fr-btns-group--right.fr-btns-group--inline-reverse {
1228
+ flex-direction: row-reverse;
1229
+ justify-content: flex-start;
1230
+ }
1231
+ }
1232
+ @media (min-width: 48em) {
1233
+ /*! media md */
1234
+ .fr-btns-group--inline-md .fr-btn {
1235
+ width: auto;
1236
+ max-width: 100%;
1237
+ margin-left: 0.5rem;
1238
+ margin-right: 0.5rem;
1239
+ }
1240
+
1241
+ .fr-btns-group--inline-md > li {
1242
+ display: inline-flex;
1243
+ max-width: 100%;
1244
+ width: auto;
1245
+ }
1246
+
1247
+ .fr-btns-group--inline-md.fr-btns-group--right.fr-btns-group--inline-reverse {
1248
+ flex-direction: row-reverse;
1249
+ justify-content: flex-start;
1250
+ }
1251
+ }
1252
+ @media (min-width: 62em) {
1253
+ /*! media lg */
1254
+ .fr-btns-group--inline-lg .fr-btn {
1255
+ width: auto;
1256
+ max-width: 100%;
1257
+ margin-left: 0.5rem;
1258
+ margin-right: 0.5rem;
1259
+ }
1260
+
1261
+ .fr-btns-group--inline-lg > li {
1262
+ display: inline-flex;
1263
+ max-width: 100%;
1264
+ width: auto;
1265
+ }
1266
+
1267
+ .fr-btns-group--inline-lg.fr-btns-group--right.fr-btns-group--inline-reverse {
1268
+ flex-direction: row-reverse;
1269
+ justify-content: flex-start;
1270
+ }
1271
+ }
1272
+ @media (min-width: 78em) {
1273
+ /*! media xl */
1274
+ }
1275
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1276
+ .fr-btn::before,
1277
+ .fr-btn::after {
1278
+ background-color: buttontext;
1279
+ }
1280
+
1281
+ .fr-btn:disabled::before,
1282
+ .fr-btn:disabled::after,
1283
+ a.fr-btn:not([href])::before,
1284
+ a.fr-btn:not([href])::after {
1285
+ background-color: graytext;
1286
+ }
1287
+
1288
+ .fr-btn:disabled,
1289
+ a.fr-btn:not([href]) {
1290
+ border-color: graytext;
1291
+ color: graytext;
1292
+ }
1293
+
1294
+ a[href].fr-btn::before,
1295
+ a[href].fr-btn::after {
1296
+ background-color: linktext;
1297
+ }
1298
+
1299
+ button.fr-btn {
1300
+ border: 1px solid buttontext;
1301
+ }
1302
+
1303
+ .fr-btn--close::after {
1304
+ forced-color-adjust: none;
1305
+ background-color: buttontext;
1306
+ }
1307
+
1308
+ .fr-btn--tooltip::before {
1309
+ forced-color-adjust: none;
1310
+ background-color: buttontext;
1311
+ }
1312
+
1313
+ .fr-btn--fullscreen::after {
1314
+ forced-color-adjust: none;
1315
+ background-color: buttontext;
1316
+ }
1317
+
1318
+ .fr-btn--display::before {
1319
+ forced-color-adjust: none;
1320
+ background-color: buttontext;
1321
+ }
1322
+
1323
+ .fr-btn--account::before {
1324
+ forced-color-adjust: none;
1325
+ background-color: buttontext;
1326
+ }
1327
+
1328
+ .fr-btn--team::before {
1329
+ forced-color-adjust: none;
1330
+ background-color: buttontext;
1331
+ }
1332
+
1333
+ .fr-btn--briefcase::before {
1334
+ forced-color-adjust: none;
1335
+ background-color: buttontext;
1336
+ }
1337
+
1338
+ .fr-btn--sort::before {
1339
+ forced-color-adjust: none;
1340
+ background-color: buttontext;
1341
+ }
1342
+
1343
+ .fr-btn--sort[aria-sort=ascending]::before,
1344
+ .fr-btn--sort[aria-sort=descending]::before,
1345
+ .fr-btn--sort-asc::before,
1346
+ .fr-btn--sort-desc::before {
1347
+ forced-color-adjust: none;
1348
+ background-color: buttontext;
1349
+ }
1350
+ }
1351
+ a {
1352
+ text-decoration: var(--text-decoration);
1353
+ color: inherit;
1354
+ }
1355
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1356
+ a:not([href]) {
1357
+ color: graytext;
1358
+ }
1359
+ }
1360
+
1361
+ :root {
1362
+ --underline-max-width: 100%;
1363
+ --underline-hover-width: 0;
1364
+ --underline-idle-width: var(--underline-max-width);
1365
+ --underline-x: calc(var(--underline-max-width) * 0);
1366
+ --underline-thickness: 0.0625em;
1367
+ --underline-img: linear-gradient(0deg, currentColor, currentColor);
1368
+ --external-link-content: '';
1369
+ --text-decoration: none;
1370
+ }
1371
+
1372
+ [href] {
1373
+ background-image: var(--underline-img), var(--underline-img);
1374
+ background-position: var(--underline-x) 100%, var(--underline-x) calc(100% - var(--underline-thickness));
1375
+ background-repeat: no-repeat, no-repeat;
1376
+ transition: background-size 0s;
1377
+ background-size: var(--underline-hover-width) calc(var(--underline-thickness) * 2), var(--underline-idle-width) var(--underline-thickness);
1378
+ }
1379
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1380
+ [href], [href]:visited {
1381
+ color: linktext;
1382
+ }
1383
+ }
1384
+
1385
+ [target=_blank]::after {
1386
+ flex: 0 0 auto;
1387
+ display: inline-block;
1388
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
1389
+ background-color: currentColor;
1390
+ width: var(--icon-size);
1391
+ height: var(--icon-size);
1392
+ -webkit-mask-size: 100% 100%;
1393
+ mask-size: 100% 100%;
1394
+ }
1395
+ [target=_blank]::after {
1396
+ --icon-size: 1rem;
1397
+ }
1398
+ [target=_blank]::after {
1399
+ -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");
1400
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/external-link-line.svg");
1401
+ }
1402
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1403
+ [target=_blank]::after {
1404
+ forced-color-adjust: none;
1405
+ background-color: linktext;
1406
+ }
1407
+ }
1408
+ [target=_blank]::after {
1409
+ content: var(--external-link-content);
1410
+ margin-left: 0.25rem;
1411
+ }
1412
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
1413
+ flex: 0 0 auto;
1414
+ display: inline-block;
1415
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
1416
+ background-color: currentColor;
1417
+ width: var(--icon-size);
1418
+ height: var(--icon-size);
1419
+ -webkit-mask-size: 100% 100%;
1420
+ mask-size: 100% 100%;
1421
+ }
1422
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
1423
+ --icon-size: 1rem;
1424
+ }
1425
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
1426
+ -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");
1427
+ mask-image: url("https://lab-anssi-ui-kit-prod-s3-assets.cellar-c2.services.clever-cloud.com/icones/dsfr/system/external-link-line.svg");
1428
+ }
1429
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1430
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
1431
+ forced-color-adjust: none;
1432
+ background-color: linktext;
1433
+ }
1434
+ }
1435
+ [target=_blank][class^=fr-icon-]::after, [target=_blank][class*=" fr-icon-"]::after, [target=_blank][class^=fr-fi-]::after, [target=_blank][class*=" fr-fi-"]::after {
1436
+ content: var(--external-link-content);
1437
+ margin-left: 0.25rem;
1438
+ }
1439
+
1440
+ form[target=_blank]::after {
1441
+ content: none;
1442
+ }
1443
+
1444
+ .fr-raw-link {
1445
+ --text-decoration: none;
1446
+ }
1447
+ .fr-raw-link[href],
1448
+ .fr-raw-link [href] {
1449
+ --underline-img: none;
1450
+ --external-link-content: none;
1451
+ }
1452
+
1453
+ .fr-reset-link {
1454
+ --text-decoration: underline;
1455
+ }
1456
+ .fr-reset-link[href],
1457
+ .fr-reset-link [href] {
1458
+ --underline-img: none;
1459
+ text-underline-offset: 2px;
1460
+ }
1461
+
1462
+ button {
1463
+ -webkit-appearance: none;
1464
+ -moz-appearance: none;
1465
+ appearance: none;
1466
+ border: none;
1467
+ margin: 0;
1468
+ color: inherit;
1469
+ background-color: transparent;
1470
+ font-family: inherit;
1471
+ font-size: inherit;
1472
+ }
1473
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1474
+ button {
1475
+ color: buttontext;
1476
+ }
1477
+ }
1478
+
1479
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1480
+ button:disabled {
1481
+ color: graytext;
1482
+ }
1483
+ }
1484
+
1485
+ input,
1486
+ select,
1487
+ textarea {
1488
+ -webkit-appearance: none;
1489
+ -moz-appearance: none;
1490
+ appearance: none;
1491
+ font-family: "Marianne", arial, sans-serif;
1492
+ text-rendering: optimizeLegibility;
1493
+ -webkit-font-smoothing: antialiased;
1494
+ -moz-osx-font-smoothing: grayscale;
1495
+ -webkit-text-size-adjust: 100%;
1496
+ border-radius: 0;
1497
+ border: 0;
1498
+ background-color: transparent;
1499
+ margin: 0;
1500
+ }
1501
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1502
+ input,
1503
+ select,
1504
+ textarea {
1505
+ border: 1px solid;
1506
+ }
1507
+ }
1508
+
1509
+ input[type=search] {
1510
+ -webkit-appearance: none;
1511
+ -moz-appearance: none;
1512
+ appearance: none;
1513
+ }
1514
+
1515
+ input[type=checkbox],
1516
+ input[type=radio],
1517
+ input[type=range] {
1518
+ -webkit-appearance: auto;
1519
+ -moz-appearance: auto;
1520
+ appearance: auto;
1521
+ }
1522
+
1523
+ input::-webkit-contacts-auto-fill-button,
1524
+ input::-webkit-credentials-auto-fill-button {
1525
+ margin-left: 1rem;
1526
+ margin-right: -1px;
1527
+ width: 1.25rem;
1528
+ height: 1.25rem;
1529
+ -webkit-mask-size: 1.25rem 1.25rem;
1530
+ }
1531
+
1532
+ input[type=range]:focus::-webkit-slider-thumb {
1533
+ outline-offset: 2px;
1534
+ outline-width: 2px;
1535
+ outline-color: #0a76f6;
1536
+ }
1537
+
1538
+ input[type=range]:focus::-moz-range-thumb {
1539
+ outline-offset: 2px;
1540
+ outline-width: 2px;
1541
+ outline-color: #0a76f6;
1542
+ }
1543
+
1544
+ input[type=range]:focus::-ms-thumb {
1545
+ outline-offset: 2px;
1546
+ outline-width: 2px;
1547
+ outline-color: #0a76f6;
1548
+ }
1549
+
1550
+ 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 {
1551
+ outline-offset: 2px;
1552
+ outline-width: 2px;
1553
+ outline-color: #0a76f6;
1554
+ }
1555
+
1556
+ input[type=range]:focus::-webkit-slider-thumb {
1557
+ outline-style: solid;
1558
+ }
1559
+
1560
+ input[type=range]:focus::-moz-range-thumb {
1561
+ outline-style: solid;
1562
+ }
1563
+
1564
+ input[type=range]:focus::-ms-thumb {
1565
+ outline-style: solid;
1566
+ }
1567
+
1568
+ 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 {
1569
+ outline-style: solid;
1570
+ }
1571
+
1572
+ input[type=range]:focus:not(:focus-visible)::-webkit-slider-thumb {
1573
+ outline-style: none;
1574
+ }
1575
+
1576
+ input[type=range]:focus:not(:focus-visible)::-moz-range-thumb {
1577
+ outline-style: none;
1578
+ }
1579
+
1580
+ input[type=range]:focus:not(:focus-visible)::-ms-thumb {
1581
+ outline-style: none;
1582
+ }
1583
+
1584
+ 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) {
1585
+ outline-style: none;
1586
+ }
1587
+
1588
+ input[type=range]:focus-visible::-webkit-slider-thumb {
1589
+ outline-style: solid;
1590
+ }
1591
+
1592
+ input[type=range]:focus-visible::-moz-range-thumb {
1593
+ outline-style: solid;
1594
+ }
1595
+
1596
+ input[type=range]:focus-visible::-ms-thumb {
1597
+ outline-style: solid;
1598
+ }
1599
+
1600
+ 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 {
1601
+ outline-style: solid;
1602
+ }
1603
+
1604
+ @media (hover: hover) and (pointer: fine) {
1605
+ :root {
1606
+ --brighten: -1;
1607
+ }
1608
+ 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 {
1609
+ background-color: var(--hover-tint);
1610
+ }
1611
+ 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 {
1612
+ background-color: var(--active-tint);
1613
+ }
1614
+ a[href]:hover, a[href]:active {
1615
+ --underline-hover-width: var(--underline-max-width);
1616
+ }
1617
+ }
1618
+ button, input[type=button], input[type=image], input[type=reset], input[type=submit] {
1619
+ --hover-tint: var(--hover);
1620
+ --active-tint: var(--active);
1621
+ }
1622
+
1623
+ a {
1624
+ --hover-tint: var(--idle);
1625
+ --active-tint: var(--active);
1626
+ }
1627
+
1628
+ 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 {
1629
+ cursor: pointer;
1630
+ }
1631
+
1632
+ input[type=range]:disabled::-webkit-slider-thumb, input[type=range]:disabled::-webkit-slider-thumb:active {
1633
+ cursor: not-allowed;
1634
+ }
1635
+
1636
+ input[type=range]:disabled::-moz-range-thumb, input[type=range]:disabled::-moz-range-thumb:active {
1637
+ cursor: not-allowed;
1638
+ }
1639
+
1640
+ input[type=range]:disabled::-ms-thumb, input[type=range]:disabled::-ms-thumb:active {
1641
+ cursor: not-allowed;
1642
+ }
1643
+
1644
+ 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] {
1645
+ cursor: not-allowed;
1646
+ }
1647
+
1648
+ input[type=range]::-webkit-slider-thumb {
1649
+ cursor: grab;
1650
+ }
1651
+
1652
+ input[type=range]::-moz-range-thumb {
1653
+ cursor: grab;
1654
+ }
1655
+
1656
+ input[type=range]::-ms-thumb {
1657
+ cursor: grab;
1658
+ }
1659
+
1660
+ input[type=range]::-webkit-slider-thumb:active {
1661
+ cursor: grabbing;
1662
+ }
1663
+
1664
+ input[type=range]::-moz-range-thumb:active {
1665
+ cursor: grabbing;
1666
+ }
1667
+
1668
+ input[type=range]::-ms-thumb:active {
1669
+ cursor: grabbing;
1670
+ }
1671
+
1672
+ /**
1673
+ * Override de l'opacité chrome sur un élément disabled
1674
+ */
1675
+ 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, select:disabled, textarea:disabled, video:not([href]), audio:not([href]) {
1676
+ opacity: 1;
1677
+ }
1678
+
1679
+ :root {
1680
+ --ul-type: disc;
1681
+ --ol-type: decimal;
1682
+ --ul-start: 1rem;
1683
+ --ol-start: 1.5rem;
1684
+ --xl-block: 0.5rem;
1685
+ --li-bottom: 0.25rem;
1686
+ --xl-base: 1em;
1687
+ --ol-content: counters(li-counter, ".") ".\00a0\00a0";
1688
+ }
1689
+
1690
+ ul,
1691
+ ol,
1692
+ dl {
1693
+ margin: 0;
1694
+ padding: 0;
1695
+ margin-block-start: var(--xl-block);
1696
+ margin-block-end: var(--xl-block);
1697
+ --xl-size: var(--xl-base);
1698
+ }
1699
+
1700
+ ul {
1701
+ list-style-type: var(--ul-type);
1702
+ padding-inline-start: var(--ul-start);
1703
+ }
1704
+ ul > li::marker {
1705
+ font-size: calc(var(--xl-size) * 0.9);
1706
+ }
1707
+ @media (-ms-high-contrast: active), (forced-colors: active) {
1708
+ ul > li::marker {
1709
+ color: graytext;
1710
+ }
1711
+ }
1712
+
1713
+ ol {
1714
+ list-style-type: var(--ol-type);
1715
+ padding-inline-start: var(--ol-start);
1716
+ counter-reset: li-counter;
1717
+ }
1718
+ ol > li {
1719
+ counter-increment: li-counter;
1720
+ }
1721
+ ol > li::marker {
1722
+ content: var(--ol-content);
1723
+ font-size: var(--xl-size);
1724
+ font-weight: bold;
1725
+ }
1726
+
1727
+ dl,
1728
+ dd {
1729
+ margin: 0;
1730
+ padding-inline-start: var(--ul-start);
1731
+ }
1732
+
1733
+ li,
1734
+ dd,
1735
+ dt {
1736
+ --xl-base: calc(var(--xl-size) * 0.9);
1737
+ padding-bottom: var(--li-bottom);
1738
+ }
1739
+
1740
+ .fr-raw-list {
1741
+ --ul-type: none;
1742
+ --ol-type: none;
1743
+ --ul-start: 0;
1744
+ --ol-start: 0;
1745
+ --xl-block: 0;
1746
+ --li-bottom: 0;
1747
+ --ol-content: none;
1748
+ }
1749
+
1750
+ .fr-list {
1751
+ --ul-type: disc;
1752
+ --ol-type: decimal;
1753
+ --ul-start: 1rem;
1754
+ --ol-start: 1.5rem;
1755
+ --xl-block: 0.5rem;
1756
+ --li-bottom: 0.25rem;
1757
+ --xl-base: 1em;
1758
+ --ol-content: counters(li-counter, ".") ".\00a0\00a0";
1759
+ }
1760
+
1761
+ *,
1762
+ *::before,
1763
+ *::after {
1764
+ box-sizing: inherit;
1765
+ }
1766
+
1767
+ :root {
1768
+ box-sizing: border-box;
1769
+ }
1770
+
1771
+ input,
1772
+ select,
1773
+ textarea,
1774
+ label,
1775
+ button,
1776
+ a {
1777
+ -webkit-tap-highlight-color: transparent;
1778
+ }
1779
+
1780
+ [class^=fr-icon-]::before, [class^=fr-icon-]::after, [class*=" fr-icon-"]::before, [class*=" fr-icon-"]::after, [class^=fr-fi-]::before, [class^=fr-fi-]::after, [class*=" fr-fi-"]::before, [class*=" fr-fi-"]::after {
1781
+ flex: 0 0 auto;
1782
+ display: inline-block;
1783
+ vertical-align: calc((0.75em - var(--icon-size)) * 0.5);
1784
+ background-color: currentColor;
1785
+ width: var(--icon-size);
1786
+ height: var(--icon-size);
1787
+ -webkit-mask-size: 100% 100%;
1788
+ mask-size: 100% 100%;
1789
+ }
1790
+ [class^=fr-icon-]::before, [class^=fr-icon-]::after, [class*=" fr-icon-"]::before, [class*=" fr-icon-"]::after, [class^=fr-fi-]::before, [class^=fr-fi-]::after, [class*=" fr-fi-"]::before, [class*=" fr-fi-"]::after {
1791
+ --icon-size: 1.5rem;
1792
+ }
1793
+ [class^=fr-icon-]::before, [class*=" fr-icon-"]::before, [class^=fr-fi-]::before, [class*=" fr-fi-"]::before {
1794
+ content: "";
1795
+ }
1796
+
1797
+ @media (-ms-high-contrast: active) and (-ms-high-contrast: active), (-ms-high-contrast: active) and (forced-colors: active), (forced-colors: active) and (-ms-high-contrast: active), (forced-colors: active) and (forced-colors: active) {
1798
+ [class^=fr-icon-]::before, [class^=fr-icon-]::after, [class*=" fr-icon-"]::before, [class*=" fr-icon-"]::after, [class^=fr-fi-]::before, [class^=fr-fi-]::after, [class*=" fr-fi-"]::before, [class*=" fr-fi-"]::after {
1799
+ forced-color-adjust: none;
1800
+ background-color: canvastext;
1801
+ }
1802
+ }
1803
+ @media (-ms-high-contrast: active) and (-ms-high-contrast: active), (-ms-high-contrast: active) and (forced-colors: active), (forced-colors: active) and (-ms-high-contrast: active), (forced-colors: active) and (forced-colors: active) {
1804
+ button[class^=fr-icon-]:not([disabled])::before, button[class^=fr-icon-]:not([disabled])::after, button[class*=" fr-icon-"]:not([disabled])::before, button[class*=" fr-icon-"]:not([disabled])::after, button[class^=fr-fi-]:not([disabled])::before, button[class^=fr-fi-]:not([disabled])::after, button[class*=" fr-fi-"]:not([disabled])::before, button[class*=" fr-fi-"]:not([disabled])::after {
1805
+ background-color: buttontext;
1806
+ }
1807
+ }
1808
+ @media (-ms-high-contrast: active) and (-ms-high-contrast: active), (-ms-high-contrast: active) and (forced-colors: active), (forced-colors: active) and (-ms-high-contrast: active), (forced-colors: active) and (forced-colors: active) {
1809
+ a[href][class^=fr-icon-]::before, a[href][class^=fr-icon-]::after, a[href][class*=" fr-icon-"]::before, a[href][class*=" fr-icon-"]::after, a[href][class^=fr-fi-]::before, a[href][class^=fr-fi-]::after, a[href][class*=" fr-fi-"]::before, a[href][class*=" fr-fi-"]::after {
1810
+ background-color: linktext;
1811
+ }
1812
+ }
1813
+ @media (-ms-high-contrast: active) and (-ms-high-contrast: active), (-ms-high-contrast: active) and (forced-colors: active), (forced-colors: active) and (-ms-high-contrast: active), (forced-colors: active) and (forced-colors: active) {
1814
+ a[class^=fr-icon-]:not([href])::before, a[class^=fr-icon-]:not([href])::after, a[class*=" fr-icon-"]:not([href])::before, a[class*=" fr-icon-"]:not([href])::after, a[class^=fr-fi-]:not([href])::before, a[class^=fr-fi-]:not([href])::after, a[class*=" fr-fi-"]:not([href])::before, a[class*=" fr-fi-"]:not([href])::after, button[class^=fr-icon-]:disabled::before, button[class^=fr-icon-]:disabled::after, button[class*=" fr-icon-"]:disabled::before, button[class*=" fr-icon-"]:disabled::after, button[class^=fr-fi-]:disabled::before, button[class^=fr-fi-]:disabled::after, button[class*=" fr-fi-"]:disabled::before, button[class*=" fr-fi-"]:disabled::after, input[class^=fr-icon-]:disabled::before, input[class^=fr-icon-]:disabled::after, input[class*=" fr-icon-"]:disabled::before, input[class*=" fr-icon-"]:disabled::after, input[class^=fr-fi-]:disabled::before, input[class^=fr-fi-]:disabled::after, input[class*=" fr-fi-"]:disabled::before, input[class*=" fr-fi-"]:disabled::after, input[type=checkbox][class^=fr-icon-]:disabled::before, input[type=checkbox][class^=fr-icon-]:disabled::after, input[type=checkbox][class*=" fr-icon-"]:disabled::before, input[type=checkbox][class*=" fr-icon-"]:disabled::after, input[type=checkbox][class^=fr-fi-]:disabled::before, input[type=checkbox][class^=fr-fi-]:disabled::after, input[type=checkbox][class*=" fr-fi-"]:disabled::before, input[type=checkbox][class*=" fr-fi-"]:disabled::after, input[type=checkbox]:disabled + label[class^=fr-icon-]::before, input[type=checkbox]:disabled + label[class^=fr-icon-]::after, input[type=checkbox]:disabled + label[class*=" fr-icon-"]::before, input[type=checkbox]:disabled + label[class*=" fr-icon-"]::after, input[type=checkbox]:disabled + label[class^=fr-fi-]::before, input[type=checkbox]:disabled + label[class^=fr-fi-]::after, input[type=checkbox]:disabled + label[class*=" fr-fi-"]::before, input[type=checkbox]:disabled + label[class*=" fr-fi-"]::after, input[type=radio][class^=fr-icon-]:disabled::before, input[type=radio][class^=fr-icon-]:disabled::after, input[type=radio][class*=" fr-icon-"]:disabled::before, input[type=radio][class*=" fr-icon-"]:disabled::after, input[type=radio][class^=fr-fi-]:disabled::before, input[type=radio][class^=fr-fi-]:disabled::after, input[type=radio][class*=" fr-fi-"]:disabled::before, input[type=radio][class*=" fr-fi-"]:disabled::after, input[type=radio]:disabled + label[class^=fr-icon-]::before, input[type=radio]:disabled + label[class^=fr-icon-]::after, input[type=radio]:disabled + label[class*=" fr-icon-"]::before, input[type=radio]:disabled + label[class*=" fr-icon-"]::after, input[type=radio]:disabled + label[class^=fr-fi-]::before, input[type=radio]:disabled + label[class^=fr-fi-]::after, input[type=radio]:disabled + label[class*=" fr-fi-"]::before, input[type=radio]:disabled + label[class*=" fr-fi-"]::after, select[class^=fr-icon-]:disabled::before, select[class^=fr-icon-]:disabled::after, select[class*=" fr-icon-"]:disabled::before, select[class*=" fr-icon-"]:disabled::after, select[class^=fr-fi-]:disabled::before, select[class^=fr-fi-]:disabled::after, select[class*=" fr-fi-"]:disabled::before, select[class*=" fr-fi-"]:disabled::after, textarea[class^=fr-icon-]:disabled::before, textarea[class^=fr-icon-]:disabled::after, textarea[class*=" fr-icon-"]:disabled::before, textarea[class*=" fr-icon-"]:disabled::after, textarea[class^=fr-fi-]:disabled::before, textarea[class^=fr-fi-]:disabled::after, textarea[class*=" fr-fi-"]:disabled::before, textarea[class*=" fr-fi-"]:disabled::after, video[class^=fr-icon-]:not([href])::before, video[class^=fr-icon-]:not([href])::after, video[class*=" fr-icon-"]:not([href])::before, video[class*=" fr-icon-"]:not([href])::after, video[class^=fr-fi-]:not([href])::before, video[class^=fr-fi-]:not([href])::after, video[class*=" fr-fi-"]:not([href])::before, video[class*=" fr-fi-"]:not([href])::after, audio[class^=fr-icon-]:not([href])::before, audio[class^=fr-icon-]:not([href])::after, audio[class*=" fr-icon-"]:not([href])::before, audio[class*=" fr-icon-"]:not([href])::after, audio[class^=fr-fi-]:not([href])::before, audio[class^=fr-fi-]:not([href])::after, audio[class*=" fr-fi-"]:not([href])::before, audio[class*=" fr-fi-"]:not([href])::after {
1815
+ background-color: graytext;
1816
+ }
1817
+ }
1818
+ .fr-icon--xs::before, .fr-icon--xs::after {
1819
+ --icon-size: 0.75rem;
1820
+ }
1821
+ .fr-icon--sm::before, .fr-icon--sm::after {
1822
+ --icon-size: 1rem;
1823
+ }
1824
+ .fr-icon--md::before, .fr-icon--md::after {
1825
+ --icon-size: 1.5rem;
1826
+ }
1827
+ .fr-icon--lg::before, .fr-icon--lg::after {
1828
+ --icon-size: 2rem;
1829
+ }
1830
+
1831
+ :host {
1832
+ display: block;
1833
+ text-rendering: optimizeLegibility;
1834
+ -webkit-font-smoothing: antialiased;
1835
+ -moz-osx-font-smoothing: grayscale;
1836
+ -webkit-text-size-adjust: 100%;
1837
+ font-size: 1rem;
1838
+ line-height: 1.5rem;
1839
+ background-color: var(--background-default-grey);
1840
+ --idle: transparent;
1841
+ --hover: var(--background-default-grey-hover);
1842
+ --active: var(--background-default-grey-active);
1843
+ color: var(--text-default-grey);
1844
+ background-color: transparent;
1845
+ }
1846
+
1847
+ .fr-btns-group {
1848
+ box-sizing: border-box;
1849
+ }
1850
+
1851
+ .fr-btn {
1852
+ box-sizing: border-box;
1853
+ border-radius: var(--lab-border-radius, 0);
1854
+ }
1855
+ .fr-btn--secondary {
1856
+ --hover: var(--background-default-grey-hover);
1857
+ --active: var(--background-default-grey-active);
1858
+ }
1859
+ .fr-btn--inverted-primary {
1860
+ --hover: var(--background-default-grey-hover);
1861
+ --active: var(--background-default-grey-active);
1862
+ background-color: var(--background-default-grey);
1863
+ box-shadow: inset 0 0 0 1px var(--background-default-grey);
1864
+ color: var(--text-action-high-blue-france);
1865
+ }
1866
+ .fr-btn--inverted-primary:disabled {
1867
+ box-shadow: inset 0 0 0 1px var(--border-disabled-grey);
1868
+ }
1869
+ .fr-btn--inverted-secondary, .fr-btn--inverted-tertiary, .fr-btn--inverted-tertiary-no-outline {
1870
+ --hover: var(--background-transparent-hover, rgb(255 255 255 / 8%));
1871
+ --active: var(--background-transparent-active, rgb(255 255 255 / 16%));
1872
+ --background-action-high-blue-france: transparent;
1873
+ --background-disabled-grey: transparent;
1874
+ color: var(--text-inverted-grey);
1875
+ }
1876
+ .fr-btn--inverted-secondary {
1877
+ box-shadow: inset 0 0 0 1px var(--background-default-grey);
1878
+ }
1879
+ .fr-btn--inverted-secondary:disabled {
1880
+ box-shadow: inset 0 0 0 1px var(--border-disabled-grey);
1881
+ }
1882
+ .fr-btn--inverted-tertiary {
1883
+ box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.4);
1884
+ box-shadow: inset 0 0 0 1px rgb(from var(--background-default-grey) r g b/0.4);
1885
+ }
1886
+ .fr-btn--inverted-tertiary:disabled {
1887
+ box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.4);
1888
+ box-shadow: inset 0 0 0 1px rgb(from var(--background-default-grey) r g b/0.4);
1889
+ opacity: 0.6;
1890
+ }
1891
+ .fr-btn--inverted-tertiary-no-outline, .fr-btn--inverted-tertiary-no-outline:disabled {
1892
+ box-shadow: none;
1893
+ }
1894
+ .fr-btn--inverted-tertiary-no-outline:disabled {
1895
+ opacity: 0.6;
1896
+ }</style>