@felloinnovations/brand-kit 0.4.0 → 0.5.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 (363) hide show
  1. package/AGENTS.md +198 -24
  2. package/CHANGELOG.md +197 -0
  3. package/README.md +34 -7
  4. package/design-system/01-how-claude-decides.md +26 -17
  5. package/design-system/02-principles.md +11 -6
  6. package/design-system/03-colour.md +134 -47
  7. package/design-system/04-type.md +45 -23
  8. package/design-system/05-space-and-layout.md +175 -52
  9. package/design-system/06-sizing-profiles.md +4 -4
  10. package/design-system/07-scrolling.md +66 -20
  11. package/design-system/08-choosing-components.md +50 -22
  12. package/design-system/09-charts.md +71 -28
  13. package/design-system/10-patterns.md +33 -10
  14. package/design-system/11-page-recipes.md +110 -23
  15. package/design-system/12-content.md +2 -1
  16. package/design-system/13-motion.md +330 -47
  17. package/design-system/14-accessibility.md +47 -24
  18. package/design-system/15-ai-experiences.md +11 -6
  19. package/design-system/16-creativity.md +1 -1
  20. package/design-system/17-decisions.md +357 -1
  21. package/design-system/18-checklist.md +79 -16
  22. package/design-system/19-public-pages.md +6 -4
  23. package/design-system/20-palettes.md +275 -0
  24. package/design-system/README.md +30 -17
  25. package/design-system/components/ActionList/README.md +96 -10
  26. package/design-system/components/ActionList/preview.html +52 -7
  27. package/design-system/components/ActionList/style.css +64 -0
  28. package/design-system/components/ActivityGrid/README.md +38 -2
  29. package/design-system/components/ActivityGrid/preview.html +1 -1
  30. package/design-system/components/ActivityGrid/style.css +35 -0
  31. package/design-system/components/AppShell/README.md +205 -75
  32. package/design-system/components/AppShell/preview.html +339 -58
  33. package/design-system/components/AppShell/style.css +154 -0
  34. package/design-system/components/Avatar/README.md +37 -10
  35. package/design-system/components/Avatar/preview.html +13 -4
  36. package/design-system/components/Avatar/style.css +14 -0
  37. package/design-system/components/Badge/README.md +41 -19
  38. package/design-system/components/Badge/preview.html +13 -10
  39. package/design-system/components/Badge/style.css +23 -0
  40. package/design-system/components/Banner/README.md +30 -9
  41. package/design-system/components/Banner/preview.html +1 -1
  42. package/design-system/components/Banner/style.css +19 -0
  43. package/design-system/components/Breadcrumb/README.md +58 -46
  44. package/design-system/components/Breadcrumb/preview.html +16 -16
  45. package/design-system/components/Breadcrumb/style.css +17 -0
  46. package/design-system/components/Button/README.md +113 -55
  47. package/design-system/components/Button/preview.html +98 -25
  48. package/design-system/components/Button/style.css +86 -0
  49. package/design-system/components/Card/README.md +158 -49
  50. package/design-system/components/Card/preview.html +141 -19
  51. package/design-system/components/Card/style.css +115 -0
  52. package/design-system/components/CardBoard/README.md +58 -37
  53. package/design-system/components/CardBoard/preview.html +26 -29
  54. package/design-system/components/ChatCard/README.md +115 -29
  55. package/design-system/components/ChatCard/preview.html +149 -32
  56. package/design-system/components/ChatCard/style.css +49 -0
  57. package/design-system/components/ChatShell/README.md +116 -0
  58. package/design-system/components/ChatShell/preview.html +201 -0
  59. package/design-system/components/ChatShell/style.css +86 -0
  60. package/design-system/components/ChatTurn/README.md +78 -35
  61. package/design-system/components/ChatTurn/preview.html +60 -28
  62. package/design-system/components/ChatTurn/style.css +50 -0
  63. package/design-system/components/CheckRow/README.md +141 -0
  64. package/design-system/components/CheckRow/preview.html +140 -0
  65. package/design-system/components/CheckRow/style.css +88 -0
  66. package/design-system/components/Checkbox/README.md +58 -22
  67. package/design-system/components/Checkbox/preview.html +112 -50
  68. package/design-system/components/Checkbox/style.css +45 -0
  69. package/design-system/components/Chip/README.md +78 -47
  70. package/design-system/components/Chip/preview.html +29 -4
  71. package/design-system/components/Chip/style.css +17 -0
  72. package/design-system/components/Combobox/README.md +44 -11
  73. package/design-system/components/Combobox/preview.html +35 -12
  74. package/design-system/components/Combobox/style.css +54 -0
  75. package/design-system/components/Composer/README.md +137 -35
  76. package/design-system/components/Composer/preview.html +115 -40
  77. package/design-system/components/Composer/style.css +81 -0
  78. package/design-system/components/ConfirmDialog/README.md +73 -52
  79. package/design-system/components/ConfirmDialog/preview.html +70 -26
  80. package/design-system/components/ConfirmDialog/style.css +5 -0
  81. package/design-system/components/Cover/preview.html +3 -3
  82. package/design-system/components/Cover/style.css +19 -0
  83. package/design-system/components/DateInput/README.md +77 -12
  84. package/design-system/components/DateInput/preview.html +27 -12
  85. package/design-system/components/DateInput/style.css +38 -0
  86. package/design-system/components/Dialog/README.md +112 -44
  87. package/design-system/components/Dialog/preview.html +141 -18
  88. package/design-system/components/Dialog/style.css +74 -0
  89. package/design-system/components/EmptyState/README.md +42 -12
  90. package/design-system/components/EmptyState/preview.html +11 -11
  91. package/design-system/components/EmptyState/style.css +9 -0
  92. package/design-system/components/EntryShell/README.md +73 -48
  93. package/design-system/components/EntryShell/preview.html +60 -27
  94. package/design-system/components/EntryShell/style.css +19 -0
  95. package/design-system/components/FeatureGrid/README.md +61 -39
  96. package/design-system/components/FeatureGrid/preview.html +2 -2
  97. package/design-system/components/FeatureGrid/style.css +20 -0
  98. package/design-system/components/FileUpload/README.md +33 -3
  99. package/design-system/components/FileUpload/preview.html +18 -4
  100. package/design-system/components/FileUpload/style.css +23 -0
  101. package/design-system/components/FilterBar/README.md +114 -0
  102. package/design-system/components/FilterBar/preview.html +82 -0
  103. package/design-system/components/FilterBar/style.css +22 -0
  104. package/design-system/components/Fold/README.md +84 -26
  105. package/design-system/components/Fold/preview.html +77 -34
  106. package/design-system/components/Fold/style.css +48 -0
  107. package/design-system/components/Footer/README.md +62 -39
  108. package/design-system/components/Footer/preview.html +5 -5
  109. package/design-system/components/Footer/style.css +30 -0
  110. package/design-system/components/FunnelBars/README.md +24 -3
  111. package/design-system/components/FunnelBars/preview.html +5 -5
  112. package/design-system/components/FunnelBars/style.css +13 -0
  113. package/design-system/components/GoalBars/README.md +54 -10
  114. package/design-system/components/GoalBars/preview.html +69 -28
  115. package/design-system/components/GoalBars/style.css +51 -0
  116. package/design-system/components/GoalTicks/README.md +74 -58
  117. package/design-system/components/GoalTicks/preview.html +41 -118
  118. package/design-system/components/GoalTicks/style.css +37 -0
  119. package/design-system/components/GoalTubes/README.md +29 -3
  120. package/design-system/components/GoalTubes/preview.html +6 -6
  121. package/design-system/components/GoalTubes/style.css +23 -0
  122. package/design-system/components/Heatmap/README.md +133 -0
  123. package/design-system/components/Heatmap/preview.html +168 -0
  124. package/design-system/components/Heatmap/style.css +119 -0
  125. package/design-system/components/Hero/README.md +58 -40
  126. package/design-system/components/Hero/preview.html +1 -1
  127. package/design-system/components/Hero/style.css +19 -0
  128. package/design-system/components/HoverCard/README.md +114 -0
  129. package/design-system/components/HoverCard/preview.html +107 -0
  130. package/design-system/components/HoverCard/style.css +59 -0
  131. package/design-system/components/IconButton/README.md +69 -38
  132. package/design-system/components/IconButton/preview.html +77 -43
  133. package/design-system/components/IconButton/style.css +45 -0
  134. package/design-system/components/Input/README.md +36 -11
  135. package/design-system/components/Input/preview.html +1 -1
  136. package/design-system/components/Input/style.css +23 -0
  137. package/design-system/components/KanbanBoard/README.md +93 -45
  138. package/design-system/components/KanbanBoard/preview.html +159 -43
  139. package/design-system/components/KanbanBoard/style.css +53 -0
  140. package/design-system/components/Kbd/README.md +25 -9
  141. package/design-system/components/Kbd/preview.html +6 -2
  142. package/design-system/components/Kbd/style.css +9 -0
  143. package/design-system/components/KitButton/README.md +81 -47
  144. package/design-system/components/KitButton/preview.html +35 -13
  145. package/design-system/components/KitButton/style.css +46 -0
  146. package/design-system/components/KitCard/README.md +75 -44
  147. package/design-system/components/KitCard/preview.html +18 -10
  148. package/design-system/components/KitCard/style.css +15 -0
  149. package/design-system/components/KitInput/README.md +54 -39
  150. package/design-system/components/KitInput/preview.html +7 -7
  151. package/design-system/components/KitInput/style.css +23 -0
  152. package/design-system/components/Leaderboard/README.md +76 -49
  153. package/design-system/components/Leaderboard/preview.html +61 -26
  154. package/design-system/components/Leaderboard/style.css +44 -0
  155. package/design-system/components/ListDetail/README.md +222 -0
  156. package/design-system/components/ListDetail/preview.html +213 -0
  157. package/design-system/components/ListDetail/style.css +148 -0
  158. package/design-system/components/LoadBar/README.md +79 -0
  159. package/design-system/components/LoadBar/preview.html +40 -0
  160. package/design-system/components/LoadBar/style.css +17 -0
  161. package/design-system/components/MarketingNav/README.md +76 -42
  162. package/design-system/components/MarketingNav/preview.html +37 -8
  163. package/design-system/components/MarketingNav/style.css +45 -0
  164. package/design-system/components/Matrix/README.md +129 -0
  165. package/design-system/components/Matrix/preview.html +99 -0
  166. package/design-system/components/Matrix/style.css +84 -0
  167. package/design-system/components/Menu/README.md +117 -41
  168. package/design-system/components/Menu/preview.html +85 -23
  169. package/design-system/components/Menu/style.css +61 -0
  170. package/design-system/components/Meter/README.md +39 -4
  171. package/design-system/components/Meter/preview.html +18 -1
  172. package/design-system/components/Meter/style.css +23 -0
  173. package/design-system/components/MetricTile/README.md +237 -0
  174. package/design-system/components/MetricTile/preview.html +241 -0
  175. package/design-system/components/MetricTile/style.css +129 -0
  176. package/design-system/components/Morph/README.md +106 -0
  177. package/design-system/components/Morph/preview.html +103 -0
  178. package/design-system/components/Morph/style.css +31 -0
  179. package/design-system/components/Motion/README.md +164 -0
  180. package/design-system/components/Motion/preview.html +2537 -0
  181. package/design-system/components/NumberInput/README.md +27 -8
  182. package/design-system/components/NumberInput/preview.html +21 -5
  183. package/design-system/components/NumberInput/style.css +34 -0
  184. package/design-system/components/PaceBar/README.md +75 -0
  185. package/design-system/components/PaceBar/preview.html +67 -0
  186. package/design-system/components/PaceBar/style.css +25 -0
  187. package/design-system/components/Page/README.md +57 -18
  188. package/design-system/components/Page/preview.html +15 -17
  189. package/design-system/components/Page/style.css +7 -0
  190. package/design-system/components/PageBar/README.md +90 -34
  191. package/design-system/components/PageBar/preview.html +60 -19
  192. package/design-system/components/PageBar/style.css +35 -0
  193. package/design-system/components/PageHero/README.md +87 -51
  194. package/design-system/components/PageHero/preview.html +35 -6
  195. package/design-system/components/PageHero/style.css +31 -0
  196. package/design-system/components/Pagination/README.md +70 -49
  197. package/design-system/components/Pagination/preview.html +24 -15
  198. package/design-system/components/Pagination/style.css +12 -0
  199. package/design-system/components/Panel/README.md +109 -51
  200. package/design-system/components/Panel/preview.html +118 -20
  201. package/design-system/components/Panel/style.css +51 -0
  202. package/design-system/components/PasswordInput/README.md +50 -18
  203. package/design-system/components/PasswordInput/preview.html +71 -21
  204. package/design-system/components/PasswordInput/style.css +31 -0
  205. package/design-system/components/Plate/README.md +75 -17
  206. package/design-system/components/Plate/preview.html +40 -7
  207. package/design-system/components/Plate/style.css +37 -0
  208. package/design-system/components/Popover/README.md +70 -49
  209. package/design-system/components/Popover/preview.html +44 -22
  210. package/design-system/components/Popover/style.css +41 -0
  211. package/design-system/components/PricingTable/README.md +69 -49
  212. package/design-system/components/PricingTable/preview.html +21 -21
  213. package/design-system/components/PricingTable/style.css +21 -0
  214. package/design-system/components/ProgressPetals/README.md +31 -3
  215. package/design-system/components/ProgressPetals/preview.html +14 -15
  216. package/design-system/components/ProgressPetals/style.css +27 -0
  217. package/design-system/components/README.md +151 -0
  218. package/design-system/components/Radio/README.md +40 -17
  219. package/design-system/components/Radio/preview.html +16 -1
  220. package/design-system/components/Radio/style.css +21 -0
  221. package/design-system/components/RankBar/README.md +29 -2
  222. package/design-system/components/RankBar/preview.html +14 -12
  223. package/design-system/components/RankBar/style.css +18 -0
  224. package/design-system/components/Ring/README.md +61 -11
  225. package/design-system/components/Ring/preview.html +55 -10
  226. package/design-system/components/Ring/style.css +49 -0
  227. package/design-system/components/ScoreHero/README.md +91 -0
  228. package/design-system/components/ScoreHero/preview.html +104 -0
  229. package/design-system/components/ScoreHero/style.css +32 -0
  230. package/design-system/components/Section/README.md +72 -33
  231. package/design-system/components/Section/preview.html +46 -16
  232. package/design-system/components/Section/style.css +18 -0
  233. package/design-system/components/Segmented/README.md +100 -55
  234. package/design-system/components/Segmented/preview.html +107 -26
  235. package/design-system/components/Segmented/style.css +94 -0
  236. package/design-system/components/SegmentedProgress/README.md +64 -0
  237. package/design-system/components/SegmentedProgress/preview.html +69 -0
  238. package/design-system/components/SegmentedProgress/style.css +11 -0
  239. package/design-system/components/Select/README.md +47 -12
  240. package/design-system/components/Select/preview.html +28 -2
  241. package/design-system/components/Select/style.css +22 -0
  242. package/design-system/components/ShareBar/README.md +69 -0
  243. package/design-system/components/ShareBar/preview.html +72 -0
  244. package/design-system/components/ShareBar/style.css +25 -0
  245. package/design-system/components/SideList/README.md +147 -0
  246. package/design-system/components/SideList/preview.html +139 -0
  247. package/design-system/components/SideList/style.css +94 -0
  248. package/design-system/components/Skeleton/README.md +52 -16
  249. package/design-system/components/Skeleton/preview.html +35 -23
  250. package/design-system/components/Skeleton/style.css +22 -0
  251. package/design-system/components/Slider/README.md +95 -0
  252. package/design-system/components/Slider/preview.html +49 -0
  253. package/design-system/components/Slider/style.css +13 -0
  254. package/design-system/components/Split/README.md +112 -0
  255. package/design-system/components/Split/preview.html +105 -0
  256. package/design-system/components/Split/style.css +30 -0
  257. package/design-system/components/Starter/README.md +21 -9
  258. package/design-system/components/Starter/preview.html +5 -5
  259. package/design-system/components/Stat/README.md +64 -43
  260. package/design-system/components/Stat/preview.html +3 -3
  261. package/design-system/components/Stat/style.css +15 -0
  262. package/design-system/components/StatTiles/README.md +88 -44
  263. package/design-system/components/StatTiles/preview.html +142 -71
  264. package/design-system/components/StatTiles/style.css +64 -0
  265. package/design-system/components/StatusLine/README.md +85 -0
  266. package/design-system/components/StatusLine/preview.html +49 -0
  267. package/design-system/components/StatusLine/style.css +14 -0
  268. package/design-system/components/StatusScreen/README.md +49 -35
  269. package/design-system/components/StatusScreen/preview.html +20 -5
  270. package/design-system/components/StatusScreen/style.css +9 -0
  271. package/design-system/components/StepLine/README.md +97 -0
  272. package/design-system/components/StepLine/preview.html +108 -0
  273. package/design-system/components/StepLine/style.css +62 -0
  274. package/design-system/components/Stepper/README.md +35 -13
  275. package/design-system/components/Stepper/style.css +13 -0
  276. package/design-system/components/StreakCalendar/README.md +22 -1
  277. package/design-system/components/StreakCalendar/preview.html +10 -10
  278. package/design-system/components/StreakCalendar/style.css +12 -0
  279. package/design-system/components/SuggestionChip/README.md +87 -0
  280. package/design-system/components/SuggestionChip/preview.html +42 -0
  281. package/design-system/components/SuggestionChip/style.css +20 -0
  282. package/design-system/components/Switch/README.md +44 -24
  283. package/design-system/components/Switch/preview.html +23 -8
  284. package/design-system/components/Switch/style.css +31 -0
  285. package/design-system/components/Table/README.md +129 -58
  286. package/design-system/components/Table/preview.html +106 -72
  287. package/design-system/components/Table/style.css +104 -0
  288. package/design-system/components/Tabs/README.md +71 -46
  289. package/design-system/components/Tabs/preview.html +56 -24
  290. package/design-system/components/Tabs/style.css +44 -0
  291. package/design-system/components/Testimonial/README.md +48 -32
  292. package/design-system/components/Testimonial/preview.html +14 -14
  293. package/design-system/components/Testimonial/style.css +12 -0
  294. package/design-system/components/TextArea/README.md +27 -11
  295. package/design-system/components/TextArea/preview.html +8 -2
  296. package/design-system/components/TextArea/style.css +12 -0
  297. package/design-system/components/ThemeSwitch/README.md +116 -0
  298. package/design-system/components/ThemeSwitch/preview.html +57 -0
  299. package/design-system/components/ThemeSwitch/style.css +6 -0
  300. package/design-system/components/TickRow/README.md +52 -36
  301. package/design-system/components/TickRow/preview.html +64 -41
  302. package/design-system/components/TickRow/style.css +23 -0
  303. package/design-system/components/TickStrip/README.md +95 -0
  304. package/design-system/components/TickStrip/preview.html +88 -0
  305. package/design-system/components/TickStrip/style.css +42 -0
  306. package/design-system/components/Tile/README.md +79 -18
  307. package/design-system/components/Tile/preview.html +91 -40
  308. package/design-system/components/Tile/style.css +36 -0
  309. package/design-system/components/Timeline/README.md +68 -48
  310. package/design-system/components/Timeline/preview.html +27 -15
  311. package/design-system/components/Timeline/style.css +25 -0
  312. package/design-system/components/Toast/README.md +70 -38
  313. package/design-system/components/Toast/preview.html +43 -8
  314. package/design-system/components/Toast/style.css +25 -0
  315. package/design-system/components/Tooltip/README.md +93 -35
  316. package/design-system/components/Tooltip/preview.html +69 -15
  317. package/design-system/components/Tooltip/style.css +78 -0
  318. package/design-system/components/TopBar/README.md +67 -53
  319. package/design-system/components/TopBar/preview.html +14 -27
  320. package/design-system/components/TopBar/style.css +35 -0
  321. package/design-system/components/TopicRail/README.md +108 -0
  322. package/design-system/components/TopicRail/preview.html +58 -0
  323. package/design-system/components/TopicRail/style.css +48 -0
  324. package/design-system/components/TrendBars/README.md +52 -14
  325. package/design-system/components/TrendBars/preview.html +65 -32
  326. package/design-system/components/TrendBars/style.css +25 -0
  327. package/design-system/components/TrendLine/README.md +164 -0
  328. package/design-system/components/TrendLine/preview.html +373 -0
  329. package/design-system/components/TrendLine/style.css +155 -0
  330. package/design-system/components/Well/README.md +64 -22
  331. package/design-system/components/Well/preview.html +14 -14
  332. package/design-system/components/Well/style.css +22 -0
  333. package/design-system/components/_house.css +324 -0
  334. package/design-system/components/bundle.css +4091 -744
  335. package/design-system/tokens.json +1314 -124
  336. package/dist/fello-core.css +2 -2
  337. package/dist/fello.css +6 -1369
  338. package/dist/fello.scoped.css +7 -0
  339. package/dist/index.d.ts +110 -11
  340. package/dist/index.js +781 -96
  341. package/dist/palettes.d.ts +464 -0
  342. package/dist/palettes.js +497 -0
  343. package/dist/scoped.d.ts +3 -0
  344. package/dist/scoped.js +16 -0
  345. package/dist/toast.d.ts +14 -0
  346. package/dist/toast.js +33 -29
  347. package/dist/tokens.d.ts +1686 -62
  348. package/dist/tokens.js +1668 -61
  349. package/package.json +20 -4
  350. package/scripts/check-palette.mjs +295 -0
  351. package/scripts/token-model.mjs +552 -0
  352. package/tokens/_dark.css +174 -0
  353. package/tokens/_palettes.css +46 -0
  354. package/tokens/_product.css +266 -53
  355. package/tokens/_source.hubl.css +39 -19
  356. package/tokens/design-tokens.json +319 -0
  357. package/tokens/palettes.ts +504 -0
  358. package/tokens/shadcn-compat.css +19 -19
  359. package/tokens/shadcn-compat.hsl.css +76 -0
  360. package/tokens/tokens.css +1292 -62
  361. package/tokens/tokens.md +588 -61
  362. package/tokens/tokens.root.css +1298 -62
  363. package/tokens/tokens.ts +1677 -64
