@duetds/components 6.9.7 → 6.9.9

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 (501) hide show
  1. package/hydrate/index.js +103 -21
  2. package/lib/cjs/duet-action-button.cjs.entry.js +1 -1
  3. package/lib/cjs/duet-alert.cjs.entry.js +1 -1
  4. package/lib/cjs/duet-badge.cjs.entry.js +5 -2
  5. package/lib/cjs/duet-banner.cjs.entry.js +58 -0
  6. package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
  7. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
  8. package/lib/cjs/duet-button_2.cjs.entry.js +1 -1
  9. package/lib/cjs/duet-callout.cjs.entry.js +1 -1
  10. package/lib/cjs/duet-caption_4.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-card.cjs.entry.js +1 -1
  12. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  13. package/lib/cjs/duet-checkmark.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-choice_2.cjs.entry.js +2 -2
  15. package/lib/cjs/duet-collapsible.cjs.entry.js +1 -1
  16. package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
  17. package/lib/cjs/duet-contact-card.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  20. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-editable-table_3.cjs.entry.js +34 -21
  22. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  23. package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-header_2.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-icon.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  32. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +1 -1
  35. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-menu-bar.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-modal.cjs.entry.js +2 -2
  38. package/lib/cjs/duet-multiselect.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-nav.cjs.entry.js +1 -1
  40. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  41. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  42. package/lib/cjs/duet-page-heading.cjs.entry.js +1 -1
  43. package/lib/cjs/duet-pagination_2.cjs.entry.js +1 -1
  44. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  45. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  46. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  47. package/lib/cjs/duet-scrollable_3.cjs.entry.js +1 -1
  48. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  49. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  50. package/lib/cjs/duet-slideout-lang.cjs.entry.js +1 -1
  51. package/lib/cjs/duet-slideout-link.cjs.entry.js +1 -1
  52. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +1 -1
  53. package/lib/cjs/duet-slideout-panel.cjs.entry.js +2 -2
  54. package/lib/cjs/duet-slideout.cjs.entry.js +2 -2
  55. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  56. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +1 -1
  57. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +1 -1
  58. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +1 -1
  59. package/lib/cjs/duet-submenu-bar.cjs.entry.js +1 -1
  60. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  61. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  62. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +1 -1
  63. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +1 -1
  64. package/lib/cjs/duet-toolbar-link.cjs.entry.js +1 -1
  65. package/lib/cjs/duet-toolbar.cjs.entry.js +1 -1
  66. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  67. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  68. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  69. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  70. package/lib/cjs/duet.cjs.js +2 -2
  71. package/lib/cjs/{focus-utils-8852d70c.js → focus-utils-fa983dd9.js} +1 -1
  72. package/lib/cjs/{index-8baedc34.js → index-6458021e.js} +1 -1
  73. package/lib/cjs/loader.cjs.js +2 -2
  74. package/lib/collection/collection-manifest.json +1 -0
  75. package/lib/collection/components/duet-badge/duet-badge.css +30 -0
  76. package/lib/collection/components/duet-badge/duet-badge.js +25 -1
  77. package/lib/collection/components/duet-banner/duet-banner.css +238 -0
  78. package/lib/collection/components/duet-banner/duet-banner.js +282 -0
  79. package/lib/collection/components/duet-upload/duet-upload.css +2 -1
  80. package/lib/collection/components/duet-upload/duet-upload.js +29 -16
  81. package/lib/collection/components/duet-upload/upload-item.js +1 -1
  82. package/lib/collection/components/duet-upload/upload-validators.js +2 -2
  83. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  84. package/lib/dist-custom-elements/duet-alert.js +1 -1
  85. package/lib/dist-custom-elements/duet-badge.js +1 -1
  86. package/lib/dist-custom-elements/duet-banner.d.ts +11 -0
  87. package/lib/dist-custom-elements/duet-banner.js +106 -0
  88. package/lib/dist-custom-elements/duet-breadcrumb.js +2 -2
  89. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  90. package/lib/dist-custom-elements/duet-button.js +1 -1
  91. package/lib/dist-custom-elements/duet-callout.js +3 -3
  92. package/lib/dist-custom-elements/duet-caption.js +1 -1
  93. package/lib/dist-custom-elements/duet-card.js +3 -3
  94. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  95. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  96. package/lib/dist-custom-elements/duet-choice-group.js +6 -6
  97. package/lib/dist-custom-elements/duet-choice.js +5 -5
  98. package/lib/dist-custom-elements/duet-collapsible.js +2 -2
  99. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  100. package/lib/dist-custom-elements/duet-contact-card.js +8 -8
  101. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  102. package/lib/dist-custom-elements/duet-date-picker.js +10 -10
  103. package/lib/dist-custom-elements/duet-divider.js +1 -1
  104. package/lib/dist-custom-elements/duet-editable-table.js +7 -7
  105. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  106. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  107. package/lib/dist-custom-elements/duet-footer.js +4 -4
  108. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  109. package/lib/dist-custom-elements/duet-grid.js +1 -1
  110. package/lib/dist-custom-elements/duet-header.js +8 -8
  111. package/lib/dist-custom-elements/duet-heading.js +1 -1
  112. package/lib/dist-custom-elements/duet-hero.js +9 -9
  113. package/lib/dist-custom-elements/duet-icon.js +1 -1
  114. package/lib/dist-custom-elements/duet-input.js +1 -1
  115. package/lib/dist-custom-elements/duet-label.js +1 -1
  116. package/lib/dist-custom-elements/duet-layout.js +1 -1
  117. package/lib/dist-custom-elements/duet-link.js +1 -1
  118. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  119. package/lib/dist-custom-elements/duet-list.js +1 -1
  120. package/lib/dist-custom-elements/duet-logo.js +1 -1
  121. package/lib/dist-custom-elements/duet-menu-bar-button.js +2 -2
  122. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
  123. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +2 -2
  124. package/lib/dist-custom-elements/duet-menu-bar-link.js +2 -2
  125. package/lib/dist-custom-elements/duet-menu-bar.js +2 -2
  126. package/lib/dist-custom-elements/duet-modal.js +7 -7
  127. package/lib/dist-custom-elements/duet-multiselect.js +8 -8
  128. package/lib/dist-custom-elements/duet-nav.js +1 -1
  129. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  130. package/lib/dist-custom-elements/duet-notification.js +2 -2
  131. package/lib/dist-custom-elements/duet-number-input.js +9 -9
  132. package/lib/dist-custom-elements/duet-page-heading.js +2 -2
  133. package/lib/dist-custom-elements/duet-pagination.js +7 -7
  134. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  135. package/lib/dist-custom-elements/duet-progress.js +1 -1
  136. package/lib/dist-custom-elements/duet-radio-group.js +6 -6
  137. package/lib/dist-custom-elements/duet-radio.js +1 -1
  138. package/lib/dist-custom-elements/duet-range-slider.js +2 -2
  139. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  140. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  141. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  142. package/lib/dist-custom-elements/duet-select.js +1 -1
  143. package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
  144. package/lib/dist-custom-elements/duet-slideout-link.js +2 -2
  145. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +2 -2
  146. package/lib/dist-custom-elements/duet-slideout-panel.js +2 -2
  147. package/lib/dist-custom-elements/duet-slideout.js +2 -2
  148. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  149. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  150. package/lib/dist-custom-elements/duet-step.js +4 -4
  151. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  152. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +2 -2
  153. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +2 -2
  154. package/lib/dist-custom-elements/duet-submenu-bar-link.js +2 -2
  155. package/lib/dist-custom-elements/duet-submenu-bar.js +2 -2
  156. package/lib/dist-custom-elements/duet-tab-group.js +9 -9
  157. package/lib/dist-custom-elements/duet-tab.js +1 -1
  158. package/lib/dist-custom-elements/duet-table.js +1 -1
  159. package/lib/dist-custom-elements/duet-textarea.js +8 -8
  160. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  161. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  162. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +2 -2
  163. package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
  164. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  165. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  166. package/lib/dist-custom-elements/duet-tray.js +3 -3
  167. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  168. package/lib/dist-custom-elements/duet-upload.js +50 -37
  169. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  170. package/lib/dist-custom-elements/index.js +1 -1
  171. package/lib/dist-custom-elements/{p-c243ec01.js → p-03a771e5.js} +1 -1
  172. package/lib/dist-custom-elements/{p-cbb67f4e.js → p-03fac45c.js} +6 -2
  173. package/lib/dist-custom-elements/{p-783a8425.js → p-05a05595.js} +2 -2
  174. package/lib/dist-custom-elements/{p-e4e40736.js → p-0a69e3b3.js} +2 -2
  175. package/lib/dist-custom-elements/{p-4d20fcd1.js → p-0cb56bb9.js} +1 -1
  176. package/lib/dist-custom-elements/{p-5119f1dc.js → p-1c96efe4.js} +5 -5
  177. package/lib/dist-custom-elements/{p-1d207f70.js → p-2016d4b6.js} +4 -4
  178. package/lib/dist-custom-elements/{p-f2d8763d.js → p-28a2867d.js} +2 -2
  179. package/lib/dist-custom-elements/{p-f83c1df9.js → p-2f00315d.js} +1 -1
  180. package/lib/dist-custom-elements/{p-99687f8f.js → p-33febd8f.js} +6 -6
  181. package/lib/dist-custom-elements/{p-e080ccaa.js → p-41292d2c.js} +1 -1
  182. package/lib/dist-custom-elements/{p-e2a3c6fa.js → p-5a47bc96.js} +2 -2
  183. package/lib/dist-custom-elements/{p-d95944c8.js → p-5b5d17f3.js} +1 -1
  184. package/lib/dist-custom-elements/{p-369a9e6b.js → p-5ead396d.js} +3 -3
  185. package/lib/dist-custom-elements/{p-1635a5ff.js → p-64a956b4.js} +3 -3
  186. package/lib/dist-custom-elements/{p-7e395433.js → p-6b78d508.js} +1 -1
  187. package/lib/dist-custom-elements/{p-68be9a91.js → p-6ff98382.js} +1 -1
  188. package/lib/dist-custom-elements/{p-93fab31d.js → p-7dd80f67.js} +1 -1
  189. package/lib/dist-custom-elements/{p-5183d2cf.js → p-82c0eb06.js} +1 -1
  190. package/lib/dist-custom-elements/{p-649043a8.js → p-8602f0db.js} +2 -2
  191. package/lib/dist-custom-elements/{p-8bad78a6.js → p-87d2c0ec.js} +1 -1
  192. package/lib/dist-custom-elements/{p-62683175.js → p-89f3161e.js} +1 -1
  193. package/lib/dist-custom-elements/{p-87df78c6.js → p-91b3be02.js} +1 -1
  194. package/lib/dist-custom-elements/{p-2a351223.js → p-92a019ee.js} +1 -1
  195. package/lib/dist-custom-elements/{p-53c27e8e.js → p-c378c210.js} +1 -1
  196. package/lib/dist-custom-elements/{p-efa5255b.js → p-c743a945.js} +1 -1
  197. package/lib/dist-custom-elements/{p-7a905f45.js → p-ca2e89f9.js} +3 -3
  198. package/lib/dist-custom-elements/{p-67365843.js → p-ce8cf9ec.js} +1 -1
  199. package/lib/dist-custom-elements/{p-3d6100be.js → p-dcffecc4.js} +1 -1
  200. package/lib/dist-custom-elements/{p-9d1b018a.js → p-f75ab0c6.js} +1 -1
  201. package/lib/dist-custom-elements/{p-f0e99128.js → p-fa15f186.js} +8 -8
  202. package/lib/duet/duet.esm.js +1 -1
  203. package/lib/duet/duet.js +1 -1
  204. package/lib/duet/{p-75316086.entry.js → p-01717a41.entry.js} +1 -1
  205. package/lib/duet/{p-c50233e1.entry.js → p-02c4a268.entry.js} +1 -1
  206. package/lib/duet/{p-e6f92c08.system.entry.js → p-05facbba.system.entry.js} +1 -1
  207. package/lib/duet/{p-981f2443.system.entry.js → p-07cd43dd.system.entry.js} +1 -1
  208. package/lib/duet/{p-d1b6fd73.system.entry.js → p-07dc92fb.system.entry.js} +1 -1
  209. package/lib/duet/p-098d8b8a.entry.js +4 -0
  210. package/lib/duet/{p-991271a2.entry.js → p-09a14ff5.entry.js} +1 -1
  211. package/lib/duet/{p-7f94280a.system.entry.js → p-0befd44d.system.entry.js} +1 -1
  212. package/lib/duet/{p-93a2c807.entry.js → p-0f35e1d3.entry.js} +1 -1
  213. package/lib/duet/{p-5e6542bc.entry.js → p-0fef3886.entry.js} +1 -1
  214. package/lib/duet/{p-2879b97d.entry.js → p-11315361.entry.js} +1 -1
  215. package/lib/duet/{p-1028e393.system.entry.js → p-11cd9794.system.entry.js} +1 -1
  216. package/lib/duet/{p-4cb43c38.entry.js → p-137eac42.entry.js} +1 -1
  217. package/lib/duet/{p-07d0ed0a.system.entry.js → p-1a066cc4.system.entry.js} +1 -1
  218. package/lib/duet/{p-42844e9d.system.entry.js → p-1a5f720a.system.entry.js} +1 -1
  219. package/lib/duet/{p-f5fd8e55.entry.js → p-1b2b7dff.entry.js} +1 -1
  220. package/lib/duet/{p-a341e9c3.entry.js → p-1e1c669f.entry.js} +1 -1
  221. package/lib/duet/{p-36bca919.system.entry.js → p-1f6604b6.system.entry.js} +1 -1
  222. package/lib/duet/{p-675f844b.entry.js → p-207e6b86.entry.js} +1 -1
  223. package/lib/duet/{p-9f81873c.entry.js → p-223ddc9e.entry.js} +1 -1
  224. package/lib/duet/p-2cf26ac0.entry.js +4 -0
  225. package/lib/duet/{p-b90cdb91.entry.js → p-2f52c5c4.entry.js} +1 -1
  226. package/lib/duet/{p-2d71fa26.entry.js → p-3004c42c.entry.js} +1 -1
  227. package/lib/duet/{p-0a6ff475.entry.js → p-3210abe1.entry.js} +1 -1
  228. package/lib/duet/{p-12afe002.entry.js → p-33795872.entry.js} +1 -1
  229. package/lib/duet/{p-458dd158.entry.js → p-33e2e7fb.entry.js} +1 -1
  230. package/lib/duet/{p-4a4cbba5.entry.js → p-37c7cf28.entry.js} +1 -1
  231. package/lib/duet/{p-bef59086.system.entry.js → p-39881509.system.entry.js} +1 -1
  232. package/lib/duet/{p-a042bc85.system.entry.js → p-3d2ff3f6.system.entry.js} +2 -2
  233. package/lib/duet/{p-d6196775.system.entry.js → p-3f7eb02a.system.entry.js} +1 -1
  234. package/lib/duet/{p-97df072f.system.entry.js → p-3fafab99.system.entry.js} +1 -1
  235. package/lib/duet/{p-853ac360.entry.js → p-40832454.entry.js} +1 -1
  236. package/lib/duet/{p-752fb0a0.system.entry.js → p-408c3116.system.entry.js} +1 -1
  237. package/lib/duet/{p-c94a423f.entry.js → p-44853a8f.entry.js} +1 -1
  238. package/lib/duet/{p-401a454b.system.entry.js → p-45b5eb38.system.entry.js} +1 -1
  239. package/lib/duet/{p-a9d7b38d.entry.js → p-4a8f88cd.entry.js} +1 -1
  240. package/lib/duet/{p-68ee9bfa.system.entry.js → p-4c13b341.system.entry.js} +1 -1
  241. package/lib/duet/{p-2125b071.entry.js → p-4fd6be33.entry.js} +1 -1
  242. package/lib/duet/{p-d4d2569e.entry.js → p-50086422.entry.js} +1 -1
  243. package/lib/duet/{p-7fefe439.entry.js → p-553810c1.entry.js} +1 -1
  244. package/lib/duet/{p-c56dd6d7.entry.js → p-55d93288.entry.js} +1 -1
  245. package/lib/duet/{p-98777ba0.system.entry.js → p-59c24c1d.system.entry.js} +1 -1
  246. package/lib/duet/{p-344134e5.system.entry.js → p-59d5ce79.system.entry.js} +1 -1
  247. package/lib/duet/p-5c932b27.entry.js +4 -0
  248. package/lib/duet/{p-45fe4429.entry.js → p-5d8d2ad9.entry.js} +1 -1
  249. package/lib/duet/p-5ec46b22.system.entry.js +4 -0
  250. package/lib/duet/{p-1a0b0fe9.system.entry.js → p-5ec6c209.system.entry.js} +1 -1
  251. package/lib/duet/{p-e5d2b68e.entry.js → p-64451781.entry.js} +1 -1
  252. package/lib/duet/{p-a6aba2d3.entry.js → p-675d2789.entry.js} +1 -1
  253. package/lib/duet/{p-1396c277.system.entry.js → p-677e25e4.system.entry.js} +1 -1
  254. package/lib/duet/p-67f9d03d.entry.js +4 -0
  255. package/lib/duet/{p-0fc1b439.system.entry.js → p-69af241b.system.entry.js} +1 -1
  256. package/lib/duet/{p-cca182be.js → p-6a5197de.js} +1 -1
  257. package/lib/duet/p-6a912ecd.entry.js +4 -0
  258. package/lib/duet/{p-0e165a4e.system.entry.js → p-70296f0d.system.entry.js} +1 -1
  259. package/lib/duet/p-70813bbd.entry.js +4 -0
  260. package/lib/duet/{p-91be047f.system.entry.js → p-723cfa6b.system.entry.js} +1 -1
  261. package/lib/duet/{p-03bd5373.entry.js → p-738d8474.entry.js} +1 -1
  262. package/lib/duet/{p-466c4910.system.entry.js → p-7513fd0c.system.entry.js} +1 -1
  263. package/lib/duet/{p-7e3e70df.entry.js → p-7585b32b.entry.js} +1 -1
  264. package/lib/duet/{p-de82bfee.entry.js → p-7979217a.entry.js} +1 -1
  265. package/lib/duet/{p-097da893.system.entry.js → p-79cdfdac.system.entry.js} +1 -1
  266. package/lib/duet/{p-5573222d.system.entry.js → p-7d6f73b0.system.entry.js} +1 -1
  267. package/lib/duet/{p-3e7b62a4.entry.js → p-8461814e.entry.js} +1 -1
  268. package/lib/duet/{p-0f80e2fc.entry.js → p-847ef90d.entry.js} +1 -1
  269. package/lib/duet/{p-09d4bac7.system.entry.js → p-85172888.system.entry.js} +1 -1
  270. package/lib/duet/{p-e0848924.system.entry.js → p-858a8c64.system.entry.js} +1 -1
  271. package/lib/duet/{p-62a63d5b.system.entry.js → p-8608217b.system.entry.js} +1 -1
  272. package/lib/duet/{p-106abf71.system.entry.js → p-86d94665.system.entry.js} +1 -1
  273. package/lib/duet/{p-e05c4a5b.entry.js → p-8764cdb4.entry.js} +1 -1
  274. package/lib/duet/{p-3de9ea90.entry.js → p-8959a0c0.entry.js} +1 -1
  275. package/lib/duet/{p-41a69e48.system.entry.js → p-898bc783.system.entry.js} +1 -1
  276. package/lib/duet/{p-a1a8395b.entry.js → p-8aafd4a7.entry.js} +1 -1
  277. package/lib/duet/{p-bb97ab92.entry.js → p-8bfb274a.entry.js} +1 -1
  278. package/lib/duet/{p-92e94229.system.entry.js → p-8dcbf05c.system.entry.js} +1 -1
  279. package/lib/duet/{p-4c1fb962.entry.js → p-8e562cf5.entry.js} +1 -1
  280. package/lib/duet/{p-79dd09a6.system.entry.js → p-8f689ce6.system.entry.js} +1 -1
  281. package/lib/duet/{p-c504d7cd.system.entry.js → p-930685a4.system.entry.js} +1 -1
  282. package/lib/duet/{p-9916b7d2.system.entry.js → p-934ced59.system.entry.js} +1 -1
  283. package/lib/duet/{p-2bc4d34e.system.entry.js → p-938f359e.system.entry.js} +1 -1
  284. package/lib/duet/p-95e8df59.system.entry.js +4 -0
  285. package/lib/duet/{p-b4ff5c09.entry.js → p-962195fb.entry.js} +1 -1
  286. package/lib/duet/{p-70e49d00.entry.js → p-9710c3f7.entry.js} +1 -1
  287. package/lib/duet/{p-66fbed51.entry.js → p-9a1ecf90.entry.js} +1 -1
  288. package/lib/duet/{p-48ef2786.system.entry.js → p-9bdfa86b.system.entry.js} +2 -2
  289. package/lib/duet/{p-6dc868fd.entry.js → p-a19b6ccf.entry.js} +1 -1
  290. package/lib/duet/{p-32eecc8d.system.entry.js → p-a1b05275.system.entry.js} +1 -1
  291. package/lib/duet/{p-2d5be93c.system.entry.js → p-a2227d28.system.entry.js} +1 -1
  292. package/lib/duet/{p-f5a74f01.js → p-a49a5097.js} +1 -1
  293. package/lib/duet/{p-6a0f118b.system.entry.js → p-a4de801d.system.entry.js} +1 -1
  294. package/lib/duet/{p-0b752687.system.entry.js → p-abeb3b84.system.entry.js} +1 -1
  295. package/lib/duet/{p-cff8b0b3.entry.js → p-af4ac5be.entry.js} +1 -1
  296. package/lib/duet/{p-3e2c87e6.entry.js → p-af87553c.entry.js} +1 -1
  297. package/lib/duet/{p-a653bb02.entry.js → p-afe7ce51.entry.js} +1 -1
  298. package/lib/duet/{p-6325ae2d.entry.js → p-b080376a.entry.js} +1 -1
  299. package/lib/duet/{p-3b1ff9be.system.entry.js → p-b0fcda06.system.entry.js} +1 -1
  300. package/lib/duet/{p-da04e483.system.entry.js → p-b2626ec8.system.entry.js} +1 -1
  301. package/lib/duet/{p-7cf776fa.system.entry.js → p-b5d900d3.system.entry.js} +1 -1
  302. package/lib/duet/{p-e057d8c4.system.entry.js → p-b66695ef.system.entry.js} +1 -1
  303. package/lib/duet/{p-79eb3572.entry.js → p-b719e4cb.entry.js} +1 -1
  304. package/lib/duet/{p-1677ce5c.system.entry.js → p-b82d0fdb.system.entry.js} +1 -1
  305. package/lib/duet/{p-3c88792b.entry.js → p-b8bcc305.entry.js} +1 -1
  306. package/lib/duet/{p-ed16d00b.system.entry.js → p-bd1849d6.system.entry.js} +1 -1
  307. package/lib/duet/{p-8349ff2d.system.entry.js → p-bf455575.system.entry.js} +1 -1
  308. package/lib/duet/{p-9c127e8f.entry.js → p-c04c6248.entry.js} +1 -1
  309. package/lib/duet/{p-8d5edbbe.system.entry.js → p-c09bbafd.system.entry.js} +1 -1
  310. package/lib/duet/{p-a903a315.entry.js → p-c2bb41f9.entry.js} +1 -1
  311. package/lib/duet/{p-04da22d7.system.entry.js → p-c3d22035.system.entry.js} +1 -1
  312. package/lib/duet/{p-dc4b4a04.system.entry.js → p-c5114bba.system.entry.js} +1 -1
  313. package/lib/duet/{p-08693a37.entry.js → p-c733066c.entry.js} +1 -1
  314. package/lib/duet/{p-9791ab1b.system.entry.js → p-c7ad00f4.system.entry.js} +1 -1
  315. package/lib/duet/{p-e65bc05f.system.entry.js → p-c7c6b436.system.entry.js} +1 -1
  316. package/lib/duet/{p-1c0a39db.entry.js → p-c8ba04d5.entry.js} +1 -1
  317. package/lib/duet/{p-29b9e99e.entry.js → p-cec4aeeb.entry.js} +1 -1
  318. package/lib/duet/{p-57a26a2a.entry.js → p-d1ed830b.entry.js} +1 -1
  319. package/lib/duet/{p-2c68ee2d.system.entry.js → p-d5e6a304.system.entry.js} +1 -1
  320. package/lib/duet/{p-613156e6.system.entry.js → p-d845a37f.system.entry.js} +1 -1
  321. package/lib/duet/{p-5d15cd89.system.entry.js → p-d85a7192.system.entry.js} +1 -1
  322. package/lib/duet/{p-afcfc528.system.entry.js → p-dc811a3d.system.entry.js} +1 -1
  323. package/lib/duet/{p-f691d0b6.entry.js → p-deb0bb9c.entry.js} +1 -1
  324. package/lib/duet/{p-9ec19751.entry.js → p-df68b590.entry.js} +1 -1
  325. package/lib/duet/{p-df7481e8.entry.js → p-e1284442.entry.js} +1 -1
  326. package/lib/duet/{p-4c7fb05f.system.entry.js → p-e2cd279a.system.entry.js} +1 -1
  327. package/lib/duet/{p-029f96ec.system.entry.js → p-e46fa9a5.system.entry.js} +1 -1
  328. package/lib/duet/{p-97528238.system.entry.js → p-eb8a72f4.system.entry.js} +1 -1
  329. package/lib/duet/p-ebc26c88.system.js +4 -0
  330. package/lib/duet/{p-7bab508c.system.js → p-ec3e32a8.system.js} +1 -1
  331. package/lib/duet/{p-c6a321f1.system.entry.js → p-ec943cac.system.entry.js} +1 -1
  332. package/lib/duet/{p-5c17a74a.system.entry.js → p-ed2e78a7.system.entry.js} +1 -1
  333. package/lib/duet/{p-7b99f674.entry.js → p-ed758b6d.entry.js} +1 -1
  334. package/lib/duet/{p-6dcce504.system.entry.js → p-ee9b7edd.system.entry.js} +1 -1
  335. package/lib/duet/{p-f8d91f4b.entry.js → p-f1e68813.entry.js} +1 -1
  336. package/lib/duet/{p-6ba40ef9.system.entry.js → p-f36d48e8.system.entry.js} +1 -1
  337. package/lib/duet/{p-0a03a862.system.entry.js → p-f3e40435.system.entry.js} +1 -1
  338. package/lib/duet/{p-44f22e6b.entry.js → p-f42965e7.entry.js} +1 -1
  339. package/lib/duet/{p-d7e6a4ed.system.js → p-f4b68f29.system.js} +1 -1
  340. package/lib/duet/{p-789a9af4.entry.js → p-f6cff5e9.entry.js} +1 -1
  341. package/lib/duet/{p-0cdc880e.entry.js → p-f893eaf3.entry.js} +1 -1
  342. package/lib/duet/{p-f7fbc435.entry.js → p-f960017b.entry.js} +1 -1
  343. package/lib/duet/{p-3d6d2012.system.entry.js → p-fc5b6b43.system.entry.js} +1 -1
  344. package/lib/duet/{p-5f7a2639.system.entry.js → p-fcb0872f.system.entry.js} +1 -1
  345. package/lib/esm/duet-action-button.entry.js +1 -1
  346. package/lib/esm/duet-alert.entry.js +1 -1
  347. package/lib/esm/duet-badge.entry.js +5 -2
  348. package/lib/esm/duet-banner.entry.js +54 -0
  349. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  350. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  351. package/lib/esm/duet-button_2.entry.js +1 -1
  352. package/lib/esm/duet-callout.entry.js +1 -1
  353. package/lib/esm/duet-caption_4.entry.js +1 -1
  354. package/lib/esm/duet-card.entry.js +1 -1
  355. package/lib/esm/duet-checkbox.entry.js +1 -1
  356. package/lib/esm/duet-checkmark.entry.js +1 -1
  357. package/lib/esm/duet-choice_2.entry.js +2 -2
  358. package/lib/esm/duet-collapsible.entry.js +1 -1
  359. package/lib/esm/duet-combobox.entry.js +1 -1
  360. package/lib/esm/duet-contact-card.entry.js +1 -1
  361. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  362. package/lib/esm/duet-date-picker.entry.js +2 -2
  363. package/lib/esm/duet-divider_2.entry.js +1 -1
  364. package/lib/esm/duet-editable-table_3.entry.js +34 -21
  365. package/lib/esm/duet-empty-state.entry.js +1 -1
  366. package/lib/esm/duet-fieldset.entry.js +1 -1
  367. package/lib/esm/duet-footer.entry.js +1 -1
  368. package/lib/esm/duet-grid_2.entry.js +1 -1
  369. package/lib/esm/duet-header_2.entry.js +1 -1
  370. package/lib/esm/duet-hero.entry.js +1 -1
  371. package/lib/esm/duet-icon.entry.js +1 -1
  372. package/lib/esm/duet-input_2.entry.js +1 -1
  373. package/lib/esm/duet-layout.entry.js +1 -1
  374. package/lib/esm/duet-list_2.entry.js +1 -1
  375. package/lib/esm/duet-menu-bar-button.entry.js +1 -1
  376. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +1 -1
  377. package/lib/esm/duet-menu-bar-dropdown.entry.js +1 -1
  378. package/lib/esm/duet-menu-bar-link.entry.js +1 -1
  379. package/lib/esm/duet-menu-bar.entry.js +1 -1
  380. package/lib/esm/duet-modal.entry.js +2 -2
  381. package/lib/esm/duet-multiselect.entry.js +1 -1
  382. package/lib/esm/duet-nav.entry.js +1 -1
  383. package/lib/esm/duet-notification_2.entry.js +1 -1
  384. package/lib/esm/duet-number-input.entry.js +1 -1
  385. package/lib/esm/duet-page-heading.entry.js +1 -1
  386. package/lib/esm/duet-pagination_2.entry.js +1 -1
  387. package/lib/esm/duet-progress.entry.js +1 -1
  388. package/lib/esm/duet-radio_2.entry.js +1 -1
  389. package/lib/esm/duet-range-slider.entry.js +1 -1
  390. package/lib/esm/duet-scrollable_3.entry.js +1 -1
  391. package/lib/esm/duet-section-layout.entry.js +1 -1
  392. package/lib/esm/duet-select.entry.js +1 -1
  393. package/lib/esm/duet-slideout-lang.entry.js +1 -1
  394. package/lib/esm/duet-slideout-link.entry.js +1 -1
  395. package/lib/esm/duet-slideout-panel-dropdown.entry.js +1 -1
  396. package/lib/esm/duet-slideout-panel.entry.js +2 -2
  397. package/lib/esm/duet-slideout.entry.js +2 -2
  398. package/lib/esm/duet-step_2.entry.js +1 -1
  399. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +1 -1
  400. package/lib/esm/duet-submenu-bar-dropdown.entry.js +1 -1
  401. package/lib/esm/duet-submenu-bar-link.entry.js +1 -1
  402. package/lib/esm/duet-submenu-bar.entry.js +1 -1
  403. package/lib/esm/duet-textarea.entry.js +1 -1
  404. package/lib/esm/duet-toggle.entry.js +1 -1
  405. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  406. package/lib/esm/duet-toolbar-dropdown.entry.js +1 -1
  407. package/lib/esm/duet-toolbar-link.entry.js +1 -1
  408. package/lib/esm/duet-toolbar.entry.js +1 -1
  409. package/lib/esm/duet-tooltip.entry.js +1 -1
  410. package/lib/esm/duet-tray.entry.js +1 -1
  411. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  412. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  413. package/lib/esm/duet.js +3 -3
  414. package/lib/esm/{focus-utils-1e6af8c1.js → focus-utils-9f1c7598.js} +1 -1
  415. package/lib/esm/{index-77de1d56.js → index-73ee1942.js} +1 -1
  416. package/lib/esm/loader.js +3 -3
  417. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  418. package/lib/esm-es5/duet-alert.entry.js +1 -1
  419. package/lib/esm-es5/duet-badge.entry.js +1 -1
  420. package/lib/esm-es5/duet-banner.entry.js +4 -0
  421. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  422. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  423. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  424. package/lib/esm-es5/duet-callout.entry.js +1 -1
  425. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  426. package/lib/esm-es5/duet-card.entry.js +1 -1
  427. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  428. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  429. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  430. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  431. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  432. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  433. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  434. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  435. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  436. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  437. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  438. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  439. package/lib/esm-es5/duet-footer.entry.js +1 -1
  440. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  441. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  442. package/lib/esm-es5/duet-hero.entry.js +1 -1
  443. package/lib/esm-es5/duet-icon.entry.js +1 -1
  444. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  445. package/lib/esm-es5/duet-layout.entry.js +1 -1
  446. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  447. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  448. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  449. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  450. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  451. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  452. package/lib/esm-es5/duet-modal.entry.js +1 -1
  453. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  454. package/lib/esm-es5/duet-nav.entry.js +1 -1
  455. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  456. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  457. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  458. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  459. package/lib/esm-es5/duet-progress.entry.js +1 -1
  460. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  461. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  462. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  463. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  464. package/lib/esm-es5/duet-select.entry.js +1 -1
  465. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  466. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  467. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  468. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  469. package/lib/esm-es5/duet-slideout.entry.js +1 -1
  470. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  471. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  472. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  473. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  474. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  475. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  476. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  477. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  478. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +2 -2
  479. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  480. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  481. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  482. package/lib/esm-es5/duet-tray.entry.js +1 -1
  483. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  484. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  485. package/lib/esm-es5/duet.js +1 -1
  486. package/lib/esm-es5/focus-utils-9f1c7598.js +4 -0
  487. package/lib/esm-es5/{index-77de1d56.js → index-73ee1942.js} +1 -1
  488. package/lib/esm-es5/loader.js +1 -1
  489. package/lib/types/components/duet-badge/duet-badge.d.ts +6 -1
  490. package/lib/types/components/duet-banner/duet-banner.d.ts +57 -0
  491. package/lib/types/components/duet-upload/duet-upload.d.ts +1 -0
  492. package/lib/types/components.d.ts +105 -2
  493. package/package.json +5 -5
  494. package/lib/duet/p-01d38ac9.entry.js +0 -4
  495. package/lib/duet/p-151892ff.system.entry.js +0 -4
  496. package/lib/duet/p-1c0453e0.system.js +0 -4
  497. package/lib/duet/p-4634f44d.entry.js +0 -4
  498. package/lib/duet/p-5074accf.entry.js +0 -4
  499. package/lib/duet/p-c39467e4.entry.js +0 -4
  500. package/lib/duet/p-d3bba23f.entry.js +0 -4
  501. package/lib/esm-es5/focus-utils-1e6af8c1.js +0 -4
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const jsUtils = require('./js-utils-134e0318.js');
11
11
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
@@ -477,7 +477,7 @@ const UploadItem = ({ data, showLinks, type, actions, errorCodes, theme, label,
477
477
  index.h("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }),
478
478
  index.h("duet-spacer", { size: "xx-small", direction: "horizontal" }),
479
479
  name),
480
- index.h("visually-hidden", null,
480
+ index.h("duet-visually-hidden", null,
481
481
  index.h("duet-paragraph", null, languageUtils.getLocaleString(fileUploadingInfo))),
482
482
  index.h("duet-progress", { progress: Math.ceil(progress), "aria-hidden": true })));
483
483
  case "pending":
@@ -605,7 +605,7 @@ const validateTotalSizeIsAboveMax = (filelist, maxTotalBytes) => {
605
605
  total += item.size;
606
606
  }
607
607
  });
