@helixui/library 3.1.0 → 3.2.0-next.102

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 (616) hide show
  1. package/custom-elements.json +6407 -339
  2. package/dist/components/hx-accordion/hx-accordion-item.d.ts.map +1 -1
  3. package/dist/components/hx-accordion/hx-accordion-item.styles.d.ts.map +1 -1
  4. package/dist/components/hx-accordion/hx-accordion.d.ts +3 -0
  5. package/dist/components/hx-accordion/hx-accordion.d.ts.map +1 -1
  6. package/dist/components/hx-accordion/index.js +1 -1
  7. package/dist/components/hx-action-bar/hx-action-bar.d.ts +14 -0
  8. package/dist/components/hx-action-bar/hx-action-bar.d.ts.map +1 -1
  9. package/dist/components/hx-action-bar/index.js +1 -1
  10. package/dist/components/hx-alert/hx-alert.d.ts +36 -0
  11. package/dist/components/hx-alert/hx-alert.d.ts.map +1 -1
  12. package/dist/components/hx-alert/hx-alert.styles.d.ts +12 -0
  13. package/dist/components/hx-alert/hx-alert.styles.d.ts.map +1 -1
  14. package/dist/components/hx-alert/index.js +1 -1
  15. package/dist/components/hx-avatar/hx-avatar.d.ts +17 -0
  16. package/dist/components/hx-avatar/hx-avatar.d.ts.map +1 -1
  17. package/dist/components/hx-avatar/index.js +1 -1
  18. package/dist/components/hx-badge/hx-badge.d.ts +35 -0
  19. package/dist/components/hx-badge/hx-badge.d.ts.map +1 -1
  20. package/dist/components/hx-badge/index.js +1 -1
  21. package/dist/components/hx-banner/hx-banner.d.ts +34 -0
  22. package/dist/components/hx-banner/hx-banner.d.ts.map +1 -1
  23. package/dist/components/hx-banner/hx-banner.styles.d.ts +12 -0
  24. package/dist/components/hx-banner/hx-banner.styles.d.ts.map +1 -1
  25. package/dist/components/hx-banner/index.js +1 -1
  26. package/dist/components/hx-breadcrumb/hx-breadcrumb-item.d.ts.map +1 -1
  27. package/dist/components/hx-breadcrumb/hx-breadcrumb-item.styles.d.ts.map +1 -1
  28. package/dist/components/hx-breadcrumb/hx-breadcrumb.d.ts +3 -0
  29. package/dist/components/hx-breadcrumb/hx-breadcrumb.d.ts.map +1 -1
  30. package/dist/components/hx-breadcrumb/index.js +1 -1
  31. package/dist/components/hx-button/hx-button.d.ts +44 -7
  32. package/dist/components/hx-button/hx-button.d.ts.map +1 -1
  33. package/dist/components/hx-button/hx-button.styles.d.ts.map +1 -1
  34. package/dist/components/hx-button/index.js +1 -1
  35. package/dist/components/hx-button-group/hx-button-group.d.ts +2 -0
  36. package/dist/components/hx-button-group/hx-button-group.d.ts.map +1 -1
  37. package/dist/components/hx-button-group/hx-button-group.styles.d.ts.map +1 -1
  38. package/dist/components/hx-button-group/index.js +1 -1
  39. package/dist/components/hx-card/hx-card.d.ts +28 -0
  40. package/dist/components/hx-card/hx-card.d.ts.map +1 -1
  41. package/dist/components/hx-card/hx-card.styles.d.ts +9 -0
  42. package/dist/components/hx-card/hx-card.styles.d.ts.map +1 -1
  43. package/dist/components/hx-card/index.js +1 -1
  44. package/dist/components/hx-carousel/hx-carousel.d.ts +25 -0
  45. package/dist/components/hx-carousel/hx-carousel.d.ts.map +1 -1
  46. package/dist/components/hx-carousel/hx-carousel.styles.d.ts.map +1 -1
  47. package/dist/components/hx-carousel/index.js +1 -1
  48. package/dist/components/hx-checkbox/hx-checkbox.d.ts +38 -7
  49. package/dist/components/hx-checkbox/hx-checkbox.d.ts.map +1 -1
  50. package/dist/components/hx-checkbox/hx-checkbox.styles.d.ts.map +1 -1
  51. package/dist/components/hx-checkbox/index.js +1 -1
  52. package/dist/components/hx-checkbox-group/hx-checkbox-group.d.ts +16 -2
  53. package/dist/components/hx-checkbox-group/hx-checkbox-group.d.ts.map +1 -1
  54. package/dist/components/hx-checkbox-group/index.js +1 -1
  55. package/dist/components/hx-clinical-status/hx-clinical-status.d.ts +37 -0
  56. package/dist/components/hx-clinical-status/hx-clinical-status.d.ts.map +1 -1
  57. package/dist/components/hx-clinical-status/hx-clinical-status.styles.d.ts.map +1 -1
  58. package/dist/components/hx-clinical-status/index.js +1 -1
  59. package/dist/components/hx-code-snippet/hx-code-snippet.d.ts +35 -0
  60. package/dist/components/hx-code-snippet/hx-code-snippet.d.ts.map +1 -1
  61. package/dist/components/hx-code-snippet/hx-code-snippet.styles.d.ts.map +1 -1
  62. package/dist/components/hx-code-snippet/index.js +1 -1
  63. package/dist/components/hx-color-picker/hx-color-picker.d.ts +29 -0
  64. package/dist/components/hx-color-picker/hx-color-picker.d.ts.map +1 -1
  65. package/dist/components/hx-color-picker/hx-color-picker.styles.d.ts.map +1 -1
  66. package/dist/components/hx-color-picker/index.js +1 -1
  67. package/dist/components/hx-combobox/hx-combobox.d.ts +49 -0
  68. package/dist/components/hx-combobox/hx-combobox.d.ts.map +1 -1
  69. package/dist/components/hx-combobox/hx-combobox.styles.d.ts.map +1 -1
  70. package/dist/components/hx-combobox/index.js +1 -1
  71. package/dist/components/hx-container/hx-container.d.ts +5 -0
  72. package/dist/components/hx-container/hx-container.d.ts.map +1 -1
  73. package/dist/components/hx-copy-button/hx-copy-button.d.ts +24 -0
  74. package/dist/components/hx-copy-button/hx-copy-button.d.ts.map +1 -1
  75. package/dist/components/hx-copy-button/hx-copy-button.styles.d.ts.map +1 -1
  76. package/dist/components/hx-copy-button/index.js +1 -1
  77. package/dist/components/hx-counter/hx-counter.d.ts +7 -0
  78. package/dist/components/hx-counter/hx-counter.d.ts.map +1 -1
  79. package/dist/components/hx-counter/index.js +1 -1
  80. package/dist/components/hx-data-table/hx-data-table.d.ts +29 -0
  81. package/dist/components/hx-data-table/hx-data-table.d.ts.map +1 -1
  82. package/dist/components/hx-data-table/hx-data-table.styles.d.ts.map +1 -1
  83. package/dist/components/hx-data-table/index.js +1 -1
  84. package/dist/components/hx-date-picker/hx-date-picker.d.ts +44 -0
  85. package/dist/components/hx-date-picker/hx-date-picker.d.ts.map +1 -1
  86. package/dist/components/hx-date-picker/hx-date-picker.styles.d.ts.map +1 -1
  87. package/dist/components/hx-date-picker/index.js +1 -1
  88. package/dist/components/hx-dialog/hx-dialog.d.ts +31 -0
  89. package/dist/components/hx-dialog/hx-dialog.d.ts.map +1 -1
  90. package/dist/components/hx-dialog/hx-dialog.styles.d.ts +10 -0
  91. package/dist/components/hx-dialog/hx-dialog.styles.d.ts.map +1 -1
  92. package/dist/components/hx-dialog/index.js +1 -1
  93. package/dist/components/hx-divider/hx-divider.d.ts +9 -0
  94. package/dist/components/hx-divider/hx-divider.d.ts.map +1 -1
  95. package/dist/components/hx-divider/index.js +1 -1
  96. package/dist/components/hx-drawer/hx-drawer.d.ts +30 -0
  97. package/dist/components/hx-drawer/hx-drawer.d.ts.map +1 -1
  98. package/dist/components/hx-drawer/hx-drawer.styles.d.ts +10 -0
  99. package/dist/components/hx-drawer/hx-drawer.styles.d.ts.map +1 -1
  100. package/dist/components/hx-drawer/index.js +1 -1
  101. package/dist/components/hx-dropdown/hx-dropdown.d.ts +6 -0
  102. package/dist/components/hx-dropdown/hx-dropdown.d.ts.map +1 -1
  103. package/dist/components/hx-dropdown/index.js +1 -1
  104. package/dist/components/hx-field/hx-field.d.ts +15 -0
  105. package/dist/components/hx-field/hx-field.d.ts.map +1 -1
  106. package/dist/components/hx-field/index.js +1 -1
  107. package/dist/components/hx-field-label/hx-field-label.d.ts +11 -0
  108. package/dist/components/hx-field-label/hx-field-label.d.ts.map +1 -1
  109. package/dist/components/hx-field-label/index.js +1 -1
  110. package/dist/components/hx-file-upload/hx-file-upload.d.ts +35 -0
  111. package/dist/components/hx-file-upload/hx-file-upload.d.ts.map +1 -1
  112. package/dist/components/hx-file-upload/hx-file-upload.styles.d.ts.map +1 -1
  113. package/dist/components/hx-file-upload/index.js +1 -1
  114. package/dist/components/hx-form/index.js +1 -1
  115. package/dist/components/hx-grid/hx-grid.d.ts +5 -0
  116. package/dist/components/hx-grid/hx-grid.d.ts.map +1 -1
  117. package/dist/components/hx-help-text/hx-help-text.d.ts +8 -0
  118. package/dist/components/hx-help-text/hx-help-text.d.ts.map +1 -1
  119. package/dist/components/hx-help-text/index.js +1 -1
  120. package/dist/components/hx-icon/hx-icon.d.ts +5 -0
  121. package/dist/components/hx-icon/hx-icon.d.ts.map +1 -1
  122. package/dist/components/hx-icon/index.js +1 -1
  123. package/dist/components/hx-icon-button/hx-icon-button.d.ts +27 -0
  124. package/dist/components/hx-icon-button/hx-icon-button.d.ts.map +1 -1
  125. package/dist/components/hx-icon-button/hx-icon-button.styles.d.ts.map +1 -1
  126. package/dist/components/hx-icon-button/index.js +1 -1
  127. package/dist/components/hx-image/hx-image.d.ts +4 -0
  128. package/dist/components/hx-image/hx-image.d.ts.map +1 -1
  129. package/dist/components/hx-image/index.js +1 -1
  130. package/dist/components/hx-link/hx-link.d.ts +15 -0
  131. package/dist/components/hx-link/hx-link.d.ts.map +1 -1
  132. package/dist/components/hx-link/hx-link.styles.d.ts.map +1 -1
  133. package/dist/components/hx-link/index.js +1 -1
  134. package/dist/components/hx-list/hx-list-item.d.ts.map +1 -1
  135. package/dist/components/hx-list/hx-list-item.styles.d.ts.map +1 -1
  136. package/dist/components/hx-list/hx-list.d.ts +3 -0
  137. package/dist/components/hx-list/hx-list.d.ts.map +1 -1
  138. package/dist/components/hx-list/index.js +1 -1
  139. package/dist/components/hx-menu/hx-menu-divider.d.ts.map +1 -1
  140. package/dist/components/hx-menu/hx-menu-item.d.ts.map +1 -1
  141. package/dist/components/hx-menu/hx-menu.d.ts +6 -0
  142. package/dist/components/hx-menu/hx-menu.d.ts.map +1 -1
  143. package/dist/components/hx-menu/index.js +1 -1
  144. package/dist/components/hx-meter/hx-meter.d.ts +23 -0
  145. package/dist/components/hx-meter/hx-meter.d.ts.map +1 -1
  146. package/dist/components/hx-meter/index.js +1 -1
  147. package/dist/components/hx-nav/hx-nav.d.ts +29 -0
  148. package/dist/components/hx-nav/hx-nav.d.ts.map +1 -1
  149. package/dist/components/hx-nav/index.js +1 -1
  150. package/dist/components/hx-number-input/hx-number-input.d.ts +34 -0
  151. package/dist/components/hx-number-input/hx-number-input.d.ts.map +1 -1
  152. package/dist/components/hx-number-input/index.js +1 -1
  153. package/dist/components/hx-overflow-menu/hx-overflow-menu.d.ts +26 -0
  154. package/dist/components/hx-overflow-menu/hx-overflow-menu.d.ts.map +1 -1
  155. package/dist/components/hx-overflow-menu/hx-overflow-menu.styles.d.ts.map +1 -1
  156. package/dist/components/hx-overflow-menu/index.js +1 -1
  157. package/dist/components/hx-pagination/hx-pagination.d.ts +21 -0
  158. package/dist/components/hx-pagination/hx-pagination.d.ts.map +1 -1
  159. package/dist/components/hx-pagination/index.js +1 -1
  160. package/dist/components/hx-patient-banner/hx-patient-banner.d.ts +23 -0
  161. package/dist/components/hx-patient-banner/hx-patient-banner.d.ts.map +1 -1
  162. package/dist/components/hx-patient-banner/hx-patient-banner.styles.d.ts.map +1 -1
  163. package/dist/components/hx-patient-banner/index.js +1 -1
  164. package/dist/components/hx-phi-field/hx-phi-field.d.ts +19 -5
  165. package/dist/components/hx-phi-field/hx-phi-field.d.ts.map +1 -1
  166. package/dist/components/hx-phi-field/hx-phi-field.styles.d.ts.map +1 -1
  167. package/dist/components/hx-phi-field/index.js +1 -1
  168. package/dist/components/hx-popover/hx-popover.d.ts +15 -0
  169. package/dist/components/hx-popover/hx-popover.d.ts.map +1 -1
  170. package/dist/components/hx-popover/hx-popover.styles.d.ts +9 -0
  171. package/dist/components/hx-popover/hx-popover.styles.d.ts.map +1 -1
  172. package/dist/components/hx-popover/index.js +1 -1
  173. package/dist/components/hx-popup/hx-popup.d.ts +1 -0
  174. package/dist/components/hx-popup/hx-popup.d.ts.map +1 -1
  175. package/dist/components/hx-popup/hx-popup.styles.d.ts +9 -0
  176. package/dist/components/hx-popup/hx-popup.styles.d.ts.map +1 -1
  177. package/dist/components/hx-popup/index.js +1 -1
  178. package/dist/components/hx-progress-bar/hx-progress-bar.d.ts +17 -0
  179. package/dist/components/hx-progress-bar/hx-progress-bar.d.ts.map +1 -1
  180. package/dist/components/hx-progress-bar/index.js +1 -1
  181. package/dist/components/hx-progress-ring/hx-progress-ring.d.ts +15 -0
  182. package/dist/components/hx-progress-ring/hx-progress-ring.d.ts.map +1 -1
  183. package/dist/components/hx-progress-ring/index.js +1 -1
  184. package/dist/components/hx-prose/hx-prose.d.ts +2 -0
  185. package/dist/components/hx-prose/hx-prose.d.ts.map +1 -1
  186. package/dist/components/hx-prose/index.js +1 -1
  187. package/dist/components/hx-radio-group/hx-radio-group.d.ts +17 -3
  188. package/dist/components/hx-radio-group/hx-radio-group.d.ts.map +1 -1
  189. package/dist/components/hx-radio-group/hx-radio.d.ts +5 -5
  190. package/dist/components/hx-radio-group/hx-radio.d.ts.map +1 -1
  191. package/dist/components/hx-radio-group/hx-radio.styles.d.ts.map +1 -1
  192. package/dist/components/hx-radio-group/index.js +1 -1
  193. package/dist/components/hx-rating/hx-rating.d.ts +13 -0
  194. package/dist/components/hx-rating/hx-rating.d.ts.map +1 -1
  195. package/dist/components/hx-rating/hx-rating.styles.d.ts.map +1 -1
  196. package/dist/components/hx-rating/index.js +1 -1
  197. package/dist/components/hx-select/hx-select.d.ts +43 -0
  198. package/dist/components/hx-select/hx-select.d.ts.map +1 -1
  199. package/dist/components/hx-select/hx-select.styles.d.ts.map +1 -1
  200. package/dist/components/hx-select/index.js +1 -1
  201. package/dist/components/hx-side-nav/hx-nav-item.d.ts +7 -5
  202. package/dist/components/hx-side-nav/hx-nav-item.d.ts.map +1 -1
  203. package/dist/components/hx-side-nav/hx-nav-item.styles.d.ts.map +1 -1
  204. package/dist/components/hx-side-nav/hx-side-nav.d.ts +9 -4
  205. package/dist/components/hx-side-nav/hx-side-nav.d.ts.map +1 -1
  206. package/dist/components/hx-side-nav/hx-side-nav.styles.d.ts.map +1 -1
  207. package/dist/components/hx-side-nav/index.js +1 -1
  208. package/dist/components/hx-skeleton/hx-skeleton.d.ts +5 -0
  209. package/dist/components/hx-skeleton/hx-skeleton.d.ts.map +1 -1
  210. package/dist/components/hx-skeleton/index.js +1 -1
  211. package/dist/components/hx-slider/hx-slider.d.ts +38 -0
  212. package/dist/components/hx-slider/hx-slider.d.ts.map +1 -1
  213. package/dist/components/hx-slider/index.js +1 -1
  214. package/dist/components/hx-spinner/hx-spinner.d.ts +10 -0
  215. package/dist/components/hx-spinner/hx-spinner.d.ts.map +1 -1
  216. package/dist/components/hx-spinner/index.js +1 -1
  217. package/dist/components/hx-split-button/hx-split-button.d.ts +40 -1
  218. package/dist/components/hx-split-button/hx-split-button.d.ts.map +1 -1
  219. package/dist/components/hx-split-button/hx-split-button.styles.d.ts.map +1 -1
  220. package/dist/components/hx-split-button/index.js +1 -1
  221. package/dist/components/hx-split-panel/hx-split-panel.d.ts +12 -0
  222. package/dist/components/hx-split-panel/hx-split-panel.d.ts.map +1 -1
  223. package/dist/components/hx-split-panel/hx-split-panel.styles.d.ts.map +1 -1
  224. package/dist/components/hx-split-panel/index.js +1 -1
  225. package/dist/components/hx-stack/hx-stack.d.ts +5 -0
  226. package/dist/components/hx-stack/hx-stack.d.ts.map +1 -1
  227. package/dist/components/hx-stat/hx-stat.d.ts +24 -0
  228. package/dist/components/hx-stat/hx-stat.d.ts.map +1 -1
  229. package/dist/components/hx-stat/index.js +1 -1
  230. package/dist/components/hx-status-indicator/hx-status-indicator.d.ts +13 -0
  231. package/dist/components/hx-status-indicator/hx-status-indicator.d.ts.map +1 -1
  232. package/dist/components/hx-status-indicator/index.js +1 -1
  233. package/dist/components/hx-steps/hx-step.d.ts.map +1 -1
  234. package/dist/components/hx-steps/hx-step.styles.d.ts.map +1 -1
  235. package/dist/components/hx-steps/hx-steps.d.ts +15 -0
  236. package/dist/components/hx-steps/hx-steps.d.ts.map +1 -1
  237. package/dist/components/hx-steps/index.js +1 -1
  238. package/dist/components/hx-structured-list/hx-structured-list.d.ts +7 -0
  239. package/dist/components/hx-structured-list/hx-structured-list.d.ts.map +1 -1
  240. package/dist/components/hx-structured-list/index.js +1 -1
  241. package/dist/components/hx-switch/hx-switch.d.ts +42 -0
  242. package/dist/components/hx-switch/hx-switch.d.ts.map +1 -1
  243. package/dist/components/hx-switch/hx-switch.styles.d.ts.map +1 -1
  244. package/dist/components/hx-switch/index.js +1 -1
  245. package/dist/components/hx-table/hx-table.d.ts +20 -6
  246. package/dist/components/hx-table/hx-table.d.ts.map +1 -1
  247. package/dist/components/hx-table/hx-table.styles.d.ts.map +1 -1
  248. package/dist/components/hx-table/hx-td.d.ts +1 -1
  249. package/dist/components/hx-table/index.js +1 -1
  250. package/dist/components/hx-tabs/hx-tab-panel.d.ts +2 -2
  251. package/dist/components/hx-tabs/hx-tab-panel.d.ts.map +1 -1
  252. package/dist/components/hx-tabs/hx-tab-panel.styles.d.ts.map +1 -1
  253. package/dist/components/hx-tabs/hx-tab.d.ts +6 -6
  254. package/dist/components/hx-tabs/hx-tab.d.ts.map +1 -1
  255. package/dist/components/hx-tabs/hx-tab.styles.d.ts.map +1 -1
  256. package/dist/components/hx-tabs/hx-tabs.d.ts +12 -8
  257. package/dist/components/hx-tabs/hx-tabs.d.ts.map +1 -1
  258. package/dist/components/hx-tabs/index.js +1 -1
  259. package/dist/components/hx-tag/hx-tag.d.ts +36 -0
  260. package/dist/components/hx-tag/hx-tag.d.ts.map +1 -1
  261. package/dist/components/hx-tag/index.js +1 -1
  262. package/dist/components/hx-text/hx-text.d.ts +22 -0
  263. package/dist/components/hx-text/hx-text.d.ts.map +1 -1
  264. package/dist/components/hx-text/hx-text.styles.d.ts.map +1 -1
  265. package/dist/components/hx-text/index.js +1 -1
  266. package/dist/components/hx-text-input/hx-text-input.d.ts +18 -5
  267. package/dist/components/hx-text-input/hx-text-input.d.ts.map +1 -1
  268. package/dist/components/hx-text-input/hx-text-input.styles.d.ts +12 -0
  269. package/dist/components/hx-text-input/hx-text-input.styles.d.ts.map +1 -1
  270. package/dist/components/hx-text-input/index.js +1 -1
  271. package/dist/components/hx-textarea/hx-textarea.d.ts +27 -0
  272. package/dist/components/hx-textarea/hx-textarea.d.ts.map +1 -1
  273. package/dist/components/hx-textarea/hx-textarea.styles.d.ts.map +1 -1
  274. package/dist/components/hx-textarea/index.js +1 -1
  275. package/dist/components/hx-theme/hx-theme.d.ts +3 -0
  276. package/dist/components/hx-theme/hx-theme.d.ts.map +1 -1
  277. package/dist/components/hx-theme/index.js +1 -1
  278. package/dist/components/hx-time-picker/hx-time-picker.d.ts +32 -0
  279. package/dist/components/hx-time-picker/hx-time-picker.d.ts.map +1 -1
  280. package/dist/components/hx-time-picker/hx-time-picker.styles.d.ts.map +1 -1
  281. package/dist/components/hx-time-picker/index.js +1 -1
  282. package/dist/components/hx-toast/hx-toast.d.ts +30 -2
  283. package/dist/components/hx-toast/hx-toast.d.ts.map +1 -1
  284. package/dist/components/hx-toast/hx-toast.styles.d.ts +10 -0
  285. package/dist/components/hx-toast/hx-toast.styles.d.ts.map +1 -1
  286. package/dist/components/hx-toast/index.js +1 -1
  287. package/dist/components/hx-toggle-button/hx-toggle-button.d.ts +35 -0
  288. package/dist/components/hx-toggle-button/hx-toggle-button.d.ts.map +1 -1
  289. package/dist/components/hx-toggle-button/hx-toggle-button.styles.d.ts.map +1 -1
  290. package/dist/components/hx-toggle-button/index.js +1 -1
  291. package/dist/components/hx-tooltip/hx-tooltip.d.ts +13 -0
  292. package/dist/components/hx-tooltip/hx-tooltip.d.ts.map +1 -1
  293. package/dist/components/hx-tooltip/hx-tooltip.styles.d.ts +8 -0
  294. package/dist/components/hx-tooltip/hx-tooltip.styles.d.ts.map +1 -1
  295. package/dist/components/hx-tooltip/index.js +1 -1
  296. package/dist/components/hx-top-nav/hx-top-nav.d.ts +21 -0
  297. package/dist/components/hx-top-nav/hx-top-nav.d.ts.map +1 -1
  298. package/dist/components/hx-top-nav/index.js +1 -1
  299. package/dist/components/hx-tree-view/hx-tree-item.d.ts.map +1 -1
  300. package/dist/components/hx-tree-view/hx-tree-view.d.ts +6 -0
  301. package/dist/components/hx-tree-view/hx-tree-view.d.ts.map +1 -1
  302. package/dist/components/hx-tree-view/hx-tree-view.styles.d.ts.map +1 -1
  303. package/dist/components/hx-tree-view/index.js +1 -1
  304. package/dist/css/helix-all.css +1273 -939
  305. package/dist/css/helix-core.css +327 -170
  306. package/dist/css/helix-data.css +54 -48
  307. package/dist/css/helix-feedback.css +123 -95
  308. package/dist/css/helix-forms.css +490 -387
  309. package/dist/css/helix-layout.css +9 -12
  310. package/dist/css/helix-media.css +16 -12
  311. package/dist/css/helix-navigation.css +86 -67
  312. package/dist/css/helix-overlay.css +62 -56
  313. package/dist/css/helix-tokens.css +173 -106
  314. package/dist/css/helix-utility.css +57 -46
  315. package/dist/css/hx-action-bar.css +5 -5
  316. package/dist/css/hx-alert.css +24 -23
  317. package/dist/css/hx-avatar.css +3 -3
  318. package/dist/css/hx-badge.css +22 -22
  319. package/dist/css/hx-banner.css +25 -24
  320. package/dist/css/hx-button-group.css +31 -14
  321. package/dist/css/hx-button.css +156 -34
  322. package/dist/css/hx-card.css +23 -12
  323. package/dist/css/hx-carousel.css +16 -12
  324. package/dist/css/hx-checkbox-group.css +5 -5
  325. package/dist/css/hx-checkbox.css +19 -22
  326. package/dist/css/hx-clinical-status.css +28 -30
  327. package/dist/css/hx-code-snippet.css +26 -20
  328. package/dist/css/hx-color-picker.css +20 -13
  329. package/dist/css/hx-combobox.css +31 -37
  330. package/dist/css/hx-copy-button.css +6 -3
  331. package/dist/css/hx-counter.css +1 -1
  332. package/dist/css/hx-data-table.css +16 -15
  333. package/dist/css/hx-date-picker.css +34 -50
  334. package/dist/css/hx-dialog.css +31 -27
  335. package/dist/css/hx-divider.css +2 -2
  336. package/dist/css/hx-drawer.css +18 -18
  337. package/dist/css/hx-dropdown.css +2 -2
  338. package/dist/css/hx-field-label.css +3 -3
  339. package/dist/css/hx-field.css +6 -6
  340. package/dist/css/hx-file-upload.css +21 -30
  341. package/dist/css/hx-help-text.css +5 -5
  342. package/dist/css/hx-icon-button.css +46 -38
  343. package/dist/css/hx-image.css +3 -3
  344. package/dist/css/hx-link.css +9 -12
  345. package/dist/css/hx-list.css +1 -1
  346. package/dist/css/hx-menu.css +2 -2
  347. package/dist/css/hx-meter.css +10 -10
  348. package/dist/css/hx-nav.css +11 -11
  349. package/dist/css/hx-number-input.css +18 -18
  350. package/dist/css/hx-overflow-menu.css +18 -15
  351. package/dist/css/hx-pagination.css +15 -15
  352. package/dist/css/hx-patient-banner.css +17 -9
  353. package/dist/css/hx-phi-field.css +4 -7
  354. package/dist/css/hx-popover.css +7 -6
  355. package/dist/css/hx-progress-bar.css +7 -7
  356. package/dist/css/hx-progress-ring.css +6 -6
  357. package/dist/css/hx-radio-group.css +5 -5
  358. package/dist/css/hx-rating.css +5 -6
  359. package/dist/css/hx-select.css +18 -19
  360. package/dist/css/hx-side-nav.css +28 -11
  361. package/dist/css/hx-skeleton.css +1 -1
  362. package/dist/css/hx-slider.css +15 -15
  363. package/dist/css/hx-spinner.css +4 -4
  364. package/dist/css/hx-split-button.css +45 -37
  365. package/dist/css/hx-split-panel.css +9 -12
  366. package/dist/css/hx-stat.css +8 -8
  367. package/dist/css/hx-status-indicator.css +7 -7
  368. package/dist/css/hx-structured-list.css +5 -5
  369. package/dist/css/hx-switch.css +16 -11
  370. package/dist/css/hx-table.css +6 -7
  371. package/dist/css/hx-tabs.css +3 -3
  372. package/dist/css/hx-tag.css +18 -18
  373. package/dist/css/hx-text-input.css +133 -61
  374. package/dist/css/hx-text.css +9 -7
  375. package/dist/css/hx-textarea.css +63 -27
  376. package/dist/css/hx-time-picker.css +27 -21
  377. package/dist/css/hx-toast.css +36 -10
  378. package/dist/css/hx-toggle-button.css +46 -33
  379. package/dist/css/hx-tooltip.css +4 -3
  380. package/dist/css/hx-top-nav.css +8 -8
  381. package/dist/css/hx-tree-view.css +1 -2
  382. package/dist/css/index.css +1 -1
  383. package/dist/css/manifest.json +332 -230
  384. package/dist/index.js +75 -75
  385. package/dist/shared/forced-colors-CTEDFRGa.js +117 -0
  386. package/dist/shared/forced-colors-CTEDFRGa.js.map +1 -0
  387. package/dist/shared/{hx-accordion-Wt52OOZD.js → hx-accordion-ZVzgDzTG.js} +29 -29
  388. package/dist/shared/hx-accordion-ZVzgDzTG.js.map +1 -0
  389. package/dist/shared/{hx-action-bar-BKMADbHj.js → hx-action-bar-CitgcpGv.js} +38 -37
  390. package/dist/shared/hx-action-bar-CitgcpGv.js.map +1 -0
  391. package/dist/shared/{hx-alert-D7n94HwI.js → hx-alert-CLn7CstP.js} +33 -31
  392. package/dist/shared/hx-alert-CLn7CstP.js.map +1 -0
  393. package/dist/shared/{hx-avatar-iLYzu8MJ.js → hx-avatar-C9hOmlAb.js} +19 -18
  394. package/dist/shared/hx-avatar-C9hOmlAb.js.map +1 -0
  395. package/dist/shared/{hx-badge-CVCmMPyW.js → hx-badge-CQXgOXJM.js} +65 -64
  396. package/dist/shared/hx-badge-CQXgOXJM.js.map +1 -0
  397. package/dist/shared/{hx-banner-C_He7Tr4.js → hx-banner-D3DzpfcP.js} +39 -37
  398. package/dist/shared/hx-banner-D3DzpfcP.js.map +1 -0
  399. package/dist/shared/{hx-breadcrumb-item-CldCwD1d.js → hx-breadcrumb-item-3tKppF9h.js} +24 -26
  400. package/dist/shared/hx-breadcrumb-item-3tKppF9h.js.map +1 -0
  401. package/dist/shared/{hx-button-Ddl-T6T-.js → hx-button-CHlkRQTe.js} +183 -61
  402. package/dist/shared/hx-button-CHlkRQTe.js.map +1 -0
  403. package/dist/shared/{hx-button-group-BJOGWoMa.js → hx-button-group-BI-QBqmO.js} +45 -27
  404. package/dist/shared/hx-button-group-BI-QBqmO.js.map +1 -0
  405. package/dist/shared/{hx-card-ycveujjL.js → hx-card-qNAM2QNV.js} +49 -37
  406. package/dist/shared/hx-card-qNAM2QNV.js.map +1 -0
  407. package/dist/shared/{hx-carousel-item-D_dCv61-.js → hx-carousel-item-z1Lc24op.js} +41 -36
  408. package/dist/shared/hx-carousel-item-z1Lc24op.js.map +1 -0
  409. package/dist/shared/{hx-checkbox-DkkoWoye.js → hx-checkbox-D7xma9YH.js} +38 -40
  410. package/dist/shared/hx-checkbox-D7xma9YH.js.map +1 -0
  411. package/dist/shared/{hx-checkbox-group-C3poJ-Zw.js → hx-checkbox-group-C9n315Ju.js} +20 -19
  412. package/dist/shared/hx-checkbox-group-C9n315Ju.js.map +1 -0
  413. package/dist/shared/{hx-clinical-status-BS5lcddT.js → hx-clinical-status-D3XQIOqX.js} +55 -56
  414. package/dist/shared/hx-clinical-status-D3XQIOqX.js.map +1 -0
  415. package/dist/shared/{hx-code-snippet-B7wUKzyb.js → hx-code-snippet-Bi-arDKH.js} +41 -34
  416. package/dist/shared/hx-code-snippet-Bi-arDKH.js.map +1 -0
  417. package/dist/shared/{hx-color-picker-DBaKTVLr.js → hx-color-picker-uRc865FJ.js} +54 -46
  418. package/dist/shared/hx-color-picker-uRc865FJ.js.map +1 -0
  419. package/dist/shared/{hx-combobox-BmgYT7Ar.js → hx-combobox-DDzqNKEW.js} +43 -48
  420. package/dist/shared/hx-combobox-DDzqNKEW.js.map +1 -0
  421. package/dist/shared/hx-container-DVI7sxfX.js.map +1 -1
  422. package/dist/shared/{hx-copy-button-8deNUdwP.js → hx-copy-button-sUVuikyH.js} +23 -19
  423. package/dist/shared/hx-copy-button-sUVuikyH.js.map +1 -0
  424. package/dist/shared/{hx-counter-CKfl_g8K.js → hx-counter-0zYapFhf.js} +10 -9
  425. package/dist/shared/hx-counter-0zYapFhf.js.map +1 -0
  426. package/dist/shared/{hx-data-table-B6h0RPn0.js → hx-data-table-CLqVqdxr.js} +49 -47
  427. package/dist/shared/hx-data-table-CLqVqdxr.js.map +1 -0
  428. package/dist/shared/{hx-date-picker-Dq2Nb68_.js → hx-date-picker-2iRG1p74.js} +51 -66
  429. package/dist/shared/hx-date-picker-2iRG1p74.js.map +1 -0
  430. package/dist/shared/{hx-dialog-CvIlY0Tc.js → hx-dialog-DRN_1-Y-.js} +68 -63
  431. package/dist/shared/hx-dialog-DRN_1-Y-.js.map +1 -0
  432. package/dist/shared/{hx-divider-DwpOrzMW.js → hx-divider-CYfcUjcr.js} +18 -17
  433. package/dist/shared/hx-divider-CYfcUjcr.js.map +1 -0
  434. package/dist/shared/{hx-drawer-Cx2ZJhBe.js → hx-drawer-Y1Ui2IWJ.js} +31 -30
  435. package/dist/shared/hx-drawer-Y1Ui2IWJ.js.map +1 -0
  436. package/dist/shared/{hx-dropdown-BjDrPUq5.js → hx-dropdown-LyaRc8Rf.js} +16 -15
  437. package/dist/shared/hx-dropdown-LyaRc8Rf.js.map +1 -0
  438. package/dist/shared/{hx-field-Dp3qQMut.js → hx-field-B3Qo8OLS.js} +15 -15
  439. package/dist/shared/hx-field-B3Qo8OLS.js.map +1 -0
  440. package/dist/shared/{hx-field-label-BC8QViXv.js → hx-field-label-BVRyyKeh.js} +8 -7
  441. package/dist/shared/hx-field-label-BVRyyKeh.js.map +1 -0
  442. package/dist/shared/{hx-file-upload-B6Yl1u0i.js → hx-file-upload-D3rKROK5.js} +51 -59
  443. package/dist/shared/hx-file-upload-D3rKROK5.js.map +1 -0
  444. package/dist/shared/hx-form-CkChEATa.js +257 -0
  445. package/dist/shared/hx-form-CkChEATa.js.map +1 -0
  446. package/dist/shared/hx-grid-CXZf3jeK.js.map +1 -1
  447. package/dist/shared/{hx-help-text-D7eytSim.js → hx-help-text-Xb2Yr8x2.js} +30 -29
  448. package/dist/shared/hx-help-text-Xb2Yr8x2.js.map +1 -0
  449. package/dist/shared/{hx-icon-button-BHneqPCU.js → hx-icon-button-CGNdQSFM.js} +78 -69
  450. package/dist/shared/hx-icon-button-CGNdQSFM.js.map +1 -0
  451. package/dist/shared/{hx-icon-CcyDPDYY.js → hx-icon-fuVm4-bk.js} +15 -14
  452. package/dist/shared/hx-icon-fuVm4-bk.js.map +1 -0
  453. package/dist/shared/{hx-image-2gt14zZd.js → hx-image-Ben_4yM5.js} +18 -17
  454. package/dist/shared/hx-image-Ben_4yM5.js.map +1 -0
  455. package/dist/shared/{hx-link-BESrWK8M.js → hx-link-C-O6vq0Q.js} +20 -22
  456. package/dist/shared/hx-link-C-O6vq0Q.js.map +1 -0
  457. package/dist/shared/{hx-list-_9qVv02L.js → hx-list-MyEhh8c7.js} +22 -23
  458. package/dist/shared/hx-list-MyEhh8c7.js.map +1 -0
  459. package/dist/shared/{hx-menu-divider-Ck-9Os1t.js → hx-menu-divider-C2omnPtj.js} +50 -49
  460. package/dist/shared/hx-menu-divider-C2omnPtj.js.map +1 -0
  461. package/dist/shared/{hx-meter-TbROk-dw.js → hx-meter-BPscsw5t.js} +41 -40
  462. package/dist/shared/{hx-meter-TbROk-dw.js.map → hx-meter-BPscsw5t.js.map} +1 -1
  463. package/dist/shared/{hx-nav-item-pqPasRUm.js → hx-nav-item-Dap3DYgB.js} +143 -81
  464. package/dist/shared/hx-nav-item-Dap3DYgB.js.map +1 -0
  465. package/dist/shared/{hx-nav-BcYDmjf7.js → hx-nav-ldFM3Fle.js} +54 -53
  466. package/dist/shared/hx-nav-ldFM3Fle.js.map +1 -0
  467. package/dist/shared/{hx-number-input-mOIZ3-46.js → hx-number-input-yUzFOSC1.js} +68 -67
  468. package/dist/shared/hx-number-input-yUzFOSC1.js.map +1 -0
  469. package/dist/shared/{hx-overflow-menu-Dprb9lnT.js → hx-overflow-menu-DCLsdIBy.js} +33 -29
  470. package/dist/shared/hx-overflow-menu-DCLsdIBy.js.map +1 -0
  471. package/dist/shared/{hx-pagination-AguTQjYC.js → hx-pagination-C7y8GVyU.js} +43 -42
  472. package/dist/shared/hx-pagination-C7y8GVyU.js.map +1 -0
  473. package/dist/shared/{hx-patient-banner-uE6gqLpT.js → hx-patient-banner-CkS-Lmj4.js} +29 -20
  474. package/dist/shared/hx-patient-banner-CkS-Lmj4.js.map +1 -0
  475. package/dist/shared/{hx-phi-field-BC_XowhC.js → hx-phi-field-C19oxlrr.js} +13 -15
  476. package/dist/shared/hx-phi-field-C19oxlrr.js.map +1 -0
  477. package/dist/shared/{hx-popover-B2_203ct.js → hx-popover-B-FP3-wW.js} +31 -29
  478. package/dist/shared/hx-popover-B-FP3-wW.js.map +1 -0
  479. package/dist/shared/{hx-popup-DZXpsJ1R.js → hx-popup-COUXXZ9X.js} +8 -7
  480. package/dist/shared/hx-popup-COUXXZ9X.js.map +1 -0
  481. package/dist/shared/{hx-progress-bar-KjEkEJLy.js → hx-progress-bar-Bn3JEPUf.js} +28 -27
  482. package/dist/shared/hx-progress-bar-Bn3JEPUf.js.map +1 -0
  483. package/dist/shared/{hx-progress-ring-3zMwvrwD.js → hx-progress-ring-TwHyXeEp.js} +15 -14
  484. package/dist/shared/hx-progress-ring-TwHyXeEp.js.map +1 -0
  485. package/dist/shared/{hx-prose-BCtK7YL6.js → hx-prose-BThYcASV.js} +12 -12
  486. package/dist/shared/{hx-prose-BCtK7YL6.js.map → hx-prose-BThYcASV.js.map} +1 -1
  487. package/dist/shared/{hx-radio-BBC5qZgE.js → hx-radio-CJvNU2yP.js} +38 -40
  488. package/dist/shared/hx-radio-CJvNU2yP.js.map +1 -0
  489. package/dist/shared/{hx-rating-C3E3ENJb.js → hx-rating-C3QP53k9.js} +38 -38
  490. package/dist/shared/hx-rating-C3QP53k9.js.map +1 -0
  491. package/dist/shared/{hx-select-CixTo7jp.js → hx-select-C8fEHQhC.js} +64 -64
  492. package/dist/shared/hx-select-C8fEHQhC.js.map +1 -0
  493. package/dist/shared/{hx-skeleton-LxkI0pxr.js → hx-skeleton-Cnieh5Uc.js} +14 -13
  494. package/dist/shared/hx-skeleton-Cnieh5Uc.js.map +1 -0
  495. package/dist/shared/{hx-slider-DFHuzF3N.js → hx-slider-Blmv_rwS.js} +70 -69
  496. package/dist/shared/hx-slider-Blmv_rwS.js.map +1 -0
  497. package/dist/shared/{hx-spinner-BKjuCdZB.js → hx-spinner-DL5AYr16.js} +18 -17
  498. package/dist/shared/hx-spinner-DL5AYr16.js.map +1 -0
  499. package/dist/shared/{hx-split-button-CGcJMmCG.js → hx-split-button-Djnc5Aeg.js} +74 -65
  500. package/dist/shared/hx-split-button-Djnc5Aeg.js.map +1 -0
  501. package/dist/shared/{hx-split-panel-C-1R10Mc.js → hx-split-panel-B-u0Z3mm.js} +16 -18
  502. package/dist/shared/hx-split-panel-B-u0Z3mm.js.map +1 -0
  503. package/dist/shared/hx-stack-DGfcOfWJ.js.map +1 -1
  504. package/dist/shared/{hx-stat-BTpykQAt.js → hx-stat-WOcNV1Ry.js} +16 -15
  505. package/dist/shared/hx-stat-WOcNV1Ry.js.map +1 -0
  506. package/dist/shared/{hx-status-indicator-X2QEWNFt.js → hx-status-indicator-BlQyen43.js} +17 -16
  507. package/dist/shared/hx-status-indicator-BlQyen43.js.map +1 -0
  508. package/dist/shared/{hx-step-CRNQlmSo.js → hx-step-R2rjp1fT.js} +60 -50
  509. package/dist/shared/hx-step-R2rjp1fT.js.map +1 -0
  510. package/dist/shared/{hx-structured-list-CqNbaEXg.js → hx-structured-list-m_-dMJbC.js} +18 -17
  511. package/dist/shared/hx-structured-list-m_-dMJbC.js.map +1 -0
  512. package/dist/shared/{hx-switch-DqOD9JR7.js → hx-switch-BrZFaRue.js} +31 -25
  513. package/dist/shared/hx-switch-BrZFaRue.js.map +1 -0
  514. package/dist/shared/{hx-tab-panel-BIzKfW5i.js → hx-tab-panel-DspCrKqo.js} +45 -50
  515. package/dist/shared/hx-tab-panel-DspCrKqo.js.map +1 -0
  516. package/dist/shared/{hx-tag-CgnrNnte.js → hx-tag-CNSmdyaK.js} +63 -62
  517. package/dist/shared/hx-tag-CNSmdyaK.js.map +1 -0
  518. package/dist/shared/{hx-td-Bra35cH4.js → hx-td-DnnEMIuA.js} +62 -62
  519. package/dist/shared/hx-td-DnnEMIuA.js.map +1 -0
  520. package/dist/shared/{hx-text-DMC2CPlL.js → hx-text-Bz_9fJ3J.js} +28 -25
  521. package/dist/shared/hx-text-Bz_9fJ3J.js.map +1 -0
  522. package/dist/shared/{hx-text-input--q0GH78x.js → hx-text-input-D6FlOZM-.js} +144 -72
  523. package/dist/shared/{hx-text-input--q0GH78x.js.map → hx-text-input-D6FlOZM-.js.map} +1 -1
  524. package/dist/shared/{hx-textarea-CK621vSL.js → hx-textarea-CNG590KY.js} +107 -70
  525. package/dist/shared/hx-textarea-CNG590KY.js.map +1 -0
  526. package/dist/shared/{hx-theme-DfEy-SJA.js → hx-theme-BiyQ7UUK.js} +46 -35
  527. package/dist/shared/hx-theme-BiyQ7UUK.js.map +1 -0
  528. package/dist/shared/{hx-time-picker-tPUfgElQ.js → hx-time-picker-BoEIZwzv.js} +59 -52
  529. package/dist/shared/hx-time-picker-BoEIZwzv.js.map +1 -0
  530. package/dist/shared/{hx-toggle-button-L-uBJr-a.js → hx-toggle-button-iLiYrMbD.js} +86 -72
  531. package/dist/shared/hx-toggle-button-iLiYrMbD.js.map +1 -0
  532. package/dist/shared/{hx-tooltip-B_zfKvwc.js → hx-tooltip-nYOv9OLu.js} +18 -16
  533. package/dist/shared/hx-tooltip-nYOv9OLu.js.map +1 -0
  534. package/dist/shared/{hx-top-nav-CATbRvIv.js → hx-top-nav-DP6OFS8C.js} +31 -30
  535. package/dist/shared/hx-top-nav-DP6OFS8C.js.map +1 -0
  536. package/dist/shared/{hx-tree-item-A45WCiBu.js → hx-tree-item-C2CiWuDE.js} +29 -29
  537. package/dist/shared/hx-tree-item-C2CiWuDE.js.map +1 -0
  538. package/dist/shared/{toast-factory-BPPnG3mM.js → toast-factory-YSznocIV.js} +98 -72
  539. package/dist/shared/toast-factory-YSznocIV.js.map +1 -0
  540. package/dist/styles/forced-colors.d.ts +60 -0
  541. package/dist/styles/forced-colors.d.ts.map +1 -0
  542. package/figma-inventory.json +8690 -827
  543. package/package.json +2 -2
  544. package/dist/shared/hx-accordion-Wt52OOZD.js.map +0 -1
  545. package/dist/shared/hx-action-bar-BKMADbHj.js.map +0 -1
  546. package/dist/shared/hx-alert-D7n94HwI.js.map +0 -1
  547. package/dist/shared/hx-avatar-iLYzu8MJ.js.map +0 -1
  548. package/dist/shared/hx-badge-CVCmMPyW.js.map +0 -1
  549. package/dist/shared/hx-banner-C_He7Tr4.js.map +0 -1
  550. package/dist/shared/hx-breadcrumb-item-CldCwD1d.js.map +0 -1
  551. package/dist/shared/hx-button-Ddl-T6T-.js.map +0 -1
  552. package/dist/shared/hx-button-group-BJOGWoMa.js.map +0 -1
  553. package/dist/shared/hx-card-ycveujjL.js.map +0 -1
  554. package/dist/shared/hx-carousel-item-D_dCv61-.js.map +0 -1
  555. package/dist/shared/hx-checkbox-DkkoWoye.js.map +0 -1
  556. package/dist/shared/hx-checkbox-group-C3poJ-Zw.js.map +0 -1
  557. package/dist/shared/hx-clinical-status-BS5lcddT.js.map +0 -1
  558. package/dist/shared/hx-code-snippet-B7wUKzyb.js.map +0 -1
  559. package/dist/shared/hx-color-picker-DBaKTVLr.js.map +0 -1
  560. package/dist/shared/hx-combobox-BmgYT7Ar.js.map +0 -1
  561. package/dist/shared/hx-copy-button-8deNUdwP.js.map +0 -1
  562. package/dist/shared/hx-counter-CKfl_g8K.js.map +0 -1
  563. package/dist/shared/hx-data-table-B6h0RPn0.js.map +0 -1
  564. package/dist/shared/hx-date-picker-Dq2Nb68_.js.map +0 -1
  565. package/dist/shared/hx-dialog-CvIlY0Tc.js.map +0 -1
  566. package/dist/shared/hx-divider-DwpOrzMW.js.map +0 -1
  567. package/dist/shared/hx-drawer-Cx2ZJhBe.js.map +0 -1
  568. package/dist/shared/hx-dropdown-BjDrPUq5.js.map +0 -1
  569. package/dist/shared/hx-field-Dp3qQMut.js.map +0 -1
  570. package/dist/shared/hx-field-label-BC8QViXv.js.map +0 -1
  571. package/dist/shared/hx-file-upload-B6Yl1u0i.js.map +0 -1
  572. package/dist/shared/hx-form-ButQFt9A.js +0 -257
  573. package/dist/shared/hx-form-ButQFt9A.js.map +0 -1
  574. package/dist/shared/hx-help-text-D7eytSim.js.map +0 -1
  575. package/dist/shared/hx-icon-CcyDPDYY.js.map +0 -1
  576. package/dist/shared/hx-icon-button-BHneqPCU.js.map +0 -1
  577. package/dist/shared/hx-image-2gt14zZd.js.map +0 -1
  578. package/dist/shared/hx-link-BESrWK8M.js.map +0 -1
  579. package/dist/shared/hx-list-_9qVv02L.js.map +0 -1
  580. package/dist/shared/hx-menu-divider-Ck-9Os1t.js.map +0 -1
  581. package/dist/shared/hx-nav-BcYDmjf7.js.map +0 -1
  582. package/dist/shared/hx-nav-item-pqPasRUm.js.map +0 -1
  583. package/dist/shared/hx-number-input-mOIZ3-46.js.map +0 -1
  584. package/dist/shared/hx-overflow-menu-Dprb9lnT.js.map +0 -1
  585. package/dist/shared/hx-pagination-AguTQjYC.js.map +0 -1
  586. package/dist/shared/hx-patient-banner-uE6gqLpT.js.map +0 -1
  587. package/dist/shared/hx-phi-field-BC_XowhC.js.map +0 -1
  588. package/dist/shared/hx-popover-B2_203ct.js.map +0 -1
  589. package/dist/shared/hx-popup-DZXpsJ1R.js.map +0 -1
  590. package/dist/shared/hx-progress-bar-KjEkEJLy.js.map +0 -1
  591. package/dist/shared/hx-progress-ring-3zMwvrwD.js.map +0 -1
  592. package/dist/shared/hx-radio-BBC5qZgE.js.map +0 -1
  593. package/dist/shared/hx-rating-C3E3ENJb.js.map +0 -1
  594. package/dist/shared/hx-select-CixTo7jp.js.map +0 -1
  595. package/dist/shared/hx-skeleton-LxkI0pxr.js.map +0 -1
  596. package/dist/shared/hx-slider-DFHuzF3N.js.map +0 -1
  597. package/dist/shared/hx-spinner-BKjuCdZB.js.map +0 -1
  598. package/dist/shared/hx-split-button-CGcJMmCG.js.map +0 -1
  599. package/dist/shared/hx-split-panel-C-1R10Mc.js.map +0 -1
  600. package/dist/shared/hx-stat-BTpykQAt.js.map +0 -1
  601. package/dist/shared/hx-status-indicator-X2QEWNFt.js.map +0 -1
  602. package/dist/shared/hx-step-CRNQlmSo.js.map +0 -1
  603. package/dist/shared/hx-structured-list-CqNbaEXg.js.map +0 -1
  604. package/dist/shared/hx-switch-DqOD9JR7.js.map +0 -1
  605. package/dist/shared/hx-tab-panel-BIzKfW5i.js.map +0 -1
  606. package/dist/shared/hx-tag-CgnrNnte.js.map +0 -1
  607. package/dist/shared/hx-td-Bra35cH4.js.map +0 -1
  608. package/dist/shared/hx-text-DMC2CPlL.js.map +0 -1
  609. package/dist/shared/hx-textarea-CK621vSL.js.map +0 -1
  610. package/dist/shared/hx-theme-DfEy-SJA.js.map +0 -1
  611. package/dist/shared/hx-time-picker-tPUfgElQ.js.map +0 -1
  612. package/dist/shared/hx-toggle-button-L-uBJr-a.js.map +0 -1
  613. package/dist/shared/hx-tooltip-B_zfKvwc.js.map +0 -1
  614. package/dist/shared/hx-top-nav-CATbRvIv.js.map +0 -1
  615. package/dist/shared/hx-tree-item-A45WCiBu.js.map +0 -1
  616. package/dist/shared/toast-factory-BPPnG3mM.js.map +0 -1
