@cyberskill/design 2.0.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (779) hide show
  1. package/DESIGN.md +87 -87
  2. package/README.md +3 -3
  3. package/SECURITY.md +4 -4
  4. package/VERSION +1 -1
  5. package/_ds_bundle.js +2 -2
  6. package/_ds_bundle.js.map +1 -1
  7. package/_ds_manifest.json +143 -143
  8. package/_esm/cs.mjs +2 -2
  9. package/base/collections.css +5 -4
  10. package/base/components.css +8 -7
  11. package/base/controls.css +16 -16
  12. package/base/data.css +5 -5
  13. package/base/feedback.css +5 -3
  14. package/base/forms.css +3 -2
  15. package/base/glass.css +4 -4
  16. package/base/interaction.css +6 -1
  17. package/base/navigation.css +3 -3
  18. package/base/reset.css +2 -0
  19. package/base/shell.css +8 -8
  20. package/base/typography.css +4 -4
  21. package/components/_i18n/strings.js +3 -3
  22. package/components/_utils/open-change.js +18 -0
  23. package/components/ai/ai-conversation.card.html +2 -0
  24. package/components/ai/ai-lumi.card.html +2 -0
  25. package/components/ai/ai.card.html +2 -0
  26. package/components/api-discovery.json +94 -24
  27. package/components/api-index.json +528 -80
  28. package/components/brand/brand.card.html +2 -0
  29. package/components/button/buttons.card.html +2 -0
  30. package/components/contracts.json +23 -9
  31. package/components/data/collections.card.html +2 -0
  32. package/components/data/data.card.html +2 -0
  33. package/components/datatable/DataGrid.jsx +1 -1
  34. package/components/datatable/datatable.card.html +2 -0
  35. package/components/dialog/Dialog.d.ts +3 -0
  36. package/components/dialog/Dialog.jsx +7 -5
  37. package/components/dialog/Dialog.prompt.md +1 -0
  38. package/components/dialog/dialog.card.html +2 -0
  39. package/components/feedback/Alert.d.ts +5 -1
  40. package/components/feedback/Alert.jsx +4 -3
  41. package/components/feedback/Alert.prompt.md +2 -0
  42. package/components/feedback/Toast.d.ts +3 -0
  43. package/components/feedback/Toast.jsx +4 -3
  44. package/components/feedback/Toast.prompt.md +1 -0
  45. package/components/feedback/feedback-2.card.html +2 -0
  46. package/components/feedback/feedback.card.html +2 -0
  47. package/components/forms/forms-2.card.html +2 -0
  48. package/components/forms/forms.card.html +2 -0
  49. package/components/i18n/i18n.card.html +2 -1
  50. package/components/icon/icon.card.html +2 -0
  51. package/components/lifecycle.json +433 -55
  52. package/components/logo/logo.card.html +2 -0
  53. package/components/navigation/CommandPalette.d.ts +4 -1
  54. package/components/navigation/CommandPalette.jsx +6 -5
  55. package/components/navigation/CommandPalette.prompt.md +1 -0
  56. package/components/navigation/Menubar.jsx +2 -2
  57. package/components/navigation/navigation.card.html +2 -0
  58. package/components/navigation/shell.card.html +2 -0
  59. package/components/overlays/Drawer.d.ts +3 -0
  60. package/components/overlays/Drawer.jsx +6 -5
  61. package/components/overlays/Drawer.prompt.md +1 -0
  62. package/components/overlays/Tour.d.ts +3 -0
  63. package/components/overlays/Tour.jsx +8 -5
  64. package/components/overlays/Tour.prompt.md +1 -0
  65. package/components/overlays/alertdialog.card.html +2 -0
  66. package/components/overlays/overlays.card.html +2 -0
  67. package/components/prompt-api.json +17 -10
  68. package/components/scenarios.json +37 -37
  69. package/components/specifications.json +3403 -1401
  70. package/components/static-html-reference.json +36 -36
  71. package/components/textfield/textfield.card.html +2 -0
  72. package/dist/esm/_esm/react.mjs +69 -68
  73. package/dist/esm/build.json +526 -518
  74. package/dist/esm/chunks/{chunk-FEUTSZBN.mjs → chunk-2CCVFTPL.mjs} +2 -2
  75. package/dist/esm/chunks/{chunk-W5VR7GTL.mjs → chunk-2VVGZEOQ.mjs} +2 -2
  76. package/dist/esm/chunks/{chunk-3RC4CDAE.mjs → chunk-3R5WJQCB.mjs} +2 -2
  77. package/dist/esm/chunks/{chunk-W6N22NMF.mjs → chunk-4FGB6VHN.mjs} +2 -2
  78. package/dist/esm/chunks/{chunk-JN57OITY.mjs → chunk-4RSFD6QC.mjs} +10 -7
  79. package/dist/esm/chunks/chunk-4RSFD6QC.mjs.map +7 -0
  80. package/dist/esm/chunks/{chunk-YZR3C7V2.mjs → chunk-4TO35YGK.mjs} +2 -2
  81. package/dist/esm/chunks/{chunk-JSAPFO73.mjs → chunk-4YWKKULF.mjs} +2 -2
  82. package/dist/esm/chunks/{chunk-W2RF4NWB.mjs → chunk-5FQGNCKS.mjs} +2 -2
  83. package/dist/esm/chunks/chunk-65SIJBJX.mjs +22 -0
  84. package/dist/esm/chunks/chunk-65SIJBJX.mjs.map +7 -0
  85. package/dist/esm/chunks/{chunk-SYCXNMYP.mjs → chunk-6ECKJ6RS.mjs} +2 -2
  86. package/dist/esm/chunks/{chunk-CH4W6RCG.mjs → chunk-6H7JYBPI.mjs} +10 -5
  87. package/dist/esm/chunks/chunk-6H7JYBPI.mjs.map +7 -0
  88. package/dist/esm/chunks/{chunk-72AUOI37.mjs → chunk-6TZDNLHE.mjs} +2 -2
  89. package/dist/esm/chunks/{chunk-QGCPHFSI.mjs → chunk-72STPBL4.mjs} +2 -2
  90. package/dist/esm/chunks/{chunk-37AN57S5.mjs → chunk-7GSR2NGL.mjs} +3 -3
  91. package/dist/esm/chunks/{chunk-A3PGQW3X.mjs → chunk-AA5BSO3T.mjs} +2 -2
  92. package/dist/esm/chunks/{chunk-NH6M42ZI.mjs → chunk-ASGO2FW5.mjs} +2 -2
  93. package/dist/esm/chunks/{chunk-GP5ITSCH.mjs → chunk-C3NAMBA7.mjs} +2 -2
  94. package/dist/esm/chunks/{chunk-YA7Y7PEC.mjs → chunk-CKBL3UEA.mjs} +2 -2
  95. package/dist/esm/chunks/{chunk-H7EJ7TNP.mjs → chunk-CYZ22MB7.mjs} +2 -2
  96. package/dist/esm/chunks/{chunk-JRIWHAWW.mjs → chunk-D7A4ZCMJ.mjs} +2 -2
  97. package/dist/esm/chunks/{chunk-A7RWM4XH.mjs → chunk-DANUZS4S.mjs} +2 -2
  98. package/dist/esm/chunks/{chunk-FAVSLU7E.mjs → chunk-DFBKBVSE.mjs} +2 -2
  99. package/dist/esm/chunks/{chunk-TNHQB6CI.mjs → chunk-DW4AWLA5.mjs} +2 -2
  100. package/dist/esm/chunks/{chunk-5R5KMLUR.mjs → chunk-DWJIX65T.mjs} +2 -2
  101. package/dist/esm/chunks/{chunk-YJNSQ5PJ.mjs → chunk-EITZT2U5.mjs} +2 -2
  102. package/dist/esm/chunks/{chunk-CSJHR2W2.mjs → chunk-EOCMQT4L.mjs} +2 -2
  103. package/dist/esm/chunks/{chunk-4QBKN42N.mjs → chunk-EXOOST5G.mjs} +2 -2
  104. package/dist/esm/chunks/{chunk-7HTAAMIY.mjs → chunk-FF5D53IP.mjs} +2 -2
  105. package/dist/esm/chunks/{chunk-JNK7QN24.mjs → chunk-FOEJO2YQ.mjs} +2 -2
  106. package/dist/esm/chunks/{chunk-F3M5TQ76.mjs → chunk-GB6VWFOE.mjs} +11 -6
  107. package/dist/esm/chunks/chunk-GB6VWFOE.mjs.map +7 -0
  108. package/dist/esm/chunks/{chunk-UFE32JPH.mjs → chunk-GHWOEHEX.mjs} +8 -4
  109. package/dist/esm/chunks/chunk-GHWOEHEX.mjs.map +7 -0
  110. package/dist/esm/chunks/{chunk-HYQG5XND.mjs → chunk-GLPQBE2J.mjs} +2 -2
  111. package/dist/esm/chunks/{chunk-HUW6OY7C.mjs → chunk-GNEVR5Q4.mjs} +2 -2
  112. package/dist/esm/chunks/{chunk-SEYKDGXE.mjs → chunk-H4TKHAB3.mjs} +2 -2
  113. package/dist/esm/chunks/{chunk-ANWF2NX3.mjs → chunk-H6HQZ5RI.mjs} +3 -3
  114. package/dist/esm/chunks/{chunk-ANWF2NX3.mjs.map → chunk-H6HQZ5RI.mjs.map} +2 -2
  115. package/dist/esm/chunks/{chunk-OR5UTKW7.mjs → chunk-I3H7EAH5.mjs} +2 -2
  116. package/dist/esm/chunks/{chunk-P64YS5W2.mjs → chunk-I3PQVFX5.mjs} +2 -2
  117. package/dist/esm/chunks/{chunk-5MR3C2QG.mjs → chunk-IOEWPBAL.mjs} +2 -2
  118. package/dist/esm/chunks/{chunk-TN2MZXGS.mjs → chunk-JIHWIDMP.mjs} +2 -2
  119. package/dist/esm/chunks/{chunk-FXELBWXK.mjs → chunk-JTAYZ36C.mjs} +4 -3
  120. package/dist/esm/chunks/{chunk-FXELBWXK.mjs.map → chunk-JTAYZ36C.mjs.map} +2 -2
  121. package/dist/esm/chunks/{chunk-25AOTZAM.mjs → chunk-JZYRXWPD.mjs} +4 -4
  122. package/dist/esm/chunks/{chunk-25AOTZAM.mjs.map → chunk-JZYRXWPD.mjs.map} +2 -2
  123. package/dist/esm/chunks/{chunk-YX62AV33.mjs → chunk-KAOUK33L.mjs} +2 -2
  124. package/dist/esm/chunks/{chunk-UVJ5BBQG.mjs → chunk-KWPNHP73.mjs} +2 -2
  125. package/dist/esm/chunks/{chunk-BABSYWVB.mjs → chunk-LCC4ZVVO.mjs} +2 -2
  126. package/dist/esm/chunks/{chunk-GWBINWTF.mjs → chunk-LWRFPVX7.mjs} +8 -4
  127. package/dist/esm/chunks/chunk-LWRFPVX7.mjs.map +7 -0
  128. package/dist/esm/chunks/{chunk-HVF4NT6P.mjs → chunk-MRXEJSQQ.mjs} +2 -2
  129. package/dist/esm/chunks/{chunk-DIIXA7WD.mjs → chunk-NZKMM4FK.mjs} +2 -2
  130. package/dist/esm/chunks/{chunk-CLWTVJM3.mjs → chunk-OEWAQZYE.mjs} +2 -2
  131. package/dist/esm/chunks/{chunk-IH4I7JSB.mjs → chunk-OILXJXVX.mjs} +10 -7
  132. package/dist/esm/chunks/chunk-OILXJXVX.mjs.map +7 -0
  133. package/dist/esm/chunks/{chunk-OOZKMXYB.mjs → chunk-PBP2MKZH.mjs} +2 -2
  134. package/dist/esm/chunks/{chunk-JKKJHQVQ.mjs → chunk-PE6KC2U7.mjs} +2 -2
  135. package/dist/esm/chunks/{chunk-N5TM7UIY.mjs → chunk-PFTKXY5Q.mjs} +2 -2
  136. package/dist/esm/chunks/{chunk-R7QVE2JP.mjs → chunk-PLN3ITUB.mjs} +2 -2
  137. package/dist/esm/chunks/{chunk-NEMFYL4X.mjs → chunk-QBPDNM7S.mjs} +2 -2
  138. package/dist/esm/chunks/{chunk-JDI3UMJW.mjs → chunk-SIMVM4RV.mjs} +2 -2
  139. package/dist/esm/chunks/{chunk-WJF2Q2Y3.mjs → chunk-TMXLSCAG.mjs} +2 -2
  140. package/dist/esm/chunks/{chunk-TGYG7JP4.mjs → chunk-TNQXCIBM.mjs} +2 -2
  141. package/dist/esm/chunks/{chunk-DHTD5KM5.mjs → chunk-TWCJMLGG.mjs} +2 -2
  142. package/dist/esm/chunks/{chunk-EPFDMHPK.mjs → chunk-U7RKPGRO.mjs} +2 -2
  143. package/dist/esm/chunks/{chunk-NMIGE2IM.mjs → chunk-UWNMGKAN.mjs} +2 -2
  144. package/dist/esm/chunks/{chunk-KXFGO7N4.mjs → chunk-VAPKJRQI.mjs} +2 -2
  145. package/dist/esm/chunks/{chunk-XTBN55D3.mjs → chunk-VUCJT2QJ.mjs} +2 -2
  146. package/dist/esm/chunks/{chunk-TVTBVHT2.mjs → chunk-WLANQTOU.mjs} +2 -2
  147. package/dist/esm/chunks/{chunk-3MCNCG2L.mjs → chunk-XZ5NWMO7.mjs} +2 -2
  148. package/dist/esm/chunks/{chunk-QPXQZBQC.mjs → chunk-YKU2KVAQ.mjs} +2 -2
  149. package/dist/esm/chunks/{chunk-ZKFOGW4D.mjs → chunk-YLSFKG64.mjs} +2 -2
  150. package/dist/esm/chunks/{chunk-TO2T6EEB.mjs → chunk-YVSAUCWW.mjs} +3 -3
  151. package/dist/esm/chunks/{chunk-XN74VX5H.mjs → chunk-ZKBAIIAQ.mjs} +2 -2
  152. package/dist/esm/chunks/{chunk-7IJTTRPK.mjs → chunk-ZPLENPV2.mjs} +2 -2
  153. package/dist/esm/components/ai/AIDisclosureBadge.mjs +2 -2
  154. package/dist/esm/components/ai/ChatMessage.mjs +2 -2
  155. package/dist/esm/components/ai/CitationList.mjs +2 -2
  156. package/dist/esm/components/ai/ConfidenceMeter.mjs +2 -2
  157. package/dist/esm/components/ai/HumanReviewGate.mjs +2 -2
  158. package/dist/esm/components/ai/PromptInput.mjs +2 -2
  159. package/dist/esm/components/ai/TypingIndicator.mjs +2 -2
  160. package/dist/esm/components/data/Carousel.mjs +2 -2
  161. package/dist/esm/components/data/Chart.mjs +2 -2
  162. package/dist/esm/components/data/CodeBlock.mjs +2 -2
  163. package/dist/esm/components/data/Comment.mjs +2 -2
  164. package/dist/esm/components/data/Image.mjs +2 -2
  165. package/dist/esm/components/data/Sortable.mjs +2 -2
  166. package/dist/esm/components/data/Splitter.mjs +2 -2
  167. package/dist/esm/components/data/Terminal.mjs +2 -2
  168. package/dist/esm/components/data/Tooltip.mjs +2 -2
  169. package/dist/esm/components/datatable/DataGrid.mjs +2 -2
  170. package/dist/esm/components/datatable/DataTable.mjs +3 -3
  171. package/dist/esm/components/datatable/TreeTable.mjs +2 -2
  172. package/dist/esm/components/dialog/Dialog.mjs +3 -2
  173. package/dist/esm/components/feedback/Alert.mjs +3 -2
  174. package/dist/esm/components/feedback/EmptyState.mjs +2 -2
  175. package/dist/esm/components/feedback/ProgressBar.mjs +2 -2
  176. package/dist/esm/components/feedback/Result.mjs +2 -2
  177. package/dist/esm/components/feedback/Spinner.mjs +2 -2
  178. package/dist/esm/components/feedback/Tag.mjs +2 -2
  179. package/dist/esm/components/feedback/Toast.mjs +3 -2
  180. package/dist/esm/components/forms/Calendar.mjs +2 -2
  181. package/dist/esm/components/forms/Cascader.mjs +2 -2
  182. package/dist/esm/components/forms/ColorPicker.mjs +2 -2
  183. package/dist/esm/components/forms/Combobox.mjs +2 -2
  184. package/dist/esm/components/forms/DatePicker.mjs +3 -3
  185. package/dist/esm/components/forms/Editor.mjs +2 -2
  186. package/dist/esm/components/forms/FileUpload.mjs +2 -2
  187. package/dist/esm/components/forms/Form.mjs +2 -2
  188. package/dist/esm/components/forms/InlineEdit.mjs +2 -2
  189. package/dist/esm/components/forms/InputGroup.mjs +2 -2
  190. package/dist/esm/components/forms/InputOTP.mjs +2 -2
  191. package/dist/esm/components/forms/Mentions.mjs +2 -2
  192. package/dist/esm/components/forms/NumberField.mjs +2 -2
  193. package/dist/esm/components/forms/Rating.mjs +2 -2
  194. package/dist/esm/components/forms/SearchField.mjs +2 -2
  195. package/dist/esm/components/forms/Select.mjs +2 -2
  196. package/dist/esm/components/forms/Slider.mjs +2 -2
  197. package/dist/esm/components/forms/Switch.mjs +2 -2
  198. package/dist/esm/components/forms/TagInput.mjs +2 -2
  199. package/dist/esm/components/forms/TimePicker.mjs +2 -2
  200. package/dist/esm/components/forms/Toggle.mjs +2 -2
  201. package/dist/esm/components/forms/Transfer.mjs +2 -2
  202. package/dist/esm/components/forms/TreeSelect.mjs +2 -2
  203. package/dist/esm/components/i18n/LocaleProvider.mjs +2 -2
  204. package/dist/esm/components/navigation/BackTop.mjs +2 -2
  205. package/dist/esm/components/navigation/Breadcrumb.mjs +2 -2
  206. package/dist/esm/components/navigation/CommandPalette.mjs +3 -2
  207. package/dist/esm/components/navigation/HotKeys.mjs +2 -2
  208. package/dist/esm/components/navigation/Menu.mjs +2 -2
  209. package/dist/esm/components/navigation/Menubar.mjs +2 -2
  210. package/dist/esm/components/navigation/Pagination.mjs +2 -2
  211. package/dist/esm/components/navigation/Steps.mjs +2 -2
  212. package/dist/esm/components/navigation/Tabs.mjs +2 -2
  213. package/dist/esm/components/navigation/Toolbar.mjs +2 -2
  214. package/dist/esm/components/overlays/AlertDialog.mjs +2 -2
  215. package/dist/esm/components/overlays/ContextMenu.mjs +2 -2
  216. package/dist/esm/components/overlays/Drawer.mjs +3 -2
  217. package/dist/esm/components/overlays/Popconfirm.mjs +2 -2
  218. package/dist/esm/components/overlays/Popover.mjs +2 -2
  219. package/dist/esm/components/overlays/Tour.mjs +3 -2
  220. package/dist/styles.min.css +1 -1
  221. package/docs/ci-cd.md +1 -1
  222. package/docs/component-api.md +1 -1
  223. package/docs/consuming.md +1 -1
  224. package/docs/contrast-report.md +196 -1
  225. package/docs/conventions.md +1 -1
  226. package/docs/design-styles.md +1 -1
  227. package/docs/manual-at-matrix.md +2 -0
  228. package/docs/quality-gates.md +2 -1
  229. package/docs/reference-catalog.json +81 -81
  230. package/docs/release-notes.md +1 -1
  231. package/docs/static-html-reference.md +27 -27
  232. package/docs/template-inventory.json +162 -162
  233. package/docs/vi/ci-cd.md +1 -1
  234. package/docs/vi/component-api.md +1 -1
  235. package/docs/vi/consuming.md +1 -1
  236. package/docs/vi/contrast-report.md +196 -1
  237. package/docs/vi/conventions.md +1 -1
  238. package/docs/vi/decisions/component-specification-evidence.md +1 -1
  239. package/docs/vi/decisions/token-alias-compatibility.md +1 -1
  240. package/docs/vi/design-styles.md +1 -1
  241. package/docs/vi/entrypoints/DESIGN.md +87 -87
  242. package/docs/vi/entrypoints/README.md +3 -3
  243. package/docs/vi/manual-at-matrix.md +2 -0
  244. package/docs/vi/quality-gates.md +2 -1
  245. package/docs/vi/release-notes.md +1 -1
  246. package/docs/vi/static-html-reference.md +27 -27
  247. package/docs/viewer.html +9 -12
  248. package/guidelines/atomic-view.html +39 -34
  249. package/guidelines/brand-iconography.html +33 -32
  250. package/guidelines/brand-imagery.html +2 -1
  251. package/guidelines/brand-interaction.html +3 -2
  252. package/guidelines/brand-voice.html +2 -1
  253. package/guidelines/colors-anchors.html +2 -1
  254. package/guidelines/colors-semantic.html +2 -1
  255. package/guidelines/colors-surfaces.html +2 -1
  256. package/guidelines/colors-text.html +2 -1
  257. package/guidelines/documents.html +3 -2
  258. package/guidelines/elements-components.html +4 -3
  259. package/guidelines/elements-concept.html +3 -2
  260. package/guidelines/elements-geometry.html +4 -3
  261. package/guidelines/elements-variants.html +18 -17
  262. package/guidelines/guideline-language.js +1 -1
  263. package/guidelines/motion-interaction.html +2 -1
  264. package/guidelines/motion.html +12 -13
  265. package/guidelines/responsive-bilingual.html +7 -6
  266. package/guidelines/rtl-preview.html +2 -2
  267. package/guidelines/spacing-breakpoints.html +2 -1
  268. package/guidelines/spacing-radius.html +4 -3
  269. package/guidelines/spacing-scale.html +2 -1
  270. package/guidelines/surfaces-aurora.html +2 -1
  271. package/guidelines/surfaces-depth.html +3 -2
  272. package/guidelines/surfaces-glass.html +2 -1
  273. package/guidelines/surfaces-shadow.html +2 -1
  274. package/guidelines/type-families.html +2 -1
  275. package/guidelines/type-lineheight.html +2 -1
  276. package/guidelines/type-scale.html +2 -1
  277. package/guidelines/type-weights.html +2 -1
  278. package/package.json +4 -2
  279. package/styles/components/manifest.json +156 -148
  280. package/styles.layered.css +492 -485
  281. package/styles.layered.provenance.json +17 -17
  282. package/templates/_vendor/deck-stage.js +3 -3
  283. package/templates/_vendor/doc-export.js +1 -1
  284. package/templates/_vendor/support.js +1 -1
  285. package/templates/ai-cluster-demo.html +2 -1
  286. package/templates/app-shell/AppShell.dc.html +2 -1
  287. package/templates/app-shell/support.js +1 -1
  288. package/templates/article/Article.dc.html +2 -1
  289. package/templates/article/support.js +1 -1
  290. package/templates/auth/Auth.dc.html +2 -1
  291. package/templates/auth/support.js +1 -1
  292. package/templates/bod-deck/BodDeck.dc.html +1 -0
  293. package/templates/bod-deck/support.js +1 -1
  294. package/templates/bod-investor-update/BodInvestorUpdate.dc.html +1 -0
  295. package/templates/bod-investor-update/support.js +1 -1
  296. package/templates/bod-memo/support.js +1 -1
  297. package/templates/bod-minutes/BodMinutes.dc.html +1 -0
  298. package/templates/bod-minutes/support.js +1 -1
  299. package/templates/bod-report/BodReport.dc.html +1 -0
  300. package/templates/bod-report/support.js +1 -1
  301. package/templates/bod-resolution/BodResolution.dc.html +1 -0
  302. package/templates/bod-resolution/support.js +1 -1
  303. package/templates/culture-event-invite/CultureEventInvite.dc.html +1 -0
  304. package/templates/culture-event-invite/support.js +1 -1
  305. package/templates/dashboard/Dashboard.dc.html +2 -1
  306. package/templates/dashboard/support.js +1 -1
  307. package/templates/delivery-change-note/DeliveryChangeNote.dc.html +1 -0
  308. package/templates/delivery-change-note/support.js +1 -1
  309. package/templates/delivery-kickoff/DeliveryKickoff.dc.html +1 -0
  310. package/templates/delivery-kickoff/support.js +1 -1
  311. package/templates/delivery-qbr-deck/DeliveryQbrDeck.dc.html +3 -2
  312. package/templates/delivery-qbr-deck/support.js +1 -1
  313. package/templates/delivery-runbook/DeliveryRunbook.dc.html +1 -0
  314. package/templates/delivery-runbook/support.js +1 -1
  315. package/templates/delivery-status-email/support.js +1 -1
  316. package/templates/doc-style-guide/DocStyleGuide.dc.html +1 -0
  317. package/templates/doc-style-guide/support.js +1 -1
  318. package/templates/doc-suite-index/DocSuiteIndex.dc.html +1 -0
  319. package/templates/doc-suite-index/support.js +1 -1
  320. package/templates/doc-templates/support.js +1 -1
  321. package/templates/email/Email-VN-standalone.html +2 -1
  322. package/templates/email/support.js +1 -1
  323. package/templates/email-safe/email-announcement.html +2 -1
  324. package/templates/email-safe/email-dunning.html +2 -1
  325. package/templates/email-safe/email-investor.html +2 -1
  326. package/templates/email-safe/email-launch.html +2 -1
  327. package/templates/email-safe/email-newsletter.html +2 -1
  328. package/templates/email-safe/email-status.html +2 -1
  329. package/templates/email-safe/email-transactional.html +2 -1
  330. package/templates/finance-dunning-email/support.js +1 -1
  331. package/templates/finance-expense-report/support.js +1 -1
  332. package/templates/finance-invoice/support.js +1 -1
  333. package/templates/finance-quote/support.js +1 -1
  334. package/templates/hr-announcement/support.js +1 -1
  335. package/templates/hr-interview-kit/HrInterviewKit.dc.html +1 -0
  336. package/templates/hr-interview-kit/support.js +1 -1
  337. package/templates/hr-offboarding/HrOffboarding.dc.html +1 -0
  338. package/templates/hr-offboarding/support.js +1 -1
  339. package/templates/hr-performance-review/HrPerformanceReview.dc.html +1 -0
  340. package/templates/hr-performance-review/support.js +1 -1
  341. package/templates/hr-pip/HrPip.dc.html +1 -0
  342. package/templates/hr-pip/support.js +1 -1
  343. package/templates/image-slots-demo.html +11 -9
  344. package/templates/kitchen-sink.html +8 -4
  345. package/templates/legal-msa/LegalMsa.dc.html +1 -0
  346. package/templates/legal-msa/support.js +1 -1
  347. package/templates/legal-sow/support.js +1 -1
  348. package/templates/marketing-campaign-brief/MarketingCampaignBrief.dc.html +1 -0
  349. package/templates/marketing-campaign-brief/support.js +1 -1
  350. package/templates/marketing-case-study/MarketingCaseStudy.dc.html +1 -0
  351. package/templates/marketing-case-study/support.js +1 -1
  352. package/templates/marketing-launch/support.js +1 -1
  353. package/templates/marketing-newsletter/support.js +1 -1
  354. package/templates/marketing-page/MarketingPage.dc.html +6 -3
  355. package/templates/marketing-page/support.js +1 -1
  356. package/templates/marketing-press-release/MarketingPressRelease.dc.html +2 -1
  357. package/templates/marketing-press-release/support.js +1 -1
  358. package/templates/marketing-social-kit/MarketingSocialKit.dc.html +1 -0
  359. package/templates/marketing-social-kit/support.js +1 -1
  360. package/templates/playground.html +9 -7
  361. package/templates/sales-one-pager/SalesOnePager.dc.html +1 -0
  362. package/templates/sales-one-pager/support.js +1 -1
  363. package/templates/sales-proposal-deck/SalesProposalDeck.dc.html +1 -0
  364. package/templates/sales-proposal-deck/support.js +1 -1
  365. package/templates/settings/Settings.dc.html +2 -1
  366. package/templates/settings/support.js +1 -1
  367. package/templates/slide-deck/SlideDeck.dc.html +1 -0
  368. package/templates/slide-deck/support.js +1 -1
  369. package/templates/team-meeting-agenda/TeamMeetingAgenda.dc.html +1 -0
  370. package/templates/team-meeting-agenda/support.js +1 -1
  371. package/templates/tech-incident-report/TechIncidentReport.dc.html +1 -0
  372. package/templates/tech-incident-report/support.js +1 -1
  373. package/templates/tech-release-notes/support.js +1 -1
  374. package/templates/tech-retro/TechRetro.dc.html +1 -0
  375. package/templates/tech-retro/support.js +1 -1
  376. package/templates/tech-rfc/TechRfc.dc.html +2 -1
  377. package/templates/tech-rfc/support.js +1 -1
  378. package/templates/vn-appointment-transfer/support.js +1 -1
  379. package/templates/vn-certificate-of-employment/support.js +1 -1
  380. package/templates/vn-code-of-conduct/support.js +1 -1
  381. package/templates/vn-compensation-regulation/support.js +1 -1
  382. package/templates/vn-contract-amendment/support.js +1 -1
  383. package/templates/vn-contractor-agreement/support.js +1 -1
  384. package/templates/vn-data-protection-policy/support.js +1 -1
  385. package/templates/vn-disciplinary-case-file/support.js +1 -1
  386. package/templates/vn-disciplinary-schedule/VnDisciplinarySchedule.dc.html +1 -0
  387. package/templates/vn-disciplinary-schedule/support.js +1 -1
  388. package/templates/vn-employee-request/support.js +1 -1
  389. package/templates/vn-exit-handover/support.js +1 -1
  390. package/templates/vn-foreign-employee-pack/VnForeignEmployeePack.dc.html +1 -0
  391. package/templates/vn-foreign-employee-pack/support.js +1 -1
  392. package/templates/vn-framework-agreement/support.js +1 -1
  393. package/templates/vn-grassroots-democracy/support.js +1 -1
  394. package/templates/vn-infosec-policy/support.js +1 -1
  395. package/templates/vn-internal-labor-regulations/support.js +1 -1
  396. package/templates/vn-internship-agreement/support.js +1 -1
  397. package/templates/vn-job-description/support.js +1 -1
  398. package/templates/vn-labor-contract/support.js +1 -1
  399. package/templates/vn-labour-management-book/VnLabourManagementBook.dc.html +1 -0
  400. package/templates/vn-labour-management-book/support.js +1 -1
  401. package/templates/vn-mutual-nda/support.js +1 -1
  402. package/templates/vn-ndnca-ip/support.js +1 -1
  403. package/templates/vn-offer-letter/support.js +1 -1
  404. package/templates/vn-onboarding-checklist/VnOnboardingChecklist.dc.html +1 -0
  405. package/templates/vn-onboarding-checklist/support.js +1 -1
  406. package/templates/vn-pdpl-consent/support.js +1 -1
  407. package/templates/vn-performance-evaluation-regulation/support.js +1 -1
  408. package/templates/vn-performance-review-form/support.js +1 -1
  409. package/templates/vn-phantom-stock/VnPhantomStock.dc.html +1 -0
  410. package/templates/vn-phantom-stock/support.js +1 -1
  411. package/templates/vn-probation-contract/support.js +1 -1
  412. package/templates/vn-receipt-acknowledgement/VnReceiptAcknowledgement.dc.html +1 -0
  413. package/templates/vn-receipt-acknowledgement/support.js +1 -1
  414. package/templates/vn-remote-work-policy/support.js +1 -1
  415. package/templates/vn-resignation-letter/support.js +1 -1
  416. package/templates/vn-salary-scale/VnSalaryScale.dc.html +1 -0
  417. package/templates/vn-salary-scale/support.js +1 -1
  418. package/templates/vn-sow-appendix/support.js +1 -1
  419. package/templates/vn-termination-decision/support.js +1 -1
  420. package/templates/vn-total-rewards-appendix/support.js +1 -1
  421. package/templates/vn-training-commitment/support.js +1 -1
  422. package/templates/vn-travel-expense-policy/support.js +1 -1
  423. package/tokens/base-inventory.json +22 -22
  424. package/tokens/component-tokens.css +38 -38
  425. package/tokens/declarations.json +490 -490
  426. package/tokens/element-seeds.json +41 -39
  427. package/tokens/elements.css +381 -381
  428. package/tokens/modes/dark__default__comfortable__high.dtcg.json +1 -1
  429. package/tokens/modes/dark__default__comfortable__standard.dtcg.json +1 -1
  430. package/tokens/modes/dark__default__compact__high.dtcg.json +1 -1
  431. package/tokens/modes/dark__default__compact__standard.dtcg.json +1 -1
  432. package/tokens/modes/dark__hoa-lava__comfortable__high.dtcg.json +1 -1
  433. package/tokens/modes/dark__hoa-lava__comfortable__standard.dtcg.json +1 -1
  434. package/tokens/modes/dark__hoa-lava__compact__high.dtcg.json +1 -1
  435. package/tokens/modes/dark__hoa-lava__compact__standard.dtcg.json +1 -1
  436. package/tokens/modes/dark__hoa-plasma__comfortable__high.dtcg.json +1 -1
  437. package/tokens/modes/dark__hoa-plasma__comfortable__standard.dtcg.json +1 -1
  438. package/tokens/modes/dark__hoa-plasma__compact__high.dtcg.json +1 -1
  439. package/tokens/modes/dark__hoa-plasma__compact__standard.dtcg.json +1 -1
  440. package/tokens/modes/dark__hoa__comfortable__high.dtcg.json +1 -1
  441. package/tokens/modes/dark__hoa__comfortable__standard.dtcg.json +1 -1
  442. package/tokens/modes/dark__hoa__compact__high.dtcg.json +1 -1
  443. package/tokens/modes/dark__hoa__compact__standard.dtcg.json +1 -1
  444. package/tokens/modes/dark__kim-steel__comfortable__high.dtcg.json +1 -1
  445. package/tokens/modes/dark__kim-steel__comfortable__standard.dtcg.json +1 -1
  446. package/tokens/modes/dark__kim-steel__compact__high.dtcg.json +1 -1
  447. package/tokens/modes/dark__kim-steel__compact__standard.dtcg.json +1 -1
  448. package/tokens/modes/dark__kim-titanium__comfortable__high.dtcg.json +1 -1
  449. package/tokens/modes/dark__kim-titanium__comfortable__standard.dtcg.json +1 -1
  450. package/tokens/modes/dark__kim-titanium__compact__high.dtcg.json +1 -1
  451. package/tokens/modes/dark__kim-titanium__compact__standard.dtcg.json +1 -1
  452. package/tokens/modes/dark__kim__comfortable__high.dtcg.json +1 -1
  453. package/tokens/modes/dark__kim__comfortable__standard.dtcg.json +1 -1
  454. package/tokens/modes/dark__kim__compact__high.dtcg.json +1 -1
  455. package/tokens/modes/dark__kim__compact__standard.dtcg.json +1 -1
  456. package/tokens/modes/dark__moc-bamboo__comfortable__high.dtcg.json +1 -1
  457. package/tokens/modes/dark__moc-bamboo__comfortable__standard.dtcg.json +1 -1
  458. package/tokens/modes/dark__moc-bamboo__compact__high.dtcg.json +1 -1
  459. package/tokens/modes/dark__moc-bamboo__compact__standard.dtcg.json +1 -1
  460. package/tokens/modes/dark__moc-forest__comfortable__high.dtcg.json +1 -1
  461. package/tokens/modes/dark__moc-forest__comfortable__standard.dtcg.json +1 -1
  462. package/tokens/modes/dark__moc-forest__compact__high.dtcg.json +1 -1
  463. package/tokens/modes/dark__moc-forest__compact__standard.dtcg.json +1 -1
  464. package/tokens/modes/dark__moc__comfortable__high.dtcg.json +1 -1
  465. package/tokens/modes/dark__moc__comfortable__standard.dtcg.json +1 -1
  466. package/tokens/modes/dark__moc__compact__high.dtcg.json +1 -1
  467. package/tokens/modes/dark__moc__compact__standard.dtcg.json +1 -1
  468. package/tokens/modes/dark__tho-clay__comfortable__high.dtcg.json +1 -1
  469. package/tokens/modes/dark__tho-clay__comfortable__standard.dtcg.json +1 -1
  470. package/tokens/modes/dark__tho-clay__compact__high.dtcg.json +1 -1
  471. package/tokens/modes/dark__tho-clay__compact__standard.dtcg.json +1 -1
  472. package/tokens/modes/dark__tho-sand__comfortable__high.dtcg.json +1 -1
  473. package/tokens/modes/dark__tho-sand__comfortable__standard.dtcg.json +1 -1
  474. package/tokens/modes/dark__tho-sand__compact__high.dtcg.json +1 -1
  475. package/tokens/modes/dark__tho-sand__compact__standard.dtcg.json +1 -1
  476. package/tokens/modes/dark__tho__comfortable__high.dtcg.json +1 -1
  477. package/tokens/modes/dark__tho__comfortable__standard.dtcg.json +1 -1
  478. package/tokens/modes/dark__tho__compact__high.dtcg.json +1 -1
  479. package/tokens/modes/dark__tho__compact__standard.dtcg.json +1 -1
  480. package/tokens/modes/dark__thuy-mist__comfortable__high.dtcg.json +1 -1
  481. package/tokens/modes/dark__thuy-mist__comfortable__standard.dtcg.json +1 -1
  482. package/tokens/modes/dark__thuy-mist__compact__high.dtcg.json +1 -1
  483. package/tokens/modes/dark__thuy-mist__compact__standard.dtcg.json +1 -1
  484. package/tokens/modes/dark__thuy-ocean__comfortable__high.dtcg.json +1 -1
  485. package/tokens/modes/dark__thuy-ocean__comfortable__standard.dtcg.json +1 -1
  486. package/tokens/modes/dark__thuy-ocean__compact__high.dtcg.json +1 -1
  487. package/tokens/modes/dark__thuy-ocean__compact__standard.dtcg.json +1 -1
  488. package/tokens/modes/dark__thuy__comfortable__high.dtcg.json +1 -1
  489. package/tokens/modes/dark__thuy__comfortable__standard.dtcg.json +1 -1
  490. package/tokens/modes/dark__thuy__compact__high.dtcg.json +1 -1
  491. package/tokens/modes/dark__thuy__compact__standard.dtcg.json +1 -1
  492. package/tokens/modes/index.json +2068 -2068
  493. package/tokens/modes/light__default__comfortable__high.dtcg.json +1 -1
  494. package/tokens/modes/light__default__comfortable__standard.dtcg.json +1 -1
  495. package/tokens/modes/light__default__compact__high.dtcg.json +1 -1
  496. package/tokens/modes/light__default__compact__standard.dtcg.json +1 -1
  497. package/tokens/modes/light__hoa-lava__comfortable__high.dtcg.json +1 -1
  498. package/tokens/modes/light__hoa-lava__comfortable__standard.dtcg.json +1 -1
  499. package/tokens/modes/light__hoa-lava__compact__high.dtcg.json +1 -1
  500. package/tokens/modes/light__hoa-lava__compact__standard.dtcg.json +1 -1
  501. package/tokens/modes/light__hoa-plasma__comfortable__high.dtcg.json +1 -1
  502. package/tokens/modes/light__hoa-plasma__comfortable__standard.dtcg.json +1 -1
  503. package/tokens/modes/light__hoa-plasma__compact__high.dtcg.json +1 -1
  504. package/tokens/modes/light__hoa-plasma__compact__standard.dtcg.json +1 -1
  505. package/tokens/modes/light__hoa__comfortable__high.dtcg.json +1 -1
  506. package/tokens/modes/light__hoa__comfortable__standard.dtcg.json +1 -1
  507. package/tokens/modes/light__hoa__compact__high.dtcg.json +1 -1
  508. package/tokens/modes/light__hoa__compact__standard.dtcg.json +1 -1
  509. package/tokens/modes/light__kim-steel__comfortable__high.dtcg.json +1 -1
  510. package/tokens/modes/light__kim-steel__comfortable__standard.dtcg.json +1 -1
  511. package/tokens/modes/light__kim-steel__compact__high.dtcg.json +1 -1
  512. package/tokens/modes/light__kim-steel__compact__standard.dtcg.json +1 -1
  513. package/tokens/modes/light__kim-titanium__comfortable__high.dtcg.json +1 -1
  514. package/tokens/modes/light__kim-titanium__comfortable__standard.dtcg.json +1 -1
  515. package/tokens/modes/light__kim-titanium__compact__high.dtcg.json +1 -1
  516. package/tokens/modes/light__kim-titanium__compact__standard.dtcg.json +1 -1
  517. package/tokens/modes/light__kim__comfortable__high.dtcg.json +1 -1
  518. package/tokens/modes/light__kim__comfortable__standard.dtcg.json +1 -1
  519. package/tokens/modes/light__kim__compact__high.dtcg.json +1 -1
  520. package/tokens/modes/light__kim__compact__standard.dtcg.json +1 -1
  521. package/tokens/modes/light__moc-bamboo__comfortable__high.dtcg.json +1 -1
  522. package/tokens/modes/light__moc-bamboo__comfortable__standard.dtcg.json +1 -1
  523. package/tokens/modes/light__moc-bamboo__compact__high.dtcg.json +1 -1
  524. package/tokens/modes/light__moc-bamboo__compact__standard.dtcg.json +1 -1
  525. package/tokens/modes/light__moc-forest__comfortable__high.dtcg.json +1 -1
  526. package/tokens/modes/light__moc-forest__comfortable__standard.dtcg.json +1 -1
  527. package/tokens/modes/light__moc-forest__compact__high.dtcg.json +1 -1
  528. package/tokens/modes/light__moc-forest__compact__standard.dtcg.json +1 -1
  529. package/tokens/modes/light__moc__comfortable__high.dtcg.json +1 -1
  530. package/tokens/modes/light__moc__comfortable__standard.dtcg.json +1 -1
  531. package/tokens/modes/light__moc__compact__high.dtcg.json +1 -1
  532. package/tokens/modes/light__moc__compact__standard.dtcg.json +1 -1
  533. package/tokens/modes/light__tho-clay__comfortable__high.dtcg.json +1 -1
  534. package/tokens/modes/light__tho-clay__comfortable__standard.dtcg.json +1 -1
  535. package/tokens/modes/light__tho-clay__compact__high.dtcg.json +1 -1
  536. package/tokens/modes/light__tho-clay__compact__standard.dtcg.json +1 -1
  537. package/tokens/modes/light__tho-sand__comfortable__high.dtcg.json +1 -1
  538. package/tokens/modes/light__tho-sand__comfortable__standard.dtcg.json +1 -1
  539. package/tokens/modes/light__tho-sand__compact__high.dtcg.json +1 -1
  540. package/tokens/modes/light__tho-sand__compact__standard.dtcg.json +1 -1
  541. package/tokens/modes/light__tho__comfortable__high.dtcg.json +1 -1
  542. package/tokens/modes/light__tho__comfortable__standard.dtcg.json +1 -1
  543. package/tokens/modes/light__tho__compact__high.dtcg.json +1 -1
  544. package/tokens/modes/light__tho__compact__standard.dtcg.json +1 -1
  545. package/tokens/modes/light__thuy-mist__comfortable__high.dtcg.json +1 -1
  546. package/tokens/modes/light__thuy-mist__comfortable__standard.dtcg.json +1 -1
  547. package/tokens/modes/light__thuy-mist__compact__high.dtcg.json +1 -1
  548. package/tokens/modes/light__thuy-mist__compact__standard.dtcg.json +1 -1
  549. package/tokens/modes/light__thuy-ocean__comfortable__high.dtcg.json +1 -1
  550. package/tokens/modes/light__thuy-ocean__comfortable__standard.dtcg.json +1 -1
  551. package/tokens/modes/light__thuy-ocean__compact__high.dtcg.json +1 -1
  552. package/tokens/modes/light__thuy-ocean__compact__standard.dtcg.json +1 -1
  553. package/tokens/modes/light__thuy__comfortable__high.dtcg.json +1 -1
  554. package/tokens/modes/light__thuy__comfortable__standard.dtcg.json +1 -1
  555. package/tokens/modes/light__thuy__compact__high.dtcg.json +1 -1
  556. package/tokens/modes/light__thuy__compact__standard.dtcg.json +1 -1
  557. package/tokens/modes/system-dark__default__comfortable__high.dtcg.json +1 -1
  558. package/tokens/modes/system-dark__default__comfortable__standard.dtcg.json +1 -1
  559. package/tokens/modes/system-dark__default__compact__high.dtcg.json +1 -1
  560. package/tokens/modes/system-dark__default__compact__standard.dtcg.json +1 -1
  561. package/tokens/modes/system-dark__hoa-lava__comfortable__high.dtcg.json +1 -1
  562. package/tokens/modes/system-dark__hoa-lava__comfortable__standard.dtcg.json +1 -1
  563. package/tokens/modes/system-dark__hoa-lava__compact__high.dtcg.json +1 -1
  564. package/tokens/modes/system-dark__hoa-lava__compact__standard.dtcg.json +1 -1
  565. package/tokens/modes/system-dark__hoa-plasma__comfortable__high.dtcg.json +1 -1
  566. package/tokens/modes/system-dark__hoa-plasma__comfortable__standard.dtcg.json +1 -1
  567. package/tokens/modes/system-dark__hoa-plasma__compact__high.dtcg.json +1 -1
  568. package/tokens/modes/system-dark__hoa-plasma__compact__standard.dtcg.json +1 -1
  569. package/tokens/modes/system-dark__hoa__comfortable__high.dtcg.json +1 -1
  570. package/tokens/modes/system-dark__hoa__comfortable__standard.dtcg.json +1 -1
  571. package/tokens/modes/system-dark__hoa__compact__high.dtcg.json +1 -1
  572. package/tokens/modes/system-dark__hoa__compact__standard.dtcg.json +1 -1
  573. package/tokens/modes/system-dark__kim-steel__comfortable__high.dtcg.json +1 -1
  574. package/tokens/modes/system-dark__kim-steel__comfortable__standard.dtcg.json +1 -1
  575. package/tokens/modes/system-dark__kim-steel__compact__high.dtcg.json +1 -1
  576. package/tokens/modes/system-dark__kim-steel__compact__standard.dtcg.json +1 -1
  577. package/tokens/modes/system-dark__kim-titanium__comfortable__high.dtcg.json +1 -1
  578. package/tokens/modes/system-dark__kim-titanium__comfortable__standard.dtcg.json +1 -1
  579. package/tokens/modes/system-dark__kim-titanium__compact__high.dtcg.json +1 -1
  580. package/tokens/modes/system-dark__kim-titanium__compact__standard.dtcg.json +1 -1
  581. package/tokens/modes/system-dark__kim__comfortable__high.dtcg.json +1 -1
  582. package/tokens/modes/system-dark__kim__comfortable__standard.dtcg.json +1 -1
  583. package/tokens/modes/system-dark__kim__compact__high.dtcg.json +1 -1
  584. package/tokens/modes/system-dark__kim__compact__standard.dtcg.json +1 -1
  585. package/tokens/modes/system-dark__moc-bamboo__comfortable__high.dtcg.json +1 -1
  586. package/tokens/modes/system-dark__moc-bamboo__comfortable__standard.dtcg.json +1 -1
  587. package/tokens/modes/system-dark__moc-bamboo__compact__high.dtcg.json +1 -1
  588. package/tokens/modes/system-dark__moc-bamboo__compact__standard.dtcg.json +1 -1
  589. package/tokens/modes/system-dark__moc-forest__comfortable__high.dtcg.json +1 -1
  590. package/tokens/modes/system-dark__moc-forest__comfortable__standard.dtcg.json +1 -1
  591. package/tokens/modes/system-dark__moc-forest__compact__high.dtcg.json +1 -1
  592. package/tokens/modes/system-dark__moc-forest__compact__standard.dtcg.json +1 -1
  593. package/tokens/modes/system-dark__moc__comfortable__high.dtcg.json +1 -1
  594. package/tokens/modes/system-dark__moc__comfortable__standard.dtcg.json +1 -1
  595. package/tokens/modes/system-dark__moc__compact__high.dtcg.json +1 -1
  596. package/tokens/modes/system-dark__moc__compact__standard.dtcg.json +1 -1
  597. package/tokens/modes/system-dark__tho-clay__comfortable__high.dtcg.json +1 -1
  598. package/tokens/modes/system-dark__tho-clay__comfortable__standard.dtcg.json +1 -1
  599. package/tokens/modes/system-dark__tho-clay__compact__high.dtcg.json +1 -1
  600. package/tokens/modes/system-dark__tho-clay__compact__standard.dtcg.json +1 -1
  601. package/tokens/modes/system-dark__tho-sand__comfortable__high.dtcg.json +1 -1
  602. package/tokens/modes/system-dark__tho-sand__comfortable__standard.dtcg.json +1 -1
  603. package/tokens/modes/system-dark__tho-sand__compact__high.dtcg.json +1 -1
  604. package/tokens/modes/system-dark__tho-sand__compact__standard.dtcg.json +1 -1
  605. package/tokens/modes/system-dark__tho__comfortable__high.dtcg.json +1 -1
  606. package/tokens/modes/system-dark__tho__comfortable__standard.dtcg.json +1 -1
  607. package/tokens/modes/system-dark__tho__compact__high.dtcg.json +1 -1
  608. package/tokens/modes/system-dark__tho__compact__standard.dtcg.json +1 -1
  609. package/tokens/modes/system-dark__thuy-mist__comfortable__high.dtcg.json +1 -1
  610. package/tokens/modes/system-dark__thuy-mist__comfortable__standard.dtcg.json +1 -1
  611. package/tokens/modes/system-dark__thuy-mist__compact__high.dtcg.json +1 -1
  612. package/tokens/modes/system-dark__thuy-mist__compact__standard.dtcg.json +1 -1
  613. package/tokens/modes/system-dark__thuy-ocean__comfortable__high.dtcg.json +1 -1
  614. package/tokens/modes/system-dark__thuy-ocean__comfortable__standard.dtcg.json +1 -1
  615. package/tokens/modes/system-dark__thuy-ocean__compact__high.dtcg.json +1 -1
  616. package/tokens/modes/system-dark__thuy-ocean__compact__standard.dtcg.json +1 -1
  617. package/tokens/modes/system-dark__thuy__comfortable__high.dtcg.json +1 -1
  618. package/tokens/modes/system-dark__thuy__comfortable__standard.dtcg.json +1 -1
  619. package/tokens/modes/system-dark__thuy__compact__high.dtcg.json +1 -1
  620. package/tokens/modes/system-dark__thuy__compact__standard.dtcg.json +1 -1
  621. package/tokens/modes/system-light__default__comfortable__high.dtcg.json +1 -1
  622. package/tokens/modes/system-light__default__comfortable__standard.dtcg.json +1 -1
  623. package/tokens/modes/system-light__default__compact__high.dtcg.json +1 -1
  624. package/tokens/modes/system-light__default__compact__standard.dtcg.json +1 -1
  625. package/tokens/modes/system-light__hoa-lava__comfortable__high.dtcg.json +1 -1
  626. package/tokens/modes/system-light__hoa-lava__comfortable__standard.dtcg.json +1 -1
  627. package/tokens/modes/system-light__hoa-lava__compact__high.dtcg.json +1 -1
  628. package/tokens/modes/system-light__hoa-lava__compact__standard.dtcg.json +1 -1
  629. package/tokens/modes/system-light__hoa-plasma__comfortable__high.dtcg.json +1 -1
  630. package/tokens/modes/system-light__hoa-plasma__comfortable__standard.dtcg.json +1 -1
  631. package/tokens/modes/system-light__hoa-plasma__compact__high.dtcg.json +1 -1
  632. package/tokens/modes/system-light__hoa-plasma__compact__standard.dtcg.json +1 -1
  633. package/tokens/modes/system-light__hoa__comfortable__high.dtcg.json +1 -1
  634. package/tokens/modes/system-light__hoa__comfortable__standard.dtcg.json +1 -1
  635. package/tokens/modes/system-light__hoa__compact__high.dtcg.json +1 -1
  636. package/tokens/modes/system-light__hoa__compact__standard.dtcg.json +1 -1
  637. package/tokens/modes/system-light__kim-steel__comfortable__high.dtcg.json +1 -1
  638. package/tokens/modes/system-light__kim-steel__comfortable__standard.dtcg.json +1 -1
  639. package/tokens/modes/system-light__kim-steel__compact__high.dtcg.json +1 -1
  640. package/tokens/modes/system-light__kim-steel__compact__standard.dtcg.json +1 -1
  641. package/tokens/modes/system-light__kim-titanium__comfortable__high.dtcg.json +1 -1
  642. package/tokens/modes/system-light__kim-titanium__comfortable__standard.dtcg.json +1 -1
  643. package/tokens/modes/system-light__kim-titanium__compact__high.dtcg.json +1 -1
  644. package/tokens/modes/system-light__kim-titanium__compact__standard.dtcg.json +1 -1
  645. package/tokens/modes/system-light__kim__comfortable__high.dtcg.json +1 -1
  646. package/tokens/modes/system-light__kim__comfortable__standard.dtcg.json +1 -1
  647. package/tokens/modes/system-light__kim__compact__high.dtcg.json +1 -1
  648. package/tokens/modes/system-light__kim__compact__standard.dtcg.json +1 -1
  649. package/tokens/modes/system-light__moc-bamboo__comfortable__high.dtcg.json +1 -1
  650. package/tokens/modes/system-light__moc-bamboo__comfortable__standard.dtcg.json +1 -1
  651. package/tokens/modes/system-light__moc-bamboo__compact__high.dtcg.json +1 -1
  652. package/tokens/modes/system-light__moc-bamboo__compact__standard.dtcg.json +1 -1
  653. package/tokens/modes/system-light__moc-forest__comfortable__high.dtcg.json +1 -1
  654. package/tokens/modes/system-light__moc-forest__comfortable__standard.dtcg.json +1 -1
  655. package/tokens/modes/system-light__moc-forest__compact__high.dtcg.json +1 -1
  656. package/tokens/modes/system-light__moc-forest__compact__standard.dtcg.json +1 -1
  657. package/tokens/modes/system-light__moc__comfortable__high.dtcg.json +1 -1
  658. package/tokens/modes/system-light__moc__comfortable__standard.dtcg.json +1 -1
  659. package/tokens/modes/system-light__moc__compact__high.dtcg.json +1 -1
  660. package/tokens/modes/system-light__moc__compact__standard.dtcg.json +1 -1
  661. package/tokens/modes/system-light__tho-clay__comfortable__high.dtcg.json +1 -1
  662. package/tokens/modes/system-light__tho-clay__comfortable__standard.dtcg.json +1 -1
  663. package/tokens/modes/system-light__tho-clay__compact__high.dtcg.json +1 -1
  664. package/tokens/modes/system-light__tho-clay__compact__standard.dtcg.json +1 -1
  665. package/tokens/modes/system-light__tho-sand__comfortable__high.dtcg.json +1 -1
  666. package/tokens/modes/system-light__tho-sand__comfortable__standard.dtcg.json +1 -1
  667. package/tokens/modes/system-light__tho-sand__compact__high.dtcg.json +1 -1
  668. package/tokens/modes/system-light__tho-sand__compact__standard.dtcg.json +1 -1
  669. package/tokens/modes/system-light__tho__comfortable__high.dtcg.json +1 -1
  670. package/tokens/modes/system-light__tho__comfortable__standard.dtcg.json +1 -1
  671. package/tokens/modes/system-light__tho__compact__high.dtcg.json +1 -1
  672. package/tokens/modes/system-light__tho__compact__standard.dtcg.json +1 -1
  673. package/tokens/modes/system-light__thuy-mist__comfortable__high.dtcg.json +1 -1
  674. package/tokens/modes/system-light__thuy-mist__comfortable__standard.dtcg.json +1 -1
  675. package/tokens/modes/system-light__thuy-mist__compact__high.dtcg.json +1 -1
  676. package/tokens/modes/system-light__thuy-mist__compact__standard.dtcg.json +1 -1
  677. package/tokens/modes/system-light__thuy-ocean__comfortable__high.dtcg.json +1 -1
  678. package/tokens/modes/system-light__thuy-ocean__comfortable__standard.dtcg.json +1 -1
  679. package/tokens/modes/system-light__thuy-ocean__compact__high.dtcg.json +1 -1
  680. package/tokens/modes/system-light__thuy-ocean__compact__standard.dtcg.json +1 -1
  681. package/tokens/modes/system-light__thuy__comfortable__high.dtcg.json +1 -1
  682. package/tokens/modes/system-light__thuy__comfortable__standard.dtcg.json +1 -1
  683. package/tokens/modes/system-light__thuy__compact__high.dtcg.json +1 -1
  684. package/tokens/modes/system-light__thuy__compact__standard.dtcg.json +1 -1
  685. package/tokens/native/CSModes.kt +658 -615
  686. package/tokens/native/CSModes.swift +658 -615
  687. package/tokens/native/CSTokens.kt +311 -311
  688. package/tokens/native/CSTokens.swift +311 -311
  689. package/tokens/native/cs_modes.dart +658 -615
  690. package/tokens/native/cs_tokens.dart +311 -311
  691. package/tokens/native/mode-provenance.json +12 -12
  692. package/tokens/provenance.json +6 -6
  693. package/tokens/theme-attributes.css +40 -40
  694. package/tokens/tokens.dtcg.json +451 -394
  695. package/tokens/tokens.js +242 -242
  696. package/tokens/tokens.json +241 -241
  697. package/tokens/typography.css +6 -6
  698. package/tokens/variables.css +464 -464
  699. package/tokens/viewer.html +15 -11
  700. package/ui_kits/deck/index.html +4 -2
  701. package/ui_kits/status-hub/StatusHub.jsx +7 -7
  702. package/ui_kits/status-hub/data.js +3 -3
  703. package/ui_kits/status-hub/index.html +1 -0
  704. package/ui_kits/status-hub/login.html +8 -6
  705. package/ui_kits/status-hub/project.html +7 -6
  706. package/ui_kits/status-hub/settings.html +9 -8
  707. package/ui_kits/status-hub/status.css +10 -8
  708. package/ui_kits/website/Website.jsx +3 -3
  709. package/ui_kits/website/careers.html +24 -7
  710. package/ui_kits/website/chat.html +5 -2
  711. package/ui_kits/website/index.html +1 -0
  712. package/ui_kits/website/site.css +30 -6
  713. package/ui_kits/website/work.html +12 -7
  714. package/components/_utils/use-viewport-panel.js +0 -30
  715. package/dist/esm/chunks/chunk-CH4W6RCG.mjs.map +0 -7
  716. package/dist/esm/chunks/chunk-F3M5TQ76.mjs.map +0 -7
  717. package/dist/esm/chunks/chunk-GWBINWTF.mjs.map +0 -7
  718. package/dist/esm/chunks/chunk-IH4I7JSB.mjs.map +0 -7
  719. package/dist/esm/chunks/chunk-JN57OITY.mjs.map +0 -7
  720. package/dist/esm/chunks/chunk-UFE32JPH.mjs.map +0 -7
  721. /package/dist/esm/chunks/{chunk-FEUTSZBN.mjs.map → chunk-2CCVFTPL.mjs.map} +0 -0
  722. /package/dist/esm/chunks/{chunk-W5VR7GTL.mjs.map → chunk-2VVGZEOQ.mjs.map} +0 -0
  723. /package/dist/esm/chunks/{chunk-3RC4CDAE.mjs.map → chunk-3R5WJQCB.mjs.map} +0 -0
  724. /package/dist/esm/chunks/{chunk-W6N22NMF.mjs.map → chunk-4FGB6VHN.mjs.map} +0 -0
  725. /package/dist/esm/chunks/{chunk-YZR3C7V2.mjs.map → chunk-4TO35YGK.mjs.map} +0 -0
  726. /package/dist/esm/chunks/{chunk-JSAPFO73.mjs.map → chunk-4YWKKULF.mjs.map} +0 -0
  727. /package/dist/esm/chunks/{chunk-W2RF4NWB.mjs.map → chunk-5FQGNCKS.mjs.map} +0 -0
  728. /package/dist/esm/chunks/{chunk-SYCXNMYP.mjs.map → chunk-6ECKJ6RS.mjs.map} +0 -0
  729. /package/dist/esm/chunks/{chunk-72AUOI37.mjs.map → chunk-6TZDNLHE.mjs.map} +0 -0
  730. /package/dist/esm/chunks/{chunk-QGCPHFSI.mjs.map → chunk-72STPBL4.mjs.map} +0 -0
  731. /package/dist/esm/chunks/{chunk-37AN57S5.mjs.map → chunk-7GSR2NGL.mjs.map} +0 -0
  732. /package/dist/esm/chunks/{chunk-A3PGQW3X.mjs.map → chunk-AA5BSO3T.mjs.map} +0 -0
  733. /package/dist/esm/chunks/{chunk-NH6M42ZI.mjs.map → chunk-ASGO2FW5.mjs.map} +0 -0
  734. /package/dist/esm/chunks/{chunk-GP5ITSCH.mjs.map → chunk-C3NAMBA7.mjs.map} +0 -0
  735. /package/dist/esm/chunks/{chunk-YA7Y7PEC.mjs.map → chunk-CKBL3UEA.mjs.map} +0 -0
  736. /package/dist/esm/chunks/{chunk-H7EJ7TNP.mjs.map → chunk-CYZ22MB7.mjs.map} +0 -0
  737. /package/dist/esm/chunks/{chunk-JRIWHAWW.mjs.map → chunk-D7A4ZCMJ.mjs.map} +0 -0
  738. /package/dist/esm/chunks/{chunk-A7RWM4XH.mjs.map → chunk-DANUZS4S.mjs.map} +0 -0
  739. /package/dist/esm/chunks/{chunk-FAVSLU7E.mjs.map → chunk-DFBKBVSE.mjs.map} +0 -0
  740. /package/dist/esm/chunks/{chunk-TNHQB6CI.mjs.map → chunk-DW4AWLA5.mjs.map} +0 -0
  741. /package/dist/esm/chunks/{chunk-5R5KMLUR.mjs.map → chunk-DWJIX65T.mjs.map} +0 -0
  742. /package/dist/esm/chunks/{chunk-YJNSQ5PJ.mjs.map → chunk-EITZT2U5.mjs.map} +0 -0
  743. /package/dist/esm/chunks/{chunk-CSJHR2W2.mjs.map → chunk-EOCMQT4L.mjs.map} +0 -0
  744. /package/dist/esm/chunks/{chunk-4QBKN42N.mjs.map → chunk-EXOOST5G.mjs.map} +0 -0
  745. /package/dist/esm/chunks/{chunk-7HTAAMIY.mjs.map → chunk-FF5D53IP.mjs.map} +0 -0
  746. /package/dist/esm/chunks/{chunk-JNK7QN24.mjs.map → chunk-FOEJO2YQ.mjs.map} +0 -0
  747. /package/dist/esm/chunks/{chunk-HYQG5XND.mjs.map → chunk-GLPQBE2J.mjs.map} +0 -0
  748. /package/dist/esm/chunks/{chunk-HUW6OY7C.mjs.map → chunk-GNEVR5Q4.mjs.map} +0 -0
  749. /package/dist/esm/chunks/{chunk-SEYKDGXE.mjs.map → chunk-H4TKHAB3.mjs.map} +0 -0
  750. /package/dist/esm/chunks/{chunk-OR5UTKW7.mjs.map → chunk-I3H7EAH5.mjs.map} +0 -0
  751. /package/dist/esm/chunks/{chunk-P64YS5W2.mjs.map → chunk-I3PQVFX5.mjs.map} +0 -0
  752. /package/dist/esm/chunks/{chunk-5MR3C2QG.mjs.map → chunk-IOEWPBAL.mjs.map} +0 -0
  753. /package/dist/esm/chunks/{chunk-TN2MZXGS.mjs.map → chunk-JIHWIDMP.mjs.map} +0 -0
  754. /package/dist/esm/chunks/{chunk-YX62AV33.mjs.map → chunk-KAOUK33L.mjs.map} +0 -0
  755. /package/dist/esm/chunks/{chunk-UVJ5BBQG.mjs.map → chunk-KWPNHP73.mjs.map} +0 -0
  756. /package/dist/esm/chunks/{chunk-BABSYWVB.mjs.map → chunk-LCC4ZVVO.mjs.map} +0 -0
  757. /package/dist/esm/chunks/{chunk-HVF4NT6P.mjs.map → chunk-MRXEJSQQ.mjs.map} +0 -0
  758. /package/dist/esm/chunks/{chunk-DIIXA7WD.mjs.map → chunk-NZKMM4FK.mjs.map} +0 -0
  759. /package/dist/esm/chunks/{chunk-CLWTVJM3.mjs.map → chunk-OEWAQZYE.mjs.map} +0 -0
  760. /package/dist/esm/chunks/{chunk-OOZKMXYB.mjs.map → chunk-PBP2MKZH.mjs.map} +0 -0
  761. /package/dist/esm/chunks/{chunk-JKKJHQVQ.mjs.map → chunk-PE6KC2U7.mjs.map} +0 -0
  762. /package/dist/esm/chunks/{chunk-N5TM7UIY.mjs.map → chunk-PFTKXY5Q.mjs.map} +0 -0
  763. /package/dist/esm/chunks/{chunk-R7QVE2JP.mjs.map → chunk-PLN3ITUB.mjs.map} +0 -0
  764. /package/dist/esm/chunks/{chunk-NEMFYL4X.mjs.map → chunk-QBPDNM7S.mjs.map} +0 -0
  765. /package/dist/esm/chunks/{chunk-JDI3UMJW.mjs.map → chunk-SIMVM4RV.mjs.map} +0 -0
  766. /package/dist/esm/chunks/{chunk-WJF2Q2Y3.mjs.map → chunk-TMXLSCAG.mjs.map} +0 -0
  767. /package/dist/esm/chunks/{chunk-TGYG7JP4.mjs.map → chunk-TNQXCIBM.mjs.map} +0 -0
  768. /package/dist/esm/chunks/{chunk-DHTD5KM5.mjs.map → chunk-TWCJMLGG.mjs.map} +0 -0
  769. /package/dist/esm/chunks/{chunk-EPFDMHPK.mjs.map → chunk-U7RKPGRO.mjs.map} +0 -0
  770. /package/dist/esm/chunks/{chunk-NMIGE2IM.mjs.map → chunk-UWNMGKAN.mjs.map} +0 -0
  771. /package/dist/esm/chunks/{chunk-KXFGO7N4.mjs.map → chunk-VAPKJRQI.mjs.map} +0 -0
  772. /package/dist/esm/chunks/{chunk-XTBN55D3.mjs.map → chunk-VUCJT2QJ.mjs.map} +0 -0
  773. /package/dist/esm/chunks/{chunk-TVTBVHT2.mjs.map → chunk-WLANQTOU.mjs.map} +0 -0
  774. /package/dist/esm/chunks/{chunk-3MCNCG2L.mjs.map → chunk-XZ5NWMO7.mjs.map} +0 -0
  775. /package/dist/esm/chunks/{chunk-QPXQZBQC.mjs.map → chunk-YKU2KVAQ.mjs.map} +0 -0
  776. /package/dist/esm/chunks/{chunk-ZKFOGW4D.mjs.map → chunk-YLSFKG64.mjs.map} +0 -0
  777. /package/dist/esm/chunks/{chunk-TO2T6EEB.mjs.map → chunk-YVSAUCWW.mjs.map} +0 -0
  778. /package/dist/esm/chunks/{chunk-XN74VX5H.mjs.map → chunk-ZKBAIIAQ.mjs.map} +0 -0
  779. /package/dist/esm/chunks/{chunk-7IJTTRPK.mjs.map → chunk-ZPLENPV2.mjs.map} +0 -0
