@mavea/mavea 2.0.0 → 2.1.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 (270) hide show
  1. package/CHANGELOG.md +101 -0
  2. package/PRIVACY.md +9 -2
  3. package/README.md +19 -3
  4. package/SECURITY.md +1 -1
  5. package/TERMS.md +4 -2
  6. package/TRADEMARKS.md +3 -1
  7. package/bin/mavea.mjs +40 -8
  8. package/dist/.vite/manifest.json +886 -846
  9. package/dist/assets/AnnotationLayer-BRYhJ1LB.css +1 -0
  10. package/dist/assets/AnnotationLayer-Bh1yiSAK.js +2 -0
  11. package/dist/assets/{AppCommandPalette-DdOPNZ0e.js → AppCommandPalette-DS4sLY_K.js} +1 -1
  12. package/dist/assets/{AtlasView-DO_p0TdZ.js → AtlasView-CYZ9sfXb.js} +1 -1
  13. package/dist/assets/BlockEmpty-B-giiUPy.js +1 -0
  14. package/dist/assets/{CadenceCard-DxceyiPA.js → CadenceCard-j1V7XOxX.js} +1 -1
  15. package/dist/assets/{CheckLogRail-BibJTid0.js → CheckLogRail-onH7DaxW.js} +1 -1
  16. package/dist/assets/{CommandPalette-Bs6tpdZl.js → CommandPalette-Cz8h94Jd.js} +1 -1
  17. package/dist/assets/ConversationVideoStudio-adb7legp.js +1 -0
  18. package/dist/assets/CourseLessonReader-CkzViEij.js +2 -0
  19. package/dist/assets/CourseLessonReader-DNHFQOkX.css +1 -0
  20. package/dist/assets/{CourseRail-CUa7uIGG.css → CourseRail-BDQIWara.css} +1 -1
  21. package/dist/assets/{CourseRail-BQmUsG6v.js → CourseRail-DD8gtAn4.js} +1 -1
  22. package/dist/assets/CoursesApp-B0HFM8Al.js +2 -0
  23. package/dist/assets/{DashPresent-BDWgO9am.js → DashPresent-BdOJ7F9D.js} +1 -1
  24. package/dist/assets/DashboardDetail-Chrpi1Yk.js +2 -0
  25. package/dist/assets/DashboardLoopGate-B01Hpm7O.js +2 -0
  26. package/dist/assets/DashboardLoopRuntime-BcdZtIgH.js +1 -0
  27. package/dist/assets/{DashboardSettings-DJon1Q4o.js → DashboardSettings-5tn-dw6G.js} +1 -1
  28. package/dist/assets/DashboardsApp--jjj-GVX.js +2 -0
  29. package/dist/assets/DeepZoomApp-BpQbKTjc.js +37 -0
  30. package/dist/assets/DelegatePanel-e4y0CJsn.js +33 -0
  31. package/dist/assets/{DemoGallery-DrSlMsnu.js → DemoGallery-DF1ShRG4.js} +1 -1
  32. package/dist/assets/{DropSelect-GwIXHA5o.js → DropSelect-D3Q9Su_x.js} +1 -1
  33. package/dist/assets/{ExportModal-DBUjC71U.js → ExportModal-DkmyBpeN.js} +1 -1
  34. package/dist/assets/ExportModal-sX8MPVPW.css +1 -0
  35. package/dist/assets/{ExtractionPreview-D4M6eXqb.js → ExtractionPreview-C6F1q3qG.js} +2 -2
  36. package/dist/assets/FeatureUseNotice-CCI4mM39.js +1 -0
  37. package/dist/assets/{FlagshipCommandPalette-DAO849RC.js → FlagshipCommandPalette-BkjvGrKT.js} +1 -1
  38. package/dist/assets/{FlagshipShowcase-g2x-1c70.js → FlagshipShowcase-Dx2noFrP.js} +1 -1
  39. package/dist/assets/{FlashcardsApp-BUKzCr65.js → FlashcardsApp-C1TeLlkY.js} +1 -1
  40. package/dist/assets/GalleryApp-7oBldBKU.js +1 -0
  41. package/dist/assets/{HonestByDesign-DgZFEpEx.js → HonestByDesign-DlRrxgrO.js} +1 -1
  42. package/dist/assets/{HowItWorks-DPFpdeGE.js → HowItWorks-BM2yn2dq.js} +1 -1
  43. package/dist/assets/LegalApp-DPfTD0jz.js +1 -0
  44. package/dist/assets/{LegalMarkdownDocument-BBTHuW_M.js → LegalMarkdownDocument-DJgwmK1q.js} +1 -1
  45. package/dist/assets/{LegalPageShell-hMA-7JLf.js → LegalPageShell-DuIwSVSJ.js} +1 -1
  46. package/dist/assets/Library-CDgWdTiF.js +1 -0
  47. package/dist/assets/{LibraryOverlay-DSUWcUe4.js → LibraryOverlay-DsLhiJzF.js} +1 -1
  48. package/dist/assets/LiveApp-CEaISHEZ.css +1 -0
  49. package/dist/assets/LiveApp-DNYYimuo.js +79 -0
  50. package/dist/assets/LiveSettings-CDHQnEtF.js +6 -0
  51. package/dist/assets/{MindMapViewerDrawer-CKdJtHno.js → MindMapViewerDrawer-C3BgiubE.js} +1 -1
  52. package/dist/assets/{MindShape-B3lg_z4X.js → MindShape-DVlgSR1B.js} +1 -1
  53. package/dist/assets/{PinToDashboard-DpQjBLPa.js → PinToDashboard-Dd_egidB.js} +1 -1
  54. package/dist/assets/{PlanReview-CrTbmMAd.js → PlanReview-wOsBpofo.js} +1 -1
  55. package/dist/assets/PresentationDeck-BSMzp5T9.js +1 -0
  56. package/dist/assets/PrismApp-DbbDNVpy.js +2 -0
  57. package/dist/assets/{PrismAskController-C4MuB8om.js → PrismAskController-BgwijoI2.js} +1 -1
  58. package/dist/assets/PrismBriefingPlayer-B1_ziOwl.js +2 -0
  59. package/dist/assets/PrismOverlay-5ZVXu4WL.css +1 -0
  60. package/dist/assets/PrismOverlay-DLxvsh9l.js +105 -0
  61. package/dist/assets/PrismWorkbench-ZlhI7Mhw.js +1 -0
  62. package/dist/assets/{PrivacyApp-A2Bu6LVd.js → PrivacyApp-Ki_5bM9Z.js} +10 -3
  63. package/dist/assets/ReplayCard-WKBKeSKc.js +2 -0
  64. package/dist/assets/ReplayOverlay-PFSJv540.js +1 -0
  65. package/dist/assets/{RewindOverlay-BO7YgDsW.js → RewindOverlay-okltPbfw.js} +1 -1
  66. package/dist/assets/{RippleApp-BXt7tenS.js → RippleApp-DqVyZYKV.js} +2 -2
  67. package/dist/assets/{RippleAskController-BzdwYcYY.js → RippleAskController-BqnazbZ7.js} +1 -1
  68. package/dist/assets/{RippleOverlay-BSxubBwj.js → RippleOverlay-4McJCSV8.js} +2 -2
  69. package/dist/assets/{SeeDontRead-0He5hS2C.js → SeeDontRead-gARjJuF7.js} +1 -1
  70. package/dist/assets/ShareModal-C5HVVMtQ.js +2 -0
  71. package/dist/assets/{ShipCourse-Dg6kCWyH.js → ShipCourse-BUm4TKUk.js} +1 -1
  72. package/dist/assets/{SignatureLoop-QPwB2oNN.js → SignatureLoop-CYspJuij.js} +1 -1
  73. package/dist/assets/SynthesisApp-BNhF9aJ2.js +2 -0
  74. package/dist/assets/SynthesisOverlay-Bvwdc8uQ.js +66 -0
  75. package/dist/assets/TemplatePicker-DBa4lkpf.js +1 -0
  76. package/dist/assets/{TermsApp-zcPDYfuh.js → TermsApp-BvwDtgIz.js} +5 -3
  77. package/dist/assets/TopicCanvas-Cwc6-K3q.js +2 -0
  78. package/dist/assets/{TourPrism-DbinDupp.js → TourPrism-CCjys3-x.js} +1 -1
  79. package/dist/assets/{TrackerTile-CrT9u1I4.js → TrackerTile-B4j5qtop.js} +2 -2
  80. package/dist/assets/{TwoSurfaces-L0CDuyOZ.js → TwoSurfaces-fGm1MJrD.js} +1 -1
  81. package/dist/assets/WorldOverlay-CLWtwuSl.css +1 -0
  82. package/dist/assets/WorldOverlay-JOp1rLyU.js +2 -0
  83. package/dist/assets/{WowFeatures-CwBk4ZMO.js → WowFeatures-D5dJvp9W.js} +1 -1
  84. package/dist/assets/{ZoomDeck-DlnesweX.js → ZoomDeck-DYmkT0TA.js} +1 -1
  85. package/dist/assets/{alternateFinishes-Cgks49KV.js → alternateFinishes-BHcX08Hs.js} +2 -2
  86. package/dist/assets/annotationAuto-B8_I3PNS.js +1 -0
  87. package/dist/assets/annotationReel-BA8Fv9Or.js +1 -0
  88. package/dist/assets/audioTrack-BJ2D_nuy.js +1 -0
  89. package/dist/assets/{BlockEmpty-B82uCse8.js → axis-DHAV38YM.js} +1 -1
  90. package/dist/assets/backup-DkCsHNEE.js +1 -0
  91. package/dist/assets/cache-7UEbF3S6.js +1 -0
  92. package/dist/assets/canvas-CYrbzF43.js +1 -0
  93. package/dist/assets/capture-Y6Qm8zCN.js +2 -0
  94. package/dist/assets/{catalog-Db9GWM6N.js → catalog-CRekRbKO.js} +1 -1
  95. package/dist/assets/chapters-DcdG3Lu8.js +1 -0
  96. package/dist/assets/{codeContext-goNoLAIr.js → codeContext-CFnI3GLf.js} +1 -1
  97. package/dist/assets/{confirmAdd-CZ829Mbx.js → confirmAdd-D-TTCQ31.js} +1 -1
  98. package/dist/assets/contentVault-XKWjF2FB.js +1 -0
  99. package/dist/assets/{dashboardEvents-CiayRLrH.js → dashboardEvents-MzCzak6K.js} +1 -1
  100. package/dist/assets/{deepen-DAeHHFiI.js → deepen-FZiVqiEc.js} +1 -1
  101. package/dist/assets/effort-BftNJCCV.js +39 -0
  102. package/dist/assets/empty-D51uhW0E.js +1 -0
  103. package/dist/assets/explode-niun7Zqc.js +15 -0
  104. package/dist/assets/{format-g3dP8OI3.js → format-BkvssSOr.js} +1 -1
  105. package/dist/assets/{generate-COfYQFmT.js → generate-BZobrQPX.js} +1 -1
  106. package/dist/assets/{generateBeats-COflu5Zi.js → generateBeats-Dqtfd8HC.js} +1 -1
  107. package/dist/assets/generateCourse-DPL0bO3L.js +28 -0
  108. package/dist/assets/generateLive-B7nlaqz8.js +24 -0
  109. package/dist/assets/{gesture-Bouqjr3g.js → gesture-BBS5nQEi.js} +2 -2
  110. package/dist/assets/{githubBrowser-BDiuD9dz.js → githubBrowser-CErQprLW.js} +1 -1
  111. package/dist/assets/homeTarget-CDc-r2mj.js +1 -0
  112. package/dist/assets/http-Bqk6nJiH.js +2 -0
  113. package/dist/assets/index-CFE0vqqO.css +1 -0
  114. package/dist/assets/{index-LiHcEJt_.js → index-Db-FgYxX.js} +4 -4
  115. package/dist/assets/json-J4Y32_i9.js +1 -0
  116. package/dist/assets/kokoro-yB7iU_JU.js +1 -0
  117. package/dist/assets/{ledger-Cv0LBflx.js → ledger-DHS2di3l.js} +1 -1
  118. package/dist/assets/lens-DyGK7Owa.js +1 -0
  119. package/dist/assets/{lib-u95BsX_B.js → lib-Dkb5WBRc.js} +1 -1
  120. package/dist/assets/liveSchema-Z_39HuDI.js +125 -0
  121. package/dist/assets/{loader-DgMLGfAC.js → loader-Ciz6XbG-.js} +2 -2
  122. package/dist/assets/{model-CAewjw45.js → model-FR-9md4s.js} +1 -1
  123. package/dist/assets/{neighborhoods-CqECCmo8.js → neighborhoods-B56WegJs.js} +1 -1
  124. package/dist/assets/notes-CEloxKQ3.js +1 -0
  125. package/dist/assets/offers-eBNj_lSP.js +1 -0
  126. package/dist/assets/{openWorld-BHTJM39n.js → openWorld-B4VY6xO7.js} +1 -1
  127. package/dist/assets/{owners-HRBX7JN_.js → owners-CP-4Q59L.js} +1 -1
  128. package/dist/assets/{pen-DtEW1xf4.js → pen-UKrUHlDA.js} +1 -1
  129. package/dist/assets/{penStrokes-DlHnO9xE.js → penStrokes-CTC3AYiz.js} +1 -1
  130. package/dist/assets/{perfProbe-ezVn1mOu.js → perfProbe-DrOeB7yd.js} +1 -1
  131. package/dist/assets/{pin-BPGVDgnq.js → pin-C5_s4Ju5.js} +1 -1
  132. package/dist/assets/{planTracker-BwoKEftp.js → planTracker-BA-x4jbw.js} +1 -1
  133. package/dist/assets/{portal-B9DmFo6J.js → portal-TqJbr2rR.js} +1 -1
  134. package/dist/assets/prewarm-Bt5X_9CM.js +1 -0
  135. package/dist/assets/providers-CPhoN8j0.js +1 -0
  136. package/dist/assets/quietHours-LtXDl4-v.js +1 -0
  137. package/dist/assets/{ready-yBSGJubb.js → ready-_sg3IJkE.js} +1 -1
  138. package/dist/assets/{registry-7tKTrzeZ.js → registry-BHDUu15I.js} +1 -1
  139. package/dist/assets/{registry-D06LKiUk.js → registry-BPLbZIVz.js} +1 -1
  140. package/dist/assets/registry-BQuygaKz.js +1 -0
  141. package/dist/assets/registry-B_wlsfxh.js +1 -0
  142. package/dist/assets/{registry-Bl2qfp5V.js → registry-Bjf2Ggs6.js} +1 -1
  143. package/dist/assets/{registry-CE1T0z9x.js → registry-BmjYillB.js} +1 -1
  144. package/dist/assets/{registry-DGNSqTxE.js → registry-BodYWiga.js} +1 -1
  145. package/dist/assets/{registry-Bl7zAWKt.js → registry-BwlvYVHq.js} +1 -1
  146. package/dist/assets/{registry-BJEvFgoL.js → registry-BxkAuBx8.js} +1 -1
  147. package/dist/assets/{registry-BdHj_oIs.js → registry-C3bIc5Kp.js} +1 -1
  148. package/dist/assets/{registry-CEV5h2cu.css → registry-CIcGBgtK.css} +1 -1
  149. package/dist/assets/{registry-BlujNlQJ.js → registry-CfIJ9dJS.js} +1 -1
  150. package/dist/assets/{registry-CvylL2BN.css → registry-CmWPyj7Q.css} +1 -1
  151. package/dist/assets/{registry-BDXwUn3i.js → registry-CvtHBjkb.js} +1 -1
  152. package/dist/assets/{registry-Dd1lcXrO.js → registry-Cz5cZREW.js} +2 -2
  153. package/dist/assets/registry-Di1fTdpi.js +48 -0
  154. package/dist/assets/registry-GxnzELw0.js +1 -0
  155. package/dist/assets/{registry-Cgo4C0ux.js → registry-JRteQJcE.js} +1 -1
  156. package/dist/assets/registry-MwJlqlFZ.js +1 -0
  157. package/dist/assets/{registry-B53EEn8S.js → registry-YrewlFlo.js} +1 -1
  158. package/dist/assets/{registry-qRfnKTt4.js → registry-uiAoJKXu.js} +1 -1
  159. package/dist/assets/{relate-aQFFr11O.js → relate-CCma73G9.js} +1 -1
  160. package/dist/assets/{replay-CalqEgdW.js → replay-dMDmsTaD.js} +1 -1
  161. package/dist/assets/{run-CwMSPOps.js → run-BVgCc5Xi.js} +1 -1
  162. package/dist/assets/{run-DCQrxgHA.js → run-CW67JOGe.js} +1 -1
  163. package/dist/assets/{run-CuHaB8wF.js → run-DqsfL9JC.js} +1 -1
  164. package/dist/assets/{select-wEtBn9U6.js → select-BuqyXI8k.js} +1 -1
  165. package/dist/assets/sentenceCase-CLDiNB0f.js +1 -0
  166. package/dist/assets/shard054-CNzJxw2V.js +1 -0
  167. package/dist/assets/shard070-BmNyRhxw.js +1 -0
  168. package/dist/assets/spokenText-Dy-GZvZV.js +1 -0
  169. package/dist/assets/store-C9s8Bfz0.js +1 -0
  170. package/dist/assets/store-CgA7mKy1.js +1 -0
  171. package/dist/assets/store-D16dGt7I.js +1 -0
  172. package/dist/assets/{store-BWLbFXiY.js → store-DqOaVRLn.js} +1 -1
  173. package/dist/assets/store-gfPI5TVE.js +1 -0
  174. package/dist/assets/useDashboardLoop-Cnxmf7wU.js +5 -0
  175. package/dist/assets/{useDashboards-lgQnk2Al.js → useDashboards-B-EjE8FH.js} +1 -1
  176. package/dist/assets/{useLedger-1WVXef68.js → useLedger-D4cXEwI0.js} +1 -1
  177. package/dist/assets/useLiveConfig-CvOQTr0s.js +1 -0
  178. package/dist/assets/useStudy-70Iz4ZVn.js +1 -0
  179. package/dist/assets/validate-MQG0EcTD.js +4 -0
  180. package/dist/assets/walkSync-D6leFb_u.js +1 -0
  181. package/dist/fonts/LICENSE.txt +2 -0
  182. package/dist/fonts/PROVENANCE.md +1 -0
  183. package/dist/fonts/caveat-var-latin.woff2 +0 -0
  184. package/dist/fonts/fonts.css +10 -0
  185. package/dist/index.html +6 -2
  186. package/dist/legal/PRIVACY.md +9 -2
  187. package/dist/legal/SECURITY.md +1 -1
  188. package/dist/legal/TERMS.md +4 -2
  189. package/dist/legal/TRADEMARKS.md +3 -1
  190. package/docs/media/go-hub.jpg +0 -0
  191. package/docs/media/living-answer.jpg +0 -0
  192. package/package.json +1 -1
  193. package/dist/assets/AnnotationLayer-Cccb12ps.js +0 -0
  194. package/dist/assets/AnnotationLayer-ClU-e6qL.css +0 -1
  195. package/dist/assets/BriefingPlayer-74mRKyjl.js +0 -1
  196. package/dist/assets/ConversationVideoStudio-DMIPUCcq.js +0 -1
  197. package/dist/assets/CourseLessonReader-COmTQdSK.css +0 -1
  198. package/dist/assets/CourseLessonReader-D29Kix4f.js +0 -2
  199. package/dist/assets/CoursesApp-DcDsS_ZS.js +0 -2
  200. package/dist/assets/DashboardDetail-BrnAdWfy.js +0 -2
  201. package/dist/assets/DashboardLoopGate-NxMcQ4rD.js +0 -2
  202. package/dist/assets/DashboardLoopRuntime-Dsy9u1wa.js +0 -1
  203. package/dist/assets/DashboardsApp-DxyMn3x_.js +0 -2
  204. package/dist/assets/DeepZoomApp-nNjqoyYE.js +0 -37
  205. package/dist/assets/DelegatePanel-DN_ZL0j7.js +0 -33
  206. package/dist/assets/ExportModal-D4WpAg2c.css +0 -1
  207. package/dist/assets/FeatureUseNotice-Bda9jr3W.js +0 -1
  208. package/dist/assets/GalleryApp-ot_A7ZF-.js +0 -1
  209. package/dist/assets/LegalApp-C56kWdmK.js +0 -1
  210. package/dist/assets/Library-CVj7R6F4.js +0 -1
  211. package/dist/assets/LiveApp-B62EMybC.js +0 -79
  212. package/dist/assets/LiveApp-CziqEsOb.css +0 -1
  213. package/dist/assets/LiveSettings-BITIaMoT.js +0 -6
  214. package/dist/assets/PresentationDeck-CfYadu9V.js +0 -1
  215. package/dist/assets/PrismApp-bRKK_3JA.js +0 -2
  216. package/dist/assets/PrismBriefingPlayer-ChJj6hSS.js +0 -2
  217. package/dist/assets/PrismOverlay-BwnF4BEn.css +0 -1
  218. package/dist/assets/PrismOverlay-Pp6ZKmTc.js +0 -105
  219. package/dist/assets/PrismWorkbench-BCV7r4Oa.js +0 -1
  220. package/dist/assets/ReplayCard-B6NYiYzQ.js +0 -2
  221. package/dist/assets/ReplayOverlay-BJKtJ-vc.js +0 -1
  222. package/dist/assets/ShareModal-xYdZWJxy.js +0 -2
  223. package/dist/assets/SynthesisApp-DrCq6NDa.js +0 -2
  224. package/dist/assets/SynthesisOverlay-DCa-2Pz_.js +0 -66
  225. package/dist/assets/TopicCanvas-Bw4bMFpe.js +0 -2
  226. package/dist/assets/WorldOverlay-BcjqG1BR.js +0 -2
  227. package/dist/assets/WorldOverlay-D7ay5y4D.css +0 -1
  228. package/dist/assets/annotationAuto-B2UdfJNj.js +0 -1
  229. package/dist/assets/annotationReel-K2FYv-3B.js +0 -1
  230. package/dist/assets/backup-685QrAjt.js +0 -1
  231. package/dist/assets/cache-CvbSI-pr.js +0 -1
  232. package/dist/assets/canvas-C3O7MEA3.js +0 -1
  233. package/dist/assets/capture-DgJLQ_0-.js +0 -2
  234. package/dist/assets/chapters-CIvdCeBC.js +0 -1
  235. package/dist/assets/contentVault-xfUwSJ3i.js +0 -1
  236. package/dist/assets/effort-jJe4iMIq.js +0 -39
  237. package/dist/assets/empty-BO1NC9qY.js +0 -1
  238. package/dist/assets/explode-CPnvJiTg.js +0 -15
  239. package/dist/assets/friendlyAsk-BBdRZIar.js +0 -1
  240. package/dist/assets/generateCourse-BldPpgdh.js +0 -28
  241. package/dist/assets/generateLive-DGwnpIip.js +0 -24
  242. package/dist/assets/homeTarget-CwFsJYwb.js +0 -1
  243. package/dist/assets/http-Lar_UMKb.js +0 -2
  244. package/dist/assets/index-BIUYTk1W.css +0 -1
  245. package/dist/assets/json-B0N3XRZU.js +0 -1
  246. package/dist/assets/kokoro-DXRj0KQX.js +0 -1
  247. package/dist/assets/lens-ChFJD9il.js +0 -1
  248. package/dist/assets/liveSchema-DyfND6P2.js +0 -100
  249. package/dist/assets/notes-DzIAEESd.js +0 -1
  250. package/dist/assets/prewarm-BgUqAJbF.js +0 -1
  251. package/dist/assets/providers-0DthJW_I.js +0 -1
  252. package/dist/assets/quietHours-DyynzDyC.js +0 -1
  253. package/dist/assets/registry-BQzvA61G.js +0 -1
  254. package/dist/assets/registry-BT6ydF33.js +0 -1
  255. package/dist/assets/registry-CPImC7mO.js +0 -1
  256. package/dist/assets/registry-KRYoVMCh.js +0 -48
  257. package/dist/assets/registry-QbArAJKB.js +0 -1
  258. package/dist/assets/shard054-BoC-LNYu.js +0 -1
  259. package/dist/assets/shard070-Dm9m2a5U.js +0 -1
  260. package/dist/assets/spokenText-C88IQJ0M.js +0 -1
  261. package/dist/assets/store-Ba9vzL4H.js +0 -1
  262. package/dist/assets/store-BwyOArJl.js +0 -1
  263. package/dist/assets/store-D-f8ZuaK.js +0 -1
  264. package/dist/assets/store-ruEsXJjU.js +0 -1
  265. package/dist/assets/useDashboardLoop-ifcuVRo-.js +0 -5
  266. package/dist/assets/useLiveConfig-B4CmBiAK.js +0 -1
  267. package/dist/assets/useStudy-CySgE3Cx.js +0 -1
  268. package/dist/assets/validate-sGUCmPAs.js +0 -4
  269. package/dist/assets/walkSync-DBne70gg.js +0 -1
  270. /package/dist/assets/{BriefingPlayer-DHV4vMga.css → PrismBriefingPlayer-DHV4vMga.css} +0 -0
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{t as n}from"./compiler-runtime-qQQXpJgv.js";import{t as r}from"./jsx-runtime-DeHZSEgm.js";import{n as i}from"./icons-gLFQTv74.js";import{t as a}from"./richText-BkxJhl9N.js";import{i as o}from"./scale-Bcgfo6Hp.js";import{t as s}from"./BlockEmpty-B82uCse8.js";import"./lib-u95BsX_B.js";import{n as c}from"./motion-DxHSlPN6.js";import{t as l}from"./registry-types-D3q_LrlV.js";import{n as u,t as d}from"./fitText-DHbmSS-q.js";import{t as f}from"./MindShape-B3lg_z4X.js";import{i as p,r as m,t as h}from"./openWorld-BHTJM39n.js";import{t as g}from"./display-CAb_PiGv.js";import{t as _}from"./types-C42I77wh.js";var v=9,y=3.5,b=4;function x(e,t,n){let r=new Set(e.map(e=>`${e.from}→${e.to}`));return e.map((e,i)=>{let a=t[e.from],o=t[e.to],s=`edge-${i}-${e.from}-${e.to}`;if(e.self||e.from===e.to){if(!a)return w(s,e);let t=a.x,r=a.y-n-10,i=`M ${a.x-4} ${a.y-n} a 7 7 0 1 1 8 0`;return{key:s,from:e.from,to:e.to,label:e.label,d:i,lx:t,ly:r,labelOffset:0,labelAnchor:`middle`,isCurved:!1}}if(!a||!o)return w(s,e);let c=o.x-a.x,l=o.y-a.y,u=Math.hypot(c,l)||1,d=c/u,f=l/u,p=a.x+d*n,m=a.y+f*n,h=o.x-d*(n+2),g=o.y-f*(n+2);if(!r.has(`${e.to}→${e.from}`)){let t=(p+h)/2,n=(m+g)/2,r=`M ${p} ${m} L ${h} ${g}`,i=-f,a=d;return a>0&&(i=-i,a=-a),{key:s,from:e.from,to:e.to,label:e.label,d:r,lx:t+i*y,ly:n+a*y,labelOffset:y,labelAnchor:`middle`,isCurved:!1}}let _=-f,x=d,S=(a.x+o.x)/2,C=(a.y+o.y)/2,T=S+_*v,E=C+x*v,D=`M ${p} ${m} Q ${T} ${E} ${h} ${g}`,O=(p+2*T+h)/4,k=(m+2*E+g)/4,A=_>.4?`start`:_<-.4?`end`:`middle`;return{key:s,from:e.from,to:e.to,label:e.label,d:D,lx:O+_*b,ly:k+x*b,labelOffset:b,labelAnchor:A,isCurved:!0}})}function S(e,t=50,n=50,r=32){let i=e<=4?r:r+(e-4)*3,a=e===2?Math.PI:-Math.PI/2;return Array.from({length:e},(r,o)=>{let s=o/e*2*Math.PI+a;return{x:t+i*Math.cos(s),y:n+i*Math.sin(s)}})}function C(e){return e<=4?11:e<=7?9:e<=10?7.5:6.5}function w(e,t){return{key:e,from:t.from,to:t.to,label:t.label,d:`M 50 50 L 50 50`,lx:50,ly:50,labelOffset:0,labelAnchor:`middle`,isCurved:!1}}var T=t(),E=r(),D=e=>typeof e==`number`?String(e):e;function O(e,t){return e?e.swapped?.includes(t)?`swapped`:e.compare?.includes(t)?`compared`:e.highlight?.includes(t)?`highlight`:`none`:`none`}var k=[900,350,100],A=[`1×`,`2×`,`8×`];function j(e){return e?{"o-1":`O(1)`,"o-logn":`O(log n)`,"o-n":`O(n)`,"o-nlogn":`O(n log n)`,"o-n2":`O(n²)`,"o-2n":`O(2ⁿ)`}[e]??e:``}function M({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,values:r,steps:o,complexity:s,autoPlay:c,caption:l,footer:u,delay:d}){let f=i[t]||i.layers,p=Math.max(1,o.length),[m,h]=(0,T.useState)(0),[g,_]=(0,T.useState)(c??!1),[v,y]=(0,T.useState)(1),b=(0,T.useRef)(m);b.current=m;let x=o[Math.min(m,o.length-1)],S=(0,T.useRef)(typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches);(0,T.useEffect)(()=>{if(!g)return;let e=setInterval(()=>{let e=b.current+1;if(e>=o.length){_(!1);return}h(e)},k[v]);return()=>clearInterval(e)},[g,o.length,v]);let C=(0,T.useCallback)(e=>{_(!1),h(Math.min(o.length-1,Math.max(0,e)))},[o.length]),w=(0,T.useCallback)(()=>{S.current||_(e=>(!e&&m>=o.length-1&&h(0),!e))},[m,o.length]),M=(0,T.useMemo)(()=>{let e=x?.pointer;return e?Object.entries(e).filter(([,e])=>Number.isFinite(e)&&e>=0&&e<r.length).sort((e,t)=>e[1]-t[1]||e[0].localeCompare(t[0])).map(([e,t])=>({label:e,index:t})):[]},[x,r.length]),N=(0,T.useMemo)(()=>{let e=new Map;for(let t of M){let n=e.get(t.index)??[];n.push(t.label),e.set(t.index,n)}return e},[M]),P=M.length>0;return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(d||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(f,{className:`ic`,style:{color:n}}),e,s&&(0,E.jsx)(`span`,{className:`dg-at-complexity`,title:`Time complexity: ${j(s)}`,children:j(s)})]}),(0,E.jsx)(`p`,{className:`dg-at-caption`,"aria-live":`polite`,children:x?.caption??``}),(0,E.jsx)(`div`,{className:`dg-at-row`,role:`group`,"aria-label":`array`,children:r.map((e,t)=>{let n=O(x,t),r=N.get(t);return(0,E.jsxs)(`div`,{className:`dg-at-cell-wrap`,children:[(0,E.jsx)(`div`,{className:`dg-at-cell role-${n}`,children:D(e)}),(0,E.jsx)(`div`,{className:`dg-at-idx`,children:t}),P&&(0,E.jsx)(`div`,{className:`dg-at-ptr-slot`,children:r&&(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`span`,{className:`dg-at-ptr-caret`,"aria-hidden":`true`}),(0,E.jsx)(`span`,{className:`dg-at-ptr-labels`,children:r.join(` · `)})]})})]},t)})}),(0,E.jsxs)(`div`,{className:`dg-at-controls`,children:[(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>C(m-1),disabled:m===0,"aria-label":`previous step`,children:[(0,E.jsx)(i.chevL,{className:`ic`}),` Prev`]}),!S.current&&(0,E.jsx)(`button`,{type:`button`,className:`dg-at-btn dg-at-play`+(g?` playing`:``),onClick:w,"aria-label":g?`pause`:`play`,children:g?(0,E.jsx)(i.pause,{className:`ic`}):(0,E.jsx)(i.play,{className:`ic`})}),!S.current&&(0,E.jsx)(`button`,{type:`button`,className:`dg-at-btn dg-at-speed`,onClick:()=>y(e=>(e+1)%3),"aria-label":`speed: ${A[v]}`,children:A[v]}),(0,E.jsx)(`div`,{className:`dg-at-progress`,"aria-hidden":`true`,children:o.map((e,t)=>(0,E.jsx)(`span`,{className:`dg-at-dot`+(t===m?` on`:t<m?` done`:``)},t))}),(0,E.jsxs)(`span`,{className:`dg-at-count`,children:[Math.min(m+1,p),` / `,p]}),(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>C(m+1),disabled:m>=o.length-1,"aria-label":`next step`,children:[`Next `,(0,E.jsx)(i.chevR,{className:`ic`})]})]}),x?.ops&&(0,E.jsxs)(`div`,{className:`dg-at-ops`,children:[x.ops.comparisons!==void 0&&(0,E.jsxs)(`span`,{children:[x.ops.comparisons,` cmp`]}),x.ops.comparisons!==void 0&&x.ops.swaps!==void 0&&(0,E.jsx)(`span`,{className:`dg-at-ops-sep`,children:`·`}),x.ops.swaps!==void 0&&(0,E.jsxs)(`span`,{children:[x.ops.swaps,` swap`]})]}),l&&(0,E.jsx)(`p`,{className:`dg-at-cap`,children:l}),u&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(u)})]})}var N=11;function P(e){return typeof e==`string`&&e.trim().length>0}function ee(e){let t=Array.isArray(e)?e:[],n=[];for(let e of t)!e||!P(e.familiar)||!P(e.target)||n.push({familiar:e.familiar,target:e.target,note:P(e.note)?e.note:void 0,loose:!!e.loose});return n}function te({title:e,icon:t=`link`,iconColor:n=`var(--presence)`,familiar:r,target:o,pairs:c,breaksDown:l,caption:u,footer:d,delay:f}){let p=i[t]||i.link,m=ee(c),h=(Array.isArray(l)?l:[]).filter(P),g=m.some(e=>e.loose),_=P(r)?r:``,v=P(o)?o:``,y=P(u)?u:``,b=d!=null&&String(d).trim()!==``;return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(f||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(p,{className:`ic`,style:{color:n}}),` `,e]}),m.length>0&&(0,E.jsxs)(`div`,{className:`ana`,children:[(0,E.jsxs)(`div`,{className:`ana-heads`,children:[(0,E.jsxs)(`div`,{className:`ana-head ana-head--familiar`,children:[(0,E.jsx)(`span`,{className:`ana-head-role`,children:`Known`}),_&&(0,E.jsx)(`span`,{className:`ana-head-name`,children:_})]}),(0,E.jsx)(`div`,{className:`ana-head-joint`,children:`maps onto`}),(0,E.jsxs)(`div`,{className:`ana-head ana-head--target`,children:[(0,E.jsx)(`span`,{className:`ana-head-role`,children:`New`}),v&&(0,E.jsx)(`span`,{className:`ana-head-name`,children:v})]})]}),(0,E.jsx)(`div`,{className:`ana-rows`,children:m.map((e,t)=>(0,E.jsxs)(`div`,{className:`ana-row m-stagger-item m-fade-rise`,style:{"--i":Math.min(t,N)},children:[(0,E.jsx)(`div`,{className:`ana-side ana-side--familiar`,children:e.familiar}),(0,E.jsx)(`div`,{className:e.loose?`ana-link ana-link--loose`:`ana-link`,children:(0,E.jsxs)(`span`,{className:`ana-rail`,children:[(0,E.jsx)(`span`,{className:`ana-rail-dot`}),(0,E.jsx)(`span`,{className:`ana-rail-line`}),e.note&&(0,E.jsx)(`span`,{className:`ana-note`,children:e.note}),(0,E.jsx)(`span`,{className:`ana-rail-line`}),(0,E.jsx)(`span`,{className:`ana-rail-head`})]})}),(0,E.jsx)(`div`,{className:`ana-side ana-side--target`,children:e.target})]},t))}),g&&(0,E.jsx)(`div`,{className:`ana-legend`,children:`Dashed — the match is only approximate`})]}),h.length>0&&(0,E.jsxs)(`div`,{className:`ana-limits`,children:[(0,E.jsxs)(`div`,{className:`ana-limits-head`,children:[(0,E.jsx)(i.alert,{className:`ic`,style:{width:13,height:13}}),`Where the analogy breaks down`]}),(0,E.jsx)(`ul`,{className:`ana-limits-list`,children:h.map((e,t)=>(0,E.jsx)(`li`,{children:e},t))})]}),y&&(0,E.jsx)(`p`,{className:`ana-caption`,children:y}),m.length===0&&h.length===0&&!y&&!b&&(0,E.jsx)(s,{message:`No correspondences to map`}),b&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:a(d)})]})}var F={support:`var(--insight)`,objection:`var(--warning)`,qualifier:`var(--text-muted)`},ne={support:`+ For`,objection:`− Against`,qualifier:`~ Qualifier`};function re({title:e,icon:t=`proof`,iconColor:n=`var(--presence)`,claim:r,premises:o,verdict:s,footer:c,delay:l}){let u=i[t]||i.proof,d=o.filter(e=>e.type===`support`),f=o.filter(e=>e.type===`objection`),p=o.filter(e=>e.type===`qualifier`);return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`am-claim`,children:r}),(0,E.jsxs)(`div`,{className:`am-columns`,children:[(0,E.jsxs)(`div`,{className:`am-col am-col--support`,children:[d.length>0&&(0,E.jsx)(`div`,{className:`am-col-label`,style:{color:F.support},children:ne.support}),d.map((e,t)=>(0,E.jsxs)(`div`,{className:`am-premise am-premise--support`,children:[(0,E.jsx)(`span`,{className:`am-premise-rail`,style:{background:F.support}}),(0,E.jsxs)(`div`,{className:`am-premise-body`,children:[(0,E.jsx)(`span`,{className:`am-premise-text`,children:e.text}),e.sub&&(0,E.jsx)(`span`,{className:`am-premise-sub`,children:e.sub})]})]},t))]}),(0,E.jsxs)(`div`,{className:`am-col am-col--objection`,children:[f.length>0&&(0,E.jsx)(`div`,{className:`am-col-label`,style:{color:F.objection},children:ne.objection}),f.map((e,t)=>(0,E.jsxs)(`div`,{className:`am-premise am-premise--objection`,children:[(0,E.jsx)(`span`,{className:`am-premise-rail`,style:{background:F.objection}}),(0,E.jsxs)(`div`,{className:`am-premise-body`,children:[(0,E.jsx)(`span`,{className:`am-premise-text`,children:e.text}),e.sub&&(0,E.jsx)(`span`,{className:`am-premise-sub`,children:e.sub})]})]},t))]})]}),p.length>0&&(0,E.jsxs)(`div`,{className:`am-qualifiers`,children:[(0,E.jsx)(`div`,{className:`am-col-label`,style:{color:F.qualifier},children:ne.qualifier}),p.map((e,t)=>(0,E.jsxs)(`div`,{className:`am-premise am-premise--qualifier`,children:[(0,E.jsx)(`span`,{className:`am-premise-rail`,style:{background:F.qualifier}}),(0,E.jsxs)(`div`,{className:`am-premise-body`,children:[(0,E.jsx)(`span`,{className:`am-premise-text`,children:e.text}),e.sub&&(0,E.jsx)(`span`,{className:`am-premise-sub`,children:e.sub})]})]},t))]}),s&&(0,E.jsxs)(`div`,{className:`am-verdict`,children:[(0,E.jsx)(i.check,{className:`ic`,style:{width:13,height:13}}),s]}),c&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:a(c)})]})}var ie=16,ae=44,oe=60,se=24,ce=6;function le(e){return e<=2?11:e<=3?9:e<=4?8:7}function ue(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function de(e,t,n){let r=0,i=new Map,a=new Map;function o(t,n){let s=e.get(t);s&&(s.left&&o(s.left,n+1),i.set(t,r++),a.set(t,n),s.right&&o(s.right,n+1))}o(t,0);let s=r,c=Math.max(0,...a.values()),l=Math.max(120,s*ae+48),u=(c+1)*oe+48,d=[];for(let[t,r]of i){let i=a.get(t)??0,o=e.get(t);d.push({id:t,value:o.value,x:se+r*ae+ae/2,y:se+i*oe+ie,state:n[t]??`default`,left:o.left,right:o.right})}return{nodes:d,W:l,H:u}}var fe={default:`color-mix(in oklab, var(--surface-elevated) 100%, transparent)`,visiting:`color-mix(in oklab, var(--presence) 22%, transparent)`,visited:`color-mix(in oklab, var(--text-faint) 14%, transparent)`,found:`color-mix(in oklab, var(--insight) 22%, transparent)`,highlight:`color-mix(in oklab, var(--warning) 22%, transparent)`},pe={default:`var(--grid-line)`,visiting:`var(--presence)`,visited:`var(--text-faint)`,found:`var(--insight)`,highlight:`var(--warning)`},me={default:`var(--text-primary)`,visiting:`var(--presence)`,visited:`var(--text-faint)`,found:`var(--insight)`,highlight:`var(--warning)`};function he({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,nodes:r,root:o,steps:s,caption:c,footer:l,delay:u}){let d=i[t]??i.share,[f,p]=(0,T.useState)(0),m=Math.min(f,(s?.length??1)-1),h=s?.[m],g=(0,T.useMemo)(()=>h?h.states:{},[h]),_=(0,T.useMemo)(()=>{let e=new Map;for(let t of r)e.set(t.id,t);return e},[r]),{nodes:v,W:y,H:b}=(0,T.useMemo)(()=>de(_,o,g),[_,o,g]),x=(0,T.useMemo)(()=>{let e=new Map;for(let t of v)e.set(t.id,{x:t.x,y:t.y});return e},[v]),S=s?.length??0,C=e=>p(Math.min(S-1,Math.max(0,e)));return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(u??0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),h&&(0,E.jsx)(`p`,{className:`dg-at-caption`,"aria-live":`polite`,children:h.caption}),(0,E.jsxs)(`svg`,{viewBox:`0 0 ${y} ${b}`,width:`100%`,className:`dg-bt-svg`,"aria-label":e??`binary tree`,role:`img`,style:{overflow:`visible`},children:[v.map(e=>(0,E.jsxs)(`g`,{children:[e.left&&(()=>{let t=x.get(e.left);return t?(0,E.jsx)(`line`,{x1:e.x,y1:e.y,x2:t.x,y2:t.y,className:`dg-bt-edge`},`e-${e.id}-l`):null})(),e.right&&(()=>{let t=x.get(e.right);return t?(0,E.jsx)(`line`,{x1:e.x,y1:e.y,x2:t.x,y2:t.y,className:`dg-bt-edge`},`e-${e.id}-r`):null})()]},`edges-${e.id}`)),v.map(e=>(0,E.jsxs)(`g`,{transform:`translate(${e.x} ${e.y})`,children:[(0,E.jsx)(`circle`,{r:ie,fill:fe[e.state],stroke:pe[e.state],strokeWidth:e.state==="default"?1.5:2,className:`dg-bt-node`}),(0,E.jsxs)(`text`,{textAnchor:`middle`,dominantBaseline:`central`,fontSize:le(e.value.toString().length),fontWeight:`600`,fill:me[e.state],className:`dg-bt-label`,children:[e.value.toString().length>ce&&(0,E.jsx)(`title`,{children:e.value}),ue(e.value.toString(),ce)]})]},`node-${e.id}`))]}),h&&(h.frontier!==void 0||h.result!==void 0)&&(0,E.jsxs)(`div`,{className:`dg-bt-panels`,children:[h.frontier!==void 0&&(0,E.jsxs)(`div`,{className:`dg-bt-panel`,children:[(0,E.jsx)(`span`,{className:`dg-bt-panel-label`,children:`Frontier`}),(0,E.jsx)(`div`,{className:`dg-bt-chips`,children:h.frontier.length===0?(0,E.jsx)(`span`,{className:`dg-bt-chip dg-bt-chip-empty`,children:`∅`}):h.frontier.map((e,t)=>(0,E.jsx)(`span`,{className:`dg-bt-chip`,children:e},t))})]}),h.result!==void 0&&(0,E.jsxs)(`div`,{className:`dg-bt-panel`,children:[(0,E.jsx)(`span`,{className:`dg-bt-panel-label`,children:`Result`}),(0,E.jsx)(`div`,{className:`dg-bt-chips`,children:h.result.length===0?(0,E.jsx)(`span`,{className:`dg-bt-chip dg-bt-chip-empty`,children:`—`}):h.result.map((e,t)=>(0,E.jsx)(`span`,{className:`dg-bt-chip dg-bt-chip-result`,children:e},t))})]})]}),s&&s.length>0&&(0,E.jsxs)(`div`,{className:`dg-at-controls`,children:[(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>C(m-1),disabled:m===0,"aria-label":`previous step`,children:[(0,E.jsx)(i.chevL,{className:`ic`}),` Prev`]}),(0,E.jsx)(`div`,{className:`dg-at-progress`,"aria-hidden":`true`,children:s.map((e,t)=>(0,E.jsx)(`span`,{className:`dg-at-dot`+(t===m?` on`:t<m?` done`:``)},t))}),(0,E.jsxs)(`span`,{className:`dg-at-count`,children:[m+1,` / `,S]}),(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>C(m+1),disabled:m>=S-1,"aria-label":`next step`,children:[`Next `,(0,E.jsx)(i.chevR,{className:`ic`})]})]}),c&&(0,E.jsx)(`p`,{className:`dg-at-cap`,children:c}),l&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(l)})]})}var I=n(),L=1e3,ge=L/2,_e=L/2,ve=60,ye=30,be={ally:`var(--insight)`,rival:`var(--warning)`,family:`var(--presence-soft)`,love:`var(--presence)`,mentor:`var(--insight-soft)`,betrays:`var(--danger)`,other:`var(--text-muted)`},xe={ally:`Ally`,rival:`Rival`,family:`Family`,love:`Love`,mentor:`Mentor`,betrays:`Betrays`,other:`Linked`},Se=new Set([`mentor`,`betrays`]),Ce=new Set([`mentor`,`betrays`,`other`]),we=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--danger)`,`var(--presence-soft)`,`var(--insight-soft)`];function Te(e,t,n){return Math.min(n,Math.max(t,e))}function Ee(e){return e&&e in be?e:`other`}function De(e,t,n,r){let i=Math.atan2(n-e.cy,t-e.cx),a=r?1:-1;return{x:e.cx+a*Math.cos(i)*(e.rx+4),y:e.cy+a*Math.sin(i)*(e.ry+4)}}function Oe({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,nodes:r,links:o,caption:s,footer:c,delay:l}){let u=i[t]||i.share,d=(0,T.useId)().replace(/:/g,``),{placed:f,factions:p}=(0,T.useMemo)(()=>{let e=(r??[]).filter(e=>e&&e.id&&e.name),t=[];for(let n of e){let e=n.faction?.trim();e&&!t.includes(e)&&t.push(e)}let n=new Map(t.map((e,t)=>[e,we[t%we.length]])),i=e=>e.faction?.trim()||``,a=[...e].sort((e,n)=>(i(e)?t.indexOf(i(e)):t.length)-(i(n)?t.indexOf(i(n)):t.length)),o=a.length,s=o<=1?0:Math.min(L/2-ye-ve/2,350+Math.max(0,o-10)*10),c=Te((o>1?2*s*Math.sin(Math.PI/o):L)*.84,104,200);return{placed:a.map((e,t)=>{let r=-Math.PI/2+t/Math.max(1,o)*Math.PI*2;return{...e,cx:ge+Math.cos(r)*s,cy:_e+Math.sin(r)*s,color:n.get(i(e))||`var(--line-strong)`,rx:c/2,ry:ve/2}}),factions:t.map(e=>({name:e,color:n.get(e)}))}},[r]),m=(0,T.useMemo)(()=>new Map(f.map(e=>[e.id,e])),[f]),h=(0,T.useMemo)(()=>(o??[]).map(e=>({link:e,a:m.get(e.from),b:m.get(e.to),kind:Ee(e.kind)})).filter(e=>!!(e.a&&e.b&&e.a!==e.b)),[o,m]),g=(0,T.useMemo)(()=>[...new Set(h.filter(e=>Se.has(e.kind)).map(e=>e.kind))],[h]),_=(0,T.useMemo)(()=>[...new Set(h.map(e=>e.kind))],[h]);return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(l||0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),f.length===0?(0,E.jsx)(`p`,{className:`cast-empty`,children:`No cast to map yet.`}):(0,E.jsx)(`div`,{className:`cast-stage`,children:(0,E.jsxs)(`svg`,{className:`cast-svg`,viewBox:`0 0 ${L} ${L}`,preserveAspectRatio:`xMidYMid meet`,role:`img`,"aria-label":e||`Relationship map`,children:[(0,E.jsx)(`defs`,{children:g.map(e=>(0,E.jsx)(`marker`,{id:`cast-arrow-${d}-${e}`,viewBox:`0 0 10 10`,refX:`8`,refY:`5`,markerWidth:`7`,markerHeight:`7`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,fill:be[e]})},e))}),h.map((e,t)=>(0,E.jsx)(ke,{edge:e,uid:d},t)),f.map(e=>(0,E.jsx)(Me,{node:e},e.id))]})}),(_.length>0||p.length>0)&&(0,E.jsxs)(`div`,{className:`cast-legend`,children:[_.map(e=>(0,E.jsxs)(`span`,{className:`cast-legend-item`,children:[(0,E.jsx)(`span`,{className:`cast-swatch cast-swatch--line${Ce.has(e)?` is-dashed`:``}`,style:{color:be[e]}}),xe[e]]},`k-${e}`)),p.map(e=>(0,E.jsxs)(`span`,{className:`cast-legend-item`,children:[(0,E.jsx)(`span`,{className:`cast-swatch`,style:{background:e.color}}),e.name]},`f-${e.name}`))]}),s&&(0,E.jsx)(`p`,{className:`cast-caption`,children:s}),c&&(0,E.jsx)(`div`,{className:`cast-foot`,dangerouslySetInnerHTML:a(c)})]})}function ke(e){let t=(0,I.c)(38),{edge:n,uid:r}=e,{a:i,b:a,kind:o,link:s}=n,c,l,u,d,f,p,m,h,g,_,v;if(t[0]!==i||t[1]!==a||t[2]!==o||t[3]!==r){let e=De(i,a.cx,a.cy,!0),n=De(a,i.cx,i.cy,!1),s=(e.x+n.x)/2,y=(e.y+n.y)/2,b=n.x-e.x,x=n.y-e.y,S;t[15]!==b||t[16]!==x?(S=Math.hypot(b,x)||1,t[15]=b,t[16]=x,t[17]=S):S=t[17];let C=S,w=Math.min(64,C*.14);l=s-x/C*w,u=y+b/C*w,d=be[o];let T;t[18]!==o||t[19]!==r?(T=Se.has(o)?`url(#cast-arrow-${r}-${o})`:void 0,t[18]=o,t[19]=r,t[20]=T):T=t[20],c=T,v=`cast-edge`,f=e.x.toFixed(1),p=e.y.toFixed(1),t[21]===l?m=t[22]:(m=l.toFixed(1),t[21]=l,t[22]=m),t[23]===u?h=t[24]:(h=u.toFixed(1),t[23]=u,t[24]=h),g=n.x.toFixed(1),_=n.y.toFixed(1),t[0]=i,t[1]=a,t[2]=o,t[3]=r,t[4]=c,t[5]=l,t[6]=u,t[7]=d,t[8]=f,t[9]=p,t[10]=m,t[11]=h,t[12]=g,t[13]=_,t[14]=v}else c=t[4],l=t[5],u=t[6],d=t[7],f=t[8],p=t[9],m=t[10],h=t[11],g=t[12],_=t[13],v=t[14];let y=`M ${f} ${p} Q ${m} ${h} ${g} ${_}`,b=Ce.has(o)?`8 7`:void 0,x;t[25]!==c||t[26]!==d||t[27]!==y||t[28]!==b?(x=(0,E.jsx)(`path`,{d:y,fill:`none`,stroke:d,strokeWidth:2.4,strokeDasharray:b,markerEnd:c,opacity:.82}),t[25]=c,t[26]=d,t[27]=y,t[28]=b,t[29]=x):x=t[29];let S;t[30]!==l||t[31]!==u||t[32]!==s.label?(S=s.label&&(0,E.jsxs)(`g`,{transform:`translate(${l.toFixed(1)}, ${(u-16).toFixed(1)})`,children:[(0,E.jsx)(`rect`,{className:`cast-edge-lbl-bg`,x:-Ne(s.label)/2,y:-11,width:Ne(s.label),height:20,rx:6}),(0,E.jsx)(`text`,{className:`cast-edge-lbl`,x:0,y:0,textAnchor:`middle`,dominantBaseline:`middle`,children:Fe(s.label,16)})]}),t[30]=l,t[31]=u,t[32]=s.label,t[33]=S):S=t[33];let C;return t[34]!==x||t[35]!==S||t[36]!==v?(C=(0,E.jsxs)(`g`,{className:v,children:[x,S]}),t[34]=x,t[35]=S,t[36]=v,t[37]=C):C=t[37],C}var Ae=27,je=21;function Me(e){let t=(0,I.c)(59),{node:n}=e,r=!!n.role,i=n.rx*2,a;t[0]===i?a=t[1]:(a=Math.round(i/11),t[0]=i,t[1]=a);let o=Math.min(r?15:13,Math.max(6,a)),s;t[2]===i?s=t[3]:(s=Math.round(i/8),t[2]=i,t[3]=s);let c=Math.min(22,Math.max(8,s)),l,u,d,f,p,m,h,g,_,v;if(t[4]!==r||t[5]!==n.color||t[6]!==n.cx||t[7]!==n.cy||t[8]!==n.name||t[9]!==n.rx||t[10]!==n.ry||t[11]!==o){l=Pe(n.name,o,r?1:2);let e=l.length*Ae+(r?je:0);v=n.cy-e/2+Ae*.74,g=`cast-node`;let i=n.cx-n.rx,a=n.cy-n.ry,s=n.rx*2,c=n.ry*2,y;t[22]===n.color?y=t[23]:(y={stroke:n.color},t[22]=n.color,t[23]=y),t[24]!==i||t[25]!==a||t[26]!==s||t[27]!==c||t[28]!==y?(_=(0,E.jsx)(`rect`,{x:i,y:a,width:s,height:c,rx:14,className:`cast-chip`,style:y}),t[24]=i,t[25]=a,t[26]=s,t[27]=c,t[28]=y,t[29]=_):_=t[29];let b=n.cx-n.rx,x=n.cy-n.ry+8,S=n.ry*2-16;t[30]!==n.color||t[31]!==b||t[32]!==x||t[33]!==S?(u=(0,E.jsx)(`rect`,{x:b,y:x,width:4,height:S,rx:2,fill:n.color}),t[30]=n.color,t[31]=b,t[32]=x,t[33]=S,t[34]=u):u=t[34],d=`cast-name`,f=n.cx,p=`middle`,t[35]===n.name?m=t[36]:(m=(0,E.jsx)(`title`,{children:n.name}),t[35]=n.name,t[36]=m);let C;t[37]!==n.cx||t[38]!==v?(C=(e,t)=>(0,E.jsx)(`tspan`,{x:n.cx,y:v+t*Ae,children:e},t),t[37]=n.cx,t[38]=v,t[39]=C):C=t[39],h=l.map(C),t[4]=r,t[5]=n.color,t[6]=n.cx,t[7]=n.cy,t[8]=n.name,t[9]=n.rx,t[10]=n.ry,t[11]=o,t[12]=l,t[13]=u,t[14]=d,t[15]=f,t[16]=p,t[17]=m,t[18]=h,t[19]=g,t[20]=_,t[21]=v}else l=t[12],u=t[13],d=t[14],f=t[15],p=t[16],m=t[17],h=t[18],g=t[19],_=t[20],v=t[21];let y;t[40]!==d||t[41]!==f||t[42]!==p||t[43]!==m||t[44]!==h?(y=(0,E.jsxs)(`text`,{className:d,x:f,textAnchor:p,children:[m,h]}),t[40]=d,t[41]=f,t[42]=p,t[43]=m,t[44]=h,t[45]=y):y=t[45];let b;t[46]!==r||t[47]!==l||t[48]!==n.cx||t[49]!==n.role||t[50]!==c||t[51]!==v?(b=r&&(0,E.jsx)(`text`,{className:`cast-role`,x:n.cx,y:v+l.length*Ae+2,textAnchor:`middle`,children:Fe(n.role,c)}),t[46]=r,t[47]=l,t[48]=n.cx,t[49]=n.role,t[50]=c,t[51]=v,t[52]=b):b=t[52];let x;return t[53]!==u||t[54]!==y||t[55]!==b||t[56]!==g||t[57]!==_?(x=(0,E.jsxs)(`g`,{className:g,children:[_,u,y,b]}),t[53]=u,t[54]=y,t[55]=b,t[56]=g,t[57]=_,t[58]=x):x=t[58],x}function Ne(e){return Math.min(e.length,16)*9+14}function Pe(e,t,n){let r=e.split(/\s+/).filter(Boolean),i=[],a=``,o=!1;for(let e of r){let r=a?`${a} ${e}`:e;if(r.length<=t||!a)a=r;else if(i.push(a),a=e,i.length===n){o=!0,a=``;break}}if(a&&i.length<n&&i.push(a),i.length){let e=i.length-1,n=i[e];n.length>t&&(n=n.slice(0,t-1).trimEnd()),(o||i[e].length>t)&&(n=n.replace(/[…\s]*$/,``)+`…`),i[e]=n}return i.length?i:[``]}function Fe(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}var Ie=720,Le=18,R=34,Re=18,ze=190,Be=46,Ve=14,He=16,Ue=168,We=64,Ge=210,Ke=13,qe=24,Je=Le,Ye=512,Xe=276,Ze=360,Qe={short:`var(--insight)`,long:`var(--warning)`},$e={short:`Short-term`,long:`Long-term`};function et(e){let t=e=>e===`short`?0:e===`long`?2:1,n=e.map((e,t)=>({item:e,i:t})).sort((e,n)=>t(e.item.term)-t(n.item.term)||e.i-n.i).map(e=>e.item);return n.map((e,r)=>({item:e,gap:r>0&&t(n[r-1].term)!==t(e.term)}))}function tt({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,event:r,causes:s,consequences:c,causesLabel:l=`Causes`,consequencesLabel:u=`Consequences`,footer:d,delay:f}){let p=i[t]||i.layers,{vbH:m,leftPlaced:h,rightPlaced:g,eventY:_,eventCY:v}=(0,T.useMemo)(()=>{let e=et(s??[]),t=et(c??[]),n=e=>e.length===0?0:e.length*Be+(e.length-1)*Ve+e.filter(e=>e.gap).length*He,r=n(e),i=n(t),a=Math.max(Ge,Math.max(r,i,We)+R+Re),l=(e,t)=>{let r=n(e),i=R+(a-R-Re-r)/2,s=[];for(let{item:n,gap:r}of e){r&&(i+=He);let e=Math.max(0,Math.min(1,n.weight??.5));s.push({link:n,x:t,y:i,cy:i+Be/2,color:n.term?Qe[n.term]:`var(--text-secondary)`,sw:o([0,1],[1.6,6])(e),op:o([0,1],[.3,.92])(e)}),i+=60}return s},u=l(e,Je),d=l(t,Ye),f=R+(a-R-Re-We)/2;return{vbH:a,leftPlaced:u,rightPlaced:d,eventY:f,eventCY:f+We/2}},[s,c]),y=(e,t,n,r)=>{let i=(e+n)/2;return`M ${e.toFixed(1)},${t.toFixed(1)} C ${i.toFixed(1)},${t.toFixed(1)} ${i.toFixed(1)},${r.toFixed(1)} ${n.toFixed(1)},${r.toFixed(1)}`},b=e=>e.map((e,t)=>{let n=nt(e.link.label),r=e.cy-(n.length-1)*Ke/2;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:e.x,y:e.y,width:ze,height:Be,rx:10,className:`cau-node`,style:{stroke:e.color}}),(0,E.jsx)(`rect`,{x:e.x,y:e.y,width:4,height:Be,rx:2,fill:e.color}),e.link.term&&(0,E.jsx)(`circle`,{cx:e.x+ze-11,cy:e.y+11,r:3.5,fill:e.color,className:`cau-term-dot`,children:(0,E.jsx)(`title`,{children:$e[e.link.term]})}),(0,E.jsxs)(`text`,{x:e.x+14,className:`cau-node-lbl`,dominantBaseline:`middle`,children:[(0,E.jsx)(`title`,{children:e.link.label}),n.map((t,n)=>(0,E.jsx)(`tspan`,{x:e.x+14,y:r+n*Ke,children:t},n))]})]},t)});return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(f||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(p,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`cau-wrap`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${Ie} ${m}`,className:`cau-svg`,role:`img`,"aria-label":e,preserveAspectRatio:`xMidYMid meet`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:`cau-arrow`,markerWidth:`8`,markerHeight:`8`,refX:`6`,refY:`4`,orient:`auto`,markerUnits:`userSpaceOnUse`,children:(0,E.jsx)(`path`,{d:`M1,1 L6,4 L1,7`,className:`cau-arrowhead`})})}),(0,E.jsxs)(`text`,{x:32,y:18,className:`cau-col-hdr`,textAnchor:`start`,children:[l,` →`]}),(0,E.jsx)(`text`,{x:Ze,y:18,className:`cau-col-hdr cau-col-hdr--event`,textAnchor:`middle`,children:`Event`}),(0,E.jsxs)(`text`,{x:688,y:18,className:`cau-col-hdr`,textAnchor:`end`,children:[`→ `,u]}),h.map((e,t)=>(0,E.jsx)(`path`,{d:y(e.x+ze,e.cy,Xe,v),className:`cau-link`,style:{stroke:e.color,strokeWidth:e.sw,opacity:e.op},markerEnd:`url(#cau-arrow)`},`lc${t}`)),g.map((e,t)=>(0,E.jsx)(`path`,{d:y(444,v,e.x,e.cy),className:`cau-link`,style:{stroke:e.color,strokeWidth:e.sw,opacity:e.op},markerEnd:`url(#cau-arrow)`},`rc${t}`)),(0,E.jsx)(`rect`,{x:Xe,y:_,width:Ue,height:We,rx:12,className:`cau-event`}),(0,E.jsx)(`text`,{x:Ze,y:v,className:`cau-event-lbl`,textAnchor:`middle`,children:rt(r.label).map((e,t,n)=>(0,E.jsx)(`tspan`,{x:Ze,dy:t===0?`${-((n.length-1)*.55)}em`:`1.1em`,children:e},t))}),b(h),b(g)]})}),it(s,c)&&(0,E.jsxs)(`div`,{className:`cau-legend`,children:[(0,E.jsxs)(`span`,{className:`cau-legend-item`,children:[(0,E.jsx)(`span`,{className:`cau-swatch`,style:{background:Qe.short}}),` Short-term`]}),(0,E.jsxs)(`span`,{className:`cau-legend-item`,children:[(0,E.jsx)(`span`,{className:`cau-swatch`,style:{background:Qe.long}}),` Long-term`]}),(0,E.jsx)(`span`,{className:`cau-legend-item cau-legend-item--weight`,children:`line weight = strength`})]}),d&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:a(d)})]})}function nt(e,t=qe,n=2){let r=e.trim().split(/\s+/).filter(Boolean),i=[],a=``,o=!1;for(let e of r){let r=a?`${a} ${e}`:e;if(r.length<=t||!a)a=r;else if(i.push(a),a=e,i.length===n){o=!0,a=``;break}}if(a&&i.length<n&&i.push(a),i.length){let e=i.length-1,n=i[e];n.length>t&&(n=n.slice(0,t-1).trimEnd()),(o||i[e].length>t)&&(n=n.replace(/[…\s]*$/,``)+`…`),i[e]=n}return i.length?i:[e]}function rt(e){let t=e.trim().split(/\s+/);if(t.length<=2||e.length<=16)return[e];let n=1,r=1/0;for(let e=1;e<t.length;e++){let i=t.slice(0,e).join(` `).length,a=t.slice(e).join(` `).length,o=Math.abs(i-a);o<r&&(r=o,n=e)}return[t.slice(0,n).join(` `),t.slice(n).join(` `)]}function it(e,t){return[...e??[],...t??[]].some(e=>e.term===`short`||e.term===`long`)}function at(e){switch(e){case`battery`:return(0,E.jsxs)(`g`,{className:`dg-cir-glyph`,children:[(0,E.jsx)(`line`,{x1:-2.5,y1:-5,x2:-2.5,y2:5,strokeWidth:1.4}),(0,E.jsx)(`line`,{x1:2.5,y1:-2.5,x2:2.5,y2:2.5,strokeWidth:1.4}),(0,E.jsx)(`line`,{x1:-7,y1:0,x2:-2.5,y2:0}),(0,E.jsx)(`line`,{x1:2.5,y1:0,x2:7,y2:0})]});case`resistor`:return(0,E.jsxs)(`g`,{className:`dg-cir-glyph`,children:[(0,E.jsx)(`line`,{x1:-7,y1:0,x2:-5,y2:0}),(0,E.jsx)(`polyline`,{points:`-5,0 -4,-3 -2,3 0,-3 2,3 4,-3 5,0`,fill:`none`}),(0,E.jsx)(`line`,{x1:5,y1:0,x2:7,y2:0})]});case`capacitor`:return(0,E.jsxs)(`g`,{className:`dg-cir-glyph`,children:[(0,E.jsx)(`line`,{x1:-7,y1:0,x2:-1.5,y2:0}),(0,E.jsx)(`line`,{x1:-1.5,y1:-4,x2:-1.5,y2:4}),(0,E.jsx)(`line`,{x1:1.5,y1:-4,x2:1.5,y2:4}),(0,E.jsx)(`line`,{x1:1.5,y1:0,x2:7,y2:0})]});case`bulb`:return(0,E.jsxs)(`g`,{className:`dg-cir-glyph`,children:[(0,E.jsx)(`line`,{x1:-7,y1:0,x2:-5,y2:0}),(0,E.jsx)(`circle`,{cx:0,cy:0,r:5,fill:`none`}),(0,E.jsx)(`line`,{x1:-3.5,y1:-3.5,x2:3.5,y2:3.5}),(0,E.jsx)(`line`,{x1:-3.5,y1:3.5,x2:3.5,y2:-3.5}),(0,E.jsx)(`line`,{x1:5,y1:0,x2:7,y2:0})]});case`switch`:return(0,E.jsxs)(`g`,{className:`dg-cir-glyph`,children:[(0,E.jsx)(`line`,{x1:-7,y1:0,x2:-4,y2:0}),(0,E.jsx)(`circle`,{cx:-4,cy:0,r:1}),(0,E.jsx)(`line`,{x1:-4,y1:0,x2:4,y2:-4}),(0,E.jsx)(`circle`,{cx:4,cy:0,r:1}),(0,E.jsx)(`line`,{x1:4,y1:0,x2:7,y2:0})]});case`ground`:return(0,E.jsxs)(`g`,{className:`dg-cir-glyph`,children:[(0,E.jsx)(`line`,{x1:0,y1:-7,x2:0,y2:0}),(0,E.jsx)(`line`,{x1:-5,y1:0,x2:5,y2:0,strokeWidth:1.4}),(0,E.jsx)(`line`,{x1:-3,y1:2.5,x2:3,y2:2.5}),(0,E.jsx)(`line`,{x1:-1.5,y1:5,x2:1.5,y2:5})]});default:return(0,E.jsx)(`circle`,{cx:0,cy:0,r:1.6,className:`dg-cir-node`})}}var ot={battery:-5,resistor:-3,capacitor:-4,bulb:-5,switch:-4,ground:-7,node:-1.6},st=3;function ct(e){return(ot[e]??ot.node)-st}var lt=14;function ut(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function dt({title:e,icon:t=`spark`,iconColor:n=`var(--presence)`,components:r,wires:o,footer:s,delay:c}){let l=i[t]||i.spark||i.share,u=e=>r.find(t=>t.id===e);return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-cir`,children:(0,E.jsxs)(`svg`,{viewBox:`-10 -15 120 130`,className:`dg-cir-svg`,role:`img`,"aria-label":e,children:[o.map((e,t)=>{let n=u(e.from),r=u(e.to);return!n||!r?null:(0,E.jsx)(`polyline`,{points:`${n.x},${n.y} ${r.x},${n.y} ${r.x},${r.y}`,className:`dg-cir-wire`,fill:`none`},t)}),r.map(e=>(0,E.jsxs)(`g`,{transform:`translate(${e.x} ${e.y})`,children:[at(e.kind),e.label&&(0,E.jsxs)(`text`,{x:0,y:ct(e.kind),className:`dg-cir-lbl`,textAnchor:`middle`,children:[e.label.length>lt&&(0,E.jsx)(`title`,{children:e.label}),ut(e.label,lt)]})]},e.id))]})}),s&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(s)})]})}var ft=1e3,pt=200,mt=40,ht=78,gt=46,_t=24,vt=4,yt=15,bt=13,xt=17,St=12,Ct=12,wt=180,Tt=new Set([`interface`,`abstract`,`enum`]),Et=new Set([`inheritance`,`implements`,`composition`,`aggregation`,`association`,`dependency`]);function Dt(e){return(Array.isArray(e)?e:typeof e==`string`&&e?[e]:[]).map(e=>{if(typeof e==`string`)return e;if(e&&typeof e==`object`){let t=e,n=t.text??t.name??t.label;return typeof n==`string`?n:``}return``}).filter(Boolean)}function Ot(e){return Array.isArray(e)?e.map((e,t)=>{if(typeof e==`string`)return{name:e,fields:[],methods:[]};if(!e||typeof e!=`object`)return null;let n=e;return{name:typeof n.name==`string`&&n.name?n.name:`Class${t+1}`,stereotype:typeof n.stereotype==`string`&&Tt.has(n.stereotype)?n.stereotype:void 0,fields:Dt(n.fields),methods:Dt(n.methods)}}).filter(e=>e!==null):[]}function kt(e){return Array.isArray(e)?e.map(e=>{if(!e||typeof e!=`object`)return null;let t=e;if(typeof t.from!=`string`||typeof t.to!=`string`||!t.from||!t.to)return null;let n=Et.has(t.kind)?t.kind:`association`,r=typeof t.label==`string`&&t.label?t.label:void 0;return{from:t.from,to:t.to,kind:n,label:r}}).filter(e=>e!==null):[]}function At(e){let t=u(e,{maxWidth:wt,fontSize:St,minFontSize:Ct,maxLines:2,lineHeight:1.25});return{fit:t,h:t.lines.length*t.lineHeightPx+3}}function jt(e,t){let n=new Map;for(let t of e)n.set(t.name,0);let r=t.filter(e=>e.kind===`inheritance`||e.kind===`implements`);for(let t=0;t<e.length;t++){let t=!1;for(let i of r){if(!n.has(i.from)||!n.has(i.to))continue;let r=(n.get(i.to)??0)+1;r>(n.get(i.from)??0)&&r<e.length&&(n.set(i.from,r),t=!0)}if(!t)break}return n}function Mt(e,t,n){let r=t-e.cx,i=n-e.cy,a=Math.hypot(r,i)||1,o=r/a,s=i/a,c=e.w/2+4,l=e.h/2+4,u=Math.max(Math.abs(o)/c,Math.abs(s)/l),d=Math.min(u>0?1/u:c,a*.4);return{x:e.cx+o*d,y:e.cy+s*d}}var Nt={interface:`color-mix(in oklab, var(--insight) 14%, var(--surface-elevated-2))`,abstract:`color-mix(in oklab, var(--presence) 12%, var(--surface-elevated-2))`,enum:`color-mix(in oklab, var(--warning) 14%, var(--surface-elevated-2))`,none:`var(--surface-elevated-2)`},Pt={inheritance:13,implements:13,composition:17,aggregation:17,association:0,dependency:0};function Ft(e){let t=(0,I.c)(8),{kind:n,x:r,y:i,angle:a}=e,o=`translate(${r} ${i}) rotate(${a})`;switch(n){case`inheritance`:case`implements`:{let e;return t[0]===o?e=t[1]:(e=(0,E.jsx)(`path`,{d:`M0 0 L-14 -8 L-14 8 Z`,className:`ucd-tri`,transform:o}),t[0]=o,t[1]=e),e}case`composition`:{let e;return t[2]===o?e=t[3]:(e=(0,E.jsx)(`path`,{d:`M0 0 L-9 -6 L-18 0 L-9 6 Z`,className:`ucd-di ucd-di-fill`,transform:o}),t[2]=o,t[3]=e),e}case`aggregation`:{let e;return t[4]===o?e=t[5]:(e=(0,E.jsx)(`path`,{d:`M0 0 L-9 -6 L-18 0 L-9 6 Z`,className:`ucd-di`,transform:o}),t[4]=o,t[5]=e),e}case`dependency`:{let e;return t[6]===o?e=t[7]:(e=(0,E.jsx)(`path`,{d:`M-11 -7 L0 0 L-11 7`,className:`ucd-open`,transform:o}),t[6]=o,t[7]=e),e}default:return null}}function It({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,classes:r,relations:o,footer:c,delay:l}){let d=i[t]||i.layers,f=(0,T.useMemo)(()=>Ot(r),[r]),p=(0,T.useMemo)(()=>kt(o),[o]),{placed:m,byName:h,vbH:g}=(0,T.useMemo)(()=>{let e=f.map(e=>{let t=u(e.name,{maxWidth:wt,fontSize:yt,minFontSize:Ct,maxLines:2,lineHeight:1.2,bold:!0}),n=10+(e.stereotype?xt:0)+t.lines.length*t.lineHeightPx+8,r=e.fields.map(At),i=e.methods.map(At),a=r.length?7+r.reduce((e,t)=>e+t.h,0)+5:10,o=i.length?7+i.reduce((e,t)=>e+t.h,0)+5:10;return{cls:e,x:0,y:0,w:pt,h:n+a+o,cx:0,cy:0,nameFit:t,headerH:n,fieldFits:r,fieldsH:a,methodFits:i,methodsH:o}}),t=jt(f,p),n=new Map;for(let r of e){let e=t.get(r.cls.name)??0;n.has(e)||n.set(e,[]),n.get(e).push(r)}let r=_t;for(let e of[...n.keys()].sort((e,t)=>e-t)){let t=n.get(e);for(let e=0;e<t.length;e+=vt){let n=t.slice(e,e+vt),i=(ft-(n.length*pt+(n.length-1)*mt))/2,a=0;for(let e of n)e.x=i,e.y=r,e.cx=i+e.w/2,e.cy=r+e.h/2,i+=240,a=Math.max(a,e.h);r+=a+gt}r+=32}return{placed:e,byName:new Map(e.map(e=>[e.cls.name,e])),vbH:Math.max(200,r-ht+_t)}},[f,p]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),m.length===0?(0,E.jsx)(s,{message:`No classes to diagram`}):(0,E.jsx)(`div`,{className:`dg-stage ucd-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${ft} ${g}`,className:`dg-svg`,role:`img`,"aria-label":e,children:[p.map((e,t)=>{let n=h.get(e.from),r=h.get(e.to);if(!n||!r||n===r)return null;let i=Mt(n,r.cx,r.cy),a=Mt(r,n.cx,n.cy),o=Math.atan2(a.y-i.y,a.x-i.x)*180/Math.PI,s=e.kind===`implements`||e.kind===`dependency`,c=e.kind===`composition`||e.kind===`aggregation`,l=Pt[e.kind],u=Math.hypot(a.x-i.x,a.y-i.y)||1,d=(a.x-i.x)/u,f=(a.y-i.y)/u,p=c?i.x+d*l:i.x,m=c?i.y+f*l:i.y,g=c?a.x:a.x-d*l,_=c?a.y:a.y-f*l;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{className:`ucd-edge`,x1:p,y1:m,x2:g,y2:_,strokeDasharray:s?`6 5`:void 0}),c?(0,E.jsx)(Ft,{kind:e.kind,x:i.x,y:i.y,angle:o+180}):(0,E.jsx)(Ft,{kind:e.kind,x:a.x,y:a.y,angle:o})]},`r${t}`)}),m.map((e,t)=>{let n=Nt[e.cls.stereotype??`none`],r=e.y+10+(e.cls.stereotype?xt:0),i=e.y+e.headerH,a=i+e.fieldsH,o=i+7,s=a+7;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:e.x,y:e.y,width:e.w,height:e.h,rx:5,className:`ucd-box`}),(0,E.jsx)(`path`,{d:`M ${e.x} ${e.y+e.headerH} v ${-e.headerH+5} a 5 5 0 0 1 5 -5 h ${e.w-10} a 5 5 0 0 1 5 5 v ${e.headerH-5} z`,className:`ucd-header`,style:{fill:n}}),(0,E.jsx)(`line`,{x1:e.x,y1:i,x2:e.x+e.w,y2:i,className:`ucd-sep`}),(0,E.jsx)(`line`,{x1:e.x,y1:a,x2:e.x+e.w,y2:a,className:`ucd-sep`}),e.cls.stereotype&&(0,E.jsx)(`text`,{x:e.cx,y:e.y+10+xt/2,className:`ucd-stereo`,textAnchor:`middle`,dominantBaseline:`middle`,fontSize:bt,children:`«${e.cls.stereotype}»`}),(0,E.jsx)(`text`,{className:e.cls.stereotype===`abstract`?`ucd-name ucd-italic`:`ucd-name`,textAnchor:`middle`,fontSize:e.nameFit.fontSize,children:e.nameFit.lines.map((t,n)=>(0,E.jsx)(`tspan`,{x:e.cx,y:r+(n+.5)*e.nameFit.lineHeightPx,dominantBaseline:`middle`,children:t},n))}),e.fieldFits.map((t,n)=>{let r=o;return o+=t.h,(0,E.jsx)(`text`,{className:`ucd-member`,fontSize:t.fit.fontSize,children:t.fit.lines.map((n,i)=>(0,E.jsx)(`tspan`,{x:e.x+10,y:r+(i+.5)*t.fit.lineHeightPx,dominantBaseline:`middle`,children:n},i))},`f${n}`)}),e.methodFits.map((t,n)=>{let r=s;return s+=t.h,(0,E.jsx)(`text`,{className:`ucd-member`,fontSize:t.fit.fontSize,children:t.fit.lines.map((n,i)=>(0,E.jsx)(`tspan`,{x:e.x+10,y:r+(i+.5)*t.fit.lineHeightPx,dominantBaseline:`middle`,children:n},i))},`m${n}`)})]},`${e.cls.name}-${t}`)}),p.map((e,t)=>{if(!e.label)return null;let n=h.get(e.from),r=h.get(e.to);if(!n||!r||n===r)return null;let i=Mt(n,r.cx,r.cy),a=Mt(r,n.cx,n.cy),o=u(e.label,{maxWidth:170,fontSize:14,minFontSize:Ct,maxLines:2,lineHeight:1.15,bold:!0}),s=(i.x+a.x)/2,c=(i.y+a.y)/2-14-(o.lines.length-1)*o.lineHeightPx/2;return(0,E.jsx)(`text`,{className:`dg-edge-label`,textAnchor:`middle`,fontSize:o.fontSize,children:o.lines.map((e,t)=>(0,E.jsx)(`tspan`,{x:s,y:c+t*o.lineHeightPx,dominantBaseline:`middle`,children:e},t))},`l${t}`)})]})}),c&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(c)})]})}var Lt=1e3,Rt=130,zt=40,Bt=260,Vt=170,Ht=78,Ut=64,Wt=74,Gt=148,Kt=250,z=24,qt=46,Jt=18;function Yt(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function Xt(e){return Number.isFinite(e)?Math.min(1,Math.max(0,e/100)):.5}function Zt(e){return Math.min(Kt,Math.max(Gt,46+e.length*11))}function Qt(e,t){let n=new Map;for(let t of e)n.set(t.id,0);let r=t.filter(e=>!e.feedback);for(let t=0;t<e.length;t++){let t=!1;for(let i of r){if(!n.has(i.from)||!n.has(i.to))continue;let r=(n.get(i.from)??0)+1;r>(n.get(i.to)??0)&&r<e.length&&(n.set(i.to,r),t=!0)}if(!t)break}return n}function $t(e,t){let n=Qt(e,t),r=Math.max(0,...e.map(e=>n.get(e.id)??0)),i=new Map;for(let t of e){if(t.x!==void 0&&t.y!==void 0)continue;let e=n.get(t.id)??0;i.has(e)||i.set(e,[]),i.get(e).push(t)}let a=e.map(e=>{let t=e.kind===`sum`?`sum`:`block`,a=typeof e.label==`string`&&e.label?e.label:t===`sum`?`Σ`:`Block`,o=t===`sum`?z:Zt(a)/2,s=t===`sum`?z:Wt/2;if(Number.isFinite(e.x)&&Number.isFinite(e.y))return{id:e.id,label:a,kind:t,cx:Rt+Xt(e.x)*740,cy:zt+Xt(e.y)*Bt,halfW:o,halfH:s};let c=n.get(e.id)??0,l=i.get(c)??[e],u=l.indexOf(e),d=l.length,f=d>5?312/(d-1):Ht,p=(d-1)/2,m=r===0?Lt/2:Rt+c/r*740,h=Vt+(u-p)*f;return{id:e.id,label:a,kind:t,cx:m,cy:h,halfW:o,halfH:s}}),o=t.filter(e=>e.feedback).length,s=a.length?Math.min(...a.map(e=>e.cy-e.halfH-(e.kind===`sum`?30:0))):zt,c=s<0?-s+20:0;for(let e of a)e.cy+=c;return{placed:a,vbH:(a.length?Math.max(...a.map(e=>e.cy+e.halfH)):207)+o*Ut+qt}}function en(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n);return{x:t.cx-Math.cos(i)*(t.halfW+4),y:t.cy-Math.sin(i)*(t.halfH+4)}}function tn(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n);return{x:e.cx+Math.cos(i)*(e.halfW+4),y:e.cy+Math.sin(i)*(e.halfH+4)}}function nn(e,t){let n=Math.hypot(t.x,t.y)||1,r=t.x/n,i=t.y/n,a=e.halfH+20;return{x:e.cx-r*a,y:e.cy-i*a}}function rn({title:e,icon:t=`sliders`,iconColor:n=`var(--presence)`,blocks:r,wires:o,footer:s,delay:c}){let l=i[t]||i.sliders,u=`cbd-arrow-${(0,T.useId)().replace(/:/g,``)}`,d=(0,T.useMemo)(()=>Array.isArray(r)?r:[],[r]),f=(0,T.useMemo)(()=>Array.isArray(o)?o:[],[o]),{placed:p,vbH:m}=(0,T.useMemo)(()=>$t(d,f),[d,f]),h=(0,T.useMemo)(()=>new Map(p.map(e=>[e.id,e])),[p]),g=(0,T.useMemo)(()=>{let e=f.map((e,t)=>({w:e,i:t,span:Math.abs((h.get(e.to)?.cx??0)-(h.get(e.from)?.cx??0))})).filter(e=>e.w.feedback&&h.has(e.w.from)&&h.has(e.w.to)).sort((e,t)=>e.span-t.span),t=new Map;return e.forEach((e,n)=>t.set(e.i,n+1)),t},[f,h]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-cbd-stage`,children:(0,E.jsxs)(`svg`,{className:`dg-cbd-svg`,viewBox:`0 0 ${Lt} ${m}`,preserveAspectRatio:`xMidYMid meet`,role:`img`,"aria-label":e,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:u,viewBox:`0 0 10 10`,refX:`8`,refY:`5`,markerWidth:`7`,markerHeight:`7`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`dg-cbd-arrowhead`})})}),f.map((e,t)=>{let n=h.get(e.from),r=h.get(e.to);if(!n||!r)return null;let i=r.kind===`sum`?e.sign===`minus`?`−`:`+`:null;if(e.feedback){let e=g.get(t)??1,a=m-qt-(g.size-e)*Ut,o=n.cy+n.halfH,s=r.cy+r.halfH,c=`${n.cx},${o} ${n.cx},${a} ${r.cx},${a} ${r.cx},${s+6}`,l=i&&(0,E.jsx)(`text`,{x:r.cx+16,y:s+20,className:`dg-cbd-sign`,textAnchor:`start`,dominantBaseline:`middle`,children:i});return(0,E.jsxs)(`g`,{className:`dg-cbd-wire`,children:[(0,E.jsx)(`polyline`,{points:c,fill:`none`,markerEnd:`url(#${u})`}),l]},`w${t}`)}let a=tn(n,r),o=en(n,r),s=i?nn(r,{x:o.x-a.x,y:o.y-a.y}):null,c=s?s.x>r.cx+2?`start`:s.x<r.cx-2?`end`:`middle`:`middle`;return(0,E.jsxs)(`g`,{className:`dg-cbd-wire`,children:[(0,E.jsx)(`line`,{x1:a.x,y1:a.y,x2:o.x,y2:o.y,markerEnd:`url(#${u})`}),s&&(0,E.jsx)(`text`,{x:s.x,y:s.y,className:`dg-cbd-sign`,textAnchor:c,dominantBaseline:`middle`,children:i})]},`w${t}`)}),p.map(e=>e.kind===`sum`?(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`circle`,{cx:e.cx,cy:e.cy,r:z,className:`dg-cbd-sum`}),(0,E.jsx)(`line`,{x1:e.cx-z*.4,y1:e.cy,x2:e.cx+z*.4,y2:e.cy,className:`dg-cbd-sum-cross`}),(0,E.jsx)(`line`,{x1:e.cx,y1:e.cy-z*.4,x2:e.cx,y2:e.cy+z*.4,className:`dg-cbd-sum-cross`}),(0,E.jsxs)(`text`,{x:e.cx,y:e.cy-z-12,className:`dg-cbd-sum-label`,textAnchor:`middle`,children:[e.label.length>Jt&&(0,E.jsx)(`title`,{children:e.label}),Yt(e.label,Jt)]})]},e.id):(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:e.cx-e.halfW,y:e.cy-e.halfH,width:e.halfW*2,height:e.halfH*2,rx:10,className:`dg-cbd-box`}),(0,E.jsxs)(`text`,{x:e.cx,y:e.cy,className:`dg-cbd-label`,textAnchor:`middle`,dominantBaseline:`middle`,children:[e.label.length>Jt&&(0,E.jsx)(`title`,{children:e.label}),Yt(e.label,Jt)]})]},e.id))]})}),s&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(s)})]})}var an=138,on=40,sn=30,cn=692,ln=400,un=cn/2,dn=ln/2,fn=.26,pn=22,mn=9;function hn(e){let t=Math.max(1,e.length);return e.map((e,n)=>{let r=-Math.PI/2+n/t*Math.PI*2;return{stage:e,cx:un+Math.cos(r)*an,cy:dn+Math.sin(r)*an,ang:r,left:Math.cos(r)<-.001}})}function gn(e,t){let n=an+t;return{x:un+Math.cos(e)*n,y:dn+Math.sin(e)*n}}function _n({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,stages:r,caption:o,footer:s,delay:c}){let l=i[t]??i.share,u=(0,T.useId)().replace(/:/g,``),d=hn(r),f=d.length;return(0,E.jsxs)(`div`,{className:`card reveal dg-cw-card`,style:{"--delay":(c??0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-cw-stage`,children:(0,E.jsxs)(`svg`,{className:`dg-cw-svg`,viewBox:`0 0 ${cn} ${ln}`,preserveAspectRatio:`xMidYMid meet`,role:`img`,"aria-label":e??`Cycle`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:`dg-cw-arrow-${u}`,viewBox:`0 0 10 10`,refX:`7`,refY:`5`,markerWidth:mn,markerHeight:mn,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`dg-cw-arrowfill`})})}),(0,E.jsx)(`circle`,{className:`dg-cw-ring`,cx:un,cy:dn,r:an}),d.map((e,t)=>{let n=d[(t+1)%f];return f<2?null:(0,E.jsx)(vn,{from:e,to:n,uid:u},`c${t}`)}),d.map((e,t)=>(0,E.jsx)(yn,{placed:e,index:t},`n${t}`))]})}),o&&(0,E.jsx)(`p`,{className:`dg-cw-cap`,children:o}),s&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(s)})]})}function vn(e){let t=(0,I.c)(7),{from:n,to:r,uid:i}=e,a=r.ang-n.ang;for(;a<=-Math.PI;)a+=Math.PI*2;for(;a>Math.PI;)a-=Math.PI*2;let o=a>=0?1:-1,s=n.ang+fn*o,c;t[0]===s?c=t[1]:(c=gn(s,pn),t[0]=s,t[1]=c);let l=c,u=r.ang-fn*o,d;t[2]===u?d=t[3]:(d=gn(u,pn),t[2]=u,t[3]=d);let f=d,p=+(Math.abs(a)-fn*2>Math.PI),m=+(o>0),h=`M ${l.x} ${l.y} A 160 160 0 ${p} ${m} ${f.x} ${f.y}`,g=`url(#dg-cw-arrow-${i})`,_;return t[4]!==h||t[5]!==g?(_=(0,E.jsx)(`path`,{className:`dg-cw-link`,d:h,markerEnd:g}),t[4]=h,t[5]=g,t[6]=_):_=t[6],_}function yn(e){let t=(0,I.c)(23),{placed:n,index:r}=e,{stage:a,cx:o,cy:s,left:c}=n,l=a.icon?i[a.icon]:void 0,u=o+(c?-50:50),d=c?`end`:`start`,f;if(t[0]!==l||t[1]!==d||t[2]!==o||t[3]!==s||t[4]!==r||t[5]!==u||t[6]!==a.caption||t[7]!==a.label){let e=bn(a.label,16,2),n=a.caption?bn(a.caption,22,2):[],i=s-((e.length-1)*16+(n.length?15+(n.length-1)*14:0))/2+4,c=i+(e.length-1)*16+15,p;t[9]!==o||t[10]!==s?(p=(0,E.jsx)(`circle`,{className:`dg-cw-disc`,cx:o,cy:s,r:on}),t[9]=o,t[10]=s,t[11]=p):p=t[11];let m;t[12]!==l||t[13]!==o||t[14]!==s||t[15]!==r?(m=l?(0,E.jsx)(l,{x:o-sn/2,y:s-sn/2,width:sn,height:sn,className:`dg-cw-glyph`}):(0,E.jsx)(`text`,{className:`dg-cw-num`,x:o,y:s,textAnchor:`middle`,dominantBaseline:`central`,children:r+1}),t[12]=l,t[13]=o,t[14]=s,t[15]=r,t[16]=m):m=t[16];let h;t[17]!==i||t[18]!==u?(h=(e,t)=>(0,E.jsx)(`tspan`,{x:u,y:i+t*16,children:e},t),t[17]=i,t[18]=u,t[19]=h):h=t[19];let g=e.map(h),_;t[20]!==d||t[21]!==g?(_=(0,E.jsx)(`text`,{className:`dg-cw-label`,textAnchor:d,children:g}),t[20]=d,t[21]=g,t[22]=_):_=t[22],f=(0,E.jsxs)(`g`,{className:`dg-cw-node`,children:[p,m,_,n.length>0&&(0,E.jsx)(`text`,{className:`dg-cw-cap-lbl`,textAnchor:d,children:n.map((e,t)=>(0,E.jsx)(`tspan`,{x:u,y:c+t*14,children:e},t))})]}),t[0]=l,t[1]=d,t[2]=o,t[3]=s,t[4]=r,t[5]=u,t[6]=a.caption,t[7]=a.label,t[8]=f}else f=t[8];return f}function bn(e,t,n){let r=e.split(/\s+/).filter(Boolean),i=[],a=``,o=!1;for(let e=0;e<r.length;e++){let s=r[e],c=a?`${a} ${s}`:s;if(c.length<=t||!a)a=c;else if(i.push(a),a=s,i.length===n){o=!0,a=``;break}}if(a&&i.length<n&&i.push(a),i.length){let e=i.length-1,n=i[e];n.length>t&&(n=n.slice(0,t-1).trimEnd()),(o||i[e].length>t)&&(n=n.replace(/[…\s]*$/,``)+`…`),i[e]=n}return i.length?i:[``]}var xn=1e3,Sn=130,Cn=113,wn=74,Tn=320,En=226,Dn=720,On=70,kn=-30,An={source:`color-mix(in oklab, var(--presence) 18%, var(--surface-elevated-2))`,transform:`color-mix(in oklab, var(--presence) 10%, var(--surface-elevated-2))`,store:`color-mix(in oklab, var(--presence-soft) 20%, var(--surface-elevated-2))`,sink:`color-mix(in oklab, var(--insight) 16%, var(--surface-elevated-2))`},jn={source:`var(--presence)`,transform:`var(--line-strong)`,store:`var(--presence-soft)`,sink:`var(--insight)`},Mn=17,Nn=20;function Pn(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function Fn(e,t){let n=new Map;for(let t of e)n.set(t.id,0);for(let r=0;r<e.length;r++){let r=!1;for(let i of t){if(!n.has(i.from)||!n.has(i.to))continue;let t=(n.get(i.from)??0)+1;t>(n.get(i.to)??0)&&t<e.length&&(n.set(i.to,t),r=!0)}if(!r)break}return n}function In(e,t){if(e.length===0)return Tn;let n=Fn(e,t),r=new Map;for(let t of e){let e=n.get(t.id)??0;r.set(e,(r.get(e)??0)+1)}let i=r.size>0?Math.max(...r.values()):1,a=i*Sn+Math.max(0,i-1)*wn;return Math.max(Tn,a+226)}function Ln(e,t){if(e.length===0)return xn;let n=Fn(e,t),r=new Set(e.map(e=>n.get(e.id)??0)).size;return Math.max(xn,Math.max(1,r-1)*En+226)}function Rn(e,t,n,r){let i=n-226,a=r-226,o=e=>Cn+e*i,s=e=>Cn+e*a,c=e.map(e=>Number.isFinite(e.x)&&Number.isFinite(e.y)?{...e,cx:o(zn(e.x)),cy:s(zn(e.y))}:{...e,cx:0,cy:0}),l=new Map(c.map(e=>[e.id,e])),u=e.filter(e=>!(Number.isFinite(e.x)&&Number.isFinite(e.y))),d=Fn(u,t),f=new Map;for(let e of u){let t=d.get(e.id)??0;f.has(t)||f.set(t,[]),f.get(t).push(e)}let p=[...f.keys()].sort((e,t)=>e-t),m=Math.max(1,p.length-1);return p.forEach((e,t)=>{let i=f.get(e),a=p.length===1?n/2:o(t/m);i.forEach((e,t)=>{let n=l.get(e.id);n.cx=a,n.cy=i.length===1?r/2:s((t+.5)/i.length)})}),c}function zn(e){return Math.min(1,Math.max(0,e))}function Bn(e,t){let n=(Math.hypot(t.cx-e.cx,t.cy-e.cy)||1)*.4;return{rx:Math.min(99,n),ry:Math.min(71,n)}}function Vn(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n),{rx:a,ry:o}=Bn(e,t);return{x:t.cx-Math.cos(i)*a,y:t.cy-Math.sin(i)*o}}function Hn(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n),{rx:a,ry:o}=Bn(e,t);return{x:e.cx+Math.cos(i)*a,y:e.cy+Math.sin(i)*o}}function Un(e){return e===`store`?(0,E.jsxs)(`g`,{className:`dp-icon`,transform:`translate(0 -2)`,children:[(0,E.jsx)(`line`,{x1:-9,y1:-4,x2:9,y2:-4}),(0,E.jsx)(`line`,{x1:-9,y1:0,x2:9,y2:0}),(0,E.jsx)(`line`,{x1:-9,y1:4,x2:9,y2:4})]}):(0,E.jsxs)(`g`,{className:`dp-icon`,transform:`translate(0 -2)`,children:[(0,E.jsx)(`line`,{x1:-10,y1:0,x2:7,y2:0}),(0,E.jsx)(`path`,{d:`M 1 -6 L 11 0 L 1 6`,fill:`none`})]})}function Wn(e,t,n){let r={fill:t,stroke:n,strokeWidth:2.2};switch(e){case`source`:return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:-75,y:-35,width:150,height:On,rx:14,...r}),(0,E.jsxs)(`g`,{className:`dp-icon`,transform:`translate(-2 -2)`,children:[(0,E.jsx)(`line`,{x1:-16,y1:0,x2:6,y2:0}),(0,E.jsx)(`path`,{d:`M 0 -6 L 8 0 L 0 6`,fill:`none`})]})]});case`sink`:case`store`:{let t=On/2-13;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`path`,{d:`M -58 -22 A 58 13 0 0 1 58 -22 L 58 ${t} A 58 13 0 0 1 -58 ${t} Z`,...r}),(0,E.jsx)(`path`,{d:`M -58 -22 A 58 13 0 0 0 58 -22`,fill:`none`,stroke:n,strokeWidth:1.6}),Un(e)]})}default:{let e=Array.from({length:6},(e,t)=>{let n=Math.PI/3*t;return`${Math.cos(n)*66},${Math.sin(n)*40}`}).join(` `);return(0,E.jsx)(`polygon`,{points:e,...r})}}}function Gn({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,stages:r,edges:o,footer:s,delay:c}){let l=i[t]||i.share,u=(0,T.useId)().replace(/:/g,``),d=(0,T.useMemo)(()=>Array.isArray(r)?r:[],[r]),f=(0,T.useMemo)(()=>Array.isArray(o)?o:[],[o]),p=(0,T.useMemo)(()=>Ln(d,f),[d,f]),m=(0,T.useMemo)(()=>In(d,f),[d,f]),h=(0,T.useMemo)(()=>Rn(d,f,p,m),[d,f,p,m]),g=(0,T.useMemo)(()=>new Map(h.map(e=>[e.id,e])),[h]),_=Math.round(Dn*p/xn),v=(0,T.useMemo)(()=>f.map((e,t)=>{let n=g.get(e?.from),r=g.get(e?.to);return!n||!r?null:{key:t,s:Hn(n,r),t:Vn(n,r),label:typeof e.label==`string`?e.label:``}}).filter(e=>e!==null),[f,g]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage dp-stage`,style:{maxWidth:_},children:(0,E.jsxs)(`svg`,{className:`dg-svg`,viewBox:`0 0 ${p} ${m}`,preserveAspectRatio:`xMidYMid meet`,role:`img`,"aria-label":e,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:`dp-arrow-${u}`,viewBox:`0 0 10 10`,refX:`8`,refY:`5`,markerWidth:`7`,markerHeight:`7`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`dp-arrowhead`})})}),v.map(({key:e,s:t,t:n})=>(0,E.jsx)(`g`,{className:`dp-edge`,children:(0,E.jsx)(`line`,{x1:t.x,y1:t.y,x2:n.x,y2:n.y,markerEnd:`url(#dp-arrow-${u})`})},e)),h.map((e,t)=>{let n=e.cy+kn,r=typeof e.label==`string`&&e.label?e.label:e.id||`Stage`,i=e.kind??`transform`;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`g`,{transform:`translate(${e.cx} ${n})`,children:Wn(i,An[i]??An.transform,jn[i]??jn.transform)}),(0,E.jsxs)(`text`,{x:e.cx,y:n+On/2+24,className:`dp-label`,textAnchor:`middle`,children:[r.length>Mn&&(0,E.jsx)(`title`,{children:r}),Pn(r,Mn)]}),e.sub&&(0,E.jsxs)(`text`,{x:e.cx,y:n+On/2+44,className:`dp-sub`,textAnchor:`middle`,children:[e.sub.length>Nn&&(0,E.jsx)(`title`,{children:e.sub}),Pn(e.sub,Nn)]})]},e.id??t)}),v.map(({key:e,s:t,t:n,label:r})=>{if(!r)return null;let i=(t.x+n.x)/2,a=(t.y+n.y)/2;return(0,E.jsx)(`text`,{x:i,y:a-8,className:`dg-edge-label`,textAnchor:`middle`,children:Pn(r,26)},e)})]})}),s&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(s)})]})}var B=46,V=14,Kn=58,qn=40,Jn=34,Yn=17,Xn=46,Zn=64,H=e=>typeof e==`number`?String(e):e,Qn=7.4,$n=Math.max(2,Math.floor(29.24/Qn)),er=Math.max(2,Math.floor(Kn*.62*.82/Qn));function tr(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function nr(e){let t=new Map;for(let n of e)t.set(n.id,n);let n=new Set;for(let t of e)t.left&&n.add(t.left),t.right&&n.add(t.right);return{byId:t,rootId:e.find(e=>!n.has(e.id))?.id??e[0]?.id}}function rr(e){let t=new Map;return e.forEach((n,r)=>{if(n==null)return;let i=`n${r}`,a=2*r+1,o=2*r+2,s=a<e.length&&e[a]!==null&&e[a]!==void 0,c=o<e.length&&e[o]!==null&&e[o]!==void 0;t.set(i,{id:i,value:H(n),left:s?`n${a}`:void 0,right:c?`n${o}`:void 0})}),{byId:t,rootId:t.has(`n0`)?`n0`:void 0}}function ir(e,t){let n=[];if(!t||!e.has(t))return{placed:n,slots:0,maxDepth:0};let r=0,i=0,a=new Set,o=(t,s,c)=>{let l=e.get(t);if(!l||a.has(t))return;a.add(t),l.left&&o(l.left,s+1,t);let u=31+r*Xn,d=31+s*Zn;r+=1,i=Math.max(i,s),n.push({id:t,value:H(l.value),x:u,y:d,depth:s,parentId:c}),l.right&&o(l.right,s+1,t)};return o(t,0),{placed:n,slots:r,maxDepth:i}}function ar(e,t,n){let r=Math.max(1,e.length),i=t.length?22:4,a=28+r*B,o=i+B+22,s=i;return{vbW:a,vbH:o,svg:(0,E.jsxs)(E.Fragment,{children:[e.map((e,t)=>{let r=V+t*B;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:r,y:s,width:B,height:B,rx:4,className:`dst-cell`+(n===t?` on`:``)}),(0,E.jsx)(`text`,{x:r+B/2,y:s+B/2+4,className:`dst-val`,textAnchor:`middle`,children:H(e.value)}),(0,E.jsx)(`text`,{x:r+B/2,y:s+B+14,className:`dst-idx`,textAnchor:`middle`,children:t})]},t)}),t.map((e,t)=>{if(e.index<0||e.index>=r)return null;let n=V+e.index*B+B/2;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`text`,{x:n,y:s-12,className:`dst-ptr`,textAnchor:`middle`,children:e.label}),(0,E.jsx)(`path`,{d:`M ${n} ${s-9} L ${n-3} ${s-4} L ${n+3} ${s-4} Z`,className:`dst-ptr-tip`})]},`p${t}`)})]})}}function or(e,t,n){let r=Math.max(1,e.length),i=28+r*92+Jn,a=Kn*.62;return{vbW:i,vbH:86,svg:(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`text`,{x:V,y:24,className:`dst-tag`,textAnchor:`start`,children:`head`}),e.map((e,r)=>{let i=V+r*92,o=t===r,s=(i+a+Kn)/2,c=H(e.value);return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:i,y:28,width:Kn,height:qn,rx:5,className:`dst-cell`+(o?` on`:``)}),(0,E.jsx)(`line`,{x1:i+a,y1:28,x2:i+a,y2:68,className:`dst-divide`}),(0,E.jsxs)(`text`,{x:i+a/2,y:52,className:`dst-val`,textAnchor:`middle`,children:[c.length>er&&(0,E.jsx)(`title`,{children:c}),tr(c,er)]}),(0,E.jsx)(`circle`,{cx:s,cy:48,r:2.6,className:`dst-dot`}),(0,E.jsx)(`line`,{x1:s,y1:48,x2:i+92-4,y2:48,className:`dst-edge`,markerEnd:n})]},r)}),(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:V+r*92,y:32,width:Jn,height:32,rx:4,className:`dst-null`}),(0,E.jsx)(`text`,{x:V+r*92+Jn/2,y:51.5,className:`dst-null-lbl`,textAnchor:`middle`,children:`null`})]})]})}}function sr(e,t){let n=Math.max(1,e.length),r=B*1.9;return{vbW:159.39999999999998,vbH:28+n*B,svg:(0,E.jsx)(E.Fragment,{children:e.map((i,a)=>{let o=V+(n-1-a)*B,s=t===a,c=a===e.length-1;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:58,y:o,width:r,height:B,rx:4,className:`dst-cell`+(s?` on`:``)}),(0,E.jsx)(`text`,{x:101.69999999999999,y:o+B/2+4,className:`dst-val`,textAnchor:`middle`,children:H(i.value)}),c&&(0,E.jsx)(`text`,{x:50,y:o+B/2+3.5,className:`dst-ptr`,textAnchor:`end`,children:`top`})]},a)})})}}function cr(e,t){let n=Math.max(1,e.length),r=B*1.25;return{vbW:28+n*r,vbH:72,svg:(0,E.jsx)(E.Fragment,{children:e.map((n,i)=>{let a=V+i*r,o=t===i,s=i===0,c=i===e.length-1;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:a,y:22,width:r,height:B,rx:4,className:`dst-cell`+(o?` on`:``)}),(0,E.jsx)(`text`,{x:a+r/2,y:49,className:`dst-val`,textAnchor:`middle`,children:H(n.value)}),s&&(0,E.jsx)(`text`,{x:a+r/2,y:14,className:`dst-ptr`,textAnchor:`middle`,children:`front`}),c&&!s&&(0,E.jsx)(`text`,{x:a+r/2,y:14,className:`dst-ptr`,textAnchor:`middle`,children:`rear`})]},i)})})}}function lr(e,t,n,r){let i=28+Math.max(1,t)*Xn,a=28+(n+1)*Zn-30,o=new Map(e.map(e=>[e.id,e]));return{vbW:i,vbH:a,svg:(0,E.jsxs)(E.Fragment,{children:[e.map(e=>e.parentId&&o.has(e.parentId)?(0,E.jsx)(`line`,{x1:o.get(e.parentId).x,y1:o.get(e.parentId).y,x2:e.x,y2:e.y,className:`dst-edge`},`e${e.id}`):null),e.map(e=>{let t=r===e.id;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`circle`,{cx:e.x,cy:e.y,r:Yn,className:`dst-node`+(t?` on`:``)}),(0,E.jsxs)(`text`,{x:e.x,y:e.y+4,className:`dst-val`,textAnchor:`middle`,children:[e.value.length>$n&&(0,E.jsx)(`title`,{children:e.value}),tr(e.value,$n)]})]},e.id)})]})}}var ur={array:`layers`,linkedlist:`link`,stack:`layers`,queue:`layers`,tree:`share`,bst:`share`,heap:`share`};function dr({title:e,icon:t,iconColor:n=`var(--presence)`,kind:r,cells:o=[],nodes:s,level:c,pointers:l=[],highlight:u,footer:d,delay:f}){let p=i[t??ur[r]]||i.layers,m=`dst-arrow-${(0,T.useId)().replace(/:/g,``)}`,h=`url(#${m})`,g=(0,T.useMemo)(()=>{let e=o.map(e=>typeof e==`object`&&e?e:{value:e}),t=typeof u==`number`?u:void 0;if(r===`array`)return ar(e,l,t);if(r===`linkedlist`)return or(e,t,h);if(r===`stack`)return sr(e,t);if(r===`queue`)return cr(e,t);let{byId:n,rootId:i}=s&&s.length?nr(s):rr(c??e.map(e=>e.value)),{placed:a,slots:d,maxDepth:f}=ir(n,i);return lr(a,d,f,typeof u==`string`?u:void 0)},[r,o,s,c,l,u,h]),_=r===`linkedlist`;return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(f||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(p,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dst-wrap`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${g.vbW} ${g.vbH}`,className:`dst-svg`,role:`img`,"aria-label":e,children:[_&&(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:m,markerWidth:`7`,markerHeight:`7`,refX:`6`,refY:`3.5`,orient:`auto`,children:(0,E.jsx)(`path`,{d:`M0,0 L7,3.5 L0,7 Z`,className:`dst-arrowhead`})})}),g.svg]})}),d&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:a(d)})]})}var fr=1e3,pr=108,mr=92,hr=46,gr=300,_r=212,vr=640,yr=15,br=13,xr=2,Sr=168,Cr=56,wr={default:`var(--surface-elevated-2)`,start:`color-mix(in oklab, var(--presence) 18%, var(--surface-elevated-2))`,accent:`color-mix(in oklab, var(--presence) 16%, var(--surface-elevated-2))`,good:`color-mix(in oklab, var(--insight) 16%, var(--surface-elevated-2))`,warn:`color-mix(in oklab, var(--warning) 16%, var(--surface-elevated-2))`,muted:`var(--surface-glass)`},Tr={default:`var(--line)`,start:`var(--presence)`,accent:`var(--presence-soft)`,good:`var(--insight)`,warn:`var(--warning)`,muted:`var(--line)`},Er={default:`var(--text-muted)`,accent:`var(--presence)`,good:`var(--insight)`,warn:`var(--warning)`,muted:`var(--grid-line)`};function Dr(e,t){let n=new Map;for(let t of e)n.set(t.id,0);let r=new Map;for(let e of t)r.has(e.from)||r.set(e.from,[]),r.get(e.from).push(e.to);for(let r=0;r<e.length;r++){let r=!1;for(let i of t){let t=(n.get(i.from)??0)+1;t>(n.get(i.to)??0)&&t<e.length&&(n.set(i.to,t),r=!0)}if(!r)break}return n}function Or(e,t,n){let r=e.length;if(r===0)return gr;if(n===`cycle`)return fr;let i;if(n===`layered`){let n=Dr(e,t),r=new Map;for(let t of e){let e=n.get(t.id)??0;r.set(e,(r.get(e)??0)+1)}i=r.size>0?Math.max(...r.values()):1}else i=Math.ceil(r/Math.ceil(Math.sqrt(r)));let a=i*92+Math.max(0,i-1)*60;return Math.max(gr,a+216)}function kr(e){let t=e.trim().split(/\s+/).filter(Boolean);if(t.length===0)return 0;let n=e=>d(e,yr,!0),r=Math.max(...t.map(n),n(e)/xr);return Math.min(Sr,r)+24}function Ar(e,t,n){let r=e.length;if(r===0||n===`cycle`)return fr;let i;if(n===`layered`){let n=Dr(e,t);i=new Set(e.map(e=>n.get(e.id)??0)).size}else i=Math.ceil(Math.sqrt(r));let a=n===`layered`?Math.max(1,i-1):i,o=t.reduce((e,t)=>t.label?Math.max(e,kr(t.label)):e,0),s=Math.max(_r,184+o);return Math.max(fr,a*s+216)}function jr(e,t,n,r,i){let a=r-216,o=i-216,s=e=>pr+e*a,c=e=>pr+e*o,l=e.filter(e=>!(Number.isFinite(e.x)&&Number.isFinite(e.y))),u=e.map(e=>Number.isFinite(e.x)&&Number.isFinite(e.y)?{...e,cx:s(Mr(e.x)),cy:c(Mr(e.y))}:{...e,cx:0,cy:0}),d=new Map(u.map(e=>[e.id,e]));if(n===`cycle`){let e=Math.min(a,o)/2,t=r/2,n=i/2;return l.forEach((r,i)=>{let a=-Math.PI/2+i/Math.max(1,l.length)*Math.PI*2,o=d.get(r.id);o.cx=t+Math.cos(a)*e,o.cy=n+Math.sin(a)*e}),u}if(n===`layered`){let e=Dr(l,t),n=new Map;for(let t of l){let r=e.get(t.id)??0;n.has(r)||n.set(r,[]),n.get(r).push(t)}let a=[...n.keys()].sort((e,t)=>e-t),o=Math.max(1,a.length-1);return a.forEach((e,t)=>{let l=n.get(e),u=a.length===1?r/2:s(t/o);l.forEach((e,t)=>{let n=d.get(e.id);n.cx=u,n.cy=l.length===1?i/2:c((t+.5)/l.length)})}),u}let f=Math.ceil(Math.sqrt(l.length)),p=Math.max(1,Math.ceil(l.length/f));return l.forEach((e,t)=>{let n=t%f,a=Math.floor(t/f),o=d.get(e.id);o.cx=f===1?r/2:s((n+.5)/f),o.cy=p===1?i/2:c((a+.5)/p)}),u}function Mr(e){return Math.min(1,Math.max(0,e))}function Nr(e,t){let n=(Math.hypot(t.cx-e.cx,t.cy-e.cy)||1)*.4;return{rx:Math.min(98,n),ry:Math.min(52,n)}}function Pr(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n),{rx:a,ry:o}=Nr(e,t);return{x:t.cx-Math.cos(i)*a,y:t.cy-Math.sin(i)*o}}function Fr(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n),{rx:a,ry:o}=Nr(e,t);return{x:e.cx+Math.cos(i)*a,y:e.cy+Math.sin(i)*o}}function Ir({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,layout:r=`free`,nodes:o,edges:s,footer:c,delay:l}){let u=i[t]||i.share,d=(0,T.useId)().replace(/:/g,``),f=(0,T.useMemo)(()=>Ar(o,s,r),[o,s,r]),p=(0,T.useMemo)(()=>Or(o,s,r),[o,s,r]),m=(0,T.useMemo)(()=>jr(o,s,r,f,p),[o,s,r,f,p]),h=(0,T.useMemo)(()=>new Map(m.map(e=>[e.id,e])),[m]),g=Math.round(vr*f/fr),_=(0,T.useMemo)(()=>{let e=new Set;for(let t of s)h.has(t.from)&&h.has(t.to)&&e.add(t.kind??`default`);return[...e]},[s,h]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage`,style:{maxWidth:g},children:(0,E.jsxs)(`svg`,{className:`dg-svg`,viewBox:`0 0 ${f} ${p}`,preserveAspectRatio:`xMidYMid meet`,role:`img`,"aria-label":e,children:[(0,E.jsx)(`defs`,{children:_.map(e=>(0,E.jsx)(`marker`,{id:`dg-arrow-${d}-${e}`,viewBox:`0 0 10 10`,refX:`8`,refY:`5`,markerWidth:`7`,markerHeight:`7`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,fill:Er[e]})},e))}),s.map((e,t)=>{let n=h.get(e.from),r=h.get(e.to);return!n||!r?null:(0,E.jsx)(Rr,{a:n,b:r,edge:e,uid:d},t)}),m.map(e=>(0,E.jsx)(Ur,{node:e},e.id)),s.map((e,t)=>{let n=h.get(e.from),r=h.get(e.to);return!n||!r||!e.label?null:(0,E.jsx)(zr,{label:e.label,a:n,b:r},t)})]})}),c&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(c)})]})}function Lr(e,t){let n=Fr(e,t),r=Pr(e,t),i=(n.x+r.x)/2,a=(n.y+r.y)/2,o=r.x-n.x,s=r.y-n.y,c=Math.hypot(o,s)||1,l=Math.min(60,c*.12);return{s:n,t:r,rim:c,cx:i-s/c*l,cy:a+o/c*l}}function Rr(e){let t=(0,I.c)(9),{a:n,b:r,edge:i,uid:a}=e,o=i.kind??`default`,s;t[0]!==n||t[1]!==r?(s=Lr(n,r),t[0]=n,t[1]=r,t[2]=s):s=t[2];let{s:c,t:l,cx:u,cy:d}=s,f=`url(#dg-arrow-${a}-${o})`,p=`M ${c.x} ${c.y} Q ${u} ${d} ${l.x} ${l.y}`,m=Er[o],h=i.dashed?`7 7`:void 0,g=i.bidirectional?f:void 0,_;return t[3]!==f||t[4]!==p||t[5]!==m||t[6]!==h||t[7]!==g?(_=(0,E.jsx)(`g`,{className:`dg-edge`,children:(0,E.jsx)(`path`,{d:p,fill:`none`,stroke:m,strokeWidth:2.2,strokeDasharray:h,markerEnd:f,markerStart:g,opacity:.85})}),t[3]=f,t[4]=p,t[5]=m,t[6]=h,t[7]=g,t[8]=_):_=t[8],_}function zr(e){let t=(0,I.c)(18),{label:n,a:r,b:i}=e,a;t[0]!==r||t[1]!==i?(a=Lr(r,i),t[0]=r,t[1]=i,t[2]=a):a=t[2];let{cx:o,cy:s,rim:c}=a,l,d,f,p,m;if(t[3]!==o||t[4]!==s||t[5]!==n||t[6]!==c){let e=u(n,{maxWidth:Math.max(Cr,c-24),fontSize:yr,minFontSize:br,maxLines:xr,lineHeight:1.15,bold:!0}),r=s-(e.lines.length-1)*e.lineHeightPx/2;l=`dg-edge-label`,d=o,f=`middle`,p=e.fontSize,m=e.lines.map((t,n)=>(0,E.jsx)(`tspan`,{x:o,y:r+n*e.lineHeightPx,dominantBaseline:`middle`,children:t},n)),t[3]=o,t[4]=s,t[5]=n,t[6]=c,t[7]=l,t[8]=d,t[9]=f,t[10]=p,t[11]=m}else l=t[7],d=t[8],f=t[9],p=t[10],m=t[11];let h;return t[12]!==l||t[13]!==d||t[14]!==f||t[15]!==p||t[16]!==m?(h=(0,E.jsx)(`text`,{className:l,x:d,textAnchor:f,fontSize:p,children:m}),t[12]=l,t[13]=d,t[14]=f,t[15]=p,t[16]=m,t[17]=h):h=t[17],h}var Br=164,Vr=80,Hr=.74;function Ur(e){let t=(0,I.c)(18),{node:n}=e,r=n.kind??`default`,i;if(t[0]!==r||t[1]!==n.cx||t[2]!==n.cy||t[3]!==n.label||t[4]!==n.sub){let e=n.sub?.trim(),a=e?u(e,{maxWidth:Br,fontSize:15,minFontSize:11,maxLines:2,lineHeight:1.2}):null,o=a?a.lines.length*a.lineHeightPx:0,s=u(n.label,{maxWidth:Br,fontSize:19,minFontSize:12,maxHeight:Vr-o,maxLines:e?2:3,lineHeight:1.16,bold:!0}),c=s.lines.length*s.lineHeightPx,l=n.cy-(c+o)/2,d=e?`${n.label} — ${e}`:n.label,f;t[6]===d?f=t[7]:(f=(0,E.jsx)(`title`,{children:d}),t[6]=d,t[7]=f);let p=wr[r],m=Tr[r],h=r==="default"||r===`muted`?1.4:2,g;t[8]!==n.cx||t[9]!==n.cy||t[10]!==p||t[11]!==m||t[12]!==h?(g=(0,E.jsx)(`ellipse`,{cx:n.cx,cy:n.cy,rx:mr,ry:hr,fill:p,stroke:m,strokeWidth:h}),t[8]=n.cx,t[9]=n.cy,t[10]=p,t[11]=m,t[12]=h,t[13]=g):g=t[13];let _=n.cx,v=s.fontSize,y=s.lines.map((e,t)=>(0,E.jsx)(`tspan`,{x:n.cx,y:l+t*s.lineHeightPx+s.fontSize*Hr,children:e},t)),b;t[14]!==s||t[15]!==n.cx||t[16]!==y?(b=(0,E.jsx)(`text`,{className:`dg-node-label`,x:_,textAnchor:`middle`,fontSize:v,children:y}),t[14]=s,t[15]=n.cx,t[16]=y,t[17]=b):b=t[17],i=(0,E.jsxs)(`g`,{className:`dg-node`,children:[f,g,b,a&&(0,E.jsx)(`text`,{className:`dg-node-sub`,x:n.cx,textAnchor:`middle`,fontSize:a.fontSize,children:a.lines.map((e,t)=>(0,E.jsx)(`tspan`,{x:n.cx,y:l+c+t*a.lineHeightPx+a.fontSize*Hr,children:e},t))})]}),t[0]=r,t[1]=n.cx,t[2]=n.cy,t[3]=n.label,t[4]=n.sub,t[5]=i}else i=t[5];return i}var U=44,Wr=48,Gr=36,Kr=12,qr=12,Jr=10,Yr=6,Xr=5;function Zr(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function Qr(e,t){return`${e},${t}`}function $r({title:e,icon:t=`table`,iconColor:n=`var(--presence)`,rows:r,cols:o,cells:s,steps:c,highlight:l,path:u,recurrence:d,footer:f,delay:p}){let m=i[t]??i.table,[h,g]=(0,T.useState)(0),_=c?.length??0,v=Math.min(h,Math.max(0,_-1)),y=c?.[v],b=e=>g(Math.min(_-1,Math.max(0,e))),{vbW:x,vbH:S,clampedRows:C,clampedCols:w,clampedCells:D,pathSet:O,hlKey:k,depSet:A}=(0,T.useMemo)(()=>{let e=r.slice(0,Jr),t=o.slice(0,qr),n=e.length,i=t.length,a=s.slice(0,n).map(e=>e.slice(0,i)),c=72+i*U,d=60+n*U,f=new Set;for(let[e,t]of u??[])e<n&&t<i&&f.add(Qr(e,t));let p=y?.current??l,m=p&&p[0]<n&&p[1]<i?Qr(p[0],p[1]):null,h=new Set;for(let[e,t]of y?.deps??[]){let r=Qr(e,t);e<n&&t<i&&r!==m&&h.add(r)}return{vbW:c,vbH:d,clampedRows:e,clampedCols:t,clampedCells:a,pathSet:f,hlKey:m,depSet:h}},[r,o,s,l,u,y]),j=w.length,M=C.length,N=e=>60+e*U,P=e=>48+e*U;return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(p??0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(m,{className:`ic`,style:{color:n}}),` `,e]}),d&&(0,E.jsx)(`div`,{className:`dp-recurrence`,children:(0,E.jsx)(`code`,{children:d})}),y?.caption&&(0,E.jsx)(`p`,{className:`dg-at-caption`,"aria-live":`polite`,children:y.caption}),(0,E.jsx)(`div`,{className:`dp-wrap`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${x} ${S}`,className:`dp-svg`,role:`img`,"aria-label":e??`DP table`,children:[(0,E.jsx)(`rect`,{x:Kr,y:Kr,width:Wr,height:Gr,className:`dp-corner`}),w.map((e,t)=>(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:N(t),y:Kr,width:U,height:Gr,className:`dp-header`}),(0,E.jsxs)(`text`,{x:N(t)+U/2,y:35,textAnchor:`middle`,className:`dp-hdr-val`,children:[e.length>Yr&&(0,E.jsx)(`title`,{children:e}),Zr(e,Yr)]})]},`ch-${t}`)),C.map((e,t)=>(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:Kr,y:P(t),width:Wr,height:U,className:`dp-header`}),(0,E.jsxs)(`text`,{x:36,y:P(t)+U/2+5,textAnchor:`middle`,className:`dp-hdr-val`,children:[e.length>Yr&&(0,E.jsx)(`title`,{children:e}),Zr(e,Yr)]})]},`rh-${t}`)),Array.from({length:M},(e,t)=>Array.from({length:j},(e,n)=>{let r=Qr(t,n),i=r===k,a=A.has(r),o=!i&&!a&&O.has(r),s=D[t]?.[n],c=s==null?``:String(s),l=`dp-cell`;return i?l+=` dp-active`:a?l+=` dp-dep`:o&&(l+=` dp-path`),(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:N(n),y:P(t),width:U,height:U,className:l}),s!=null&&(0,E.jsxs)(`text`,{x:N(n)+U/2,y:P(t)+U/2+5,textAnchor:`middle`,className:`dp-val`+(i?` dp-val-active`:a?` dp-val-dep`:o?` dp-val-path`:``),children:[c.length>Xr&&(0,E.jsx)(`title`,{children:c}),Zr(c,Xr)]})]},r)}))]})}),c&&c.length>0&&(0,E.jsxs)(`div`,{className:`dg-at-controls`,children:[(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>b(v-1),disabled:v===0,"aria-label":`previous step`,children:[(0,E.jsx)(i.chevL,{className:`ic`}),` Prev`]}),(0,E.jsx)(`div`,{className:`dg-at-progress`,"aria-hidden":`true`,children:c.map((e,t)=>(0,E.jsx)(`span`,{className:`dg-at-dot`+(t===v?` on`:t<v?` done`:``)},t))}),(0,E.jsxs)(`span`,{className:`dg-at-count`,children:[v+1,` / `,_]}),(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>b(v+1),disabled:v>=_-1,"aria-label":`next step`,children:[`Next `,(0,E.jsx)(i.chevR,{className:`ic`})]})]}),f&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:a(f)})]})}function ei({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,entities:r,relationships:o,footer:s,delay:c}){let l=i[t]||i.share,u=(0,T.useMemo)(()=>r.map((e,t)=>({...e,gx:e.x===void 0?t%2+1:void 0,gy:e.y===void 0?Math.floor(t/2)+1:void 0})),[r]),d=(0,T.useMemo)(()=>new Map(r.map(e=>[e.id,e])),[r]),f=e=>e===`many`?`∞`:`1`;return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-er`,children:u.map(e=>(0,E.jsxs)(`div`,{className:`dg-er-entity`,style:e.gx?{gridColumn:e.gx,gridRow:e.gy}:void 0,children:[(0,E.jsx)(`div`,{className:`dg-er-name`,children:e.label}),(0,E.jsx)(`ul`,{className:`dg-er-fields`,children:e.fields.map((e,t)=>(0,E.jsxs)(`li`,{className:`dg-er-field`+(e.key?` k-`+e.key:``),children:[e.key&&(0,E.jsx)(`span`,{className:`dg-er-key`,children:e.key.toUpperCase()}),(0,E.jsx)(`span`,{className:`dg-er-fname`,children:e.name}),e.type&&(0,E.jsx)(`span`,{className:`dg-er-ftype`,children:e.type})]},t))})]},e.id))}),o.length>0&&(0,E.jsx)(`ul`,{className:`dg-er-rels`,children:o.map((e,t)=>{let n=d.get(e.from),r=d.get(e.to);return(0,E.jsxs)(`li`,{className:`dg-er-rel`,children:[(0,E.jsx)(`b`,{children:n?.label??e.from}),(0,E.jsx)(`span`,{className:`dg-er-card`,children:f(e.fromCard)}),(0,E.jsx)(`span`,{className:`dg-er-line`}),(0,E.jsx)(`span`,{className:`dg-er-card`,children:f(e.toCard)}),(0,E.jsx)(`b`,{children:r?.label??e.to}),e.label&&(0,E.jsx)(`span`,{className:`dg-er-rlbl`,children:e.label})]},t)})}),s&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(s)})]})}var ti=1e3,ni=18,ri=152,ii=84,ai=8,oi=.577,si=15,ci=12.5,li=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-deep)`];function ui(e){return Array.isArray(e)?e.map(e=>{if(typeof e==`string`)return{label:e,causes:[]};if(!e||typeof e!=`object`)return null;let t=e,n=typeof t.label==`string`&&t.label?t.label:``,r=(Array.isArray(t.causes)?t.causes:[]).map(e=>{if(typeof e==`string`)return e;if(e&&typeof e==`object`){let t=e,n=t.text??t.label??t.cause??t.name;return typeof n==`string`?n:``}return``}).filter(Boolean);return n||r.length?{label:n||`—`,causes:r}:null}).filter(e=>e!==null).slice(0,ai):[]}function di({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,effect:r,categories:o,footer:c,delay:l}){let d=i[t]||i.share,f=(0,T.useId)().replace(/:/g,``),p=(0,T.useMemo)(()=>ui(o),[o]),m=(0,T.useMemo)(()=>{if(!p.length)return null;let e=Math.max(0,...p.map(e=>e.causes.length)),t=Math.min(240,Math.max(96,40+e*32)),n=t*oi,r=t*2+110,i=r/2,a=Math.max(1,Math.ceil(p.length/2)),o=(776-n)/a;return{ribH:t,ribDx:n,H:r,spineY:i,spineX1:44,spineX2:820,twigLen:Math.min(150,Math.max(70,o*.72)),ribs:p.map((e,r)=>{let a=Math.floor(r/2),s=r%2==0,c=44+n+o*(a+.62);return{cat:e,top:s,jx:c,tipX:c-n,tipY:s?i-t:i+t,accent:li[r%li.length]}})}},[p]),h=(0,T.useMemo)(()=>u(typeof r==`string`&&r?r:`—`,{maxWidth:130,fontSize:16,minFontSize:11,maxLines:3,lineHeight:1.2,bold:!0}),[r]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),m?(0,E.jsx)(`div`,{className:`dg-stage fsb-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${ti} ${m.H}`,className:`dg-svg`,role:`img`,"aria-label":e,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:`fsb-arrow-${f}`,viewBox:`0 0 10 10`,refX:`8`,refY:`5`,markerWidth:`7`,markerHeight:`7`,orient:`auto`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`fsb-arrowhead`})})}),(0,E.jsx)(`polygon`,{className:`fsb-tail`,points:`${ni},${m.spineY-13} ${ni},${m.spineY+13} 44,${m.spineY}`}),(0,E.jsx)(`line`,{className:`fsb-spine`,x1:m.spineX1,y1:m.spineY,x2:m.spineX2,y2:m.spineY,markerEnd:`url(#fsb-arrow-${f})`}),(0,E.jsx)(`rect`,{className:`fsb-head`,x:m.spineX2+10,y:m.spineY-ii/2,width:ri,height:ii,rx:12}),(0,E.jsx)(`text`,{className:`fsb-effect`,textAnchor:`middle`,fontSize:h.fontSize,children:h.lines.map((e,t)=>(0,E.jsx)(`tspan`,{x:m.spineX2+10+ri/2,y:m.spineY-(h.lines.length-1)*h.lineHeightPx/2+t*h.lineHeightPx,dominantBaseline:`middle`,children:e},t))}),m.ribs.map((e,t)=>{let n=e.cat.causes.length,r=m.ribH/(n+1)>=30?2:1,i=u(e.cat.label,{maxWidth:132,fontSize:si,minFontSize:11,maxLines:2,lineHeight:1.15,bold:!0}),a=i.lines.length*i.lineHeightPx,o=e.top?e.tipY-10-a+i.lineHeightPx/2:e.tipY+10+i.lineHeightPx/2;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{className:`fsb-rib`,x1:e.jx,y1:m.spineY,x2:e.tipX,y2:e.tipY,style:{stroke:e.accent}}),(0,E.jsx)(`text`,{className:`fsb-cat`,textAnchor:`middle`,fontSize:i.fontSize,style:{fill:e.accent},children:i.lines.map((t,n)=>(0,E.jsx)(`tspan`,{x:e.tipX,y:o+n*i.lineHeightPx,dominantBaseline:`middle`,children:t},n))}),e.cat.causes.map((t,i)=>{let a=(n-i)/(n+1),o=e.jx-m.ribDx*a,s=e.top?m.spineY-m.ribH*a:m.spineY+m.ribH*a,c=Math.max(22,o-m.twigLen),l=u(t,{maxWidth:Math.max(40,o-c-10),fontSize:ci,minFontSize:9,maxLines:r,lineHeight:1.15}),d=t=>e.top?s-4-(l.lines.length-1-t+.5)*l.lineHeightPx:s+4+(t+.5)*l.lineHeightPx;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{className:`fsb-twig`,x1:o,y1:s,x2:c,y2:s}),(0,E.jsx)(`text`,{className:`fsb-cause`,textAnchor:`end`,fontSize:l.fontSize,children:l.lines.map((e,t)=>(0,E.jsx)(`tspan`,{x:o-8,y:d(t),dominantBaseline:`middle`,children:e},t))})]},i)})]},t)})]})}):(0,E.jsx)(s,{message:`No cause categories to draw`}),c&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(c)})]})}var fi=512,pi=62,mi=240,hi=160,gi=25,_i=22,vi=20,yi=25,bi=10,xi=2,Si=3;function Ci(e,t){let n=t>0?t*vi+4:0;return gi+e*_i+n+yi+bi}var wi=Ci(xi,Si),Ti=26,Ei=168,Di=wi+Ti,Oi=(Di+wi/2+9)*2,W=fi/2,G=Oi/2,ki={label:22,note:25},Ai={label:14,note:16},ji=12,Mi={newEntrants:{dx:0,dy:-1},suppliers:{dx:-1,dy:0},buyers:{dx:1,dy:0},substitutes:{dx:0,dy:1}},Ni=[`newEntrants`,`suppliers`,`buyers`,`substitutes`],Pi={newEntrants:`Threat of new entrants`,suppliers:`Supplier power`,buyers:`Buyer power`,substitutes:`Threat of substitutes`},K={low:`var(--text-faint)`,medium:`var(--warning)`,high:`var(--danger)`},Fi={low:2,medium:3.5,high:5.5},Ii={low:`Low`,medium:`Medium`,high:`High`},Li=new Set([`low`,`medium`,`high`]);function Ri(e){return Li.has(e)?e:`medium`}function zi(e,t,n){let r=e.trim().split(/\s+/).filter(Boolean),i=[],a=``,o=!1;for(let e of r){let r=a?`${a} ${e}`:e;if(r.length<=t||!a)a=r;else if(i.push(a),a=e,i.length===n){o=!0,a=``;break}}if(a&&i.length<n&&i.push(a),i.length){let e=i.length-1,n=i[e];n.length>t&&(n=n.slice(0,t-1).trimEnd()),(o||i[e].length>t)&&(n=n.replace(/[…\s]*$/,``)+`…`),i[e]=n}return i.length?i:[``]}function Bi({title:e,icon:t=`chart`,iconColor:n=`var(--warning)`,industry:r,forces:o,footer:s,delay:c}){let l=i[t]||i.chart,u=Array.isArray(o)?o:[],d=new Map;for(let e of u){if(!e||typeof e!=`object`)continue;let t=e.id;typeof t==`string`&&!d.has(t)&&d.set(t,e)}let f=d.get(`rivalry`),p=f&&Li.has(f.strength)?Ri(f.strength):null,m=Ni.map(e=>{let t=d.get(e);if(!t||typeof t.label!=`string`||!t.label.trim())return null;let{dx:n,dy:r}=Mi[e],i=Ri(t.strength),a=n!==0,o=a?hi:mi,s=a?Ai:ki,c=zi(t.label,s.label,xi),l=typeof t.note==`string`?t.note.trim():``,u=l?zi(l,s.note,Si):[],f=Ci(c.length,u.length),p=W+n*Ei,m=G+r*Di;return{id:e,entry:t,strength:i,dx:n,dy:r,boxCx:p,boxCy:m,w:o,h:f,labelLines:c,noteLines:u,hub:{x:W+n*pi,y:G+r*pi},rim:{x:p-o/2*n,y:m-f/2*r}}}).filter(e=>e!==null),h=zi((r||`this market`).trim(),ji,1)[0];return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage ff-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${fi} ${Oi}`,className:`dg-svg`,role:`img`,"aria-label":e,preserveAspectRatio:`xMidYMid meet`,children:[m.map(e=>(0,E.jsx)(`line`,{x1:e.hub.x,y1:e.hub.y,x2:e.rim.x,y2:e.rim.y,className:`ff-link`,style:{stroke:K[e.strength],strokeWidth:Fi[e.strength]}},`c-${e.id}`)),(0,E.jsx)(`circle`,{cx:W,cy:G,r:pi,className:`ff-hub`,style:p?{stroke:K[p]}:void 0}),(0,E.jsx)(`text`,{x:W,y:G-22,textAnchor:`middle`,className:`ff-hub-title`,children:`Industry`}),(0,E.jsx)(`text`,{x:W,y:G-1,textAnchor:`middle`,className:`ff-hub-title`,children:`Rivalry`}),(0,E.jsx)(`text`,{x:W,y:G+19,textAnchor:`middle`,className:`ff-hub-sub`,children:h}),p&&(0,E.jsx)(`text`,{x:W,y:G+38,textAnchor:`middle`,className:`ff-strength`,style:{fill:K[p]},children:Ii[p]}),m.map(e=>{let t=e.boxCx-e.w/2,n=e.boxCy-e.h/2,r=n+gi+_i-4;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:t,y:n,width:e.w,height:e.h,rx:12,className:`ff-box`,style:{stroke:K[e.strength]}}),(0,E.jsx)(`rect`,{x:t,y:n,width:4,height:e.h,rx:2,fill:K[e.strength]}),(0,E.jsx)(`text`,{x:e.boxCx,y:n+19,textAnchor:`middle`,className:`ff-slot-lbl`,children:Pi[e.id]}),(0,E.jsx)(`text`,{textAnchor:`middle`,className:`ff-box-lbl`,children:e.labelLines.map((t,n)=>(0,E.jsx)(`tspan`,{x:e.boxCx,y:r+n*_i,children:t},n))}),e.noteLines.length>0&&(0,E.jsx)(`text`,{textAnchor:`middle`,className:`ff-box-note`,children:e.noteLines.map((t,n)=>(0,E.jsx)(`tspan`,{x:e.boxCx,y:r+e.labelLines.length*_i+3+n*vi,children:t},n))}),(0,E.jsx)(`text`,{x:t+e.w-12,y:n+e.h-bi-2,textAnchor:`end`,className:`ff-strength`,style:{fill:K[e.strength]},children:Ii[e.strength]})]},e.id)})]})}),s&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(s)})]})}var Vi=520,Hi=24,Ui=18,Wi=18,Gi=472,Ki=26,qi=23,Ji=18,Yi=22,Xi=78,Zi=40,Qi=23,$i=13,ea=16;function ta(e,t,n){let r=e.trim().split(/\s+/).filter(Boolean),i=[],a=``,o=!1;for(let e of r){let r=a?`${a} ${e}`:e;if(r.length<=t||!a)a=r;else if(i.push(a),a=e,i.length===n){o=!0,a=``;break}}if(a&&i.length<n&&i.push(a),i.length){let e=i.length-1,n=i[e];n.length>t&&(n=n.slice(0,t-1).trimEnd()),(o||i[e].length>t)&&(n=n.replace(/[…\s]*$/,``)+`…`),i[e]=n}return i.length?i:[``]}function na(e,t){let n=e?e*Yi+4:0,r=t*qi;return Math.max(Xi,52+n+r)}function ra({title:e,icon:t=`eye`,iconColor:n=`var(--presence)`,problem:r,whys:o,rootCause:s,footer:c,delay:l}){let u=i[t]||i.eye,d=typeof s==`string`?s.trim():``,{rows:f,vbH:p}=(0,T.useMemo)(()=>{let e=[],t=Ui,n=ta(typeof r==`string`?r:``,Zi,3),i=na(0,n.length);e.push({kind:`problem`,badge:`Problem`,questionLines:[],answerLines:n,h:i,y:t}),t+=i+Ki;let a=(Array.isArray(o)?o:[]).filter(e=>!!e&&typeof e==`object`&&typeof e.answer==`string`&&e.answer.trim()!==``),s=a.length-1;if(a.forEach((n,r)=>{let i=r===s&&!d,a=typeof n.question==`string`?n.question.trim():``,o=a?ta(a,Zi,2):[],c=ta(n.answer,Zi,3),l=na(o.length,c.length);e.push({kind:i?`root`:`why`,badge:`Why ${r+1}`,questionLines:o,answerLines:c,h:l,y:t}),t+=l+Ki}),d){let n=ta(d,Zi,3),r=na(0,n.length);e.push({kind:`root`,badge:`Root cause`,questionLines:[],answerLines:n,h:r,y:t}),t+=r+Ki}return{rows:e,vbH:Math.max(120,t-Ki+Wi)}},[r,o,d]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage fwy-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${Vi} ${p}`,className:`dg-svg`,role:`img`,"aria-label":e,preserveAspectRatio:`xMidYMid meet`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:`fwy-arrow`,viewBox:`0 0 10 10`,refX:`6`,refY:`5`,markerWidth:`6`,markerHeight:`6`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`fwy-arrowhead`})})}),f.slice(1).map((e,t)=>{let n=f[t],r=Vi/2;return(0,E.jsx)(`line`,{x1:r,y1:n.y+n.h,x2:r,y2:e.y-5,className:`fwy-link`,markerEnd:`url(#fwy-arrow)`},`link-${t}`)}),f.map((e,t)=>{let n=e.y+Qi,r=e.y+Ji+$i+ea,i=e.questionLines.length>0?r+e.questionLines.length*Yi+4:r;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:Hi,y:e.y,width:Gi,height:e.h,rx:12,className:`fwy-card fwy-card--${e.kind}`}),(0,E.jsx)(`rect`,{x:Hi,y:e.y,width:4,height:e.h,rx:2,className:`fwy-rail fwy-rail--${e.kind}`}),(0,E.jsx)(`text`,{x:42,y:n,className:`fwy-badge fwy-badge--${e.kind}`,children:e.badge}),e.questionLines.length>0&&(0,E.jsx)(`text`,{className:`fwy-question`,children:e.questionLines.map((e,t)=>(0,E.jsx)(`tspan`,{x:42,y:r+t*Yi,children:e},t))}),(0,E.jsx)(`text`,{className:`fwy-answer fwy-answer--${e.kind}`,children:e.answerLines.map((e,t)=>(0,E.jsx)(`tspan`,{x:42,y:i+t*qi,children:e},t))})]},t)})]})}),c&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(c)})]})}var ia=640,aa=20,oa=20,sa=20,q=92,ca=22,la=13,ua=116;function da(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function fa(e,t,n){let r=e.trim().split(/\s+/).filter(Boolean),i=[],a=``,o=!1;for(let e of r){let r=a?`${a} ${e}`:e;if(r.length<=t||!a)a=r;else if(i.push(a),a=e,i.length===n){o=!0,a=``;break}}if(a&&i.length<n&&i.push(a),i.length){let e=i.length-1,n=i[e];n.length>t&&(n=n.slice(0,t-1).trimEnd()),(o||i[e].length>t)&&(n=n.replace(/[…\s]*$/,``)+`…`),i[e]=n}return i.length?i:[``]}function pa({title:e,icon:t=`globe`,iconColor:n=`var(--insight)`,tiers:r,organisms:o,links:s,footer:c,delay:l}){let u=i[t]||i.globe,d=(0,T.useMemo)(()=>Array.isArray(r)?r.filter(e=>typeof e==`string`):[],[r]),{placed:f,byId:p}=(0,T.useMemo)(()=>{let e=Math.max(0,d.length-1),t=new Map;(Array.isArray(o)?o:[]).forEach((n,r)=>{if(!n||typeof n!=`object`)return;let i=typeof n.label==`string`?n.label.trim():``;if(!i)return;let a=typeof n.id==`string`&&n.id.trim()?n.id.trim():`org-${r}`,o=Number.isFinite(n.tier)?Math.min(e,Math.max(0,Math.round(n.tier))):0,s=t.get(o)??[];s.push({id:a,label:i,tier:o}),t.set(o,s)});let n=[];for(let[r,i]of t){let t=oa+(e-r)*q+q/2;i.forEach((e,r)=>{let a=ua+(r+.5)/i.length*504;n.push({...e,cx:a,cy:t})})}return{placed:n,byId:new Map(n.map(e=>[e.id,e]))}},[o,d.length]),m=(0,T.useMemo)(()=>(Array.isArray(s)?s:[]).map(e=>{if(!e||typeof e!=`object`)return null;let t=e,n=p.get(typeof t.from==`string`?t.from:``),r=p.get(typeof t.to==`string`?t.to:``);return!n||!r||n.id===r.id?null:{from:n,to:r}}).filter(e=>e!==null),[s,p]),h=Math.max(160,d.length*q+oa+sa),g=Math.max(0,d.length-1);return f.length===0?(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`p`,{className:`fwb-empty`,children:`No organisms to diagram.`})]}):(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage fwb-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${ia} ${h}`,className:`dg-svg`,role:`img`,"aria-label":e,preserveAspectRatio:`xMidYMid meet`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:`fwb-arrow`,viewBox:`0 0 10 10`,refX:`7`,refY:`5`,markerWidth:`6`,markerHeight:`6`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`fwb-arrowhead`})})}),d.map((e,t)=>{let n=oa+(g-t)*q,r=fa(e,14,2),i=n+q/2-(r.length-1)*12/2+4;return(0,E.jsxs)(`g`,{children:[t>0&&(0,E.jsx)(`line`,{x1:aa,y1:n,x2:620,y2:n,className:`fwb-tier-line`}),(0,E.jsx)(`text`,{x:aa,className:`fwb-tier-lbl`,children:r.map((e,t)=>(0,E.jsx)(`tspan`,{x:aa,y:i+t*12,children:e},t))})]},t)}),(0,E.jsx)(`line`,{x1:104,y1:oa,x2:104,y2:h-sa,className:`fwb-gutter-line`}),m.map((e,t)=>{let n=e.to.cx-e.from.cx,r=e.to.cy-e.from.cy,i=Math.hypot(n,r)||1,a=Math.min(40,i*.22),o=(e.from.cx+e.to.cx)/2-r/i*a,s=(e.from.cy+e.to.cy)/2+n/i*a,c=Math.atan2(s-e.from.cy,o-e.from.cx),l=Math.atan2(s-e.to.cy,o-e.to.cx),u=e.from.cx+Math.cos(c)*ca,d=e.from.cy+Math.sin(c)*ca,f=e.to.cx+Math.cos(l)*30,p=e.to.cy+Math.sin(l)*30;return(0,E.jsx)(`path`,{d:`M ${u.toFixed(1)} ${d.toFixed(1)} Q ${o.toFixed(1)} ${s.toFixed(1)} ${f.toFixed(1)} ${p.toFixed(1)}`,className:`fwb-link`,markerEnd:`url(#fwb-arrow)`},t)}),f.map(e=>(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`circle`,{cx:e.cx,cy:e.cy,r:ca,className:`fwb-node`}),(0,E.jsxs)(`text`,{x:e.cx,y:e.cy+ca+14,textAnchor:`middle`,className:`fwb-node-lbl`,children:[e.label.length>la&&(0,E.jsx)(`title`,{children:e.label}),da(e.label,la)]})]},e.id))]})}),c&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(c)})]})}var ma=340,ha=280,ga=22,_a=12,va=5;function ya(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function ba(e){let t=Math.min(e.length,_a);return e.slice(0,t).map((e,n)=>{let r=e.x===void 0?ma/2+120*Math.cos(2*Math.PI*n/t-Math.PI/2):e.x/100*ma,i=e.y===void 0?ha/2+100*Math.sin(2*Math.PI*n/t-Math.PI/2):e.y/100*ha;return{id:e.id,label:e.label??e.id,cx:r,cy:i}})}function xa({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,nodes:r,edges:o,steps:s,algorithm:c=`bfs`,footer:l,delay:u}){let d=i[t]??i.share,f=`gt-arrow-${(0,T.useId)().replace(/:/g,``)}`,p=`url(#${f})`,[m,h]=(0,T.useState)(0),g=s[Math.min(m,s.length-1)],_=e=>h(Math.min(s.length-1,Math.max(0,e))),v=(0,T.useMemo)(()=>ba(r),[r]),y=(0,T.useMemo)(()=>new Map(v.map(e=>[e.id,e])),[v]),b=e=>g?g.current===e?`current`:g.frontier?.includes(e)?`frontier`:g.visited?.includes(e)?`visited`:`none`:`none`,x=o.some(e=>e.directed);return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(u??0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`p`,{className:`dg-at-caption`,"aria-live":`polite`,children:g?.caption??``}),(0,E.jsx)(`div`,{className:`gt-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${ma} ${ha}`,className:`gt-svg`,role:`img`,"aria-label":e??`Graph traversal`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:f,markerWidth:`8`,markerHeight:`8`,refX:`7`,refY:`4`,orient:`auto`,children:(0,E.jsx)(`path`,{d:`M0,0 L8,4 L0,8 Z`,className:`gt-arrowhead`})})}),o.map((e,t)=>{let n=y.get(e.from),r=y.get(e.to);if(!n||!r)return null;let i=r.cx-n.cx,a=r.cy-n.cy,o=Math.sqrt(i*i+a*a)||1,s=n.cx+i/o*24,c=n.cy+a/o*24,l=r.cx-i/o*28,u=r.cy-a/o*28,d=(s+l)/2,f=(c+u)/2;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{x1:s,y1:c,x2:l,y2:u,className:`gt-edge`,markerEnd:e.directed||x?p:void 0}),e.weight!==void 0&&(0,E.jsx)(`text`,{x:d,y:f-6,textAnchor:`middle`,className:`gt-weight`,children:e.weight})]},`e${t}`)}),v.map(e=>{let t=b(e.id);return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`circle`,{cx:e.cx,cy:e.cy,r:ga,className:`gt-node gt-node-${t}`}),(0,E.jsxs)(`text`,{x:e.cx,y:e.cy+5,textAnchor:`middle`,className:`gt-label gt-label-${t}`,children:[e.label.length>va&&(0,E.jsx)(`title`,{children:e.label}),ya(e.label,va)]})]},e.id)})]})}),g&&(0,E.jsxs)(`div`,{className:`gt-state-panel`,children:[(0,E.jsxs)(`div`,{className:`gt-state-row`,children:[(0,E.jsxs)(`span`,{className:`gt-state-key`,children:[c===`bfs`?`Queue`:`Stack`,`:`]}),(0,E.jsx)(`div`,{className:`gt-chips`,children:g.frontier&&g.frontier.length>0?g.frontier.map(e=>(0,E.jsx)(`span`,{className:`gt-chip gt-chip-frontier`,children:y.get(e)?.label??e},e)):(0,E.jsx)(`span`,{className:`gt-chip-empty`,children:`—`})})]}),(0,E.jsxs)(`div`,{className:`gt-state-row`,children:[(0,E.jsx)(`span`,{className:`gt-state-key`,children:`Visited:`}),(0,E.jsx)(`div`,{className:`gt-chips`,children:g.visited&&g.visited.length>0?g.visited.map(e=>(0,E.jsx)(`span`,{className:`gt-chip gt-chip-visited`,children:y.get(e)?.label??e},e)):(0,E.jsx)(`span`,{className:`gt-chip-empty`,children:`—`})})]})]}),(0,E.jsxs)(`div`,{className:`dg-at-controls`,children:[(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>_(m-1),disabled:m===0,"aria-label":`previous step`,children:[(0,E.jsx)(i.chevL,{className:`ic`}),` Prev`]}),(0,E.jsx)(`div`,{className:`dg-at-progress`,"aria-hidden":`true`,children:s.map((e,t)=>(0,E.jsx)(`span`,{className:`dg-at-dot`+(t===m?` on`:t<m?` done`:``)},t))}),(0,E.jsxs)(`span`,{className:`dg-at-count`,children:[Math.min(m+1,s.length),` / `,s.length]}),(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>_(m+1),disabled:m>=s.length-1,"aria-label":`next step`,children:[`Next `,(0,E.jsx)(i.chevR,{className:`ic`})]})]}),l&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(l)})]})}var Sa=68,Ca=36,wa=4,J=96,Ta=32,Ea=8,Da=28,Y=16,Oa=8,ka=6;function Aa(e,t){if(t<=0)return 0;if(typeof e==`number`)return(e%t+t)%t;let n=0;for(let t=0;t<e.length;t++)n=n*31+e.charCodeAt(t)&2147483647;return(n%t+t)%t}function ja({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,size:r,entries:o,hashFn:s,highlight:c,footer:l,delay:u}){let d=i[t]??i.layers,f=`ht-arrow-${(0,T.useId)().replace(/:/g,``)}`,p=`url(#${f})`,m=Math.min(Math.max(1,Math.floor(r)),Oa),h=(0,T.useMemo)(()=>{let e=Array.from({length:m},()=>[]);for(let t of o){let n=t.bucket===void 0?Aa(t.key,m):Math.max(0,Math.min(m-1,t.bucket));e[n].length<ka&&e[n].push({key:t.key,value:t.value})}return e},[o,m]),g=92+Math.max(0,...h.map(e=>e.length))*104+Da+Ea+Y,_=Y+m*40-wa+Y,v=e=>Y+e*40,y=e=>v(e)+Ca/2,b=e=>92+e*104,x=e=>v(e)+2;return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(u??0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),s&&(0,E.jsx)(`div`,{className:`ht-hashfn`,children:s}),(0,E.jsx)(`div`,{className:`ht-wrap`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${g} ${_}`,className:`ht-svg`,role:`img`,"aria-label":e??`Hash table`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:f,markerWidth:`7`,markerHeight:`7`,refX:`6`,refY:`3.5`,orient:`auto`,children:(0,E.jsx)(`path`,{d:`M0,0 L7,3.5 L0,7 Z`,className:`ht-arrowhead`})})}),h.map((e,t)=>{let n=Y,r=v(t),i=y(t);return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:n,y:r,width:Sa,height:Ca,className:`ht-bucket`}),(0,E.jsxs)(`text`,{x:50,y:r+Ca/2+5,textAnchor:`middle`,className:`ht-bucket-idx`,children:[`[`,t,`]`]}),e.map((e,n)=>{let r=b(n),a=x(t),o=a+Ta/2,s=`ht-node`+(c!==void 0&&String(e.key)===String(c)?` ht-active`:``),l=e.value===void 0?String(e.key):`${e.key}: ${e.value}`,u=l.length>10?10:12,d=l.length>13,f=n===0?84:b(n-1)+J;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{x1:f,y1:i,x2:r-2,y2:o,className:`ht-chain`,markerEnd:p}),(0,E.jsx)(`rect`,{x:r,y:a,width:J,height:Ta,rx:4,className:s}),(0,E.jsx)(`text`,{x:r+J/2,y:a+Ta/2+5,textAnchor:`middle`,className:`ht-node-text`,style:{fontSize:u},...d?{textLength:84,lengthAdjust:`spacingAndGlyphs`}:{},children:l})]},`node-${t}-${n}`)}),(()=>{let n=e.length===0?92:b(e.length-1)+J+Ea,r=y(t)-9,a=e.length===0?84:b(e.length-1)+J;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{x1:a,y1:i,x2:n-2,y2:i,className:`ht-chain`,markerEnd:p}),(0,E.jsx)(`rect`,{x:n,y:r,width:Da,height:18,rx:3,className:`ht-null`}),(0,E.jsx)(`text`,{x:n+Da/2,y:r+13,textAnchor:`middle`,className:`ht-null-text`,children:`∅`})]},`null-${t}`)})()]},`bucket-${t}`)})]})}),l&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:a(l)})]})}var Ma=34,Na=26,Pa=22,Fa=18,Ia=22,La=16;function Ra(e,t){let n=t.length>0&&t.every(e=>e===1),r=t.some(e=>e===1),i=t.reduce((e,t)=>e+t,0)%2==1;switch(e){case`AND`:return+!!n;case`NAND`:return+!n;case`OR`:return+!!r;case`NOR`:return+!r;case`XOR`:return+!!i;case`XNOR`:return+!i;case`NOT`:return t[0]===1?0:1;default:return 0}}function za(e){let t=e===`NOT`||e===`NAND`||e===`NOR`||e===`XNOR`,n=e===`NAND`?`AND`:e===`NOR`?`OR`:e===`XNOR`?`XOR`:e,r=Fa/2,i;return i=n===`AND`||e===`NOT`?e===`NOT`?(0,E.jsx)(`polygon`,{points:`-11,-9 -11,${r} 9,0`,fill:`none`}):(0,E.jsx)(`path`,{d:`M -11,-9 L 0,-9 A ${r},${r} 0 0 1 0,${r} L -11,${r} Z`,fill:`none`}):(0,E.jsxs)(E.Fragment,{children:[(n===`XOR`||e===`XOR`)&&(0,E.jsx)(`path`,{d:`M -14,-9 Q -9,0 -14,${r}`,fill:`none`}),(0,E.jsx)(`path`,{d:`${`M -11,-9 Q -6,0 -11,${r}`} Q -2,${r} 10,0 Q -2,-9 -11,-9 Z`,fill:`none`})]}),(0,E.jsxs)(`g`,{className:`dg-lg-gate-body`,children:[i,t&&(0,E.jsx)(`circle`,{cx:12.4,cy:0,r:1.6,fill:`none`,className:`dg-lg-bubble`})]})}var Ba=e=>e===1?`dg-lg-wire on`:`dg-lg-wire`,Va=3.1,Ha=10;function Ua(e){return e.length>Ha?e.slice(0,9).trimEnd()+`…`:e}function Wa({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,inputs:r,gates:o,output:s,truth:c,caption:l,footer:u,delay:d}){let f=i[t]||i.share,p=`dg-lg-${(0,T.useId)().replace(/:/g,``)}`,{placed:m,viewW:h,viewH:g,outValue:_,outY:v,outLabel:y,outX:b}=(0,T.useMemo)(()=>{let e=new Map,t=new Map(o.map(e=>[e.id,e]));r.forEach((t,n)=>{e.set(t.id,{id:t.id,x:Ia,y:La+n*Na,value:t.value??0})});let n=new Map,i=new Set,a=e=>{if(n.has(e))return n.get(e);let r=t.get(e);if(!r||i.has(e))return 0;i.add(e);let o=1+Math.max(0,...r.inputs.map(e=>a(e)));return i.delete(e),n.set(e,o),o},c=0;for(let e of o)c=Math.max(c,a(e.id));let l=new Map;for(let e of o){let t=a(e.id);l.has(t)||l.set(t,[]),l.get(t).push(e)}for(let t=1;t<=c;t++)(l.get(t)??[]).forEach((n,r)=>{let i=n.inputs.map(t=>e.get(t)?.value??0),a=Ra(n.kind,i);e.set(n.id,{id:n.id,x:Ia+t*Ma,y:La+r*Na+t%2*4,value:a})});let u=Math.max(r.length,...[...l.values()].map(e=>e.length),1),d=Ua(s?.label??`Y`),f=d.length*Va/2,p=Ia+(c+1)*Ma+14,m=p+Math.max(0,f-6),h=32+u*Na,g=p-8,_=s?e.get(s.from):void 0;return{placed:e,viewW:m,viewH:h,outValue:_?.value??0,outY:_?.y??La,outLabel:d,outX:g}},[r,o,s]),x=r.map(e=>e.value??0).join(``),S=c?.findIndex(e=>e.row.join(``)===x)??-1;return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(d||0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(f,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsxs)(`div`,{className:`dg-lg`+(c&&c.length?` has-truth`:``),children:[(0,E.jsx)(`div`,{className:`dg-lg-circuit`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${h} ${g}`,className:`dg-lg-svg`,role:`img`,"aria-label":e||`logic circuit`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:p,markerWidth:`5`,markerHeight:`5`,refX:`4`,refY:`2.5`,orient:`auto`,children:(0,E.jsx)(`path`,{d:`M0,0 L5,2.5 L0,5 Z`,className:`dg-lg-arrowhead`})})}),o.map(e=>{let t=m.get(e.id);if(!t)return null;let n=e.kind===`NOT`?1:e.inputs.length;return e.inputs.slice(0,n).map((r,i)=>{let a=m.get(r);if(!a)return null;let o=t.y+(i-(n-1)/2)*(Fa/Math.max(2,n+.5)),s=t.x-Pa/2;return(0,E.jsx)(`polyline`,{points:`${a.x+3},${a.y} ${(a.x+s)/2},${a.y} ${(a.x+s)/2},${o} ${s},${o}`,className:Ba(a.value),fill:`none`},`${e.id}-${r}-${i}`)})}),s&&m.get(s.from)&&(()=>{let e=m.get(s.from),t=b;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`polyline`,{points:`${e.x+Pa/2+2},${e.y} ${t},${e.y} ${t},${v}`,className:Ba(_),fill:`none`,markerEnd:`url(#${p})`}),(0,E.jsx)(`text`,{x:t,y:v-4,className:`dg-lg-pin`,textAnchor:`middle`,children:y}),(0,E.jsx)(`text`,{x:t,y:v+9,className:`dg-lg-bit`+(_?` on`:``),textAnchor:`middle`,children:_})]})})(),r.map(e=>{let t=m.get(e.id);if(!t)return null;let n=e.value??0;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`text`,{x:t.x-16,y:t.y+3,className:`dg-lg-in-lbl`,textAnchor:`start`,children:e.label}),(0,E.jsx)(`circle`,{cx:t.x,cy:t.y,r:3.4,className:`dg-lg-pad`+(n?` on`:``)}),(0,E.jsx)(`text`,{x:t.x,y:t.y+2.4,className:`dg-lg-bit`+(n?` on`:``),textAnchor:`middle`,children:n})]},e.id)}),o.map(e=>{let t=m.get(e.id);return t?(0,E.jsxs)(`g`,{transform:`translate(${t.x} ${t.y})`,children:[za(e.kind),(0,E.jsx)(`text`,{x:0,y:15,className:`dg-lg-glbl`,textAnchor:`middle`,children:e.kind})]},e.id):null})]})}),c&&c.length>0&&(0,E.jsx)(`div`,{className:`dg-lg-truth-wrap`,children:(0,E.jsxs)(`table`,{className:`dg-lg-truth`,children:[(0,E.jsx)(`thead`,{children:(0,E.jsxs)(`tr`,{children:[r.map(e=>(0,E.jsx)(`th`,{children:e.label},e.id)),(0,E.jsx)(`th`,{className:`dg-lg-out-col`,children:s?.label??`Y`})]})}),(0,E.jsx)(`tbody`,{children:c.map((e,t)=>(0,E.jsxs)(`tr`,{className:t===S?`on`:void 0,children:[e.row.map((e,t)=>(0,E.jsx)(`td`,{className:e?`bit on`:`bit`,children:e},t)),(0,E.jsx)(`td`,{className:`bit dg-lg-out-col`+(e.out?` on`:``),children:e.out})]},t))})]})})]}),l&&(0,E.jsx)(`p`,{className:`dg-lg-cap`,children:l}),u&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(u)})]})}var Ga=1e3,Ka=90,qa=26,Ja=62,Ya=300,Xa=9,Za=10,Qa=13,$a=14,eo=.62,to=13,no=16;function ro(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function io(e){let t=typeof e==`number`?e:Number(e);return Number.isFinite(t)&&t>0?Math.round(t):0}function ao(e,t){return t<=0?212:Ja+(e+.5)/t*Ya}function oo({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,layers:r,connections:o=`dense`,highlight:s,footer:c,delay:l}){let u=i[t]||i.share,d=(0,T.useMemo)(()=>Array.isArray(r)?r:[],[r]),f=(0,T.useMemo)(()=>{let e=d.length;return d.map((t,n)=>{let r=io(t?.units),i=r>Xa,a=i?8:r;return{layer:t,colX:e<=1?Ga/2:Ka+n/(e-1)*820,realCount:a,totalUnits:r,hasMore:i,moreCount:i?r-a:0}})},[d]),p=e=>e.realCount+ +!!e.hasMore,m=(0,T.useMemo)(()=>{if(!s||!Number.isInteger(s.layer)||!Number.isInteger(s.unit))return null;let e=f[s.layer];return!e||s.unit<0||s.unit>=e.realCount?null:{layer:s.layer,unit:s.unit}},[s,f]),h=(e,t)=>!!m&&m.layer===e&&m.unit===t,g=(0,T.useMemo)(()=>{let e=[];for(let t=0;t<f.length-1;t++){let n=f[t],r=f[t+1],i=p(n),a=p(r);for(let s=0;s<n.realCount;s++){let c=ao(s,i);for(let i=0;i<r.realCount;i++){if(o===`sparse`&&Math.abs(s-i)>1)continue;let l=ao(i,a),u=h(t,s)||h(t+1,i);e.push({x1:n.colX,y1:c,x2:r.colX,y2:l,hi:u})}}}return e.sort((e,t)=>Number(e.hi)-Number(t.hi))},[f,o,m]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage nn-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${Ga} 426`,className:`dg-svg`,role:`img`,"aria-label":e,children:[g.map((e,t)=>(0,E.jsx)(`line`,{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,className:e.hi?`nn-edge nn-edge-hi`:`nn-edge`},t)),f.map((e,t)=>{let n=typeof e.layer?.name==`string`&&e.layer.name?e.layer.name:`Layer ${t+1}`,r=p(e),i=`+${e.moreCount}`,a=i.length*$a*eo+12,o=ao(e.realCount,r);return(0,E.jsxs)(`g`,{children:[(0,E.jsxs)(`text`,{x:e.colX,y:qa,className:`nn-name`,textAnchor:`middle`,children:[n.length>to&&(0,E.jsx)(`title`,{children:n}),ro(n,to)]}),Array.from({length:e.realCount},(n,i)=>(0,E.jsx)(`circle`,{cx:e.colX,cy:ao(i,r),r:Za,className:h(t,i)?`nn-node nn-node-hi`:`nn-node`},i)),e.hasMore&&(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:e.colX-a/2,y:o-Qa,width:a,height:26,rx:Qa,className:`nn-more-pill`}),(0,E.jsx)(`text`,{x:e.colX,y:o,className:`nn-more-label`,textAnchor:`middle`,dominantBaseline:`middle`,children:i})]}),(0,E.jsxs)(`text`,{x:e.colX,y:388,className:`nn-meta`,textAnchor:`middle`,children:[e.totalUnits,` unit`,e.totalUnits===1?``:`s`]}),e.layer?.activation&&(0,E.jsx)(`text`,{x:e.colX,y:406,className:`nn-meta nn-act`,textAnchor:`middle`,children:ro(e.layer.activation,no)})]},t)})]})}),c&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(c)})]})}var so=100,co=60;function lo(e){switch(e){case`tank`:return(0,E.jsxs)(`g`,{className:`dg-pip-glyph`,children:[(0,E.jsx)(`rect`,{x:-7,y:-8,width:14,height:16,rx:3,fill:`none`}),(0,E.jsx)(`line`,{x1:-7,y1:3,x2:7,y2:3,className:`dg-pip-fluid`})]});case`pump`:return(0,E.jsxs)(`g`,{className:`dg-pip-glyph`,children:[(0,E.jsx)(`circle`,{cx:0,cy:0,r:7,fill:`none`}),(0,E.jsx)(`line`,{x1:0,y1:0,x2:6,y2:0}),(0,E.jsx)(`line`,{x1:0,y1:0,x2:-3.5,y2:5.5}),(0,E.jsx)(`line`,{x1:0,y1:0,x2:-3.5,y2:-5.5})]});case`valve`:return(0,E.jsxs)(`g`,{className:`dg-pip-glyph`,children:[(0,E.jsx)(`polygon`,{points:`-6,-5 -6,5 0,0`,fill:`none`}),(0,E.jsx)(`polygon`,{points:`6,-5 6,5 0,0`,fill:`none`})]});case`heater`:return(0,E.jsxs)(`g`,{className:`dg-pip-glyph`,children:[(0,E.jsx)(`rect`,{x:-8,y:-6,width:16,height:12,rx:2,fill:`none`}),(0,E.jsx)(`path`,{d:`M -6,0 q 1.5,-4 3,0 t 3,0 t 3,0`,fill:`none`})]});case`filter`:return(0,E.jsxs)(`g`,{className:`dg-pip-glyph`,children:[(0,E.jsx)(`polygon`,{points:`-6,-6 6,-6 0,7`,fill:`none`}),(0,E.jsx)(`line`,{x1:-3.4,y1:-2,x2:3.4,y2:-2,className:`dg-pip-fluid`})]});case`sensor`:return(0,E.jsxs)(`g`,{className:`dg-pip-glyph`,children:[(0,E.jsx)(`circle`,{cx:0,cy:0,r:6.5,fill:`none`}),(0,E.jsx)(`line`,{x1:-6.5,y1:0,x2:6.5,y2:0,className:`dg-pip-thin`})]});case`fitting`:return(0,E.jsx)(`g`,{className:`dg-pip-glyph`,children:(0,E.jsx)(`circle`,{cx:0,cy:0,r:2.4,className:`dg-pip-fill`})});default:return(0,E.jsx)(`g`,{className:`dg-pip-glyph`,children:(0,E.jsx)(`rect`,{x:-7,y:-2.6,width:14,height:5.2,rx:1.4,fill:`none`})})}}function uo({title:e,icon:t=`sliders`,iconColor:n=`var(--insight)`,components:r,lines:o,caption:s,footer:c,delay:l}){let u=i[t]||i.sliders,d=`dg-pip-arrow-${(0,T.useId)().replace(/:/g,``)}`,f=`url(#${d})`,p=(0,T.useMemo)(()=>{let e=Math.max(1,r.length),t=Math.min(e,Math.ceil(Math.sqrt(e)*1.5)),n=Math.ceil(e/t),i=so/(t+1),a=co/(n+1),o={};return r.forEach((e,n)=>{if(e.x!==void 0&&e.y!==void 0)o[e.id]={x:e.x,y:e.y};else{let r=Math.floor(n/t),s=n%t;o[e.id]={x:i*(s+1),y:a*(r+1)}}}),o},[r]);return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(l||0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-pip`,children:(0,E.jsxs)(`svg`,{viewBox:`-8 -9 116 80`,className:`dg-pip-svg`,role:`img`,"aria-label":e||`piping schematic`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:d,markerWidth:`6`,markerHeight:`6`,refX:`4.5`,refY:`3`,orient:`auto`,children:(0,E.jsx)(`path`,{d:`M0,0 L6,3 L0,6 Z`,className:`dg-pip-arrowhead`})})}),o.map((e,t)=>{let n=p[e.from],r=p[e.to];if(!n||!r)return null;let i=r.x,a=n.y;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`polyline`,{points:`${n.x},${n.y} ${i},${a} ${r.x},${r.y}`,className:`dg-pip-line`,fill:`none`,markerEnd:e.flow?f:void 0}),e.size&&(0,E.jsx)(`text`,{x:(n.x+i)/2,y:a-1.8,className:`dg-pip-size`,textAnchor:`middle`,children:e.size})]},t)}),r.map(e=>{let t=p[e.id];return t?(0,E.jsxs)(`g`,{transform:`translate(${t.x} ${t.y})`,children:[lo(e.kind),e.label&&(0,E.jsx)(`text`,{x:0,y:13.5,className:`dg-pip-lbl`,textAnchor:`middle`,children:e.label})]},e.id):null})]})}),s&&(0,E.jsx)(`p`,{className:`dg-pip-cap`,children:s}),c&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(c)})]})}var X=100,fo=100,Z=72,po=65,mo=79,ho=[88,102],go=11,_o={gene:`var(--presence)`,promoter:`var(--insight)`,terminator:`var(--warning)`,marker:`var(--danger)`},vo=13;function yo(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function bo(e,t){return!Number.isFinite(e)||t<=0?0:(e%t+t)%t}function xo(e,t){return bo(e,t)/t*360}function Q(e,t){let n=(e-90)*Math.PI/180;return{x:X+t*Math.cos(n),y:fo+t*Math.sin(n)}}function So(e){let t=[...e].sort((e,t)=>e.deg-t.deg),n=ho.map(()=>-1/0);return t.map(e=>{let t=n.findIndex(t=>e.deg-t>=go);return t===-1&&(t=n.indexOf(Math.min(...n))),n[t]=e.deg,{...e,r:ho[t]}})}function Co(e,t=0){return typeof e==`number`&&Number.isFinite(e)?e:t}function wo({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,sizeBp:r,features:o,sites:s,origin:c,footer:l,delay:u}){let d=i[t]||i.share,f=`pm-arrow-${(0,T.useId)().replace(/:/g,``)}`,p=Number.isFinite(r)&&r>0?r:1,m=(0,T.useMemo)(()=>Array.isArray(o)?o:[],[o]),h=(0,T.useMemo)(()=>Array.isArray(s)?s:[],[s]),g=(0,T.useMemo)(()=>m.map((e,t)=>{let n=xo(Co(e.startBp),p),r=xo(Co(e.endBp),p),i=((r-n)%360+360)%360,a=+(i>180),o=Q(n,Z),s=Q(r,Z),c=e.kind===`promoter`||e.kind===`terminator`||e.kind===`marker`?e.kind:`gene`,l=typeof e.name==`string`&&e.name?e.name:`Feature ${t+1}`,u=(n+i/2)%360;return{key:`f${t}`,s:o,t:s,large:a,color:_o[c],name:l,midDeg:u,strand:e.strand}}),[m,p]),_=(0,T.useMemo)(()=>h.map((e,t)=>{let n=xo(Co(e.posBp),p),r=typeof e.name==`string`&&e.name?e.name:`Site ${t+1}`;return{key:`s${t}`,deg:n,name:r,cutsOnce:!!e.cutsOnce}}),[h,p]),v=!!c&&typeof c.name==`string`&&c.name,y=v?xo(Co(c.posBp),p):0,b=(0,T.useMemo)(()=>So([...g.map(e=>({key:e.key,deg:e.midDeg,text:e.name,color:e.color,bold:!0})),..._.map(e=>({key:e.key,deg:e.deg,text:e.name,color:`var(--text-secondary)`,bold:e.cutsOnce})),...v?[{key:`origin`,deg:y,text:c.name,color:`var(--presence)`,bold:!0}]:[]]),[g,_,v,y,c]);return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(u||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`pm-wrap`,children:(0,E.jsxs)(`svg`,{viewBox:`-45 -8 290 216`,className:`pm-svg`,role:`img`,"aria-label":e,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:f,viewBox:`0 0 10 10`,refX:`7`,refY:`5`,markerWidth:`4.4`,markerHeight:`4.4`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`pm-arrowhead`})})}),(0,E.jsx)(`circle`,{cx:X,cy:fo,r:Z,className:`pm-backbone`}),g.map(e=>(0,E.jsx)(`path`,{d:`M ${e.s.x} ${e.s.y} A ${Z} ${Z} 0 ${e.large} 1 ${e.t.x} ${e.t.y}`,fill:`none`,stroke:e.color,className:`pm-feature`,markerEnd:e.strand===`plus`?`url(#${f})`:void 0,markerStart:e.strand===`minus`?`url(#${f})`:void 0},e.key)),_.map(e=>{let t=Q(e.deg,po),n=Q(e.deg,mo);return(0,E.jsx)(`line`,{x1:t.x,y1:t.y,x2:n.x,y2:n.y,className:e.cutsOnce?`pm-tick pm-tick-unique`:`pm-tick`},e.key)}),v&&(()=>{let e=Q(y,Z);return(0,E.jsx)(`circle`,{cx:e.x,cy:e.y,r:3.2,className:`pm-origin-dot`,"data-mark":`point`})})(),b.map(e=>{let t=Q(e.deg,e.r),n=(t.x-X)/(e.r||1),r=n>.2?`start`:n<-.2?`end`:`middle`,i=yo(e.text,vo);return(0,E.jsxs)(`g`,{children:[i!==e.text&&(0,E.jsx)(`title`,{children:e.text}),(0,E.jsx)(`text`,{x:t.x,y:t.y,textAnchor:r,dominantBaseline:`middle`,className:e.bold?`pm-label pm-label-bold`:`pm-label`,fill:e.color,children:i})]},e.key)}),(0,E.jsx)(`text`,{x:X,y:97,className:`pm-center-size`,textAnchor:`middle`,children:Math.round(p).toLocaleString()}),(0,E.jsx)(`text`,{x:X,y:110,className:`pm-center-unit`,textAnchor:`middle`,children:`bp`})]})}),l&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},dangerouslySetInnerHTML:a(l)})]})}var To=20,Eo=54,Do=70,Oo=26,ko=8,Ao=63;function jo(e){return e<=2?13:e<=3?11:e<=4?9:8}function Mo(e){let t=0;function n(e,r){if(t>=Ao||r>ko||!e||typeof e!=`object`||Array.isArray(e))return null;let i=e;if(!Number.isFinite(i.value)||i.value<=0)return null;t++;let a=Array.isArray(i.children)?i.children.map(e=>n(e,r+1)).filter(e=>e!==null):[];return{value:Math.round(i.value),isPrime:i.isPrime===!0,children:a}}return n(e,0)}function No(e){let t=0,n=0,r=[],i=[];function a(e,o){if(n=Math.max(n,o),e.children.length===0){let n={value:e.value,isPrime:e.isPrime,isLeaf:!0,slot:t,depth:o};return t++,r.push(n),n}let s=e.children.map(e=>a(e,o+1)),c=s.reduce((e,t)=>e+t.slot,0)/s.length,l={value:e.value,isPrime:e.isPrime,isLeaf:!1,slot:c,depth:o};r.push(l);for(let e of s)i.push({parent:l,child:e});return l}return a(e,0),{nodes:r,edges:i,leafCount:Math.max(1,t),maxDepth:n}}var Po={0:`⁰`,1:`¹`,2:`²`,3:`³`,4:`⁴`,5:`⁵`,6:`⁶`,7:`⁷`,8:`⁸`,9:`⁹`};function Fo(e){return String(e).split(``).map(e=>Po[e]??``).join(``)}function Io(e){let t=new Map;for(let n of e)t.set(n,(t.get(n)??0)+1);return[...t.entries()].sort((e,t)=>e[0]-t[0]).map(([e,t])=>t>1?`${e}${Fo(t)}`:`${e}`).join(` × `)}function Lo({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,number:r,nodes:o,footer:s,delay:c}){let l=i[t]||i.share,u=(0,T.useMemo)(()=>Mo(Array.isArray(o)&&o.length>0?o[0]:null),[o]),d=(0,T.useMemo)(()=>u?No(u):null,[u]),f=(0,T.useMemo)(()=>{if(!d||!Number.isFinite(r))return null;let e=d.nodes.filter(e=>e.isLeaf).map(e=>e.value);return e.length===0?null:`${Math.round(r)} = ${Io(e)}`},[d,r]);if(!u||!d)return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`p`,{className:`pft-empty`,children:`No factor tree to diagram.`})]});let p=Math.max(120,d.leafCount*Eo+52),m=(d.maxDepth+1)*Do+52,h=e=>Oo+(e+.5)*Eo,g=e=>Oo+e*Do+To;return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage pft-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${p} ${m}`,className:`dg-svg`,role:`img`,"aria-label":e,preserveAspectRatio:`xMidYMid meet`,children:[d.edges.map((e,t)=>(0,E.jsx)(`line`,{x1:h(e.parent.slot),y1:g(e.parent.depth),x2:h(e.child.slot),y2:g(e.child.depth),className:`pft-edge`},t)),d.nodes.map((e,t)=>{let n=h(e.slot),r=g(e.depth),i=e.value.toString().length;return(0,E.jsxs)(`g`,{transform:`translate(${n} ${r})`,children:[e.isPrime&&(0,E.jsx)(`circle`,{r:24,className:`pft-ring`}),(0,E.jsx)(`circle`,{r:To,className:e.isPrime?`pft-node pft-node--prime`:`pft-node`}),(0,E.jsx)(`text`,{textAnchor:`middle`,dominantBaseline:`central`,fontSize:jo(i),className:`pft-node-lbl`,children:e.value})]},t)})]})}),f&&(0,E.jsx)(`p`,{className:`pft-cap`,children:f}),s&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(s)})]})}var Ro=[`var(--presence)`,`var(--insight)`,`var(--warning)`];function zo(e){if(e===0)return`0`;if(e===1)return`1`;let t=e.toPrecision(3);return parseFloat(t).toString()}function Bo(e,t){return`P = ${zo(e*t)}`}var Vo=560,Ho=60,Uo=200,Wo=390,Go=550,Ko=26,qo=60,Jo=10,Yo=10,Xo=.62;function Zo(e,t){return Math.max(3,Math.floor(e/(t*Xo)))}var Qo=Zo(44.72,Jo),$o=Zo(128,Yo),es=Zo(316,Yo);function ts(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function ns(e){let t=e.map(e=>Math.max(1,e.children?.length??0)),n=t.reduce((e,t)=>e+t,0),r=Math.max(180,n*qo+60),i=(r-60)/n,a=0,o=e.map((e,n)=>{let r=t[n],o=Ro[n%Ro.length],s=(e.children??[]).map((t,r)=>({y:30+(a+r+.5)*i,branch:e,leaf:t,branchIdx:n,leafIdx:r,color:o})),c=s.length>0?s.reduce((e,t)=>e+t.y,0)/s.length:30+(a+.5)*i;return a+=r,{y:c,branch:e,branchIdx:n,color:o,leaves:s}});return{vbH:r,rootY:r/2,branchPositions:o}}function rs({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,branches:r,note:a,delay:o}){let s=i[t]??i.chart,{vbH:c,rootY:l,branchPositions:u}=ns(r),d=u.some(e=>e.leaves.length>0);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(o??0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(s,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-pt-scroll`,children:(0,E.jsxs)(`svg`,{className:`dg-pt-svg`,viewBox:`0 0 ${Vo} ${c}`,"aria-label":e,role:`img`,children:[(0,E.jsx)(`circle`,{cx:Ho,cy:l,r:Ko,className:`dg-pt-node dg-pt-node--root`}),(0,E.jsx)(`text`,{x:Ho,y:l+.5,textAnchor:`middle`,dominantBaseline:`middle`,className:`dg-pt-node-lbl`,children:`Start`}),u.map(({y:e,branch:t,branchIdx:n,color:r,leaves:i})=>(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{x1:86,y1:l,x2:174,y2:e,className:`dg-pt-edge`,stroke:r}),(0,E.jsx)(`text`,{x:130,y:(l+e)/2-8,textAnchor:`middle`,className:`dg-pt-edge-lbl`,children:zo(t.prob)}),(0,E.jsx)(`circle`,{cx:Uo,cy:e,r:Ko,className:`dg-pt-node`,stroke:r}),(0,E.jsxs)(`text`,{x:Uo,y:e+.5,textAnchor:`middle`,dominantBaseline:`middle`,className:`dg-pt-node-lbl`,children:[t.label.length>Qo&&(0,E.jsx)(`title`,{children:t.label}),ts(t.label,Qo)]}),i.length===0&&(0,E.jsx)(`text`,{x:234,y:e+.5,dominantBaseline:`middle`,className:`dg-pt-outcome-lbl`,fill:r,children:ts(Bo(1,t.prob),es)}),i.map(({y:n,leaf:i,leafIdx:a})=>{let o=i.outcome??Bo(t.prob,i.prob),s=ts(o,$o);return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{x1:226,y1:e,x2:364,y2:n,className:`dg-pt-edge`,stroke:r}),(0,E.jsx)(`text`,{x:295,y:(e+n)/2-8,textAnchor:`middle`,className:`dg-pt-edge-lbl`,children:zo(i.prob)}),(0,E.jsx)(`circle`,{cx:Wo,cy:n,r:Ko,className:`dg-pt-node dg-pt-node--leaf`,stroke:r}),(0,E.jsxs)(`text`,{x:Wo,y:n+.5,textAnchor:`middle`,dominantBaseline:`middle`,className:`dg-pt-node-lbl`,children:[i.label.length>Qo&&(0,E.jsx)(`title`,{children:i.label}),ts(i.label,Qo)]}),(0,E.jsxs)(`text`,{x:Go,y:n+.5,textAnchor:`end`,dominantBaseline:`middle`,className:`dg-pt-outcome-lbl`,fill:r,children:[s!==o&&(0,E.jsx)(`title`,{children:o}),s]})]},a)})]},n)),(0,E.jsx)(`text`,{x:Uo,y:12,textAnchor:`middle`,className:`dg-pt-col-hdr`,children:`Event A`}),d&&(0,E.jsx)(`text`,{x:Wo,y:12,textAnchor:`middle`,className:`dg-pt-col-hdr`,children:`Event B`}),d&&(0,E.jsx)(`text`,{x:Go,y:12,textAnchor:`end`,dominantBaseline:`auto`,className:`dg-pt-col-hdr`,children:`Outcome`})]})}),a&&(0,E.jsx)(`p`,{className:`dg-pt-note`,children:a})]})}var is=16,as=200,os=30,ss=62,cs=24,ls=12,us=18,ds=32,fs=12;function ps(e){return Array.isArray(e)?e.map((e,t)=>{if(typeof e==`string`)return{id:`s${t}`,statement:e,from:[]};if(!e||typeof e!=`object`)return{id:`s${t}`,statement:``,from:[]};let n=e;return{id:typeof n.id==`string`&&n.id?n.id:`s${t}`,statement:typeof n.statement==`string`?n.statement:``,rule:typeof n.rule==`string`&&n.rule?n.rule:void 0,from:Array.isArray(n.from)?n.from.filter(e=>typeof e==`string`&&e.length>0):typeof n.from==`string`&&n.from?[n.from]:[]}}):[]}function ms({title:e,icon:t=`proof`,iconColor:n=`var(--presence)`,steps:r,conclusionId:o,footer:c,delay:l}){let f=i[t]||i.proof,{placed:p,width:m,height:h}=(0,T.useMemo)(()=>{let e=ps(r),t=new Map(e.map(e=>[e.id,e])),n=new Set(e.flatMap(e=>e.from)),i=o&&t.get(o)||[...e].reverse().find(e=>!n.has(e.id))||e[e.length-1];if(!i)return{placed:[],width:0,height:0};let a=0,s=(e,n,r)=>{let i=t.get(e);if(!i||n.has(e)||r>fs)return null;n.add(e);let o=i.from.map(e=>s(e,n,r+1)).filter(e=>e!==null);n.delete(e),a=Math.max(a,r);let c=o.length===0&&/^\s*\[.*\]\s*$/.test(i.statement),l=u(i.statement||`·`,{maxWidth:as,fontSize:is,minFontSize:11,maxLines:2,lineHeight:1.15}),f=Math.max(26,...l.lines.map(e=>d(e,l.fontSize))),p=o.reduce((e,t)=>e+t.subW,0)+os*(o.length-1);return{step:i,children:o,fit:l,assumption:c,w:f,subW:o.length?Math.max(f,p):f,depth:r}},c=s(i.id,new Set,0);if(!c)return{placed:[],width:0,height:0};let l=[],f=(e,t)=>{let n=t+e.subW/2,r=ds+(a-e.depth)*ss,i;if(e.children.length){let a=e.children.reduce((e,t)=>e+t.subW,0)+os*(e.children.length-1),o=t+(e.subW-a)/2,s=e.children.map(e=>{let t=f(e,o);return o+=e.subW+os,t}),c=[n-e.w/2,...s.map(e=>e.cx-e.node.w/2)],l=[n+e.w/2,...s.map(e=>e.cx+e.node.w/2)];i={x1:Math.min(...c)-8,x2:Math.max(...l)+8,y:r-cs}}let o={node:e,cx:n,cy:r,bar:i};return l.push(o),o};f(c,us);let p=us+c.subW;for(let e of l)e.bar&&e.node.step.rule&&(p=Math.max(p,e.bar.x2+8+d(e.node.step.rule,ls)));return{placed:l,width:p+us,height:ds+a*ss+34}},[r,o]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(f,{className:`ic`,style:{color:n}}),` `,e]}),p.length===0?(0,E.jsx)(s,{message:`No proof steps to draw`}):(0,E.jsx)(`div`,{className:`dg-stage prf-stage`,children:(0,E.jsx)(`svg`,{viewBox:`0 0 ${m} ${h}`,className:`dg-svg prf-svg`,style:{maxWidth:m},role:`img`,"aria-label":e,children:p.map((e,t)=>{let{fit:n}=e.node,r=e.cy-(n.lines.length-1)*n.lineHeightPx/2;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`text`,{className:e.node.assumption?`prf-stmt prf-assume`:`prf-stmt`,textAnchor:`middle`,fontSize:n.fontSize,children:n.lines.map((t,i)=>(0,E.jsx)(`tspan`,{x:e.cx,y:r+i*n.lineHeightPx,dominantBaseline:`middle`,children:t},i))}),e.bar&&(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`line`,{className:`prf-bar`,x1:e.bar.x1,y1:e.bar.y,x2:e.bar.x2,y2:e.bar.y}),e.node.step.rule&&(0,E.jsx)(`text`,{className:`prf-rule`,x:e.bar.x2+8,y:e.bar.y,dominantBaseline:`middle`,fontSize:ls,children:e.node.step.rule})]})]},t)})})}),c&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(c)})]})}var hs=100,gs=4,_s=13,vs=11,ys=4.2,bs=5,xs=.62;function Ss(e,t){return e.length>t?e.slice(0,Math.max(1,t-1)).trimEnd()+`…`:e}function Cs(e,t){return Math.max(2,Math.floor(e*.92/(t*xs)))}function ws({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,layers:r,packet:o,caption:s,footer:c,delay:l}){let u=i[t]??i.layers,[d,f]=(0,T.useState)(null),p=(0,T.useMemo)(()=>{let e=o??[],t=e.length;if(t===0)return null;let n=Math.min(_s,29/Math.max(1,t-1)),r=Math.max(2,Math.min(vs,n-2));return e.map((e,i)=>{let a=gs+i*n,o=Math.max(0,hs-a*2),s=i===t-1,c=Cs(o,s?bs:ys);return{key:`${e.header}-${i}`,header:e.header,layer:e.layer,x:a,y:a,size:o,labelH:r,inner:s,maxChars:c,depth:i}})},[o]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l??0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsxs)(`div`,{className:`pst-grid`+(p?``:` pst-grid--solo`),children:[(0,E.jsx)(`ol`,{className:`pst-stack`,"aria-label":`Protocol layers, top to bottom`,children:r.map((e,t)=>{let n=d===e.name;return(0,E.jsxs)(`li`,{className:`pst-band`+(n?` on`:``),style:{"--pst-i":t},onMouseEnter:()=>f(e.name),onMouseLeave:()=>f(null),children:[(0,E.jsx)(`span`,{className:`pst-band-num`,children:r.length-t}),(0,E.jsxs)(`div`,{className:`pst-band-body`,children:[(0,E.jsx)(`span`,{className:`pst-band-name`,children:e.name}),e.role&&(0,E.jsx)(`span`,{className:`pst-band-role`,children:e.role}),e.protocols&&e.protocols.length>0&&(0,E.jsx)(`span`,{className:`pst-chips`,children:e.protocols.map((e,t)=>(0,E.jsx)(`span`,{className:`pst-chip`,children:e},e+t))})]})]},e.name+t)})}),p&&(0,E.jsxs)(`figure`,{className:`pst-encaps`,children:[(0,E.jsx)(`figcaption`,{className:`pst-encaps-cap`,children:`Encapsulation`}),(0,E.jsx)(`svg`,{viewBox:`0 0 ${hs} ${hs}`,className:`pst-encaps-svg`,role:`img`,"aria-label":`Packet encapsulation: each layer wraps the one inside it`,children:p.map(e=>{let t=e.layer!=null&&d===e.layer;return(0,E.jsxs)(`g`,{className:`pst-box`+(e.inner?` pst-box--inner`:``)+(t?` on`:``),onMouseEnter:()=>e.layer&&f(e.layer),onMouseLeave:()=>f(null),children:[e.header.length>e.maxChars&&(0,E.jsx)(`title`,{children:e.header}),(0,E.jsx)(`rect`,{x:e.x,y:e.y,width:e.size,height:e.size,rx:2.4}),(0,E.jsx)(`text`,{x:e.x+e.size/2,y:e.inner?e.y+e.size/2:e.y+e.labelH/2+1,className:e.inner?`pst-box-lbl pst-box-lbl--inner`:`pst-box-lbl`,textAnchor:`middle`,dominantBaseline:`middle`,children:Ss(e.header,e.maxChars)})]},e.key)})}),(0,E.jsxs)(`div`,{className:`pst-flow-note`,children:[(0,E.jsx)(`span`,{className:`pst-flow-arrow`,"aria-hidden":`true`,children:`↓`}),`header added per layer on the way down`]})]})]}),s&&(0,E.jsx)(`p`,{className:`pst-caption`,children:s}),c&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(c)})]})}var Ts=30,Es=35,Ds=92,Os=108,ks=220,As=96,js=40,Ms=13;function Ns(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function Ps(e,t){if(t>40||!e||typeof e!=`object`)return{call:typeof e==`string`&&e?e:`call()`};let n=e;return{call:typeof n.call==`string`&&n.call?n.call:`call()`,result:typeof n.result==`string`||typeof n.result==`number`?n.result:void 0,children:Array.isArray(n.children)?n.children.map(e=>Ps(e,t+1)):void 0}}function Fs(e){return!e.children||e.children.length===0}function Is(e){let t=0,n=0,r=(e,i)=>{n=Math.max(n,i);let a=Es+i*Ds;if(Fs(e)){let n=Ts+t*Os+Os/2;return t+=1,{node:e,x:n,y:a,children:[]}}let o=e.children.map(e=>r(e,i+1));return{node:e,x:(o[0].x+o[o.length-1].x)/2,y:a,children:o}};return{placed:r(e,0),width:Math.max(ks,t*Os+60),height:Es+n*Ds+js+30}}function Ls(e,t=[]){t.push(e);for(let n of e.children)Ls(n,t);return t}function Rs({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,root:r,footer:o,delay:s}){let c=i[t]||i.share,{nodes:l,width:u,height:d}=(0,T.useMemo)(()=>{let{placed:e,width:t,height:n}=Is(Ps(r,0));return{nodes:Ls(e),width:t,height:n}},[r]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(s||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(c,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage rt-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${u} ${d}`,className:`dg-svg`,role:`img`,"aria-label":e,children:[l.map((e,t)=>e.children.map((n,r)=>(0,E.jsx)(`line`,{x1:e.x,y1:e.y+js/2,x2:n.x,y2:n.y-js/2,className:`rt-edge`},`e${t}-${r}`))),l.map((e,t)=>{let n=e.node.call;return(0,E.jsxs)(`g`,{transform:`translate(${e.x} ${e.y})`,children:[(0,E.jsx)(`rect`,{x:-48,y:-20,width:As,height:js,rx:9,className:`rt-box`}),(0,E.jsxs)(`text`,{className:`rt-call`,textAnchor:`middle`,dominantBaseline:`middle`,children:[n.length>Ms&&(0,E.jsx)(`title`,{children:n}),Ns(n,Ms)]}),e.node.result!==void 0&&(0,E.jsxs)(`g`,{transform:`translate(${As/2-6} -24)`,children:[(0,E.jsx)(`rect`,{x:-20,y:-11,width:40,height:22,rx:11,className:`rt-badge`}),(0,E.jsx)(`text`,{className:`rt-badge-text`,textAnchor:`middle`,dominantBaseline:`middle`,children:Ns(`→${e.node.result}`,8)})]})]},`n${t}`)})]})}),o&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(o)})]})}var zs=10,Bs=38,Vs=132,Hs=400,Us=112,Ws=26,Gs=16,Ks=6.4,qs=8,Js=12;function Ys(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function Xs({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,actors:r,messages:o,footer:s,delay:c}){let l=i[t]||i.share,u=`dg-seq-arrow-${(0,T.useId)().replace(/:/g,``)}`,d=`url(#${u})`,f=(0,T.useRef)(null),[p,m]=(0,T.useState)(0);(0,T.useLayoutEffect)(()=>{let e=f.current;if(!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(t=>{let n=t[0]?.contentRect.width??e.offsetWidth;m(e=>Math.abs(e-n)<1?e:n)});return t.observe(e),()=>t.disconnect()},[]);let{lanes:h,width:g,height:_}=(0,T.useMemo)(()=>{let e=Math.max(1,r.length),t=p>0?Math.min(Hs,Math.max(Vs,p/e)):Vs,n=e*t,i=r.map((e,n)=>(n+.5)*t),a={};return r.forEach((e,t)=>a[e.id]=i[t]),{lanes:{x:i,map:a},width:n,height:44+o.length*Bs+14}},[r,o.length,p]);return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-seq`,ref:f,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${g} ${_}`,className:`dg-seq-svg`,style:{maxWidth:`${g}px`},preserveAspectRatio:`xMidYMin meet`,role:`img`,"aria-label":e,children:[r.map((e,t)=>(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{x1:h.x[t],y1:44,x2:h.x[t],y2:_-8,className:`dg-seq-life`}),(0,E.jsx)(`rect`,{x:h.x[t]-Us/2,y:zs,width:Us,height:Ws,rx:5,className:`dg-seq-actorbox`}),(0,E.jsxs)(`text`,{x:h.x[t],y:27,className:`dg-seq-actor`,textAnchor:`middle`,children:[e.label.length>Gs&&(0,E.jsx)(`title`,{children:e.label}),Ys(e.label,Gs)]})]},e.id)),o.map((e,t)=>{let n=44+t*Bs+20,r=h.map[e.from]??0,i=h.map[e.to]??r;if(e.self)return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`path`,{d:`M ${r} ${n} h 16 v 12 h -16`,className:`dg-seq-msg`+(e.reply?` reply`:``),fill:`none`,markerEnd:d}),(0,E.jsxs)(`text`,{x:r+22,y:n-3,className:`dg-seq-lbl`,textAnchor:`start`,children:[e.label.length>Js&&(0,E.jsx)(`title`,{children:e.label}),Ys(e.label,Js)]})]},t);let a=i>=r?1:-1,o=Math.max(qs,Math.floor((Math.abs(i-r)-24)/Ks));return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{x1:r,y1:n,x2:i-a*5,y2:n,className:`dg-seq-msg`+(e.reply?` reply`:``),markerEnd:d}),(0,E.jsxs)(`text`,{x:(r+i)/2,y:n-5,className:`dg-seq-lbl`,textAnchor:`middle`,children:[e.label.length>o&&(0,E.jsx)(`title`,{children:e.label}),Ys(e.label,o)]})]},t)}),(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:u,markerWidth:`7`,markerHeight:`7`,refX:`5.5`,refY:`3`,orient:`auto`,children:(0,E.jsx)(`path`,{d:`M0,0 L6,3 L0,6 Z`,className:`dg-seq-arrowhead`})})})]})}),s&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:a(s)})]})}var Zs=[600,250,80],Qs=[`1×`,`2×`,`4×`];function $s(e,t){return e?e.sorted?.includes(t)?`sorted`:e.pivot===t?`pivot`:e.compared?.includes(t)?`compared`:e.swapped?.includes(t)?`swapped`:`default`:`default`}function ec(e){return e?{"o-1":`O(1)`,"o-logn":`O(log n)`,"o-n":`O(n)`,"o-nlogn":`O(n log n)`,"o-n2":`O(n²)`,"o-2n":`O(2ⁿ)`}[e]??e:``}function tc({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,algorithm:r,complexity:o,values:s,steps:c,footer:l,delay:u}){let d=i[t]??i.chart,f=c.length,[p,m]=(0,T.useState)(0),[h,g]=(0,T.useState)(!1),[_,v]=(0,T.useState)(1),y=(0,T.useRef)(null),b=c[Math.min(p,f-1)],x=b?.values??s,S=Math.max(1,...x.map(e=>Math.abs(e))),C=c.slice(0,p+1).reduce((e,t)=>({cmp:e.cmp+ +!!t.compared?.length,swap:e.swap+ +!!t.swapped?.length}),{cmp:0,swap:0}),w=(0,T.useCallback)(e=>m(Math.min(f-1,Math.max(0,e))),[f]);return(0,T.useEffect)(()=>{if(!h){y.current&&clearTimeout(y.current);return}if(p>=f-1){g(!1);return}return y.current=setTimeout(()=>m(e=>Math.min(f-1,e+1)),Zs[_]),()=>{y.current&&clearTimeout(y.current)}},[h,p,f,_]),(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(u??0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`dg-sv-header`,children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,style:{marginBottom:0},children:[(0,E.jsx)(d,{className:`ic`,style:{color:n}}),e??r]}),(0,E.jsxs)(`div`,{className:`dg-sv-badges`,children:[o&&(0,E.jsx)(`span`,{className:`dg-sv-badge`,children:ec(o)}),(0,E.jsxs)(`span`,{className:`dg-sv-badge dg-sv-ops`,children:[C.cmp,` cmp · `,C.swap,` swap`]})]})]}),(0,E.jsx)(`p`,{className:`dg-at-caption`,"aria-live":`polite`,children:b?.caption??``}),(0,E.jsx)(`div`,{className:`dg-sv-bars`,"aria-label":`sorting visualization`,role:`img`,children:x.map((e,t)=>{let n=$s(b,t),r=Math.round(Math.abs(e)/S*100);return(0,E.jsxs)(`div`,{className:`dg-sv-bar-wrap`,children:[(0,E.jsx)(`div`,{className:`dg-sv-bar role-${n}`,style:{height:`${r}%`},"aria-label":String(e)}),x.length<=16&&(0,E.jsx)(`span`,{className:`dg-sv-val`,style:{display:`inline-block`,maxWidth:`100%`,overflow:`hidden`,textOverflow:`ellipsis`},children:e})]},t)})}),(0,E.jsxs)(`div`,{className:`dg-at-controls`,children:[(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>{g(!1),w(p-1)},disabled:p===0,"aria-label":`previous step`,children:[(0,E.jsx)(i.chevL,{className:`ic`}),` Prev`]}),(0,E.jsx)(`button`,{type:`button`,className:`dg-at-btn dg-sv-play`,onClick:()=>{p>=f-1?(m(0),g(!0)):g(e=>!e)},"aria-label":h?`pause`:`play`,children:h?`⏸`:p>=f-1?`↺`:`▶`}),(0,E.jsxs)(`div`,{className:`dg-at-progress`,"aria-hidden":`true`,children:[c.length<=30&&c.map((e,t)=>(0,E.jsx)(`span`,{className:`dg-at-dot`+(t===p?` on`:t<p?` done`:``)},t)),c.length>30&&(0,E.jsxs)(`span`,{className:`dg-sv-step-count`,children:[p+1,` / `,f]})]}),(0,E.jsx)(`button`,{type:`button`,className:`dg-at-btn dg-sv-speed`,onClick:()=>v(e=>(e+1)%3),"aria-label":`speed: ${Qs[_]}`,children:Qs[_]}),(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>{g(!1),w(p+1)},disabled:p>=f-1,"aria-label":`next step`,children:[`Next `,(0,E.jsx)(i.chevR,{className:`ic`})]})]}),l&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(l)})]})}var nc=22,rc=52,ic=20,ac=[700,280,80],oc=[`1×`,`2×`,`8×`];function sc({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,algorithm:r,steps:o,footer:s,delay:c}){let l=i[t]??i.share,u=Math.max(1,o.length),[d,f]=(0,T.useState)(0),[p,m]=(0,T.useState)(!1),[h,g]=(0,T.useState)(1),_=(0,T.useRef)(d);_.current=d;let v=(0,T.useRef)(typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches),y=(0,T.useCallback)(e=>{m(!1),f(Math.min(u-1,Math.max(0,e)))},[u]),b=(0,T.useCallback)(()=>{v.current||m(e=>(!e&&_.current>=u-1&&f(0),!e))},[u]);(0,T.useEffect)(()=>{if(!p)return;let e=setInterval(()=>{let e=_.current+1;if(e>=u){m(!1);return}f(e)},ac[h]);return()=>clearInterval(e)},[p,u,h]);let x=o[Math.min(d,u-1)],S=x?.grid??[],C=Math.min(ic,S.length),w=Math.min(ic,S[0]?.length??0),D=S.slice(0,C).reduce((e,t)=>e+t.slice(0,w).filter(e=>e.state===`queued`).length,0),O=S.slice(0,C).reduce((e,t)=>e+t.slice(0,w).filter(e=>e.state===`visited`||e.state===`path`).length,0),k=S.some(e=>e.some(e=>e.value!==void 0));return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(c??0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),e??(r?`${r} on a Grid`:`Grid Trace`),r&&(0,E.jsx)(`span`,{className:`gt2-algo-badge`,children:r})]}),(0,E.jsx)(`p`,{className:`dg-at-caption`,"aria-live":`polite`,children:x?.caption??``}),(0,E.jsx)(`div`,{className:`gt2-grid`,style:{"--gt2-cols":w,"--gt2-cell":`clamp(${nc}px, calc((100% - 8px) / ${w}), ${rc}px)`},role:`img`,"aria-label":e??`grid`,children:S.slice(0,C).map((e,t)=>e.slice(0,w).map((e,n)=>(0,E.jsx)(`div`,{className:`gt2-cell gt2-${e.state}`,title:`[${t},${n}]${e.value===void 0?``:` = ${e.value}`}`,children:k&&e.value!==void 0&&(0,E.jsx)(`span`,{className:`gt2-cell-val`,children:e.value})},`${t}-${n}`)))}),(0,E.jsxs)(`div`,{className:`gt2-stats`,children:[(0,E.jsxs)(`span`,{className:`gt2-stat`,children:[(0,E.jsx)(`span`,{className:`gt2-dot gt2-dot-queued`}),D,` queued`]}),(0,E.jsxs)(`span`,{className:`gt2-stat`,children:[(0,E.jsx)(`span`,{className:`gt2-dot gt2-dot-visited`}),O,` visited`]})]}),(0,E.jsxs)(`div`,{className:`dg-at-controls`,children:[(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>y(d-1),disabled:d===0,"aria-label":`previous step`,children:[(0,E.jsx)(i.chevL,{className:`ic`}),` Prev`]}),!v.current&&(0,E.jsx)(`button`,{type:`button`,className:`dg-at-btn dg-at-play`+(p?` playing`:``),onClick:b,"aria-label":p?`pause`:`play`,children:p?(0,E.jsx)(i.pause,{className:`ic`}):(0,E.jsx)(i.play,{className:`ic`})}),!v.current&&(0,E.jsx)(`button`,{type:`button`,className:`dg-at-btn dg-at-speed`,onClick:()=>g(e=>(e+1)%3),"aria-label":`speed: ${oc[h]}`,children:oc[h]}),(0,E.jsx)(`div`,{className:`dg-at-progress`,"aria-hidden":`true`,children:u<=30&&o.map((e,t)=>(0,E.jsx)(`span`,{className:`dg-at-dot`+(t===d?` on`:t<d?` done`:``)},t))}),(0,E.jsxs)(`span`,{className:`dg-at-count`,children:[d+1,` / `,u]}),(0,E.jsxs)(`button`,{type:`button`,className:`dg-at-btn`,onClick:()=>y(d+1),disabled:d>=u-1,"aria-label":`next step`,children:[`Next `,(0,E.jsx)(i.chevR,{className:`ic`})]})]}),s&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(s)})]})}var cc=100;function lc({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,states:r,transitions:a,footer:o,delay:s}){let c=i[t]||i.share,[l,u]=(0,T.useState)(null),d=`dg-sm-arrow-${(0,T.useId)().replace(/:/g,``)}`,f=`url(#${d})`,p=(0,T.useMemo)(()=>{let e=S(Math.max(1,r.length),cc/2,cc/2),t={};return r.forEach((n,r)=>{t[n.id]=n.x!==void 0&&n.y!==void 0?{x:n.x,y:n.y}:e[r]}),t},[r]),m=C(r.length),h=(0,T.useMemo)(()=>x(a,p,m),[a,p,m]),g=(0,T.useMemo)(()=>{let e=r.map(e=>p[e.id]).filter(Boolean);if(e.length===0)return`0 0 ${cc} ${cc}`;let t=m+16,n=e.map(e=>e.x),i=e.map(e=>e.y),a=Math.min(...n)-t,o=Math.min(...i)-t;return`${a} ${o} ${Math.max(...n)+t-a} ${Math.max(...i)+t-o}`},[r,p,m]);return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(s||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(c,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-sm`,onMouseLeave:()=>u(null),children:(0,E.jsxs)(`svg`,{viewBox:g,className:`dg-sm-svg`,role:`img`,"aria-label":e,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:d,markerWidth:`6`,markerHeight:`6`,refX:`5`,refY:`3`,orient:`auto`,children:(0,E.jsx)(`path`,{d:`M0,0 L6,3 L0,6 Z`,className:`dg-sm-arrowhead`})})}),h.map(e=>(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`path`,{d:e.d,className:`dg-sm-edge`,fill:`none`,markerEnd:f}),e.label&&(0,E.jsx)(`text`,{x:e.lx,y:e.ly,className:`dg-sm-elbl`,textAnchor:e.labelAnchor,children:e.label})]},e.key)),r.map(e=>{let t=p[e.id];return t?(0,E.jsxs)(`g`,{onMouseEnter:()=>u(e.id),className:`dg-sm-state`+(l===e.id?` on`:``),children:[e.start&&(0,E.jsx)(`line`,{x1:t.x-m-7,y1:t.y,x2:t.x-m,y2:t.y,className:`dg-sm-edge`,markerEnd:f}),(0,E.jsx)(`circle`,{cx:t.x,cy:t.y,r:m,className:`dg-sm-circ`}),e.final&&(0,E.jsx)(`circle`,{cx:t.x,cy:t.y,r:m-2.4,className:`dg-sm-circ-inner`}),(0,E.jsx)(`text`,{x:t.x,y:t.y+2.4,className:`dg-sm-lbl`,textAnchor:`middle`,children:e.label})]},e.id):null})]})}),o&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:o})]})}var uc=1e3,dc=96,fc=44,pc=112,mc=300,hc={start:`color-mix(in oklab, var(--presence) 16%, var(--surface-elevated-2))`,intermediate:`var(--surface-elevated-2)`,target:`color-mix(in oklab, var(--insight) 18%, var(--surface-elevated-2))`},gc={start:`var(--presence)`,intermediate:`var(--line-strong)`,target:`var(--insight)`};function _c(e){return e===`start`||e===`target`?e:`intermediate`}function vc(e,t){let n=new Map;for(let t of e)n.set(t.id,0);for(let r=0;r<e.length;r++){let r=!1;for(let i of t){if(!n.has(i.from)||!n.has(i.to))continue;let[t,a]=i.direction===`retro`?[i.to,i.from]:[i.from,i.to],o=(n.get(t)??0)+1;o>(n.get(a)??0)&&o<e.length&&(n.set(a,o),r=!0)}if(!r)break}return n}function yc(e,t){if(e.length===0)return mc;let n=vc(e,t),r=new Map;for(let t of e){let e=n.get(t.id)??0;r.set(e,(r.get(e)??0)+1)}let i=r.size>0?Math.max(...r.values()):1,a=i*88+Math.max(0,i-1)*80;return Math.max(mc,a+224)}function bc(e,t,n){let r=n-224,i=e=>pc+e*776,a=e=>pc+e*r,o=e.map(e=>({...e,cx:0,cy:0})),s=new Map(o.map(e=>[e.id,e])),c=vc(e,t),l=new Map;for(let t of e){let e=c.get(t.id)??0;l.has(e)||l.set(e,[]),l.get(e).push(t)}let u=[...l.keys()].sort((e,t)=>e-t),d=Math.max(1,u.length-1);return u.forEach((e,t)=>{let r=l.get(e),o=u.length===1?uc/2:i(t/d);r.forEach((e,t)=>{let i=s.get(e.id);i.cx=o,i.cy=r.length===1?n/2:a((t+.5)/r.length)})}),o}function xc(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n);return{x:t.cx-Math.cos(i)*102,y:t.cy-Math.sin(i)*50}}function Sc(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n);return{x:e.cx+Math.cos(i)*102,y:e.cy+Math.sin(i)*50}}function Cc(e,t,n){let r=e.split(/\s+/).filter(Boolean),i=[],a=``,o=!1;for(let e of r){let r=a?`${a} ${e}`:e;if(r.length<=t||!a)a=r;else if(i.push(a),a=e,i.length===n){o=!0,a=``;break}}if(a&&i.length<n&&i.push(a),i.length){let e=i.length-1,n=i[e];n.length>t&&(n=n.slice(0,t-1).trimEnd()),(o||i[e].length>t)&&(n=n.replace(/[…\s]*$/,``)+`…`),i[e]=n}return i.length?i:[``]}function wc(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}var Tc=21,Ec=12,Dc=.6,Oc=20,kc=Math.max(4,Math.floor(dc*Math.sqrt(1-(Oc/fc)**2)*2*.94/(Ec*Dc)));function Ac(e){let t=(0,I.c)(37),{node:n}=e,r;t[0]===n.role?r=t[1]:(r=_c(n.role),t[0]=n.role,t[1]=r);let i=r,a=typeof n.label==`string`&&n.label?n.label:n.id||`Compound`,o=typeof n.smiles==`string`&&!!n.smiles,s,c,l,u,d,f;if(t[2]!==o||t[3]!==a||t[4]!==n.cx||t[5]!==n.cy||t[6]!==i){let e=Cc(a,16,o?1:2),r=e.length*Tc,p=n.cy-r/2+Tc*.72-(o?9:0);d=`sr-node`;let m=hc[i],h=gc[i],g=i===`intermediate`?1.4:2;t[13]!==n.cx||t[14]!==n.cy||t[15]!==g||t[16]!==m||t[17]!==h?(f=(0,E.jsx)(`ellipse`,{cx:n.cx,cy:n.cy,rx:dc,ry:fc,fill:m,stroke:h,strokeWidth:g}),t[13]=n.cx,t[14]=n.cy,t[15]=g,t[16]=m,t[17]=h,t[18]=f):f=t[18],s=`sr-label`,c=n.cx,l=`middle`;let _;t[19]!==n.cx||t[20]!==p?(_=(e,t)=>(0,E.jsx)(`tspan`,{x:n.cx,y:p+t*Tc,children:e},t),t[19]=n.cx,t[20]=p,t[21]=_):_=t[21],u=e.map(_),t[2]=o,t[3]=a,t[4]=n.cx,t[5]=n.cy,t[6]=i,t[7]=s,t[8]=c,t[9]=l,t[10]=u,t[11]=d,t[12]=f}else s=t[7],c=t[8],l=t[9],u=t[10],d=t[11],f=t[12];let p;t[22]!==s||t[23]!==c||t[24]!==l||t[25]!==u?(p=(0,E.jsx)(`text`,{className:s,x:c,textAnchor:l,children:u}),t[22]=s,t[23]=c,t[24]=l,t[25]=u,t[26]=p):p=t[26];let m;t[27]!==o||t[28]!==n.cx||t[29]!==n.cy||t[30]!==n.smiles?(m=o&&(0,E.jsx)(`text`,{className:`sr-smiles`,x:n.cx,y:n.cy+Oc,textAnchor:`middle`,children:wc(n.smiles,kc)}),t[27]=o,t[28]=n.cx,t[29]=n.cy,t[30]=n.smiles,t[31]=m):m=t[31];let h;return t[32]!==d||t[33]!==f||t[34]!==p||t[35]!==m?(h=(0,E.jsxs)(`g`,{className:d,children:[f,p,m]}),t[32]=d,t[33]=f,t[34]=p,t[35]=m,t[36]=h):h=t[36],h}function jc(e){let t=(0,I.c)(33),{a:n,b:r,edge:i,forwardArrow:a,retroArrow:o}=e,s=i.direction===`retro`,c;t[0]!==n||t[1]!==r?(c=Sc(n,r),t[0]=n,t[1]=r,t[2]=c):c=t[2];let l=c,u;t[3]!==n||t[4]!==r?(u=xc(n,r),t[3]=n,t[4]=r,t[5]=u):u=t[5];let d=u,f=(l.x+d.x)/2,p=(l.y+d.y)/2,m=d.x-l.x,h=d.y-l.y,g;t[6]!==m||t[7]!==h?(g=Math.hypot(m,h)||1,t[6]=m,t[7]=h,t[8]=g):g=t[8];let _=g,v=Math.min(36,_*.05),y=f-h/_*v,b=p+m/_*v,x;t[9]!==i.conditions||t[10]!==i.reagents?(x=[i.reagents,i.conditions].filter(Mc),t[9]=i.conditions,t[10]=i.reagents,t[11]=x):x=t[11];let S=x.join(`, `),C;t[12]===i.yieldPct?C=t[13]:(C=Number.isFinite(i.yieldPct),t[12]=i.yieldPct,t[13]=C);let w=C,T;t[14]!==i.yieldPct||t[15]!==w?(T=w?`${Math.round(Math.max(0,Math.min(100,i.yieldPct)))}%`:``,t[14]=i.yieldPct,t[15]=w,t[16]=T):T=t[16];let D=T,O=`M ${l.x} ${l.y} Q ${y} ${b} ${d.x} ${d.y}`,k=s?`sr-line sr-line-retro`:`sr-line`,A=`url(#${s?o:a})`,j;t[17]!==O||t[18]!==k||t[19]!==A?(j=(0,E.jsx)(`path`,{d:O,fill:`none`,className:k,markerEnd:A}),t[17]=O,t[18]=k,t[19]=A,t[20]=j):j=t[20];let M;t[21]!==S||t[22]!==y||t[23]!==b?(M=S&&(0,E.jsx)(`text`,{className:`dg-edge-label`,x:y,y:b-12,textAnchor:`middle`,children:wc(S,28)}),t[21]=S,t[22]=y,t[23]=b,t[24]=M):M=t[24];let N;t[25]!==y||t[26]!==b||t[27]!==D?(N=D&&(0,E.jsx)(`text`,{className:`sr-yield`,x:y,y:b+22,textAnchor:`middle`,children:D}),t[25]=y,t[26]=b,t[27]=D,t[28]=N):N=t[28];let P;return t[29]!==j||t[30]!==M||t[31]!==N?(P=(0,E.jsxs)(`g`,{className:`sr-edge`,children:[j,M,N]}),t[29]=j,t[30]=M,t[31]=N,t[32]=P):P=t[32],P}function Mc(e){return typeof e==`string`&&e}function Nc({title:e,icon:t=`spark`,iconColor:n=`var(--presence)`,nodes:r,edges:o,footer:s,delay:c}){let l=i[t]||i.spark,u=(0,T.useId)().replace(/:/g,``),d=`sr-arrow-fwd-${u}`,f=`sr-arrow-retro-${u}`,p=(0,T.useMemo)(()=>Array.isArray(r)?r:[],[r]),m=(0,T.useMemo)(()=>Array.isArray(o)?o:[],[o]),h=(0,T.useMemo)(()=>yc(p,m),[p,m]),g=(0,T.useMemo)(()=>bc(p,m,h),[p,m,h]),_=(0,T.useMemo)(()=>new Map(g.map(e=>[e.id,e])),[g]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage sr-stage`,children:(0,E.jsxs)(`svg`,{className:`dg-svg`,viewBox:`0 0 ${uc} ${h}`,preserveAspectRatio:`xMidYMid meet`,role:`img`,"aria-label":e,children:[(0,E.jsxs)(`defs`,{children:[(0,E.jsx)(`marker`,{id:d,viewBox:`0 0 10 10`,refX:`8`,refY:`5`,markerWidth:`7`,markerHeight:`7`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`sr-arrowhead-fwd`})}),(0,E.jsx)(`marker`,{id:f,viewBox:`0 0 10 10`,refX:`8`,refY:`5`,markerWidth:`7`,markerHeight:`7`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`sr-arrowhead-retro`})})]}),m.map((e,t)=>{let n=_.get(e.from),r=_.get(e.to);return!n||!r?null:(0,E.jsx)(jc,{a:n,b:r,edge:e,forwardArrow:d,retroArrow:f},t)}),g.map(e=>(0,E.jsx)(Ac,{node:e},e.id))]})}),s&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(s)})]})}var Pc=1e3,Fc=130,Ic=113,Lc=74,Rc=320,zc=226,Bc=720,Vc=70,Hc=-30,Uc={client:`var(--surface-elevated-2)`,loadbalancer:`color-mix(in oklab, var(--presence) 16%, var(--surface-elevated-2))`,service:`var(--surface-elevated-2)`,database:`color-mix(in oklab, var(--insight) 16%, var(--surface-elevated-2))`,cache:`color-mix(in oklab, var(--warning) 16%, var(--surface-elevated-2))`,queue:`color-mix(in oklab, var(--presence-soft) 22%, var(--surface-elevated-2))`,gateway:`color-mix(in oklab, var(--presence) 12%, var(--surface-elevated-2))`,cdn:`color-mix(in oklab, var(--insight) 10%, var(--surface-elevated-2))`},Wc={client:`var(--line-strong)`,loadbalancer:`var(--presence)`,service:`var(--line-strong)`,database:`var(--insight)`,cache:`var(--warning)`,queue:`var(--presence-soft)`,gateway:`var(--presence)`,cdn:`var(--insight)`},Gc=17,Kc=20;function qc(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function Jc(e,t){let n=new Map;for(let t of e)n.set(t.id,0);for(let r=0;r<e.length;r++){let r=!1;for(let i of t){if(!n.has(i.from)||!n.has(i.to))continue;let t=(n.get(i.from)??0)+1;t>(n.get(i.to)??0)&&t<e.length&&(n.set(i.to,t),r=!0)}if(!r)break}return n}function Yc(e,t){if(e.length===0)return Rc;let n=Jc(e,t),r=new Map;for(let t of e){let e=n.get(t.id)??0;r.set(e,(r.get(e)??0)+1)}let i=r.size>0?Math.max(...r.values()):1,a=i*Fc+Math.max(0,i-1)*Lc;return Math.max(Rc,a+226)}function Xc(e,t){if(e.length===0)return Pc;let n=Jc(e,t),r=new Set(e.map(e=>n.get(e.id)??0)).size;return Math.max(Pc,Math.max(1,r-1)*zc+226)}function Zc(e,t,n,r){let i=n-226,a=r-226,o=e=>Ic+e*i,s=e=>Ic+e*a,c=e.map(e=>Number.isFinite(e.x)&&Number.isFinite(e.y)?{...e,cx:o(Qc(e.x)),cy:s(Qc(e.y))}:{...e,cx:0,cy:0}),l=new Map(c.map(e=>[e.id,e])),u=e.filter(e=>!(Number.isFinite(e.x)&&Number.isFinite(e.y))),d=Jc(u,t),f=new Map;for(let e of u){let t=d.get(e.id)??0;f.has(t)||f.set(t,[]),f.get(t).push(e)}let p=[...f.keys()].sort((e,t)=>e-t),m=Math.max(1,p.length-1);return p.forEach((e,t)=>{let i=f.get(e),a=p.length===1?n/2:o(t/m);i.forEach((e,t)=>{let n=l.get(e.id);n.cx=a,n.cy=i.length===1?r/2:s((t+.5)/i.length)})}),c}function Qc(e){return Math.min(1,Math.max(0,e))}function $c(e,t){let n=(Math.hypot(t.cx-e.cx,t.cy-e.cy)||1)*.4;return{rx:Math.min(99,n),ry:Math.min(71,n)}}function el(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n),{rx:a,ry:o}=$c(e,t);return{x:t.cx-Math.cos(i)*a,y:t.cy-Math.sin(i)*o}}function tl(e,t){let n=t.cx-e.cx,r=t.cy-e.cy,i=Math.atan2(r,n),{rx:a,ry:o}=$c(e,t);return{x:e.cx+Math.cos(i)*a,y:e.cy+Math.sin(i)*o}}function nl(e){switch(e){case`client`:return(0,E.jsxs)(`g`,{className:`sa-icon`,children:[(0,E.jsx)(`rect`,{x:-9,y:-7,width:18,height:12,rx:1.6}),(0,E.jsx)(`line`,{x1:-4,y1:8,x2:4,y2:8}),(0,E.jsx)(`line`,{x1:0,y1:5,x2:0,y2:8})]});case`gateway`:return(0,E.jsxs)(`g`,{className:`sa-icon`,children:[(0,E.jsx)(`line`,{x1:-7,y1:-8,x2:-7,y2:8}),(0,E.jsx)(`line`,{x1:7,y1:-8,x2:7,y2:8}),(0,E.jsx)(`path`,{d:`M -8 0 L 5 0 L 5 -3.4 L 10 0 L 5 3.4 L 5 0`,className:`sa-icon-fill`})]});case`cdn`:return(0,E.jsxs)(`g`,{className:`sa-icon`,children:[(0,E.jsx)(`line`,{x1:0,y1:-8,x2:-7,y2:6}),(0,E.jsx)(`line`,{x1:0,y1:-8,x2:7,y2:6}),(0,E.jsx)(`line`,{x1:-7,y1:6,x2:7,y2:6}),(0,E.jsx)(`circle`,{cx:0,cy:-8,r:1.8,className:`sa-icon-fill`}),(0,E.jsx)(`circle`,{cx:-7,cy:6,r:1.8,className:`sa-icon-fill`}),(0,E.jsx)(`circle`,{cx:7,cy:6,r:1.8,className:`sa-icon-fill`})]});default:return(0,E.jsxs)(`g`,{className:`sa-icon`,children:[(0,E.jsx)(`rect`,{x:-9,y:-8,width:18,height:16,rx:2}),(0,E.jsx)(`line`,{x1:-9,y1:0,x2:9,y2:0}),(0,E.jsx)(`circle`,{cx:-5,cy:-4,r:1,className:`sa-icon-fill`}),(0,E.jsx)(`circle`,{cx:-5,cy:4,r:1,className:`sa-icon-fill`})]})}}function rl(e,t,n){let r={fill:t,stroke:n,strokeWidth:2.2};switch(e){case`database`:{let e=Vc/2-13;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`path`,{d:`M -58 -22 A 58 13 0 0 1 58 -22 L 58 ${e} A 58 13 0 0 1 -58 ${e} Z`,...r}),(0,E.jsx)(`path`,{d:`M -58 -22 A 58 13 0 0 0 58 -22`,fill:`none`,stroke:n,strokeWidth:1.6})]})}case`queue`:return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:-36,y:-35,width:100,height:42,rx:8,fill:t,stroke:n,strokeWidth:1.4,opacity:.55}),(0,E.jsx)(`rect`,{x:-43,y:-28,width:100,height:42,rx:8,fill:t,stroke:n,strokeWidth:1.4,opacity:.78}),(0,E.jsx)(`rect`,{x:-50,y:-21,width:100,height:42,rx:8,...r})]});case`cache`:return(0,E.jsx)(`rect`,{x:-31,y:-31,width:62,height:62,rx:14,transform:`rotate(45)`,...r});case`loadbalancer`:{let e=Array.from({length:6},(e,t)=>{let n=Math.PI/3*t;return`${Math.cos(n)*66},${Math.sin(n)*40}`}).join(` `);return(0,E.jsx)(`polygon`,{points:e,...r})}default:return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:-75,y:-35,width:150,height:Vc,rx:14,...r}),(0,E.jsx)(`g`,{transform:`translate(0 -6)`,children:nl(e)})]})}}function il({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,nodes:r,edges:o,footer:s,delay:c}){let l=i[t]||i.share,u=(0,T.useId)().replace(/:/g,``),d=(0,T.useMemo)(()=>Array.isArray(r)?r:[],[r]),f=(0,T.useMemo)(()=>Array.isArray(o)?o:[],[o]),p=(0,T.useMemo)(()=>Xc(d,f),[d,f]),m=(0,T.useMemo)(()=>Yc(d,f),[d,f]),h=(0,T.useMemo)(()=>Zc(d,f,p,m),[d,f,p,m]),g=(0,T.useMemo)(()=>new Map(h.map(e=>[e.id,e])),[h]),_=Math.round(Bc*p/Pc);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(c||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-stage sa-stage`,style:{maxWidth:_},children:(0,E.jsxs)(`svg`,{className:`dg-svg`,viewBox:`0 0 ${p} ${m}`,preserveAspectRatio:`xMidYMid meet`,role:`img`,"aria-label":e,children:[(0,E.jsx)(`defs`,{children:(0,E.jsx)(`marker`,{id:`sa-arrow-${u}`,viewBox:`0 0 10 10`,refX:`8`,refY:`5`,markerWidth:`7`,markerHeight:`7`,orient:`auto-start-reverse`,children:(0,E.jsx)(`path`,{d:`M0 0 L10 5 L0 10 z`,className:`sa-arrowhead`})})}),f.map((e,t)=>{let n=g.get(e.from),r=g.get(e.to);if(!n||!r)return null;let i=tl(n,r),a=el(n,r);return(0,E.jsx)(`line`,{className:`sa-edge`,x1:i.x,y1:i.y,x2:a.x,y2:a.y,markerEnd:`url(#sa-arrow-${u})`},t)}),h.map(e=>{let t=e.cy+Hc,n=typeof e.label==`string`&&e.label?e.label:e.id||`Node`;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`g`,{transform:`translate(${e.cx} ${t})`,children:rl(e.kind,Uc[e.kind]??Uc.service,Wc[e.kind]??Wc.service)}),(0,E.jsxs)(`text`,{x:e.cx,y:t+Vc/2+24,className:`sa-label`,textAnchor:`middle`,children:[n.length>Gc&&(0,E.jsx)(`title`,{children:n}),qc(n,Gc)]}),e.sub&&(0,E.jsx)(`text`,{x:e.cx,y:t+Vc/2+44,className:`sa-sub`,textAnchor:`middle`,children:qc(e.sub,Kc)})]},e.id)}),f.map((e,t)=>{let n=g.get(e.from),r=g.get(e.to);if(!n||!r)return null;let i=tl(n,r),a=el(n,r),o=(i.x+a.x)/2,s=(i.y+a.y)/2,c=[e.label,e.protocol].filter(e=>typeof e==`string`&&e).join(` · `);return c?(0,E.jsx)(`text`,{x:o,y:s-34,className:`dg-edge-label`,textAnchor:`middle`,children:qc(c,26)},t):null})]})}),s&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(s)})]})}var al=156,$=40,ol=10,sl=14,cl=20,ll=22,ul=20,dl=4,fl=4,pl=new Set([`process`,`datastore`,`external-entity`]);function ml(e){return pl.has(e)?e:`process`}var hl=new Set([`spoofing`,`tampering`,`repudiation`,`info-disclosure`,`dos`,`elevation`]),gl={spoofing:`Spoofing`,tampering:`Tampering`,repudiation:`Repudiation`,"info-disclosure":`Info disclosure`,dos:`Denial of service`,elevation:`Elevation of privilege`},_l={spoofing:`S`,tampering:`T`,repudiation:`R`,"info-disclosure":`I`,dos:`D`,elevation:`E`},vl=16;function yl(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function bl(e){return e>0?e*$+(e-1)*ol:$}function xl(e){let t=(0,I.c)(3),{kind:n}=e;switch(n){case`datastore`:{let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,E.jsxs)(`g`,{className:`tm-glyph`,children:[(0,E.jsx)(`line`,{x1:-6,y1:-4,x2:6,y2:-4}),(0,E.jsx)(`line`,{x1:-6,y1:4,x2:6,y2:4})]}),t[0]=e):e=t[0],e}case`external-entity`:{let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,E.jsx)(`g`,{className:`tm-glyph`,children:(0,E.jsx)(`rect`,{x:-6,y:-6,width:12,height:12})}),t[1]=e):e=t[1],e}default:{let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,E.jsx)(`g`,{className:`tm-glyph`,children:(0,E.jsx)(`circle`,{r:6})}),t[2]=e):e=t[2],e}}}function Sl({title:e,icon:t=`shield`,iconColor:n=`var(--presence)`,assets:r,boundaries:o,threats:s,footer:c,delay:l}){let u=i[t]||i.shield,d=(0,T.useMemo)(()=>(Array.isArray(r)?r:[]).map((e,t)=>{if(!e||typeof e!=`object`)return null;let n=e,r=typeof n.name==`string`?n.name.trim():``;return r?{id:typeof n.id==`string`&&n.id.trim()?n.id.trim():`asset-${t}`,name:r,kind:ml(n.kind)}:null}).filter(e=>e!==null),[r]),f=(0,T.useMemo)(()=>(Array.isArray(s)?s:[]).map((e,t)=>{if(!e||typeof e!=`object`)return null;let n=e,r=typeof n.assetId==`string`?n.assetId.trim():``;return r?{key:t,assetId:r,stride:hl.has(n.stride)?n.stride:void 0,mitigation:typeof n.mitigation==`string`?n.mitigation.trim():``,status:n.status===`mitigated`?`mitigated`:`open`}:null}).filter(e=>e!==null),[s]),p=(0,T.useMemo)(()=>new Map(d.map(e=>[e.id,e])),[d]),m=(0,T.useMemo)(()=>{let e=new Set(d.map(e=>e.id));return(Array.isArray(o)?o:[]).map((t,n)=>{if(!t||typeof t!=`object`)return null;let r=typeof t.label==`string`?t.label.trim():``;return r?{label:r,contains:(Array.isArray(t.contains)?t.contains:[]).filter(t=>typeof t==`string`&&e.has(t)),key:n}:null}).filter(e=>e!==null)},[o,d]),h=(0,T.useMemo)(()=>{if(m.length===0)return d.length>0?[{key:`all`,label:null,dashed:!1,assets:d}]:[];let e=new Map;m.forEach((t,n)=>{for(let r of new Set(t.contains)){let t=e.get(r);t?t.push(n):e.set(r,[n])}});let t=m.map(e=>({key:`b-${e.key}`,label:e.label,dashed:!0,assets:[]}));for(let n of d)for(let r of e.get(n.id)??[])t[r].assets.push(n);let n=d.filter(t=>!e.has(t.id));return n.length>0&&t.push({key:`unassigned`,label:`Unboundaried`,dashed:!1,assets:n}),t},[m,d]),{placedLanes:g,chips:_,vbW:v,vbH:y}=(0,T.useMemo)(()=>{let e=Math.max(1,Math.min(dl,h.length)),t=[];for(let n=0;n<h.length;n+=e)t.push(h.slice(n,n+e));let n=[],r=[],i=ul;for(let e of t){let t=0;for(let n of e){let e=(n.label?cl:0)+28+bl(n.assets.length);t=Math.max(t,e)}e.forEach((e,t)=>{let a=e.label?cl:0,o=a+28+bl(e.assets.length),s=ul+t*206;n.push({...e,x:s,y:i,w:184,h:o}),e.assets.forEach((e,t)=>{r.push({asset:e,x:s+sl,y:i+a+sl+t*50})})}),i+=t+ll}return{placedLanes:n,chips:r,vbW:40+e*184+Math.max(0,e-1)*ll,vbH:Math.max(140,i-ll+ul)}},[h]),b=(0,T.useMemo)(()=>{let e=new Map;for(let t of f){if(!p.has(t.assetId))continue;let n=e.get(t.assetId)??[];n.push(t),e.set(t.assetId,n)}return e},[f,p]);return(0,E.jsxs)(`div`,{className:`card reveal dg-card`,style:{"--delay":(l||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),_.length===0?(0,E.jsx)(`p`,{className:`tm-empty`,children:`No assets to diagram.`}):(0,E.jsx)(`div`,{className:`dg-stage tm-stage`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${v} ${y}`,className:`dg-svg`,role:`img`,"aria-label":e,preserveAspectRatio:`xMidYMid meet`,children:[g.map(e=>(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:e.x,y:e.y,width:e.w,height:e.h,rx:12,className:e.dashed?`tm-boundary`:`tm-lane-plain`}),e.label&&(0,E.jsx)(`text`,{x:e.x+sl,y:e.y+15,className:`tm-lane-lbl`,children:yl(e.label,22)}),e.assets.length===0&&(0,E.jsx)(`text`,{x:e.x+e.w/2,y:e.y+e.h/2+4,textAnchor:`middle`,className:`tm-lane-empty`,children:`No assets`})]},e.key)),_.map(e=>{let t=e.x,n=e.y,r=b.get(e.asset.id)??[],i=r.slice(0,fl),a=r.length-i.length;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`rect`,{x:t,y:n,width:al,height:$,rx:9,className:`tm-chip`}),(0,E.jsx)(`g`,{transform:`translate(${t+17} ${n+$/2})`,children:(0,E.jsx)(xl,{kind:e.asset.kind})}),(0,E.jsxs)(`text`,{x:t+32,y:n+$/2+4,className:`tm-chip-lbl`,children:[e.asset.name.length>vl&&(0,E.jsx)(`title`,{children:e.asset.name}),yl(e.asset.name,vl)]}),i.map((e,r)=>(0,E.jsx)(`circle`,{cx:t+al-9-r*10,cy:n+8,r:3.4,className:e.status===`open`?`tm-mark tm-mark--open`:`tm-mark`,children:(0,E.jsx)(`title`,{children:(e.stride?gl[e.stride]:`Threat`)+(e.status===`open`?` · open`:` · mitigated`)})},e.key)),a>0&&(0,E.jsxs)(`text`,{x:t+al-9-i.length*10,y:n+11,textAnchor:`end`,className:`tm-mark-more`,children:[`+`,a]})]},e.asset.id)})]})}),f.length>0&&(0,E.jsx)(`div`,{className:`tm-register`,children:f.map(e=>{let t=p.get(e.assetId);return(0,E.jsxs)(`div`,{className:`tm-row`,children:[(0,E.jsxs)(`div`,{className:`tm-row-head`,children:[(0,E.jsx)(`span`,{className:`tm-row-stride`,title:e.stride?gl[e.stride]:void 0,children:e.stride?_l[e.stride]:`?`}),(0,E.jsx)(`span`,{className:`tm-row-asset`,children:t?t.name:`Unknown asset`}),(0,E.jsx)(`span`,{className:`tm-row-cat`,children:e.stride?gl[e.stride]:`Unspecified`}),(0,E.jsx)(`span`,{className:e.status===`open`?`tm-row-status tm-row-status--open`:`tm-row-status tm-row-status--mitigated`,children:e.status===`open`?`Open`:`Mitigated`})]}),(0,E.jsx)(`span`,{className:`tm-row-mitigation`,children:e.mitigation||`—`})]},e.key)})}),c&&(0,E.jsx)(`div`,{className:`dg-foot`,dangerouslySetInnerHTML:a(c)})]})}function Cl(e){let t=(0,I.c)(16),{kind:n,name:r,conn:i,text:a}=e,o=`toul-role toul-role--${n}`,s;t[0]===n?s=t[1]:(s={gridArea:n},t[0]=n,t[1]=s);let c;t[2]===i?c=t[3]:(c=i&&(0,E.jsx)(`span`,{className:`toul-role-conn`,children:i}),t[2]=i,t[3]=c);let l;t[4]===r?l=t[5]:(l=(0,E.jsx)(`span`,{className:`toul-role-name`,children:r}),t[4]=r,t[5]=l);let u;t[6]!==c||t[7]!==l?(u=(0,E.jsxs)(`div`,{className:`toul-role-head`,children:[c,l]}),t[6]=c,t[7]=l,t[8]=u):u=t[8];let d;t[9]===a?d=t[10]:(d=(0,E.jsx)(`p`,{className:`toul-role-text`,children:a}),t[9]=a,t[10]=d);let f;return t[11]!==o||t[12]!==s||t[13]!==u||t[14]!==d?(f=(0,E.jsxs)(`div`,{className:o,style:s,children:[u,d]}),t[11]=o,t[12]=s,t[13]=u,t[14]=d,t[15]=f):f=t[15],f}function wl({title:e,icon:t=`proof`,iconColor:n=`var(--presence)`,claim:r,grounds:o,warrant:s,backing:c,qualifier:l,rebuttal:u,footer:d,delay:f}){let p=i[t]||i.proof;return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(f||0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(p,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`toul`,children:(0,E.jsxs)(`div`,{className:`toul-grid`,children:[o&&(0,E.jsx)(Cl,{kind:`grounds`,name:`Grounds`,text:o}),s&&(0,E.jsx)(Cl,{kind:`warrant`,name:`Warrant`,conn:`Since`,text:s}),c&&(0,E.jsx)(Cl,{kind:`backing`,name:`Backing`,conn:`On account of`,text:c}),(0,E.jsxs)(`div`,{className:`toul-bridge`,style:{gridArea:`bridge`},"aria-hidden":`true`,children:[(0,E.jsx)(`span`,{className:`toul-so`,children:`so`}),l&&(0,E.jsx)(`span`,{className:`toul-qual`,children:l}),(0,E.jsx)(`span`,{className:`toul-arrow`})]}),r&&(0,E.jsx)(Cl,{kind:`claim`,name:`Claim`,text:r}),u&&(0,E.jsx)(Cl,{kind:`rebuttal`,name:`Rebuttal`,conn:`Unless`,text:u})]})}),d&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:a(d)})]})}var Tl=170,El=24,Dl=48,Ol=48,kl=18,Al=15,jl=16;function Ml(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function Nl(e,t){if(e.length===0||t.length===0)return{placed:[],connectors:[],columnX:[],W:0,H:0};let n=Math.max(e.length,Math.max(...t.map(e=>e.round))+1),r=new Map;for(let e of t){let t=Math.max(0,Math.round(e.round)),n=r.get(t);n?n.push(e):r.set(t,[e])}for(let e of r.values())e.sort((e,t)=>e.slot-t.slot);let i=e=>40+e*66+Dl/2,a=new Map;for(let e of r.get(0)??[])a.set(e.id,i(e.slot));for(let e=1;e<n;e++){let t=new Map((r.get(e-1)??[]).map(e=>[e.slot,e]));for(let n of r.get(e)??[]){let e=t.get(n.slot*2),r=t.get(n.slot*2+1),o=e?a.get(e.id):void 0,s=r?a.get(r.id):void 0,c=o!==void 0&&s!==void 0?(o+s)/2:o??s??i(n.slot);a.set(n.id,c)}}let o=Array.from({length:n},(e,t)=>kl+t*218),s=[];for(let e=0;e<n;e++)for(let t of r.get(e)??[])s.push({...t,x:o[e],y:a.get(t.id)});let c=[];for(let e=1;e<n;e++){let t=new Map((r.get(e-1)??[]).map(e=>[e.slot,e])),n=o[e-1]+Tl,i=n+Ol/2,s=o[e];for(let o of r.get(e)??[]){let e=t.get(o.slot*2),r=t.get(o.slot*2+1),l=a.get(o.id);if(e&&r){let t=a.get(e.id),u=a.get(r.id);c.push({key:`feed-${o.id}`,d:`M ${n} ${t} H ${i} V ${u} H ${n}`}),c.push({key:`stub-${o.id}`,d:`M ${i} ${l} H ${s}`})}else if(e||r){let t=a.get((e??r).id);c.push({key:`feed-${o.id}`,d:`M ${n} ${t} H ${i} V ${l} H ${s}`})}}}let l=Math.max(...s.map(e=>e.y))+Dl/2+kl;return{placed:s,connectors:c,columnX:o,W:kl+n*Tl+(n-1)*Ol+kl,H:l}}function Pl(e){let t=(0,I.c)(4),{d:n,delay:r}=e,i=(0,T.useRef)(null),a;t[0]===r?a=t[1]:(a={delay:r},t[0]=r,t[1]=a),c(i,a);let o;return t[2]===n?o=t[3]:(o=(0,E.jsx)(`path`,{ref:i,d:n,className:`dg-tb-connector`}),t[2]=n,t[3]=o),o}function Fl(e){let t=(0,I.c)(16),{name:n,score:r,rowY:i,isWinner:a,isDecided:o}=e,s=n??(o?`BYE`:`TBD`),c=`dg-tb-name`+(n?a?` dg-tb-name-winner`:o?` dg-tb-name-loser`:``:` dg-tb-name-tbd`),l=`dg-tb-score`+(a?` dg-tb-score-winner`:o?` dg-tb-score-loser`:``),u;t[0]===n?u=t[1]:(u=n&&n.length>Al&&(0,E.jsx)(`title`,{children:n}),t[0]=n,t[1]=u);let d;t[2]===s?d=t[3]:(d=Ml(s,Al),t[2]=s,t[3]=d);let f;t[4]!==c||t[5]!==i||t[6]!==u||t[7]!==d?(f=(0,E.jsxs)(`text`,{x:12,y:i,dominantBaseline:`central`,className:c,children:[u,d]}),t[4]=c,t[5]=i,t[6]=u,t[7]=d,t[8]=f):f=t[8];let p;t[9]!==i||t[10]!==r||t[11]!==l?(p=r!==void 0&&(0,E.jsx)(`text`,{x:158,y:i,dominantBaseline:`central`,textAnchor:`end`,className:l,children:r}),t[9]=i,t[10]=r,t[11]=l,t[12]=p):p=t[12];let m;return t[13]!==f||t[14]!==p?(m=(0,E.jsxs)(E.Fragment,{children:[f,p]}),t[13]=f,t[14]=p,t[15]=m):m=t[15],m}function Il({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,rounds:r,matchups:o,double:s=!1,footer:c,delay:l}){let u=i[t]??i.share,d=(0,T.useMemo)(()=>Nl(r,o),[r,o]);return d.placed.length===0?(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(l??0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`p`,{className:`dg-tb-empty`,children:`No matchups yet.`})]}):(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(l??0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e,s&&(0,E.jsx)(`span`,{className:`dg-tb-note`,children:`single-elimination view`})]}),(0,E.jsx)(`div`,{className:`dg-tb-wrap`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${d.W} ${d.H}`,width:`100%`,className:`dg-tb-svg`,role:`img`,"aria-label":e??`tournament bracket`,children:[r.map((e,t)=>d.columnX[t]===void 0?null:(0,E.jsxs)(`text`,{x:d.columnX[t]+Tl/2,y:15,textAnchor:`middle`,className:`dg-tb-round-label`,children:[e.length>jl&&(0,E.jsx)(`title`,{children:e}),Ml(e,jl)]},`hdr-${t}`)),d.connectors.map((e,t)=>(0,E.jsx)(Pl,{d:e.d,delay:t*45},e.key)),d.placed.map((e,t)=>{let n=e.winner!==void 0,r=e.y-Dl/2;return(0,E.jsx)(`g`,{transform:`translate(${e.x} ${r})`,children:(0,E.jsxs)(`g`,{className:`dg-tb-box m-stagger-item m-fade-rise`,style:{"--i":t},children:[(0,E.jsx)(`rect`,{width:Tl,height:Dl,rx:7,className:`dg-tb-box-bg`}),n&&e.winner===`a`&&(0,E.jsx)(`rect`,{x:1,y:1,width:168,height:23,rx:6,className:`dg-tb-row-winner`}),n&&e.winner===`b`&&(0,E.jsx)(`rect`,{x:1,y:El,width:168,height:23,rx:6,className:`dg-tb-row-winner`}),(0,E.jsx)(`line`,{x1:0,y1:El,x2:Tl,y2:El,className:`dg-tb-divider`}),(0,E.jsx)(Fl,{name:e.a,score:e.scoreA,rowY:El/2,isWinner:n&&e.winner===`a`,isDecided:n}),(0,E.jsx)(Fl,{name:e.b,score:e.scoreB,rowY:36,isWinner:n&&e.winner===`b`,isDecided:n})]})},e.id)})]})}),c&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(c)})]})}var Ll=14,Rl=44,zl=58,Bl=10,Vl=6;function Hl(e){let t=0,n={char:``,id:`n0`,children:new Map,isEnd:!1};for(let r of e.slice(0,Bl)){let e=r.slice(0,Vl),i=n;for(let n of e)i.children.has(n)||(t+=1,i.children.set(n,{char:n,id:`n${t}`,children:new Map,isEnd:!1})),i=i.children.get(n);i.isEnd=!0}return n}function Ul(e){if(e.children.size===0)return 1;let t=0;for(let n of e.children.values())t+=Ul(n);return t}function Wl(e){let t=[],n=Math.max(1,Ul(e)),r=0,i=0,a=(e,n,o,s)=>{if(e.children.size===0){let a=34+i*Rl,c=34+n*zl;t.push({id:e.id,char:e.char,x:a,y:c,isEnd:e.isEnd,parentId:o,edgeChar:s}),r=Math.max(r,n),i+=1;return}let c=i;for(let[t,r]of e.children)a(r,n+1,e.id,t);let l=34+(c+(i-1))/2*Rl,u=34+n*zl;t.push({id:e.id,char:e.char,x:l,y:u,isEnd:e.isEnd,parentId:o,edgeChar:s}),r=Math.max(r,n)};return a(e,0,void 0,``),{placed:t,totalSlots:n,maxDepth:r}}function Gl({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,words:r,highlight:o,footer:s,delay:c}){let l=i[t]??i.share,{placed:u,totalSlots:d,maxDepth:f}=(0,T.useMemo)(()=>Wl(Hl(r)),[r]),p=(0,T.useMemo)(()=>{if(!o)return new Set;let e=Hl(r),t=new Set;t.add(e.id);let n=e;for(let e of o.slice(0,Vl)){let r=n.children.get(e);if(!r)break;t.add(r.id),n=r}return t},[r,o]),m=(0,T.useMemo)(()=>new Map(u.map(e=>[e.id,e])),[u]),h=40+Math.max(1,d)*Rl,g=40+(f+1)*zl;return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(c??0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`tri-wrap`,children:(0,E.jsxs)(`svg`,{viewBox:`0 0 ${h} ${g}`,className:`tri-svg`,role:`img`,"aria-label":e??`Trie diagram`,children:[u.map(e=>{if(!e.parentId)return null;let t=m.get(e.parentId);if(!t)return null;let n=p.has(e.id)&&p.has(e.parentId),r=(t.x+e.x)/2,i=(t.y+e.y)/2;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`line`,{x1:t.x,y1:t.y,x2:e.x,y2:e.y,className:`tri-edge`+(n?` tri-edge-active`:``)}),(0,E.jsx)(`text`,{x:r,y:i,textAnchor:`middle`,dominantBaseline:`middle`,className:`tri-edge-label`+(n?` tri-edge-label-active`:``),children:e.edgeChar})]},`edge-${e.id}`)}),u.map(e=>{let t=p.has(e.id),n=!e.parentId;return(0,E.jsxs)(`g`,{children:[e.isEnd&&(0,E.jsx)(`circle`,{cx:e.x,cy:e.y,r:19,className:`tri-node-end-ring`+(t?` tri-node-end-ring-active`:``)}),(0,E.jsx)(`circle`,{cx:e.x,cy:e.y,r:Ll,className:`tri-node`+(t?` tri-node-active`:``)+(n?` tri-node-root`:``)}),!n&&(0,E.jsx)(`text`,{x:e.x,y:e.y+5,textAnchor:`middle`,className:`tri-label`+(t?` tri-label-active`:``),children:e.char})]},`node-${e.id}`)})]})}),s&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:a(s)})]})}var Kl=100,ql=64,Jl={hot:`c-hot`,neutral:`c-neutral`,ground:`c-ground`,traveler:`c-traveler`};function Yl(e){switch(e){case`breaker`:return(0,E.jsxs)(`g`,{className:`dg-wir-glyph`,children:[(0,E.jsx)(`rect`,{x:-6,y:-7,width:12,height:14,rx:1.6,fill:`none`}),(0,E.jsx)(`line`,{x1:-3.5,y1:-3.5,x2:3.5,y2:-1}),(0,E.jsx)(`circle`,{cx:0,cy:3.5,r:1,className:`dg-wir-fill`})]});case`switch`:return(0,E.jsxs)(`g`,{className:`dg-wir-glyph`,children:[(0,E.jsx)(`circle`,{cx:-5,cy:0,r:1.1,className:`dg-wir-fill`}),(0,E.jsx)(`circle`,{cx:5,cy:0,r:1.1,className:`dg-wir-fill`}),(0,E.jsx)(`line`,{x1:-5,y1:0,x2:4,y2:-5})]});case`switch3way`:return(0,E.jsxs)(`g`,{className:`dg-wir-glyph`,children:[(0,E.jsx)(`circle`,{cx:-5,cy:0,r:1.1,className:`dg-wir-fill`}),(0,E.jsx)(`circle`,{cx:5,cy:-3,r:1.1,className:`dg-wir-fill`}),(0,E.jsx)(`circle`,{cx:5,cy:3,r:1.1,className:`dg-wir-fill`}),(0,E.jsx)(`line`,{x1:-5,y1:0,x2:4,y2:-4})]});case`outlet`:return(0,E.jsxs)(`g`,{className:`dg-wir-glyph`,children:[(0,E.jsx)(`circle`,{cx:0,cy:0,r:6,fill:`none`}),(0,E.jsx)(`line`,{x1:-2.2,y1:-2.6,x2:-2.2,y2:1.4}),(0,E.jsx)(`line`,{x1:2.2,y1:-2.6,x2:2.2,y2:1.4}),(0,E.jsx)(`line`,{x1:0,y1:3,x2:0,y2:4.4})]});case`gfci`:return(0,E.jsxs)(`g`,{className:`dg-wir-glyph`,children:[(0,E.jsx)(`rect`,{x:-6,y:-7,width:12,height:14,rx:1.6,fill:`none`}),(0,E.jsx)(`circle`,{cx:0,cy:-2.4,r:1.5,fill:`none`}),(0,E.jsx)(`circle`,{cx:0,cy:3,r:1.5,fill:`none`}),(0,E.jsx)(`text`,{x:7.5,y:-4,className:`dg-wir-tick`,children:`G`})]});case`light`:return(0,E.jsxs)(`g`,{className:`dg-wir-glyph`,children:[(0,E.jsx)(`circle`,{cx:0,cy:0,r:6,fill:`none`}),(0,E.jsx)(`line`,{x1:-4.2,y1:-4.2,x2:4.2,y2:4.2}),(0,E.jsx)(`line`,{x1:-4.2,y1:4.2,x2:4.2,y2:-4.2})]});case`panel`:return(0,E.jsxs)(`g`,{className:`dg-wir-glyph`,children:[(0,E.jsx)(`rect`,{x:-7,y:-8,width:14,height:16,rx:1.6,fill:`none`}),(0,E.jsx)(`line`,{x1:-7,y1:-2,x2:7,y2:-2}),(0,E.jsx)(`line`,{x1:-7,y1:2.5,x2:7,y2:2.5}),(0,E.jsx)(`line`,{x1:0,y1:-8,x2:0,y2:8})]});case`motor`:return(0,E.jsxs)(`g`,{className:`dg-wir-glyph`,children:[(0,E.jsx)(`circle`,{cx:0,cy:0,r:6.5,fill:`none`}),(0,E.jsx)(`text`,{x:0,y:2.6,className:`dg-wir-mark`,textAnchor:`middle`,children:`M`})]});case`ground`:return(0,E.jsxs)(`g`,{className:`dg-wir-glyph`,children:[(0,E.jsx)(`line`,{x1:0,y1:-7,x2:0,y2:0}),(0,E.jsx)(`line`,{x1:-5,y1:0,x2:5,y2:0,strokeWidth:1.4}),(0,E.jsx)(`line`,{x1:-3,y1:2.6,x2:3,y2:2.6}),(0,E.jsx)(`line`,{x1:-1.4,y1:5,x2:1.4,y2:5})]});default:return(0,E.jsx)(`circle`,{cx:0,cy:0,r:2.2,className:`dg-wir-fill`})}}function Xl({title:e,icon:t=`spark`,iconColor:n=`var(--presence)`,nodes:r,wires:o,caption:s,footer:c,delay:l}){let u=i[t]||i.spark,d=(0,T.useMemo)(()=>{let e=Math.max(1,r.length),t=Math.min(e,Math.ceil(Math.sqrt(e)*1.4)),n=Math.ceil(e/t),i=Kl/(t+1),a=ql/(n+1),o={};return r.forEach((e,n)=>{if(e.x!==void 0&&e.y!==void 0)o[e.id]={x:e.x,y:e.y};else{let r=Math.floor(n/t),s=n%t;o[e.id]={x:i*(s+1),y:a*(r+1)}}}),o},[r]);return(0,E.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(l||0)+`ms`},children:[e&&(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,E.jsx)(`div`,{className:`dg-wir`,children:(0,E.jsxs)(`svg`,{viewBox:`-8 -10 116 86`,className:`dg-wir-svg`,role:`img`,"aria-label":e||`wiring diagram`,children:[o.map((e,t)=>{let n=d[e.from],r=d[e.to];if(!n||!r)return null;let i=Jl[e.conductor??`hot`],a=r.x,o=n.y;return(0,E.jsxs)(`g`,{children:[(0,E.jsx)(`polyline`,{points:`${n.x},${n.y} ${a},${o} ${r.x},${r.y}`,className:`dg-wir-wire ${i}`,fill:`none`}),e.gauge&&(0,E.jsx)(`text`,{x:(n.x+a)/2,y:o-1.6,className:`dg-wir-gauge`,textAnchor:`middle`,children:e.gauge})]},t)}),r.map(e=>{let t=d[e.id];return t?(0,E.jsxs)(`g`,{transform:`translate(${t.x} ${t.y})`,children:[Yl(e.kind),e.label&&(0,E.jsx)(`text`,{x:0,y:13,className:`dg-wir-lbl`,textAnchor:`middle`,children:e.label})]},e.id):null})]})}),(0,E.jsx)($l,{wires:o}),s&&(0,E.jsx)(`p`,{className:`dg-wir-cap`,children:s}),c&&(0,E.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:a(c)})]})}var Zl={hot:`Hot`,neutral:`Neutral`,ground:`Ground`,traveler:`Traveler`},Ql=[`hot`,`neutral`,`ground`,`traveler`];function $l(e){let t=(0,I.c)(9),{wires:n}=e,r;t[0]===n?r=t[1]:(r=new Set(n.map(tu)),t[0]=n,t[1]=r);let i=r,a,o,s;if(t[2]!==i){s=Symbol.for(`react.early_return_sentinel`);bb0:{let e=Ql.filter(e=>i.has(e));if(e.length<2){s=null;break bb0}a=`dg-wir-legend`,o=e.map(eu)}t[2]=i,t[3]=a,t[4]=o,t[5]=s}else a=t[3],o=t[4],s=t[5];if(s!==Symbol.for(`react.early_return_sentinel`))return s;let c;return t[6]!==a||t[7]!==o?(c=(0,E.jsx)(`div`,{className:a,children:o}),t[6]=a,t[7]=o,t[8]=c):c=t[8],c}function eu(e){return(0,E.jsxs)(`span`,{className:`dg-wir-legend-item`,children:[(0,E.jsx)(`span`,{className:`dg-wir-swatch ${Jl[e]}`}),Zl[e]]},e)}function tu(e){return e.conductor??`hot`}function nu(e){let t=0;for(let n of e.nodes){n.receipt&&(t+=1),n.series?.receipt&&(t+=1);for(let e of n.series?.points??[])e.receipt&&(t+=1);for(let e of n.children??[])e.receipt&&(t+=1)}for(let n of e.edges)t+=n.receipts?.length??+!!n.receipt,n.counter&&(t+=1);return t}var ru=(e,t,n)=>`${e} ${e===1?t:n}`;function iu({title:e,world:t,outcome:n,delay:r,blockId:a}){let o=(0,T.useMemo)(()=>t?nu(t):0,[t]),s=(0,T.useSyncExternalStore)(p,h,()=>!1),c=t?.provenance.illustrative===!0,l=t?.nodes.find(e=>e.id===t.outcomeId)?.label??n,u=t?.nodes.some(e=>_(e.tier))===!0;return(0,E.jsxs)(`div`,{className:`card reveal dg-card wp-card`,style:{"--delay":(r||0)+`ms`},children:[(0,E.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,E.jsx)(i.globe,{className:`ic`,style:{color:`var(--presence)`}}),` Living answer`,c&&(0,E.jsx)(`span`,{className:`wp-badge`,children:g.illustrative})]}),(0,E.jsx)(`h3`,{className:`wp-question`,children:e}),l&&(0,E.jsxs)(`p`,{className:`wp-outcome`,children:[`Explains: `,l]}),t?(0,E.jsxs)(`p`,{className:`wp-meta`,children:[ru(t.nodes.length,`cause`,`causes`),` ·`,` `,ru(t.edges.length,`link`,`links`),` ·`,` `,o>0?ru(o,`receipt`,`receipts`):u?`no receipts yet`:`structure only, no numbers`]}):(0,E.jsx)(`p`,{className:`wp-meta`,children:`Built when you open it — one model call, then it's kept.`}),s&&a&&(0,E.jsxs)(`button`,{type:`button`,className:`wp-open`,onClick:()=>m(a),children:[`Open the world`,(0,E.jsx)(i.chevR,{className:`ic`})]})]})}var au=e({diagramsRegistry:()=>ou}),ou={algorithmtrace:l(M),analogymap:l(te),argumentmap:l(re),binarytree:l(he),castmap:l(Oe),causationchain:l(tt),circuitdiagram:l(dt),classdiagram:l(It),controlblockdiagram:l(rn),cyclewheel:l(_n),datapipeline:l(Gn),datastructure:l(dr),diagramflow:l(Ir),dptable:l($r),erdiagram:l(ei),fishbone:l(di),fiveforces:l(Bi),fivewhychain:l(ra),foodweb:l(pa),graphtrace:l(xa),hashtable:l(ja),logicgates:l(Wa),mindshape:l(f),nnarchitecture:l(oo),pipingschematic:l(uo),plasmidmap:l(wo),primefactortree:l(Lo),probabilitytree:l(rs),prooftree:l(ms),protocolstack:l(ws),recursiontree:l(Rs),sequencediagram:l(Xs),sortingviz:l(tc),gridtrace:l(sc),statemachine:l(lc),synthesisroute:l(Nc),sysarchdiagram:l(il),threatmodel:l(Sl),toulmin:l(wl),tournamentbracket:l(Il),trie:l(Gl),wiringdiagram:l(Xl),world:(e,t)=>(0,E.jsx)(iu,{...e,delay:t.delay,blockId:t.blockId})};export{au as n,ou as t};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{t as n}from"./jsx-runtime-DeHZSEgm.js";import{n as r}from"./icons-gLFQTv74.js";import{t as i}from"./richText-BkxJhl9N.js";import{i as a,n as o,r as s}from"./format-q0LwBjID.js";import{a as c,i as l,n as u,r as d,t as f}from"./scale-Bcgfo6Hp.js";import{n as p,t as m}from"./BlockEmpty-B82uCse8.js";import{t as h}from"./empty-BO1NC9qY.js";import{t as g}from"./registry-types-D3q_LrlV.js";var _=t();function v(e){return!e.children||!e.children.length?Math.max(0,e.value):e.children.reduce((e,t)=>e+v(t),0)}function y(e,t,n,r,i){let a=e.map(e=>({node:e,area:v(e)})).filter(e=>e.area>0).sort((e,t)=>t.area-e.area),o=a.reduce((e,t)=>e+t.area,0);if(!a.length||o<=0||r<=0||i<=0)return[];let s=r*i/o,c=a.map(e=>({node:e.node,area:e.area*s})),l=[];return S(c,0,t,n,r,i,l),l}function b(e,t){let n=e/t;return t>n?t/n:n/t}function x(e,t,n,r){if(e<=0||r<=0)return 1/0;let i=e/r,a=1,o=b(t,i);o>a&&(a=o);let s=b(n,i);return s>a&&(a=s),a}function S(e,t,n,r,i,a,o){if(t>=e.length||i<=0||a<=0)return;let s=i>=a,c=s?a:i,l=e[t].area,u=l,d=l,f=l,p=x(u,d,f,c),m=t+1;for(;m<e.length;m++){let{area:t}=e[m],n=u+t,r=t<d?t:d,i=t>f?t:f,a=x(n,r,i,c);if(!(a<=p))break;u=n,d=r,f=i,p=a}let h=u/c,g=0;for(let i=t;i<m;i++){let t=e[i],a=t.area/h;s?o.push({node:t.node,x:n,y:r+g,w:h,h:a}):o.push({node:t.node,x:n+g,y:r,w:a,h}),g+=a}m<e.length&&(s?S(e,m,n+h,r,i-h,a,o):S(e,m,n,r+h,i,a-h,o))}var C=n(),w=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-soft)`,`var(--danger)`];function T(e,t){return e.color||w[t%w.length]}function E({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,root:o,unit:s=``,footer:c,delay:l}){let u=r[t]||r.layers,[d,f]=(0,_.useState)([]),[p,h]=(0,_.useState)(null),g=(0,_.useMemo)(()=>{let e=o;for(let t of d)e.children&&e.children[t]&&(e=e.children[t]);return e},[o,d]),b=(0,_.useMemo)(()=>g.children||[],[g]),x=(0,_.useMemo)(()=>y(b,0,0,540,280),[b]),S=x[0]?.node,w=(0,_.useMemo)(()=>{let e=[{label:o.label,depth:-1}],t=o;return d.forEach((n,r)=>{t.children&&t.children[n]&&(t=t.children[n],e.push({label:t.label,depth:r}))}),e},[o,d]);return!o.children?.length||v(o)<=0?(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(l||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(m,{})]}):(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(l||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(`div`,{className:`c1-crumbs`,children:w.map((e,t)=>(0,C.jsxs)(`span`,{className:`c1-crumb-wrap`,children:[(0,C.jsx)(`button`,{className:`c1-crumb`+(t===w.length-1?` active`:``),onClick:()=>f(d.slice(0,t)),children:e.label}),t<w.length-1&&(0,C.jsx)(r.chevR,{className:`c1-crumb-sep`})]},t))}),(0,C.jsx)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 540 280`,width:`100%`,style:{display:`block`},className:`c1-treemap`,children:x.map((e,t)=>{let n=!!(e.node.children&&e.node.children.length),r=p===e.node.label,i=e.x+e.w/2,o=e.y+e.h/2;return(0,C.jsxs)(`g`,{className:`c1-tm-cell`,style:{"--i":t,transformOrigin:`${i}px ${o}px`},onMouseEnter:()=>h(e.node.label),onMouseLeave:()=>h(null),onClick:()=>n&&f([...d,b.indexOf(e.node)]),children:[(0,C.jsx)(`rect`,{className:`c1-tm-rect`,x:e.x+1.5,y:e.y+1.5,width:Math.max(0,e.w-3),height:Math.max(0,e.h-3),rx:8,fill:`color-mix(in oklab, ${T(e.node,t)} ${r?38:20}%, transparent)`,stroke:T(e.node,t),strokeWidth:r?2:1,"data-mark":e.node===S?`circle`:void 0,style:{cursor:n?`pointer`:`default`,transform:r?`scale(1.015)`:void 0,transformOrigin:`${i}px ${o}px`}}),e.w>56&&e.h>30&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`text`,{x:e.x+12,y:e.y+24,fontSize:`13`,fontWeight:`600`,fill:`var(--text-primary)`,children:e.node.label}),(0,C.jsxs)(`text`,{x:e.x+12,y:e.y+42,fontSize:`12`,fill:`var(--text-secondary)`,className:`tab-num`,children:[a(v(e.node),s),n?` ›`:``]})]})]},`${d.join(`-`)}::${t}`)})}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},children:p?(0,C.jsxs)(`span`,{children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:p}),` ·`,` `,a(v(b.find(e=>e.label===p)??{value:0}),s)]}):c?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(c)}):(0,C.jsx)(`span`,{className:`faint`,children:`Click a region to drill in · breadcrumb to step back`})})]})}var D=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-soft)`,`var(--danger)`,`var(--insight-soft)`],O=150,k=150,A=46,ee=34;function j(e,t,n,r){return[e+n*Math.cos(r-Math.PI/2),t+n*Math.sin(r-Math.PI/2)]}function M(e,t,n,r){let[i,a]=j(O,k,r,e),[o,s]=j(O,k,r,t),[c,l]=j(O,k,n,t),[u,d]=j(O,k,n,e),f=+(t-e>Math.PI);return`M${i} ${a} A${r} ${r} 0 ${f} 1 ${o} ${s} L${c} ${l} A${n} ${n} 0 ${f} 0 ${u} ${d} Z`}function te(e,t,n,r,i,a,o,s){if(r>0&&o.push({node:e,a0:t,a1:n,ring:r,color:i,childIdx:a}),r>=s||!e.children)return;let c=e.children.reduce((e,t)=>e+v(t),0)||1,l=t;e.children.forEach((e,u)=>{let d=(n-t)*v(e)/c,f=r===0?D[u%D.length]:i;te(e,l,l+d,r+1,f,r===0?u:a,o,s),l+=d})}function ne({title:e,icon:t=`chart`,iconColor:n=`var(--insight)`,root:a,unit:o=``,footer:s,delay:c}){let l=r[t]||r.chart,[u,d]=(0,_.useState)([]),[f,p]=(0,_.useState)(null),m=(0,_.useMemo)(()=>{let e=a;for(let t of u)e.children?.[t]&&(e=e.children[t]);return e},[a,u]),h=(0,_.useMemo)(()=>{let e=[];return te(m,0,Math.PI*2,0,`var(--presence)`,-1,e,2),e},[m]),g=h.find(e=>e.node.label===f),y=v(m)||1,b=(0,_.useMemo)(()=>{let e=h.filter(e=>e.ring===1);return e.length?e.reduce((e,t)=>v(t.node)>v(e.node)?t:e,e[0]).node.label:null},[h]),x=m.children?.findIndex(e=>e.label===b)??-1;return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(c||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`div`,{className:`c1-sun-wrap`,children:[(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 300 300`,width:`100%`,className:`c1-sunburst`,children:[h.map((e,t)=>{let n=A+(e.ring-1)*ee,r=A+e.ring*ee-3,i=f===e.node.label,a=f&&!i,o=!!(e.ring===1&&e.node.children?.length);return(0,C.jsx)(`path`,{d:M(e.a0,e.a1,n,r),fill:`color-mix(in oklab, ${e.color} ${i?70:38-e.ring*6}%, transparent)`,stroke:e.color,strokeWidth:i?1.6:.8,opacity:a?.4:1,style:{cursor:o?`pointer`:`default`,transition:`opacity var(--m-fast), fill var(--m-fast)`},onMouseEnter:()=>p(e.node.label),onMouseLeave:()=>p(null),onClick:()=>o&&d([...u,e.childIdx])},t)}),(0,C.jsx)(`circle`,{cx:O,cy:k,r:40,fill:`var(--surface-elevated)`,stroke:`var(--line-strong)`,style:{cursor:u.length?`pointer`:`default`},onClick:()=>u.length&&d(u.slice(0,-1))}),(0,C.jsx)(`text`,{x:O,y:146,textAnchor:`middle`,fontSize:`12`,fontWeight:`600`,fill:`var(--text-primary)`,children:m.label}),(0,C.jsx)(`text`,{x:O,y:163,textAnchor:`middle`,fontSize:`11`,fill:`var(--text-muted)`,className:`tab-num`,children:u.length?`‹ back`:o+y.toLocaleString()})]}),(0,C.jsx)(`div`,{className:`c1-sun-legend`,children:(m.children||[]).map((e,t)=>(0,C.jsxs)(`button`,{className:`c1-legend-row`+(f===e.label?` active`:``),onMouseEnter:()=>p(e.label),onMouseLeave:()=>p(null),onClick:()=>e.children?.length&&d([...u,t]),"data-mark":t===x?`circle`:void 0,children:[(0,C.jsx)(`span`,{className:`c1-swatch`,style:{background:D[t%D.length]}}),(0,C.jsx)(`span`,{className:`c1-legend-label`,children:e.label}),(0,C.jsxs)(`span`,{className:`tab-num faint`,children:[Math.round(v(e)/y*100),`%`]})]},t))})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:g?(0,C.jsxs)(`span`,{children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:g.node.label}),` · `,o,v(g.node).toLocaleString(),` ·`,` `,Math.round(v(g.node)/y*100),`% of `,m.label]}):s?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(s)}):(0,C.jsx)(`span`,{className:`faint`,children:`Click a slice to zoom · center to step back`})})]})}var re=540,ie=300,ae=8,oe=12,se=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-soft)`,`var(--danger)`];function ce({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,nodes:a,links:o,unit:s=``,footer:c,delay:l}){let u=r[t]||r.share,[d,f]=(0,_.useState)(null),p=(0,_.useMemo)(()=>{let e=Math.max(0,...a.map(e=>e.layer))+1,t=t=>ae+t/Math.max(1,e-1)*512,n=new Map,r=new Map;o.forEach(e=>{n.set(e.source,(n.get(e.source)||0)+e.value),r.set(e.target,(r.get(e.target)||0)+e.value)});let i=e=>Math.max(n.get(e)||0,r.get(e)||0),s=new Map;a.forEach(e=>{let t=s.get(e.layer)||[];t.push(e),s.set(e.layer,t)});let c=Math.max(0,...[...s.values()].map(e=>e.reduce((e,t)=>e+i(t.id),0))),l=Math.max(0,...[...s.values()].map(e=>e.length)),u=(244-8*Math.max(0,l-1))/(c||1),d=e-1,f=new Map;s.forEach((e,n)=>{let r=e.map(e=>Math.max(8,i(e.id)*u)),a=r.reduce((e,t)=>e+t,0),o=e.length>1?Math.max(0,(244-a)/(e.length-1)):0,s=24;e.forEach((e,a)=>{let c=r[a];f.set(e.id,{x:t(n),y:s,h:c,color:e.color||se[(n+a)%se.length],label:e.label,total:i(e.id),isLast:n===d}),s+=c+o})});let p=new Map,m=new Map,h=o.map((e,t)=>{let i=f.get(e.source),a=f.get(e.target);if(!i||!a)return null;let o=p.get(e.source)||0,s=m.get(e.target)||0,c=e.value/(n.get(e.source)||1)*i.h,l=e.value/(r.get(e.target)||1)*a.h;p.set(e.source,o+c),m.set(e.target,s+l);let u=i.x+oe,d=i.y+o+c/2,h=a.x,g=a.y+s+l/2,_=(u+h)/2;return{id:`${e.source}->${e.target}-${t}`,source:e.source,target:e.target,value:e.value,thick:Math.max(1.5,(c+l)/2),color:i.color,d:`M${u} ${d} C${_} ${d}, ${_} ${g}, ${h} ${g}`}}),g=[...f.entries()],_=g.length>0?g.reduce((e,[t,n])=>n.total>(f.get(e)?.total??-1)?t:e,g[0][0]):null;return{pos:[...f.entries()],linkGeo:h.filter(e=>e!==null),salientId:_}},[a,o]),m=(e,t,n)=>!d||d===e||d===t||d===n;return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(l||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 ${re} ${ie}`,width:`100%`,style:{display:`block`},children:[p.linkGeo.map(e=>{let t=m(e.id,e.source,e.target);return(0,C.jsx)(`path`,{d:e.d,fill:`none`,stroke:e.color,strokeWidth:e.thick,opacity:t?.42:.08,style:{transition:`opacity var(--m-fast)`},onMouseEnter:()=>f(e.id),onMouseLeave:()=>f(null)},e.id)}),p.pos.map(([e,t])=>{let n=!d||d===e||p.linkGeo.some(t=>t.id===d&&(t.source===e||t.target===e));return(0,C.jsxs)(`g`,{onMouseEnter:()=>f(e),onMouseLeave:()=>f(null),style:{cursor:`pointer`},children:[(0,C.jsx)(`rect`,{x:t.x,y:t.y,width:oe,height:t.h,rx:3,fill:t.color,opacity:n?1:.3,"data-mark":e===p.salientId?`circle`:void 0,style:{transition:`opacity var(--m-fast)`}}),(0,C.jsx)(`text`,{x:t.isLast?t.x-5:t.x+oe+5,y:t.y+t.h/2+4,fontSize:`11.5`,fill:`var(--text-secondary)`,textAnchor:t.isLast?`end`:`start`,opacity:n?1:.4,children:t.label})]},e)})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},children:d&&p.linkGeo.find(e=>e.id===d)?(()=>{let e=p.linkGeo.find(e=>e.id===d);return(0,C.jsxs)(`span`,{children:[(0,C.jsxs)(`strong`,{style:{color:`var(--text-primary)`},children:[p.pos.find(([t])=>t===e.source)?.[1].label,` →`,` `,p.pos.find(([t])=>t===e.target)?.[1].label]}),` `,`· `,s,e.value.toLocaleString()]})})():c?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(c)}):(0,C.jsx)(`span`,{className:`faint`,children:`Hover a flow or node to trace the path`})})]})}var le=520,ue=320,de=260,fe=160,pe=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-soft)`,`var(--danger)`];function me({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,nodes:a,edges:o,layout:s=`circle`,footer:c,delay:l}){let u=r[t]||r.share,[d,f]=(0,_.useState)(null),p=(0,_.useMemo)(()=>{let e=new Map;if(s===`grid`){let t=Math.ceil(Math.sqrt(a.length)),n=440/Math.max(1,t-1||1),r=Math.ceil(a.length/t),i=240/Math.max(1,r-1||1);a.forEach((r,a)=>{let o=a%t,s=Math.floor(a/t);e.set(r.id,{x:40+o*n,y:40+s*i})})}else a.forEach((t,n)=>{let r=n/a.length*Math.PI*2-Math.PI/2;e.set(t.id,{x:de+120*Math.cos(r),y:fe+120*Math.sin(r)})});let t=new Map;return a.forEach(e=>t.set(e.id,new Set)),o.forEach(e=>{t.get(e.source)?.add(e.target),t.get(e.target)?.add(e.source)}),{pos:e,adj:t}},[a,o,s]),m=d?p.adj.get(d):null,h=e=>!d||e.source===d||e.target===d,g=e=>!d||e===d||!!m?.has(e),v=(e,t)=>t||pe[(e||0)%pe.length],y=(0,_.useMemo)(()=>a.length?a.reduce((e,t)=>(p.adj.get(t.id)?.size??0)>(p.adj.get(e.id)?.size??0)?t:e,a[0]).id:null,[a,p.adj]);return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(l||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 ${le} ${ue}`,width:`100%`,style:{display:`block`,overflow:`visible`},children:[o.map((e,t)=>{let n=p.pos.get(e.source),r=p.pos.get(e.target);if(!n||!r)return null;let i=h(e);return(0,C.jsx)(`line`,{className:`c1-network-edge`,x1:n.x,y1:n.y,x2:r.x,y2:r.y,stroke:i?`var(--hover-line)`:`var(--grid-line)`,strokeWidth:i&&d?1.8:1,opacity:i?.9:.25,style:{transition:`all var(--m-fast)`,"--i":t,transformOrigin:`${(n.x+r.x)/2}px ${(n.y+r.y)/2}px`}},t)}),a.map((e,t)=>{let n=p.pos.get(e.id),r=g(e.id),i=7+Math.min(7,(e.weight||1)*1.5),a=v(e.group,e.color),o=d===e.id;return(0,C.jsxs)(`g`,{className:`c1-network-node`,style:{cursor:`pointer`,"--i":t,transformOrigin:`${n.x}px ${n.y}px`},onMouseEnter:()=>f(e.id),onMouseLeave:()=>f(null),children:[o&&(0,C.jsx)(`circle`,{cx:n.x,cy:n.y,r:i+6,fill:a,opacity:.18}),(0,C.jsx)(`circle`,{cx:n.x,cy:n.y,r:i,fill:a,opacity:r?1:.3,stroke:`var(--surface-default)`,strokeWidth:2,"data-mark":e.id===y?`circle`:void 0,style:{transition:`opacity var(--m-fast)`}}),(0,C.jsx)(`text`,{x:n.x,y:n.y-i-5,textAnchor:`middle`,fontSize:`10.5`,fill:`var(--text-secondary)`,opacity:r?1:.3,children:e.label})]},e.id)})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},children:d?(0,C.jsxs)(`span`,{children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:a.find(e=>e.id===d)?.label}),` `,`· `,m?.size||0,` connection`,(m?.size||0)===1?``:`s`]}):c?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(c)}):(0,C.jsx)(`span`,{className:`faint`,children:`Hover a node to light up its neighbors`})})]})}var N=150,he=150,ge=110,_e=128,ve=13,ye=[`var(--presence)`,`var(--insight)`,`var(--warning)`];function P(e,t){return[N+t*Math.cos(e-Math.PI/2),he+t*Math.sin(e-Math.PI/2)]}function be(e){return e<=10?ve:Math.max(9,ve-(e-10)*.3)}function xe({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,axes:a,series:o,max:s,footer:c,delay:l}){let u=r[t]||r.chart,[d,f]=(0,_.useState)(new Set),[p,m]=(0,_.useState)(null),h=s||Math.max(...o.flatMap(e=>e.values),1),g=(0,_.useMemo)(()=>a.map((e,t)=>t/a.length*Math.PI*2),[a]),v=be(a.length),y=v*.6,b=(()=>{let e=o.find((e,t)=>!d.has(t));return e?e.values.reduce((t,n,r)=>n>(e.values[t]??-1)?r:t,0):0})(),x=e=>{let t=new Set(d);t.has(e)?t.delete(e):t.add(e),!(t.size>=o.length)&&f(t)},S=[.25,.5,.75,1],w=(0,_.useMemo)(()=>{let e=0,t=0,n=300,r=300;return g.forEach((i,o)=>{let[s,c]=P(i,_e),l=(a[o]?.length??0)*y,u=Math.abs(s-N)<8,d=u?s-l/2:s>N?s:s-l,f=u?s+l/2:s>N?s+l:s;e=Math.min(e,d),n=Math.max(n,f),t=Math.min(t,c-v),r=Math.max(r,c+v)}),`${e-4} ${t-4} ${n-e+8} ${r-t+8}`},[g,a,y,v]);return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(l||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`div`,{className:`c1-radar-wrap`,children:[(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:w,width:`100%`,className:`c1-radar`,children:[S.map((e,t)=>(0,C.jsx)(`polygon`,{points:g.map(t=>P(t,ge*e).join(`,`)).join(` `),fill:`none`,stroke:`var(--grid-line)`,strokeWidth:1},t)),g.map((e,t)=>{let[n,r]=P(e,ge);return(0,C.jsx)(`line`,{x1:N,y1:he,x2:n,y2:r,stroke:`var(--grid-line)`},t)}),o.map((e,t)=>{if(d.has(t))return null;let n=e.color||ye[t%ye.length],r=g.map((t,n)=>P(t,ge*((e.values[n]||0)/h)).join(`,`)).join(` `);return(0,C.jsxs)(`g`,{style:{transition:`opacity var(--m-normal)`},children:[(0,C.jsx)(`polygon`,{points:r,fill:n,fillOpacity:.14,stroke:n,strokeWidth:2,strokeLinejoin:`round`}),g.map((r,i)=>{let[a,o]=P(r,ge*((e.values[i]||0)/h));return(0,C.jsx)(`circle`,{cx:a,cy:o,r:p===i?4.5:3,fill:n,"data-mark":t===0&&i===b?`circle`:void 0},i)})]},t)}),a.map((e,t)=>{let n=g[t],[r,i]=P(n,128);return(0,C.jsx)(`text`,{x:r,y:i,textAnchor:Math.abs(r-N)<8?`middle`:r>N?`start`:`end`,dominantBaseline:`middle`,fontSize:v,fill:p===t?`var(--text-primary)`:`var(--text-muted)`,style:{cursor:`pointer`},onMouseEnter:()=>m(t),onMouseLeave:()=>m(null),children:e},t)})]}),(0,C.jsx)(`div`,{className:`c1-radar-legend`,children:o.map((e,t)=>{let n=e.color||ye[t%ye.length],i=!d.has(t);return(0,C.jsxs)(`button`,{className:`c1-legend-row`+(i?``:` muted`),onClick:()=>x(t),children:[(0,C.jsx)(`span`,{className:`c1-swatch`,style:{background:i?n:`var(--track)`}}),(0,C.jsx)(`span`,{className:`c1-legend-label`,children:e.label}),(0,C.jsx)(r.check,{className:`c1-legend-check`,style:{opacity:i?1:.15}})]},t)})})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:p==null?c?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(c)}):(0,C.jsx)(`span`,{className:`faint`,children:`Toggle a series in the legend · hover an axis`}):(0,C.jsxs)(`span`,{children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:a[p]}),` ·`,` `,o.filter((e,t)=>!d.has(t)).map(e=>`${e.label} ${e.values[p]}`).join(` · `)]})})]})}var Se=540,Ce=250,F={l:8,r:8,t:16,b:40};function we({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,steps:a,unit:o=``,footer:s,delay:c}){let l=r[t]||r.chart,[u,d]=(0,_.useState)(null),f=(0,_.useMemo)(()=>{let e=0,t=a.map(t=>{let n=e;return t.total?(e=t.value,{...t,start:0,end:t.value,running:t.value}):(e+=t.value,{...t,start:n,end:e,running:e})}),n=t.flatMap(e=>[e.start,e.end]),r=Math.min(0,...n),i=Math.max(0,...n),o=i-r||1,s=Ce-F.t-F.b;return{bars:t,y:e=>F.t+(1-(e-r)/o)*s,lo:r,hi:i}},[a]),p=(Se-F.l-F.r)/Math.max(1,a.length),m=Math.min(54,p*.62),h=e=>e.color||(e.total?`var(--presence)`:e.value>=0?`var(--insight)`:`var(--danger)`),g=(()=>{let e=-1;return f.bars.forEach((t,n)=>{t.total&&(e=n)}),e>=0?e:f.bars.reduce((e,t,n)=>Math.abs(t.value)>Math.abs(f.bars[e].value)?n:e,0)})();return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(c||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 ${Se} ${Ce}`,width:`100%`,style:{display:`block`,overflow:`visible`},children:[(0,C.jsx)(`line`,{x1:F.l,x2:Se-F.r,y1:f.y(0),y2:f.y(0),stroke:`var(--grid-strong)`}),f.bars.map((e,t)=>{let n=F.l+p*t+p/2,r=f.y(Math.max(e.start,e.end)),i=f.y(Math.min(e.start,e.end)),a=Math.max(2,i-r),s=h(e),c=u===t;return(0,C.jsxs)(`g`,{onMouseEnter:()=>d(t),onMouseLeave:()=>d(null),style:{cursor:`pointer`,opacity:u!=null&&!c?.45:1,transition:`opacity var(--m-fast)`},children:[t<f.bars.length-1&&(0,C.jsx)(`line`,{x1:n+m/2,x2:n+p-m/2,y1:f.y(e.end),y2:f.y(e.end),stroke:`var(--grid-line)`,strokeDasharray:`3 3`}),(0,C.jsx)(`rect`,{className:`c1-waterfall-bar`,x:n-m/2,y:r,width:m,height:a,rx:4,fill:`color-mix(in oklab, ${s} ${c?78:55}%, transparent)`,stroke:s,strokeWidth:c?1.6:1,"data-mark":t===g?`circle`:void 0,style:{"--bar-idx":t,transition:`all var(--m-fast)`}}),(0,C.jsxs)(`text`,{x:n,y:r-6,textAnchor:`middle`,fontSize:`11`,fontWeight:`600`,fill:`var(--text-primary)`,className:`tab-num`,children:[!e.total&&e.value>0?`+`:``,o,e.value.toLocaleString()]}),(0,C.jsx)(`text`,{x:n,y:Ce-F.b+18,textAnchor:`middle`,fontSize:`10.5`,fill:`var(--text-muted)`,children:e.label})]},t)})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:u==null?s?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(s)}):(0,C.jsx)(`span`,{className:`faint`,children:`Hover a bar for the running total`}):(0,C.jsxs)(`span`,{children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:f.bars[u].label}),` · running total `,o,f.bars[u].running.toLocaleString()]})})]})}var I=540,L=46,Te=10,Ee=[`var(--presence)`,`var(--presence-soft)`,`var(--insight)`,`var(--warning)`,`var(--danger)`];function De({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,stages:a,unit:o=``,footer:s,delay:c}){let l=r[t]||r.chart,[u,d]=(0,_.useState)(null),f=(0,_.useMemo)(()=>{let e=a[0]?.value||1;return a.map((t,n)=>{let r=t.value/e,i=524*r,o=n===0?1:t.value/(a[n-1].value||1),s=n===0?0:1-o;return{...t,w:i,frac:r,fromPrior:o,drop:s,color:t.color||Ee[n%Ee.length]}})},[a]),p=a.length*56;return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(c||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 ${I} ${p}`,width:`100%`,style:{display:`block`},children:f.map((e,t)=>{let n=t*56,r=(I-e.w)/2,i=f[t+1],a=u===t,s=n+L/2;return(0,C.jsxs)(`g`,{className:`c1-tm-cell`,style:{"--i":t,transformOrigin:`${I/2}px ${s}px`,cursor:`pointer`},onMouseEnter:()=>d(t),onMouseLeave:()=>d(null),children:[i&&(0,C.jsx)(`path`,{d:`M${r} ${n+L} L${r+e.w} ${n+L} L${(I+i.w)/2} ${n+L+Te} L${(I-i.w)/2} ${n+L+Te} Z`,fill:`var(--cell-empty)`}),(0,C.jsx)(`rect`,{x:r,y:n,width:e.w,height:L,rx:6,fill:`color-mix(in oklab, ${e.color} ${a?80:58}%, transparent)`,stroke:e.color,strokeWidth:a?1.6:1,"data-mark":t===0?`circle`:void 0,style:{transition:`all var(--m-fast)`}}),(0,C.jsx)(`text`,{x:I/2,y:n+L/2-3,textAnchor:`middle`,fontSize:`13`,fontWeight:`600`,fill:`var(--text-primary)`,children:e.label}),(0,C.jsxs)(`text`,{x:I/2,y:n+L/2+13,textAnchor:`middle`,fontSize:`11`,fill:`var(--text-secondary)`,className:`tab-num`,children:[o,e.value.toLocaleString(),` · `,Math.round(e.frac*100),`%`]})]},t)})}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},children:u==null?s?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(s)}):(0,C.jsx)(`span`,{className:`faint`,children:`Hover a stage for drop-off vs the prior step`}):u===0?(0,C.jsxs)(`span`,{children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:f[0].label}),` · top of funnel · `,o,f[0].value.toLocaleString()]}):(0,C.jsxs)(`span`,{children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:f[u].label}),` ·`,` `,Math.round(f[u].fromPrior*100),`% kept ·`,` `,(0,C.jsxs)(`span`,{style:{color:`var(--danger)`},children:[`−`,Math.round(f[u].drop*100),`% drop-off`]}),` `,`vs `,f[u-1].label]})})]})}var Oe=540,ke=240,R={l:34,r:35,t:14,b:34};function Ae({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,bins:a,unit:o=``,color:l=`var(--presence)`,marker:u,markerLabel:f,footer:p,delay:m}){let h=r[t]||r.chart,[g,v]=(0,_.useState)(null),y=(0,_.useMemo)(()=>{let e=Math.max(...a.map(e=>e.count),1),t=a[0]?.x0??0,n=a[a.length-1]?.x1??1,r=Oe-R.l-R.r;return{maxCount:e,sx:e=>R.l+(e-t)/(n-t||1)*r,plotH:ke-R.t-R.b,total:a.reduce((e,t)=>e+t.count,0),x0:t,x1:n,salient:a.reduce((e,t,n)=>t.count>(a[e]?.count??-1)?n:e,0)}},[a]),b=e=>s(e,{unit:o||void 0}),x=c(0,y.maxCount,d(y.maxCount,4));return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(m||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(h,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 ${Oe} ${ke}`,width:`100%`,style:{display:`block`,overflow:`visible`},children:[x.map((e,t)=>{let n=R.t+(1-e/(y.maxCount||1))*y.plotH;return(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`line`,{x1:R.l,x2:Oe-R.r,y1:n,y2:n,stroke:`var(--grid-line)`}),(0,C.jsx)(`text`,{x:R.l-6,y:n+4,textAnchor:`end`,fontSize:`10`,fill:`var(--text-muted)`,className:`tab-num`,children:e})]},t)}),a.map((e,t)=>{let n=y.sx(e.x0)+1,r=Math.max(1,y.sx(e.x1)-y.sx(e.x0)-2),i=e.count/(y.maxCount||1)*y.plotH,a=R.t+y.plotH-i,o=g===t;return(0,C.jsx)(`rect`,{x:n,y:a,width:r,height:Math.max(0,i),rx:3,fill:`color-mix(in oklab, ${l} ${o?80:48}%, transparent)`,stroke:l,strokeWidth:o?1.4:.8,"data-mark":t===y.salient?`circle`:void 0,style:{cursor:`pointer`,transition:`all var(--m-fast)`},onMouseEnter:()=>v(t),onMouseLeave:()=>v(null)},t)}),u!=null&&(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`line`,{x1:y.sx(u),x2:y.sx(u),y1:R.t,y2:R.t+y.plotH,stroke:`var(--warning)`,strokeWidth:1.6,strokeDasharray:`4 4`}),(0,C.jsx)(`text`,{x:y.sx(u),y:R.t-3,textAnchor:`middle`,fontSize:`10`,fill:`var(--warning)`,children:f||`mean`})]}),(0,C.jsx)(`line`,{x1:R.l,x2:Oe-R.r,y1:R.t+y.plotH,y2:R.t+y.plotH,stroke:`var(--grid-strong)`}),[y.x0,(y.x0+y.x1)/2,y.x1].map((e,t)=>(0,C.jsx)(`text`,{x:y.sx(e),y:ke-R.b+18,textAnchor:`middle`,fontSize:`10.5`,fill:`var(--text-muted)`,className:`tab-num`,children:b(Math.round(e))},t))]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:g==null?p?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(p)}):(0,C.jsxs)(`span`,{className:`faint`,children:[y.total.toLocaleString(),` samples · hover a bin for its range`]}):(0,C.jsxs)(`span`,{children:[(0,C.jsxs)(`strong`,{style:{color:`var(--text-primary)`},children:[b(a[g].x0),`–`,b(a[g].x1)]}),` `,`· `,s(a[g].count),` (`,Math.round(a[g].count/(y.total||1)*100),`%)`]})})]})}var je=540,Me=250,z={l:40,r:12,t:14,b:36},Ne=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-soft)`,`var(--danger)`];function Pe({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,groups:a,unit:o=``,domain:l,footer:u,delay:f}){let p=r[t]||r.chart,[m,h]=(0,_.useState)(null),g=(0,_.useMemo)(()=>{let e=a.flatMap(e=>[e.min,e.max,...e.outliers||[]]),t=l?l[0]:e.length?Math.min(...e):0,n=l?l[1]:e.length?Math.max(...e):1,r=Me-z.t-z.b;return{y:e=>z.t+(1-(e-t)/(n-t||1))*r,lo:t,hi:n}},[a,l]),v=(je-z.l-z.r)/Math.max(1,a.length),y=Math.min(46,v*.5),b=e=>s(e,{unit:o||void 0}),x=c(g.lo,g.hi,d(g.hi-g.lo,4)),S=a.length>=8,w=Math.max(7.5,Math.min(10.5,v/4.4)),T=Math.max(3,Math.floor(v/(w*.62))),E=e=>!S&&e.length>T?`${e.slice(0,T-1)}…`:e,D=a.reduce((e,t,n)=>t.q3-t.q1>a[e].q3-a[e].q1?n:e,0);return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(f||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(p,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 ${je} ${Me}`,width:`100%`,style:{display:`block`,overflow:`visible`},children:[x.map((e,t)=>{let n=g.y(e);return(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`line`,{x1:z.l,x2:je-z.r,y1:n,y2:n,stroke:`var(--grid-line)`}),(0,C.jsx)(`text`,{x:z.l-6,y:n+4,textAnchor:`end`,fontSize:`9.5`,fill:`var(--text-muted)`,className:`tab-num`,children:s(e)})]},t)}),a.map((e,t)=>{let n=z.l+v*t+v/2,r=e.color||Ne[t%Ne.length],i=m===t;return(0,C.jsxs)(`g`,{className:`c1-bp-group`,onMouseEnter:()=>h(t),onMouseLeave:()=>h(null),style:{"--i":t,cursor:`pointer`},children:[(0,C.jsx)(`line`,{x1:n,x2:n,y1:g.y(e.max),y2:g.y(e.q3),stroke:r,strokeWidth:1.4,opacity:i?1:.7}),(0,C.jsx)(`line`,{x1:n,x2:n,y1:g.y(e.q1),y2:g.y(e.min),stroke:r,strokeWidth:1.4,opacity:i?1:.7}),(0,C.jsx)(`line`,{x1:n-y/3,x2:n+y/3,y1:g.y(e.max),y2:g.y(e.max),stroke:r,strokeWidth:1.4}),(0,C.jsx)(`line`,{x1:n-y/3,x2:n+y/3,y1:g.y(e.min),y2:g.y(e.min),stroke:r,strokeWidth:1.4}),(0,C.jsx)(`rect`,{x:n-y/2,y:g.y(e.q3),width:y,height:Math.max(1,g.y(e.q1)-g.y(e.q3)),rx:4,fill:`color-mix(in oklab, ${r} ${i?42:24}%, transparent)`,stroke:r,strokeWidth:i?1.8:1.2,style:{transition:`all var(--m-fast)`}}),(0,C.jsx)(`line`,{x1:n-y/2,x2:n+y/2,y1:g.y(e.median),y2:g.y(e.median),stroke:r,strokeWidth:2.4,"data-mark":t===D?`circle`:void 0}),(e.outliers||[]).map((e,t)=>(0,C.jsx)(`circle`,{cx:n,cy:g.y(e),r:2.6,fill:`none`,stroke:r,strokeWidth:1.2,opacity:.8},t)),(0,C.jsxs)(`text`,{x:n,y:Me-z.b+18,textAnchor:S?`end`:`middle`,fontSize:w,fill:`var(--text-muted)`,transform:S?`rotate(-45 ${n} ${Me-z.b+18})`:void 0,children:[(0,C.jsx)(`title`,{children:e.label}),E(e.label)]})]},t)})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:m==null?u?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(u)}):(0,C.jsx)(`span`,{className:`faint`,children:`Hover a group for its quartile spread`}):(()=>{let e=a[m];return(0,C.jsxs)(`span`,{className:`tab-num`,children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:e.label}),` · min`,` `,b(e.min),` · Q1 `,b(e.q1),` ·`,` `,(0,C.jsxs)(`span`,{style:{color:`var(--text-primary)`},children:[`med `,b(e.median)]}),` · Q3`,` `,b(e.q3),` · max `,b(e.max),e.outliers?.length?` · ${e.outliers.length} outlier${e.outliers.length===1?``:`s`}`:``]})})()})]})}var B=540,V=240,H={l:30,r:30,t:12,b:28},Fe=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-soft)`,`var(--danger)`,`var(--insight-soft)`];function Ie(e){if(e.length<2)return``;let t=`M${e[0][0]} ${e[0][1]}`;for(let n=0;n<e.length-1;n++){let r=e[n-1]||e[n],i=e[n],a=e[n+1],o=e[n+2]||a,s=i[0]+(a[0]-r[0])/6,c=i[1]+(a[1]-r[1])/6,l=a[0]-(o[0]-i[0])/6,u=a[1]-(o[1]-i[1])/6;t+=` C${s} ${c}, ${l} ${u}, ${a[0]} ${a[1]}`}return t}function Le({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,ticks:a,series:o,unit:s=``,footer:c,delay:l}){let u=r[t]||r.chart,[d,f]=(0,_.useState)(null),[p,m]=(0,_.useState)(null),h=(0,_.useMemo)(()=>{let e=a.length,t=B-H.l-H.r,n=V-H.t-H.b,r=n=>H.l+(e<=1?.5:n/(e-1))*t,i=a.map((e,t)=>o.reduce((e,n)=>e+(n.values[t]||0),0)),s=Math.max(...i,1),c=n*.92/s,l=H.t+n/2,u=[];return o.forEach((e,t)=>{let n=[],s=[],d=0;a.forEach((a,u)=>{let f=0;for(let e=0;e<t;e++)f+=o[e].values[u]||0;let p=l-i[u]*c/2+f*c,m=p+(e.values[u]||0)*c;n.push([r(u),p]),s.push([r(u),m]),d+=e.values[u]||0}),u.push({color:e.color||Fe[t%Fe.length],top:n,bottom:s,total:d})}),{colX:r,areas:u,totals:i,tickStep:e>12?Math.ceil(e/12):1}},[a,o]),g=h.areas.reduce((e,t,n)=>t.total>(h.areas[e]?.total??-1)?n:e,0);return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(l||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(u,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 ${B} ${V}`,width:`100%`,style:{display:`block`,overflow:`visible`},onMouseLeave:()=>f(null),children:[h.areas.map((e,t)=>{if(!e.bottom.length)return null;let n=Ie(e.top),r=Ie([...e.bottom].reverse()),i=`${n} L${e.bottom[e.bottom.length-1][0]} ${e.bottom[e.bottom.length-1][1]} ${r.replace(/^M[^C]*/,``)} Z`,a=d!=null||p!=null&&p!==t,o=p===t,s=e.top[Math.floor(e.top.length/2)],c=s?(s[1]+e.bottom[Math.floor(e.bottom.length/2)][1])/2:V/2;return(0,C.jsx)(`path`,{className:`c1-ts-ring`,d:i,fill:`color-mix(in oklab, ${e.color} ${a&&!o?46:62}%, transparent)`,stroke:e.color,strokeWidth:o?1.4:.8,strokeOpacity:o?.8:.5,"data-mark":t===g?`circle`:void 0,style:{"--i":t,transformOrigin:`${B/2}px ${c}px`,transform:o?`scale(1.015)`:void 0,transition:`fill var(--m-fast), stroke-width var(--m-fast), stroke-opacity var(--m-fast), transform var(--m-fast) var(--ease-out)`,cursor:`pointer`}},t)}),a.map((e,t)=>(0,C.jsx)(`rect`,{x:h.colX(t)-B/a.length/2,y:0,width:B/a.length,height:V-H.b,fill:`transparent`,onMouseEnter:()=>f(t),onMouseMove:e=>{let n=e.currentTarget.getBoundingClientRect();if(!n.height)return;let r=(e.clientY-n.top)/n.height*(V-H.b),i=h.areas.findIndex(e=>r>=e.top[t][1]&&r<=e.bottom[t][1]);m(i>=0?i:null)},onMouseLeave:()=>m(null),style:{cursor:`crosshair`}},t)),d!=null&&(0,C.jsx)(`line`,{x1:h.colX(d),x2:h.colX(d),y1:H.t,y2:V-H.b,stroke:`var(--hover-line)`,strokeWidth:1.4,strokeDasharray:`3 3`,pointerEvents:`none`}),a.map((e,t)=>t%h.tickStep!==0&&t!==a.length-1&&d!==t?null:(0,C.jsx)(`text`,{x:h.colX(t),y:232,textAnchor:`middle`,style:{fontSize:`clamp(8px, 1.2cqi, 10px)`},fill:d===t?`var(--text-primary)`:`var(--text-muted)`,pointerEvents:`none`,children:e},t))]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:d==null?c?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(c)}):(0,C.jsx)(`span`,{className:`faint`,children:`Hover the timeline for a crosshair breakdown`}):(0,C.jsxs)(`span`,{className:`tab-num`,children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:a[d]}),` ·`,` `,o.map((e,t)=>(0,C.jsxs)(`span`,{style:{marginRight:10},children:[(0,C.jsx)(`span`,{className:`c1-swatch-inline`,style:{background:e.color||Fe[t%Fe.length]}}),e.label,` `,s,(e.values[d]||0).toLocaleString()]},t))]})})]})}var Re=[`var(--presence)`,`var(--insight)`,`var(--warning)`];function ze({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,sets:a,overlaps:o=[],footer:s,delay:c}){let l=r[t]||r.layers,[u,d]=(0,_.useState)(null),f=Math.min(3,Math.max(2,a.length)),p=f===2?190:216,{centers:m,r:h,cx:g,cy:v}=(0,_.useMemo)(()=>{let e=f===2?[{x:128,y:96},{x:192,y:96}]:[{x:130,y:86},{x:190,y:86},{x:160,y:146}];return{centers:e,r:f===2?60:54,cx:e.reduce((e,t)=>e+t.x,0)/f,cy:e.reduce((e,t)=>e+t.y,0)/f}},[f]),y=e=>{let t=m[e],n=t.x-g,r=t.y-v,i=Math.hypot(n,r)||1;return n/=i,r/=i,{x:t.x+n*h*.52,y:t.y+r*h*.52}};return(0,C.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(c||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(`div`,{className:`c1-venn`,onMouseLeave:()=>d(null),children:(0,C.jsxs)(`svg`,{viewBox:`0 0 320 ${p}`,className:`c1-venn-svg`,role:`img`,children:[m.slice(0,f).map((e,t)=>{let n=a[t]?.color||Re[t%Re.length],r=u===t,i=u!==null&&!r;return(0,C.jsx)(`circle`,{cx:e.x,cy:e.y,r:h,fill:`color-mix(in oklab, ${n} ${r?42:26}%, transparent)`,stroke:n,strokeWidth:r?2.5:1.5,style:{opacity:i?.35:1,transition:`opacity var(--m-fast)`},onMouseEnter:()=>d(t)},t)}),o.map((e,t)=>{let n=e.sets.filter(e=>e<f);if(n.length<2)return null;let r=n.reduce((e,t)=>e+m[t].x,0)/n.length,i=n.reduce((e,t)=>e+m[t].y,0)/n.length;return(0,C.jsx)(`text`,{x:r,y:i,className:`c1-venn-val`,textAnchor:`middle`,children:e.value??e.label??``},`o${t}`)}),a.slice(0,f).map((e,t)=>e.value===void 0?null:(0,C.jsx)(`text`,{x:y(t).x,y:y(t).y,className:`c1-venn-val`,textAnchor:`middle`,children:e.value},`e${t}`))]})}),(0,C.jsx)(`div`,{className:`c1-venn-legend`,children:a.slice(0,f).map((e,t)=>{let n=e.color||Re[t%Re.length];return(0,C.jsxs)(`button`,{className:`c1-venn-leg`+(u===t?` on`:``),onMouseEnter:()=>d(t),onMouseLeave:()=>d(null),children:[(0,C.jsx)(`i`,{style:{background:n}}),e.label]},t)})}),s&&(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(s)})]})}var Be=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-soft)`,`var(--danger)`,`var(--text-muted)`],U=50,Ve=60,He=60;function Ue(e,t){let n=e*2*Math.PI-Math.PI/2;return[Ve+t*Math.cos(n),He+t*Math.sin(n)]}function We({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,slices:a,unit:o,hole:c=.58,centerValue:l,centerLabel:u,footer:d,delay:f}){let g=r[t]||r.chart,[v,y]=(0,_.useState)(null),b=a.reduce((e,t)=>e+Math.max(0,t.value),0),x=a.reduce((e,t,n)=>t.value>(a[e]?.value??-1)?n:e,0),S=(0,_.useMemo)(()=>{let e=0,t=U*Math.max(0,Math.min(.9,c));return a.map((n,r)=>{let i=b>0?Math.max(0,n.value)/b:0,a=e,o=e+i;e=o;let[s,c]=Ue(a,U),[l,u]=Ue(o,U),[d,f]=Ue(o,t),[p,m]=Ue(a,t),h=+(i>.5);return{d:`M ${s} ${c} A ${U} ${U} 0 ${h} 1 ${l} ${u} L ${d} ${f} A ${t} ${t} 0 ${h} 0 ${p} ${m} Z`,color:n.color||Be[r%Be.length],frac:i}})},[a,b,c]);return!h(a.map(e=>e.value))||b<=0?(0,C.jsxs)(`div`,{className:`card reveal c1`,children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(g,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(m,{})]}):(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(f||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(g,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(`div`,{className:`c1-pd`,onMouseLeave:()=>y(null),children:(0,C.jsxs)(`svg`,{viewBox:`0 0 120 120`,className:`c1-pd-svg`,role:`img`,"aria-label":e,children:[S.map((e,t)=>(0,C.jsx)(`path`,{d:e.d,fill:e.color,className:`c1-pd-arc`,style:{opacity:v!=null&&v!==t?.35:1},onMouseEnter:()=>y(t)},t)),(l||v!=null)&&c>.2&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`text`,{x:Ve,y:58,className:`c1-pd-cval`,textAnchor:`middle`,children:v==null?l:s(a[v].value,{unit:o||void 0})}),(0,C.jsx)(`text`,{x:Ve,y:72,className:`c1-pd-clbl`,textAnchor:`middle`,children:v==null?u:a[v].label})]})]})}),(0,C.jsx)(p,{items:a.map((e,t)=>({label:`${e.label} · ${Math.round(Math.max(0,e.value)/b*100)}%`,color:e.color||Be[t%Be.length]})),active:v,onHover:y,markIndex:x}),d&&(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},dangerouslySetInnerHTML:i(d)})]})}var Ge=320,Ke=200,W={l:14,r:14,t:14,b:26};function qe(e,t,n){let r=(e-t)/n;return Math.exp(-.5*r*r)}function Je({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,kind:a=`normal`,mean:o=0,sd:u=1,points:f,shadeFrom:p,shadeBetween:m,markers:h=[],unit:g,footer:v,delay:y}){let b=r[t]||r.chart,{pts:x,sx:S,sy:w,xHi:T,xTicks:E}=(0,_.useMemo)(()=>{let e;if(a===`custom`&&f&&f.length>1)e=f;else{let t=o-4*u,n=o+4*u;e=Array.from({length:81},(e,r)=>{let i=t+r/80*(n-t);return{x:i,y:qe(i,o,u)}})}let t=e.map(e=>e.x),n=e.map(e=>e.y),r=Math.min(...t),i=Math.max(...t),s=Math.max(...n,1e-9),p=l([r,i],[W.l,Ge-W.r]),m=l([0,s],[Ke-W.b,W.t]);return{pts:e,sx:p,sy:m,xLo:r,xHi:i,xTicks:c(r,i,d(i-r,5))}},[a,f,o,u]),D=w(0),O=x.map(e=>`${S(e.x)},${w(e.y)}`).join(` `),k=(0,_.useMemo)(()=>{let e=h.map((e,t)=>({i:t,px:S(e.x)})).sort((e,t)=>e.px-t.px),t=[],n=Array(h.length);for(let{i:r,px:i}of e){let e=t.findIndex(e=>i-e>=26);e===-1?(e=t.length,t.push(i)):t[e]=i,n[r]=e%2==0?W.t-2-e/2*10:D+12+(e-1)/2*10}return n},[h,S,D]),A=(e,t)=>{let n=x.filter(n=>n.x>=e&&n.x<=t);if(n.length<2)return``;let r=n.map(e=>`${S(e.x)},${w(e.y)}`).join(` L `);return`M ${S(n[0].x)},${D} L ${r} L ${S(n[n.length-1].x)},${D} Z`};return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(y||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(b,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(`div`,{className:`c1-dist`,children:(0,C.jsxs)(`svg`,{viewBox:`0 0 ${Ge} ${Ke}`,className:`c1-dist-svg`,role:`img`,"aria-label":e,children:[m&&(0,C.jsx)(`path`,{d:A(m[0],m[1]),className:`c1-dist-shade ci`}),p!==void 0&&(0,C.jsx)(`path`,{d:A(p,T),className:`c1-dist-shade tail`}),(0,C.jsx)(`line`,{x1:W.l,y1:D,x2:Ge-W.r,y2:D,className:`cx-axis-l`}),(0,C.jsx)(`polyline`,{points:O,className:`c1-dist-curve`}),E.map((e,t)=>(0,C.jsx)(`text`,{x:S(e),y:Ke-W.b+14,className:`cx-tick`,textAnchor:`middle`,children:s(e,{unit:g||void 0})},t)),h.map((e,t)=>(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`line`,{x1:S(e.x),y1:W.t,x2:S(e.x),y2:D,stroke:e.color||`var(--warning)`,strokeWidth:1.4,strokeDasharray:`4 3`}),e.label&&(0,C.jsx)(`text`,{x:S(e.x),y:k[t],className:`c1-dist-mklbl`,textAnchor:`middle`,children:e.label})]},`mk${t}`))]})}),v&&(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:i(v)})]})}var Ye={topRight:`color-mix(in oklab, var(--warning) 5%, transparent)`,topLeft:`color-mix(in oklab, var(--insight) 5%, transparent)`,bottomLeft:`color-mix(in oklab, var(--presence-soft) 5%, transparent)`,bottomRight:`color-mix(in oklab, var(--presence) 5%, transparent)`},Xe={topRight:`qd-qlabel qd-qlabel--tr`,topLeft:`qd-qlabel qd-qlabel--tl`,bottomLeft:`qd-qlabel qd-qlabel--bl`,bottomRight:`qd-qlabel qd-qlabel--br`},Ze={topLeft:{row:1,col:1},topRight:{row:1,col:2},bottomLeft:{row:2,col:1},bottomRight:{row:2,col:2}},Qe=[`topRight`,`topLeft`,`bottomLeft`,`bottomRight`];function $e(e){let t={topRight:[],topLeft:[],bottomLeft:[],bottomRight:[]};for(let n of e)t[n.quadrant].push(n);return t}function et({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,xLabel:a,yLabel:o,topRight:s,topLeft:c,bottomLeft:l,bottomRight:u,items:d,footer:f,delay:p}){let m=r[t]||r.chart,h=$e(d),g={topRight:s,topLeft:c,bottomLeft:l,bottomRight:u};return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(p||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(m,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`div`,{className:`qd-outer`,children:[o&&(0,C.jsx)(`div`,{className:`qd-ylabel-wrap`,"aria-label":`Y axis: ${o}`,children:(0,C.jsx)(`span`,{className:`qd-ylabel`,children:o})}),(0,C.jsxs)(`div`,{className:`qd-col`,children:[(0,C.jsx)(`div`,{className:`qd-grid`,role:`img`,"aria-label":e,children:Qe.map(e=>{let{row:t,col:n}=Ze[e],r=g[e],i=h[e];return(0,C.jsxs)(`div`,{className:`qd-cell`,style:{gridRow:t,gridColumn:n,background:Ye[e]},children:[r&&(0,C.jsx)(`span`,{className:Xe[e],children:r}),(0,C.jsx)(`ul`,{className:`qd-items`,children:i.map((e,t)=>(0,C.jsxs)(`li`,{className:`qd-item`,children:[(0,C.jsx)(`span`,{className:`qd-dot`,"aria-hidden":!0}),(0,C.jsxs)(`span`,{className:`qd-item-body`,children:[(0,C.jsx)(`span`,{className:`qd-item-label`,children:e.label}),e.note&&(0,C.jsx)(`span`,{className:`qd-item-note`,children:e.note})]})]},t))})]},e)})}),a&&(0,C.jsx)(`div`,{className:`qd-xlabel`,"aria-label":`X axis: ${a}`,children:a})]})]}),f&&(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(f)})]})}var tt=560,nt=260,G={l:36,r:14,t:30,b:36},rt=20;function it(e){let t=[],n=Array(e.length);for(let{x:r,i}of[...e].sort((e,t)=>e.x-t.x)){let e=0;for(;t[e]?.some(e=>Math.abs(e-r)<rt);)e++;(t[e]??=[]).push(r),n[i]=e}return n}function at({title:e,icon:t=`clock`,iconColor:n=`var(--presence)`,bins:a,unit:o=`ms`,p50:l,p90:u,p95:f,p99:p,slo:m,sloLabel:h,caption:g,footer:v,delay:y}){let b=r[t]||r.clock,[x,S]=(0,_.useState)(null),w=(0,_.useMemo)(()=>{let e=Math.max(...a.map(e=>e.count),1),t=a[0]?.from??0,n=[a[a.length-1]?.to??1,l,u,f,p,m].filter(e=>Number.isFinite(e)),r=Math.max(t+1,...n),i=tt-G.l-G.r;return{maxCount:e,sx:e=>G.l+(e-t)/(r-t||1)*i,plotH:nt-G.t-G.b,total:a.reduce((e,t)=>e+t.count,0),x0:t,x1:r}},[a,l,u,f,p,m]),T=e=>s(e,{unit:o,decimals:0}),E=c(0,w.maxCount,d(w.maxCount,4)),D=[p,f,u,l].find(e=>Number.isFinite(e)),O=m!=null&&D!=null&&D>m,k=O?`var(--danger)`:`var(--insight)`,A=(0,_.useMemo)(()=>{let e=[[l,`p50`],[u,`p90`],[f,`p95`],[p,`p99`]].filter(([e])=>Number.isFinite(e)).map(([e,t])=>({x:e,label:t})),t=it(e.map((e,t)=>({x:w.sx(e.x),i:t})));return e.map((e,n)=>({...e,row:t[n]}))},[l,u,f,p,w]);return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(y||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(b,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 ${tt} ${nt}`,width:`100%`,style:{display:`block`,overflow:`visible`},children:[E.map((e,t)=>{let n=G.t+(1-e/(w.maxCount||1))*w.plotH;return(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`line`,{x1:G.l,x2:tt-G.r,y1:n,y2:n,stroke:`var(--grid-line)`}),(0,C.jsx)(`text`,{x:G.l-6,y:n+4,textAnchor:`end`,fontSize:`10`,fill:`var(--text-muted)`,className:`tab-num`,children:e})]},t)}),a.map((e,t)=>{let n=w.sx(e.from)+1,r=Math.max(1,w.sx(e.to)-w.sx(e.from)-2),i=e.count/(w.maxCount||1)*w.plotH,a=G.t+w.plotH-i,o=x===t,s=m!=null&&e.from>=m,c=s?k:`var(--presence)`,l=n+r/2,u=a+Math.max(0,i)/2;return(0,C.jsx)(`g`,{className:`c1-tm-cell`,style:{"--i":t,transformOrigin:`${l}px ${u}px`},children:(0,C.jsx)(`rect`,{x:n,y:a,width:r,height:Math.max(0,i),rx:2.5,fill:`color-mix(in oklab, ${c} ${o?82:s?40:46}%, transparent)`,stroke:c,strokeWidth:o?1.4:.8,style:{cursor:`pointer`,transition:`fill var(--m-fast), stroke-width var(--m-fast), transform var(--m-fast)`,transform:o?`scale(1.03)`:void 0,transformOrigin:`${l}px ${u}px`},onMouseEnter:()=>S(t),onMouseLeave:()=>S(null)})},t)}),A.map((e,t)=>{let n=w.sx(e.x);return(0,C.jsxs)(`g`,{className:`c1-ld-pct`,style:{"--i":t},children:[(0,C.jsx)(`line`,{x1:n,x2:n,y1:G.t,y2:G.t+w.plotH,stroke:`var(--text-secondary)`,strokeWidth:1,strokeDasharray:`3 3`,opacity:.7}),(0,C.jsx)(`text`,{x:n,y:G.t-16-e.row*11,textAnchor:`middle`,fontSize:`9.5`,fontWeight:600,fill:`var(--text-secondary)`,children:e.label})]},e.label)}),m!=null&&(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`line`,{x1:w.sx(m),x2:w.sx(m),y1:G.t-4,y2:G.t+w.plotH,stroke:k,strokeWidth:2}),(0,C.jsx)(`text`,{x:w.sx(m),y:G.t+w.plotH+14,textAnchor:`middle`,fontSize:`9.5`,fontWeight:700,fill:k,children:h||`SLO ${T(m)}`})]}),(0,C.jsx)(`line`,{x1:G.l,x2:tt-G.r,y1:G.t+w.plotH,y2:G.t+w.plotH,stroke:`var(--grid-strong)`}),[w.x0,(w.x0+w.x1)/2,w.x1].map((e,t)=>(0,C.jsx)(`text`,{x:w.sx(e),y:nt-G.b+24,textAnchor:t===0?`start`:t===2?`end`:`middle`,fontSize:`10.5`,fill:`var(--text-muted)`,className:`tab-num`,children:T(Math.round(e))},t))]}),p!=null&&(0,C.jsxs)(`div`,{className:`c1-ld-head`,children:[(0,C.jsxs)(`span`,{className:`c1-ld-stat`,style:{color:O?`var(--danger)`:`var(--text-primary)`},children:[`p99 `,T(p)]}),m!=null&&(0,C.jsx)(`span`,{className:`c1-ld-verdict`,style:{color:k,background:`color-mix(in oklab, ${k} 14%, transparent)`},children:O?`breaches SLO by ${T(p-m)}`:`within SLO by ${T(m-p)}`})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:x==null?v?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(v)}):(0,C.jsx)(`span`,{className:`faint`,children:g||`${w.total.toLocaleString()} requests · hover a bin for its range`}):(0,C.jsxs)(`span`,{children:[(0,C.jsxs)(`strong`,{style:{color:`var(--text-primary)`},children:[T(a[x].from),`–`,T(a[x].to)]}),` `,`· `,s(a[x].count),` (`,Math.round(a[x].count/(w.total||1)*100),`%)`]})})]})}var ot=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-soft)`,`var(--danger)`,`var(--text-muted)`];function st({title:e,icon:t=`table`,iconColor:n=`var(--presence)`,holders:a,totalShares:c,caption:l,footer:u,delay:d}){let f=r[t]||r.table,[p,m]=(0,_.useState)(null),h=(0,_.useMemo)(()=>{let e=a.reduce((e,t)=>e+Math.max(0,t.shares),0),t=Math.max(c??e,1);return{rows:a.map((e,n)=>{let r=e.fdPct==null?Math.max(0,e.shares)/t*100:e.fdPct;return{...e,pct:r,color:e.color||ot[n%ot.length]}}),base:t,sumShares:e}},[a,c]);return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(d||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(f,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(`div`,{className:`c1-cap-bar`,onMouseLeave:()=>m(null),role:`img`,"aria-label":`${e} ownership split`,children:h.rows.map((e,t)=>(0,C.jsx)(`div`,{className:`c1-cap-seg`,style:{width:`${Math.max(0,e.pct)}%`,background:e.color,opacity:p!=null&&p!==t?.4:1},onMouseEnter:()=>m(t),title:`${e.name} · ${o(e.pct,{decimals:1})}`,children:e.pct>=9&&(0,C.jsx)(`span`,{className:`c1-cap-seg-pct`,children:o(e.pct,{decimals:0})})},t))}),(0,C.jsx)(`div`,{className:`c1-cap-scroll`,children:(0,C.jsxs)(`table`,{className:`c1-cap-table`,children:[(0,C.jsx)(`thead`,{children:(0,C.jsxs)(`tr`,{children:[(0,C.jsx)(`th`,{children:`Holder`}),(0,C.jsx)(`th`,{children:`Class`}),(0,C.jsx)(`th`,{className:`num`,children:`Shares`}),(0,C.jsx)(`th`,{className:`num`,children:`FD %`})]})}),(0,C.jsx)(`tbody`,{children:h.rows.map((e,t)=>(0,C.jsxs)(`tr`,{className:p===t?`on`:void 0,onMouseEnter:()=>m(t),onMouseLeave:()=>m(null),children:[(0,C.jsxs)(`td`,{children:[(0,C.jsx)(`span`,{className:`c1-cap-dot`,style:{background:e.color}}),(0,C.jsx)(`span`,{className:`c1-cap-name`,children:e.name})]}),(0,C.jsx)(`td`,{className:`c1-cap-class`,children:e.class||`—`}),(0,C.jsx)(`td`,{className:`num tab-num`,children:s(e.shares,{compact:e.shares>=1e6})}),(0,C.jsx)(`td`,{className:`num tab-num`,children:o(e.pct,{decimals:1})})]},t))}),(0,C.jsx)(`tfoot`,{children:(0,C.jsxs)(`tr`,{children:[(0,C.jsx)(`td`,{children:`Total`}),(0,C.jsx)(`td`,{}),(0,C.jsx)(`td`,{className:`num tab-num`,children:s(h.base,{compact:h.base>=1e6})}),(0,C.jsx)(`td`,{className:`num tab-num`,children:`100%`})]})})]})}),u?(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},dangerouslySetInnerHTML:i(u)}):l?(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},children:(0,C.jsx)(`span`,{className:`faint`,children:l})}):null]})}var K=150,ct=150,lt=110,q=10,ut=444,dt=388;function J(e,t){return[K+t*Math.cos(e-Math.PI/2),ct+t*Math.sin(e-Math.PI/2)]}var ft=e=>Math.min(q,Math.max(0,Number.isFinite(e)?e:0));function pt({title:e,icon:t=`sparkle`,iconColor:n=`var(--presence)`,domains:a,caption:o,footer:s,delay:c}){let l=r[t]||r.sparkle,[u,d]=(0,_.useState)(null),f=(0,_.useMemo)(()=>a.map((e,t)=>t/a.length*Math.PI*2),[a]),p=(0,_.useMemo)(()=>a.map(e=>ft(e.score)),[a]),m=p.length?p.reduce((e,t)=>e+t,0)/p.length:0,h=p.reduce((e,t,n)=>t<p[e]?n:e,0);return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(c||0)+`ms`},children:[e&&(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`div`,{className:`c1-radar-wrap`,children:[(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e||`Wheel of life`,viewBox:`-72 -44 ${ut} ${dt}`,width:`100%`,className:`c1-radar c1-lw`,children:[[2,4,6,8,10].map((e,t)=>(0,C.jsx)(`polygon`,{points:f.map(t=>J(t,e/q*lt).join(`,`)).join(` `),fill:`none`,stroke:`var(--grid-line)`,strokeWidth:e===q?1.25:1},t)),f.map((e,t)=>{let[n,r]=J(e,lt);return(0,C.jsx)(`line`,{x1:K,y1:ct,x2:n,y2:r,stroke:`var(--grid-line)`},t)}),(0,C.jsx)(`polygon`,{points:f.map((e,t)=>J(e,lt*(p[t]/q)).join(`,`)).join(` `),fill:`var(--presence)`,fillOpacity:.16,stroke:`var(--presence)`,strokeWidth:2,strokeLinejoin:`round`,className:`c1-lw-poly`}),f.map((e,t)=>{let[n,r]=J(e,lt*(p[t]/q)),i=u===t,a=n-K,o=r-ct,s=Math.abs(a)<8;return(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`circle`,{cx:n,cy:r,r:i?5:3.5,fill:`var(--presence)`,"data-mark":t===h?`circle`:void 0}),(0,C.jsx)(`text`,{x:n,y:r,dx:s?0:a>0?4:-4,dy:o>0?12:-6,fontSize:`9`,fontWeight:700,textAnchor:s?`middle`:a>0?`start`:`end`,fill:`var(--text-primary)`,className:`c1-lw-score`,style:{opacity:i?1:.85},children:p[t]})]},t)}),a.map((e,t)=>{let n=f[t],[r,i]=J(n,128);return(0,C.jsx)(`text`,{x:r,y:i,textAnchor:Math.abs(r-K)<8?`middle`:r>K?`start`:`end`,dominantBaseline:`middle`,fontSize:`10.5`,fill:u===t?`var(--text-primary)`:`var(--text-muted)`,style:{cursor:`pointer`},onMouseEnter:()=>d(t),onMouseLeave:()=>d(null),children:e.label},t)})]}),(0,C.jsxs)(`div`,{className:`c1-lw-side`,children:[(0,C.jsxs)(`div`,{className:`c1-lw-balance`,children:[(0,C.jsx)(`span`,{className:`c1-lw-avg`,children:m.toFixed(1)}),(0,C.jsxs)(`span`,{className:`c1-lw-avg-lbl`,children:[`balance · out of `,q]})]}),(0,C.jsx)(`ul`,{className:`c1-lw-legend`,children:a.map((e,t)=>(0,C.jsxs)(`li`,{className:`c1-lw-leg`+(u===t?` on`:``),onMouseEnter:()=>d(t),onMouseLeave:()=>d(null),children:[(0,C.jsx)(`span`,{className:`c1-lw-leg-label`,children:e.label}),(0,C.jsx)(`span`,{className:`c1-lw-leg-track`,"aria-hidden":`true`,children:(0,C.jsx)(`span`,{className:`c1-lw-leg-fill`,style:{width:p[t]/q*100+`%`}})}),(0,C.jsx)(`span`,{className:`c1-lw-leg-score`,children:p[t]})]},t))})]})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:u==null?s?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(s)}):o?(0,C.jsx)(`span`,{children:o}):(0,C.jsx)(`span`,{className:`faint`,children:`Hover a spoke · a round wheel rolls smoothly`}):(0,C.jsxs)(`span`,{children:[(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:a[u].label}),` ·`,` `,p[u],`/`,q,a[u].note?` — ${a[u].note}`:``]})})]})}var mt=360,ht=250,Y={l:42,r:16,t:14,b:32},gt=60,_t=Math.sqrt(2*Math.PI),vt=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--danger)`];function yt(e){return Math.exp(-.5*e*e)/_t}function bt(e){let t=e.length;if(t<2)return 1;let n=e.reduce((e,t)=>e+t,0)/t,r=e.reduce((e,t)=>e+(t-n)**2,0)/(t-1),i=Math.sqrt(r);return i>0?1.06*i*t**-.2:1}function xt(e,t,n){let r=1/(e.length*t);return n.map(n=>{let i=0;for(let r of e)i+=yt((n-r)/t);return i*r})}function St(e,t){let n=t/100*(e.length-1),r=Math.floor(n),i=n-r;return i===0||r+1>=e.length?e[r]:e[r]+i*(e[r+1]-e[r])}function Ct(e){let t=[...e].sort((e,t)=>e-t),n=St(t,25),r=St(t,50),i=St(t,75),a=i-n;return{q1:n,median:r,q3:i,wLo:Math.max(t[0],n-1.5*a),wHi:Math.min(t[t.length-1],i+1.5*a)}}function wt({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,groups:a,showBox:o=!0,unit:s,footer:p,delay:m}){let h=r[t]||r.chart,[g,v]=(0,_.useState)(null),y=(0,_.useMemo)(()=>{if(a.length===0)return null;let e=a.flatMap(e=>e.values).filter(Number.isFinite),t=f(e);if(!t)return null;let n=a.map(e=>bt(e.values.filter(Number.isFinite))),r=Math.max(...n,1e-9),i=t[0]-r,o=t[1]+r,s=Array.from({length:gt},(e,t)=>i+t/59*(o-i)),[p,m]=u(t[0],t[1]),h=l([p,m],[ht-Y.b,Y.t]),g=d(m-p,4),_=c(p,m,g),v=(mt-Y.l-Y.r)/a.length,y=v*.35,b=a.map((e,t)=>{let r=e.values.filter(Number.isFinite),i=r.length>0?xt(r,n[t],s):s.map(()=>0);return{densities:i,box:r.length>1?Ct(r):null,peak:Math.max(...i,0),color:e.color||vt[t%vt.length]}});return{y:h,yTicks:_,slot:v,densityScale:y/Math.max(...b.flatMap(e=>e.densities),1e-9),evalPts:s,groupGeom:b,salient:b.reduce((e,t,n)=>t.peak>b[e].peak?n:e,0)}},[a]);if(!y)return null;let{y:b,yTicks:x,slot:S,densityScale:w,evalPts:T,groupGeom:E,salient:D}=y;return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(m||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(h,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`0 0 ${mt} ${ht}`,width:`100%`,style:{display:`block`,overflow:`visible`},children:[x.map((e,t)=>{let n=b(e);return(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`line`,{x1:Y.l,x2:mt-Y.r,y1:n,y2:n,stroke:`var(--grid-line)`,strokeWidth:.8}),(0,C.jsxs)(`text`,{x:Y.l-6,y:n+4,textAnchor:`end`,fontSize:`9`,fill:`var(--text-muted)`,children:[e,s?` ${s}`:``]})]},t)}),a.map((e,t)=>{let n=Y.l+S*t+S/2,{densities:r,box:i,color:s}=E[t],c=g===t,l=T.map((e,t)=>{let i=r[t]*w;return`${(n-i).toFixed(1)},${b(e).toFixed(1)}`}),u=[...T].reverse().map((e,t)=>{let i=59-t,a=r[i]*w;return`${(n+a).toFixed(1)},${b(e).toFixed(1)}`}),d=`M ${l[0]} `+l.slice(1).map(e=>`L ${e}`).join(` `)+` `+u.map(e=>`L ${e}`).join(` `)+` Z`;return(0,C.jsxs)(`g`,{onMouseEnter:()=>v(t),onMouseLeave:()=>v(null),style:{cursor:`pointer`},children:[(0,C.jsx)(`path`,{className:`c1-violin-path`,d,fill:`color-mix(in oklab, ${s} ${c?46:30}%, transparent)`,stroke:s,strokeWidth:c?2.2:1.5,strokeLinejoin:`round`,"data-mark":t===D?`circle`:void 0,style:{"--i":t,transition:`fill var(--m-fast), stroke-width var(--m-fast)`}}),o&&i&&(()=>{let e=b(i.q1),t=b(i.q3),r=b(i.median),a=b(i.wLo),o=b(i.wHi);return(0,C.jsxs)(`g`,{style:{transition:`opacity var(--m-fast)`},children:[(0,C.jsx)(`line`,{x1:n,x2:n,y1:e,y2:a,stroke:s,strokeWidth:1.2}),(0,C.jsx)(`line`,{x1:n,x2:n,y1:t,y2:o,stroke:s,strokeWidth:1.2}),(0,C.jsx)(`rect`,{x:n-3,y:t,width:6,height:Math.max(1,e-t),fill:`color-mix(in oklab, ${s} ${c?76:60}%, transparent)`,stroke:s,strokeWidth:c?1.6:1,style:{transition:`fill var(--m-fast), stroke-width var(--m-fast)`}}),(0,C.jsx)(`line`,{x1:n-3,x2:n+3,y1:r,y2:r,stroke:`var(--surface-elevated)`,strokeWidth:2})]})})(),(0,C.jsx)(`text`,{x:n,y:ht-Y.b+18,textAnchor:`middle`,fontSize:a.length>5?`8`:a.length>4?`9`:`10`,fill:c?`var(--text-primary)`:`var(--text-muted)`,style:{transition:`fill var(--m-fast)`},children:e.label})]},t)})]}),p&&(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},dangerouslySetInnerHTML:i(p)})]})}function Tt(e,t){let n=t*10,r=[...e].sort((e,t)=>e-t),i=new Map;for(let e of r){let r=Math.floor(e/n),a=Math.floor(e%n/t);i.has(r)||i.set(r,[]),i.get(r).push(a)}return i}function Et({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,values:a,title2:o,values2:s,leafUnit:c=1,footer:l,delay:u}){let d=r[t]||r.chart,f=s!=null&&s.length>0,p=(0,_.useMemo)(()=>{let e=Tt(a,c),t=f&&s?Tt(s,c):null,n=[...e.keys(),...t?[...t.keys()]:[]];if(n.length===0)return{rows:[]};let r=Math.min(...n),i=Math.max(...n),o=[];for(let n=r;n<=i;n++)o.push({stem:n,leavesLeft:e.get(n)??[],leavesRight:t?t.get(n)??[]:[]});return{rows:o}},[a,s,c,f]),m={fontFamily:`var(--font-mono, monospace)`,fontSize:11,lineHeight:`1.85`,padding:`1px 8px`,whiteSpace:`nowrap`},h={...m,background:`var(--surface-elevated)`,color:`var(--text-muted)`,textAlign:`center`,borderLeft:`1px solid var(--grid-line)`,borderRight:`1px solid var(--grid-line)`,minWidth:32},g={...m,color:`var(--text-primary)`},v={...m,color:`var(--text-muted)`,fontWeight:600,borderBottom:`1px solid var(--grid-line)`,paddingBottom:5,fontSize:10,letterSpacing:`0.04em`,textTransform:`uppercase`},y=f?`1fr auto 1fr`:`auto 1fr`;return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(u||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`div`,{style:{overflowX:`auto`,overflowY:`hidden`},children:[(0,C.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:y},children:[f?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`div`,{style:{...v,textAlign:`right`},children:e}),(0,C.jsx)(`div`,{style:{...v,...h,borderBottom:`1px solid var(--grid-line)`,fontWeight:600,fontSize:10,letterSpacing:`0.04em`,textTransform:`uppercase`},children:`stem`}),(0,C.jsx)(`div`,{style:{...v},children:o})]}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`div`,{style:{...v,...h,borderBottom:`1px solid var(--grid-line)`,fontWeight:600,fontSize:10,letterSpacing:`0.04em`,textTransform:`uppercase`},children:`stem`}),(0,C.jsx)(`div`,{style:{...v},children:`leaves`})]}),p.rows.map(({stem:e,leavesLeft:t,leavesRight:n})=>(0,C.jsx)(_.Fragment,{children:f?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`div`,{style:{...g,textAlign:`right`},children:[...t].reverse().join(` `)}),(0,C.jsx)(`div`,{style:h,children:e}),(0,C.jsx)(`div`,{style:g,children:n.join(` `)})]}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`div`,{style:h,children:e}),(0,C.jsx)(`div`,{style:g,children:t.join(` `)})]})},e))]}),(0,C.jsxs)(`div`,{style:{fontFamily:`var(--font-mono, monospace)`,fontSize:10,color:`var(--text-muted)`,marginTop:8,paddingLeft:2},children:[`Leaf unit: `,c]})]}),l&&(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:8},children:(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(l)})})]})}var Dt=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--danger)`],Ot=320,kt=220,At=Ot/2,jt=108,Mt=92;function Nt(e,t){return t?`$${s(e)}${t}`:e>=1e3?`$${s(e/1e3,{decimals:1})}T`:`$${s(e)}B`}function Pt({title:e=`Market Sizing`,icon:t=`chart`,iconColor:n=`var(--presence)`,markets:a,footer:o,delay:c}){let l=r[t]??r.chart,[u,d]=(0,_.useState)(null),f=(0,_.useMemo)(()=>{let e=a.length;return a.map((t,n)=>({...t,r:e>1?Mt-n*62.56/(e-1):Mt,color:Dt[n%Dt.length]}))},[a]),p=f.reduce((e,t,n)=>t.value>(f[e]?.value??-1)?n:e,0),g=f[u??f.length-1];return h(a.map(e=>e.value))?(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(c||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(l,{className:`ic`,style:{color:n}}),e]}),(0,C.jsxs)(`svg`,{viewBox:`0 0 ${Ot} ${kt}`,className:`c1-ts-svg`,role:`img`,"aria-label":e,children:[[...f].reverse().map((e,t)=>{let n=f.length-1-t,r=u!=null&&u!==n;return(0,C.jsx)(`circle`,{className:`c1-ts-ring`,cx:At,cy:jt,r:e.r,fill:e.color,fillOpacity:r?.05:.08+t*.06,stroke:e.color,strokeWidth:u===n?2.2:1.8,strokeOpacity:r?.25:.55,"data-mark":n===p?`circle`:void 0,style:{"--i":n,transformOrigin:`${At}px ${jt}px`},onMouseEnter:()=>d(n),onMouseLeave:()=>d(null)},n)}),g&&(0,C.jsxs)(`g`,{className:`c1-ts-center`,children:[(0,C.jsx)(`text`,{x:At,y:102,textAnchor:`middle`,fontSize:11,fontWeight:`700`,letterSpacing:`0.06em`,fill:g.color,style:{textTransform:`uppercase`},children:g.label}),(0,C.jsx)(`text`,{x:At,y:121,textAnchor:`middle`,fontSize:15,fontWeight:`700`,fill:`var(--text-primary)`,className:`tab-num`,children:Nt(g.value,g.unit)}),g.cagr!=null&&(0,C.jsxs)(`text`,{x:At,y:136,textAnchor:`middle`,fontSize:10,fill:`var(--text-muted)`,className:`tab-num`,children:[s(g.cagr,{decimals:0}),`% CAGR`]})]})]}),(0,C.jsx)(`div`,{className:`c1-sun-legend`,children:f.map((e,t)=>(0,C.jsxs)(`button`,{type:`button`,className:`c1-legend-row`+(u===t?` active`:``),onMouseEnter:()=>d(t),onMouseLeave:()=>d(null),children:[(0,C.jsx)(`span`,{className:`c1-swatch`,style:{background:e.color}}),(0,C.jsx)(`span`,{className:`c1-legend-label`,children:e.label}),(0,C.jsxs)(`span`,{className:`tab-num faint`,children:[Nt(e.value,e.unit),e.cagr==null?``:` · ${s(e.cagr,{decimals:0})}% CAGR`]}),e.description&&(0,C.jsx)(`span`,{className:`c1-legend-desc`,children:e.description})]},t))}),o&&(0,C.jsx)(`div`,{className:`insight-summary`,dangerouslySetInnerHTML:i(o)})]}):(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(c||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(m,{})]})}var Ft=40,It=148;function Lt(e){let t=Math.max(-1,Math.min(1,e));return`color-mix(in oklab, ${t>=0?`var(--presence)`:`var(--danger)`} ${(Math.abs(t)*86).toFixed(1)}%, transparent)`}function Rt(e){if(!Number.isFinite(e))return`—`;let t=Math.max(-1,Math.min(1,e));if(Math.abs(t)===1)return t<0?`-1.00`:`1.00`;let n=Math.abs(t).toFixed(2).slice(1);return t<0?`-`+n:n}function zt({title:e,icon:t=`table`,iconColor:n=`var(--presence)`,variables:a,matrix:o,footer:s,delay:c}){let l=r[t]||r.table,u=a?.length??0,d=a.map((e,t)=>{let n=o?.[t]??[];return a.map((e,t)=>{let r=n[t];return typeof r==`number`&&Number.isFinite(r)?r:0})}),f=u>6;return(0,C.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(c||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),u<2?(0,C.jsx)(`p`,{className:`c1-corr-empty faint`,children:`Needs at least two variables to correlate.`}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`div`,{className:[`c1-corr-wrap`,f?`c1-corr-scroll`:``].filter(Boolean).join(` `),children:(0,C.jsxs)(`div`,{className:`c1-corr-grid`,style:{gridTemplateColumns:`minmax(72px, ${It}px) repeat(${u}, minmax(${Ft}px, 1fr))`},role:`grid`,"aria-label":e,children:[(0,C.jsx)(`div`,{className:`c1-corr-cell c1-corr-corner m-fade-rise m-stagger-item`,role:`columnheader`,"aria-label":``,style:{"--i":0}}),a.map((e,t)=>(0,C.jsx)(`div`,{className:`c1-corr-cell c1-corr-colhdr m-fade-rise m-stagger-item`,role:`columnheader`,title:e,style:{"--i":0},children:(0,C.jsx)(`span`,{children:e})},`ch${t}`)),d.map((e,t)=>(0,C.jsxs)(_.Fragment,{children:[(0,C.jsx)(`div`,{className:`c1-corr-cell c1-corr-rowhdr m-fade-rise m-stagger-item`,role:`rowheader`,title:a[t],style:{"--i":t+1},children:(0,C.jsx)(`span`,{children:a[t]})}),e.map((e,n)=>(0,C.jsx)(`div`,{className:[`c1-corr-cell`,`c1-corr-data`,`m-fade-rise`,`m-stagger-item`,t===n?`c1-corr-diag`:``,Math.abs(e)>.55?`c1-corr-strong`:``].filter(Boolean).join(` `),style:{background:Lt(e),"--i":t+1},role:`gridcell`,title:`${a[t]} × ${a[n]}: ${Rt(e)}`,children:Rt(e)},`c${t}-${n}`))]},`r${t}`))]})}),(0,C.jsxs)(`div`,{className:`c1-corr-legend`,children:[(0,C.jsx)(`span`,{className:`c1-corr-leg-lbl`,children:`−1`}),[-1,-.5,0,.5,1].map(e=>(0,C.jsx)(`i`,{style:{background:Lt(e)}},e)),(0,C.jsx)(`span`,{className:`c1-corr-leg-lbl`,children:`+1`})]})]}),s&&(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},dangerouslySetInnerHTML:i(s)})]})}var X=400,Z=270,Q={l:42,r:16,t:18,b:32},Bt=7,Vt=11,Ht={star:`var(--presence)`,question:`var(--warning)`,cow:`var(--insight)`,dog:`var(--text-muted)`};function Ut(e){if(e.length===0)return 0;let t=[...e].sort((e,t)=>e-t),n=Math.floor(t.length/2);return t.length%2==1?t[n]:(t[n-1]+t[n])/2}function Wt(e,t,n,r){return e>=n?t>=r?`star`:`question`:t>=r?`cow`:`dog`}function Gt({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,items:a,unit:o,footer:c,delay:d}){let p=r[t]||r.chart,[g,v]=(0,_.useState)(null),y=(0,_.useMemo)(()=>Array.isArray(a)?a:[],[a]),b=(0,_.useMemo)(()=>y.map(e=>({growth:Number.isFinite(e?.growth)?e.growth:0,share:Number.isFinite(e?.share)?e.share:0,revenue:Number.isFinite(e?.revenue)&&e.revenue>0?e.revenue:null})),[y]),{sx:x,sy:S,pr:w,medGrowth:T,medShare:E,medX:D,medY:O,xTicks:k,yTicks:A}=(0,_.useMemo)(()=>{let e=f(b.map(e=>e.share)),t=f(b.map(e=>e.growth)),[n,r]=u(e?e[0]:0,e?e[1]:1),[i,a]=u(t?t[0]:0,t?t[1]:1),o=l([n,r],[Q.l,X-Q.r]),s=l([i,a],[Z-Q.b,Q.t]),c=Ut(b.map(e=>e.growth)),d=Ut(b.map(e=>e.share)),p=Math.max(0,...b.map(e=>e.revenue??0));return{sx:o,sy:s,pr:e=>e==null||p===0?Vt:Bt+e/p*17,medGrowth:c,medShare:d,medX:o(d),medY:s(c),xTicks:o.ticks(4),yTicks:s.ticks(4)}},[b]),ee=b.reduce((e,t,n)=>(t.revenue??0)>(b[e].revenue??0)?n:e,0);if(!h(b.flatMap(e=>[e.growth,e.share])))return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(d||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(p,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(m,{})]});let j=g==null?void 0:y[g],M=g==null?void 0:b[g];return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(d||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(p,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`div`,{className:`c1-bcg`,onMouseLeave:()=>v(null),children:[(0,C.jsxs)(`svg`,{viewBox:`0 0 ${X} ${Z}`,className:`c1-bcg-svg`,role:`img`,"aria-label":e,children:[(0,C.jsx)(`rect`,{x:Q.l,y:Q.t,width:Math.max(0,D-Q.l),height:Math.max(0,O-Q.t),fill:`color-mix(in oklab, var(--warning) 5%, transparent)`}),(0,C.jsx)(`rect`,{x:D,y:Q.t,width:Math.max(0,X-Q.r-D),height:Math.max(0,O-Q.t),fill:`color-mix(in oklab, var(--presence) 5%, transparent)`}),(0,C.jsx)(`rect`,{x:Q.l,y:O,width:Math.max(0,D-Q.l),height:Math.max(0,Z-Q.b-O),fill:`color-mix(in oklab, var(--text-muted) 5%, transparent)`}),(0,C.jsx)(`rect`,{x:D,y:O,width:Math.max(0,X-Q.r-D),height:Math.max(0,Z-Q.b-O),fill:`color-mix(in oklab, var(--insight) 5%, transparent)`}),k.map((e,t)=>(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`line`,{x1:x(e),y1:Q.t,x2:x(e),y2:Z-Q.b,className:`cx-grid-l`}),(0,C.jsxs)(`text`,{x:x(e),y:Z-Q.b+16,className:`cx-tick`,textAnchor:`middle`,children:[s(e,{decimals:1}),`×`]})]},`gx${t}`)),A.map((e,t)=>(0,C.jsxs)(`g`,{children:[(0,C.jsx)(`line`,{x1:Q.l,y1:S(e),x2:X-Q.r,y2:S(e),className:`cx-grid-l`}),(0,C.jsxs)(`text`,{x:Q.l-5,y:S(e)+3,className:`cx-tick`,textAnchor:`end`,children:[s(e,{decimals:0}),`%`]})]},`gy${t}`)),(0,C.jsx)(`line`,{x1:Q.l,y1:Z-Q.b,x2:X-Q.r,y2:Z-Q.b,className:`cx-axis-l`}),(0,C.jsx)(`line`,{x1:Q.l,y1:Q.t,x2:Q.l,y2:Z-Q.b,className:`cx-axis-l`}),(0,C.jsx)(`line`,{x1:D,y1:Q.t,x2:D,y2:Z-Q.b,className:`c1-bcg-median`}),(0,C.jsx)(`line`,{x1:Q.l,y1:O,x2:X-Q.r,y2:O,className:`c1-bcg-median`}),(0,C.jsx)(`text`,{x:X-Q.r-4,y:Q.t+12,textAnchor:`end`,className:`c1-bcg-corner`,children:`Star`}),(0,C.jsx)(`text`,{x:Q.l+4,y:Q.t+12,textAnchor:`start`,className:`c1-bcg-corner`,children:`Question Mark`}),(0,C.jsx)(`text`,{x:X-Q.r-4,y:Z-Q.b-6,textAnchor:`end`,className:`c1-bcg-corner`,children:`Cash Cow`}),(0,C.jsx)(`text`,{x:Q.l+4,y:Z-Q.b-6,textAnchor:`start`,className:`c1-bcg-corner`,children:`Dog`}),b.map((e,t)=>{let n=Ht[Wt(e.growth,e.share,T,E)],r=g===t;return(0,C.jsx)(`circle`,{cx:x(e.share),cy:S(e.growth),r:w(e.revenue),fill:`color-mix(in oklab, ${n} ${r?45:28}%, transparent)`,stroke:n,strokeWidth:r?2:1.4,onMouseEnter:()=>v(t),style:{transition:`fill var(--m-fast)`,cursor:`pointer`},"data-mark":t===ee?`circle`:void 0},t)})]}),j&&M&&(0,C.jsxs)(`div`,{className:`c1-bcg-tip`,style:{left:`${x(M.share)/X*100}%`,top:`${S(M.growth)/Z*100}%`},children:[(0,C.jsx)(`b`,{children:j.label}),(0,C.jsxs)(`span`,{className:`faint tab-num`,children:[s(M.growth,{decimals:1}),`% growth ·`,` `,s(M.share,{decimals:2}),`× share`,M.revenue==null?``:` · ${s(M.revenue,{unit:o,compact:!0})}`]}),j.note&&(0,C.jsx)(`span`,{className:`c1-bcg-tip-note`,children:j.note})]})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},children:c?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(c)}):(0,C.jsx)(`span`,{className:`faint`,children:`Growth ↑ · relative share → — split at the portfolio's median`})})]})}var $=200,Kt=150,qt=105,Jt=580,Yt=384,Xt=123,Zt=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--presence-soft)`,`var(--danger)`];function Qt(e,t){return e/t*Math.PI*2-Math.PI/2}function $t({title:e,icon:t=`share`,iconColor:n=`var(--presence)`,nodes:a,flows:o,unit:c=``,footer:l,delay:u}){let d=r[t]||r.share,[f,p]=(0,_.useState)(null),h=(0,_.useMemo)(()=>{let e=Array.isArray(a)?a:[],t=new Set,n=[];e.forEach((e,r)=>{let i=typeof e?.id==`string`?e.id.trim():``,a=typeof e?.label==`string`?e.label.trim():``,o=i||a||`node-${r}`;t.has(o)||(t.add(o),n.push({id:o,label:a||o,color:e?.color||Zt[n.length%Zt.length]}))});let r=n.map((e,t)=>{let r=Qt(t,n.length);return{...e,angle:r,x:$+qt*Math.cos(r),y:Kt+qt*Math.sin(r)}}),i=new Map(r.map(e=>[e.id,e])),s=new Map,c=Array.isArray(o)?o:[],l=c.map(e=>Number.isFinite(e?.value)?e.value:0).filter(e=>e>0),u=Math.max(1,...l),d=[];return c.forEach((e,t)=>{let n=typeof e?.from==`string`?e.from.trim():``,r=typeof e?.to==`string`?e.to.trim():``,a=Number.isFinite(e?.value)?e.value:0,o=i.get(n),c=i.get(r);if(!o||!c||n===r||a<=0)return;s.set(n,(s.get(n)||0)+a),s.set(r,(s.get(r)||0)+a);let l=(o.x+c.x)/2,f=(o.y+c.y)/2,p=l+($-l)*.45,m=f+(Kt-f)*.45;d.push({key:`${n}->${r}-${t}`,from:n,to:r,value:a,color:o.color,thick:1.5+a/u*9,d:`M${o.x} ${o.y} Q${p} ${m} ${c.x} ${c.y}`})}),{nodes:r,flows:d,salientId:r.length>0?r.reduce((e,t)=>(s.get(t.id)||0)>(s.get(e.id)||0)?t:e,r[0]).id:null}},[a,o]);if(h.nodes.length===0)return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(u||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsx)(m,{})]});let g=e=>!f||f===e.key||f===e.from||f===e.to,v=e=>!f||f===e||h.flows.some(t=>t.key===f&&(t.from===e||t.to===e)),y=h.flows.find(e=>e.key===f),b=h.nodes.find(e=>e.id===f);return(0,C.jsxs)(`div`,{className:`card reveal c1`,style:{"--delay":(u||0)+`ms`},children:[(0,C.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,C.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,C.jsxs)(`svg`,{role:`img`,"aria-label":e,viewBox:`-90 -42 ${Jt} ${Yt}`,className:`c1-fc-svg`,children:[h.flows.map(e=>{let t=g(e);return(0,C.jsx)(`path`,{d:e.d,fill:`none`,stroke:e.color,strokeWidth:e.thick,opacity:t?.45:.08,style:{transition:`opacity var(--m-fast)`,cursor:`pointer`},onMouseEnter:()=>p(e.key),onMouseLeave:()=>p(null)},e.key)}),h.nodes.map(e=>{let t=v(e.id),n=f===e.id,r=$+Xt*Math.cos(e.angle),i=Kt+Xt*Math.sin(e.angle);return(0,C.jsxs)(`g`,{style:{cursor:`pointer`},onMouseEnter:()=>p(e.id),onMouseLeave:()=>p(null),children:[(0,C.jsx)(`circle`,{cx:e.x,cy:e.y,r:n?7:5.5,fill:e.color,opacity:t?1:.3,stroke:`var(--surface-default)`,strokeWidth:2,"data-mark":e.id===h.salientId?`circle`:void 0,style:{transition:`opacity var(--m-fast)`}}),(0,C.jsx)(`text`,{x:r,y:i,textAnchor:Math.abs(r-$)<10?`middle`:r>$?`start`:`end`,dominantBaseline:`middle`,fontSize:`10.5`,fill:n?`var(--text-primary)`:`var(--text-secondary)`,opacity:t?1:.35,children:e.label})]},e.id)})]}),(0,C.jsx)(`div`,{className:`insight-summary`,style:{marginTop:10},children:y?(0,C.jsxs)(`span`,{children:[(0,C.jsxs)(`strong`,{style:{color:`var(--text-primary)`},children:[h.nodes.find(e=>e.id===y.from)?.label,` →`,` `,h.nodes.find(e=>e.id===y.to)?.label]}),` `,`· `,c,s(y.value)]}):b?(0,C.jsx)(`span`,{children:(0,C.jsx)(`strong`,{style:{color:`var(--text-primary)`},children:b.label})}):l?(0,C.jsx)(`span`,{dangerouslySetInnerHTML:i(l)}):(0,C.jsx)(`span`,{className:`faint`,children:`Hover a node or flow to trace it`})})]})}var en=e({charts1Registry:()=>tn}),tn={treemap:g(E),sunburst:g(ne),sankey:g(ce),network:g(me),radar:g(xe),waterfall:g(we),funnel:g(De),histogram:g(Ae),boxplot:g(Pe),streamgraph:g(Le),venn:g(ze),piedonut:g(We),distributioncurve:g(Je),quadrant:g(et),latencydist:g(at),captable:g(st),lifewheel:g(pt),violinplot:g(wt),stemleafplot:g(Et),tamsam:g(Pt),correlationheatmap:g(zt),bcgmatrix:g(Gt),flowchord:g($t)};export{en as n,tn as t};