@boostdev/design-system-components 2.8.0 → 2.11.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 (534) hide show
  1. package/AGENTS.md +54 -46
  2. package/README.md +34 -20
  3. package/dist/client.cjs +1317 -779
  4. package/dist/client.css +1029 -812
  5. package/dist/client.d.cts +88 -26
  6. package/dist/client.d.ts +88 -26
  7. package/dist/client.js +1278 -732
  8. package/dist/index.cjs +1317 -779
  9. package/dist/index.css +1029 -812
  10. package/dist/index.d.cts +88 -26
  11. package/dist/index.d.ts +88 -26
  12. package/dist/index.js +1278 -732
  13. package/dist/web-components/chunk-2OLVQUBU.js +193 -0
  14. package/dist/web-components/{chunk-OF6FFGOT.js → chunk-3AY2YKCM.js} +77 -21
  15. package/dist/web-components/chunk-3WAV6MDN.js +212 -0
  16. package/dist/web-components/{chunk-UUKSDCYS.js → chunk-47AT5KZD.js} +87 -15
  17. package/dist/web-components/chunk-4A2YYTYN.js +93 -0
  18. package/dist/web-components/{chunk-Q4T5BJT6.js → chunk-62NK3ZSC.js} +18 -3
  19. package/dist/web-components/chunk-66M6ETWD.js +77 -0
  20. package/dist/web-components/{chunk-NCPQ7AF3.js → chunk-6G22I2CK.js} +18 -3
  21. package/dist/web-components/{chunk-QDST57JC.js → chunk-7ZOJ7N4E.js} +14 -4
  22. package/dist/web-components/{chunk-QLT6MTZF.js → chunk-AIBOHNDU.js} +10 -0
  23. package/dist/web-components/{chunk-X3NQMBAQ.js → chunk-AP4RDUL2.js} +14 -3
  24. package/dist/web-components/{chunk-QWPACK5L.js → chunk-BPYKZVDK.js} +11 -1
  25. package/dist/web-components/{chunk-YLVTEY23.js → chunk-BTCMJQKB.js} +53 -21
  26. package/dist/web-components/chunk-CUKQ2L5B.js +245 -0
  27. package/dist/web-components/chunk-DIZDCL7Z.js +14 -0
  28. package/dist/web-components/{chunk-PC3IOQAH.js → chunk-DV5T43ZC.js} +27 -7
  29. package/dist/web-components/{chunk-2QA62WCQ.js → chunk-EF7IVYTY.js} +10 -0
  30. package/dist/web-components/{chunk-L3XHOMN6.js → chunk-F3ZDNHZZ.js} +26 -1
  31. package/dist/web-components/chunk-FEDABOR5.js +248 -0
  32. package/dist/web-components/{chunk-6I2DBFQ7.js → chunk-HGFCJXOQ.js} +36 -5
  33. package/dist/web-components/{chunk-SOQQ7RVJ.js → chunk-IPGHUCJT.js} +23 -8
  34. package/dist/web-components/chunk-ITD2MV5K.js +392 -0
  35. package/dist/web-components/{chunk-ARMKC4BQ.js → chunk-JH6LQKLK.js} +77 -5
  36. package/dist/web-components/chunk-JMCXAAFK.js +120 -0
  37. package/dist/web-components/{chunk-KUI55GFB.js → chunk-JUPCZVVW.js} +50 -18
  38. package/dist/web-components/chunk-JV5QT2OU.js +146 -0
  39. package/dist/web-components/{chunk-3GFWLSLS.js → chunk-KA3VPKMY.js} +29 -6
  40. package/dist/web-components/{chunk-CR5PGUHV.js → chunk-KJGRFDFI.js} +26 -11
  41. package/dist/web-components/{chunk-PY62FTRW.js → chunk-KZPRFY5P.js} +68 -33
  42. package/dist/web-components/{chunk-X46KL5BK.js → chunk-LDIPCTRN.js} +18 -1
  43. package/dist/web-components/chunk-M3ECULRH.js +174 -0
  44. package/dist/web-components/chunk-NBN2ENWJ.js +90 -0
  45. package/dist/web-components/chunk-NIN3JO6Q.js +189 -0
  46. package/dist/web-components/{chunk-2FGATTGT.js → chunk-NTQ4TCUT.js} +76 -55
  47. package/dist/web-components/chunk-OY74D4X6.js +302 -0
  48. package/dist/web-components/{chunk-3S42DZ7W.js → chunk-P24JYC5V.js} +7 -0
  49. package/dist/web-components/{chunk-BKIHQYJR.js → chunk-PXPPKCLT.js} +17 -2
  50. package/dist/web-components/{chunk-TQ7IQ4GZ.js → chunk-QEF2IRID.js} +71 -29
  51. package/dist/web-components/chunk-QZAIRJ75.js +111 -0
  52. package/dist/web-components/{chunk-6I3CFC26.js → chunk-RSZ3BWBK.js} +20 -5
  53. package/dist/web-components/chunk-RVF7W653.js +101 -0
  54. package/dist/web-components/chunk-SEO2F5KJ.js +234 -0
  55. package/dist/web-components/{chunk-VMMVWLXL.js → chunk-SFZ6Q4BP.js} +10 -0
  56. package/dist/web-components/{chunk-LY62SAVN.js → chunk-SYNLFKD3.js} +12 -2
  57. package/dist/web-components/chunk-TMWXRHGF.js +192 -0
  58. package/dist/web-components/{chunk-65JXQOBA.js → chunk-U3YZE6R6.js} +51 -7
  59. package/dist/web-components/chunk-UO7ROSHD.js +424 -0
  60. package/dist/web-components/chunk-VANAKB6D.js +152 -0
  61. package/dist/web-components/{chunk-PXZWYO6Z.js → chunk-VED2DFJ6.js} +108 -29
  62. package/dist/web-components/chunk-W6H5ID2U.js +161 -0
  63. package/dist/web-components/{chunk-FSZRP43R.js → chunk-WFVKU4GX.js} +21 -10
  64. package/dist/web-components/{chunk-OQTRTMAB.js → chunk-WIBAN7KP.js} +10 -0
  65. package/dist/web-components/chunk-XI7KRAH7.js +54 -0
  66. package/dist/web-components/{chunk-ORC56MDY.js → chunk-XIZWAWMJ.js} +45 -6
  67. package/dist/web-components/{chunk-FXURM6D5.js → chunk-YFAXGRPR.js} +10 -0
  68. package/dist/web-components/globals.js +1 -1
  69. package/dist/web-components/index.d.ts +77 -707
  70. package/dist/web-components/index.js +339 -2066
  71. package/dist/web-components/interaction/bds-accordion-item.js +1 -1
  72. package/dist/web-components/interaction/bds-accordion.js +1 -1
  73. package/dist/web-components/interaction/bds-button.d.ts +10 -2
  74. package/dist/web-components/interaction/bds-button.js +1 -1
  75. package/dist/web-components/interaction/bds-collapsible.d.ts +7 -2
  76. package/dist/web-components/interaction/bds-collapsible.js +1 -1
  77. package/dist/web-components/interaction/bds-dialog.d.ts +11 -3
  78. package/dist/web-components/interaction/bds-dialog.js +1 -1
  79. package/dist/web-components/interaction/bds-drawer.d.ts +7 -1
  80. package/dist/web-components/interaction/bds-drawer.js +1 -1
  81. package/dist/web-components/interaction/bds-dropdown-menu-item.d.ts +51 -0
  82. package/dist/web-components/interaction/bds-dropdown-menu-item.js +7 -0
  83. package/dist/web-components/interaction/bds-dropdown-menu.d.ts +70 -0
  84. package/dist/web-components/interaction/bds-dropdown-menu.js +7 -0
  85. package/dist/web-components/interaction/bds-popover.d.ts +14 -3
  86. package/dist/web-components/interaction/bds-popover.js +1 -1
  87. package/dist/web-components/interaction/bds-skip-link.js +1 -1
  88. package/dist/web-components/interaction/bds-tab-panel.js +1 -1
  89. package/dist/web-components/interaction/bds-tab.js +1 -1
  90. package/dist/web-components/interaction/bds-tabs.d.ts +1 -0
  91. package/dist/web-components/interaction/bds-tabs.js +1 -1
  92. package/dist/web-components/interaction/bds-toast-provider.js +1 -1
  93. package/dist/web-components/interaction/bds-tooltip.d.ts +19 -3
  94. package/dist/web-components/interaction/bds-tooltip.js +1 -1
  95. package/dist/web-components/interaction/form/bds-checkbox-group.d.ts +83 -0
  96. package/dist/web-components/interaction/form/bds-checkbox-group.js +7 -0
  97. package/dist/web-components/interaction/form/bds-checkbox.d.ts +6 -0
  98. package/dist/web-components/interaction/form/bds-checkbox.js +1 -1
  99. package/dist/web-components/interaction/form/bds-combobox.d.ts +18 -0
  100. package/dist/web-components/interaction/form/bds-combobox.js +1 -1
  101. package/dist/web-components/interaction/form/bds-field-group.d.ts +89 -0
  102. package/dist/web-components/interaction/form/bds-field-group.js +7 -0
  103. package/dist/web-components/interaction/form/bds-file-input.d.ts +1 -1
  104. package/dist/web-components/interaction/form/bds-file-input.js +1 -1
  105. package/dist/web-components/interaction/form/bds-form-input.d.ts +92 -0
  106. package/dist/web-components/interaction/form/bds-form-input.js +7 -0
  107. package/dist/web-components/interaction/form/bds-number-input.d.ts +18 -1
  108. package/dist/web-components/interaction/form/bds-number-input.js +1 -1
  109. package/dist/web-components/interaction/form/bds-radio-group.d.ts +81 -0
  110. package/dist/web-components/interaction/form/bds-radio-group.js +7 -0
  111. package/dist/web-components/interaction/form/bds-radio.d.ts +34 -6
  112. package/dist/web-components/interaction/form/bds-radio.js +1 -1
  113. package/dist/web-components/interaction/form/bds-segmented-control.d.ts +4 -4
  114. package/dist/web-components/interaction/form/bds-segmented-control.js +1 -1
  115. package/dist/web-components/interaction/form/bds-select.d.ts +22 -1
  116. package/dist/web-components/interaction/form/bds-select.js +1 -1
  117. package/dist/web-components/interaction/form/bds-slider.d.ts +42 -10
  118. package/dist/web-components/interaction/form/bds-slider.js +1 -1
  119. package/dist/web-components/interaction/form/bds-switch.d.ts +20 -0
  120. package/dist/web-components/interaction/form/bds-switch.js +1 -1
  121. package/dist/web-components/interaction/form/bds-textarea.d.ts +23 -3
  122. package/dist/web-components/interaction/form/bds-textarea.js +1 -1
  123. package/dist/web-components/layout/bds-grid-item.d.ts +63 -0
  124. package/dist/web-components/layout/bds-grid-item.js +7 -0
  125. package/dist/web-components/layout/bds-grid.d.ts +108 -0
  126. package/dist/web-components/layout/bds-grid.js +7 -0
  127. package/dist/web-components/ui/bds-alert.d.ts +16 -2
  128. package/dist/web-components/ui/bds-alert.js +1 -1
  129. package/dist/web-components/ui/bds-avatar.d.ts +2 -1
  130. package/dist/web-components/ui/bds-avatar.js +1 -1
  131. package/dist/web-components/ui/bds-badge.js +1 -1
  132. package/dist/web-components/ui/bds-breadcrumb.d.ts +3 -1
  133. package/dist/web-components/ui/bds-breadcrumb.js +1 -1
  134. package/dist/web-components/ui/bds-button-container.d.ts +52 -0
  135. package/dist/web-components/ui/bds-button-container.js +7 -0
  136. package/dist/web-components/ui/bds-button-group.d.ts +21 -0
  137. package/dist/web-components/ui/bds-button-group.js +8 -0
  138. package/dist/web-components/ui/bds-calendar.d.ts +121 -0
  139. package/dist/web-components/ui/bds-calendar.js +7 -0
  140. package/dist/web-components/ui/bds-card.d.ts +12 -3
  141. package/dist/web-components/ui/bds-card.js +1 -1
  142. package/dist/web-components/ui/bds-carousel.d.ts +98 -0
  143. package/dist/web-components/ui/bds-carousel.js +7 -0
  144. package/dist/web-components/ui/bds-description-list.js +1 -1
  145. package/dist/web-components/ui/bds-icon-wrapper.d.ts +0 -9
  146. package/dist/web-components/ui/bds-icon-wrapper.js +1 -1
  147. package/dist/web-components/ui/bds-link.js +1 -1
  148. package/dist/web-components/ui/bds-loading.js +1 -1
  149. package/dist/web-components/ui/bds-notification-banner.js +1 -1
  150. package/dist/web-components/ui/bds-pagination.d.ts +47 -0
  151. package/dist/web-components/ui/bds-pagination.js +7 -0
  152. package/dist/web-components/ui/bds-progress-circle.d.ts +3 -1
  153. package/dist/web-components/ui/bds-progress-circle.js +1 -1
  154. package/dist/web-components/ui/bds-progress.d.ts +3 -1
  155. package/dist/web-components/ui/bds-progress.js +1 -1
  156. package/dist/web-components/ui/bds-rating.js +1 -1
  157. package/dist/web-components/ui/bds-section-header.d.ts +18 -4
  158. package/dist/web-components/ui/bds-section-header.js +1 -1
  159. package/dist/web-components/ui/bds-separator.js +1 -1
  160. package/dist/web-components/ui/bds-skeleton.js +1 -1
  161. package/dist/web-components/ui/bds-table.d.ts +52 -0
  162. package/dist/web-components/ui/bds-table.js +7 -0
  163. package/dist/web-components/ui/bds-typography.d.ts +1 -0
  164. package/dist/web-components/ui/bds-typography.js +1 -1
  165. package/package.json +60 -3
  166. package/src/components/interaction/Button/Button.module.css +23 -14
  167. package/src/components/interaction/Button/Button.spec.tsx +20 -0
  168. package/src/components/interaction/Button/Button.tsx +2 -2
  169. package/src/components/interaction/Command/Command.mdx +5 -2
  170. package/src/components/interaction/Command/Command.module.css +23 -7
  171. package/src/components/interaction/Command/Command.spec.tsx +35 -0
  172. package/src/components/interaction/Command/Command.tsx +15 -4
  173. package/src/components/interaction/Command/index.ts +1 -1
  174. package/src/components/interaction/Dialog/Dialog.mdx +4 -4
  175. package/src/components/interaction/Dialog/Dialog.module.css +20 -0
  176. package/src/components/interaction/Dialog/Dialog.spec.tsx +20 -0
  177. package/src/components/interaction/Dialog/Dialog.tsx +8 -3
  178. package/src/components/interaction/Dialog/index.ts +1 -0
  179. package/src/components/interaction/Drawer/Drawer.mdx +5 -2
  180. package/src/components/interaction/Drawer/Drawer.module.css +34 -3
  181. package/src/components/interaction/Drawer/Drawer.spec.tsx +67 -1
  182. package/src/components/interaction/Drawer/Drawer.tsx +30 -12
  183. package/src/components/interaction/Drawer/index.ts +1 -0
  184. package/src/components/interaction/DropdownMenu/DropdownMenu.mdx +2 -0
  185. package/src/components/interaction/DropdownMenu/DropdownMenu.spec.tsx +34 -0
  186. package/src/components/interaction/DropdownMenu/DropdownMenu.tsx +15 -5
  187. package/src/components/interaction/DropdownMenu/index.ts +1 -0
  188. package/src/components/interaction/Popover/Popover.mdx +6 -2
  189. package/src/components/interaction/Popover/Popover.module.css +26 -18
  190. package/src/components/interaction/Popover/Popover.spec.tsx +38 -0
  191. package/src/components/interaction/Popover/Popover.tsx +19 -5
  192. package/src/components/interaction/Popover/index.ts +1 -0
  193. package/src/components/interaction/Rating/Rating.mdx +1 -1
  194. package/src/components/interaction/Rating/Rating.module.css +2 -2
  195. package/src/components/interaction/Rating/Rating.tsx +1 -1
  196. package/src/components/interaction/Rating/index.ts +1 -0
  197. package/src/components/interaction/Toast/Toast.mdx +3 -0
  198. package/src/components/interaction/Toast/Toast.module.css +35 -5
  199. package/src/components/interaction/Toast/Toast.spec.tsx +69 -1
  200. package/src/components/interaction/Toast/Toast.tsx +15 -9
  201. package/src/components/interaction/form/Checkbox/Checkbox.mdx +3 -0
  202. package/src/components/interaction/form/Checkbox/Checkbox.module.css +13 -6
  203. package/src/components/interaction/form/Checkbox/Checkbox.spec.tsx +6 -0
  204. package/src/components/interaction/form/Checkbox/Checkbox.tsx +1 -1
  205. package/src/components/interaction/form/CheckboxGroup/CheckboxGroup.mdx +16 -1
  206. package/src/components/interaction/form/CheckboxGroup/CheckboxGroup.module.css +24 -8
  207. package/src/components/interaction/form/CheckboxGroup/CheckboxGroup.spec.tsx +32 -2
  208. package/src/components/interaction/form/CheckboxGroup/CheckboxGroup.tsx +14 -2
  209. package/src/components/interaction/form/Combobox/Combobox.mdx +11 -4
  210. package/src/components/interaction/form/Combobox/Combobox.module.css +6 -6
  211. package/src/components/interaction/form/Combobox/Combobox.spec.tsx +47 -0
  212. package/src/components/interaction/form/Combobox/Combobox.tsx +10 -5
  213. package/src/components/interaction/form/FieldGroup/FieldGroup.mdx +9 -10
  214. package/src/components/interaction/form/FieldGroup/FieldGroup.module.css +57 -23
  215. package/src/components/interaction/form/FieldGroup/FieldGroup.spec.tsx +129 -7
  216. package/src/components/interaction/form/FieldGroup/FieldGroup.tsx +72 -12
  217. package/src/components/interaction/form/FileInput/FileInput.mdx +9 -1
  218. package/src/components/interaction/form/FileInput/FileInput.module.css +8 -8
  219. package/src/components/interaction/form/FileInput/FileInput.spec.tsx +89 -1
  220. package/src/components/interaction/form/FileInput/FileInput.tsx +6 -2
  221. package/src/components/interaction/form/FormInput/FormInput.mdx +9 -5
  222. package/src/components/interaction/form/FormInput/FormInput.module.css +17 -8
  223. package/src/components/interaction/form/FormInput/FormInput.spec.tsx +20 -0
  224. package/src/components/interaction/form/FormInput/FormInput.tsx +7 -2
  225. package/src/components/interaction/form/NumberInput/NumberInput.mdx +5 -1
  226. package/src/components/interaction/form/NumberInput/NumberInput.module.css +6 -6
  227. package/src/components/interaction/form/NumberInput/NumberInput.spec.tsx +51 -0
  228. package/src/components/interaction/form/NumberInput/NumberInput.tsx +36 -8
  229. package/src/components/interaction/form/Radio/Radio.mdx +8 -1
  230. package/src/components/interaction/form/Radio/Radio.module.css +20 -7
  231. package/src/components/interaction/form/Radio/Radio.spec.tsx +15 -0
  232. package/src/components/interaction/form/Radio/Radio.tsx +10 -4
  233. package/src/components/interaction/form/RadioGroup/RadioGroup.mdx +16 -1
  234. package/src/components/interaction/form/RadioGroup/RadioGroup.module.css +24 -8
  235. package/src/components/interaction/form/RadioGroup/RadioGroup.spec.tsx +32 -2
  236. package/src/components/interaction/form/RadioGroup/RadioGroup.tsx +14 -2
  237. package/src/components/interaction/form/SegmentedControl/SegmentedControl.mdx +9 -3
  238. package/src/components/interaction/form/SegmentedControl/SegmentedControl.module.css +25 -12
  239. package/src/components/interaction/form/SegmentedControl/SegmentedControl.spec.tsx +86 -5
  240. package/src/components/interaction/form/SegmentedControl/SegmentedControl.tsx +44 -4
  241. package/src/components/interaction/form/Select/Select.mdx +10 -4
  242. package/src/components/interaction/form/Select/Select.module.css +4 -4
  243. package/src/components/interaction/form/Select/Select.spec.tsx +34 -0
  244. package/src/components/interaction/form/Select/Select.tsx +21 -9
  245. package/src/components/interaction/form/Slider/Slider.mdx +4 -1
  246. package/src/components/interaction/form/Slider/Slider.module.css +32 -8
  247. package/src/components/interaction/form/Slider/Slider.spec.tsx +29 -0
  248. package/src/components/interaction/form/Slider/Slider.tsx +9 -7
  249. package/src/components/interaction/form/Switch/Switch.mdx +2 -2
  250. package/src/components/interaction/form/Switch/Switch.module.css +12 -13
  251. package/src/components/interaction/form/Switch/Switch.spec.tsx +20 -0
  252. package/src/components/interaction/form/Switch/Switch.tsx +2 -1
  253. package/src/components/interaction/form/Textarea/Textarea.mdx +5 -0
  254. package/src/components/interaction/form/Textarea/Textarea.module.css +5 -5
  255. package/src/components/interaction/form/Textarea/Textarea.spec.tsx +13 -0
  256. package/src/components/interaction/form/Textarea/Textarea.tsx +3 -1
  257. package/src/components/interaction/form/atoms/Message.module.css +1 -1
  258. package/src/components/interaction/form/atoms/Message.spec.tsx +29 -0
  259. package/src/components/interaction/form/atoms/Message.tsx +1 -1
  260. package/src/components/layout/ButtonGroup/ButtonGroup.mdx +11 -0
  261. package/src/components/layout/ButtonGroup/ButtonGroup.module.css +1 -5
  262. package/src/components/layout/ButtonGroup/ButtonGroup.stories.tsx +14 -0
  263. package/src/components/layout/Card/Card.mdx +6 -1
  264. package/src/components/layout/Card/Card.module.css +26 -5
  265. package/src/components/layout/Card/Card.spec.tsx +7 -0
  266. package/src/components/layout/Card/Card.tsx +4 -3
  267. package/src/components/layout/Grid/Grid.spec.tsx +44 -0
  268. package/src/components/layout/Grid/Grid.tsx +5 -5
  269. package/src/components/layout/Grid/GridItem.tsx +6 -6
  270. package/src/components/layout/Grid/masonry.ts +31 -5
  271. package/src/components/layout/Grid/useIsomorphicLayoutEffect.ts +11 -0
  272. package/src/components/layout/IconWrapper/IconWrapper.mdx +8 -2
  273. package/src/components/layout/IconWrapper/IconWrapper.module.css +9 -6
  274. package/src/components/layout/SectionHeader/SectionHeader.mdx +4 -1
  275. package/src/components/layout/SectionHeader/SectionHeader.module.css +10 -9
  276. package/src/components/ui/Accordion/Accordion.mdx +4 -1
  277. package/src/components/ui/Accordion/Accordion.module.css +2 -1
  278. package/src/components/ui/Alert/Alert.mdx +21 -4
  279. package/src/components/ui/Alert/Alert.module.css +9 -4
  280. package/src/components/ui/Alert/Alert.spec.tsx +20 -0
  281. package/src/components/ui/Avatar/Avatar.mdx +8 -3
  282. package/src/components/ui/Avatar/Avatar.module.css +13 -8
  283. package/src/components/ui/Badge/Badge.mdx +3 -1
  284. package/src/components/ui/Breadcrumb/Breadcrumb.mdx +3 -0
  285. package/src/components/ui/Breadcrumb/Breadcrumb.module.css +4 -0
  286. package/src/components/ui/Breadcrumb/Breadcrumb.spec.tsx +12 -0
  287. package/src/components/ui/Breadcrumb/Breadcrumb.tsx +11 -3
  288. package/src/components/ui/Calendar/Calendar.mdx +6 -0
  289. package/src/components/ui/Calendar/Calendar.module.css +68 -19
  290. package/src/components/ui/Calendar/Calendar.spec.tsx +139 -24
  291. package/src/components/ui/Calendar/Calendar.stories.tsx +14 -0
  292. package/src/components/ui/Calendar/Calendar.tsx +143 -154
  293. package/src/components/ui/Calendar/CalendarRange.mdx +39 -0
  294. package/src/components/ui/Calendar/CalendarRange.spec.tsx +119 -0
  295. package/src/components/ui/Calendar/CalendarRange.stories.tsx +51 -0
  296. package/src/components/ui/Calendar/CalendarRange.tsx +213 -0
  297. package/src/components/ui/Calendar/MonthGrid.tsx +141 -0
  298. package/src/components/ui/Calendar/calendar-core.spec.ts +176 -0
  299. package/src/components/ui/Calendar/calendar-core.ts +164 -0
  300. package/src/components/ui/Calendar/index.ts +1 -0
  301. package/src/components/ui/Carousel/Carousel.mdx +8 -3
  302. package/src/components/ui/Carousel/Carousel.module.css +7 -5
  303. package/src/components/ui/Carousel/Carousel.spec.tsx +67 -0
  304. package/src/components/ui/Carousel/Carousel.tsx +19 -7
  305. package/src/components/ui/Collapsible/Collapsible.mdx +17 -6
  306. package/src/components/ui/Collapsible/Collapsible.module.css +7 -2
  307. package/src/components/ui/Collapsible/Collapsible.spec.tsx +40 -0
  308. package/src/components/ui/Collapsible/Collapsible.tsx +19 -2
  309. package/src/components/ui/DescriptionList/DescriptionList.mdx +2 -0
  310. package/src/components/ui/Link/Link.mdx +4 -2
  311. package/src/components/ui/Loading/Loading.mdx +6 -3
  312. package/src/components/ui/Loading/Loading.module.css +7 -7
  313. package/src/components/ui/Loading/Loading.spec.tsx +12 -0
  314. package/src/components/ui/Loading/Loading.tsx +8 -3
  315. package/src/components/ui/NotificationBanner/NotificationBanner.mdx +4 -0
  316. package/src/components/ui/NotificationBanner/NotificationBanner.module.css +5 -0
  317. package/src/components/ui/NotificationBanner/NotificationBanner.spec.tsx +20 -0
  318. package/src/components/ui/Pagination/Pagination.mdx +29 -7
  319. package/src/components/ui/Pagination/Pagination.module.css +15 -14
  320. package/src/components/ui/Progress/Progress.mdx +6 -2
  321. package/src/components/ui/Progress/Progress.module.css +1 -1
  322. package/src/components/ui/Progress/Progress.spec.tsx +17 -0
  323. package/src/components/ui/Progress/Progress.tsx +2 -2
  324. package/src/components/ui/ProgressCircle/ProgressCircle.mdx +8 -4
  325. package/src/components/ui/ProgressCircle/ProgressCircle.module.css +2 -2
  326. package/src/components/ui/ProgressCircle/ProgressCircle.spec.tsx +11 -1
  327. package/src/components/ui/ProgressCircle/ProgressCircle.tsx +1 -1
  328. package/src/components/ui/Separator/Separator.mdx +7 -0
  329. package/src/components/ui/Separator/Separator.module.css +1 -0
  330. package/src/components/ui/Skeleton/Skeleton.mdx +17 -0
  331. package/src/components/ui/Skeleton/Skeleton.module.css +12 -5
  332. package/src/components/ui/SkipLink/SkipLink.mdx +19 -0
  333. package/src/components/ui/SkipLink/SkipLink.module.css +8 -7
  334. package/src/components/ui/SkipLink/SkipLink.spec.tsx +28 -0
  335. package/src/components/ui/Table/Table.mdx +14 -0
  336. package/src/components/ui/Table/Table.module.css +13 -8
  337. package/src/components/ui/Table/Table.spec.tsx +56 -0
  338. package/src/components/ui/Table/Table.tsx +44 -6
  339. package/src/components/ui/Tabs/Tabs.mdx +16 -0
  340. package/src/components/ui/Tabs/Tabs.module.css +3 -3
  341. package/src/components/ui/Tabs/Tabs.spec.tsx +20 -0
  342. package/src/components/ui/Tabs/Tabs.tsx +5 -1
  343. package/src/components/ui/Tooltip/Tooltip.mdx +9 -0
  344. package/src/components/ui/Tooltip/Tooltip.module.css +32 -12
  345. package/src/components/ui/Tooltip/Tooltip.spec.tsx +56 -0
  346. package/src/components/ui/Tooltip/Tooltip.tsx +26 -7
  347. package/src/components/ui/Typography/Typography.mdx +7 -0
  348. package/src/components/ui/Typography/Typography.module.css +5 -5
  349. package/src/index.ts +7 -3
  350. package/src/stories/DesignSystem/Borders.mdx +14 -9
  351. package/src/stories/DesignSystem/Colors.mdx +43 -41
  352. package/src/stories/DesignSystem/Overview.mdx +4 -3
  353. package/src/stories/Introduction.mdx +5 -5
  354. package/src/web-components/globals.ts +7 -0
  355. package/src/web-components/index.ts +2 -0
  356. package/src/web-components/interaction/BdsAccordion.mdx +10 -1
  357. package/src/web-components/interaction/BdsButton.mdx +15 -4
  358. package/src/web-components/interaction/BdsButton.stories.tsx +1 -1
  359. package/src/web-components/interaction/BdsCollapsible.mdx +3 -3
  360. package/src/web-components/interaction/BdsDialog.mdx +12 -7
  361. package/src/web-components/interaction/BdsDialog.stories.tsx +2 -2
  362. package/src/web-components/interaction/BdsDrawer.mdx +9 -6
  363. package/src/web-components/interaction/BdsDropdownMenu.mdx +20 -1
  364. package/src/web-components/interaction/BdsPopover.mdx +7 -3
  365. package/src/web-components/interaction/BdsSkipLink.mdx +14 -1
  366. package/src/web-components/interaction/BdsTabs.mdx +18 -1
  367. package/src/web-components/interaction/BdsToastProvider.mdx +21 -3
  368. package/src/web-components/interaction/BdsTooltip.mdx +4 -4
  369. package/src/web-components/interaction/bds-accordion-item.ts +10 -0
  370. package/src/web-components/interaction/bds-accordion.spec.ts +41 -0
  371. package/src/web-components/interaction/bds-accordion.ts +28 -2
  372. package/src/web-components/interaction/bds-button.spec.ts +81 -0
  373. package/src/web-components/interaction/bds-button.ts +55 -8
  374. package/src/web-components/interaction/bds-collapsible.spec.ts +93 -2
  375. package/src/web-components/interaction/bds-collapsible.ts +49 -7
  376. package/src/web-components/interaction/bds-dialog.spec.ts +49 -0
  377. package/src/web-components/interaction/bds-dialog.ts +68 -11
  378. package/src/web-components/interaction/bds-drawer.spec.ts +93 -4
  379. package/src/web-components/interaction/bds-drawer.ts +54 -21
  380. package/src/web-components/interaction/bds-dropdown-menu-item.ts +12 -1
  381. package/src/web-components/interaction/bds-dropdown-menu.spec.ts +63 -0
  382. package/src/web-components/interaction/bds-dropdown-menu.ts +45 -7
  383. package/src/web-components/interaction/bds-popover.spec.ts +80 -6
  384. package/src/web-components/interaction/bds-popover.ts +83 -32
  385. package/src/web-components/interaction/bds-skip-link.spec.ts +18 -0
  386. package/src/web-components/interaction/bds-skip-link.ts +29 -8
  387. package/src/web-components/interaction/bds-tab-panel.ts +10 -0
  388. package/src/web-components/interaction/bds-tab.spec.ts +25 -0
  389. package/src/web-components/interaction/bds-tab.ts +20 -5
  390. package/src/web-components/interaction/bds-tabs.spec.ts +92 -5
  391. package/src/web-components/interaction/bds-tabs.ts +42 -1
  392. package/src/web-components/interaction/bds-toast-provider.spec.ts +43 -0
  393. package/src/web-components/interaction/bds-toast-provider.ts +50 -21
  394. package/src/web-components/interaction/bds-tooltip.spec.ts +71 -0
  395. package/src/web-components/interaction/bds-tooltip.ts +100 -5
  396. package/src/web-components/interaction/form/BdsCheckbox.mdx +20 -1
  397. package/src/web-components/interaction/form/BdsCheckbox.stories.tsx +8 -0
  398. package/src/web-components/interaction/form/BdsCheckboxGroup.mdx +4 -3
  399. package/src/web-components/interaction/form/BdsCombobox.mdx +39 -2
  400. package/src/web-components/interaction/form/BdsCombobox.stories.tsx +31 -0
  401. package/src/web-components/interaction/form/BdsFieldGroup.mdx +8 -3
  402. package/src/web-components/interaction/form/BdsFieldGroup.stories.tsx +1 -1
  403. package/src/web-components/interaction/form/BdsFileInput.mdx +26 -5
  404. package/src/web-components/interaction/form/BdsFormInput.mdx +16 -1
  405. package/src/web-components/interaction/form/BdsNumberInput.mdx +34 -2
  406. package/src/web-components/interaction/form/BdsNumberInput.stories.tsx +27 -3
  407. package/src/web-components/interaction/form/BdsRadio.mdx +39 -12
  408. package/src/web-components/interaction/form/BdsRadio.stories.tsx +26 -0
  409. package/src/web-components/interaction/form/BdsRadioGroup.mdx +9 -4
  410. package/src/web-components/interaction/form/BdsSegmentedControl.mdx +37 -11
  411. package/src/web-components/interaction/form/BdsSelect.mdx +22 -4
  412. package/src/web-components/interaction/form/BdsSelect.stories.tsx +33 -0
  413. package/src/web-components/interaction/form/BdsSlider.mdx +36 -19
  414. package/src/web-components/interaction/form/BdsSlider.stories.tsx +24 -0
  415. package/src/web-components/interaction/form/BdsSwitch.mdx +38 -11
  416. package/src/web-components/interaction/form/BdsSwitch.stories.tsx +16 -0
  417. package/src/web-components/interaction/form/BdsTextarea.mdx +42 -16
  418. package/src/web-components/interaction/form/BdsTextarea.stories.tsx +21 -0
  419. package/src/web-components/interaction/form/bds-checkbox-group.spec.ts +99 -0
  420. package/src/web-components/interaction/form/bds-checkbox-group.ts +95 -9
  421. package/src/web-components/interaction/form/bds-checkbox.spec.ts +55 -0
  422. package/src/web-components/interaction/form/bds-checkbox.ts +30 -5
  423. package/src/web-components/interaction/form/bds-combobox.spec.ts +79 -0
  424. package/src/web-components/interaction/form/bds-combobox.ts +101 -16
  425. package/src/web-components/interaction/form/bds-field-group.spec.ts +158 -0
  426. package/src/web-components/interaction/form/bds-field-group.ts +167 -23
  427. package/src/web-components/interaction/form/bds-file-input.spec.ts +73 -5
  428. package/src/web-components/interaction/form/bds-file-input.ts +71 -34
  429. package/src/web-components/interaction/form/bds-form-input.spec.ts +22 -0
  430. package/src/web-components/interaction/form/bds-form-input.ts +27 -16
  431. package/src/web-components/interaction/form/bds-number-input.spec.ts +49 -0
  432. package/src/web-components/interaction/form/bds-number-input.ts +118 -29
  433. package/src/web-components/interaction/form/bds-radio-group.spec.ts +57 -0
  434. package/src/web-components/interaction/form/bds-radio-group.ts +60 -12
  435. package/src/web-components/interaction/form/bds-radio.spec.ts +123 -0
  436. package/src/web-components/interaction/form/bds-radio.ts +135 -22
  437. package/src/web-components/interaction/form/bds-segmented-control.spec.ts +55 -0
  438. package/src/web-components/interaction/form/bds-segmented-control.ts +81 -59
  439. package/src/web-components/interaction/form/bds-select.spec.ts +57 -0
  440. package/src/web-components/interaction/form/bds-select.ts +95 -7
  441. package/src/web-components/interaction/form/bds-slider.spec.ts +83 -0
  442. package/src/web-components/interaction/form/bds-slider.ts +154 -26
  443. package/src/web-components/interaction/form/bds-switch.spec.ts +68 -0
  444. package/src/web-components/interaction/form/bds-switch.ts +87 -20
  445. package/src/web-components/interaction/form/bds-textarea.spec.ts +71 -0
  446. package/src/web-components/interaction/form/bds-textarea.ts +108 -7
  447. package/src/web-components/layout/BdsGrid.mdx +6 -2
  448. package/src/web-components/layout/BdsGrid.stories.tsx +4 -0
  449. package/src/web-components/layout/bds-grid-item.spec.ts +21 -0
  450. package/src/web-components/layout/bds-grid-item.ts +17 -3
  451. package/src/web-components/layout/bds-grid.spec.ts +98 -0
  452. package/src/web-components/layout/bds-grid.ts +139 -19
  453. package/src/web-components/ui/BdsAlert.mdx +6 -5
  454. package/src/web-components/ui/BdsAlert.stories.tsx +6 -6
  455. package/src/web-components/ui/BdsAvatar.mdx +4 -2
  456. package/src/web-components/ui/BdsBreadcrumb.mdx +3 -2
  457. package/src/web-components/ui/BdsButtonContainer.mdx +64 -0
  458. package/src/web-components/ui/BdsButtonContainer.stories.tsx +84 -0
  459. package/src/web-components/ui/BdsCalendar.mdx +29 -4
  460. package/src/web-components/ui/BdsCalendar.stories.tsx +16 -18
  461. package/src/web-components/ui/BdsCalendarRange.mdx +71 -0
  462. package/src/web-components/ui/BdsCalendarRange.stories.tsx +31 -0
  463. package/src/web-components/ui/BdsCard.mdx +7 -3
  464. package/src/web-components/ui/BdsCard.stories.tsx +17 -1
  465. package/src/web-components/ui/BdsCarousel.mdx +40 -12
  466. package/src/web-components/ui/BdsDescriptionList.mdx +6 -1
  467. package/src/web-components/ui/BdsIconWrapper.mdx +3 -2
  468. package/src/web-components/ui/BdsLink.mdx +14 -2
  469. package/src/web-components/ui/BdsNotificationBanner.mdx +18 -0
  470. package/src/web-components/ui/BdsPagination.mdx +40 -1
  471. package/src/web-components/ui/BdsProgress.mdx +8 -2
  472. package/src/web-components/ui/BdsProgressCircle.mdx +5 -2
  473. package/src/web-components/ui/BdsRating.mdx +7 -0
  474. package/src/web-components/ui/BdsSectionHeader.mdx +22 -3
  475. package/src/web-components/ui/BdsSectionHeader.stories.tsx +15 -13
  476. package/src/web-components/ui/BdsTable.mdx +23 -2
  477. package/src/web-components/ui/BdsTable.stories.tsx +8 -2
  478. package/src/web-components/ui/BdsTypography.mdx +17 -1
  479. package/src/web-components/ui/bds-alert.spec.ts +17 -2
  480. package/src/web-components/ui/bds-alert.ts +31 -5
  481. package/src/web-components/ui/bds-avatar.spec.ts +29 -0
  482. package/src/web-components/ui/bds-avatar.ts +29 -11
  483. package/src/web-components/ui/bds-badge.spec.ts +5 -0
  484. package/src/web-components/ui/bds-badge.ts +11 -1
  485. package/src/web-components/ui/bds-breadcrumb.spec.ts +30 -0
  486. package/src/web-components/ui/bds-breadcrumb.ts +26 -4
  487. package/src/web-components/ui/bds-button-container.spec.ts +39 -0
  488. package/src/web-components/ui/bds-button-container.ts +123 -0
  489. package/src/web-components/ui/bds-button-group.spec.ts +14 -20
  490. package/src/web-components/ui/bds-button-group.ts +13 -64
  491. package/src/web-components/ui/bds-calendar-range.spec.ts +123 -0
  492. package/src/web-components/ui/bds-calendar-range.ts +307 -0
  493. package/src/web-components/ui/bds-calendar.spec.ts +176 -0
  494. package/src/web-components/ui/bds-calendar.ts +186 -344
  495. package/src/web-components/ui/bds-card.spec.ts +32 -0
  496. package/src/web-components/ui/bds-card.ts +34 -9
  497. package/src/web-components/ui/bds-carousel.spec.ts +147 -0
  498. package/src/web-components/ui/bds-carousel.ts +109 -32
  499. package/src/web-components/ui/bds-description-list.spec.ts +15 -0
  500. package/src/web-components/ui/bds-description-list.ts +37 -3
  501. package/src/web-components/ui/bds-icon-wrapper.spec.ts +12 -0
  502. package/src/web-components/ui/bds-icon-wrapper.ts +15 -14
  503. package/src/web-components/ui/bds-link.spec.ts +17 -0
  504. package/src/web-components/ui/bds-link.ts +26 -11
  505. package/src/web-components/ui/bds-loading.ts +10 -0
  506. package/src/web-components/ui/bds-notification-banner.spec.ts +13 -0
  507. package/src/web-components/ui/bds-notification-banner.ts +18 -1
  508. package/src/web-components/ui/bds-pagination.spec.ts +44 -0
  509. package/src/web-components/ui/bds-pagination.ts +39 -19
  510. package/src/web-components/ui/bds-progress-circle.spec.ts +21 -0
  511. package/src/web-components/ui/bds-progress-circle.ts +17 -5
  512. package/src/web-components/ui/bds-progress.spec.ts +21 -0
  513. package/src/web-components/ui/bds-progress.ts +17 -4
  514. package/src/web-components/ui/bds-rating.spec.ts +6 -0
  515. package/src/web-components/ui/bds-rating.ts +12 -2
  516. package/src/web-components/ui/bds-section-header.spec.ts +39 -8
  517. package/src/web-components/ui/bds-section-header.ts +47 -13
  518. package/src/web-components/ui/bds-separator.ts +10 -0
  519. package/src/web-components/ui/bds-skeleton.ts +10 -0
  520. package/src/web-components/ui/bds-table.spec.ts +63 -0
  521. package/src/web-components/ui/bds-table.ts +88 -28
  522. package/src/web-components/ui/bds-typography.spec.ts +47 -0
  523. package/src/web-components/ui/bds-typography.ts +28 -10
  524. package/src/web-components/ui/calendar-styles.ts +94 -0
  525. package/dist/web-components/chunk-7YURXHTS.js +0 -147
  526. package/dist/web-components/chunk-A3RLT3AS.js +0 -49
  527. package/dist/web-components/chunk-AGKJTMJI.js +0 -56
  528. package/dist/web-components/chunk-BQLZ7I4G.js +0 -56
  529. package/dist/web-components/chunk-DZOEPVFT.js +0 -107
  530. package/dist/web-components/chunk-JYYRJS2D.js +0 -118
  531. package/dist/web-components/chunk-Y4MAXTMA.js +0 -80
  532. package/dist/web-components/chunk-Y7V7LM6R.js +0 -98
  533. package/src/web-components/ui/BdsButtonGroup.mdx +0 -69
  534. package/src/web-components/ui/BdsButtonGroup.stories.tsx +0 -66
