@fremtind/jokul 5.0.0-next.9 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (305) hide show
  1. package/build/build-stats.html +1 -1
  2. package/build/cjs/components/autosuggest/BaseAutosuggest.cjs +1 -1
  3. package/build/cjs/components/autosuggest/BaseAutosuggest.cjs.map +1 -1
  4. package/build/cjs/components/checkbox-panel/CheckboxPanel.cjs +1 -1
  5. package/build/cjs/components/checkbox-panel/CheckboxPanel.cjs.map +1 -1
  6. package/build/cjs/components/checkbox-panel/CheckboxPanel.d.cts +1 -1
  7. package/build/cjs/components/expander/Accordion.cjs +2 -0
  8. package/build/cjs/components/expander/Accordion.cjs.map +1 -0
  9. package/build/cjs/components/expander/Accordion.d.cts +2 -0
  10. package/build/cjs/components/expander/ExpandablePanel.cjs +1 -1
  11. package/build/cjs/components/expander/ExpandablePanel.cjs.map +1 -1
  12. package/build/cjs/components/expander/ExpandablePanelContent.cjs +1 -1
  13. package/build/cjs/components/expander/ExpandablePanelContent.cjs.map +1 -1
  14. package/build/cjs/components/expander/Expander.cjs +1 -1
  15. package/build/cjs/components/expander/Expander.cjs.map +1 -1
  16. package/build/cjs/components/expander/index.cjs +1 -1
  17. package/build/cjs/components/expander/index.d.cts +2 -1
  18. package/build/cjs/components/expander/types.d.cts +5 -2
  19. package/build/cjs/components/icon/Icon.cjs +1 -1
  20. package/build/cjs/components/icon/Icon.cjs.map +1 -1
  21. package/build/cjs/components/icon/Icon.d.cts +2 -2
  22. package/build/cjs/components/icon/icons/GreenCheckIcon.cjs +1 -1
  23. package/build/cjs/components/icon/icons/GreenCheckIcon.cjs.map +1 -1
  24. package/build/cjs/components/icon/icons/GreenCheckIcon.d.cts +2 -3
  25. package/build/cjs/components/icon/icons/RedCrossIcon.cjs +1 -1
  26. package/build/cjs/components/icon/icons/RedCrossIcon.cjs.map +1 -1
  27. package/build/cjs/components/icon/icons/RedCrossIcon.d.cts +2 -3
  28. package/build/cjs/components/input-panel/InputPanel.cjs +1 -1
  29. package/build/cjs/components/input-panel/InputPanel.cjs.map +1 -1
  30. package/build/cjs/components/input-panel/InputPanel.d.cts +1 -1
  31. package/build/cjs/components/input-panel/types.d.cts +2 -1
  32. package/build/cjs/components/link-list/LinkList.cjs +1 -1
  33. package/build/cjs/components/link-list/LinkList.cjs.map +1 -1
  34. package/build/cjs/components/link-list/LinkList.d.cts +1 -1
  35. package/build/cjs/components/link-list/types.d.cts +1 -0
  36. package/build/cjs/components/message/Message.cjs +1 -1
  37. package/build/cjs/components/message/Message.cjs.map +1 -1
  38. package/build/cjs/components/number-input/NumberInput.cjs +2 -0
  39. package/build/cjs/components/number-input/NumberInput.cjs.map +1 -0
  40. package/build/cjs/components/number-input/NumberInput.d.cts +7 -0
  41. package/build/cjs/components/number-input/index.cjs +2 -0
  42. package/build/cjs/components/number-input/index.cjs.map +1 -0
  43. package/build/cjs/components/number-input/index.d.cts +2 -0
  44. package/build/cjs/components/number-input/types.cjs +2 -0
  45. package/build/cjs/components/number-input/types.cjs.map +1 -0
  46. package/build/cjs/components/number-input/types.d.cts +20 -0
  47. package/build/cjs/components/popover/Popover.cjs +1 -1
  48. package/build/cjs/components/popover/Popover.cjs.map +1 -1
  49. package/build/cjs/components/popover/types.d.cts +8 -1
  50. package/build/cjs/components/radio-panel/RadioPanel.cjs +1 -1
  51. package/build/cjs/components/radio-panel/RadioPanel.cjs.map +1 -1
  52. package/build/cjs/components/select/Select.cjs +1 -1
  53. package/build/cjs/components/select/Select.cjs.map +1 -1
  54. package/build/cjs/components/system-message/types.d.cts +7 -2
  55. package/build/cjs/components/toast/Toast.cjs +1 -1
  56. package/build/cjs/components/toast/Toast.cjs.map +1 -1
  57. package/build/cjs/components/typography/Title.cjs +1 -1
  58. package/build/cjs/components/typography/Title.cjs.map +1 -1
  59. package/build/cjs/hooks/useListNavigation/useListNavigation.cjs +1 -1
  60. package/build/cjs/hooks/useListNavigation/useListNavigation.cjs.map +1 -1
  61. package/build/cjs/hooks/useListNavigation/useListNavigation.d.cts +11 -2
  62. package/build/cjs/tokens.cjs +1 -1
  63. package/build/cjs/tokens.cjs.map +1 -1
  64. package/build/cjs/utilities/index.cjs +1 -1
  65. package/build/cjs/utilities/types.cjs +1 -1
  66. package/build/cjs/utilities/types.cjs.map +1 -1
  67. package/build/cjs/utilities/types.d.cts +13 -1
  68. package/build/es/components/autosuggest/BaseAutosuggest.js +1 -1
  69. package/build/es/components/autosuggest/BaseAutosuggest.js.map +1 -1
  70. package/build/es/components/checkbox-panel/CheckboxPanel.d.ts +1 -1
  71. package/build/es/components/checkbox-panel/CheckboxPanel.js +1 -1
  72. package/build/es/components/checkbox-panel/CheckboxPanel.js.map +1 -1
  73. package/build/es/components/datepicker/DatePicker.js +1 -1
  74. package/build/es/components/datepicker/internal/Calendar.js +1 -1
  75. package/build/es/components/datepicker/internal/useCalendar.js +1 -1
  76. package/build/es/components/datepicker/internal/utils.js +1 -1
  77. package/build/es/components/expander/Accordion.d.ts +2 -0
  78. package/build/es/components/expander/Accordion.js +2 -0
  79. package/build/es/components/expander/Accordion.js.map +1 -0
  80. package/build/es/components/expander/ExpandablePanel.js +1 -1
  81. package/build/es/components/expander/ExpandablePanel.js.map +1 -1
  82. package/build/es/components/expander/ExpandablePanelContent.js +1 -1
  83. package/build/es/components/expander/ExpandablePanelContent.js.map +1 -1
  84. package/build/es/components/expander/Expander.js +1 -1
  85. package/build/es/components/expander/Expander.js.map +1 -1
  86. package/build/es/components/expander/index.d.ts +2 -1
  87. package/build/es/components/expander/index.js +1 -1
  88. package/build/es/components/expander/types.d.ts +5 -2
  89. package/build/es/components/icon/Icon.d.ts +2 -2
  90. package/build/es/components/icon/Icon.js +1 -1
  91. package/build/es/components/icon/Icon.js.map +1 -1
  92. package/build/es/components/icon/icons/GreenCheckIcon.d.ts +2 -3
  93. package/build/es/components/icon/icons/GreenCheckIcon.js +1 -1
  94. package/build/es/components/icon/icons/GreenCheckIcon.js.map +1 -1
  95. package/build/es/components/icon/icons/RedCrossIcon.d.ts +2 -3
  96. package/build/es/components/icon/icons/RedCrossIcon.js +1 -1
  97. package/build/es/components/icon/icons/RedCrossIcon.js.map +1 -1
  98. package/build/es/components/input-panel/InputPanel.d.ts +1 -1
  99. package/build/es/components/input-panel/InputPanel.js +1 -1
  100. package/build/es/components/input-panel/InputPanel.js.map +1 -1
  101. package/build/es/components/input-panel/types.d.ts +2 -1
  102. package/build/es/components/link-list/LinkList.d.ts +1 -1
  103. package/build/es/components/link-list/LinkList.js +1 -1
  104. package/build/es/components/link-list/LinkList.js.map +1 -1
  105. package/build/es/components/link-list/types.d.ts +1 -0
  106. package/build/es/components/menu/Menu.js +1 -1
  107. package/build/es/components/message/Message.js +1 -1
  108. package/build/es/components/message/Message.js.map +1 -1
  109. package/build/es/components/number-input/NumberInput.d.ts +7 -0
  110. package/build/es/components/number-input/NumberInput.js +2 -0
  111. package/build/es/components/number-input/NumberInput.js.map +1 -0
  112. package/build/es/components/number-input/index.d.ts +2 -0
  113. package/build/es/components/number-input/index.js +2 -0
  114. package/build/es/components/number-input/index.js.map +1 -0
  115. package/build/es/components/number-input/types.d.ts +20 -0
  116. package/build/es/components/number-input/types.js +2 -0
  117. package/build/es/components/number-input/types.js.map +1 -0
  118. package/build/es/components/popover/Popover.js +1 -1
  119. package/build/es/components/popover/Popover.js.map +1 -1
  120. package/build/es/components/popover/types.d.ts +8 -1
  121. package/build/es/components/radio-panel/RadioPanel.js +1 -1
  122. package/build/es/components/radio-panel/RadioPanel.js.map +1 -1
  123. package/build/es/components/select/Select.js +1 -1
  124. package/build/es/components/select/Select.js.map +1 -1
  125. package/build/es/components/system-message/types.d.ts +7 -2
  126. package/build/es/components/toast/Toast.js +1 -1
  127. package/build/es/components/toast/Toast.js.map +1 -1
  128. package/build/es/components/toast/toastContext.js +1 -1
  129. package/build/es/components/tooltip/Tooltip.js +1 -1
  130. package/build/es/components/typography/Title.js +1 -1
  131. package/build/es/components/typography/Title.js.map +1 -1
  132. package/build/es/hooks/stories/content.js +1 -1
  133. package/build/es/hooks/useListNavigation/useListNavigation.d.ts +11 -2
  134. package/build/es/hooks/useListNavigation/useListNavigation.js +1 -1
  135. package/build/es/hooks/useListNavigation/useListNavigation.js.map +1 -1
  136. package/build/es/tokens.js +1 -1
  137. package/build/es/tokens.js.map +1 -1
  138. package/build/es/utilities/constants/index.js +1 -1
  139. package/build/es/utilities/constants/unicode.js +1 -1
  140. package/build/es/utilities/formatters/bytes/formatBytes.js +1 -1
  141. package/build/es/utilities/formatters/fodselsnummer/formatFodselsnummer.js +1 -1
  142. package/build/es/utilities/formatters/kontonummer/formatKontonummer.js +1 -1
  143. package/build/es/utilities/formatters/kortnummer/formatKortnummer.js +1 -1
  144. package/build/es/utilities/formatters/organisasjonsnummer/formatOrganisasjonsnummer.js +1 -1
  145. package/build/es/utilities/formatters/telefonnummer/formatTelefonnummer.js +1 -1
  146. package/build/es/utilities/formatters/valuta/formatValuta.js +1 -1
  147. package/build/es/utilities/index.js +1 -1
  148. package/build/es/utilities/types.d.ts +13 -1
  149. package/build/es/utilities/types.js +1 -1
  150. package/build/es/utilities/types.js.map +1 -1
  151. package/build/{index-CWRMnfcx.js → index-C1iqmqvT.js} +2 -2
  152. package/build/{index-CWRMnfcx.js.map → index-C1iqmqvT.js.map} +1 -1
  153. package/build/{utils-CcE6HjQp.js → utils-CtwpNW4I.js} +2 -2
  154. package/build/{utils-CcE6HjQp.js.map → utils-CtwpNW4I.js.map} +1 -1
  155. package/codemods/CODEMODS.md +133 -0
  156. package/codemods/__tests__/import-paths.test.mjs +568 -94
  157. package/codemods/import-paths.mjs +34 -339
  158. package/codemods/transforms/color-tokens.mjs +102 -0
  159. package/codemods/transforms/expandable-panel.mjs +41 -0
  160. package/codemods/transforms/font-family.mjs +23 -0
  161. package/codemods/transforms/import-specifiers.mjs +226 -0
  162. package/codemods/transforms/warnings.mjs +41 -0
  163. package/codemods/utils.mjs +35 -0
  164. package/package.json +8 -4
  165. package/styles/base.css +183 -805
  166. package/styles/base.min.css +1 -1
  167. package/styles/components/autosuggest/autosuggest.css +4 -3
  168. package/styles/components/autosuggest/autosuggest.min.css +1 -1
  169. package/styles/components/autosuggest/autosuggest.scss +4 -3
  170. package/styles/components/breadcrumb/breadcrumb.css +0 -1
  171. package/styles/components/breadcrumb/breadcrumb.min.css +1 -1
  172. package/styles/components/breadcrumb/breadcrumb.scss +0 -1
  173. package/styles/components/button/button.css +9 -4
  174. package/styles/components/button/button.min.css +1 -1
  175. package/styles/components/button/button.scss +11 -5
  176. package/styles/components/checkbox/checkbox.css +1 -1
  177. package/styles/components/checkbox/checkbox.min.css +1 -1
  178. package/styles/components/checkbox/checkbox.scss +1 -1
  179. package/styles/components/checkbox-panel/checkbox-panel.css +1 -1
  180. package/styles/components/checkbox-panel/checkbox-panel.min.css +1 -1
  181. package/styles/components/chip/chip.css +0 -1
  182. package/styles/components/chip/chip.min.css +1 -1
  183. package/styles/components/chip/chip.scss +0 -1
  184. package/styles/components/combobox/combobox.css +4 -5
  185. package/styles/components/combobox/combobox.min.css +1 -1
  186. package/styles/components/combobox/combobox.scss +4 -5
  187. package/styles/components/countdown/countdown.css +2 -2
  188. package/styles/components/countdown/countdown.min.css +1 -1
  189. package/styles/components/datepicker/_calendar-date-button.scss +0 -2
  190. package/styles/components/datepicker/datepicker.css +0 -2
  191. package/styles/components/datepicker/datepicker.min.css +1 -1
  192. package/styles/components/expander/_index.scss +1 -0
  193. package/styles/components/expander/accordion.css +21 -0
  194. package/styles/components/expander/accordion.min.css +1 -0
  195. package/styles/components/expander/accordion.scss +24 -0
  196. package/styles/components/expander/expandable.css +32 -37
  197. package/styles/components/expander/expandable.min.css +1 -1
  198. package/styles/components/expander/expandable.scss +27 -36
  199. package/styles/components/feedback/feedback.css +2 -2
  200. package/styles/components/feedback/feedback.min.css +1 -1
  201. package/styles/components/feedback/feedback.scss +0 -1
  202. package/styles/components/file/file.css +4 -1
  203. package/styles/components/file/file.min.css +1 -1
  204. package/styles/components/file/file.scss +5 -1
  205. package/styles/components/file-input/file-input.css +36 -21
  206. package/styles/components/file-input/file-input.min.css +1 -1
  207. package/styles/components/icon/icon.scss +1 -1
  208. package/styles/components/icon-button/icon-button.css +0 -1
  209. package/styles/components/icon-button/icon-button.min.css +1 -1
  210. package/styles/components/icon-button/icon-button.scss +0 -1
  211. package/styles/components/input-group/input-group.css +2 -2
  212. package/styles/components/input-group/input-group.min.css +1 -1
  213. package/styles/components/link/link.css +14 -7
  214. package/styles/components/link/link.min.css +1 -1
  215. package/styles/components/link/link.scss +18 -10
  216. package/styles/components/link-list/link-list.css +7 -2
  217. package/styles/components/link-list/link-list.min.css +1 -1
  218. package/styles/components/link-list/link-list.scss +10 -3
  219. package/styles/components/list/list.css +33 -21
  220. package/styles/components/list/list.min.css +1 -1
  221. package/styles/components/list/list.scss +24 -24
  222. package/styles/components/loader/loader.css +6 -6
  223. package/styles/components/loader/loader.min.css +1 -1
  224. package/styles/components/loader/skeleton-loader.css +3 -3
  225. package/styles/components/loader/skeleton-loader.min.css +1 -1
  226. package/styles/components/menu/_menu-item.scss +1 -2
  227. package/styles/components/menu/menu.css +1 -2
  228. package/styles/components/menu/menu.min.css +1 -1
  229. package/styles/components/message/message.css +9 -10
  230. package/styles/components/message/message.min.css +1 -1
  231. package/styles/components/message/message.scss +7 -8
  232. package/styles/components/modal/_index.scss +7 -0
  233. package/styles/components/modal/_overlay.scss +4 -0
  234. package/styles/components/modal/modal.css +32 -116
  235. package/styles/components/modal/modal.min.css +1 -1
  236. package/styles/components/modal/modal.scss +96 -6
  237. package/styles/components/number-input/_index.scss +2 -0
  238. package/styles/components/number-input/number-input.css +214 -0
  239. package/styles/components/number-input/number-input.min.css +1 -0
  240. package/styles/components/number-input/number-input.scss +115 -0
  241. package/styles/components/pagination/pagination.css +1 -1
  242. package/styles/components/pagination/pagination.scss +1 -1
  243. package/styles/components/progress-bar/progress-bar.css +1 -1
  244. package/styles/components/progress-bar/progress-bar.min.css +1 -1
  245. package/styles/components/radio-button/radio-button.css +1 -5
  246. package/styles/components/radio-button/radio-button.min.css +1 -1
  247. package/styles/components/radio-button/radio-button.scss +2 -7
  248. package/styles/components/search/search.css +0 -1
  249. package/styles/components/search/search.min.css +1 -1
  250. package/styles/components/search/search.scss +0 -1
  251. package/styles/components/segmented-control/segmented-control.css +3 -7
  252. package/styles/components/segmented-control/segmented-control.min.css +1 -1
  253. package/styles/components/select/select.css +65 -7
  254. package/styles/components/select/select.min.css +1 -1
  255. package/styles/components/select/select.scss +129 -18
  256. package/styles/components/system-message/system-message.css +9 -14
  257. package/styles/components/system-message/system-message.min.css +1 -1
  258. package/styles/components/system-message/system-message.scss +113 -121
  259. package/styles/components/table/_table-pagination.scss +0 -1
  260. package/styles/components/table/table.css +0 -1
  261. package/styles/components/table/table.min.css +1 -1
  262. package/styles/components/tabs/tabs.css +0 -1
  263. package/styles/components/tabs/tabs.min.css +1 -1
  264. package/styles/components/tabs/tabs.scss +0 -1
  265. package/styles/components/tag/tag.css +4 -4
  266. package/styles/components/tag/tag.min.css +1 -1
  267. package/styles/components/tag/tag.scss +4 -4
  268. package/styles/components/toast/toast.css +34 -9
  269. package/styles/components/toast/toast.min.css +1 -1
  270. package/styles/components/toast/toast.scss +44 -9
  271. package/styles/components/toggle-switch/toggle-switch.css +0 -1
  272. package/styles/components/toggle-switch/toggle-switch.min.css +1 -1
  273. package/styles/components/toggle-switch/toggle-switch.scss +0 -1
  274. package/styles/components/typography/text.css +2 -2
  275. package/styles/components/typography/text.min.css +1 -1
  276. package/styles/components/typography/text.scss +4 -4
  277. package/styles/components/typography/title.css +8 -30
  278. package/styles/components/typography/title.min.css +1 -1
  279. package/styles/components/typography/title.scss +8 -31
  280. package/styles/components.css +582 -189
  281. package/styles/components.min.css +1 -1
  282. package/styles/components.scss +2 -1
  283. package/styles/global/_base-class.scss +4 -0
  284. package/styles/jkl/_convert.scss +15 -6
  285. package/styles/jkl/_tokens.scss +4 -4
  286. package/styles/tailwind.css +97 -97
  287. package/styles/theme/_color-scheme.scss +95 -95
  288. package/styles/theme/_dynamic-spacing.scss +21 -15
  289. package/styles/theme/_fonts.scss +3 -12
  290. package/styles/theme/_index.scss +0 -4
  291. package/styles/theme/_size.scss +20 -20
  292. package/styles/theme/_tokens.scss +11 -11
  293. package/styles/core/utility/_paragraphs.scss +0 -39
  294. package/styles/theme/brands/dnb/_color-scheme.scss +0 -121
  295. package/styles/theme/brands/dnb/_fonts.scss +0 -46
  296. package/styles/theme/brands/dnb/_index.scss +0 -2
  297. package/styles/theme/brands/eika/_color-scheme.scss +0 -121
  298. package/styles/theme/brands/eika/_fonts.scss +0 -46
  299. package/styles/theme/brands/eika/_index.scss +0 -2
  300. package/styles/theme/brands/fremtind/_color-scheme.scss +0 -121
  301. package/styles/theme/brands/fremtind/_fonts.scss +0 -30
  302. package/styles/theme/brands/fremtind/_index.scss +0 -2
  303. package/styles/theme/brands/sparebank1/_color-scheme.scss +0 -121
  304. package/styles/theme/brands/sparebank1/_fonts.scss +0 -38
  305. package/styles/theme/brands/sparebank1/_index.scss +0 -2