608
- if (total > maxTotalBytes) {
608
+ if (total >= maxTotalBytes) {
609
609
  return true;
610
610
  }
611
611
  }
@@ -619,7 +619,7 @@ const validateTotalAmountIsAboveMax = (filelist, maxFiles) => {
619
619
  total++;
620
620
  }
621
621
  });
622
- if (total > maxFiles) {
622
+ if (total >= maxFiles) {
623
623
  return true;
624
624
  }
625
625
  }
@@ -655,7 +655,7 @@ const makeXhrRequest = ({ payload, options, onFailure, onSuccess, onProgress })
655
655
  return xhr;
656
656
  };
657
657
 
658
- const duetUploadCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}::slotted([slot=uploadfooter]){margin-top:20px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:rgb(245, 248, 250)}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button),.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-action-button::part(button){border:0}duet-paragraph::part(duet-paragraph){word-break:break-word}duet-editable-table tfoot{display:none}.upload-bottom-caption{margin-top:12px;margin-bottom:28px}.items-header{display:none;flex-direction:row;margin-bottom:0}@media (min-width: 36em){.items-header{display:flex}}.items-header:not(:last-child),.items-header:not(:first-child){margin-top:12px}.items-header .category-header{width:35%}.items-header .filename-header{width:65%}.items-header .filename-header.no-category{width:100%}.upload-item-row{display:flex;flex-direction:column;gap:16px;align-content:center;align-items:center;padding:16px 0 16px 0;border-bottom:1px solid rgb(225, 227, 230)}@media (min-width: 36em){.upload-item-row{flex-direction:row;gap:10px}}.upload-item-row .item-categories{width:100%}@media (min-width: 36em){.upload-item-row .item-categories{width:35%}}.upload-item-row .item-name{position:relative;bottom:2px;width:100%;text-align:left}@media (min-width: 36em){.upload-item-row .item-name{width:50%}.upload-item-row .item-name.no-category{width:85%}}.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:block}@media (min-width: 36em){.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:none}}.upload-item-row .item-actions{width:100%;margin-left:-8px;text-align:left}@media (min-width: 36em){.upload-item-row .item-actions{width:15%;padding-top:0;margin-left:auto;text-align:right}}.upload-item-row .duet-upload-item-name duet-icon{position:relative;top:4px}.upload-item-row .duet-upload-item-name duet-progress{display:block;margin-top:16px}";
658
+ const duetUploadCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}::slotted([slot=uploadfooter]){margin-top:20px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:rgb(245, 248, 250)}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button),.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-action-button::part(button){border:0}duet-paragraph::part(duet-paragraph){word-break:break-word}duet-editable-table tfoot{display:none}.upload-bottom-caption{margin-top:12px;margin-bottom:16px;line-height:1.4rem}.items-header{display:none;flex-direction:row;margin-bottom:0}@media (min-width: 36em){.items-header{display:flex}}.items-header:not(:last-child),.items-header:not(:first-child){margin-top:12px}.items-header .category-header{width:35%}.items-header .filename-header{width:65%}.items-header .filename-header.no-category{width:100%}.upload-item-row{display:flex;flex-direction:column;gap:16px;align-content:center;align-items:center;padding:16px 0 16px 0;border-bottom:1px solid rgb(225, 227, 230)}@media (min-width: 36em){.upload-item-row{flex-direction:row;gap:10px}}.upload-item-row .item-categories{width:100%}@media (min-width: 36em){.upload-item-row .item-categories{width:35%}}.upload-item-row .item-name{position:relative;bottom:2px;width:100%;text-align:left}@media (min-width: 36em){.upload-item-row .item-name{width:50%}.upload-item-row .item-name.no-category{width:85%}}.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:block}@media (min-width: 36em){.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:none}}.upload-item-row .item-actions{width:100%;margin-left:-8px;text-align:left}@media (min-width: 36em){.upload-item-row .item-actions{width:15%;padding-top:0;margin-left:auto;text-align:right}}.upload-item-row .duet-upload-item-name duet-icon{position:relative;top:4px}.upload-item-row .duet-upload-item-name duet-progress{display:block;margin-top:16px}";
659
659
 
