@cyberskill/design 1.0.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 (970) hide show
  1. package/DESIGN.md +267 -0
  2. package/README.md +316 -0
  3. package/SKILL.md +64 -0
  4. package/VERSION +1 -0
  5. package/_ds_bundle.js +5377 -0
  6. package/_ds_manifest.json +1 -0
  7. package/_esm/cs.mjs +137 -0
  8. package/assets/aurora-gold.jpg +0 -0
  9. package/assets/aurora-hoa.png +0 -0
  10. package/assets/aurora-kim.png +0 -0
  11. package/assets/aurora-moc.png +0 -0
  12. package/assets/aurora-thuy.png +0 -0
  13. package/assets/favicon.svg +1 -0
  14. package/assets/logo-mark.png +0 -0
  15. package/assets/logo-mark.svg +10 -0
  16. package/assets/lumi-poster.webp +0 -0
  17. package/assets/og-dashboard.png +0 -0
  18. package/base/a11y.css +57 -0
  19. package/base/ai.css +67 -0
  20. package/base/collections.css +53 -0
  21. package/base/components.css +212 -0
  22. package/base/controls.css +329 -0
  23. package/base/data.css +48 -0
  24. package/base/feedback.css +60 -0
  25. package/base/forms.css +32 -0
  26. package/base/glass.css +119 -0
  27. package/base/interaction.css +50 -0
  28. package/base/navigation.css +39 -0
  29. package/base/reset.css +17 -0
  30. package/base/responsive.css +128 -0
  31. package/base/shell.css +55 -0
  32. package/base/typography.css +14 -0
  33. package/components/_i18n/i18n.js +56 -0
  34. package/components/_i18n/strings.js +187 -0
  35. package/components/_utils/cx.js +4 -0
  36. package/components/ai/AIDisclosureBadge.d.ts +16 -0
  37. package/components/ai/AIDisclosureBadge.figma.tsx +12 -0
  38. package/components/ai/AIDisclosureBadge.jsx +39 -0
  39. package/components/ai/AIDisclosureBadge.prompt.md +9 -0
  40. package/components/ai/ChatMessage.d.ts +17 -0
  41. package/components/ai/ChatMessage.figma.tsx +12 -0
  42. package/components/ai/ChatMessage.jsx +22 -0
  43. package/components/ai/ChatMessage.prompt.md +8 -0
  44. package/components/ai/CitationList.d.ts +13 -0
  45. package/components/ai/CitationList.figma.tsx +12 -0
  46. package/components/ai/CitationList.jsx +22 -0
  47. package/components/ai/CitationList.prompt.md +5 -0
  48. package/components/ai/ConfidenceMeter.d.ts +17 -0
  49. package/components/ai/ConfidenceMeter.figma.tsx +12 -0
  50. package/components/ai/ConfidenceMeter.jsx +43 -0
  51. package/components/ai/ConfidenceMeter.prompt.md +6 -0
  52. package/components/ai/HumanReviewGate.d.ts +20 -0
  53. package/components/ai/HumanReviewGate.figma.tsx +12 -0
  54. package/components/ai/HumanReviewGate.jsx +37 -0
  55. package/components/ai/HumanReviewGate.prompt.md +13 -0
  56. package/components/ai/PromptInput.d.ts +21 -0
  57. package/components/ai/PromptInput.figma.tsx +12 -0
  58. package/components/ai/PromptInput.jsx +48 -0
  59. package/components/ai/PromptInput.prompt.md +5 -0
  60. package/components/ai/PromptSuggestions.d.ts +12 -0
  61. package/components/ai/PromptSuggestions.figma.tsx +12 -0
  62. package/components/ai/PromptSuggestions.jsx +20 -0
  63. package/components/ai/PromptSuggestions.prompt.md +5 -0
  64. package/components/ai/TypingIndicator.d.ts +9 -0
  65. package/components/ai/TypingIndicator.figma.tsx +12 -0
  66. package/components/ai/TypingIndicator.jsx +14 -0
  67. package/components/ai/TypingIndicator.prompt.md +5 -0
  68. package/components/ai/ai-conversation.card.html +49 -0
  69. package/components/ai/ai-lumi.card.html +39 -0
  70. package/components/ai/ai.card.html +43 -0
  71. package/components/brand/LumiAvatar.d.ts +14 -0
  72. package/components/brand/LumiAvatar.figma.tsx +12 -0
  73. package/components/brand/LumiAvatar.jsx +11 -0
  74. package/components/brand/LumiAvatar.prompt.md +5 -0
  75. package/components/brand/brand.card.html +37 -0
  76. package/components/button/Button.d.ts +24 -0
  77. package/components/button/Button.figma.tsx +31 -0
  78. package/components/button/Button.jsx +42 -0
  79. package/components/button/Button.prompt.md +12 -0
  80. package/components/button/ButtonGroup.d.ts +11 -0
  81. package/components/button/ButtonGroup.figma.tsx +12 -0
  82. package/components/button/ButtonGroup.jsx +7 -0
  83. package/components/button/ButtonGroup.prompt.md +8 -0
  84. package/components/button/FloatingActionButton.d.ts +15 -0
  85. package/components/button/FloatingActionButton.figma.tsx +12 -0
  86. package/components/button/FloatingActionButton.jsx +20 -0
  87. package/components/button/FloatingActionButton.prompt.md +6 -0
  88. package/components/button/buttons.card.html +52 -0
  89. package/components/data/Accordion.d.ts +14 -0
  90. package/components/data/Accordion.figma.tsx +12 -0
  91. package/components/data/Accordion.jsx +25 -0
  92. package/components/data/Accordion.prompt.md +5 -0
  93. package/components/data/Avatar.d.ts +18 -0
  94. package/components/data/Avatar.figma.tsx +12 -0
  95. package/components/data/Avatar.jsx +17 -0
  96. package/components/data/Avatar.prompt.md +6 -0
  97. package/components/data/Card.d.ts +23 -0
  98. package/components/data/Card.figma.tsx +12 -0
  99. package/components/data/Card.jsx +27 -0
  100. package/components/data/Card.prompt.md +9 -0
  101. package/components/data/Carousel.d.ts +13 -0
  102. package/components/data/Carousel.figma.tsx +12 -0
  103. package/components/data/Carousel.jsx +26 -0
  104. package/components/data/Carousel.prompt.md +5 -0
  105. package/components/data/Chart.d.ts +17 -0
  106. package/components/data/Chart.figma.tsx +12 -0
  107. package/components/data/Chart.jsx +52 -0
  108. package/components/data/Chart.prompt.md +5 -0
  109. package/components/data/CodeBlock.d.ts +12 -0
  110. package/components/data/CodeBlock.figma.tsx +12 -0
  111. package/components/data/CodeBlock.jsx +21 -0
  112. package/components/data/CodeBlock.prompt.md +5 -0
  113. package/components/data/Comment.d.ts +18 -0
  114. package/components/data/Comment.figma.tsx +12 -0
  115. package/components/data/Comment.jsx +24 -0
  116. package/components/data/Comment.prompt.md +7 -0
  117. package/components/data/DescriptionList.d.ts +10 -0
  118. package/components/data/DescriptionList.figma.tsx +12 -0
  119. package/components/data/DescriptionList.jsx +16 -0
  120. package/components/data/DescriptionList.prompt.md +5 -0
  121. package/components/data/Divider.d.ts +13 -0
  122. package/components/data/Divider.figma.tsx +12 -0
  123. package/components/data/Divider.jsx +11 -0
  124. package/components/data/Divider.prompt.md +6 -0
  125. package/components/data/Image.d.ts +18 -0
  126. package/components/data/Image.figma.tsx +12 -0
  127. package/components/data/Image.jsx +37 -0
  128. package/components/data/Image.prompt.md +5 -0
  129. package/components/data/Kbd.d.ts +8 -0
  130. package/components/data/Kbd.figma.tsx +12 -0
  131. package/components/data/Kbd.jsx +7 -0
  132. package/components/data/Kbd.prompt.md +5 -0
  133. package/components/data/List.d.ts +16 -0
  134. package/components/data/List.figma.tsx +12 -0
  135. package/components/data/List.jsx +24 -0
  136. package/components/data/List.prompt.md +7 -0
  137. package/components/data/Masonry.d.ts +13 -0
  138. package/components/data/Masonry.figma.tsx +12 -0
  139. package/components/data/Masonry.jsx +11 -0
  140. package/components/data/Masonry.prompt.md +5 -0
  141. package/components/data/QRCode.d.ts +12 -0
  142. package/components/data/QRCode.figma.tsx +12 -0
  143. package/components/data/QRCode.jsx +17 -0
  144. package/components/data/QRCode.prompt.md +5 -0
  145. package/components/data/Sortable.d.ts +10 -0
  146. package/components/data/Sortable.figma.tsx +12 -0
  147. package/components/data/Sortable.jsx +30 -0
  148. package/components/data/Sortable.prompt.md +5 -0
  149. package/components/data/Splitter.d.ts +16 -0
  150. package/components/data/Splitter.figma.tsx +12 -0
  151. package/components/data/Splitter.jsx +31 -0
  152. package/components/data/Splitter.prompt.md +5 -0
  153. package/components/data/Stat.d.ts +15 -0
  154. package/components/data/Stat.figma.tsx +12 -0
  155. package/components/data/Stat.jsx +19 -0
  156. package/components/data/Stat.prompt.md +5 -0
  157. package/components/data/Terminal.d.ts +13 -0
  158. package/components/data/Terminal.figma.tsx +12 -0
  159. package/components/data/Terminal.jsx +32 -0
  160. package/components/data/Terminal.prompt.md +5 -0
  161. package/components/data/Timeline.d.ts +17 -0
  162. package/components/data/Timeline.figma.tsx +12 -0
  163. package/components/data/Timeline.jsx +20 -0
  164. package/components/data/Timeline.prompt.md +8 -0
  165. package/components/data/Tooltip.d.ts +14 -0
  166. package/components/data/Tooltip.figma.tsx +12 -0
  167. package/components/data/Tooltip.jsx +12 -0
  168. package/components/data/Tooltip.prompt.md +5 -0
  169. package/components/data/Tree.d.ts +13 -0
  170. package/components/data/Tree.figma.tsx +12 -0
  171. package/components/data/Tree.jsx +23 -0
  172. package/components/data/Tree.prompt.md +5 -0
  173. package/components/data/Watermark.d.ts +15 -0
  174. package/components/data/Watermark.figma.tsx +12 -0
  175. package/components/data/Watermark.jsx +15 -0
  176. package/components/data/Watermark.prompt.md +5 -0
  177. package/components/data/collections.card.html +52 -0
  178. package/components/data/data.card.html +50 -0
  179. package/components/data/qr-encode.js +80 -0
  180. package/components/datatable/DataGrid.d.ts +42 -0
  181. package/components/datatable/DataGrid.figma.tsx +12 -0
  182. package/components/datatable/DataGrid.jsx +149 -0
  183. package/components/datatable/DataGrid.prompt.md +12 -0
  184. package/components/datatable/DataTable.d.ts +25 -0
  185. package/components/datatable/DataTable.figma.tsx +12 -0
  186. package/components/datatable/DataTable.jsx +42 -0
  187. package/components/datatable/DataTable.prompt.md +15 -0
  188. package/components/datatable/TreeTable.d.ts +14 -0
  189. package/components/datatable/TreeTable.figma.tsx +12 -0
  190. package/components/datatable/TreeTable.jsx +47 -0
  191. package/components/datatable/TreeTable.prompt.md +6 -0
  192. package/components/datatable/datatable.card.html +51 -0
  193. package/components/dialog/Dialog.d.ts +22 -0
  194. package/components/dialog/Dialog.figma.tsx +12 -0
  195. package/components/dialog/Dialog.jsx +99 -0
  196. package/components/dialog/Dialog.prompt.md +17 -0
  197. package/components/dialog/dialog.card.html +46 -0
  198. package/components/feedback/Alert.d.ts +16 -0
  199. package/components/feedback/Alert.figma.tsx +17 -0
  200. package/components/feedback/Alert.jsx +29 -0
  201. package/components/feedback/Alert.prompt.md +6 -0
  202. package/components/feedback/Badge.d.ts +15 -0
  203. package/components/feedback/Badge.figma.tsx +12 -0
  204. package/components/feedback/Badge.jsx +12 -0
  205. package/components/feedback/Badge.prompt.md +6 -0
  206. package/components/feedback/EmptyState.d.ts +13 -0
  207. package/components/feedback/EmptyState.figma.tsx +12 -0
  208. package/components/feedback/EmptyState.jsx +16 -0
  209. package/components/feedback/EmptyState.prompt.md +7 -0
  210. package/components/feedback/ProgressBar.d.ts +15 -0
  211. package/components/feedback/ProgressBar.figma.tsx +12 -0
  212. package/components/feedback/ProgressBar.jsx +13 -0
  213. package/components/feedback/ProgressBar.prompt.md +5 -0
  214. package/components/feedback/Result.d.ts +15 -0
  215. package/components/feedback/Result.figma.tsx +12 -0
  216. package/components/feedback/Result.jsx +24 -0
  217. package/components/feedback/Result.prompt.md +7 -0
  218. package/components/feedback/Skeleton.d.ts +18 -0
  219. package/components/feedback/Skeleton.figma.tsx +12 -0
  220. package/components/feedback/Skeleton.jsx +22 -0
  221. package/components/feedback/Skeleton.prompt.md +6 -0
  222. package/components/feedback/Spinner.d.ts +11 -0
  223. package/components/feedback/Spinner.figma.tsx +12 -0
  224. package/components/feedback/Spinner.jsx +10 -0
  225. package/components/feedback/Spinner.prompt.md +5 -0
  226. package/components/feedback/StatusIndicator.d.ts +11 -0
  227. package/components/feedback/StatusIndicator.figma.tsx +12 -0
  228. package/components/feedback/StatusIndicator.jsx +12 -0
  229. package/components/feedback/StatusIndicator.prompt.md +5 -0
  230. package/components/feedback/Tag.d.ts +14 -0
  231. package/components/feedback/Tag.figma.tsx +12 -0
  232. package/components/feedback/Tag.jsx +19 -0
  233. package/components/feedback/Tag.prompt.md +6 -0
  234. package/components/feedback/Toast.d.ts +19 -0
  235. package/components/feedback/Toast.figma.tsx +12 -0
  236. package/components/feedback/Toast.jsx +30 -0
  237. package/components/feedback/Toast.prompt.md +7 -0
  238. package/components/feedback/feedback-2.card.html +43 -0
  239. package/components/feedback/feedback.card.html +50 -0
  240. package/components/forms/Calendar.d.ts +10 -0
  241. package/components/forms/Calendar.figma.tsx +12 -0
  242. package/components/forms/Calendar.jsx +43 -0
  243. package/components/forms/Calendar.prompt.md +5 -0
  244. package/components/forms/Cascader.d.ts +17 -0
  245. package/components/forms/Cascader.figma.tsx +12 -0
  246. package/components/forms/Cascader.jsx +58 -0
  247. package/components/forms/Cascader.prompt.md +5 -0
  248. package/components/forms/Checkbox.d.ts +13 -0
  249. package/components/forms/Checkbox.figma.tsx +12 -0
  250. package/components/forms/Checkbox.jsx +16 -0
  251. package/components/forms/Checkbox.prompt.md +6 -0
  252. package/components/forms/ColorPicker.d.ts +12 -0
  253. package/components/forms/ColorPicker.figma.tsx +12 -0
  254. package/components/forms/ColorPicker.jsx +44 -0
  255. package/components/forms/ColorPicker.prompt.md +5 -0
  256. package/components/forms/Combobox.d.ts +17 -0
  257. package/components/forms/Combobox.figma.tsx +12 -0
  258. package/components/forms/Combobox.jsx +49 -0
  259. package/components/forms/Combobox.prompt.md +6 -0
  260. package/components/forms/DatePicker.d.ts +15 -0
  261. package/components/forms/DatePicker.figma.tsx +12 -0
  262. package/components/forms/DatePicker.jsx +35 -0
  263. package/components/forms/DatePicker.prompt.md +5 -0
  264. package/components/forms/Editor.d.ts +12 -0
  265. package/components/forms/Editor.figma.tsx +12 -0
  266. package/components/forms/Editor.jsx +26 -0
  267. package/components/forms/Editor.prompt.md +5 -0
  268. package/components/forms/FileUpload.d.ts +14 -0
  269. package/components/forms/FileUpload.figma.tsx +12 -0
  270. package/components/forms/FileUpload.jsx +29 -0
  271. package/components/forms/FileUpload.prompt.md +5 -0
  272. package/components/forms/Form.d.ts +87 -0
  273. package/components/forms/Form.figma.tsx +12 -0
  274. package/components/forms/Form.jsx +316 -0
  275. package/components/forms/Form.prompt.md +46 -0
  276. package/components/forms/InlineEdit.d.ts +13 -0
  277. package/components/forms/InlineEdit.figma.tsx +12 -0
  278. package/components/forms/InlineEdit.jsx +27 -0
  279. package/components/forms/InlineEdit.prompt.md +5 -0
  280. package/components/forms/InputGroup.d.ts +20 -0
  281. package/components/forms/InputGroup.figma.tsx +12 -0
  282. package/components/forms/InputGroup.jsx +25 -0
  283. package/components/forms/InputGroup.prompt.md +6 -0
  284. package/components/forms/InputOTP.d.ts +16 -0
  285. package/components/forms/InputOTP.figma.tsx +12 -0
  286. package/components/forms/InputOTP.jsx +47 -0
  287. package/components/forms/InputOTP.prompt.md +5 -0
  288. package/components/forms/Mentions.d.ts +13 -0
  289. package/components/forms/Mentions.figma.tsx +12 -0
  290. package/components/forms/Mentions.jsx +31 -0
  291. package/components/forms/Mentions.prompt.md +5 -0
  292. package/components/forms/NumberField.d.ts +14 -0
  293. package/components/forms/NumberField.figma.tsx +12 -0
  294. package/components/forms/NumberField.jsx +21 -0
  295. package/components/forms/NumberField.prompt.md +5 -0
  296. package/components/forms/RadioGroup.d.ts +24 -0
  297. package/components/forms/RadioGroup.figma.tsx +12 -0
  298. package/components/forms/RadioGroup.jsx +32 -0
  299. package/components/forms/RadioGroup.prompt.md +6 -0
  300. package/components/forms/Rating.d.ts +16 -0
  301. package/components/forms/Rating.figma.tsx +12 -0
  302. package/components/forms/Rating.jsx +22 -0
  303. package/components/forms/Rating.prompt.md +6 -0
  304. package/components/forms/SearchField.d.ts +11 -0
  305. package/components/forms/SearchField.figma.tsx +12 -0
  306. package/components/forms/SearchField.jsx +25 -0
  307. package/components/forms/SearchField.prompt.md +5 -0
  308. package/components/forms/SegmentedControl.d.ts +13 -0
  309. package/components/forms/SegmentedControl.figma.tsx +12 -0
  310. package/components/forms/SegmentedControl.jsx +31 -0
  311. package/components/forms/SegmentedControl.prompt.md +6 -0
  312. package/components/forms/Select.d.ts +19 -0
  313. package/components/forms/Select.figma.tsx +12 -0
  314. package/components/forms/Select.jsx +27 -0
  315. package/components/forms/Select.prompt.md +6 -0
  316. package/components/forms/Slider.d.ts +6 -0
  317. package/components/forms/Slider.figma.tsx +12 -0
  318. package/components/forms/Slider.jsx +8 -0
  319. package/components/forms/Slider.prompt.md +5 -0
  320. package/components/forms/Switch.d.ts +12 -0
  321. package/components/forms/Switch.figma.tsx +12 -0
  322. package/components/forms/Switch.jsx +14 -0
  323. package/components/forms/Switch.prompt.md +5 -0
  324. package/components/forms/TagInput.d.ts +16 -0
  325. package/components/forms/TagInput.figma.tsx +12 -0
  326. package/components/forms/TagInput.jsx +39 -0
  327. package/components/forms/TagInput.prompt.md +5 -0
  328. package/components/forms/Textarea.d.ts +14 -0
  329. package/components/forms/Textarea.figma.tsx +12 -0
  330. package/components/forms/Textarea.jsx +19 -0
  331. package/components/forms/Textarea.prompt.md +5 -0
  332. package/components/forms/TimePicker.d.ts +16 -0
  333. package/components/forms/TimePicker.figma.tsx +12 -0
  334. package/components/forms/TimePicker.jsx +22 -0
  335. package/components/forms/TimePicker.prompt.md +5 -0
  336. package/components/forms/Toggle.d.ts +16 -0
  337. package/components/forms/Toggle.figma.tsx +12 -0
  338. package/components/forms/Toggle.jsx +15 -0
  339. package/components/forms/Toggle.prompt.md +6 -0
  340. package/components/forms/Transfer.d.ts +14 -0
  341. package/components/forms/Transfer.figma.tsx +12 -0
  342. package/components/forms/Transfer.jsx +41 -0
  343. package/components/forms/Transfer.prompt.md +5 -0
  344. package/components/forms/TreeSelect.d.ts +15 -0
  345. package/components/forms/TreeSelect.figma.tsx +12 -0
  346. package/components/forms/TreeSelect.jsx +35 -0
  347. package/components/forms/TreeSelect.prompt.md +5 -0
  348. package/components/forms/forms-2.card.html +40 -0
  349. package/components/forms/forms.card.html +40 -0
  350. package/components/icon/Icon.d.ts +26 -0
  351. package/components/icon/Icon.figma.tsx +12 -0
  352. package/components/icon/Icon.jsx +74 -0
  353. package/components/icon/Icon.prompt.md +8 -0
  354. package/components/icon/icon.card.html +38 -0
  355. package/components/logo/Logo.d.ts +18 -0
  356. package/components/logo/Logo.figma.tsx +12 -0
  357. package/components/logo/Logo.jsx +25 -0
  358. package/components/logo/Logo.prompt.md +10 -0
  359. package/components/logo/logo-data.js +214 -0
  360. package/components/logo/logo.card.html +44 -0
  361. package/components/navigation/Anchor.d.ts +11 -0
  362. package/components/navigation/Anchor.figma.tsx +12 -0
  363. package/components/navigation/Anchor.jsx +25 -0
  364. package/components/navigation/Anchor.prompt.md +5 -0
  365. package/components/navigation/BackTop.d.ts +9 -0
  366. package/components/navigation/BackTop.figma.tsx +12 -0
  367. package/components/navigation/BackTop.jsx +23 -0
  368. package/components/navigation/BackTop.prompt.md +5 -0
  369. package/components/navigation/Breadcrumb.d.ts +14 -0
  370. package/components/navigation/Breadcrumb.figma.tsx +12 -0
  371. package/components/navigation/Breadcrumb.jsx +24 -0
  372. package/components/navigation/Breadcrumb.prompt.md +5 -0
  373. package/components/navigation/CommandPalette.d.ts +19 -0
  374. package/components/navigation/CommandPalette.figma.tsx +12 -0
  375. package/components/navigation/CommandPalette.jsx +48 -0
  376. package/components/navigation/CommandPalette.prompt.md +7 -0
  377. package/components/navigation/Dock.d.ts +6 -0
  378. package/components/navigation/Dock.figma.tsx +12 -0
  379. package/components/navigation/Dock.jsx +22 -0
  380. package/components/navigation/Dock.prompt.md +5 -0
  381. package/components/navigation/HotKeys.d.ts +13 -0
  382. package/components/navigation/HotKeys.figma.tsx +12 -0
  383. package/components/navigation/HotKeys.jsx +44 -0
  384. package/components/navigation/HotKeys.prompt.md +5 -0
  385. package/components/navigation/Link.d.ts +12 -0
  386. package/components/navigation/Link.figma.tsx +12 -0
  387. package/components/navigation/Link.jsx +13 -0
  388. package/components/navigation/Link.prompt.md +5 -0
  389. package/components/navigation/Menu.d.ts +23 -0
  390. package/components/navigation/Menu.figma.tsx +12 -0
  391. package/components/navigation/Menu.jsx +36 -0
  392. package/components/navigation/Menu.prompt.md +9 -0
  393. package/components/navigation/Menubar.d.ts +7 -0
  394. package/components/navigation/Menubar.figma.tsx +12 -0
  395. package/components/navigation/Menubar.jsx +48 -0
  396. package/components/navigation/Menubar.prompt.md +5 -0
  397. package/components/navigation/NavigationMenu.d.ts +7 -0
  398. package/components/navigation/NavigationMenu.figma.tsx +12 -0
  399. package/components/navigation/NavigationMenu.jsx +38 -0
  400. package/components/navigation/NavigationMenu.prompt.md +5 -0
  401. package/components/navigation/Pagination.d.ts +13 -0
  402. package/components/navigation/Pagination.figma.tsx +12 -0
  403. package/components/navigation/Pagination.jsx +32 -0
  404. package/components/navigation/Pagination.prompt.md +5 -0
  405. package/components/navigation/Sidebar.d.ts +20 -0
  406. package/components/navigation/Sidebar.figma.tsx +12 -0
  407. package/components/navigation/Sidebar.jsx +24 -0
  408. package/components/navigation/Sidebar.prompt.md +8 -0
  409. package/components/navigation/Steps.d.ts +13 -0
  410. package/components/navigation/Steps.figma.tsx +12 -0
  411. package/components/navigation/Steps.jsx +20 -0
  412. package/components/navigation/Steps.prompt.md +5 -0
  413. package/components/navigation/Tabs.d.ts +21 -0
  414. package/components/navigation/Tabs.figma.tsx +12 -0
  415. package/components/navigation/Tabs.jsx +41 -0
  416. package/components/navigation/Tabs.prompt.md +6 -0
  417. package/components/navigation/Toolbar.d.ts +16 -0
  418. package/components/navigation/Toolbar.figma.tsx +12 -0
  419. package/components/navigation/Toolbar.jsx +32 -0
  420. package/components/navigation/Toolbar.prompt.md +5 -0
  421. package/components/navigation/navigation.card.html +51 -0
  422. package/components/navigation/shell.card.html +52 -0
  423. package/components/overlays/ContextMenu.d.ts +10 -0
  424. package/components/overlays/ContextMenu.figma.tsx +12 -0
  425. package/components/overlays/ContextMenu.jsx +28 -0
  426. package/components/overlays/ContextMenu.prompt.md +7 -0
  427. package/components/overlays/Drawer.d.ts +18 -0
  428. package/components/overlays/Drawer.figma.tsx +12 -0
  429. package/components/overlays/Drawer.jsx +44 -0
  430. package/components/overlays/Drawer.prompt.md +8 -0
  431. package/components/overlays/HoverCard.d.ts +13 -0
  432. package/components/overlays/HoverCard.figma.tsx +12 -0
  433. package/components/overlays/HoverCard.jsx +17 -0
  434. package/components/overlays/HoverCard.prompt.md +5 -0
  435. package/components/overlays/Popconfirm.d.ts +18 -0
  436. package/components/overlays/Popconfirm.figma.tsx +12 -0
  437. package/components/overlays/Popconfirm.jsx +33 -0
  438. package/components/overlays/Popconfirm.prompt.md +6 -0
  439. package/components/overlays/Popover.d.ts +17 -0
  440. package/components/overlays/Popover.figma.tsx +12 -0
  441. package/components/overlays/Popover.jsx +24 -0
  442. package/components/overlays/Popover.prompt.md +7 -0
  443. package/components/overlays/Tour.d.ts +13 -0
  444. package/components/overlays/Tour.figma.tsx +12 -0
  445. package/components/overlays/Tour.jsx +46 -0
  446. package/components/overlays/Tour.prompt.md +5 -0
  447. package/components/overlays/overlays.card.html +50 -0
  448. package/components/textfield/TextField.d.ts +18 -0
  449. package/components/textfield/TextField.figma.tsx +14 -0
  450. package/components/textfield/TextField.jsx +44 -0
  451. package/components/textfield/TextField.prompt.md +11 -0
  452. package/components/textfield/textfield.card.html +34 -0
  453. package/docs/ci-cd.md +84 -0
  454. package/docs/consuming.md +109 -0
  455. package/docs/contrast-report.md +125 -0
  456. package/docs/conventions.md +114 -0
  457. package/docs/decisions.md +94 -0
  458. package/docs/deploy.md +110 -0
  459. package/docs/design-styles.md +25 -0
  460. package/docs/figma.md +119 -0
  461. package/docs/live-hub.md +58 -0
  462. package/docs/products.md +26 -0
  463. package/docs/quality-gates.md +94 -0
  464. package/docs/release-notes.md +31 -0
  465. package/docs/storybook.md +56 -0
  466. package/docs/sync.md +48 -0
  467. package/docs/template-schema-v2.md +36 -0
  468. package/docs/vi/ci-cd.md +84 -0
  469. package/docs/vi/consuming.md +109 -0
  470. package/docs/vi/contrast-report.md +125 -0
  471. package/docs/vi/conventions.md +114 -0
  472. package/docs/vi/decisions.md +94 -0
  473. package/docs/vi/deploy.md +110 -0
  474. package/docs/vi/design-styles.md +25 -0
  475. package/docs/vi/figma.md +119 -0
  476. package/docs/vi/live-hub.md +58 -0
  477. package/docs/vi/products.md +26 -0
  478. package/docs/vi/quality-gates.md +94 -0
  479. package/docs/vi/release-notes.md +31 -0
  480. package/docs/vi/storybook.md +56 -0
  481. package/docs/vi/sync.md +48 -0
  482. package/docs/vi/template-schema-v2.md +36 -0
  483. package/docs/viewer.html +230 -0
  484. package/fonts/bevietnampro-300-latin-ext.woff2 +0 -0
  485. package/fonts/bevietnampro-300-latin.woff2 +0 -0
  486. package/fonts/bevietnampro-300-vietnamese.woff2 +0 -0
  487. package/fonts/bevietnampro-400-latin-ext.woff2 +0 -0
  488. package/fonts/bevietnampro-400-latin.woff2 +0 -0
  489. package/fonts/bevietnampro-400-vietnamese.woff2 +0 -0
  490. package/fonts/bevietnampro-400i-latin-ext.woff2 +0 -0
  491. package/fonts/bevietnampro-400i-latin.woff2 +0 -0
  492. package/fonts/bevietnampro-400i-vietnamese.woff2 +0 -0
  493. package/fonts/bevietnampro-500-latin-ext.woff2 +0 -0
  494. package/fonts/bevietnampro-500-latin.woff2 +0 -0
  495. package/fonts/bevietnampro-500-vietnamese.woff2 +0 -0
  496. package/fonts/bevietnampro-600-latin-ext.woff2 +0 -0
  497. package/fonts/bevietnampro-600-latin.woff2 +0 -0
  498. package/fonts/bevietnampro-600-vietnamese.woff2 +0 -0
  499. package/fonts/bevietnampro-600i-latin-ext.woff2 +0 -0
  500. package/fonts/bevietnampro-600i-latin.woff2 +0 -0
  501. package/fonts/bevietnampro-600i-vietnamese.woff2 +0 -0
  502. package/fonts/bevietnampro-700-latin-ext.woff2 +0 -0
  503. package/fonts/bevietnampro-700-latin.woff2 +0 -0
  504. package/fonts/bevietnampro-700-vietnamese.woff2 +0 -0
  505. package/fonts/bevietnampro-800-latin-ext.woff2 +0 -0
  506. package/fonts/bevietnampro-800-latin.woff2 +0 -0
  507. package/fonts/bevietnampro-800-vietnamese.woff2 +0 -0
  508. package/fonts/jetbrainsmono-400-cyrillic-ext.woff2 +0 -0
  509. package/fonts/jetbrainsmono-400-cyrillic.woff2 +0 -0
  510. package/fonts/jetbrainsmono-400-greek.woff2 +0 -0
  511. package/fonts/jetbrainsmono-400-latin-ext.woff2 +0 -0
  512. package/fonts/jetbrainsmono-400-latin.woff2 +0 -0
  513. package/fonts/jetbrainsmono-400-vietnamese.woff2 +0 -0
  514. package/fonts/jetbrainsmono-500-cyrillic-ext.woff2 +0 -0
  515. package/fonts/jetbrainsmono-500-cyrillic.woff2 +0 -0
  516. package/fonts/jetbrainsmono-500-greek.woff2 +0 -0
  517. package/fonts/jetbrainsmono-500-latin-ext.woff2 +0 -0
  518. package/fonts/jetbrainsmono-500-latin.woff2 +0 -0
  519. package/fonts/jetbrainsmono-500-vietnamese.woff2 +0 -0
  520. package/fonts/jetbrainsmono-700-cyrillic-ext.woff2 +0 -0
  521. package/fonts/jetbrainsmono-700-cyrillic.woff2 +0 -0
  522. package/fonts/jetbrainsmono-700-greek.woff2 +0 -0
  523. package/fonts/jetbrainsmono-700-latin-ext.woff2 +0 -0
  524. package/fonts/jetbrainsmono-700-latin.woff2 +0 -0
  525. package/fonts/jetbrainsmono-700-vietnamese.woff2 +0 -0
  526. package/guidelines/atomic-view.html +497 -0
  527. package/guidelines/brand-iconography.html +51 -0
  528. package/guidelines/brand-imagery.html +23 -0
  529. package/guidelines/brand-interaction.html +24 -0
  530. package/guidelines/brand-voice.html +24 -0
  531. package/guidelines/colors-anchors.html +20 -0
  532. package/guidelines/colors-semantic.html +19 -0
  533. package/guidelines/colors-surfaces.html +19 -0
  534. package/guidelines/colors-text.html +20 -0
  535. package/guidelines/documents.html +43 -0
  536. package/guidelines/elements-components.html +27 -0
  537. package/guidelines/elements-concept.html +48 -0
  538. package/guidelines/elements-variants.html +49 -0
  539. package/guidelines/motion-interaction.html +29 -0
  540. package/guidelines/motion.html +53 -0
  541. package/guidelines/nav-model.cjs +113 -0
  542. package/guidelines/responsive-bilingual.html +75 -0
  543. package/guidelines/rtl-preview.html +115 -0
  544. package/guidelines/spacing-breakpoints.html +20 -0
  545. package/guidelines/spacing-radius.html +19 -0
  546. package/guidelines/spacing-scale.html +21 -0
  547. package/guidelines/surfaces-aurora.html +20 -0
  548. package/guidelines/surfaces-depth.html +27 -0
  549. package/guidelines/surfaces-glass.html +21 -0
  550. package/guidelines/surfaces-shadow.html +20 -0
  551. package/guidelines/type-families.html +25 -0
  552. package/guidelines/type-lineheight.html +16 -0
  553. package/guidelines/type-scale.html +21 -0
  554. package/guidelines/type-weights.html +20 -0
  555. package/llms.txt +70 -0
  556. package/package.json +88 -0
  557. package/styles.css +39 -0
  558. package/templates/_vendor/deck-stage.js +2584 -0
  559. package/templates/ai-cluster-demo.html +46 -0
  560. package/templates/app-shell/.thumbnail +0 -0
  561. package/templates/app-shell/AppShell.dc.html +80 -0
  562. package/templates/app-shell/content-schema.json +114 -0
  563. package/templates/app-shell/ds-base.js +23 -0
  564. package/templates/app-shell/support.js +1841 -0
  565. package/templates/article/.thumbnail +0 -0
  566. package/templates/article/Article.dc.html +67 -0
  567. package/templates/article/content-schema.json +80 -0
  568. package/templates/article/ds-base.js +23 -0
  569. package/templates/article/support.js +1841 -0
  570. package/templates/auth/.thumbnail +0 -0
  571. package/templates/auth/Auth.dc.html +72 -0
  572. package/templates/auth/content-schema.json +74 -0
  573. package/templates/auth/ds-base.js +23 -0
  574. package/templates/auth/support.js +1841 -0
  575. package/templates/bod-deck/.thumbnail +0 -0
  576. package/templates/bod-deck/BodDeck.dc.html +106 -0
  577. package/templates/bod-deck/content-schema.json +171 -0
  578. package/templates/bod-deck/ds-base.js +23 -0
  579. package/templates/bod-deck/support.js +1841 -0
  580. package/templates/bod-investor-update/.thumbnail +0 -0
  581. package/templates/bod-investor-update/BodInvestorUpdate.dc.html +81 -0
  582. package/templates/bod-investor-update/content-schema.json +105 -0
  583. package/templates/bod-investor-update/ds-base.js +23 -0
  584. package/templates/bod-investor-update/support.js +1841 -0
  585. package/templates/bod-memo/.thumbnail +0 -0
  586. package/templates/bod-memo/BodMemo.dc.html +87 -0
  587. package/templates/bod-memo/ds-base.js +23 -0
  588. package/templates/bod-memo/support.js +1841 -0
  589. package/templates/bod-minutes/.thumbnail +0 -0
  590. package/templates/bod-minutes/BodMinutes.dc.html +84 -0
  591. package/templates/bod-minutes/ds-base.js +23 -0
  592. package/templates/bod-minutes/support.js +1841 -0
  593. package/templates/bod-report/.thumbnail +0 -0
  594. package/templates/bod-report/BodReport.dc.html +106 -0
  595. package/templates/bod-report/content-schema.json +29 -0
  596. package/templates/bod-report/ds-base.js +23 -0
  597. package/templates/bod-report/support.js +1841 -0
  598. package/templates/bod-resolution/.thumbnail +0 -0
  599. package/templates/bod-resolution/BodResolution.dc.html +87 -0
  600. package/templates/bod-resolution/content-schema.json +123 -0
  601. package/templates/bod-resolution/ds-base.js +23 -0
  602. package/templates/bod-resolution/support.js +1841 -0
  603. package/templates/culture-event-invite/.thumbnail +0 -0
  604. package/templates/culture-event-invite/CultureEventInvite.dc.html +73 -0
  605. package/templates/culture-event-invite/ds-base.js +23 -0
  606. package/templates/culture-event-invite/support.js +1841 -0
  607. package/templates/dashboard/.thumbnail +0 -0
  608. package/templates/dashboard/Dashboard.dc.html +120 -0
  609. package/templates/dashboard/content-schema.json +97 -0
  610. package/templates/dashboard/ds-base.js +23 -0
  611. package/templates/dashboard/support.js +1841 -0
  612. package/templates/delivery-change-note/.thumbnail +0 -0
  613. package/templates/delivery-change-note/DeliveryChangeNote.dc.html +85 -0
  614. package/templates/delivery-change-note/content-schema.json +158 -0
  615. package/templates/delivery-change-note/ds-base.js +23 -0
  616. package/templates/delivery-change-note/support.js +1841 -0
  617. package/templates/delivery-kickoff/.thumbnail +0 -0
  618. package/templates/delivery-kickoff/DeliveryKickoff.dc.html +112 -0
  619. package/templates/delivery-kickoff/content-schema.json +223 -0
  620. package/templates/delivery-kickoff/ds-base.js +23 -0
  621. package/templates/delivery-kickoff/support.js +1841 -0
  622. package/templates/delivery-qbr-deck/.thumbnail +0 -0
  623. package/templates/delivery-qbr-deck/DeliveryQbrDeck.dc.html +118 -0
  624. package/templates/delivery-qbr-deck/content-schema.json +177 -0
  625. package/templates/delivery-qbr-deck/ds-base.js +23 -0
  626. package/templates/delivery-qbr-deck/support.js +1841 -0
  627. package/templates/delivery-runbook/.thumbnail +0 -0
  628. package/templates/delivery-runbook/DeliveryRunbook.dc.html +91 -0
  629. package/templates/delivery-runbook/content-schema.json +211 -0
  630. package/templates/delivery-runbook/ds-base.js +23 -0
  631. package/templates/delivery-runbook/support.js +1841 -0
  632. package/templates/delivery-status-email/.thumbnail +0 -0
  633. package/templates/delivery-status-email/DeliveryStatusEmail.dc.html +78 -0
  634. package/templates/delivery-status-email/ds-base.js +23 -0
  635. package/templates/delivery-status-email/support.js +1841 -0
  636. package/templates/doc-style-guide/.thumbnail +0 -0
  637. package/templates/doc-style-guide/DocStyleGuide.dc.html +148 -0
  638. package/templates/doc-style-guide/ds-base.js +23 -0
  639. package/templates/doc-style-guide/support.js +1841 -0
  640. package/templates/doc-suite-index/.thumbnail +0 -0
  641. package/templates/doc-suite-index/DocSuiteIndex.dc.html +201 -0
  642. package/templates/doc-suite-index/content-schema.json +12 -0
  643. package/templates/doc-suite-index/ds-base.js +23 -0
  644. package/templates/doc-suite-index/support.js +1841 -0
  645. package/templates/doc-templates/.thumbnail +0 -0
  646. package/templates/doc-templates/DocTemplates.dc.html +118 -0
  647. package/templates/doc-templates/ds-base.js +23 -0
  648. package/templates/doc-templates/support.js +1841 -0
  649. package/templates/email/.thumbnail +0 -0
  650. package/templates/email/Email-VN-standalone.html +59 -0
  651. package/templates/email/Email.dc.html +67 -0
  652. package/templates/email/ds-base.js +23 -0
  653. package/templates/email/support.js +1841 -0
  654. package/templates/email-safe/README.md +28 -0
  655. package/templates/email-safe/email-announcement.html +88 -0
  656. package/templates/email-safe/email-dunning.html +59 -0
  657. package/templates/email-safe/email-investor.html +88 -0
  658. package/templates/email-safe/email-launch.html +88 -0
  659. package/templates/email-safe/email-newsletter.html +62 -0
  660. package/templates/email-safe/email-status.html +88 -0
  661. package/templates/email-safe/email-transactional.html +88 -0
  662. package/templates/finance-dunning-email/.thumbnail +0 -0
  663. package/templates/finance-dunning-email/FinanceDunningEmail.dc.html +58 -0
  664. package/templates/finance-dunning-email/ds-base.js +23 -0
  665. package/templates/finance-dunning-email/support.js +1841 -0
  666. package/templates/finance-expense-report/.thumbnail +0 -0
  667. package/templates/finance-expense-report/FinanceExpenseReport.dc.html +82 -0
  668. package/templates/finance-expense-report/ds-base.js +23 -0
  669. package/templates/finance-expense-report/support.js +1841 -0
  670. package/templates/finance-invoice/.thumbnail +0 -0
  671. package/templates/finance-invoice/FinanceInvoice.dc.html +92 -0
  672. package/templates/finance-invoice/ds-base.js +23 -0
  673. package/templates/finance-invoice/support.js +1841 -0
  674. package/templates/finance-quote/.thumbnail +0 -0
  675. package/templates/finance-quote/FinanceQuote.dc.html +86 -0
  676. package/templates/finance-quote/ds-base.js +23 -0
  677. package/templates/finance-quote/support.js +1841 -0
  678. package/templates/hr-announcement/.thumbnail +0 -0
  679. package/templates/hr-announcement/HrAnnouncement.dc.html +64 -0
  680. package/templates/hr-announcement/ds-base.js +23 -0
  681. package/templates/hr-announcement/support.js +1841 -0
  682. package/templates/hr-interview-kit/.thumbnail +0 -0
  683. package/templates/hr-interview-kit/HrInterviewKit.dc.html +102 -0
  684. package/templates/hr-interview-kit/ds-base.js +23 -0
  685. package/templates/hr-interview-kit/support.js +1841 -0
  686. package/templates/hr-offboarding/.thumbnail +0 -0
  687. package/templates/hr-offboarding/HrOffboarding.dc.html +86 -0
  688. package/templates/hr-offboarding/ds-base.js +23 -0
  689. package/templates/hr-offboarding/support.js +1841 -0
  690. package/templates/hr-performance-review/.thumbnail +0 -0
  691. package/templates/hr-performance-review/HrPerformanceReview.dc.html +95 -0
  692. package/templates/hr-performance-review/ds-base.js +23 -0
  693. package/templates/hr-performance-review/support.js +1841 -0
  694. package/templates/hr-pip/.thumbnail +0 -0
  695. package/templates/hr-pip/HrPip.dc.html +73 -0
  696. package/templates/hr-pip/ds-base.js +23 -0
  697. package/templates/hr-pip/support.js +1841 -0
  698. package/templates/image-slots-demo.html +57 -0
  699. package/templates/kitchen-sink.html +127 -0
  700. package/templates/legal-msa/.thumbnail +0 -0
  701. package/templates/legal-msa/LegalMsa.dc.html +85 -0
  702. package/templates/legal-msa/ds-base.js +23 -0
  703. package/templates/legal-msa/support.js +1841 -0
  704. package/templates/legal-sow/.thumbnail +0 -0
  705. package/templates/legal-sow/LegalSow.dc.html +125 -0
  706. package/templates/legal-sow/ds-base.js +23 -0
  707. package/templates/legal-sow/support.js +1841 -0
  708. package/templates/marketing-campaign-brief/.thumbnail +0 -0
  709. package/templates/marketing-campaign-brief/MarketingCampaignBrief.dc.html +86 -0
  710. package/templates/marketing-campaign-brief/content-schema.json +139 -0
  711. package/templates/marketing-campaign-brief/ds-base.js +23 -0
  712. package/templates/marketing-campaign-brief/support.js +1841 -0
  713. package/templates/marketing-case-study/.thumbnail +0 -0
  714. package/templates/marketing-case-study/MarketingCaseStudy.dc.html +82 -0
  715. package/templates/marketing-case-study/content-schema.json +103 -0
  716. package/templates/marketing-case-study/ds-base.js +23 -0
  717. package/templates/marketing-case-study/support.js +1841 -0
  718. package/templates/marketing-launch/.thumbnail +0 -0
  719. package/templates/marketing-launch/MarketingLaunch.dc.html +84 -0
  720. package/templates/marketing-launch/ds-base.js +23 -0
  721. package/templates/marketing-launch/support.js +1841 -0
  722. package/templates/marketing-newsletter/.thumbnail +0 -0
  723. package/templates/marketing-newsletter/MarketingNewsletter.dc.html +109 -0
  724. package/templates/marketing-newsletter/ds-base.js +23 -0
  725. package/templates/marketing-newsletter/support.js +1841 -0
  726. package/templates/marketing-page/.thumbnail +0 -0
  727. package/templates/marketing-page/MarketingPage.dc.html +132 -0
  728. package/templates/marketing-page/content-schema.json +33 -0
  729. package/templates/marketing-page/ds-base.js +23 -0
  730. package/templates/marketing-page/support.js +1841 -0
  731. package/templates/marketing-press-release/.thumbnail +0 -0
  732. package/templates/marketing-press-release/MarketingPressRelease.dc.html +84 -0
  733. package/templates/marketing-press-release/content-schema.json +116 -0
  734. package/templates/marketing-press-release/ds-base.js +23 -0
  735. package/templates/marketing-press-release/support.js +1841 -0
  736. package/templates/marketing-social-kit/.thumbnail +0 -0
  737. package/templates/marketing-social-kit/MarketingSocialKit.dc.html +77 -0
  738. package/templates/marketing-social-kit/content-schema.json +54 -0
  739. package/templates/marketing-social-kit/ds-base.js +23 -0
  740. package/templates/marketing-social-kit/support.js +1841 -0
  741. package/templates/playground.html +79 -0
  742. package/templates/sales-one-pager/.thumbnail +0 -0
  743. package/templates/sales-one-pager/SalesOnePager.dc.html +103 -0
  744. package/templates/sales-one-pager/content-schema.json +73 -0
  745. package/templates/sales-one-pager/ds-base.js +23 -0
  746. package/templates/sales-one-pager/support.js +1841 -0
  747. package/templates/sales-proposal-deck/.thumbnail +0 -0
  748. package/templates/sales-proposal-deck/SalesProposalDeck.dc.html +159 -0
  749. package/templates/sales-proposal-deck/content-schema.json +273 -0
  750. package/templates/sales-proposal-deck/ds-base.js +23 -0
  751. package/templates/sales-proposal-deck/support.js +1841 -0
  752. package/templates/schema/content-schema.schema.json +31 -0
  753. package/templates/settings/.thumbnail +0 -0
  754. package/templates/settings/Settings.dc.html +86 -0
  755. package/templates/settings/content-schema.json +131 -0
  756. package/templates/settings/ds-base.js +23 -0
  757. package/templates/settings/support.js +1841 -0
  758. package/templates/slide-deck/.thumbnail +0 -0
  759. package/templates/slide-deck/SlideDeck.dc.html +86 -0
  760. package/templates/slide-deck/content-schema.json +23 -0
  761. package/templates/slide-deck/ds-base.js +23 -0
  762. package/templates/slide-deck/support.js +1841 -0
  763. package/templates/team-meeting-agenda/.thumbnail +0 -0
  764. package/templates/team-meeting-agenda/TeamMeetingAgenda.dc.html +93 -0
  765. package/templates/team-meeting-agenda/ds-base.js +23 -0
  766. package/templates/team-meeting-agenda/support.js +1841 -0
  767. package/templates/tech-incident-report/.thumbnail +0 -0
  768. package/templates/tech-incident-report/TechIncidentReport.dc.html +111 -0
  769. package/templates/tech-incident-report/content-schema.json +25 -0
  770. package/templates/tech-incident-report/ds-base.js +23 -0
  771. package/templates/tech-incident-report/support.js +1841 -0
  772. package/templates/tech-release-notes/.thumbnail +0 -0
  773. package/templates/tech-release-notes/TechReleaseNotes.dc.html +79 -0
  774. package/templates/tech-release-notes/ds-base.js +23 -0
  775. package/templates/tech-release-notes/support.js +1841 -0
  776. package/templates/tech-retro/.thumbnail +0 -0
  777. package/templates/tech-retro/TechRetro.dc.html +84 -0
  778. package/templates/tech-retro/ds-base.js +23 -0
  779. package/templates/tech-retro/support.js +1841 -0
  780. package/templates/tech-rfc/.thumbnail +0 -0
  781. package/templates/tech-rfc/TechRfc.dc.html +87 -0
  782. package/templates/tech-rfc/content-schema.json +115 -0
  783. package/templates/tech-rfc/ds-base.js +23 -0
  784. package/templates/tech-rfc/support.js +1841 -0
  785. package/templates/vn-appointment-transfer/.thumbnail +0 -0
  786. package/templates/vn-appointment-transfer/VnAppointmentTransfer.dc.html +101 -0
  787. package/templates/vn-appointment-transfer/ds-base.js +23 -0
  788. package/templates/vn-appointment-transfer/support.js +1841 -0
  789. package/templates/vn-certificate-of-employment/.thumbnail +0 -0
  790. package/templates/vn-certificate-of-employment/VnCertificateOfEmployment.dc.html +84 -0
  791. package/templates/vn-certificate-of-employment/ds-base.js +23 -0
  792. package/templates/vn-certificate-of-employment/support.js +1841 -0
  793. package/templates/vn-code-of-conduct/.thumbnail +0 -0
  794. package/templates/vn-code-of-conduct/VnCodeOfConduct.dc.html +105 -0
  795. package/templates/vn-code-of-conduct/ds-base.js +23 -0
  796. package/templates/vn-code-of-conduct/support.js +1841 -0
  797. package/templates/vn-compensation-regulation/.thumbnail +0 -0
  798. package/templates/vn-compensation-regulation/VnCompensationRegulation.dc.html +122 -0
  799. package/templates/vn-compensation-regulation/ds-base.js +23 -0
  800. package/templates/vn-compensation-regulation/support.js +1841 -0
  801. package/templates/vn-contract-amendment/.thumbnail +0 -0
  802. package/templates/vn-contract-amendment/VnContractAmendment.dc.html +107 -0
  803. package/templates/vn-contract-amendment/ds-base.js +23 -0
  804. package/templates/vn-contract-amendment/support.js +1841 -0
  805. package/templates/vn-contractor-agreement/.thumbnail +0 -0
  806. package/templates/vn-contractor-agreement/VnContractorAgreement.dc.html +120 -0
  807. package/templates/vn-contractor-agreement/ds-base.js +23 -0
  808. package/templates/vn-contractor-agreement/support.js +1841 -0
  809. package/templates/vn-data-protection-policy/.thumbnail +0 -0
  810. package/templates/vn-data-protection-policy/VnDataProtectionPolicy.dc.html +116 -0
  811. package/templates/vn-data-protection-policy/ds-base.js +23 -0
  812. package/templates/vn-data-protection-policy/support.js +1841 -0
  813. package/templates/vn-disciplinary-case-file/.thumbnail +0 -0
  814. package/templates/vn-disciplinary-case-file/VnDisciplinaryCaseFile.dc.html +172 -0
  815. package/templates/vn-disciplinary-case-file/ds-base.js +23 -0
  816. package/templates/vn-disciplinary-case-file/support.js +1841 -0
  817. package/templates/vn-disciplinary-schedule/.thumbnail +0 -0
  818. package/templates/vn-disciplinary-schedule/VnDisciplinarySchedule.dc.html +91 -0
  819. package/templates/vn-disciplinary-schedule/ds-base.js +23 -0
  820. package/templates/vn-disciplinary-schedule/support.js +1841 -0
  821. package/templates/vn-employee-request/.thumbnail +0 -0
  822. package/templates/vn-employee-request/VnEmployeeRequest.dc.html +137 -0
  823. package/templates/vn-employee-request/ds-base.js +23 -0
  824. package/templates/vn-employee-request/support.js +1841 -0
  825. package/templates/vn-exit-handover/.thumbnail +0 -0
  826. package/templates/vn-exit-handover/VnExitHandover.dc.html +228 -0
  827. package/templates/vn-exit-handover/ds-base.js +23 -0
  828. package/templates/vn-exit-handover/support.js +1841 -0
  829. package/templates/vn-foreign-employee-pack/.thumbnail +0 -0
  830. package/templates/vn-foreign-employee-pack/VnForeignEmployeePack.dc.html +129 -0
  831. package/templates/vn-foreign-employee-pack/content-schema.json +22 -0
  832. package/templates/vn-foreign-employee-pack/ds-base.js +23 -0
  833. package/templates/vn-foreign-employee-pack/support.js +1841 -0
  834. package/templates/vn-grassroots-democracy/.thumbnail +0 -0
  835. package/templates/vn-grassroots-democracy/VnGrassrootsDemocracy.dc.html +117 -0
  836. package/templates/vn-grassroots-democracy/ds-base.js +23 -0
  837. package/templates/vn-grassroots-democracy/support.js +1841 -0
  838. package/templates/vn-infosec-policy/.thumbnail +0 -0
  839. package/templates/vn-infosec-policy/VnInfosecPolicy.dc.html +116 -0
  840. package/templates/vn-infosec-policy/ds-base.js +23 -0
  841. package/templates/vn-infosec-policy/support.js +1841 -0
  842. package/templates/vn-internal-labor-regulations/.thumbnail +0 -0
  843. package/templates/vn-internal-labor-regulations/VnInternalLaborRegulations.dc.html +155 -0
  844. package/templates/vn-internal-labor-regulations/ds-base.js +23 -0
  845. package/templates/vn-internal-labor-regulations/support.js +1841 -0
  846. package/templates/vn-internship-agreement/.thumbnail +0 -0
  847. package/templates/vn-internship-agreement/VnInternshipAgreement.dc.html +112 -0
  848. package/templates/vn-internship-agreement/ds-base.js +23 -0
  849. package/templates/vn-internship-agreement/support.js +1841 -0
  850. package/templates/vn-job-description/.thumbnail +0 -0
  851. package/templates/vn-job-description/VnJobDescription.dc.html +85 -0
  852. package/templates/vn-job-description/ds-base.js +23 -0
  853. package/templates/vn-job-description/support.js +1841 -0
  854. package/templates/vn-labor-contract/.thumbnail +0 -0
  855. package/templates/vn-labor-contract/VnLaborContract.dc.html +180 -0
  856. package/templates/vn-labor-contract/ds-base.js +23 -0
  857. package/templates/vn-labor-contract/support.js +1841 -0
  858. package/templates/vn-labour-management-book/.thumbnail +0 -0
  859. package/templates/vn-labour-management-book/VnLabourManagementBook.dc.html +115 -0
  860. package/templates/vn-labour-management-book/ds-base.js +23 -0
  861. package/templates/vn-labour-management-book/support.js +1841 -0
  862. package/templates/vn-mutual-nda/.thumbnail +0 -0
  863. package/templates/vn-mutual-nda/VnMutualNda.dc.html +114 -0
  864. package/templates/vn-mutual-nda/ds-base.js +23 -0
  865. package/templates/vn-mutual-nda/support.js +1841 -0
  866. package/templates/vn-ndnca-ip/.thumbnail +0 -0
  867. package/templates/vn-ndnca-ip/VnNdncaIp.dc.html +157 -0
  868. package/templates/vn-ndnca-ip/ds-base.js +23 -0
  869. package/templates/vn-ndnca-ip/support.js +1841 -0
  870. package/templates/vn-offer-letter/.thumbnail +0 -0
  871. package/templates/vn-offer-letter/VnOfferLetter.dc.html +84 -0
  872. package/templates/vn-offer-letter/ds-base.js +23 -0
  873. package/templates/vn-offer-letter/support.js +1841 -0
  874. package/templates/vn-onboarding-checklist/.thumbnail +0 -0
  875. package/templates/vn-onboarding-checklist/VnOnboardingChecklist.dc.html +98 -0
  876. package/templates/vn-onboarding-checklist/content-schema.json +12 -0
  877. package/templates/vn-onboarding-checklist/ds-base.js +23 -0
  878. package/templates/vn-onboarding-checklist/support.js +1841 -0
  879. package/templates/vn-pdpl-consent/.thumbnail +0 -0
  880. package/templates/vn-pdpl-consent/VnPdplConsent.dc.html +111 -0
  881. package/templates/vn-pdpl-consent/ds-base.js +23 -0
  882. package/templates/vn-pdpl-consent/support.js +1841 -0
  883. package/templates/vn-performance-evaluation-regulation/.thumbnail +0 -0
  884. package/templates/vn-performance-evaluation-regulation/VnPerformanceEvaluationRegulation.dc.html +135 -0
  885. package/templates/vn-performance-evaluation-regulation/ds-base.js +23 -0
  886. package/templates/vn-performance-evaluation-regulation/support.js +1841 -0
  887. package/templates/vn-performance-review-form/.thumbnail +0 -0
  888. package/templates/vn-performance-review-form/VnPerformanceReviewForm.dc.html +129 -0
  889. package/templates/vn-performance-review-form/ds-base.js +23 -0
  890. package/templates/vn-performance-review-form/support.js +1841 -0
  891. package/templates/vn-phantom-stock/.thumbnail +0 -0
  892. package/templates/vn-phantom-stock/VnPhantomStock.dc.html +184 -0
  893. package/templates/vn-phantom-stock/content-schema.json +17 -0
  894. package/templates/vn-phantom-stock/ds-base.js +23 -0
  895. package/templates/vn-phantom-stock/support.js +1841 -0
  896. package/templates/vn-probation-contract/.thumbnail +0 -0
  897. package/templates/vn-probation-contract/VnProbationContract.dc.html +126 -0
  898. package/templates/vn-probation-contract/ds-base.js +23 -0
  899. package/templates/vn-probation-contract/support.js +1841 -0
  900. package/templates/vn-receipt-acknowledgement/.thumbnail +0 -0
  901. package/templates/vn-receipt-acknowledgement/VnReceiptAcknowledgement.dc.html +106 -0
  902. package/templates/vn-receipt-acknowledgement/ds-base.js +23 -0
  903. package/templates/vn-receipt-acknowledgement/support.js +1841 -0
  904. package/templates/vn-remote-work-policy/.thumbnail +0 -0
  905. package/templates/vn-remote-work-policy/VnRemoteWorkPolicy.dc.html +103 -0
  906. package/templates/vn-remote-work-policy/ds-base.js +23 -0
  907. package/templates/vn-remote-work-policy/support.js +1841 -0
  908. package/templates/vn-resignation-letter/.thumbnail +0 -0
  909. package/templates/vn-resignation-letter/VnResignationLetter.dc.html +71 -0
  910. package/templates/vn-resignation-letter/ds-base.js +23 -0
  911. package/templates/vn-resignation-letter/support.js +1841 -0
  912. package/templates/vn-salary-scale/.thumbnail +0 -0
  913. package/templates/vn-salary-scale/VnSalaryScale.dc.html +110 -0
  914. package/templates/vn-salary-scale/ds-base.js +23 -0
  915. package/templates/vn-salary-scale/support.js +1841 -0
  916. package/templates/vn-sow-appendix/.thumbnail +0 -0
  917. package/templates/vn-sow-appendix/VnSowAppendix.dc.html +70 -0
  918. package/templates/vn-sow-appendix/ds-base.js +23 -0
  919. package/templates/vn-sow-appendix/support.js +1841 -0
  920. package/templates/vn-termination-decision/.thumbnail +0 -0
  921. package/templates/vn-termination-decision/VnTerminationDecision.dc.html +80 -0
  922. package/templates/vn-termination-decision/ds-base.js +23 -0
  923. package/templates/vn-termination-decision/support.js +1841 -0
  924. package/templates/vn-total-rewards-appendix/.thumbnail +0 -0
  925. package/templates/vn-total-rewards-appendix/VnTotalRewardsAppendix.dc.html +138 -0
  926. package/templates/vn-total-rewards-appendix/ds-base.js +23 -0
  927. package/templates/vn-total-rewards-appendix/support.js +1841 -0
  928. package/templates/vn-training-commitment/.thumbnail +0 -0
  929. package/templates/vn-training-commitment/VnTrainingCommitment.dc.html +105 -0
  930. package/templates/vn-training-commitment/ds-base.js +23 -0
  931. package/templates/vn-training-commitment/support.js +1841 -0
  932. package/templates/vn-travel-expense-policy/.thumbnail +0 -0
  933. package/templates/vn-travel-expense-policy/VnTravelExpensePolicy.dc.html +113 -0
  934. package/templates/vn-travel-expense-policy/ds-base.js +23 -0
  935. package/templates/vn-travel-expense-policy/support.js +1841 -0
  936. package/tokens/colors.css +77 -0
  937. package/tokens/component-tokens.css +46 -0
  938. package/tokens/elements.css +300 -0
  939. package/tokens/elevation.css +46 -0
  940. package/tokens/fonts.css +51 -0
  941. package/tokens/motion.css +25 -0
  942. package/tokens/native/CSTokens.kt +255 -0
  943. package/tokens/native/CSTokens.swift +257 -0
  944. package/tokens/native/cs_tokens.dart +253 -0
  945. package/tokens/provenance.json +52 -0
  946. package/tokens/spacing.css +34 -0
  947. package/tokens/tokens.dtcg.json +1222 -0
  948. package/tokens/tokens.js +436 -0
  949. package/tokens/tokens.json +434 -0
  950. package/tokens/typography.css +67 -0
  951. package/tokens/viewer.html +261 -0
  952. package/ui_kits/deck/README.md +21 -0
  953. package/ui_kits/deck/index.html +120 -0
  954. package/ui_kits/status-hub/README.md +40 -0
  955. package/ui_kits/status-hub/StatusHub.jsx +270 -0
  956. package/ui_kits/status-hub/data.js +57 -0
  957. package/ui_kits/status-hub/identity-lab.html +134 -0
  958. package/ui_kits/status-hub/index.html +24 -0
  959. package/ui_kits/status-hub/login.html +65 -0
  960. package/ui_kits/status-hub/project.html +137 -0
  961. package/ui_kits/status-hub/settings.html +88 -0
  962. package/ui_kits/status-hub/status.css +199 -0
  963. package/ui_kits/website/README.md +36 -0
  964. package/ui_kits/website/Website.jsx +167 -0
  965. package/ui_kits/website/careers.html +109 -0
  966. package/ui_kits/website/chat.html +133 -0
  967. package/ui_kits/website/copy.js +76 -0
  968. package/ui_kits/website/index.html +24 -0
  969. package/ui_kits/website/site.css +121 -0
  970. package/ui_kits/website/work.html +119 -0