@@ -1,19 +1,9 @@
1
1
  @charset "UTF-8";
2
2
  @use "../../jkl";
3
-
4
- $_cross-light: url("data:image/svg+xml,%3Csvg width='19' height='19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='9.5' cy='9.5' r='8.75' fill='%23F6B3B3'/%3E%3Cpath fill='%231B1917' d='M5.54 12.68l7.14-7.1.84.85-7.13 7.09z'/%3E%3Cpath fill='%231B1917' d='M12.67 13.47l-7.13-7.1.85-.83 7.13 7.1z'/%3E%3C/svg%3E%0A");
5
- $_cross-dark: url("data:image/svg+xml,%3Csvg width='19' height='19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='9.5' cy='9.5' r='8.75' fill='%23DE9E9E'/%3E%3Cpath fill='%231B1917' d='M5.54 12.68l7.14-7.1.84.85-7.13 7.09z'/%3E%3Cpath fill='%231B1917' d='M12.67 13.47l-7.13-7.1.85-.83 7.13 7.1z'/%3E%3C/svg%3E%0A");
6
- $_check-light: url("data:image/svg+xml,%3Csvg width='19' height='19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='9.5' cy='9.5' r='9.5' fill='%23ACD3B5'/%3E%3Cpath d='M4.75 11l2.35 2.36 7.84-7.84' stroke='%231B1917' stroke-width='1.5'/%3E%3C/svg%3E%0A");
7
- $_check-dark: url("data:image/svg+xml,%3Csvg width='19' height='19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='9.5' cy='9.5' r='9.5' fill='%2394B79B'/%3E%3Cpath d='M4.75 11l2.35 2.36 7.84-7.84' stroke='%231B1917' stroke-width='1.5'/%3E%3C/svg%3E%0A");
3
+ @use "../icon/base-styles" as icon;
8
4
 