660
660
  const DuetUpload = class {
661
661
  constructor(hostRef) {
@@ -839,6 +839,12 @@ const DuetUpload = class {
839
839
  this.nativeInput.value = "";
840
840
  };
841
841
  this.startUpload = async (ev, metaData = undefined) => {
842
+ // validate that we haven't hit any maxfiles or maxbytes limits before we upload
843
+ const { bytesMaxReached, fileMaxReached } = this.validateTotals();
844
+ if (bytesMaxReached || fileMaxReached) {
845
+ this.kick();
846
+ return;
847
+ }
842
848
  this.metaData = metaData;
843
849
  this.nativeInput.click();
844
850
  this.onUpload(ev, metaData);
@@ -949,12 +955,23 @@ const DuetUpload = class {
949
955
  }
950
956
  return null;
951
957
  };
958
+ this.handleExternalUploadButton = (bytesMaxReached, fileMaxReached) => {
959
+ if (this.externalUploadButton) {
960
+ if (bytesMaxReached || fileMaxReached) {
961
+ this.externalUploadButton.disabled = true;
962
+ }
963
+ else {
964
+ this.externalUploadButton.disabled = false;
965
+ }
966
+ }
967
+ };
952
968
  this.onDelete = (key, ev) => {
953
969
  const item = this.getItemFromUID(key);
954
970
  const retrievedKey = item.key;
955
971
  const deletedItem = this.files.get(retrievedKey);
956
972
  this.files.delete(retrievedKey);
957
- this.validateTotals();
973
+ const { bytesMaxReached, fileMaxReached } = this.validateTotals();
974
+ this.handleExternalUploadButton(bytesMaxReached, fileMaxReached);
958
975
  this.kick();
959
976
  this.duetDelete.emit({
960
977
  originalEvent: ev,
@@ -971,15 +988,15 @@ const DuetUpload = class {
971
988
  const retrievedKey = this.getItemFromUID(key).key;
972
989
  const cancelledItem = this.files.get(retrievedKey);
973
990
  this.files.delete(retrievedKey);
991
+ const { bytesMaxReached, fileMaxReached } = this.validateTotals();
992
+ this.handleExternalUploadButton(bytesMaxReached, fileMaxReached);
974
993
  if (!this.external) {
975
994
  const { xhr } = cancelledItem;
976
995
  if (xhr) {
977
996
  xhr.abort();
978
997
  }
979
998
  }
980
- else {
981
- this.kick();
982
- }
999
+ this.kick();
983
1000
  this.resetFormFields();
984
1001
  this.duetCancel.emit({
985
1002
  originalEvent: ev,
@@ -1293,7 +1310,13 @@ const DuetUpload = class {
1293
1310
  * Method for invoking the upload sequence
1294
1311
  */
1295
1312
  async upload(metaData = undefined) {
1296
- await this.setFocus();
1313
+ // validate that we haven't hit any maxfiles or maxbytes limits before we upload
1314
+ const { bytesMaxReached, fileMaxReached } = this.validateTotals();
1315
+ if (bytesMaxReached || fileMaxReached) {
1316
+ this.handleExternalUploadButton(bytesMaxReached, fileMaxReached);
1317
+ this.kick();
1318
+ return;
1319
+ }
1297
1320
  this.metaData = metaData;
1298
1321
  this.nativeInput.click();
1299
1322
  return;
@@ -1441,17 +1464,7 @@ const DuetUpload = class {
1441
1464
  url: false,
1442
1465
  };
1443
1466
  this.files.set(item.name, fileListItem);
1444
- // validate that we haven't hit any maxfiles or maxbytes limits before we upload
1445
- const { bytesMaxReached, fileMaxReached } = this.validateTotals(item.name);
1446
- if (bytesMaxReached) {
1447
- // in case one of the global maxes have been reached, invalidate the file
1448
- this.updateValueInMap(item.name, "valid", false, false);
1449
- }
1450
- else if (fileMaxReached) {
1451
- // in case one of the global maxes have been reached, invalidate the file
1452
- this.updateValueInMap(item.name, "valid", false, false);
1453
- }
1454
- else if (valid && !this.external) {
1467
+ if (valid && !this.external) {
1455
1468
  await this.uploadFile(fileListItem);
1456
1469
  }
1457
1470
  else if (valid && this.external) {
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
 
11
11
  const duetEmptyStateCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%;height:100%}.duet-empty-state{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%;height:100%;padding:48px;color:rgb(0, 41, 77);text-align:center;background:rgb(245, 248, 250);border-radius:4px}.duet-empty-state.duet-theme-turva{color:rgb(23, 28, 58);background:rgb(245, 245, 247)}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const actionArrowRight = require('./action-arrow-right-24fe06be.js');
10
10
  const actionNewWindowSmall = require('./action-new-window-small-fa51dfb9.js');
11
11
  const commonStrings = require('./common-strings-de17f887.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const tokens = require('./tokens-21b244ee.js');
10
10
  const watchOptions = require('./watch-options-d88afac0.js');
11
11
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const formSearch = require('./form-search-d61b2843.js');
10
10
  const tokens = require('./tokens-21b244ee.js');
11
11
  const bodyScrollLock_es6 = require('./bodyScrollLock.es6-6ef1142a.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const actionNewWindowSmall = require('./action-new-window-small-fa51dfb9.js');
10
10
  const commonStrings = require('./common-strings-de17f887.js');
11
11
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const tokenUtils = require('./token-utils-966776e9.js');
11
11
  require('./tokens.module-d402cfac.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const formSearch = require('./form-search-d61b2843.js');
10
10
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
11
11
  const createId = require('./create-id-c3b984b1.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const isInternetExplorer = require('./is-internet-explorer-91361c56.js');
10
10
 
11
11
  const duetLayoutCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;flex:1 0 auto;width:100%}:host(.duet-middle){display:flex}:host(.duet-middle) .duet-layout{padding:36px 28px !important}@media (min-width: 36em){:host(.duet-middle) .duet-layout{padding:48px 36px !important}}@media (min-width: 62em){:host(.duet-middle) .duet-layout{padding:56px !important}}:host(.duet-ie){height:100%}:host(.duet-middle.duet-ie){height:auto}.duet-layout{position:relative;padding:0 16px;margin:48px auto 36px}@media (max-width: 20.5em){.duet-layout.padding-xxx-small{padding:0}}@media (max-width: 22.5em){.duet-layout.padding-xx-small{padding:0}}@media (max-width: 35.9375em){.duet-layout.padding-x-small{padding:0}}@media (min-width: 36em){.duet-layout.padding-small{padding:0}}@media (min-width: 48em){.duet-layout.padding-medium{padding:0}}@media (min-width: 62em){.duet-layout.padding-large{padding:0}}@media (min-width: 64.0625em){.duet-layout.padding-x-large{padding:0}}@media (min-width: 76.25em){.duet-layout.padding-xx-large{padding:0}}@media (min-width: 106.25em){.duet-layout.padding-xxx-large{padding:0}}@media (min-width: 36em){.duet-layout{margin-top:72px}}.duet-layout.duet-layout-has-top{margin-top:0}.duet-layout.duet-m-0{margin-top:0 !important;margin-bottom:0 !important}.duet-layout.duet-center{display:flex;align-items:center;justify-content:center;width:100%;max-width:888px}@media (min-width: 36em){.duet-layout.duet-center{padding:0 48px}}@media (min-width: 48em){.duet-layout.duet-center{padding:0 72px}}@media (min-width: 62em){.duet-layout.duet-center{width:100%}}@media (min-width: 36em){.duet-layout{padding:0 28px}}@media (min-width: 62em){.duet-layout{display:flex;flex-direction:row;padding:0 56px;margin-bottom:48px}}@media (min-width: 76.25em){.duet-layout{max-width:1110px;padding:0}}.duet-main,.duet-sidebar,.duet-layout-top,.duet-layout-bottom{display:block;width:100%}.duet-layout-top{position:relative;display:block;width:100%;margin:72px auto 0}.duet-layout-top.duet-m-0{margin-top:0 !important;margin-bottom:0 !important}.duet-layout-top .duet-layout-top-wrapper{padding:0 20px;margin:0 auto}@media (min-width: 36em){.duet-layout-top .duet-layout-top-wrapper{padding:0 28px}}@media (min-width: 62em){.duet-layout-top .duet-layout-top-wrapper{padding:0 56px}}@media (min-width: 76.25em){.duet-layout-top .duet-layout-top-wrapper{max-width:1110px;padding:0}}.duet-center .duet-layout-top-wrapper{max-width:888px}@media (min-width: 36em){.duet-center .duet-layout-top-wrapper{padding:0 48px}}@media (min-width: 48em){.duet-center .duet-layout-top-wrapper{padding:0 72px}}@media (min-width: 62em){.duet-main{min-width:600px;margin:0 auto}.has-sidebar .duet-main{max-width:734px;margin-right:20px}}@media (min-width: 62em){.duet-sidebar{min-width:256px;max-width:356px}}@media (min-width: 62em){.duet-sidebar-container{width:auto;max-width:356px}}@media (min-width: 62em){.duet-sidebar-container.has-tabs{margin-top:89px}}@media (min-width: 62em){.duet-sidebar-container.sticky{position:sticky}.duet-sidebar-container.sticky.with-links{top:calc(3rem + 20px)}.duet-sidebar-container.sticky.without-links{top:calc(4rem + 20px)}}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const watchOptions = require('./watch-options-d88afac0.js');
11
11
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const tokens = require('./tokens-21b244ee.js');
10
10
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
11
11
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
11
11
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const tokens = require('./tokens-21b244ee.js');
10
10
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
11
11
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const tokens = require('./tokens-21b244ee.js');
10
10
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
11
11
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const tokens = require('./tokens-21b244ee.js');
10
10
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
11
11
 
@@ -5,11 +5,11 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const bodyScrollLock_es6 = require('./bodyScrollLock.es6-6ef1142a.js');
10
10
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
11
11
  const createId = require('./create-id-c3b984b1.js');
12
- const focusUtils = require('./focus-utils-8852d70c.js');
12
+ const focusUtils = require('./focus-utils-fa983dd9.js');
13
13
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
14
14
  const languageUtils = require('./language-utils-44df1d37.js');
15
15
  require('./string-utils-5cadd058.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
 
11
11
  const duetNavCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%}slot[name=mobile]{display:inherit}slot[name=desktop]{display:none}@media (min-width: 62em){slot[name=mobile]{display:none}slot[name=desktop]{display:inherit}}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const languageUtils = require('./language-utils-44df1d37.js');
11
11
  const actionArrowDownSmall = require('./action-arrow-down-small-ef77a2d1.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
 
11
11
  const duetPageHeadingCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{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{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{padding:0 !important}.duet-page-heading.duet-m-0{margin:0 !important}.duet-page-heading.fluid,.duet-page-heading.narrow{padding:0 16px}@media (min-width: 36em){.duet-page-heading.fluid{padding:0 28px}}@media (min-width: 62em){.duet-page-heading.fluid{padding:0 56px}}@media (min-width: 76.25em){.duet-page-heading.fluid{max-width:1110px;padding:0}}.duet-page-heading.narrow{max-width:888px}@media (min-width: 36em){.duet-page-heading.narrow{padding:0 48px}}@media (min-width: 48em){.duet-page-heading.narrow{padding:0 72px}}.duet-page-heading .heading{max-width:744px;padding:48px 90px 16px 0}@media (min-width: 48em){.duet-page-heading .heading{padding:72px 150px 40px 0}}.duet-page-heading .background{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{height:165px}}.duet-page-heading .background .background-mask{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{top:-40px;width:502px;height:577px}}.duet-page-heading .background .brand-shape{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{top:-280px;right:-40px;width:325px;height:325px}}.duet-page-heading .background .brand-shape.second-shape{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{top:-325px;right:200px;width:365px;height:365px}}.duet-page-heading .background .brand-shaped-icon{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{right:36px;width:93px;height:93px}}.duet-page-heading .background .brand-shaped-icon duet-icon{width:60px;height:60px;transform:rotate(-7deg)}@media (min-width: 48em){.duet-page-heading .background .brand-shaped-icon duet-icon{width:75px;height:75px}}.duet-page-heading.duet-theme-turva{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{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{position:relative;top:-3px}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
  const jsUtils = require('./js-utils-134e0318.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
  const languageUtils = require('./language-utils-44df1d37.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
  const watchOptions = require('./watch-options-d88afac0.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const tokens_module = require('./tokens.module-d402cfac.js');
10
10
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
11
11
  const createId = require('./create-id-c3b984b1.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const languageUtils = require('./language-utils-44df1d37.js');
11
11
  const createId = require('./create-id-c3b984b1.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const isInternetExplorer = require('./is-internet-explorer-91361c56.js');
10
10
 
11
11
  const duetSectionLayoutCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;flex:1 0 auto;width:100%}:host(.duet-middle){display:flex}:host(.duet-middle) .duet-layout{padding:36px 28px !important}@media (min-width: 36em){:host(.duet-middle) .duet-layout{padding:48px 36px !important}}@media (min-width: 62em){:host(.duet-middle) .duet-layout{padding:56px !important}}:host(.duet-ie){height:100%}:host(.duet-middle.duet-ie){height:auto}.duet-layout{position:relative;padding:0 16px;margin:48px auto 36px}@media (min-width: 36em){.duet-layout{margin-top:72px}}.duet-layout.duet-m-0{margin-top:0 !important;margin-bottom:0 !important}@media (min-width: 36em){.duet-layout{padding:0 28px}}@media (min-width: 62em){.duet-layout{display:flex;flex-direction:row;padding:0 56px;margin-bottom:48px}}@media (min-width: 76.25em){.duet-layout{max-width:1110px;padding:0}}.duet-main{display:block;width:100%}@media (min-width: 62em){.duet-main{min-width:600px;margin:0 auto}.has-sidebar .duet-main{max-width:734px;margin-right:20px}}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
  const stringUtils = require('./string-utils-5cadd058.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const languageUtils = require('./language-utils-44df1d37.js');
11
11
  require('./string-utils-5cadd058.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
 
11
11
  const duetSlideoutLinkCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%;height:100%}.duet-slideout-link{position:relative;display:flex;gap:20px;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:8px 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:inherit;font-weight:inherit;line-height:1.25;color:inherit;text-align:left;text-decoration:none}.duet-slideout-link.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}.duet-slideout-link:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}.duet-slideout-link:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px rgb(23, 28, 58)}.duet-slideout-link.active span{position:relative}.duet-slideout-link.active span::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:var(--active-height, 2px);content:\"\";background:rgb(0, 119, 179);transform:var(--active-translate-y, translateY(2px))}.duet-slideout-link.active.duet-theme-turva span::after{background:rgb(198, 12, 48)}.duet-slideout-link.small{font-size:1rem;font-weight:600}.duet-slideout-link.small span::after{--active-height:1px;--active-translate-y:1px}.duet-slideout-link.medium{font-size:1.25rem;font-weight:600}.duet-slideout-link.large{font-size:1.5rem;font-weight:800}.duet-slideout-link .label{display:flex;gap:0.5rem;align-items:center;justify-content:space-between;width:100%}slot[name=description]::slotted(*){display:block;padding:8px 0 0;font-size:1rem;font-size:1.25;font-weight:400;color:rgb(101, 119, 135)}.duet-theme-turva slot[name=description]::slotted(*){color:rgb(68, 68, 69)}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
 
11
11
  const duetSlideoutPanelDropdownCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%;height:100%}:host slot:not([name=label])::slotted(*){position:relative;top:-0.5rem;opacity:0;transition:top 0.3s ease-in, opacity 0.3s ease-in}:host([open]) slot:not([name=label])::slotted(*){top:0;opacity:1}.duet-slideout-panel-dropdown{position:relative;width:100%;height:100%}.duet-slideout-panel-dropdown button{position:relative;display:flex;gap:20px;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:8px 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:1.25rem;font-weight:800;line-height:1.25;color:rgb(0, 41, 77);text-align:center;text-decoration:none;cursor:pointer}.duet-slideout-panel-dropdown button .label{position:relative;display:flex;gap:0.5rem;align-items:center;justify-content:center}.duet-slideout-panel-dropdown button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}.duet-slideout-panel-dropdown button.active .label::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:calc(100% - 18px);height:1px;content:\"\";background:rgb(0, 119, 179);transform:translateY(1px)}.duet-slideout-panel-dropdown .items{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-height:1000px;padding:4px 20px 8px 44px;overflow-y:auto;visibility:visible;transition:max-height 0.3s ease-in, padding-bottom 0.3s ease-in;-ms-overflow-style:none;scrollbar-width:none}.duet-slideout-panel-dropdown .items::-webkit-scrollbar{display:none}.duet-slideout-panel-dropdown .items.hidden{max-height:0;padding:0;overflow:hidden;visibility:hidden;transition:max-height 0.3s ease-out, padding-bottom 0.3s ease-out}.duet-slideout-panel-dropdown.duet-theme-turva button{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-panel-dropdown.duet-theme-turva button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px rgb(23, 28, 58)}.duet-slideout-panel-dropdown.duet-theme-turva button.active .label::after{background:rgb(198, 12, 48)}slot{--active-height:1px;--active-translate-y:translateY(1px);font-size:1rem;font-weight:400;color:rgb(0, 41, 77)}.duet-theme-turva slot{color:rgb(23, 28, 58)}slot[name=label]{font-size:1rem;font-weight:600}";
@@ -5,9 +5,9 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
- const focusUtils = require('./focus-utils-8852d70c.js');
10
+ const focusUtils = require('./focus-utils-fa983dd9.js');
11
11
  const languageUtils = require('./language-utils-44df1d37.js');
12
12
  const tokenUtils = require('./token-utils-966776e9.js');
13
13
  require('./string-utils-5cadd058.js');
@@ -5,9 +5,9 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
- const focusUtils = require('./focus-utils-8852d70c.js');
10
+ const focusUtils = require('./focus-utils-fa983dd9.js');
11
11
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
12
12
  const languageUtils = require('./language-utils-44df1d37.js');
13
13
  const tokenUtils = require('./token-utils-966776e9.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
11
11
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const tokens = require('./tokens-21b244ee.js');
10
10
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
11
11
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const tokens = require('./tokens-21b244ee.js');
10
10
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
11
11
  const keyboardUtils = require('./keyboard-utils-bb32119b.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const tokens = require('./tokens-21b244ee.js');
10
10
  const bodyScrollLock_es6 = require('./bodyScrollLock.es6-6ef1142a.js');
11
11
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
  const inputUtils = require('./input-utils-b5e8f524.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-8baedc34.js');
8
+ const index = require('./index-6458021e.js');
9
9
  const themeableComponent = require('./themeable-component-fdeaef9f.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11