@discourser/design-system 0.15.0 → 0.17.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 (229) hide show
  1. package/dist/chunk-2P7Z5PVP.cjs +2151 -0
  2. package/dist/chunk-2P7Z5PVP.cjs.map +1 -0
  3. package/dist/{chunk-QC44JPCA.cjs → chunk-PFWU7QSM.cjs} +777 -15
  4. package/dist/chunk-PFWU7QSM.cjs.map +1 -0
  5. package/dist/chunk-QC7LGFM3.js +2099 -0
  6. package/dist/chunk-QC7LGFM3.js.map +1 -0
  7. package/dist/{chunk-M7J7WKJY.js → chunk-SNUJBT5R.js} +778 -16
  8. package/dist/chunk-SNUJBT5R.js.map +1 -0
  9. package/dist/components/Accordion.figma.d.ts +2 -0
  10. package/dist/components/Accordion.figma.d.ts.map +1 -0
  11. package/dist/components/Breadcrumb.d.ts +11 -0
  12. package/dist/components/Breadcrumb.d.ts.map +1 -0
  13. package/dist/components/Breadcrumb.figma.d.ts +2 -0
  14. package/dist/components/Breadcrumb.figma.d.ts.map +1 -0
  15. package/dist/components/Checkbox.d.ts +6 -6
  16. package/dist/components/ContentCard/ContentCard.d.ts +13 -0
  17. package/dist/components/ContentCard/ContentCard.d.ts.map +1 -0
  18. package/dist/components/ContentCard/ContentCard.figma.d.ts +2 -0
  19. package/dist/components/ContentCard/ContentCard.figma.d.ts.map +1 -0
  20. package/dist/components/ContentCard/index.d.ts +2 -0
  21. package/dist/components/ContentCard/index.d.ts.map +1 -0
  22. package/dist/components/{Heading.d.ts → Header.d.ts} +3 -3
  23. package/dist/components/Header.d.ts.map +1 -0
  24. package/dist/components/Header.figma.d.ts +2 -0
  25. package/dist/components/Header.figma.d.ts.map +1 -0
  26. package/dist/components/Icons/AccountIcon.d.ts +6 -0
  27. package/dist/components/Icons/AccountIcon.d.ts.map +1 -0
  28. package/dist/components/Icons/ChevronUpIcon.d.ts +6 -0
  29. package/dist/components/Icons/ChevronUpIcon.d.ts.map +1 -0
  30. package/dist/components/Icons/ClockIcon.d.ts +6 -0
  31. package/dist/components/Icons/ClockIcon.d.ts.map +1 -0
  32. package/dist/components/Icons/DashboardIcon.d.ts +6 -0
  33. package/dist/components/Icons/DashboardIcon.d.ts.map +1 -0
  34. package/dist/components/Icons/DiscourserLogo.d.ts +6 -0
  35. package/dist/components/Icons/DiscourserLogo.d.ts.map +1 -0
  36. package/dist/components/Icons/DiscourserLogo.figma.d.ts +2 -0
  37. package/dist/components/Icons/DiscourserLogo.figma.d.ts.map +1 -0
  38. package/dist/components/Icons/GripDotsVerticalIcon.d.ts +6 -0
  39. package/dist/components/Icons/GripDotsVerticalIcon.d.ts.map +1 -0
  40. package/dist/components/Icons/HelpIcon.d.ts +6 -0
  41. package/dist/components/Icons/HelpIcon.d.ts.map +1 -0
  42. package/dist/components/Icons/NotebookIcon.d.ts +6 -0
  43. package/dist/components/Icons/NotebookIcon.d.ts.map +1 -0
  44. package/dist/components/Icons/RightArrowIcon.d.ts +6 -0
  45. package/dist/components/Icons/RightArrowIcon.d.ts.map +1 -0
  46. package/dist/components/Icons/ScenarioIcon.d.ts +6 -0
  47. package/dist/components/Icons/ScenarioIcon.d.ts.map +1 -0
  48. package/dist/components/Icons/index.d.ts +11 -0
  49. package/dist/components/Icons/index.d.ts.map +1 -0
  50. package/dist/components/NavigationMenu/NavigationMenu.d.ts +3 -0
  51. package/dist/components/NavigationMenu/NavigationMenu.d.ts.map +1 -0
  52. package/dist/components/NavigationMenu/NavigationMenu.figma.d.ts +2 -0
  53. package/dist/components/NavigationMenu/NavigationMenu.figma.d.ts.map +1 -0
  54. package/dist/components/NavigationMenu/index.d.ts +3 -0
  55. package/dist/components/NavigationMenu/index.d.ts.map +1 -0
  56. package/dist/components/NavigationMenu/types.d.ts +25 -0
  57. package/dist/components/NavigationMenu/types.d.ts.map +1 -0
  58. package/dist/components/QuickStartPage/QuickStartPage.d.ts +21 -0
  59. package/dist/components/QuickStartPage/QuickStartPage.d.ts.map +1 -0
  60. package/dist/components/QuickStartPage/index.d.ts +3 -0
  61. package/dist/components/QuickStartPage/index.d.ts.map +1 -0
  62. package/dist/components/ScenarioQueue/AddScenarioDialog.d.ts +16 -0
  63. package/dist/components/ScenarioQueue/AddScenarioDialog.d.ts.map +1 -0
  64. package/dist/components/ScenarioQueue/ScenarioCard.d.ts +10 -0
  65. package/dist/components/ScenarioQueue/ScenarioCard.d.ts.map +1 -0
  66. package/dist/components/ScenarioQueue/ScenarioCardDraggable.d.ts +15 -0
  67. package/dist/components/ScenarioQueue/ScenarioCardDraggable.d.ts.map +1 -0
  68. package/dist/components/ScenarioQueue/ScenarioQueue.d.ts +3 -0
  69. package/dist/components/ScenarioQueue/ScenarioQueue.d.ts.map +1 -0
  70. package/dist/components/ScenarioQueue/ScenarioQueue.figma.d.ts +2 -0
  71. package/dist/components/ScenarioQueue/ScenarioQueue.figma.d.ts.map +1 -0
  72. package/dist/components/ScenarioQueue/index.d.ts +6 -0
  73. package/dist/components/ScenarioQueue/index.d.ts.map +1 -0
  74. package/dist/components/ScenarioQueue/types.d.ts +56 -0
  75. package/dist/components/ScenarioQueue/types.d.ts.map +1 -0
  76. package/dist/components/ScenarioSettings/ScenarioSettings.d.ts +3 -0
  77. package/dist/components/ScenarioSettings/ScenarioSettings.d.ts.map +1 -0
  78. package/dist/components/ScenarioSettings/ScenarioSettings.figma.d.ts +2 -0
  79. package/dist/components/ScenarioSettings/ScenarioSettings.figma.d.ts.map +1 -0
  80. package/dist/components/ScenarioSettings/index.d.ts +3 -0
  81. package/dist/components/ScenarioSettings/index.d.ts.map +1 -0
  82. package/dist/components/ScenarioSettings/types.d.ts +54 -0
  83. package/dist/components/ScenarioSettings/types.d.ts.map +1 -0
  84. package/dist/components/index.cjs +110 -34
  85. package/dist/components/index.d.ts +16 -1
  86. package/dist/components/index.d.ts.map +1 -1
  87. package/dist/components/index.js +1 -1
  88. package/dist/figma-codex/config.d.ts +8 -0
  89. package/dist/figma-codex/config.d.ts.map +1 -0
  90. package/dist/figma-codex/fixtures/CompoundComponent/CompoundComponent.d.ts +6 -0
  91. package/dist/figma-codex/fixtures/CompoundComponent/CompoundComponent.d.ts.map +1 -0
  92. package/dist/figma-codex/fixtures/CompoundComponent/index.d.ts +2 -0
  93. package/dist/figma-codex/fixtures/CompoundComponent/index.d.ts.map +1 -0
  94. package/dist/figma-codex/fixtures/CompoundComponent.figma.d.ts +2 -0
  95. package/dist/figma-codex/fixtures/CompoundComponent.figma.d.ts.map +1 -0
  96. package/dist/figma-codex/fixtures/SimpleComponent.d.ts +8 -0
  97. package/dist/figma-codex/fixtures/SimpleComponent.d.ts.map +1 -0
  98. package/dist/figma-codex/fixtures/SimpleComponent.figma.d.ts +2 -0
  99. package/dist/figma-codex/fixtures/SimpleComponent.figma.d.ts.map +1 -0
  100. package/dist/figma-codex/generate.d.ts +6 -0
  101. package/dist/figma-codex/generate.d.ts.map +1 -0
  102. package/dist/figma-codex/parser.d.ts +18 -0
  103. package/dist/figma-codex/parser.d.ts.map +1 -0
  104. package/dist/figma-codex/resolver.d.ts +5 -0
  105. package/dist/figma-codex/resolver.d.ts.map +1 -0
  106. package/dist/figma-codex/schema.d.ts +60 -0
  107. package/dist/figma-codex/schema.d.ts.map +1 -0
  108. package/dist/figma-codex/writer.d.ts +8 -0
  109. package/dist/figma-codex/writer.d.ts.map +1 -0
  110. package/dist/figma-codex.json +373 -0
  111. package/dist/index.cjs +114 -38
  112. package/dist/index.js +2 -2
  113. package/dist/preset/index.cjs +2 -2
  114. package/dist/preset/index.d.ts.map +1 -1
  115. package/dist/preset/index.js +1 -1
  116. package/dist/preset/recipes/accordion.d.ts.map +1 -1
  117. package/dist/preset/recipes/avatar.d.ts.map +1 -1
  118. package/dist/preset/recipes/breadcrumb.d.ts +2 -0
  119. package/dist/preset/recipes/breadcrumb.d.ts.map +1 -0
  120. package/dist/preset/recipes/checkbox.d.ts.map +1 -1
  121. package/dist/preset/recipes/content-card.d.ts +2 -0
  122. package/dist/preset/recipes/content-card.d.ts.map +1 -0
  123. package/dist/preset/recipes/field.d.ts.map +1 -1
  124. package/dist/preset/recipes/index.d.ts +7 -0
  125. package/dist/preset/recipes/index.d.ts.map +1 -1
  126. package/dist/preset/recipes/navigation-menu.d.ts +2 -0
  127. package/dist/preset/recipes/navigation-menu.d.ts.map +1 -0
  128. package/dist/preset/recipes/progress.d.ts.map +1 -1
  129. package/dist/preset/recipes/radio-group.d.ts.map +1 -1
  130. package/dist/preset/recipes/scenario-card.d.ts +2 -0
  131. package/dist/preset/recipes/scenario-card.d.ts.map +1 -0
  132. package/dist/preset/recipes/scenario-queue.d.ts +2 -0
  133. package/dist/preset/recipes/scenario-queue.d.ts.map +1 -0
  134. package/dist/preset/recipes/scenario-settings.d.ts +2 -0
  135. package/dist/preset/recipes/scenario-settings.d.ts.map +1 -0
  136. package/dist/preset/recipes/steps.d.ts.map +1 -1
  137. package/dist/preset/recipes/toast.d.ts.map +1 -1
  138. package/dist/preset/recipes/tooltip.d.ts.map +1 -1
  139. package/dist/preset/semantic-tokens.d.ts +12 -0
  140. package/dist/preset/semantic-tokens.d.ts.map +1 -1
  141. package/package.json +35 -2
  142. package/src/components/Accordion.figma.tsx +20 -0
  143. package/src/components/Breadcrumb.figma.tsx +18 -0
  144. package/src/components/Breadcrumb.tsx +52 -0
  145. package/src/components/ContentCard/ContentCard.figma.tsx +21 -0
  146. package/src/components/ContentCard/ContentCard.test.tsx +197 -0
  147. package/src/components/ContentCard/ContentCard.tsx +19 -0
  148. package/src/components/ContentCard/index.ts +13 -0
  149. package/src/components/Header.figma.tsx +25 -0
  150. package/src/components/{Heading.tsx → Header.tsx} +2 -2
  151. package/src/components/Icons/AccountIcon.tsx +26 -0
  152. package/src/components/Icons/ChevronUpIcon.tsx +24 -0
  153. package/src/components/Icons/ClockIcon.tsx +40 -0
  154. package/src/components/Icons/DashboardIcon.tsx +47 -0
  155. package/src/components/Icons/Discourser-Logo.svg +14 -0
  156. package/src/components/Icons/DiscourserLogo.figma.tsx +10 -0
  157. package/src/components/Icons/DiscourserLogo.tsx +72 -0
  158. package/src/components/Icons/GripDotsVerticalIcon.tsx +26 -0
  159. package/src/components/Icons/HelpIcon.tsx +26 -0
  160. package/src/components/Icons/NotebookIcon.tsx +26 -0
  161. package/src/components/Icons/RightArrowIcon.tsx +23 -0
  162. package/src/components/Icons/ScenarioIcon.tsx +26 -0
  163. package/src/components/Icons/index.ts +13 -0
  164. package/src/components/NavigationMenu/NavigationMenu.figma.tsx +26 -0
  165. package/src/components/NavigationMenu/NavigationMenu.test.tsx +524 -0
  166. package/src/components/NavigationMenu/NavigationMenu.tsx +102 -0
  167. package/src/components/NavigationMenu/index.ts +2 -0
  168. package/src/components/NavigationMenu/types.ts +27 -0
  169. package/src/components/QuickStartPage/QuickStartPage.tsx +627 -0
  170. package/src/components/QuickStartPage/index.ts +2 -0
  171. package/src/components/ScenarioQueue/AddScenarioDialog.tsx +137 -0
  172. package/src/components/ScenarioQueue/ScenarioCard.tsx +120 -0
  173. package/src/components/ScenarioQueue/ScenarioCardDraggable.tsx +41 -0
  174. package/src/components/ScenarioQueue/ScenarioQueue.figma.tsx +37 -0
  175. package/src/components/ScenarioQueue/ScenarioQueue.test.tsx +398 -0
  176. package/src/components/ScenarioQueue/ScenarioQueue.tsx +162 -0
  177. package/src/components/ScenarioQueue/index.ts +11 -0
  178. package/src/components/ScenarioQueue/types.ts +86 -0
  179. package/src/components/ScenarioSettings/ScenarioSettings.figma.tsx +12 -0
  180. package/src/components/ScenarioSettings/ScenarioSettings.test.tsx +406 -0
  181. package/src/components/ScenarioSettings/ScenarioSettings.tsx +386 -0
  182. package/src/components/ScenarioSettings/index.ts +11 -0
  183. package/src/components/ScenarioSettings/types.ts +70 -0
  184. package/src/components/__tests__/Breadcrumb.test.tsx +94 -0
  185. package/src/components/index.ts +54 -1
  186. package/src/figma-codex/README.md +186 -0
  187. package/src/figma-codex/__tests__/config.test.ts +63 -0
  188. package/src/figma-codex/__tests__/generate.test.ts +78 -0
  189. package/src/figma-codex/__tests__/parser.test.ts +138 -0
  190. package/src/figma-codex/__tests__/resolver.test.ts +196 -0
  191. package/src/figma-codex/__tests__/writer.test.ts +111 -0
  192. package/src/figma-codex/config.ts +42 -0
  193. package/src/figma-codex/fixtures/CompoundComponent/CompoundComponent.tsx +17 -0
  194. package/src/figma-codex/fixtures/CompoundComponent/index.ts +1 -0
  195. package/src/figma-codex/fixtures/CompoundComponent.figma.tsx +14 -0
  196. package/src/figma-codex/fixtures/SimpleComponent.figma.tsx +10 -0
  197. package/src/figma-codex/fixtures/SimpleComponent.tsx +10 -0
  198. package/src/figma-codex/fixtures/expected-output.json +78 -0
  199. package/src/figma-codex/generate.ts +106 -0
  200. package/src/figma-codex/parser.ts +138 -0
  201. package/src/figma-codex/resolver.ts +280 -0
  202. package/src/figma-codex/schema.ts +79 -0
  203. package/src/figma-codex/writer.ts +54 -0
  204. package/src/preset/index.ts +15 -0
  205. package/src/preset/recipes/accordion.ts +8 -5
  206. package/src/preset/recipes/avatar.ts +1 -2
  207. package/src/preset/recipes/breadcrumb.ts +109 -0
  208. package/src/preset/recipes/checkbox.ts +1 -2
  209. package/src/preset/recipes/content-card.ts +124 -0
  210. package/src/preset/recipes/field.ts +1 -2
  211. package/src/preset/recipes/index.ts +11 -0
  212. package/src/preset/recipes/navigation-menu.ts +97 -0
  213. package/src/preset/recipes/progress.ts +1 -2
  214. package/src/preset/recipes/radio-group.ts +1 -2
  215. package/src/preset/recipes/scenario-card.ts +151 -0
  216. package/src/preset/recipes/scenario-queue.ts +99 -0
  217. package/src/preset/recipes/scenario-settings.ts +182 -0
  218. package/src/preset/recipes/steps.ts +1 -2
  219. package/src/preset/recipes/toast.ts +1 -2
  220. package/src/preset/recipes/tooltip.ts +1 -2
  221. package/src/preset/semantic-tokens.ts +4 -0
  222. package/src/test/setup.ts +15 -0
  223. package/dist/chunk-F7LHARS4.js +0 -869
  224. package/dist/chunk-F7LHARS4.js.map +0 -1
  225. package/dist/chunk-M7J7WKJY.js.map +0 -1
  226. package/dist/chunk-QC44JPCA.cjs.map +0 -1
  227. package/dist/chunk-QP4EJI3G.cjs +0 -902
  228. package/dist/chunk-QP4EJI3G.cjs.map +0 -1
  229. package/dist/components/Heading.d.ts.map +0 -1
