@duetds/components 8.4.3 → 8.4.5

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 (645) hide show
  1. package/hydrate/index.js +184 -32
  2. package/lib/cjs/action-new-window-50c8aed0.js +11 -0
  3. package/lib/cjs/duet-action-button.cjs.entry.js +3 -3
  4. package/lib/cjs/duet-alert.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-banner.cjs.entry.js +8 -7
  7. package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
  8. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +3 -3
  9. package/lib/cjs/duet-button_2.cjs.entry.js +3 -3
  10. package/lib/cjs/duet-callout.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-caption_4.cjs.entry.js +45 -21
  12. package/lib/cjs/duet-card.cjs.entry.js +3 -3
  13. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-checkmark.cjs.entry.js +1 -1
  15. package/lib/cjs/duet-chip.cjs.entry.js +1 -1
  16. package/lib/cjs/duet-choice_2.cjs.entry.js +2 -2
  17. package/lib/cjs/duet-collapsible.cjs.entry.js +2 -2
  18. package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-contact-card.cjs.entry.js +1 -1
  20. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-date-picker.cjs.entry.js +4 -4
  22. package/lib/cjs/duet-divider_2.cjs.entry.js +3 -3
  23. package/lib/cjs/duet-editable-table_3.cjs.entry.js +52 -4
  24. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-file-chooser.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-footer.cjs.entry.js +3 -5
  28. package/lib/cjs/duet-grid_2.cjs.entry.js +2 -2
  29. package/lib/cjs/duet-header_2.cjs.entry.js +3 -3
  30. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-icon.cjs.entry.js +3 -3
  32. package/lib/cjs/duet-input_2.cjs.entry.js +3 -3
  33. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  35. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +2 -2
  36. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +2 -2
  38. package/lib/cjs/duet-menu-bar-item.cjs.entry.js +2 -2
  39. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +2 -2
  40. package/lib/cjs/duet-menu-bar.cjs.entry.js +2 -2
  41. package/lib/cjs/duet-modal.cjs.entry.js +6 -6
  42. package/lib/cjs/duet-multiselect.cjs.entry.js +1 -1
  43. package/lib/cjs/duet-nav.cjs.entry.js +1 -1
  44. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  45. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  46. package/lib/cjs/duet-overlay.cjs.entry.js +57 -0
  47. package/lib/cjs/duet-page-heading.cjs.entry.js +1 -1
  48. package/lib/cjs/duet-pagination_2.cjs.entry.js +4 -4
  49. package/lib/cjs/duet-popup-menu-item.cjs.entry.js +1 -1
  50. package/lib/cjs/duet-popup-menu.cjs.entry.js +8 -3
  51. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  52. package/lib/cjs/duet-promo-card.cjs.entry.js +3 -3
  53. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  54. package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
  55. package/lib/cjs/duet-scrollable_3.cjs.entry.js +3 -3
  56. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  57. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  58. package/lib/cjs/duet-shaped-image.cjs.entry.js +1 -1
  59. package/lib/cjs/duet-show-more.cjs.entry.js +1 -1
  60. package/lib/cjs/duet-slideout-lang.cjs.entry.js +1 -1
  61. package/lib/cjs/duet-slideout-link.cjs.entry.js +1 -1
  62. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +1 -1
  63. package/lib/cjs/duet-slideout-panel.cjs.entry.js +4 -4
  64. package/lib/cjs/duet-slideout.cjs.entry.js +6 -9
  65. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  66. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +1 -1
  67. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +2 -2
  68. package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +2 -2
  69. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +2 -2
  70. package/lib/cjs/duet-submenu-bar.cjs.entry.js +7 -6
  71. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  72. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  73. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +1 -1
  74. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +1 -1
  75. package/lib/cjs/duet-toolbar-item.cjs.entry.js +1 -1
  76. package/lib/cjs/duet-toolbar-link.cjs.entry.js +1 -1
  77. package/lib/cjs/duet-toolbar.cjs.entry.js +1 -1
  78. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +2 -2
  79. package/lib/cjs/duet-tooltip.cjs.entry.js +2 -2
  80. package/lib/cjs/duet-tray.cjs.entry.js +2 -2
  81. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  82. package/lib/cjs/duet-upload-item.cjs.entry.js +1 -1
  83. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  84. package/lib/cjs/duet.cjs.js +2 -2
  85. package/lib/cjs/{focus-utils-a8f819a3.js → focus-utils-8769bc19.js} +1 -1
  86. package/lib/cjs/{index-cb4d7840.js → index-4522afdb.js} +1 -1
  87. package/lib/cjs/loader.cjs.js +2 -2
  88. package/lib/cjs/{token-utils-7a618677.js → token-utils-c8094d1e.js} +1 -1
  89. package/lib/cjs/{tokens-c3eecae6.js → tokens-5b487d39.js} +3 -0
  90. package/lib/cjs/{tokens.module-bc323a09.js → tokens.module-450a747b.js} +2 -0
  91. package/lib/collection/collection-manifest.json +1 -0
  92. package/lib/collection/components/duet-banner/duet-banner.js +5 -4
  93. package/lib/collection/components/duet-date-picker/duet-date-picker.css +0 -4
  94. package/lib/collection/components/duet-date-picker/duet-date-picker.js +1 -1
  95. package/lib/collection/components/duet-link/duet-link.css +95 -9
  96. package/lib/collection/components/duet-link/duet-link.js +73 -20
  97. package/lib/collection/components/duet-modal/duet-modal.css +4 -8
  98. package/lib/collection/components/duet-modal/duet-modal.e2e.js +2 -2
  99. package/lib/collection/components/duet-modal/duet-modal.js +3 -3
  100. package/lib/collection/components/duet-overlay/duet-overlay.css +97 -0
  101. package/lib/collection/components/duet-overlay/duet-overlay.js +204 -0
  102. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +24 -1
  103. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +1 -1
  104. package/lib/collection/components/duet-slideout/duet-slideout.css +0 -23
  105. package/lib/collection/components/duet-slideout/duet-slideout.js +1 -4
  106. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.css +0 -12
  107. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +4 -3
  108. package/lib/collection/components/duet-upload/duet-upload.js +67 -1
  109. package/lib/collection/utils/string-utils.js +6 -0
  110. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  111. package/lib/dist-custom-elements/duet-alert.js +1 -1
  112. package/lib/dist-custom-elements/duet-badge.js +1 -1
  113. package/lib/dist-custom-elements/duet-banner.js +9 -8
  114. package/lib/dist-custom-elements/duet-breadcrumb.js +3 -3
  115. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  116. package/lib/dist-custom-elements/duet-button.js +1 -1
  117. package/lib/dist-custom-elements/duet-callout.js +2 -2
  118. package/lib/dist-custom-elements/duet-caption.js +1 -1
  119. package/lib/dist-custom-elements/duet-card.js +4 -4
  120. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  121. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  122. package/lib/dist-custom-elements/duet-chip.js +2 -2
  123. package/lib/dist-custom-elements/duet-choice-group.js +8 -8
  124. package/lib/dist-custom-elements/duet-choice.js +5 -5
  125. package/lib/dist-custom-elements/duet-collapsible.js +3 -3
  126. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  127. package/lib/dist-custom-elements/duet-contact-card.js +8 -8
  128. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  129. package/lib/dist-custom-elements/duet-date-picker.js +26 -20
  130. package/lib/dist-custom-elements/duet-divider.js +1 -1
  131. package/lib/dist-custom-elements/duet-editable-table.js +7 -7
  132. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  133. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  134. package/lib/dist-custom-elements/duet-file-chooser.js +2 -2
  135. package/lib/dist-custom-elements/duet-footer.js +5 -7
  136. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  137. package/lib/dist-custom-elements/duet-grid.js +1 -1
  138. package/lib/dist-custom-elements/duet-header.js +9 -9
  139. package/lib/dist-custom-elements/duet-heading.js +1 -1
  140. package/lib/dist-custom-elements/duet-hero.js +9 -9
  141. package/lib/dist-custom-elements/duet-icon.js +1 -1
  142. package/lib/dist-custom-elements/duet-input.js +1 -1
  143. package/lib/dist-custom-elements/duet-label.js +1 -1
  144. package/lib/dist-custom-elements/duet-layout.js +1 -1
  145. package/lib/dist-custom-elements/duet-link.js +1 -1
  146. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  147. package/lib/dist-custom-elements/duet-list.js +1 -1
  148. package/lib/dist-custom-elements/duet-logo.js +1 -1
  149. package/lib/dist-custom-elements/duet-menu-bar-button.js +3 -3
  150. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
  151. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +3 -3
  152. package/lib/dist-custom-elements/duet-menu-bar-item.js +3 -3
  153. package/lib/dist-custom-elements/duet-menu-bar-link.js +3 -3
  154. package/lib/dist-custom-elements/duet-menu-bar.js +3 -3
  155. package/lib/dist-custom-elements/duet-modal.js +20 -14
  156. package/lib/dist-custom-elements/duet-multiselect.js +9 -9
  157. package/lib/dist-custom-elements/duet-nav.js +1 -1
  158. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  159. package/lib/dist-custom-elements/duet-notification.js +2 -2
  160. package/lib/dist-custom-elements/duet-number-input.js +11 -11
  161. package/lib/dist-custom-elements/duet-overlay.d.ts +11 -0
  162. package/lib/dist-custom-elements/duet-overlay.js +9 -0
  163. package/lib/dist-custom-elements/duet-page-heading.js +2 -2
  164. package/lib/dist-custom-elements/duet-pagination.js +14 -14
  165. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  166. package/lib/dist-custom-elements/duet-popup-menu-item.js +2 -2
  167. package/lib/dist-custom-elements/duet-popup-menu.js +8 -2
  168. package/lib/dist-custom-elements/duet-progress.js +1 -1
  169. package/lib/dist-custom-elements/duet-promo-card.js +4 -4
  170. package/lib/dist-custom-elements/duet-radio-group.js +8 -8
  171. package/lib/dist-custom-elements/duet-radio.js +1 -1
  172. package/lib/dist-custom-elements/duet-range-slider.js +3 -3
  173. package/lib/dist-custom-elements/duet-range-stepper.js +5 -5
  174. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  175. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  176. package/lib/dist-custom-elements/duet-select.js +1 -1
  177. package/lib/dist-custom-elements/duet-shaped-image.js +1 -1
  178. package/lib/dist-custom-elements/duet-show-more.js +5 -5
  179. package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
  180. package/lib/dist-custom-elements/duet-slideout-link.js +2 -2
  181. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +2 -2
  182. package/lib/dist-custom-elements/duet-slideout-panel.js +3 -3
  183. package/lib/dist-custom-elements/duet-slideout.js +12 -9
  184. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  185. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  186. package/lib/dist-custom-elements/duet-step.js +4 -4
  187. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  188. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +2 -2
  189. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +3 -3
  190. package/lib/dist-custom-elements/duet-submenu-bar-item.js +3 -3
  191. package/lib/dist-custom-elements/duet-submenu-bar-link.js +3 -3
  192. package/lib/dist-custom-elements/duet-submenu-bar.js +15 -8
  193. package/lib/dist-custom-elements/duet-tab-group.js +13 -13
  194. package/lib/dist-custom-elements/duet-tab.js +2 -2
  195. package/lib/dist-custom-elements/duet-table.js +1 -1
  196. package/lib/dist-custom-elements/duet-textarea.js +10 -10
  197. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  198. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  199. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +2 -2
  200. package/lib/dist-custom-elements/duet-toolbar-item.js +2 -2
  201. package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
  202. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  203. package/lib/dist-custom-elements/duet-tooltip-button.js +1 -1
  204. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  205. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  206. package/lib/dist-custom-elements/duet-tray.js +4 -4
  207. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  208. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  209. package/lib/dist-custom-elements/duet-upload.js +68 -19
  210. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  211. package/lib/dist-custom-elements/index.js +1 -1
  212. package/lib/dist-custom-elements/p-03e1643a.js +195 -0
  213. package/lib/dist-custom-elements/{p-22530bf0.js → p-0bff5208.js} +1 -1
  214. package/lib/dist-custom-elements/{p-c5d64549.js → p-1a2ca780.js} +10 -10
  215. package/lib/dist-custom-elements/{p-bb06c3ac.js → p-1f275a30.js} +2 -2
  216. package/lib/dist-custom-elements/{p-04a28e53.js → p-20675093.js} +2 -2
  217. package/lib/dist-custom-elements/{p-cbac9ed5.js → p-2807b16f.js} +1 -1
  218. package/lib/dist-custom-elements/{p-c7bbc1bd.js → p-2d18f2ff.js} +2 -2
  219. package/lib/dist-custom-elements/{p-9b8fa220.js → p-2e754a46.js} +2 -2
  220. package/lib/dist-custom-elements/{p-d37a3cec.js → p-2f3ee599.js} +2 -0
  221. package/lib/dist-custom-elements/{p-ea4b4bbb.js → p-3db8a54a.js} +2 -2
  222. package/lib/dist-custom-elements/{p-34f86ab2.js → p-3ff6fd48.js} +1 -1
  223. package/lib/dist-custom-elements/{p-2103fc77.js → p-42b04d28.js} +1 -1
  224. package/lib/dist-custom-elements/{p-3da9e71c.js → p-4de7a2a2.js} +5 -5
  225. package/lib/dist-custom-elements/{p-b7f8263a.js → p-51eec445.js} +2 -2
  226. package/lib/dist-custom-elements/{p-6a2c4e3a.js → p-589b472b.js} +6 -6
  227. package/lib/dist-custom-elements/{p-4da748b2.js → p-73334255.js} +1 -1
  228. package/lib/dist-custom-elements/p-80939c89.js +76 -0
  229. package/lib/dist-custom-elements/p-8855e26a.js +8 -0
  230. package/lib/dist-custom-elements/{p-09ac88f3.js → p-8fed8d20.js} +3 -3
  231. package/lib/dist-custom-elements/{p-252800e5.js → p-900d6d8f.js} +1 -1
  232. package/lib/dist-custom-elements/{p-29282584.js → p-90196337.js} +1 -1
  233. package/lib/dist-custom-elements/{p-3e7280f6.js → p-aad10747.js} +8 -8
  234. package/lib/dist-custom-elements/{p-c8659f64.js → p-abf479dc.js} +3 -3
  235. package/lib/dist-custom-elements/{p-f79a36ee.js → p-af8298ea.js} +1 -1
  236. package/lib/dist-custom-elements/{p-e6920cf3.js → p-b88a191b.js} +2 -2
  237. package/lib/dist-custom-elements/{p-010b0059.js → p-bab22149.js} +4 -4
  238. package/lib/dist-custom-elements/{p-44cdc06d.js → p-bbf96d07.js} +2 -2
  239. package/lib/dist-custom-elements/{p-8d2fe91f.js → p-bc13b982.js} +10 -10
  240. package/lib/dist-custom-elements/{p-613dba69.js → p-ccdcae7e.js} +5 -5
  241. package/lib/dist-custom-elements/{p-a225fccd.js → p-cd17adee.js} +5 -5
  242. package/lib/dist-custom-elements/{p-c7343af9.js → p-ce95ed21.js} +2 -2
  243. package/lib/dist-custom-elements/{p-3fa35111.js → p-d2a5748f.js} +2 -2
  244. package/lib/dist-custom-elements/{p-d0cf13fd.js → p-db1f5f99.js} +1 -1
  245. package/lib/dist-custom-elements/{p-d9f82ff4.js → p-e2372337.js} +1 -1
  246. package/lib/dist-custom-elements/{p-d940c692.js → p-ecad7dde.js} +2 -2
  247. package/lib/{esm/tokens-30d01e1d.js → dist-custom-elements/p-ed995372.js} +3 -0
  248. package/lib/dist-custom-elements/{p-8af17456.js → p-f36ef263.js} +1 -1
  249. package/lib/dist-custom-elements/{p-cd25ec2f.js → p-fbccb31a.js} +2 -2
  250. package/lib/dist-custom-elements/{p-101df5e0.js → p-ff7cd52f.js} +2 -2
  251. package/lib/duet/duet.esm.js +1 -1
  252. package/lib/duet/duet.js +1 -1
  253. package/lib/duet/{p-1e3a9599.system.entry.js → p-03967390.system.entry.js} +1 -1
  254. package/lib/duet/{p-f2aa1623.js → p-03f6f09a.js} +1 -1
  255. package/lib/duet/{p-80ab419c.entry.js → p-076900c7.entry.js} +1 -1
  256. package/lib/duet/{p-17130b15.system.entry.js → p-081dddef.system.entry.js} +1 -1
  257. package/lib/duet/{p-85695c74.entry.js → p-0890b5c0.entry.js} +1 -1
  258. package/lib/duet/{p-0b80e74d.system.entry.js → p-08ce2eeb.system.entry.js} +1 -1
  259. package/lib/duet/{p-0cfba791.entry.js → p-0a829741.entry.js} +1 -1
  260. package/lib/duet/p-0aacfef8.system.entry.js +4 -0
  261. package/lib/duet/{p-88f9880c.system.entry.js → p-0b90d38a.system.entry.js} +1 -1
  262. package/lib/duet/{p-f7dc3756.system.entry.js → p-0c4e9ba0.system.entry.js} +1 -1
  263. package/lib/duet/{p-f63c4cea.system.entry.js → p-0e5b33be.system.entry.js} +1 -1
  264. package/lib/duet/{p-44dd3f6b.entry.js → p-136b8e2e.entry.js} +1 -1
  265. package/lib/duet/{p-1b32fc71.system.entry.js → p-14b542d3.system.entry.js} +1 -1
  266. package/lib/duet/{p-18b21092.system.entry.js → p-1b8466a0.system.entry.js} +1 -1
  267. package/lib/duet/{p-29e18bae.entry.js → p-1cab6059.entry.js} +1 -1
  268. package/lib/duet/{p-6aaaa6e6.system.entry.js → p-1d61dcf4.system.entry.js} +1 -1
  269. package/lib/duet/{p-bb134fb0.entry.js → p-1dea0116.entry.js} +1 -1
  270. package/lib/duet/{p-2765967c.entry.js → p-25d270e9.entry.js} +1 -1
  271. package/lib/duet/{p-098dcfbc.system.entry.js → p-269a2b16.system.entry.js} +1 -1
  272. package/lib/duet/p-26d669aa.entry.js +4 -0
  273. package/lib/duet/{p-2a594105.system.entry.js → p-27e6e785.system.entry.js} +1 -1
  274. package/lib/duet/{p-3266adc5.entry.js → p-2ddf153d.entry.js} +1 -1
  275. package/lib/duet/{p-56c12a47.system.entry.js → p-2e7c6c53.system.entry.js} +1 -1
  276. package/lib/duet/{p-46efd28d.system.entry.js → p-2e7db6e1.system.entry.js} +1 -1
  277. package/lib/duet/{p-d79938f5.entry.js → p-2f349bb9.entry.js} +1 -1
  278. package/lib/duet/{p-bc715683.entry.js → p-316610c1.entry.js} +1 -1
  279. package/lib/duet/{p-7a79672d.system.entry.js → p-33fe642a.system.entry.js} +1 -1
  280. package/lib/duet/{p-3d74d9ba.system.entry.js → p-3539c6d4.system.entry.js} +1 -1
  281. package/lib/duet/{p-7ad16b5f.entry.js → p-3691e86f.entry.js} +1 -1
  282. package/lib/duet/p-37895b24.entry.js +4 -0
  283. package/lib/duet/{p-ebc5c075.entry.js → p-37c36dca.entry.js} +1 -1
  284. package/lib/duet/{p-9dd9783c.entry.js → p-3dc29f91.entry.js} +1 -1
  285. package/lib/duet/{p-f102b3c6.system.entry.js → p-3e9236bb.system.entry.js} +1 -1
  286. package/lib/duet/p-3f7c8cee.entry.js +4 -0
  287. package/lib/duet/{p-34eeb826.entry.js → p-40839797.entry.js} +1 -1
  288. package/lib/duet/{p-4219a6cc.system.entry.js → p-41207875.system.entry.js} +1 -1
  289. package/lib/duet/{p-abdbce02.system.js → p-41ba30b7.system.js} +1 -1
  290. package/lib/duet/p-41bbd59c.system.entry.js +4 -0
  291. package/lib/duet/{p-a25a5bda.entry.js → p-42aa1a1a.entry.js} +1 -1
  292. package/lib/duet/{p-4dc1f780.system.entry.js → p-443fc685.system.entry.js} +1 -1
  293. package/lib/duet/{p-7ac66521.entry.js → p-44e139b4.entry.js} +1 -1
  294. package/lib/duet/{p-99528b33.system.entry.js → p-45a051e1.system.entry.js} +1 -1
  295. package/lib/duet/{p-916c05c0.system.entry.js → p-494a9b5f.system.entry.js} +1 -1
  296. package/lib/duet/{p-9ff8f713.system.entry.js → p-4fe83168.system.entry.js} +1 -1
  297. package/lib/duet/{p-3e86fc2f.entry.js → p-50bf27d5.entry.js} +1 -1
  298. package/lib/duet/{p-be48cfce.system.entry.js → p-5284b60c.system.entry.js} +1 -1
  299. package/lib/duet/p-52e38899.system.js +4 -0
  300. package/lib/duet/{p-1a2ff25f.system.entry.js → p-549b9ade.system.entry.js} +1 -1
  301. package/lib/duet/{p-d1acd619.entry.js → p-5b564bef.entry.js} +1 -1
  302. package/lib/duet/{p-e066623e.system.entry.js → p-5bf253d5.system.entry.js} +1 -1
  303. package/lib/duet/{p-39b31261.entry.js → p-5c405e9d.entry.js} +1 -1
  304. package/lib/duet/{p-2c1f79ac.system.entry.js → p-5d261ccd.system.entry.js} +1 -1
  305. package/lib/duet/{p-01a3e3f8.entry.js → p-603732bf.entry.js} +1 -1
  306. package/lib/duet/{p-cacd3719.entry.js → p-60af0a8a.entry.js} +1 -1
  307. package/lib/duet/p-650a419d.system.js +4 -0
  308. package/lib/duet/p-6532401b.system.js +4 -0
  309. package/lib/duet/{p-f0233912.entry.js → p-6671ca35.entry.js} +1 -1
  310. package/lib/duet/{p-849e68d1.entry.js → p-66e17c2e.entry.js} +1 -1
  311. package/lib/duet/{p-7df9ed1a.system.entry.js → p-68d16a03.system.entry.js} +1 -1
  312. package/lib/duet/{p-d915620f.entry.js → p-6a1594c9.entry.js} +1 -1
  313. package/lib/duet/{p-4999bd59.entry.js → p-6c4a8d82.entry.js} +1 -1
  314. package/lib/duet/{p-e45c589a.js → p-6df2b029.js} +1 -1
  315. package/lib/duet/{p-e4206eb5.system.entry.js → p-6e43a469.system.entry.js} +1 -1
  316. package/lib/duet/p-6f6318f0.system.entry.js +4 -0
  317. package/lib/duet/{p-977832d7.entry.js → p-6ffcfe0b.entry.js} +1 -1
  318. package/lib/duet/{p-a82cd36e.system.entry.js → p-704238cb.system.entry.js} +1 -1
  319. package/lib/duet/{p-142fffe3.system.entry.js → p-77671d1f.system.entry.js} +1 -1
  320. package/lib/duet/p-7767eb78.entry.js +4 -0
  321. package/lib/duet/{p-5f87ea3d.js → p-7a66b632.js} +1 -1
  322. package/lib/duet/{p-ef3fb30c.entry.js → p-7e31ec95.entry.js} +1 -1
  323. package/lib/duet/p-82373c91.system.entry.js +4 -0
  324. package/lib/duet/{p-8ad68512.entry.js → p-82567378.entry.js} +1 -1
  325. package/lib/duet/{p-8814dca5.system.entry.js → p-827998c8.system.entry.js} +1 -1
  326. package/lib/duet/{p-d40d6372.system.entry.js → p-845f9c74.system.entry.js} +1 -1
  327. package/lib/duet/p-861a1b8d.system.entry.js +4 -0
  328. package/lib/duet/{p-d2fff81e.system.entry.js → p-86a77667.system.entry.js} +1 -1
  329. package/lib/duet/p-8855e26a.js +4 -0
  330. package/lib/duet/p-894d217b.system.entry.js +4 -0
  331. package/lib/duet/{p-22d2d468.system.entry.js → p-8b32c948.system.entry.js} +1 -1
  332. package/lib/duet/{p-580aed81.system.entry.js → p-8bda35d1.system.entry.js} +2 -2
  333. package/lib/duet/{p-d5e31ef5.entry.js → p-8bdd5287.entry.js} +1 -1
  334. package/lib/duet/{p-c1502939.system.entry.js → p-8c49cec4.system.entry.js} +1 -1
  335. package/lib/duet/{p-97574cd9.entry.js → p-8cd2f57c.entry.js} +1 -1
  336. package/lib/duet/{p-c946fab0.entry.js → p-8d0ecf93.entry.js} +1 -1
  337. package/lib/duet/{p-2f82c4d4.entry.js → p-8d2535f8.entry.js} +1 -1
  338. package/lib/duet/{p-660c33d4.system.entry.js → p-8d26b1e6.system.entry.js} +1 -1
  339. package/lib/duet/{p-1d7f59a7.entry.js → p-8deda08c.entry.js} +1 -1
  340. package/lib/duet/{p-5ea4fe7b.system.entry.js → p-8f9cae27.system.entry.js} +1 -1
  341. package/lib/duet/{p-611fc71b.system.entry.js → p-921ef4d5.system.entry.js} +1 -1
  342. package/lib/duet/{p-c8405ffe.entry.js → p-938c4499.entry.js} +1 -1
  343. package/lib/duet/{p-01bf6506.entry.js → p-939b613a.entry.js} +1 -1
  344. package/lib/duet/{p-fa9802a4.entry.js → p-941f11ef.entry.js} +1 -1
  345. package/lib/duet/{p-8606a8a4.system.entry.js → p-954bbc13.system.entry.js} +1 -1
  346. package/lib/duet/{p-d9cbeb06.system.entry.js → p-971eee71.system.entry.js} +1 -1
  347. package/lib/duet/{p-6b9228dd.entry.js → p-98fc2930.entry.js} +1 -1
  348. package/lib/duet/{p-029e0713.system.entry.js → p-9bfd0313.system.entry.js} +1 -1
  349. package/lib/duet/{p-30a6959f.entry.js → p-9c1a6a86.entry.js} +1 -1
  350. package/lib/duet/{p-e9a89efc.system.entry.js → p-9d6d2893.system.entry.js} +1 -1
  351. package/lib/duet/{p-0995d4db.entry.js → p-9d8a5815.entry.js} +1 -1
  352. package/lib/duet/p-9dda3bc2.system.js +4 -0
  353. package/lib/duet/{p-3a93f309.entry.js → p-9f2d6c10.entry.js} +1 -1
  354. package/lib/duet/{p-ee3003f9.system.entry.js → p-a042ea41.system.entry.js} +1 -1
  355. package/lib/duet/{p-9bfa5c62.entry.js → p-a04d8c4c.entry.js} +1 -1
  356. package/lib/duet/{p-e2d770ba.entry.js → p-a3d254ab.entry.js} +1 -1
  357. package/lib/duet/{p-543bc859.entry.js → p-a4514e57.entry.js} +1 -1
  358. package/lib/duet/p-a46b4450.system.js +4 -0
  359. package/lib/duet/p-a54e7c7e.entry.js +4 -0
  360. package/lib/duet/p-a77adbe3.entry.js +4 -0
  361. package/lib/duet/{p-b9fe5e8a.entry.js → p-a7b75dab.entry.js} +1 -1
  362. package/lib/duet/{p-876f9b62.entry.js → p-a810bcad.entry.js} +1 -1
  363. package/lib/duet/p-a87cbd61.system.entry.js +4 -0
  364. package/lib/duet/{p-2e53172a.system.entry.js → p-a8f13005.system.entry.js} +1 -1
  365. package/lib/duet/{p-c782fbd2.system.entry.js → p-a96b1223.system.entry.js} +1 -1
  366. package/lib/duet/{p-04e058bc.system.entry.js → p-aa562b2b.system.entry.js} +1 -1
  367. package/lib/duet/{p-98f8ad8c.system.entry.js → p-ab16108e.system.entry.js} +1 -1
  368. package/lib/duet/{p-a7e7dc8e.entry.js → p-ae0fcb13.entry.js} +1 -1
  369. package/lib/duet/{p-bee1c0ab.system.entry.js → p-afdd39e7.system.entry.js} +1 -1
  370. package/lib/duet/{p-0f33db5a.system.entry.js → p-b12162bf.system.entry.js} +1 -1
  371. package/lib/duet/p-b34190f3.entry.js +4 -0
  372. package/lib/duet/{p-aaa9d7f0.entry.js → p-b3586087.entry.js} +1 -1
  373. package/lib/duet/{p-ba1d9ad1.entry.js → p-b3cf64e0.entry.js} +1 -1
  374. package/lib/duet/{p-19348034.entry.js → p-b4809f6d.entry.js} +1 -1
  375. package/lib/duet/p-b883eda2.entry.js +4 -0
  376. package/lib/duet/{p-473f2aeb.entry.js → p-ba1752b1.entry.js} +1 -1
  377. package/lib/duet/{p-0f9796d8.entry.js → p-ba68b3df.entry.js} +1 -1
  378. package/lib/duet/{p-deb7a598.system.entry.js → p-bce20014.system.entry.js} +1 -1
  379. package/lib/duet/{p-3736f46a.system.entry.js → p-bd27dd27.system.entry.js} +1 -1
  380. package/lib/duet/{p-8cf21e97.system.entry.js → p-be77d17f.system.entry.js} +1 -1
  381. package/lib/duet/{p-f598c39f.entry.js → p-c219a16b.entry.js} +1 -1
  382. package/lib/duet/{p-091d343c.system.entry.js → p-c3d82842.system.entry.js} +1 -1
  383. package/lib/duet/{p-389ec8d1.entry.js → p-c67314ae.entry.js} +1 -1
  384. package/lib/duet/{p-afa55acc.entry.js → p-c7c8abe1.entry.js} +1 -1
  385. package/lib/duet/{p-88f72255.system.entry.js → p-c7d56cc4.system.entry.js} +1 -1
  386. package/lib/duet/{p-1bf2c055.entry.js → p-caf0c325.entry.js} +1 -1
  387. package/lib/duet/p-cb3e8ad9.entry.js +4 -0
  388. package/lib/duet/{p-0806aac6.system.entry.js → p-cbd66aa3.system.entry.js} +1 -1
  389. package/lib/duet/{p-f624f421.system.entry.js → p-cd67d8d8.system.entry.js} +1 -1
  390. package/lib/duet/{p-67af148d.entry.js → p-cf2203ec.entry.js} +1 -1
  391. package/lib/duet/{p-f441c24f.system.entry.js → p-cf7b1662.system.entry.js} +1 -1
  392. package/lib/duet/{p-f3bcdaa7.system.entry.js → p-d00e94e9.system.entry.js} +1 -1
  393. package/lib/duet/{p-a8b99baa.system.entry.js → p-d21af276.system.entry.js} +1 -1
  394. package/lib/duet/{p-16669185.entry.js → p-d253fa0b.entry.js} +1 -1
  395. package/lib/duet/{p-31322a2c.system.entry.js → p-d371834d.system.entry.js} +1 -1
  396. package/lib/duet/{p-205c1d86.entry.js → p-d3a82468.entry.js} +1 -1
  397. package/lib/duet/{p-7b220ee3.system.entry.js → p-d4d3270a.system.entry.js} +1 -1
  398. package/lib/duet/{p-4128d086.entry.js → p-d67a1a14.entry.js} +1 -1
  399. package/lib/duet/{p-da899a00.entry.js → p-d9133471.entry.js} +1 -1
  400. package/lib/duet/{p-9fa80a0d.entry.js → p-d920541e.entry.js} +1 -1
  401. package/lib/duet/{p-3b930917.system.entry.js → p-d98f2243.system.entry.js} +1 -1
  402. package/lib/duet/p-d9fa1de5.entry.js +4 -0
  403. package/lib/duet/{p-f8ce87ee.system.entry.js → p-da7dd944.system.entry.js} +1 -1
  404. package/lib/duet/{p-d5366eb5.system.entry.js → p-db4560bb.system.entry.js} +1 -1
  405. package/lib/duet/{p-778af8b7.system.entry.js → p-dbe44c6e.system.entry.js} +1 -1
  406. package/lib/duet/{p-f24be27e.system.entry.js → p-dc4a54ff.system.entry.js} +1 -1
  407. package/lib/duet/{p-83d69e66.system.entry.js → p-dd8c88cb.system.entry.js} +1 -1
  408. package/lib/duet/{p-7e7d991d.entry.js → p-dfa902a8.entry.js} +1 -1
  409. package/lib/duet/{p-76d99102.system.entry.js → p-e29ffcf8.system.entry.js} +1 -1
  410. package/lib/duet/p-e4ecfdde.entry.js +4 -0
  411. package/lib/duet/{p-b6168b5a.system.entry.js → p-e711b385.system.entry.js} +1 -1
  412. package/lib/duet/{p-5e396e57.system.entry.js → p-e8e30a8e.system.entry.js} +1 -1
  413. package/lib/duet/{p-0ad0dc08.entry.js → p-ea4e0dd6.entry.js} +1 -1
  414. package/lib/duet/{p-4ebf7879.entry.js → p-eaa50dc0.entry.js} +1 -1
  415. package/lib/duet/p-ed995372.js +4 -0
  416. package/lib/duet/{p-ae31c909.system.js → p-ee38815c.system.js} +1 -1
  417. package/lib/duet/{p-904b6f63.entry.js → p-f13b5365.entry.js} +1 -1
  418. package/lib/duet/{p-29d5a763.system.entry.js → p-f201356b.system.entry.js} +1 -1
  419. package/lib/duet/{p-3c47cc95.entry.js → p-f42838e7.entry.js} +1 -1
  420. package/lib/duet/{p-665cd245.system.entry.js → p-f4930436.system.entry.js} +1 -1
  421. package/lib/duet/{p-bef5842c.entry.js → p-f7640a53.entry.js} +1 -1
  422. package/lib/duet/{p-93872497.js → p-f8614750.js} +1 -1
  423. package/lib/duet/p-f9e4277a.entry.js +4 -0
  424. package/lib/duet/{p-51f24687.system.entry.js → p-f9ff3511.system.entry.js} +1 -1
  425. package/lib/duet/{p-841e2acc.entry.js → p-fc7bdc0c.entry.js} +1 -1
  426. package/lib/duet/p-fe22728e.system.entry.js +4 -0
  427. package/lib/duet/{p-2bfe2f51.entry.js → p-fe99e5e9.entry.js} +1 -1
  428. package/lib/esm/action-new-window-9c8f7830.js +8 -0
  429. package/lib/esm/duet-action-button.entry.js +3 -3
  430. package/lib/esm/duet-alert.entry.js +1 -1
  431. package/lib/esm/duet-badge.entry.js +1 -1
  432. package/lib/esm/duet-banner.entry.js +8 -7
  433. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  434. package/lib/esm/duet-breadcrumbs.entry.js +3 -3
  435. package/lib/esm/duet-button_2.entry.js +3 -3
  436. package/lib/esm/duet-callout.entry.js +1 -1
  437. package/lib/esm/duet-caption_4.entry.js +45 -21
  438. package/lib/esm/duet-card.entry.js +3 -3
  439. package/lib/esm/duet-checkbox.entry.js +1 -1
  440. package/lib/esm/duet-checkmark.entry.js +1 -1
  441. package/lib/esm/duet-chip.entry.js +1 -1
  442. package/lib/esm/duet-choice_2.entry.js +2 -2
  443. package/lib/esm/duet-collapsible.entry.js +2 -2
  444. package/lib/esm/duet-combobox.entry.js +1 -1
  445. package/lib/esm/duet-contact-card.entry.js +1 -1
  446. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  447. package/lib/esm/duet-date-picker.entry.js +4 -4
  448. package/lib/esm/duet-divider_2.entry.js +3 -3
  449. package/lib/esm/duet-editable-table_3.entry.js +52 -4
  450. package/lib/esm/duet-empty-state.entry.js +1 -1
  451. package/lib/esm/duet-fieldset.entry.js +1 -1
  452. package/lib/esm/duet-file-chooser.entry.js +1 -1
  453. package/lib/esm/duet-footer.entry.js +2 -4
  454. package/lib/esm/duet-grid_2.entry.js +2 -2
  455. package/lib/esm/duet-header_2.entry.js +3 -3
  456. package/lib/esm/duet-hero.entry.js +1 -1
  457. package/lib/esm/duet-icon.entry.js +3 -3
  458. package/lib/esm/duet-input_2.entry.js +3 -3
  459. package/lib/esm/duet-layout.entry.js +1 -1
  460. package/lib/esm/duet-list_2.entry.js +1 -1
  461. package/lib/esm/duet-menu-bar-button.entry.js +2 -2
  462. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +1 -1
  463. package/lib/esm/duet-menu-bar-dropdown.entry.js +2 -2
  464. package/lib/esm/duet-menu-bar-item.entry.js +2 -2
  465. package/lib/esm/duet-menu-bar-link.entry.js +2 -2
  466. package/lib/esm/duet-menu-bar.entry.js +2 -2
  467. package/lib/esm/duet-modal.entry.js +6 -6
  468. package/lib/esm/duet-multiselect.entry.js +1 -1
  469. package/lib/esm/duet-nav.entry.js +1 -1
  470. package/lib/esm/duet-notification_2.entry.js +1 -1
  471. package/lib/esm/duet-number-input.entry.js +1 -1
  472. package/lib/esm/duet-overlay.entry.js +53 -0
  473. package/lib/esm/duet-page-heading.entry.js +1 -1
  474. package/lib/esm/duet-pagination_2.entry.js +4 -4
  475. package/lib/esm/duet-popup-menu-item.entry.js +1 -1
  476. package/lib/esm/duet-popup-menu.entry.js +8 -3
  477. package/lib/esm/duet-progress.entry.js +1 -1
  478. package/lib/esm/duet-promo-card.entry.js +3 -3
  479. package/lib/esm/duet-radio_2.entry.js +1 -1
  480. package/lib/esm/duet-range-slider.entry.js +2 -2
  481. package/lib/esm/duet-scrollable_3.entry.js +3 -3
  482. package/lib/esm/duet-section-layout.entry.js +1 -1
  483. package/lib/esm/duet-select.entry.js +1 -1
  484. package/lib/esm/duet-shaped-image.entry.js +1 -1
  485. package/lib/esm/duet-show-more.entry.js +1 -1
  486. package/lib/esm/duet-slideout-lang.entry.js +1 -1
  487. package/lib/esm/duet-slideout-link.entry.js +1 -1
  488. package/lib/esm/duet-slideout-panel-dropdown.entry.js +1 -1
  489. package/lib/esm/duet-slideout-panel.entry.js +4 -4
  490. package/lib/esm/duet-slideout.entry.js +6 -9
  491. package/lib/esm/duet-step_2.entry.js +1 -1
  492. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +1 -1
  493. package/lib/esm/duet-submenu-bar-dropdown.entry.js +2 -2
  494. package/lib/esm/duet-submenu-bar-item.entry.js +2 -2
  495. package/lib/esm/duet-submenu-bar-link.entry.js +2 -2
  496. package/lib/esm/duet-submenu-bar.entry.js +7 -6
  497. package/lib/esm/duet-textarea.entry.js +1 -1
  498. package/lib/esm/duet-toggle.entry.js +1 -1
  499. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  500. package/lib/esm/duet-toolbar-dropdown.entry.js +1 -1
  501. package/lib/esm/duet-toolbar-item.entry.js +1 -1
  502. package/lib/esm/duet-toolbar-link.entry.js +1 -1
  503. package/lib/esm/duet-toolbar.entry.js +1 -1
  504. package/lib/esm/duet-tooltip-button_2.entry.js +2 -2
  505. package/lib/esm/duet-tooltip.entry.js +2 -2
  506. package/lib/esm/duet-tray.entry.js +2 -2
  507. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  508. package/lib/esm/duet-upload-item.entry.js +1 -1
  509. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  510. package/lib/esm/duet.js +3 -3
  511. package/lib/esm/{focus-utils-68697c1f.js → focus-utils-03349cd9.js} +1 -1
  512. package/lib/esm/{index-090eaa9b.js → index-692029e8.js} +1 -1
  513. package/lib/esm/loader.js +3 -3
  514. package/lib/esm/{token-utils-0c77cb3c.js → token-utils-be83d039.js} +1 -1
  515. package/lib/{dist-custom-elements/p-d81ec707.js → esm/tokens-94133fa9.js} +3 -0
  516. package/lib/esm/{tokens.module-c9866649.js → tokens.module-3547915d.js} +2 -0
  517. package/lib/esm-es5/action-new-window-9c8f7830.js +4 -0
  518. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  519. package/lib/esm-es5/duet-alert.entry.js +1 -1
  520. package/lib/esm-es5/duet-badge.entry.js +1 -1
  521. package/lib/esm-es5/duet-banner.entry.js +1 -1
  522. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  523. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  524. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  525. package/lib/esm-es5/duet-callout.entry.js +1 -1
  526. package/lib/esm-es5/duet-caption_4.entry.js +2 -2
  527. package/lib/esm-es5/duet-card.entry.js +1 -1
  528. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  529. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  530. package/lib/esm-es5/duet-chip.entry.js +1 -1
  531. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  532. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  533. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  534. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  535. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  536. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  537. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  538. package/lib/esm-es5/duet-editable-table_3.entry.js +2 -2
  539. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  540. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  541. package/lib/esm-es5/duet-file-chooser.entry.js +1 -1
  542. package/lib/esm-es5/duet-footer.entry.js +1 -1
  543. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  544. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  545. package/lib/esm-es5/duet-hero.entry.js +1 -1
  546. package/lib/esm-es5/duet-icon.entry.js +1 -1
  547. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  548. package/lib/esm-es5/duet-layout.entry.js +1 -1
  549. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  550. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  551. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  552. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +2 -2
  553. package/lib/esm-es5/duet-menu-bar-item.entry.js +1 -1
  554. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  555. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  556. package/lib/esm-es5/duet-modal.entry.js +1 -1
  557. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  558. package/lib/esm-es5/duet-nav.entry.js +1 -1
  559. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  560. package/lib/esm-es5/duet-number-input.entry.js +2 -2
  561. package/lib/esm-es5/duet-overlay.entry.js +4 -0
  562. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  563. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  564. package/lib/esm-es5/duet-popup-menu-item.entry.js +1 -1
  565. package/lib/esm-es5/duet-popup-menu.entry.js +1 -1
  566. package/lib/esm-es5/duet-progress.entry.js +1 -1
  567. package/lib/esm-es5/duet-promo-card.entry.js +2 -2
  568. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  569. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  570. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  571. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  572. package/lib/esm-es5/duet-select.entry.js +1 -1
  573. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  574. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  575. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  576. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  577. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  578. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  579. package/lib/esm-es5/duet-slideout.entry.js +1 -1
  580. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  581. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  582. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  583. package/lib/esm-es5/duet-submenu-bar-item.entry.js +1 -1
  584. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  585. package/lib/esm-es5/duet-submenu-bar.entry.js +2 -2
  586. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  587. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  588. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  589. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  590. package/lib/esm-es5/duet-toolbar-item.entry.js +1 -1
  591. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  592. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  593. package/lib/esm-es5/duet-tooltip-button_2.entry.js +1 -1
  594. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  595. package/lib/esm-es5/duet-tray.entry.js +1 -1
  596. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  597. package/lib/esm-es5/duet-upload-item.entry.js +1 -1
  598. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  599. package/lib/esm-es5/duet.js +1 -1
  600. package/lib/esm-es5/{focus-utils-68697c1f.js → focus-utils-03349cd9.js} +1 -1
  601. package/lib/esm-es5/{index-090eaa9b.js → index-692029e8.js} +1 -1
  602. package/lib/esm-es5/loader.js +1 -1
  603. package/lib/esm-es5/{token-utils-0c77cb3c.js → token-utils-be83d039.js} +1 -1
  604. package/lib/esm-es5/tokens-94133fa9.js +4 -0
  605. package/lib/esm-es5/tokens.module-3547915d.js +4 -0
  606. package/lib/types/common-types.d.ts +1 -1
  607. package/lib/types/components/duet-link/duet-link.d.ts +13 -5
  608. package/lib/types/components/duet-overlay/duet-overlay.d.ts +47 -0
  609. package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +4 -0
  610. package/lib/types/components/duet-upload/duet-upload.d.ts +7 -0
  611. package/lib/types/components.d.ts +99 -4
  612. package/lib/types/utils/string-utils.d.ts +4 -0
  613. package/package.json +5 -5
  614. package/lib/cjs/action-arrow-right-24fe06be.js +0 -8
  615. package/lib/dist-custom-elements/p-3a2a46d4.js +0 -169
  616. package/lib/dist-custom-elements/p-6fa39608.js +0 -6
  617. package/lib/duet/p-02833fe6.system.entry.js +0 -4
  618. package/lib/duet/p-15fde8cc.system.js +0 -4
  619. package/lib/duet/p-41faac57.entry.js +0 -4
  620. package/lib/duet/p-4e22efae.entry.js +0 -4
  621. package/lib/duet/p-57a3bf19.entry.js +0 -4
  622. package/lib/duet/p-682cc430.system.entry.js +0 -4
  623. package/lib/duet/p-6fa39608.js +0 -4
  624. package/lib/duet/p-71fc3743.entry.js +0 -4
  625. package/lib/duet/p-720b866c.entry.js +0 -4
  626. package/lib/duet/p-81a240d4.entry.js +0 -4
  627. package/lib/duet/p-89beef33.entry.js +0 -4
  628. package/lib/duet/p-8c6521c9.entry.js +0 -4
  629. package/lib/duet/p-9ce7e4da.entry.js +0 -4
  630. package/lib/duet/p-9d3ff1f9.entry.js +0 -4
  631. package/lib/duet/p-b9678b20.system.entry.js +0 -4
  632. package/lib/duet/p-c746fdd9.system.entry.js +0 -4
  633. package/lib/duet/p-d1a08c91.system.entry.js +0 -4
  634. package/lib/duet/p-d81ec707.js +0 -4
  635. package/lib/duet/p-dd994793.system.js +0 -4
  636. package/lib/duet/p-dfedf8dc.system.entry.js +0 -4
  637. package/lib/duet/p-e1868c94.system.js +0 -4
  638. package/lib/duet/p-e56fe6af.system.js +0 -4
  639. package/lib/duet/p-e94af0bf.entry.js +0 -4
  640. package/lib/duet/p-f2eee8be.system.entry.js +0 -4
  641. package/lib/duet/p-f65457b0.system.js +0 -4
  642. package/lib/esm/action-arrow-right-f7d56681.js +0 -6
  643. package/lib/esm-es5/action-arrow-right-f7d56681.js +0 -4
  644. package/lib/esm-es5/tokens-30d01e1d.js +0 -4
  645. package/lib/esm-es5/tokens.module-c9866649.js +0 -4