package/docs/ci-cd.md CHANGED
@@ -18,7 +18,7 @@
18
18
  5. **`docs-consistency-blocker`** — `docs-consistency` + `bilingual-parity` merge blockers.
19
19
  6. **`whole-set-audits`** — owner decision B: every push/PR, plus nightly `0 3 * * *` and `workflow_dispatch` (responsive + language + theme overflow, ~15–20 min).
20
20
  7. **`figma-variables-push`** — on `main` push + manual. **Empty `FIGMA_TOKEN` / `FIGMA_FILE_KEY` soft-skip** (exit 0 + report). Owner decision A keeps this integration optional. With credentials, only the Variables access and API-unavailability responses documented in `docs/figma.md` may soft-skip. File-preflight scope errors, ordinary write-permission failures and invalid local token data remain hard failures. Soft-skip does not establish live Variables sync.
21
- 8. **`pixel-diff`** — Playwright Chromium screenshot comparison (`_audit/ci/pixel-diff.mjs`) against the 15 curated baselines in `_audit/baselines/*.png`; uploads `pixel-baselines-linux` and `_audit/ci/pixel-diff-report.json`.
21
+ 8. **`pixel-diff`** — Playwright Chromium screenshot comparison (`_audit/ci/pixel-diff.mjs`) against the 16 curated baselines in `_audit/baselines/*.png`; uploads `pixel-baselines-linux` and `_audit/ci/pixel-diff-report.json`.
22
22
  9. **`regenerate-tokens`** (pull requests) + **`regenerate-tokens-push`** (push to `main` / schedule / manual) — path filter covers element seeds/packs (`element-seeds.json`, `elements.css`, JSON/JS/DTCG mirrors, `generate-element-packs.mjs`) plus natives / `VERSION`. Regeneration runs `npm run tokens:generate`, including the complete token exports, native copies and dependent outputs/catalog. On a **pull request** the job runs with `contents: read`, never pushes, and **exits 1** on drift: run this pipeline locally and prepare the reviewed diff (PR-required freshness). Only the push/schedule/manual twin holds `contents: write` and may auto-commit with `PUSH_TOKEN` (or `github.token`). Auto-commits **do not** use `[skip ci]` — the pushed tip re-enters the gate board (FIND-021 / TASK-IMP-008); a deterministic second pass is a no-op.
