@fairgarden/design 0.1.0-alpha.1 → 0.1.0-alpha.2

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 (517) hide show
  1. package/LICENSE +21 -0
  2. package/Readme.md +51 -27
  3. package/actions/button/Button.d.ts.map +1 -1
  4. package/actions/button/Button.js +13 -1
  5. package/actions/button/Button.js.map +1 -1
  6. package/actions/button/button.module.css +85 -25
  7. package/actions/chip/Chip.d.ts +2 -2
  8. package/actions/chip/Chip.js +2 -2
  9. package/actions/chip/chip.module.css +12 -18
  10. package/actions/link/Link.d.ts +1 -1
  11. package/actions/link/link.module.css +22 -19
  12. package/actions/toggle/Toggle.js +1 -1
  13. package/actions/toggle/toggle.module.css +27 -23
  14. package/content/card/card.module.css +27 -27
  15. package/content/card-grid/CardGrid.js +1 -1
  16. package/content/card-grid/card-grid.module.css +3 -3
  17. package/content/carousel/Carousel.d.ts.map +1 -1
  18. package/content/carousel/Carousel.js +1 -4
  19. package/content/carousel/Carousel.js.map +1 -1
  20. package/content/carousel/carousel.module.css +19 -9
  21. package/content/code-block/CodeActionsMenu.d.ts +34 -0
  22. package/content/code-block/CodeActionsMenu.d.ts.map +1 -0
  23. package/content/code-block/CodeActionsMenu.js +102 -0
  24. package/content/code-block/CodeActionsMenu.js.map +1 -0
  25. package/content/code-block/CodeBlock.d.ts +37 -0
  26. package/content/code-block/CodeBlock.d.ts.map +1 -0
  27. package/content/code-block/CodeBlock.js +30 -0
  28. package/content/code-block/CodeBlock.js.map +1 -0
  29. package/content/code-block/CodeBlockFrame.d.ts +54 -0
  30. package/content/code-block/CodeBlockFrame.d.ts.map +1 -0
  31. package/content/code-block/CodeBlockFrame.js +80 -0
  32. package/content/code-block/CodeBlockFrame.js.map +1 -0
  33. package/content/code-block/CodeBlockHeader.d.ts +26 -0
  34. package/content/code-block/CodeBlockHeader.d.ts.map +1 -0
  35. package/content/code-block/CodeBlockHeader.js +16 -0
  36. package/content/code-block/CodeBlockHeader.js.map +1 -0
  37. package/content/code-block/CodeBlockLazy.d.ts +11 -0
  38. package/content/code-block/CodeBlockLazy.d.ts.map +1 -0
  39. package/content/code-block/CodeBlockLazy.js +14 -0
  40. package/content/code-block/CodeBlockLazy.js.map +1 -0
  41. package/content/code-block/CodeBlockLoading.d.ts +31 -0
  42. package/content/code-block/CodeBlockLoading.d.ts.map +1 -0
  43. package/content/code-block/CodeBlockLoading.js +90 -0
  44. package/content/code-block/CodeBlockLoading.js.map +1 -0
  45. package/content/code-block/CodeBlockSection.d.ts +40 -0
  46. package/content/code-block/CodeBlockSection.d.ts.map +1 -0
  47. package/content/code-block/CodeBlockSection.js +105 -0
  48. package/content/code-block/CodeBlockSection.js.map +1 -0
  49. package/content/code-block/CodeBlockToasts.d.ts +26 -0
  50. package/content/code-block/CodeBlockToasts.d.ts.map +1 -0
  51. package/content/code-block/CodeBlockToasts.js +88 -0
  52. package/content/code-block/CodeBlockToasts.js.map +1 -0
  53. package/content/code-block/code-block.module.css +949 -0
  54. package/content/code-block/index.d.ts +4 -0
  55. package/content/code-block/index.d.ts.map +1 -0
  56. package/content/code-block/index.js +4 -0
  57. package/content/code-block/index.js.map +1 -0
  58. package/content/demo/DemoContent.d.ts +32 -0
  59. package/content/demo/DemoContent.d.ts.map +1 -0
  60. package/content/demo/DemoContent.js +87 -0
  61. package/content/demo/DemoContent.js.map +1 -0
  62. package/content/demo/DemoFrame.d.ts +6 -0
  63. package/content/demo/DemoFrame.d.ts.map +1 -0
  64. package/content/demo/DemoFrame.js +17 -0
  65. package/content/demo/DemoFrame.js.map +1 -0
  66. package/content/demo/DemoLazy.d.ts +11 -0
  67. package/content/demo/DemoLazy.d.ts.map +1 -0
  68. package/content/demo/DemoLazy.js +14 -0
  69. package/content/demo/DemoLazy.js.map +1 -0
  70. package/content/demo/DemoLoading.d.ts +23 -0
  71. package/content/demo/DemoLoading.d.ts.map +1 -0
  72. package/content/demo/DemoLoading.js +26 -0
  73. package/content/demo/DemoLoading.js.map +1 -0
  74. package/content/demo/demo.module.css +163 -0
  75. package/content/demo/index.d.ts +4 -0
  76. package/content/demo/index.d.ts.map +1 -0
  77. package/content/demo/index.js +4 -0
  78. package/content/demo/index.js.map +1 -0
  79. package/content/empty-state/EmptyState.d.ts +1 -1
  80. package/content/empty-state/EmptyState.js +1 -1
  81. package/content/empty-state/empty-state.module.css +11 -11
  82. package/content/feature-grid/feature-grid.module.css +22 -22
  83. package/content/index-rows/IndexRows.d.ts +2 -2
  84. package/content/index-rows/IndexRows.d.ts.map +1 -1
  85. package/content/index-rows/IndexRows.js +1 -1
  86. package/content/index-rows/index-rows.module.css +29 -29
  87. package/content/pricing/Pricing.d.ts +4 -4
  88. package/content/pricing/Pricing.d.ts.map +1 -1
  89. package/content/pricing/Pricing.js +4 -4
  90. package/content/pricing/Pricing.js.map +1 -1
  91. package/content/pricing/pricing.module.css +22 -22
  92. package/content/profile/Profile.d.ts +1 -1
  93. package/content/profile/Profile.js +2 -2
  94. package/content/profile/profile.module.css +13 -13
  95. package/content/quote/Quote.d.ts +1 -1
  96. package/content/quote/quote.module.css +9 -9
  97. package/content/timeline/Timeline.d.ts +1 -1
  98. package/content/timeline/Timeline.d.ts.map +1 -1
  99. package/content/timeline/Timeline.js +5 -5
  100. package/content/timeline/Timeline.js.map +1 -1
  101. package/content/timeline/timeline.module.css +12 -12
  102. package/content/types-table/TypePre.d.ts +11 -0
  103. package/content/types-table/TypePre.d.ts.map +1 -0
  104. package/content/types-table/TypePre.js +13 -0
  105. package/content/types-table/TypePre.js.map +1 -0
  106. package/content/types-table/TypesTable.d.ts +22 -0
  107. package/content/types-table/TypesTable.d.ts.map +1 -0
  108. package/content/types-table/TypesTable.js +124 -0
  109. package/content/types-table/TypesTable.js.map +1 -0
  110. package/content/types-table/index.d.ts +3 -0
  111. package/content/types-table/index.d.ts.map +1 -0
  112. package/content/types-table/index.js +3 -0
  113. package/content/types-table/index.js.map +1 -0
  114. package/content/types-table/types-table.module.css +160 -0
  115. package/data/chart/Chart.d.ts +8 -1
  116. package/data/chart/Chart.d.ts.map +1 -1
  117. package/data/chart/Chart.js +28 -15
  118. package/data/chart/Chart.js.map +1 -1
  119. package/data/chart/chart.module.css +20 -6
  120. package/data/figure/Figure.d.ts +1 -1
  121. package/data/figure/Figure.js +1 -1
  122. package/data/figure/figure.module.css +7 -7
  123. package/data/map/Map.d.ts +3 -3
  124. package/data/map/Map.d.ts.map +1 -1
  125. package/data/map/Map.js +10 -8
  126. package/data/map/Map.js.map +1 -1
  127. package/data/map/MapCanvas.d.ts.map +1 -1
  128. package/data/map/MapCanvas.js +5 -9
  129. package/data/map/MapCanvas.js.map +1 -1
  130. package/data/map/map.module.css +39 -14
  131. package/data/map/mapStyle.d.ts +2 -2
  132. package/data/map/mapStyle.d.ts.map +1 -1
  133. package/data/map/mapStyle.js +5 -5
  134. package/data/map/mapStyle.js.map +1 -1
  135. package/data/scroll-area/ScrollArea.d.ts.map +1 -1
  136. package/data/scroll-area/ScrollArea.js +8 -4
  137. package/data/scroll-area/ScrollArea.js.map +1 -1
  138. package/data/scroll-area/scroll-area.module.css +28 -9
  139. package/data/spec-grid/spec-grid.module.css +8 -8
  140. package/data/spec-list/spec-list.module.css +3 -3
  141. package/data/spec-sheet/SpecSheet.d.ts +2 -2
  142. package/data/spec-sheet/SpecSheet.js +1 -1
  143. package/data/spec-sheet/spec-sheet.module.css +9 -9
  144. package/data/stat/Stat.d.ts +1 -1
  145. package/data/stat/Stat.d.ts.map +1 -1
  146. package/data/stat/stat.module.css +4 -4
  147. package/data/table/Table.d.ts +6 -5
  148. package/data/table/Table.d.ts.map +1 -1
  149. package/data/table/Table.js.map +1 -1
  150. package/data/table/table.module.css +43 -46
  151. package/disclosure/accordion/Accordion.d.ts +1 -1
  152. package/disclosure/accordion/Accordion.js +1 -1
  153. package/disclosure/accordion/accordion.module.css +12 -12
  154. package/disclosure/collapsible/Collapsible.d.ts +4 -4
  155. package/disclosure/collapsible/Collapsible.js +4 -4
  156. package/disclosure/collapsible/collapsible.module.css +10 -10
  157. package/disclosure/faq/FAQ.d.ts +3 -3
  158. package/disclosure/faq/FAQ.d.ts.map +1 -1
  159. package/disclosure/faq/FAQ.js +3 -3
  160. package/disclosure/faq/FAQ.js.map +1 -1
  161. package/disclosure/faq/faq.module.css +20 -20
  162. package/feedback/alert/alert.module.css +4 -4
  163. package/feedback/avatar/avatar-group.module.css +2 -2
  164. package/feedback/avatar/avatar.module.css +9 -9
  165. package/feedback/badge/Badge.d.ts +1 -1
  166. package/feedback/badge/badge.module.css +7 -7
  167. package/feedback/meter/Meter.d.ts +2 -2
  168. package/feedback/meter/meter.module.css +14 -14
  169. package/feedback/progress/Progress.d.ts +1 -1
  170. package/feedback/progress/progress.module.css +7 -7
  171. package/feedback/tag/tag.module.css +7 -7
  172. package/feedback/toast/Toast.d.ts +3 -3
  173. package/feedback/toast/Toast.d.ts.map +1 -1
  174. package/feedback/toast/Toast.js +17 -7
  175. package/feedback/toast/Toast.js.map +1 -1
  176. package/feedback/toast/toast.module.css +31 -20
  177. package/forms/autocomplete/Autocomplete.d.ts +11 -0
  178. package/forms/autocomplete/Autocomplete.d.ts.map +1 -1
  179. package/forms/autocomplete/Autocomplete.js +27 -6
  180. package/forms/autocomplete/Autocomplete.js.map +1 -1
  181. package/forms/autocomplete/autocomplete.module.css +35 -41
  182. package/forms/checkbox/Checkbox.js +1 -1
  183. package/forms/checkbox/checkbox.module.css +29 -25
  184. package/forms/checkbox-group/checkbox-group.module.css +4 -4
  185. package/forms/combobox/Combobox.d.ts +10 -0
  186. package/forms/combobox/Combobox.d.ts.map +1 -1
  187. package/forms/combobox/Combobox.js +28 -7
  188. package/forms/combobox/Combobox.js.map +1 -1
  189. package/forms/combobox/combobox.module.css +34 -41
  190. package/forms/field/field.module.css +1 -1
  191. package/forms/fieldset/Fieldset.d.ts +1 -1
  192. package/forms/fieldset/Fieldset.js +2 -2
  193. package/forms/fieldset/fieldset.module.css +14 -14
  194. package/forms/form/form.module.css +2 -2
  195. package/forms/input/Input.d.ts +10 -3
  196. package/forms/input/Input.d.ts.map +1 -1
  197. package/forms/input/Input.js +10 -4
  198. package/forms/input/Input.js.map +1 -1
  199. package/forms/input/input.module.css +38 -21
  200. package/forms/number-field/number-field.module.css +24 -23
  201. package/forms/radio/Radio.d.ts +1 -1
  202. package/forms/radio/Radio.d.ts.map +1 -1
  203. package/forms/radio/Radio.js +5 -3
  204. package/forms/radio/Radio.js.map +1 -1
  205. package/forms/radio/radio.module.css +38 -30
  206. package/forms/radio-group/RadioGroup.d.ts +1 -1
  207. package/forms/radio-group/radio-group.module.css +3 -3
  208. package/forms/search/Search.d.ts +10 -0
  209. package/forms/search/Search.d.ts.map +1 -1
  210. package/forms/search/Search.js +25 -6
  211. package/forms/search/Search.js.map +1 -1
  212. package/forms/search/search.module.css +25 -33
  213. package/forms/select/Select.d.ts +10 -2
  214. package/forms/select/Select.d.ts.map +1 -1
  215. package/forms/select/Select.js +27 -12
  216. package/forms/select/Select.js.map +1 -1
  217. package/forms/select/select.module.css +42 -48
  218. package/forms/slider/Slider.js +2 -2
  219. package/forms/slider/slider.module.css +23 -23
  220. package/forms/switch/Switch.js +1 -1
  221. package/forms/switch/switch.module.css +23 -19
  222. package/foundations/expanding-box/ExpandingBox.d.ts +86 -0
  223. package/foundations/expanding-box/ExpandingBox.d.ts.map +1 -0
  224. package/foundations/expanding-box/ExpandingBox.js +179 -0
  225. package/foundations/expanding-box/ExpandingBox.js.map +1 -0
  226. package/foundations/expanding-box/expanding-box.module.css +415 -0
  227. package/foundations/expanding-box/index.d.ts +3 -0
  228. package/foundations/expanding-box/index.d.ts.map +1 -0
  229. package/foundations/expanding-box/index.js +3 -0
  230. package/foundations/expanding-box/index.js.map +1 -0
  231. package/foundations/expanding-box/startExpandingTransition.d.ts +33 -0
  232. package/foundations/expanding-box/startExpandingTransition.d.ts.map +1 -0
  233. package/foundations/expanding-box/startExpandingTransition.js +82 -0
  234. package/foundations/expanding-box/startExpandingTransition.js.map +1 -0
  235. package/foundations/ground/Ground.d.ts +1 -1
  236. package/foundations/ground/ground.module.css +4 -4
  237. package/foundations/icon/Icon.d.ts +1 -1
  238. package/foundations/icon/Icon.js +1 -1
  239. package/foundations/icon/icon.module.css +1 -1
  240. package/foundations/outline-morph/OutlineMorph.d.ts +112 -0
  241. package/foundations/outline-morph/OutlineMorph.d.ts.map +1 -0
  242. package/foundations/outline-morph/OutlineMorph.js +83 -0
  243. package/foundations/outline-morph/OutlineMorph.js.map +1 -0
  244. package/foundations/outline-morph/index.d.ts +3 -0
  245. package/foundations/outline-morph/index.d.ts.map +1 -0
  246. package/foundations/outline-morph/index.js +3 -0
  247. package/foundations/outline-morph/index.js.map +1 -0
  248. package/foundations/outline-morph/morphEngine.d.ts +219 -0
  249. package/foundations/outline-morph/morphEngine.d.ts.map +1 -0
  250. package/foundations/outline-morph/morphEngine.js +1331 -0
  251. package/foundations/outline-morph/morphEngine.js.map +1 -0
  252. package/foundations/outline-morph/outline-morph.module.css +113 -0
  253. package/foundations/outline-morph/useOutlineMorphRoot.d.ts +50 -0
  254. package/foundations/outline-morph/useOutlineMorphRoot.d.ts.map +1 -0
  255. package/foundations/outline-morph/useOutlineMorphRoot.js +55 -0
  256. package/foundations/outline-morph/useOutlineMorphRoot.js.map +1 -0
  257. package/foundations/separator/separator.module.css +10 -10
  258. package/foundations/sticker/Sticker.d.ts +4 -4
  259. package/foundations/sticker/Sticker.d.ts.map +1 -1
  260. package/foundations/sticker/Sticker.js +3 -3
  261. package/foundations/sticker/sticker.module.css +10 -10
  262. package/icons/paths.d.ts +1 -1
  263. package/icons/paths.d.ts.map +1 -1
  264. package/icons/paths.js +50 -0
  265. package/icons/paths.js.map +1 -1
  266. package/navigation/breadcrumb/Breadcrumb.d.ts +7 -1
  267. package/navigation/breadcrumb/Breadcrumb.d.ts.map +1 -1
  268. package/navigation/breadcrumb/Breadcrumb.js +8 -8
  269. package/navigation/breadcrumb/Breadcrumb.js.map +1 -1
  270. package/navigation/breadcrumb/breadcrumb.module.css +14 -14
  271. package/navigation/file-tabs/FileTabs.d.ts +169 -0
  272. package/navigation/file-tabs/FileTabs.d.ts.map +1 -0
  273. package/navigation/file-tabs/FileTabs.js +253 -0
  274. package/navigation/file-tabs/FileTabs.js.map +1 -0
  275. package/navigation/file-tabs/file-tabs.module.css +868 -0
  276. package/navigation/file-tabs/index.d.ts +2 -0
  277. package/navigation/file-tabs/index.d.ts.map +1 -0
  278. package/navigation/file-tabs/index.js +2 -0
  279. package/navigation/file-tabs/index.js.map +1 -0
  280. package/navigation/nav-drawer/NavDrawer.d.ts +32 -6
  281. package/navigation/nav-drawer/NavDrawer.d.ts.map +1 -1
  282. package/navigation/nav-drawer/NavDrawer.js +94 -28
  283. package/navigation/nav-drawer/NavDrawer.js.map +1 -1
  284. package/navigation/nav-drawer/nav-drawer.module.css +78 -55
  285. package/navigation/navigation-bar/NavigationBar.d.ts +31 -11
  286. package/navigation/navigation-bar/NavigationBar.d.ts.map +1 -1
  287. package/navigation/navigation-bar/NavigationBar.js +40 -17
  288. package/navigation/navigation-bar/NavigationBar.js.map +1 -1
  289. package/navigation/navigation-bar/navigation-bar.module.css +58 -27
  290. package/navigation/navigation-menu/NavigationMenu.d.ts +9 -9
  291. package/navigation/navigation-menu/NavigationMenu.d.ts.map +1 -1
  292. package/navigation/navigation-menu/NavigationMenu.js +15 -15
  293. package/navigation/navigation-menu/navigation-menu.module.css +39 -53
  294. package/navigation/pagination/Pagination.js +1 -1
  295. package/navigation/pagination/pagination.module.css +24 -24
  296. package/navigation/sidebar-nav/SidebarNav.d.ts +71 -0
  297. package/navigation/sidebar-nav/SidebarNav.d.ts.map +1 -0
  298. package/navigation/sidebar-nav/SidebarNav.js +169 -0
  299. package/navigation/sidebar-nav/SidebarNav.js.map +1 -0
  300. package/navigation/sidebar-nav/index.d.ts +2 -0
  301. package/navigation/sidebar-nav/index.d.ts.map +1 -0
  302. package/navigation/sidebar-nav/index.js +2 -0
  303. package/navigation/sidebar-nav/index.js.map +1 -0
  304. package/navigation/sidebar-nav/sidebar-nav.module.css +270 -0
  305. package/navigation/table-of-contents/TableOfContents.d.ts +92 -0
  306. package/navigation/table-of-contents/TableOfContents.d.ts.map +1 -0
  307. package/navigation/table-of-contents/TableOfContents.js +211 -0
  308. package/navigation/table-of-contents/TableOfContents.js.map +1 -0
  309. package/navigation/table-of-contents/index.d.ts +3 -0
  310. package/navigation/table-of-contents/index.d.ts.map +1 -0
  311. package/navigation/table-of-contents/index.js +3 -0
  312. package/navigation/table-of-contents/index.js.map +1 -0
  313. package/navigation/table-of-contents/table-of-contents.module.css +322 -0
  314. package/navigation/table-of-contents/useActiveHeading.d.ts +37 -0
  315. package/navigation/table-of-contents/useActiveHeading.d.ts.map +1 -0
  316. package/navigation/table-of-contents/useActiveHeading.js +111 -0
  317. package/navigation/table-of-contents/useActiveHeading.js.map +1 -0
  318. package/navigation/tabs/Tabs.d.ts +2 -2
  319. package/navigation/tabs/Tabs.js +3 -3
  320. package/navigation/tabs/tabs.module.css +22 -19
  321. package/navigation/toolbar/Toolbar.d.ts +7 -1
  322. package/navigation/toolbar/Toolbar.d.ts.map +1 -1
  323. package/navigation/toolbar/Toolbar.js +3 -3
  324. package/navigation/toolbar/Toolbar.js.map +1 -1
  325. package/navigation/toolbar/toolbar.module.css +6 -6
  326. package/overlays/alert-dialog/AlertDialog.d.ts +14 -4
  327. package/overlays/alert-dialog/AlertDialog.d.ts.map +1 -1
  328. package/overlays/alert-dialog/AlertDialog.js +15 -5
  329. package/overlays/alert-dialog/AlertDialog.js.map +1 -1
  330. package/overlays/alert-dialog/alert-dialog.module.css +4 -4
  331. package/overlays/context-menu/ContextMenu.d.ts +1 -1
  332. package/overlays/context-menu/ContextMenu.js +1 -1
  333. package/overlays/dialog/Dialog.d.ts +26 -11
  334. package/overlays/dialog/Dialog.d.ts.map +1 -1
  335. package/overlays/dialog/Dialog.js +36 -17
  336. package/overlays/dialog/Dialog.js.map +1 -1
  337. package/overlays/dialog/dialog.module.css +32 -31
  338. package/overlays/dialog/morph.d.ts +17 -0
  339. package/overlays/dialog/morph.d.ts.map +1 -0
  340. package/overlays/dialog/morph.js +44 -0
  341. package/overlays/dialog/morph.js.map +1 -0
  342. package/overlays/menu/Menu.d.ts +18 -7
  343. package/overlays/menu/Menu.d.ts.map +1 -1
  344. package/overlays/menu/Menu.js +35 -12
  345. package/overlays/menu/Menu.js.map +1 -1
  346. package/overlays/menu/menu.module.css +26 -50
  347. package/overlays/menu/morph.d.ts +16 -0
  348. package/overlays/menu/morph.d.ts.map +1 -0
  349. package/overlays/menu/morph.js +36 -0
  350. package/overlays/menu/morph.js.map +1 -0
  351. package/overlays/menu/popup.d.ts +2 -0
  352. package/overlays/menu/popup.d.ts.map +1 -1
  353. package/overlays/menu/popup.js +11 -3
  354. package/overlays/menu/popup.js.map +1 -1
  355. package/overlays/menubar/Menubar.d.ts +10 -1
  356. package/overlays/menubar/Menubar.d.ts.map +1 -1
  357. package/overlays/menubar/Menubar.js +22 -12
  358. package/overlays/menubar/Menubar.js.map +1 -1
  359. package/overlays/menubar/menubar.module.css +13 -13
  360. package/overlays/popover/Popover.d.ts +22 -8
  361. package/overlays/popover/Popover.d.ts.map +1 -1
  362. package/overlays/popover/Popover.js +51 -16
  363. package/overlays/popover/Popover.js.map +1 -1
  364. package/overlays/popover/popover.module.css +73 -47
  365. package/overlays/preview-card/PreviewCard.d.ts +3 -3
  366. package/overlays/preview-card/PreviewCard.d.ts.map +1 -1
  367. package/overlays/preview-card/PreviewCard.js +5 -6
  368. package/overlays/preview-card/PreviewCard.js.map +1 -1
  369. package/overlays/preview-card/preview-card.module.css +19 -54
  370. package/overlays/search-dialog/SearchDialog.d.ts +89 -0
  371. package/overlays/search-dialog/SearchDialog.d.ts.map +1 -0
  372. package/overlays/search-dialog/SearchDialog.js +220 -0
  373. package/overlays/search-dialog/SearchDialog.js.map +1 -0
  374. package/overlays/search-dialog/SearchDialogPopup.d.ts +39 -0
  375. package/overlays/search-dialog/SearchDialogPopup.d.ts.map +1 -0
  376. package/overlays/search-dialog/SearchDialogPopup.js +80 -0
  377. package/overlays/search-dialog/SearchDialogPopup.js.map +1 -0
  378. package/overlays/search-dialog/SearchDialogTrigger.d.ts +24 -0
  379. package/overlays/search-dialog/SearchDialogTrigger.d.ts.map +1 -0
  380. package/overlays/search-dialog/SearchDialogTrigger.js +32 -0
  381. package/overlays/search-dialog/SearchDialogTrigger.js.map +1 -0
  382. package/overlays/search-dialog/index.d.ts +3 -0
  383. package/overlays/search-dialog/index.d.ts.map +1 -0
  384. package/overlays/search-dialog/index.js +3 -0
  385. package/overlays/search-dialog/index.js.map +1 -0
  386. package/overlays/search-dialog/search-dialog.module.css +492 -0
  387. package/overlays/search-dialog/useShortcutLabel.d.ts +13 -0
  388. package/overlays/search-dialog/useShortcutLabel.d.ts.map +1 -0
  389. package/overlays/search-dialog/useShortcutLabel.js +19 -0
  390. package/overlays/search-dialog/useShortcutLabel.js.map +1 -0
  391. package/overlays/search-dialog/variants.d.ts +25 -0
  392. package/overlays/search-dialog/variants.d.ts.map +1 -0
  393. package/overlays/search-dialog/variants.js +31 -0
  394. package/overlays/search-dialog/variants.js.map +1 -0
  395. package/overlays/tooltip/Tooltip.d.ts +3 -3
  396. package/overlays/tooltip/Tooltip.d.ts.map +1 -1
  397. package/overlays/tooltip/Tooltip.js +3 -3
  398. package/overlays/tooltip/Tooltip.js.map +1 -1
  399. package/overlays/tooltip/tooltip.module.css +2 -2
  400. package/package.json +27 -19
  401. package/page/announcement-bar/AnnouncementBar.d.ts +1 -1
  402. package/page/announcement-bar/AnnouncementBar.js +4 -4
  403. package/page/announcement-bar/AnnouncementBar.js.map +1 -1
  404. package/page/announcement-bar/announcement-bar.module.css +11 -17
  405. package/page/cta-block/CTABlock.d.ts +5 -5
  406. package/page/cta-block/CTABlock.d.ts.map +1 -1
  407. package/page/cta-block/CTABlock.js +2 -2
  408. package/page/cta-block/cta-block.module.css +26 -26
  409. package/page/docs-layout/DocsLayout.d.ts +83 -0
  410. package/page/docs-layout/DocsLayout.d.ts.map +1 -0
  411. package/page/docs-layout/DocsLayout.js +108 -0
  412. package/page/docs-layout/DocsLayout.js.map +1 -0
  413. package/page/docs-layout/docs-layout.module.css +266 -0
  414. package/page/docs-layout/index.d.ts +2 -0
  415. package/page/docs-layout/index.d.ts.map +1 -0
  416. package/page/docs-layout/index.js +2 -0
  417. package/page/docs-layout/index.js.map +1 -0
  418. package/page/footer/Footer.d.ts +1 -1
  419. package/page/footer/Footer.js +1 -1
  420. package/page/footer/footer.module.css +31 -31
  421. package/page/hero/Hero.d.ts +3 -3
  422. package/page/hero/Hero.d.ts.map +1 -1
  423. package/page/hero/Hero.js +1 -1
  424. package/page/hero/hero.module.css +36 -36
  425. package/page/marquee/Marquee.d.ts +2 -2
  426. package/page/marquee/Marquee.js +1 -1
  427. package/page/marquee/marquee.module.css +11 -11
  428. package/page/newsletter/Newsletter.d.ts.map +1 -1
  429. package/page/newsletter/Newsletter.js +4 -59
  430. package/page/newsletter/Newsletter.js.map +1 -1
  431. package/page/newsletter/newsletter.module.css +44 -22
  432. package/page/section-bar/SectionBar.d.ts +10 -3
  433. package/page/section-bar/SectionBar.d.ts.map +1 -1
  434. package/page/section-bar/SectionBar.js +21 -11
  435. package/page/section-bar/SectionBar.js.map +1 -1
  436. package/page/section-bar/section-bar.module.css +43 -46
  437. package/page/section-divider/SectionDivider.d.ts +2 -2
  438. package/page/section-divider/SectionDivider.js +4 -4
  439. package/page/section-divider/SectionDivider.js.map +1 -1
  440. package/page/section-divider/section-divider.module.css +18 -18
  441. package/page/section-header/SectionHeader.d.ts +7 -7
  442. package/page/section-header/SectionHeader.d.ts.map +1 -1
  443. package/page/section-header/SectionHeader.js +3 -3
  444. package/page/section-header/SectionHeader.js.map +1 -1
  445. package/page/section-header/section-header.module.css +16 -16
  446. package/utils/Ornament.d.ts +1 -1
  447. package/utils/Ornament.js +2 -2
  448. package/utils/assignRef.d.ts +7 -1
  449. package/utils/assignRef.d.ts.map +1 -1
  450. package/utils/assignRef.js +18 -0
  451. package/utils/assignRef.js.map +1 -1
  452. package/utils/docs/DemoTitle.d.ts +12 -0
  453. package/utils/docs/DemoTitle.d.ts.map +1 -0
  454. package/utils/docs/DemoTitle.js +11 -0
  455. package/utils/docs/DemoTitle.js.map +1 -0
  456. package/utils/docs/Pre.d.ts +39 -0
  457. package/utils/docs/Pre.d.ts.map +1 -0
  458. package/utils/docs/Pre.js +26 -0
  459. package/utils/docs/Pre.js.map +1 -0
  460. package/utils/docs/createDemo.d.ts +89 -0
  461. package/utils/docs/createDemo.d.ts.map +1 -0
  462. package/utils/docs/createDemo.js +51 -0
  463. package/utils/docs/createDemo.js.map +1 -0
  464. package/utils/docs/createMdxComponents.d.ts +52 -0
  465. package/utils/docs/createMdxComponents.d.ts.map +1 -0
  466. package/utils/docs/createMdxComponents.js +59 -0
  467. package/utils/docs/createMdxComponents.js.map +1 -0
  468. package/utils/docs/createTypes.d.ts +23 -0
  469. package/utils/docs/createTypes.d.ts.map +1 -0
  470. package/utils/docs/createTypes.js +27 -0
  471. package/utils/docs/createTypes.js.map +1 -0
  472. package/utils/docs/index.d.ts +8 -0
  473. package/utils/docs/index.d.ts.map +1 -0
  474. package/utils/docs/index.js +16 -0
  475. package/utils/docs/index.js.map +1 -0
  476. package/utils/docs/mdx.module.css +201 -0
  477. package/utils/docs/serverSourceEnhancers.d.ts +26 -0
  478. package/utils/docs/serverSourceEnhancers.d.ts.map +1 -0
  479. package/utils/docs/serverSourceEnhancers.js +32 -0
  480. package/utils/docs/serverSourceEnhancers.js.map +1 -0
  481. package/utils/docs/toSidebarItems.d.ts +23 -0
  482. package/utils/docs/toSidebarItems.d.ts.map +1 -0
  483. package/utils/docs/toSidebarItems.js +36 -0
  484. package/utils/docs/toSidebarItems.js.map +1 -0
  485. package/utils/font-fallbacks.css +176 -0
  486. package/utils/fonts.d.ts +1 -0
  487. package/utils/fonts.d.ts.map +1 -1
  488. package/utils/fonts.js +12 -0
  489. package/utils/fonts.js.map +1 -1
  490. package/utils/frame.d.ts +4 -0
  491. package/utils/frame.d.ts.map +1 -0
  492. package/utils/frame.js +11 -0
  493. package/utils/frame.js.map +1 -0
  494. package/utils/global.css +480 -266
  495. package/utils/line.module.css +17 -17
  496. package/utils/media.css +1 -1
  497. package/utils/ornament.module.css +19 -19
  498. package/utils/overlay.d.ts +4 -4
  499. package/utils/overlay.js +4 -4
  500. package/utils/pattern.module.css +45 -45
  501. package/utils/print.css +48 -34
  502. package/utils/reset.css +9 -2
  503. package/utils/roles.css +29 -29
  504. package/utils/seriesPatterns.js +3 -3
  505. package/utils/syntax.module.css +92 -0
  506. package/utils/theme.css +6 -6
  507. package/utils/tokens.css +262 -192
  508. package/utils/tokens.d.ts +51 -8
  509. package/utils/tokens.d.ts.map +1 -1
  510. package/utils/tokens.js +46 -9
  511. package/utils/tokens.js.map +1 -1
  512. package/utils/type.module.css +87 -87
  513. package/utils/useReleaseMark.d.ts +13 -0
  514. package/utils/useReleaseMark.d.ts.map +1 -0
  515. package/utils/useReleaseMark.js +44 -0
  516. package/utils/useReleaseMark.js.map +1 -0
  517. package/utils/view-transitions.css +122 -0