@@ -23,8 +23,8 @@
23
23
  overflow: hidden;
24
24
  width: var(--hx-avatar-size);
25
25
  height: var(--hx-avatar-size);
26
- background-color: var(--hx-avatar-bg, var(--hx-color-primary-100));
27
- color: var(--hx-avatar-color, var(--hx-color-primary-700));
26
+ background-color: var(--hx-avatar-bg, var(--hx-color-primary-100, #dbf0f0));
27
+ color: var(--hx-avatar-color, var(--hx-color-primary-700, #0f6363));
28
28
  border-radius: var(--hx-avatar-border-radius);
29
29
  flex-shrink: 0;
30
30
  }
@@ -92,7 +92,7 @@
92
92
  .avatar__fallback-icon {
93
93
  width: 60%;
94
94
  height: 60%;
95
- color: var(--hx-avatar-color, var(--hx-color-primary-700));
95
+ color: var(--hx-avatar-color, var(--hx-color-primary-700, #0f6363));
96
96
  }
97
97
 
98
98
  /* ─── Badge Slot ─── */
@@ -145,8 +145,8 @@
145
145
  justify-content: center;
146
146
  gap: var(--hx-space-1, 0.25rem);
147
147
  border-radius: var(--hx-badge-border-radius, var(--hx-border-radius-md, 0.375rem));
148
- background-color: var(--hx-badge-bg, var(--hx-color-primary-500, #2563eb));
149
- color: var(--hx-badge-color, var(--hx-color-neutral-0, #ffffff));
148
+ background-color: var(--hx-badge-bg, var(--hx-color-primary-500, #429797));
149
+ color: var(--hx-badge-color, var(--hx-color-text-on-primary, #0d1825));
150
150
  font-family: var(--hx-badge-font-family, var(--hx-font-family-sans, sans-serif));
151
151
  font-weight: var(--hx-badge-font-weight, var(--hx-font-weight-semibold, 600));
152
152
  line-height: var(--hx-line-height-tight, 1.25);
@@ -178,65 +178,65 @@
178
178
  /* ─── Style Variants ─── */
179
179
 
180
180
  .badge--primary {
181
- --hx-badge-bg: var(--hx-color-primary-500, #2563eb);
182
- --hx-badge-color: var(--hx-color-neutral-0, #ffffff);
181
+ --hx-badge-bg: var(--hx-badge-primary-bg, var(--hx-color-primary-500, #429797));
182
+ --hx-badge-color: var(--hx-badge-primary-color, var(--hx-color-text-on-primary, #0d1825));
183
183
  --hx-badge-pulse-color-internal: var(
184
184
  --hx-badge-pulse-color,
185
- var(--hx-color-primary-500, #2563eb)
185
+ var(--hx-badge-primary-bg, var(--hx-color-primary-500, #429797))
186
186
  );
187
187
  }
188
188
 
189
189
  .badge--secondary {
190
- --hx-badge-bg: var(--hx-badge-secondary-bg, var(--hx-color-neutral-100, #f1f5f9));
191
- --hx-badge-color: var(--hx-badge-secondary-color, var(--hx-color-neutral-700, #334155));
190
+ --hx-badge-bg: var(--hx-badge-secondary-bg, var(--hx-color-neutral-100, #ebeee9));
191
+ --hx-badge-color: var(--hx-badge-secondary-color, var(--hx-color-neutral-700, #313e4b));
192
192
  --hx-badge-pulse-color-internal: var(
193
193
  --hx-badge-pulse-color,
194
- var(--hx-badge-secondary-bg, var(--hx-color-neutral-100, #f1f5f9))
194
+ var(--hx-badge-secondary-bg, var(--hx-color-neutral-100, #ebeee9))
195
195
  );
196
196
  }
197
197
 
198
198
  .badge--success {
199
- --hx-badge-bg: var(--hx-color-success-700, #166534);
200
- --hx-badge-color: var(--hx-color-neutral-0, #ffffff);
199
+ --hx-badge-bg: var(--hx-badge-success-bg, var(--hx-color-success-700, #146831));
200
+ --hx-badge-color: var(--hx-badge-success-color, var(--hx-color-neutral-0, #ffffff));
201
201
  --hx-badge-pulse-color-internal: var(
202
202
  --hx-badge-pulse-color,
203
- var(--hx-color-success-700, #166534)
203
+ var(--hx-badge-success-bg, var(--hx-color-success-700, #146831))
204
204
  );
205
205
  }
206
206
 
207
207
  .badge--warning {
208
- --hx-badge-bg: var(--hx-color-warning-500, #d97706);
209
- --hx-badge-color: var(--hx-color-neutral-900, #0f172a);
208
+ --hx-badge-bg: var(--hx-badge-warning-bg, var(--hx-color-warning-500, #c2711c));
209
+ --hx-badge-color: var(--hx-badge-warning-color, var(--hx-color-neutral-900, #0d1825));
210
210
  --hx-badge-pulse-color-internal: var(
211
211
  --hx-badge-pulse-color,
212
- var(--hx-color-warning-500, #d97706)
212
+ var(--hx-badge-warning-bg, var(--hx-color-warning-500, #c2711c))
213
213
  );
214
214
  }
215
215
 
216
216
  .badge--error {
217
- --hx-badge-bg: var(--hx-color-error-500, #dc2626);
218
- --hx-badge-color: var(--hx-color-neutral-0, #ffffff);
217
+ --hx-badge-bg: var(--hx-badge-error-bg, var(--hx-color-error-500, #e5493e));
218
+ --hx-badge-color: var(--hx-badge-error-color, var(--hx-color-text-on-error, #0d1825));
219
219
  --hx-badge-pulse-color-internal: var(
220
220
  --hx-badge-pulse-color,
221
- var(--hx-color-error-500, #dc2626)
221
+ var(--hx-badge-error-bg, var(--hx-color-error-500, #e5493e))
222
222
  );
223
223
  }
224
224
 
225
225
  .badge--neutral {
226
- --hx-badge-bg: var(--hx-color-neutral-200, #e2e8f0);
227
- --hx-badge-color: var(--hx-color-neutral-700, #334155);
226
+ --hx-badge-bg: var(--hx-badge-neutral-bg, var(--hx-color-neutral-200, #d6dbd5));
227
+ --hx-badge-color: var(--hx-badge-neutral-color, var(--hx-color-neutral-700, #313e4b));
228
228
  --hx-badge-pulse-color-internal: var(
229
229
  --hx-badge-pulse-color,
230
- var(--hx-color-neutral-200, #e2e8f0)
230
+ var(--hx-badge-neutral-bg, var(--hx-color-neutral-200, #d6dbd5))
231
231
  );
232
232
  }
233
233
 
234
234
  .badge--info {
235
- --hx-badge-bg: var(--hx-badge-info-bg, var(--hx-color-info-700, #075985));
235
+ --hx-badge-bg: var(--hx-badge-info-bg, var(--hx-color-info-700, #0e5997));
236
236
  --hx-badge-color: var(--hx-badge-info-color, var(--hx-color-neutral-0, #ffffff));
237
237
  --hx-badge-pulse-color-internal: var(
238
238
  --hx-badge-pulse-color,
239
- var(--hx-badge-info-bg, var(--hx-color-info-700, #075985))
239
+ var(--hx-badge-info-bg, var(--hx-color-info-700, #0e5997))
240
240
  );
241
241
  }
242
242
 
@@ -376,7 +376,7 @@
376
376
  gap: var(--hx-space-2, 0.5rem);
377
377
  border: var(--hx-border-width-thin, 1px) solid var(--hx-button-border-color, transparent);
378
378
  border-radius: var(--hx-button-border-radius, var(--hx-border-radius-md, 0.375rem));
379
- background-color: var(--hx-button-bg, var(--hx-color-primary-500, #2563eb));
379
+ background-color: var(--hx-button-bg, var(--hx-color-primary-500, #429797));
380
380
  color: var(--hx-button-color, var(--hx-color-neutral-0, #ffffff));
381
381
  font-family: var(--hx-button-font-family, var(--hx-font-family-sans, sans-serif));
382
382
  font-weight: var(--hx-button-font-weight, var(--hx-font-weight-semibold, 600));
@@ -395,7 +395,7 @@
395
395
 
396
396
  .button:focus-visible {
397
397
  outline: var(--hx-focus-ring-width, 2px) solid
398
- var(--hx-button-focus-ring-color, var(--hx-focus-ring-color, var(--hx-color-primary-500)));
398
+ var(--hx-button-focus-ring-color, var(--hx-focus-ring-color, #0f7078));
399
399
  outline-offset: var(--hx-focus-ring-offset, 2px);
400
400
  }
401
401
 
@@ -433,63 +433,108 @@
433
433
  /* ─── Style Variants ─── */
434
434
 
435
435
  .button--primary {
436
- --hx-button-bg: var(--hx-color-primary-500);
437
- --hx-button-color: var(--hx-color-neutral-0);
436
+ --hx-button-bg: var(--hx-color-action-primary-bg, #429797);
437
+ /* Inline #0d1825 matches text.on-primary's resolved primitive (neutral-900);
438
+ cold-start without the semantic still paints AA-tuned dark-on-primary
439
+ rather than white-on-primary (3.43:1 fail). */
440
+ --hx-button-color: var(--hx-color-text-on-primary, #0d1825);
438
441
  --hx-button-border-color: transparent;
439
442
  }
440
443
 
441
444
  .button--secondary {
442
445
  --hx-button-bg: transparent;
443
- --hx-button-color: var(--hx-color-primary-500);
444
- --hx-button-border-color: var(--hx-color-primary-500);
446
+ /* primary-500 (#429797) text on white surface = 3.44:1 — fails AA.
447
+ primary-600 (#0F7078) on white = 5.82:1 — AA pass. */
448
+ --hx-button-color: var(--hx-color-action-secondary-fg, #0f7078);
449
+ --hx-button-border-color: var(--hx-color-action-secondary-border, #0f7078);
445
450
  }
446
451
 
447
452
  .button--secondary:hover {
448
- --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-primary-50));
453
+ --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-action-secondary-bg-hover, #ebf8f8));
449
454
  }
450
455
 
451
456
  .button--tertiary {
452
- --hx-button-bg: var(--hx-color-neutral-100);
453
- --hx-button-color: var(--hx-color-neutral-900);
457
+ --hx-button-bg: var(--hx-color-surface-sunken, #ebeee9);
458
+ --hx-button-color: var(--hx-color-text-primary, #0d1825);
454
459
  --hx-button-border-color: transparent;
455
460
  }
456
461
 
457
462
  .button--tertiary:hover {
458
- --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-neutral-200));
463
+ --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-surface-raised, #f5f8f3));
459
464
  }
460
465
 
461
466
  .button--danger {
462
- --hx-button-bg: var(--hx-color-error-500);
463
- --hx-button-color: var(--hx-color-neutral-0);
467
+ --hx-button-bg: var(--hx-color-action-danger-bg, #e5493e);
468
+ /* Inline #0d1825 matches text.on-error's resolved primitive (neutral-900);
469
+ cold-start without the semantic still paints AA-tuned dark-on-error
470
+ rather than white-on-error (3.92:1 fail). */
471
+ --hx-button-color: var(--hx-color-text-on-error, #0d1825);
464
472
  --hx-button-border-color: transparent;
465
473
  }
466
474
 
475
+ /* on-error tokens are tuned for error-500 (neutral-900 on #E5493E ≈ 4.59:1).
476
+ error-600 (#C92A2A) drops that to 3.28:1 — AA fail. text.on-error-strong
477
+ resolves to neutral-0 across modes (no dark flip) so the darker hover fill
478
+ stays legible. Mirrors hx-toast precedent (commit 300e21ab0); routed
479
+ through the semantic tier in 3.2.1 token-cascade remediation. */
467
480
  .button--danger:hover {
468
- --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-error-600));
481
+ --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-action-danger-bg-hover, #c92a2a));
482
+ --hx-button-color: var(--hx-color-text-on-error-strong, #ffffff);
483
+ }
484
+
485
+ /* Pressed state binds explicitly to action.danger.bg-active (error-700,
486
+ #A21312) + text.on-error-strong (neutral-0) = 7.96:1 AA. Base
487
+ .button:active filter:brightness(0.8) would compound on top of bg-hover
488
+ (#C92A2A) and produce ~3.3:1 sub-AA on the bound colors. Override the
489
+ filter to none. HC override on action.danger.bg-active flips to HC
490
+ error-500 so the on-error-strong (HC = #000) pair is AA in HC too. */
491
+ .button--danger:active {
492
+ --hx-button-bg: var(--hx-button-active-bg, var(--hx-color-action-danger-bg-active, #a21312));
493
+ --hx-button-color: var(--hx-color-text-on-error-strong, #ffffff);
494
+ filter: none;
469
495
  }
470
496
 
471
497
  .button--ghost {
472
498
  --hx-button-bg: transparent;
473
- --hx-button-color: var(--hx-color-primary-500);
499
+ /* primary-500 (#429797) text on white surface = 3.44:1 — fails AA.
500
+ primary-600 (#0F7078) on white = 5.82:1 — AA pass. */
501
+ --hx-button-color: var(--hx-color-action-ghost-fg, #0f7078);
474
502
  --hx-button-border-color: transparent;
475
503
  }
476
504
 
477
505
  .button--ghost:hover {
478
- --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-neutral-100));
506
+ --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-action-ghost-bg-hover, #ebf8f8));
479
507
  }
480
508
 
481
509
  .button--outline {
482
510
  --hx-button-bg: transparent;
483
- --hx-button-color: var(--hx-color-neutral-900);
484
- --hx-button-border-color: var(--hx-color-neutral-300);
511
+ --hx-button-color: var(--hx-color-text-primary, #0d1825);
512
+ --hx-button-border-color: var(--hx-color-border-strong, #66787b);
485
513
  }
486
514
 
487
515
  .button--outline:hover {
488
- --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-neutral-50));
516
+ --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-surface-raised, #f5f8f3));
489
517
  }
490
518
 
519
+ /* on-primary token resolves to neutral-900 (#0D1825) — tuned for primary-500.
520
+ primary-600 (#0F7078) drops the pair to 3.07:1 — AA fail. text.on-primary-strong
521
+ resolves to neutral-0 across modes (no dark flip) for the darker hover fill.
522
+ Mirrors hx-toast precedent (commit 300e21ab0); routed through the semantic
523
+ tier in 3.2.1 token-cascade remediation. */
491
524
  .button--primary:hover {
492
- --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-primary-600));
525
+ --hx-button-bg: var(--hx-button-hover-bg, var(--hx-color-action-primary-bg-hover, #0f7078));
526
+ --hx-button-color: var(--hx-color-text-on-primary-strong, #ffffff);
527
+ }
528
+
529
+ /* Pressed state binds explicitly to action.primary.bg-active (primary-700,
530
+ #0F6363) + text.on-primary-strong (neutral-0) = 7.03:1 AA. The base
531
+ .button:active filter:brightness(0.8) would compound on top of bg-hover
532
+ (#0F7078) and produce ~3.7:1 sub-AA on the bound colors. Override the
533
+ filter to none so the action.*.bg-active token is what actually paints. */
534
+ .button--primary:active {
535
+ --hx-button-bg: var(--hx-button-active-bg, var(--hx-color-action-primary-bg-active, #0f6363));
536
+ --hx-button-color: var(--hx-color-text-on-primary-strong, #ffffff);
537
+ filter: none;
493
538
  }
494
539
 
495
540
  /* ─── Disabled ─── */
@@ -533,9 +578,20 @@
533
578
 
534
579
  /* ─── Inverted Mode ─── */
535
580
 
581
+ /* Inline-fallback contract for the on-dark-* tokens in this section:
582
+ the literal rgba(255, 255, 255, 0.X) arms are a LIGHT-MODE-only last
583
+ resort (cold-start, CSS-not-loaded). At runtime, hx-theme injects
584
+ the dark.* override (overlay-black-* for the strong border and the
585
+ surface.on-dark-overlay-* fills) so dark-mode inverted buttons stay
586
+ visible on the now-light surface.inverse (#EBEEE9). The inline white
587
+ overlays would render invisible (≈1.1:1) on a light surface, but
588
+ they never paint when the theme is mounted. If a future change
589
+ moves these into a context where hx-theme is not guaranteed,
590
+ replace with mode-aware tokens. */
591
+
536
592
  /* Override text color and filter-based hover/active for all variants */
537
593
  :host([inverted]) .button {
538
- color: var(--hx-button-inverted-color, var(--hx-color-neutral-0));
594
+ color: var(--hx-button-inverted-color, var(--hx-color-text-inverse, #ffffff));
539
595
  filter: none;
540
596
  }
541
597
 
@@ -548,37 +604,93 @@
548
604
  }
549
605
 
550
606
  :host([inverted]) .button:focus-visible {
607
+ /* WCAG 1.4.11: focus indicator needs ≥3:1 against adjacent colors.
608
+ border-on-dark-strong (overlay-white-70) ≈ 5:1 on neutral-900 — passes.
609
+ The lower-alpha siblings used to live in border.* but were sub-3:1
610
+ against any plausible surface and could not honour a border contract;
611
+ they're now surface.on-dark-overlay-{default,subtle} (translucent
612
+ fills, not borders) and used elsewhere in this file. See
613
+ tokens.json color.surface.on-dark-overlay-* for canonical ratios. */
551
614
  outline-color: var(
552
615
  --hx-button-inverted-focus-ring-color,
553
- var(--hx-overlay-white-50, rgba(255, 255, 255, 0.5))
616
+ var(--hx-color-border-on-dark-strong, rgba(255, 255, 255, 0.7))
617
+ );
618
+ }
619
+
620
+ /* Primary inverted — resting bg routes through action.primary.bg-inverted-rest
621
+ so dark mode can flip the fill to primary-600. surface.inverse becomes light
622
+ (#EBEEE9) in dark mode; primary-500 on #EBEEE9 = 2.94:1 (sub-3:1 UI floor
623
+ fail for the inverted-button boundary). primary-600 on #EBEEE9 = 4.97:1
624
+ (AA pass). Light mode tracks action.primary.bg (primary-500, 5.20:1 on
625
+ dark surface.inverse). */
626
+ :host([inverted]) .button--primary {
627
+ --hx-button-bg: var(--hx-color-action-primary-bg-inverted-rest, #429797);
628
+ }
629
+
630
+ /* Primary inverted — hover/pressed lift to action.primary.bg-inverted-hover
631
+ (primary-400, light teal). The base :host([inverted]) .button rule binds
632
+ color to text.inverse, which flips by mode (neutral-0 in light, neutral-900
633
+ in dark). On a permanent light-teal fill, white text drops to 2.4:1 in
634
+ light mode (AA fail). Pin color to text.on-primary (neutral-900, no
635
+ dark-mode flip) for both hover and active so the foreground is dark in
636
+ both modes — neutral-900 on primary-400 = 7.27:1 (AA pass).
637
+ Pressed === hover visually in inverted mode is acceptable UX (the
638
+ transient absence of pointer over the button signals release).
639
+ The fallback chain wraps --hx-button-active-bg (highest precedence) and
640
+ --hx-button-hover-bg so consumer overrides on either prop apply under
641
+ :host([inverted]) — the two share a paint here, so either knob is
642
+ honored, with active-bg winning when both are set. */
643
+ :host([inverted]) .button--primary:hover,
644
+ :host([inverted]) .button--primary:active {
645
+ --hx-button-bg: var(
646
+ --hx-button-active-bg,
647
+ var(--hx-button-hover-bg, var(--hx-color-action-primary-bg-inverted-hover, #6ab1b1))
648
+ );
649
+ color: var(
650
+ --hx-button-inverted-primary-interactive-color,
651
+ var(--hx-color-text-on-primary, #0d1825)
554
652
  );
555
653
  }
556
654
 
557
- /* Primary inverted — slight transparent white overlay on hover */
558
- :host([inverted]) .button--primary:hover {
559
- --hx-button-bg: var(--hx-color-primary-400, #60a5fa);
655
+ /* Danger inverted — sister to primary. Hover/pressed lift to
656
+ action.danger.bg-inverted-hover (error-400, #FC7264). Same foreground
657
+ contract: text.inverse fails in light mode (white on light red ≈ 2.6:1);
658
+ pin to text.on-error (neutral-900, no dark-mode flip) for 6.58:1 in both
659
+ modes. Same active-bg → hover-bg → semantic fallback chain as primary. */
660
+ :host([inverted]) .button--danger:hover,
661
+ :host([inverted]) .button--danger:active {
662
+ --hx-button-bg: var(
663
+ --hx-button-active-bg,
664
+ var(--hx-button-hover-bg, var(--hx-color-action-danger-bg-inverted-hover, #fc7264))
665
+ );
666
+ color: var(
667
+ --hx-button-inverted-danger-interactive-color,
668
+ var(--hx-color-text-on-error, #0d1825)
669
+ );
560
670
  }
561
671
 
562
- /* Secondary inverted — white border and text */
672
+ /* Secondary inverted — white border and translucent hover fill */
563
673
  :host([inverted]) .button--secondary {
564
- --hx-button-border-color: var(--hx-overlay-white-70, rgba(255, 255, 255, 0.7));
674
+ --hx-button-border-color: var(--hx-color-border-on-dark-strong, rgba(255, 255, 255, 0.7));
565
675
  }
566
676
 
567
677
  :host([inverted]) .button--secondary:hover {
568
- --hx-button-bg: var(--hx-overlay-white-15, rgba(255, 255, 255, 0.15));
678
+ --hx-button-bg: var(--hx-color-surface-on-dark-overlay-default, rgba(255, 255, 255, 0.3));
569
679
  }
570
680
 
571
- /* Tertiary inverted */
681
+ /* Tertiary inverted — resting at the subtle overlay (10%) lifts to the default
682
+ overlay (30%) on hover so the runtime hover delta is visually distinct, not
683
+ collapsed onto a single token. */
572
684
  :host([inverted]) .button--tertiary {
573
- --hx-button-bg: var(--hx-overlay-white-15, rgba(255, 255, 255, 0.15));
685
+ --hx-button-bg: var(--hx-color-surface-on-dark-overlay-subtle, rgba(255, 255, 255, 0.1));
574
686
  --hx-button-border-color: transparent;
575
687
  }
576
688
 
577
689
  :host([inverted]) .button--tertiary:hover {
578
- --hx-button-bg: var(--hx-overlay-white-25, rgba(255, 255, 255, 0.25));
690
+ --hx-button-bg: var(--hx-color-surface-on-dark-overlay-default, rgba(255, 255, 255, 0.3));
579
691
  }
580
692
 
581
- /* Ghost inverted — transparent base, white hover bg */
693
+ /* Ghost inverted — transparent base, translucent hover bg */
582
694
  :host([inverted]) .button--ghost {
583
695
  --hx-button-bg: transparent;
584
696
  --hx-button-border-color: transparent;
@@ -587,17 +699,17 @@
587
699
  :host([inverted]) .button--ghost:hover {
588
700
  --hx-button-bg: var(
589
701
  --hx-button-inverted-ghost-hover-bg,
590
- var(--hx-overlay-white-20, rgba(255, 255, 255, 0.2))
702
+ var(--hx-color-surface-on-dark-overlay-default, rgba(255, 255, 255, 0.3))
591
703
  );
592
704
  }
593
705
 
594
706
  /* Outline inverted — white border */
595
707
  :host([inverted]) .button--outline {
596
- --hx-button-border-color: var(--hx-overlay-white-70, rgba(255, 255, 255, 0.7));
708
+ --hx-button-border-color: var(--hx-color-border-on-dark-strong, rgba(255, 255, 255, 0.7));
597
709
  }
598
710
 
599
711
  :host([inverted]) .button--outline:hover {
600
- --hx-button-bg: var(--hx-overlay-white-15, rgba(255, 255, 255, 0.15));
712
+ --hx-button-bg: var(--hx-color-surface-on-dark-overlay-default, rgba(255, 255, 255, 0.3));
601
713
  }
602
714
 
603
715
  /* ─── Prefix / Suffix / Label ─── */
@@ -625,6 +737,16 @@
625
737
  border: 2px solid ButtonText;
626
738
  }
627
739
 
740
+ .button:hover {
741
+ /* Hover affordance must survive in HC. Highlight/HighlightText is the
742
+ OS-level "selected" pair, mirroring the forcedColorsInteractive mixin's
743
+ hover contract — kept inline since this component owns its bespoke HC
744
+ block (XOR rule). */
745
+ background-color: Highlight;
746
+ color: HighlightText;
747
+ border-color: Highlight;
748
+ }
749
+
628
750
  .button:focus-visible {
629
751
  outline: 3px solid Highlight;
630
752
  outline-offset: 2px;
@@ -670,33 +792,43 @@
670
792
  /* ─── No Double Borders: Horizontal ─── */
671
793
 
672
794
  .group--horizontal ::slotted(*:not(:first-child)) {
673
- margin-inline-start: calc(-1 * var(--hx-border-width-thin, 1px));
795
+ margin-inline-start: var(
796
+ --hx-button-group-divider-offset,
797
+ calc(-1 * var(--hx-border-width-thin, 1px))
798
+ );
674
799
  }
675
800
 
676
801
  /* ─── No Double Borders: Vertical ─── */
677
802
 
678
803
  .group--vertical ::slotted(*:not(:first-child)) {
679
- margin-top: calc(-1 * var(--hx-border-width-thin, 1px));
804
+ margin-top: var(--hx-button-group-divider-offset, calc(-1 * var(--hx-border-width-thin, 1px)));
680
805
  }
681
806
 
682
807
  /* ─── Border Radius: Horizontal — Single child keeps all corners ─── */
683
808
 
684
809
  .group--horizontal ::slotted(:only-child) {
685
- --hx-button-border-radius: var(--hx-border-radius-md, 0.375rem);
810
+ --hx-button-border-radius: var(
811
+ --hx-button-group-border-radius,
812
+ var(--hx-border-radius-md, 0.375rem)
813
+ );
686
814
  }
687
815
 
688
816
  /* ─── Border Radius: Horizontal — First child keeps left corners ─── */
689
817
 
690
818
  .group--horizontal ::slotted(:first-child:not(:only-child)) {
691
- --hx-button-border-radius: var(--hx-border-radius-md, 0.375rem) 0 0
692
- var(--hx-border-radius-md, 0.375rem);
819
+ --hx-button-border-radius: var(
820
+ --hx-button-group-border-radius,
821
+ var(--hx-border-radius-md, 0.375rem)
822
+ )
823
+ 0 0 var(--hx-button-group-border-radius, var(--hx-border-radius-md, 0.375rem));
693
824
  }
694
825
 
695
826
  /* ─── Border Radius: Horizontal — Last child keeps right corners ─── */
696
827
 
697
828
  .group--horizontal ::slotted(:last-child:not(:only-child)) {
698
- --hx-button-border-radius: 0 var(--hx-border-radius-md, 0.375rem)
699
- var(--hx-border-radius-md, 0.375rem) 0;
829
+ --hx-button-border-radius: 0
830
+ var(--hx-button-group-border-radius, var(--hx-border-radius-md, 0.375rem))
831
+ var(--hx-button-group-border-radius, var(--hx-border-radius-md, 0.375rem)) 0;
700
832
  }
701
833
 
702
834
  /* ─── Border Radius: Horizontal — Middle children have no radius ─── */
@@ -708,21 +840,28 @@
708
840
  /* ─── Border Radius: Vertical — Single child keeps all corners ─── */
709
841
 
710
842
  .group--vertical ::slotted(:only-child) {
711
- --hx-button-border-radius: var(--hx-border-radius-md, 0.375rem);
843
+ --hx-button-border-radius: var(
844
+ --hx-button-group-border-radius,
845
+ var(--hx-border-radius-md, 0.375rem)
846
+ );
712
847
  }
713
848
 
714
849
  /* ─── Border Radius: Vertical — First child keeps top corners ─── */
715
850
 
716
851
  .group--vertical ::slotted(:first-child:not(:only-child)) {
717
- --hx-button-border-radius: var(--hx-border-radius-md, 0.375rem)
718
- var(--hx-border-radius-md, 0.375rem) 0 0;
852
+ --hx-button-border-radius: var(
853
+ --hx-button-group-border-radius,
854
+ var(--hx-border-radius-md, 0.375rem)
855
+ )
856
+ var(--hx-button-group-border-radius, var(--hx-border-radius-md, 0.375rem)) 0 0;
719
857
  }
720
858
 
721
859
  /* ─── Border Radius: Vertical — Last child keeps bottom corners ─── */
722
860
 
723
861
  .group--vertical ::slotted(:last-child:not(:only-child)) {
724
- --hx-button-border-radius: 0 0 var(--hx-border-radius-md, 0.375rem)
725
- var(--hx-border-radius-md, 0.375rem);
862
+ --hx-button-border-radius: 0 0
863
+ var(--hx-button-group-border-radius, var(--hx-border-radius-md, 0.375rem))
864
+ var(--hx-button-group-border-radius, var(--hx-border-radius-md, 0.375rem));
726
865
  }
727
866
 
728
867
  /* ─── Border Radius: Vertical — Middle children have no radius ─── */
@@ -734,7 +873,7 @@
734
873
  /* ─── Z-index: Raise focused child above siblings to show full focus ring ─── */
735
874
 
736
875
  .group ::slotted(:focus-within) {
737
- z-index: 1;
876
+ z-index: var(--hx-button-group-focus-z-index, 1);
738
877
  position: relative;
739
878
  }
740
879
 
@@ -747,24 +886,24 @@
747
886
  * outline from hx-button's own forced-colors block is fully visible.
748
887
  */
749
888
  .group ::slotted(:focus-within) {
750
- z-index: 2;
889
+ z-index: var(--hx-button-group-focus-z-index-hc, 2);
751
890
  }
752
891
  }
753
892
  /* ── hx-card ── */
754
893
  :host {
755
894
  display: block;
756
895
  color: var(--hx-card-color, inherit);
757
- background-color: var(--hx-card-bg, var(--hx-color-neutral-0, #ffffff));
896
+ background-color: var(--hx-card-bg, var(--hx-color-surface-default, #ffffff));
758
897
  }
759
898
 
760
899
  .card {
761
900
  display: flex;
762
901
  flex-direction: column;
763
902
  gap: var(--hx-card-gap, var(--hx-space-4, 1rem));
764
- background-color: var(--hx-card-bg, var(--hx-color-neutral-0, #ffffff));
765
- color: var(--hx-card-color, var(--hx-color-neutral-800, #1e293b));
903
+ background-color: var(--hx-card-bg, var(--hx-color-surface-default, #ffffff));
904
+ color: var(--hx-card-color, var(--hx-color-text-strong, #202b39));
766
905
  border: var(--hx-border-width-thin, 1px) solid
767
- var(--hx-card-border-color, var(--hx-color-neutral-200, #e2e8f0));
906
+ var(--hx-card-border-color, var(--hx-color-border-default, #d6dbd5));
768
907
  border-radius: var(--hx-card-border-radius, var(--hx-border-radius-lg, 0.5rem));
769
908
  overflow: hidden;
770
909
  font-family: var(--hx-card-font-family, var(--hx-font-family-sans, sans-serif));
@@ -780,11 +919,14 @@
780
919
  }
781
920
 
782
921
  .card--raised {
783
- box-shadow: var(--hx-shadow-md, 0 4px 6px -1px rgb(0 0 0 / 0.1));
922
+ box-shadow: var(--hx-card-shadow, var(--hx-shadow-md, 0 4px 6px -1px rgb(0 0 0 / 0.1)));
784
923
  }
785
924
 
786
925
  .card--floating {
787
- box-shadow: var(--hx-shadow-xl, 0 20px 25px -5px rgb(0 0 0 / 0.1));
926
+ box-shadow: var(
927
+ --hx-card-shadow-floating,
928
+ var(--hx-shadow-xl, 0 20px 25px -5px rgb(0 0 0 / 0.1))
929
+ );
788
930
  }
789
931
 
790
932
  /* ─── Style Variants ─── */
@@ -794,8 +936,8 @@
794
936
  }
795
937
 
796
938
  .card--featured {
797
- border-color: var(--hx-color-primary-500, #2563eb);
798
- border-width: var(--hx-border-width-medium, 2px);
939
+ border-color: var(--hx-card-featured-border-color, var(--hx-color-primary-500, #429797));
940
+ border-width: var(--hx-card-featured-border-width, var(--hx-border-width-medium, 2px));
799
941
  }
800
942
 
801
943
  .card--compact .card__body {
@@ -827,13 +969,13 @@
827
969
  }
828
970
 
829
971
  .card--interactive:hover {
830
- box-shadow: var(--hx-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
972
+ box-shadow: var(--hx-card-shadow-hover, var(--hx-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1)));
831
973
  transform: translateY(var(--hx-transform-lift-md, -2px));
832
974
  }
833
975
 
834
976
  .card--interactive:focus-visible {
835
977
  outline: var(--hx-focus-ring-width, 2px) solid
836
- var(--hx-card-focus-ring-color, var(--hx-focus-ring-color, var(--hx-color-primary-500)));
978
+ var(--hx-card-focus-ring-color, var(--hx-focus-ring-color, #0f7078));
837
979
  outline-offset: var(--hx-focus-ring-offset, 2px);
838
980
  }
839
981
 
@@ -890,7 +1032,14 @@
890
1032
  flex: 1;
891
1033
  font-size: var(--hx-font-size-md, 1rem);
892
1034
  line-height: var(--hx-line-height-normal, 1.5);
893
- color: var(--hx-card-color, var(--hx-color-neutral-600, #475569));
1035
+ /*
1036
+ * Body color cascades: component-tier --hx-card-body-color overrides
1037
+ * the host-tier --hx-card-color, which falls back to text-secondary.
1038
+ * Preserves the propagation contract: setting --hx-card-color on the
1039
+ * host flows into the body slot (and through to slotted light-DOM
1040
+ * descendants via flat-tree inheritance).
1041
+ */
1042
+ color: var(--hx-card-body-color, var(--hx-card-color, var(--hx-color-text-secondary, #313e4b)));
894
1043
  }
895
1044
 
896
1045
  .card__footer {
@@ -908,11 +1057,12 @@
908
1057
  padding-bottom: var(--hx-card-padding, var(--hx-space-6, 1.5rem));
909
1058
  padding-inline-start: var(--hx-card-padding, var(--hx-space-6, 1.5rem));
910
1059
  border-top: var(--hx-border-width-thin, 1px) solid
911
- var(--hx-card-border-color, var(--hx-color-neutral-200, #e2e8f0));
1060
+ var(--hx-card-border-color, var(--hx-color-border-default, #d6dbd5));
912
1061
  margin-top: auto;
913
1062
  }
914
1063
 
915
1064
  /* ─── Forced Colors (Windows High Contrast) ─── */
1065
+ /* Belt-and-suspenders: rich per-class HC overrides PLUS the forcedColorsSurface mixin. */
916
1066
 
917
1067
  @media (forced-colors: active) {
918
1068
  .card {
@@ -926,9 +1076,9 @@
926
1076
  /* ── hx-divider ── */
927
1077
  :host {
928
1078
  display: block;
929
- --_divider-color: var(--hx-divider-color, var(--hx-color-neutral-200, #e2e8f0));
1079
+ --_divider-color: var(--hx-divider-color, var(--hx-color-border-default, #d6dbd5));
930
1080
  --_divider-width: var(--hx-divider-width, var(--hx-border-width-thin, 1px));
931
- --_divider-label-color: var(--hx-divider-label-color, var(--hx-color-neutral-500, #64748b));
1081
+ --_divider-label-color: var(--hx-divider-label-color, var(--hx-color-text-muted, #66787b));
932
1082
  --_divider-label-size: var(--hx-divider-label-font-size, var(--hx-font-size-sm, 0.875rem));
933
1083
  --_divider-label-gap: var(--hx-divider-label-gap, var(--hx-space-3, 0.75rem));
934
1084
  }
@@ -1106,23 +1256,23 @@
1106
1256
 
1107
1257
  :host([disabled]) {
1108
1258
  pointer-events: none;
1109
- opacity: var(--hx-opacity-disabled);
1259
+ opacity: var(--hx-opacity-disabled, 0.5);
1110
1260
  }
1111
1261
 
1112
1262
  .button {
1113
1263
  display: inline-flex;
1114
1264
  align-items: center;
1115
1265
  justify-content: center;
1116
- border: var(--hx-border-width-thin) solid var(--hx-icon-button-border-color);
1117
- border-radius: var(--hx-icon-button-border-radius, var(--hx-border-radius-md));
1118
- background-color: var(--hx-icon-button-bg);
1119
- color: var(--hx-icon-button-color, var(--hx-color-primary-500));
1266
+ border: var(--hx-border-width-thin, 1px) solid var(--hx-icon-button-border-color, transparent);
1267
+ border-radius: var(--hx-icon-button-border-radius, var(--hx-border-radius-md, 0.375rem));
1268
+ background-color: var(--hx-icon-button-bg, transparent);
1269
+ color: var(--hx-icon-button-color, var(--hx-color-primary-500, #429797));
1120
1270
  cursor: pointer;
1121
1271
  transition:
1122
- background-color var(--hx-transition-fast),
1123
- color var(--hx-transition-fast),
1124
- border-color var(--hx-transition-fast),
1125
- box-shadow var(--hx-transition-fast);
1272
+ background-color var(--hx-transition-fast, 150ms ease),
1273
+ color var(--hx-transition-fast, 150ms ease),
1274
+ border-color var(--hx-transition-fast, 150ms ease),
1275
+ box-shadow var(--hx-transition-fast, 150ms ease);
1126
1276
  text-decoration: none;
1127
1277
  user-select: none;
1128
1278
  -webkit-user-select: none;
@@ -1130,9 +1280,9 @@
1130
1280
  }
1131
1281
 
1132
1282
  .button:focus-visible {
1133
- outline: var(--hx-focus-ring-width) solid
1134
- var(--hx-icon-button-focus-ring-color, var(--hx-focus-ring-color));
1135
- outline-offset: var(--hx-focus-ring-offset);
1283
+ outline: var(--hx-focus-ring-width, 2px) solid
1284
+ var(--hx-icon-button-focus-ring-color, var(--hx-focus-ring-color, #0f7078));
1285
+ outline-offset: var(--hx-focus-ring-offset, 2px);
1136
1286
  }
1137
1287
 
1138
1288
  .button:active {
@@ -1146,82 +1296,90 @@
1146
1296
  the 2.75rem (44px) threshold, preserving the visual icon size via font-size. */
1147
1297
 
1148
1298
  .button--sm {
1149
- padding: var(--hx-space-1);
1150
- width: var(--hx-icon-button-size, var(--hx-size-8));
1151
- height: var(--hx-icon-button-size, var(--hx-size-8));
1299
+ padding: var(--hx-space-1, 0.25rem);
1300
+ width: var(--hx-icon-button-size, var(--hx-size-8, 2rem));
1301
+ height: var(--hx-icon-button-size, var(--hx-size-8, 2rem));
1152
1302
  min-width: var(--hx-touch-target-min, 2.75rem);
1153
1303
  min-height: var(--hx-touch-target-min, 2.75rem);
1154
- font-size: var(--hx-font-size-sm);
1304
+ font-size: var(--hx-font-size-sm, 0.875rem);
1155
1305
  }
1156
1306
 
1157
1307
  .button--md {
1158
- padding: var(--hx-space-2);
1159
- width: var(--hx-icon-button-size, var(--hx-size-10));
1160
- height: var(--hx-icon-button-size, var(--hx-size-10));
1308
+ padding: var(--hx-space-2, 0.5rem);
1309
+ width: var(--hx-icon-button-size, var(--hx-size-10, 2.5rem));
1310
+ height: var(--hx-icon-button-size, var(--hx-size-10, 2.5rem));
1161
1311
  min-width: var(--hx-touch-target-min, 2.75rem);
1162
1312
  min-height: var(--hx-touch-target-min, 2.75rem);
1163
- font-size: var(--hx-font-size-md);
1313
+ font-size: var(--hx-font-size-md, 1rem);
1164
1314
  }
1165
1315
 
1166
1316
  .button--lg {
1167
- padding: var(--hx-space-3);
1168
- width: var(--hx-icon-button-size, var(--hx-size-12));
1169
- height: var(--hx-icon-button-size, var(--hx-size-12));
1317
+ padding: var(--hx-space-3, 0.75rem);
1318
+ width: var(--hx-icon-button-size, var(--hx-size-12, 3rem));
1319
+ height: var(--hx-icon-button-size, var(--hx-size-12, 3rem));
1170
1320
  min-width: var(--hx-touch-target-min, 2.75rem);
1171
1321
  min-height: var(--hx-touch-target-min, 2.75rem);
1172
- font-size: var(--hx-font-size-lg);
1322
+ font-size: var(--hx-font-size-lg, 1.125rem);
1173
1323
  }
1174
1324
 
1175
1325
  /* ─── Style Variants ─── */
1176
1326
 
1177
1327
  .button--primary {
1178
- --hx-icon-button-bg: var(--hx-color-primary-500);
1179
- --hx-icon-button-color: var(--hx-color-neutral-0);
1328
+ --hx-icon-button-bg: var(--hx-color-primary-500, #429797);
1329
+ --hx-icon-button-color: var(--hx-color-text-on-primary, #ffffff);
1180
1330
  --hx-icon-button-border-color: transparent;
1181
1331
  }
1182
1332
 
1333
+ /* on-primary tokens are tuned for primary-500. primary-600 + on-primary
1334
+ drops icon contrast to 3.07:1 — fails the 4.5:1 floor for meaningful
1335
+ icons. Pin fg at neutral-0 (5.82:1 on primary-600). Mirrors hx-button. */
1183
1336
  .button--primary:hover {
1184
- --hx-icon-button-bg: var(--hx-color-primary-600);
1337
+ --hx-icon-button-bg: var(--hx-color-primary-600, #0f7078);
1338
+ --hx-icon-button-color: var(--hx-color-neutral-0, #ffffff);
1185
1339
  }
1186
1340
 
1187
1341
  .button--secondary {
1188
1342
  --hx-icon-button-bg: transparent;
1189
- --hx-icon-button-color: var(--hx-color-primary-500);
1190
- --hx-icon-button-border-color: var(--hx-color-primary-500);
1343
+ --hx-icon-button-color: var(--hx-color-primary-500, #429797);
1344
+ --hx-icon-button-border-color: var(--hx-color-primary-500, #429797);
1191
1345
  }
1192
1346
 
1193
1347
  .button--secondary:hover {
1194
- --hx-icon-button-bg: var(--hx-color-primary-50);
1348
+ --hx-icon-button-bg: var(--hx-color-primary-50, #ebf8f8);
1195
1349
  }
1196
1350
 
1197
1351
  .button--tertiary {
1198
1352
  --hx-icon-button-bg: transparent;
1199
- --hx-icon-button-color: var(--hx-color-neutral-700);
1200
- --hx-icon-button-border-color: var(--hx-color-neutral-300);
1353
+ --hx-icon-button-color: var(--hx-color-text-strong, #202b39);
1354
+ --hx-icon-button-border-color: var(--hx-color-border-strong, #66787b);
1201
1355
  }
1202
1356
 
1203
1357
  .button--tertiary:hover {
1204
- --hx-icon-button-bg: var(--hx-color-neutral-100);
1358
+ --hx-icon-button-bg: var(--hx-color-surface-sunken, #ebeee9);
1205
1359
  }
1206
1360
 
1207
1361
  .button--danger {
1208
- --hx-icon-button-bg: var(--hx-color-error-500);
1209
- --hx-icon-button-color: var(--hx-color-neutral-0);
1362
+ --hx-icon-button-bg: var(--hx-color-error-500, #e5493e);
1363
+ --hx-icon-button-color: var(--hx-color-text-on-error, #ffffff);
1210
1364
  --hx-icon-button-border-color: transparent;
1211
1365
  }
1212
1366
 
1367
+ /* on-error tokens are tuned for error-500. error-600 + on-error drops
1368
+ icon contrast to 2.25:1 — fails AA. Pin fg at neutral-0
1369
+ (6.47:1 on error-600). Mirrors hx-button danger:hover. */
1213
1370
  .button--danger:hover {
1214
- --hx-icon-button-bg: var(--hx-color-error-600);
1371
+ --hx-icon-button-bg: var(--hx-color-error-600, #c92a2a);
1372
+ --hx-icon-button-color: var(--hx-color-neutral-0, #ffffff);
1215
1373
  }
1216
1374
 
1217
1375
  .button--ghost {
1218
1376
  --hx-icon-button-bg: transparent;
1219
- --hx-icon-button-color: var(--hx-color-primary-500);
1377
+ --hx-icon-button-color: var(--hx-color-primary-500, #429797);
1220
1378
  --hx-icon-button-border-color: transparent;
1221
1379
  }
1222
1380
 
1223
1381
  .button--ghost:hover {
1224
- --hx-icon-button-bg: var(--hx-color-neutral-100);
1382
+ --hx-icon-button-bg: var(--hx-color-surface-raised, #f5f8f3);
1225
1383
  }
1226
1384
 
1227
1385
  /* ─── Icon Container ─── */
@@ -1298,8 +1456,8 @@
1298
1456
  align-items: center;
1299
1457
  justify-content: center;
1300
1458
  min-height: var(--hx-image-fallback-min-height, 3rem);
1301
- background-color: var(--hx-color-neutral-100, #f1f5f9);
1302
- color: var(--hx-color-neutral-500, #64748b);
1459
+ background-color: var(--hx-image-fallback-bg, var(--hx-color-neutral-100, #ebeee9));
1460
+ color: var(--hx-image-fallback-color, var(--hx-color-neutral-500, #66787b));
1303
1461
  }
1304
1462
 
1305
1463
  .image__img {
@@ -1312,7 +1470,7 @@
1312
1470
  .image__caption {
1313
1471
  display: none;
1314
1472
  padding: var(--hx-image-caption-padding, 0.5rem 0 0);
1315
- color: var(--hx-image-caption-color, var(--hx-color-neutral-600, #475569));
1473
+ color: var(--hx-image-caption-color, var(--hx-color-neutral-600, #4a5362));
1316
1474
  font-size: var(--hx-image-caption-font-size, 0.875rem);
1317
1475
  }
1318
1476
 
@@ -1342,7 +1500,7 @@
1342
1500
  display: inline-flex;
1343
1501
  align-items: center;
1344
1502
  gap: var(--hx-space-1, 0.25rem);
1345
- color: var(--hx-link-color, var(--hx-color-primary-500, #2563eb));
1503
+ color: var(--hx-link-color, var(--hx-color-primary-600, #0f7078));
1346
1504
  font-family: var(--hx-link-font-family, var(--hx-font-family-sans, inherit));
1347
1505
  font-size: inherit;
1348
1506
  line-height: inherit;
@@ -1356,20 +1514,17 @@
1356
1514
  }
1357
1515
 
1358
1516
  .link:hover {
1359
- color: var(--hx-link-color-hover, var(--hx-color-primary-700, #1e40af));
1517
+ color: var(--hx-link-color-hover, var(--hx-color-primary-700, #0f6363));
1360
1518
  text-decoration: var(--hx-link-text-decoration-hover, underline);
1361
1519
  }
1362
1520
 
1363
1521
  .link:active {
1364
- color: var(--hx-link-color-active, var(--hx-color-primary-800, #1e3a8a));
1522
+ color: var(--hx-link-color-active, var(--hx-color-primary-800, #07494a));
1365
1523
  }
1366
1524
 
1367
1525
  .link:focus-visible {
1368
1526
  outline: var(--hx-focus-ring-width, 2px) solid
1369
- var(
1370
- --hx-link-focus-ring-color,
1371
- var(--hx-focus-ring-color, var(--hx-color-primary-400, #60a5fa))
1372
- );
1527
+ var(--hx-link-focus-ring-color, var(--hx-focus-ring-color, #0f7078));
1373
1528
  outline-offset: var(--hx-focus-ring-offset, 2px);
1374
1529
  border-radius: var(--hx-border-radius-sm, 0.25rem);
1375
1530
  }
@@ -1377,29 +1532,29 @@
1377
1532
  /* --- Variant: subtle --- */
1378
1533
 
1379
1534
  .link--subtle {
1380
- color: var(--hx-link-color-subtle, var(--hx-color-neutral-600, #475569));
1535
+ color: var(--hx-link-color-subtle, var(--hx-color-text-secondary, #313e4b));
1381
1536
  text-decoration: none;
1382
1537
  }
1383
1538
 
1384
1539
  .link--subtle:hover {
1385
- color: var(--hx-link-color-hover, var(--hx-color-primary-700, #1e40af));
1540
+ color: var(--hx-link-color-hover, var(--hx-color-primary-700, #0f6363));
1386
1541
  text-decoration: underline;
1387
1542
  }
1388
1543
 
1389
1544
  /* --- Variant: danger --- */
1390
1545
 
1391
1546
  .link--danger {
1392
- color: var(--hx-link-color-danger, var(--hx-color-error-text, #b91c1c));
1547
+ color: var(--hx-link-color-danger, var(--hx-color-error-text, #c92a2a));
1393
1548
  }
1394
1549
 
1395
1550
  .link--danger:hover {
1396
- color: var(--hx-link-color-danger-hover, var(--hx-color-error-700, #991b1b));
1551
+ color: var(--hx-link-color-danger-hover, var(--hx-color-error-700, #a21312));
1397
1552
  }
1398
1553
 
1399
1554
  /* --- Disabled --- */
1400
1555
 
1401
1556
  .link--disabled {
1402
- color: var(--hx-link-color-disabled, var(--hx-color-neutral-400, #94a3b8));
1557
+ color: var(--hx-link-color-disabled, var(--hx-color-text-disabled, #8e9c98));
1403
1558
  text-decoration: none;
1404
1559
  cursor: not-allowed;
1405
1560
  }
@@ -1463,7 +1618,7 @@
1463
1618
 
1464
1619
  .skeleton {
1465
1620
  display: block;
1466
- background-color: var(--hx-skeleton-bg, var(--hx-color-neutral-200, #e2e8f0));
1621
+ background-color: var(--hx-skeleton-bg, var(--hx-color-neutral-200, #d6dbd5));
1467
1622
  overflow: hidden;
1468
1623
  position: relative;
1469
1624
  width: var(--_width, 100%);
@@ -1633,13 +1788,13 @@
1633
1788
  /* ─── Variant Colors ─── */
1634
1789
 
1635
1790
  :host([variant='default']) {
1636
- --_spinner-color: var(--hx-spinner-color, var(--hx-color-neutral-600, #475569));
1637
- --_spinner-track-color: var(--hx-spinner-track-color, var(--hx-color-neutral-200, #e2e8f0));
1791
+ --_spinner-color: var(--hx-spinner-color, var(--hx-color-neutral-600, #4a5362));
1792
+ --_spinner-track-color: var(--hx-spinner-track-color, var(--hx-color-neutral-200, #d6dbd5));
1638
1793
  }
1639
1794
 
1640
1795
  :host([variant='primary']) {
1641
- --_spinner-color: var(--hx-spinner-color, var(--hx-color-primary-500, #2563eb));
1642
- --_spinner-track-color: var(--hx-spinner-track-color, var(--hx-color-primary-100, #dbeafe));
1796
+ --_spinner-color: var(--hx-spinner-color, var(--hx-color-primary-500, #429797));
1797
+ --_spinner-track-color: var(--hx-spinner-track-color, var(--hx-color-primary-100, #dbf0f0));
1643
1798
  }
1644
1799
 
1645
1800
  :host([variant='inverted']) {
@@ -1688,15 +1843,15 @@
1688
1843
  align-items: center;
1689
1844
  gap: var(--hx-space-1, 0.25rem);
1690
1845
  border-radius: var(--hx-tag-border-radius, var(--hx-border-radius-sm, 0.25rem));
1691
- background-color: var(--hx-tag-bg, var(--hx-color-neutral-100, #f1f5f9));
1692
- color: var(--hx-tag-color, var(--hx-color-neutral-700, #334155));
1846
+ background-color: var(--hx-tag-bg, var(--hx-color-neutral-100, #ebeee9));
1847
+ color: var(--hx-tag-color, var(--hx-color-neutral-700, #313e4b));
1693
1848
  font-family: var(--hx-tag-font-family, var(--hx-font-family-sans, sans-serif));
1694
1849
  font-weight: var(--hx-tag-font-weight, var(--hx-font-weight-medium, 500));
1695
1850
  line-height: var(--hx-line-height-tight, 1.25);
1696
1851
  white-space: nowrap;
1697
1852
  vertical-align: middle;
1698
1853
  border: var(--hx-border-width-thin, 1px) solid
1699
- var(--hx-tag-border-color, var(--hx-color-neutral-200, #e2e8f0));
1854
+ var(--hx-tag-border-color, var(--hx-color-neutral-200, #d6dbd5));
1700
1855
  }
1701
1856
 
1702
1857
  /* ─── Size Variants ─── */
@@ -1722,33 +1877,33 @@
1722
1877
  /* ─── Color Variants ─── */
1723
1878
 
1724
1879
  .tag--default {
1725
- --hx-tag-bg: var(--hx-color-neutral-100, #f1f5f9);
1726
- --hx-tag-color: var(--hx-color-neutral-700, #334155);
1727
- --hx-tag-border-color: var(--hx-color-neutral-200, #e2e8f0);
1880
+ --hx-tag-bg: var(--hx-tag-default-bg, var(--hx-color-neutral-100, #ebeee9));
1881
+ --hx-tag-color: var(--hx-tag-default-color, var(--hx-color-neutral-700, #313e4b));
1882
+ --hx-tag-border-color: var(--hx-tag-default-border-color, var(--hx-color-neutral-200, #d6dbd5));
1728
1883
  }
1729
1884
 
1730
1885
  .tag--primary {
1731
- --hx-tag-bg: var(--hx-color-primary-50, #eff6ff);
1732
- --hx-tag-color: var(--hx-color-primary-700, #1e40af);
1733
- --hx-tag-border-color: var(--hx-color-primary-200, #bfdbfe);
1886
+ --hx-tag-bg: var(--hx-tag-primary-bg, var(--hx-color-primary-50, #ebf8f8));
1887
+ --hx-tag-color: var(--hx-tag-primary-color, var(--hx-color-primary-700, #0f6363));
1888
+ --hx-tag-border-color: var(--hx-tag-primary-border-color, var(--hx-color-primary-200, #bce1e1));
1734
1889
  }
1735
1890
 
1736
1891
  .tag--success {
1737
- --hx-tag-bg: var(--hx-color-success-50, #f0fdf4);
1738
- --hx-tag-color: var(--hx-color-success-700, #166534);
1739
- --hx-tag-border-color: var(--hx-color-success-200, #bbf7d0);
1892
+ --hx-tag-bg: var(--hx-tag-success-bg, var(--hx-color-success-50, #eafaec));
1893
+ --hx-tag-color: var(--hx-tag-success-color, var(--hx-color-success-700, #146831));
1894
+ --hx-tag-border-color: var(--hx-tag-success-border-color, var(--hx-color-success-200, #bae6c2));
1740
1895
  }
1741
1896
 
1742
1897
  .tag--warning {
1743
- --hx-tag-bg: var(--hx-color-warning-50, #fffbeb);
1744
- --hx-tag-color: var(--hx-color-warning-700, #92400e);
1745
- --hx-tag-border-color: var(--hx-color-warning-200, #fde68a);
1898
+ --hx-tag-bg: var(--hx-tag-warning-bg, var(--hx-color-warning-50, #fff3ea));
1899
+ --hx-tag-color: var(--hx-tag-warning-color, var(--hx-color-warning-700, #804605));
1900
+ --hx-tag-border-color: var(--hx-tag-warning-border-color, var(--hx-color-warning-200, #facfae));
1746
1901
  }
1747
1902
 
1748
1903
  .tag--danger {
1749
- --hx-tag-bg: var(--hx-color-error-50, #fef2f2);
1750
- --hx-tag-color: var(--hx-color-error-700, #991b1b);
1751
- --hx-tag-border-color: var(--hx-color-error-200, #fecaca);
1904
+ --hx-tag-bg: var(--hx-tag-danger-bg, var(--hx-color-error-50, #fff2f0));
1905
+ --hx-tag-color: var(--hx-tag-danger-color, var(--hx-color-error-700, #a21312));
1906
+ --hx-tag-border-color: var(--hx-tag-danger-border-color, var(--hx-color-error-200, #fccbc4));
1752
1907
  }
1753
1908
 
1754
1909
  /* ─── Semantic Variant Label (WCAG 1.4.1) ─── */
@@ -1912,31 +2067,33 @@
1912
2067
  /* ─── Colors ─── */
1913
2068
 
1914
2069
  .text--color-default {
1915
- --hx-text-color: var(--hx-color-neutral-900, #0f172a);
2070
+ --hx-text-color: var(--hx-text-default-color, var(--hx-color-neutral-900, #0d1825));
1916
2071
  }
1917
2072
 
1918
2073
  .text--color-subtle {
1919
- --hx-text-color: var(--hx-color-neutral-500, #64748b);
2074
+ --hx-text-color: var(--hx-text-subtle-color, var(--hx-color-neutral-500, #66787b));
1920
2075
  }
1921
2076
 
1922
2077
  .text--color-disabled {
1923
- --hx-text-color: var(--hx-color-neutral-400, #94a3b8);
2078
+ --hx-text-color: var(--hx-text-disabled-color, var(--hx-color-neutral-400, #8e9c98));
1924
2079
  }
1925
2080
 
1926
2081
  .text--color-inverse {
1927
- --hx-text-color: var(--hx-color-neutral-0, #ffffff);
2082
+ --hx-text-color: var(--hx-text-inverse-color, var(--hx-color-neutral-0, #ffffff));
1928
2083
  }
1929
2084
 
1930
2085
  .text--color-danger {
1931
- --hx-text-color: var(--hx-color-error-600, #b91c1c);
2086
+ --hx-text-color: var(--hx-text-danger-color, var(--hx-color-error-600, #c92a2a));
1932
2087
  }
1933
2088
 
1934
2089
  .text--color-success {
1935
- --hx-text-color: var(--hx-color-success-600, #15803d);
2090
+ --hx-text-color: var(--hx-text-success-color, var(--hx-color-success-700, #146831));
1936
2091
  }
1937
2092
 
1938
2093
  .text--color-warning {
1939
- --hx-text-color: var(--hx-color-warning-600, #b45309);
2094
+ /* warning-600 (#B8650E) on white = 4.28:1 — fails AA body text in the
2095
+ precision-cool palette. warning-700 (#804605) on white = 7.06:1 — AA pass. */
2096
+ --hx-text-color: var(--hx-text-warning-color, var(--hx-color-warning-700, #804605));
1940
2097
  }
1941
2098
 
1942
2099
  /* ─── Weight Overrides ─── */