@ebrains/components 3.0.0 → 3.2.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 (427) hide show
  1. package/dist/cjs/color-primary-palette_6.cjs.entry.js +14 -14
  2. package/dist/cjs/components-section.cjs.entry.js +1 -1
  3. package/dist/cjs/components.cjs.js +1 -1
  4. package/dist/cjs/correct-use-of-colors.cjs.entry.js +1 -1
  5. package/dist/cjs/docs-palettes.cjs.entry.js +1 -1
  6. package/dist/cjs/docs-tokens.cjs.entry.js +1 -1
  7. package/dist/cjs/{eds-accordion_52.cjs.entry.js → eds-accordion_53.cjs.entry.js} +1095 -336
  8. package/dist/cjs/eds-app-root.cjs.entry.js +1 -1
  9. package/dist/cjs/eds-cookies-preference.cjs.entry.js +1 -1
  10. package/dist/cjs/eds-feedback.cjs.entry.js +1 -1
  11. package/dist/cjs/eds-frame.cjs.entry.js +1 -1
  12. package/dist/cjs/eds-gauge.cjs.entry.js +1 -1
  13. package/dist/cjs/eds-gitlab-contributors.cjs.entry.js +35 -32
  14. package/dist/cjs/eds-icon-bluesky.cjs.entry.js +1 -1
  15. package/dist/cjs/eds-icon-eu.cjs.entry.js +1 -1
  16. package/dist/cjs/eds-icon-facebook.cjs.entry.js +1 -1
  17. package/dist/cjs/eds-icon-gitlab.cjs.entry.js +1 -1
  18. package/dist/cjs/eds-icon-linkedin.cjs.entry.js +1 -1
  19. package/dist/cjs/eds-icon-mastodon.cjs.entry.js +1 -1
  20. package/dist/cjs/eds-icon-twitter.cjs.entry.js +1 -1
  21. package/dist/cjs/eds-icon-youtube.cjs.entry.js +1 -1
  22. package/dist/cjs/eds-input-search.cjs.entry.js +76 -0
  23. package/dist/cjs/eds-modal.cjs.entry.js +18 -9
  24. package/dist/cjs/eds-pie.cjs.entry.js +2 -2
  25. package/dist/cjs/eds-section-core_2.cjs.entry.js +3 -3
  26. package/dist/cjs/eds-timeline.cjs.entry.js +1 -1
  27. package/dist/cjs/eds-toast-manager.cjs.entry.js +1 -1
  28. package/dist/cjs/eds-trl-badge.cjs.entry.js +184 -0
  29. package/dist/cjs/incorrect-use-of-colors.cjs.entry.js +1 -1
  30. package/dist/cjs/index-50bc1aa4.js +10 -2
  31. package/dist/cjs/loader.cjs.js +1 -1
  32. package/dist/cjs/logo-space.cjs.entry.js +58 -1
  33. package/dist/cjs/logo-variations-horizontal_2.cjs.entry.js +2 -2
  34. package/dist/cjs/logo-variations-tabs.cjs.entry.js +1 -1
  35. package/dist/cjs/logo-wrong-usage.cjs.entry.js +1 -1
  36. package/dist/cjs/svg-repository.cjs.entry.js +1 -1
  37. package/dist/cjs/token-list_3.cjs.entry.js +3 -3
  38. package/dist/cjs/token-ratios.cjs.entry.js +1 -1
  39. package/dist/cjs/token-spacing.cjs.entry.js +1 -1
  40. package/dist/cjs/token-typography.cjs.entry.js +8 -2
  41. package/dist/collection/collection-manifest.json +4 -1
  42. package/dist/collection/components/eds-accordion/eds-accordion.css +3 -2
  43. package/dist/collection/components/eds-accordion/eds-accordion.js +2 -5
  44. package/dist/collection/components/eds-accordion/eds-accordion.stories.js +7 -19
  45. package/dist/collection/components/eds-alert/eds-alert.css +14 -0
  46. package/dist/collection/components/eds-alert/eds-alert.js +2 -1
  47. package/dist/collection/components/eds-alert/eds-alert.stories.js +19 -147
  48. package/dist/collection/components/eds-avatar/eds-avatar.js +1 -1
  49. package/dist/collection/components/eds-avatar/eds-avatar.stories.js +2 -2
  50. package/dist/collection/components/eds-block-break/eds-block-break.js +1 -1
  51. package/dist/collection/components/eds-breadcrump/eds-breadcrump.js +1 -1
  52. package/dist/collection/components/eds-button/eds-button.css +15 -0
  53. package/dist/collection/components/eds-button/eds-button.js +17 -14
  54. package/dist/collection/components/eds-button/eds-button.stories.js +4 -1
  55. package/dist/collection/components/eds-cards/eds-card-app/eds-card-app.js +2 -5
  56. package/dist/collection/components/eds-cards/eds-card-composer/eds-card-desc/eds-card-desc.js +1 -1
  57. package/dist/collection/components/eds-cards/eds-card-composer/eds-card-title/eds-card-title.js +1 -1
  58. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.css +10 -1
  59. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.js +2 -5
  60. package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.stories.js +4 -1
  61. package/dist/collection/components/eds-cards/eds-card-feature/eds-card-feature.js +2 -5
  62. package/dist/collection/components/eds-cards/eds-card-generic/eds-card-generic.js +2 -4
  63. package/dist/collection/components/eds-cards/eds-card-hero/eds-card-hero.js +6 -7
  64. package/dist/collection/components/eds-cards/eds-card-stat/eds-card-stat.js +6 -7
  65. package/dist/collection/components/eds-charts/eds-gauge/eds-gauge.js +1 -1
  66. package/dist/collection/components/eds-charts/eds-pie/eds-pie.js +2 -2
  67. package/dist/collection/components/eds-code-block/eds-code-block.css +72 -106
  68. package/dist/collection/components/eds-code-block/eds-code-block.js +1 -1
  69. package/dist/collection/components/eds-dropdown/eds-dropdown.js +30 -4
  70. package/dist/collection/components/eds-feedback/eds-feedback.js +1 -1
  71. package/dist/collection/components/eds-footer/eds-footer.css +143 -203
  72. package/dist/collection/components/eds-footer/eds-footer.js +176 -74
  73. package/dist/collection/components/eds-footer/eds-footer.stories.js +109 -17
  74. package/dist/collection/components/eds-form/eds-form.css +493 -1
  75. package/dist/collection/components/eds-form/eds-form.js +256 -14
  76. package/dist/collection/components/eds-form/eds-form.stories.js +110 -3
  77. package/dist/collection/components/eds-frame/eds-frame.js +1 -1
  78. package/dist/collection/components/eds-header/eds-header.js +1 -1
  79. package/dist/collection/components/eds-header/eds-header.stories.js +26 -12
  80. package/dist/collection/components/eds-icon-wrapper/eds-icon-wrapper.js +20 -1
  81. package/dist/collection/components/eds-icons/eds-icon-eu/eds-icon-eu.js +1 -1
  82. package/dist/collection/components/eds-icons/eds-icon-gitlab/eds-icon-gitlab.js +1 -1
  83. package/dist/collection/components/eds-icons/social/eds-icon-bluesky/eds-icon-bluesky.js +1 -1
  84. package/dist/collection/components/eds-icons/social/eds-icon-facebook/eds-icon-facebook.js +1 -1
  85. package/dist/collection/components/eds-icons/social/eds-icon-linkedin/eds-icon-linkedin.js +1 -1
  86. package/dist/collection/components/eds-icons/social/eds-icon-mastodon/eds-icon-mastodon.js +1 -1
  87. package/dist/collection/components/eds-icons/social/eds-icon-twitter/eds-icon-twitter.js +1 -1
  88. package/dist/collection/components/eds-icons/social/eds-icon-youtube/eds-icon-youtube.js +1 -1
  89. package/dist/collection/components/eds-img/eds-img.js +2 -2
  90. package/dist/collection/components/eds-img/eds-img.stories.js +29 -52
  91. package/dist/collection/components/eds-input-dropzone/eds-input-dropzone.js +7 -4
  92. package/dist/collection/components/eds-input-elements/eds-input/eds-input.js +20 -2
  93. package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.css +39 -0
  94. package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.js +2 -1
  95. package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.css +17 -5
  96. package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.js +1 -1
  97. package/dist/collection/components/eds-input-elements/eds-input-range/eds-input-range.js +15 -5
  98. package/dist/collection/components/eds-input-elements/eds-input-search/eds-input-search.js +1 -1
  99. package/dist/collection/components/eds-input-elements/eds-input-search/eds-input-search.stories.js +30 -0
  100. package/dist/collection/components/eds-input-elements/eds-input-select/eds-input-select.js +6 -2
  101. package/dist/collection/components/eds-input-field/eds-input-field.css +219 -0
  102. package/dist/collection/components/eds-input-field/eds-input-field.js +16 -5
  103. package/dist/collection/components/eds-input-field/eds-input-field.stories.js +105 -125
  104. package/dist/collection/components/eds-input-file/eds-input-file.js +5 -3
  105. package/dist/collection/components/eds-link/eds-link.js +4 -8
  106. package/dist/collection/components/eds-link/eds-link.stories.js +13 -8
  107. package/dist/collection/components/eds-logo/eds-logo.js +13 -66
  108. package/dist/collection/components/eds-logo/eds-logo.stories.js +36 -17
  109. package/dist/collection/components/eds-modal/eds-modal.js +18 -9
  110. package/dist/collection/components/eds-modal/eds-modal.stories.js +11 -8
  111. package/dist/collection/components/eds-nps/eds-nps.css +32 -0
  112. package/dist/collection/components/eds-nps/eds-nps.js +3 -3
  113. package/dist/collection/components/eds-pagination/eds-pagination.js +2 -2
  114. package/dist/collection/components/eds-progress-bar/eds-progress-bar.js +1 -8
  115. package/dist/collection/components/eds-rating/eds-rating.css +9 -0
  116. package/dist/collection/components/eds-rating/eds-rating.js +2 -2
  117. package/dist/collection/components/eds-section/eds-section-core/eds-section-core.js +1 -1
  118. package/dist/collection/components/eds-section/eds-section-heading/eds-section-heading.js +2 -2
  119. package/dist/collection/components/eds-sidebar/eds-sidebar.js +2 -2
  120. package/dist/collection/components/eds-social-networks/eds-social-networks.js +1 -1
  121. package/dist/collection/components/eds-spinner/eds-spinner.js +1 -1
  122. package/dist/collection/components/eds-steps/eds-steps.css +56 -25
  123. package/dist/collection/components/eds-steps/eds-steps.js +27 -7
  124. package/dist/collection/components/eds-steps-v2/eds-steps-v2.css +93 -28
  125. package/dist/collection/components/eds-steps-v2/eds-steps-v2.js +57 -10
  126. package/dist/collection/components/eds-steps-v2/eds-steps-v2.stories.js +80 -17
  127. package/dist/collection/components/eds-switch/eds-switch.css +26 -3
  128. package/dist/collection/components/eds-switch/eds-switch.js +10 -7
  129. package/dist/collection/components/eds-switch/eds-switch.stories.js +20 -1
  130. package/dist/collection/components/eds-table/eds-table.css +21 -4
  131. package/dist/collection/components/eds-table/eds-table.js +16 -51
  132. package/dist/collection/components/eds-table/eds-table.stories.js +7 -115
  133. package/dist/collection/components/eds-tabs/eds-tabs.css +7 -1
  134. package/dist/collection/components/eds-tabs/eds-tabs.js +49 -18
  135. package/dist/collection/components/eds-tabs/eds-tabs.stories.js +2 -2
  136. package/dist/collection/components/eds-tag/eds-tag.js +1 -1
  137. package/dist/collection/components/eds-timeline/eds-timeline.js +1 -1
  138. package/dist/collection/components/eds-toast/eds-toast.css +146 -0
  139. package/dist/collection/components/eds-toast/eds-toast.js +106 -4
  140. package/dist/collection/components/eds-toast/eds-toast.stories.js +102 -5
  141. package/dist/collection/components/eds-toast-manager/eds-toast-manager.js +1 -1
  142. package/dist/collection/components/eds-tooltip/eds-tooltip.js +1 -1
  143. package/dist/collection/components/eds-tooltip/eds-tooltip.stories.js +7 -1
  144. package/dist/collection/components/eds-user/eds-user.js +2 -5
  145. package/dist/collection/components/eds-user/eds-user.stories.js +8 -11
  146. package/dist/collection/eds-docs-ui/colors/color-palette/primary.js +1 -1
  147. package/dist/collection/eds-docs-ui/colors/color-palette/secondary.js +1 -1
  148. package/dist/collection/eds-docs-ui/colors/color-palette/support.js +1 -1
  149. package/dist/collection/eds-docs-ui/colors/gradient-palette/primary.js +1 -1
  150. package/dist/collection/eds-docs-ui/colors/gradient-palette/secondary.js +7 -7
  151. package/dist/collection/eds-docs-ui/colors/gradient-palette/support.js +3 -3
  152. package/dist/collection/eds-docs-ui/colors/use-of-colors/correct-use-of-colors.js +1 -1
  153. package/dist/collection/eds-docs-ui/colors/use-of-colors/incorrect-use-of-colors.js +1 -1
  154. package/dist/collection/eds-docs-ui/components-section/components-section.js +1 -1
  155. package/dist/collection/eds-docs-ui/design-tokens/docs-tokens/docs-tokens.js +1 -1
  156. package/dist/collection/eds-docs-ui/design-tokens/token-list/token-list.js +1 -1
  157. package/dist/collection/eds-docs-ui/design-tokens/token-radii/token-radii.js +1 -1
  158. package/dist/collection/eds-docs-ui/design-tokens/token-ratios/token-ratios.js +1 -1
  159. package/dist/collection/eds-docs-ui/design-tokens/token-shadows/token-shadows.js +1 -1
  160. package/dist/collection/eds-docs-ui/design-tokens/token-spacing/token-spacing.js +1 -1
  161. package/dist/collection/eds-docs-ui/design-tokens/token-typography/token-typography.js +8 -2
  162. package/dist/collection/eds-docs-ui/docs-palettes/docs-palettes.js +1 -1
  163. package/dist/collection/eds-docs-ui/logo/logo-space/logo-space.js +58 -1
  164. package/dist/collection/eds-docs-ui/logo/logo-variations/horizontal/logo-variations-horizontal.js +1 -1
  165. package/dist/collection/eds-docs-ui/logo/logo-variations/vertical/logo-variations-vertical.js +1 -1
  166. package/dist/collection/eds-docs-ui/logo/logo-variations-tabs/logo-variations.js +1 -1
  167. package/dist/collection/eds-docs-ui/logo/logo-wrong-usage/logo-wrong-usage.js +1 -1
  168. package/dist/collection/eds-docs-ui/svg-repository/svg-repository.js +1 -1
  169. package/dist/collection/shared-ui/eds-cookies-preference/eds-cookies-preference.js +1 -1
  170. package/dist/collection/shared-ui/eds-gitlab-contributors/eds-gitlab-contributors.css +19 -0
  171. package/dist/collection/shared-ui/eds-gitlab-contributors/eds-gitlab-contributors.js +34 -31
  172. package/dist/collection/shared-ui/eds-global-search/eds-global-search.css +166 -0
  173. package/dist/collection/shared-ui/eds-global-search/eds-global-search.js +69 -7
  174. package/dist/collection/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.css +205 -0
  175. package/dist/collection/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.js +253 -0
  176. package/dist/collection/shared-ui/eds-kg-web-services-select/eds-kg-web-services-select.js +2 -2
  177. package/dist/collection/shared-ui/eds-kg-web-services-select/eds-kg-web-services-select.stories.js +1 -3
  178. package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.css +23 -102
  179. package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.js +7 -1
  180. package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.stories.js +1 -1
  181. package/dist/collection/shared-ui/eds-search-select/eds-search-select.css +213 -0
  182. package/dist/collection/shared-ui/eds-search-select/eds-search-select.js +706 -0
  183. package/dist/collection/shared-ui/eds-search-select/eds-search-select.stories.js +90 -0
  184. package/dist/collection/shared-ui/eds-trl-badge/ebrains-mark.js +26 -0
  185. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.css +22 -0
  186. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.js +324 -0
  187. package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.stories.js +99 -0
  188. package/dist/collection/shared-ui/examples/eds-app-root/eds-app-root.js +1 -1
  189. package/dist/collection/utils/eds-form/formValidators.js +2 -1
  190. package/dist/collection/utils/eds-form/safeFormat.js +35 -0
  191. package/dist/components/components-section.js +1 -1
  192. package/dist/components/components.css +12 -11
  193. package/dist/components/components.esm.js +1 -1
  194. package/dist/components/correct-use-of-colors.js +1 -1
  195. package/dist/components/docs-palettes.js +1 -1
  196. package/dist/components/docs-tokens.js +1 -1
  197. package/dist/components/eds-accordion2.js +3 -6
  198. package/dist/components/eds-alert2.js +3 -2
  199. package/dist/components/eds-app-root.js +1 -1
  200. package/dist/components/eds-avatar2.js +1 -1
  201. package/dist/components/eds-block-break2.js +1 -1
  202. package/dist/components/eds-breadcrumb.js +1 -1
  203. package/dist/components/eds-button2.js +16 -13
  204. package/dist/components/eds-card-app.js +2 -5
  205. package/dist/components/eds-card-cta.js +3 -6
  206. package/dist/components/eds-card-desc2.js +1 -1
  207. package/dist/components/eds-card-feature.js +2 -5
  208. package/dist/components/eds-card-generic2.js +2 -4
  209. package/dist/components/eds-card-hero.js +6 -7
  210. package/dist/components/eds-card-stat.js +6 -7
  211. package/dist/components/eds-card-title2.js +1 -1
  212. package/dist/components/eds-code-block2.js +2 -2
  213. package/dist/components/eds-cookies-preference.js +1 -1
  214. package/dist/components/eds-dropdown2.js +30 -4
  215. package/dist/components/eds-feedback.js +1 -1
  216. package/dist/components/eds-footer2.js +118 -24
  217. package/dist/components/eds-form.js +146 -45
  218. package/dist/components/eds-frame.js +1 -1
  219. package/dist/components/eds-gauge.js +1 -1
  220. package/dist/components/eds-gitlab-contributors.js +35 -32
  221. package/dist/components/eds-global-search.js +55 -70
  222. package/dist/components/eds-header.js +1 -1
  223. package/dist/components/eds-icon-bluesky.js +1 -1
  224. package/dist/components/eds-icon-eu.js +1 -1
  225. package/dist/components/eds-icon-facebook.js +1 -1
  226. package/dist/components/eds-icon-gitlab.js +1 -1
  227. package/dist/components/eds-icon-linkedin.js +1 -1
  228. package/dist/components/eds-icon-mastodon.js +1 -1
  229. package/dist/components/eds-icon-twitter.js +1 -1
  230. package/dist/components/eds-icon-wrapper2.js +5 -2
  231. package/dist/components/eds-icon-youtube.js +1 -1
  232. package/dist/components/eds-img2.js +2 -2
  233. package/dist/components/eds-input-dropzone2.js +7 -4
  234. package/dist/components/eds-input-field2.js +31 -26
  235. package/dist/components/eds-input-file2.js +5 -3
  236. package/dist/components/eds-input-footer2.js +39 -3
  237. package/dist/components/eds-input-label2.js +2 -2
  238. package/dist/components/eds-input-range2.js +15 -5
  239. package/dist/components/eds-input-search.js +100 -1
  240. package/dist/components/eds-input-select2.js +6 -2
  241. package/dist/components/eds-input2.js +4 -2
  242. package/dist/components/eds-kg-learning-resources.d.ts +11 -0
  243. package/dist/components/eds-kg-learning-resources.js +217 -0
  244. package/dist/components/eds-kg-web-services-select2.js +18 -24
  245. package/dist/components/eds-link2.js +3 -7
  246. package/dist/components/eds-logo2.js +4 -22
  247. package/dist/components/eds-matomo-notice2.js +8 -2
  248. package/dist/components/eds-modal.js +18 -9
  249. package/dist/components/eds-nps2.js +4 -4
  250. package/dist/components/eds-pagination2.js +2 -2
  251. package/dist/components/eds-pie.js +2 -2
  252. package/dist/components/eds-progress-bar.js +1 -8
  253. package/dist/components/eds-rating2.js +3 -3
  254. package/dist/components/eds-search-select.d.ts +11 -0
  255. package/dist/components/eds-search-select.js +6 -0
  256. package/dist/components/eds-search-select2.js +382 -0
  257. package/dist/components/eds-section-core2.js +1 -1
  258. package/dist/components/eds-section-heading2.js +2 -2
  259. package/dist/components/eds-sidebar.js +2 -2
  260. package/dist/components/eds-social-networks2.js +1 -1
  261. package/dist/components/eds-spinner2.js +1 -1
  262. package/dist/components/eds-steps-v2.js +41 -11
  263. package/dist/components/eds-steps2.js +28 -8
  264. package/dist/components/eds-switch2.js +8 -5
  265. package/dist/components/eds-table2.js +30 -54
  266. package/dist/components/eds-tabs.js +50 -19
  267. package/dist/components/eds-tag2.js +1 -1
  268. package/dist/components/eds-timeline.js +1 -1
  269. package/dist/components/eds-toast-manager.js +1 -1
  270. package/dist/components/eds-toast2.js +39 -3
  271. package/dist/components/eds-tooltip2.js +1 -1
  272. package/dist/components/eds-trl-badge.d.ts +11 -0
  273. package/dist/components/eds-trl-badge.js +207 -0
  274. package/dist/components/eds-user.js +1 -4
  275. package/dist/components/incorrect-use-of-colors.js +1 -1
  276. package/dist/components/logo-space.js +76 -25
  277. package/dist/components/logo-variations-horizontal2.js +1 -1
  278. package/dist/components/logo-variations-tabs.js +1 -1
  279. package/dist/components/logo-variations-vertical2.js +1 -1
  280. package/dist/components/logo-wrong-usage.js +1 -1
  281. package/dist/components/p-05e96609.entry.js +1 -0
  282. package/dist/components/p-0d778d10.entry.js +1 -0
  283. package/dist/components/{p-d2576747.entry.js → p-114f6d54.entry.js} +1 -1
  284. package/dist/components/p-1534204d.entry.js +1 -0
  285. package/dist/components/p-337d4ee3.entry.js +9 -0
  286. package/dist/components/p-340bc935.entry.js +1 -0
  287. package/dist/components/{p-a6dc1f88.entry.js → p-37ef07d9.entry.js} +1 -1
  288. package/dist/components/p-39dbb964.entry.js +1 -0
  289. package/dist/components/{p-dfe93385.entry.js → p-3f66bc26.entry.js} +1 -1
  290. package/dist/components/p-43f9e64f.entry.js +1 -0
  291. package/dist/components/p-46cc6c1a.entry.js +1 -0
  292. package/dist/components/{p-773bd015.entry.js → p-4b8a7979.entry.js} +1 -1
  293. package/dist/components/p-6b94b2ec.entry.js +1 -0
  294. package/dist/components/p-6d965fef.entry.js +1 -0
  295. package/dist/components/{p-d16b5363.entry.js → p-6e370182.entry.js} +1 -1
  296. package/dist/components/{p-7b93a385.entry.js → p-6ffe581c.entry.js} +1 -1
  297. package/dist/components/p-726637b1.entry.js +1 -0
  298. package/dist/components/{p-a63e14bb.entry.js → p-86ccc09f.entry.js} +1 -1
  299. package/dist/components/{p-c2fc62f7.entry.js → p-8755a21b.entry.js} +1 -1
  300. package/dist/components/{p-0d7aee0b.entry.js → p-8ab461e2.entry.js} +1 -1
  301. package/dist/components/p-8cb162b8.entry.js +1 -0
  302. package/dist/components/p-8cdbc280.entry.js +1 -0
  303. package/dist/components/{p-940a2d42.entry.js → p-8e034c4e.entry.js} +1 -1
  304. package/dist/components/p-9f649fa3.entry.js +1 -0
  305. package/dist/components/{p-d1b3aa52.entry.js → p-a26dad9b.entry.js} +1 -1
  306. package/dist/components/p-a2d6a9ca.entry.js +1 -0
  307. package/dist/components/p-afabe1be.entry.js +1 -0
  308. package/dist/components/{p-c46675c8.entry.js → p-b1519098.entry.js} +1 -1
  309. package/dist/components/{p-04e9c2d7.entry.js → p-b1a10842.entry.js} +1 -1
  310. package/dist/components/{p-7aa4edef.entry.js → p-b4023b45.entry.js} +1 -1
  311. package/dist/components/p-c53b3563.entry.js +1 -0
  312. package/dist/components/p-c7d612d1.entry.js +1 -0
  313. package/dist/components/p-dc9aef22.entry.js +1 -0
  314. package/dist/components/{p-f364296f.entry.js → p-f66a7cf9.entry.js} +1 -1
  315. package/dist/components/p-f97f62f2.entry.js +1 -0
  316. package/dist/components/primary.js +1 -1
  317. package/dist/components/primary2.js +1 -1
  318. package/dist/components/secondary.js +1 -1
  319. package/dist/components/secondary2.js +7 -7
  320. package/dist/components/support.js +1 -1
  321. package/dist/components/support2.js +3 -3
  322. package/dist/components/svg-repository.js +19 -25
  323. package/dist/components/token-list2.js +1 -1
  324. package/dist/components/token-radii2.js +1 -1
  325. package/dist/components/token-ratios.js +1 -1
  326. package/dist/components/token-shadows2.js +1 -1
  327. package/dist/components/token-spacing.js +1 -1
  328. package/dist/components/token-typography.js +8 -2
  329. package/dist/esm/color-primary-palette_6.entry.js +14 -14
  330. package/dist/esm/components-section.entry.js +1 -1
  331. package/dist/esm/components.js +1 -1
  332. package/dist/esm/correct-use-of-colors.entry.js +1 -1
  333. package/dist/esm/docs-palettes.entry.js +1 -1
  334. package/dist/esm/docs-tokens.entry.js +1 -1
  335. package/dist/esm/{eds-accordion_52.entry.js → eds-accordion_53.entry.js} +1094 -336
  336. package/dist/esm/eds-app-root.entry.js +1 -1
  337. package/dist/esm/eds-cookies-preference.entry.js +1 -1
  338. package/dist/esm/eds-feedback.entry.js +1 -1
  339. package/dist/esm/eds-frame.entry.js +1 -1
  340. package/dist/esm/eds-gauge.entry.js +1 -1
  341. package/dist/esm/eds-gitlab-contributors.entry.js +35 -32
  342. package/dist/esm/eds-icon-bluesky.entry.js +1 -1
  343. package/dist/esm/eds-icon-eu.entry.js +1 -1
  344. package/dist/esm/eds-icon-facebook.entry.js +1 -1
  345. package/dist/esm/eds-icon-gitlab.entry.js +1 -1
  346. package/dist/esm/eds-icon-linkedin.entry.js +1 -1
  347. package/dist/esm/eds-icon-mastodon.entry.js +1 -1
  348. package/dist/esm/eds-icon-twitter.entry.js +1 -1
  349. package/dist/esm/eds-icon-youtube.entry.js +1 -1
  350. package/dist/{components/eds-input-search2.js → esm/eds-input-search.entry.js} +9 -39
  351. package/dist/esm/eds-modal.entry.js +18 -9
  352. package/dist/esm/eds-pie.entry.js +2 -2
  353. package/dist/esm/eds-section-core_2.entry.js +3 -3
  354. package/dist/esm/eds-timeline.entry.js +1 -1
  355. package/dist/esm/eds-toast-manager.entry.js +1 -1
  356. package/dist/esm/eds-trl-badge.entry.js +180 -0
  357. package/dist/esm/incorrect-use-of-colors.entry.js +1 -1
  358. package/dist/esm/index-870ab08f.js +10 -2
  359. package/dist/esm/loader.js +1 -1
  360. package/dist/esm/logo-space.entry.js +58 -1
  361. package/dist/esm/logo-variations-horizontal_2.entry.js +2 -2
  362. package/dist/esm/logo-variations-tabs.entry.js +1 -1
  363. package/dist/esm/logo-wrong-usage.entry.js +1 -1
  364. package/dist/esm/svg-repository.entry.js +1 -1
  365. package/dist/esm/token-list_3.entry.js +3 -3
  366. package/dist/esm/token-ratios.entry.js +1 -1
  367. package/dist/esm/token-spacing.entry.js +1 -1
  368. package/dist/esm/token-typography.entry.js +8 -2
  369. package/dist/hydrate/index.js +1616 -397
  370. package/dist/hydrate/index.mjs +1616 -397
  371. package/dist/types/components/eds-accordion/eds-accordion.stories.d.ts +4 -8
  372. package/dist/types/components/eds-alert/eds-alert.stories.d.ts +7 -73
  373. package/dist/types/components/eds-button/eds-button.d.ts +1 -1
  374. package/dist/types/components/eds-dropdown/eds-dropdown.d.ts +1 -0
  375. package/dist/types/components/eds-footer/eds-footer.d.ts +84 -55
  376. package/dist/types/components/eds-footer/eds-footer.stories.d.ts +62 -1
  377. package/dist/types/components/eds-form/eds-form.d.ts +66 -0
  378. package/dist/types/components/eds-form/eds-form.stories.d.ts +63 -0
  379. package/dist/types/components/eds-header/eds-header.stories.d.ts +6 -6
  380. package/dist/types/components/eds-icon-wrapper/eds-icon-wrapper.d.ts +8 -0
  381. package/dist/types/components/eds-img/eds-img.stories.d.ts +6 -20
  382. package/dist/types/components/eds-input-elements/eds-input/eds-input.d.ts +7 -0
  383. package/dist/types/components/eds-input-elements/eds-input-search/eds-input-search.stories.d.ts +36 -0
  384. package/dist/types/components/eds-input-field/eds-input-field.stories.d.ts +97 -38
  385. package/dist/types/components/eds-link/eds-link.stories.d.ts +9 -6
  386. package/dist/types/components/eds-logo/eds-logo.d.ts +11 -28
  387. package/dist/types/components/eds-logo/eds-logo.stories.d.ts +22 -2
  388. package/dist/types/components/eds-steps/eds-steps.d.ts +7 -0
  389. package/dist/types/components/eds-steps-v2/eds-steps-v2.d.ts +14 -1
  390. package/dist/types/components/eds-steps-v2/eds-steps-v2.stories.d.ts +40 -9
  391. package/dist/types/components/eds-switch/eds-switch.d.ts +6 -2
  392. package/dist/types/components/eds-switch/eds-switch.stories.d.ts +8 -0
  393. package/dist/types/components/eds-table/eds-table.d.ts +8 -14
  394. package/dist/types/components/eds-table/eds-table.stories.d.ts +0 -107
  395. package/dist/types/components/eds-tabs/eds-tabs.d.ts +10 -0
  396. package/dist/types/components/eds-toast/eds-toast.d.ts +33 -1
  397. package/dist/types/components/eds-toast/eds-toast.stories.d.ts +49 -1
  398. package/dist/types/components/eds-user/eds-user.d.ts +0 -2
  399. package/dist/types/components/eds-user/eds-user.stories.d.ts +5 -9
  400. package/dist/types/components.d.ts +715 -144
  401. package/dist/types/shared-ui/eds-global-search/eds-global-search.d.ts +12 -0
  402. package/dist/types/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.d.ts +60 -0
  403. package/dist/types/shared-ui/eds-search-select/eds-search-select.d.ts +98 -0
  404. package/dist/types/shared-ui/eds-search-select/eds-search-select.stories.d.ts +81 -0
  405. package/dist/types/shared-ui/eds-trl-badge/ebrains-mark.d.ts +7 -0
  406. package/dist/types/shared-ui/eds-trl-badge/eds-trl-badge.d.ts +54 -0
  407. package/dist/types/shared-ui/eds-trl-badge/eds-trl-badge.stories.d.ts +112 -0
  408. package/dist/types/utils/eds-form/safeFormat.d.ts +21 -0
  409. package/package.json +1 -1
  410. package/dist/components/p-0fe10e6c.entry.js +0 -1
  411. package/dist/components/p-18e852e1.entry.js +0 -1
  412. package/dist/components/p-3ccd6948.entry.js +0 -1
  413. package/dist/components/p-3d3841d6.entry.js +0 -1
  414. package/dist/components/p-3f38df99.entry.js +0 -1
  415. package/dist/components/p-527e71d0.entry.js +0 -1
  416. package/dist/components/p-55047f7f.entry.js +0 -9
  417. package/dist/components/p-64c23098.entry.js +0 -1
  418. package/dist/components/p-74b9c9a8.entry.js +0 -1
  419. package/dist/components/p-878f65a6.entry.js +0 -1
  420. package/dist/components/p-92f6d9c0.entry.js +0 -1
  421. package/dist/components/p-9eedf771.entry.js +0 -1
  422. package/dist/components/p-b4355cec.entry.js +0 -1
  423. package/dist/components/p-d2f17fac.entry.js +0 -1
  424. package/dist/components/p-db5eea95.entry.js +0 -1
  425. package/dist/components/p-e205c269.entry.js +0 -1
  426. package/dist/components/p-f55dd314.entry.js +0 -1
  427. package/dist/components/p-f88b5f21.entry.js +0 -1