package/hydrate/index.js CHANGED
@@ -7930,6 +7930,7 @@ const fontSizeXSmall = "0.75rem";
7930
7930
  const radiusSharp = "0";
7931
7931
  const radiusDefault = "4px";
7932
7932
  const radiusMedium = "8px";
7933
+ const radiusIntermediate = "12px";
7933
7934
  const radiusLarge = "16px";
7934
7935
  const radiusCircle = "50%";
7935
7936
  const radiusPill = "20rem";
@@ -8093,6 +8094,7 @@ var tokens$2 = /*#__PURE__*/Object.freeze({
8093
8094
  radiusSharp: radiusSharp,
8094
8095
  radiusDefault: radiusDefault,
8095
8096
  radiusMedium: radiusMedium,
8097
+ radiusIntermediate: radiusIntermediate,
8096
8098
  radiusLarge: radiusLarge,
8097
8099
  radiusCircle: radiusCircle,
8098
8100
  radiusPill: radiusPill,
@@ -8737,10 +8739,11 @@ class DuetBanner {
8737
8739
  */
8738
8740
  this.setButtonSize = () => {
8739
8741
  if (this.hasActionSlot) {
8740
- console.log(this.size);
8741
- const button = this.element.querySelector("duet-button[slot='action']");
8742
- if (button.getAttribute("size") === null && this.size !== "large") {
8743
- button.size = "small";
8742
+ const buttons = this.element.querySelectorAll("[slot='action'] duet-button, duet-button[slot='action']");
8743
+ for (const button of buttons) {
8744
+ if (button && button.getAttribute("size") === null && this.size !== "large") {
8745
+ button.size = "small";
8746
+ }
8744
8747
  }
8745
8748
  }
8746
8749
  };
@@ -10439,6 +10442,7 @@ const font_size_x_small = "0.75rem";
10439
10442
  const radius_sharp = "0";
10440
10443
  const radius_default = "4px";
10441
10444
  const radius_medium = "8px";
10445
+ const radius_intermediate = "12px";
10442
10446
  const radius_large = "16px";
10443
10447
  const radius_circle = "50%";
10444
10448
  const radius_pill = "20rem";
@@ -10600,6 +10604,7 @@ var tokens = {
10600
10604
  radius_sharp: radius_sharp,
10601
10605
  radius_default: radius_default,
10602
10606
  radius_medium: radius_medium,
10607
+ radius_intermediate: radius_intermediate,
10603
10608
  radius_large: radius_large,
10604
10609
  radius_circle: radius_circle,
10605
10610
  radius_pill: radius_pill,
@@ -10764,6 +10769,7 @@ var tokens$1 = /*#__PURE__*/Object.freeze({
10764
10769
  radius_sharp: radius_sharp,
10765
10770
  radius_default: radius_default,
10766
10771
  radius_medium: radius_medium,
10772
+ radius_intermediate: radius_intermediate,
10767
10773
  radius_large: radius_large,
10768
10774
  radius_circle: radius_circle,
10769
10775
  radius_pill: radius_pill,
@@ -11659,7 +11665,7 @@ function createShortcuts(shortcuts) {
11659
11665
  };
11660
11666
  }
11661
11667
 
11662
- const duetDatePickerCss = "*.sc-duet-date-picker,*.sc-duet-date-picker::after,*.sc-duet-date-picker::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-date-picker-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:16px !important;margin-bottom:12px !important;position:relative;display:inline-flex;width:100%;min-width:calc(33.333% - 8px);max-width:100%;text-align:left;vertical-align:top}.sc-duet-date-picker-h:last-child,.sc-duet-date-picker-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-date-picker-h{width:calc(50% - 16px - 3px)}}.duet-expand.sc-duet-date-picker-h{width:100% !important}.duet-m-0.sc-duet-date-picker-h{margin:0 !important}.duet-date.sc-duet-date-picker{position:relative;width:100%}.duet-date.sc-duet-date-picker button.sc-duet-date-picker,.duet-date-dialog.sc-duet-date-picker button.sc-duet-date-picker{max-width:initial !important;min-height:initial !important;padding:0 !important;margin:0 !important;transition:initial}.duet-date-button.sc-duet-date-picker{-webkit-user-select:none;user-select:none;position:absolute;top:1px;right:1px;z-index:200;display:flex;align-items:center;justify-content:center;width:48px;height:calc(100% - 2px);color:rgb(0, 41, 77);cursor:pointer;background:transparent !important;border-left:1px solid rgb(207, 210, 212) !important;border-radius:0 4px 4px 0 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker{color:rgb(23, 28, 58);border-color:rgb(207, 207, 209)}.duet-date-button.sc-duet-date-picker::before{position:absolute;top:0;left:-6px;width:6px;height:100%;content:\"\";background:linear-gradient(to left, rgba(207, 210, 212, 0.2) 0%, rgba(207, 210, 212, 0.2) 1px, rgba(207, 210, 212, 0.1) 1px, rgba(207, 210, 212, 0) 100%)}.duet-date-button.sc-duet-date-picker:disabled{pointer-events:none;cursor:not-allowed;background:rgb(245, 248, 250) !important;border:0 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker:disabled{background:rgb(245, 245, 247) !important}.duet-date-button.sc-duet-date-picker:disabled::before{display:none}.duet-date-button.sc-duet-date-picker:disabled duet-icon.sc-duet-date-picker{opacity:0.4}.duet-date-button.sc-duet-date-picker duet-icon.sc-duet-date-picker{transform:translateY(-1px)}.duet-date-button.sc-duet-date-picker:active duet-icon.sc-duet-date-picker{transform:translateY(0)}.duet-date-button.sc-duet-date-picker:focus{color:rgb(0, 119, 179);border-color:transparent;outline:0;box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker:focus{color:rgb(23, 28, 58);box-shadow:0 0 0 2px #171c3a !important}.duet-date-dialog.sc-duet-date-picker{position:absolute;top:100%;left:0;z-index:900;display:flex;width:100%;visibility:hidden;opacity:0;transition:transform 300ms ease, opacity 300ms ease, visibility 300ms ease;transform:scale(0.96) translateZ(0) translateY(-20px);transform-origin:top right}@media (min-width: 36em){.duet-date-dialog.left.sc-duet-date-picker{right:0;left:auto;width:auto}}@media (max-width: 35.9375em){.duet-date-dialog.sc-duet-date-picker{position:fixed;top:0;right:0;bottom:0;background:rgba(0, 41, 77, 0.3);transition:opacity 400ms ease, visibility 400ms ease;transform:translateZ(0);transform-origin:bottom center}.duet-date-dialog.duet-theme-turva.sc-duet-date-picker{background:rgba(23, 28, 58, 0.3)}}.duet-date-dialog.active.sc-duet-date-picker{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(0)}@media (min-width: 36em){.duet-date-dialog.error.sc-duet-date-picker{top:calc(100% - 28px);margin-top:4px}}.duet-date-dialog-wrapper.sc-duet-date-picker{position:relative;z-index:600;width:100%;min-width:290px;max-width:310px;padding:16px 16px 20px;margin-top:8px;margin-left:auto;background:rgb(255, 255, 255);border:1px solid rgb(225, 227, 230);border-radius:4px;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);transform:none}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-wrapper.sc-duet-date-picker{border-color:rgb(228, 228, 230)}@media (max-width: 35.9375em){.duet-date-dialog-wrapper.sc-duet-date-picker{position:absolute;bottom:0;left:0;z-index:900;max-width:none;min-height:25em;padding:0 8% 20px;margin:0;visibility:hidden;border:0;border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px;opacity:0;transition:transform 400ms ease, opacity 400ms ease, visibility 400ms ease;transform:translateZ(0) translateY(100%)}.active.sc-duet-date-picker .duet-date-dialog-wrapper.sc-duet-date-picker{visibility:visible;opacity:1;transition-property:transform, opacity;transform:translateZ(0) translateY(0)}}.duet-date-table.sc-duet-date-picker{width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.25;color:rgb(0, 41, 77);text-align:center;border-spacing:0;border-collapse:collapse}.duet-date-table.duet-theme-turva.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-date-table.sc-duet-date-picker th.sc-duet-date-picker{padding-bottom:8px;font-size:0.75rem;font-weight:600;line-height:1.25;text-decoration:none;text-transform:uppercase;letter-spacing:1px}.duet-date-table.sc-duet-date-picker .duet-date-table-cell.sc-duet-date-picker{text-align:center}.duet-date-table-button.sc-duet-date-picker{position:relative;z-index:100;display:inline-block !important;width:36.9230769231px !important;height:36.9230769231px !important;min-height:initial !important;padding:0 !important;margin:0 !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:1.25 !important;color:rgb(0, 41, 77) !important;text-align:center;vertical-align:initial !important;cursor:pointer;background:transparent !important;border-radius:50% !important;transition:initial !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !important;color:rgb(23, 28, 58) !important}.duet-date-table-button.sc-duet-date-picker:hover{background:rgb(230, 242, 248) !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:hover{background:rgb(249, 230, 234) !important}.duet-date-table-button.today.sc-duet-date-picker{z-index:200;color:rgb(0, 77, 128) !important;background:rgb(243, 249, 252) !important;box-shadow:0 0 0 1px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.today.sc-duet-date-picker{color:rgb(148, 9, 37) !important;background:rgb(252, 243, 244) !important;box-shadow:0 0 0 1px #171c3a !important}.duet-date-table-button[aria-pressed=true].sc-duet-date-picker,.duet-date-table-button.sc-duet-date-picker:focus{color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179) !important;outline:0}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button[aria-pressed=true].sc-duet-date-picker,.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:focus{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48) !important}.duet-date-table-button.sc-duet-date-picker:active{z-index:200;color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179) !important;box-shadow:0 0 5px 0 #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:active{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48) !important;box-shadow:0 0 5px 0 #171c3a !important}.duet-date-table-button.sc-duet-date-picker:focus{z-index:200;box-shadow:0 0 5px 0 #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:focus{box-shadow:0 0 5px 0 #171c3a !important}.duet-date-table-button.disabled.sc-duet-date-picker{color:rgb(144, 149, 153) !important;cursor:default;background:transparent !important;box-shadow:none !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.disabled.sc-duet-date-picker{color:rgb(116, 116, 117) !important;background:transparent !important;box-shadow:none !important}.duet-date-table-button.outside.sc-duet-date-picker{color:rgb(144, 149, 153) !important;pointer-events:none;cursor:default;background:rgb(245, 248, 250) !important;box-shadow:none;opacity:0.75}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.outside.sc-duet-date-picker{color:rgb(116, 116, 117);background:rgb(245, 245, 247);box-shadow:none}.duet-date-dialog-header.sc-duet-date-picker{margin-bottom:16px !important;display:flex;align-items:center;justify-content:space-between;width:100%}.duet-date-dialog-buttons.sc-duet-date-picker{white-space:nowrap}.duet-date-dialog-buttons.sc-duet-date-picker .sc-duet-date-picker::part(button){border:0}.duet-date-dialog-select.sc-duet-date-picker{position:relative;display:inline-flex;margin-top:4px}.duet-date-dialog-select.sc-duet-date-picker .duet-date-dialog-select-label.sc-duet-date-picker{position:relative;z-index:1;display:flex;align-items:center;width:100%;padding:0 8px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.25rem;font-weight:600;line-height:1.25;color:rgb(0, 41, 77);pointer-events:none;border-radius:4px}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-select.sc-duet-date-picker .duet-date-dialog-select-label.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-date-dialog-select.sc-duet-date-picker span.sc-duet-date-picker{margin-right:4px}.duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;font-size:1rem;cursor:pointer;opacity:0}.duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker:focus+.duet-date-dialog-select-label.sc-duet-date-picker{box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker:focus+.duet-date-dialog-select-label.sc-duet-date-picker{box-shadow:0 0 0 2px #171c3a !important}.duet-date-dialog-mobile-header.sc-duet-date-picker{position:relative;display:flex;align-items:center;justify-content:space-between;width:120%;padding:12px 20px;margin-bottom:20px;margin-left:-10%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid rgb(207, 210, 212)}@media (min-width: 36em){.duet-date-dialog-mobile-header.sc-duet-date-picker{position:absolute;top:-8px;right:-8px;width:auto;padding:0;margin:0;overflow:visible;border:0}}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-mobile-header.sc-duet-date-picker{border-color:rgb(207, 207, 209)}.duet-date-dialog-mobile-header.sc-duet-date-picker duet-label.sc-duet-date-picker{display:inline-block;max-width:84%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 36em){.duet-date-dialog-mobile-header.sc-duet-date-picker duet-label.sc-duet-date-picker{display:none}}.duet-date-picker-close.sc-duet-date-picker{display:flex;align-items:center;justify-content:center;width:24px;height:24px !important;padding:0 !important;color:rgb(0, 41, 77) !important;cursor:pointer;background:rgb(245, 248, 250) !important;border-radius:50%;-webkit-appearance:none;appearance:none}@media (min-width: 36em){.duet-date-picker-close.sc-duet-date-picker{opacity:0}}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker{background:rgb(245, 245, 247) !important}.duet-date-picker-close.sc-duet-date-picker:hover{background:rgb(245, 248, 250) !important}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker:hover{background:rgb(245, 245, 247) !important}.duet-date-picker-close.sc-duet-date-picker:focus{outline:none;box-shadow:0 0 0 2px #0077b3 !important}@media (min-width: 36em){.duet-date-picker-close.sc-duet-date-picker:focus{opacity:1}}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker:focus{box-shadow:0 0 0 2px #171c3a !important}";
11668
+ const duetDatePickerCss = "*.sc-duet-date-picker,*.sc-duet-date-picker::after,*.sc-duet-date-picker::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-date-picker-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:16px !important;margin-bottom:12px !important;position:relative;display:inline-flex;width:100%;min-width:calc(33.333% - 8px);max-width:100%;text-align:left;vertical-align:top}.sc-duet-date-picker-h:last-child,.sc-duet-date-picker-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-date-picker-h{width:calc(50% - 16px - 3px)}}.duet-expand.sc-duet-date-picker-h{width:100% !important}.duet-m-0.sc-duet-date-picker-h{margin:0 !important}.duet-date.sc-duet-date-picker{position:relative;width:100%}.duet-date.sc-duet-date-picker button.sc-duet-date-picker,.duet-date-dialog.sc-duet-date-picker button.sc-duet-date-picker{max-width:initial !important;min-height:initial !important;padding:0 !important;margin:0 !important;transition:initial}.duet-date-button.sc-duet-date-picker{-webkit-user-select:none;user-select:none;position:absolute;top:1px;right:1px;z-index:200;display:flex;align-items:center;justify-content:center;width:48px;height:calc(100% - 2px);color:rgb(0, 41, 77);cursor:pointer;background:transparent !important;border-left:1px solid rgb(207, 210, 212) !important;border-radius:0 4px 4px 0 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker{color:rgb(23, 28, 58);border-color:rgb(207, 207, 209)}.duet-date-button.sc-duet-date-picker::before{position:absolute;top:0;left:-6px;width:6px;height:100%;content:\"\";background:linear-gradient(to left, rgba(207, 210, 212, 0.2) 0%, rgba(207, 210, 212, 0.2) 1px, rgba(207, 210, 212, 0.1) 1px, rgba(207, 210, 212, 0) 100%)}.duet-date-button.sc-duet-date-picker:disabled{pointer-events:none;cursor:not-allowed;background:rgb(245, 248, 250) !important;border:0 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker:disabled{background:rgb(245, 245, 247) !important}.duet-date-button.sc-duet-date-picker:disabled::before{display:none}.duet-date-button.sc-duet-date-picker:disabled duet-icon.sc-duet-date-picker{opacity:0.4}.duet-date-button.sc-duet-date-picker duet-icon.sc-duet-date-picker{transform:translateY(-1px)}.duet-date-button.sc-duet-date-picker:active duet-icon.sc-duet-date-picker{transform:translateY(0)}.duet-date-button.sc-duet-date-picker:focus{color:rgb(0, 119, 179);border-color:transparent;outline:0;box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker:focus{color:rgb(23, 28, 58);box-shadow:0 0 0 2px #171c3a !important}.duet-date-dialog.sc-duet-date-picker{position:absolute;top:100%;left:0;z-index:900;display:flex;width:100%;visibility:hidden;opacity:0;transition:transform 300ms ease, opacity 300ms ease, visibility 300ms ease;transform:scale(0.96) translateZ(0) translateY(-20px);transform-origin:top right}@media (min-width: 36em){.duet-date-dialog.left.sc-duet-date-picker{right:0;left:auto;width:auto}}@media (max-width: 35.9375em){.duet-date-dialog.sc-duet-date-picker{position:fixed;top:0;right:0;bottom:0;transition:opacity 400ms ease, visibility 400ms ease;transform:translateZ(0);transform-origin:bottom center}}.duet-date-dialog.active.sc-duet-date-picker{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(0)}@media (min-width: 36em){.duet-date-dialog.error.sc-duet-date-picker{top:calc(100% - 28px);margin-top:4px}}.duet-date-dialog-wrapper.sc-duet-date-picker{position:relative;z-index:600;width:100%;min-width:290px;max-width:310px;padding:16px 16px 20px;margin-top:8px;margin-left:auto;background:rgb(255, 255, 255);border:1px solid rgb(225, 227, 230);border-radius:4px;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);transform:none}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-wrapper.sc-duet-date-picker{border-color:rgb(228, 228, 230)}@media (max-width: 35.9375em){.duet-date-dialog-wrapper.sc-duet-date-picker{position:absolute;bottom:0;left:0;z-index:900;max-width:none;min-height:25em;padding:0 8% 20px;margin:0;visibility:hidden;border:0;border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px;opacity:0;transition:transform 400ms ease, opacity 400ms ease, visibility 400ms ease;transform:translateZ(0) translateY(100%)}.active.sc-duet-date-picker .duet-date-dialog-wrapper.sc-duet-date-picker{visibility:visible;opacity:1;transition-property:transform, opacity;transform:translateZ(0) translateY(0)}}.duet-date-table.sc-duet-date-picker{width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.25;color:rgb(0, 41, 77);text-align:center;border-spacing:0;border-collapse:collapse}.duet-date-table.duet-theme-turva.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-date-table.sc-duet-date-picker th.sc-duet-date-picker{padding-bottom:8px;font-size:0.75rem;font-weight:600;line-height:1.25;text-decoration:none;text-transform:uppercase;letter-spacing:1px}.duet-date-table.sc-duet-date-picker .duet-date-table-cell.sc-duet-date-picker{text-align:center}.duet-date-table-button.sc-duet-date-picker{position:relative;z-index:100;display:inline-block !important;width:36.9230769231px !important;height:36.9230769231px !important;min-height:initial !important;padding:0 !important;margin:0 !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:1.25 !important;color:rgb(0, 41, 77) !important;text-align:center;vertical-align:initial !important;cursor:pointer;background:transparent !important;border-radius:50% !important;transition:initial !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !important;color:rgb(23, 28, 58) !important}.duet-date-table-button.sc-duet-date-picker:hover{background:rgb(230, 242, 248) !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:hover{background:rgb(249, 230, 234) !important}.duet-date-table-button.today.sc-duet-date-picker{z-index:200;color:rgb(0, 77, 128) !important;background:rgb(243, 249, 252) !important;box-shadow:0 0 0 1px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.today.sc-duet-date-picker{color:rgb(148, 9, 37) !important;background:rgb(252, 243, 244) !important;box-shadow:0 0 0 1px #171c3a !important}.duet-date-table-button[aria-pressed=true].sc-duet-date-picker,.duet-date-table-button.sc-duet-date-picker:focus{color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179) !important;outline:0}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button[aria-pressed=true].sc-duet-date-picker,.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:focus{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48) !important}.duet-date-table-button.sc-duet-date-picker:active{z-index:200;color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179) !important;box-shadow:0 0 5px 0 #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:active{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48) !important;box-shadow:0 0 5px 0 #171c3a !important}.duet-date-table-button.sc-duet-date-picker:focus{z-index:200;box-shadow:0 0 5px 0 #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:focus{box-shadow:0 0 5px 0 #171c3a !important}.duet-date-table-button.disabled.sc-duet-date-picker{color:rgb(144, 149, 153) !important;cursor:default;background:transparent !important;box-shadow:none !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.disabled.sc-duet-date-picker{color:rgb(116, 116, 117) !important;background:transparent !important;box-shadow:none !important}.duet-date-table-button.outside.sc-duet-date-picker{color:rgb(144, 149, 153) !important;pointer-events:none;cursor:default;background:rgb(245, 248, 250) !important;box-shadow:none;opacity:0.75}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.outside.sc-duet-date-picker{color:rgb(116, 116, 117);background:rgb(245, 245, 247);box-shadow:none}.duet-date-dialog-header.sc-duet-date-picker{margin-bottom:16px !important;display:flex;align-items:center;justify-content:space-between;width:100%}.duet-date-dialog-buttons.sc-duet-date-picker{white-space:nowrap}.duet-date-dialog-buttons.sc-duet-date-picker .sc-duet-date-picker::part(button){border:0}.duet-date-dialog-select.sc-duet-date-picker{position:relative;display:inline-flex;margin-top:4px}.duet-date-dialog-select.sc-duet-date-picker .duet-date-dialog-select-label.sc-duet-date-picker{position:relative;z-index:1;display:flex;align-items:center;width:100%;padding:0 8px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.25rem;font-weight:600;line-height:1.25;color:rgb(0, 41, 77);pointer-events:none;border-radius:4px}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-select.sc-duet-date-picker .duet-date-dialog-select-label.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-date-dialog-select.sc-duet-date-picker span.sc-duet-date-picker{margin-right:4px}.duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;font-size:1rem;cursor:pointer;opacity:0}.duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker:focus+.duet-date-dialog-select-label.sc-duet-date-picker{box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker:focus+.duet-date-dialog-select-label.sc-duet-date-picker{box-shadow:0 0 0 2px #171c3a !important}.duet-date-dialog-mobile-header.sc-duet-date-picker{position:relative;display:flex;align-items:center;justify-content:space-between;width:120%;padding:12px 20px;margin-bottom:20px;margin-left:-10%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid rgb(207, 210, 212)}@media (min-width: 36em){.duet-date-dialog-mobile-header.sc-duet-date-picker{position:absolute;top:-8px;right:-8px;width:auto;padding:0;margin:0;overflow:visible;border:0}}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-mobile-header.sc-duet-date-picker{border-color:rgb(207, 207, 209)}.duet-date-dialog-mobile-header.sc-duet-date-picker duet-label.sc-duet-date-picker{display:inline-block;max-width:84%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 36em){.duet-date-dialog-mobile-header.sc-duet-date-picker duet-label.sc-duet-date-picker{display:none}}.duet-date-picker-close.sc-duet-date-picker{display:flex;align-items:center;justify-content:center;width:24px;height:24px !important;padding:0 !important;color:rgb(0, 41, 77) !important;cursor:pointer;background:rgb(245, 248, 250) !important;border-radius:50%;-webkit-appearance:none;appearance:none}@media (min-width: 36em){.duet-date-picker-close.sc-duet-date-picker{opacity:0}}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker{background:rgb(245, 245, 247) !important}.duet-date-picker-close.sc-duet-date-picker:hover{background:rgb(245, 248, 250) !important}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker:hover{background:rgb(245, 245, 247) !important}.duet-date-picker-close.sc-duet-date-picker:focus{outline:none;box-shadow:0 0 0 2px #0077b3 !important}@media (min-width: 36em){.duet-date-picker-close.sc-duet-date-picker:focus{opacity:1}}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker:focus{box-shadow:0 0 0 2px #171c3a !important}";
11663
11669
 
11664
11670
  /**
11665
11671
  * @slot tooltip - Use to place a tooltip alongside the label.
@@ -14536,7 +14542,7 @@ class DuetLayout {
14536
14542
  }; }
14537
14543
  }
14538
14544
 
14539
- const duetLinkCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-link,*.sc-duet-link::after,*.sc-duet-link::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-link-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:inline}/*!@:host(.duet-link-block)*/.duet-link-block.sc-duet-link-h{display:block}/*!@.duet-link*/.duet-link.sc-duet-link{display:inline;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:normal;font-weight:400;color:rgb(0, 119, 179);text-decoration:underline;border-radius:4px;transition:300ms ease}/*!@.duet-link:focus*/.duet-link.sc-duet-link:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-theme-turva .duet-link:focus, .duet-link:focus.duet-theme-turva*/.duet-theme-turva.sc-duet-link .duet-link.sc-duet-link:focus,.duet-link.sc-duet-link:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-link.duet-theme-turva*/.duet-link.duet-theme-turva.sc-duet-link{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(198, 12, 48)}/*!@.duet-link:hover*/.duet-link.sc-duet-link:hover{color:rgb(0, 77, 128);text-decoration:none}/*!@.duet-link:hover.duet-theme-turva*/.duet-link.sc-duet-link:hover.duet-theme-turva{color:rgb(148, 9, 37)}/*!@.duet-link:active*/.duet-link.sc-duet-link:active{opacity:0.75;transition:none}/*!@.duet-link-is-external.duet-link:not(.block),\n.duet-link-is-download.duet-link:not(.block)*/.duet-link-is-external.duet-link.sc-duet-link:not(.block),.duet-link-is-download.duet-link.sc-duet-link:not(.block){text-decoration:none}/*!@.duet-link-is-external.duet-link:not(.block) .duet-link-content,\n.duet-link-is-download.duet-link:not(.block) .duet-link-content*/.duet-link-is-external.duet-link.sc-duet-link:not(.block) .duet-link-content.sc-duet-link,.duet-link-is-download.duet-link.sc-duet-link:not(.block) .duet-link-content.sc-duet-link{text-decoration:underline}/*!@.duet-link-is-external.duet-link:not(.block):hover > .duet-link-content,\n.duet-link-is-download.duet-link:not(.block):hover > .duet-link-content*/.duet-link-is-external.duet-link.sc-duet-link:not(.block):hover>.duet-link-content.sc-duet-link,.duet-link-is-download.duet-link.sc-duet-link:not(.block):hover>.duet-link-content.sc-duet-link{text-decoration:none}/*!@.duet-link-is-external.duet-link:not(.block) .duet-link-icon-tail,\n.duet-link-is-download.duet-link:not(.block) .duet-link-icon-tail*/.duet-link-is-external.duet-link.sc-duet-link:not(.block) .duet-link-icon-tail.sc-duet-link,.duet-link-is-download.duet-link.sc-duet-link:not(.block) .duet-link-icon-tail.sc-duet-link{text-decoration:none;white-space:nowrap}/*!@.duet-tab-to-link*/.duet-tab-to-link.sc-duet-link{padding:15px 28px 16px !important;position:absolute;top:-100%;left:-100%;z-index:200;width:1px;min-width:190px;height:1px;overflow:hidden;font-weight:600;color:rgb(0, 119, 179);text-align:center;text-decoration:none;background:rgb(255, 255, 255);border-radius:4px;opacity:0;transition:none}/*!@.duet-tab-to-link.duet-theme-turva*/.duet-tab-to-link.duet-theme-turva.sc-duet-link{min-width:120px;color:rgb(23, 28, 58)}@media (min-width: 106.25em){/*!@.duet-tab-to-link*/.duet-tab-to-link.sc-duet-link{margin-left:20px}}/*!@.duet-tab-to-link:focus*/.duet-tab-to-link.sc-duet-link:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}/*!@.block.duet-link*/.block.duet-link.sc-duet-link{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start;padding:16px;font-weight:600;color:rgb(0, 41, 77);text-decoration:none}/*!@.block.duet-link.duet-link-has-icon*/.block.duet-link.duet-link-has-icon.sc-duet-link{grid-template-columns:auto 1fr auto}/*!@.block.duet-link.none*/.block.duet-link.none.sc-duet-link{padding:0}/*!@.block .block__content*/.block.sc-duet-link .block__content.sc-duet-link{position:relative;bottom:2px}/*!@.block .block__chevron*/.block.sc-duet-link .block__chevron.sc-duet-link{align-self:center}/*!@.block .block__chevron-icon*/.block.sc-duet-link .block__chevron-icon.sc-duet-link{transition:300ms ease}/*!@.block:hover .block__chevron-icon*/.block.sc-duet-link:hover .block__chevron-icon.sc-duet-link{transform:translateX(4px)}";
14545
+ const duetLinkCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-link,*.sc-duet-link::after,*.sc-duet-link::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-link-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:inline}/*!@:host(.duet-link-block)*/.duet-link-block.sc-duet-link-h{display:block}/*!@:host(.duet-link-button)*/.duet-link-button.sc-duet-link-h{margin-right:8px !important;margin-bottom:12px !important;display:inline-block;width:100%}/*!@:host(.duet-link-button):last-child, :host(.duet-link-button):last-of-type*/.duet-link-button.sc-duet-link-h:last-child,.duet-link-button.sc-duet-link-h:last-of-type{margin-right:0 !important}/*!@.duet-link*/.duet-link.sc-duet-link{display:inline;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:normal;font-weight:400;color:rgb(0, 119, 179);text-decoration:underline;border-radius:4px;transition:300ms ease}/*!@.duet-link:focus*/.duet-link.sc-duet-link:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-theme-turva .duet-link:focus, .duet-link:focus.duet-theme-turva*/.duet-theme-turva.sc-duet-link .duet-link.sc-duet-link:focus,.duet-link.sc-duet-link:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-link.duet-theme-turva*/.duet-link.duet-theme-turva.sc-duet-link{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(198, 12, 48)}/*!@.duet-link:hover*/.duet-link.sc-duet-link:hover{color:rgb(0, 77, 128);text-decoration:none}/*!@.duet-link:hover.duet-theme-turva*/.duet-link.sc-duet-link:hover.duet-theme-turva{color:rgb(148, 9, 37)}/*!@.duet-link:active*/.duet-link.sc-duet-link:active{opacity:0.75;transition:none}/*!@.duet-link-is-external.duet-link:not(.block, .button),\n.duet-link-is-download.duet-link:not(.block, .button)*/.duet-link-is-external.duet-link.sc-duet-link:not(.block,.button).sc-duet-link,.duet-link-is-download.duet-link.sc-duet-link:not(.block,.button).sc-duet-link{text-decoration:none}/*!@.duet-link-is-external.duet-link:not(.block, .button) .duet-link-content,\n.duet-link-is-download.duet-link:not(.block, .button) .duet-link-content*/.duet-link-is-external.duet-link.sc-duet-link:not(.block,.button).sc-duet-link .duet-link-content.sc-duet-link,.duet-link-is-download.duet-link.sc-duet-link:not(.block,.button).sc-duet-link .duet-link-content.sc-duet-link{text-decoration:underline}/*!@.duet-link-is-external.duet-link:not(.block, .button):hover > .duet-link-content,\n.duet-link-is-download.duet-link:not(.block, .button):hover > .duet-link-content*/.duet-link-is-external.duet-link.sc-duet-link:not(.block,.button).sc-duet-link:hover>.duet-link-content.sc-duet-link,.duet-link-is-download.duet-link.sc-duet-link:not(.block,.button).sc-duet-link:hover>.duet-link-content.sc-duet-link{text-decoration:none}/*!@.duet-link-is-external.duet-link:not(.block, .button) .duet-link-icon-tail,\n.duet-link-is-download.duet-link:not(.block, .button) .duet-link-icon-tail*/.duet-link-is-external.duet-link.sc-duet-link:not(.block,.button).sc-duet-link .duet-link-icon-tail.sc-duet-link,.duet-link-is-download.duet-link.sc-duet-link:not(.block,.button).sc-duet-link .duet-link-icon-tail.sc-duet-link{text-decoration:none;white-space:nowrap}/*!@.duet-tab-to-link*/.duet-tab-to-link.sc-duet-link{padding:15px 28px 16px !important;position:absolute;top:-100%;left:-100%;z-index:200;width:1px;min-width:190px;height:1px;overflow:hidden;font-weight:600;color:rgb(0, 119, 179);text-align:center;text-decoration:none;background:rgb(255, 255, 255);border-radius:4px;opacity:0;transition:none}/*!@.duet-tab-to-link.duet-theme-turva*/.duet-tab-to-link.duet-theme-turva.sc-duet-link{min-width:120px;color:rgb(23, 28, 58)}@media (min-width: 106.25em){/*!@.duet-tab-to-link*/.duet-tab-to-link.sc-duet-link{margin-left:20px}}/*!@.duet-tab-to-link:focus*/.duet-tab-to-link.sc-duet-link:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}/*!@.block.duet-link*/.block.duet-link.sc-duet-link{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start;padding:16px;font-weight:600;color:rgb(0, 41, 77);text-decoration:none}/*!@.block.duet-link.duet-link-has-icon*/.block.duet-link.duet-link-has-icon.sc-duet-link{grid-template-columns:auto 1fr auto}/*!@.block.duet-link.none*/.block.duet-link.none.sc-duet-link{padding:0}/*!@.block .block__content*/.block.sc-duet-link .block__content.sc-duet-link{position:relative;bottom:2px}/*!@.block .block__chevron*/.block.sc-duet-link .block__chevron.sc-duet-link{align-self:center}/*!@.block .block__chevron-icon*/.block.sc-duet-link .block__chevron-icon.sc-duet-link{transition:300ms ease}/*!@.block:not(.duet-link-is-external):hover .block__chevron-icon*/.block.sc-duet-link:not(.duet-link-is-external):hover .block__chevron-icon.sc-duet-link{transform:translateX(4px)}/*!@.duet-link.button*/.duet-link.button.sc-duet-link{display:flex;gap:12px;align-items:center;width:100%;min-height:48px;padding:12px;padding-right:20px;text-decoration:none;background-color:rgb(255, 255, 255);border:solid 1px rgb(207, 210, 212);border-radius:12px;outline:0 solid rgb(207, 210, 212);outline-offset:-2px;transition:all 300ms ease}/*!@.duet-link.button > **/.duet-link.button.sc-duet-link>*.sc-duet-link{flex-shrink:0}/*!@.duet-link.button .duet-link-content*/.duet-link.button.sc-duet-link .duet-link-content.sc-duet-link{flex-grow:1;flex-shrink:1;font-size:1rem;font-weight:600;color:rgb(0, 41, 77);text-align:left}/*!@.duet-link.button .icon-wrap*/.duet-link.button.sc-duet-link .icon-wrap.sc-duet-link{display:flex;align-items:center;justify-content:center}/*!@.duet-link.button.duet-link-has-icon-background*/.duet-link.button.duet-link-has-icon-background.sc-duet-link{min-height:60px}/*!@.duet-link.button.duet-link-has-icon-background .icon-wrap*/.duet-link.button.duet-link-has-icon-background.sc-duet-link .icon-wrap.sc-duet-link{width:36px;height:36px;border-radius:8px}/*!@.duet-link.button:hover*/.duet-link.button.sc-duet-link:hover{border-color:rgb(0, 119, 179);outline:2px solid rgb(0, 119, 179)}@media (min-width: 48em){/*!@.duet-link.button*/.duet-link.button.sc-duet-link{gap:16px;min-height:60px;border-radius:16px}/*!@.duet-link.button.duet-link-has-icon-background*/.duet-link.button.duet-link-has-icon-background.sc-duet-link{min-height:72px}/*!@.duet-link.button.duet-link-has-icon-background .icon-wrap*/.duet-link.button.duet-link-has-icon-background.sc-duet-link .icon-wrap.sc-duet-link{width:48px;height:48px;border-radius:12px}/*!@.duet-link.button .duet-link-content*/.duet-link.button.sc-duet-link .duet-link-content.sc-duet-link{font-size:1.1rem}}/*!@.duet-link.button.duet-theme-turva*/.duet-link.button.duet-theme-turva.sc-duet-link{border-color:rgb(207, 207, 209)}/*!@.duet-link.button.duet-theme-turva .duet-link-content*/.duet-link.button.duet-theme-turva.sc-duet-link .duet-link-content.sc-duet-link{color:rgb(23, 28, 58)}/*!@.duet-link.button.duet-theme-turva:hover*/.duet-link.button.duet-theme-turva.sc-duet-link:hover{border-color:rgb(198, 12, 48);outline-color:rgb(198, 12, 48)}/*!@.duet-link.button:not(.duet-link-is-external):hover .block__chevron-icon*/.duet-link.button.sc-duet-link:not(.duet-link-is-external):hover .block__chevron-icon.sc-duet-link{transform:translateX(4px)}";
14540
14546
 
14541
14547
  /**
14542
14548
  * @part duet-link - piercing selector for styling the link
@@ -14561,9 +14567,11 @@ class DuetLink {
14561
14567
  this.tabToLink = false;
14562
14568
  this.icon = undefined;
14563
14569
  this.iconColor = "currentColor";
14570
+ this.iconBackground = null;
14564
14571
  this.iconResponsive = false;
14565
14572
  this.padding = "auto";
14566
14573
  this.isSmallScreen = false;
14574
+ this.isMediumScreen = false;
14567
14575
  }
14568
14576
  /**
14569
14577
  * Component lifecycle events.
@@ -14572,6 +14580,10 @@ class DuetLink {
14572
14580
  inheritGlobalTheme(this);
14573
14581
  this.initMediaQuery();
14574
14582
  this.resolvedDownload = this.resolveDownload();
14583
+ // button variation renders a button element when no url is provided
14584
+ if (this.variation === "button" && this.url === "#") {
14585
+ this.url = undefined;
14586
+ }
14575
14587
  }
14576
14588
  connectedCallback() {
14577
14589
  connectLanguageChangeObserver(this, {
@@ -14621,32 +14633,50 @@ class DuetLink {
14621
14633
  }
14622
14634
  return this.download;
14623
14635
  }
14624
- renderContent() {
14625
- return (hAsync(Fragment, null, hAsync("span", { class: "duet-link-content", part: "duet-link-content" }, hAsync("slot", null)), Build.isBrowser ));
14636
+ renderDefaultContent() {
14637
+ // Notice that the external icon needs to be placed right after the last word of the link.
14638
+ // This is why we use &nbps; to keep everything on the same line.
14639
+ return (hAsync(Fragment, null, hAsync("span", { class: "duet-link-content", part: "duet-link-content" }, hAsync("slot", null)), Build.isBrowser ));
14640
+ }
14641
+ renderBlockContent() {
14642
+ return (hAsync(Fragment, null, this.icon && (hAsync("span", { class: "block__icon" }, hAsync("duet-icon", { size: this.iconResponsive ? (this.isSmallScreen ? "medium" : "large") : "x-small", name: this.icon, margin: "none", color: this.iconColor }))), hAsync("span", { class: "block__content" }, this.renderDefaultContent()), hAsync("span", { class: "block__chevron", part: "block-chevron" }, hAsync("duet-icon", { class: "block__chevron-icon", icon: this.external ? actionNewWindow.svg : actionArrowRight.svg, size: "x-small", margin: "none", color: "primary-dark" }))));
14643
+ }
14644
+ renderButtonContent() {
14645
+ const iconWrapStyle = {
14646
+ "background-color": getColorByName(this.iconBackground, this.theme),
14647
+ };
14648
+ return (hAsync(Fragment, null, hAsync("span", { class: "icon-wrap", style: iconWrapStyle }, hAsync("duet-icon", { size: this.isMediumScreen ? "small" : "medium", name: this.icon, margin: "none", color: this.iconColor })), hAsync("span", { class: "duet-link-content", part: "duet-link-content" }, hAsync("slot", null)), hAsync("duet-icon", { class: "block__chevron-icon", icon: this.external ? actionNewWindow.svg : actionArrowRight.svg, size: "x-small", margin: "none", color: "primary-dark" })));
14626
14649
  }
14627
- renderGrid() {
14628
- return (hAsync(Fragment, null, this.icon && (hAsync("span", { class: "block__icon" }, hAsync("duet-icon", { size: this.iconResponsive ? (this.isSmallScreen ? "medium" : "large") : "x-small", name: this.icon, margin: "none", color: this.iconColor }))), hAsync("span", { class: "block__content" }, this.renderContent()), hAsync("span", { class: "block__chevron", part: "block-chevron" }, hAsync("duet-icon", { class: "block__chevron-icon", icon: actionArrowRight.svg, size: "x-small", margin: "none", color: "primary-dark" }))));
14650
+ renderContent() {
14651
+ switch (this.variation) {
14652
+ case "default":
14653
+ return this.renderDefaultContent();
14654
+ case "block":
14655
+ return this.renderBlockContent();
14656
+ case "button":
14657
+ return this.renderButtonContent();
14658
+ }
14629
14659
  }
14630
14660
  /**
14631
14661
  * render() function
14632
14662
  * Always the last one in the class.
14633
14663
  */
14634
14664
  render() {
14635
- // Notice that the external icon needs to be places right after the last word of the link.
14636
- // This is why we use &nbps; to keep everything on the same line.
14665
+ const Tag = this.variation === "button" && !this.url ? "button" : "a";
14637
14666
  return (hAsync(Host, { class: {
14638
- "duet-link-block": this.variation === "block",
14639
- } }, hAsync("a", { href: this.url, class: {
14667
+ [`duet-link-${this.variation}`]: true,
14668
+ } }, hAsync(Tag, { href: this.url, class: {
14640
14669
  "duet-link": true,
14641
14670
  "duet-link-is-external": this.external,
14642
14671
  "duet-link-is-download": !!this.download,
14643
14672
  "duet-link-has-icon": !!this.icon,
14673
+ "duet-link-has-icon-background": !!this.iconBackground,
14644
14674
  "duet-tab-to-link": this.tabToLink,
14645
14675
  "duet-theme-turva": this.theme === "turva",
14646
14676
  "duet-p-0": this.padding === "none",
14647
14677
  [this.padding]: true,
14648
14678
  [this.variation]: true,
14649
- }, target: this.download ? null : this.external ? "_blank" : "_self", download: this.resolvedDownload, "aria-label": this.getAccessibleLabel(), id: this.identifier, ref: el => (this.nativeLink = el), part: "duet-link", rel: this.external ? "noopener" : undefined }, this.variation === "block" ? this.renderGrid() : this.renderContent())));
14679
+ }, target: this.download || !this.url ? null : this.external ? "_blank" : "_self", download: this.resolvedDownload, "aria-label": this.getAccessibleLabel(), id: this.identifier, ref: el => (this.nativeLink = el), part: "duet-link", rel: this.external ? "noopener" : undefined }, this.renderContent())));
14650
14680
  }