package/utils/tokens.css CHANGED
@@ -1,8 +1,11 @@
1
1
  /*
2
- * Tokens (§1.5): Open Props non-color primitives, used as shipped, plus every
3
- * --ds- system extension. --ds- never holds a color [D112]. Units [D123]:
4
- * text rem, tracking em, leading unitless; spacing, strokes, radii and sizes
5
- * px; measure ch; print pt and mm (print values: print.css).
2
+ * Tokens (§1.5): Open Props non-color primitives, used as shipped, plus the
3
+ * system's own [D193]. A step between two Open Props steps joins its scale,
4
+ * named by its position to the nearest quarter: --size-px-2-5 (12 px) sits
5
+ * halfway between --size-px-2 (8 px) and --size-px-3 (16 px). Every other
6
+ * FairGarden-only token takes --fgd-, and none holds a color [D112].
7
+ * Units [D123]: text rem, tracking em, leading unitless; spacing, strokes,
8
+ * radii and sizes px; measure ch; print pt and mm (print values: print.css).
6
9
  */
7
10
  @layer tokens{
8
11
  :where(html){--size-000:-.5rem;--size-00:-.25rem;--size-1:.25rem;--size-2:.5rem;--size-3:1rem;--size-4:1.25rem;--size-5:1.5rem;--size-6:1.75rem;--size-7:2rem;--size-8:3rem;--size-9:4rem;--size-10:5rem;--size-11:7.5rem;--size-12:10rem;--size-13:15rem;--size-14:20rem;--size-15:30rem;--size-px-000:-8px;--size-px-00:-4px;--size-px-1:4px;--size-px-2:8px;--size-px-3:16px;--size-px-4:20px;--size-px-5:24px;--size-px-6:28px;--size-px-7:32px;--size-px-8:48px;--size-px-9:64px;--size-px-10:80px;--size-px-11:120px;--size-px-12:160px;--size-px-13:240px;--size-px-14:320px;--size-px-15:480px;--size-fluid-1:max(.5rem,min(1vw,1rem));--size-fluid-2:max(1rem,min(2vw,1.5rem));--size-fluid-3:max(1.5rem,min(3vw,2rem));--size-fluid-4:max(2rem,min(4vw,3rem));--size-fluid-5:max(4rem,min(5vw,5rem));--size-fluid-6:max(5rem,min(7vw,7.5rem));--size-fluid-7:max(7.5rem,min(10vw,10rem));--size-fluid-8:max(10rem,min(20vw,15rem));--size-fluid-9:max(15rem,min(30vw,20rem));--size-fluid-10:max(20rem,min(40vw,30rem));--size-content-1:20ch;--size-content-2:45ch;--size-content-3:60ch;--size-header-1:20ch;--size-header-2:25ch;--size-header-3:35ch;--size-xxs:240px;--size-xs:360px;--size-sm:480px;--size-md:768px;--size-lg:1024px;--size-xl:1440px;--size-xxl:1920px;--size-relative-000:-.5ch;--size-relative-00:-.25ch;--size-relative-1:.25ch;--size-relative-2:.5ch;--size-relative-3:1ch;--size-relative-4:1.25ch;--size-relative-5:1.5ch;--size-relative-6:1.75ch;--size-relative-7:2ch;--size-relative-8:3ch;--size-relative-9:4ch;--size-relative-10:5ch;--size-relative-11:7.5ch;--size-relative-12:10ch;--size-relative-13:15ch;--size-relative-14:20ch;--size-relative-15:30ch}}