@@ -770,6 +770,10 @@ var m3SemanticTokens = dev.defineSemanticTokens.colors({
770
770
  inverseSurface: { value: { base: semantic.inverseSurface, _dark: semanticDark.inverseSurface } },
771
771
  inverseOnSurface: { value: { base: semantic.inverseOnSurface, _dark: semanticDark.inverseOnSurface } },
772
772
  inversePrimary: { value: { base: semantic.inversePrimary, _dark: semanticDark.inversePrimary } },
773
+ // Not standard M3 tokens, but follow inversePrimary's pattern:
774
+ // light mode = dark-palette value, dark mode = light-palette value.
775
+ inverseSecondary: { value: { base: semanticDark.secondary, _dark: semantic.secondary } },
776
+ inverseTertiary: { value: { base: semanticDark.tertiary, _dark: semantic.tertiary } },
773
777
  // Scrim/Shadow
774
778
  scrim: { value: { base: semantic.scrim, _dark: semanticDark.scrim } }
775
779
  });
@@ -1093,7 +1097,7 @@ var inputGroup = dev.defineSlotRecipe({
1093
1097
  });
1094
1098
  var field = dev.defineSlotRecipe({
1095
1099
  className: "field",
1096
- slots: anatomy.fieldAnatomy.keys(),
1100
+ slots: ["root", "errorText", "helperText", "input", "label", "select", "textarea", "requiredIndicator"],
1097
1101
  base: {
1098
1102
  root: {
1099
1103
  display: "flex",
@@ -1388,13 +1392,16 @@ var accordion = dev.defineSlotRecipe({
1388
1392
  overflow: "hidden",
1389
1393
  borderRadius: "var(--accordion-radius)",
1390
1394
  _open: {
1391
- animationName: "expand-height, fade-in",
1392
- animationDuration: "normal"
1395
+ animationName: "slide-down",
1396
+ animationDuration: "250ms",
1397
+ animationTimingFunction: "ease-out",
1398
+ animationFillMode: "forwards"
1393
1399
  },
1394
1400
  _closed: {
1395
- animationName: "collapse-height, fade-out",
1396
- animationDuration: "normal",
1397
- display: "none"
1401
+ animationName: "slide-up",
1402
+ animationDuration: "200ms",
1403
+ animationTimingFunction: "ease-out",
1404
+ animationFillMode: "forwards"
1398
1405
  }
1399
1406
  }
1400
1407
  },
@@ -1795,6 +1802,220 @@ var tabs = dev.defineSlotRecipe({
1795
1802
  variant: "line"
1796
1803
  }
1797
1804
  });
1805
+ var breadcrumb = dev.defineSlotRecipe({
1806
+ className: "breadcrumb",
1807
+ slots: ["root", "list", "link", "item", "separator", "ellipsis"],
1808
+ base: {
1809
+ list: {
1810
+ alignItems: "center",
1811
+ display: "flex",
1812
+ listStyle: "none",
1813
+ wordBreak: "break-word"
1814
+ },
1815
+ link: {
1816
+ alignItems: "center",
1817
+ borderRadius: "l1",
1818
+ display: "inline-flex",
1819
+ focusRing: "outside",
1820
+ gap: "2",
1821
+ outline: "0",
1822
+ textDecoration: "none",
1823
+ transition: "color",
1824
+ _icon: { boxSize: "1em" }
1825
+ },
1826
+ item: {
1827
+ display: "inline-flex",
1828
+ alignItems: "center",
1829
+ color: "fg.muted",
1830
+ _last: {
1831
+ color: "fg.default"
1832
+ }
1833
+ },
1834
+ separator: {
1835
+ color: "fg.subtle",
1836
+ _icon: { boxSize: "1em" },
1837
+ _rtl: { rotate: "180deg" }
1838
+ },
1839
+ ellipsis: {
1840
+ alignItems: "center",
1841
+ color: "fg.muted",
1842
+ display: "inline-flex",
1843
+ justifyContent: "center",
1844
+ _icon: { boxSize: "1em" }
1845
+ }
1846
+ },
1847
+ variants: {
1848
+ variant: {
1849
+ underline: {
1850
+ link: {
1851
+ textDecoration: "underline",
1852
+ textDecorationThickness: "0.1em",
1853
+ textUnderlineOffset: "0.125em",
1854
+ textDecorationColor: "fg.subtle",
1855
+ _hover: { textDecorationColor: "fg.default" }
1856
+ }
1857
+ },
1858
+ plain: {
1859
+ link: {
1860
+ color: "fg.muted",
1861
+ _hover: { color: "fg.default" },
1862
+ _currentPage: { color: "fg.default" }
1863
+ }
1864
+ },
1865
+ discourser: {
1866
+ list: {
1867
+ gap: "2.5",
1868
+ alignItems: "center"
1869
+ },
1870
+ item: {
1871
+ bg: "transparent",
1872
+ px: "1.5",
1873
+ py: "1.5",
1874
+ borderRadius: "l2",
1875
+ h: "9",
1876
+ display: "inline-flex",
1877
+ alignItems: "center",
1878
+ _last: {
1879
+ color: "fg.default",
1880
+ fontWeight: "medium",
1881
+ fontSize: "md",
1882
+ fontFeatureSettings: "'liga' 0, 'calt' 0"
1883
+ }
1884
+ },
1885
+ link: {
1886
+ color: "fg.subtle",
1887
+ fontWeight: "medium",
1888
+ fontSize: "lg",
1889
+ _hover: { color: "fg.default" },
1890
+ _currentPage: { color: "fg.default", fontWeight: "semibold" }
1891
+ },
1892
+ separator: {
1893
+ color: "primary.7",
1894
+ _icon: { width: "27px", height: "27px" }
1895
+ }
1896
+ }
1897
+ },
1898
+ size: {
1899
+ xs: { list: { gap: "1", textStyle: "xs" } },
1900
+ sm: { list: { gap: "1", textStyle: "sm" } },
1901
+ md: { list: { gap: "1.5", textStyle: "md" } },
1902
+ lg: { list: { gap: "2", textStyle: "lg" } }
1903
+ }
1904
+ },
1905
+ defaultVariants: {
1906
+ variant: "plain",
1907
+ size: "md"
1908
+ }
1909
+ });
1910
+ var navigationMenu = dev.defineSlotRecipe({
1911
+ className: "navigation-menu",
1912
+ slots: [
1913
+ "root",
1914
+ "section",
1915
+ "sectionTrigger",
1916
+ "sectionIcon",
1917
+ "sectionTitle",
1918
+ "sectionIndicator",
1919
+ "sectionContent",
1920
+ "itemList",
1921
+ "item",
1922
+ "itemLink"
1923
+ ],
1924
+ base: {
1925
+ // ── Token mappings verified against Figma MCP output (node 38:4046) ──
1926
+ // Figma file: GaHmFfmvO4loUzuZS4TgEz
1927
+ root: {
1928
+ bg: "surface.dim",
1929
+ // Figma: #f5f1eb warm sage sidebar bg
1930
+ width: "full",
1931
+ py: "2"
1932
+ },
1933
+ section: {
1934
+ borderBottom: "none"
1935
+ },
1936
+ sectionTrigger: {
1937
+ // Layout-only props — no conflicts with accordion recipe here
1938
+ display: "flex",
1939
+ alignItems: "center",
1940
+ justifyContent: "space-between",
1941
+ width: "full",
1942
+ cursor: "pointer",
1943
+ // NOTE: fontSize, fontWeight, borderRadius, p, bg, color are applied via
1944
+ // css={{}} on Accordion.ItemTrigger in the component (utilities layer > recipes layer).
1945
+ // See ScenarioCard.tsx for the same pattern.
1946
+ _hover: {
1947
+ bg: "surface.container.high"
1948
+ }
1949
+ },
1950
+ sectionIcon: {
1951
+ flexShrink: 0,
1952
+ display: "flex",
1953
+ alignItems: "center",
1954
+ justifyContent: "center",
1955
+ width: "6",
1956
+ // 24px container
1957
+ height: "6",
1958
+ color: "primary.50",
1959
+ // olive green icons — Figma: #518500
1960
+ fontSize: "20px"
1961
+ // icon SVGs use width/height: 1em → sets 20×20px
1962
+ },
1963
+ sectionTitle: {
1964
+ flex: 1,
1965
+ textAlign: "start"
1966
+ // Font styles inherited from trigger's css={{}} utility overrides
1967
+ },
1968
+ sectionIndicator: {
1969
+ // color set via css={{}} on Accordion.ItemIndicator (utilities > recipes)
1970
+ _open: {
1971
+ rotate: "180deg"
1972
+ }
1973
+ },
1974
+ sectionContent: {
1975
+ overflow: "hidden",
1976
+ borderRadius: "0"
1977
+ // override accordion's default border-radius
1978
+ },
1979
+ itemList: {
1980
+ display: "flex",
1981
+ flexDirection: "column",
1982
+ gap: "0.5",
1983
+ pt: "1",
1984
+ pb: "2"
1985
+ },
1986
+ item: {},
1987
+ itemLink: {
1988
+ display: "block",
1989
+ py: "2",
1990
+ // Figma: 5px top/bottom
1991
+ pl: "8",
1992
+ // Figma: 30px left indent → spacing.8 = 32px
1993
+ pr: "2",
1994
+ // Figma: 5px right padding
1995
+ borderRadius: "l3",
1996
+ // Figma: 8px
1997
+ textDecoration: "none",
1998
+ fontSize: "md",
1999
+ // Figma: 16px
2000
+ fontWeight: "norma",
2001
+ // Figma: Inter Medium 500
2002
+ lineHeight: "1",
2003
+ color: "onSurface",
2004
+ // Figma: #363636
2005
+ cursor: "pointer",
2006
+ _hover: {
2007
+ bg: "surface.container.high"
2008
+ // Figma: #ebe7e1
2009
+ },
2010
+ // Figma active state: surface.container.low (NOT primary.container)
2011
+ '&[data-active="true"]': {
2012
+ bg: "surface.container.low",
2013
+ // Figma: #f3f4e9 → surfaceContainerLow
2014
+ color: "onSurface"
2015
+ }
2016
+ }
2017
+ }
2018
+ });
1798
2019
  var switchRecipe = dev.defineSlotRecipe({
1799
2020
  className: "switchComponent",
1800
2021
  jsx: ["Switch", /Switch\.+/],
@@ -1929,7 +2150,7 @@ var switchRecipe = dev.defineSlotRecipe({
1929
2150
  }
1930
2151
  });
1931
2152
  var checkbox = dev.defineSlotRecipe({
1932
- slots: anatomy.checkboxAnatomy.keys(),
2153
+ slots: ["root", "label", "control", "indicator", "group"],
1933
2154
  className: "checkbox",
1934
2155
  base: {
1935
2156
  root: {
@@ -2032,7 +2253,7 @@ var checkbox = dev.defineSlotRecipe({
2032
2253
  });
2033
2254
  var radioGroup = dev.defineSlotRecipe({
2034
2255
  className: "radio-group",
2035
- slots: anatomy.radioGroupAnatomy.keys(),
2256
+ slots: ["root", "label", "item", "itemText", "itemControl", "indicator"],
2036
2257
  base: {
2037
2258
  root: {
2038
2259
  display: "flex",
@@ -2550,7 +2771,7 @@ var slider = dev.defineSlotRecipe({
2550
2771
  });
2551
2772
  var avatar = dev.defineSlotRecipe({
2552
2773
  className: "avatar",
2553
- slots: anatomy.avatarAnatomy.keys(),
2774
+ slots: ["root", "image", "fallback"],
2554
2775
  base: {
2555
2776
  root: {
2556
2777
  display: "inline-flex",
@@ -2745,7 +2966,7 @@ var badge = dev.defineRecipe({
2745
2966
  }
2746
2967
  });
2747
2968
  var progress = dev.defineSlotRecipe({
2748
- slots: anatomy.progressAnatomy.keys(),
2969
+ slots: ["root", "label", "track", "range", "valueText", "view", "circle", "circleTrack", "circleRange"],
2749
2970
  className: "progress",
2750
2971
  base: {
2751
2972
  root: {
@@ -2915,7 +3136,7 @@ var skeleton = dev.defineRecipe({
2915
3136
  });
2916
3137
  var toast = dev.defineSlotRecipe({
2917
3138
  className: "toast",
2918
- slots: anatomy.toastAnatomy.keys(),
3139
+ slots: ["group", "root", "title", "description", "actionTrigger", "closeTrigger"],
2919
3140
  base: {
2920
3141
  root: {
2921
3142
  alignItems: "start",
@@ -3189,7 +3410,7 @@ var popover = dev.defineSlotRecipe({
3189
3410
  });
3190
3411
  var tooltip = dev.defineSlotRecipe({
3191
3412
  className: "tooltip",
3192
- slots: anatomy.tooltipAnatomy.keys(),
3413
+ slots: ["trigger", "arrow", "arrowTip", "positioner", "content"],
3193
3414
  base: {
3194
3415
  content: {
3195
3416
  "--tooltip-bg": "colors.gray.solid.bg",
@@ -3452,6 +3673,540 @@ var stepper = dev.defineSlotRecipe({
3452
3673
  colorPalette: "primary"
3453
3674
  }
3454
3675
  });
3676
+ var contentCard = dev.defineSlotRecipe({
3677
+ className: "content-card",
3678
+ slots: [
3679
+ "root",
3680
+ "header",
3681
+ "title",
3682
+ "badgeBar",
3683
+ "body",
3684
+ "section",
3685
+ "sectionTitle",
3686
+ "separator",
3687
+ "list",
3688
+ "listItem"
3689
+ ],
3690
+ base: {
3691
+ root: {
3692
+ bg: "neutral.1",
3693
+ borderRadius: "xl",
3694
+ borderWidth: "2px",
3695
+ borderColor: "border.default",
3696
+ display: "flex",
3697
+ flexDirection: "column",
3698
+ w: "full"
3699
+ },
3700
+ header: {
3701
+ display: "flex",
3702
+ flexDirection: "column",
3703
+ gap: "4"
3704
+ },
3705
+ title: {
3706
+ fontFamily: "heading",
3707
+ fontWeight: "semibold",
3708
+ fontSize: "2xl",
3709
+ color: "fg.default",
3710
+ fontVariationSettings: "'SOFT' 0, 'WONK' 1"
3711
+ },
3712
+ badgeBar: {
3713
+ display: "flex",
3714
+ flexWrap: "wrap",
3715
+ gap: "2.5",
3716
+ px: "2.5",
3717
+ py: "1"
3718
+ },
3719
+ body: {
3720
+ display: "flex",
3721
+ flexDirection: "column",
3722
+ gap: "9",
3723
+ fontSize: "xl",
3724
+ lineHeight: "1.4",
3725
+ color: "fg.default"
3726
+ },
3727
+ section: {
3728
+ display: "flex",
3729
+ flexDirection: "column",
3730
+ gap: "5"
3731
+ },
3732
+ sectionTitle: {
3733
+ fontFamily: "heading",
3734
+ fontWeight: "semibold",
3735
+ fontSize: "2xl",
3736
+ color: "fg.default",
3737
+ fontVariationSettings: "'SOFT' 0, 'WONK' 1",
3738
+ px: "2.5",
3739
+ py: "2.5"
3740
+ },
3741
+ separator: {
3742
+ borderTopWidth: "1px",
3743
+ borderColor: "border.default",
3744
+ w: "full",
3745
+ my: "4"
3746
+ },
3747
+ list: {
3748
+ display: "flex",
3749
+ flexDirection: "column",
3750
+ gap: "5",
3751
+ listStyleType: "disc",
3752
+ ps: "8"
3753
+ },
3754
+ listItem: {
3755
+ fontSize: "xl",
3756
+ lineHeight: "1.4",
3757
+ color: "fg.default"
3758
+ }
3759
+ },
3760
+ variants: {
3761
+ size: {
3762
+ sm: {
3763
+ root: { maxW: "xl", pt: "6", px: "6", pb: "6" },
3764
+ title: { fontSize: "xl" },
3765
+ body: { fontSize: "lg" },
3766
+ listItem: { fontSize: "lg" }
3767
+ },
3768
+ md: {
3769
+ root: { maxW: "2xl", pt: "10", px: "10", pb: "10", gap: "6" },
3770
+ title: { fontSize: "2xl" },
3771
+ body: { fontSize: "xl" },
3772
+ listItem: { fontSize: "xl" }
3773
+ },
3774
+ lg: {
3775
+ root: { maxW: "4xl", pt: "12", px: "12", pb: "12", gap: "8" },
3776
+ title: { fontSize: "3xl" },
3777
+ body: { fontSize: "xl" },
3778
+ listItem: { fontSize: "xl" }
3779
+ }
3780
+ },
3781
+ variant: {
3782
+ elevated: {
3783
+ root: { boxShadow: "lg", borderWidth: "0" }
3784
+ },
3785
+ outline: {
3786
+ root: { borderWidth: "2px", borderColor: "border.default" }
3787
+ },
3788
+ flat: {
3789
+ root: { borderWidth: "0", bg: "transparent" }
3790
+ }
3791
+ }
3792
+ },
3793
+ defaultVariants: {
3794
+ size: "md",
3795
+ variant: "outline"
3796
+ }
3797
+ });
3798
+ var scenarioCard = dev.defineSlotRecipe({
3799
+ className: "scenario-card",
3800
+ // Slots cover only scenario-specific styling.
3801
+ // Base card appearance (bg, border, borderRadius, overflow) comes from
3802
+ // Card.Root variant="outline" via the card slot recipe.
3803
+ // Layout structure (flex, gap, alignment) comes from Panda CSS JSX primitives.
3804
+ slots: ["root", "positionBadge", "dragHandle", "title", "switchRow", "switchLabel", "difficultyBadge", "durationBadge"],
3805
+ base: {
3806
+ root: {
3807
+ // Left accent border — inactive cards use transparent to preserve card width.
3808
+ borderLeftWidth: "3px",
3809
+ borderLeftStyle: "solid",
3810
+ borderLeftColor: "transparent",
3811
+ // Custom purple-tinted shadow from Figma spec (0px 2px 8px 0px rgba(167,139,250,0.15)).
3812
+ // This overrides Card.Root variant="elevated" (M3 level4) which is too heavy.
3813
+ // Raw value intentional: this non-standard shadow has no M3 elevation equivalent.
3814
+ boxShadow: "0px 2px 8px 0px rgba(167, 139, 250, 0.15)",
3815
+ // Figma cards use neutral/99 (#FDFCF5) — a warm off-white.
3816
+ // neutral.surface.bg resolves to white (#FFFFFF) in light mode, so we override.
3817
+ bg: "neutral.1",
3818
+ transition: "border-color",
3819
+ transitionDuration: "normal"
3820
+ },
3821
+ // Circle primitive handles: w/h (size="12"), borderRadius:full, flex centering.
3822
+ // Recipe handles: visual appearance (border, color, font).
3823
+ positionBadge: {
3824
+ fontSize: "md",
3825
+ fontWeight: "semibold",
3826
+ flexShrink: 0,
3827
+ borderWidth: "1px",
3828
+ borderStyle: "solid",
3829
+ borderColor: "neutral.6",
3830
+ color: "fg.default",
3831
+ bg: "transparent",
3832
+ transition: "all",
3833
+ transitionDuration: "normal"
3834
+ },
3835
+ dragHandle: {
3836
+ display: "flex",
3837
+ alignItems: "center",
3838
+ justifyContent: "center",
3839
+ // TODO: Create semantic token (e.g. colors.icon.subdued) that maps to secondary.6
3840
+ // Using palette bridge value directly until semantic token is defined
3841
+ color: "secondary.6",
3842
+ cursor: "grab",
3843
+ flexShrink: 0,
3844
+ width: "9",
3845
+ height: "10",
3846
+ _active: { cursor: "grabbing" }
3847
+ },
3848
+ title: {
3849
+ width: "full",
3850
+ fontSize: "sm",
3851
+ fontWeight: "semibold",
3852
+ lineHeight: "1.4",
3853
+ color: "fg.default"
3854
+ },
3855
+ // HStack handles: display:flex, alignItems:center, justifyContent:space-between.
3856
+ switchRow: {
3857
+ width: "full",
3858
+ pt: "1",
3859
+ mt: "1"
3860
+ },
3861
+ switchLabel: {
3862
+ fontSize: "sm",
3863
+ color: "fg.muted",
3864
+ fontWeight: "medium"
3865
+ },
3866
+ // Difficulty pill: M3 container tokens selected by data-difficulty attribute.
3867
+ // Default (beginner) = primaryContainer; overridden for intermediate/advanced.
3868
+ difficultyBadge: {
3869
+ display: "inline-flex",
3870
+ alignItems: "center",
3871
+ borderRadius: "l2",
3872
+ px: "2",
3873
+ h: "5",
3874
+ fontSize: "xs",
3875
+ fontWeight: "medium",
3876
+ bg: "m3Primary.container",
3877
+ color: "onM3Primary.container",
3878
+ '&[data-difficulty="intermediate"]': {
3879
+ bg: "m3Secondary.container",
3880
+ color: "onM3Secondary.container"
3881
+ },
3882
+ '&[data-difficulty="advanced"]': {
3883
+ bg: "m3Tertiary.container",
3884
+ color: "onM3Tertiary.container"
3885
+ }
3886
+ },
3887
+ // Duration pill: per-difficulty inverse palette colors.
3888
+ // Default (beginner): inversePrimary → semanticDark.primary (#B1D18A light, #4C662B dark)
3889
+ // Intermediate: inverseSecondary → semanticDark.secondary (#BFCBAD light, #586249 dark)
3890
+ // Advanced: inverseTertiary → semanticDark.tertiary (#A0D0CB light, #386663 dark)
3891
+ durationBadge: {
3892
+ display: "inline-flex",
3893
+ alignItems: "center",
3894
+ gap: "1",
3895
+ borderRadius: "l2",
3896
+ px: "2",
3897
+ h: "5",
3898
+ fontSize: "xs",
3899
+ fontWeight: "medium",
3900
+ bg: "inversePrimary",
3901
+ color: "onSurface",
3902
+ '&[data-difficulty="intermediate"]': {
3903
+ bg: "inverseSecondary"
3904
+ },
3905
+ '&[data-difficulty="advanced"]': {
3906
+ bg: "inverseTertiary"
3907
+ }
3908
+ }
3909
+ },
3910
+ variants: {
3911
+ isActive: {
3912
+ true: {
3913
+ root: {
3914
+ borderLeftColor: "primary.6"
3915
+ },
3916
+ positionBadge: {
3917
+ bg: "primary.6",
3918
+ color: "white",
3919
+ borderColor: "primary.6"
3920
+ }
3921
+ },
3922
+ false: {}
3923
+ },
3924
+ isDragging: {
3925
+ true: {
3926
+ root: {
3927
+ opacity: "0.4"
3928
+ }
3929
+ },
3930
+ false: {}
3931
+ }
3932
+ },
3933
+ defaultVariants: {
3934
+ isActive: false,
3935
+ isDragging: false
3936
+ }
3937
+ });
3938
+ var scenarioQueue = dev.defineSlotRecipe({
3939
+ className: "scenario-queue",
3940
+ description: "Panel component with tabs and draggable scenario cards",
3941
+ slots: [
3942
+ "root",
3943
+ "header",
3944
+ "title",
3945
+ "count",
3946
+ "tabsInner",
3947
+ "tabList",
3948
+ "tabsContent",
3949
+ "scrollArea",
3950
+ "emptyState",
3951
+ "addButtonArea",
3952
+ "addButton"
3953
+ ],
3954
+ base: {
3955
+ root: {
3956
+ display: "flex",
3957
+ flexDirection: "column",
3958
+ h: "full",
3959
+ minH: "320px",
3960
+ minW: "250px",
3961
+ maxW: "300px",
3962
+ overflow: "hidden",
3963
+ bg: "surface"
3964
+ },
3965
+ header: {
3966
+ px: "4",
3967
+ pt: "4",
3968
+ pb: "2",
3969
+ flexShrink: 0
3970
+ },
3971
+ title: {
3972
+ fontWeight: "semibold",
3973
+ fontSize: "md",
3974
+ color: "fg.default"
3975
+ },
3976
+ count: {
3977
+ fontSize: "xs",
3978
+ color: "fg.muted",
3979
+ mt: "0.5"
3980
+ },
3981
+ // Applied directly to Tabs.Root className — handles the flex column growth
3982
+ // and scroll containment without a redundant wrapper div.
3983
+ tabsInner: {
3984
+ flex: "1",
3985
+ minHeight: "0",
3986
+ overflow: "hidden",
3987
+ display: "flex",
3988
+ flexDirection: "column"
3989
+ },
3990
+ tabList: {
3991
+ px: "4",
3992
+ flexShrink: 0
3993
+ },
3994
+ // Applied to each Tabs.Content — allows independent scrolling per tab.
3995
+ tabsContent: {
3996
+ flex: "1",
3997
+ minHeight: "0",
3998
+ overflowY: "auto"
3999
+ },
4000
+ // Block layout so cards size to natural height and the container scrolls.
4001
+ scrollArea: {
4002
+ px: "4",
4003
+ py: "3",
4004
+ "& > * + *": { marginTop: "6" }
4005
+ },
4006
+ // Center primitive handles the flex centering; recipe provides spacing/text.
4007
+ emptyState: {
4008
+ py: "12",
4009
+ fontSize: "sm",
4010
+ color: "fg.muted"
4011
+ },
4012
+ addButtonArea: {
4013
+ px: "4",
4014
+ pb: "4",
4015
+ pt: "2",
4016
+ flexShrink: 0
4017
+ },
4018
+ addButton: {
4019
+ width: "full"
4020
+ }
4021
+ }
4022
+ });
4023
+ var scenarioSettings = dev.defineSlotRecipe({
4024
+ className: "scenario-settings",
4025
+ // ── Token mappings verified against Figma MCP output (node 38:4186) ──
4026
+ // Figma file: GaHmFfmvO4loUzuZS4TgEz — "Discourser Queue Right Accordion"
4027
+ slots: [
4028
+ "root",
4029
+ "section",
4030
+ "sectionTrigger",
4031
+ "triggerLabel",
4032
+ "sectionIndicator",
4033
+ "sectionContent",
4034
+ // Info panels (sections 1-4): surfacevariant bg, explanation card, adjustments
4035
+ "infoPanel",
4036
+ "explanationCard",
4037
+ "explanationTitle",
4038
+ "explanationList",
4039
+ "explanationItem",
4040
+ "levelLabel",
4041
+ "adjustmentsRow",
4042
+ // Radio panels (sections 5-6): neutral.1 bg, radio group, badge
4043
+ "radioPanel",
4044
+ "radioPanelTitle",
4045
+ "radioCurrentRow",
4046
+ "radioCurrentLabel",
4047
+ "currentlyBadge"
4048
+ ],
4049
+ base: {
4050
+ root: {
4051
+ display: "flex",
4052
+ flexDirection: "column",
4053
+ width: "full",
4054
+ cursor: "default"
4055
+ },
4056
+ section: {
4057
+ // Remove the accordion's default borderBottom
4058
+ borderBottom: "none",
4059
+ width: "full"
4060
+ },
4061
+ sectionTrigger: {
4062
+ // Layout — non-conflicting props only.
4063
+ // fontSize, fontWeight, borderRadius, bg, color, py applied via css={{}} in component.
4064
+ display: "flex",
4065
+ alignItems: "center",
4066
+ justifyContent: "space-between",
4067
+ gap: "4",
4068
+ width: "full",
4069
+ px: "5",
4070
+ // 20px — Figma spec
4071
+ cursor: "pointer"
4072
+ },
4073
+ triggerLabel: {
4074
+ flex: 1,
4075
+ textAlign: "start",
4076
+ overflow: "hidden",
4077
+ textOverflow: "ellipsis",
4078
+ whiteSpace: "nowrap"
4079
+ },
4080
+ sectionIndicator: {
4081
+ // color applied via css={{}} on ItemIndicator
4082
+ flexShrink: 0,
4083
+ _open: {
4084
+ rotate: "180deg"
4085
+ }
4086
+ },
4087
+ sectionContent: {
4088
+ overflow: "hidden",
4089
+ borderRadius: "0",
4090
+ width: "full"
4091
+ },
4092
+ // ── Info Panel (sections 1-4) ─────────────────────────────────────────────
4093
+ // Figma: bg = surfacevariant (#E1E4D5) — closest token: surface.container.highest (#E2E3D8)
4094
+ infoPanel: {
4095
+ display: "flex",
4096
+ flexDirection: "column",
4097
+ gap: "5",
4098
+ // 20px — Figma spec
4099
+ p: "5",
4100
+ // 20px — Figma spec
4101
+ bg: "surface.container.highest",
4102
+ width: "full"
4103
+ },
4104
+ // Figma: bg = neutral/99 (#FDFCF5), border = surfacevariant, rounded-8, p-20
4105
+ explanationCard: {
4106
+ display: "flex",
4107
+ flexDirection: "column",
4108
+ gap: "4",
4109
+ // 16px
4110
+ p: "5",
4111
+ // 20px
4112
+ bg: "neutral.1",
4113
+ // neutral[99] = #FDFCF5 ✓
4114
+ borderWidth: "1px",
4115
+ borderStyle: "solid",
4116
+ borderColor: "surface.container.highest",
4117
+ borderRadius: "l3"
4118
+ // 8px
4119
+ },
4120
+ // Figma: Inter Medium 20px, --dark-surfacecontainerhigh (#282b24 ≈ onSurface)
4121
+ explanationTitle: {
4122
+ fontSize: "lg",
4123
+ fontWeight: "semibold",
4124
+ color: "onSurface",
4125
+ lineHeight: "1"
4126
+ },
4127
+ explanationList: {
4128
+ display: "flex",
4129
+ flexDirection: "column",
4130
+ gap: "3",
4131
+ // 12px between items
4132
+ listStyleType: "disc",
4133
+ pl: "5"
4134
+ // indent for disc markers
4135
+ },
4136
+ explanationItem: {
4137
+ fontSize: "sm",
4138
+ // 16px — Figma spec
4139
+ lineHeight: "1.4",
4140
+ color: "fg.default"
4141
+ },
4142
+ // Figma: Inter Bold — the "Beginner:", "Intermediate:", "Advanced:" labels
4143
+ levelLabel: {
4144
+ fontWeight: "bold",
4145
+ color: "fg.default"
4146
+ },
4147
+ adjustmentsRow: {
4148
+ display: "flex",
4149
+ alignItems: "center",
4150
+ justifyContent: "center",
4151
+ width: "full"
4152
+ },
4153
+ // ── Radio Panel (sections 5-6) ────────────────────────────────────────────
4154
+ // Figma: bg = neutral/99 (#FDFCF5)
4155
+ radioPanel: {
4156
+ display: "flex",
4157
+ flexDirection: "column",
4158
+ gap: "6",
4159
+ // 24px
4160
+ p: "5",
4161
+ // 20px
4162
+ bg: "neutral.1",
4163
+ // neutral[99] = #FDFCF5 ✓
4164
+ width: "full"
4165
+ },
4166
+ // Figma: Inter Medium 20px, #363636 ≈ onSurface
4167
+ radioPanelTitle: {
4168
+ fontSize: "lg",
4169
+ fontWeight: "semibold",
4170
+ color: "onSurface",
4171
+ lineHeight: "1"
4172
+ },
4173
+ radioCurrentRow: {
4174
+ display: "flex",
4175
+ alignItems: "center",
4176
+ gap: "2.5",
4177
+ // 10px — Figma spec
4178
+ mt: "2.5"
4179
+ // space below panel title
4180
+ },
4181
+ // Figma: Inter SemiBold 18px, #363636
4182
+ radioCurrentLabel: {
4183
+ fontSize: "md",
4184
+ fontWeight: "semibold",
4185
+ color: "onSurface",
4186
+ whiteSpace: "nowrap"
4187
+ },
4188
+ // Figma: bg = dark-primary (#B1D18A) = inversePrimary, fully rounded pill
4189
+ // px-16, py-6, font: Geist/12px, color: #2c2a27 ≈ fg.default
4190
+ currentlyBadge: {
4191
+ display: "inline-flex",
4192
+ alignItems: "center",
4193
+ gap: "1.5",
4194
+ px: "4",
4195
+ // 16px
4196
+ py: "1.5",
4197
+ // 6px
4198
+ bg: "inversePrimary",
4199
+ // #B1D18A light mode ✓
4200
+ color: "fg.default",
4201
+ borderRadius: "full",
4202
+ fontSize: "xs",
4203
+ // 12px
4204
+ fontWeight: "normal",
4205
+ lineHeight: "1",
4206
+ whiteSpace: "nowrap"
4207
+ }
4208
+ }
4209
+ });
3455
4210
  var layerStyles = dev.defineLayerStyles({
3456
4211
  disabled: {
3457
4212
  value: {
@@ -3598,6 +4353,9 @@ var discourserPandaPreset = dev.definePreset({
3598
4353
  accordion,
3599
4354
  drawer,
3600
4355
  tabs,
4356
+ // Navigation
4357
+ breadcrumb,
4358
+ navigationMenu,
3601
4359
  // Form Elements
3602
4360
  switchComponent: switchRecipe,
3603
4361
  checkbox,
@@ -3613,7 +4371,11 @@ var discourserPandaPreset = dev.definePreset({
3613
4371
  popover,
3614
4372
  tooltip,
3615
4373
  // Custom Components
3616
- stepper
4374
+ stepper,
4375
+ contentCard,
4376
+ scenarioCard,
4377
+ scenarioQueue,
4378
+ scenarioSettings
3617
4379
  }
3618
4380
  }
3619
4381
  },
@@ -3637,5 +4399,5 @@ var discourserPandaPreset = dev.definePreset({
3637
4399
  exports.discourserPandaPreset = discourserPandaPreset;
3638
4400
  exports.material3Language = material3Language;
3639
4401
  exports.transformToPandaTheme = transformToPandaTheme;
3640
- //# sourceMappingURL=chunk-QC44JPCA.cjs.map
3641
- //# sourceMappingURL=chunk-QC44JPCA.cjs.map
4402
+ //# sourceMappingURL=chunk-PFWU7QSM.cjs.map
4403
+ //# sourceMappingURL=chunk-PFWU7QSM.cjs.map