@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
@@ -1,5 +1,5 @@
1
1
  import { defineSemanticTokens, defineRecipe, defineSlotRecipe, defineLayerStyles, defineTextStyles, definePreset } from '@pandacss/dev';
2
- import { fieldAnatomy, accordionAnatomy, dialogAnatomy, tabsAnatomy, switchAnatomy, checkboxAnatomy, radioGroupAnatomy, selectAnatomy, sliderAnatomy, avatarAnatomy, progressAnatomy, toastAnatomy, popoverAnatomy, tooltipAnatomy } from '@ark-ui/react/anatomy';
2
+ import { accordionAnatomy, dialogAnatomy, tabsAnatomy, switchAnatomy, selectAnatomy, sliderAnatomy, popoverAnatomy } from '@ark-ui/react/anatomy';
3
3
 
4
4
  // src/languages/material3.language.ts
5
5
  var material3Language = {
@@ -768,6 +768,10 @@ var m3SemanticTokens = defineSemanticTokens.colors({
768
768
  inverseSurface: { value: { base: semantic.inverseSurface, _dark: semanticDark.inverseSurface } },
769
769
  inverseOnSurface: { value: { base: semantic.inverseOnSurface, _dark: semanticDark.inverseOnSurface } },
770
770
  inversePrimary: { value: { base: semantic.inversePrimary, _dark: semanticDark.inversePrimary } },
771
+ // Not standard M3 tokens, but follow inversePrimary's pattern:
772
+ // light mode = dark-palette value, dark mode = light-palette value.
773
+ inverseSecondary: { value: { base: semanticDark.secondary, _dark: semantic.secondary } },
774
+ inverseTertiary: { value: { base: semanticDark.tertiary, _dark: semantic.tertiary } },
771
775
  // Scrim/Shadow
772
776
  scrim: { value: { base: semantic.scrim, _dark: semanticDark.scrim } }
773
777
  });
@@ -1091,7 +1095,7 @@ var inputGroup = defineSlotRecipe({
1091
1095
  });
1092
1096
  var field = defineSlotRecipe({
1093
1097
  className: "field",
1094
- slots: fieldAnatomy.keys(),
1098
+ slots: ["root", "errorText", "helperText", "input", "label", "select", "textarea", "requiredIndicator"],
1095
1099
  base: {
1096
1100
  root: {
1097
1101
  display: "flex",
@@ -1386,13 +1390,16 @@ var accordion = defineSlotRecipe({
1386
1390
  overflow: "hidden",
1387
1391
  borderRadius: "var(--accordion-radius)",
1388
1392
  _open: {
1389
- animationName: "expand-height, fade-in",
1390
- animationDuration: "normal"
1393
+ animationName: "slide-down",
1394
+ animationDuration: "250ms",
1395
+ animationTimingFunction: "ease-out",
1396
+ animationFillMode: "forwards"
1391
1397
  },
1392
1398
  _closed: {
1393
- animationName: "collapse-height, fade-out",
1394
- animationDuration: "normal",
1395
- display: "none"
1399
+ animationName: "slide-up",
1400
+ animationDuration: "200ms",
1401
+ animationTimingFunction: "ease-out",
1402
+ animationFillMode: "forwards"
1396
1403
  }
1397
1404
  }
1398
1405
  },
@@ -1793,6 +1800,220 @@ var tabs = defineSlotRecipe({
1793
1800
  variant: "line"
1794
1801
  }
1795
1802
  });
1803
+ var breadcrumb = defineSlotRecipe({
1804
+ className: "breadcrumb",
1805
+ slots: ["root", "list", "link", "item", "separator", "ellipsis"],
1806
+ base: {
1807
+ list: {
1808
+ alignItems: "center",
1809
+ display: "flex",
1810
+ listStyle: "none",
1811
+ wordBreak: "break-word"
1812
+ },
1813
+ link: {
1814
+ alignItems: "center",
1815
+ borderRadius: "l1",
1816
+ display: "inline-flex",
1817
+ focusRing: "outside",
1818
+ gap: "2",
1819
+ outline: "0",
1820
+ textDecoration: "none",
1821
+ transition: "color",
1822
+ _icon: { boxSize: "1em" }
1823
+ },
1824
+ item: {
1825
+ display: "inline-flex",
1826
+ alignItems: "center",
1827
+ color: "fg.muted",
1828
+ _last: {
1829
+ color: "fg.default"
1830
+ }
1831
+ },
1832
+ separator: {
1833
+ color: "fg.subtle",
1834
+ _icon: { boxSize: "1em" },
1835
+ _rtl: { rotate: "180deg" }
1836
+ },
1837
+ ellipsis: {
1838
+ alignItems: "center",
1839
+ color: "fg.muted",
1840
+ display: "inline-flex",
1841
+ justifyContent: "center",
1842
+ _icon: { boxSize: "1em" }
1843
+ }
1844
+ },
1845
+ variants: {
1846
+ variant: {
1847
+ underline: {
1848
+ link: {
1849
+ textDecoration: "underline",
1850
+ textDecorationThickness: "0.1em",
1851
+ textUnderlineOffset: "0.125em",
1852
+ textDecorationColor: "fg.subtle",
1853
+ _hover: { textDecorationColor: "fg.default" }
1854
+ }
1855
+ },
1856
+ plain: {
1857
+ link: {
1858
+ color: "fg.muted",
1859
+ _hover: { color: "fg.default" },
1860
+ _currentPage: { color: "fg.default" }
1861
+ }
1862
+ },
1863
+ discourser: {
1864
+ list: {
1865
+ gap: "2.5",
1866
+ alignItems: "center"
1867
+ },
1868
+ item: {
1869
+ bg: "transparent",
1870
+ px: "1.5",
1871
+ py: "1.5",
1872
+ borderRadius: "l2",
1873
+ h: "9",
1874
+ display: "inline-flex",
1875
+ alignItems: "center",
1876
+ _last: {
1877
+ color: "fg.default",
1878
+ fontWeight: "medium",
1879
+ fontSize: "md",
1880
+ fontFeatureSettings: "'liga' 0, 'calt' 0"
1881
+ }
1882
+ },
1883
+ link: {
1884
+ color: "fg.subtle",
1885
+ fontWeight: "medium",
1886
+ fontSize: "lg",
1887
+ _hover: { color: "fg.default" },
1888
+ _currentPage: { color: "fg.default", fontWeight: "semibold" }
1889
+ },
1890
+ separator: {
1891
+ color: "primary.7",
1892
+ _icon: { width: "27px", height: "27px" }
1893
+ }
1894
+ }
1895
+ },
1896
+ size: {
1897
+ xs: { list: { gap: "1", textStyle: "xs" } },
1898
+ sm: { list: { gap: "1", textStyle: "sm" } },
1899
+ md: { list: { gap: "1.5", textStyle: "md" } },
1900
+ lg: { list: { gap: "2", textStyle: "lg" } }
1901
+ }
1902
+ },
1903
+ defaultVariants: {
1904
+ variant: "plain",
1905
+ size: "md"
1906
+ }
1907
+ });
1908
+ var navigationMenu = defineSlotRecipe({
1909
+ className: "navigation-menu",
1910
+ slots: [
1911
+ "root",
1912
+ "section",
1913
+ "sectionTrigger",
1914
+ "sectionIcon",
1915
+ "sectionTitle",
1916
+ "sectionIndicator",
1917
+ "sectionContent",
1918
+ "itemList",
1919
+ "item",
1920
+ "itemLink"
1921
+ ],
1922
+ base: {
1923
+ // ── Token mappings verified against Figma MCP output (node 38:4046) ──
1924
+ // Figma file: GaHmFfmvO4loUzuZS4TgEz
1925
+ root: {
1926
+ bg: "surface.dim",
1927
+ // Figma: #f5f1eb warm sage sidebar bg
1928
+ width: "full",
1929
+ py: "2"
1930
+ },
1931
+ section: {
1932
+ borderBottom: "none"
1933
+ },
1934
+ sectionTrigger: {
1935
+ // Layout-only props — no conflicts with accordion recipe here
1936
+ display: "flex",
1937
+ alignItems: "center",
1938
+ justifyContent: "space-between",
1939
+ width: "full",
1940
+ cursor: "pointer",
1941
+ // NOTE: fontSize, fontWeight, borderRadius, p, bg, color are applied via
1942
+ // css={{}} on Accordion.ItemTrigger in the component (utilities layer > recipes layer).
1943
+ // See ScenarioCard.tsx for the same pattern.
1944
+ _hover: {
1945
+ bg: "surface.container.high"
1946
+ }
1947
+ },
1948
+ sectionIcon: {
1949
+ flexShrink: 0,
1950
+ display: "flex",
1951
+ alignItems: "center",
1952
+ justifyContent: "center",
1953
+ width: "6",
1954
+ // 24px container
1955
+ height: "6",
1956
+ color: "primary.50",
1957
+ // olive green icons — Figma: #518500
1958
+ fontSize: "20px"
1959
+ // icon SVGs use width/height: 1em → sets 20×20px
1960
+ },
1961
+ sectionTitle: {
1962
+ flex: 1,
1963
+ textAlign: "start"
1964
+ // Font styles inherited from trigger's css={{}} utility overrides
1965
+ },
1966
+ sectionIndicator: {
1967
+ // color set via css={{}} on Accordion.ItemIndicator (utilities > recipes)
1968
+ _open: {
1969
+ rotate: "180deg"
1970
+ }
1971
+ },
1972
+ sectionContent: {
1973
+ overflow: "hidden",
1974
+ borderRadius: "0"
1975
+ // override accordion's default border-radius
1976
+ },
1977
+ itemList: {
1978
+ display: "flex",
1979
+ flexDirection: "column",
1980
+ gap: "0.5",
1981
+ pt: "1",
1982
+ pb: "2"
1983
+ },
1984
+ item: {},
1985
+ itemLink: {
1986
+ display: "block",
1987
+ py: "2",
1988
+ // Figma: 5px top/bottom
1989
+ pl: "8",
1990
+ // Figma: 30px left indent → spacing.8 = 32px
1991
+ pr: "2",
1992
+ // Figma: 5px right padding
1993
+ borderRadius: "l3",
1994
+ // Figma: 8px
1995
+ textDecoration: "none",
1996
+ fontSize: "md",
1997
+ // Figma: 16px
1998
+ fontWeight: "norma",
1999
+ // Figma: Inter Medium 500
2000
+ lineHeight: "1",
2001
+ color: "onSurface",
2002
+ // Figma: #363636
2003
+ cursor: "pointer",
2004
+ _hover: {
2005
+ bg: "surface.container.high"
2006
+ // Figma: #ebe7e1
2007
+ },
2008
+ // Figma active state: surface.container.low (NOT primary.container)
2009
+ '&[data-active="true"]': {
2010
+ bg: "surface.container.low",
2011
+ // Figma: #f3f4e9 → surfaceContainerLow
2012
+ color: "onSurface"
2013
+ }
2014
+ }
2015
+ }
2016
+ });
1796
2017
  var switchRecipe = defineSlotRecipe({
1797
2018
  className: "switchComponent",
1798
2019
  jsx: ["Switch", /Switch\.+/],
@@ -1927,7 +2148,7 @@ var switchRecipe = defineSlotRecipe({
1927
2148
  }
1928
2149
  });
1929
2150
  var checkbox = defineSlotRecipe({
1930
- slots: checkboxAnatomy.keys(),
2151
+ slots: ["root", "label", "control", "indicator", "group"],
1931
2152
  className: "checkbox",
1932
2153
  base: {
1933
2154
  root: {
@@ -2030,7 +2251,7 @@ var checkbox = defineSlotRecipe({
2030
2251
  });
2031
2252
  var radioGroup = defineSlotRecipe({
2032
2253
  className: "radio-group",
2033
- slots: radioGroupAnatomy.keys(),
2254
+ slots: ["root", "label", "item", "itemText", "itemControl", "indicator"],
2034
2255
  base: {
2035
2256
  root: {
2036
2257
  display: "flex",
@@ -2548,7 +2769,7 @@ var slider = defineSlotRecipe({
2548
2769
  });
2549
2770
  var avatar = defineSlotRecipe({
2550
2771
  className: "avatar",
2551
- slots: avatarAnatomy.keys(),
2772
+ slots: ["root", "image", "fallback"],
2552
2773
  base: {
2553
2774
  root: {
2554
2775
  display: "inline-flex",
@@ -2743,7 +2964,7 @@ var badge = defineRecipe({
2743
2964
  }
2744
2965
  });
2745
2966
  var progress = defineSlotRecipe({
2746
- slots: progressAnatomy.keys(),
2967
+ slots: ["root", "label", "track", "range", "valueText", "view", "circle", "circleTrack", "circleRange"],
2747
2968
  className: "progress",
2748
2969
  base: {
2749
2970
  root: {
@@ -2913,7 +3134,7 @@ var skeleton = defineRecipe({
2913
3134
  });
2914
3135
  var toast = defineSlotRecipe({
2915
3136
  className: "toast",
2916
- slots: toastAnatomy.keys(),
3137
+ slots: ["group", "root", "title", "description", "actionTrigger", "closeTrigger"],
2917
3138
  base: {
2918
3139
  root: {
2919
3140
  alignItems: "start",
@@ -3187,7 +3408,7 @@ var popover = defineSlotRecipe({
3187
3408
  });
3188
3409
  var tooltip = defineSlotRecipe({
3189
3410
  className: "tooltip",
3190
- slots: tooltipAnatomy.keys(),
3411
+ slots: ["trigger", "arrow", "arrowTip", "positioner", "content"],
3191
3412
  base: {
3192
3413
  content: {
3193
3414
  "--tooltip-bg": "colors.gray.solid.bg",
@@ -3450,6 +3671,540 @@ var stepper = defineSlotRecipe({
3450
3671
  colorPalette: "primary"
3451
3672
  }
3452
3673
  });
3674
+ var contentCard = defineSlotRecipe({
3675
+ className: "content-card",
3676
+ slots: [
3677
+ "root",
3678
+ "header",
3679
+ "title",
3680
+ "badgeBar",
3681
+ "body",
3682
+ "section",
3683
+ "sectionTitle",
3684
+ "separator",
3685
+ "list",
3686
+ "listItem"
3687
+ ],
3688
+ base: {
3689
+ root: {
3690
+ bg: "neutral.1",
3691
+ borderRadius: "xl",
3692
+ borderWidth: "2px",
3693
+ borderColor: "border.default",
3694
+ display: "flex",
3695
+ flexDirection: "column",
3696
+ w: "full"
3697
+ },
3698
+ header: {
3699
+ display: "flex",
3700
+ flexDirection: "column",
3701
+ gap: "4"
3702
+ },
3703
+ title: {
3704
+ fontFamily: "heading",
3705
+ fontWeight: "semibold",
3706
+ fontSize: "2xl",
3707
+ color: "fg.default",
3708
+ fontVariationSettings: "'SOFT' 0, 'WONK' 1"
3709
+ },
3710
+ badgeBar: {
3711
+ display: "flex",
3712
+ flexWrap: "wrap",
3713
+ gap: "2.5",
3714
+ px: "2.5",
3715
+ py: "1"
3716
+ },
3717
+ body: {
3718
+ display: "flex",
3719
+ flexDirection: "column",
3720
+ gap: "9",
3721
+ fontSize: "xl",
3722
+ lineHeight: "1.4",
3723
+ color: "fg.default"
3724
+ },
3725
+ section: {
3726
+ display: "flex",
3727
+ flexDirection: "column",
3728
+ gap: "5"
3729
+ },
3730
+ sectionTitle: {
3731
+ fontFamily: "heading",
3732
+ fontWeight: "semibold",
3733
+ fontSize: "2xl",
3734
+ color: "fg.default",
3735
+ fontVariationSettings: "'SOFT' 0, 'WONK' 1",
3736
+ px: "2.5",
3737
+ py: "2.5"
3738
+ },
3739
+ separator: {
3740
+ borderTopWidth: "1px",
3741
+ borderColor: "border.default",
3742
+ w: "full",
3743
+ my: "4"
3744
+ },
3745
+ list: {
3746
+ display: "flex",
3747
+ flexDirection: "column",
3748
+ gap: "5",
3749
+ listStyleType: "disc",
3750
+ ps: "8"
3751
+ },
3752
+ listItem: {
3753
+ fontSize: "xl",
3754
+ lineHeight: "1.4",
3755
+ color: "fg.default"
3756
+ }
3757
+ },
3758
+ variants: {
3759
+ size: {
3760
+ sm: {
3761
+ root: { maxW: "xl", pt: "6", px: "6", pb: "6" },
3762
+ title: { fontSize: "xl" },
3763
+ body: { fontSize: "lg" },
3764
+ listItem: { fontSize: "lg" }
3765
+ },
3766
+ md: {
3767
+ root: { maxW: "2xl", pt: "10", px: "10", pb: "10", gap: "6" },
3768
+ title: { fontSize: "2xl" },
3769
+ body: { fontSize: "xl" },
3770
+ listItem: { fontSize: "xl" }
3771
+ },
3772
+ lg: {
3773
+ root: { maxW: "4xl", pt: "12", px: "12", pb: "12", gap: "8" },
3774
+ title: { fontSize: "3xl" },
3775
+ body: { fontSize: "xl" },
3776
+ listItem: { fontSize: "xl" }
3777
+ }
3778
+ },
3779
+ variant: {
3780
+ elevated: {
3781
+ root: { boxShadow: "lg", borderWidth: "0" }
3782
+ },
3783
+ outline: {
3784
+ root: { borderWidth: "2px", borderColor: "border.default" }
3785
+ },
3786
+ flat: {
3787
+ root: { borderWidth: "0", bg: "transparent" }
3788
+ }
3789
+ }
3790
+ },
3791
+ defaultVariants: {
3792
+ size: "md",
3793
+ variant: "outline"
3794
+ }
3795
+ });
3796
+ var scenarioCard = defineSlotRecipe({
3797
+ className: "scenario-card",
3798
+ // Slots cover only scenario-specific styling.
3799
+ // Base card appearance (bg, border, borderRadius, overflow) comes from
3800
+ // Card.Root variant="outline" via the card slot recipe.
3801
+ // Layout structure (flex, gap, alignment) comes from Panda CSS JSX primitives.
3802
+ slots: ["root", "positionBadge", "dragHandle", "title", "switchRow", "switchLabel", "difficultyBadge", "durationBadge"],
3803
+ base: {
3804
+ root: {
3805
+ // Left accent border — inactive cards use transparent to preserve card width.
3806
+ borderLeftWidth: "3px",
3807
+ borderLeftStyle: "solid",
3808
+ borderLeftColor: "transparent",
3809
+ // Custom purple-tinted shadow from Figma spec (0px 2px 8px 0px rgba(167,139,250,0.15)).
3810
+ // This overrides Card.Root variant="elevated" (M3 level4) which is too heavy.
3811
+ // Raw value intentional: this non-standard shadow has no M3 elevation equivalent.
3812
+ boxShadow: "0px 2px 8px 0px rgba(167, 139, 250, 0.15)",
3813
+ // Figma cards use neutral/99 (#FDFCF5) — a warm off-white.
3814
+ // neutral.surface.bg resolves to white (#FFFFFF) in light mode, so we override.
3815
+ bg: "neutral.1",
3816
+ transition: "border-color",
3817
+ transitionDuration: "normal"
3818
+ },
3819
+ // Circle primitive handles: w/h (size="12"), borderRadius:full, flex centering.
3820
+ // Recipe handles: visual appearance (border, color, font).
3821
+ positionBadge: {
3822
+ fontSize: "md",
3823
+ fontWeight: "semibold",
3824
+ flexShrink: 0,
3825
+ borderWidth: "1px",
3826
+ borderStyle: "solid",
3827
+ borderColor: "neutral.6",
3828
+ color: "fg.default",
3829
+ bg: "transparent",
3830
+ transition: "all",
3831
+ transitionDuration: "normal"
3832
+ },
3833
+ dragHandle: {
3834
+ display: "flex",
3835
+ alignItems: "center",
3836
+ justifyContent: "center",
3837
+ // TODO: Create semantic token (e.g. colors.icon.subdued) that maps to secondary.6
3838
+ // Using palette bridge value directly until semantic token is defined
3839
+ color: "secondary.6",
3840
+ cursor: "grab",
3841
+ flexShrink: 0,
3842
+ width: "9",
3843
+ height: "10",
3844
+ _active: { cursor: "grabbing" }
3845
+ },
3846
+ title: {
3847
+ width: "full",
3848
+ fontSize: "sm",
3849
+ fontWeight: "semibold",
3850
+ lineHeight: "1.4",
3851
+ color: "fg.default"
3852
+ },
3853
+ // HStack handles: display:flex, alignItems:center, justifyContent:space-between.
3854
+ switchRow: {
3855
+ width: "full",
3856
+ pt: "1",
3857
+ mt: "1"
3858
+ },
3859
+ switchLabel: {
3860
+ fontSize: "sm",
3861
+ color: "fg.muted",
3862
+ fontWeight: "medium"
3863
+ },
3864
+ // Difficulty pill: M3 container tokens selected by data-difficulty attribute.
3865
+ // Default (beginner) = primaryContainer; overridden for intermediate/advanced.
3866
+ difficultyBadge: {
3867
+ display: "inline-flex",
3868
+ alignItems: "center",
3869
+ borderRadius: "l2",
3870
+ px: "2",
3871
+ h: "5",
3872
+ fontSize: "xs",
3873
+ fontWeight: "medium",
3874
+ bg: "m3Primary.container",
3875
+ color: "onM3Primary.container",
3876
+ '&[data-difficulty="intermediate"]': {
3877
+ bg: "m3Secondary.container",
3878
+ color: "onM3Secondary.container"
3879
+ },
3880
+ '&[data-difficulty="advanced"]': {
3881
+ bg: "m3Tertiary.container",
3882
+ color: "onM3Tertiary.container"
3883
+ }
3884
+ },
3885
+ // Duration pill: per-difficulty inverse palette colors.
3886
+ // Default (beginner): inversePrimary → semanticDark.primary (#B1D18A light, #4C662B dark)
3887
+ // Intermediate: inverseSecondary → semanticDark.secondary (#BFCBAD light, #586249 dark)
3888
+ // Advanced: inverseTertiary → semanticDark.tertiary (#A0D0CB light, #386663 dark)
3889
+ durationBadge: {
3890
+ display: "inline-flex",
3891
+ alignItems: "center",
3892
+ gap: "1",
3893
+ borderRadius: "l2",
3894
+ px: "2",
3895
+ h: "5",
3896
+ fontSize: "xs",
3897
+ fontWeight: "medium",
3898
+ bg: "inversePrimary",
3899
+ color: "onSurface",
3900
+ '&[data-difficulty="intermediate"]': {
3901
+ bg: "inverseSecondary"
3902
+ },
3903
+ '&[data-difficulty="advanced"]': {
3904
+ bg: "inverseTertiary"
3905
+ }
3906
+ }
3907
+ },
3908
+ variants: {
3909
+ isActive: {
3910
+ true: {
3911
+ root: {
3912
+ borderLeftColor: "primary.6"
3913
+ },
3914
+ positionBadge: {
3915
+ bg: "primary.6",
3916
+ color: "white",
3917
+ borderColor: "primary.6"
3918
+ }
3919
+ },
3920
+ false: {}
3921
+ },
3922
+ isDragging: {
3923
+ true: {
3924
+ root: {
3925
+ opacity: "0.4"
3926
+ }
3927
+ },
3928
+ false: {}
3929
+ }
3930
+ },
3931
+ defaultVariants: {
3932
+ isActive: false,
3933
+ isDragging: false
3934
+ }
3935
+ });
3936
+ var scenarioQueue = defineSlotRecipe({
3937
+ className: "scenario-queue",
3938
+ description: "Panel component with tabs and draggable scenario cards",
3939
+ slots: [
3940
+ "root",
3941
+ "header",
3942
+ "title",
3943
+ "count",
3944
+ "tabsInner",
3945
+ "tabList",
3946
+ "tabsContent",
3947
+ "scrollArea",
3948
+ "emptyState",
3949
+ "addButtonArea",
3950
+ "addButton"
3951
+ ],
3952
+ base: {
3953
+ root: {
3954
+ display: "flex",
3955
+ flexDirection: "column",
3956
+ h: "full",
3957
+ minH: "320px",
3958
+ minW: "250px",
3959
+ maxW: "300px",
3960
+ overflow: "hidden",
3961
+ bg: "surface"
3962
+ },
3963
+ header: {
3964
+ px: "4",
3965
+ pt: "4",
3966
+ pb: "2",
3967
+ flexShrink: 0
3968
+ },
3969
+ title: {
3970
+ fontWeight: "semibold",
3971
+ fontSize: "md",
3972
+ color: "fg.default"
3973
+ },
3974
+ count: {
3975
+ fontSize: "xs",
3976
+ color: "fg.muted",
3977
+ mt: "0.5"
3978
+ },
3979
+ // Applied directly to Tabs.Root className — handles the flex column growth
3980
+ // and scroll containment without a redundant wrapper div.
3981
+ tabsInner: {
3982
+ flex: "1",
3983
+ minHeight: "0",
3984
+ overflow: "hidden",
3985
+ display: "flex",
3986
+ flexDirection: "column"
3987
+ },
3988
+ tabList: {
3989
+ px: "4",
3990
+ flexShrink: 0
3991
+ },
3992
+ // Applied to each Tabs.Content — allows independent scrolling per tab.
3993
+ tabsContent: {
3994
+ flex: "1",
3995
+ minHeight: "0",
3996
+ overflowY: "auto"
3997
+ },
3998
+ // Block layout so cards size to natural height and the container scrolls.
3999
+ scrollArea: {
4000
+ px: "4",
4001
+ py: "3",
4002
+ "& > * + *": { marginTop: "6" }
4003
+ },
4004
+ // Center primitive handles the flex centering; recipe provides spacing/text.
4005
+ emptyState: {
4006
+ py: "12",
4007
+ fontSize: "sm",
4008
+ color: "fg.muted"
4009
+ },
4010
+ addButtonArea: {
4011
+ px: "4",
4012
+ pb: "4",
4013
+ pt: "2",
4014
+ flexShrink: 0
4015
+ },
4016
+ addButton: {
4017
+ width: "full"
4018
+ }
4019
+ }
4020
+ });
4021
+ var scenarioSettings = defineSlotRecipe({
4022
+ className: "scenario-settings",
4023
+ // ── Token mappings verified against Figma MCP output (node 38:4186) ──
4024
+ // Figma file: GaHmFfmvO4loUzuZS4TgEz — "Discourser Queue Right Accordion"
4025
+ slots: [
4026
+ "root",
4027
+ "section",
4028
+ "sectionTrigger",
4029
+ "triggerLabel",
4030
+ "sectionIndicator",
4031
+ "sectionContent",
4032
+ // Info panels (sections 1-4): surfacevariant bg, explanation card, adjustments
4033
+ "infoPanel",
4034
+ "explanationCard",
4035
+ "explanationTitle",
4036
+ "explanationList",
4037
+ "explanationItem",
4038
+ "levelLabel",
4039
+ "adjustmentsRow",
4040
+ // Radio panels (sections 5-6): neutral.1 bg, radio group, badge
4041
+ "radioPanel",
4042
+ "radioPanelTitle",
4043
+ "radioCurrentRow",
4044
+ "radioCurrentLabel",
4045
+ "currentlyBadge"
4046
+ ],
4047
+ base: {
4048
+ root: {
4049
+ display: "flex",
4050
+ flexDirection: "column",
4051
+ width: "full",
4052
+ cursor: "default"
4053
+ },
4054
+ section: {
4055
+ // Remove the accordion's default borderBottom
4056
+ borderBottom: "none",
4057
+ width: "full"
4058
+ },
4059
+ sectionTrigger: {
4060
+ // Layout — non-conflicting props only.
4061
+ // fontSize, fontWeight, borderRadius, bg, color, py applied via css={{}} in component.
4062
+ display: "flex",
4063
+ alignItems: "center",
4064
+ justifyContent: "space-between",
4065
+ gap: "4",
4066
+ width: "full",
4067
+ px: "5",
4068
+ // 20px — Figma spec
4069
+ cursor: "pointer"
4070
+ },
4071
+ triggerLabel: {
4072
+ flex: 1,
4073
+ textAlign: "start",
4074
+ overflow: "hidden",
4075
+ textOverflow: "ellipsis",
4076
+ whiteSpace: "nowrap"
4077
+ },
4078
+ sectionIndicator: {
4079
+ // color applied via css={{}} on ItemIndicator
4080
+ flexShrink: 0,
4081
+ _open: {
4082
+ rotate: "180deg"
4083
+ }
4084
+ },
4085
+ sectionContent: {
4086
+ overflow: "hidden",
4087
+ borderRadius: "0",
4088
+ width: "full"
4089
+ },
4090
+ // ── Info Panel (sections 1-4) ─────────────────────────────────────────────
4091
+ // Figma: bg = surfacevariant (#E1E4D5) — closest token: surface.container.highest (#E2E3D8)
4092
+ infoPanel: {
4093
+ display: "flex",
4094
+ flexDirection: "column",
4095
+ gap: "5",
4096
+ // 20px — Figma spec
4097
+ p: "5",
4098
+ // 20px — Figma spec
4099
+ bg: "surface.container.highest",
4100
+ width: "full"
4101
+ },
4102
+ // Figma: bg = neutral/99 (#FDFCF5), border = surfacevariant, rounded-8, p-20
4103
+ explanationCard: {
4104
+ display: "flex",
4105
+ flexDirection: "column",
4106
+ gap: "4",
4107
+ // 16px
4108
+ p: "5",
4109
+ // 20px
4110
+ bg: "neutral.1",
4111
+ // neutral[99] = #FDFCF5 ✓
4112
+ borderWidth: "1px",
4113
+ borderStyle: "solid",
4114
+ borderColor: "surface.container.highest",
4115
+ borderRadius: "l3"
4116
+ // 8px
4117
+ },
4118
+ // Figma: Inter Medium 20px, --dark-surfacecontainerhigh (#282b24 ≈ onSurface)
4119
+ explanationTitle: {
4120
+ fontSize: "lg",
4121
+ fontWeight: "semibold",
4122
+ color: "onSurface",
4123
+ lineHeight: "1"
4124
+ },
4125
+ explanationList: {
4126
+ display: "flex",
4127
+ flexDirection: "column",
4128
+ gap: "3",
4129
+ // 12px between items
4130
+ listStyleType: "disc",
4131
+ pl: "5"
4132
+ // indent for disc markers
4133
+ },
4134
+ explanationItem: {
4135
+ fontSize: "sm",
4136
+ // 16px — Figma spec
4137
+ lineHeight: "1.4",
4138
+ color: "fg.default"
4139
+ },
4140
+ // Figma: Inter Bold — the "Beginner:", "Intermediate:", "Advanced:" labels
4141
+ levelLabel: {
4142
+ fontWeight: "bold",
4143
+ color: "fg.default"
4144
+ },
4145
+ adjustmentsRow: {
4146
+ display: "flex",
4147
+ alignItems: "center",
4148
+ justifyContent: "center",
4149
+ width: "full"
4150
+ },
4151
+ // ── Radio Panel (sections 5-6) ────────────────────────────────────────────
4152
+ // Figma: bg = neutral/99 (#FDFCF5)
4153
+ radioPanel: {
4154
+ display: "flex",
4155
+ flexDirection: "column",
4156
+ gap: "6",
4157
+ // 24px
4158
+ p: "5",
4159
+ // 20px
4160
+ bg: "neutral.1",
4161
+ // neutral[99] = #FDFCF5 ✓
4162
+ width: "full"
4163
+ },
4164
+ // Figma: Inter Medium 20px, #363636 ≈ onSurface
4165
+ radioPanelTitle: {
4166
+ fontSize: "lg",
4167
+ fontWeight: "semibold",
4168
+ color: "onSurface",
4169
+ lineHeight: "1"
4170
+ },
4171
+ radioCurrentRow: {
4172
+ display: "flex",
4173
+ alignItems: "center",
4174
+ gap: "2.5",
4175
+ // 10px — Figma spec
4176
+ mt: "2.5"
4177
+ // space below panel title
4178
+ },
4179
+ // Figma: Inter SemiBold 18px, #363636
4180
+ radioCurrentLabel: {
4181
+ fontSize: "md",
4182
+ fontWeight: "semibold",
4183
+ color: "onSurface",
4184
+ whiteSpace: "nowrap"
4185
+ },
4186
+ // Figma: bg = dark-primary (#B1D18A) = inversePrimary, fully rounded pill
4187
+ // px-16, py-6, font: Geist/12px, color: #2c2a27 ≈ fg.default
4188
+ currentlyBadge: {
4189
+ display: "inline-flex",
4190
+ alignItems: "center",
4191
+ gap: "1.5",
4192
+ px: "4",
4193
+ // 16px
4194
+ py: "1.5",
4195
+ // 6px
4196
+ bg: "inversePrimary",
4197
+ // #B1D18A light mode ✓
4198
+ color: "fg.default",
4199
+ borderRadius: "full",
4200
+ fontSize: "xs",
4201
+ // 12px
4202
+ fontWeight: "normal",
4203
+ lineHeight: "1",
4204
+ whiteSpace: "nowrap"
4205
+ }
4206
+ }
4207
+ });
3453
4208
  var layerStyles = defineLayerStyles({
3454
4209
  disabled: {
3455
4210
  value: {
@@ -3596,6 +4351,9 @@ var discourserPandaPreset = definePreset({
3596
4351
  accordion,
3597
4352
  drawer,
3598
4353
  tabs,
4354
+ // Navigation
4355
+ breadcrumb,
4356
+ navigationMenu,
3599
4357
  // Form Elements
3600
4358
  switchComponent: switchRecipe,
3601
4359
  checkbox,
@@ -3611,7 +4369,11 @@ var discourserPandaPreset = definePreset({
3611
4369
  popover,
3612
4370
  tooltip,
3613
4371
  // Custom Components
3614
- stepper
4372
+ stepper,
4373
+ contentCard,
4374
+ scenarioCard,
4375
+ scenarioQueue,
4376
+ scenarioSettings
3615
4377
  }
3616
4378
  }
3617
4379
  },
@@ -3633,5 +4395,5 @@ var discourserPandaPreset = definePreset({
3633
4395
  });
3634
4396
 
3635
4397
  export { discourserPandaPreset, material3Language, transformToPandaTheme };
3636
- //# sourceMappingURL=chunk-M7J7WKJY.js.map
3637
- //# sourceMappingURL=chunk-M7J7WKJY.js.map
4398
+ //# sourceMappingURL=chunk-SNUJBT5R.js.map
4399
+ //# sourceMappingURL=chunk-SNUJBT5R.js.map