23
23
  10. **`npm-hello-smoke`** — registry consumer proof for `@cyberskill/design@$VERSION` (**fail-closed**, FIND-087): `examples/npm-hello` → registry `npm install` + `npm run smoke`. If the exact VERSION is **not** on the registry, the job **fails** (no soft-skip pack proof on `cyberskill-official/design`). Forks may opt into local-pack proof only by setting repo variable **`NPM_HELLO_ALLOW_LOCAL_PACK=true`**. Path-filtered on push/PR when `examples/npm-hello/**`, package publish surface, or this workflow changes; always on schedule / `workflow_dispatch`.
24
24
  11. **`notify-schedule-failure`** — emits an error annotation and exits 1 when a scheduled nightly run fails; it does not create or update an issue.
@@ -18,7 +18,7 @@ The public contract for a selected export is its adjacent `.d.ts`, `.jsx` and `.
18
18
 
19
19
  For components that declare `value`, `defaultValue` and `onChange`, `value` is controlled state, `defaultValue` seeds local state and `onChange` reports changes. The callback argument comes from that component's declaration: it can be a scalar, collection or event. Never substitute a native DOM event for a declared value callback. Do not switch controlled/local ownership during a mount. [Consuming](consuming.md) describes current ownership exceptions and form integration.
20
20
 
21
- Open-state APIs vary: some overlays require `open` and use `onClose`; others declare `open`, `defaultOpen` and `onOpenChange`. `onDismiss`, `onClose` and `onOpenChange` are distinct contracts. Awaited form callbacks accept the declared asynchronous return type. Use the declaration for the selected export rather than assuming every component supports an ownership triplet.
21
+ Open-state callbacks share `onOpenChange(open)`. Dialog, Drawer, Tour, CommandPalette, Toast and Alert accept it. `onClose` remains a supported zero-argument alias and still runs after `onOpenChange(false)`. Alert's `onDismiss` remains a supported click handler and still runs after those two. Awaited form callbacks accept the declared asynchronous return type. Use the declaration for the selected export rather than assuming every component supports an ownership triplet.
22
22
 
23
23
  ## Composition, refs and native attributes
24
24
 
package/docs/consuming.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Consuming & upgrading the CyberSkill Design System
2
2
 
3
- **Source checkout:** VERSION **<!-- cs-source-version:checkout -->2.0.0<!-- /cs-source-version -->** is local source identity, not a registry-availability claim. For an unpublished candidate, validate the reviewed local package tarball or source checkout. Registry commands and sibling inventories below refer to published stable 1.7.2 and are not automatically updated by preparation. Preparation does not authorize publication.
3
+ **Source checkout:** VERSION **<!-- cs-source-version:checkout -->2.2.0<!-- /cs-source-version -->** is local source identity, not a registry-availability claim. For an unpublished candidate, validate the reviewed local package tarball or source checkout. Registry commands and sibling inventories below refer to published stable 1.7.2 and are not automatically updated by preparation. Preparation does not authorize publication.
4
4
 
5
5
  How any project — human-driven or agent-driven — adopts this HTML-first design system, and how to take updates safely. Published on Storybook **Docs** at `design.cyberskill.world`.
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Contrast report — elemental pairings (APCA)
2
2
 
3
- Generated · sweep at VERSION 2.0.0.
3
+ Generated · sweep at VERSION 2.2.0.
4
4
 
5
5
  Published on Storybook **Docs** at `design.cyberskill.world`.
6
6
 
@@ -14,6 +14,81 @@ Packs are generated from `tokens/element-seeds.json` (soft / middle / deep ladde
14
14
  | root (Thổ default) | accent-bright on ink (headings) | #F4BA17 / #45210E | 66.3 | ✓ |
15
15
  | root (Thổ default) | accent-on on accent-bright (CTA text) | #45210E / #F4BA17 | 66.3 | ✓ |
16
16
  | root (Thổ default) | accent-bright on dark panel (dark labels) | #F4BA17 / #221710 | 69.2 | ✓ |
17
+ | tho · sand | text-accent on white (bold labels) | #695300 / #FFFFFF | 85.5 | ✓ |
18
+ | tho · sand | text-accent on tint (bold labels) | #695300 / #FEF8E7 | 81.4 | ✓ |
19
+ | tho · sand | accent-bright on ink (headings) | #FDEAB7 / #292108 | 92.5 | ✓ |
20
+ | tho · sand | accent-on on accent-bright (CTA text) | #271E06 / #FDEAB7 | 91.6 | ✓ |
21
+ | tho · sand | accent-bright on dark panel (dark labels) | #F9E5AE / #221710 | 90.5 | ✓ |
22
+ | tho | text-accent on white (bold labels) | #6E3B0E / #FFFFFF | 90.7 | ✓ |
23
+ | tho | text-accent on tint (bold labels) | #6E3B0E / #FBF4E9 | 84.6 | ✓ |
24
+ | tho | accent-bright on ink (headings) | #F4BA17 / #45210E | 66.3 | ✓ |
25
+ | tho | accent-on on accent-bright (CTA text) | #45210E / #F4BA17 | 66.3 | ✓ |
26
+ | tho | accent-bright on dark panel (dark labels) | #FDD378 / #221710 | 81.9 | ✓ |
27
+ | tho · clay | text-accent on white (bold labels) | #462402 / #FFFFFF | 100.2 | ✓ |
28
+ | tho · clay | text-accent on tint (bold labels) | #462402 / #FCEEE3 | 91.5 | ✓ |
29
+ | tho · clay | accent-bright on ink (headings) | #F2C5A3 / #321B07 | 74.4 | ✓ |
30
+ | tho · clay | accent-on on accent-bright (CTA text) | #080200 / #F2C5A3 | 77.4 | ✓ |
31
+ | tho · clay | accent-bright on dark panel (dark labels) | #F8C7A1 / #221710 | 77.1 | ✓ |
32
+ | hoa · plasma | text-accent on white (bold labels) | #714B4D / #FFFFFF | 85.8 | ✓ |
33
+ | hoa · plasma | text-accent on tint (bold labels) | #714B4D / #FFF5F5 | 81.1 | ✓ |
34
+ | hoa · plasma | accent-bright on ink (headings) | #FFE3E4 / #2B1E1E | 91.5 | ✓ |
35
+ | hoa · plasma | accent-on on accent-bright (CTA text) | #281B1C / #FFE3E4 | 90.8 | ✓ |
36
+ | hoa · plasma | accent-bright on dark panel (dark labels) | #FDDDDE / #221710 | 89.4 | ✓ |
37
+ | hoa | text-accent on white (bold labels) | #793609 / #FFFFFF | 90 | ✓ |
38
+ | hoa | text-accent on tint (bold labels) | #793609 / #FFF1EA | 83.2 | ✓ |
39
+ | hoa | accent-bright on ink (headings) | #FFD3BD / #3A1501 | 83 | ✓ |
40
+ | hoa | accent-on on accent-bright (CTA text) | #361402 / #FFD3BD | 82.8 | ✓ |
41
+ | hoa | accent-bright on dark panel (dark labels) | #FECDB4 / #221710 | 81.2 | ✓ |
42
+ | hoa · lava | text-accent on white (bold labels) | #550306 / #FFFFFF | 100.5 | ✓ |
43
+ | hoa · lava | text-accent on tint (bold labels) | #550306 / #FFEBE9 | 91.1 | ✓ |
44
+ | hoa · lava | accent-bright on ink (headings) | #FFBCB4 / #400C0B | 73.4 | ✓ |
45
+ | hoa · lava | accent-on on accent-bright (CTA text) | #0D0000 / #FFBCB4 | 76.6 | ✓ |
46
+ | hoa · lava | accent-bright on dark panel (dark labels) | #FFC1B9 / #221710 | 76.7 | ✓ |
47
+ | thuy · mist | text-accent on white (bold labels) | #116060 / #FFFFFF | 85.1 | ✓ |
48
+ | thuy · mist | text-accent on tint (bold labels) | #116060 / #E6FDFC | 81.1 | ✓ |
49
+ | thuy · mist | accent-bright on ink (headings) | #B1FBF9 / #032727 | 94 | ✓ |
50
+ | thuy · mist | accent-on on accent-bright (CTA text) | #012525 / #B1FBF9 | 92.7 | ✓ |
51
+ | thuy · mist | accent-bright on dark panel (dark labels) | #A6F8F6 / #221710 | 92.7 | ✓ |
52
+ | thuy | text-accent on white (bold labels) | #0D535C / #FFFFFF | 89.5 | ✓ |
53
+ | thuy | text-accent on tint (bold labels) | #0D535C / #DFFBFF | 84 | ✓ |
54
+ | thuy | accent-bright on ink (headings) | #94EFFD / #03272C | 85.8 | ✓ |
55
+ | thuy | accent-on on accent-bright (CTA text) | #012429 / #94EFFD | 85.4 | ✓ |
56
+ | thuy | accent-bright on dark panel (dark labels) | #79EDFF / #221710 | 84.6 | ✓ |
57
+ | thuy · ocean | text-accent on white (bold labels) | #003142 / #FFFFFF | 100.1 | ✓ |
58
+ | thuy · ocean | text-accent on tint (bold labels) | #003142 / #E5F3FA | 91.5 | ✓ |
59
+ | thuy · ocean | accent-bright on ink (headings) | #A9D8ED / #092531 | 76.1 | ✓ |
60
+ | thuy · ocean | accent-on on accent-bright (CTA text) | #001721 / #A9D8ED | 78.1 | ✓ |
61
+ | thuy · ocean | accent-bright on dark panel (dark labels) | #A5D8F0 / #221710 | 77.1 | ✓ |
62
+ | moc · bamboo | text-accent on white (bold labels) | #4A5B02 / #FFFFFF | 86 | ✓ |
63
+ | moc · bamboo | text-accent on tint (bold labels) | #4A5B02 / #F5FBE8 | 82.1 | ✓ |
64
+ | moc · bamboo | accent-bright on ink (headings) | #E2F4BA / #1E250A | 93.4 | ✓ |
65
+ | moc · bamboo | accent-on on accent-bright (CTA text) | #1C2307 / #E2F4BA | 92.3 | ✓ |
66
+ | moc · bamboo | accent-bright on dark panel (dark labels) | #DCF0B1 / #221710 | 91.7 | ✓ |
67
+ | moc | text-accent on white (bold labels) | #24570B / #FFFFFF | 89.2 | ✓ |
68
+ | moc | text-accent on tint (bold labels) | #24570B / #EAFAE5 | 83.4 | ✓ |
69
+ | moc | accent-bright on ink (headings) | #B9F0A6 / #0D2902 | 85.9 | ✓ |
70
+ | moc | accent-on on accent-bright (CTA text) | #0A2700 / #B9F0A6 | 85.4 | ✓ |
71
+ | moc | accent-bright on dark panel (dark labels) | #B2EC9E / #221710 | 84.5 | ✓ |
72
+ | moc · forest | text-accent on white (bold labels) | #04361D / #FFFFFF | 99.7 | ✓ |
73
+ | moc · forest | text-accent on tint (bold labels) | #04361D / #E6F5EB | 91.5 | ✓ |
74
+ | moc · forest | accent-bright on ink (headings) | #ACDDBD / #0B2818 | 76.4 | ✓ |
75
+ | moc · forest | accent-on on accent-bright (CTA text) | #011C0D / #ACDDBD | 78.1 | ✓ |
76
+ | moc · forest | accent-bright on dark panel (dark labels) | #A8DFBB / #221710 | 78.3 | ✓ |
77
+ | kim · titanium | text-accent on white (bold labels) | #3D5670 / #FFFFFF | 86.4 | ✓ |
78
+ | kim · titanium | text-accent on tint (bold labels) | #3D5670 / #F3F8FE | 81.8 | ✓ |
79
+ | kim · titanium | accent-bright on ink (headings) | #DDEDFF / #1A232B | 92.5 | ✓ |
80
+ | kim · titanium | accent-on on accent-bright (CTA text) | #182029 / #DDEDFF | 91.6 | ✓ |
81
+ | kim · titanium | accent-bright on dark panel (dark labels) | #D6E9FD / #221710 | 90.8 | ✓ |
82
+ | kim | text-accent on white (bold labels) | #564B27 / #FFFFFF | 89.6 | ✓ |
83
+ | kim | text-accent on tint (bold labels) | #564B27 / #F8F4EA | 83.2 | ✓ |
84
+ | kim | accent-bright on ink (headings) | #E8DEBD / #262112 | 84.3 | ✓ |
85
+ | kim | accent-on on accent-bright (CTA text) | #241F0F / #E8DEBD | 84 | ✓ |
86
+ | kim | accent-bright on dark panel (dark labels) | #E3D9B8 / #221710 | 82.3 | ✓ |
87
+ | kim · steel | text-accent on white (bold labels) | #1B2E4C / #FFFFFF | 100 | ✓ |
88
+ | kim · steel | text-accent on tint (bold labels) | #1B2E4C / #EBF1FB | 91.4 | ✓ |
89
+ | kim · steel | accent-bright on ink (headings) | #BED0F0 / #182232 | 75 | ✓ |
90
+ | kim · steel | accent-on on accent-bright (CTA text) | #020818 / #BED0F0 | 78 | ✓ |
91
+ | kim · steel | accent-bright on dark panel (dark labels) | #BBD0F4 / #221710 | 76 | ✓ |
17
92
 
18
93
  **Failures: 0.** All text pairings pass Lc ≥ 60.
19
94
 
@@ -24,6 +99,81 @@ Packs are generated from `tokens/element-seeds.json` (soft / middle / deep ladde
24
99
  Rows use the declared light or dark `--cs-color-link` colour. White, reference-page, reference-raised and reference-dark-panel backgrounds are fixed literals; element surface roles use `color-mix()` and are not measured by these rows. Rendered surface, preference and interaction checks have separate scopes.
25
100
  | Scope | Pairing | fg / bg | Ratio | Verdict |
26
101
  |---|---|---|---|---|
102
+ | tho · sand | link on white (body) | #695300 / #FFFFFF | 7.40:1 | ✓ |
103
+ | tho · sand | link on reference page (body) | #695300 / #FFFDF8 | 7.28:1 | ✓ |
104
+ | tho · sand | link on tint (body) | #695300 / #FEF8E7 | 6.98:1 | ✓ |
105
+ | tho · sand | link on reference raised cream (body) | #695300 / #FBF4E9 | 6.77:1 | ✓ |
106
+ | tho · sand | link on reference dark panel (body) | #F9E5AE / #221710 | 14.06:1 | ✓ |
107
+ | tho | link on white (body) | #644A05 / #FFFFFF | 8.32:1 | ✓ |
108
+ | tho | link on reference page (body) | #644A05 / #FFFDF8 | 8.19:1 | ✓ |
109
+ | tho | link on tint (body) | #644A05 / #FBF4E9 | 7.62:1 | ✓ |
110
+ | tho | link on reference raised cream (body) | #644A05 / #FBF4E9 | 7.62:1 | ✓ |
111
+ | tho | link on reference dark panel (body) | #FFD57A / #221710 | 12.56:1 | ✓ |
112
+ | tho · clay | link on white (body) | #462402 / #FFFFFF | 13.87:1 | ✓ |
113
+ | tho · clay | link on reference page (body) | #462402 / #FFFDF8 | 13.65:1 | ✓ |
114
+ | tho · clay | link on tint (body) | #462402 / #FCEEE3 | 12.21:1 | ✓ |
115
+ | tho · clay | link on reference raised cream (body) | #462402 / #FBF4E9 | 12.70:1 | ✓ |
116
+ | tho · clay | link on reference dark panel (body) | #FFD2AF / #221710 | 12.60:1 | ✓ |
117
+ | hoa · plasma | link on white (body) | #714B4D / #FFFFFF | 7.46:1 | ✓ |
118
+ | hoa · plasma | link on reference page (body) | #714B4D / #FFFDF8 | 7.34:1 | ✓ |
119
+ | hoa · plasma | link on tint (body) | #714B4D / #FFF5F5 | 6.97:1 | ✓ |
120
+ | hoa · plasma | link on reference raised cream (body) | #714B4D / #FBF4E9 | 6.83:1 | ✓ |
121
+ | hoa · plasma | link on reference dark panel (body) | #FDDDDE / #221710 | 13.83:1 | ✓ |
122
+ | hoa | link on white (body) | #793609 / #FFFFFF | 8.96:1 | ✓ |
123
+ | hoa | link on reference page (body) | #793609 / #FFFDF8 | 8.81:1 | ✓ |
124
+ | hoa | link on tint (body) | #793609 / #FFF1EA | 8.11:1 | ✓ |
125
+ | hoa | link on reference raised cream (body) | #793609 / #FBF4E9 | 8.20:1 | ✓ |
126
+ | hoa | link on reference dark panel (body) | #FFD1BA / #221710 | 12.59:1 | ✓ |
127
+ | hoa · lava | link on white (body) | #550306 / #FFFFFF | 14.98:1 | ✓ |
128
+ | hoa · lava | link on reference page (body) | #550306 / #FFFDF8 | 14.74:1 | ✓ |
129
+ | hoa · lava | link on tint (body) | #550306 / #FFEBE9 | 13.06:1 | ✓ |
130
+ | hoa · lava | link on reference raised cream (body) | #550306 / #FBF4E9 | 13.71:1 | ✓ |
131
+ | hoa · lava | link on reference dark panel (body) | #FDD0CA / #221710 | 12.56:1 | ✓ |
132
+ | thuy · mist | link on white (body) | #116060 / #FFFFFF | 7.33:1 | ✓ |
133
+ | thuy · mist | link on reference page (body) | #116060 / #FFFDF8 | 7.21:1 | ✓ |
134
+ | thuy · mist | link on tint (body) | #116060 / #E6FDFC | 6.92:1 | ✓ |
135
+ | thuy · mist | link on reference raised cream (body) | #116060 / #FBF4E9 | 6.71:1 | ✓ |
136
+ | thuy · mist | link on reference dark panel (body) | #A6F8F6 / #221710 | 14.51:1 | ✓ |
137
+ | thuy | link on white (body) | #0D535C / #FFFFFF | 8.72:1 | ✓ |
138
+ | thuy | link on reference page (body) | #0D535C / #FFFDF8 | 8.58:1 | ✓ |
139
+ | thuy | link on tint (body) | #0D535C / #DFFBFF | 8.05:1 | ✓ |
140
+ | thuy | link on reference raised cream (body) | #0D535C / #FBF4E9 | 7.98:1 | ✓ |
141
+ | thuy | link on reference dark panel (body) | #79EDFF / #221710 | 12.83:1 | ✓ |
142
+ | thuy · ocean | link on white (body) | #003142 / #FFFFFF | 13.83:1 | ✓ |
143
+ | thuy · ocean | link on reference page (body) | #003142 / #FFFDF8 | 13.61:1 | ✓ |
144
+ | thuy · ocean | link on tint (body) | #003142 / #E5F3FA | 12.21:1 | ✓ |
145
+ | thuy · ocean | link on reference raised cream (body) | #003142 / #FBF4E9 | 12.66:1 | ✓ |
146
+ | thuy · ocean | link on reference dark panel (body) | #AFE2FA / #221710 | 12.59:1 | ✓ |
147
+ | moc · bamboo | link on white (body) | #4A5B02 / #FFFFFF | 7.53:1 | ✓ |
148
+ | moc · bamboo | link on reference page (body) | #4A5B02 / #FFFDF8 | 7.41:1 | ✓ |
149
+ | moc · bamboo | link on tint (body) | #4A5B02 / #F5FBE8 | 7.12:1 | ✓ |
150
+ | moc · bamboo | link on reference raised cream (body) | #4A5B02 / #FBF4E9 | 6.89:1 | ✓ |
151
+ | moc · bamboo | link on reference dark panel (body) | #DCF0B1 / #221710 | 14.31:1 | ✓ |
152
+ | moc | link on white (body) | #24570B / #FFFFFF | 8.60:1 | ✓ |
153
+ | moc | link on reference page (body) | #24570B / #FFFDF8 | 8.46:1 | ✓ |
154
+ | moc | link on tint (body) | #24570B / #EAFAE5 | 7.90:1 | ✓ |
155
+ | moc | link on reference raised cream (body) | #24570B / #FBF4E9 | 7.87:1 | ✓ |
156
+ | moc | link on reference dark panel (body) | #B2EC9E / #221710 | 12.84:1 | ✓ |
157
+ | moc · forest | link on white (body) | #04361D / #FFFFFF | 13.54:1 | ✓ |
158
+ | moc · forest | link on reference page (body) | #04361D / #FFFDF8 | 13.32:1 | ✓ |
159
+ | moc · forest | link on tint (body) | #04361D / #E6F5EB | 12.01:1 | ✓ |
160
+ | moc · forest | link on reference raised cream (body) | #04361D / #FBF4E9 | 12.39:1 | ✓ |
161
+ | moc · forest | link on reference dark panel (body) | #B0E7C3 / #221710 | 12.57:1 | ✓ |
162
+ | kim · titanium | link on white (body) | #3D5670 / #FFFFFF | 7.60:1 | ✓ |
163
+ | kim · titanium | link on reference page (body) | #3D5670 / #FFFDF8 | 7.48:1 | ✓ |
164
+ | kim · titanium | link on tint (body) | #3D5670 / #F3F8FE | 7.12:1 | ✓ |
165
+ | kim · titanium | link on reference raised cream (body) | #3D5670 / #FBF4E9 | 6.95:1 | ✓ |
166
+ | kim · titanium | link on reference dark panel (body) | #D6E9FD / #221710 | 14.13:1 | ✓ |
167
+ | kim | link on white (body) | #564B27 / #FFFFFF | 8.64:1 | ✓ |
168
+ | kim | link on reference page (body) | #564B27 / #FFFDF8 | 8.50:1 | ✓ |
169
+ | kim | link on tint (body) | #564B27 / #F8F4EA | 7.86:1 | ✓ |
170
+ | kim | link on reference raised cream (body) | #564B27 / #FBF4E9 | 7.90:1 | ✓ |
171
+ | kim | link on reference dark panel (body) | #E5DBBA / #221710 | 12.66:1 | ✓ |
172
+ | kim · steel | link on white (body) | #1B2E4C / #FFFFFF | 13.62:1 | ✓ |
173
+ | kim · steel | link on reference page (body) | #1B2E4C / #FFFDF8 | 13.40:1 | ✓ |
174
+ | kim · steel | link on tint (body) | #1B2E4C / #EBF1FB | 12.00:1 | ✓ |
175
+ | kim · steel | link on reference raised cream (body) | #1B2E4C / #FBF4E9 | 12.47:1 | ✓ |
176
+ | kim · steel | link on reference dark panel (body) | #C8DBFD / #221710 | 12.53:1 | ✓ |
27
177
 
28
178
  **Link failures: 0.**
29
179
 
@@ -32,6 +182,36 @@ Rows use the declared light or dark `--cs-color-link` colour. White, reference-p
32
182
  Pair `--cs-accent-strong` with `--cs-accent-on-strong`: both light and dark packs must meet body Lc ≥ 75 (generator target 78) and WCAG ≥ 4.5:1. Dark primary buttons consume this paired foreground. Brand anchors and the other eight accent roles retain their values.
33
183
  | Scope | Mode | fg / bg | Lc | Verdict |
34
184
  |---|---|---|---|---|
185
+ | tho · sand | light | #FFFFFF / #856A03 | 80.8 | ✓ |
186
+ | tho · sand | dark | #FFFFFF / #80671A | 82.2 | ✓ |
187
+ | tho | light | #FFFFFF / #916D11 | 78.4 | ✓ |
188
+ | tho | dark | #FFFFFF / #6E5205 | 90.1 | ✓ |
189
+ | tho · clay | light | #FFFFFF / #5A3004 | 99.5 | ✓ |
190
+ | tho · clay | dark | #FFFFFF / #5C3001 | 99.3 | ✓ |
191
+ | hoa · plasma | light | #FFFFFF / #896163 | 81.7 | ✓ |
192
+ | hoa · plasma | dark | #FFFFFF / #836061 | 82.8 | ✓ |
193
+ | hoa | light | #FFFFFF / #96440B | 87.5 | ✓ |
194
+ | hoa | dark | #FFFFFF / #883E0D | 90.9 | ✓ |
195
+ | hoa · lava | light | #FFFFFF / #760008 | 98.8 | ✓ |
196
+ | hoa · lava | dark | #FFFFFF / #6D1D19 | 99.2 | ✓ |
197
+ | thuy · mist | light | #FFFFFF / #037D7D | 79.2 | ✓ |
198
+ | thuy · mist | dark | #FFFFFF / #077A79 | 80.4 | ✓ |
199
+ | thuy | light | #FFFFFF / #166B76 | 85.6 | ✓ |
200
+ | thuy | dark | #FFFFFF / #04626D | 89.0 | ✓ |
201
+ | thuy · ocean | light | #FFFFFF / #034257 | 98.8 | ✓ |
202
+ | thuy · ocean | dark | #FFFFFF / #00445A | 98.2 | ✓ |
203
+ | moc · bamboo | light | #FFFFFF / #62780E | 79.7 | ✓ |
204
+ | moc · bamboo | dark | #FFFFFF / #607420 | 81.2 | ✓ |
205
+ | moc | light | #FFFFFF / #2B7100 | 85.1 | ✓ |
206
+ | moc | dark | #FFFFFF / #286704 | 88.6 | ✓ |
207
+ | moc · forest | light | #FFFFFF / #0A4829 | 98.3 | ✓ |
208
+ | moc · forest | dark | #FFFFFF / #074A29 | 97.8 | ✓ |
209
+ | kim · titanium | light | #FFFFFF / #56708B | 80.8 | ✓ |
210
+ | kim · titanium | dark | #FFFFFF / #576D83 | 82.0 | ✓ |
211
+ | kim | light | #FFFFFF / #6A5E3A | 86.9 | ✓ |
212
+ | kim | dark | #FFFFFF / #615633 | 90.1 | ✓ |
213
+ | kim · steel | light | #FFFFFF / #293C5C | 99.4 | ✓ |
214
+ | kim · steel | dark | #FFFFFF / #2B3D5D | 99.0 | ✓ |
35
215
 
36
216
  **Strong body failures: 0.** Static declared-pair calculation; the browser regressions and actual template/raster checks establish their separate scopes. Opacity, gradients, transitions and arbitrary overlaps are not implied by this table.
37
217
 
@@ -40,4 +220,19 @@ Pair `--cs-accent-strong` with `--cs-accent-on-strong`: both light and dark pack
40
220
  Proposal targets in `_audit/apca-dark-preview.html`: bright ≥ 75 · accent ≥ 60 · on-strong/strong ≥ 75 · ink-on-tint ≥ 75. Accent and bright are not unrestricted regular-body roles.
41
221
  | Pack | bright | accent | on | ink |
42
222
  |---|---|---|---|---|
223
+ | tho · sand | 90.5 | 76.1 | 82.2 | 87.4 |
224
+ | tho | 81.9 | 64.7 | 90.1 | 81 |
225
+ | tho · clay | 77.1 | 60.6 | 99.3 | 79.4 |
226
+ | hoa · plasma | 89.4 | 75.1 | 82.8 | 86.4 |
227
+ | hoa | 81.2 | 63.2 | 90.9 | 80.3 |
228
+ | hoa · lava | 76.7 | 60.9 | 99.2 | 79.2 |
229
+ | thuy · mist | 92.7 | 78.7 | 80.4 | 89.3 |
230
+ | thuy | 84.6 | 67.7 | 89 | 83.5 |
231
+ | thuy · ocean | 77.1 | 60.9 | 98.2 | 79.2 |
232
+ | moc · bamboo | 91.7 | 77.9 | 81.2 | 88.4 |
233
+ | moc | 84.5 | 67.9 | 88.6 | 83.4 |
234
+ | moc · forest | 78.3 | 61.7 | 97.8 | 78.6 |
235
+ | kim · titanium | 90.8 | 76.5 | 82 | 87.8 |
236
+ | kim | 82.3 | 65.2 | 90.1 | 81.4 |
237
+ | kim · steel | 76 | 61.5 | 99 | 78.3 |
43
238
 
@@ -78,7 +78,7 @@ only for HTML element content, never URL, attribute, CSS or script contexts.
78
78
 
79
79
  **New element variant** — stay inside the element's oklch envelope; set the 10 `--cs-accent-*` contract tokens (incl. `--cs-accent-on-strong` ≥4.5:1 and body APCA75 on `-strong`) plus `--cs-color-text-accent`/`--cs-color-link` (APCA-check both); the aurora wash inherits from the element via `.cs-aurora-wash` (override the class rule only if the variant truly needs its own image); gradient partner (`grad-b`) must follow Tương sinh.
80
80
 
81
- **Ship check** — follow the portable verification gate in `docs/doctrine.md`, then run `_audit/docs-consistency.html` **and** `_audit/namespace-portability.html` (both must be green). source checkout VERSION **<!-- cs-source-version:checkout -->2.0.0<!-- /cs-source-version -->**.
81
+ **Ship check** — follow the portable verification gate in `docs/doctrine.md`, then run `_audit/docs-consistency.html` **and** `_audit/namespace-portability.html` (both must be green). source checkout VERSION **<!-- cs-source-version:checkout -->2.2.0<!-- /cs-source-version -->**.
82
82
 
83
83
  ## Decision log (owner-approved)
84
84
 
@@ -44,7 +44,7 @@ Do not invent a fifth product axis, and do not add a second Style pack without t
44
44
 
45
45
  ## Internal theme switches
46
46
 
47
- Canonical theme resolution is generated by `scripts/generate-element-packs.mjs` into `tokens/elements.css`. The private `--_cs-light` and `--_cs-dark` custom properties select one branch of declarations such as `color: var(--_cs-light, var(--cs-color-brand-umber)) var(--_cs-dark, var(--cs-color-brand-ochre));`. A switch set to `initial` uses the `var()` fallback; an empty switch contributes no value. Light sets the light switch to `initial` and the dark switch empty; dark reverses them. An explicit `data-theme="system"` follows `prefers-color-scheme`.
47
+ Canonical theme resolution is generated by `scripts/generate-element-packs.mjs` into `tokens/elements.css`. The private `--_cs-light` and `--_cs-dark` custom properties select one branch of declarations such as `color: var(--_cs-light, var(--cs-color-brand-umber))var(--_cs-dark, var(--cs-color-brand-ochre));`. The two substitutions are concatenated with no stylesheet space: a space remains when the inactive channel is empty and makes `background` and `border-color` keep the previous used color. A switch set to `initial` uses the `var()` fallback; an empty switch contributes no value. Light sets the light switch to `initial` and the dark switch empty; dark reverses them. An explicit `data-theme="system"` follows `prefers-color-scheme`.
48
48
 
49
49
  Consumers select `data-theme="light|dark|system"` and use public `--cs-*` tokens. Do not set the private switches directly, copy generated resolver blocks, or register these switches with `@property`: their empty/invalid-value behavior is part of the internal resolver. Resolver bindings are repeated at scope boundaries so nested element and theme changes recompute instead of inheriting an already selected parent value. Unmarked descendants inherit their surrounding scope.
50
50
 
@@ -15,3 +15,5 @@ The integrity test rejects missing/duplicate rows, empty translations, missing t
15
15
  A reviewer records the exact source commit, reviewer, date, OS, browser and assistive-technology versions, language/theme/state, task sequence, observed speech/focus behavior and evidence references. Use `passed` only after that manual run, `failed` for an observed failure and `blocked` for a missing environment or unresolved scope. Keep observations and failing evidence; a later recheck is a new attestation. Empty fields remain pending.
16
16
 
17
17
  Run `node _audit/ci/test-manual-at-matrix.mjs` to verify record shape and reject completed rows without evidence. This integrity check is not a screen-reader test and does not certify AT acceptance. `_audit/a11y-gate.html` and `_audit/at-kit-probe.html` remain programmatic proxies with separate verdicts.
18
+
19
+ Publication runs `node scripts/require-manual-at-publication.mjs`. The release is refused while any AT-01–AT-16 row is not `passed` with evidence. Pending, failed, and blocked rows stay unpublished. The check does not create the manual observations.
@@ -52,12 +52,13 @@ Benchmark principles (WCAG · APCA · OKLCH · DTCG · CDS doctrine + style expa
52
52
  | Style contract | `_audit/style-contract.html` | Style axis allowlist: sole pack `liquid-glass` (absent ≡ default); `styles.css` imports `tokens/styles.css`; `--cs-style-pack` resolves; no unknown `data-cs-style` in scanned sources | `__stylecontract.pass` | Hard | Fast board CI |
53
53
  | Visual baselines | `_audit/visual-diff.html` | Template baselines exist and are loadable for side-by-side / overlay comparison | Baselines present; drift judged by eye (`__visualdiff`) | Advisory | Fast board CI |
54
54
  | Component baselines | `_audit/component-visual-diff.html` | 12 curated component crops anchor the atomic tiers for visual comparison | Crops render + baselines present (`__componentVisualDiff`) | Advisory | Fast board CI |
55
+ | Component state paint | `_audit/component-state-paint.html` | Primary, secondary, ghost and danger buttons, an open dialog, an open menu, a field error and a selected data row paint the authored light and dark colors. Channel delta uses `PIXEL_CHANNEL_TOLERANCE` from the pixel contract. The 15 Linux page PNGs stay the pixel-diff set. | `__statepaint.pass` | Hard | Fast board CI + three-engine unit test |
55
56
  | Axe smoke | `_audit/axe-smoke.html` + `_audit/lib/axe-fixtures.js` | axe-core 4.10.0 (vendored at `_audit/vendor/axe.min.js`) serious/critical WCAG 2 A/AA rules on every public primary (inventory-locked fixtures; bilingual EN·VI) — Dialog, AlertDialog, Drawer, Tour, CommandPalette, and Menu mount open, and Cascader / TreeSelect / Menubar / Combobox surfaces are expanded before the scan; gate-equivalent Storybook a11y enforcement (no separate test-runner) | 0 serious/critical findings (`__axesmoke`) | Hard | Fast board CI |
56
57
  | Print smoke | `_audit/print-smoke.html` | Every explicit contracted print path exists in the manifest and loads; inert source inspection requires one enabled ownership marker and parsed A4/Letter page rules matching the contract. Unlisted print owners and malformed/missing contracts fail. This does not certify pagination or exported-file fidelity. | Exact contracted membership/formats; no source or inspection failures (`__printsmoke`) | Hard | Fast board CI |
57
58
  | Support no-eval (Node) | `_audit/ci/test-support-no-eval.mjs` | Canonical `templates/_vendor/support.js` + all template copies are identical and contain no Function-constructor / `eval(` call sites (CSP-safe inline-script runtime) | Exit 0 | Hard | Unit test |
58
59
  | Doc export (Node+PW) | `_audit/ci/test-doc-export.mjs` | Every print template under site CSP: no EvalError, one Download menu (PDF\|DOCX), Playwright PDF `%PDF` + A4/Letter MediaBox, downloaded `buildPdfBlob` is one unstretched FlateDecode page of the live sheet (framework), DOCX ZIP + `word/document.xml` + VN diacritics + full rendered sheet-text equality after XML entity decoding and formatting-run joins + yellow fills/colspan + header lockup text (HĐNT) on framework | Exit 0 | Hard | Unit test; native PDF size smoke, with popup pagination, OS print and visual acceptance separate |
59
60
  | DOCX source parity (Node) | `_audit/ci/test-docx-source-parity.mjs` | DC text vs committed fixtures under `_audit/fixtures/hr-suite-docx-text/` for every mapped HR instrument | ≥85% phrase overlap; exit 0 | Hard | Unit test |
60
- | Pixel CI | `_audit/pixel-ci.html` + `_audit/ci/pixel-diff.mjs` | 15 curated baselines exist; Playwright capture script performs real % pixel compare; last report must be clean (`drifted[]` empty) | Contract + clean compare (`__pixelci.pass`); drift or missing report fails | Hard | Fast board CI (compare step feeds the row) + `pixel-diff` job |
61
+ | Pixel CI | `_audit/pixel-ci.html` + `_audit/ci/pixel-diff.mjs` | 16 curated baselines exist, including the component-state swatches; Playwright capture script performs real % pixel compare; last report must be clean (`drifted[]` empty) | Contract + clean compare (`__pixelci.pass`); drift or missing report fails | Hard | Fast board CI (compare step feeds the row) + `pixel-diff` job |
61
62
 
62
63
  ## Whole-set audits — manifest-driven passes
63
64