9
5
  @layer jokul.components {
10
6
  .jkl-list {
11
- /* stylelint-disable declaration-block-no-duplicate-custom-properties -- fallback for browsers without light-dark() support */
12
- --jkl-list-marker-cross: #{$_cross-light};
13
- --jkl-list-marker-cross: light-dark(#{$_cross-light}, #{$_cross-dark});
14
- --jkl-list-marker-check: #{$_check-light};
15
- --jkl-list-marker-check: light-dark(#{$_check-light}, #{$_check-dark});
16
- /* stylelint-enable declaration-block-no-duplicate-custom-properties */
17
7
  --list-text-color: var(--jkl-color-text-default);
18
8
 
19
9
  list-style-type: "\2022";
@@ -58,37 +48,47 @@ $_check-dark: url("data:image/svg+xml,%3Csvg width='19' height='19' fill='none'
58
48
  padding-left: 0;
59
49
 
60
50
  &::before {
61
- text-indent: -9999px;
62
- background-size: contain;
63
- width: 1em;
64
- height: 1em;
51
+ @include icon.base-styles;
52
+
53
+ display: inline-grid;
54
+ place-items: center;
55
+ width: 1.1875em;
56
+ height: 1.1875em;
57
+ box-sizing: border-box;
65
58
  flex-shrink: 0;
66
59
  margin-right: 0.5em;
67
60
  margin-top: 0.2em; // Vertical offset (using em for font-size scaling) to align icon properly with the first line.
61
+ font-size: 1em;
62
+ line-height: 1;
63
+ border-radius: 999px;
64
+
65
+ --jkl-icon-weight: var(--jkl-icon-weight-bold);
68
66
  }
69
67
  }
70
68
 
71
69
  &--check::before {
72
- @include jkl.decorative($content: "\2713");
73
- background-image: var(--jkl-list-marker-check);
70
+ @include jkl.decorative($content: "\e5ca");
71
+ color: var(--jkl-color-success-text-on-contrast);
72
+ background-color: var(--jkl-color-success-background-contrast);
74
73
  }
75
74
 
76
75
  &--cross::before {
77
- @include jkl.decorative($content: "\274C");
78
- background-image: var(--jkl-list-marker-cross);
76
+ @include jkl.decorative($content: "\e5cd");
77
+ color: var(--jkl-color-error-text-on-contrast);
78
+ background-color: var(--jkl-color-error-background-contrast);
79
79
  }
80
80
  }
81
81
 
82
82
  @include jkl.forced-colors-mode {
83
83
  & .jkl-list__item {
84
- &--check::before {
85
- background-image: _check(CanvasText, Canvas);
86
- }
87
84
 
85
+ &--check::before,
88
86
  &--cross::before {
89
- background-image: _cross(CanvasText, Canvas);
87
+ background-color: Canvas;
88
+ color: CanvasText;
89
+ border: 1px solid CanvasText;
90
90
  }
91
91
  }
92
92
  }
93
93
  }
94
- }
94
+ }
@@ -19,22 +19,22 @@
19
19
  animation: 2500ms linear infinite;
20
20
  }
21
21
  .jkl-loader__dot--left {
22
- animation-name: jkl-loader-left-spin-ub6xulo;
22
+ animation-name: jkl-loader-left-spin-utgk1w2;
23
23
  margin-right: calc(var(--jkl-loader-spacing) * 0.9);
24
24
  }
25
25
  .jkl-loader__dot--middle {
26
- animation-name: jkl-loader-middle-spin-ub6xumb;
26
+ animation-name: jkl-loader-middle-spin-utgk1wq;
27
27
  margin-right: var(--jkl-loader-spacing);
28
28
  }
29
29
  .jkl-loader__dot--right {
30
- animation-name: jkl-loader-right-spin-ub6xun8;
30
+ animation-name: jkl-loader-right-spin-utgk1xe;
31
31
  }
32
32
  @media screen and (forced-colors: active) {
33
33
  .jkl-loader__dot {
34
34
  background-color: CanvasText;
35
35
  }
36
36
  }
37
- @keyframes jkl-loader-left-spin-ub6xulo {
37
+ @keyframes jkl-loader-left-spin-utgk1w2 {
38
38
  0% {
39
39
  transform: rotate(0) scale(0);
40
40
  }
@@ -48,7 +48,7 @@
48
48
  transform: rotate(180deg) scale(0);
49
49
  }
50
50
  }
51
- @keyframes jkl-loader-middle-spin-ub6xumb {
51
+ @keyframes jkl-loader-middle-spin-utgk1wq {
52
52
  0% {
53
53
  transform: rotate(20deg) scale(0);
54
54
  }
@@ -65,7 +65,7 @@
65
65
  transform: rotate(200deg) scale(0);
66
66
  }
67
67
  }