package/dist/index.css CHANGED
@@ -27,27 +27,27 @@
27
27
  }
28
28
 
29
29
  /* src/components/ui/Accordion/Accordion.module.css */
30
- @layer boostdev.bds280Accordion-component {
31
- .bds280Accordion-accordion {
30
+ @layer boostdev.bds2110Accordion-component {
31
+ .bds2110Accordion-accordion {
32
32
  display: flex;
33
33
  flex-direction: column;
34
34
  border: var(--accordion_border, none);
35
35
  --bdc_color: var(--bds-color_bg--subtle);
36
36
  --bdc-outline_radius: var(--bds-border_radius--s);
37
37
  border-radius: var(--accordion_radius, var(--bdc-outline_radius));
38
- box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
38
+ box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--accordion_shadow, var(--bdc-outline_shadow));
39
39
  overflow: hidden;
40
40
  }
41
- .bds280Accordion-item {
41
+ .bds2110Accordion-item {
42
42
  border-block-end: 1px solid var(--bds-color_bg--subtle);
43
43
  }
44
- .bds280Accordion-item:last-child {
44
+ .bds2110Accordion-item:last-child {
45
45
  border-block-end: none;
46
46
  }
47
- .bds280Accordion-heading {
47
+ .bds2110Accordion-heading {
48
48
  margin: 0;
49
49
  }
50
- .bds280Accordion-trigger {
50
+ .bds2110Accordion-trigger {
51
51
  all: unset;
52
52
  display: flex;
53
53
  align-items: center;
@@ -62,100 +62,100 @@
62
62
  transition: var(--bds-animation_transition);
63
63
  box-sizing: border-box;
64
64
  }
65
- .bds280Accordion-trigger:disabled {
65
+ .bds2110Accordion-trigger:disabled {
66
66
  opacity: 0.4;
67
67
  cursor: not-allowed;
68
68
  }
69
- .bds280Accordion-trigger:focus-visible {
69
+ .bds2110Accordion-trigger:focus-visible {
70
70
  outline: var(--bds-outline_default);
71
71
  outline-offset: calc(var(--bds-outline_offset) * -1);
72
72
  border-radius: var(--bds-border_radius--xs);
73
73
  }
74
74
  @media (hover: hover) and (pointer: fine) {
75
- .bds280Accordion-trigger:not(:disabled):hover {
75
+ .bds2110Accordion-trigger:not(:disabled):hover {
76
76
  background-color: var(--accordion_trigger-bg--hover, var(--bds-color_bg--subtle));
77
77
  }
78
78
  }
79
- .bds280Accordion-triggerLabel {
79
+ .bds2110Accordion-triggerLabel {
80
80
  flex: 1;
81
81
  text-align: start;
82
82
  }
83
- .bds280Accordion-chevron {
83
+ .bds2110Accordion-chevron {
84
84
  inline-size: 1.25rem;
85
85
  block-size: 1.25rem;
86
86
  flex-shrink: 0;
87
87
  transition: transform var(--bds-animation_transition-duration) var(--bds-animation_easing);
88
88
  }
89
- .bds280Accordion-item.bds280Accordion---open .bds280Accordion-chevron {
89
+ .bds2110Accordion-item.bds2110Accordion---open .bds2110Accordion-chevron {
90
90
  transform: rotate(180deg);
91
91
  }
92
- .bds280Accordion-panel {
92
+ .bds2110Accordion-panel {
93
93
  overflow: hidden;
94
94
  }
95
- .bds280Accordion-panelContent {
95
+ .bds2110Accordion-panelContent {
96
96
  padding: 0 var(--bds-space_m) var(--bds-space_m);
97
97
  color: var(--bds-color_on-bg);
98
98
  font-size: var(--bds-font_size--body);
99
99
  line-height: var(--bds-font_line-height--body);
100
100
  }
101
101
  @media (prefers-reduced-motion: reduce) {
102
- .bds280Accordion-chevron {
102
+ .bds2110Accordion-chevron {
103
103
  transition: none;
104
104
  }
105
105
  }
106
106
  }
107
107
 
108
108
  /* src/components/ui/Alert/Alert.module.css */
109
- @layer boostdev.bds280Alert-component {
110
- .bds280Alert-alert {
109
+ @layer boostdev.bds2110Alert-component {
110
+ .bds2110Alert-alert {
111
111
  display: flex;
112
112
  align-items: flex-start;
113
113
  gap: var(--bds-space_s);
114
114
  padding: var(--bds-space_m);
115
- border-radius: var(--bds-border_radius--s);
115
+ border-radius: var(--alert_radius, var(--bds-border_radius--s));
116
116
  background-color: var(--alert_bg, var(--alert_bg--variant, var(--bds-color_blue--subtle)));
117
117
  color: var(--alert_text, var(--alert_text--variant, var(--bds-color_on-blue--subtle)));
118
118
  border-inline-start: var(--bds-space_s) solid var(--alert_border, var(--alert_border--variant, var(--bds-color_blue)));
119
119
  font-size: var(--bds-font_size--body);
120
120
  line-height: var(--bds-font_line-height--body);
121
121
  }
122
- .bds280Alert---variant_info {
122
+ .bds2110Alert---variant_info {
123
123
  --alert_bg--variant: var(--alert_bg--info, var(--bds-color_blue--subtle));
124
124
  --alert_text--variant: var(--alert_text--info, var(--bds-color_on-blue--subtle));
125
125
  --alert_border--variant: var(--alert_border--info, var(--bds-color_blue));
126
126
  }
127
- .bds280Alert---variant_success {
127
+ .bds2110Alert---variant_success {
128
128
  --alert_bg--variant: var(--alert_bg--success, var(--bds-color_success--subtle));
129
129
  --alert_text--variant: var(--alert_text--success, var(--bds-color_on-success--subtle));
130
130
  --alert_border--variant: var(--alert_border--success, var(--bds-color_success));
131
131
  }
132
- .bds280Alert---variant_warning {
132
+ .bds2110Alert---variant_warning {
133
133
  --alert_bg--variant: var(--alert_bg--warning, var(--bds-color_orange--subtle));
134
134
  --alert_text--variant: var(--alert_text--warning, var(--bds-color_on-orange--subtle));
135
135
  --alert_border--variant: var(--alert_border--warning, var(--bds-color_warning));
136
136
  }
137
- .bds280Alert---variant_error {
137
+ .bds2110Alert---variant_error {
138
138
  --alert_bg--variant: var(--alert_bg--error, rgb(from var(--bds-color_error) r g b / 12%));
139
139
  --alert_text--variant: var(--alert_text--error, var(--bds-color_on-bg));
140
140
  --alert_border--variant: var(--alert_border--error, var(--bds-color_error));
141
141
  }
142
- .bds280Alert-icon {
142
+ .bds2110Alert-icon {
143
143
  display: flex;
144
144
  align-items: center;
145
145
  flex-shrink: 0;
146
146
  margin-block-start: 0.1em;
147
147
  }
148
- .bds280Alert-content {
148
+ .bds2110Alert-content {
149
149
  flex: 1;
150
150
  display: flex;
151
151
  flex-direction: column;
152
152
  gap: var(--bds-space_xxs);
153
153
  }
154
- .bds280Alert-title {
154
+ .bds2110Alert-title {
155
155
  font-weight: var(--bds-font_weight--semibold);
156
156
  font-size: var(--bds-font_size--body);
157
157
  }
158
- .bds280Alert-dismiss {
158
+ .bds2110Alert-dismiss {
159
159
  all: unset;
160
160
  display: flex;
161
161
  align-items: center;
@@ -167,71 +167,73 @@
167
167
  border: var(--alert_dismiss-border, none);
168
168
  border-radius: var(--alert_dismiss-radius, var(--bds-border_radius--circle));
169
169
  --bdc_color: currentcolor;
170
- box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
170
+ min-inline-size: var(--alert_dismiss-size, 2.75rem);
171
+ min-block-size: var(--alert_dismiss-size, 2.75rem);
172
+ box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--alert_dismiss-shadow, var(--bdc-outline_shadow));
171
173
  }
172
- .bds280Alert-dismiss svg {
173
- width: 1rem;
174
- height: 1rem;
174
+ .bds2110Alert-dismiss svg {
175
+ inline-size: 1rem;
176
+ block-size: 1rem;
175
177
  }
176
- .bds280Alert-dismiss:focus-visible {
178
+ .bds2110Alert-dismiss:focus-visible {
177
179
  outline: var(--bds-outline_default);
178
180
  outline-offset: var(--bds-outline_offset);
179
181
  }
180
182
  @media (hover: hover) and (pointer: fine) {
181
- .bds280Alert-dismiss:hover {
183
+ .bds2110Alert-dismiss:hover {
182
184
  opacity: var(--alert_dismiss-opacity--hover, 0.7);
183
185
  }
184
186
  }
185
187
  }
186
188
 
187
189
  /* src/components/ui/Avatar/Avatar.module.css */
188
- @layer boostdev.bds280Avatar-component {
189
- .bds280Avatar-avatar {
190
+ @layer boostdev.bds2110Avatar-component {
191
+ .bds2110Avatar-avatar {
190
192
  display: inline-flex;
191
193
  align-items: center;
192
194
  justify-content: center;
193
- width: var(--avatar_size, 3em);
194
- height: var(--avatar_size, 3em);
195
+ flex-shrink: 0;
196
+ inline-size: var(--avatar_size, var(--avatar_size--variant, 3em));
197
+ block-size: var(--avatar_size, var(--avatar_size--variant, 3em));
195
198
  border-radius: var(--avatar_radius, var(--bds-border_radius--circle));
196
199
  overflow: hidden;
197
- flex-shrink: 0;
198
200
  }
199
- .bds280Avatar-avatar.bds280Avatar---fallback {
201
+ .bds2110Avatar-avatar.bds2110Avatar---fallback {
200
202
  background-color: var(--avatar_bg, var(--bds-color_blue));
201
203
  color: var(--avatar_text, var(--bds-color_on-blue));
202
204
  font-weight: var(--bds-font_weight--semibold);
203
205
  }
204
- .bds280Avatar-avatar.bds280Avatar---size_small {
205
- --avatar_size: 2em;
206
+ .bds2110Avatar-avatar.bds2110Avatar---size_small {
207
+ --avatar_size--variant: 2em;
206
208
  }
207
- .bds280Avatar-avatar.bds280Avatar---size_medium {
208
- --avatar_size: 3em;
209
+ .bds2110Avatar-avatar.bds2110Avatar---size_medium {
210
+ --avatar_size--variant: 3em;
209
211
  }
210
- .bds280Avatar-avatar.bds280Avatar---size_large {
211
- --avatar_size: 4.5em;
212
+ .bds2110Avatar-avatar.bds2110Avatar---size_large {
213
+ --avatar_size--variant: 4.5em;
212
214
  }
213
- .bds280Avatar-image {
214
- width: 100%;
215
- height: 100%;
215
+ .bds2110Avatar-image {
216
+ inline-size: 100%;
217
+ block-size: 100%;
216
218
  object-fit: cover;
217
219
  display: block;
218
220
  }
219
- .bds280Avatar-initials {
221
+ .bds2110Avatar-initials {
220
222
  line-height: 1;
221
223
  user-select: none;
222
224
  font-size: var(--bds-font_size--body);
223
225
  }
224
- .bds280Avatar-avatar.bds280Avatar---size_small .bds280Avatar-initials {
226
+ .bds2110Avatar-avatar.bds2110Avatar---size_small .bds2110Avatar-initials {
225
227
  font-size: var(--bds-font_size--body--s);
226
228
  }
227
- .bds280Avatar-avatar.bds280Avatar---size_large .bds280Avatar-initials {
229
+ .bds2110Avatar-avatar.bds2110Avatar---size_large .bds2110Avatar-initials {
228
230
  font-size: var(--bds-font_size--heading-3);
229
231
  }
230
232
  }
231
233
 
232
234
  /* src/components/ui/Badge/Badge.module.css */
233
- @layer boostdev.bds280Badge-component {
234
- .bds280Badge-badge {
235
+ @layer boostdev.bds2110Badge-component {
236
+ .bds2110Badge-badge {
235
237
  display: inline-flex;
236
238
  align-items: center;
237
239
  justify-content: center;
@@ -244,34 +246,34 @@
244
246
  background-color: var(--badge_bg, var(--badge_bg--variant, var(--bds-color_blue)));
245
247
  color: var(--badge_text, var(--badge_text--variant, var(--bds-color_on-blue)));
246
248
  }
247
- .bds280Badge---variant_primary {
249
+ .bds2110Badge---variant_primary {
248
250
  --badge_bg--variant: var(--badge_bg--primary, var(--bds-color_interactive));
249
251
  --badge_text--variant: var(--badge_text--primary, var(--bds-color_on-interactive));
250
252
  }
251
- .bds280Badge---variant_secondary {
253
+ .bds2110Badge---variant_secondary {
252
254
  --badge_bg--variant: var(--badge_bg--secondary, var(--bds-color_bg));
253
255
  --badge_text--variant: var(--badge_text--secondary, var(--bds-color_on-bg));
254
256
  }
255
- .bds280Badge---variant_success {
257
+ .bds2110Badge---variant_success {
256
258
  --badge_bg--variant: var(--badge_bg--success, var(--bds-color_success));
257
259
  --badge_text--variant: var(--badge_text--success, var(--bds-color_on-success));
258
260
  }
259
- .bds280Badge---variant_error {
261
+ .bds2110Badge---variant_error {
260
262
  --badge_bg--variant: var(--badge_bg--error, var(--bds-color_error));
261
263
  --badge_text--variant: var(--badge_text--error, var(--bds-color_on-error));
262
264
  }
263
- .bds280Badge---variant_warning {
265
+ .bds2110Badge---variant_warning {
264
266
  --badge_bg--variant: var(--badge_bg--warning, var(--bds-color_warning));
265
267
  --badge_text--variant: var(--badge_text--warning, var(--bds-color_on-warning));
266
268
  }
267
269
  }
268
270
 
269
271
  /* src/components/ui/Breadcrumb/Breadcrumb.module.css */
270
- @layer boostdev.bds280Breadcrumb-component {
271
- .bds280Breadcrumb-breadcrumb {
272
+ @layer boostdev.bds2110Breadcrumb-component {
273
+ .bds2110Breadcrumb-breadcrumb {
272
274
  font-size: var(--bds-font_size--body--s);
273
275
  }
274
- .bds280Breadcrumb-list {
276
+ .bds2110Breadcrumb-list {
275
277
  display: flex;
276
278
  flex-wrap: wrap;
277
279
  align-items: center;
@@ -280,45 +282,52 @@
280
282
  margin: 0;
281
283
  padding: 0;
282
284
  }
283
- .bds280Breadcrumb-item {
285
+ .bds2110Breadcrumb-item {
284
286
  display: flex;
285
287
  align-items: center;
286
288
  gap: var(--bds-space_xxs);
287
289
  }
288
- .bds280Breadcrumb-link {
290
+ .bds2110Breadcrumb-link {
289
291
  color: var(--bds-color_interactive_on-bg);
290
292
  text-decoration: none;
291
293
  transition: var(--bds-animation_transition);
292
294
  }
293
- .bds280Breadcrumb-link:focus-visible {
295
+ .bds2110Breadcrumb-link:focus-visible {
294
296
  outline: var(--bds-outline_default);
295
297
  outline-offset: var(--bds-outline_offset);
296
298
  border-radius: var(--bds-border_radius--xs);
297
299
  }
298
300
  @media (hover: hover) and (pointer: fine) {
299
- .bds280Breadcrumb-link:hover {
301
+ .bds2110Breadcrumb-link:hover {
300
302
  text-decoration: underline;
301
303
  text-underline-offset: 0.2em;
302
304
  }
303
305
  }
304
- .bds280Breadcrumb-separator {
306
+ .bds2110Breadcrumb-separator {
305
307
  color: var(--bds-color_on-bg--subtle);
306
308
  user-select: none;
307
309
  }
308
- .bds280Breadcrumb-current {
310
+ .bds2110Breadcrumb-text {
311
+ color: var(--bds-color_on-bg--subtle);
312
+ }
313
+ .bds2110Breadcrumb-current {
309
314
  color: var(--bds-color_on-bg--subtle);
310
315
  font-weight: var(--bds-font_weight--semibold);
311
316
  }
312
317
  }
313
318
 
314
319
  /* src/components/ui/Collapsible/Collapsible.module.css */
315
- @layer boostdev.bds280Collapsible-component {
316
- .bds280Collapsible-collapsible {
317
- border: var(--collapsible_border-width, 1px) solid var(--collapsible_border-color, var(--bds-color_bg--subtle));
318
- border-radius: var(--collapsible_border-radius, var(--bds-border_radius--m));
320
+ @layer boostdev.bds2110Collapsible-component {
321
+ .bds2110Collapsible-collapsible {
322
+ border: var(--collapsible_border, none);
323
+ --bdc_color: var(--collapsible_border-color, var(--bds-color_bg--subtle));
324
+ --bdc-outline_width: var(--collapsible_border-width, 1px);
325
+ --bdc-outline_radius: var(--collapsible_border-radius, var(--bds-border_radius--m));
326
+ border-radius: var(--bdc-outline_radius);
327
+ box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
319
328
  overflow: hidden;
320
329
  }
321
- .bds280Collapsible-summary {
330
+ .bds2110Collapsible-summary {
322
331
  list-style: none;
323
332
  display: flex;
324
333
  align-items: center;
@@ -333,25 +342,25 @@
333
342
  user-select: none;
334
343
  transition: var(--bds-animation_transition);
335
344
  }
336
- .bds280Collapsible-summary::-webkit-details-marker {
345
+ .bds2110Collapsible-summary::-webkit-details-marker {
337
346
  display: none;
338
347
  }
339
- .bds280Collapsible-summary:focus-visible {
348
+ .bds2110Collapsible-summary:focus-visible {
340
349
  outline: var(--bds-outline_default);
341
350
  outline-offset: calc(var(--bds-outline_offset) * -1);
342
351
  }
343
352
  @media (hover: hover) and (pointer: fine) {
344
- .bds280Collapsible-summary:hover {
353
+ .bds2110Collapsible-summary:hover {
345
354
  background-color: var(--collapsible_bg--hover, var(--bds-color_bg--subtle));
346
355
  }
347
356
  }
348
- .bds280Collapsible-collapsible[open] > .bds280Collapsible-summary {
357
+ .bds2110Collapsible-collapsible[open] > .bds2110Collapsible-summary {
349
358
  border-block-end: var(--collapsible_border-width, 1px) solid var(--collapsible_border-color, var(--bds-color_bg--subtle));
350
359
  }
351
- .bds280Collapsible-summaryContent {
360
+ .bds2110Collapsible-summaryContent {
352
361
  flex: 1;
353
362
  }
354
- .bds280Collapsible-icon {
363
+ .bds2110Collapsible-icon {
355
364
  inline-size: 0.5rem;
356
365
  block-size: 0.5rem;
357
366
  border-inline-end: 2px solid currentcolor;
@@ -360,28 +369,28 @@
360
369
  flex-shrink: 0;
361
370
  transition: transform var(--bds-animation_transition-duration) var(--bds-animation_easing);
362
371
  }
363
- .bds280Collapsible-collapsible[open] > .bds280Collapsible-summary .bds280Collapsible-icon {
372
+ .bds2110Collapsible-collapsible[open] > .bds2110Collapsible-summary .bds2110Collapsible-icon {
364
373
  transform: rotate(-135deg);
365
374
  }
366
- .bds280Collapsible-content {
375
+ .bds2110Collapsible-content {
367
376
  padding: var(--bds-space_m);
368
377
  color: var(--collapsible_on-color, var(--bds-color_on-bg));
369
378
  font-size: var(--bds-font_size--body);
370
379
  line-height: var(--bds-font_line-height--body);
371
380
  }
372
381
  @media (prefers-reduced-motion: reduce) {
373
- .bds280Collapsible-icon {
382
+ .bds2110Collapsible-icon {
374
383
  transition: none;
375
384
  }
376
385
  }
377
386
  }
378
387
 
379
388
  /* src/components/ui/Calendar/Calendar.module.css */
380
- @layer boostdev.bds280Calendar-component {
381
- .bds280Calendar-calendar {
382
- display: inline-flex;
383
- flex-direction: column;
384
- gap: var(--bds-space_s);
389
+ @layer boostdev.bds2110Calendar-component {
390
+ .bds2110Calendar-calendar {
391
+ display: inline-block;
392
+ inline-size: fit-content;
393
+ max-inline-size: 100%;
385
394
  background-color: var(--bds-color_bg);
386
395
  border: var(--calendar_border, none);
387
396
  --bdc_color: var(--bds-color_bg--subtle);
@@ -389,167 +398,206 @@
389
398
  border-radius: var(--calendar_radius, var(--bdc-outline_radius));
390
399
  padding: var(--bds-space_m);
391
400
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--calendar_shadow, var(--bds-shadow_s));
392
- inline-size: 20rem;
393
401
  }
394
- .bds280Calendar-header {
402
+ .bds2110Calendar-months {
403
+ display: flex;
404
+ flex-wrap: wrap;
405
+ gap: var(--bds-space_l);
406
+ }
407
+ .bds2110Calendar-month {
408
+ display: flex;
409
+ flex-direction: column;
410
+ gap: var(--bds-space_s);
411
+ inline-size: var(--calendar_size, 17rem);
412
+ max-inline-size: 100%;
413
+ }
414
+ .bds2110Calendar-monthHeader {
395
415
  display: flex;
396
416
  align-items: center;
397
417
  justify-content: space-between;
418
+ gap: var(--bds-space_xs);
419
+ }
420
+ .bds2110Calendar-navSlot {
421
+ display: inline-flex;
422
+ inline-size: 2.75rem;
423
+ block-size: 2.75rem;
424
+ flex: none;
398
425
  }
399
- .bds280Calendar-monthYear {
426
+ .bds2110Calendar-monthYear {
400
427
  font-size: var(--bds-font_size--body);
401
428
  font-weight: var(--bds-font_weight--semibold);
402
429
  color: var(--bds-color_on-bg);
403
430
  }
404
- .bds280Calendar-navBtn {
431
+ .bds2110Calendar-navBtn {
405
432
  all: unset;
406
433
  display: flex;
407
434
  align-items: center;
408
435
  justify-content: center;
409
- inline-size: 2rem;
410
- block-size: 2rem;
436
+ inline-size: 2.75rem;
437
+ block-size: 2.75rem;
411
438
  border-radius: var(--calendar_button-radius, var(--bds-border_radius--circle));
412
439
  cursor: pointer;
413
440
  color: var(--bds-color_on-bg);
414
441
  transition: var(--bds-animation_transition);
415
442
  }
416
- .bds280Calendar-navBtn svg {
443
+ .bds2110Calendar-navBtn svg {
417
444
  inline-size: 1rem;
418
445
  block-size: 1rem;
419
446
  }
420
- .bds280Calendar-navBtn:focus-visible {
447
+ .bds2110Calendar-navBtn:focus-visible {
421
448
  outline: var(--bds-outline_default);
422
449
  outline-offset: var(--bds-outline_offset);
423
450
  }
424
451
  @media (hover: hover) and (pointer: fine) {
425
- .bds280Calendar-navBtn:hover {
452
+ .bds2110Calendar-navBtn:hover {
426
453
  background-color: var(--calendar_navBtn-bg--hover, var(--bds-color_bg--subtle));
427
454
  }
428
455
  }
429
- .bds280Calendar-grid {
430
- border-collapse: collapse;
431
- inline-size: 100%;
432
- table-layout: fixed;
456
+ .bds2110Calendar-grid {
457
+ display: grid;
458
+ grid-template-columns: repeat(7, 1fr);
459
+ gap: var(--bds-space_xxxs);
433
460
  }
434
- .bds280Calendar-weekday {
461
+ .bds2110Calendar-row {
462
+ display: contents;
463
+ }
464
+ .bds2110Calendar-weekday {
465
+ display: flex;
466
+ align-items: center;
467
+ justify-content: center;
468
+ block-size: 2rem;
435
469
  font-size: var(--bds-font_size--body--s);
436
470
  font-weight: var(--bds-font_weight--semibold);
437
- color: var(--bds-color_on-bg);
438
- text-align: center;
439
- padding-block-end: var(--bds-space_xs);
471
+ color: var(--bds-color_on-bg--subtle);
472
+ user-select: none;
440
473
  }
441
- .bds280Calendar-empty {
442
- padding: 0;
474
+ .bds2110Calendar-cell {
475
+ display: flex;
476
+ aspect-ratio: 1;
443
477
  }
444
- .bds280Calendar-day {
478
+ .bds2110Calendar-day {
445
479
  all: unset;
480
+ box-sizing: border-box;
446
481
  display: flex;
447
482
  align-items: center;
448
483
  justify-content: center;
449
484
  inline-size: 100%;
450
- aspect-ratio: 1;
485
+ block-size: 100%;
451
486
  border-radius: var(--calendar_button-radius, var(--bds-border_radius--circle));
452
487
  font-size: var(--bds-font_size--body--s);
453
488
  color: var(--bds-color_on-bg);
454
489
  cursor: pointer;
455
490
  transition: var(--bds-animation_transition);
456
- box-sizing: border-box;
457
491
  }
458
- .bds280Calendar-day:focus-visible {
492
+ .bds2110Calendar-day:focus-visible {
459
493
  outline: var(--bds-outline_default);
460
494
  outline-offset: var(--bds-outline_offset);
461
495
  }
462
496
  @media (hover: hover) and (pointer: fine) {
463
- .bds280Calendar-day:not(.bds280Calendar-disabled, .bds280Calendar-selected):hover {
497
+ .bds2110Calendar-day:not(.bds2110Calendar-disabled, .bds2110Calendar-selected, .bds2110Calendar-rangeStart, .bds2110Calendar-rangeEnd):hover {
464
498
  background-color: var(--calendar_day-bg--hover, var(--bds-color_bg--subtle));
465
499
  }
466
500
  }
467
- .bds280Calendar-today {
501
+ .bds2110Calendar-outside {
502
+ color: var(--bds-color_on-bg--subtle);
503
+ opacity: 0.4;
504
+ }
505
+ .bds2110Calendar-today {
468
506
  font-weight: var(--bds-font_weight--semibold);
469
507
  --bdc_color: var(--calendar_today-color, var(--bds-color_interactive));
470
508
  border: var(--calendar_today-border, none);
471
- box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
509
+ box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--calendar_today-shadow, var(--bdc-outline_shadow));
472
510
  }
473
- .bds280Calendar-selected {
511
+ .bds2110Calendar-selected {
474
512
  background-color: var(--calendar_day-bg--selected, var(--bds-color_interactive));
475
513
  color: var(--calendar_day-color--selected, var(--bds-color_on-interactive));
476
514
  font-weight: var(--bds-font_weight--semibold);
477
515
  }
478
- .bds280Calendar-disabled {
516
+ .bds2110Calendar-inRange {
517
+ background-color: var(--calendar_day-bg--in-range, var(--bds-color_blue--subtle));
518
+ border-radius: 0;
519
+ }
520
+ .bds2110Calendar-rangeStart,
521
+ .bds2110Calendar-rangeEnd {
522
+ background-color: var(--calendar_day-bg--selected, var(--bds-color_interactive));
523
+ color: var(--calendar_day-color--selected, var(--bds-color_on-interactive));
524
+ font-weight: var(--bds-font_weight--semibold);
525
+ }
526
+ .bds2110Calendar-disabled {
479
527
  opacity: 0.35;
480
528
  cursor: not-allowed;
481
529
  }
482
530
  @media (prefers-reduced-motion: reduce) {
483
- .bds280Calendar-day {
531
+ .bds2110Calendar-day {
484
532
  transition: none;
485
533
  }
486
534
  }
487
535
  }
488
536
 
489
537
  /* src/components/ui/Carousel/Carousel.module.css */
490
- @layer boostdev.bds280Carousel-component {
491
- .bds280Carousel-carousel {
538
+ @layer boostdev.bds2110Carousel-component {
539
+ .bds2110Carousel-carousel {
492
540
  position: relative;
493
541
  display: flex;
494
542
  align-items: center;
495
543
  gap: var(--bds-space_xs);
496
544
  }
497
- .bds280Carousel-track {
545
+ .bds2110Carousel-track {
498
546
  display: flex;
499
547
  gap: var(--bds-space_m);
500
548
  overflow-inline: auto;
501
- scroll-snap-type: x mandatory;
549
+ scroll-snap-type: inline mandatory;
502
550
  scrollbar-width: none;
503
551
  flex: 1;
504
552
  scroll-behavior: smooth;
505
553
  }
506
- .bds280Carousel-track::-webkit-scrollbar {
554
+ .bds2110Carousel-track::-webkit-scrollbar {
507
555
  display: none;
508
556
  }
509
- .bds280Carousel-slide {
557
+ .bds2110Carousel-slide {
510
558
  scroll-snap-align: start;
511
559
  flex-shrink: 0;
512
560
  }
513
- .bds280Carousel-navBtn {
561
+ .bds2110Carousel-navBtn {
514
562
  all: unset;
515
563
  display: flex;
516
564
  align-items: center;
517
565
  justify-content: center;
518
- inline-size: 2.5rem;
519
- block-size: 2.5rem;
520
- border-radius: var(--carousel_indicator-radius, var(--bds-border_radius--circle));
566
+ inline-size: 2.75rem;
567
+ block-size: 2.75rem;
568
+ border-radius: var(--carousel_navBtn-radius, var(--carousel_indicator-radius, var(--bds-border_radius--circle)));
521
569
  background-color: var(--bds-color_bg);
522
570
  color: var(--bds-color_on-bg);
523
571
  --bdc_color: var(--bds-color_on-bg);
524
572
  border: none;
525
- box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--bds-shadow_s);
573
+ box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--carousel_navBtn-shadow, var(--bds-shadow_s));
526
574
  cursor: pointer;
527
575
  flex-shrink: 0;
528
576
  transition: var(--bds-animation_transition);
529
577
  }
530
- .bds280Carousel-navBtn svg {
578
+ .bds2110Carousel-navBtn svg {
531
579
  inline-size: 1.25rem;
532
580
  block-size: 1.25rem;
533
581
  }
534
- .bds280Carousel-navBtn:focus-visible {
582
+ .bds2110Carousel-navBtn:focus-visible {
535
583
  outline: var(--bds-outline_default);
536
584
  outline-offset: var(--bds-outline_offset);
537
585
  }
538
586
  @media (hover: hover) and (pointer: fine) {
539
- .bds280Carousel-navBtn:hover {
587
+ .bds2110Carousel-navBtn:hover {
540
588
  background-color: var(--carousel_navBtn-bg--hover, var(--bds-color_bg--subtle));
541
589
  }
542
590
  }
543
591
  @media (prefers-reduced-motion: reduce) {
544
- .bds280Carousel-track {
592
+ .bds2110Carousel-track {
545
593
  scroll-behavior: auto;
546
594
  }
547
595
  }
548
596
  }
549
597
 
550
598
  /* src/components/ui/DescriptionList/DescriptionList.module.css */
551
- @layer boostdev.bds280DescriptionList-component {
552
- .bds280DescriptionList-list {
599
+ @layer boostdev.bds2110DescriptionList-component {
600
+ .bds2110DescriptionList-list {
553
601
  display: flex;
554
602
  flex-direction: column;
555
603
  gap: var(--bds-space_s);
@@ -558,61 +606,61 @@
558
606
  font-size: var(--bds-font_size--body);
559
607
  color: var(--bds-color_on-bg);
560
608
  }
561
- .bds280DescriptionList-group {
609
+ .bds2110DescriptionList-group {
562
610
  display: flex;
563
611
  flex-direction: column;
564
612
  gap: var(--bds-space_xxs);
565
613
  }
566
- .bds280DescriptionList-term {
614
+ .bds2110DescriptionList-term {
567
615
  font-weight: var(--bds-font_weight--semibold);
568
616
  color: var(--bds-color_on-bg);
569
617
  }
570
- .bds280DescriptionList-details {
618
+ .bds2110DescriptionList-details {
571
619
  margin: 0;
572
620
  color: var(--bds-color_on-bg);
573
621
  }
574
- .bds280DescriptionList---layout_inline .bds280DescriptionList-group {
622
+ .bds2110DescriptionList---layout_inline .bds2110DescriptionList-group {
575
623
  display: grid;
576
624
  grid-template-columns: minmax(8rem, 1fr) 2fr;
577
625
  gap: var(--bds-space_xs);
578
626
  align-items: baseline;
579
627
  }
580
- .bds280DescriptionList---layout_inline .bds280DescriptionList-term {
628
+ .bds2110DescriptionList---layout_inline .bds2110DescriptionList-term {
581
629
  grid-column: 1;
582
630
  }
583
- .bds280DescriptionList---layout_inline .bds280DescriptionList-details {
631
+ .bds2110DescriptionList---layout_inline .bds2110DescriptionList-details {
584
632
  grid-column: 2;
585
633
  }
586
634
  }
587
635
 
588
636
  /* src/components/ui/Link/Link.module.css */
589
- @layer boostdev.bds280Link-component {
590
- .bds280Link-link {
637
+ @layer boostdev.bds2110Link-component {
638
+ .bds2110Link-link {
591
639
  color: var(--link_color, var(--link_color--variant, var(--bds-color_interactive_on-bg)));
592
640
  text-decoration: underline;
593
641
  text-underline-offset: 0.2em;
594
642
  transition: var(--bds-animation_transition);
595
643
  cursor: pointer;
596
644
  }
597
- .bds280Link-link:focus-visible {
645
+ .bds2110Link-link:focus-visible {
598
646
  outline: var(--bds-outline_default);
599
647
  outline-offset: var(--bds-outline_offset);
600
648
  border-radius: var(--bds-border_radius--xs);
601
649
  }
602
650
  @media (hover: hover) and (pointer: fine) {
603
- .bds280Link-link:hover {
651
+ .bds2110Link-link:hover {
604
652
  color: var(--link_color-hover, var(--link_color-hover--variant, var(--bds-color_blue--strong)));
605
653
  }
606
654
  }
607
- .bds280Link---variant_default {
655
+ .bds2110Link---variant_default {
608
656
  --link_color--variant: var(--link_color--default, var(--bds-color_interactive_on-bg));
609
657
  --link_color-hover--variant: var(--link_color-hover--default, var(--bds-color_blue--strong));
610
658
  }
611
- .bds280Link---variant_subtle {
659
+ .bds2110Link---variant_subtle {
612
660
  --link_color--variant: var(--link_color--subtle, var(--bds-color_on-bg));
613
661
  --link_color-hover--variant: var(--link_color-hover--subtle, var(--bds-color_interactive_on-bg));
614
662
  }
615
- .bds280Link---variant_standalone {
663
+ .bds2110Link---variant_standalone {
616
664
  --link_color--variant: var(--link_color--standalone, var(--bds-color_interactive_on-bg));
617
665
  --link_color-hover--variant: var(--link_color-hover--standalone, var(--bds-color_blue--strong));
618
666
  display: inline-flex;
@@ -622,12 +670,12 @@
622
670
  text-decoration: none;
623
671
  }
624
672
  @media (hover: hover) and (pointer: fine) {
625
- .bds280Link---variant_standalone:hover {
673
+ .bds2110Link---variant_standalone:hover {
626
674
  text-decoration: underline;
627
675
  text-underline-offset: 0.2em;
628
676
  }
629
677
  }
630
- .bds280Link-externalLabel {
678
+ .bds2110Link-externalLabel {
631
679
  position: absolute;
632
680
  inline-size: 1px;
633
681
  block-size: 1px;
@@ -641,30 +689,35 @@
641
689
  }
642
690
 
643
691
  /* src/components/ui/Loading/Loading.module.css */
644
- @layer boostdev.bds280Loading-component {
645
- .bds280Loading-loading {
692
+ @layer boostdev.bds2110Loading-component {
693
+ .bds2110Loading-loading {
646
694
  display: flex;
647
695
  justify-content: center;
648
696
  align-items: center;
649
697
  }
650
- .bds280Loading-spinner {
698
+ .bds2110Loading-spinner {
651
699
  inline-size: 2.5em;
652
700
  block-size: 2.5em;
653
701
  border: 4px solid var(--bds-color_bg);
654
- border-block-start: 4px solid var(--bds-color_interactive);
702
+ border-block-start: 4px solid var(--loading_color, var(--bds-color_interactive));
655
703
  border-radius: var(--loading_radius, var(--bds-border_radius--circle));
656
704
  animation: spin 1s linear infinite;
657
705
  }
658
- .bds280Loading---size_small .bds280Loading-spinner {
706
+ .bds2110Loading---size_small .bds2110Loading-spinner {
659
707
  inline-size: 1.5em;
660
708
  block-size: 1.5em;
661
709
  border-width: 2px;
662
710
  }
663
- .bds280Loading---size_large .bds280Loading-spinner {
711
+ .bds2110Loading---size_large .bds2110Loading-spinner {
664
712
  inline-size: 4em;
665
713
  block-size: 4em;
666
714
  border-width: 6px;
667
715
  }
716
+ @media (prefers-reduced-motion: reduce) {
717
+ .bds2110Loading-spinner {
718
+ animation: none;
719
+ }
720
+ }
668
721
  }
669
722
  @keyframes spin {
670
723
  0% {
@@ -674,15 +727,10 @@
674
727
  transform: rotate(360deg);
675
728
  }
676
729
  }
677
- @media (prefers-reduced-motion: reduce) {
678
- .bds280Loading-spinner {
679
- animation: none;
680
- }
681
- }
682
730
 
683
731
  /* src/components/ui/NotificationBanner/NotificationBanner.module.css */
684
- @layer boostdev.bds280NotificationBanner-component {
685
- .bds280NotificationBanner-banner {
732
+ @layer boostdev.bds2110NotificationBanner-component {
733
+ .bds2110NotificationBanner-banner {
686
734
  display: flex;
687
735
  align-items: center;
688
736
  gap: var(--bds-space_m);
@@ -694,33 +742,33 @@
694
742
  line-height: var(--bds-font_line-height--body);
695
743
  inline-size: 100%;
696
744
  }
697
- .bds280NotificationBanner---variant_info {
745
+ .bds2110NotificationBanner---variant_info {
698
746
  --banner_bg--variant: var(--banner_bg--info, var(--bds-color_blue--subtle));
699
747
  --banner_text--variant: var(--banner_text--info, var(--bds-color_on-blue--subtle));
700
748
  --banner_border--variant: var(--banner_border--info, var(--bds-color_blue));
701
749
  }
702
- .bds280NotificationBanner---variant_success {
750
+ .bds2110NotificationBanner---variant_success {
703
751
  --banner_bg--variant: var(--banner_bg--success, var(--bds-color_success--subtle));
704
752
  --banner_text--variant: var(--banner_text--success, var(--bds-color_on-success--subtle));
705
753
  --banner_border--variant: var(--banner_border--success, var(--bds-color_success));
706
754
  }
707
- .bds280NotificationBanner---variant_warning {
755
+ .bds2110NotificationBanner---variant_warning {
708
756
  --banner_bg--variant: var(--banner_bg--warning, var(--bds-color_orange--subtle));
709
757
  --banner_text--variant: var(--banner_text--warning, var(--bds-color_on-orange--subtle));
710
758
  --banner_border--variant: var(--banner_border--warning, var(--bds-color_warning));
711
759
  }
712
- .bds280NotificationBanner---variant_error {
760
+ .bds2110NotificationBanner---variant_error {
713
761
  --banner_bg--variant: var(--banner_bg--error, rgb(from var(--bds-color_error) r g b / 12%));
714
762
  --banner_text--variant: var(--banner_text--error, var(--bds-color_on-bg));
715
763
  --banner_border--variant: var(--banner_border--error, var(--bds-color_error));
716
764
  }
717
- .bds280NotificationBanner-content {
765
+ .bds2110NotificationBanner-content {
718
766
  flex: 1;
719
767
  }
720
- .bds280NotificationBanner-action {
768
+ .bds2110NotificationBanner-action {
721
769
  flex-shrink: 0;
722
770
  }
723
- .bds280NotificationBanner-dismiss {
771
+ .bds2110NotificationBanner-dismiss {
724
772
  all: unset;
725
773
  display: flex;
726
774
  align-items: center;
@@ -728,34 +776,36 @@
728
776
  flex-shrink: 0;
729
777
  cursor: pointer;
730
778
  color: currentcolor;
779
+ min-inline-size: var(--banner_dismiss-size, 2.75rem);
780
+ min-block-size: var(--banner_dismiss-size, 2.75rem);
731
781
  border-radius: var(--banner_dismiss-radius, var(--bds-border_radius--circle));
732
782
  border: var(--banner_dismiss-border, none);
733
783
  transition: var(--bds-animation_transition);
734
784
  --bdc_color: currentcolor;
735
785
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
736
786
  }
737
- .bds280NotificationBanner-dismiss svg {
787
+ .bds2110NotificationBanner-dismiss svg {
738
788
  inline-size: 1rem;
739
789
  block-size: 1rem;
740
790
  }
741
- .bds280NotificationBanner-dismiss:focus-visible {
791
+ .bds2110NotificationBanner-dismiss:focus-visible {
742
792
  outline: var(--bds-outline_default);
743
793
  outline-offset: var(--bds-outline_offset);
744
794
  }
745
795
  @media (hover: hover) and (pointer: fine) {
746
- .bds280NotificationBanner-dismiss:hover {
796
+ .bds2110NotificationBanner-dismiss:hover {
747
797
  opacity: var(--banner_dismiss-opacity--hover, 0.7);
748
798
  }
749
799
  }
750
800
  }
751
801
 
752
802
  /* src/components/ui/Pagination/Pagination.module.css */
753
- @layer boostdev.bds280Pagination-component {
754
- .bds280Pagination-pagination {
803
+ @layer boostdev.bds2110Pagination-component {
804
+ .bds2110Pagination-pagination {
755
805
  display: flex;
756
806
  justify-content: center;
757
807
  }
758
- .bds280Pagination-list {
808
+ .bds2110Pagination-list {
759
809
  display: flex;
760
810
  align-items: center;
761
811
  gap: var(--bds-space_xxs);
@@ -763,21 +813,21 @@
763
813
  margin: 0;
764
814
  padding: 0;
765
815
  }
766
- .bds280Pagination-list li {
816
+ .bds2110Pagination-list li {
767
817
  list-style: none;
768
818
  }
769
- .bds280Pagination-button {
819
+ .bds2110Pagination-button {
770
820
  all: unset;
771
821
  display: inline-flex;
772
822
  align-items: center;
773
823
  justify-content: center;
774
- min-inline-size: 2.25rem;
775
- block-size: 2.25rem;
824
+ min-inline-size: 2.75rem;
825
+ block-size: 2.75rem;
776
826
  padding-inline: var(--bds-space_xs);
777
827
  border-radius: var(--pagination_radius, var(--bds-border_radius--full));
778
- background-color: var(--btn_bg, var(--btn_bg--state, transparent));
779
- color: var(--btn_color, var(--btn_color--state, var(--bds-color_on-bg)));
780
- --bdc_color: var(--btn_border, var(--btn_border--state, var(--bds-color_bg--subtle)));
828
+ background-color: var(--pagination_item-bg, var(--btn_bg, var(--btn_bg--state, transparent)));
829
+ color: var(--pagination_item-color, var(--btn_color, var(--btn_color--state, var(--bds-color_on-bg))));
830
+ --bdc_color: var(--pagination_item-border, var(--btn_border, var(--btn_border--state, var(--bds-color_bg--subtle))));
781
831
  border: none;
782
832
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
783
833
  font-family: var(--bds-font_family--body);
@@ -787,35 +837,35 @@
787
837
  transition: var(--bds-animation_transition);
788
838
  box-sizing: border-box;
789
839
  }
790
- .bds280Pagination-button:disabled {
840
+ .bds2110Pagination-button:disabled {
791
841
  opacity: 0.4;
792
842
  cursor: not-allowed;
793
843
  }
794
- .bds280Pagination-button:focus-visible {
844
+ .bds2110Pagination-button:focus-visible {
795
845
  outline: var(--bds-outline_default);
796
846
  outline-offset: var(--bds-outline_offset);
797
847
  }
798
848
  @media (hover: hover) and (pointer: fine) {
799
- .bds280Pagination-button:not(:disabled, .bds280Pagination---active):hover {
800
- --btn_bg--state: var(--btn_bg--hover, var(--bds-color_bg--subtle));
801
- --btn_color--state: var(--btn_color--hover, var(--bds-color_interactive_on-bg));
849
+ .bds2110Pagination-button:not(:disabled, .bds2110Pagination---active):hover {
850
+ --btn_bg--state: var(--pagination_item-bg--hover, var(--btn_bg--hover, var(--bds-color_bg--subtle)));
851
+ --btn_color--state: var(--pagination_item-color--hover, var(--btn_color--hover, var(--bds-color_interactive_on-bg)));
802
852
  }
803
853
  }
804
- .bds280Pagination-button.bds280Pagination---active {
805
- --btn_bg--state: var(--btn_bg--active, var(--bds-color_interactive));
806
- --btn_color--state: var(--btn_color--active, var(--bds-color_on-interactive));
807
- --btn_border--state: var(--btn_border--active, var(--bds-color_interactive));
854
+ .bds2110Pagination-button.bds2110Pagination---active {
855
+ --btn_bg--state: var(--pagination_item-bg--active, var(--btn_bg--active, var(--bdc-color_active)));
856
+ --btn_color--state: var(--pagination_item-color--active, var(--btn_color--active, var(--bdc-color_on-active)));
857
+ --btn_border--state: var(--pagination_item-border--active, var(--btn_border--active, var(--bdc-color_active)));
808
858
  }
809
- .bds280Pagination-button.bds280Pagination---nav svg {
859
+ .bds2110Pagination-button.bds2110Pagination---nav svg {
810
860
  inline-size: 1rem;
811
861
  block-size: 1rem;
812
862
  }
813
- .bds280Pagination-ellipsis {
863
+ .bds2110Pagination-ellipsis {
814
864
  display: inline-flex;
815
865
  align-items: center;
816
866
  justify-content: center;
817
- min-inline-size: 2.25rem;
818
- block-size: 2.25rem;
867
+ min-inline-size: 2.75rem;
868
+ block-size: 2.75rem;
819
869
  color: var(--bds-color_on-bg--subtle);
820
870
  font-size: var(--bds-font_size--body);
821
871
  user-select: none;
@@ -823,71 +873,71 @@
823
873
  }
824
874
 
825
875
  /* src/components/ui/Progress/Progress.module.css */
826
- @layer boostdev.bds280Progress-component {
827
- .bds280Progress-container {
876
+ @layer boostdev.bds2110Progress-component {
877
+ .bds2110Progress-container {
828
878
  display: flex;
829
879
  flex-direction: column;
830
880
  gap: var(--bds-space_xxs);
831
881
  inline-size: 100%;
832
882
  }
833
- .bds280Progress-labelRow {
883
+ .bds2110Progress-labelRow {
834
884
  display: flex;
835
885
  justify-content: space-between;
836
886
  align-items: baseline;
837
887
  font-size: var(--bds-font_size--body--s);
838
888
  color: var(--bds-color_on-bg);
839
889
  }
840
- .bds280Progress-value {
890
+ .bds2110Progress-value {
841
891
  font-variant-numeric: tabular-nums;
842
892
  }
843
- .bds280Progress-track {
893
+ .bds2110Progress-track {
844
894
  inline-size: 100%;
845
895
  block-size: var(--progress_height, var(--bds-space_xs));
846
- background-color: var(--bds-color_bg--subtle);
896
+ background-color: var(--progress_color-track, var(--bds-color_bg--subtle));
847
897
  border-radius: var(--progress_radius, var(--bds-border_radius--full));
848
898
  overflow: hidden;
849
899
  }
850
- .bds280Progress-track.bds280Progress---size_small {
900
+ .bds2110Progress-track.bds2110Progress---size_small {
851
901
  --progress_height: var(--bds-space_xxs);
852
902
  }
853
- .bds280Progress-track.bds280Progress---size_medium {
903
+ .bds2110Progress-track.bds2110Progress---size_medium {
854
904
  --progress_height: var(--bds-space_xs);
855
905
  }
856
- .bds280Progress-track.bds280Progress---size_large {
906
+ .bds2110Progress-track.bds2110Progress---size_large {
857
907
  --progress_height: var(--bds-space_s);
858
908
  }
859
- .bds280Progress-fill {
909
+ .bds2110Progress-fill {
860
910
  block-size: 100%;
861
911
  background-color: var(--progress_color-active, var(--bdc-color_active));
862
912
  border-radius: var(--progress_radius, var(--bds-border_radius--full));
863
913
  transition: inline-size var(--bds-animation_transition-duration) var(--bds-animation_easing);
864
914
  }
865
915
  @media (prefers-reduced-motion: reduce) {
866
- .bds280Progress-fill {
916
+ .bds2110Progress-fill {
867
917
  transition: none;
868
918
  }
869
919
  }
870
920
  }
871
921
 
872
922
  /* src/components/ui/ProgressCircle/ProgressCircle.module.css */
873
- @layer boostdev.bds280ProgressCircle-component {
874
- .bds280ProgressCircle-wrapper {
923
+ @layer boostdev.bds2110ProgressCircle-component {
924
+ .bds2110ProgressCircle-wrapper {
875
925
  position: relative;
876
926
  display: inline-flex;
877
927
  align-items: center;
878
928
  justify-content: center;
879
929
  }
880
- .bds280ProgressCircle-svg {
930
+ .bds2110ProgressCircle-svg {
881
931
  display: block;
882
932
  }
883
- .bds280ProgressCircle-track {
884
- stroke: var(--bds-color_bg--subtle);
933
+ .bds2110ProgressCircle-track {
934
+ stroke: var(--progressCircle_color-track, var(--bds-color_bg--subtle));
885
935
  }
886
- .bds280ProgressCircle-fill {
936
+ .bds2110ProgressCircle-fill {
887
937
  stroke: var(--progressCircle_color-active, var(--bdc-color_active));
888
938
  transition: stroke-dashoffset var(--bds-animation_transition-duration) var(--bds-animation_easing);
889
939
  }
890
- .bds280ProgressCircle-value {
940
+ .bds2110ProgressCircle-value {
891
941
  position: absolute;
892
942
  font-size: var(--bds-font_size--body--s);
893
943
  font-weight: var(--bds-font_weight--semibold);
@@ -895,53 +945,60 @@
895
945
  color: var(--bds-color_on-bg);
896
946
  line-height: 1;
897
947
  }
898
- .bds280ProgressCircle---size_small .bds280ProgressCircle-value {
899
- font-size: 0.5rem;
948
+ .bds2110ProgressCircle---size_small .bds2110ProgressCircle-value {
949
+ font-size: var(--progressCircle_font-size--small, var(--bds-font_size--body--s));
900
950
  }
901
- .bds280ProgressCircle---size_medium .bds280ProgressCircle-value {
951
+ .bds2110ProgressCircle---size_medium .bds2110ProgressCircle-value {
902
952
  font-size: var(--bds-font_size--body--s);
903
953
  }
904
- .bds280ProgressCircle---size_large .bds280ProgressCircle-value {
954
+ .bds2110ProgressCircle---size_large .bds2110ProgressCircle-value {
905
955
  font-size: var(--bds-font_size--body);
906
956
  }
907
957
  @media (prefers-reduced-motion: reduce) {
908
- .bds280ProgressCircle-fill {
958
+ .bds2110ProgressCircle-fill {
909
959
  transition: none;
910
960
  }
911
961
  }
912
962
  }
913
963
 
914
964
  /* src/components/ui/Separator/Separator.module.css */
915
- @layer boostdev.bds280Separator-component {
916
- .bds280Separator-separator {
965
+ @layer boostdev.bds2110Separator-component {
966
+ .bds2110Separator-separator {
917
967
  border: none;
918
968
  background-color: var(--separator_color, var(--bds-color_on-bg));
919
969
  }
920
- .bds280Separator-separator.bds280Separator---horizontal {
970
+ .bds2110Separator-separator.bds2110Separator---horizontal {
921
971
  display: block;
922
972
  inline-size: 100%;
923
973
  block-size: var(--separator_thickness, 1px);
924
974
  }
925
- .bds280Separator-separator.bds280Separator---vertical {
975
+ .bds2110Separator-separator.bds2110Separator---vertical {
926
976
  display: inline-block;
927
977
  inline-size: var(--separator_thickness, 1px);
978
+ min-block-size: var(--separator_length, 1em);
928
979
  align-self: stretch;
929
980
  }
930
981
  }
931
982
 
932
983
  /* src/components/ui/Skeleton/Skeleton.module.css */
933
- @layer boostdev.bds280Skeleton-component {
934
- .bds280Skeleton-skeleton {
984
+ @layer boostdev.bds2110Skeleton-component {
985
+ .bds2110Skeleton-skeleton {
935
986
  background:
936
987
  linear-gradient(
937
988
  90deg,
938
- var(--bds-color_grey--subtle) 25%,
939
- var(--bds-color_bg) 50%,
940
- var(--bds-color_grey--subtle) 75%);
989
+ var(--skeleton_color-base, var(--bds-color_grey--subtle)) 25%,
990
+ var(--skeleton_color-highlight, var(--bds-color_bg)) 50%,
991
+ var(--skeleton_color-base, var(--bds-color_grey--subtle)) 75%);
941
992
  background-size: 200% 100%;
942
993
  animation: shimmer 1.5s infinite;
943
- border-radius: var(--bds-border_radius--xs);
944
- min-block-size: var(--bds-space_m);
994
+ border-radius: var(--skeleton_radius, var(--bds-border_radius--xs));
995
+ min-block-size: var(--skeleton_min-block-size, var(--bds-space_m));
996
+ }
997
+ @media (prefers-reduced-motion: reduce) {
998
+ .bds2110Skeleton-skeleton {
999
+ animation: none;
1000
+ background: var(--skeleton_color-base, var(--bds-color_grey--subtle));
1001
+ }
945
1002
  }
946
1003
  }
947
1004
  @keyframes shimmer {
@@ -954,152 +1011,156 @@
954
1011
  }
955
1012
 
956
1013
  /* src/components/ui/SkipLink/SkipLink.module.css */
957
- @layer boostdev.bds280SkipLink-component {
958
- .bds280SkipLink-skipLink {
1014
+ @layer boostdev.bds2110SkipLink-component {
1015
+ .bds2110SkipLink-skipLink {
959
1016
  position: absolute;
960
- inset-block-start: var(--bds-space_s);
961
- inset-inline-start: var(--bds-space_s);
962
- z-index: var(--z_overlay);
963
- padding: var(--bds-space_xs) var(--bds-space_m);
1017
+ inset-block-start: var(--skip-link_inset, var(--bds-space_s));
1018
+ inset-inline-start: var(--skip-link_inset, var(--bds-space_s));
1019
+ z-index: var(--skip-link_z-index, var(--bds-z-index_xl));
1020
+ padding: var(--skip-link_padding, var(--bds-space_xs) var(--bds-space_m));
964
1021
  background-color: var(--bds-color_bg);
965
1022
  color: var(--bds-color_on-bg);
966
- font-size: var(--bds-font_size--body);
1023
+ font-size: var(--skip-link_font-size, var(--bds-font_size--body));
967
1024
  font-weight: var(--bds-font_weight--semibold);
968
- border-radius: var(--bds-border_radius--s);
1025
+ border-radius: var(--skip-link_radius, var(--bds-border_radius--s));
969
1026
  text-decoration: none;
970
1027
  --bdc_color: var(--color_focus, var(--bds-color_interactive));
971
1028
  border: var(--skip-link_border, none);
972
- box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
1029
+ box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--skip-link_shadow, var(--bdc-outline_shadow));
973
1030
  transform: translateY(-200%);
974
1031
  transition: transform var(--bds-animation_transition-duration) var(--bds-animation_easing);
975
1032
  }
976
- .bds280SkipLink-skipLink:focus-visible {
1033
+ .bds2110SkipLink-skipLink:focus-visible {
977
1034
  transform: translateY(0);
978
1035
  outline: var(--bds-outline_default);
979
1036
  outline-offset: var(--bds-outline_offset);
980
1037
  }
981
1038
  @media (prefers-reduced-motion: reduce) {
982
- .bds280SkipLink-skipLink {
1039
+ .bds2110SkipLink-skipLink {
983
1040
  transition: none;
984
1041
  }
985
1042
  }
986
1043
  }
987
1044
 
988
1045
  /* src/components/ui/Table/Table.module.css */
989
- @layer boostdev.bds280Table-component {
990
- .bds280Table-wrapper {
1046
+ @layer boostdev.bds2110Table-component {
1047
+ .bds2110Table-wrapper {
991
1048
  inline-size: 100%;
992
1049
  overflow-inline: auto;
993
1050
  border: var(--table_border, none);
994
1051
  --bdc_color: var(--bds-color_bg--subtle);
995
1052
  --bdc-outline_radius: var(--bds-border_radius--s);
996
1053
  border-radius: var(--table_radius, var(--bdc-outline_radius));
997
- box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
1054
+ box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--table_shadow, var(--bdc-outline_shadow));
1055
+ }
1056
+ .bds2110Table-wrapper:focus-visible {
1057
+ outline: var(--bds-outline_default);
1058
+ outline-offset: calc(var(--bds-outline_offset) * -1);
998
1059
  }
999
- .bds280Table-table {
1060
+ .bds2110Table-table {
1000
1061
  inline-size: 100%;
1001
1062
  border-collapse: collapse;
1002
- font-size: var(--bds-font_size--body);
1063
+ font-size: var(--table_font-size, var(--bds-font_size--body));
1003
1064
  font-family: var(--bds-font_family--body);
1004
1065
  }
1005
- .bds280Table-caption {
1066
+ .bds2110Table-caption {
1006
1067
  caption-side: top;
1007
1068
  text-align: start;
1008
- padding: var(--bds-space_s) var(--bds-space_m);
1069
+ padding: var(--table_cell-padding, var(--bds-space_s) var(--bds-space_m));
1009
1070
  font-weight: var(--bds-font_weight--semibold);
1010
1071
  color: var(--bds-color_on-bg);
1011
1072
  }
1012
- .bds280Table-thead {
1073
+ .bds2110Table-thead {
1013
1074
  background-color: var(--bds-color_bg--subtle);
1014
1075
  }
1015
- .bds280Table-th {
1016
- padding: var(--bds-space_s) var(--bds-space_m);
1076
+ .bds2110Table-th {
1077
+ padding: var(--table_cell-padding, var(--bds-space_s) var(--bds-space_m));
1017
1078
  text-align: start;
1018
1079
  font-weight: var(--bds-font_weight--semibold);
1019
- font-size: var(--bds-font_size--body--s);
1080
+ font-size: var(--table_header-font-size, var(--bds-font_size--body--s));
1020
1081
  color: var(--bds-color_on-bg--subtle);
1021
1082
  white-space: nowrap;
1022
1083
  border-block-end: 1px solid var(--bds-color_bg--subtle);
1023
1084
  }
1024
- .bds280Table-th.bds280Table---sortable {
1085
+ .bds2110Table-th.bds2110Table---sortable {
1025
1086
  padding: 0;
1026
1087
  }
1027
- .bds280Table-sortButton {
1088
+ .bds2110Table-sortButton {
1028
1089
  all: unset;
1029
1090
  display: flex;
1030
1091
  align-items: center;
1031
1092
  gap: var(--bds-space_xxs);
1032
- padding: var(--bds-space_s) var(--bds-space_m);
1093
+ padding: var(--table_cell-padding, var(--bds-space_s) var(--bds-space_m));
1033
1094
  inline-size: 100%;
1034
1095
  cursor: pointer;
1035
1096
  color: var(--bds-color_on-bg--subtle);
1036
1097
  font-weight: var(--bds-font_weight--semibold);
1037
- font-size: var(--bds-font_size--body--s);
1098
+ font-size: var(--table_header-font-size, var(--bds-font_size--body--s));
1038
1099
  transition: var(--bds-animation_transition);
1039
1100
  box-sizing: border-box;
1040
1101
  }
1041
- .bds280Table-sortButton:focus-visible {
1102
+ .bds2110Table-sortButton:focus-visible {
1042
1103
  outline: var(--bds-outline_default);
1043
1104
  outline-offset: calc(var(--bds-outline_offset) * -1);
1044
1105
  }
1045
1106
  @media (hover: hover) and (pointer: fine) {
1046
- .bds280Table-sortButton:hover {
1107
+ .bds2110Table-sortButton:hover {
1047
1108
  color: var(--table_sortBtn-color--hover, var(--bds-color_on-bg));
1048
1109
  }
1049
1110
  }
1050
- .bds280Table-sortIcon {
1111
+ .bds2110Table-sortIcon {
1051
1112
  inline-size: 1rem;
1052
1113
  block-size: 1rem;
1053
1114
  opacity: 0.4;
1054
1115
  transition: transform var(--bds-animation_transition-duration) var(--bds-animation_easing), opacity var(--bds-animation_transition-duration) var(--bds-animation_easing);
1055
1116
  }
1056
- .bds280Table-sortIcon.bds280Table---sort-active {
1117
+ .bds2110Table-sortIcon.bds2110Table---sort-active {
1057
1118
  opacity: 1;
1058
1119
  color: var(--bds-color_interactive);
1059
1120
  }
1060
- .bds280Table-sortIcon.bds280Table---sort-desc {
1121
+ .bds2110Table-sortIcon.bds2110Table---sort-desc {
1061
1122
  transform: rotate(180deg);
1062
1123
  }
1063
- .bds280Table-tbody .bds280Table-tr {
1124
+ .bds2110Table-tbody .bds2110Table-tr {
1064
1125
  border-block-end: 1px solid var(--bds-color_bg--subtle);
1065
1126
  transition: var(--bds-animation_transition);
1066
1127
  }
1067
- .bds280Table-tbody .bds280Table-tr:last-child {
1128
+ .bds2110Table-tbody .bds2110Table-tr:last-child {
1068
1129
  border-block-end: none;
1069
1130
  }
1070
1131
  @media (hover: hover) and (pointer: fine) {
1071
- .bds280Table-tbody .bds280Table-tr:hover {
1132
+ .bds2110Table-tbody .bds2110Table-tr:hover {
1072
1133
  background-color: var(--table_row-bg--hover, var(--bds-color_bg--subtle));
1073
1134
  }
1074
1135
  }
1075
- .bds280Table-td {
1076
- padding: var(--bds-space_s) var(--bds-space_m);
1136
+ .bds2110Table-td {
1137
+ padding: var(--table_cell-padding, var(--bds-space_s) var(--bds-space_m));
1077
1138
  color: var(--bds-color_on-bg);
1078
1139
  vertical-align: middle;
1079
1140
  }
1080
1141
  @media (prefers-reduced-motion: reduce) {
1081
- .bds280Table-sortIcon {
1142
+ .bds2110Table-sortIcon {
1082
1143
  transition: none;
1083
1144
  }
1084
1145
  }
1085
1146
  }
1086
1147
 
1087
1148
  /* src/components/ui/Tabs/Tabs.module.css */
1088
- @layer boostdev.bds280Tabs-component {
1089
- .bds280Tabs-tabs {
1149
+ @layer boostdev.bds2110Tabs-component {
1150
+ .bds2110Tabs-tabs {
1090
1151
  display: flex;
1091
1152
  flex-direction: column;
1092
1153
  }
1093
- .bds280Tabs-tabList {
1154
+ .bds2110Tabs-tabList {
1094
1155
  display: flex;
1095
1156
  border-block-end: 1px solid var(--bds-color_bg--subtle);
1096
- gap: var(--bds-space_xxs);
1157
+ gap: var(--tabs_gap, var(--bds-space_xxs));
1097
1158
  }
1098
- .bds280Tabs-tab {
1159
+ .bds2110Tabs-tab {
1099
1160
  all: unset;
1100
1161
  display: inline-flex;
1101
1162
  align-items: center;
1102
- padding: var(--bds-space_s) var(--bds-space_m);
1163
+ padding: var(--tab_padding, var(--bds-space_s) var(--bds-space_m));
1103
1164
  font-family: var(--bds-font_family--body);
1104
1165
  font-size: var(--bds-font_size--body);
1105
1166
  font-weight: var(--bds-font_weight--semibold);
@@ -1109,118 +1170,125 @@
1109
1170
  cursor: pointer;
1110
1171
  transition: var(--bds-animation_transition);
1111
1172
  }
1112
- .bds280Tabs-tab.bds280Tabs---active {
1173
+ .bds2110Tabs-tab.bds2110Tabs---active {
1113
1174
  --tab_color--state: var(--tab_color--active, var(--bds-color_interactive_on-bg));
1114
1175
  --tab_border-color--state: var(--tab_border-color--active, var(--bds-color_interactive));
1115
1176
  }
1116
- .bds280Tabs-tab:disabled {
1177
+ .bds2110Tabs-tab:disabled {
1117
1178
  opacity: 0.4;
1118
1179
  cursor: not-allowed;
1119
1180
  }
1120
- .bds280Tabs-tab:focus-visible {
1181
+ .bds2110Tabs-tab:focus-visible {
1121
1182
  outline: var(--bds-outline_default);
1122
1183
  outline-offset: var(--bds-outline_offset);
1123
1184
  border-radius: var(--bds-border_radius--xs);
1124
1185
  }
1125
1186
  @media (hover: hover) and (pointer: fine) {
1126
- .bds280Tabs-tab:not(:disabled, .bds280Tabs---active):hover {
1187
+ .bds2110Tabs-tab:not(:disabled, .bds2110Tabs---active):hover {
1127
1188
  --tab_color--state: var(--tab_color--hover, var(--bds-color_interactive_on-bg));
1128
1189
  }
1129
1190
  }
1130
- .bds280Tabs-panel {
1131
- padding-block-start: var(--bds-space_m);
1191
+ .bds2110Tabs-panel {
1192
+ padding-block-start: var(--tabs_panel-padding, var(--bds-space_m));
1132
1193
  }
1133
- .bds280Tabs-panel:focus-visible {
1194
+ .bds2110Tabs-panel:focus-visible {
1134
1195
  outline: var(--bds-outline_default);
1135
1196
  outline-offset: var(--bds-outline_offset);
1136
1197
  }
1137
1198
  }
1138
1199
 
1139
1200
  /* src/components/ui/Tooltip/Tooltip.module.css */
1140
- @layer boostdev.bds280Tooltip-component {
1141
- .bds280Tooltip-wrapper {
1201
+ @layer boostdev.bds2110Tooltip-component {
1202
+ .bds2110Tooltip-wrapper {
1142
1203
  position: relative;
1143
1204
  display: inline-flex;
1144
1205
  align-items: center;
1145
1206
  }
1146
- .bds280Tooltip-tooltip {
1207
+ .bds2110Tooltip-tooltip {
1208
+ display: block;
1147
1209
  position: absolute;
1148
1210
  z-index: var(--bds-z-index_popover);
1149
- padding: var(--bds-space_xxs) var(--bds-space_xs);
1211
+ padding: var(--tooltip_padding, var(--bds-space_xxs) var(--bds-space_xs));
1150
1212
  border-radius: var(--tooltip_radius, var(--bds-border_radius--full));
1151
1213
  background-color: var(--tooltip_bg, var(--bds-color_on-bg));
1152
1214
  color: var(--tooltip_text, var(--bds-color_bg));
1153
- font-size: var(--bds-font_size--body--s);
1215
+ font-size: var(--tooltip_font-size, var(--bds-font_size--body--s));
1154
1216
  line-height: var(--bds-font_line-height--body);
1155
- white-space: nowrap;
1217
+ max-inline-size: var(--tooltip_max-inline-size, 20rem);
1218
+ white-space: normal;
1156
1219
  pointer-events: none;
1220
+ --tooltip_dir: 1;
1157
1221
  visibility: hidden;
1158
1222
  opacity: 0;
1159
1223
  transition: opacity var(--bds-animation_transition-duration) var(--bds-animation_easing);
1160
1224
  }
1161
- .bds280Tooltip-wrapper:hover .bds280Tooltip-tooltip,
1162
- .bds280Tooltip-wrapper:focus-within .bds280Tooltip-tooltip {
1225
+ [dir=rtl] .bds2110Tooltip-tooltip,
1226
+ .bds2110Tooltip-tooltip[dir=rtl] {
1227
+ --tooltip_dir: -1;
1228
+ }
1229
+ .bds2110Tooltip---visible {
1163
1230
  visibility: visible;
1164
1231
  opacity: 1;
1232
+ pointer-events: auto;
1165
1233
  }
1166
- .bds280Tooltip---placement_top {
1167
- inset-block-end: calc(100% + var(--bds-space_xs));
1234
+ .bds2110Tooltip---placement_top {
1235
+ inset-block-end: calc(100% + var(--tooltip_offset, var(--bds-space_xs)));
1168
1236
  inset-inline-start: 50%;
1169
- transform: translateX(-50%);
1237
+ transform: translateX(calc(-50% * var(--tooltip_dir, 1)));
1170
1238
  }
1171
- .bds280Tooltip---placement_bottom {
1172
- inset-block-start: calc(100% + var(--bds-space_xs));
1239
+ .bds2110Tooltip---placement_bottom {
1240
+ inset-block-start: calc(100% + var(--tooltip_offset, var(--bds-space_xs)));
1173
1241
  inset-inline-start: 50%;
1174
- transform: translateX(-50%);
1242
+ transform: translateX(calc(-50% * var(--tooltip_dir, 1)));
1175
1243
  }
1176
- .bds280Tooltip---placement_left {
1177
- inset-inline-end: calc(100% + var(--bds-space_xs));
1244
+ .bds2110Tooltip---placement_left {
1245
+ inset-inline-end: calc(100% + var(--tooltip_offset, var(--bds-space_xs)));
1178
1246
  inset-block-start: 50%;
1179
1247
  transform: translateY(-50%);
1180
1248
  }
1181
- .bds280Tooltip---placement_right {
1182
- inset-inline-start: calc(100% + var(--bds-space_xs));
1249
+ .bds2110Tooltip---placement_right {
1250
+ inset-inline-start: calc(100% + var(--tooltip_offset, var(--bds-space_xs)));
1183
1251
  inset-block-start: 50%;
1184
1252
  transform: translateY(-50%);
1185
1253
  }
1186
1254
  @media (prefers-reduced-motion: reduce) {
1187
- .bds280Tooltip-tooltip {
1255
+ .bds2110Tooltip-tooltip {
1188
1256
  transition: none;
1189
1257
  }
1190
1258
  }
1191
1259
  }
1192
1260
 
1193
1261
  /* src/components/ui/Typography/Typography.module.css */
1194
- @layer boostdev.bds280Typography-component {
1195
- .bds280Typography-typography {
1262
+ @layer boostdev.bds2110Typography-component {
1263
+ .bds2110Typography-typography {
1196
1264
  margin: 0;
1197
1265
  font-family: var(--bds-font_family--body);
1198
1266
  color: var(--typography_color, var(--bds-color_on-bg));
1199
1267
  }
1200
- .bds280Typography---h1 {
1268
+ .bds2110Typography---h1 {
1201
1269
  font-family: var(--bds-font_family--heading);
1202
- font-size: var(--bds-font_size--heading-1);
1270
+ font-size: var(--typography_font-size--h1, var(--bds-font_size--heading-1));
1203
1271
  font-weight: var(--bds-font_weight--bold);
1204
1272
  line-height: var(--bds-font_line-height--heading);
1205
1273
  }
1206
- .bds280Typography---h2 {
1274
+ .bds2110Typography---h2 {
1207
1275
  font-family: var(--bds-font_family--heading);
1208
- font-size: var(--bds-font_size--heading-2);
1276
+ font-size: var(--typography_font-size--h2, var(--bds-font_size--heading-2));
1209
1277
  font-weight: var(--bds-font_weight--semibold);
1210
1278
  line-height: var(--bds-font_line-height--heading);
1211
1279
  }
1212
- .bds280Typography---h3 {
1280
+ .bds2110Typography---h3 {
1213
1281
  font-family: var(--bds-font_family--heading);
1214
- font-size: var(--bds-font_size--heading-3);
1282
+ font-size: var(--typography_font-size--h3, var(--bds-font_size--heading-3));
1215
1283
  font-weight: var(--bds-font_weight--semibold);
1216
1284
  line-height: var(--bds-font_line-height--heading);
1217
1285
  }
1218
- .bds280Typography---body {
1219
- font-size: var(--bds-font_size--body);
1286
+ .bds2110Typography---body {
1287
+ font-size: var(--typography_font-size--body, var(--bds-font_size--body));
1220
1288
  line-height: var(--bds-font_line-height--body);
1221
1289
  }
1222
- .bds280Typography---body_s {
1223
- font-size: var(--bds-font_size--body--s);
1290
+ .bds2110Typography---body_s {
1291
+ font-size: var(--typography_font-size--body_s, var(--bds-font_size--body--s));
1224
1292
  line-height: var(--bds-font_line-height--body);
1225
1293
  }
1226
1294
  }
@@ -1250,9 +1318,9 @@
1250
1318
  box-shadow: 0 0 0 0 rgb(from var(--button_pulse-color, var(--button_color, var(--bds-color_interactive))) r g b / 0%);
1251
1319
  }
1252
1320
  }
1253
- @layer boostdev.bds280Button-component {
1254
- .bds280Button-button,
1255
- .bds280Button-button[href] {
1321
+ @layer boostdev.bds2110Button-component {
1322
+ .bds2110Button-button,
1323
+ .bds2110Button-button[href] {
1256
1324
  all: unset;
1257
1325
  position: relative;
1258
1326
  font: inherit;
@@ -1268,87 +1336,84 @@
1268
1336
  font-size: var(--button_font-size, inherit);
1269
1337
  white-space: nowrap;
1270
1338
  line-height: 1;
1271
- --button_color: var(--bds-color_interactive);
1272
- --button_on-color: var(--bds-color_on-interactive);
1273
- --button_color--on-bg: var(--bds-color_interactive_on-bg);
1274
- background-color: var(--button_bg, var(--button_bg--variant, var(--button_color)));
1275
- color: var(--button_text, var(--button_text--variant, var(--button_on-color)));
1339
+ background-color: var(--button_bg, var(--button_bg--variant, var(--button_color, var(--bds-color_interactive))));
1340
+ color: var(--button_text, var(--button_text--variant, var(--button_on-color, var(--bds-color_on-interactive))));
1276
1341
  --bdc_color: var(--button_border, var(--button_border--variant, transparent));
1277
1342
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
1278
1343
  transition: var(--bds-animation_transition), --bdc_color var(--bds-animation_transition-duration) var(--bds-animation_easing);
1279
1344
  }
1280
- .bds280Button-button.bds280Button---default {
1345
+ .bds2110Button-button.bds2110Button---default {
1281
1346
  }
1282
- .bds280Button-button.bds280Button---outline,
1283
- .bds280Button-button.bds280Button---ghost {
1347
+ .bds2110Button-button.bds2110Button---outline,
1348
+ .bds2110Button-button.bds2110Button---ghost {
1284
1349
  --button_bg--variant: var(--button_bg--outline, transparent);
1285
- --button_text--variant: var(--button_text--outline, var(--button_color--on-bg));
1286
- --button_border--variant: var(--button_border--outline, var(--button_color--on-bg));
1350
+ --button_text--variant: var(--button_text--outline, var(--button_color--on-bg, var(--bds-color_interactive_on-bg)));
1351
+ --button_border--variant: var(--button_border--outline, var(--button_color--on-bg, var(--bds-color_interactive_on-bg)));
1287
1352
  }
1288
- .bds280Button-button.bds280Button---size_small {
1353
+ .bds2110Button-button.bds2110Button---size_small {
1289
1354
  --button_height: 2.25em;
1290
1355
  --button_font-size: var(--bds-font_size--body--s);
1291
1356
  padding-inline: var(--bds-space_m);
1292
1357
  }
1293
- .bds280Button-button.bds280Button---size_medium {
1358
+ .bds2110Button-button.bds2110Button---size_medium {
1294
1359
  --button_height: 3em;
1295
1360
  padding-inline: var(--bds-space_l);
1296
1361
  }
1297
- .bds280Button-button.bds280Button---size_large {
1362
+ .bds2110Button-button.bds2110Button---size_large {
1298
1363
  --button_font-size: var(--bds-font_size--heading-3);
1299
1364
  padding-inline: var(--bds-space_xl);
1300
1365
  }
1301
- .bds280Button-button.bds280Button---hasPulse {
1366
+ .bds2110Button-button.bds2110Button---hasPulse {
1302
1367
  animation: pulse 3s infinite;
1303
1368
  }
1304
- .bds280Button-button.bds280Button---iconOnly {
1369
+ .bds2110Button-button.bds2110Button---iconOnly {
1305
1370
  aspect-ratio: 1;
1306
1371
  box-sizing: border-box;
1307
1372
  padding: var(--bds-space_xxs);
1308
1373
  }
1309
- .bds280Button-button.bds280Button---iconOnly > * {
1374
+ .bds2110Button-button.bds2110Button---iconOnly > * {
1310
1375
  inline-size: 100%;
1311
1376
  block-size: 100%;
1312
1377
  }
1313
- .bds280Button-button[href] {
1378
+ .bds2110Button-button[href] {
1314
1379
  text-decoration: none;
1315
1380
  }
1316
- .bds280Button-button svg {
1381
+ .bds2110Button-button svg {
1317
1382
  --icon__stroke: currentcolor;
1318
1383
  fill: currentcolor;
1319
1384
  color: currentcolor;
1320
1385
  flex-shrink: 0;
1321
1386
  }
1322
- .bds280Button-iconStart {
1387
+ .bds2110Button-iconStart {
1323
1388
  display: flex;
1324
1389
  align-items: center;
1325
1390
  margin-inline-start: calc(var(--bds-space_s) * -1);
1326
1391
  transition: var(--bds-animation_transition);
1327
1392
  }
1328
- .bds280Button-iconEnd {
1393
+ .bds2110Button-iconEnd {
1329
1394
  display: flex;
1330
1395
  align-items: center;
1331
1396
  margin-inline-end: calc(var(--bds-space_s) * -1);
1332
1397
  transition: var(--bds-animation_transition);
1333
1398
  }
1334
- .bds280Button-button.bds280Button---iconOnly .bds280Button-iconStart,
1335
- .bds280Button-button.bds280Button---iconOnly .bds280Button-iconEnd {
1399
+ .bds2110Button-button.bds2110Button---iconOnly .bds2110Button-iconStart,
1400
+ .bds2110Button-button.bds2110Button---iconOnly .bds2110Button-iconEnd {
1336
1401
  margin-inline: 0;
1337
1402
  }
1338
1403
  @media (hover: hover) and (pointer: fine) {
1339
- .bds280Button-button:hover .bds280Button-iconStart svg {
1404
+ .bds2110Button-button:hover .bds2110Button-iconStart svg {
1340
1405
  animation: fadeZoom 2s ease-out infinite;
1341
1406
  }
1342
- .bds280Button-button:hover .bds280Button-iconEnd svg {
1407
+ .bds2110Button-button:hover .bds2110Button-iconEnd svg {
1343
1408
  animation: fadeZoom 2s ease-out infinite;
1344
1409
  }
1345
1410
  }
1346
- .bds280Button-button:focus-visible {
1411
+ .bds2110Button-button:focus-visible {
1347
1412
  outline: var(--bds-outline_default);
1348
1413
  outline-offset: var(--bds-outline_offset);
1349
1414
  }
1350
1415
  @media (hover: hover) and (pointer: fine) {
1351
- .bds280Button-button.bds280Button---default:hover {
1416
+ .bds2110Button-button.bds2110Button---default:hover {
1352
1417
  --button_bg--variant: var(--button_bg--hover, var(--bds-color_bg));
1353
1418
  --button_text--variant: var(--button_text--hover, var(--bds-color_interactive_on-bg));
1354
1419
  --button_border--variant: var(--button_border--hover, currentcolor);
@@ -1356,45 +1421,52 @@
1356
1421
  }
1357
1422
  }
1358
1423
  @media (hover: hover) and (pointer: fine) {
1359
- .bds280Button-button.bds280Button---outline:hover,
1360
- .bds280Button-button.bds280Button---ghost:hover {
1361
- --button_bg--variant: var(--button_bg--outline-hover, var(--button_color));
1362
- --button_text--variant: var(--button_text--outline-hover, var(--button_on-color));
1424
+ .bds2110Button-button.bds2110Button---outline:hover,
1425
+ .bds2110Button-button.bds2110Button---ghost:hover {
1426
+ --button_bg--variant: var(--button_bg--outline-hover, var(--button_color, var(--bds-color_interactive)));
1427
+ --button_text--variant: var(--button_text--outline-hover, var(--button_on-color, var(--bds-color_on-interactive)));
1363
1428
  --button_border--variant: var(--button_border--outline-hover, transparent);
1364
1429
  }
1365
1430
  }
1431
+ @media (prefers-reduced-motion: reduce) {
1432
+ .bds2110Button-button.bds2110Button---hasPulse,
1433
+ .bds2110Button-button:hover .bds2110Button-iconStart svg,
1434
+ .bds2110Button-button:hover .bds2110Button-iconEnd svg {
1435
+ animation: none;
1436
+ }
1437
+ }
1366
1438
  }
1367
1439
 
1368
1440
  /* src/components/interaction/Command/Command.module.css */
1369
- @layer boostdev.bds280Command-component {
1370
- .bds280Command-dialog {
1441
+ @layer boostdev.bds2110Command-component {
1442
+ .bds2110Command-dialog {
1371
1443
  padding: 0;
1372
1444
  border: none;
1373
- border-radius: var(--bds-border_radius--m);
1445
+ border-radius: var(--command_radius, var(--bds-border_radius--m));
1374
1446
  background: transparent;
1375
1447
  inline-size: min(40rem, 90vw);
1376
1448
  max-block-size: 70vh;
1377
1449
  overflow: visible;
1378
1450
  margin-block-start: 10vh;
1379
1451
  }
1380
- .bds280Command-dialog::backdrop {
1452
+ .bds2110Command-dialog::backdrop {
1381
1453
  background-color: var(--color_backdrop, rgb(0 0 0 / 50%));
1382
1454
  backdrop-filter: blur(3px);
1383
1455
  }
1384
- .bds280Command-palette {
1456
+ .bds2110Command-palette {
1385
1457
  display: flex;
1386
1458
  flex-direction: column;
1387
1459
  background-color: var(--command_color, var(--bds-color_bg));
1388
1460
  color: var(--command_on-color, var(--bds-color_on-bg));
1389
- border-radius: var(--bds-border_radius--m);
1390
1461
  overflow: hidden;
1391
1462
  max-block-size: 70vh;
1392
1463
  border: var(--command_border, none);
1393
1464
  --bdc_color: currentcolor;
1394
1465
  --bdc-outline_radius: var(--bds-border_radius--m);
1466
+ border-radius: var(--command_radius, var(--bdc-outline_radius));
1395
1467
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--command_shadow, var(--bds-shadow_xl));
1396
1468
  }
1397
- .bds280Command-searchRow {
1469
+ .bds2110Command-searchRow {
1398
1470
  display: flex;
1399
1471
  align-items: center;
1400
1472
  gap: var(--bds-space_xs);
@@ -1402,47 +1474,50 @@
1402
1474
  border-block-end: 1px solid currentcolor;
1403
1475
  flex-shrink: 0;
1404
1476
  }
1405
- .bds280Command-searchIcon {
1477
+ .bds2110Command-searchIcon {
1406
1478
  inline-size: 1.25rem;
1407
1479
  block-size: 1.25rem;
1408
1480
  color: var(--bds-color_on-bg);
1409
1481
  flex-shrink: 0;
1410
1482
  }
1411
- .bds280Command-search {
1483
+ .bds2110Command-search {
1412
1484
  flex: 1;
1413
1485
  border: none;
1414
- outline: none;
1415
1486
  font-family: var(--bds-font_family--body);
1416
1487
  font-size: var(--bds-font_size--body);
1417
1488
  color: var(--bds-color_on-bg);
1418
1489
  background: transparent;
1419
1490
  min-inline-size: 0;
1420
1491
  }
1421
- .bds280Command-search::placeholder {
1492
+ .bds2110Command-search:focus-visible {
1493
+ outline: var(--bds-outline_default);
1494
+ outline-offset: var(--bds-outline_offset);
1495
+ }
1496
+ .bds2110Command-search::placeholder {
1422
1497
  color: var(--bds-color_on-bg);
1423
1498
  }
1424
- .bds280Command-escHint {
1499
+ .bds2110Command-escHint {
1425
1500
  font-size: var(--bds-font_size--body--s);
1426
1501
  color: var(--bds-color_on-bg);
1427
- border-radius: var(--bds-border_radius--xs);
1428
- padding: 0.1em 0.4em;
1502
+ border-radius: var(--command_kbd-radius, var(--bds-border_radius--xs));
1503
+ padding: var(--bds-space_xxxs) var(--bds-space_xxs);
1429
1504
  flex-shrink: 0;
1430
1505
  --bdc_color: currentcolor;
1431
1506
  border: none;
1432
1507
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
1433
1508
  }
1434
- .bds280Command-list {
1509
+ .bds2110Command-list {
1435
1510
  overflow-block: auto;
1436
1511
  list-style: none;
1437
1512
  margin: 0;
1438
1513
  padding: var(--bds-space_xs) 0;
1439
1514
  }
1440
- .bds280Command-groupList {
1515
+ .bds2110Command-groupList {
1441
1516
  list-style: none;
1442
1517
  margin: 0;
1443
1518
  padding: 0;
1444
1519
  }
1445
- .bds280Command-group {
1520
+ .bds2110Command-group {
1446
1521
  padding: var(--bds-space_xs) var(--bds-space_m);
1447
1522
  font-size: var(--bds-font_size--body--s);
1448
1523
  font-weight: var(--bds-font_weight--semibold);
@@ -1450,7 +1525,7 @@
1450
1525
  text-transform: uppercase;
1451
1526
  letter-spacing: 0.05em;
1452
1527
  }
1453
- .bds280Command-item {
1528
+ .bds2110Command-item {
1454
1529
  display: flex;
1455
1530
  align-items: center;
1456
1531
  gap: var(--bds-space_s);
@@ -1458,42 +1533,53 @@
1458
1533
  cursor: pointer;
1459
1534
  transition: background-color var(--bds-animation_transition-duration) var(--bds-animation_easing);
1460
1535
  }
1461
- .bds280Command-itemActive {
1536
+ .bds2110Command-itemActive {
1462
1537
  background-color: var(--command_item-bg--active, var(--bds-color_bg--subtle));
1463
1538
  }
1464
- .bds280Command-itemLabel {
1539
+ .bds2110Command-itemLabel {
1465
1540
  flex: 1;
1466
1541
  font-size: var(--bds-font_size--body);
1467
1542
  color: var(--bds-color_on-bg);
1468
1543
  }
1469
- .bds280Command-itemDesc {
1544
+ .bds2110Command-itemDesc {
1470
1545
  font-size: var(--bds-font_size--body--s);
1471
1546
  color: var(--bds-color_on-bg);
1472
1547
  }
1473
- .bds280Command-shortcut {
1548
+ .bds2110Command-shortcut {
1474
1549
  font-size: var(--bds-font_size--body--s);
1475
1550
  color: var(--bds-color_on-bg);
1476
- border-radius: var(--bds-border_radius--xs);
1477
- padding: 0.1em 0.4em;
1551
+ border-radius: var(--command_kbd-radius, var(--bds-border_radius--xs));
1552
+ padding: var(--bds-space_xxxs) var(--bds-space_xxs);
1478
1553
  --bdc_color: currentcolor;
1479
1554
  border: none;
1480
1555
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
1481
1556
  }
1482
- .bds280Command-empty {
1557
+ .bds2110Command-empty {
1483
1558
  padding: var(--bds-space_l) var(--bds-space_m);
1484
1559
  text-align: center;
1485
1560
  color: var(--bds-color_on-bg);
1486
1561
  font-size: var(--bds-font_size--body);
1487
1562
  }
1563
+ .bds2110Command-srOnly {
1564
+ position: absolute;
1565
+ inline-size: 1px;
1566
+ block-size: 1px;
1567
+ overflow: hidden;
1568
+ clip: rect(0, 0, 0, 0);
1569
+ white-space: nowrap;
1570
+ border: 0;
1571
+ }
1488
1572
  }
1489
1573
 
1490
1574
  /* src/components/interaction/Dialog/Dialog.module.css */
1491
- @layer boostdev.bds280Dialog-component {
1492
- .bds280Dialog-dialog {
1575
+ @layer boostdev.bds2110Dialog-component {
1576
+ .bds2110Dialog-dialog {
1493
1577
  font-size: var(--bds-font_size--body--s);
1494
1578
  border: var(--dialog_border, none);
1495
1579
  --bdc_color: currentcolor;
1496
1580
  --bdc-outline_radius: var(--bds-border_radius--m);
1581
+ display: flex;
1582
+ flex-direction: column;
1497
1583
  border-radius: var(--dialog_radius, var(--bdc-outline_radius));
1498
1584
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--dialog_shadow, var(--bdc-outline_shadow));
1499
1585
  background-color: var(--dialog_color ,var(--bds-color_grey--subtle));
@@ -1503,14 +1589,17 @@
1503
1589
  max-block-size: 90svh;
1504
1590
  overflow: visible;
1505
1591
  }
1506
- .bds280Dialog-dialogContent {
1592
+ .bds2110Dialog-dialog:not([open]) {
1593
+ display: none;
1594
+ }
1595
+ .bds2110Dialog-dialogContent {
1507
1596
  display: grid;
1508
1597
  gap: var(--bds-grid_gap);
1509
1598
  overflow-block: auto;
1510
1599
  min-block-size: 0;
1511
1600
  flex: 1;
1512
1601
  }
1513
- .bds280Dialog-closeButton {
1602
+ .bds2110Dialog-closeButton {
1514
1603
  all: unset;
1515
1604
  position: absolute;
1516
1605
  inset-block-start: -1em;
@@ -1528,23 +1617,29 @@
1528
1617
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
1529
1618
  cursor: pointer;
1530
1619
  }
1531
- .bds280Dialog-closeButton:focus-visible {
1620
+ .bds2110Dialog-closeButton::after {
1621
+ content: "";
1622
+ position: absolute;
1623
+ inset-block: -0.5rem;
1624
+ inset-inline: -0.5rem;
1625
+ }
1626
+ .bds2110Dialog-closeButton:focus-visible {
1532
1627
  outline: var(--bds-outline_default);
1533
1628
  outline-offset: var(--bds-outline_offset);
1534
1629
  }
1535
- .bds280Dialog-closeButton svg {
1630
+ .bds2110Dialog-closeButton svg {
1536
1631
  inline-size: 1.25em;
1537
1632
  block-size: 1.25em;
1538
1633
  }
1539
- .bds280Dialog-dialog::backdrop {
1634
+ .bds2110Dialog-dialog::backdrop {
1540
1635
  background-color: var(--color_backdrop, rgb(0 0 0 / 50%));
1541
1636
  backdrop-filter: blur(3px);
1542
1637
  }
1543
1638
  }
1544
1639
 
1545
1640
  /* src/components/interaction/Drawer/Drawer.module.css */
1546
- @layer boostdev.bds280Drawer-component {
1547
- .bds280Drawer-drawer {
1641
+ @layer boostdev.bds2110Drawer-component {
1642
+ .bds2110Drawer-drawer {
1548
1643
  position: fixed;
1549
1644
  inset-block: 0;
1550
1645
  inset-inline: auto 0;
@@ -1559,7 +1654,7 @@
1559
1654
  background-color: var(--drawer_color, var(--bds-color_bg));
1560
1655
  color: var(--drawer_on-color, var(--bds-color_on-bg));
1561
1656
  border: none;
1562
- box-shadow: var(--bds-shadow_xl);
1657
+ box-shadow: var(--drawer_shadow, var(--bds-shadow_xl));
1563
1658
  overflow: hidden;
1564
1659
  translate: 100% 0;
1565
1660
  transition:
@@ -1567,22 +1662,37 @@
1567
1662
  display var(--bds-animation_transition-duration) var(--bds-animation_easing) allow-discrete,
1568
1663
  overlay var(--bds-animation_transition-duration) var(--bds-animation_easing) allow-discrete;
1569
1664
  }
1570
- .bds280Drawer---side_left.bds280Drawer-drawer {
1665
+ .bds2110Drawer-drawer:not([open]) {
1666
+ display: none;
1667
+ }
1668
+ .bds2110Drawer-drawer:dir(rtl) {
1669
+ translate: -100% 0;
1670
+ }
1671
+ .bds2110Drawer---side_left.bds2110Drawer-drawer {
1571
1672
  inset-inline: 0 auto;
1572
1673
  translate: -100% 0;
1573
1674
  }
1574
- .bds280Drawer-drawer[open] {
1675
+ .bds2110Drawer---side_left.bds2110Drawer-drawer:dir(rtl) {
1676
+ translate: 100% 0;
1677
+ }
1678
+ .bds2110Drawer-drawer[open] {
1575
1679
  translate: 0 0;
1576
1680
  }
1577
1681
  @starting-style {
1578
- .bds280Drawer-drawer[open] {
1682
+ .bds2110Drawer-drawer[open] {
1579
1683
  translate: 100% 0;
1580
1684
  }
1581
- .bds280Drawer---side_left.bds280Drawer-drawer[open] {
1685
+ .bds2110Drawer-drawer[open]:dir(rtl) {
1582
1686
  translate: -100% 0;
1583
1687
  }
1688
+ .bds2110Drawer---side_left.bds2110Drawer-drawer[open] {
1689
+ translate: -100% 0;
1690
+ }
1691
+ .bds2110Drawer---side_left.bds2110Drawer-drawer[open]:dir(rtl) {
1692
+ translate: 100% 0;
1693
+ }
1584
1694
  }
1585
- .bds280Drawer-drawer::backdrop {
1695
+ .bds2110Drawer-drawer::backdrop {
1586
1696
  background-color: var(--color_backdrop, rgb(0 0 0 / 50%));
1587
1697
  backdrop-filter: blur(3px);
1588
1698
  opacity: 0;
@@ -1591,15 +1701,15 @@
1591
1701
  display var(--bds-animation_transition-duration) var(--bds-animation_easing) allow-discrete,
1592
1702
  overlay var(--bds-animation_transition-duration) var(--bds-animation_easing) allow-discrete;
1593
1703
  }
1594
- .bds280Drawer-drawer[open]::backdrop {
1704
+ .bds2110Drawer-drawer[open]::backdrop {
1595
1705
  opacity: 1;
1596
1706
  }
1597
1707
  @starting-style {
1598
- .bds280Drawer-drawer[open]::backdrop {
1708
+ .bds2110Drawer-drawer[open]::backdrop {
1599
1709
  opacity: 0;
1600
1710
  }
1601
1711
  }
1602
- .bds280Drawer-header {
1712
+ .bds2110Drawer-header {
1603
1713
  display: flex;
1604
1714
  align-items: center;
1605
1715
  justify-content: space-between;
@@ -1607,31 +1717,31 @@
1607
1717
  border-block-end: 1px solid currentcolor;
1608
1718
  flex-shrink: 0;
1609
1719
  }
1610
- .bds280Drawer-closeButton {
1720
+ .bds2110Drawer-closeButton {
1611
1721
  all: unset;
1612
1722
  display: flex;
1613
1723
  align-items: center;
1614
1724
  justify-content: center;
1615
- inline-size: 2rem;
1616
- block-size: 2rem;
1725
+ inline-size: 2.75rem;
1726
+ block-size: 2.75rem;
1617
1727
  border-radius: var(--drawer_close-radius, var(--bds-border_radius--circle));
1618
1728
  cursor: pointer;
1619
1729
  transition: var(--bds-animation_transition);
1620
1730
  }
1621
- .bds280Drawer-closeButton svg {
1731
+ .bds2110Drawer-closeButton svg {
1622
1732
  inline-size: 1.25rem;
1623
1733
  block-size: 1.25rem;
1624
1734
  }
1625
- .bds280Drawer-closeButton:focus-visible {
1735
+ .bds2110Drawer-closeButton:focus-visible {
1626
1736
  outline: var(--bds-outline_default);
1627
1737
  outline-offset: var(--bds-outline_offset);
1628
1738
  }
1629
1739
  @media (hover: hover) and (pointer: fine) {
1630
- .bds280Drawer-closeButton:hover {
1740
+ .bds2110Drawer-closeButton:hover {
1631
1741
  background-color: var(--drawer_close-bg--hover, var(--bds-color_bg--subtle));
1632
1742
  }
1633
1743
  }
1634
- .bds280Drawer-body {
1744
+ .bds2110Drawer-body {
1635
1745
  flex: 1;
1636
1746
  overflow-block: auto;
1637
1747
  padding: var(--bds-space_l);
@@ -1639,20 +1749,20 @@
1639
1749
  flex-direction: column;
1640
1750
  }
1641
1751
  @media (prefers-reduced-motion: reduce) {
1642
- .bds280Drawer-drawer,
1643
- .bds280Drawer-drawer::backdrop {
1752
+ .bds2110Drawer-drawer,
1753
+ .bds2110Drawer-drawer::backdrop {
1644
1754
  transition: none;
1645
1755
  }
1646
1756
  }
1647
1757
  }
1648
1758
 
1649
1759
  /* src/components/interaction/DropdownMenu/DropdownMenu.module.css */
1650
- @layer boostdev.bds280DropdownMenu-component {
1651
- .bds280DropdownMenu-wrapper {
1760
+ @layer boostdev.bds2110DropdownMenu-component {
1761
+ .bds2110DropdownMenu-wrapper {
1652
1762
  position: relative;
1653
1763
  display: inline-flex;
1654
1764
  }
1655
- .bds280DropdownMenu-menu {
1765
+ .bds2110DropdownMenu-menu {
1656
1766
  position: absolute;
1657
1767
  inset-block-start: calc(100% + var(--bds-space_xxs));
1658
1768
  z-index: var(--bds-z-index_dropdown);
@@ -1668,22 +1778,22 @@
1668
1778
  list-style: none;
1669
1779
  margin: 0;
1670
1780
  }
1671
- .bds280DropdownMenu-menu li {
1781
+ .bds2110DropdownMenu-menu li {
1672
1782
  list-style: none;
1673
1783
  }
1674
- .bds280DropdownMenu---placement_bottom-start {
1784
+ .bds2110DropdownMenu---placement_bottom-start {
1675
1785
  inset-inline-start: 0;
1676
1786
  }
1677
- .bds280DropdownMenu---placement_bottom-end {
1787
+ .bds2110DropdownMenu---placement_bottom-end {
1678
1788
  inset-inline-end: 0;
1679
1789
  }
1680
- .bds280DropdownMenu-separator {
1790
+ .bds2110DropdownMenu-separator {
1681
1791
  border: none;
1682
1792
  border-block-start: 1px solid currentcolor;
1683
1793
  margin: var(--bds-space_xxs) 0;
1684
1794
  opacity: 0.15;
1685
1795
  }
1686
- .bds280DropdownMenu-item {
1796
+ .bds2110DropdownMenu-item {
1687
1797
  all: unset;
1688
1798
  display: flex;
1689
1799
  align-items: center;
@@ -1697,22 +1807,22 @@
1697
1807
  box-sizing: border-box;
1698
1808
  transition: var(--bds-animation_transition);
1699
1809
  }
1700
- .bds280DropdownMenu-item:disabled {
1810
+ .bds2110DropdownMenu-item:disabled {
1701
1811
  opacity: 0.4;
1702
1812
  cursor: not-allowed;
1703
1813
  }
1704
- .bds280DropdownMenu-item:focus-visible {
1814
+ .bds2110DropdownMenu-item:focus-visible {
1705
1815
  outline: var(--bds-outline_default);
1706
1816
  outline-offset: calc(var(--bds-outline_offset) * -1);
1707
1817
  border-radius: var(--bds-border_radius--xs);
1708
1818
  }
1709
1819
  @media (hover: hover) and (pointer: fine) {
1710
- .bds280DropdownMenu-item:not(:disabled):hover {
1820
+ .bds2110DropdownMenu-item:not(:disabled):hover {
1711
1821
  background-color: var(--dropdown_item-bg--hover, var(--bds-color_bg--subtle));
1712
1822
  color: var(--dropdown_item-color--hover, var(--bds-color_interactive_on-bg));
1713
1823
  }
1714
1824
  }
1715
- .bds280DropdownMenu-icon {
1825
+ .bds2110DropdownMenu-icon {
1716
1826
  display: flex;
1717
1827
  align-items: center;
1718
1828
  flex-shrink: 0;
@@ -1720,16 +1830,16 @@
1720
1830
  }
1721
1831
 
1722
1832
  /* src/components/interaction/Popover/Popover.module.css */
1723
- @layer boostdev.bds280Popover-component {
1724
- .bds280Popover-wrapper {
1833
+ @layer boostdev.bds2110Popover-component {
1834
+ .bds2110Popover-wrapper {
1725
1835
  display: inline-flex;
1726
1836
  }
1727
- .bds280Popover-panel {
1837
+ .bds2110Popover-panel {
1728
1838
  position: fixed;
1729
1839
  inset: unset;
1730
1840
  margin: 0;
1731
1841
  overflow-block: auto;
1732
- z-index: var(--popover_z-index, 100);
1842
+ z-index: var(--popover_z-index, var(--bds-z-index_dropdown));
1733
1843
  min-inline-size: 12rem;
1734
1844
  max-inline-size: var(--popover_max-width, 20rem);
1735
1845
  max-block-size: var(--popover_max-height, 80dvh);
@@ -1743,37 +1853,37 @@
1743
1853
  color: var(--popover_on-color, var(--bds-color_on-bg));
1744
1854
  font-size: var(--bds-font_size--body);
1745
1855
  }
1746
- .bds280Popover-panel[data-placement=bottom] {
1856
+ .bds2110Popover-panel[data-placement=bottom] {
1747
1857
  top: anchor(bottom);
1748
1858
  left: anchor(left);
1749
- margin-block-start: var(--bds-space_xs, 8px);
1859
+ margin-block-start: var(--bds-space_xs);
1750
1860
  position-try-fallbacks:
1751
1861
  --popover-top,
1752
1862
  --popover-right,
1753
1863
  --popover-left;
1754
1864
  }
1755
- .bds280Popover-panel[data-placement=top] {
1865
+ .bds2110Popover-panel[data-placement=top] {
1756
1866
  bottom: anchor(top);
1757
1867
  left: anchor(left);
1758
- margin-block-end: var(--bds-space_xs, 8px);
1868
+ margin-block-end: var(--bds-space_xs);
1759
1869
  position-try-fallbacks:
1760
1870
  --popover-bottom,
1761
1871
  --popover-right,
1762
1872
  --popover-left;
1763
1873
  }
1764
- .bds280Popover-panel[data-placement=right] {
1874
+ .bds2110Popover-panel[data-placement=right] {
1765
1875
  top: anchor(top);
1766
1876
  left: anchor(right);
1767
- margin-inline-start: var(--bds-space_xs, 8px);
1877
+ margin-inline-start: var(--bds-space_xs);
1768
1878
  position-try-fallbacks:
1769
1879
  --popover-left,
1770
1880
  --popover-bottom,
1771
1881
  --popover-top;
1772
1882
  }
1773
- .bds280Popover-panel[data-placement=left] {
1883
+ .bds2110Popover-panel[data-placement=left] {
1774
1884
  top: anchor(top);
1775
1885
  right: anchor(left);
1776
- margin-inline-end: var(--bds-space_xs, 8px);
1886
+ margin-inline-end: var(--bds-space_xs);
1777
1887
  position-try-fallbacks:
1778
1888
  --popover-right,
1779
1889
  --popover-bottom,
@@ -1785,7 +1895,7 @@
1785
1895
  bottom: unset;
1786
1896
  left: anchor(left);
1787
1897
  margin: 0;
1788
- margin-block-start: var(--bds-space_xs, 8px);
1898
+ margin-block-start: var(--bds-space_xs);
1789
1899
  }
1790
1900
  @position-try --popover-top {
1791
1901
  top: unset;
@@ -1793,7 +1903,7 @@
1793
1903
  bottom: anchor(top);
1794
1904
  left: anchor(left);
1795
1905
  margin: 0;
1796
- margin-block-end: var(--bds-space_xs, 8px);
1906
+ margin-block-end: var(--bds-space_xs);
1797
1907
  }
1798
1908
  @position-try --popover-right {
1799
1909
  top: anchor(top);
@@ -1801,7 +1911,7 @@
1801
1911
  bottom: unset;
1802
1912
  left: anchor(right);
1803
1913
  margin: 0;
1804
- margin-inline-start: var(--bds-space_xs, 8px);
1914
+ margin-inline-start: var(--bds-space_xs);
1805
1915
  }
1806
1916
  @position-try --popover-left {
1807
1917
  top: anchor(top);
@@ -1809,44 +1919,43 @@
1809
1919
  bottom: unset;
1810
1920
  left: unset;
1811
1921
  margin: 0;
1812
- margin-inline-end: var(--bds-space_xs, 8px);
1922
+ margin-inline-end: var(--bds-space_xs);
1813
1923
  }
1814
1924
  @position-try --popover-bottom-fullwidth {
1815
1925
  top: anchor(bottom);
1816
- right: var(--bds-space_xs, 8px);
1926
+ right: var(--bds-space_xs);
1817
1927
  bottom: unset;
1818
- left: var(--bds-space_xs, 8px);
1928
+ left: var(--bds-space_xs);
1819
1929
  margin: 0;
1820
- margin-block-start: var(--bds-space_xs, 8px);
1930
+ margin-block-start: var(--bds-space_xs);
1821
1931
  }
1822
1932
  @position-try --popover-top-fullwidth {
1823
1933
  top: unset;
1824
- right: var(--bds-space_xs, 8px);
1934
+ right: var(--bds-space_xs);
1825
1935
  bottom: anchor(top);
1826
- left: var(--bds-space_xs, 8px);
1936
+ left: var(--bds-space_xs);
1827
1937
  margin: 0;
1828
- margin-block-end: var(--bds-space_xs, 8px);
1938
+ margin-block-end: var(--bds-space_xs);
1829
1939
  }
1830
1940
  @media (width <= 420px) {
1831
- .bds280Popover-panel[data-placement=bottom],
1832
- .bds280Popover-panel[data-placement=top],
1833
- .bds280Popover-panel[data-placement=left],
1834
- .bds280Popover-panel[data-placement=right] {
1835
- left: var(--bds-space_xs, 8px);
1836
- right: var(--bds-space_xs, 8px);
1941
+ .bds2110Popover-panel[data-placement=bottom],
1942
+ .bds2110Popover-panel[data-placement=top],
1943
+ .bds2110Popover-panel[data-placement=left],
1944
+ .bds2110Popover-panel[data-placement=right] {
1945
+ inset-inline: var(--bds-space_xs);
1837
1946
  inline-size: 100%;
1838
- max-inline-size: calc(100svw - 2 * var(--bds-space_xs, 8px));
1947
+ max-inline-size: calc(100svw - 2 * var(--bds-space_xs));
1839
1948
  position-try-fallbacks: --popover-top-fullwidth, --popover-bottom-fullwidth;
1840
1949
  }
1841
1950
  }
1842
1951
  @media (aspect-ratio >= 2/1) {
1843
- .bds280Popover-panel[data-placement=bottom] {
1952
+ .bds2110Popover-panel[data-placement=bottom] {
1844
1953
  position-try-fallbacks:
1845
1954
  --popover-top,
1846
1955
  --popover-right,
1847
1956
  --popover-left;
1848
1957
  }
1849
- .bds280Popover-panel[data-placement=top] {
1958
+ .bds2110Popover-panel[data-placement=top] {
1850
1959
  position-try-fallbacks:
1851
1960
  --popover-bottom,
1852
1961
  --popover-right,
@@ -1856,24 +1965,24 @@
1856
1965
  }
1857
1966
 
1858
1967
  /* src/components/interaction/Rating/Rating.module.css */
1859
- @layer boostdev.bds280Rating-component {
1860
- .bds280Rating-rating {
1968
+ @layer boostdev.bds2110Rating-component {
1969
+ .bds2110Rating-rating {
1861
1970
  display: inline-flex;
1862
1971
  gap: var(--bds-space_xxxs);
1863
1972
  color: var(--rating_color, var(--bds-color_bg));
1864
1973
  }
1865
- .bds280Rating-star {
1866
- width: 1.5em;
1867
- height: 1.5em;
1974
+ .bds2110Rating-star {
1975
+ inline-size: 1.5em;
1976
+ block-size: 1.5em;
1868
1977
  }
1869
- .bds280Rating---filled {
1978
+ .bds2110Rating---filled {
1870
1979
  color: var(--rating_color--filled, var(--bds-color_warning));
1871
1980
  }
1872
1981
  }
1873
1982
 
1874
1983
  /* src/components/interaction/Toast/Toast.module.css */
1875
- @layer boostdev.bds280Toast-component {
1876
- .bds280Toast-toastContainer {
1984
+ @layer boostdev.bds2110Toast-component {
1985
+ .bds2110Toast-toastContainer {
1877
1986
  position: fixed;
1878
1987
  inset: unset;
1879
1988
  inset-block-end: var(--bds-space_xl);
@@ -1885,38 +1994,42 @@
1885
1994
  padding: 0;
1886
1995
  background: transparent;
1887
1996
  }
1888
- .bds280Toast-toast {
1997
+ .bds2110Toast-toast {
1889
1998
  padding: var(--bds-space_m) var(--bds-space_l);
1890
1999
  background-color: var(--toast_color, var(--toast_color--variant, var(--bds-color_bg)));
1891
2000
  color: var(--toast_on-color, var(--toast_on-color--variant, var(--bds-color_on-bg)));
1892
- border-radius: var(--bds-border_radius--s);
1893
- box-shadow: var(--bds-shadow_s);
2001
+ border-radius: var(--toast_radius, var(--bds-border_radius--s));
2002
+ box-shadow: var(--toast_shadow, var(--bds-shadow_s));
1894
2003
  display: flex;
1895
2004
  align-items: center;
1896
2005
  gap: var(--bds-space_m);
1897
- min-inline-size: 300px;
2006
+ min-inline-size: min(300px, calc(100svw - 2 * var(--bds-space_xl)));
1898
2007
  animation: slideIn var(--bds-animation_duration--fast) var(--bds-animation_easing);
1899
2008
  }
1900
- .bds280Toast-toast.bds280Toast---variant_success {
2009
+ .bds2110Toast-toast:dir(rtl) {
2010
+ --toast_slide-offset: -100%;
2011
+ }
2012
+ .bds2110Toast-toast.bds2110Toast---variant_success {
1901
2013
  --toast_color--variant: var(--toast_color--success, var(--bds-color_success));
1902
2014
  --toast_on-color--variant: var(--toast_on-color--success, var(--bds-color_on-success));
1903
2015
  }
1904
- .bds280Toast-toast.bds280Toast---variant_warning {
2016
+ .bds2110Toast-toast.bds2110Toast---variant_warning {
1905
2017
  --toast_color--variant: var(--toast_color--warning, var(--bds-color_warning));
1906
2018
  --toast_on-color--variant: var(--toast_on-color--warning, var(--bds-color_on-warning));
1907
2019
  }
1908
- .bds280Toast-toast.bds280Toast---variant_info {
2020
+ .bds2110Toast-toast.bds2110Toast---variant_info {
1909
2021
  --toast_color--variant: var(--toast_color--info, var(--bds-color_bg--subtle));
1910
2022
  --toast_on-color--variant: var(--toast_on-color--info, var(--bds-color_on-bg--subtle));
1911
2023
  }
1912
- .bds280Toast-toast.bds280Toast---variant_error {
2024
+ .bds2110Toast-toast.bds2110Toast---variant_error {
1913
2025
  --toast_color--variant: var(--toast_color--error, var(--bds-color_error));
1914
2026
  --toast_on-color--variant: var(--toast_on-color--error, var(--bds-color_on-error));
1915
2027
  }
1916
- .bds280Toast-message {
2028
+ .bds2110Toast-message {
1917
2029
  flex: 1;
1918
2030
  }
1919
- .bds280Toast-closeButton {
2031
+ .bds2110Toast-closeButton {
2032
+ position: relative;
1920
2033
  display: flex;
1921
2034
  align-items: center;
1922
2035
  justify-content: center;
@@ -1927,16 +2040,25 @@
1927
2040
  background: none;
1928
2041
  border: none;
1929
2042
  cursor: pointer;
1930
- color: var(--toast_on-color);
2043
+ color: currentcolor;
2044
+ }
2045
+ .bds2110Toast-closeButton::after {
2046
+ content: "";
2047
+ position: absolute;
2048
+ inset: -0.75rem;
1931
2049
  }
1932
- .bds280Toast-closeButton svg {
2050
+ .bds2110Toast-closeButton:focus-visible {
2051
+ outline: var(--bds-outline_default);
2052
+ outline-offset: var(--bds-outline_offset);
2053
+ }
2054
+ .bds2110Toast-closeButton svg {
1933
2055
  inline-size: 1rem;
1934
2056
  block-size: 1rem;
1935
2057
  }
1936
2058
  }
1937
2059
  @keyframes slideIn {
1938
2060
  from {
1939
- transform: translateX(100%);
2061
+ transform: translateX(var(--toast_slide-offset, 100%));
1940
2062
  opacity: 0;
1941
2063
  }
1942
2064
  to {
@@ -1944,23 +2066,29 @@
1944
2066
  opacity: 1;
1945
2067
  }
1946
2068
  }
2069
+ @media (prefers-reduced-motion: reduce) {
2070
+ .bds2110Toast-toast {
2071
+ animation: none;
2072
+ }
2073
+ }
1947
2074
 
1948
2075
  /* src/components/interaction/form/Checkbox/Checkbox.module.css */
1949
- @layer boostdev.bds280Checkbox-component {
1950
- .bds280Checkbox-checkboxGroup {
1951
- --inputSize: calc(var(--bds-space_s) * 2);
2076
+ @layer boostdev.bds2110Checkbox-component {
2077
+ .bds2110Checkbox-checkboxGroup {
2078
+ --checkbox_size: calc(var(--bds-space_s) * 2);
2079
+ --inputSize: var(--checkbox_size);
1952
2080
  display: flex;
1953
2081
  flex-direction: column;
1954
2082
  }
1955
- .bds280Checkbox-inputWrapper {
2083
+ .bds2110Checkbox-inputWrapper {
1956
2084
  display: flex;
1957
2085
  align-items: stretch;
1958
- gap: var(--bds-space_xs);
2086
+ gap: var(--checkbox_gap, var(--bds-space_m));
1959
2087
  }
1960
- .bds280Checkbox-checkbox {
1961
- margin-block-start: 0.25em;
1962
- inline-size: var(--inputSize);
1963
- block-size: var(--inputSize);
2088
+ .bds2110Checkbox-checkbox {
2089
+ margin-block-start: var(--checkbox_offset, 0.25em);
2090
+ inline-size: var(--checkbox_size);
2091
+ block-size: var(--checkbox_size);
1964
2092
  color: var(--checkbox_color, var(--bds-color_on-bg));
1965
2093
  border: var(--checkbox_border, none);
1966
2094
  --bdc_color: currentcolor;
@@ -1971,13 +2099,13 @@
1971
2099
  background-color: var(--checkbox_color_bg, var(--bds-color_bg));
1972
2100
  cursor: pointer;
1973
2101
  position: relative;
1974
- transition: --bdc_color 0.3s ease, background-color 0.3s ease;
2102
+ transition: --bdc_color var(--bds-animation_transition-duration) var(--bds-animation_easing), background-color var(--bds-animation_transition-duration) var(--bds-animation_easing);
1975
2103
  }
1976
- .bds280Checkbox-checkbox:checked {
2104
+ .bds2110Checkbox-checkbox:checked {
1977
2105
  background-color: var(--checkbox_color-active, var(--bdc-color_active));
1978
2106
  --bdc_color: var(--checkbox_color-active, var(--bdc-color_active));
1979
2107
  }
1980
- .bds280Checkbox-checkbox:checked::after {
2108
+ .bds2110Checkbox-checkbox:checked::after {
1981
2109
  content: "";
1982
2110
  position: absolute;
1983
2111
  inset-inline-start: 0.6em;
@@ -1988,36 +2116,40 @@
1988
2116
  border-width: 0 2px 2px 0;
1989
2117
  transform: rotate(45deg);
1990
2118
  }
1991
- .bds280Checkbox-checkbox:focus {
2119
+ .bds2110Checkbox-checkbox:focus {
1992
2120
  --bdc_color: var(--bdc_color--focus);
1993
2121
  }
1994
- .bds280Checkbox-checkbox:focus-visible {
2122
+ .bds2110Checkbox-checkbox:focus-visible {
1995
2123
  outline: var(--bds-outline_default);
1996
2124
  outline-offset: var(--bds-outline_offset);
1997
2125
  }
1998
- .bds280Checkbox-checkboxError {
2126
+ .bds2110Checkbox-checkbox:disabled {
2127
+ opacity: 0.5;
2128
+ cursor: not-allowed;
2129
+ }
2130
+ .bds2110Checkbox-checkboxError {
1999
2131
  --bdc_color: var(--bdc_color--error);
2000
2132
  }
2001
2133
  }
2002
2134
 
2003
2135
  /* src/components/interaction/form/atoms/Message.module.css */
2004
- @layer boostdev.bds280Message-component {
2005
- .bds280Message-error,
2006
- .bds280Message-hint {
2136
+ @layer boostdev.bds2110Message-component {
2137
+ .bds2110Message-error,
2138
+ .bds2110Message-hint {
2007
2139
  font-size: var(--bds-font_size--body--s);
2008
- margin-inline-start: var(--labelPosition);
2140
+ margin-inline-start: var(--labelPosition, 0);
2009
2141
  }
2010
- .bds280Message-error {
2142
+ .bds2110Message-error {
2011
2143
  color: var(--bds-color_error_on-bg);
2012
2144
  }
2013
- .bds280Message-hint {
2145
+ .bds2110Message-hint {
2014
2146
  font-style: italic;
2015
2147
  }
2016
2148
  }
2017
2149
 
2018
2150
  /* src/components/interaction/form/atoms/Label.module.css */
2019
- @layer boostdev.bds280Label-component {
2020
- .bds280Label-label {
2151
+ @layer boostdev.bds2110Label-component {
2152
+ .bds2110Label-label {
2021
2153
  display: flex;
2022
2154
  align-items: center;
2023
2155
  font-family: var(--bds-font_family--body);
@@ -2027,8 +2159,8 @@
2027
2159
  }
2028
2160
 
2029
2161
  /* src/components/interaction/form/atoms/InputContainer.module.css */
2030
- @layer boostdev.bds280InputContainer-component {
2031
- .bds280InputContainer-container {
2162
+ @layer boostdev.bds2110InputContainer-component {
2163
+ .bds2110InputContainer-container {
2032
2164
  --labelPosition: calc(var(--inputSize) + var(--bds-space_m));
2033
2165
  display: flex;
2034
2166
  flex-direction: column;
@@ -2037,45 +2169,56 @@
2037
2169
  }
2038
2170
 
2039
2171
  /* src/components/interaction/form/CheckboxGroup/CheckboxGroup.module.css */
2040
- @layer boostdev.bds280CheckboxGroup-component {
2041
- .bds280CheckboxGroup-group {
2172
+ @layer boostdev.bds2110CheckboxGroup-component {
2173
+ .bds2110CheckboxGroup-group {
2042
2174
  border: none;
2043
2175
  padding: 0;
2044
2176
  margin: 0;
2045
2177
  display: flex;
2046
2178
  flex-direction: column;
2047
- gap: var(--bds-space_xs);
2179
+ gap: var(--checkboxGroup_gap, var(--bds-space_xs));
2048
2180
  }
2049
- .bds280CheckboxGroup-legend {
2050
- font-family: var(--bds-font_family--body);
2051
- font-size: var(--bds-font_size--body--s);
2052
- font-weight: var(--bds-font_weight--medium);
2053
- color: var(--bds-color_on-bg);
2181
+ .bds2110CheckboxGroup-legend {
2182
+ font-family: var(--checkboxGroup_legend-font-family, var(--bds-font_family--body));
2183
+ font-size: var(--checkboxGroup_legend-font-size, var(--bds-font_size--body--s));
2184
+ font-weight: var(--checkboxGroup_legend-font-weight, var(--bds-font_weight--medium));
2185
+ color: var(--checkboxGroup_legend-color, var(--bds-color_on-bg));
2054
2186
  padding: 0;
2055
- margin-block-end: var(--bds-space_xs);
2187
+ margin-block-end: var(--checkboxGroup_legend-gap, var(--bds-space_xs));
2188
+ }
2189
+ .bds2110CheckboxGroup-required {
2190
+ color: var(--checkboxGroup_required-color, var(--bds-color_error));
2056
2191
  }
2057
- .bds280CheckboxGroup-required {
2058
- color: var(--bds-color_error);
2192
+ .bds2110CheckboxGroup-requiredLabel {
2193
+ position: absolute;
2194
+ inline-size: 1px;
2195
+ block-size: 1px;
2196
+ padding: 0;
2197
+ margin: -1px;
2198
+ overflow: hidden;
2199
+ clip: rect(0, 0, 0, 0);
2200
+ white-space: nowrap;
2201
+ border-width: 0;
2059
2202
  }
2060
- .bds280CheckboxGroup-items {
2203
+ .bds2110CheckboxGroup-items {
2061
2204
  display: flex;
2062
2205
  flex-direction: column;
2063
- gap: var(--bds-space_xs);
2206
+ gap: var(--checkboxGroup_items-gap, var(--bds-space_xs));
2064
2207
  }
2065
2208
  }
2066
2209
 
2067
2210
  /* src/components/interaction/form/Combobox/Combobox.module.css */
2068
- @layer boostdev.bds280Combobox-component {
2069
- .bds280Combobox-formGroup {
2211
+ @layer boostdev.bds2110Combobox-component {
2212
+ .bds2110Combobox-formGroup {
2070
2213
  display: flex;
2071
2214
  flex-direction: column;
2072
2215
  }
2073
- .bds280Combobox-inputWrapper {
2216
+ .bds2110Combobox-inputWrapper {
2074
2217
  position: relative;
2075
2218
  display: flex;
2076
2219
  align-items: center;
2077
2220
  }
2078
- .bds280Combobox-input {
2221
+ .bds2110Combobox-input {
2079
2222
  appearance: none;
2080
2223
  inline-size: 100%;
2081
2224
  font-family: var(--bds-font_family--body);
@@ -2091,21 +2234,21 @@
2091
2234
  color: var(--combobox_color, var(--bds-color_on-bg));
2092
2235
  transition: --bdc_color var(--bds-animation_transition-duration) var(--bds-animation_easing), background-color var(--bds-animation_transition-duration) var(--bds-animation_easing);
2093
2236
  }
2094
- .bds280Combobox-input:focus {
2237
+ .bds2110Combobox-input:focus {
2095
2238
  --bdc_color: var(--bdc_color--focus);
2096
2239
  }
2097
- .bds280Combobox-input:focus-visible {
2240
+ .bds2110Combobox-input:focus-visible {
2098
2241
  outline: var(--bds-outline_default);
2099
2242
  outline-offset: var(--bds-outline_offset);
2100
2243
  }
2101
- .bds280Combobox-input:disabled {
2244
+ .bds2110Combobox-input:disabled {
2102
2245
  opacity: 0.5;
2103
2246
  cursor: not-allowed;
2104
2247
  }
2105
- .bds280Combobox-inputError {
2248
+ .bds2110Combobox-inputError {
2106
2249
  --bdc_color: var(--bdc_color--error);
2107
2250
  }
2108
- .bds280Combobox-chevron {
2251
+ .bds2110Combobox-chevron {
2109
2252
  position: absolute;
2110
2253
  inset-inline-end: var(--bds-space_s);
2111
2254
  display: flex;
@@ -2113,156 +2256,169 @@
2113
2256
  pointer-events: none;
2114
2257
  color: var(--combobox_color, var(--bds-color_on-bg));
2115
2258
  }
2116
- .bds280Combobox-chevron svg {
2259
+ .bds2110Combobox-chevron svg {
2117
2260
  inline-size: 1rem;
2118
2261
  block-size: 1rem;
2119
2262
  }
2120
- .bds280Combobox-listbox {
2263
+ .bds2110Combobox-listbox {
2121
2264
  position: absolute;
2122
2265
  inset-block-start: calc(100% + var(--bds-space_xxs));
2123
2266
  inset-inline: 0;
2124
2267
  z-index: var(--bds-z-index_dropdown);
2125
- max-block-size: 15rem;
2268
+ max-block-size: var(--combobox_listbox-max-block-size, 15rem);
2126
2269
  overflow-block: auto;
2127
2270
  list-style: none;
2128
2271
  margin: 0;
2129
- padding: var(--bds-space_xxs) 0;
2272
+ padding: var(--combobox_listbox-padding-block, var(--bds-space_xxs)) 0;
2130
2273
  border: var(--combobox_listbox-border, none);
2131
2274
  --bdc_color: currentcolor;
2132
2275
  --bdc-outline_radius: var(--bds-border_radius--s);
2133
2276
  border-radius: var(--combobox_listbox-radius, var(--bdc-outline_radius));
2134
- background-color: var(--combobox_color, var(--bds-color_bg));
2277
+ background-color: var(--combobox_listbox-bg, var(--combobox_color_bg, var(--bds-color_bg)));
2135
2278
  color: var(--combobox_on-color, var(--bds-color_on-bg));
2136
2279
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--combobox_listbox-shadow, var(--bds-shadow_m));
2137
2280
  }
2138
- .bds280Combobox-option {
2281
+ .bds2110Combobox-option {
2139
2282
  display: flex;
2140
2283
  align-items: center;
2141
- padding: var(--bds-space_xs) var(--bds-space_m);
2142
- font-size: var(--bds-font_size--body);
2143
- color: var(--combobox_color, var(--bds-color_on-bg));
2284
+ padding: var(--combobox_option-padding-block, var(--bds-space_xs)) var(--combobox_option-padding-inline, var(--bds-space_m));
2285
+ font-size: var(--combobox_option-font-size, var(--bds-font_size--body));
2286
+ color: var(--combobox_on-color, var(--bds-color_on-bg));
2144
2287
  cursor: pointer;
2145
2288
  transition: var(--bds-animation_transition);
2146
2289
  }
2147
- .bds280Combobox-option.bds280Combobox---highlighted {
2290
+ .bds2110Combobox-option.bds2110Combobox---highlighted {
2148
2291
  background-color: var(--combobox_option-bg--highlighted, var(--bds-color_bg--subtle));
2149
2292
  color: var(--combobox_option-color--highlighted, var(--bds-color_interactive_on-bg));
2150
2293
  }
2151
- .bds280Combobox-option.bds280Combobox---selected {
2294
+ .bds2110Combobox-option.bds2110Combobox---selected {
2152
2295
  font-weight: var(--bds-font_weight--semibold);
2153
2296
  }
2154
- .bds280Combobox-option.bds280Combobox---disabled {
2297
+ .bds2110Combobox-option.bds2110Combobox---disabled {
2155
2298
  opacity: 0.4;
2156
2299
  cursor: not-allowed;
2157
2300
  }
2158
2301
  }
2159
2302
 
2160
2303
  /* src/components/interaction/form/FieldGroup/FieldGroup.module.css */
2161
- @layer boostdev.bds280FieldGroup-component {
2162
- .bds280FieldGroup-fieldGroup {
2304
+ @layer boostdev.bds2110FieldGroup-component {
2305
+ .bds2110FieldGroup-fieldGroup {
2163
2306
  border: 0;
2164
2307
  margin: 0;
2165
2308
  padding: 0;
2166
2309
  min-inline-size: 0;
2167
- container-type: inline-size;
2168
- container-name: field-group;
2169
2310
  --fieldGroup_collapse-threshold: calc( var(--fieldGroup_field-count, 1) * var(--fieldGroup_min-field-width, 12rem) + (var(--fieldGroup_field-count, 1) - 1) * var(--fieldGroup_gap, var(--bds-space_m)) );
2170
2311
  }
2171
- .bds280FieldGroup-legend {
2312
+ .bds2110FieldGroup-legend {
2172
2313
  inline-size: 100%;
2173
2314
  padding-inline: 0;
2174
2315
  padding-block: var(--fieldGroup_legend-padding-block, var(--bds-space_xs));
2175
2316
  margin-block-end: var(--fieldGroup_legend-gap, var(--bds-space_m));
2176
2317
  border-block-end: var(--fieldGroup_legend-border-block-end, 1px solid var(--bds-color_bg--subtle));
2177
2318
  color: var(--fieldGroup_legend-color, var(--bds-color_on-bg));
2178
- font-family: var(--bds-font_family--body);
2319
+ font-family: var(--fieldGroup_legend-font-family, var(--bds-font_family--body));
2179
2320
  font-size: var(--fieldGroup_legend-font-size, var(--bds-font_size--heading-3));
2180
2321
  font-weight: var(--fieldGroup_legend-font-weight, var(--bds-font_weight--semibold));
2181
2322
  line-height: var(--fieldGroup_legend-line-height, var(--bds-font_line-height--heading));
2182
2323
  }
2183
- .bds280FieldGroup-fields {
2324
+ .bds2110FieldGroup-fieldGroup:disabled .bds2110FieldGroup-legend {
2325
+ opacity: 0.5;
2326
+ }
2327
+ .bds2110FieldGroup-fields {
2184
2328
  display: flex;
2185
2329
  flex-direction: column;
2186
2330
  gap: var(--fieldGroup_gap, var(--bds-space_m));
2187
2331
  }
2188
- .bds280FieldGroup-fieldGroup.bds280FieldGroup---variant_horizontal .bds280FieldGroup-fields {
2332
+ .bds2110FieldGroup-fieldGroup.bds2110FieldGroup---variant_horizontal .bds2110FieldGroup-fields {
2189
2333
  flex-flow: row wrap;
2190
2334
  }
2191
- .bds280FieldGroup-fieldGroup.bds280FieldGroup---variant_horizontal .bds280FieldGroup-fields > * {
2335
+ .bds2110FieldGroup-fieldGroup.bds2110FieldGroup---variant_horizontal .bds2110FieldGroup-fields > * {
2192
2336
  flex: 1 1 var(--fieldGroup_min-field-width, 12rem);
2193
2337
  min-inline-size: 0;
2194
2338
  }
2195
- @container field-group (max-inline-size: var(--fieldGroup_collapse-threshold)) {
2196
- .bds280FieldGroup-fieldGroup.bds280FieldGroup---variant_horizontal .bds280FieldGroup-fields {
2197
- flex-direction: column;
2198
- }
2199
- .bds280FieldGroup-fieldGroup.bds280FieldGroup---variant_horizontal .bds280FieldGroup-fields > * {
2200
- flex: 1 1 auto;
2201
- }
2339
+ .bds2110FieldGroup-probeContainer {
2340
+ position: relative;
2341
+ inline-size: 0;
2342
+ block-size: 0;
2343
+ overflow: hidden;
2344
+ }
2345
+ .bds2110FieldGroup-probe {
2346
+ position: absolute;
2347
+ inset-block-start: 0;
2348
+ inset-inline-start: 0;
2349
+ block-size: 0;
2350
+ inline-size: var(--fieldGroup_collapse-threshold);
2351
+ visibility: hidden;
2352
+ }
2353
+ .bds2110FieldGroup-fieldGroup.bds2110FieldGroup---variant_horizontal[data-collapsed=true] .bds2110FieldGroup-fields {
2354
+ flex-direction: column;
2355
+ }
2356
+ .bds2110FieldGroup-fieldGroup.bds2110FieldGroup---variant_horizontal[data-collapsed=true] .bds2110FieldGroup-fields > * {
2357
+ flex: 1 1 auto;
2202
2358
  }
2203
2359
  }
2204
2360
 
2205
2361
  /* src/components/interaction/form/FileInput/FileInput.module.css */
2206
- @layer boostdev.bds280FileInput-component {
2207
- .bds280FileInput-formGroup {
2362
+ @layer boostdev.bds2110FileInput-component {
2363
+ .bds2110FileInput-formGroup {
2208
2364
  display: flex;
2209
2365
  flex-direction: column;
2210
2366
  }
2211
- .bds280FileInput-fieldLabel {
2367
+ .bds2110FileInput-fieldLabel {
2212
2368
  display: flex;
2213
2369
  align-items: center;
2214
2370
  font-family: var(--bds-font_family--body);
2215
2371
  color: var(--bds-color_on-bg);
2216
- margin-block-end: var(--bds-space_xs);
2372
+ margin-block-end: var(--fileInput_label-margin, var(--bds-space_xs));
2217
2373
  }
2218
- .bds280FileInput-dropZone {
2374
+ .bds2110FileInput-dropZone {
2219
2375
  display: flex;
2220
2376
  flex-direction: column;
2221
2377
  align-items: center;
2222
2378
  justify-content: center;
2223
- gap: var(--bds-space_xs);
2224
- padding: var(--bds-space_l) var(--bds-space_m);
2225
- border: 2px dashed currentcolor;
2226
- border-radius: var(--bds-border_radius--s);
2379
+ gap: var(--fileInput_gap, var(--bds-space_xs));
2380
+ padding: var(--fileInput_padding, var(--bds-space_l) var(--bds-space_m));
2381
+ border: var(--fileInput_border, 2px dashed currentcolor);
2382
+ border-radius: var(--fileInput_radius, var(--bds-border_radius--s));
2227
2383
  color: var(--fileInput_color, var(--bds-color_on-bg));
2228
2384
  cursor: pointer;
2229
2385
  text-align: center;
2230
2386
  transition: var(--bds-animation_transition);
2231
2387
  }
2232
- .bds280FileInput-dropZone:focus-within {
2388
+ .bds2110FileInput-dropZone:focus-within {
2233
2389
  outline: var(--bds-outline_default);
2234
2390
  outline-offset: var(--bds-outline_offset);
2235
2391
  border-color: var(--fileInput_border-color, currentcolor);
2236
2392
  }
2237
- .bds280FileInput-isDragging {
2393
+ .bds2110FileInput-isDragging {
2238
2394
  border-color: currentcolor;
2239
- background-color: rgb(from currentcolor r g b / 8%);
2395
+ background-color: var(--fileInput_bg--dragging, rgb(from currentcolor r g b / 8%));
2240
2396
  }
2241
- .bds280FileInput-hasError {
2397
+ .bds2110FileInput-hasError {
2242
2398
  border-color: var(--bds-color_error);
2243
2399
  }
2244
- .bds280FileInput-isDisabled {
2400
+ .bds2110FileInput-isDisabled {
2245
2401
  opacity: 0.5;
2246
2402
  cursor: not-allowed;
2247
2403
  }
2248
- .bds280FileInput-icon {
2404
+ .bds2110FileInput-icon {
2249
2405
  inline-size: 2rem;
2250
2406
  block-size: 2rem;
2251
2407
  flex-shrink: 0;
2252
2408
  }
2253
- .bds280FileInput-prompt {
2254
- font-size: var(--bds-font_size--body);
2409
+ .bds2110FileInput-prompt {
2410
+ font-size: var(--fileInput_font-size, var(--bds-font_size--body));
2255
2411
  color: var(--bds-color_on-bg);
2256
2412
  }
2257
- .bds280FileInput-prompt strong {
2413
+ .bds2110FileInput-prompt strong {
2258
2414
  color: var(--bds-color_interactive_on-bg);
2259
2415
  font-weight: var(--bds-font_weight--semibold);
2260
2416
  }
2261
- .bds280FileInput-acceptHint {
2262
- font-size: var(--bds-font_size--body--s);
2417
+ .bds2110FileInput-acceptHint {
2418
+ font-size: var(--fileInput_font-size--hint, var(--bds-font_size--body--s));
2263
2419
  color: var(--bds-color_on-bg);
2264
2420
  }
2265
- .bds280FileInput-hiddenInput {
2421
+ .bds2110FileInput-hiddenInput {
2266
2422
  position: absolute;
2267
2423
  inline-size: 1px;
2268
2424
  block-size: 1px;
@@ -2272,7 +2428,7 @@
2272
2428
  border: 0;
2273
2429
  }
2274
2430
  @media (hover: hover) and (pointer: fine) {
2275
- .bds280FileInput-dropZone:not(.bds280FileInput-isDisabled):hover {
2431
+ .bds2110FileInput-dropZone:not(.bds2110FileInput-isDisabled):hover {
2276
2432
  border-color: var(--fileInput_border-color--hover, var(--bds-color_interactive));
2277
2433
  background-color: var(--fileInput_bg--hover, rgb(from var(--bds-color_interactive) r g b / 4%));
2278
2434
  }
@@ -2280,44 +2436,48 @@
2280
2436
  }
2281
2437
 
2282
2438
  /* src/components/interaction/form/FormInput/FormInput.module.css */
2283
- @layer boostdev.bds280FormInput-component {
2284
- .bds280FormInput-formGroup {
2439
+ @layer boostdev.bds2110FormInput-component {
2440
+ .bds2110FormInput-formGroup {
2285
2441
  --labelPosition: 0;
2286
2442
  display: flex;
2287
2443
  flex-direction: column;
2288
2444
  }
2289
- .bds280FormInput-input {
2290
- font-family: var(--bds-font_family--body);
2291
- font-size: var(--bds-font_size--body);
2292
- padding: var(--bds-space_s);
2293
- border: var(--input_border, none);
2445
+ .bds2110FormInput-input {
2446
+ font-family: var(--formInput_font-family, var(--bds-font_family--body));
2447
+ font-size: var(--formInput_font-size, var(--bds-font_size--body));
2448
+ padding: var(--formInput_padding, var(--bds-space_s));
2449
+ border: var(--formInput_border, var(--input_border, none));
2294
2450
  --bdc_color: currentcolor;
2295
2451
  --bdc-outline_radius: var(--bds-border_radius--full);
2296
- border-radius: var(--input_radius, var(--bdc-outline_radius));
2297
- box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--input_shadow, var(--bdc-outline_shadow));
2298
- color: var(--input_color, var(--bds-color_on-bg));
2299
- background-color: var(--input_color_bg, var(--bds-color_bg));
2452
+ border-radius: var(--formInput_radius, var(--input_radius, var(--bdc-outline_radius)));
2453
+ box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--formInput_shadow, var(--input_shadow, var(--bdc-outline_shadow)));
2454
+ color: var(--formInput_color, var(--input_color, var(--bds-color_on-bg)));
2455
+ background-color: var(--formInput_color_bg, var(--input_color_bg, var(--bds-color_bg)));
2300
2456
  transition: --bdc_color var(--bds-animation_transition-duration) var(--bds-animation_easing), background-color var(--bds-animation_transition-duration) var(--bds-animation_easing);
2301
2457
  }
2302
- .bds280FormInput-input:focus {
2458
+ .bds2110FormInput-input:focus {
2303
2459
  --bdc_color: var(--bdc_color--focus);
2304
2460
  }
2305
- .bds280FormInput-input:focus-visible {
2461
+ .bds2110FormInput-input:focus-visible {
2306
2462
  outline: var(--bds-outline_default);
2307
2463
  outline-offset: var(--bds-outline_offset);
2308
2464
  }
2309
- .bds280FormInput-inputError {
2465
+ .bds2110FormInput-input:disabled {
2466
+ cursor: not-allowed;
2467
+ opacity: 0.5;
2468
+ }
2469
+ .bds2110FormInput-inputError {
2310
2470
  --bdc_color: var(--bdc_color--error);
2311
2471
  }
2312
2472
  }
2313
2473
 
2314
2474
  /* src/components/interaction/form/NumberInput/NumberInput.module.css */
2315
- @layer boostdev.bds280NumberInput-component {
2316
- .bds280NumberInput-formGroup {
2475
+ @layer boostdev.bds2110NumberInput-component {
2476
+ .bds2110NumberInput-formGroup {
2317
2477
  display: flex;
2318
2478
  flex-direction: column;
2319
2479
  }
2320
- .bds280NumberInput-inputRow {
2480
+ .bds2110NumberInput-inputRow {
2321
2481
  display: flex;
2322
2482
  align-items: stretch;
2323
2483
  border: var(--numberInput_border, none);
@@ -2329,65 +2489,65 @@
2329
2489
  overflow: hidden;
2330
2490
  transition: --bdc_color var(--bds-animation_transition-duration) var(--bds-animation_easing);
2331
2491
  }
2332
- .bds280NumberInput-inputRow:focus-within {
2492
+ .bds2110NumberInput-inputRow:focus-within {
2333
2493
  --bdc_color: var(--bdc_color--focus);
2334
2494
  }
2335
- .bds280NumberInput-inputRow:focus-within:has(:focus-visible) {
2495
+ .bds2110NumberInput-inputRow:focus-within:has(:focus-visible) {
2336
2496
  outline: var(--bds-outline_default);
2337
2497
  outline-offset: var(--bds-outline_offset);
2338
2498
  }
2339
- .bds280NumberInput-input {
2499
+ .bds2110NumberInput-input {
2340
2500
  flex: 1;
2341
2501
  border: none;
2342
2502
  outline: none;
2343
2503
  font-family: var(--bds-font_family--body);
2344
- font-size: var(--bds-font_size--body);
2504
+ font-size: var(--numberInput_font-size, var(--bds-font_size--body));
2345
2505
  text-align: center;
2346
- padding: var(--bds-space_s);
2506
+ padding: var(--numberInput_padding, var(--bds-space_s));
2347
2507
  background: transparent;
2348
2508
  color: var(--numberInput_color, var(--bds-color_on-bg));
2349
2509
  min-inline-size: 0;
2350
2510
  appearance: textfield;
2351
2511
  }
2352
- .bds280NumberInput-input::-webkit-inner-spin-button,
2353
- .bds280NumberInput-input::-webkit-outer-spin-button {
2512
+ .bds2110NumberInput-input::-webkit-inner-spin-button,
2513
+ .bds2110NumberInput-input::-webkit-outer-spin-button {
2354
2514
  appearance: none;
2355
2515
  }
2356
- .bds280NumberInput-inputError {
2516
+ .bds2110NumberInput-inputError {
2357
2517
  --bdc_color: var(--bdc_color--error);
2358
2518
  }
2359
- .bds280NumberInput-stepper {
2519
+ .bds2110NumberInput-stepper {
2360
2520
  all: unset;
2361
2521
  display: flex;
2362
2522
  align-items: center;
2363
2523
  justify-content: center;
2364
- padding: var(--bds-space_xs);
2365
- margin: 1px;
2524
+ padding: var(--numberInput_stepper-padding, var(--bds-space_xs));
2525
+ margin: var(--bdc-outline_width);
2366
2526
  background-color: var(--numberInput_stepper-bg, var(--bds-color_bg--subtle));
2367
2527
  color: var(--numberInput_color, var(--bds-color_on-bg));
2368
2528
  cursor: pointer;
2369
2529
  transition: var(--bds-animation_transition);
2370
2530
  flex-shrink: 0;
2371
2531
  }
2372
- .bds280NumberInput-stepper svg {
2373
- width: 1rem;
2374
- height: 1rem;
2532
+ .bds2110NumberInput-stepper svg {
2533
+ inline-size: 1rem;
2534
+ block-size: 1rem;
2375
2535
  color: var(--numberInput_stepper-color, var(--bds-color_interactive));
2376
2536
  }
2377
- .bds280NumberInput-stepper:first-child {
2537
+ .bds2110NumberInput-stepper:first-child {
2378
2538
  border-start-start-radius: var(--_radius);
2379
2539
  border-end-start-radius: var(--_radius);
2380
2540
  }
2381
- .bds280NumberInput-stepper:last-child {
2541
+ .bds2110NumberInput-stepper:last-child {
2382
2542
  border-start-end-radius: var(--_radius);
2383
2543
  border-end-end-radius: var(--_radius);
2384
2544
  }
2385
- .bds280NumberInput-stepper:disabled {
2545
+ .bds2110NumberInput-stepper:disabled {
2386
2546
  opacity: 0.4;
2387
2547
  cursor: not-allowed;
2388
2548
  }
2389
2549
  @media (hover: hover) and (pointer: fine) {
2390
- .bds280NumberInput-stepper:not(:disabled):hover {
2550
+ .bds2110NumberInput-stepper:not(:disabled):hover {
2391
2551
  background-color: var(--numberInput_stepper-bg--hover, var(--bds-color_bg--subtle));
2392
2552
  opacity: var(--numberInput_stepper-opacity--hover, 0.7);
2393
2553
  }
@@ -2395,47 +2555,47 @@
2395
2555
  }
2396
2556
 
2397
2557
  /* src/components/interaction/form/Radio/Radio.module.css */
2398
- @layer boostdev.bds280Radio-component {
2399
- .bds280Radio-radioGroup {
2400
- --inputSize: calc(var(--bds-space_s) * 2);
2401
- --labelPosition: calc(var(--inputSize) + var(--bds-space_m));
2558
+ @layer boostdev.bds2110Radio-component {
2559
+ .bds2110Radio-radioGroup {
2560
+ --radio_size: calc(var(--bds-space_s) * 2);
2561
+ --inputSize: var(--radio_size);
2402
2562
  display: flex;
2403
2563
  flex-direction: column;
2404
2564
  }
2405
- .bds280Radio-inputWrapper {
2565
+ .bds2110Radio-inputWrapper {
2406
2566
  display: flex;
2407
2567
  align-items: flex-start;
2408
2568
  gap: var(--bds-space_xs);
2409
2569
  }
2410
- .bds280Radio-textWrapper {
2570
+ .bds2110Radio-textWrapper {
2411
2571
  display: flex;
2412
2572
  flex-direction: column;
2413
2573
  gap: var(--bds-space_xxxs);
2414
2574
  padding-block-start: var(--bds-space_xxxs);
2415
2575
  }
2416
- .bds280Radio-description {
2576
+ .bds2110Radio-description {
2417
2577
  font-size: var(--bds-font_size--body--s);
2418
2578
  color: var(--radio_description-color, var(--bds-color_on-bg--subtle));
2419
2579
  line-height: var(--bds-font_line-height--body);
2420
2580
  }
2421
- .bds280Radio-radio {
2581
+ .bds2110Radio-radio {
2422
2582
  flex-shrink: 0;
2423
- margin-block-start: 0.2em;
2424
- inline-size: var(--inputSize);
2425
- block-size: var(--inputSize);
2583
+ margin-block-start: var(--radio_offset, 0.2em);
2584
+ inline-size: var(--radio_size);
2585
+ block-size: var(--radio_size);
2426
2586
  color: var(--radio_color, var(--bds-color_on-bg));
2427
2587
  border: var(--radio_border, none);
2428
2588
  --bdc_color: currentcolor;
2429
- --bdc-outline_radius: 50%;
2589
+ --bdc-outline_radius: var(--bds-border_radius--circle);
2430
2590
  border-radius: var(--radio_radius, var(--bdc-outline_radius));
2431
2591
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--radio_shadow, var(--bdc-outline_shadow));
2432
2592
  appearance: none;
2433
2593
  background-color: var(--radio_color_bg, var(--bds-color_bg));
2434
2594
  cursor: pointer;
2435
2595
  position: relative;
2436
- transition: --bdc_color 0.2s ease, background-color 0.2s ease;
2596
+ transition: --bdc_color var(--bds-animation_transition-duration) var(--bds-animation_easing), background-color var(--bds-animation_transition-duration) var(--bds-animation_easing);
2437
2597
  }
2438
- .bds280Radio-radio:checked {
2598
+ .bds2110Radio-radio:checked {
2439
2599
  background:
2440
2600
  radial-gradient(
2441
2601
  circle,
@@ -2443,83 +2603,107 @@
2443
2603
  var(--radio_color_bg, var(--bds-color_bg)) 42%);
2444
2604
  --bdc_color: var(--radio_color-active, var(--bdc-color_active));
2445
2605
  }
2446
- .bds280Radio-radio:focus {
2606
+ .bds2110Radio-radio:focus {
2447
2607
  --bdc_color: var(--bdc_color--focus);
2448
2608
  }
2449
- .bds280Radio-radio:focus-visible {
2609
+ .bds2110Radio-radio:focus-visible {
2450
2610
  outline: var(--bds-outline_default);
2451
2611
  outline-offset: var(--bds-outline_offset);
2452
2612
  }
2453
- .bds280Radio-radioError {
2613
+ .bds2110Radio-radio:disabled {
2614
+ cursor: not-allowed;
2615
+ opacity: 0.5;
2616
+ }
2617
+ .bds2110Radio-radio:disabled ~ .bds2110Radio-textWrapper {
2618
+ opacity: 0.5;
2619
+ cursor: not-allowed;
2620
+ }
2621
+ .bds2110Radio-radioError {
2454
2622
  --bdc_color: var(--bdc_color--error);
2455
2623
  }
2456
2624
  }
2457
2625
 
2458
2626
  /* src/components/interaction/form/RadioGroup/RadioGroup.module.css */
2459
- @layer boostdev.bds280RadioGroup-component {
2460
- .bds280RadioGroup-group {
2627
+ @layer boostdev.bds2110RadioGroup-component {
2628
+ .bds2110RadioGroup-group {
2461
2629
  border: none;
2462
2630
  padding: 0;
2463
2631
  margin: 0;
2464
2632
  display: flex;
2465
2633
  flex-direction: column;
2466
- gap: var(--bds-space_xs);
2634
+ gap: var(--radioGroup_gap, var(--bds-space_xs));
2467
2635
  }
2468
- .bds280RadioGroup-legend {
2469
- font-family: var(--bds-font_family--body);
2470
- font-size: var(--bds-font_size--body--s);
2471
- font-weight: var(--bds-font_weight--medium);
2472
- color: var(--bds-color_on-bg);
2636
+ .bds2110RadioGroup-legend {
2637
+ font-family: var(--radioGroup_legend-font-family, var(--bds-font_family--body));
2638
+ font-size: var(--radioGroup_legend-font-size, var(--bds-font_size--body--s));
2639
+ font-weight: var(--radioGroup_legend-font-weight, var(--bds-font_weight--medium));
2640
+ color: var(--radioGroup_legend-color, var(--bds-color_on-bg));
2473
2641
  padding: 0;
2474
- margin-block-end: var(--bds-space_xs);
2642
+ margin-block-end: var(--radioGroup_legend-gap, var(--bds-space_xs));
2643
+ }
2644
+ .bds2110RadioGroup-required {
2645
+ color: var(--radioGroup_required-color, var(--bds-color_error));
2475
2646
  }
2476
- .bds280RadioGroup-required {
2477
- color: var(--bds-color_error);
2647
+ .bds2110RadioGroup-requiredLabel {
2648
+ position: absolute;
2649
+ inline-size: 1px;
2650
+ block-size: 1px;
2651
+ padding: 0;
2652
+ margin: -1px;
2653
+ overflow: hidden;
2654
+ clip: rect(0, 0, 0, 0);
2655
+ white-space: nowrap;
2656
+ border-width: 0;
2478
2657
  }
2479
- .bds280RadioGroup-items {
2658
+ .bds2110RadioGroup-items {
2480
2659
  display: flex;
2481
2660
  flex-direction: column;
2482
- gap: var(--bds-space_xs);
2661
+ gap: var(--radioGroup_items-gap, var(--bds-space_xs));
2483
2662
  }
2484
2663
  }
2485
2664
 
2486
2665
  /* src/components/interaction/form/SegmentedControl/SegmentedControl.module.css */
2487
- @layer boostdev.bds280SegmentedControl-component {
2488
- .bds280SegmentedControl-control {
2666
+ @layer boostdev.bds2110SegmentedControl-component {
2667
+ .bds2110SegmentedControl-control {
2489
2668
  position: relative;
2490
2669
  display: inline-grid;
2491
2670
  grid-auto-flow: column;
2492
2671
  grid-auto-columns: 1fr;
2493
- padding: var(--bds-space_xxxs);
2672
+ padding: var(--control_track-pad, var(--bds-space_xxs));
2494
2673
  background-color: var(--control_track-bg, var(--bds-color_bg--subtle));
2495
2674
  border-radius: var(--control_radius, var(--bds-border_radius--full));
2496
2675
  gap: 0;
2676
+ --control_dir: 1;
2677
+ }
2678
+ [dir=rtl] .bds2110SegmentedControl-control,
2679
+ .bds2110SegmentedControl-control[dir=rtl] {
2680
+ --control_dir: -1;
2497
2681
  }
2498
- .bds280SegmentedControl-thumb {
2682
+ .bds2110SegmentedControl-thumb {
2499
2683
  position: absolute;
2500
- inset-block: var(--bds-space_xxxs);
2501
- inset-inline-start: var(--bds-space_xxxs);
2502
- inline-size: calc((100% - 2 * var(--bds-space_xxxs)) / var(--control_count, 1));
2684
+ inset-block: var(--control_track-pad, var(--bds-space_xxs));
2685
+ inset-inline-start: var(--control_track-pad, var(--bds-space_xxs));
2686
+ inline-size: calc((100% - 2 * var(--control_track-pad, var(--bds-space_xxs))) / var(--control_count, 1));
2503
2687
  border-radius: var(--control_thumb-radius, var(--bds-border_radius--full));
2504
2688
  background-color: var(--control_thumb-bg, var(--bds-color_interactive));
2505
- box-shadow: var(--bds-shadow_s);
2689
+ box-shadow: var(--control_thumb-shadow, var(--bds-shadow_s));
2506
2690
  pointer-events: none;
2507
- transform: translateX(calc(var(--control_selected-index, 0) * 100%));
2691
+ transform: translateX(calc(var(--control_selected-index, 0) * var(--control_dir, 1) * 100%));
2508
2692
  transition: transform var(--bds-animation_transition-duration) var(--bds-animation_easing);
2509
2693
  }
2510
- .bds280SegmentedControl-indicator {
2694
+ .bds2110SegmentedControl-indicator {
2511
2695
  position: absolute;
2512
- inset-block: var(--bds-space_xxxs);
2513
- inset-inline-start: var(--bds-space_xxxs);
2514
- inline-size: calc((100% - 2 * var(--bds-space_xxxs)) / var(--control_count, 1));
2696
+ inset-block: var(--control_track-pad, var(--bds-space_xxs));
2697
+ inset-inline-start: var(--control_track-pad, var(--bds-space_xxs));
2698
+ inline-size: calc((100% - 2 * var(--control_track-pad, var(--bds-space_xxs))) / var(--control_count, 1));
2515
2699
  border-radius: var(--control_thumb-radius, var(--bds-border_radius--full));
2516
2700
  pointer-events: none;
2517
2701
  z-index: 2;
2518
2702
  display: none;
2519
- transform: translateX(calc(var(--control_selected-index, 0) * 100%));
2703
+ transform: translateX(calc(var(--control_selected-index, 0) * var(--control_dir, 1) * 100%));
2520
2704
  transition: transform var(--bds-animation_transition-duration) var(--bds-animation_easing);
2521
2705
  }
2522
- .bds280SegmentedControl-item {
2706
+ .bds2110SegmentedControl-item {
2523
2707
  position: relative;
2524
2708
  z-index: 1;
2525
2709
  display: flex;
@@ -2527,7 +2711,7 @@
2527
2711
  justify-content: center;
2528
2712
  cursor: pointer;
2529
2713
  border-radius: var(--control_thumb-radius, var(--bds-border_radius--full));
2530
- padding: var(--bds-space_xs) var(--bds-space_m);
2714
+ padding: var(--control_item-padding, var(--bds-space_xs) var(--bds-space_m));
2531
2715
  font-size: var(--bds-font_size--body);
2532
2716
  font-family: var(--bds-font_family--body);
2533
2717
  line-height: var(--bds-font_line-height--body);
@@ -2540,75 +2724,79 @@
2540
2724
  border: none;
2541
2725
  outline: none;
2542
2726
  }
2543
- .bds280SegmentedControl-item:focus-visible {
2727
+ .bds2110SegmentedControl-item:focus-visible {
2544
2728
  outline: var(--bds-outline_default);
2545
2729
  outline-offset: calc(var(--bds-outline_offset) * -1);
2546
2730
  border-radius: var(--control_thumb-radius, var(--bds-border_radius--full));
2547
2731
  }
2548
- .bds280SegmentedControl-item.bds280SegmentedControl---active {
2732
+ .bds2110SegmentedControl-item.bds2110SegmentedControl---active {
2549
2733
  color: var(--control_label-color--active, var(--bds-color_on-interactive));
2550
2734
  }
2551
- .bds280SegmentedControl-item.bds280SegmentedControl---disabled {
2735
+ .bds2110SegmentedControl-item.bds2110SegmentedControl---disabled {
2552
2736
  opacity: 0.5;
2553
2737
  cursor: not-allowed;
2554
2738
  pointer-events: none;
2555
2739
  }
2556
- .bds280SegmentedControl-control.bds280SegmentedControl---size_small .bds280SegmentedControl-item {
2740
+ .bds2110SegmentedControl-control.bds2110SegmentedControl---size_small .bds2110SegmentedControl-item {
2557
2741
  padding: var(--bds-space_xxs) var(--bds-space_s);
2558
2742
  font-size: var(--bds-font_size--body--s);
2559
2743
  }
2560
- .bds280SegmentedControl-control.bds280SegmentedControl---size_large .bds280SegmentedControl-item {
2744
+ .bds2110SegmentedControl-control.bds2110SegmentedControl---size_large .bds2110SegmentedControl-item {
2561
2745
  padding: var(--bds-space_s) var(--bds-space_m);
2562
2746
  white-space: normal;
2563
2747
  text-align: center;
2564
2748
  }
2565
- .bds280SegmentedControl-control.bds280SegmentedControl---variant_outline {
2749
+ .bds2110SegmentedControl-control.bds2110SegmentedControl---variant_outline {
2566
2750
  --control_label-color--active: var(--bds-color_interactive);
2567
2751
  }
2568
- .bds280SegmentedControl-control.bds280SegmentedControl---variant_outline .bds280SegmentedControl-thumb {
2752
+ .bds2110SegmentedControl-control.bds2110SegmentedControl---variant_outline .bds2110SegmentedControl-thumb {
2569
2753
  display: none;
2570
2754
  }
2571
- .bds280SegmentedControl-control.bds280SegmentedControl---variant_outline .bds280SegmentedControl-item {
2755
+ .bds2110SegmentedControl-control.bds2110SegmentedControl---variant_outline .bds2110SegmentedControl-item {
2572
2756
  background-color: var(--control_item-bg, transparent);
2573
2757
  }
2574
- .bds280SegmentedControl-control.bds280SegmentedControl---variant_outline .bds280SegmentedControl-item.bds280SegmentedControl---active {
2758
+ .bds2110SegmentedControl-control.bds2110SegmentedControl---variant_outline .bds2110SegmentedControl-item.bds2110SegmentedControl---active {
2575
2759
  background-color: var(--control_item-bg--active, var(--bds-color_bg));
2576
2760
  }
2577
- .bds280SegmentedControl-control.bds280SegmentedControl---variant_outline .bds280SegmentedControl-indicator {
2761
+ .bds2110SegmentedControl-control.bds2110SegmentedControl---variant_outline .bds2110SegmentedControl-indicator {
2578
2762
  display: block;
2579
- box-shadow: inset 0 0 0 2px var(--control_indicator-color, var(--bds-color_interactive));
2763
+ box-shadow: inset 0 0 0 var(--control_indicator-width, 2px) var(--control_indicator-color, var(--bds-color_interactive));
2764
+ }
2765
+ .bds2110SegmentedControl-control.bds2110SegmentedControl---no-selection .bds2110SegmentedControl-thumb,
2766
+ .bds2110SegmentedControl-control.bds2110SegmentedControl---no-selection .bds2110SegmentedControl-indicator {
2767
+ display: none;
2580
2768
  }
2581
2769
  @media (hover: hover) and (pointer: fine) {
2582
- .bds280SegmentedControl-item:not(.bds280SegmentedControl---active, .bds280SegmentedControl---disabled):hover {
2770
+ .bds2110SegmentedControl-item:not(.bds2110SegmentedControl---active, .bds2110SegmentedControl---disabled):hover {
2583
2771
  color: var(--control_label-color--hover, var(--bds-color_on-bg));
2584
2772
  }
2585
2773
  }
2586
2774
  @media (prefers-reduced-motion: reduce) {
2587
- .bds280SegmentedControl-thumb,
2588
- .bds280SegmentedControl-indicator {
2775
+ .bds2110SegmentedControl-thumb,
2776
+ .bds2110SegmentedControl-indicator {
2589
2777
  transition: none;
2590
2778
  }
2591
2779
  }
2592
2780
  }
2593
2781
 
2594
2782
  /* src/components/interaction/form/Select/Select.module.css */
2595
- @layer boostdev.bds280Select-component {
2596
- .bds280Select-formGroup {
2783
+ @layer boostdev.bds2110Select-component {
2784
+ .bds2110Select-formGroup {
2597
2785
  display: flex;
2598
2786
  flex-direction: column;
2599
2787
  }
2600
- .bds280Select-selectWrapper {
2788
+ .bds2110Select-selectWrapper {
2601
2789
  position: relative;
2602
2790
  display: flex;
2603
2791
  align-items: center;
2604
2792
  }
2605
- .bds280Select-select {
2793
+ .bds2110Select-select {
2606
2794
  appearance: none;
2607
2795
  inline-size: 100%;
2608
2796
  font-family: var(--bds-font_family--body);
2609
2797
  font-size: var(--bds-font_size--body);
2610
- padding: var(--bds-space_s);
2611
- padding-inline-end: var(--bds-space_xxl);
2798
+ padding: var(--select_padding, var(--bds-space_s));
2799
+ padding-inline-end: var(--select_padding-end, var(--bds-space_xxl));
2612
2800
  border: var(--select_border, none);
2613
2801
  --bdc_color: currentcolor;
2614
2802
  --bdc-outline_radius: var(--bds-border_radius--full);
@@ -2619,21 +2807,21 @@
2619
2807
  cursor: pointer;
2620
2808
  transition: --bdc_color var(--bds-animation_transition-duration) var(--bds-animation_easing), background-color var(--bds-animation_transition-duration) var(--bds-animation_easing);
2621
2809
  }
2622
- .bds280Select-select:focus {
2810
+ .bds2110Select-select:focus {
2623
2811
  --bdc_color: var(--bdc_color--focus);
2624
2812
  }
2625
- .bds280Select-select:focus-visible {
2813
+ .bds2110Select-select:focus-visible {
2626
2814
  outline: var(--bds-outline_default);
2627
2815
  outline-offset: var(--bds-outline_offset);
2628
2816
  }
2629
- .bds280Select-select:disabled {
2817
+ .bds2110Select-select:disabled {
2630
2818
  opacity: 0.5;
2631
2819
  cursor: not-allowed;
2632
2820
  }
2633
- .bds280Select-selectError {
2821
+ .bds2110Select-selectError {
2634
2822
  --bdc_color: var(--bdc_color--error);
2635
2823
  }
2636
- .bds280Select-chevron {
2824
+ .bds2110Select-chevron {
2637
2825
  position: absolute;
2638
2826
  inset-inline-end: var(--bds-space_s);
2639
2827
  display: flex;
@@ -2641,37 +2829,35 @@
2641
2829
  pointer-events: none;
2642
2830
  color: var(--select_chevron-color, var(--bds-color_interactive));
2643
2831
  }
2644
- .bds280Select-chevron svg {
2645
- inline-size: 1rem;
2646
- block-size: 1rem;
2832
+ .bds2110Select-chevron svg {
2833
+ inline-size: var(--select_chevron-size, 1rem);
2834
+ block-size: var(--select_chevron-size, 1rem);
2647
2835
  }
2648
2836
  }
2649
2837
 
2650
2838
  /* src/components/interaction/form/Slider/Slider.module.css */
2651
- @layer boostdev.bds280Slider-component {
2652
- .bds280Slider-formGroup {
2839
+ @layer boostdev.bds2110Slider-component {
2840
+ .bds2110Slider-formGroup {
2653
2841
  display: flex;
2654
2842
  flex-direction: column;
2655
2843
  gap: var(--bds-space_xxs);
2656
2844
  }
2657
- .bds280Slider-labelRow {
2845
+ .bds2110Slider-labelRow {
2658
2846
  display: flex;
2659
2847
  justify-content: space-between;
2660
2848
  align-items: baseline;
2661
2849
  }
2662
- .bds280Slider-value {
2850
+ .bds2110Slider-value {
2663
2851
  font-size: var(--bds-font_size--body--s);
2664
2852
  font-variant-numeric: tabular-nums;
2665
2853
  color: var(--bds-color_on-bg--subtle);
2666
2854
  }
2667
- .bds280Slider-slider {
2855
+ .bds2110Slider-slider {
2668
2856
  --slider_fill: 0%;
2669
- --slider_track-height: var(--bds-space_xxs);
2670
- --slider_thumb-size: calc(var(--bds-space_s) * 2);
2671
2857
  color: var(--slider_color, var(--bds-color_on-bg));
2672
2858
  appearance: none;
2673
2859
  inline-size: 100%;
2674
- block-size: var(--slider_track-height);
2860
+ block-size: var(--slider_track-height, var(--bds-space_xxs));
2675
2861
  border-radius: var(--slider_track-radius, var(--bds-border_radius--full));
2676
2862
  background:
2677
2863
  linear-gradient(
@@ -2683,35 +2869,44 @@
2683
2869
  cursor: pointer;
2684
2870
  transition: var(--bds-animation_transition);
2685
2871
  }
2686
- .bds280Slider-slider:focus-visible {
2872
+ .bds2110Slider-slider:dir(rtl) {
2873
+ background:
2874
+ linear-gradient(
2875
+ to left,
2876
+ var(--slider_color-active, var(--bdc-color_active)) 0%,
2877
+ var(--slider_color-active, var(--bdc-color_active)) var(--slider_fill),
2878
+ var(--slider_track-bg, var(--bds-color_bg--subtle)) var(--slider_fill),
2879
+ var(--slider_track-bg, var(--bds-color_bg--subtle)) 100%);
2880
+ }
2881
+ .bds2110Slider-slider:focus-visible {
2687
2882
  outline: var(--bds-outline_default);
2688
2883
  outline-offset: var(--bds-outline_offset);
2689
2884
  border-radius: var(--slider_track-radius, var(--bds-border_radius--full));
2690
2885
  }
2691
- .bds280Slider-slider:disabled {
2886
+ .bds2110Slider-slider:disabled {
2692
2887
  opacity: 0.4;
2693
2888
  cursor: not-allowed;
2694
2889
  }
2695
- .bds280Slider-slider::-webkit-slider-thumb {
2890
+ .bds2110Slider-slider::-webkit-slider-thumb {
2696
2891
  appearance: none;
2697
- inline-size: var(--slider_thumb-size);
2698
- block-size: var(--slider_thumb-size);
2892
+ inline-size: var(--slider_thumb-size, calc(var(--bds-space_s) * 2));
2893
+ block-size: var(--slider_thumb-size, calc(var(--bds-space_s) * 2));
2699
2894
  border-radius: var(--slider_thumb-radius, var(--bds-border_radius--circle));
2700
2895
  background-color: var(--slider_color-active, var(--bdc-color_active));
2701
2896
  box-shadow: var(--bds-shadow_s);
2702
2897
  transition: var(--bds-animation_transition);
2703
2898
  cursor: pointer;
2704
2899
  }
2705
- .bds280Slider-slider::-moz-range-thumb {
2706
- inline-size: var(--slider_thumb-size);
2707
- block-size: var(--slider_thumb-size);
2900
+ .bds2110Slider-slider::-moz-range-thumb {
2901
+ inline-size: var(--slider_thumb-size, calc(var(--bds-space_s) * 2));
2902
+ block-size: var(--slider_thumb-size, calc(var(--bds-space_s) * 2));
2708
2903
  border: none;
2709
2904
  border-radius: var(--slider_thumb-radius, var(--bds-border_radius--circle));
2710
2905
  background-color: var(--slider_color-active, var(--bdc-color_active));
2711
2906
  box-shadow: var(--bds-shadow_s);
2712
2907
  cursor: pointer;
2713
2908
  }
2714
- .bds280Slider-sliderError {
2909
+ .bds2110Slider-sliderError {
2715
2910
  background:
2716
2911
  linear-gradient(
2717
2912
  to right,
@@ -2720,55 +2915,60 @@
2720
2915
  var(--slider_track-bg, var(--bds-color_bg--subtle)) var(--slider_fill),
2721
2916
  var(--slider_track-bg, var(--bds-color_bg--subtle)) 100%);
2722
2917
  }
2723
- .bds280Slider-sliderError::-webkit-slider-thumb {
2918
+ .bds2110Slider-sliderError:dir(rtl) {
2919
+ background:
2920
+ linear-gradient(
2921
+ to left,
2922
+ var(--slider_color--error, var(--bds-color_error)) 0%,
2923
+ var(--slider_color--error, var(--bds-color_error)) var(--slider_fill),
2924
+ var(--slider_track-bg, var(--bds-color_bg--subtle)) var(--slider_fill),
2925
+ var(--slider_track-bg, var(--bds-color_bg--subtle)) 100%);
2926
+ }
2927
+ .bds2110Slider-sliderError::-webkit-slider-thumb {
2724
2928
  background-color: var(--slider_color--error, var(--bds-color_error));
2725
2929
  }
2726
- .bds280Slider-sliderError::-moz-range-thumb {
2930
+ .bds2110Slider-sliderError::-moz-range-thumb {
2727
2931
  background-color: var(--slider_color--error, var(--bds-color_error));
2728
2932
  }
2729
2933
  @media (prefers-reduced-motion: reduce) {
2730
- .bds280Slider-slider,
2731
- .bds280Slider-slider::-webkit-slider-thumb,
2732
- .bds280Slider-slider::-moz-range-thumb {
2934
+ .bds2110Slider-slider,
2935
+ .bds2110Slider-slider::-webkit-slider-thumb,
2936
+ .bds2110Slider-slider::-moz-range-thumb {
2733
2937
  transition: none;
2734
2938
  }
2735
2939
  }
2736
2940
  }
2737
2941
 
2738
2942
  /* src/components/interaction/form/Switch/Switch.module.css */
2739
- @layer boostdev.bds280Switch-component {
2740
- .bds280Switch-switchGroup {
2741
- --switch_thumb-size: 1.25em;
2742
- --switch_track-pad: var(--bds-space_xxxs);
2743
- --switch_track-height: calc(var(--switch_thumb-size) + var(--switch_track-pad) * 2);
2744
- --switch_track-width: calc(var(--switch_thumb-size) * 2 + var(--switch_track-pad) * 2);
2943
+ @layer boostdev.bds2110Switch-component {
2944
+ .bds2110Switch-switchGroup {
2745
2945
  color: var(--switch_color, var(--bds-color_on-bg));
2746
2946
  display: flex;
2747
2947
  flex-direction: column;
2748
2948
  }
2749
- .bds280Switch-switchGroup.bds280Switch---size_small {
2949
+ .bds2110Switch-switchGroup.bds2110Switch---size_small {
2750
2950
  --switch_thumb-size: 1em;
2751
2951
  }
2752
- .bds280Switch-switchGroup.bds280Switch---size_medium {
2952
+ .bds2110Switch-switchGroup.bds2110Switch---size_medium {
2753
2953
  --switch_thumb-size: 1.25em;
2754
2954
  }
2755
- .bds280Switch-switchGroup.bds280Switch---size_large {
2955
+ .bds2110Switch-switchGroup.bds2110Switch---size_large {
2756
2956
  --switch_thumb-size: 1.5em;
2757
2957
  }
2758
- .bds280Switch-inputWrapper {
2958
+ .bds2110Switch-inputWrapper {
2759
2959
  display: flex;
2760
2960
  align-items: center;
2761
2961
  gap: var(--bds-space_xs);
2762
2962
  }
2763
- .bds280Switch-trackWrapper {
2963
+ .bds2110Switch-trackWrapper {
2764
2964
  position: relative;
2765
2965
  display: inline-flex;
2766
2966
  align-items: center;
2767
2967
  flex-shrink: 0;
2768
- inline-size: var(--switch_track-width);
2769
- block-size: var(--switch_track-height);
2968
+ inline-size: calc(var(--switch_thumb-size, 1.25em) * 2 + var(--switch_track-pad, var(--bds-space_xxxs)) * 2);
2969
+ block-size: calc(var(--switch_thumb-size, 1.25em) + var(--switch_track-pad, var(--bds-space_xxxs)) * 2);
2770
2970
  }
2771
- .bds280Switch-switch {
2971
+ .bds2110Switch-switch {
2772
2972
  position: absolute;
2773
2973
  inset: 0;
2774
2974
  appearance: none;
@@ -2779,17 +2979,17 @@
2779
2979
  cursor: pointer;
2780
2980
  z-index: 1;
2781
2981
  }
2782
- .bds280Switch-switch:disabled {
2982
+ .bds2110Switch-switch:disabled {
2783
2983
  cursor: not-allowed;
2784
2984
  }
2785
- .bds280Switch-track {
2985
+ .bds2110Switch-track {
2786
2986
  display: inline-flex;
2787
2987
  align-items: center;
2788
- inline-size: var(--switch_track-width);
2789
- block-size: var(--switch_track-height);
2988
+ inline-size: calc(var(--switch_thumb-size, 1.25em) * 2 + var(--switch_track-pad, var(--bds-space_xxxs)) * 2);
2989
+ block-size: calc(var(--switch_thumb-size, 1.25em) + var(--switch_track-pad, var(--bds-space_xxxs)) * 2);
2790
2990
  border-radius: var(--switch_track-radius, var(--bds-border_radius--full));
2791
2991
  background-color: var(--switch_track-bg, var(--bds-color_grey--subtle));
2792
- padding-inline: var(--switch_track-pad);
2992
+ padding-inline: var(--switch_track-pad, var(--bds-space_xxxs));
2793
2993
  pointer-events: none;
2794
2994
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--switch_shadow, var(--bdc-outline_shadow));
2795
2995
  transition:
@@ -2798,54 +2998,57 @@
2798
2998
  transform var(--bds-animation_transition-duration) var(--bds-animation_easing);
2799
2999
  --bdc_color: var(--switch_thumb-bg, var(--bds-color_interactive));
2800
3000
  }
2801
- .bds280Switch-thumb {
3001
+ .bds2110Switch-thumb {
2802
3002
  display: block;
2803
- inline-size: var(--switch_thumb-size);
2804
- block-size: var(--switch_thumb-size);
3003
+ inline-size: var(--switch_thumb-size, 1.25em);
3004
+ block-size: var(--switch_thumb-size, 1.25em);
2805
3005
  border-radius: var(--switch_thumb-radius, var(--bds-border_radius--circle));
2806
3006
  background-color: var(--switch_thumb-bg, var(--bds-color_interactive));
2807
3007
  box-shadow: var(--bds-shadow_s);
2808
3008
  transition: var(--bds-animation_transition);
2809
3009
  transform: translateX(0);
2810
3010
  }
2811
- .bds280Switch-switch.bds280Switch-switchError + .bds280Switch-track {
3011
+ .bds2110Switch-switch.bds2110Switch-switchError + .bds2110Switch-track {
2812
3012
  --bdc_color: var(--switch_border-color--error, var(--bds-color_error));
2813
3013
  }
2814
- .bds280Switch-switch:checked + .bds280Switch-track {
3014
+ .bds2110Switch-switch:checked + .bds2110Switch-track {
2815
3015
  background-color: var(--switch_track-bg--active, var(--bdc-color_active--subtle));
2816
3016
  --bdc_color: var(--switch_thumb-bg--active, var(--bds-color_interactive));
2817
3017
  }
2818
- .bds280Switch-switch:checked + .bds280Switch-track .bds280Switch-thumb {
3018
+ .bds2110Switch-switch:checked + .bds2110Switch-track .bds2110Switch-thumb {
2819
3019
  background-color: var(--switch_thumb-bg--active, var(--bds-color_interactive));
2820
- transform: translateX(var(--switch_thumb-size));
3020
+ transform: translateX(var(--switch_thumb-size, 1.25em));
3021
+ }
3022
+ [dir=rtl] .bds2110Switch-switch:checked + .bds2110Switch-track .bds2110Switch-thumb {
3023
+ transform: translateX(calc(var(--switch_thumb-size, 1.25em) * -1));
2821
3024
  }
2822
- .bds280Switch-switch:focus-visible + .bds280Switch-track {
3025
+ .bds2110Switch-switch:focus-visible + .bds2110Switch-track {
2823
3026
  outline: var(--bds-outline_default);
2824
3027
  outline-offset: var(--bds-outline_offset);
2825
3028
  border-radius: var(--switch_track-radius, var(--bds-border_radius--full));
2826
3029
  }
2827
- .bds280Switch-switch:disabled + .bds280Switch-track {
3030
+ .bds2110Switch-switch:disabled + .bds2110Switch-track {
2828
3031
  opacity: 0.4;
2829
3032
  }
2830
3033
  @media (prefers-reduced-motion: reduce) {
2831
- .bds280Switch-track,
2832
- .bds280Switch-thumb {
3034
+ .bds2110Switch-track,
3035
+ .bds2110Switch-thumb {
2833
3036
  transition: none;
2834
3037
  }
2835
3038
  }
2836
3039
  }
2837
3040
 
2838
3041
  /* src/components/interaction/form/Textarea/Textarea.module.css */
2839
- @layer boostdev.bds280Textarea-component {
2840
- .bds280Textarea-formGroup {
3042
+ @layer boostdev.bds2110Textarea-component {
3043
+ .bds2110Textarea-formGroup {
2841
3044
  display: flex;
2842
3045
  flex-direction: column;
2843
3046
  }
2844
- .bds280Textarea-textarea {
2845
- font-family: var(--bds-font_family--body);
2846
- font-size: var(--bds-font_size--body);
2847
- line-height: var(--bds-font_line-height--body);
2848
- padding: var(--bds-space_s);
3047
+ .bds2110Textarea-textarea {
3048
+ font-family: var(--textarea_font-family, var(--bds-font_family--body));
3049
+ font-size: var(--textarea_font-size, var(--bds-font_size--body));
3050
+ line-height: var(--textarea_line-height, var(--bds-font_line-height--body));
3051
+ padding: var(--textarea_padding, var(--bds-space_s));
2849
3052
  border: var(--textarea_border, none);
2850
3053
  --bdc_color: currentcolor;
2851
3054
  --bdc-outline_radius: var(--bdc-outline_radius--l);
@@ -2854,280 +3057,294 @@
2854
3057
  background-color: var(--textarea_color_bg, var(--bds-color_bg));
2855
3058
  color: var(--textarea_color, var(--bds-color_on-bg));
2856
3059
  resize: vertical;
2857
- min-block-size: calc(var(--bds-space_m) * 5);
3060
+ min-block-size: var(--textarea_min-block-size, calc(var(--bds-space_m) * 5));
2858
3061
  transition: --bdc_color var(--bds-animation_transition-duration) var(--bds-animation_easing), background-color var(--bds-animation_transition-duration) var(--bds-animation_easing);
2859
3062
  }
2860
- .bds280Textarea-textarea:focus {
3063
+ .bds2110Textarea-textarea:focus {
2861
3064
  --bdc_color: var(--bdc_color--focus);
2862
3065
  }
2863
- .bds280Textarea-textarea:focus-visible {
3066
+ .bds2110Textarea-textarea:focus-visible {
2864
3067
  outline: var(--bds-outline_default);
2865
3068
  outline-offset: var(--bds-outline_offset);
2866
3069
  }
2867
- .bds280Textarea-textarea:disabled {
3070
+ .bds2110Textarea-textarea:disabled {
2868
3071
  opacity: 0.5;
2869
3072
  cursor: not-allowed;
2870
3073
  resize: none;
2871
3074
  }
2872
- .bds280Textarea-textareaError {
3075
+ .bds2110Textarea-textareaError {
2873
3076
  --bdc_color: var(--bdc_color--error);
2874
3077
  }
2875
3078
  }
2876
3079
 
2877
3080
  /* src/components/layout/ButtonGroup/ButtonGroup.module.css */
2878
- @layer boostdev.bds280ButtonGroup-component {
2879
- .bds280ButtonGroup-buttonGroup {
3081
+ @layer boostdev.bds2110ButtonGroup-component {
3082
+ .bds2110ButtonGroup-buttonGroup {
2880
3083
  container-type: inline-size;
2881
3084
  container-name: button-group;
2882
3085
  grid-column: var(--bds-grid_span-100);
2883
3086
  inline-size: 100%;
2884
3087
  }
2885
- .bds280ButtonGroup-buttonGroup .bds280ButtonGroup-container {
3088
+ .bds2110ButtonGroup-buttonGroup .bds2110ButtonGroup-container {
2886
3089
  position: relative;
2887
3090
  display: flex;
2888
3091
  flex-direction: column-reverse;
2889
- gap: var(--bds-space_l);
3092
+ gap: var(--buttonGroup_gap, var(--bds-space_l));
2890
3093
  align-items: center;
2891
3094
  }
2892
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_card .bds280ButtonGroup-container {
3095
+ .bds2110ButtonGroup-buttonGroup.bds2110ButtonGroup---variant_card .bds2110ButtonGroup-container {
2893
3096
  align-items: stretch;
2894
3097
  }
2895
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_flow .bds280ButtonGroup-container,
2896
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_modal .bds280ButtonGroup-container {
3098
+ .bds2110ButtonGroup-buttonGroup.bds2110ButtonGroup---variant_flow .bds2110ButtonGroup-container,
3099
+ .bds2110ButtonGroup-buttonGroup.bds2110ButtonGroup---variant_modal .bds2110ButtonGroup-container {
2897
3100
  align-items: center;
2898
3101
  }
2899
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_content .bds280ButtonGroup-container {
3102
+ .bds2110ButtonGroup-buttonGroup.bds2110ButtonGroup---variant_content .bds2110ButtonGroup-container {
2900
3103
  align-items: flex-start;
2901
3104
  }
2902
3105
  @supports (contain: inline-size) {
2903
3106
  @container button-group (min-width: 30rem) {
2904
- .bds280ButtonGroup-buttonGroup .bds280ButtonGroup-container {
3107
+ .bds2110ButtonGroup-buttonGroup .bds2110ButtonGroup-container {
2905
3108
  flex-direction: row;
2906
3109
  justify-content: space-between;
2907
3110
  }
2908
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_modal .bds280ButtonGroup-container > :first-child:last-child,
2909
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_flow .bds280ButtonGroup-container > :first-child:last-child {
3111
+ .bds2110ButtonGroup-buttonGroup.bds2110ButtonGroup---variant_modal .bds2110ButtonGroup-container > :first-child:last-child,
3112
+ .bds2110ButtonGroup-buttonGroup.bds2110ButtonGroup---variant_flow .bds2110ButtonGroup-container > :first-child:last-child {
2910
3113
  margin-inline-start: auto;
2911
3114
  }
2912
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_card .bds280ButtonGroup-container {
3115
+ .bds2110ButtonGroup-buttonGroup.bds2110ButtonGroup---variant_card .bds2110ButtonGroup-container {
2913
3116
  justify-content: center;
2914
3117
  }
2915
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_modal .bds280ButtonGroup-container {
3118
+ .bds2110ButtonGroup-buttonGroup.bds2110ButtonGroup---variant_modal .bds2110ButtonGroup-container {
2916
3119
  justify-content: flex-end;
2917
3120
  }
2918
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_content .bds280ButtonGroup-container {
3121
+ .bds2110ButtonGroup-buttonGroup.bds2110ButtonGroup---variant_content .bds2110ButtonGroup-container {
2919
3122
  justify-content: flex-start;
2920
3123
  align-items: center;
2921
3124
  }
2922
- .bds280ButtonGroup-buttonGroup.bds280ButtonGroup---variant_grid .bds280ButtonGroup-container {
2923
- justify-content: center;
2924
- }
2925
3125
  }
2926
3126
  }
2927
3127
  }
2928
3128
 
2929
3129
  /* src/components/layout/Card/Card.module.css */
2930
- @layer boostdev.bds280Card-component {
2931
- .bds280Card-card {
3130
+ @layer boostdev.bds2110Card-component {
3131
+ .bds2110Card-card {
2932
3132
  background-color: var(--card_color, var(--bds-color_bg));
2933
3133
  color: var(--card_on-color, var(--bds-color_on-bg));
2934
- border-radius: var(--bds-border_radius--m);
2935
- transition: all 0.3s ease;
3134
+ border-radius: var(--card_radius, var(--bds-border_radius--m));
3135
+ transition: var(--card_transition, var(--bds-animation_transition));
2936
3136
  position: relative;
2937
3137
  }
2938
- .bds280Card-card.bds280Card---default {
3138
+ .bds2110Card-card:is(button) {
3139
+ border: none;
3140
+ font: inherit;
3141
+ text-align: inherit;
3142
+ display: block;
3143
+ inline-size: 100%;
3144
+ }
3145
+ .bds2110Card-card.bds2110Card---default {
2939
3146
  box-shadow: var(--card_shadow--default, var(--bds-shadow_s));
2940
3147
  }
2941
- .bds280Card-card.bds280Card---elevated {
3148
+ .bds2110Card-card.bds2110Card---elevated {
2942
3149
  box-shadow: var(--card_shadow--elevated, var(--bds-shadow_m));
2943
3150
  }
2944
- .bds280Card-card.bds280Card---outlined {
3151
+ .bds2110Card-card.bds2110Card---outlined {
2945
3152
  border: var(--card_border, none);
2946
3153
  --bdc_color: currentcolor;
2947
3154
  box-shadow: var(--card_shadow--outlined, inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--bds-shadow_s));
2948
3155
  }
2949
- .bds280Card-card.bds280Card---clickable {
3156
+ .bds2110Card-card.bds2110Card---clickable {
2950
3157
  cursor: pointer;
2951
3158
  }
2952
- .bds280Card-card.bds280Card---padding-none {
3159
+ .bds2110Card-card.bds2110Card---padding-none {
2953
3160
  padding: var(--card_padding, 0);
2954
3161
  }
2955
- .bds280Card-card.bds280Card---padding-small {
3162
+ .bds2110Card-card.bds2110Card---padding-small {
2956
3163
  padding: var(--card_padding, var(--bds-space_s));
2957
3164
  }
2958
- .bds280Card-card.bds280Card---padding-medium {
3165
+ .bds2110Card-card.bds2110Card---padding-medium {
2959
3166
  padding: var(--card_padding, var(--bds-space_m));
2960
3167
  }
2961
- .bds280Card-card.bds280Card---padding-large {
3168
+ .bds2110Card-card.bds2110Card---padding-large {
2962
3169
  padding: var(--card_padding, var(--bds-space_l));
2963
3170
  }
2964
- .bds280Card-card.bds280Card---padding-extra-large {
3171
+ .bds2110Card-card.bds2110Card---padding-extra-large {
2965
3172
  padding: var(--card_padding, var(--bds-space_xl));
2966
3173
  }
2967
- .bds280Card-card.bds280Card---text-start {
3174
+ .bds2110Card-card.bds2110Card---text-start {
2968
3175
  text-align: start;
2969
3176
  }
2970
- .bds280Card-card.bds280Card---text-center {
3177
+ .bds2110Card-card.bds2110Card---text-center {
2971
3178
  text-align: center;
2972
3179
  }
2973
- .bds280Card-card.bds280Card---text-end {
3180
+ .bds2110Card-card.bds2110Card---text-end {
2974
3181
  text-align: end;
2975
3182
  }
2976
- .bds280Card-card.bds280Card---clickable:focus-visible {
2977
- outline: 2px solid var(--color_focus, currentcolor);
2978
- outline-offset: 2px;
3183
+ .bds2110Card-card.bds2110Card---clickable:focus-visible {
3184
+ outline: var(--bds-outline_default);
3185
+ outline-offset: var(--bds-outline_offset);
2979
3186
  }
2980
- .bds280Card-card.bds280Card---clickable:active {
3187
+ .bds2110Card-card.bds2110Card---clickable:active {
2981
3188
  transform: translateY(0);
2982
- box-shadow: var(--bds-shadow_s);
3189
+ box-shadow: var(--card_shadow--active, var(--bds-shadow_s));
2983
3190
  }
2984
3191
  @media (hover: hover) and (pointer: fine) {
2985
- .bds280Card-card.bds280Card---clickable:hover {
3192
+ .bds2110Card-card.bds2110Card---clickable:hover {
2986
3193
  transform: translateY(-2px);
2987
3194
  box-shadow: var(--card_shadow--clickable-hover, var(--bds-shadow_xl));
2988
3195
  }
2989
- .bds280Card-card.bds280Card---default:hover {
3196
+ .bds2110Card-card.bds2110Card---default:hover {
2990
3197
  box-shadow: var(--card_shadow--default-hover, var(--bds-shadow_m));
2991
3198
  }
2992
- .bds280Card-card.bds280Card---elevated:hover {
3199
+ .bds2110Card-card.bds2110Card---elevated:hover {
2993
3200
  box-shadow: var(--card_shadow--elevated-hover, var(--bds-shadow_2xl));
2994
3201
  }
2995
- .bds280Card-card.bds280Card---outlined:hover {
3202
+ .bds2110Card-card.bds2110Card---outlined:hover {
2996
3203
  box-shadow: var(--card_shadow--outlined-hover, var(--bds-shadow_s));
2997
3204
  }
2998
3205
  }
3206
+ @media (prefers-reduced-motion: reduce) {
3207
+ .bds2110Card-card {
3208
+ transition: none;
3209
+ }
3210
+ .bds2110Card-card.bds2110Card---clickable:hover,
3211
+ .bds2110Card-card.bds2110Card---clickable:active {
3212
+ transform: none;
3213
+ }
3214
+ }
2999
3215
  }
3000
3216
 
3001
3217
  /* src/components/layout/Grid/Grid.module.css */
3002
- @layer boostdev.bds280Grid-component {
3003
- .bds280Grid-grid {
3218
+ @layer boostdev.bds2110Grid-component {
3219
+ .bds2110Grid-grid {
3004
3220
  display: grid;
3005
3221
  gap: var(--grid_gap, var(--bds-grid_gap));
3006
3222
  }
3007
- .bds280Grid-grid.bds280Grid---main {
3223
+ .bds2110Grid-grid.bds2110Grid---main {
3008
3224
  grid-template-columns: var(--bds-grid_template-columns);
3009
3225
  }
3010
- .bds280Grid-grid.bds280Grid---page {
3226
+ .bds2110Grid-grid.bds2110Grid---page {
3011
3227
  grid-template-columns: 1fr;
3012
3228
  grid-column: 1 / -1;
3013
3229
  }
3014
- .bds280Grid-grid.bds280Grid---funnel {
3230
+ .bds2110Grid-grid.bds2110Grid---funnel {
3015
3231
  grid-template-columns: var(--bds-grid_template-columns);
3016
3232
  max-inline-size: var(--bds-container_max-width--narrow);
3017
3233
  margin-inline: auto;
3018
3234
  }
3019
- .bds280Grid-grid.bds280Grid---custom {
3235
+ .bds2110Grid-grid.bds2110Grid---custom {
3020
3236
  grid-template-columns: repeat(var(--grid_columns, 4), minmax(0, 1fr));
3021
3237
  }
3022
- .bds280Grid-grid.bds280Grid---centered {
3238
+ .bds2110Grid-grid.bds2110Grid---centered {
3023
3239
  margin-inline: auto;
3024
3240
  max-inline-size: var(--bds-container_max-width);
3025
3241
  padding-inline: var(--bds-container_spacing-inline);
3026
3242
  }
3027
- .bds280Grid-item {
3243
+ .bds2110Grid-item {
3028
3244
  min-inline-size: 0;
3029
3245
  }
3030
3246
  @supports (grid-template-rows: masonry) {
3031
- .bds280Grid-grid.bds280Grid---masonry {
3247
+ .bds2110Grid-grid.bds2110Grid---masonry {
3032
3248
  grid-template-rows: masonry;
3033
3249
  }
3034
3250
  }
3035
3251
  @supports (display: grid-lanes) {
3036
- .bds280Grid-grid.bds280Grid---masonry {
3252
+ .bds2110Grid-grid.bds2110Grid---masonry {
3037
3253
  display: grid-lanes;
3038
3254
  }
3039
3255
  }
3040
3256
  }
3041
3257
 
3042
3258
  /* src/components/layout/SectionHeader/SectionHeader.module.css */
3043
- @layer boostdev.bds280SectionHeader-component {
3044
- .bds280SectionHeader-sectionHeader {
3259
+ @layer boostdev.bds2110SectionHeader-component {
3260
+ .bds2110SectionHeader-sectionHeader {
3045
3261
  display: flex;
3046
3262
  flex-direction: column;
3047
- gap: var(--bds-space_m);
3263
+ gap: var(--sectionHeader_gap, var(--bds-space_m));
3048
3264
  grid-column: var(--bds-grid_span-100);
3049
3265
  }
3050
- .bds280SectionHeader-title {
3051
- color: var(--sectionHeader-title-color, var(--bds-color_on-bg));
3266
+ .bds2110SectionHeader-title {
3267
+ color: var(--sectionHeader_title-color, var(--sectionHeader-title-color, var(--bds-color_on-bg)));
3052
3268
  margin: 0;
3053
3269
  font-family: var(--bds-font_family--body);
3054
3270
  }
3055
- .bds280SectionHeader-subtitle {
3271
+ .bds2110SectionHeader-subtitle {
3056
3272
  color: var(--sectionHeader_subtitle-color, var(--bds-color_grey--strong));
3057
3273
  margin: 0;
3058
3274
  font-family: var(--bds-font_family--body);
3059
3275
  font-weight: var(--bds-font_weight--medium);
3060
3276
  }
3061
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---start {
3277
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---start {
3062
3278
  align-items: flex-start;
3063
3279
  text-align: start;
3064
3280
  }
3065
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---center {
3281
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---center {
3066
3282
  align-items: center;
3067
3283
  text-align: center;
3068
3284
  }
3069
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---end {
3285
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---end {
3070
3286
  align-items: flex-end;
3071
3287
  text-align: end;
3072
3288
  }
3073
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---medium .bds280SectionHeader-title {
3074
- font-size: var(--sectionHeader_title-size, var(--bds-font_size--display));
3075
- line-height: var(--sectionHeader_title-line-height, var(--bds-font_line-height--display));
3289
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---medium .bds2110SectionHeader-title {
3290
+ font-size: var(--sectionHeader_title-size, var(--bds-font_size--heading-1));
3291
+ line-height: var(--sectionHeader_title-line-height, var(--bds-font_line-height--heading));
3076
3292
  font-weight: var(--sectionHeader_title-weight, var(--bds-font_weight--bold));
3077
3293
  }
3078
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---medium .bds280SectionHeader-subtitle {
3294
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---medium .bds2110SectionHeader-subtitle {
3079
3295
  font-size: var(--sectionHeader_subtitle-size, var(--bds-font_size--heading-3));
3080
- line-height: 1.3;
3296
+ line-height: var(--sectionHeader_subtitle-line-height, 1.3);
3081
3297
  }
3082
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---xs .bds280SectionHeader-title {
3083
- font-size: var(--sectionHeader_title-size, 1.5em);
3298
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---xs .bds2110SectionHeader-title {
3299
+ font-size: var(--sectionHeader_title-size, var(--bds-font_size--heading-2));
3084
3300
  line-height: var(--sectionHeader_title-line-height, var(--bds-font_line-height--heading));
3085
3301
  font-weight: var(--sectionHeader_title-weight, var(--bds-font_weight--bold));
3086
3302
  }
3087
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---xs .bds280SectionHeader-subtitle {
3303
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---xs .bds2110SectionHeader-subtitle {
3088
3304
  font-size: var(--sectionHeader_subtitle-size, var(--bds-font_size--body));
3089
- line-height: 1.4;
3305
+ line-height: var(--sectionHeader_subtitle-line-height, 1.4);
3090
3306
  }
3091
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---small .bds280SectionHeader-title {
3307
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---small .bds2110SectionHeader-title {
3092
3308
  font-size: var(--sectionHeader_title-size, var(--bds-font_size--heading-1));
3093
3309
  line-height: var(--sectionHeader_title-line-height, var(--bds-font_line-height--heading));
3094
3310
  font-weight: var(--sectionHeader_title-weight, var(--bds-font_weight--bold));
3095
3311
  }
3096
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---small .bds280SectionHeader-subtitle {
3312
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---small .bds2110SectionHeader-subtitle {
3097
3313
  font-size: var(--sectionHeader_subtitle-size, var(--bds-font_size--body));
3098
- line-height: 1.4;
3314
+ line-height: var(--sectionHeader_subtitle-line-height, 1.4);
3099
3315
  }
3100
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---large .bds280SectionHeader-title {
3316
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---large .bds2110SectionHeader-title {
3101
3317
  font-size: var(--sectionHeader_title-size, var(--bds-font_size--display));
3102
3318
  line-height: var(--sectionHeader_title-line-height, var(--bds-font_line-height--display));
3103
3319
  font-weight: var(--sectionHeader_title-weight, var(--bds-font_weight--bold));
3104
3320
  letter-spacing: var(--bds-font_tracking--tight);
3105
3321
  }
3106
- .bds280SectionHeader-sectionHeader.bds280SectionHeader---large .bds280SectionHeader-subtitle {
3322
+ .bds2110SectionHeader-sectionHeader.bds2110SectionHeader---large .bds2110SectionHeader-subtitle {
3107
3323
  font-size: var(--sectionHeader_subtitle-size, var(--bds-font_size--heading-2));
3108
- line-height: 1.3;
3324
+ line-height: var(--sectionHeader_subtitle-line-height, 1.3);
3109
3325
  font-weight: var(--bds-font_weight--medium);
3110
3326
  }
3111
3327
  }
3112
3328
 
3113
3329
  /* src/components/layout/IconWrapper/IconWrapper.module.css */
3114
- @layer boostdev.bds280IconWrapper-component {
3115
- .bds280IconWrapper-wrapper {
3330
+ @layer boostdev.bds2110IconWrapper-component {
3331
+ .bds2110IconWrapper-wrapper {
3116
3332
  inline-size: 2em;
3117
3333
  block-size: 2em;
3118
- font-size: 3em;
3119
- border-radius: var(--icon-wrapper-radius, var(--bds-border_radius--circle));
3334
+ font-size: var(--icon-wrapper_size, 3em);
3335
+ border-radius: var(--icon-wrapper_radius, var(--icon-wrapper-radius, var(--bds-border_radius--circle)));
3120
3336
  display: flex;
3121
3337
  align-items: center;
3122
3338
  justify-content: center;
3123
- margin: var(--bds-space_l) auto var(--bds-space_m);
3124
- background: var(--icon-wrapper-color, var(--bds-color_bg));
3125
- color: var(--icon-wrapper_on-color, var(--bds-on-icon-wrapper-color, var(--bds-color_on-bg)));
3126
- fill: var(--icon-wrapper_on-color, var(--bds-on-icon-wrapper-color, var(--bds-color_on-bg)));
3339
+ margin-block: var(--icon-wrapper_margin-block-start, var(--bds-space_l)) var(--icon-wrapper_margin-block-end, var(--bds-space_m));
3340
+ margin-inline: auto;
3341
+ background: var(--icon-wrapper_color, var(--icon-wrapper-color, var(--bds-color_bg)));
3342
+ color: var(--icon-wrapper_on-color, var(--bds-color_on-bg));
3343
+ fill: var(--icon-wrapper_on-color, var(--bds-color_on-bg));
3127
3344
  position: relative;
3128
3345
  transition: var(--bds-animation_transition);
3129
3346
  }
3130
- .bds280IconWrapper-wrapper svg {
3347
+ .bds2110IconWrapper-wrapper svg {
3131
3348
  fill: currentcolor;
3132
3349
  }
3133
3350
  }