@@ -0,0 +1,1222 @@
1
+ {
2
+ "$description": "CyberSkill Design System — design tokens in W3C DTCG format (design-tokens.github.io). Importable by Tokens Studio for Figma, Style Dictionary, and other DTCG-aware tools. Token keys are the literal CSS custom-property names for lossless round-trip to styles.css. Generated from tokens/*.css via tokens/tokens.json — regenerate after any token change.",
3
+ "$extensions": {
4
+ "com.cyberskill": {
5
+ "system": "CyberSkill Design System",
6
+ "version": "1.0.0",
7
+ "generated": "2026-07-23",
8
+ "source": "tokens/tokens.json",
9
+ "note": "Scope overrides (dark/system theme · 15 element×variant packs) are carried under $extensions.overrides keyed by CSS selector — apply the matching selector on :root/ancestor to activate.",
10
+ "overrides": {
11
+ "themes": {
12
+ "dark": {
13
+ "--cs-color-surface-page": "#1a1108",
14
+ "--cs-color-surface-panel": "#221710",
15
+ "--cs-color-surface-raised": "#2b1e14",
16
+ "--cs-color-text-primary": "#f5ead9",
17
+ "--cs-color-text-inverse": "#1a1108",
18
+ "--cs-color-text-accent": "#f4ba17",
19
+ "--cs-color-text-muted": "#c9b7a3",
20
+ "--cs-color-semantic-success": "#4ADE80",
21
+ "--cs-color-semantic-danger": "#F87171",
22
+ "--cs-color-semantic-warning": "#FBBF24",
23
+ "--cs-color-semantic-info": "#7CB2FB",
24
+ "--cs-color-border-default": "#4a3a2c",
25
+ "--cs-color-link": "#f4ba17",
26
+ "--cs-color-link-hover": "#f5ead9",
27
+ "--cs-component-button-primary-bg": "#f4ba17",
28
+ "--cs-component-button-primary-fg": "#1a1108",
29
+ "--cs-component-textfield-border-default": "#5a4636",
30
+ "--cs-shadow-xs": "0 1px 2px rgba(0, 0, 0, 0.40)",
31
+ "--cs-shadow-sm": "0 1px 3px rgba(0, 0, 0, 0.34), 0 8px 24px rgba(0, 0, 0, 0.42)",
32
+ "--cs-shadow-md": "0 12px 30px rgba(0, 0, 0, 0.50)",
33
+ "--cs-shadow-lg": "0 20px 60px rgba(0, 0, 0, 0.55)",
34
+ "--cs-shadow-xl": "0 24px 80px rgba(0, 0, 0, 0.62)"
35
+ },
36
+ "system": {
37
+ "--cs-color-surface-page": "#1a1108",
38
+ "--cs-color-surface-panel": "#221710",
39
+ "--cs-color-surface-raised": "#2b1e14",
40
+ "--cs-color-text-primary": "#f5ead9",
41
+ "--cs-color-text-inverse": "#1a1108",
42
+ "--cs-color-text-accent": "#f4ba17",
43
+ "--cs-color-text-muted": "#c9b7a3",
44
+ "--cs-color-semantic-success": "#4ADE80",
45
+ "--cs-color-semantic-danger": "#F87171",
46
+ "--cs-color-semantic-warning": "#FBBF24",
47
+ "--cs-color-semantic-info": "#7CB2FB",
48
+ "--cs-color-border-default": "#4a3a2c",
49
+ "--cs-color-link": "#f4ba17",
50
+ "--cs-color-link-hover": "#f5ead9",
51
+ "--cs-component-button-primary-bg": "#f4ba17",
52
+ "--cs-component-button-primary-fg": "#1a1108",
53
+ "--cs-component-textfield-border-default": "#5a4636",
54
+ "--cs-shadow-xs": "0 1px 2px rgba(0, 0, 0, 0.40)",
55
+ "--cs-shadow-sm": "0 1px 3px rgba(0, 0, 0, 0.34), 0 8px 24px rgba(0, 0, 0, 0.42)",
56
+ "--cs-shadow-md": "0 12px 30px rgba(0, 0, 0, 0.50)",
57
+ "--cs-shadow-lg": "0 20px 60px rgba(0, 0, 0, 0.55)",
58
+ "--cs-shadow-xl": "0 24px 80px rgba(0, 0, 0, 0.62)"
59
+ }
60
+ },
61
+ "elements": {
62
+ "tho": {
63
+ "--cs-accent": "#F4BA17",
64
+ "--cs-accent-strong": "#B98200",
65
+ "--cs-accent-bright": "#F4BA17",
66
+ "--cs-accent-on": "#45210E",
67
+ "--cs-accent-tint": "#FBF4E9",
68
+ "--cs-accent-ink": "#45210E",
69
+ "--cs-accent-glow": "rgba(244, 186, 23, 0.5)",
70
+ "--cs-accent-grad-a": "#F4BA17",
71
+ "--cs-accent-grad-b": "#C77B4A"
72
+ },
73
+ "tho.clay": {
74
+ "--cs-accent": "#C77B4A",
75
+ "--cs-accent-strong": "#8F5230",
76
+ "--cs-accent-bright": "#EDBF9D",
77
+ "--cs-accent-on": "#2E1607",
78
+ "--cs-accent-tint": "#F8EDE4",
79
+ "--cs-accent-ink": "#2E1607",
80
+ "--cs-accent-glow": "rgba(199, 123, 74, 0.5)",
81
+ "--cs-accent-grad-a": "#C77B4A",
82
+ "--cs-accent-grad-b": "#F4BA17",
83
+ "--cs-color-text-accent": "#8F5230",
84
+ "--cs-color-link": "#8F5230"
85
+ },
86
+ "tho.sand": {
87
+ "--cs-accent": "#E4C98F",
88
+ "--cs-accent-strong": "#A98B4E",
89
+ "--cs-accent-bright": "#EFDCB2",
90
+ "--cs-accent-on": "#3A2A10",
91
+ "--cs-accent-tint": "#FAF3E3",
92
+ "--cs-accent-ink": "#3A2A10",
93
+ "--cs-accent-glow": "rgba(228, 201, 143, 0.55)",
94
+ "--cs-accent-grad-a": "#E4C98F",
95
+ "--cs-accent-grad-b": "#F4BA17",
96
+ "--cs-color-text-accent": "#8A6F3C",
97
+ "--cs-color-link": "#8A6F3C"
98
+ },
99
+ "hoa": {
100
+ "--cs-accent": "#E0632B",
101
+ "--cs-accent-strong": "#A93E14",
102
+ "--cs-accent-bright": "#F6A26B",
103
+ "--cs-accent-on": "#231007",
104
+ "--cs-accent-tint": "#FBEADF",
105
+ "--cs-accent-ink": "#231007",
106
+ "--cs-accent-glow": "rgba(224, 99, 43, 0.5)",
107
+ "--cs-accent-grad-a": "#E0632B",
108
+ "--cs-accent-grad-b": "#F4BA17",
109
+ "--cs-color-text-accent": "#A93E14",
110
+ "--cs-color-link": "#A93E14"
111
+ },
112
+ "hoa.lava": {
113
+ "--cs-accent": "#C43D1F",
114
+ "--cs-accent-strong": "#7E1F0E",
115
+ "--cs-accent-bright": "#F6AC85",
116
+ "--cs-accent-on": "#1D0B05",
117
+ "--cs-accent-tint": "#FAE5DC",
118
+ "--cs-accent-ink": "#1D0B05",
119
+ "--cs-accent-glow": "rgba(196, 61, 31, 0.55)",
120
+ "--cs-accent-grad-a": "#C43D1F",
121
+ "--cs-accent-grad-b": "#E0632B",
122
+ "--cs-color-text-accent": "#9B2D14",
123
+ "--cs-color-link": "#9B2D14"
124
+ },
125
+ "hoa.plasma": {
126
+ "--cs-accent": "#E8506E",
127
+ "--cs-accent-strong": "#B02348",
128
+ "--cs-accent-bright": "#F7A8B8",
129
+ "--cs-accent-on": "#200812",
130
+ "--cs-accent-tint": "#FBE6EB",
131
+ "--cs-accent-ink": "#200812",
132
+ "--cs-accent-glow": "rgba(232, 80, 110, 0.5)",
133
+ "--cs-accent-grad-a": "#E8506E",
134
+ "--cs-accent-grad-b": "#F08A52",
135
+ "--cs-color-text-accent": "#B02348",
136
+ "--cs-color-link": "#B02348"
137
+ },
138
+ "thuy": {
139
+ "--cs-accent": "#4E8E9B",
140
+ "--cs-accent-strong": "#2F5E6B",
141
+ "--cs-accent-bright": "#A6D0DA",
142
+ "--cs-accent-on": "#0E1D20",
143
+ "--cs-accent-tint": "#E6F1F2",
144
+ "--cs-accent-ink": "#0E1D20",
145
+ "--cs-accent-glow": "rgba(78, 142, 155, 0.5)",
146
+ "--cs-accent-grad-a": "#4E8E9B",
147
+ "--cs-accent-grad-b": "#7A9B57",
148
+ "--cs-color-text-accent": "#2F5E6B",
149
+ "--cs-color-link": "#2F5E6B"
150
+ },
151
+ "thuy.ocean": {
152
+ "--cs-accent": "#2E5E7E",
153
+ "--cs-accent-strong": "#1C3E56",
154
+ "--cs-accent-bright": "#A9CCE0",
155
+ "--cs-accent-on": "#0B161E",
156
+ "--cs-accent-tint": "#E4EEF4",
157
+ "--cs-accent-ink": "#0B161E",
158
+ "--cs-accent-glow": "rgba(46, 94, 126, 0.55)",
159
+ "--cs-accent-grad-a": "#2E5E7E",
160
+ "--cs-accent-grad-b": "#4E8E9B",
161
+ "--cs-color-text-accent": "#1C3E56",
162
+ "--cs-color-link": "#1C3E56"
163
+ },
164
+ "thuy.mist": {
165
+ "--cs-accent": "#A7C4C9",
166
+ "--cs-accent-strong": "#5E7F85",
167
+ "--cs-accent-bright": "#C4DADD",
168
+ "--cs-accent-on": "#16262A",
169
+ "--cs-accent-tint": "#F0F6F7",
170
+ "--cs-accent-ink": "#16262A",
171
+ "--cs-accent-glow": "rgba(167, 196, 201, 0.55)",
172
+ "--cs-accent-grad-a": "#A7C4C9",
173
+ "--cs-accent-grad-b": "#4E8E9B",
174
+ "--cs-color-text-accent": "#4A686E",
175
+ "--cs-color-link": "#4A686E"
176
+ },
177
+ "moc": {
178
+ "--cs-accent": "#7A9B57",
179
+ "--cs-accent-strong": "#4C6B35",
180
+ "--cs-accent-bright": "#A9C177",
181
+ "--cs-accent-on": "#18200F",
182
+ "--cs-accent-tint": "#EEF3E2",
183
+ "--cs-accent-ink": "#18200F",
184
+ "--cs-accent-glow": "rgba(122, 155, 87, 0.5)",
185
+ "--cs-accent-grad-a": "#7A9B57",
186
+ "--cs-accent-grad-b": "#E0632B",
187
+ "--cs-color-text-accent": "#4C6B35",
188
+ "--cs-color-link": "#4C6B35"
189
+ },
190
+ "moc.bamboo": {
191
+ "--cs-accent": "#A9C177",
192
+ "--cs-accent-strong": "#6B8442",
193
+ "--cs-accent-bright": "#C4D69B",
194
+ "--cs-accent-on": "#1C240F",
195
+ "--cs-accent-tint": "#F3F7E8",
196
+ "--cs-accent-ink": "#1C240F",
197
+ "--cs-accent-glow": "rgba(169, 193, 119, 0.55)",
198
+ "--cs-accent-grad-a": "#A9C177",
199
+ "--cs-accent-grad-b": "#7A9B57",
200
+ "--cs-color-text-accent": "#5B7237",
201
+ "--cs-color-link": "#5B7237"
202
+ },
203
+ "moc.forest": {
204
+ "--cs-accent": "#3E5A2E",
205
+ "--cs-accent-strong": "#263A1B",
206
+ "--cs-accent-bright": "#B3CE9B",
207
+ "--cs-accent-on": "#101708",
208
+ "--cs-accent-tint": "#E9EFE1",
209
+ "--cs-accent-ink": "#101708",
210
+ "--cs-accent-glow": "rgba(62, 90, 46, 0.55)",
211
+ "--cs-accent-grad-a": "#3E5A2E",
212
+ "--cs-accent-grad-b": "#7A9B57",
213
+ "--cs-color-text-accent": "#31481F",
214
+ "--cs-color-link": "#31481F"
215
+ },
216
+ "kim": {
217
+ "--cs-accent": "#BFB29B",
218
+ "--cs-accent-strong": "#7E7160",
219
+ "--cs-accent-bright": "#D8CCB6",
220
+ "--cs-accent-on": "#221C12",
221
+ "--cs-accent-tint": "#F3EFE6",
222
+ "--cs-accent-ink": "#221C12",
223
+ "--cs-accent-glow": "rgba(191, 178, 155, 0.5)",
224
+ "--cs-accent-grad-a": "#BFB29B",
225
+ "--cs-accent-grad-b": "#4E8E9B",
226
+ "--cs-color-text-accent": "#6E6151",
227
+ "--cs-color-link": "#6E6151"
228
+ },
229
+ "kim.steel": {
230
+ "--cs-accent": "#9FA3A3",
231
+ "--cs-accent-strong": "#63696B",
232
+ "--cs-accent-bright": "#C2C6C6",
233
+ "--cs-accent-on": "#191D1E",
234
+ "--cs-accent-tint": "#EFF1F1",
235
+ "--cs-accent-ink": "#191D1E",
236
+ "--cs-accent-glow": "rgba(159, 163, 163, 0.5)",
237
+ "--cs-accent-grad-a": "#9FA3A3",
238
+ "--cs-accent-grad-b": "#BFB29B",
239
+ "--cs-color-text-accent": "#565C5E",
240
+ "--cs-color-link": "#565C5E"
241
+ },
242
+ "kim.titanium": {
243
+ "--cs-accent": "#8A7F72",
244
+ "--cs-accent-strong": "#56504A",
245
+ "--cs-accent-bright": "#D9CFC0",
246
+ "--cs-accent-on": "#171310",
247
+ "--cs-accent-tint": "#EFEBE5",
248
+ "--cs-accent-ink": "#171310",
249
+ "--cs-accent-glow": "rgba(138, 127, 114, 0.5)",
250
+ "--cs-accent-grad-a": "#8A7F72",
251
+ "--cs-accent-grad-b": "#BFB29B",
252
+ "--cs-color-text-accent": "#56504A",
253
+ "--cs-color-link": "#56504A"
254
+ }
255
+ },
256
+ "elementsDark": {
257
+ "tho": {
258
+ "--cs-accent-bright": "#FEC42C",
259
+ "--cs-accent-strong": "#795507",
260
+ "--cs-accent-on": "#f5ead9",
261
+ "--cs-accent-tint": "#2F2203",
262
+ "--cs-accent-ink": "#FEC849"
263
+ },
264
+ "tho-clay": {
265
+ "--cs-accent": "#F3A372",
266
+ "--cs-accent-bright": "#F4C5A3",
267
+ "--cs-accent-strong": "#864927",
268
+ "--cs-accent-on": "#f5ead9",
269
+ "--cs-accent-tint": "#371C0B",
270
+ "--cs-accent-ink": "#F7C8A6"
271
+ },
272
+ "tho-sand": {
273
+ "--cs-accent-strong": "#725615",
274
+ "--cs-accent-on": "#f5ead9",
275
+ "--cs-accent-tint": "#2F2203",
276
+ "--cs-accent-ink": "#EFDCB2"
277
+ },
278
+ "hoa": {
279
+ "--cs-accent": "#FB9E7A",
280
+ "--cs-accent-bright": "#FEC099",
281
+ "--cs-accent-strong": "#9F3405",
282
+ "--cs-accent-on": "#f5ead9",
283
+ "--cs-accent-tint": "#381B10",
284
+ "--cs-accent-ink": "#FEC5A1"
285
+ },
286
+ "hoa-lava": {
287
+ "--cs-accent": "#FE9982",
288
+ "--cs-accent-bright": "#FFBF9E",
289
+ "--cs-accent-on": "#f5ead9",
290
+ "--cs-accent-tint": "#391A13",
291
+ "--cs-accent-ink": "#FFC4A5"
292
+ },
293
+ "hoa-plasma": {
294
+ "--cs-accent": "#FD97A3",
295
+ "--cs-accent-bright": "#FDBECA",
296
+ "--cs-accent-strong": "#A91A43",
297
+ "--cs-accent-on": "#f5ead9",
298
+ "--cs-accent-tint": "#38191D",
299
+ "--cs-accent-ink": "#FDC3CE"
300
+ },
301
+ "thuy": {
302
+ "--cs-accent": "#7FC0CE",
303
+ "--cs-accent-bright": "#ACD7E1",
304
+ "--cs-accent-on": "#f5ead9",
305
+ "--cs-accent-tint": "#042930",
306
+ "--cs-accent-ink": "#AFDAE4"
307
+ },
308
+ "thuy-ocean": {
309
+ "--cs-accent": "#87B9DD",
310
+ "--cs-accent-bright": "#B2D6EA",
311
+ "--cs-accent-on": "#f5ead9",
312
+ "--cs-accent-tint": "#08273A",
313
+ "--cs-accent-ink": "#B2D6EA"
314
+ },
315
+ "thuy-mist": {
316
+ "--cs-accent-strong": "#3F5F65",
317
+ "--cs-accent-on": "#f5ead9",
318
+ "--cs-accent-tint": "#0F282C",
319
+ "--cs-accent-ink": "#C4DADD"
320
+ },
321
+ "moc": {
322
+ "--cs-accent": "#9BBE78",
323
+ "--cs-accent-bright": "#BFD88D",
324
+ "--cs-accent-strong": "#44622D",
325
+ "--cs-accent-on": "#f5ead9",
326
+ "--cs-accent-tint": "#1C290D",
327
+ "--cs-accent-ink": "#C2DB90"
328
+ },
329
+ "moc-bamboo": {
330
+ "--cs-accent-strong": "#4C6421",
331
+ "--cs-accent-on": "#f5ead9",
332
+ "--cs-accent-tint": "#1F280A",
333
+ "--cs-accent-ink": "#C7D99E"
334
+ },
335
+ "moc-forest": {
336
+ "--cs-accent": "#9EBE8D",
337
+ "--cs-accent-bright": "#BDD8A4",
338
+ "--cs-accent-on": "#f5ead9",
339
+ "--cs-accent-tint": "#19290F",
340
+ "--cs-accent-ink": "#C0DBA7"
341
+ },
342
+ "kim": {
343
+ "--cs-accent-strong": "#675A4A",
344
+ "--cs-accent-on": "#f5ead9",
345
+ "--cs-accent-tint": "#2D220F",
346
+ "--cs-accent-ink": "#DBCFB9"
347
+ },
348
+ "kim-steel": {
349
+ "--cs-accent": "#B2B6B6",
350
+ "--cs-accent-bright": "#CCD0D0",
351
+ "--cs-accent-strong": "#555B5D",
352
+ "--cs-accent-on": "#f5ead9",
353
+ "--cs-accent-tint": "#222525",
354
+ "--cs-accent-ink": "#CFD3D3"
355
+ },
356
+ "kim-titanium": {
357
+ "--cs-accent": "#BFB3A5",
358
+ "--cs-accent-on": "#f5ead9",
359
+ "--cs-accent-tint": "#2B2217",
360
+ "--cs-accent-ink": "#D9CFC0"
361
+ }
362
+ }
363
+ }
364
+ }
365
+ },
366
+ "color": {
367
+ "$description": "Core semantic colours (brand, surface, text, semantic, border, link).",
368
+ "--cs-color-brand-umber": {
369
+ "$value": "#45210E",
370
+ "$type": "color"
371
+ },
372
+ "--cs-color-brand-ochre": {
373
+ "$value": "#F4BA17",
374
+ "$type": "color"
375
+ },
376
+ "--cs-color-surface-page": {
377
+ "$value": "#FFFDF8",
378
+ "$type": "color"
379
+ },
380
+ "--cs-color-surface-panel": {
381
+ "$value": "#FFFFFF",
382
+ "$type": "color"
383
+ },
384
+ "--cs-color-surface-raised": {
385
+ "$value": "#FBF4E9",
386
+ "$type": "color"
387
+ },
388
+ "--cs-color-text-primary": {
389
+ "$value": "#45210E",
390
+ "$type": "color"
391
+ },
392
+ "--cs-color-text-inverse": {
393
+ "$value": "#FFFFFF",
394
+ "$type": "color"
395
+ },
396
+ "--cs-color-text-accent": {
397
+ "$value": "#6E3B0E",
398
+ "$type": "color"
399
+ },
400
+ "--cs-color-text-muted": {
401
+ "$value": "#6E5A4C",
402
+ "$type": "color"
403
+ },
404
+ "--cs-color-semantic-success": {
405
+ "$value": "#166534",
406
+ "$type": "color"
407
+ },
408
+ "--cs-color-semantic-danger": {
409
+ "$value": "#B42318",
410
+ "$type": "color"
411
+ },
412
+ "--cs-color-semantic-warning": {
413
+ "$value": "#92400E",
414
+ "$type": "color"
415
+ },
416
+ "--cs-color-semantic-info": {
417
+ "$value": "#1D4ED8",
418
+ "$type": "color"
419
+ },
420
+ "--cs-color-accent-ochre": {
421
+ "$value": "#F4BA17",
422
+ "$type": "color"
423
+ },
424
+ "--cs-color-border-default": {
425
+ "$value": "#E7D9C6",
426
+ "$type": "color"
427
+ },
428
+ "--cs-color-link": {
429
+ "$value": "#6E3B0E",
430
+ "$type": "color"
431
+ },
432
+ "--cs-color-link-hover": {
433
+ "$value": "#45210E",
434
+ "$type": "color"
435
+ }
436
+ },
437
+ "component": {
438
+ "$description": "Component-level design decisions (button, textfield sizing & colour).",
439
+ "--cs-component-button-primary-bg": {
440
+ "$value": "#45210E",
441
+ "$type": "color"
442
+ },
443
+ "--cs-component-button-primary-fg": {
444
+ "$value": "#FFFFFF",
445
+ "$type": "color"
446
+ },
447
+ "--cs-component-button-gap": {
448
+ "$value": "8px",
449
+ "$type": "dimension"
450
+ },
451
+ "--cs-component-button-radius": {
452
+ "$value": "8px",
453
+ "$type": "dimension"
454
+ },
455
+ "--cs-component-button-xs-paddingY": {
456
+ "$value": "4px",
457
+ "$type": "dimension"
458
+ },
459
+ "--cs-component-button-xs-paddingX": {
460
+ "$value": "10px",
461
+ "$type": "dimension"
462
+ },
463
+ "--cs-component-button-xs-minHeight": {
464
+ "$value": "28px",
465
+ "$type": "dimension"
466
+ },
467
+ "--cs-component-button-xs-minWidth": {
468
+ "$value": "28px",
469
+ "$type": "dimension"
470
+ },
471
+ "--cs-component-button-xs-minHeight-coarse": {
472
+ "$value": "36px",
473
+ "$type": "dimension"
474
+ },
475
+ "--cs-component-button-sm-paddingY": {
476
+ "$value": "8px",
477
+ "$type": "dimension"
478
+ },
479
+ "--cs-component-button-sm-paddingX": {
480
+ "$value": "14px",
481
+ "$type": "dimension"
482
+ },
483
+ "--cs-component-button-sm-minHeight": {
484
+ "$value": "36px",
485
+ "$type": "dimension"
486
+ },
487
+ "--cs-component-button-sm-minHeight-coarse": {
488
+ "$value": "40px",
489
+ "$type": "dimension"
490
+ },
491
+ "--cs-component-button-md-paddingY": {
492
+ "$value": "12px",
493
+ "$type": "dimension"
494
+ },
495
+ "--cs-component-button-md-paddingX": {
496
+ "$value": "20px",
497
+ "$type": "dimension"
498
+ },
499
+ "--cs-component-button-md-minHeight": {
500
+ "$value": "44px",
501
+ "$type": "dimension"
502
+ },
503
+ "--cs-component-button-md-minHeight-coarse": {
504
+ "$value": "44px",
505
+ "$type": "dimension"
506
+ },
507
+ "--cs-component-button-lg-paddingY": {
508
+ "$value": "16px",
509
+ "$type": "dimension"
510
+ },
511
+ "--cs-component-button-lg-paddingX": {
512
+ "$value": "28px",
513
+ "$type": "dimension"
514
+ },
515
+ "--cs-component-button-lg-minHeight": {
516
+ "$value": "52px",
517
+ "$type": "dimension"
518
+ },
519
+ "--cs-component-textfield-border-default": {
520
+ "$value": "#BFA58F",
521
+ "$type": "color"
522
+ },
523
+ "--cs-component-textfield-paddingY": {
524
+ "$value": "10px",
525
+ "$type": "dimension"
526
+ },
527
+ "--cs-component-textfield-paddingX": {
528
+ "$value": "12px",
529
+ "$type": "dimension"
530
+ },
531
+ "--cs-component-textfield-minHeight": {
532
+ "$value": "44px",
533
+ "$type": "dimension"
534
+ }
535
+ },
536
+ "accent": {
537
+ "$description": "Ngũ Hành elemental accent role tokens — reskinned per element×variant scope.",
538
+ "--cs-accent": {
539
+ "$value": "#F4BA17",
540
+ "$type": "color"
541
+ },
542
+ "--cs-accent-strong": {
543
+ "$value": "#B98200",
544
+ "$type": "color"
545
+ },
546
+ "--cs-accent-bright": {
547
+ "$value": "#F4BA17",
548
+ "$type": "color"
549
+ },
550
+ "--cs-accent-on": {
551
+ "$value": "#45210E",
552
+ "$type": "color"
553
+ },
554
+ "--cs-accent-tint": {
555
+ "$value": "#FBF4E9",
556
+ "$type": "color"
557
+ },
558
+ "--cs-accent-ink": {
559
+ "$value": "#45210E",
560
+ "$type": "color"
561
+ },
562
+ "--cs-accent-glow": {
563
+ "$value": "rgba(244, 186, 23, 0.5)",
564
+ "$type": "color"
565
+ },
566
+ "--cs-accent-grad-a": {
567
+ "$value": "#F4BA17",
568
+ "$type": "color"
569
+ },
570
+ "--cs-accent-grad-b": {
571
+ "$value": "#C77B4A",
572
+ "$type": "color"
573
+ }
574
+ },
575
+ "depth": {
576
+ "$description": "Elevation/stacking depth scale.",
577
+ "--cs-depth-bg": {
578
+ "$value": "0",
579
+ "$type": "number"
580
+ },
581
+ "--cs-depth-section": {
582
+ "$value": "5",
583
+ "$type": "number"
584
+ },
585
+ "--cs-depth-card": {
586
+ "$value": "10",
587
+ "$type": "number"
588
+ },
589
+ "--cs-depth-nav": {
590
+ "$value": "50",
591
+ "$type": "number"
592
+ },
593
+ "--cs-depth-modal": {
594
+ "$value": "100",
595
+ "$type": "number"
596
+ },
597
+ "--cs-depth-toast": {
598
+ "$value": "200",
599
+ "$type": "number"
600
+ }
601
+ },
602
+ "glass": {
603
+ "$description": "Liquid Glass material scalars — blur / saturate / surface opacity per material tier (tokens/elevation.css).",
604
+ "--cs-glass-whisper-blur": {
605
+ "$value": "8px",
606
+ "$type": "dimension"
607
+ },
608
+ "--cs-glass-whisper-saturate": {
609
+ "$value": 1.1,
610
+ "$type": "number",
611
+ "$description": "Backdrop saturate() multiplier of the whisper glass material. DTCG has no percentage type, so the closest legitimate $type is number (CSS 110% ÷ 100); the raw CSS form is preserved in $extensions[\"com.cyberskill\"].css.",
612
+ "$extensions": {
613
+ "com.cyberskill": {
614
+ "css": "110%"
615
+ }
616
+ }
617
+ },
618
+ "--cs-glass-whisper-opacity": {
619
+ "$value": 0.6,
620
+ "$type": "number",
621
+ "$description": "Surface opacity of the whisper glass material. DTCG has no percentage type, so the closest legitimate $type is number (CSS 60% ÷ 100); the raw CSS form is preserved in $extensions[\"com.cyberskill\"].css.",
622
+ "$extensions": {
623
+ "com.cyberskill": {
624
+ "css": "60%"
625
+ }
626
+ }
627
+ },
628
+ "--cs-glass-light-blur": {
629
+ "$value": "12px",
630
+ "$type": "dimension"
631
+ },
632
+ "--cs-glass-light-saturate": {
633
+ "$value": 1.3,
634
+ "$type": "number",
635
+ "$description": "Backdrop saturate() multiplier of the light glass material. DTCG has no percentage type, so the closest legitimate $type is number (CSS 130% ÷ 100); the raw CSS form is preserved in $extensions[\"com.cyberskill\"].css.",
636
+ "$extensions": {
637
+ "com.cyberskill": {
638
+ "css": "130%"
639
+ }
640
+ }
641
+ },
642
+ "--cs-glass-light-opacity": {
643
+ "$value": 0.7,
644
+ "$type": "number",
645
+ "$description": "Surface opacity of the light glass material. DTCG has no percentage type, so the closest legitimate $type is number (CSS 70% ÷ 100); the raw CSS form is preserved in $extensions[\"com.cyberskill\"].css.",
646
+ "$extensions": {
647
+ "com.cyberskill": {
648
+ "css": "70%"
649
+ }
650
+ }
651
+ },
652
+ "--cs-glass-standard-blur": {
653
+ "$value": "16px",
654
+ "$type": "dimension"
655
+ },
656
+ "--cs-glass-standard-saturate": {
657
+ "$value": 1.5,
658
+ "$type": "number",
659
+ "$description": "Backdrop saturate() multiplier of the standard glass material. DTCG has no percentage type, so the closest legitimate $type is number (CSS 150% ÷ 100); the raw CSS form is preserved in $extensions[\"com.cyberskill\"].css.",
660
+ "$extensions": {
661
+ "com.cyberskill": {
662
+ "css": "150%"
663
+ }
664
+ }
665
+ },
666
+ "--cs-glass-standard-opacity": {
667
+ "$value": 0.8,
668
+ "$type": "number",
669
+ "$description": "Surface opacity of the standard glass material. DTCG has no percentage type, so the closest legitimate $type is number (CSS 80% ÷ 100); the raw CSS form is preserved in $extensions[\"com.cyberskill\"].css.",
670
+ "$extensions": {
671
+ "com.cyberskill": {
672
+ "css": "80%"
673
+ }
674
+ }
675
+ },
676
+ "--cs-glass-heavy-blur": {
677
+ "$value": "24px",
678
+ "$type": "dimension"
679
+ },
680
+ "--cs-glass-heavy-saturate": {
681
+ "$value": 1.8,
682
+ "$type": "number",
683
+ "$description": "Backdrop saturate() multiplier of the heavy glass material. DTCG has no percentage type, so the closest legitimate $type is number (CSS 180% ÷ 100); the raw CSS form is preserved in $extensions[\"com.cyberskill\"].css.",
684
+ "$extensions": {
685
+ "com.cyberskill": {
686
+ "css": "180%"
687
+ }
688
+ }
689
+ },
690
+ "--cs-glass-heavy-opacity": {
691
+ "$value": 0.9,
692
+ "$type": "number",
693
+ "$description": "Surface opacity of the heavy glass material. DTCG has no percentage type, so the closest legitimate $type is number (CSS 90% ÷ 100); the raw CSS form is preserved in $extensions[\"com.cyberskill\"].css.",
694
+ "$extensions": {
695
+ "com.cyberskill": {
696
+ "css": "90%"
697
+ }
698
+ }
699
+ }
700
+ },
701
+ "shadow": {
702
+ "$description": "Elevation shadows (light + dark overrides).",
703
+ "--cs-shadow-xs": {
704
+ "$value": {
705
+ "color": "rgba(69, 33, 14, 0.06)",
706
+ "offsetX": "0px",
707
+ "offsetY": "1px",
708
+ "blur": "2px",
709
+ "spread": "0px"
710
+ },
711
+ "$type": "shadow",
712
+ "$description": "Structured from the CSS box-shadow string in tokens/elevation.css; the raw CSS form (native/agent emission source) is preserved in $extensions[\"com.cyberskill\"].css.",
713
+ "$extensions": {
714
+ "com.cyberskill": {
715
+ "css": "0 1px 2px rgba(69, 33, 14, 0.06)"
716
+ }
717
+ }
718
+ },
719
+ "--cs-shadow-sm": {
720
+ "$value": [
721
+ {
722
+ "color": "rgba(69, 33, 14, 0.04)",
723
+ "offsetX": "0px",
724
+ "offsetY": "1px",
725
+ "blur": "3px",
726
+ "spread": "0px"
727
+ },
728
+ {
729
+ "color": "rgba(69, 33, 14, 0.06)",
730
+ "offsetX": "0px",
731
+ "offsetY": "8px",
732
+ "blur": "24px",
733
+ "spread": "0px"
734
+ }
735
+ ],
736
+ "$type": "shadow",
737
+ "$description": "Structured from the CSS box-shadow string in tokens/elevation.css; the raw CSS form (native/agent emission source) is preserved in $extensions[\"com.cyberskill\"].css.",
738
+ "$extensions": {
739
+ "com.cyberskill": {
740
+ "css": "0 1px 3px rgba(69, 33, 14, 0.04), 0 8px 24px rgba(69, 33, 14, 0.06)"
741
+ }
742
+ }
743
+ },
744
+ "--cs-shadow-md": {
745
+ "$value": {
746
+ "color": "rgba(31, 19, 11, 0.18)",
747
+ "offsetX": "0px",
748
+ "offsetY": "12px",
749
+ "blur": "30px",
750
+ "spread": "0px"
751
+ },
752
+ "$type": "shadow",
753
+ "$description": "Structured from the CSS box-shadow string in tokens/elevation.css; the raw CSS form (native/agent emission source) is preserved in $extensions[\"com.cyberskill\"].css.",
754
+ "$extensions": {
755
+ "com.cyberskill": {
756
+ "css": "0 12px 30px rgba(31, 19, 11, 0.18)"
757
+ }
758
+ }
759
+ },
760
+ "--cs-shadow-lg": {
761
+ "$value": {
762
+ "color": "rgba(69, 33, 14, 0.18)",
763
+ "offsetX": "0px",
764
+ "offsetY": "20px",
765
+ "blur": "60px",
766
+ "spread": "0px"
767
+ },
768
+ "$type": "shadow",
769
+ "$description": "Structured from the CSS box-shadow string in tokens/elevation.css; the raw CSS form (native/agent emission source) is preserved in $extensions[\"com.cyberskill\"].css.",
770
+ "$extensions": {
771
+ "com.cyberskill": {
772
+ "css": "0 20px 60px rgba(69, 33, 14, 0.18)"
773
+ }
774
+ }
775
+ },
776
+ "--cs-shadow-xl": {
777
+ "$value": {
778
+ "color": "rgba(31, 19, 11, 0.26)",
779
+ "offsetX": "0px",
780
+ "offsetY": "24px",
781
+ "blur": "80px",
782
+ "spread": "0px"
783
+ },
784
+ "$type": "shadow",
785
+ "$description": "Structured from the CSS box-shadow string in tokens/elevation.css; the raw CSS form (native/agent emission source) is preserved in $extensions[\"com.cyberskill\"].css.",
786
+ "$extensions": {
787
+ "com.cyberskill": {
788
+ "css": "0 24px 80px rgba(31, 19, 11, 0.26)"
789
+ }
790
+ }
791
+ }
792
+ },
793
+ "duration": {
794
+ "$description": "Motion durations (tokens/motion.css :root). Real values — the prefers-reduced-motion override collapses them to 0ms at runtime only, never in exports.",
795
+ "--cs-duration-instant": {
796
+ "$value": "80ms",
797
+ "$type": "duration"
798
+ },
799
+ "--cs-duration-fast": {
800
+ "$value": "120ms",
801
+ "$type": "duration"
802
+ },
803
+ "--cs-duration-base": {
804
+ "$value": "200ms",
805
+ "$type": "duration"
806
+ },
807
+ "--cs-duration-slow": {
808
+ "$value": "320ms",
809
+ "$type": "duration"
810
+ }
811
+ },
812
+ "ease": {
813
+ "--cs-ease-standard": {
814
+ "$value": [
815
+ 0.2,
816
+ 0,
817
+ 0,
818
+ 1
819
+ ],
820
+ "$type": "cubicBezier"
821
+ },
822
+ "--cs-ease-entrance": {
823
+ "$value": [
824
+ 0,
825
+ 0,
826
+ 0,
827
+ 1
828
+ ],
829
+ "$type": "cubicBezier"
830
+ },
831
+ "--cs-ease-exit": {
832
+ "$value": [
833
+ 0.4,
834
+ 0,
835
+ 1,
836
+ 1
837
+ ],
838
+ "$type": "cubicBezier"
839
+ },
840
+ "--cs-ease-emphasized": {
841
+ "$value": [
842
+ 0.2,
843
+ 0,
844
+ 0,
845
+ 1
846
+ ],
847
+ "$type": "cubicBezier"
848
+ }
849
+ },
850
+ "space": {
851
+ "$description": "Spacing scale.",
852
+ "--cs-space-0": {
853
+ "$value": "0px",
854
+ "$type": "dimension"
855
+ },
856
+ "--cs-space-1": {
857
+ "$value": "4px",
858
+ "$type": "dimension"
859
+ },
860
+ "--cs-space-2": {
861
+ "$value": "8px",
862
+ "$type": "dimension"
863
+ },
864
+ "--cs-space-3": {
865
+ "$value": "12px",
866
+ "$type": "dimension"
867
+ },
868
+ "--cs-space-4": {
869
+ "$value": "16px",
870
+ "$type": "dimension"
871
+ },
872
+ "--cs-space-5": {
873
+ "$value": "20px",
874
+ "$type": "dimension"
875
+ },
876
+ "--cs-space-6": {
877
+ "$value": "24px",
878
+ "$type": "dimension"
879
+ },
880
+ "--cs-space-8": {
881
+ "$value": "32px",
882
+ "$type": "dimension"
883
+ },
884
+ "--cs-space-10": {
885
+ "$value": "40px",
886
+ "$type": "dimension"
887
+ },
888
+ "--cs-space-12": {
889
+ "$value": "48px",
890
+ "$type": "dimension"
891
+ },
892
+ "--cs-space-16": {
893
+ "$value": "64px",
894
+ "$type": "dimension"
895
+ },
896
+ "--cs-space-20": {
897
+ "$value": "80px",
898
+ "$type": "dimension"
899
+ },
900
+ "--cs-space-24": {
901
+ "$value": "96px",
902
+ "$type": "dimension"
903
+ }
904
+ },
905
+ "radius": {
906
+ "$description": "Corner radius scale.",
907
+ "--cs-radius-sm": {
908
+ "$value": "4px",
909
+ "$type": "dimension"
910
+ },
911
+ "--cs-radius-md": {
912
+ "$value": "8px",
913
+ "$type": "dimension"
914
+ },
915
+ "--cs-radius-lg": {
916
+ "$value": "14px",
917
+ "$type": "dimension"
918
+ },
919
+ "--cs-radius-full": {
920
+ "$value": "999px",
921
+ "$type": "dimension"
922
+ }
923
+ },
924
+ "breakpoint": {
925
+ "$description": "Responsive breakpoints.",
926
+ "--cs-breakpoint-xs": {
927
+ "$value": "0px",
928
+ "$type": "dimension"
929
+ },
930
+ "--cs-breakpoint-sm": {
931
+ "$value": "640px",
932
+ "$type": "dimension"
933
+ },
934
+ "--cs-breakpoint-md": {
935
+ "$value": "768px",
936
+ "$type": "dimension"
937
+ },
938
+ "--cs-breakpoint-lg": {
939
+ "$value": "1024px",
940
+ "$type": "dimension"
941
+ },
942
+ "--cs-breakpoint-xl": {
943
+ "$value": "1280px",
944
+ "$type": "dimension"
945
+ },
946
+ "--cs-breakpoint-2xl": {
947
+ "$value": "1536px",
948
+ "$type": "dimension"
949
+ }
950
+ },
951
+ "container": {
952
+ "--cs-container-max": {
953
+ "$value": "1320px",
954
+ "$type": "dimension"
955
+ }
956
+ },
957
+ "font": {
958
+ "$description": "Typography — families, sizes, weights, line-heights, tracking.",
959
+ "--cs-font-family-ui": {
960
+ "$value": [
961
+ "Be Vietnam Pro",
962
+ "ui-sans-serif",
963
+ "system-ui",
964
+ "sans-serif"
965
+ ],
966
+ "$type": "fontFamily"
967
+ },
968
+ "--cs-font-family-mono": {
969
+ "$value": [
970
+ "JetBrains Mono",
971
+ "ui-monospace",
972
+ "SFMono-Regular",
973
+ "Menlo",
974
+ "Consolas",
975
+ "monospace"
976
+ ],
977
+ "$type": "fontFamily"
978
+ },
979
+ "--cs-font-weight-regular": {
980
+ "$value": "400",
981
+ "$type": "number"
982
+ },
983
+ "--cs-font-weight-medium": {
984
+ "$value": "500",
985
+ "$type": "number"
986
+ },
987
+ "--cs-font-weight-semibold": {
988
+ "$value": "600",
989
+ "$type": "number"
990
+ },
991
+ "--cs-font-weight-bold": {
992
+ "$value": "700",
993
+ "$type": "number"
994
+ },
995
+ "--cs-font-weight-extrabold": {
996
+ "$value": "800",
997
+ "$type": "number"
998
+ },
999
+ "--cs-font-lineHeight-body": {
1000
+ "$value": "1.5",
1001
+ "$type": "number"
1002
+ },
1003
+ "--cs-font-lineHeight-heading": {
1004
+ "$value": "1.35",
1005
+ "$type": "number"
1006
+ },
1007
+ "--cs-font-lineHeight-tight": {
1008
+ "$value": "1.15",
1009
+ "$type": "number"
1010
+ },
1011
+ "--cs-font-size-xs": {
1012
+ "$value": "0.75rem",
1013
+ "$type": "dimension"
1014
+ },
1015
+ "--cs-font-size-sm": {
1016
+ "$value": "0.875rem",
1017
+ "$type": "dimension"
1018
+ },
1019
+ "--cs-font-size-base": {
1020
+ "$value": "1rem",
1021
+ "$type": "dimension"
1022
+ },
1023
+ "--cs-font-size-md": {
1024
+ "$value": "1.125rem",
1025
+ "$type": "dimension"
1026
+ },
1027
+ "--cs-font-size-lg": {
1028
+ "$value": "1.25rem",
1029
+ "$type": "dimension"
1030
+ },
1031
+ "--cs-font-size-xl": {
1032
+ "$value": "1.5rem",
1033
+ "$type": "dimension"
1034
+ },
1035
+ "--cs-font-size-2xl": {
1036
+ "$value": "1.875rem",
1037
+ "$type": "dimension"
1038
+ },
1039
+ "--cs-font-size-3xl": {
1040
+ "$value": "2.25rem",
1041
+ "$type": "dimension"
1042
+ },
1043
+ "--cs-font-size-4xl": {
1044
+ "$value": "3rem",
1045
+ "$type": "dimension"
1046
+ },
1047
+ "--cs-font-size-5xl": {
1048
+ "$value": "3.75rem",
1049
+ "$type": "dimension"
1050
+ }
1051
+ },
1052
+ "text": {
1053
+ "$description": "Semantic type-role aliases into the font size ramp — write intent, not magic numbers (tokens/typography.css).",
1054
+ "--cs-text-display": {
1055
+ "$value": "{font.--cs-font-size-5xl}",
1056
+ "$type": "dimension",
1057
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1058
+ "$extensions": {
1059
+ "com.cyberskill": {
1060
+ "css": "var(--cs-font-size-5xl)"
1061
+ }
1062
+ }
1063
+ },
1064
+ "--cs-text-h1": {
1065
+ "$value": "{font.--cs-font-size-3xl}",
1066
+ "$type": "dimension",
1067
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1068
+ "$extensions": {
1069
+ "com.cyberskill": {
1070
+ "css": "var(--cs-font-size-3xl)"
1071
+ }
1072
+ }
1073
+ },
1074
+ "--cs-text-h2": {
1075
+ "$value": "{font.--cs-font-size-2xl}",
1076
+ "$type": "dimension",
1077
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1078
+ "$extensions": {
1079
+ "com.cyberskill": {
1080
+ "css": "var(--cs-font-size-2xl)"
1081
+ }
1082
+ }
1083
+ },
1084
+ "--cs-text-h3": {
1085
+ "$value": "{font.--cs-font-size-xl}",
1086
+ "$type": "dimension",
1087
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1088
+ "$extensions": {
1089
+ "com.cyberskill": {
1090
+ "css": "var(--cs-font-size-xl)"
1091
+ }
1092
+ }
1093
+ },
1094
+ "--cs-text-h4": {
1095
+ "$value": "{font.--cs-font-size-lg}",
1096
+ "$type": "dimension",
1097
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1098
+ "$extensions": {
1099
+ "com.cyberskill": {
1100
+ "css": "var(--cs-font-size-lg)"
1101
+ }
1102
+ }
1103
+ },
1104
+ "--cs-text-body-lg": {
1105
+ "$value": "{font.--cs-font-size-md}",
1106
+ "$type": "dimension",
1107
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1108
+ "$extensions": {
1109
+ "com.cyberskill": {
1110
+ "css": "var(--cs-font-size-md)"
1111
+ }
1112
+ }
1113
+ },
1114
+ "--cs-text-body": {
1115
+ "$value": "{font.--cs-font-size-base}",
1116
+ "$type": "dimension",
1117
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1118
+ "$extensions": {
1119
+ "com.cyberskill": {
1120
+ "css": "var(--cs-font-size-base)"
1121
+ }
1122
+ }
1123
+ },
1124
+ "--cs-text-secondary": {
1125
+ "$value": "{font.--cs-font-size-sm}",
1126
+ "$type": "dimension",
1127
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1128
+ "$extensions": {
1129
+ "com.cyberskill": {
1130
+ "css": "var(--cs-font-size-sm)"
1131
+ }
1132
+ }
1133
+ },
1134
+ "--cs-text-caption": {
1135
+ "$value": "{font.--cs-font-size-xs}",
1136
+ "$type": "dimension",
1137
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1138
+ "$extensions": {
1139
+ "com.cyberskill": {
1140
+ "css": "var(--cs-font-size-xs)"
1141
+ }
1142
+ }
1143
+ },
1144
+ "--cs-text-eyebrow": {
1145
+ "$value": "{font.--cs-font-size-xs}",
1146
+ "$type": "dimension",
1147
+ "$description": "Semantic type-role alias into the font size ramp; resolves to a dimension. CSS form (var()) preserved in $extensions[\"com.cyberskill\"].css.",
1148
+ "$extensions": {
1149
+ "com.cyberskill": {
1150
+ "css": "var(--cs-font-size-xs)"
1151
+ }
1152
+ }
1153
+ }
1154
+ },
1155
+ "letter": {
1156
+ "--cs-letter-spacing-tight": {
1157
+ "$value": "-0.01em",
1158
+ "$type": "dimension"
1159
+ },
1160
+ "--cs-letter-spacing-normal": {
1161
+ "$value": "0",
1162
+ "$type": "number"
1163
+ },
1164
+ "--cs-letter-spacing-caps": {
1165
+ "$value": "0.08em",
1166
+ "$type": "dimension"
1167
+ }
1168
+ },
1169
+ "heading": {
1170
+ "$description": "Heading treatment roles (tokens/typography.css) — aliases into font/letter primitives. CSS var() forms preserved in $extensions[\"com.cyberskill\"].css.",
1171
+ "--cs-heading-family": {
1172
+ "$value": "{font.--cs-font-family-ui}",
1173
+ "$type": "fontFamily",
1174
+ "$extensions": {
1175
+ "com.cyberskill": {
1176
+ "css": "var(--cs-font-family-ui)"
1177
+ }
1178
+ }
1179
+ },
1180
+ "--cs-heading-weight-strong": {
1181
+ "$value": "{font.--cs-font-weight-extrabold}",
1182
+ "$type": "number",
1183
+ "$extensions": {
1184
+ "com.cyberskill": {
1185
+ "css": "var(--cs-font-weight-extrabold)"
1186
+ }
1187
+ }
1188
+ },
1189
+ "--cs-heading-weight": {
1190
+ "$value": "{font.--cs-font-weight-bold}",
1191
+ "$type": "number",
1192
+ "$extensions": {
1193
+ "com.cyberskill": {
1194
+ "css": "var(--cs-font-weight-bold)"
1195
+ }
1196
+ }
1197
+ },
1198
+ "--cs-heading-tracking": {
1199
+ "$value": "{letter.--cs-letter-spacing-tight}",
1200
+ "$type": "dimension",
1201
+ "$extensions": {
1202
+ "com.cyberskill": {
1203
+ "css": "var(--cs-letter-spacing-tight)"
1204
+ }
1205
+ }
1206
+ }
1207
+ },
1208
+ "icon": {
1209
+ "--cs-icon-sm": {
1210
+ "$value": "16px",
1211
+ "$type": "dimension"
1212
+ },
1213
+ "--cs-icon-md": {
1214
+ "$value": "20px",
1215
+ "$type": "dimension"
1216
+ },
1217
+ "--cs-icon-lg": {
1218
+ "$value": "24px",
1219
+ "$type": "dimension"
1220
+ }
1221
+ }
1222
+ }