@@ -18,270 +21,337 @@
18
21
  :where(html){--ratio-square:1;--ratio-landscape:4/3;--ratio-portrait:3/4;--ratio-widescreen:16/9;--ratio-ultrawide:18/5;--ratio-golden:1.6180/1}}
19
22
  @layer tokens {
20
23
  :root {
21
- /* Spacing (§1.5.10): Open Props --size-px-* plus the system steps. */
22
- --ds-space-12: 12px;
23
- --ds-space-40: 40px;
24
- --ds-space-56: 56px;
25
- --ds-space-stack: 36px; /* named exception: H2 baseline → chapter hairline */
26
- --ds-space-eyebrow-rule: 14px; /* named exception [D100] */
27
- --ds-space-eyebrow-content: 19px; /* named exception [D100] */
28
- --ds-space-halo: var(--size-px-2);
29
- --ds-space-section: var(--ds-space-56);
30
- --ds-space-margin: var(--size-px-3);
24
+ /* Spacing (§1.5.10): Open Props --size-px-* plus the in-between steps. */
25
+ --size-px-2-5: 12px;
26
+ --size-px-7-5: 40px;
27
+ --size-px-8-5: 56px;
28
+ --fgd-space-stack: 36px; /* named exception: H2 baseline → chapter hairline */
29
+ --fgd-space-eyebrow-rule: 14px; /* named exception [D100] */
30
+ --fgd-space-eyebrow-content: 19px; /* named exception [D100] */
31
+ --fgd-space-halo: var(--size-px-2);
32
+ --fgd-space-section: var(--size-px-8-5);
33
+ --fgd-space-margin: var(--size-px-3);
31
34
 
32
- /* Strokes (§1.5.7): with --border-size-1 and --border-size-2. */
33
- --ds-stroke-0-75: 0.75px;
34
- --ds-stroke-1-25: 1.25px;
35
- --ds-stroke-1-5: 1.5px;
36
- --ds-stroke-3: 3px;
37
- --ds-stroke-4: 4px;
38
- --ds-stroke-8: 8px;
35
+ /* Strokes and borders (§1.5.7): Open Props --border-size-* plus the in-between steps. */
36
+ --border-size-0-75: 0.75px;
37
+ --border-size-1-25: 1.25px;
38
+ --border-size-1-5: 1.5px;
39
+ --border-size-2-25: 3px;
40
+ --border-size-2-75: 4px;
41
+ --border-size-3-5: 8px;
39
42
 
40
43
  /* Line geometry (§1.5.8, §4.6–§4.8). */
41
- --ds-dot-fine: 1px;
42
- --ds-dot-fine-pitch: 3px;
43
- --ds-dot: 2px;
44
- --ds-dot-pitch: 5px;
45
- --ds-dot-bold: 4px;
46
- --ds-dot-bold-pitch: 9px;
47
- --ds-dash-fine: 4px;
48
- --ds-dash-fine-gap: 3px;
49
- --ds-dash: 5px;
50
- --ds-dash-gap: 4px;
51
- --ds-double-gap: 4px;
52
- --ds-double-hair-gap: 3px;
44
+ --fgd-dot-fine: 1px;
45
+ --fgd-dot-fine-pitch: 3px;
46
+ --fgd-dot: 2px;
47
+ --fgd-dot-pitch: 5px;
48
+ --fgd-dot-bold: 4px;
49
+ --fgd-dot-bold-pitch: 9px;
50
+ --fgd-dash-fine: 4px;
51
+ --fgd-dash-fine-gap: 3px;
52
+ --fgd-dash: 5px;
53
+ --fgd-dash-gap: 4px;
54
+ --fgd-double-gap: 4px;
55
+ --fgd-double-hair-gap: 3px;
53
56
 
54
57
  /* Pattern geometry (§1.5.9). */
55
- --ds-speckle-grid: 16px;
56
- --ds-speckle-dot: 2px;
57
- --ds-sunburst-dot: 2.5px;
58
- --ds-sunburst-radius: 290px;
59
- --ds-sunburst-pitch: 6.5px;
60
- --ds-awning-stripe: 24px;
61
- --ds-dotgrid-dot: 1.5px;
62
- --ds-dotgrid-pitch: 16px;
63
- --ds-dotgrid-fine-dot: 1px;
64
- --ds-dotgrid-fine-pitch: 8px;
65
- --ds-graph-pitch: 16px;
66
- --ds-ruled-pitch: 27px;
67
- --ds-hatch-pitch: 6px;
68
- --ds-hatch-tile: 8px;
69
- --ds-dotscreen-dot: 1.25px;
70
- --ds-dotscreen-dot-heavy: 2px;
71
- --ds-dotscreen-pitch-1: 6px;
72
- --ds-dotscreen-pitch-2: 5px;
73
- --ds-dotscreen-pitch-3: 4px;
58
+ --fgd-speckle-grid: 16px;
59
+ --fgd-speckle-dot: 2px;
60
+ --fgd-sunburst-dot: 2.5px;
61
+ --fgd-sunburst-radius: 290px;
62
+ --fgd-sunburst-pitch: 6.5px;
63
+ --fgd-awning-stripe: 24px;
64
+ --fgd-dotgrid-dot: 1.5px;
65
+ --fgd-dotgrid-pitch: 16px;
66
+ --fgd-dotgrid-fine-dot: 1px;
67
+ --fgd-dotgrid-fine-pitch: 8px;
68
+ --fgd-graph-pitch: 16px;
69
+ --fgd-ruled-pitch: 27px;
70
+ --fgd-hatch-pitch: 6px;
71
+ --fgd-hatch-tile: 8px;
72
+ --fgd-dotscreen-dot: 1.25px;
73
+ --fgd-dotscreen-dot-heavy: 2px;
74
+ --fgd-dotscreen-pitch-1: 6px;
75
+ --fgd-dotscreen-pitch-2: 5px;
76
+ --fgd-dotscreen-pitch-3: 4px;
74
77
 
75
78
  /* Ornaments, terminals and markers (§1.5.16). */
76
- --ds-ornament-dot: 5px;
77
- --ds-ornament-dot-gap: 10px;
78
- --ds-ornament-star: 9px;
79
- --ds-zigzag-amplitude: 6px;
80
- --ds-zigzag-period: 12px;
81
- --ds-fringe-tick: 6px;
82
- --ds-fringe-pitch: 4px;
79
+ --fgd-ornament-dot: 5px;
80
+ --fgd-ornament-dot-gap: 10px;
81
+ --fgd-ornament-star: 9px;
82
+ --fgd-zigzag-amplitude: 6px;
83
+ --fgd-zigzag-period: 12px;
84
+ --fgd-fringe-tick: 6px;
85
+ --fgd-fringe-pitch: 4px;
83
86
  /*
84
87
  * The hill [D189]: amplitude 4.6% of the band's width, clamped between
85
88
  * these (the max is reached at about 1391 px); crest at 0.667 × width,
86
89
  * the right end falling 30% of the rise; no horizon rule on screen.
87
90
  */
88
- --ds-edge-hill-min: 12px;
89
- --ds-edge-hill-max: var(--size-px-9); /* 64 px */
90
- --ds-arrow-head: 6px;
91
- --ds-arrow-tick: 8px;
92
- --ds-mark-arm: 12px;
93
- --ds-mark-overhang: 6px;
94
- --ds-marker-trail: 5px;
95
- --ds-marker-timeline: 8px;
96
- --ds-marker-waypoint: 9px;
97
- --ds-marker-current: 10px;
91
+ --fgd-edge-hill-min: 12px;
92
+ --fgd-edge-hill-max: var(--size-px-9); /* 64 px */
93
+ --fgd-arrow-head: 6px;
94
+ --fgd-arrow-tick: 8px;
95
+ --fgd-mark-arm: 12px;
96
+ --fgd-mark-overhang: 6px;
97
+ --fgd-marker-trail: 5px;
98
+ --fgd-marker-timeline: 8px;
99
+ --fgd-marker-waypoint: 9px;
100
+ --fgd-marker-current: 10px;
98
101
 
99
- /* Radii (§1.5.11): with --radius-1 (2 px) and --radius-round. */
100
- --ds-radius-none: 0;
101
- --ds-radius-8: 8px;
102
- --ds-radius-20: 20px;
102
+ /* Radii (§1.5.11): Open Props --radius-1 (2 px) and --radius-round plus these steps. */
103
+ --radius-0: 0;
104
+ --radius-2-25: 8px;
105
+ /* File Tabs' folder tabs, shaped as paper tabs (the source's 12 px tab radius); frames keep --radius-2-25. */
106
+ --radius-2-75: 12px;
107
+ --radius-3-25: 20px;
103
108
  /* ≈ 1/7 of the frame's width, max 64 px; the frame's parent is its container. */
104
- --ds-radius-feature: min(calc(100cqi / 7), var(--size-px-9));
105
- /* Conditional radii [D171]: full radius while narrower than the viewport, 0 when full-bleed. */
106
- --ds-radius-conditional-8: clamp(0px, calc(100vw - 100%) * 1e5, var(--ds-radius-8));
107
- --ds-radius-conditional-20: clamp(0px, calc(100vw - 100%) * 1e5, var(--ds-radius-20));
109
+ --fgd-radius-feature: min(calc(100cqi / 7), var(--size-px-9));
110
+ /* Conditional radii [D171], Open Props' --radius-conditional-* pattern: full radius while narrower than the viewport, 0 when full-bleed. */
111
+ --radius-conditional-2-25: clamp(0px, calc(100vw - 100%) * 1e5, var(--radius-2-25));
112
+ --radius-conditional-3-25: clamp(0px, calc(100vw - 100%) * 1e5, var(--radius-3-25));
108
113
 
109
- /* Type families (§1.5.5) [D159]; --ds-font-fine is set per mode (theme.css). */
110
- --ds-font-display: 'Fraunces Variable', 'Source Serif 4 Variable', var(--font-old-style);
111
- --ds-font-text: 'Source Serif 4 Variable', var(--font-transitional);
112
- --ds-font-ui: 'Figtree Variable', var(--font-geometric-humanist);
113
- --ds-font-mono: 'IBM Plex Mono', var(--font-mono);
114
- --ds-font-display-settings: 'SOFT' 0, 'WONK' 0;
115
- --ds-font-accent-settings: 'SOFT' 100, 'WONK' 1;
114
+ /* Type families (§1.5.5) [D159]; --fgd-font-fine is set per mode (theme.css). Each webfont's metric-matched fallback follows it (utils/font-fallbacks.css) [D201]. */
115
+ --fgd-font-display: 'Fraunces Variable', 'Fraunces Fallback', 'Source Serif 4 Variable', var(--font-old-style);
116
+ --fgd-font-text: 'Source Serif 4 Variable', 'Source Serif 4 Fallback', var(--font-transitional);
117
+ --fgd-font-ui: 'Figtree Variable', 'Figtree Fallback', var(--font-geometric-humanist);
118
+ --fgd-font-mono: 'IBM Plex Mono', 'IBM Plex Mono Fallback', var(--font-mono);
119
+ --fgd-font-display-settings: 'SOFT' 0, 'WONK' 0;
120
+ --fgd-font-accent-settings: 'SOFT' 100, 'WONK' 1;
116
121
 
117
122
  /* Type sizes (§1.5.6): rem, fluid from 360 px to 1024 px. */
118
- --ds-font-size-display-xl: clamp(2.5625rem, calc(2.5625rem + 1.125 * (100vw - 22.5rem) / 41.5), 3.6875rem); /* 41 → 59 px */
119
- --ds-font-size-display: clamp(2.125rem, calc(2.125rem + 0.9375 * (100vw - 22.5rem) / 41.5), 3.0625rem); /* 34 → 49 px */
120
- --ds-font-size-h2: clamp(1.75rem, calc(1.75rem + 0.375 * (100vw - 22.5rem) / 41.5), 2.125rem); /* 28 → 34 px */
121
- --ds-font-size-itemhead: clamp(1.375rem, calc(1.375rem + 0.125 * (100vw - 22.5rem) / 41.5), var(--font-size-4)); /* 22 → 24 px */
122
- --ds-font-size-kicker: clamp(1.125rem, calc(1.125rem + 0.125 * (100vw - 22.5rem) / 41.5), var(--font-size-3)); /* 18 → 20 px */
123
- --ds-font-size-subhead: clamp(1.125rem, calc(1.125rem + 0.0625 * (100vw - 22.5rem) / 41.5), 1.1875rem); /* 18 → 19 px */
124
- --ds-font-size-lead: clamp(var(--font-size-3), calc(1.25rem + 0.125 * (100vw - 22.5rem) / 41.5), 1.375rem); /* 20 → 22 px */
125
- --ds-font-size-quote: clamp(var(--font-size-4), calc(1.5rem + 0.5 * (100vw - 22.5rem) / 41.5), var(--font-size-5)); /* 24 → 32 px */
126
- --ds-font-size-body: clamp(1.0625rem, calc(1.0625rem + 0.0625 * (100vw - 22.5rem) / 41.5), 1.125rem); /* 17 → 18 px */
127
- --ds-font-size-body-ui: clamp(var(--font-size-1), calc(1rem + 0.0625 * (100vw - 22.5rem) / 41.5), 1.0625rem); /* 16 → 17 px */
128
- --ds-font-size-marquee: clamp(1.375rem, calc(1.375rem + 0.25 * (100vw - 22.5rem) / 41.5), 1.625rem); /* 22 → 26 px */
129
- --ds-font-size-button-lg: 1.0625rem; /* 17 px */
130
- --ds-font-size-button: clamp(0.875rem, calc(0.875rem + 0.0625 * (100vw - 22.5rem) / 41.5), 0.9375rem); /* 14 → 15 px */
131
- --ds-font-size-footnote: 0.9375rem; /* 15 px */
132
- --ds-font-size-caption: 0.875rem; /* 14 px */
133
- --ds-font-size-eyebrow: clamp(0.8125rem, calc(0.8125rem + 0.0625 * (100vw - 22.5rem) / 41.5), 0.875rem); /* 13 → 14 px */
134
- --ds-font-size-label: 0.8125rem; /* 13 px */
135
- --ds-font-size-url: 8pt; /* print only */
123
+ --fgd-font-size-display-xl: clamp(2.5625rem, calc(2.5625rem + 1.125 * (100vw - 22.5rem) / 41.5), 3.6875rem); /* 41 → 59 px */
124
+ --fgd-font-size-display: clamp(2.125rem, calc(2.125rem + 0.9375 * (100vw - 22.5rem) / 41.5), 3.0625rem); /* 34 → 49 px */
125
+ --fgd-font-size-h2: clamp(1.75rem, calc(1.75rem + 0.375 * (100vw - 22.5rem) / 41.5), 2.125rem); /* 28 → 34 px */
126
+ --fgd-font-size-itemhead: clamp(1.375rem, calc(1.375rem + 0.125 * (100vw - 22.5rem) / 41.5), var(--font-size-4)); /* 22 → 24 px */
127
+ --fgd-font-size-kicker: clamp(1.125rem, calc(1.125rem + 0.125 * (100vw - 22.5rem) / 41.5), var(--font-size-3)); /* 18 → 20 px */
128
+ --fgd-font-size-subhead: clamp(1.125rem, calc(1.125rem + 0.0625 * (100vw - 22.5rem) / 41.5), 1.1875rem); /* 18 → 19 px */
129
+ --fgd-font-size-lead: clamp(var(--font-size-3), calc(1.25rem + 0.125 * (100vw - 22.5rem) / 41.5), 1.375rem); /* 20 → 22 px */
130
+ --fgd-font-size-quote: clamp(var(--font-size-4), calc(1.5rem + 0.5 * (100vw - 22.5rem) / 41.5), var(--font-size-5)); /* 24 → 32 px */
131
+ --fgd-font-size-body: clamp(1.0625rem, calc(1.0625rem + 0.0625 * (100vw - 22.5rem) / 41.5), 1.125rem); /* 17 → 18 px */
132
+ --fgd-font-size-body-ui: clamp(var(--font-size-1), calc(1rem + 0.0625 * (100vw - 22.5rem) / 41.5), 1.0625rem); /* 16 → 17 px */
133
+ --fgd-font-size-marquee: clamp(1.375rem, calc(1.375rem + 0.25 * (100vw - 22.5rem) / 41.5), 1.625rem); /* 22 → 26 px */
134
+ --fgd-font-size-button-lg: 1.0625rem; /* 17 px */
135
+ --fgd-font-size-button: clamp(0.875rem, calc(0.875rem + 0.0625 * (100vw - 22.5rem) / 41.5), 0.9375rem); /* 14 → 15 px */
136
+ --fgd-font-size-footnote: 0.9375rem; /* 15 px */
137
+ --fgd-font-size-caption: 0.875rem; /* 14 px */
138
+ --fgd-font-size-eyebrow: clamp(0.8125rem, calc(0.8125rem + 0.0625 * (100vw - 22.5rem) / 41.5), 0.875rem); /* 13 → 14 px */
139
+ --fgd-font-size-label: 0.8125rem; /* 13 px */
140
+ --fgd-font-size-url: 8pt; /* print only */
136
141
  /* type-stat: display-xl on screen, 24 pt in print (§1.5.6, §8.8), where display-xl prints 26 pt (print.css). */
137
- --ds-font-size-stat: var(--ds-font-size-display-xl);
138
- --ds-lockup-accent-factor: 1.45; /* provisional: compute from font metrics [D64] */
142
+ --fgd-font-size-stat: var(--fgd-font-size-display-xl);
143
+ --fgd-lockup-accent-factor: 1.45; /* provisional: compute from font metrics [D64] */
139
144
 
140
145
  /* Leading, tracking, numerals, measure (§1.5.6). */
141
- --ds-leading-display: 1;
142
- --ds-leading-compact: 1.4;
143
- --ds-leading-reading: 1.6;
144
- --ds-tracking-tight: -0.01em;
145
- --ds-numerals-prose: oldstyle-nums proportional-nums;
146
- --ds-numerals-data: lining-nums tabular-nums;
147
- --ds-measure-reading: 66ch;
148
- --ds-measure-print: 66ch;
146
+ --fgd-leading-display: 1;
147
+ --fgd-leading-compact: 1.4;
148
+ --fgd-leading-reading: 1.6;
149
+ --font-letterspacing-0-5: -0.01em; /* between Open Props' --font-letterspacing-0 (-0.05em) and --font-letterspacing-1 (0.025em) */
150
+ --fgd-numerals-prose: oldstyle-nums proportional-nums;
151
+ --fgd-numerals-data: lining-nums tabular-nums;
152
+ --fgd-measure-reading: 66ch;
153
+ --fgd-measure-print: 66ch;
149
154
 
150
155
  /* Sizing and hit targets (§1.5.12). */
151
- --ds-size-control-md: 40px;
152
- --ds-size-control-xl: 56px;
153
- --ds-size-hit: 44px;
154
- --ds-size-icon-block: 36px;
156
+ --fgd-size-control-md: 40px;
157
+ --fgd-size-control-xl: 56px;
158
+ --fgd-size-hit: 44px;
159
+ /* The room a hanging File Tabs control (the code block's ⋮) needs past its host's edge: its 20 px ear and clearance; hosts leave it free and unclipped (§9.13). */
160
+ --fgd-size-file-tabs-control: var(--size-px-5);
161
+ --fgd-size-icon-block: 36px;
155
162
  /* The logo mark in a lockup, a prominent mark sized to the header bar: 40 px, 48 px from --lg-n-above, 32 px below --xs-n-below (§1.5.12). */
156
- --ds-size-logo: var(--ds-size-control-md);
157
- --ds-size-bar-utility: 36px;
158
- --ds-size-art-s: 152px;
159
- --ds-size-art-l: 312px;
160
- --ds-size-art-plate-wide: 640px;
161
- --ds-size-thumb: 72px;
162
- --ds-size-avatar-xl: 128px;
163
- --ds-size-tick-minor: 6px; /* slider minor tick */
164
- --ds-size-pager-dot: 10px; /* step pager position dot, outlined (§9.9) */
165
- --ds-size-pager-dot-current: 12px; /* the current dot, solid (§9.9) */
163
+ --fgd-size-logo: var(--fgd-size-control-md);
164
+ --fgd-size-bar-utility: 36px;
165
+ --fgd-size-art-s: 152px;
166
+ --fgd-size-art-l: 312px;
167
+ --fgd-size-art-plate-wide: 640px;
168
+ --fgd-size-thumb: 72px;
169
+ --fgd-size-avatar-xl: 128px;
170
+ --fgd-size-tick-minor: 6px; /* slider minor tick */
171
+ --fgd-size-pager-dot: 10px; /* step pager position dot, outlined (§9.9) */
172
+ --fgd-size-pager-dot-current: 12px; /* the current dot, solid (§9.9) */
166
173
 
167
174
  /* Overlay panels (§10.1, §9.7, §10.16). JS mirrors: utils/tokens.ts. */
168
- --ds-size-tooltip: 280px; /* tooltip max width */
169
- --ds-size-overlay-max: 360px; /* anchored panel max width (popover, preview card, select list) */
170
- --ds-size-menu-min: 200px; /* menu min width */
171
- --ds-popup-offset: var(--size-px-2); /* 8 px, panel to trigger */
172
- --ds-popup-clearance: var(--size-px-3); /* 16 px, panel to viewport edge (base --ds-space-margin) */
175
+ --fgd-size-tooltip: 280px; /* tooltip max width */
176
+ --fgd-size-overlay-max: 360px; /* anchored panel max width (popover, preview card, select list) */
177
+ --fgd-size-menu-min: 200px; /* menu min width */
178
+ --fgd-popup-offset: var(--size-px-2); /* 8 px, panel to trigger */
179
+ --fgd-popup-clearance: var(--size-px-3); /* 16 px, panel to viewport edge (base --fgd-space-margin) */
173
180
 
174
181
  /*
175
182
  * Table density (§8.2, §1.5.16) [D83, D169]: cell padding, the minimum
176
183
  * row pitch and the row-rule switch, so a Ground's data-density reaches
177
- * every Table inside it (the density sets below). --ds-table-row-rule is
184
+ * every Table inside it (the density sets below). --fgd-table-row-rule is
178
185
  * the width of the --role-rule row rule that replaces the --role-hairline
179
- * one: 0 while padding holds --ds-space-12, --border-size-1 when compact.
186
+ * one: 0 while padding holds --size-px-2-5, --border-size-1 when compact.
180
187
  */
181
- --ds-table-pad-block: var(--ds-space-12);
182
- --ds-table-pad-inline: var(--size-px-3);
183
- --ds-table-row-min: 0px;
184
- --ds-table-row-rule: 0px;
188
+ --fgd-table-pad-block: var(--size-px-2-5);
189
+ --fgd-table-pad-inline: var(--size-px-3);
190
+ --fgd-table-row-min: 0px;
191
+ --fgd-table-row-rule: 0px;
185
192
 
186
193
  /* Containers (§1.5.13): with --size-sm (480 px) and --size-content-2. */
187
- --ds-container-content: 1120px;
188
- --ds-container-wide: 1360px;
194
+ --fgd-container-content: 1120px;
195
+ --fgd-container-wide: 1360px;
189
196
 
190
197
  /* Focus (§1.5.14): 2 px ring at a 2 px offset, color --primary12. */
191
- --ds-focus-width: var(--border-size-2);
192
- --ds-focus-offset: var(--border-size-2);
198
+ --fgd-focus-width: var(--border-size-2);
199
+ --fgd-focus-offset: var(--border-size-2);
193
200
 
194
201
  /* Motion (§1.5.15): with --ease-out-3. */
195
- --ds-duration-instant: 0ms;
196
- --ds-duration-quick: 120ms;
197
- --ds-duration-disclosure: 200ms;
198
- --ds-delay-tooltip: 500ms;
199
- --ds-duration-toast: 6s;
202
+ --fgd-duration-instant: 0ms;
203
+ --fgd-duration-quick: 120ms;
204
+ --fgd-duration-disclosure: 200ms;
205
+ --fgd-delay-tooltip: 500ms;
206
+ --fgd-duration-toast: 6s;
207
+ /*
208
+ * The expanding box's View Transitions morph (a field-like trigger into
209
+ * its dialog). Open runs --fgd-duration-expand on --fgd-ease-expand;
210
+ * close runs --fgd-duration-disclosure, so it stays the faster. The ease
211
+ * is a critically damped spring (stiffness 0.3, damping 1) sampled as
212
+ * linear() stops, its one undershoot stop clipped to 0 so the curve
213
+ * never leaves [0, 1]: no overshoot. JS mirror: utils/tokens.ts.
214
+ */
215
+ --fgd-duration-expand: 333ms;
216
+ /*
217
+ * The anchored morph's close (the outline morph, §9.17) [D204]: an alias
218
+ * of --fgd-duration-disclosure (200 ms), so the Morph tier owns its own
219
+ * name and a close is never slower than its open. The outline morph reads
220
+ * it, --fgd-duration-expand and --fgd-ease-expand from the trigger at each
221
+ * open and close; 0ms turns the morph off. JS mirror: utils/tokens.ts.
222
+ */
223
+ --fgd-duration-collapse: var(--fgd-duration-disclosure);
224
+ /*
225
+ * The modal morph (the outline morph on Dialog, Alert Dialog and the
226
+ * drawer's sheets, §9.17) [D206]: the same curve, stretched for the
227
+ * longer travel from a trigger to a panel or a full sheet; the close is
228
+ * 0.6 × the open, the ratio of 333 to 200. 0ms turns that morph off.
229
+ * JS mirror: SURFACE_DURATION_MS in utils/tokens.ts.
230
+ */
231
+ --fgd-duration-expand-surface: 400ms;
232
+ --fgd-duration-collapse-surface: 240ms;
233
+ --fgd-ease-expand: linear(
234
+ 0,
235
+ 0,
236
+ 0.294,
237
+ 0.401,
238
+ 0.58,
239
+ 0.706,
240
+ 0.75,
241
+ 0.825,
242
+ 0.878,
243
+ 0.896,
244
+ 0.927,
245
+ 0.949,
246
+ 0.957,
247
+ 0.97,
248
+ 0.979,
249
+ 0.982,
250
+ 0.987,
251
+ 0.991,
252
+ 0.992,
253
+ 0.995,
254
+ 0.996,
255
+ 0.998,
256
+ 0.999,
257
+ 0.999,
258
+ 1
259
+ );
260
+ /*
261
+ * The code block's variant and JS/TS swap: the rendered code swaps after
262
+ * this delay while its changed lines grow or shrink over it. JS mirror
263
+ * (useCode's transformDelay / variantSwapDelay): utils/tokens.ts.
264
+ */
265
+ --fgd-duration-swap: 350ms;
200
266
  /* Desktop Navigation Menu hover intent [D182]; JS mirror: utils/tokens.ts. */
201
- --ds-delay-nav-open: 150ms;
202
- --ds-delay-nav-close: 300ms;
267
+ --fgd-delay-nav-open: 150ms;
268
+ --fgd-delay-nav-close: 300ms;
203
269
 
204
- /* Media (§1.5.16): with --ratio-widescreen, --ratio-portrait, --ratio-square. */
205
- --ds-ratio-photo: 3 / 2;
270
+ /* Media (§1.5.16): joins Open Props' --ratio-widescreen, --ratio-portrait and --ratio-square. */
271
+ --ratio-photo: 3 / 2;
206
272
 
207
273
  /* Print (§1.5.13, §1.5.16). */
208
- --ds-print-margin-inline: 18mm;
209
- --ds-print-margin-block: 20mm;
210
- --ds-print-live-width: 174mm;
211
- --ds-print-figure-max: 100mm;
212
- --ds-print-hero-max: 60mm;
213
- --ds-print-qr: 22mm;
274
+ --fgd-print-margin-inline: 18mm;
275
+ --fgd-print-margin-block: 20mm;
276
+ --fgd-print-live-width: 174mm;
277
+ --fgd-print-figure-max: 100mm;
278
+ --fgd-print-hero-max: 60mm;
279
+ --fgd-print-qr: 22mm;
214
280
  /* The trail and timeline spines in print: 0.75 pt, 3 pt dash, 2.5 pt gap (§1.5.8, §4.7.1) [D142]. */
215
- --ds-print-trail-stroke: 0.75pt;
216
- --ds-print-trail-dash: 3pt;
217
- --ds-print-trail-gap: 2.5pt;
281
+ --fgd-print-trail-stroke: 0.75pt;
282
+ --fgd-print-trail-dash: 3pt;
283
+ --fgd-print-trail-gap: 2.5pt;
218
284
  }
219
285
 
220
286
  @media (min-width: 480px) {
221
287
  :root {
222
- --ds-space-margin: var(--size-px-5);
288
+ --fgd-space-margin: var(--size-px-5);
223
289
  }
224
290
  }
225
291
 
226
292
  @media (min-width: 768px) {
227
293
  :root {
228
- --ds-space-margin: var(--size-px-7);
294
+ --fgd-space-margin: var(--size-px-7);
229
295
  }
230
296
  }
231
297
 
232
298
  @media (max-width: 359.98px) {
233
299
  :root {
234
- --ds-size-logo: var(--size-px-7);
300
+ --fgd-size-logo: var(--size-px-7);
235
301
  }
236
302
  }
237
303
 
238
304
  @media (min-width: 1024px) {
239
305
  :root {
240
- --ds-size-logo: var(--size-px-8);
241
- --ds-space-margin: var(--ds-space-40);
242
- --ds-space-section: var(--size-px-10);
243
- --ds-ruled-pitch: 29px;
306
+ --fgd-size-logo: var(--size-px-8);
307
+ --fgd-space-margin: var(--size-px-7-5);
308
+ --fgd-space-section: var(--size-px-10);
309
+ --fgd-ruled-pitch: 29px;
244
310
  }
245
311
  }
246
312
 
247
313
  /* Reduced motion: every duration is instant (§1.5.15). */
248
314
  @media (prefers-reduced-motion: reduce) {
249
315
  :root {
250
- --ds-duration-quick: var(--ds-duration-instant);
251
- --ds-duration-disclosure: var(--ds-duration-instant);
316
+ --fgd-duration-quick: var(--fgd-duration-instant);
317
+ --fgd-duration-disclosure: var(--fgd-duration-instant);
318
+ --fgd-duration-expand: var(--fgd-duration-instant);
319
+ --fgd-duration-expand-surface: var(--fgd-duration-instant);
320
+ --fgd-duration-collapse-surface: var(--fgd-duration-instant);
321
+ --fgd-duration-swap: var(--fgd-duration-instant);
252
322
  }
253
323
  }
254
324
 
255
325
  /* Density sets (§1.5.16), set per module, never by breakpoint (§5.8). */
256
326
  [data-density='spacious'] {
257
- --ds-space-section: var(--size-px-10);
327
+ --fgd-space-section: var(--size-px-10);
258
328
  }
259
329
 
260
330
  /* Default and spacious keep the default table; restated so a nested module resets a compact parent. */
261
331
  [data-density='default'],
262
332
  [data-density='spacious'] {
263
- --ds-table-pad-block: var(--ds-space-12);
264
- --ds-table-pad-inline: var(--size-px-3);
265
- --ds-table-row-min: 0px;
266
- --ds-table-row-rule: 0px;
333
+ --fgd-table-pad-block: var(--size-px-2-5);
334
+ --fgd-table-pad-inline: var(--size-px-3);
335
+ --fgd-table-row-min: 0px;
336
+ --fgd-table-row-rule: 0px;
267
337
  }
268
338
 
269
- /* Compact: cells --size-px-2 × --ds-space-12, rows ≥ 32 px, --role-rule row rules [D83]. */
339
+ /* Compact: cells --size-px-2 × --size-px-2-5, rows ≥ 32 px, --role-rule row rules [D83]. */
270
340
  [data-density='compact'] {
271
- --ds-space-section: var(--size-px-7);
272
- --ds-table-pad-block: var(--size-px-2);
273
- --ds-table-pad-inline: var(--ds-space-12);
274
- --ds-table-row-min: var(--size-px-7);
275
- --ds-table-row-rule: var(--border-size-1);
341
+ --fgd-space-section: var(--size-px-7);
342
+ --fgd-table-pad-block: var(--size-px-2);
343
+ --fgd-table-pad-inline: var(--size-px-2-5);
344
+ --fgd-table-row-min: var(--size-px-7);
345
+ --fgd-table-row-rule: var(--border-size-1);
276
346
  }
277
347
 
278
348
  @media (min-width: 1024px) {
279
349
  [data-density='spacious'] {
280
- --ds-space-section: var(--size-px-11);
350
+ --fgd-space-section: var(--size-px-11);
281
351
  }
282
352
 
283
353
  [data-density='compact'] {
284
- --ds-space-section: var(--ds-space-40);
354
+ --fgd-space-section: var(--size-px-7-5);
285
355
  }
286
356
  }
287
357
  }