14651
14681
  static get delegatesFocus() { return true; }
14652
14682
  get element() { return getElement(this); }
@@ -14664,15 +14694,17 @@ class DuetLink {
14664
14694
  "accessibleLabelDownload": [1025, "accessible-label-download"],
14665
14695
  "identifier": [1],
14666
14696
  "theme": [1025],
14667
- "url": [513],
14697
+ "url": [1537],
14668
14698
  "external": [4],
14669
14699
  "download": [1],
14670
14700
  "tabToLink": [4, "tab-to-link"],
14671
14701
  "icon": [1],
14672
14702
  "iconColor": [1, "icon-color"],
14703
+ "iconBackground": [1, "icon-background"],
14673
14704
  "iconResponsive": [4, "icon-responsive"],
14674
14705
  "padding": [1],
14675
14706
  "isSmallScreen": [32],
14707
+ "isMediumScreen": [32],
14676
14708
  "setFocus": [64]
14677
14709
  },
14678
14710
  "$listeners$": undefined,
@@ -15624,7 +15656,7 @@ class Teleport {
15624
15656
  }
15625
15657
  }
15626
15658
 
15627
- const duetModalCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-modal,*.sc-duet-modal::after,*.sc-duet-modal::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-modal-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@.duet-modal-overlay*/.duet-modal-overlay.sc-duet-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;max-height:100vh;overflow-y:auto;visibility:hidden;background:rgba(0, 41, 77, 0.3);opacity:0;transition:300ms ease;transition-delay:200ms}/*!@.duet-modal-overlay.duet-theme-turva*/.duet-modal-overlay.duet-theme-turva.sc-duet-modal{background:rgba(23, 28, 58, 0.3)}/*!@.duet-modal-overlay.duet-modal-active*/.duet-modal-overlay.duet-modal-active.sc-duet-modal{visibility:visible;opacity:1;transition:300ms ease;transition-delay:0s}/*!@.duet-modal-overlay.duet-disable-transitions*/.duet-modal-overlay.duet-disable-transitions.sc-duet-modal{transition:none}/*!@.duet-modal-overlay.duet-modal-slide-up*/.duet-modal-overlay.duet-modal-slide-up.sc-duet-modal{overflow:hidden}/*!@::slotted(img)*/.sc-duet-modal-s>img{width:100%}/*!@.duet-modal-inner*/.duet-modal-inner.sc-duet-modal{display:flex;align-items:center;width:100%;min-height:100%;padding:20px 16px}@media (min-width: 36em){/*!@.duet-modal-inner*/.duet-modal-inner.sc-duet-modal{padding:48px 16px}}/*!@.duet-modal-inner.duet-modal-slide-up*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal{align-items:stretch;justify-content:center;height:100%;padding-top:48px;padding-bottom:0;overflow:hidden}/*!@.duet-modal-inner.duet-modal-slide-up::after*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal::after{position:absolute;bottom:0;z-index:300;display:block;width:100%;max-width:686px;height:48px;margin:auto;pointer-events:none;content:\"\";background:linear-gradient(rgba(255, 255, 255, 0), rgb(255, 255, 255))}/*!@.duet-modal-inner.duet-modal-slide-up::after.small*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal::after.small{max-width:545px}/*!@.duet-modal-inner.duet-modal-slide-up::after.large*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal::after.large{max-width:100%}@media (min-width: 36em){/*!@.duet-modal-inner.duet-modal-slide-up::after.large*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal::after.large{max-width:1110px}}@media (max-width: 35.9375em){/*!@.duet-modal-inner.large*/.duet-modal-inner.large.sc-duet-modal{padding-right:0;padding-left:0}/*!@.duet-modal-inner.duet-modal-slide-up*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal{padding:0;padding-top:28px}}/*!@.duet-modal*/.duet-modal.sc-duet-modal{position:relative;width:100%;max-width:686px;margin:auto;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-weight:400;font-variant-numeric:tabular-nums;line-height:1.5;color:rgb(0, 41, 77);background:rgb(255, 255, 255);border-radius:4px;opacity:0;transition:300ms ease;transition-delay:0ms;transform:scale(0.96)}/*!@.duet-theme-turva .duet-modal*/.duet-theme-turva.sc-duet-modal .duet-modal.sc-duet-modal{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-modal-active .duet-modal*/.duet-modal-active.sc-duet-modal .duet-modal.sc-duet-modal{opacity:1;transition:300ms ease;transition-delay:200ms;transform:none}/*!@.duet-modal-active .duet-modal.slide-up*/.duet-modal-active.sc-duet-modal .duet-modal.slide-up.sc-duet-modal{top:0;transition:top 600ms ease}/*!@.duet-disable-transitions .duet-modal*/.duet-disable-transitions.sc-duet-modal .duet-modal.sc-duet-modal{transition:none}/*!@.duet-modal.small*/.duet-modal.small.sc-duet-modal{max-width:545px}/*!@.duet-modal.large*/.duet-modal.large.sc-duet-modal{max-width:100%}@media (min-width: 36em){/*!@.duet-modal.large*/.duet-modal.large.sc-duet-modal{max-width:1110px}}/*!@.duet-modal.slide-up*/.duet-modal.slide-up.sc-duet-modal{top:100vh;margin:0;border-radius:4px 4px 0 0;opacity:1;transition:top 600ms ease}@media (max-width: 35.9375em){/*!@.duet-modal.slide-up*/.duet-modal.slide-up.sc-duet-modal{border-radius:16px 16px 0 0}}/*!@.duet-modal.duet-modal-has-sticky-header*/.duet-modal.duet-modal-has-sticky-header.sc-duet-modal{height:100%;overflow:auto}/*!@.duet-modal:focus*/.duet-modal.sc-duet-modal:focus{outline:0}/*!@.duet-modal-body,\n.duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{width:100%;padding:36px 28px}/*!@.duet-modal-body.duet-modal-gutter-none,\n.duet-modal-sticky-header.duet-modal-gutter-none*/.duet-modal-body.duet-modal-gutter-none.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-none.sc-duet-modal{padding:0 !important}/*!@.duet-modal-body.duet-modal-gutter-small,\n.duet-modal-sticky-header.duet-modal-gutter-small*/.duet-modal-body.duet-modal-gutter-small.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-small.sc-duet-modal{padding:36px 20px}/*!@.duet-modal-body.duet-modal-gutter-large,\n.duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:48px 36px}@media (max-width: 22.5em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px 20px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:48px 28px}}@media (max-width: 35.9375em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px 20px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:48px 36px}}@media (min-width: 36em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:28px 72px}}@media (min-width: 48em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px 72px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:36px 72px}}@media (min-width: 76.25em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px 48px 48px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:48px 94px}/*!@.small .duet-modal-body,\n .small .duet-modal-sticky-header*/.small.sc-duet-modal .duet-modal-body.sc-duet-modal,.small.sc-duet-modal .duet-modal-sticky-header.sc-duet-modal{padding:36px 48px}}/*!@.duet-modal-header*/.duet-modal-header.sc-duet-modal{text-align:center}/*!@.duet-modal-sticky-header*/.duet-modal-sticky-header.sc-duet-modal{position:sticky;top:0;z-index:200;display:block;padding-bottom:12px;text-align:left;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230)}/*!@.duet-theme-turva .duet-modal-sticky-header*/.duet-theme-turva.sc-duet-modal .duet-modal-sticky-header.sc-duet-modal{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}/*!@.duet-modal-close*/.duet-modal-close.sc-duet-modal{position:absolute;top:12px;right:12px}/*!@.duet-modal-heading*/.duet-modal-heading.sc-duet-modal{width:100%;padding-right:60px;overflow:hidden;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.25rem;font-style:normal;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(0, 41, 77);text-decoration:none;text-overflow:ellipsis;letter-spacing:-0.01rem;white-space:nowrap}/*!@.duet-modal-heading.duet-p-0*/.duet-modal-heading.duet-p-0.sc-duet-modal{padding:0 !important}/*!@.duet-modal-heading.duet-m-0*/.duet-modal-heading.duet-m-0.sc-duet-modal{margin:0 !important}";
15659
+ const duetModalCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-modal,*.sc-duet-modal::after,*.sc-duet-modal::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-modal-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@.duet-modal-container*/.duet-modal-container.sc-duet-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;max-height:100vh;overflow-y:auto;visibility:hidden;opacity:0;transition:300ms ease;transition-delay:200ms}/*!@.duet-modal-container.duet-modal-active*/.duet-modal-container.duet-modal-active.sc-duet-modal{visibility:visible;opacity:1;transition:300ms ease;transition-delay:0s}/*!@.duet-modal-container.duet-disable-transitions*/.duet-modal-container.duet-disable-transitions.sc-duet-modal{transition:none}/*!@.duet-modal-container.duet-modal-slide-up*/.duet-modal-container.duet-modal-slide-up.sc-duet-modal{overflow:hidden}/*!@::slotted(img)*/.sc-duet-modal-s>img{width:100%}/*!@.duet-modal-inner*/.duet-modal-inner.sc-duet-modal{display:flex;align-items:center;width:100%;min-height:100%;padding:20px 16px}@media (min-width: 36em){/*!@.duet-modal-inner*/.duet-modal-inner.sc-duet-modal{padding:48px 16px}}/*!@.duet-modal-inner.duet-modal-slide-up*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal{align-items:stretch;justify-content:center;height:100%;padding-top:48px;padding-bottom:0;overflow:hidden}/*!@.duet-modal-inner.duet-modal-slide-up::after*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal::after{position:absolute;bottom:0;z-index:300;display:block;width:100%;max-width:686px;height:48px;margin:auto;pointer-events:none;content:\"\";background:linear-gradient(rgba(255, 255, 255, 0), rgb(255, 255, 255))}/*!@.duet-modal-inner.duet-modal-slide-up::after.small*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal::after.small{max-width:545px}/*!@.duet-modal-inner.duet-modal-slide-up::after.large*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal::after.large{max-width:100%}@media (min-width: 36em){/*!@.duet-modal-inner.duet-modal-slide-up::after.large*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal::after.large{max-width:1110px}}@media (max-width: 35.9375em){/*!@.duet-modal-inner.large*/.duet-modal-inner.large.sc-duet-modal{padding-right:0;padding-left:0}/*!@.duet-modal-inner.duet-modal-slide-up*/.duet-modal-inner.duet-modal-slide-up.sc-duet-modal{padding:0;padding-top:28px}}/*!@.duet-modal*/.duet-modal.sc-duet-modal{position:relative;width:100%;max-width:686px;margin:auto;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-weight:400;font-variant-numeric:tabular-nums;line-height:1.5;color:rgb(0, 41, 77);background:rgb(255, 255, 255);border-radius:4px;opacity:0;transition:300ms ease;transition-delay:0ms;transform:scale(0.96)}/*!@.duet-theme-turva .duet-modal*/.duet-theme-turva.sc-duet-modal .duet-modal.sc-duet-modal{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-modal-active .duet-modal*/.duet-modal-active.sc-duet-modal .duet-modal.sc-duet-modal{opacity:1;transition:300ms ease;transition-delay:200ms;transform:none}/*!@.duet-modal-active .duet-modal.slide-up*/.duet-modal-active.sc-duet-modal .duet-modal.slide-up.sc-duet-modal{top:0;transition:top 600ms ease}/*!@.duet-disable-transitions .duet-modal*/.duet-disable-transitions.sc-duet-modal .duet-modal.sc-duet-modal{transition:none}/*!@.duet-modal.small*/.duet-modal.small.sc-duet-modal{max-width:545px}/*!@.duet-modal.large*/.duet-modal.large.sc-duet-modal{max-width:100%}@media (min-width: 36em){/*!@.duet-modal.large*/.duet-modal.large.sc-duet-modal{max-width:1110px}}/*!@.duet-modal.slide-up*/.duet-modal.slide-up.sc-duet-modal{top:100vh;margin:0;border-radius:4px 4px 0 0;opacity:1;transition:top 600ms ease}@media (max-width: 35.9375em){/*!@.duet-modal.slide-up*/.duet-modal.slide-up.sc-duet-modal{border-radius:16px 16px 0 0}}/*!@.duet-modal.duet-modal-has-sticky-header*/.duet-modal.duet-modal-has-sticky-header.sc-duet-modal{height:100%;overflow:auto}/*!@.duet-modal:focus*/.duet-modal.sc-duet-modal:focus{outline:0}/*!@.duet-modal-body,\n.duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{width:100%;padding:36px 28px}/*!@.duet-modal-body.duet-modal-gutter-none,\n.duet-modal-sticky-header.duet-modal-gutter-none*/.duet-modal-body.duet-modal-gutter-none.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-none.sc-duet-modal{padding:0 !important}/*!@.duet-modal-body.duet-modal-gutter-small,\n.duet-modal-sticky-header.duet-modal-gutter-small*/.duet-modal-body.duet-modal-gutter-small.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-small.sc-duet-modal{padding:36px 20px}/*!@.duet-modal-body.duet-modal-gutter-large,\n.duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:48px 36px}@media (max-width: 22.5em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px 20px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:48px 28px}}@media (max-width: 35.9375em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px 20px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:48px 36px}}@media (min-width: 36em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:28px 72px}}@media (min-width: 48em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px 72px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:36px 72px}}@media (min-width: 76.25em){/*!@.duet-modal-body,\n .duet-modal-sticky-header*/.duet-modal-body.sc-duet-modal,.duet-modal-sticky-header.sc-duet-modal{padding:36px 48px 48px}/*!@.duet-modal-body.duet-modal-gutter-large,\n .duet-modal-sticky-header.duet-modal-gutter-large*/.duet-modal-body.duet-modal-gutter-large.sc-duet-modal,.duet-modal-sticky-header.duet-modal-gutter-large.sc-duet-modal{padding:48px 94px}/*!@.small .duet-modal-body,\n .small .duet-modal-sticky-header*/.small.sc-duet-modal .duet-modal-body.sc-duet-modal,.small.sc-duet-modal .duet-modal-sticky-header.sc-duet-modal{padding:36px 48px}}/*!@.duet-modal-header*/.duet-modal-header.sc-duet-modal{text-align:center}/*!@.duet-modal-sticky-header*/.duet-modal-sticky-header.sc-duet-modal{position:sticky;top:0;z-index:200;display:block;padding-bottom:12px;text-align:left;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230)}/*!@.duet-theme-turva .duet-modal-sticky-header*/.duet-theme-turva.sc-duet-modal .duet-modal-sticky-header.sc-duet-modal{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}/*!@.duet-modal-close*/.duet-modal-close.sc-duet-modal{position:absolute;top:12px;right:12px}/*!@.duet-modal-heading*/.duet-modal-heading.sc-duet-modal{width:100%;padding-right:60px;overflow:hidden;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.25rem;font-style:normal;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(0, 41, 77);text-decoration:none;text-overflow:ellipsis;letter-spacing:-0.01rem;white-space:nowrap}/*!@.duet-modal-heading.duet-p-0*/.duet-modal-heading.duet-p-0.sc-duet-modal{padding:0 !important}/*!@.duet-modal-heading.duet-m-0*/.duet-modal-heading.duet-m-0.sc-duet-modal{margin:0 !important}";
15628
15660
 