@@ -626,5 +626,324 @@
626
626
  "status": "PROVISIONAL",
627
627
  "note": "Big card (2×2) featured stat figure. Chosen at 64px for visual impact over --font-size-5xl (56px). No Figma source — confirm with Anjali/design."
628
628
  }
629
+ },
630
+ "motion": {
631
+ "springs": {
632
+ "$comment": "Seth's tuned springs from the North DialKit config (nn object, app.js@824790; north-motion notes section 3, 4 Nov 2026), for the motion library: {type: 'spring', visualDuration, bounce}. scripts/generate-tokens.mjs writes them to tokens.ts (springs), design-system/tokens.json (spring) and every CSS token file as --ws-spring-<name> (the spring as a linear() curve, sampled from the motion library's own solver, overshoot kept) over --ws-spring-<name>-duration (the time it takes to settle), so CSS moves on the same spring: transition: scale var(--ws-spring-press-duration) var(--ws-spring-press). Things the person drives use a spring; things the system plays use the CSS eases. Wrap every motion tree in <MotionConfig reducedMotion=\"user\">.",
633
+ "press": {
634
+ "visualDuration": 0.2,
635
+ "bounce": 0.3,
636
+ "use": "A button or chip under a press (scale --ws-press-scale)"
637
+ },
638
+ "follow": {
639
+ "visualDuration": 0.22,
640
+ "bounce": 0,
641
+ "use": "A tooltip following the pointer; never bounces"
642
+ },
643
+ "pop": {
644
+ "visualDuration": 0.35,
645
+ "bounce": 0.1,
646
+ "use": "A chart tooltip or tip popping in from --ws-pop-scale"
647
+ },
648
+ "settle": {
649
+ "visualDuration": 0.32,
650
+ "bounce": 0.1,
651
+ "use": "Menus, pickers and messages settling"
652
+ },
653
+ "fold": {
654
+ "visualDuration": 0.32,
655
+ "bounce": 0,
656
+ "use": "A section opening or closing (height and the chevron)"
657
+ },
658
+ "indicator": {
659
+ "visualDuration": 0.38,
660
+ "bounce": 0.16,
661
+ "use": "The Segmented and tab thumb sliding to the chosen item"
662
+ },
663
+ "highlight": {
664
+ "visualDuration": 0.45,
665
+ "bounce": 0.14,
666
+ "use": "A list's selected fill sliding between rows"
667
+ },
668
+ "nav": {
669
+ "visualDuration": 0.4,
670
+ "bounce": 0.1,
671
+ "use": "The sidebar's current-row pill sliding"
672
+ },
673
+ "reorder": {
674
+ "visualDuration": 0.4,
675
+ "bounce": 0,
676
+ "use": "List rows moving to new places"
677
+ },
678
+ "tile": {
679
+ "visualDuration": 0.26,
680
+ "bounce": 0.06,
681
+ "use": "A heatmap square opening to two cells"
682
+ },
683
+ "lane": {
684
+ "visualDuration": 0.46,
685
+ "bounce": 0.04,
686
+ "use": "A lane's detail opening"
687
+ },
688
+ "lens": {
689
+ "visualDuration": 0.45,
690
+ "bounce": 0.04,
691
+ "use": "One chart swapping for another inside an open tile"
692
+ },
693
+ "swap": {
694
+ "visualDuration": 0.6,
695
+ "bounce": 0.06,
696
+ "use": "A board chart going out and the new one coming in"
697
+ },
698
+ "panel": {
699
+ "visualDuration": 0.42,
700
+ "bounce": 0.12,
701
+ "use": "The chat panel opening, moving or docking"
702
+ },
703
+ "card": {
704
+ "visualDuration": 0.5,
705
+ "bounce": 0.08,
706
+ "use": "A chart card arriving in the thread"
707
+ },
708
+ "text": {
709
+ "visualDuration": 0.7,
710
+ "bounce": 0.2,
711
+ "use": "A metric card's words swapping"
712
+ },
713
+ "badge": {
714
+ "visualDuration": 0.3,
715
+ "bounce": 0.4,
716
+ "use": "A count badge popping when it changes"
717
+ },
718
+ "tab": {
719
+ "visualDuration": 0.4,
720
+ "bounce": 0.12,
721
+ "use": "A tab's underline sliding to the chosen tab (North dc-tab)"
722
+ },
723
+ "chip": {
724
+ "visualDuration": 0.25,
725
+ "bounce": 0.1,
726
+ "use": "An attention chip opening into its card"
727
+ },
728
+ "glow": {
729
+ "visualDuration": 0.3,
730
+ "bounce": 0,
731
+ "use": "The composer's focus glow arriving"
732
+ },
733
+ "roll": {
734
+ "visualDuration": 0.45,
735
+ "bounce": 0.05,
736
+ "use": "The composer's placeholder rolling to the next line"
737
+ },
738
+ "flag": {
739
+ "visualDuration": 0.26,
740
+ "bounce": 0.06,
741
+ "use": "A trend read-out following the pointer along a chart"
742
+ },
743
+ "mark": {
744
+ "visualDuration": 0.35,
745
+ "bounce": 0.35,
746
+ "use": "A small mark popping in: the pace dot on an opened square"
747
+ },
748
+ "morphChart": {
749
+ "visualDuration": 0.85,
750
+ "bounce": 0.06,
751
+ "use": "A chart morphing between forms (bars to a line)"
752
+ },
753
+ "orb": {
754
+ "visualDuration": 0.55,
755
+ "bounce": 0.35,
756
+ "use": "An agent's orb arriving, from scale .3 out of a 4 px blur (North js@532276; a stack of them staggers on .5 / .35, js@531354)"
757
+ },
758
+ "default": {
759
+ "visualDuration": 0.4,
760
+ "bounce": 0.15,
761
+ "use": "Anything the person drives that has no tuned spring (North's fallback)"
762
+ }
763
+ }
764
+ },
765
+ "palette": {
766
+ "$comment": "D15 (4 Nov 2026): the palette contract, the only tokens a palette may set. Everything else is derived from these and the kit constants, and recomputes on any element that carries data-palette, data-theme or class=\"fello\". A palette is named for how it looks, never for an app. scripts/generate-tokens.mjs writes this list into tokens.md; scripts/check-palette.mjs checks a palette against it. A palette sets a light value and a dark value for each token it changes; marks keep their exact tone, words take their AA step (D2).",
767
+ "groups": {
768
+ "ground": "What everything sits on. Every word is checked AA on each.",
769
+ "edge": "Hairlines, and the edges under the pointer.",
770
+ "word": "Words, each AA on every ground it can sit on.",
771
+ "act": "The one primary act. Its fill is the heading colour.",
772
+ "accent": "Needs you: the current page, something to fix.",
773
+ "focus": "The keyboard ring, 3:1 on every ground.",
774
+ "status": "Good and bad news, in words.",
775
+ "chart": "The six data tones charts draw with: told apart from each other (CIEDE2000 10 or more) and 3:1 on the chart ground. A tone marked withWords (salmon, pink) is always drawn beside its word, so its ratio is reported, not required: Seth draws them at 2.6:1 and marks keep his exact tone (D2).",
776
+ "rating": "One rating scale on every screen (D10): its marks. Their words are the status and word tokens.",
777
+ "agent": "Each assistant keeps one tone and nothing else names it (03-colour)."
778
+ },
779
+ "tokens": [
780
+ {
781
+ "name": "--color-bg-page",
782
+ "group": "ground",
783
+ "meaning": "The page and every card's surface: the cream most words sit on."
784
+ },
785
+ {
786
+ "name": "--ws-frame-top",
787
+ "group": "ground",
788
+ "meaning": "The top of the page wash behind a glass stage, fading into the page by 640 px; in dark the frame is flat and paints it (the shell, unless a palette says)."
789
+ },
790
+ {
791
+ "name": "--ws-stage-foot",
792
+ "group": "ground",
793
+ "meaning": "The foot of a washed stage, whose gradient starts at the page (light only)."
794
+ },
795
+ {
796
+ "name": "--color-surface",
797
+ "group": "ground",
798
+ "meaning": "What is white: a marketing card, a well row under the pointer, a chat bubble, the glass of the stage."
799
+ },
800
+ {
801
+ "name": "--ws-raised",
802
+ "group": "ground",
803
+ "meaning": "What floats off the page: a menu, a popover, a tooltip, a dialog, a panel, a toast."
804
+ },
805
+ {
806
+ "name": "--ws-tray",
807
+ "group": "ground",
808
+ "meaning": "The rim and foot of a rimmed card, and the well behind rows."
809
+ },
810
+ {
811
+ "name": "--ws-edge-card",
812
+ "group": "edge",
813
+ "meaning": "A card's and an outlined control's 0.5 px edge."
814
+ },
815
+ {
816
+ "name": "--ws-edge",
817
+ "group": "edge",
818
+ "meaning": "A divider between rows; a quiet line."
819
+ },
820
+ {
821
+ "name": "--ws-edge-hover",
822
+ "group": "edge",
823
+ "meaning": "An outlined control's edge under the pointer."
824
+ },
825
+ {
826
+ "name": "--ws-well-hover",
827
+ "group": "edge",
828
+ "meaning": "A rimmed card's rim under the pointer."
829
+ },
830
+ {
831
+ "name": "--color-text-heading",
832
+ "group": "word",
833
+ "meaning": "Titles, names, figures, navy marks, and the act fill (the primary button, a thumb, a checked box)."
834
+ },
835
+ {
836
+ "name": "--color-text-body",
837
+ "group": "word",
838
+ "meaning": "Body words: a card's line, a row."
839
+ },
840
+ {
841
+ "name": "--color-text-muted",
842
+ "group": "word",
843
+ "meaning": "Meta, labels, captions."
844
+ },
845
+ {
846
+ "name": "--color-text-interactive",
847
+ "group": "word",
848
+ "meaning": "Links and words that go somewhere, a falling number, \"working\"."
849
+ },
850
+ {
851
+ "name": "--ws-on-act",
852
+ "group": "act",
853
+ "meaning": "Words and marks on the act fill."
854
+ },
855
+ {
856
+ "name": "--ws-act-hover",
857
+ "group": "act",
858
+ "meaning": "The act fill under the pointer."
859
+ },
860
+ {
861
+ "name": "--ws-word-needs",
862
+ "group": "accent",
863
+ "meaning": "Needs you, in words: the current page, something to fix (the accent's AA step)."
864
+ },
865
+ {
866
+ "name": "--ws-focus-color",
867
+ "group": "focus",
868
+ "meaning": "The 2 px focus ring, outside or inset."
869
+ },
870
+ {
871
+ "name": "--ws-word-positive",
872
+ "group": "status",
873
+ "meaning": "Good news in words."
874
+ },
875
+ {
876
+ "name": "--ws-word-alert",
877
+ "group": "status",
878
+ "meaning": "Something wrong now, in words."
879
+ },
880
+ {
881
+ "name": "--ws-chart-finished",
882
+ "group": "chart",
883
+ "meaning": "Tone 1: done, passed, positive marks."
884
+ },
885
+ {
886
+ "name": "--ws-chart-past-half",
887
+ "group": "chart",
888
+ "meaning": "Tone 2: past halfway marks."
889
+ },
890
+ {
891
+ "name": "--ws-chart-under-half",
892
+ "group": "chart",
893
+ "meaning": "Tone 3: under halfway marks and needs-you dots.",
894
+ "withWords": true
895
+ },
896
+ {
897
+ "name": "--ws-chart-navy-light",
898
+ "group": "chart",
899
+ "meaning": "Tone 4: a second navy, for a series beside the heading navy."
900
+ },
901
+ {
902
+ "name": "--ws-chart-needs-work",
903
+ "group": "chart",
904
+ "meaning": "Tone 5: needs work marks.",
905
+ "withWords": true
906
+ },
907
+ {
908
+ "name": "--ws-chart-alert",
909
+ "group": "chart",
910
+ "meaning": "Tone 6: alert marks."
911
+ },
912
+ {
913
+ "name": "--ws-rating-strong",
914
+ "group": "rating",
915
+ "meaning": "Strong: its marks."
916
+ },
917
+ {
918
+ "name": "--ws-rating-middle",
919
+ "group": "rating",
920
+ "meaning": "Getting there (the middle band): its marks."
921
+ },
922
+ {
923
+ "name": "--ws-rating-needs-work",
924
+ "group": "rating",
925
+ "meaning": "Needs work: its marks."
926
+ },
927
+ {
928
+ "name": "--ws-agent-coach",
929
+ "group": "agent",
930
+ "meaning": "The coaching assistant's mark."
931
+ },
932
+ {
933
+ "name": "--ws-agent-growth",
934
+ "group": "agent",
935
+ "meaning": "The growth assistant's mark."
936
+ },
937
+ {
938
+ "name": "--ws-agent-recruit",
939
+ "group": "agent",
940
+ "meaning": "The recruiting assistant's mark."
941
+ },
942
+ {
943
+ "name": "--ws-agent-tally",
944
+ "group": "agent",
945
+ "meaning": "The money assistant's mark, and a softer act (a figure tab's current cell, a seat meter, a hatch)."
946
+ }
947
+ ]
629
948
  }
630
949
  }