@@ -86,10 +86,18 @@
86
86
  margin-top: 1.25rem;
87
87
  }
88
88
 
89
+ .mt-24 {
90
+ margin-top: 1.5rem;
91
+ }
92
+
89
93
  .mt-32 {
90
94
  margin-top: 2rem;
91
95
  }
92
96
 
97
+ .mt-48 {
98
+ margin-top: 3rem;
99
+ }
100
+
93
101
  .mt-64 {
94
102
  margin-top: 4rem;
95
103
  }
@@ -98,6 +106,10 @@
98
106
  margin-bottom: 2rem;
99
107
  }
100
108
 
109
+ .mb-48 {
110
+ margin-bottom: 3rem;
111
+ }
112
+
101
113
  .pt-28 {
102
114
  padding-top: 1.75rem;
103
115
  }
@@ -153,6 +165,443 @@
153
165
  animation: fadeInUp 0.6s ease;
154
166
  }
155
167
 
168
+ /* ============================================================
169
+ BRAND STYLE — hero-headed card (formStyle="brand")
170
+ ============================================================ */
171
+ .form-brand-card {
172
+ /* Semantic tokens — defined once, used only for meaning (lifecycle state,
173
+ validation), never decoration. Green stays the brand and never signals
174
+ "safe"/"blocked". --warn on dark headers uses a lighter amber/red for
175
+ contrast; --danger-strong is the on-light footer/validation red. */
176
+ --warn: #ffb22c;
177
+ --warn-strong: #b26b00;
178
+ --danger: #ff6b5b;
179
+ --danger-strong: #c0392b;
180
+
181
+ background: var(--white, #fff);
182
+ border: 1px solid var(--line-color, #e2e2e2);
183
+ border-radius: 20px;
184
+ overflow: hidden;
185
+ box-shadow: 0 30px 60px -34px rgba(7, 20, 13, 0.32);
186
+ animation: fadeInUp 0.6s ease;
187
+ }
188
+
189
+ /* ── Dark hero header ── */
190
+ .form-brand-header {
191
+ position: relative;
192
+ overflow: hidden;
193
+ background: var(--brand-black, #07140d);
194
+ color: #fff;
195
+ padding: 38px 40px 34px;
196
+ }
197
+ .fbh-grid {
198
+ position: absolute;
199
+ inset: 0;
200
+ background-image:
201
+ linear-gradient(rgba(255, 255, 255, 0.1) 1px, transparent 1px),
202
+ linear-gradient(90deg, rgba(255, 255, 255, 0.1) 1px, transparent 1px);
203
+ background-size: 42px 42px;
204
+ -webkit-mask-image: radial-gradient(130% 110% at 15% 0%, #000, transparent 72%);
205
+ mask-image: radial-gradient(130% 110% at 15% 0%, #000, transparent 72%);
206
+ opacity: 0.5;
207
+ pointer-events: none;
208
+ }
209
+ .fbh-glow {
210
+ position: absolute;
211
+ top: -50%;
212
+ right: -12%;
213
+ width: 420px;
214
+ height: 420px;
215
+ background: radial-gradient(circle, rgba(0, 255, 157, 0.16), transparent 62%);
216
+ pointer-events: none;
217
+ }
218
+ /* Lifecycle glow tints — open (green, default), expiring (amber), closed (red). */
219
+ .fbh-glow--expiring {
220
+ background: radial-gradient(circle, rgba(255, 178, 44, 0.13), transparent 62%);
221
+ }
222
+ .fbh-glow--closed {
223
+ background: radial-gradient(circle, rgba(192, 57, 43, 0.14), transparent 62%);
224
+ }
225
+ .fbh-in {
226
+ position: relative;
227
+ }
228
+ .fbh-brand {
229
+ display: flex;
230
+ align-items: center;
231
+ gap: 10px;
232
+ margin-bottom: 24px;
233
+ }
234
+ .fbh-mark {
235
+ width: 30px;
236
+ height: 30px;
237
+ border-radius: 50%;
238
+ background: linear-gradient(150deg, #00ff9d, #00c87b 55%, #0a8f5a);
239
+ display: flex;
240
+ align-items: center;
241
+ justify-content: center;
242
+ }
243
+ .fbh-mark svg {
244
+ width: 19px;
245
+ height: 19px;
246
+ }
247
+ .fbh-word {
248
+ font-weight: 600;
249
+ font-size: 16px;
250
+ letter-spacing: 0.04em;
251
+ }
252
+ /* The logo SVG has a viewBox but no intrinsic width, so it needs a sized block
253
+ parent to render (same reason eds-header wraps it in w-[250px]). */
254
+ .fbh-logo {
255
+ width: 150px;
256
+ margin-bottom: 22px;
257
+ }
258
+ .fbh-eyebrow {
259
+ font-family: 'IBM Plex Mono', monospace;
260
+ font-size: 11px;
261
+ letter-spacing: 0.15em;
262
+ text-transform: uppercase;
263
+ color: var(--brand-green, #00ff9d);
264
+ display: inline-flex;
265
+ align-items: center;
266
+ gap: 7px;
267
+ }
268
+ .fbh-eyebrow svg {
269
+ width: 12px;
270
+ height: 12px;
271
+ stroke: currentColor;
272
+ fill: none;
273
+ stroke-width: 2;
274
+ flex: 0 0 12px;
275
+ }
276
+ /* Lifecycle eyebrow colours (open keeps brand green). */
277
+ .fbh-eyebrow--expiring {
278
+ color: var(--warn, #ffb22c);
279
+ }
280
+ .fbh-eyebrow--closed {
281
+ color: var(--danger, #ff6b5b);
282
+ }
283
+ .fbh-title {
284
+ font-weight: 200;
285
+ font-size: clamp(26px, 4vw, 36px);
286
+ letter-spacing: -0.02em;
287
+ line-height: 1.08;
288
+ margin-bottom: 12px;
289
+ }
290
+ .fbh-sub {
291
+ font-size: 14.5px;
292
+ color: rgba(235, 242, 238, 0.62);
293
+ font-weight: 300;
294
+ max-width: 72ch;
295
+ line-height: 1.55;
296
+ }
297
+ .fbh-meta {
298
+ display: flex;
299
+ gap: 22px;
300
+ margin-top: 22px;
301
+ flex-wrap: wrap;
302
+ }
303
+ .fbh-meta span {
304
+ display: inline-flex;
305
+ align-items: center;
306
+ gap: 7px;
307
+ font-family: 'IBM Plex Mono', monospace;
308
+ font-size: 10.5px;
309
+ letter-spacing: 0.06em;
310
+ text-transform: uppercase;
311
+ color: rgba(235, 242, 238, 0.62);
312
+ }
313
+ .fbh-meta svg {
314
+ width: 13px;
315
+ height: 13px;
316
+ stroke: var(--brand-green, #00ff9d);
317
+ fill: none;
318
+ stroke-width: 1.8;
319
+ }
320
+ /* Lifecycle meta-chip colours — one token changes; the rest stay neutral. */
321
+ .fbh-meta span.is-warn {
322
+ color: var(--warn, #ffb22c);
323
+ }
324
+ .fbh-meta span.is-warn svg {
325
+ stroke: var(--warn, #ffb22c);
326
+ }
327
+ .fbh-meta span.is-danger {
328
+ color: var(--danger, #ff6b5b);
329
+ }
330
+ .fbh-meta span.is-danger svg {
331
+ stroke: var(--danger, #ff6b5b);
332
+ }
333
+
334
+ /* Estimated-time hint shown ABOVE the title on non-brand (default/shadow)
335
+ forms — the light-theme counterpart of the brand hero's .fbh-meta chip.
336
+ Kept subtle (uppercase mono, muted) so it reads as metadata, not a heading. */
337
+ .form-meta-time {
338
+ display: inline-flex;
339
+ align-items: center;
340
+ gap: 7px;
341
+ width: fit-content;
342
+ font-family: 'IBM Plex Mono', monospace;
343
+ font-size: 10.5px;
344
+ letter-spacing: 0.06em;
345
+ text-transform: uppercase;
346
+ color: var(--grey-dark);
347
+ }
348
+ .form-meta-time svg {
349
+ width: 13px;
350
+ height: 13px;
351
+ stroke: currentColor;
352
+ fill: none;
353
+ stroke-width: 1.8;
354
+ stroke-linecap: round;
355
+ stroke-linejoin: round;
356
+ flex-shrink: 0;
357
+ }
358
+
359
+ /* ── Light, fillable body ── */
360
+ .form-brand-body {
361
+ /* Bottom padding intentionally ~30px (not the mockup's 8px): our fields use a
362
+ `gap` stack which adds no trailing margin after the last field, so the body
363
+ itself must provide the breathing room before the footer's top border. */
364
+ padding: var(--eds-form-padding, 34px 40px 30px);
365
+ /* Brand accent for the slotted field components (inherits across their shadow
366
+ boundaries). Field components read var(--eds-field-accent, <their default>),
367
+ so this only tints them inside a brand form. */
368
+ --eds-field-accent: #00c87b;
369
+ }
370
+ /* Closed form: the body desaturates so the (now disabled) fields read as
371
+ inactive — the form expresses its own dead state. */
372
+ .form-brand-body--closed {
373
+ opacity: 0.55;
374
+ }
375
+ .form-sect {
376
+ margin-bottom: 30px;
377
+ }
378
+ .form-sect:last-child {
379
+ margin-bottom: 0;
380
+ }
381
+ .form-sect-head {
382
+ display: flex;
383
+ align-items: center;
384
+ gap: 9px;
385
+ margin-bottom: 18px;
386
+ padding-bottom: 12px;
387
+ border-bottom: 1px solid var(--line-color, #e2e2e2);
388
+ }
389
+ .form-sect-glyph {
390
+ color: #00c87b;
391
+ display: inline-flex;
392
+ }
393
+ .form-sect-glyph svg {
394
+ width: 14px;
395
+ height: 14px;
396
+ stroke: currentColor;
397
+ fill: none;
398
+ stroke-width: 2;
399
+ }
400
+ .form-sect-label {
401
+ font-family: 'IBM Plex Mono', monospace;
402
+ font-size: 11px;
403
+ letter-spacing: 0.12em;
404
+ text-transform: uppercase;
405
+ color: var(--brand-black, #07140d);
406
+ }
407
+
408
+ /* ── Footer ── */
409
+ .form-brand-footer {
410
+ display: flex;
411
+ align-items: center;
412
+ justify-content: space-between;
413
+ gap: 18px;
414
+ padding: 24px 40px;
415
+ border-top: 1px solid var(--line-color, #e2e2e2);
416
+ background: #fcfcfc;
417
+ flex-wrap: wrap;
418
+ }
419
+ .form-brand-footer-actions {
420
+ display: flex;
421
+ align-items: center;
422
+ gap: 12px;
423
+ }
424
+ .req-note {
425
+ font-family: 'IBM Plex Mono', monospace;
426
+ font-size: 10.5px;
427
+ letter-spacing: 0.06em;
428
+ text-transform: uppercase;
429
+ color: #8a8c8a;
430
+ }
431
+ .req-note b {
432
+ color: #00c87b;
433
+ }
434
+
435
+ /* ── Footer left cluster: autosave state · separator · required note ── */
436
+ .fbf-left {
437
+ display: flex;
438
+ align-items: center;
439
+ gap: 12px;
440
+ min-width: 0;
441
+ }
442
+ .fbf-save {
443
+ display: inline-flex;
444
+ align-items: center;
445
+ gap: 9px;
446
+ font-family: 'IBM Plex Mono', monospace;
447
+ font-size: 10.5px;
448
+ letter-spacing: 0.07em;
449
+ text-transform: uppercase;
450
+ color: #8a8c8a;
451
+ transition: color 0.2s;
452
+ white-space: nowrap;
453
+ }
454
+ .fbf-save-dot {
455
+ width: 7px;
456
+ height: 7px;
457
+ border-radius: 50%;
458
+ background: #00c87b;
459
+ flex: 0 0 7px;
460
+ transition: background 0.2s;
461
+ }
462
+ .fbf-save--saving {
463
+ color: #7a7b7a;
464
+ }
465
+ .fbf-save--saving .fbf-save-dot {
466
+ background: #7a7b7a;
467
+ animation: fbfPulse 1s ease-in-out infinite;
468
+ }
469
+ .fbf-save--error {
470
+ color: var(--danger-strong, #c0392b);
471
+ }
472
+ .fbf-save--error .fbf-save-dot {
473
+ background: var(--danger-strong, #c0392b);
474
+ }
475
+ @keyframes fbfPulse {
476
+ 0%, 100% { opacity: 1; }
477
+ 50% { opacity: 0.25; }
478
+ }
479
+ .fbf-sep {
480
+ width: 1px;
481
+ height: 13px;
482
+ background: var(--line-color, #e2e2e2);
483
+ flex: 0 0 1px;
484
+ }
485
+
486
+ /* Clear form — a quiet text link (destructive shouldn't share weight with the
487
+ primary submit); confirms inline rather than in a dialog. */
488
+ .fbf-clear {
489
+ font-family: 'IBM Plex Sans', system-ui, sans-serif;
490
+ font-size: 13.5px;
491
+ color: var(--body-l, #5a5f5c);
492
+ cursor: pointer;
493
+ background: none;
494
+ border: none;
495
+ padding: 6px 2px;
496
+ transition: color 0.15s;
497
+ }
498
+ .fbf-clear:hover:not(:disabled) {
499
+ color: var(--danger-strong, #c0392b);
500
+ }
501
+ .fbf-clear:disabled {
502
+ opacity: 0.4;
503
+ cursor: not-allowed;
504
+ }
505
+ .fbf-confirm {
506
+ display: flex;
507
+ align-items: center;
508
+ gap: 14px;
509
+ flex-wrap: wrap;
510
+ }
511
+ .fbf-confirm-q {
512
+ font-size: 13.5px;
513
+ color: var(--danger-strong, #c0392b);
514
+ display: inline-flex;
515
+ align-items: center;
516
+ gap: 8px;
517
+ }
518
+ .fbf-confirm-q svg {
519
+ width: 15px;
520
+ height: 15px;
521
+ stroke: currentColor;
522
+ fill: none;
523
+ stroke-width: 2;
524
+ flex: 0 0 15px;
525
+ }
526
+ .fbf-confirm-no {
527
+ font-family: 'IBM Plex Sans', system-ui, sans-serif;
528
+ font-size: 13.5px;
529
+ color: var(--body-l, #5a5f5c);
530
+ cursor: pointer;
531
+ background: none;
532
+ border: none;
533
+ }
534
+ .fbf-confirm-no:hover {
535
+ color: var(--brand-black, #07140d);
536
+ }
537
+ .fbf-confirm-yes {
538
+ font-family: 'IBM Plex Sans', system-ui, sans-serif;
539
+ font-size: 13.5px;
540
+ font-weight: 500;
541
+ cursor: pointer;
542
+ border-radius: 999px;
543
+ padding: 9px 16px;
544
+ background: #fdf0ee;
545
+ color: var(--danger-strong, #c0392b);
546
+ border: 1px solid #f2cfc9;
547
+ transition: 0.15s;
548
+ }
549
+ .fbf-confirm-yes:hover {
550
+ background: var(--danger-strong, #c0392b);
551
+ color: #fff;
552
+ border-color: var(--danger-strong, #c0392b);
553
+ }
554
+
555
+ /* Closed footer: a red lock note replaces "* Required fields". Uses the
556
+ on-light danger token for contrast against the light footer. */
557
+ .req-note--closed {
558
+ display: inline-flex;
559
+ align-items: center;
560
+ gap: 7px;
561
+ color: var(--danger-strong, #c0392b);
562
+ }
563
+ .req-note--closed svg {
564
+ width: 13px;
565
+ height: 13px;
566
+ stroke: currentColor;
567
+ fill: none;
568
+ stroke-width: 2;
569
+ flex: 0 0 13px;
570
+ }
571
+
572
+ @media (max-width: 600px) {
573
+ .form-brand-header,
574
+ .form-brand-footer {
575
+ padding-left: 24px;
576
+ padding-right: 24px;
577
+ }
578
+ .form-brand-body {
579
+ padding: var(--eds-form-padding, 28px 24px 28px);
580
+ }
581
+ /* Footer stacks with the actions (Clear · Submit) ON TOP, then the autosave
582
+ state + required note below them. */
583
+ .form-brand-footer {
584
+ align-items: flex-start;
585
+ flex-direction: column-reverse;
586
+ gap: 20px;
587
+ padding-top: 22px;
588
+ }
589
+ .form-brand-footer-actions,
590
+ .fbf-confirm {
591
+ width: 100%;
592
+ justify-content: space-between;
593
+ }
594
+ /* Save state + separator + required note sit on their own wrapping row,
595
+ divided from the actions above by a hairline. */
596
+ .fbf-left {
597
+ flex-wrap: wrap;
598
+ row-gap: 8px;
599
+ width: 100%;
600
+ padding-top: 20px;
601
+ border-top: 1px solid var(--line-color, #e2e2e2);
602
+ }
603
+ }
604
+
156
605
  @keyframes fadeInUp {
157
606
  from {
158
607
  opacity: 0;
@@ -264,4 +713,47 @@
264
713
  .md\:pt-64 {
265
714
  padding-top: 4rem;
266
715
  }
267
- }
716
+ }
717
+ /* Inline links in the form/step description and Text Blocks — exact match of
718
+ eds-link's "underline" intent (.animated-underline): green bar animates in
719
+ on hover. */
720
+ .eds-desc-link {
721
+ position: relative;
722
+ display: inline-block;
723
+ color: var(--brand-black);
724
+ text-decoration: none;
725
+ }
726
+ .eds-desc-link::after {
727
+ content: '';
728
+ position: absolute;
729
+ bottom: -2px;
730
+ left: 0;
731
+ width: 0;
732
+ height: 2px;
733
+ background-color: var(--brand-green);
734
+ transition: width 0.3s ease;
735
+ }
736
+ .eds-desc-link:hover::after {
737
+ width: 100%;
738
+ }
739
+ .eds-desc-link:focus-visible::after {
740
+ width: 0;
741
+ }
742
+ /* On the dark brand hero the on-light brand-black link colour is invisible.
743
+ Links in the hero description render white — a step up from the muted sub
744
+ copy, so they read as links — and keep the green grow-underline on hover. */
745
+ .fbh-sub .eds-desc-link {
746
+ color: #fff;
747
+ font-weight: 400;
748
+ }
749
+
750
+ /* Presentational "Text Block" field (type=content): body text the author drops
751
+ anywhere in the form. Links inside reuse .eds-desc-link above. */
752
+ .eds-content-block {
753
+ line-height: 1.5;
754
+ color: var(--brand-black, #07140d);
755
+ }
756
+ .eds-content-block strong { font-weight: 600; }
757
+ /* In Text Blocks, make links a touch bolder than body text so they read as
758
+ links at a glance (the eds-link underline still animates on hover). */
759
+ .eds-content-block .eds-desc-link { font-weight: 600; }