15629
15661
  // The transition below is slightly higher than the actual CSS transition as VoiceOver on
15630
15662
  // iOS has otherwise problems moving the focus from modal back to the original element.
@@ -15803,12 +15835,12 @@ class DuetModal {
15803
15835
  closeColor = "secondary-turva";
15804
15836
  }
15805
15837
  return (hAsync("div", { ref: modal => (this.modalEl = modal), "aria-label": this.accessibleLabel, "aria-labelledby": this.heading ? this.modalId : false, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-describedby": this.accessibleDescribedBy, role: "dialog", "aria-modal": this.isSafariBrowser ? false : true, tabindex: "-1", "aria-flowto": this.slotDefaultId, class: {
15806
- "duet-modal-overlay": true,
15838
+ "duet-modal-container": true,
15807
15839
  "duet-theme-turva": this.theme === "turva",
15808
15840
  "duet-modal-active": this.open,
15809
15841
  "duet-modal-slide-up": this.variation === "slide-up",
15810
15842
  "duet-modal-has-sticky-header": this.hasStickyHeader,
15811
- } }, hAsync(FocusGuard, { moveFocusTo: this.buttonEl }), hAsync("div", { ref: modalInner => (this.modalInnerEl = modalInner), class: {
15843
+ } }, hAsync(FocusGuard, { moveFocusTo: this.buttonEl }), hAsync("duet-overlay", { "z-index": "-1", visible: this.open }), hAsync("div", { ref: modalInner => (this.modalInnerEl = modalInner), class: {
15812
15844
  "duet-modal-inner": true,
15813
15845
  [this.size]: true,
15814
15846
  "duet-modal-slide-up": this.variation === "slide-up",
@@ -15830,7 +15862,7 @@ class DuetModal {
15830
15862
  "duet-modal-gutter-small": this.gutterSize === "small",
15831
15863
  "duet-modal-gutter-medium": this.gutterSize === "medium",
15832
15864
  "duet-modal-gutter-large": this.gutterSize === "large",
15833
- } }, hAsync("div", { class: "duet-modal-header" }, hAsync("span", { class: "duet-modal-inner-slot-top" }, hAsync("slot", { name: "top" })), this.icon && hAsync("duet-icon", { name: this.icon, size: "xx-large", color: this.color || iconColor }), this.heading && (hAsync("duet-heading", { "visual-level": (_a = this.headingVisualLevel) !== null && _a !== void 0 ? _a : this.headingLevel, level: this.headingLevel, theme: this.theme, id: this.modalId }, this.heading))), hAsync("span", { class: "duet-modal-inner-slot-default", id: this.slotDefaultId }, hAsync("slot", null))))), hAsync(FocusGuard, { moveFocusTo: this.buttonEl })));
15865
+ } }, hAsync("div", { class: "duet-modal-header" }, hAsync("span", { class: "duet-modal-inner-slot-top" }, hAsync("slot", { name: "top" })), this.icon && hAsync("duet-icon", { name: this.icon, size: "xx-large", color: this.color || iconColor }), this.heading && (hAsync("duet-heading", { "visual-level": (_a = this.headingVisualLevel) !== null && _a !== void 0 ? _a : this.headingLevel, level: this.headingLevel, theme: this.theme, id: this.modalId }, this.heading))), hAsync("div", { class: "duet-modal-inner-slot-default", id: this.slotDefaultId }, hAsync("slot", null))))), hAsync(FocusGuard, { moveFocusTo: this.buttonEl })));
15834
15866
  }