68
- @keyframes jkl-loader-right-spin-ub6xun8 {
68
+ @keyframes jkl-loader-right-spin-utgk1xe {
69
69
  0% {
70
70
  transform: rotate(40deg) scale(0);
71
71
  }
@@ -1 +1 @@
1
- @layer jokul.components{.jkl-loader{--jkl-loader-dot-size:var(--jkl-unit-10);--jkl-loader-spacing:var(--jkl-unit-20);display:flex}.jkl-loader--inline{display:inline-flex}.jkl-loader__dot{animation:2.5s linear infinite;background-color:currentColor;display:block;height:var(--jkl-loader-dot-size);transform-origin:center;width:var(--jkl-loader-dot-size)}.jkl-loader__dot--left{animation-name:jkl-loader-left-spin-ub6xulo;margin-right:calc(var(--jkl-loader-spacing)*.9)}.jkl-loader__dot--middle{animation-name:jkl-loader-middle-spin-ub6xumb;margin-right:var(--jkl-loader-spacing)}.jkl-loader__dot--right{animation-name:jkl-loader-right-spin-ub6xun8}@media screen and (forced-colors:active){.jkl-loader__dot{background-color:CanvasText}}@keyframes jkl-loader-left-spin-ub6xulo{0%{transform:rotate(0) scale(0)}30%{transform:rotate(90deg) scale(1)}70%{transform:rotate(180deg) scale(0)}to{transform:rotate(180deg) scale(0)}}@keyframes jkl-loader-middle-spin-ub6xumb{0%{transform:rotate(20deg) scale(0)}10%{transform:rotate(20deg) scale(0)}40%{transform:rotate(110deg) scale(1.4)}85%{transform:rotate(200deg) scale(0)}to{transform:rotate(200deg) scale(0)}}@keyframes jkl-loader-right-spin-ub6xun8{0%{transform:rotate(40deg) scale(0)}20%{transform:rotate(40deg) scale(0)}50%{transform:rotate(130deg) scale(1)}to{transform:rotate(220deg) scale(0)}}}
1
+ @layer jokul.components{.jkl-loader{--jkl-loader-dot-size:var(--jkl-unit-10);--jkl-loader-spacing:var(--jkl-unit-20);display:flex}.jkl-loader--inline{display:inline-flex}.jkl-loader__dot{animation:2.5s linear infinite;background-color:currentColor;display:block;height:var(--jkl-loader-dot-size);transform-origin:center;width:var(--jkl-loader-dot-size)}.jkl-loader__dot--left{animation-name:jkl-loader-left-spin-utgk1w2;margin-right:calc(var(--jkl-loader-spacing)*.9)}.jkl-loader__dot--middle{animation-name:jkl-loader-middle-spin-utgk1wq;margin-right:var(--jkl-loader-spacing)}.jkl-loader__dot--right{animation-name:jkl-loader-right-spin-utgk1xe}@media screen and (forced-colors:active){.jkl-loader__dot{background-color:CanvasText}}@keyframes jkl-loader-left-spin-utgk1w2{0%{transform:rotate(0) scale(0)}30%{transform:rotate(90deg) scale(1)}70%{transform:rotate(180deg) scale(0)}to{transform:rotate(180deg) scale(0)}}@keyframes jkl-loader-middle-spin-utgk1wq{0%{transform:rotate(20deg) scale(0)}10%{transform:rotate(20deg) scale(0)}40%{transform:rotate(110deg) scale(1.4)}85%{transform:rotate(200deg) scale(0)}to{transform:rotate(200deg) scale(0)}}@keyframes jkl-loader-right-spin-utgk1xe{0%{transform:rotate(40deg) scale(0)}20%{transform:rotate(40deg) scale(0)}50%{transform:rotate(130deg) scale(1)}to{transform:rotate(220deg) scale(0)}}}
@@ -26,7 +26,7 @@
26
26
  @media screen and (forced-colors: active) {
27
27
  .jkl-skeleton-element {
28
28
  border: 1px solid CanvasText;
29
- animation: 2s ease infinite jkl-blink-u24p1f0;
29
+ animation: 2s ease infinite jkl-blink-u13qua9;
30
30
  }
31
31
  }
32
32
  .jkl-skeleton-input {
@@ -74,10 +74,10 @@
74
74
  }
75
75
  @media screen and (forced-colors: active) {
76
76
  .jkl-skeleton-table {
77
- animation: 2s ease-in-out infinite jkl-blink-u24p1f0;
77
+ animation: 2s ease-in-out infinite jkl-blink-u13qua9;
78
78
  }
79
79
  }
80
- @keyframes jkl-blink-u24p1f0 {
80
+ @keyframes jkl-blink-u13qua9 {
81
81
  0% {
82
82
  opacity: 1;
83
83
  }
@@ -1 +1 @@
1
- @layer jokul.components{@property --jkl-skeleton-sweeper-position{syntax:"<percentage>";initial-value:0%;inherits:true}.jkl-skeleton-animation{--jkl-skeleton-element-color:var(--jkl-color-background-page);--jkl-skeleton-sweep-duration:4500ms;--jkl-skeleton-sweeper-width:40%;animation:var(--jkl-skeleton-sweep-duration) ease-in-out infinite --jkl-skeleton-sweep;-webkit-mask-image:linear-gradient(to right,#000 calc(var(--jkl-skeleton-sweeper-position) - var(--jkl-skeleton-sweeper-width)),transparent calc(var(--jkl-skeleton-sweeper-position) - var(--jkl-skeleton-sweeper-width)/2),#000 var(--jkl-skeleton-sweeper-position));mask-image:linear-gradient(to right,#000 calc(var(--jkl-skeleton-sweeper-position) - var(--jkl-skeleton-sweeper-width)),transparent calc(var(--jkl-skeleton-sweeper-position) - var(--jkl-skeleton-sweeper-width)/2),#000 var(--jkl-skeleton-sweeper-position));-webkit-mask-position:center;mask-position:center;-webkit-mask-size:100dvi 100dvb;mask-size:100dvi 100dvb}.jkl-skeleton-element{background-color:var(--jkl-skeleton-element-color);border-radius:.125rem}.jkl-skeleton-element--circle{border-radius:50%}@media screen and (forced-colors:active){.jkl-skeleton-element{animation:jkl-blink-u24p1f0 2s ease infinite;border:1px solid CanvasText}}.jkl-skeleton-input{display:flex;flex-direction:column;gap:var(--jkl-spacing-12)}.jkl-skeleton-input__checkbox{display:flex;flex-direction:row;flex-wrap:nowrap;gap:var(--jkl-spacing-8)}@media (width >= 0) and (max-width:679px){.jkl-skeleton-input{gap:var(--jkl-spacing-8)}}.jkl-skeleton-input--compact:after{gap:var(--jkl-spacing-8)}.jkl-skeleton-table{display:flex;flex-direction:column}.jkl-skeleton-table__header,.jkl-skeleton-table__row{border-bottom:1px solid var(--jkl-skeleton-element-color);display:flex;flex-direction:row;justify-content:space-between}.jkl-skeleton-table__header,.jkl-skeleton-table__row{padding:var(--jkl-unit-20) var(--jkl-unit-10)}@media (width >= 0) and (max-width:679px){.jkl-skeleton-table__header{padding:var(--jkl-unit-10) var(--jkl-unit-05)}.jkl-skeleton-table__row{padding:var(--jkl-unit-20) var(--jkl-unit-05)}}@media screen and (forced-colors:active){.jkl-skeleton-table{animation:jkl-blink-u24p1f0 2s ease-in-out infinite}}@keyframes jkl-blink-u24p1f0{0%{opacity:1}40%,50%{opacity:.3}70%,to{opacity:1}}@keyframes --jkl-skeleton-sweep{0%,67%{--jkl-skeleton-sweeper-position:0%}to{--jkl-skeleton-sweeper-position:calc(100% + var(--jkl-skeleton-sweeper-width))}}}
1
+ @layer jokul.components{@property --jkl-skeleton-sweeper-position{syntax:"<percentage>";initial-value:0%;inherits:true}.jkl-skeleton-animation{--jkl-skeleton-element-color:var(--jkl-color-background-page);--jkl-skeleton-sweep-duration:4500ms;--jkl-skeleton-sweeper-width:40%;animation:var(--jkl-skeleton-sweep-duration) ease-in-out infinite --jkl-skeleton-sweep;-webkit-mask-image:linear-gradient(to right,#000 calc(var(--jkl-skeleton-sweeper-position) - var(--jkl-skeleton-sweeper-width)),transparent calc(var(--jkl-skeleton-sweeper-position) - var(--jkl-skeleton-sweeper-width)/2),#000 var(--jkl-skeleton-sweeper-position));mask-image:linear-gradient(to right,#000 calc(var(--jkl-skeleton-sweeper-position) - var(--jkl-skeleton-sweeper-width)),transparent calc(var(--jkl-skeleton-sweeper-position) - var(--jkl-skeleton-sweeper-width)/2),#000 var(--jkl-skeleton-sweeper-position));-webkit-mask-position:center;mask-position:center;-webkit-mask-size:100dvi 100dvb;mask-size:100dvi 100dvb}.jkl-skeleton-element{background-color:var(--jkl-skeleton-element-color);border-radius:.125rem}.jkl-skeleton-element--circle{border-radius:50%}@media screen and (forced-colors:active){.jkl-skeleton-element{animation:jkl-blink-u13qua9 2s ease infinite;border:1px solid CanvasText}}.jkl-skeleton-input{display:flex;flex-direction:column;gap:var(--jkl-spacing-12)}.jkl-skeleton-input__checkbox{display:flex;flex-direction:row;flex-wrap:nowrap;gap:var(--jkl-spacing-8)}@media (width >= 0) and (max-width:679px){.jkl-skeleton-input{gap:var(--jkl-spacing-8)}}.jkl-skeleton-input--compact:after{gap:var(--jkl-spacing-8)}.jkl-skeleton-table{display:flex;flex-direction:column}.jkl-skeleton-table__header,.jkl-skeleton-table__row{border-bottom:1px solid var(--jkl-skeleton-element-color);display:flex;flex-direction:row;justify-content:space-between}.jkl-skeleton-table__header,.jkl-skeleton-table__row{padding:var(--jkl-unit-20) var(--jkl-unit-10)}@media (width >= 0) and (max-width:679px){.jkl-skeleton-table__header{padding:var(--jkl-unit-10) var(--jkl-unit-05)}.jkl-skeleton-table__row{padding:var(--jkl-unit-20) var(--jkl-unit-05)}}@media screen and (forced-colors:active){.jkl-skeleton-table{animation:jkl-blink-u13qua9 2s ease-in-out infinite}}@keyframes jkl-blink-u13qua9{0%{opacity:1}40%,50%{opacity:.3}70%,to{opacity:1}}@keyframes --jkl-skeleton-sweep{0%,67%{--jkl-skeleton-sweeper-position:0%}to{--jkl-skeleton-sweeper-position:calc(100% + var(--jkl-skeleton-sweeper-width))}}}
@@ -9,7 +9,6 @@
9
9
  background-color: var(--background-color);
10
10
  color: var(--jkl-color-text-default);
11
11
  text-decoration: none;
12
- cursor: pointer;
13
12
 
14
13
  box-sizing: border-box;
15
14
  user-select: none;
@@ -53,7 +52,7 @@
53
52
 
54
53
  &:hover,
55
54
  &:focus-visible {
56
- --background-color: color-mix(in srgb, currentColor 18%, transparent);
55
+ --background-color: var(--jkl-color-background-container-accent);
57
56
  }
58
57
  }
59
58
  }
@@ -9,7 +9,6 @@
9
9
  background-color: var(--background-color);
10
10
  color: var(--jkl-color-text-default);
11
11
  text-decoration: none;
12
- cursor: pointer;
13
12
  box-sizing: border-box;
14
13
  user-select: none;
15
14
  font: var(--jkl-text-style-text-medium);
@@ -64,7 +63,7 @@
64
63
  flex-shrink: 0;
65
64
  }
66
65
  .jkl-menu-item:hover, .jkl-menu-item:focus-visible {
67
- --background-color: color-mix(in srgb, currentColor 18%, transparent);
66
+ --background-color: var(--jkl-color-background-container-accent);
68
67
  }
69
68
  }
70
69
  @layer jokul.components {
@@ -1 +1 @@
1
- @layer jokul.components{.jkl-menu-item{--jkl-menu-item-height:var(--jkl-unit-60);--jkl-menu-item-padding:var(--jkl-unit-15) var(--jkl-unit-30);--background-color:transparent;align-items:center;background-color:var(--background-color);border-style:none;box-sizing:border-box;color:var(--jkl-color-text-default);cursor:pointer;display:flex;font:var(--jkl-text-style-text-medium);gap:var(--jkl-unit-10);height:var(--jkl-menu-item-height);outline:0;outline-style:none;padding:var(--jkl-menu-item-padding);text-decoration:none;-webkit-user-select:none;user-select:none;width:100%}.jkl-menu-item:active,.jkl-menu-item:focus,.jkl-menu-item:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-menu-item{border-style:revert;outline:revert;outline-style:revert}.jkl-menu-item:active,.jkl-menu-item:focus,.jkl-menu-item:hover{outline:revert;outline-style:revert}}.jkl-menu-item__content{display:flex;flex-grow:1;flex-shrink:1;gap:var(--jkl-unit-05);justify-content:flex-start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jkl-menu-item__icon{flex-shrink:0}.jkl-menu-item__arrow,.jkl-menu-item__icon{align-items:center;display:flex}.jkl-menu-item__chevron{flex-shrink:0}.jkl-menu-item:focus-visible,.jkl-menu-item:hover{--background-color:color-mix(in srgb,currentColor 18%,transparent)}}@layer jokul.components{.jkl-menu-divider{border:none;border-bottom:.0625rem solid var(--jkl-color-border-subdued);margin-block:0;width:100%}.jkl-menu{--border-color:transparent;--border-color:light-dark(transparent,var(--jkl-color-border-strong));align-items:flex-start;background-color:var(--jkl-color-background-container);border:2px solid var(--border-color);border-radius:.125rem;box-shadow:0 .25rem 1.25rem rgba(49,48,48,.2);display:flex;flex-direction:column;flex-wrap:nowrap;max-width:21rem;width:100%;z-index:7000}}@layer jokul.components{.jkl-menu:focus-visible{outline:none}.jkl-menu .jkl-menu[data-placement=bottom-start]{box-shadow:0 -1px 2px 0 rgba(0,0,0,.2),-1px 2px 2px 0 rgba(0,0,0,.14),3px 1px 5px 0 rgba(0,0,0,.12)}}
1
+ @layer jokul.components{.jkl-menu-item{--jkl-menu-item-height:var(--jkl-unit-60);--jkl-menu-item-padding:var(--jkl-unit-15) var(--jkl-unit-30);--background-color:transparent;align-items:center;background-color:var(--background-color);border-style:none;box-sizing:border-box;color:var(--jkl-color-text-default);display:flex;font:var(--jkl-text-style-text-medium);gap:var(--jkl-unit-10);height:var(--jkl-menu-item-height);outline:0;outline-style:none;padding:var(--jkl-menu-item-padding);text-decoration:none;-webkit-user-select:none;user-select:none;width:100%}.jkl-menu-item:active,.jkl-menu-item:focus,.jkl-menu-item:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-menu-item{border-style:revert;outline:revert;outline-style:revert}.jkl-menu-item:active,.jkl-menu-item:focus,.jkl-menu-item:hover{outline:revert;outline-style:revert}}.jkl-menu-item__content{display:flex;flex-grow:1;flex-shrink:1;gap:var(--jkl-unit-05);justify-content:flex-start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jkl-menu-item__icon{flex-shrink:0}.jkl-menu-item__arrow,.jkl-menu-item__icon{align-items:center;display:flex}.jkl-menu-item__chevron{flex-shrink:0}.jkl-menu-item:focus-visible,.jkl-menu-item:hover{--background-color:var(--jkl-color-background-container-accent)}}@layer jokul.components{.jkl-menu-divider{border:none;border-bottom:.0625rem solid var(--jkl-color-border-subdued);margin-block:0;width:100%}.jkl-menu{--border-color:transparent;--border-color:light-dark(transparent,var(--jkl-color-border-strong));align-items:flex-start;background-color:var(--jkl-color-background-container);border:2px solid var(--border-color);border-radius:.125rem;box-shadow:0 .25rem 1.25rem rgba(49,48,48,.2);display:flex;flex-direction:column;flex-wrap:nowrap;max-width:21rem;width:100%;z-index:7000}}@layer jokul.components{.jkl-menu:focus-visible{outline:none}.jkl-menu .jkl-menu[data-placement=bottom-start]{box-shadow:0 -1px 2px 0 rgba(0,0,0,.2),-1px 2px 2px 0 rgba(0,0,0,.14),3px 1px 5px 0 rgba(0,0,0,.12)}}
@@ -9,16 +9,15 @@
9
9
  --jkl-message-dismiss-button-size: var(--jkl-unit-50);
10
10
  --jkl-message-gap: var(--jkl-unit-20);
11
11
  --jkl-message-padding: var(--jkl-unit-25) var(--jkl-unit-15);
12
+ --icon-color: var(--jkl-color-background-contrast);
12
13
  --background-color: var(--jkl-color-background-container);
13
14
  --text-color: var(--jkl-color-text-default);
14
- --border-color: var(--jkl-color-border-subdued);
15
15
  width: 100%;
16
16
  max-width: 35rem;
17
17
  padding: var(--jkl-message-padding);
18
18
  background-color: var(--background-color);
19
19
  color: var(--text-color);
20
- border: 1px solid var(--border-color);
21
- border-radius: 0.25rem;
20
+ border-radius: var(--jkl-border-radius-s);
22
21
  box-sizing: border-box;
23
22
  display: grid;
24
23
  align-items: start;
@@ -32,6 +31,7 @@
32
31
  .jkl-message__icon {
33
32
  grid-area: icon;
34
33
  margin-right: var(--jkl-message-gap);
34
+ color: var(--icon-color);
35
35
  }
36
36
  @media screen and (forced-colors: active) {
37
37
  .jkl-message__icon {
@@ -61,7 +61,6 @@
61
61
  position: relative;
62
62
  background-color: transparent;
63
63
  padding: 0;
64
- cursor: pointer;
65
64
  color: inherit;
66
65
  display: grid;
67
66
  place-content: center;
@@ -130,25 +129,25 @@
130
129
  .jkl-message--info {
131
130
  --background-color: var(--jkl-color-info-background-container);
132
131
  --text-color: var(--jkl-color-info-text-default);
133
- --border-color: var(--jkl-color-info-border-subdued);
132
+ --icon-color: var(--jkl-color-info-background-contrast);
134
133
  }
135
134
  .jkl-message--warning {
136
135
  --background-color: var(--jkl-color-warning-background-container);
137
136
  --text-color: var(--jkl-color-warning-text-default);
138
- --border-color: var(--jkl-color-warning-border-subdued);
137
+ --icon-color: var(--jkl-color-warning-background-contrast);
139
138
  }
140
139
  .jkl-message--error {
141
140
  --background-color: var(--jkl-color-error-background-container);
142
141
  --text-color: var(--jkl-color-error-text-default);
143
- --border-color: var(--jkl-color-error-border-subdued);
142
+ --icon-color: var(--jkl-color-error-background-contrast);
144
143
  }
145
144
  .jkl-message--success {
146
145
  --background-color: var(--jkl-color-success-background-container);
147
146
  --text-color: var(--jkl-color-success-text-default);
148
- --border-color: var(--jkl-color-success-border-subdued);
147
+ --icon-color: var(--jkl-color-success-background-contrast);
149
148
  }
150
149
  .jkl-message--dismissed {
151
- animation: jkl-dismiss-ueq6ub7 var(--jkl-motion-timing-lazy) ease-in-out forwards;
150
+ animation: jkl-dismiss-u139gqo var(--jkl-motion-timing-lazy) ease-in-out forwards;
152
151
  transition: visibility 0ms var(--jkl-motion-timing-lazy);
153
152
  visibility: hidden;
154
153
  }
@@ -170,7 +169,7 @@
170
169
  .jkl-form-error-message {
171
170
  padding-bottom: var(--jkl-unit-50);
172
171
  }
173
- @keyframes jkl-dismiss-ueq6ub7 {
172
+ @keyframes jkl-dismiss-u139gqo {
174
173
  from {
175
174
  opacity: 1;
176
175
  transform: translate3d(0, 0, 0);
@@ -1 +1 @@
1
- @layer jokul.components{.jkl-message{--jkl-message-icon-left:var(--jkl-unit-20);--jkl-message-icon-top:var(--jkl-unit-30);--jkl-message-title-margin:0 0 var(--jkl-unit-05) 0;--jkl-message-dismiss-button-size:var(--jkl-unit-50);--jkl-message-gap:var(--jkl-unit-20);--jkl-message-padding:var(--jkl-unit-25) var(--jkl-unit-15);--background-color:var(--jkl-color-background-container);--text-color:var(--jkl-color-text-default);--border-color:var(--jkl-color-border-subdued);align-items:start;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:.25rem;box-sizing:border-box;color:var(--text-color);display:grid;font:var(--jkl-text-style-paragraph-medium);grid-template-areas:"icon content dismiss";grid-template-columns:auto 1fr auto;max-width:35rem;padding:var(--jkl-message-padding);width:100%}.jkl-message:has(.jkl-message__title){font:var(--jkl-text-style-heading-5)}.jkl-message__icon{grid-area:icon;margin-right:var(--jkl-message-gap)}@media screen and (forced-colors:active){.jkl-message__icon,.jkl-message__icon path,.jkl-message__icon svg{stroke:CanvasText}}.jkl-message__content{grid-area:content}.jkl-message__message{font:var(--jkl-text-style-paragraph-medium);margin-top:-.125rem}.jkl-message__title{font:var(--jkl-text-style-heading-5);margin:var(--jkl-message-title-margin)}.jkl-message__title~.jkl-message__message{margin-top:0}.jkl-message__dismiss-button{background-color:transparent;border-style:none;color:inherit;cursor:pointer;display:grid;grid-area:dismiss;justify-self:end;outline:0;outline-style:none;padding:0;place-content:center;position:relative}.jkl-message__dismiss-button:active,.jkl-message__dismiss-button:focus,.jkl-message__dismiss-button:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-message__dismiss-button{border-style:revert;outline:revert;outline-style:revert}.jkl-message__dismiss-button:active,.jkl-message__dismiss-button:focus,.jkl-message__dismiss-button:hover{outline:revert;outline-style:revert}}@media screen and (forced-colors:active){.jkl-message__dismiss-button,.jkl-message__dismiss-button path,.jkl-message__dismiss-button svg{stroke:ButtonText}.jkl-message__dismiss-button{background-color:ButtonFace}}.jkl-message__dismiss-button:after{content:"";display:block;height:var(--jkl-message-dismiss-button-size);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:var(--jkl-message-dismiss-button-size)}.jkl-message__dismiss-button:hover{color:var(--jkl-color-text-subdued)}@media screen and (forced-colors:active){.jkl-message__dismiss-button:hover{stroke:ButtonText}.jkl-message__dismiss-button:hover path,.jkl-message__dismiss-button:hover svg{stroke:ButtonText}}.jkl-message__dismiss-button:focus-visible{outline:3px solid var(--jkl-color-border-strong);outline-offset:3px}.jkl-message--full{max-width:100%}.jkl-message--info{--background-color:var(--jkl-color-info-background-container);--text-color:var(--jkl-color-info-text-default);--border-color:var(--jkl-color-info-border-subdued)}.jkl-message--warning{--background-color:var(--jkl-color-warning-background-container);--text-color:var(--jkl-color-warning-text-default);--border-color:var(--jkl-color-warning-border-subdued)}.jkl-message--error{--background-color:var(--jkl-color-error-background-container);--text-color:var(--jkl-color-error-text-default);--border-color:var(--jkl-color-error-border-subdued)}.jkl-message--success{--background-color:var(--jkl-color-success-background-container);--text-color:var(--jkl-color-success-text-default);--border-color:var(--jkl-color-success-border-subdued)}.jkl-message--dismissed{animation:jkl-dismiss-ueq6ub7 var(--jkl-motion-timing-lazy) ease-in-out forwards;transition:visibility 0s var(--jkl-motion-timing-lazy);visibility:hidden}@media screen and (forced-colors:active){.jkl-message{border:2px solid CanvasText}.jkl-message--info{border-style:dotted}.jkl-message--warning{border-style:dashed}.jkl-message--error{border-style:double;border-width:4px}}.jkl-form-error-message{padding-bottom:var(--jkl-unit-50)}@keyframes jkl-dismiss-ueq6ub7{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-50%,0)}}}
1
+ @layer jokul.components{.jkl-message{--jkl-message-icon-left:var(--jkl-unit-20);--jkl-message-icon-top:var(--jkl-unit-30);--jkl-message-title-margin:0 0 var(--jkl-unit-05) 0;--jkl-message-dismiss-button-size:var(--jkl-unit-50);--jkl-message-gap:var(--jkl-unit-20);--jkl-message-padding:var(--jkl-unit-25) var(--jkl-unit-15);--icon-color:var(--jkl-color-background-contrast);--background-color:var(--jkl-color-background-container);--text-color:var(--jkl-color-text-default);align-items:start;background-color:var(--background-color);border-radius:var(--jkl-border-radius-s);box-sizing:border-box;color:var(--text-color);display:grid;font:var(--jkl-text-style-paragraph-medium);grid-template-areas:"icon content dismiss";grid-template-columns:auto 1fr auto;max-width:35rem;padding:var(--jkl-message-padding);width:100%}.jkl-message:has(.jkl-message__title){font:var(--jkl-text-style-heading-5)}.jkl-message__icon{color:var(--icon-color);grid-area:icon;margin-right:var(--jkl-message-gap)}@media screen and (forced-colors:active){.jkl-message__icon,.jkl-message__icon path,.jkl-message__icon svg{stroke:CanvasText}}.jkl-message__content{grid-area:content}.jkl-message__message{font:var(--jkl-text-style-paragraph-medium);margin-top:-.125rem}.jkl-message__title{font:var(--jkl-text-style-heading-5);margin:var(--jkl-message-title-margin)}.jkl-message__title~.jkl-message__message{margin-top:0}.jkl-message__dismiss-button{background-color:transparent;border-style:none;color:inherit;display:grid;grid-area:dismiss;justify-self:end;outline:0;outline-style:none;padding:0;place-content:center;position:relative}.jkl-message__dismiss-button:active,.jkl-message__dismiss-button:focus,.jkl-message__dismiss-button:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-message__dismiss-button{border-style:revert;outline:revert;outline-style:revert}.jkl-message__dismiss-button:active,.jkl-message__dismiss-button:focus,.jkl-message__dismiss-button:hover{outline:revert;outline-style:revert}}@media screen and (forced-colors:active){.jkl-message__dismiss-button,.jkl-message__dismiss-button path,.jkl-message__dismiss-button svg{stroke:ButtonText}.jkl-message__dismiss-button{background-color:ButtonFace}}.jkl-message__dismiss-button:after{content:"";display:block;height:var(--jkl-message-dismiss-button-size);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:var(--jkl-message-dismiss-button-size)}.jkl-message__dismiss-button:hover{color:var(--jkl-color-text-subdued)}@media screen and (forced-colors:active){.jkl-message__dismiss-button:hover{stroke:ButtonText}.jkl-message__dismiss-button:hover path,.jkl-message__dismiss-button:hover svg{stroke:ButtonText}}.jkl-message__dismiss-button:focus-visible{outline:3px solid var(--jkl-color-border-strong);outline-offset:3px}.jkl-message--full{max-width:100%}.jkl-message--info{--background-color:var(--jkl-color-info-background-container);--text-color:var(--jkl-color-info-text-default);--icon-color:var(--jkl-color-info-background-contrast)}.jkl-message--warning{--background-color:var(--jkl-color-warning-background-container);--text-color:var(--jkl-color-warning-text-default);--icon-color:var(--jkl-color-warning-background-contrast)}.jkl-message--error{--background-color:var(--jkl-color-error-background-container);--text-color:var(--jkl-color-error-text-default);--icon-color:var(--jkl-color-error-background-contrast)}.jkl-message--success{--background-color:var(--jkl-color-success-background-container);--text-color:var(--jkl-color-success-text-default);--icon-color:var(--jkl-color-success-background-contrast)}.jkl-message--dismissed{animation:jkl-dismiss-u139gqo var(--jkl-motion-timing-lazy) ease-in-out forwards;transition:visibility 0s var(--jkl-motion-timing-lazy);visibility:hidden}@media screen and (forced-colors:active){.jkl-message{border:2px solid CanvasText}.jkl-message--info{border-style:dotted}.jkl-message--warning{border-style:dashed}.jkl-message--error{border-style:double;border-width:4px}}.jkl-form-error-message{padding-bottom:var(--jkl-unit-50)}@keyframes jkl-dismiss-u139gqo{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-50%,0)}}}
@@ -15,17 +15,16 @@ $_message-width--compact: jkl.rem(440px);
15
15
  --jkl-message-dismiss-button-size: var(--jkl-unit-50);
16
16
  --jkl-message-gap: var(--jkl-unit-20);
17
17
  --jkl-message-padding: var(--jkl-unit-25) var(--jkl-unit-15);
18
+ --icon-color: var(--jkl-color-background-contrast);
18
19
  --background-color: var(--jkl-color-background-container);
19
20
  --text-color: var(--jkl-color-text-default);
20
- --border-color: var(--jkl-color-border-subdued);
21
21
 
22
22
  width: 100%;
23
23
  max-width: $_message-width;
24
24
  padding: var(--jkl-message-padding);
25
25
  background-color: var(--background-color);
26
26
  color: var(--text-color);
27
- border: 1px solid var(--border-color);
28
- border-radius: jkl.rem(4px);
27
+ border-radius: var(--jkl-border-radius-s);
29
28
  box-sizing: border-box;
30
29
 
31
30
  display: grid;
@@ -42,6 +41,7 @@ $_message-width--compact: jkl.rem(440px);
42
41
  &__icon {
43
42
  grid-area: icon;
44
43
  margin-right: var(--jkl-message-gap);
44
+ color: var(--icon-color);
45
45
 
46
46
  @include jkl.forced-colors-svg-fallback($stroke: CanvasText);
47
47
  }
@@ -72,7 +72,6 @@ $_message-width--compact: jkl.rem(440px);
72
72
 
73
73
  background-color: transparent;
74
74
  padding: 0;
75
- cursor: pointer;
76
75
 
77
76
  color: inherit;
78
77
 
@@ -116,25 +115,25 @@ $_message-width--compact: jkl.rem(440px);
116
115
  &--info {
117
116
  --background-color: var(--jkl-color-info-background-container);
118
117
  --text-color: var(--jkl-color-info-text-default);
119
- --border-color: var(--jkl-color-info-border-subdued);
118
+ --icon-color: var(--jkl-color-info-background-contrast);
120
119
  }
121
120
 
122
121
  &--warning {
123
122
  --background-color: var(--jkl-color-warning-background-container);
124
123
  --text-color: var(--jkl-color-warning-text-default);
125
- --border-color: var(--jkl-color-warning-border-subdued);
124
+ --icon-color: var(--jkl-color-warning-background-contrast);
126
125
  }
127
126
 
128
127
  &--error {
129
128
  --background-color: var(--jkl-color-error-background-container);
130
129
  --text-color: var(--jkl-color-error-text-default);
131
- --border-color: var(--jkl-color-error-border-subdued);
130
+ --icon-color: var(--jkl-color-error-background-contrast);
132
131
  }
133
132
 
134
133
  &--success {
135
134
  --background-color: var(--jkl-color-success-background-container);
136
135
  --text-color: var(--jkl-color-success-text-default);
137
- --border-color: var(--jkl-color-success-border-subdued);
136
+ --icon-color: var(--jkl-color-success-background-contrast);
138
137
  }
139
138
 
140
139
  &--dismissed {
@@ -1,3 +1,10 @@
1
1
  @forward "modal";
2
+ @forward "layout";
3
+ @forward "overlay";
4
+ @forward "modal-base";
5
+ @forward "motion";
6
+ @forward "placement";
7
+ @forward "parts";
8
+
2
9
  @use "../icon" as icon;
3
10
  @use "../icon-button" as icon-button;
@@ -5,6 +5,10 @@
5
5
  background-color: rgb(27 25 23 / 80%);
6
6
  opacity: 0;
7
7
 
8
+ &--transparent {
9
+ background-color: transparent;
10
+ }
11
+
8
12
  @include jkl.motion("entrance", "expressive", opacity);
9
13
  }
10
14
 
@@ -2,7 +2,6 @@
2
2
  * Do not edit directly, this file was auto-generated.
3
3
  */
4
4
  @layer jokul.components {
5
- /* Base layout */
6
5
  .jkl-modal-container,
7
6
  .jkl-modal-overlay {
8
7
  position: fixed;
@@ -11,46 +10,29 @@
11
10
  .jkl-modal-container {
12
11
  z-index: 9000;
13
12
  display: flex;
14
- align-items: center;
15
- justify-content: center;
16
13
  }
17
14
  .jkl-modal-container[aria-hidden=true] {
18
- visibility: hidden;
19
- pointer-events: none;
15
+ display: none;
20
16
  }
21
- }
22
- @layer jokul.components {
23
17
  .jkl-modal-overlay {
24
18
  background-color: rgba(27, 25, 23, 0.8);
25
- opacity: 0;
26
- transition-timing-function: var(--jkl-motion-easing-entrance);
27
- transition-duration: var(--jkl-motion-timing-expressive);
28
- transition-property: opacity;
29
- }
30
- .jkl-modal-container:not([aria-hidden=true]) .jkl-modal-overlay {
31
- opacity: 1;
32
- }
33
- @media (prefers-reduced-motion: reduce) {
34
- .jkl-modal-overlay {
35
- transition-duration: 0ms;
36
- }
37
19
  }
38
- }
39
- @layer jokul.components {
40
20
  .jkl-modal {
41
- --margin: var(--jkl-spacing-m);
42
- container-type: inline-size;
43
- box-sizing: border-box;
44
- margin: var(--margin);
45
- padding: var(--modal-padding, var(--jkl-unit-40));
21
+ --jkl-modal-padding: var(--jkl-unit-50);
22
+ --jkl-modal-min-width: 13.75rem;
23
+ --jkl-modal-max-width: 41.25rem;
24
+ margin: auto;
46
25
  z-index: 9000;
26
+ position: relative;
47
27
  background-color: var(--jkl-color-background-container);
48
28
  border-radius: var(--jkl-border-radius-l);
49
29
  box-shadow: 0 0.25rem 0.75rem rgba(37, 42, 49, 0.03);
50
- width: min(100vw - 2 * var(--margin), var(--modal-width, 60ch));
51
- max-width: none;
30
+ width: 100%;
31
+ min-width: var(--jkl-modal-min-width);
32
+ max-width: var(--jkl-modal-max-width);
52
33
  max-height: 90vh;
53
34
  overflow: auto;
35
+ padding: var(--jkl-modal-padding);
54
36
  display: flex;
55
37
  flex-direction: column;
56
38
  }
@@ -59,100 +41,26 @@
59
41
  border-color: CanvasText;
60
42
  }
61
43
  }
62
- }
63
- @layer jokul.components {
64
- .jkl-modal-container--slide-in {
65
- --jkl-modal-slide-x: 0px;
66
- --jkl-modal-slide-y: 12px;
67
- transition-timing-function: var(--jkl-motion-easing-exit);
68
- transition-duration: var(--jkl-motion-timing-expressive);
69
- transition-property: visibility;
70
- transition-duration: 0ms;
71
- }
72
- .jkl-modal-container--slide-in[aria-hidden=true] {
73
- display: flex;
74
- visibility: hidden;
75
- pointer-events: none;
76
- transition-delay: var(--jkl-motion-timing-expressive);
77
- }
78
- .jkl-modal-container--slide-in:not([aria-hidden=true]) {
79
- visibility: visible;
80
- transition-delay: 0ms;
81
- }
82
- .jkl-modal-container--slide-in .jkl-modal {
83
- transition-timing-function: var(--jkl-motion-easing-entrance);
84
- transition-duration: var(--jkl-motion-timing-expressive);
85
- transition-property: transform, opacity;
86
- transform: translate(var(--jkl-modal-slide-x), var(--jkl-modal-slide-y));
87
- opacity: 0;
88
- will-change: transform, opacity;
89
- }
90
- .jkl-modal-container--slide-in:not([aria-hidden=true]) .jkl-modal {
91
- transform: translate(0, 0);
92
- opacity: 1;
93
- }
94
- @media (prefers-reduced-motion: reduce) {
95
- .jkl-modal-container--slide-in .jkl-modal {
96
- transition-duration: 0ms;
44
+ @media (width >= 0) and (max-width: 679px) {
45
+ .jkl-modal {
46
+ margin: auto var(--jkl-unit-30);
97
47
  }
98
48
  }
99
- }
100
- @layer jokul.components {
101
- /* Placement: bottom */
102
- .jkl-modal-container--placement-bottom {
103
- align-items: flex-end;
104
- }
105
- .jkl-modal-container--placement-bottom.jkl-modal-container--slide-in {
106
- --jkl-modal-slide-x: 0px;
107
- --jkl-modal-slide-y: 24px;
108
- }
109
- .jkl-modal-container--placement-bottom .jkl-modal {
110
- --margin: 0px;
111
- width: min(100vw, var(--modal-width, 100vw));
112
- border-bottom-left-radius: 0;
113
- border-bottom-right-radius: 0;
114
- }
115
- /* Placement: left */
116
- .jkl-modal-container--placement-left {
117
- justify-content: flex-start;
118
- }
119
- .jkl-modal-container--placement-left.jkl-modal-container--slide-in {
120
- --jkl-modal-slide-x: -24px;
121
- --jkl-modal-slide-y: 0px;
122
- }
123
- .jkl-modal-container--placement-left .jkl-modal {
124
- height: 100%;
125
- max-height: 100%;
126
- margin-block: 0;
127
- margin-inline-start: 0;
128
- border-top-left-radius: 0;
129
- border-bottom-left-radius: 0;
130
- }
131
- /* Placement: right */
132
- .jkl-modal-container--placement-right {
133
- justify-content: flex-end;
134
- }
135
- .jkl-modal-container--placement-right.jkl-modal-container--slide-in {
136
- --jkl-modal-slide-x: 24px;
137
- --jkl-modal-slide-y: 0px;
138
- }
139
- .jkl-modal-container--placement-right .jkl-modal {
140
- height: 100%;
141
- max-height: 100%;
142
- margin-block: 0;
143
- margin-inline-end: 0;
144
- border-top-right-radius: 0;
145
- border-bottom-right-radius: 0;
146
- }
147
- }
148
- @layer jokul.components {
149
49
  .jkl-modal-header {
150
50
  --jkl-modal-header-margin: 0 0 var(--jkl-unit-20);
51
+ }
52
+ @media (width >= 0) and (max-width: 679px) {
53
+ .jkl-modal-header {
54
+ --jkl-modal-header-margin: 0 0 var(--jkl-unit-15);
55
+ }
56
+ }
57
+ .jkl-modal-header {
151
58
  display: flex;
152
59
  flex-direction: row;
153
60
  justify-content: space-between;
154
61
  align-items: center;
155
62
  margin: var(--jkl-modal-header-margin);
63
+ gap: var(--jkl-modal-gap);
156
64
  }
157
65
  .jkl-modal-body {
158
66
  font: var(--jkl-text-style-paragraph-medium);
@@ -161,12 +69,20 @@
161
69
  font: var(--jkl-text-style-heading-3);
162
70
  }
163
71
  .jkl-modal-actions {
164
- margin-block-start: var(--jkl-unit-50);
72
+ --jkl-modal-actions-margin: var(--jkl-unit-50) 0 0 0;
73
+ }
74
+ @media (width >= 0) and (max-width: 679px) {
75
+ .jkl-modal-actions {
76
+ --jkl-modal-actions-margin: var(--jkl-unit-40) 0 0 0;
77
+ }
78
+ }
79
+ .jkl-modal-actions {
80
+ margin: var(--jkl-modal-actions-margin);
165
81
  display: flex;
166
82
  flex-direction: column;
167
- gap: var(--jkl-unit-15) var(--jkl-unit-20);
83
+ gap: var(--jkl-unit-20);
168
84
  }
169
- @container (width > 35ch /* ~380px ved vanlig zoom/size */) {
85
+ @media (min-width: 60ch) {
170
86
  .jkl-modal-actions {
171
87
  flex-direction: row-reverse;
172
88
  align-self: flex-end;
@@ -1 +1 @@
1
- @layer jokul.components{.jkl-modal-container,.jkl-modal-overlay{inset:0;position:fixed}.jkl-modal-container{align-items:center;display:flex;justify-content:center;z-index:9000}.jkl-modal-container[aria-hidden=true]{pointer-events:none;visibility:hidden}}@layer jokul.components{.jkl-modal-overlay{background-color:rgba(27,25,23,.8);opacity:0;transition-duration:var(--jkl-motion-timing-expressive);transition-property:opacity;transition-timing-function:var(--jkl-motion-easing-entrance)}.jkl-modal-container:not([aria-hidden=true]) .jkl-modal-overlay{opacity:1}@media (prefers-reduced-motion:reduce){.jkl-modal-overlay{transition-duration:0s}}}@layer jokul.components{.jkl-modal{--margin:var(--jkl-spacing-m);background-color:var(--jkl-color-background-container);border-radius:var(--jkl-border-radius-l);box-shadow:0 .25rem .75rem rgba(37,42,49,.03);box-sizing:border-box;container-type:inline-size;display:flex;flex-direction:column;margin:var(--margin);max-height:90vh;max-width:none;overflow:auto;padding:var(--modal-padding,var(--jkl-unit-40));width:min(100vw - 2 * var(--margin),var(--modal-width,60ch));z-index:9000}@media screen and (forced-colors:active){.jkl-modal{border-color:CanvasText}}}@layer jokul.components{.jkl-modal-container--slide-in{--jkl-modal-slide-x:0px;--jkl-modal-slide-y:12px;transition-duration:var(--jkl-motion-timing-expressive);transition-duration:0s;transition-property:visibility;transition-timing-function:var(--jkl-motion-easing-exit)}.jkl-modal-container--slide-in[aria-hidden=true]{display:flex;pointer-events:none;transition-delay:var(--jkl-motion-timing-expressive);visibility:hidden}.jkl-modal-container--slide-in:not([aria-hidden=true]){transition-delay:0s;visibility:visible}.jkl-modal-container--slide-in .jkl-modal{opacity:0;transform:translate(var(--jkl-modal-slide-x),var(--jkl-modal-slide-y));transition-duration:var(--jkl-motion-timing-expressive);transition-property:transform,opacity;transition-timing-function:var(--jkl-motion-easing-entrance);will-change:transform,opacity}.jkl-modal-container--slide-in:not([aria-hidden=true]) .jkl-modal{opacity:1;transform:translate(0)}@media (prefers-reduced-motion:reduce){.jkl-modal-container--slide-in .jkl-modal{transition-duration:0s}}}@layer jokul.components{.jkl-modal-container--placement-bottom{align-items:flex-end}.jkl-modal-container--placement-bottom.jkl-modal-container--slide-in{--jkl-modal-slide-x:0px;--jkl-modal-slide-y:24px}.jkl-modal-container--placement-bottom .jkl-modal{--margin:0px;border-bottom-left-radius:0;border-bottom-right-radius:0;width:min(100vw,var(--modal-width,100vw))}.jkl-modal-container--placement-left{justify-content:flex-start}.jkl-modal-container--placement-left.jkl-modal-container--slide-in{--jkl-modal-slide-x:-24px;--jkl-modal-slide-y:0px}.jkl-modal-container--placement-left .jkl-modal{height:100%;margin-block:0;max-height:100%;-webkit-margin-start:0;border-bottom-left-radius:0;border-top-left-radius:0;margin-inline-start:0}.jkl-modal-container--placement-right{justify-content:flex-end}.jkl-modal-container--placement-right.jkl-modal-container--slide-in{--jkl-modal-slide-x:24px;--jkl-modal-slide-y:0px}.jkl-modal-container--placement-right .jkl-modal{height:100%;margin-block:0;max-height:100%;-webkit-margin-end:0;border-bottom-right-radius:0;border-top-right-radius:0;margin-inline-end:0}.jkl-modal-header{--jkl-modal-header-margin:0 0 var(--jkl-unit-20);align-items:center;display:flex;flex-direction:row;justify-content:space-between;margin:var(--jkl-modal-header-margin)}.jkl-modal-body{font:var(--jkl-text-style-paragraph-medium)}.jkl-modal-title{font:var(--jkl-text-style-heading-3)}.jkl-modal-actions{-webkit-margin-before:var(--jkl-unit-50);display:flex;flex-direction:column;gap:var(--jkl-unit-15) var(--jkl-unit-20);margin-block-start:var(--jkl-unit-50)}}@layer jokul.components{@container (width > 35ch ){.jkl-modal-actions{align-self:flex-end;flex-direction:row-reverse}}}
1
+ @layer jokul.components{.jkl-modal-container,.jkl-modal-overlay{inset:0;position:fixed}.jkl-modal-container{display:flex;z-index:9000}.jkl-modal-container[aria-hidden=true]{display:none}.jkl-modal-overlay{background-color:rgba(27,25,23,.8)}.jkl-modal{--jkl-modal-padding:var(--jkl-unit-50);--jkl-modal-min-width:13.75rem;--jkl-modal-max-width:41.25rem;background-color:var(--jkl-color-background-container);border-radius:var(--jkl-border-radius-l);box-shadow:0 .25rem .75rem rgba(37,42,49,.03);display:flex;flex-direction:column;margin:auto;max-height:90vh;max-width:var(--jkl-modal-max-width);min-width:var(--jkl-modal-min-width);overflow:auto;padding:var(--jkl-modal-padding);position:relative;width:100%;z-index:9000}@media screen and (forced-colors:active){.jkl-modal{border-color:CanvasText}}@media (width >= 0) and (max-width:679px){.jkl-modal{margin:auto var(--jkl-unit-30)}}.jkl-modal-header{--jkl-modal-header-margin:0 0 var(--jkl-unit-20)}@media (width >= 0) and (max-width:679px){.jkl-modal-header{--jkl-modal-header-margin:0 0 var(--jkl-unit-15)}}.jkl-modal-header{align-items:center;display:flex;flex-direction:row;gap:var(--jkl-modal-gap);justify-content:space-between;margin:var(--jkl-modal-header-margin)}.jkl-modal-body{font:var(--jkl-text-style-paragraph-medium)}.jkl-modal-title{font:var(--jkl-text-style-heading-3)}.jkl-modal-actions{--jkl-modal-actions-margin:var(--jkl-unit-50) 0 0 0}@media (width >= 0) and (max-width:679px){.jkl-modal-actions{--jkl-modal-actions-margin:var(--jkl-unit-40) 0 0 0}}.jkl-modal-actions{display:flex;flex-direction:column;gap:var(--jkl-unit-20);margin:var(--jkl-modal-actions-margin)}@media (min-width:60ch){.jkl-modal-actions{align-self:flex-end;flex-direction:row-reverse}}}