@@ -297,30 +367,30 @@
297
367
  * every other scope, and on the night band wherever its --role-seam turns
298
368
  * visible (dark mode), so the band shows its straight seam rule instead.
299
369
  */
300
- --ds-edge-shaped: block;
370
+ --fgd-edge-shaped: block;
301
371
 
302
372
  /*
303
373
  * Hover underline switches [D181], `none` or `underline`, set per scope
304
- * by the role maps (roles.css), like --ds-edge-shaped:
305
- * - --ds-link-hover-line: `underline` where --role-link-hover is
374
+ * by the role maps (roles.css), like --fgd-edge-shaped:
375
+ * - --fgd-link-hover-line: `underline` where --role-link-hover is
306
376
  * --primary12 (saturated fields, royal, brick, dark rose and heather),
307
377
  * so a hover that would change only an ink also underlines;
308
- * - --ds-soft-hover-line: `underline` where soft fills drop (the
378
+ * - --fgd-soft-hover-line: `underline` where soft fills drop (the
309
379
  * pastels, forest, the solid fields), so the outline Button's hover
310
380
  * takes the bare-text underline instead of its --primary3 fill.
311
381
  */
312
- --ds-link-hover-line: none;
313
- --ds-soft-hover-line: none;
382
+ --fgd-link-hover-line: none;
383
+ --fgd-soft-hover-line: none;
314
384
 
315
385
  /*
316
386
  * Chart sequential-cell switches (§8.7) [D125, D167], `display` values
317
- * set per scope by the role maps (roles.css), like --ds-edge-shaped: a
387
+ * set per scope by the role maps (roles.css), like --fgd-edge-shaped: a
318
388
  * light base ground (and a `white` plate) shows the flat screen fills
319
- * (--ds-series-fill: inline); every other ground shows the one-ink
320
- * patterns on screen (--ds-series-pattern: inline). The odd-slot ink is
389
+ * (--fgd-series-fill: inline); every other ground shows the one-ink
390
+ * patterns on screen (--fgd-series-pattern: inline). The odd-slot ink is
321
391
  * the --role-series-odd alias.
322
392
  */
323
- --ds-series-fill: inline;
324
- --ds-series-pattern: none;
393
+ --fgd-series-fill: inline;
394
+ --fgd-series-pattern: none;
325
395
  }
326
396
  }