15835
15867
  get element() { return getElement(this); }
15836
15868
  static get watchers() { return {
@@ -16774,6 +16806,72 @@ class DuetNumberInput {
16774
16806
  }; }
16775
16807
  }
16776
16808
 
16809
+ const duetOverlayCss = "/*!@.duet-overlay*/.duet-overlay.sc-duet-overlay{position:fixed;top:0;left:0;display:block;width:100%;height:100%;visibility:visible;background:rgb(0, 41, 77);opacity:0.3}/*!@.duet-overlay.duet-theme-turva*/.duet-overlay.duet-theme-turva.sc-duet-overlay{background:rgb(23, 28, 58)}/*!@.duet-overlay.keep-stacking-context*/.duet-overlay.keep-stacking-context.sc-duet-overlay{position:absolute;top:unset;left:unset;z-index:unset !important}/*!@.duet-overlay.modal-overlay*/.duet-overlay.modal-overlay.sc-duet-overlay{z-index:-1}/*!@.duet-overlay.hidden*/.duet-overlay.hidden.sc-duet-overlay{visibility:hidden;opacity:0}/*!@.duet-overlay.display-x-small*/.duet-overlay.display-x-small.sc-duet-overlay{display:none}@media (max-width: 35.9375em){/*!@.duet-overlay.display-x-small*/.duet-overlay.display-x-small.sc-duet-overlay{display:block}}/*!@.duet-overlay.display-x-small.not*/.duet-overlay.display-x-small.not.sc-duet-overlay{display:block}@media (max-width: 35.9375em){/*!@.duet-overlay.display-x-small.not*/.duet-overlay.display-x-small.not.sc-duet-overlay{display:none}}/*!@.duet-overlay.display-small*/.duet-overlay.display-small.sc-duet-overlay{display:none}@media (min-width: 36em){/*!@.duet-overlay.display-small*/.duet-overlay.display-small.sc-duet-overlay{display:block}}/*!@.duet-overlay.display-small.not*/.duet-overlay.display-small.not.sc-duet-overlay{display:block}@media (min-width: 36em){/*!@.duet-overlay.display-small.not*/.duet-overlay.display-small.not.sc-duet-overlay{display:none}}/*!@.duet-overlay.display-medium*/.duet-overlay.display-medium.sc-duet-overlay{display:none}@media (min-width: 48em){/*!@.duet-overlay.display-medium*/.duet-overlay.display-medium.sc-duet-overlay{display:block}}/*!@.duet-overlay.display-medium.not*/.duet-overlay.display-medium.not.sc-duet-overlay{display:block}@media (min-width: 48em){/*!@.duet-overlay.display-medium.not*/.duet-overlay.display-medium.not.sc-duet-overlay{display:none}}/*!@.duet-overlay.display-large*/.duet-overlay.display-large.sc-duet-overlay{display:none}@media (min-width: 62em){/*!@.duet-overlay.display-large*/.duet-overlay.display-large.sc-duet-overlay{display:block}}/*!@.duet-overlay.display-large.not*/.duet-overlay.display-large.not.sc-duet-overlay{display:block}@media (min-width: 62em){/*!@.duet-overlay.display-large.not*/.duet-overlay.display-large.not.sc-duet-overlay{display:none}}/*!@.duet-overlay.transition-slowly*/.duet-overlay.transition-slowly.sc-duet-overlay{transition:600ms ease}/*!@.duet-overlay.transition-quickly*/.duet-overlay.transition-quickly.sc-duet-overlay{transition:300ms ease}";
16810
+
16811
+ /**
16812
+ * @internal
16813
+ * This component is for internal use.
16814
+ */
16815
+ class DuetOverlay {
16816
+ constructor(hostRef) {
16817
+ registerInstance(this, hostRef);
16818
+ this.getDisplayBreakpoint = () => {
16819
+ if (this.displayDevice.startsWith("not")) {
16820
+ return this.displayDevice.substring(this.displayDevice.indexOf("-") + 1);
16821
+ }
16822
+ return this.displayDevice;
16823
+ };
16824
+ this.visible = true;
16825
+ this.keepStackingContext = false;
16826
+ this.modalOverlay = false;
16827
+ this.theme = "";
16828
+ this.displayDevice = "all";
16829
+ this.transition = "slowly";
16830
+ this.zIndex = "400";
16831
+ }
16832
+ /**
16833
+ * Component lifecycle events.
16834
+ */
16835
+ componentWillLoad() {
16836
+ inheritGlobalTheme(this);
16837
+ }
16838
+ /**
16839
+ * render() function
16840
+ * Always the last one in the class.
16841
+ */
16842
+ render() {
16843
+ return (hAsync(Host, null, hAsync("div", { style: { zIndex: this.zIndex }, class: {
16844
+ "duet-overlay": true,
16845
+ "duet-theme-turva": this.theme === "turva",
16846
+ "keep-stacking-context": this.keepStackingContext,
16847
+ [`transition-${this.transition}`]: this.transition !== "immediate",
16848
+ "display-x-small": this.getDisplayBreakpoint() === "x-small",
16849
+ "display-small": this.getDisplayBreakpoint() === "small",
16850
+ "display-medium": this.getDisplayBreakpoint() === "medium",
16851
+ "display-large": this.getDisplayBreakpoint() === "large",
16852
+ not: this.displayDevice.startsWith("not"),
16853
+ hidden: !this.visible,
16854
+ } })));
16855
+ }
16856
+ static get style() { return duetOverlayCss; }
16857
+ static get cmpMeta() { return {
16858
+ "$flags$": 9,
16859
+ "$tagName$": "duet-overlay",
16860
+ "$members$": {
16861
+ "visible": [1540],
16862
+ "keepStackingContext": [1540, "keep-stacking-context"],
16863
+ "modalOverlay": [1540, "modal-overlay"],
16864
+ "theme": [1025],
16865
+ "displayDevice": [1025, "display-device"],
16866
+ "transition": [1025],
16867
+ "zIndex": [1025, "z-index"]
16868
+ },
16869
+ "$listeners$": undefined,
16870
+ "$lazyBundleId$": "-",
16871
+ "$attrsToReflect$": [["visible", "visible"], ["keepStackingContext", "keep-stacking-context"], ["modalOverlay", "modal-overlay"]]
16872
+ }; }
16873
+ }
16874
+
16777
16875
  const duetPageHeadingCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-page-heading,*.sc-duet-page-heading::after,*.sc-duet-page-heading::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-page-heading-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}/*!@.duet-page-heading*/.duet-page-heading.sc-duet-page-heading{position:relative;display:block;width:100%;margin:0 auto;overflow:hidden;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(0, 41, 77)}/*!@.duet-page-heading.duet-p-0*/.duet-page-heading.duet-p-0.sc-duet-page-heading{padding:0 !important}/*!@.duet-page-heading.duet-m-0*/.duet-page-heading.duet-m-0.sc-duet-page-heading{margin:0 !important}/*!@.duet-page-heading.fluid, .duet-page-heading.narrow*/.duet-page-heading.fluid.sc-duet-page-heading,.duet-page-heading.narrow.sc-duet-page-heading{padding:0 16px}@media (min-width: 36em){/*!@.duet-page-heading.fluid*/.duet-page-heading.fluid.sc-duet-page-heading{padding:0 28px}}@media (min-width: 62em){/*!@.duet-page-heading.fluid*/.duet-page-heading.fluid.sc-duet-page-heading{padding:0 56px}}@media (min-width: 76.25em){/*!@.duet-page-heading.fluid*/.duet-page-heading.fluid.sc-duet-page-heading{max-width:1110px;padding:0}}/*!@.duet-page-heading.narrow*/.duet-page-heading.narrow.sc-duet-page-heading{max-width:888px}@media (min-width: 36em){/*!@.duet-page-heading.narrow*/.duet-page-heading.narrow.sc-duet-page-heading{padding:0 48px}}@media (min-width: 48em){/*!@.duet-page-heading.narrow*/.duet-page-heading.narrow.sc-duet-page-heading{padding:0 72px}}/*!@.duet-page-heading .heading*/.duet-page-heading.sc-duet-page-heading .heading.sc-duet-page-heading{max-width:744px;padding:48px 90px 16px 0}@media (min-width: 48em){/*!@.duet-page-heading .heading*/.duet-page-heading.sc-duet-page-heading .heading.sc-duet-page-heading{padding:72px 150px 40px 0}}/*!@.duet-page-heading .background*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading{position:absolute;top:0;right:0;left:0;width:100%;max-width:744px;height:104px;margin:0 auto;margin:0 auto}@media (min-width: 48em){/*!@.duet-page-heading .background*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading{height:165px}}/*!@.duet-page-heading .background .background-mask*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .background-mask.sc-duet-page-heading{position:absolute;top:-20px;right:0;display:block;width:286px;height:331px;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIxIiBoZWlnaHQ9IjI1NyIgdmlld0JveD0iMCAwIDcyMSAyNTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yODIwXzY5OTkxKSI+CjxwYXRoIGQ9Ik04MC4xNzA1IDIzLjE4MTVDOTEuOTY5OSAxOC44NjU5IDEwMi44NyAxMS42NTU5IDExMi45MDkgMS41NjQ0OEMxMjMuNzcgLTguMzA1MjcgMTM0LjM4MiAtMTguMjAxMSAxNDQuODI2IC0yOC4xODgyQzE1NS4yNDMgLTM4LjE2MjIgMTY1LjkwOCAtNDguMDg0MSAxNzYuNzQzIC01Ny45Mjc4QzE3OC44MTYgLTU5LjA0OSAxODAuNDk4IC02MC4yODc3IDE4MS43ODggLTYxLjY1NjdDMTgzLjA2NiAtNjMuMDEyNiAxODUuNDY1IC02Mi4yODI1IDE4OS4wMTIgLTU5LjQ3OTNDMTg0LjczNSAtNTEuMTM1IDE4MC43NTkgLTQyLjk2MDIgMTc3LjAxNyAtMzQuOTAyN0MxNzMuMjg4IC0yNi44NDUyIDE2Ny42ODEgLTE5LjEyNjggMTYwLjIxMSAtMTEuNzYwM0MxNTIuNzUzIC00LjM4MDgzIDE0NC45NTYgMy4zMTE1MiAxMzYuODQ3IDExLjM2OUMxMjguNzI0IDE5LjQyNjUgMTIwLjk2NiAyNy4xNDUgMTEzLjQ4MyAzNC40OTg0Qzk3LjQ5OCA0OS44MTggNzkuNjYyIDU2LjAyNDEgNjAuMDAwOCA1My4xNjg4QzQwLjI4NzQgNTAuMzEzNSAyNS41NDE0IDM5LjA3NDcgMTUuNjk3NyAxOS40Nzg2QzMuOTI0NDUgLTIuMzcyOTkgLTEuMjI1NTUgLTI0LjQ3MjQgMC4yNDc3NDMgLTQ2Ljc4MDNDMS4yNTE2NyAtNjcuNDg0NiAzLjQwMjkzIC04Ny43OTc4IDYuODA1ODQgLTEwNy43NzJDMTAuMTk1NyAtMTI3LjczMyAxNS43MTA4IC0xNDcuNDg2IDIzLjMzOCAtMTY3LjA0M0MyNi4zMTA3IC0xNzQuMDMxIDI5LjAwOTUgLTE4MC44NSAzMS40NzM3IC0xODcuNTY0QzMzLjkxMTggLTE5NC4yMjcgMzYuNTMyNCAtMjAwLjY2OCAzOS4yNTc0IC0yMDYuODQ4QzQxLjgxMjggLTIwOS41NzIgNDMuNDY4NiAtMjEyLjEyOCA0NC4xODU3IC0yMTQuNTRDNTMuMDI1NSAtMjI5LjM3NyA2Mi44MyAtMjM3Ljk5NSA3My42Mzg1IC0yNDAuNDMzQzg0LjM5NDggLTI0Mi44NzEgOTguMTM2OSAtMjM5LjgyMSAxMTQuODEyIC0yMzEuMzJDMTI3Ljk0MiAtMjI1LjYwOSAxMzMuMzkyIC0yMTYuMTA1IDEzMS4xNDkgLTIwMi43OTNDMTMwLjE3MSAtMTkwLjgzNyAxMjcuOTk0IC0xNzkuMjU5IDEyNC42MTcgLTE2OC4wMkMxMjAuMDQxIC0xNTIuNzc5IDExNS40MzggLTEzNy41NTEgMTEwLjg0OSAtMTIyLjMyMkMxMDYuMjczIC0xMDcuMDgxIDEwMS4yNzkgLTkxLjk2OTkgOTUuODk0MyAtNzcuMDAyM0M4NS41OTQzIC00OC42MDU3IDc5LjQyNzQgLTE5LjQyNjcgNzcuNDA2NSAxMC41NjA2Qzc3LjcxOTQgMTIuNDEyIDc4LjA0NTMgMTQuMjYzNSA3OC4zNTgzIDE2LjA4ODhDNzguNjcxMiAxNy45NDAyIDc5LjI3MDkgMjAuMyA4MC4xNzA1IDIzLjE5NDRNMTEwLjkxNCAtMjk2Ljc1N0MxMDkuNTQ1IC0yOTguMDM1IDEwNy4zMTYgLTI5OS4zNTIgMTA0LjIzOSAtMzAwLjczNEMxMDEuMTYyIC0zMDIuMDkgOTguMjQxMiAtMzA0LjA1OSA5NS41NDIzIC0zMDYuNjI3QzkwLjA3OTQgLTMxMS43NzcgODYuOTc2MyAtMzE4LjE2NiA4Ni4yMzMyIC0zMjUuODE5Qzg1LjQ2NCAtMzMzLjQ3MiA4Ny4zODA1IC0zNDAuNTUyIDkxLjk2OTkgLTM0Ny4wNThDOTMuMjIxNSAtMzQ4LjQxNCA5NC4xNDcyIC0zNDkuMjM1IDk0LjY4MTggLTM0OS41MjJDOTUuMTkwMyAtMzQ5Ljc5NiA5Ni4xMDI5IC0zNTAuNjA0IDk3LjM5MzcgLTM1MS45OTlDMTA5LjY3NSAtMzU3LjkwNiAxMjIuNDE0IC0zNTYuNjkzIDEzNS42MzQgLTM0OC4zMzZDMTQ2Ljk1MSAtMzQyLjMyNSAxNTIuMDg4IC0zMzMuMzE2IDE1MS4xMzYgLTMyMS4zNkwxNDguMjI5IC0zMTEuNzM4QzE0NC42NjkgLTI5Ny4wNyAxMzUuNTY5IC0yOTEuNTAzIDEyMC45MTQgLTI5NS4wNjJDMTE5LjA1IC0yOTQuNzIzIDExNS43MzggLTI5NS4yOTcgMTEwLjkxNCAtMjk2Ljc0NCIgZmlsbD0iI0Y1RjVGNyIvPgo8cGF0aCBkPSJNMjQyLjc2NyAyMTUuNTE4QzI0NS4wODggMjEzLjU4OCAyNDcuMjc4IDIxMi4xMDIgMjQ5LjM3NyAyMTAuOTY4QzI1MS40NSAyMDkuODU5IDI1My41MzYgMjA4Ljc1MSAyNTUuNjIyIDIwNy42MDRDMjc0LjIyNyAxOTIuMjg0IDI5MC41NzcgMTc3LjE2IDMwNC43MjMgMTYyLjE5M0MzMTUuNjg4IDE0OC45NDYgMzI2LjYxNCAxMzUuODU2IDMzNy40ODggMTIyLjk4N0MzNDguMzYxIDExMC4xMTkgMzU4Ljg4MyA5Ni45Mzc1IDM2OS4wNjYgODMuNDE3MUMzNzYuNDQ1IDczLjQzMDEgMzg0LjU4MSA2My44NjAyIDM5My40NDcgNTQuNzQ2NkM0MDIuMyA0NS42NDYxIDQxMC44MjYgMzYuMjMyNyA0MTkuMDAxIDI2LjQ4MDNDNDIxLjgwNCAyMi45NzMxIDQyNC4yMjkgMjAuMDAwNCA0MjYuMjg5IDE3LjU0OTNDNDI4LjMyMyAxNS4xMjQzIDQzMC41MDEgMTIuOTMzOCA0MzIuODM1IDExLjAxNzNDNDM0LjkwOCA5LjkwOTA2IDQzNi43NDYgOS41ODMwMSA0MzguMzYzIDEwLjA2NTRDNDM5Ljk1MyAxMC41NDc5IDQ0MS43OTIgMTAuMjQ4IDQ0My45MDQgOS4xMTM3MUM0NDMuMTg3IDExLjUxMjcgNDQyLjgyMiAxMy4zOTAzIDQ0Mi44ODcgMTQuNjk0QzQ0Mi45MjYgMTYuMDIzOSA0NDIuMjg3IDE3LjM2NjggNDQxLjAwOSAxOC43MjI3QzQyNC42NDcgNDYuOTYzIDQwNy42ODQgNzIuODE3MyAzOTAuMTIyIDk2LjMxMTdDMzc2LjY0MSAxMTQuOTU2IDM2My4xNDcgMTMyLjkwOSAzNDkuNjM5IDE1MC4yMjRDMzM2LjEwNiAxNjcuNTI1IDMyMi4yMiAxODUuMzYxIDMwNy45NDQgMjAzLjc1OEMzMDEuNTI5IDIxMC41MzcgMjk1LjM4OCAyMTcuMiAyODkuNDk1IDIyMy43MTlDMjgzLjU4OSAyMzAuMjI1IDI3Ny40MzUgMjM2LjkgMjcxLjAyIDI0My42NjdDMjU4LjkyMSAyNTQuODggMjQ0LjQ4OCAyNTkuMjM0IDIyNy43MzQgMjU2Ljc5NkMxOTYuODYgMjUxLjg4MSAxNzYuMDI1IDIzNi44NzQgMTY1LjIxNyAyMTEuNzg5QzE1NC42OTUgMTg4LjU2OCAxNDkuNTMyIDE2Ni41MDggMTQ5LjcwMiAxNDUuNjA4QzE0Ny45NDIgMTEzLjY3OCAxNDguMzA3IDgxLjk0MzggMTUwLjgxIDUwLjQxOEMxNTMuMyAxOC44NzkyIDE1OC4zMiAtMTIuMzIwNyAxNjUuODY5IC00My4yMDc3QzE4MC4xNzIgLTEwNS4yMDMgMTk4LjU2OCAtMTY2LjQwMyAyMjEuMTExIC0yMjYuODA4QzIzMi4wODkgLTI1Ny41MjYgMjQ0LjQyMyAtMjg3LjYxOCAyNTguMSAtMzE3LjA5NkMyNzEuNzc2IC0zNDYuNTc1IDI4Ni4zNzkgLTM3NS41MDcgMzAxLjk3MiAtNDA0LjAwOEMzMTIuOTUgLTQyNS45OSAzMjQuNjMyIC00NDcuMzQ2IDMzNi45NzkgLTQ2OC4wNjNDMzQ5LjMxMyAtNDg4Ljc1NCAzNjIuNDk1IC01MDkuMjI0IDM3Ni40MzIgLTUyOS40NTlDNDAzLjg2NCAtNTY4LjI5OSA0MzQuMTkgLTYwMy42NzEgNDY3LjM5OCAtNjM1LjU3NUM0NzUuNjM4IC02NDIuNjgxIDQ4My45OTUgLTY0OS4zMTcgNDkyLjQwNSAtNjU1LjUxQzUwMC44MjggLTY2MS42NzcgNTEwLjM5NyAtNjY2LjY1OCA1MjEuMTU0IC02NzAuMzk5QzU0NS4yNzQgLTY3Ny45NjEgNTY3LjcxMiAtNjc2Ljg3OSA1ODguMzkxIC02NjcuMTY2QzYwNC43MjcgLTY2MC40NzggNjEzLjY3MSAtNjQ5LjUxMyA2MTUuMjEgLTYzNC4yMTlDNjE3LjU5NiAtNjI0Ljc1NCA2MTguMTk1IC02MTMuNjcxIDYxNi45ODMgLTYwMC45NTlDNjEwLjMyIC01NTguNDgxIDU5Ny44NTYgLTUxNS41MzQgNTc5LjU1MSAtNDcyLjE5NkM1NjUuNDMxIC00MzkuODIzIDU0OS4wODEgLTQwOC43NTMgNTMwLjUyOCAtMzc5LjAwMUM1MTEuOTM2IC0zNDkuMjYxIDQ5Mi42MTQgLTMxOS45NTIgNDcyLjYgLTI5MS4wOTlDNDY1LjQ1NiAtMjgxLjkyIDQ1Ny45NDYgLTI3MS41MDMgNDUwLjEyMyAtMjU5LjkxMkM0MzMuNTc4IC0yMzYuOTc4IDQxNS42MzcgLTIxNS4xMjYgMzk2LjI4OSAtMTk0LjM1N0MzNzYuOTAyIC0xNzMuNTYxIDM1NS44NDUgLTE1NC4zOTYgMzMzLjA2OCAtMTM2LjgyQzMyMC4zODIgLTEyNi42OSAzMTIuNTMzIC0xMTUuMDg2IDMwOS40ODIgLTEwMi4wNDhDMzA0LjE4OSAtODQuNDQ2OCAyOTguOTc0IC02Ny4wNDExIDI5My43OTggLTQ5Ljg0NEMyODguNjIxIC0zMi42NDY5IDI4My43NzEgLTE1LjExMDggMjc5LjI4NiAyLjcxMjFDMjc1LjI3MSAxOC45NzA1IDI3MS4zMDcgMzQuOTgxIDI2Ny40MjIgNTAuODM1MkMyNjMuNTIzIDY2LjY2MzMgMjU5Ljk2NCA4Mi44NDM0IDI1Ni43NyA5OS4zMzY1QzI1My41NDkgMTE1LjgwMyAyNTAuNjgxIDEzMi42MjIgMjQ4LjE1MiAxNDkuNzQxQzI0NS42MDkgMTY2Ljg2IDI0My4xMzIgMTgzLjc5NyAyNDAuNzQ2IDIwMC40OThDMjQxLjA0NiAyMDIuMzM3IDI0MS4zMDcgMjA0LjM5NiAyNDEuNTE1IDIwNi42MTNDMjQxLjY5OCAyMDguODY4IDI0Mi4xMjggMjExLjg0MSAyNDIuNzggMjE1LjUxOE01NjQuMzIyIC02MjIuMDgxQzU2MS43MjggLTYxOS4zNDMgNTU4LjExNiAtNjE2LjA4MyA1NTMuNDg4IC02MTIuMjM3QzU0Mi4yMzYgLTU5OC4xNjkgNTMwLjk1OCAtNTgzLjkwNiA1MTkuNjI4IC01NjkuNDU5QzUwOC4yNTkgLTU1NC45ODcgNDk4LjA1IC01MzkuOTQxIDQ4OS4wMTUgLTUyNC4zNzRDNDU5LjIzNiAtNDc0Ljg2OSA0MzIuNzY5IC00MjMuOTU2IDQwOS42MDEgLTM3MS42MDhDMzg2LjQxOSAtMzE5LjI0OCAzNjUuMTkzIC0yNjUuNDQgMzQ1LjkzNiAtMjEwLjE3MkMzNDUuNzAyIC0yMDkuMzc3IDM0NS43MDIgLTIwOC43MTIgMzQ2LjAxNSAtMjA4LjE5QzM0Ni4yNjIgLTIwNy42NTYgMzQ2LjE4NCAtMjA2LjU4NyAzNDUuNzE1IC0yMDUuMDA5QzM0OS4zNzggLTIwNS42MjIgMzUxLjM2IC0yMDYuMzM5IDM1MS42MDggLTIwNy4xNDdDMzU1LjQ2NyAtMjExLjIxNSAzNTkuNTA5IC0yMTUuMjMxIDM2My43NDYgLTIxOS4xOTRDMzY3Ljk5NyAtMjIzLjE0NSAzNzEuNzY1IC0yMjcuNjgyIDM3NS4wNzYgLTIzMi44MTlDNDAyLjg4NiAtMjY3LjE2MSA0MjguNzE0IC0zMDIuMTQyIDQ1Mi41MzUgLTMzNy43MzZDNDc2LjM2OCAtMzczLjMwMyA0OTguNTMzIC00MTAuNjk2IDUxOS4wNjggLTQ0OS44ODhDNTQzLjg1MyAtNDk3LjM3MiA1NTkuNTc3IC01NDYuNzM0IDU2Ni4yNTIgLTU5Ny45MzRDNTY2LjY0MyAtNjAyLjE4NSA1NjYuOTE3IC02MDYuMDE4IDU2Ny4xIC02MDkuNDZDNTY3LjI0MyAtNjEyLjkwMiA1NjYuMzE3IC02MTcuMSA1NjQuMzM2IC02MjIuMDgxIiBmaWxsPSIjRjVGNUY3Ii8+CjxwYXRoIGQ9Ik02OTYuNTE1IDE4OS4wNjRDNzA0LjYzOCAxODQuMzk2IDcxMi42ODIgMTc5LjYxMSA3MjAuNjg4IDE3NC43MzVWMTM0LjA1N0M2OTcuODE5IDE0OC41MDMgNjczLjgwMyAxNTkuNjM3IDY0OC42MDEgMTY3LjQyMUM2MjIuMDgyIDE3NS42MzUgNTk0LjU1OCAxODAuNjY3IDU2Ni4wMTggMTgyLjU1OEM1NTAuOTIgMTgzLjI2MiA1NDEuMjk4IDE4MS44OTMgNTM3LjEgMTc4LjQzOEM1MzIuODc2IDE3NS4wMDkgNTI5LjA5NSAxNjUuNzUyIDUyNS43NTcgMTUwLjc0NUw1MjMuOTU4IDEzMC41NDlDNTIzLjMzMiAxMTguMTI0IDUyNC43NjYgMTA2Ljc1NSA1MjguMzM5IDk2LjQyODlDNTMxLjg1OSA4Ni4xNTUgNTM2LjEyMiA3NS42MjAzIDU0MS4xMTYgNjQuODc3QzU0NS42MTQgNjQuNDg1OSA1NDkuNTY0IDY0LjM2ODUgNTUzLjAzMiA2NC41MzhDNTU2LjQ3NSA2NC42OTQ1IDU2MC40MzggNjQuNTc3MSA1NjQuOTQ5IDY0LjE3MjlDNTg1Ljg3NSA2NC4zNjg1IDYwNy42MzYgNjEuNzQ3OSA2MzAuMjY5IDU2LjI4NDlDNjUyLjA4MiA1MC42MjY1IDY3MC40IDQxLjI3ODIgNjg1LjI3NyAyOC4yNTMzQzY5NC45MzggMTkuNzc4NiA3MDQuMDI1IDEwLjM3ODMgNzEyLjU2NSAwLjA5MTMwODZINjM5LjUyNkM2MjAuMjU2IDE2Ljk4ODUgNTk2Ljk0NCAyNy40ODQxIDU2OS41MzkgMzEuNDYwN0M1NjcuNjYxIDMxLjc3MzYgNTY2LjM1NyAzMS44MTI3IDU2NS41NzUgMzEuNTY1QzU2NC43NTQgMzEuMzMwMyA1NjMuODI4IDMxLjUxMjggNTYyLjgxMSAzMi4wNDc0QzU2MS45OSAzMS44MTI3IDU2MS42NTEgMzEuNDk5OCA1NjEuNzgxIDMxLjA4MjZDNTYxLjg5OCAzMC42OTE1IDU2MS41NDYgMzAuMzY1NSA1NjAuNzUxIDMwLjEzMDhDNTYwLjk5OSAyOS4zMzU1IDU2MC45MDcgMjguODY2MSA1NjAuNTE2IDI4Ljc2MThDNTYwLjA5OSAyOC42MTg0IDU2MC4wMzQgMjguMTYyIDU2MC4yOTUgMjcuMzUzN0M1NjUuMzc5IDE4LjE3NDkgNTcwLjc3NyA5LjEwMDU1IDU3Ni40MzYgMC4wOTEzMDg2SDQzMC4xNzZDNDI0LjIwNCAxMi42NzMgNDE5LjA1NCAyNS45NDU2IDQxNC44MyAzOS45ODc1QzQwNi40NzMgNjEuOTU2NSA0MDQuMjgyIDgyLjI2OTcgNDA4LjI4NSAxMDAuOTY2QzQxMi4wMTQgMTIwLjQ1OCA0MTguODMzIDEzOC40NjMgNDI4LjcyOCAxNTQuOTgyQzQzOC42MTEgMTcxLjUyOCA0NTIuNDU4IDE4NS4wODcgNDcwLjI1NCAxOTUuN0M0OTAuNzM3IDIwOC44ODEgNTEyLjE0NSAyMTcuNzIxIDUzNC40MDEgMjIyLjI0NUM1NTYuNjQ0IDIyNi43NTcgNTc5Ljg2NSAyMjYuNTA5IDYwNC4xMTUgMjIxLjU2N0M2MDkuNjQzIDIyMC42MTYgNjE1LjI2MyAyMTkuNDY4IDYyMC45MjEgMjE4LjA5OUM2MjYuNTY3IDIxNi43NTYgNjMyLjI3NyAyMTUuMTkyIDYzOC4wNTMgMjEzLjQxOUM2NTkuMDU3IDIwNy41MjUgNjc4LjU2MiAxOTkuMzkgNjk2LjU0MSAxODkuMDc3IiBmaWxsPSIjRjVGNUY3Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjgyMF82OTk5MSI+CjxyZWN0IHdpZHRoPSI3MjEiIGhlaWdodD0iMjU2Ljg0OCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\");background-repeat:no-repeat;background-size:contain}@media (min-width: 48em){/*!@.duet-page-heading .background .background-mask*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .background-mask.sc-duet-page-heading{top:-40px;width:502px;height:577px}}/*!@.duet-page-heading .background .brand-shape*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .brand-shape.sc-duet-page-heading{position:absolute;top:-157px;right:-20px;width:185px;height:185px;background:rgb(0, 119, 179);border-radius:20%;mix-blend-mode:normal;opacity:0.2;transform:rotate(7deg)}@media (min-width: 48em){/*!@.duet-page-heading .background .brand-shape*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .brand-shape.sc-duet-page-heading{top:-280px;right:-40px;width:325px;height:325px}}/*!@.duet-page-heading .background .brand-shape.second-shape*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .brand-shape.second-shape.sc-duet-page-heading{top:-182px;right:100px;width:207px;height:207px;background:rgb(11, 114, 136);opacity:0.1}@media (min-width: 48em){/*!@.duet-page-heading .background .brand-shape.second-shape*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .brand-shape.second-shape.sc-duet-page-heading{top:-325px;right:200px;width:365px;height:365px}}/*!@.duet-page-heading .background .brand-shaped-icon*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .brand-shaped-icon.sc-duet-page-heading{position:absolute;top:20px;right:16px;display:flex;align-items:center;justify-content:center;width:85px;width:60px;height:85px;height:60px;background:rgba(0, 119, 179, 0.75);border-radius:25%;mix-blend-mode:normal;transform:rotate(7deg)}@media (min-width: 48em){/*!@.duet-page-heading .background .brand-shaped-icon*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .brand-shaped-icon.sc-duet-page-heading{right:36px;width:93px;height:93px}}/*!@.duet-page-heading .background .brand-shaped-icon duet-icon*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .brand-shaped-icon.sc-duet-page-heading duet-icon.sc-duet-page-heading{width:60px;height:60px;transform:rotate(-7deg)}@media (min-width: 48em){/*!@.duet-page-heading .background .brand-shaped-icon duet-icon*/.duet-page-heading.sc-duet-page-heading .background.sc-duet-page-heading .brand-shaped-icon.sc-duet-page-heading duet-icon.sc-duet-page-heading{width:75px;height:75px}}/*!@.duet-page-heading.duet-theme-turva*/.duet-page-heading.duet-theme-turva.sc-duet-page-heading{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(0, 41, 77)}/*!@.duet-page-heading.duet-theme-turva .brand-shaped-icon*/.duet-page-heading.duet-theme-turva.sc-duet-page-heading .brand-shaped-icon.sc-duet-page-heading{background:rgba(198, 12, 48, 0.9);-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat}/*!@.duet-page-heading.duet-theme-turva .brand-shaped-icon duet-icon*/.duet-page-heading.duet-theme-turva.sc-duet-page-heading .brand-shaped-icon.sc-duet-page-heading duet-icon.sc-duet-page-heading{position:relative;top:-3px}";
16778
16876
 
16779
16877
  /**
@@ -18569,8 +18667,12 @@ class DuetPopupMenu {
18569
18667
  if (!this.openButton) {
18570
18668
  return;
18571
18669
  }
18670
+ const middleware = [
18671
+ offset({ mainAxis: this.mainAxisOffset, crossAxis: this.crossAxisOffset }),
18672
+ flip({ mainAxis: !this.forcePlacement }),
18673
+ ];
18572
18674
  const coordinates = await computePosition(this.openButton, this.menuElement, {
18573
- middleware: [offset({ mainAxis: this.mainAxisOffset, crossAxis: this.crossAxisOffset }), flip()],
18675
+ middleware,
18574
18676
  placement: this.placement,
18575
18677
  strategy: this.position,
18576
18678
  });
@@ -18585,6 +18687,7 @@ class DuetPopupMenu {
18585
18687
  this.theme = "";
18586
18688
  this.controller = undefined;
18587
18689
  this.placement = "bottom-start";
18690
+ this.forcePlacement = false;
18588
18691
  this.position = "absolute";
18589
18692
  this.mainAxisOffset = 0;
18590
18693
  this.crossAxisOffset = 0;
@@ -18770,6 +18873,7 @@ class DuetPopupMenu {
18770
18873
  "theme": [1025],
18771
18874
  "controller": [1],
18772
18875
  "placement": [1],
18876
+ "forcePlacement": [4, "force-placement"],
18773
18877
  "position": [1025],
18774
18878
  "mainAxisOffset": [2, "main-axis-offset"],
18775
18879
  "crossAxisOffset": [2, "cross-axis-offset"],
@@ -19609,7 +19713,7 @@ class DuetRangeStepper {
19609
19713
  return (hAsync("div", { class: {
19610
19714
  "duet-range-stepper": true,
19611
19715
  "duet-theme-turva": this.theme === "turva",
19612
- }, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, hAsync("span", { class: "duet-range-step-counter", part: "range-numbers" }, this.generateStepSize()), hAsync("duet-action-button", { class: "duet-range-step-button duet-range-step-minus", onClick: e => this.handleClick(e, -1), id: this.leftBn, "accessible-label": `${this.ariaLabels.previous_increment} ${this.generatePreviousIncrementLabel()}`, ref: el => (this.leftBnRef = el), part: "navigation-arrow", iconName: "action-arrow-left-small" }), hAsync("duet-action-button", { class: "duet-range-step-button duet-range-step-plus", onClick: e => this.handleClick(e, 1), "accessible-label": `${this.ariaLabels.next_increment} ${this.generateNextIncrementLabel()}`, id: this.rightBn, ref: el => (this.rightBnRef = el), part: "navigation-arrow", iconName: "action-arrow-right-small" })));
19716
+ }, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, hAsync("span", { class: "duet-range-step-counter", part: "range-numbers" }, this.generateStepSize()), hAsync("duet-action-button", { class: "duet-range-step-button duet-range-step-minus", onClick: e => this.handleClick(e, -1), id: this.leftBn, "accessible-label": `${this.ariaLabels.previous_increment} ${this.generatePreviousIncrementLabel()}`, ref: el => (this.leftBnRef = el), part: "navigation-arrow", iconName: "action-arrow-left-small", title: "" }), hAsync("duet-action-button", { class: "duet-range-step-button duet-range-step-plus", onClick: e => this.handleClick(e, 1), "accessible-label": `${this.ariaLabels.next_increment} ${this.generateNextIncrementLabel()}`, id: this.rightBn, ref: el => (this.rightBnRef = el), part: "navigation-arrow", iconName: "action-arrow-right-small", title: "" })));
19613
19717
  }
19614
19718
  get element() { return getElement(this); }
19615
19719
  static get watchers() { return {
@@ -20229,7 +20333,7 @@ class DuetShowMore {
20229
20333
  }; }
20230
20334
  }
20231
20335
 
20232
- const duetSlideoutCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-slideout,*.sc-duet-slideout::after,*.sc-duet-slideout::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-slideout-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;height:100%}/*!@::slotted(*)*/.sc-duet-slideout-s>*{position:relative;width:100%;visibility:hidden;opacity:0}/*!@:host([open]:not([open=false])) ::slotted(*)*/.sc-duet-slideout-h[open]:not([open=false]) .sc-duet-slideout-s>*{visibility:visible;opacity:1}/*!@:host(:not([open])) ::slotted(duet-slideout-panel)*/.sc-duet-slideout-h:not([open]) .sc-duet-slideout-s>duet-slideout-panel{display:none}/*!@.duet-slideout*/.duet-slideout.sc-duet-slideout{display:flex;align-items:center;height:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.5;color:rgb(0, 41, 77)}/*!@.duet-slideout.duet-theme-turva*/.duet-slideout.duet-theme-turva.sc-duet-slideout{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-slideout .desktop-bg*/.duet-slideout.sc-duet-slideout .desktop-bg.sc-duet-slideout{display:none}@media (min-width: 62em){/*!@.duet-slideout .desktop-bg*/.duet-slideout.sc-duet-slideout .desktop-bg.sc-duet-slideout{position:fixed;top:0;left:0;z-index:400;display:block;width:100%;height:100%;visibility:hidden;background:rgb(0, 41, 77);opacity:0;transition:600ms ease}/*!@.duet-slideout .desktop-bg:not(.hidden)*/.duet-slideout.sc-duet-slideout .desktop-bg.sc-duet-slideout:not(.hidden){visibility:visible;opacity:0.3;transition:600ms ease}}@media (min-width: 62em){/*!@.duet-slideout.duet-theme-turva .desktop-bg*/.duet-slideout.duet-theme-turva.sc-duet-slideout .desktop-bg.sc-duet-slideout{background:rgb(23, 28, 58)}}/*!@.duet-slideout .dialog*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout{position:fixed;top:0;bottom:0;left:0;z-index:400;width:100%;height:100%;padding-bottom:75px;overflow-y:auto;box-shadow:0 3px 6px 0 rgba(0, 41, 77, 0.1) inset}@media (min-width: 62em){/*!@.duet-slideout .dialog*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout{right:0;left:auto;width:500px;padding-bottom:0;transition:right 300ms ease;transition-delay:0s}}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout{position:sticky;top:0;z-index:200}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot .top*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout .top.sc-duet-slideout{background:rgb(243, 249, 252)}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot .sticky-header*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout .sticky-header.sc-duet-slideout{display:block}/*!@.duet-slideout .dialog .top*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;padding:4px}/*!@.duet-slideout .dialog .top button*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout{cursor:pointer}/*!@.duet-slideout .dialog .top button:focus*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-slideout .dialog .top duet-icon*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout duet-icon.sc-duet-slideout{padding:16px}/*!@.duet-slideout .dialog .sticky-header*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .sticky-header.sc-duet-slideout{display:none;width:100%;padding:0 1.5rem;margin-bottom:20px;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230)}/*!@.duet-slideout .dialog .items*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .items.sc-duet-slideout{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;padding:0 1.5rem}/*!@.duet-slideout .dialog.hidden*/.duet-slideout.sc-duet-slideout .dialog.hidden.sc-duet-slideout{pointer-events:none;visibility:hidden}@media (min-width: 62em){/*!@.duet-slideout .dialog.hidden*/.duet-slideout.sc-duet-slideout .dialog.hidden.sc-duet-slideout{right:-500px;transition:300ms ease}}/*!@.duet-slideout.duet-theme-turva .dialog*/.duet-slideout.duet-theme-turva.sc-duet-slideout .dialog.sc-duet-slideout{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1) inset}/*!@.duet-slideout.duet-theme-turva button*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.sc-duet-slideout{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-slideout.duet-theme-turva button:focus*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.sc-duet-slideout:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-slideout.duet-theme-turva button.active*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.active.sc-duet-slideout{color:rgb(198, 12, 48)}/*!@.duet-slideout.duet-theme-turva button.active::after*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.active.sc-duet-slideout::after{background:rgb(198, 12, 48)}/*!@.duet-slideout.duet-theme-turva .has-sticky-header-slot .top*/.duet-slideout.duet-theme-turva.sc-duet-slideout .has-sticky-header-slot.sc-duet-slideout .top.sc-duet-slideout{background:rgb(245, 245, 247)}/*!@.duet-slideout.duet-theme-turva .has-sticky-header-slot .sticky-header*/.duet-slideout.duet-theme-turva.sc-duet-slideout .has-sticky-header-slot.sc-duet-slideout .sticky-header.sc-duet-slideout{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}/*!@.duet-slideout.duet-theme-turva .dialog .top button:focus*/.duet-slideout.duet-theme-turva.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@slot*/slot.sc-duet-slideout{color:rgb(0, 41, 77)}/*!@.duet-theme-turva slot*/.duet-theme-turva.sc-duet-slideout slot.sc-duet-slideout{color:rgb(23, 28, 58)}";
20336
+ const duetSlideoutCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-slideout,*.sc-duet-slideout::after,*.sc-duet-slideout::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-slideout-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;height:100%}/*!@::slotted(*)*/.sc-duet-slideout-s>*{position:relative;width:100%;visibility:hidden;opacity:0}/*!@:host([open]:not([open=false])) ::slotted(*)*/.sc-duet-slideout-h[open]:not([open=false]) .sc-duet-slideout-s>*{visibility:visible;opacity:1}/*!@:host(:not([open])) ::slotted(duet-slideout-panel)*/.sc-duet-slideout-h:not([open]) .sc-duet-slideout-s>duet-slideout-panel{display:none}/*!@.duet-slideout*/.duet-slideout.sc-duet-slideout{display:flex;align-items:center;height:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.5;color:rgb(0, 41, 77)}/*!@.duet-slideout.duet-theme-turva*/.duet-slideout.duet-theme-turva.sc-duet-slideout{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}@media (min-width: 62em){/*!@.duet-slideout.duet-theme-turva .desktop-bg*/.duet-slideout.duet-theme-turva.sc-duet-slideout .desktop-bg.sc-duet-slideout{background:rgb(23, 28, 58)}}/*!@.duet-slideout .dialog*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout{position:fixed;top:0;bottom:0;left:0;z-index:400;width:100%;height:100%;padding-bottom:75px;overflow-y:auto;box-shadow:0 3px 6px 0 rgba(0, 41, 77, 0.1) inset}@media (min-width: 62em){/*!@.duet-slideout .dialog*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout{right:0;left:auto;width:500px;padding-bottom:0;transition:right 300ms ease;transition-delay:0s}}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout{position:sticky;top:0;z-index:200}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot .top*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout .top.sc-duet-slideout{background:rgb(243, 249, 252)}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot .sticky-header*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout .sticky-header.sc-duet-slideout{display:block}/*!@.duet-slideout .dialog .top*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;padding:4px}/*!@.duet-slideout .dialog .top button*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout{cursor:pointer}/*!@.duet-slideout .dialog .top button:focus*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-slideout .dialog .top duet-icon*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout duet-icon.sc-duet-slideout{padding:16px}/*!@.duet-slideout .dialog .sticky-header*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .sticky-header.sc-duet-slideout{display:none;width:100%;padding:0 1.5rem;margin-bottom:20px;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230)}/*!@.duet-slideout .dialog .items*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .items.sc-duet-slideout{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;padding:0 1.5rem}/*!@.duet-slideout .dialog.hidden*/.duet-slideout.sc-duet-slideout .dialog.hidden.sc-duet-slideout{pointer-events:none;visibility:hidden}@media (min-width: 62em){/*!@.duet-slideout .dialog.hidden*/.duet-slideout.sc-duet-slideout .dialog.hidden.sc-duet-slideout{right:-500px;transition:300ms ease}}/*!@.duet-slideout.duet-theme-turva .dialog*/.duet-slideout.duet-theme-turva.sc-duet-slideout .dialog.sc-duet-slideout{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1) inset}/*!@.duet-slideout.duet-theme-turva button*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.sc-duet-slideout{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-slideout.duet-theme-turva button:focus*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.sc-duet-slideout:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-slideout.duet-theme-turva button.active*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.active.sc-duet-slideout{color:rgb(198, 12, 48)}/*!@.duet-slideout.duet-theme-turva button.active::after*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.active.sc-duet-slideout::after{background:rgb(198, 12, 48)}/*!@.duet-slideout.duet-theme-turva .has-sticky-header-slot .top*/.duet-slideout.duet-theme-turva.sc-duet-slideout .has-sticky-header-slot.sc-duet-slideout .top.sc-duet-slideout{background:rgb(245, 245, 247)}/*!@.duet-slideout.duet-theme-turva .has-sticky-header-slot .sticky-header*/.duet-slideout.duet-theme-turva.sc-duet-slideout .has-sticky-header-slot.sc-duet-slideout .sticky-header.sc-duet-slideout{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}/*!@.duet-slideout.duet-theme-turva .dialog .top button:focus*/.duet-slideout.duet-theme-turva.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@slot*/slot.sc-duet-slideout{color:rgb(0, 41, 77)}/*!@.duet-theme-turva slot*/.duet-theme-turva.sc-duet-slideout slot.sc-duet-slideout{color:rgb(23, 28, 58)}";
20233
20337
 
20234
20338
  /**
20235
20339
  * @slot sticky-header - Content will be fixed to the top of the modal when scrolling.
@@ -20418,10 +20522,7 @@ class DuetSlideout {
20418
20522
  };
20419
20523
  const topLevelOpenMenuBarTranslation = getLocaleString(this.topLevelOpenMenuBarLangObject);
20420
20524
  const exitTranslation = getLocaleString(this.exitLangObject);
20421
- return (hAsync(Host, null, hAsync("div", { class: { "duet-slideout": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("div", { class: {
20422
- "desktop-bg": true,
20423
- hidden: !this.open,
20424
- }, onClick: this.bgOnClick }), hAsync("div", { ref: element => (this.dialog = element), tabindex: "-1", role: "dialog", id: "dialog", "aria-labelledby": "button", "aria-modal": this.isSafariBrowser ? false : true, "aria-flowto": "slot-container", class: {
20525
+ return (hAsync(Host, null, hAsync("div", { class: { "duet-slideout": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("duet-overlay", { onClick: this.bgOnClick, visible: this.open, "display-device": "large" }), hAsync("div", { ref: element => (this.dialog = element), tabindex: "-1", role: "dialog", id: "dialog", "aria-labelledby": "button", "aria-modal": this.isSafariBrowser ? false : true, "aria-flowto": "slot-container", class: {
20425
20526
  dialog: true,
20426
20527
  hidden: !this.open,
20427
20528
  }, style: styles }, hAsync(FocusGuard, { moveFocusTo: this.closeButton }), hAsync("div", { class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, hAsync("div", { class: "top" }, hAsync("button", { ref: element => (this.closeButton = element), "aria-haspopup": "dialog", "aria-controls": "dialog", "aria-expanded": this.open ? "true" : "false", "aria-label": `${exitTranslation}`, type: "button", class: {
@@ -21102,7 +21203,7 @@ class DuetStepper {
21102
21203
  }; }
21103
21204
  }
21104
21205
 
21105
- const duetSubmenuBarCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-submenu-bar,*.sc-duet-submenu-bar::after,*.sc-duet-submenu-bar::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-submenu-bar-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%}/*!@:host(:not([open])) ::slotted(duet-submenu-bar-dropdown)*/.sc-duet-submenu-bar-h:not([open]) .sc-duet-submenu-bar-s>duet-submenu-bar-dropdown{display:none}@media (min-width: 62em){/*!@:host(:not([open])) ::slotted(duet-submenu-bar-dropdown)*/.sc-duet-submenu-bar-h:not([open]) .sc-duet-submenu-bar-s>duet-submenu-bar-dropdown{display:inherit}}/*!@.duet-submenu-bar*/.duet-submenu-bar.sc-duet-submenu-bar{position:relative;z-index:1;background:rgb(243, 249, 252)}@media (min-width: 62em){/*!@.duet-submenu-bar*/.duet-submenu-bar.sc-duet-submenu-bar{border-bottom:1px solid rgb(205, 229, 241)}}/*!@.duet-submenu-bar button*/.duet-submenu-bar.sc-duet-submenu-bar button.sc-duet-submenu-bar{display:flex;align-items:center;justify-content:center;width:100%;padding:12px 0;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;line-height:1.25;color:rgb(0, 41, 77)}/*!@.duet-submenu-bar button.active .caret*/.duet-submenu-bar.sc-duet-submenu-bar button.active.sc-duet-submenu-bar .caret.sc-duet-submenu-bar{transform:rotate(180deg)}/*!@.duet-submenu-bar button:focus*/.duet-submenu-bar.sc-duet-submenu-bar button.sc-duet-submenu-bar:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-submenu-bar button .label*/.duet-submenu-bar.sc-duet-submenu-bar button.sc-duet-submenu-bar .label.sc-duet-submenu-bar{position:relative;display:flex;gap:8px;align-items:center;justify-content:center}@media (min-width: 62em){/*!@.duet-submenu-bar button*/.duet-submenu-bar.sc-duet-submenu-bar button.sc-duet-submenu-bar{display:none}}/*!@.duet-submenu-bar .menu-container*/.duet-submenu-bar.sc-duet-submenu-bar .menu-container.sc-duet-submenu-bar{position:absolute;z-index:399;width:100%}/*!@.duet-submenu-bar .menu-container.hidden*/.duet-submenu-bar.sc-duet-submenu-bar .menu-container.hidden.sc-duet-submenu-bar{max-height:0;overflow:hidden;visibility:hidden}@media (min-width: 62em){/*!@.duet-submenu-bar .menu-container, .duet-submenu-bar .menu-container.hidden*/.duet-submenu-bar.sc-duet-submenu-bar .menu-container.sc-duet-submenu-bar,.duet-submenu-bar.sc-duet-submenu-bar .menu-container.hidden.sc-duet-submenu-bar{position:static;z-index:auto;max-height:unset;overflow:visible;visibility:visible}}/*!@.duet-submenu-bar .items*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar{width:100%;height:70vh;overflow-y:scroll;visibility:visible;background:rgb(243, 249, 252);border-bottom:1px solid rgb(207, 210, 212)}/*!@.duet-submenu-bar .items ::slotted(*)*/.duet-submenu-bar .items .sc-duet-submenu-bar-s>*{position:relative}/*!@.duet-submenu-bar .items.hidden*/.duet-submenu-bar.sc-duet-submenu-bar .items.hidden.sc-duet-submenu-bar{max-height:0;overflow:hidden;visibility:hidden;border-bottom:0 solid rgb(207, 210, 212)}/*!@.duet-submenu-bar .items .list-padding*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar .list-padding.sc-duet-submenu-bar{padding-bottom:188px}@media (min-width: 62em){/*!@.duet-submenu-bar .items .list*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar .list.sc-duet-submenu-bar{display:flex;align-items:center;justify-content:space-between;height:100%}/*!@.duet-submenu-bar .items, .duet-submenu-bar .items.hidden*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar,.duet-submenu-bar.sc-duet-submenu-bar .items.hidden.sc-duet-submenu-bar{position:static;z-index:auto;display:flex;flex-direction:row;align-items:center;justify-content:center;height:auto;max-height:unset;overflow:visible;visibility:visible;border:0}/*!@.duet-submenu-bar .items .list-padding*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar .list-padding.sc-duet-submenu-bar{display:none;padding-bottom:0}}/*!@.duet-submenu-bar .mobile-background*/.duet-submenu-bar.sc-duet-submenu-bar .mobile-background.sc-duet-submenu-bar{position:absolute;width:100%;height:100%;background:rgb(0, 41, 77);opacity:0.3}@media (min-width: 62em){/*!@.duet-submenu-bar .mobile-background*/.duet-submenu-bar.sc-duet-submenu-bar .mobile-background.sc-duet-submenu-bar{display:none}}/*!@.duet-submenu-bar.duet-theme-turva*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}/*!@.duet-submenu-bar.duet-theme-turva button:focus*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar button.sc-duet-submenu-bar:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-submenu-bar.duet-theme-turva .items*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar .items.sc-duet-submenu-bar{background:rgb(245, 245, 247)}/*!@.duet-submenu-bar.duet-theme-turva .mobile-background*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar .mobile-background.sc-duet-submenu-bar{background:rgb(23, 28, 58)}/*!@.duet-submenu-bar.duet-theme-turva .shadow-container .top-shadow*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar .shadow-container.sc-duet-submenu-bar .top-shadow.sc-duet-submenu-bar{box-shadow:0 2px 6px 0 rgba(23, 28, 58, 0.07)}@media (min-width: 62em){/*!@.duet-submenu-bar.duet-theme-turva .shadow-container .top-shadow*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar .shadow-container.sc-duet-submenu-bar .top-shadow.sc-duet-submenu-bar{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1)}}";
21206
+ const duetSubmenuBarCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-submenu-bar,*.sc-duet-submenu-bar::after,*.sc-duet-submenu-bar::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-submenu-bar-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%}/*!@:host(:not([open])) ::slotted(duet-submenu-bar-dropdown)*/.sc-duet-submenu-bar-h:not([open]) .sc-duet-submenu-bar-s>duet-submenu-bar-dropdown{display:none}@media (min-width: 62em){/*!@:host(:not([open])) ::slotted(duet-submenu-bar-dropdown)*/.sc-duet-submenu-bar-h:not([open]) .sc-duet-submenu-bar-s>duet-submenu-bar-dropdown{display:inherit}}/*!@.duet-submenu-bar*/.duet-submenu-bar.sc-duet-submenu-bar{position:relative;z-index:1;background:rgb(243, 249, 252)}@media (min-width: 62em){/*!@.duet-submenu-bar*/.duet-submenu-bar.sc-duet-submenu-bar{border-bottom:1px solid rgb(205, 229, 241)}}/*!@.duet-submenu-bar button*/.duet-submenu-bar.sc-duet-submenu-bar button.sc-duet-submenu-bar{display:flex;align-items:center;justify-content:center;width:100%;padding:12px 0;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;line-height:1.25;color:rgb(0, 41, 77)}/*!@.duet-submenu-bar button.active .caret*/.duet-submenu-bar.sc-duet-submenu-bar button.active.sc-duet-submenu-bar .caret.sc-duet-submenu-bar{transform:rotate(180deg)}/*!@.duet-submenu-bar button:focus*/.duet-submenu-bar.sc-duet-submenu-bar button.sc-duet-submenu-bar:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-submenu-bar button .label*/.duet-submenu-bar.sc-duet-submenu-bar button.sc-duet-submenu-bar .label.sc-duet-submenu-bar{position:relative;display:flex;gap:8px;align-items:center;justify-content:center}@media (min-width: 62em){/*!@.duet-submenu-bar button*/.duet-submenu-bar.sc-duet-submenu-bar button.sc-duet-submenu-bar{display:none}}/*!@.duet-submenu-bar .menu-container*/.duet-submenu-bar.sc-duet-submenu-bar .menu-container.sc-duet-submenu-bar{position:absolute;z-index:399;width:100%}/*!@.duet-submenu-bar .menu-container.hidden*/.duet-submenu-bar.sc-duet-submenu-bar .menu-container.hidden.sc-duet-submenu-bar{max-height:0;overflow:hidden;visibility:hidden}@media (min-width: 62em){/*!@.duet-submenu-bar .menu-container, .duet-submenu-bar .menu-container.hidden*/.duet-submenu-bar.sc-duet-submenu-bar .menu-container.sc-duet-submenu-bar,.duet-submenu-bar.sc-duet-submenu-bar .menu-container.hidden.sc-duet-submenu-bar{position:static;z-index:auto;max-height:unset;overflow:visible;visibility:visible}}/*!@.duet-submenu-bar .items*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar{width:100%;height:70vh;overflow-y:scroll;visibility:visible;background:rgb(243, 249, 252);border-bottom:1px solid rgb(207, 210, 212)}/*!@.duet-submenu-bar .items ::slotted(*)*/.duet-submenu-bar .items .sc-duet-submenu-bar-s>*{position:relative}/*!@.duet-submenu-bar .items.hidden*/.duet-submenu-bar.sc-duet-submenu-bar .items.hidden.sc-duet-submenu-bar{max-height:0;overflow:hidden;visibility:hidden;border-bottom:0 solid rgb(207, 210, 212)}/*!@.duet-submenu-bar .items .list-padding*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar .list-padding.sc-duet-submenu-bar{padding-bottom:188px}@media (min-width: 62em){/*!@.duet-submenu-bar .items .list*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar .list.sc-duet-submenu-bar{display:flex;align-items:center;justify-content:space-between;height:100%}/*!@.duet-submenu-bar .items, .duet-submenu-bar .items.hidden*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar,.duet-submenu-bar.sc-duet-submenu-bar .items.hidden.sc-duet-submenu-bar{position:static;z-index:auto;display:flex;flex-direction:row;align-items:center;justify-content:center;height:auto;max-height:unset;overflow:visible;visibility:visible;border:0}/*!@.duet-submenu-bar .items .list-padding*/.duet-submenu-bar.sc-duet-submenu-bar .items.sc-duet-submenu-bar .list-padding.sc-duet-submenu-bar{display:none;padding-bottom:0}}/*!@.duet-submenu-bar.duet-theme-turva*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}/*!@.duet-submenu-bar.duet-theme-turva button:focus*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar button.sc-duet-submenu-bar:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-submenu-bar.duet-theme-turva .items*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar .items.sc-duet-submenu-bar{background:rgb(245, 245, 247)}/*!@.duet-submenu-bar.duet-theme-turva .mobile-background*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar .mobile-background.sc-duet-submenu-bar{background:rgb(23, 28, 58)}/*!@.duet-submenu-bar.duet-theme-turva .shadow-container .top-shadow*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar .shadow-container.sc-duet-submenu-bar .top-shadow.sc-duet-submenu-bar{box-shadow:0 2px 6px 0 rgba(23, 28, 58, 0.07)}@media (min-width: 62em){/*!@.duet-submenu-bar.duet-theme-turva .shadow-container .top-shadow*/.duet-submenu-bar.duet-theme-turva.sc-duet-submenu-bar .shadow-container.sc-duet-submenu-bar .top-shadow.sc-duet-submenu-bar{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1)}}";
21106
21207
 
21107
21208
  class DuetSubmenuBar {
21108
21209
  constructor(hostRef) {
@@ -21143,7 +21244,8 @@ class DuetSubmenuBar {
21143
21244
  this.checkIfHasItems = () => {
21144
21245
  const hasDropdownLinks = !!this.element.querySelector("duet-submenu-bar-dropdown-link");
21145
21246
  const hasLinks = !!this.element.querySelector("duet-submenu-bar-link");
21146
- return hasDropdownLinks || hasLinks;
21247
+ const hasItems = !!this.element.querySelector("duet-submenu-bar-item");
21248
+ return hasDropdownLinks || hasLinks || hasItems;
21147
21249
  };
21148
21250
  this.mobile = true;
21149
21251
  this.bodyScroll = true;
@@ -21208,13 +21310,13 @@ class DuetSubmenuBar {
21208
21310
  render() {
21209
21311
  return (hAsync(Host, null, hAsync("nav", { class: { "duet-submenu-bar": true, "duet-theme-turva": this.theme === "turva" }, "aria-label": this.accessibleLabel }, this.hasItems && (hAsync("button", { ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", id: "button", type: "button", class: {
21210
21312
  active: this.open,
21211
- }, onClick: this.onClick }, hAsync("div", { class: "label" }, hAsync("slot", { name: "label" }), hAsync("duet-icon", { theme: this.theme, class: "caret", name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" })))), hAsync("div", { class: {
21313
+ }, onClick: this.onClick }, hAsync("span", { class: "label" }, hAsync("slot", { name: "label" }), hAsync("duet-icon", { theme: this.theme, class: "caret", name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" })))), hAsync("div", { class: {
21212
21314
  "menu-container": true,
21213
21315
  hidden: !this.open,
21214
21316
  }, role: "presentation" }, hAsync("div", { role: this.mobile ? "menu" : null, id: "menu", "aria-labelledby": this.mobile ? "button" : null, "aria-expanded": this.mobile ? (this.open ? "true" : "false") : null, class: {
21215
21317
  items: true,
21216
21318
  hidden: !this.open,
21217
- }, ref: element => (this.itemsContainer = element) }, hAsync("div", { class: "list", role: this.mobile ? "presentation" : "list" }, hAsync("slot", null), hAsync("div", { class: "list-padding" }))), hAsync("div", { class: "mobile-background" })))));
21319
+ }, ref: element => (this.itemsContainer = element) }, hAsync("div", { class: "list", role: this.mobile ? "presentation" : "list" }, hAsync("slot", null), hAsync("div", { class: "list-padding" }))), hAsync("duet-overlay", { "keep-stacking-context": true, visible: this.open, "display-device": "not-large", transition: "immediate" })))));
21218
21320
  }
21219
21321
  get element() { return getElement(this); }
21220
21322
  static get watchers() { return {
@@ -24119,6 +24221,7 @@ class DuetUpload {
24119
24221
  cancel: false,
24120
24222
  delete: false,
24121
24223
  };
24224
+ this.renameDuplicates = false;
24122
24225
  this.groups = [
24123
24226
  {
24124
24227
  id: this.DefaultGroups.success,
@@ -24322,12 +24425,56 @@ class DuetUpload {
24322
24425
  // don't present server issues to user on deletes, just remove them from the visible list
24323
24426
  return makeXhrRequest(options);
24324
24427
  }
24428
+ escapeSpecialCharacters(str) {
24429
+ return (str + "").replace(/[\\"'(){}\[\]*?$^+]/g, "\\$&").replace(/\u0000/g, "\\0");
24430
+ }
24431
+ getRenamedFileName(newFileName, extension) {
24432
+ const re = new RegExp(`${this.escapeSpecialCharacters(newFileName)} \\(\\d+\\\).${extension}`);
24433
+ const lastFileName = Array.from(this.files.entries())
24434
+ .map(entry => {
24435
+ const [key, _] = entry;
24436
+ return key;
24437
+ })
24438
+ .filter(existingFileName => {
24439
+ return re.test(existingFileName) || existingFileName === `${newFileName}.${extension}`;
24440
+ })
24441
+ .sort((fileOne, fileTwo) => {
24442
+ //needs to be sorted using file names without extension
24443
+ return fileOne.split(".").slice(0, -1).join(".") > fileTwo.split(".").slice(0, -1).join(".") ? 1 : -1;
24444
+ })
24445
+ .pop()
24446
+ .split(".")
24447
+ .slice(0, -1)
24448
+ .join(".");
24449
+ if (lastFileName === newFileName) {
24450
+ return `${newFileName} (1).${extension}`;
24451
+ }
24452
+ const lastFileNumber = parseInt(lastFileName.split("(").pop().slice(0, -1));
24453
+ return `${newFileName} (${lastFileNumber + 1}).${extension}`;
24454
+ }
24455
+ renameFiles(files) {
24456
+ return files.map(file => {
24457
+ if (this.files.get(file.name)) {
24458
+ const splitName = file.name.split(".");
24459
+ const extension = splitName.pop();
24460
+ const nameWithoutExtension = splitName.join(".");
24461
+ const newName = this.getRenamedFileName(nameWithoutExtension, extension);
24462
+ return new File([file], newName, {
24463
+ type: file.type,
24464
+ lastModified: file.lastModified,
24465
+ });
24466
+ }
24467
+ else {
24468
+ return file;
24469
+ }
24470
+ });
24471
+ }
24325
24472
  /**
24326
24473
  * Component event handling.
24327
24474
  */
24328
24475
  async onChange(ev) {
24329
24476
  var _a;
24330
- const selectedFiles = Array.from((_a = this.nativeInput) === null || _a === void 0 ? void 0 : _a.files);
24477
+ let selectedFiles = Array.from((_a = this.nativeInput) === null || _a === void 0 ? void 0 : _a.files);
24331
24478
  // FileList is a nice array like structure but
24332
24479
  // to ensure uniqueness of files we use a mapping structure and
24333
24480
  // key to the name (makes it easier to delete as well)
@@ -24344,6 +24491,9 @@ class DuetUpload {
24344
24491
  return;
24345
24492
  }
24346
24493
  if (selectedFiles) {
24494
+ if (this.renameDuplicates) {
24495
+ selectedFiles = this.renameFiles(selectedFiles);
24496
+ }
24347
24497
  for (const item of selectedFiles) {
24348
24498
  const { valid, errorMessage, errorType, errorSystem } = validateFile(item, {
24349
24499
  maxBytes: this.maxBytes,
@@ -24454,6 +24604,7 @@ class DuetUpload {
24454
24604
  "hideHeader": [4, "hide-header"],
24455
24605
  "emitEvent": [4, "link-click-event"],
24456
24606
  "actionButtonTitles": [1, "action-button-titles"],
24607
+ "renameDuplicates": [4, "rename-duplicates"],
24457
24608
  "groups": [16],
24458
24609
  "tick": [32],
24459
24610
  "setFocus": [64],
@@ -24809,6 +24960,7 @@ registerComponents([
24809
24960
  DuetNotification,
24810
24961
  DuetNotificationDrawer,
24811
24962
  DuetNumberInput,
24963
+ DuetOverlay,
24812
24964
  DuetPageHeading,
24813
24965
  DuetPagination,
24814
24966
  DuetParagraph,