@mavea/mavea 2.1.0 → 2.2.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.
- package/CHANGELOG.md +44 -0
- package/README.md +1 -7
- package/TERMS.md +9 -3
- package/dist/.vite/manifest.json +610 -540
- package/dist/assets/{AnnotationLayer-Bh1yiSAK.js → AnnotationLayer-HanjTRYY.js} +1 -1
- package/dist/assets/{AppCommandPalette-DS4sLY_K.js → AppCommandPalette-DBiuHUNL.js} +1 -1
- package/dist/assets/{CheckLogRail-onH7DaxW.js → CheckLogRail-CfoGgTqv.js} +1 -1
- package/dist/assets/{ConversationVideoStudio-adb7legp.js → ConversationVideoStudio-CEi_cgBR.js} +1 -1
- package/dist/assets/{CourseLessonReader-CkzViEij.js → CourseLessonReader-CaLT_Y6N.js} +2 -2
- package/dist/assets/{CoursesApp-B0HFM8Al.js → CoursesApp-IfWCeml5.js} +2 -2
- package/dist/assets/{DashPresent-BdOJ7F9D.js → DashPresent-T7I-lAng.js} +1 -1
- package/dist/assets/{DashboardDetail-Chrpi1Yk.js → DashboardDetail-BhRSDenD.js} +2 -2
- package/dist/assets/{DashboardLoopGate-B01Hpm7O.js → DashboardLoopGate-DBVAR7IS.js} +2 -2
- package/dist/assets/DashboardLoopRuntime-B55z8L4b.js +1 -0
- package/dist/assets/{DashboardsApp--jjj-GVX.js → DashboardsApp-C_awJ3hM.js} +2 -2
- package/dist/assets/{DeepZoomApp-BpQbKTjc.js → DeepZoomApp-C-66OasV.js} +1 -1
- package/dist/assets/{DelegatePanel-e4y0CJsn.js → DelegatePanel-DaJTDkYu.js} +1 -1
- package/dist/assets/{DemoGallery-DF1ShRG4.js → DemoGallery-B9F7SUzp.js} +1 -1
- package/dist/assets/{DropSelect-D3Q9Su_x.js → DropSelect-IBjV5Ol1.js} +1 -1
- package/dist/assets/{ExportModal-DkmyBpeN.js → ExportModal-gckBiikq.js} +1 -1
- package/dist/assets/{ExtractionPreview-C6F1q3qG.js → ExtractionPreview-DDOkCH9u.js} +1 -1
- package/dist/assets/FallbackCard-CUe6i-zT.js +1 -0
- package/dist/assets/{FeatureUseNotice-CCI4mM39.js → FeatureUseNotice-BfnZH8Vt.js} +1 -1
- package/dist/assets/{FlagshipCommandPalette-BkjvGrKT.js → FlagshipCommandPalette-CYQdl3Zu.js} +1 -1
- package/dist/assets/{FlagshipShowcase-Dx2noFrP.js → FlagshipShowcase-CFMmbeff.js} +1 -1
- package/dist/assets/{FlashcardsApp-C1TeLlkY.js → FlashcardsApp-KJ1bmlbp.js} +1 -1
- package/dist/assets/GalleryApp-B4KBdNyu.css +1 -0
- package/dist/assets/GalleryApp-Dh8Nc_So.js +2 -0
- package/dist/assets/{HonestByDesign-DlRrxgrO.js → HonestByDesign-C3LTj4Bx.js} +1 -1
- package/dist/assets/{HowItWorks-BM2yn2dq.js → HowItWorks-C5Dqqvl-.js} +1 -1
- package/dist/assets/{LegalApp-DPfTD0jz.js → LegalApp-DYVJIUyF.js} +1 -1
- package/dist/assets/{LegalMarkdownDocument-DJgwmK1q.js → LegalMarkdownDocument-CbuQ-pLN.js} +1 -1
- package/dist/assets/{LegalPageShell-DuIwSVSJ.js → LegalPageShell-CoEyiZGz.js} +1 -1
- package/dist/assets/{LibraryOverlay-DsLhiJzF.js → LibraryOverlay-TQnxY9R8.js} +1 -1
- package/dist/assets/LiveApp-DRnphsFA.js +79 -0
- package/dist/assets/{LiveApp-CEaISHEZ.css → LiveApp-Dc7Mk5oS.css} +1 -1
- package/dist/assets/{LiveSettings-CDHQnEtF.js → LiveSettings-Cz3XSqv8.js} +3 -3
- package/dist/assets/{MindMapViewerDrawer-C3BgiubE.js → MindMapViewerDrawer-AUJlLC2R.js} +1 -1
- package/dist/assets/{MindShape-DVlgSR1B.js → MindShape-BbuVOTaR.js} +1 -1
- package/dist/assets/{PinToDashboard-Dd_egidB.js → PinToDashboard-BdXI7oo9.js} +1 -1
- package/dist/assets/{PlanReview-wOsBpofo.js → PlanReview-CGRvSRAt.js} +1 -1
- package/dist/assets/{PresentationDeck-BSMzp5T9.js → PresentationDeck-CoPmOr2f.js} +1 -1
- package/dist/assets/{PrismApp-DbbDNVpy.js → PrismApp-DPECS285.js} +2 -2
- package/dist/assets/{PrismBriefingPlayer-B1_ziOwl.js → PrismBriefingPlayer-BvpG7oZs.js} +2 -2
- package/dist/assets/{PrismOverlay-DLxvsh9l.js → PrismOverlay-c8rcvt4V.js} +3 -3
- package/dist/assets/{PrismWorkbench-ZlhI7Mhw.js → PrismWorkbench-BEaD7Arj.js} +1 -1
- package/dist/assets/{PrivacyApp-Ki_5bM9Z.js → PrivacyApp-_O_MR088.js} +1 -1
- package/dist/assets/{ReplayCard-WKBKeSKc.js → ReplayCard-IN-ilb2E.js} +2 -2
- package/dist/assets/{ReplayOverlay-PFSJv540.js → ReplayOverlay-ZRjFP-zf.js} +1 -1
- package/dist/assets/{RippleApp-DqVyZYKV.js → RippleApp-D_Gd8Lw8.js} +2 -2
- package/dist/assets/{RippleOverlay-4McJCSV8.js → RippleOverlay-vP2KxTiI.js} +2 -2
- package/dist/assets/{SeeDontRead-gARjJuF7.js → SeeDontRead-BmUyUai5.js} +1 -1
- package/dist/assets/{ShareModal-C5HVVMtQ.js → ShareModal-_KYCohqO.js} +2 -2
- package/dist/assets/{ShipCourse-BUm4TKUk.js → ShipCourse--ajDej06.js} +1 -1
- package/dist/assets/{SignatureLoop-CYspJuij.js → SignatureLoop-DDw2gtQ_.js} +1 -1
- package/dist/assets/{SynthesisApp-BNhF9aJ2.js → SynthesisApp-CilzogOF.js} +2 -2
- package/dist/assets/{SynthesisOverlay-Bvwdc8uQ.js → SynthesisOverlay-CAK5h0hB.js} +1 -1
- package/dist/assets/{TemplatePicker-DBa4lkpf.js → TemplatePicker-3w18ViSc.js} +1 -1
- package/dist/assets/{TermsApp-BvwDtgIz.js → TermsApp-BfTGOTq6.js} +10 -4
- package/dist/assets/TopicCanvas-DSCNWNjv.js +2 -0
- package/dist/assets/TopicCanvas-sGuo7pnQ.css +1 -0
- package/dist/assets/{TourPrism-CCjys3-x.js → TourPrism-Y47m-KGq.js} +1 -1
- package/dist/assets/{TrackerTile-B4j5qtop.js → TrackerTile-LXFQXcvH.js} +2 -2
- package/dist/assets/{TwoSurfaces-fGm1MJrD.js → TwoSurfaces-CSpKrgfJ.js} +1 -1
- package/dist/assets/{WorldOverlay-JOp1rLyU.js → WorldOverlay-D5FWgYe3.js} +2 -2
- package/dist/assets/{WowFeatures-D5dJvp9W.js → WowFeatures-e6mkftpD.js} +1 -1
- package/dist/assets/{ZoomDeck-DYmkT0TA.js → ZoomDeck-CC9zXPxF.js} +1 -1
- package/dist/assets/{audioTrack-BJ2D_nuy.js → audioTrack-w1tZwSoU.js} +1 -1
- package/dist/assets/{backup-DkCsHNEE.js → backup-AymOkasb.js} +1 -1
- package/dist/assets/briefs-5oOobpyS.js +1 -0
- package/dist/assets/canvas-BRGFkCD-.js +1 -0
- package/dist/assets/{capture-Y6Qm8zCN.js → capture-Bomj_Egy.js} +1 -1
- package/dist/assets/catalog-vLsIS_Na.js +1 -0
- package/dist/assets/{confirmAdd-D-TTCQ31.js → confirmAdd-CUFiPNWz.js} +1 -1
- package/dist/assets/{dashboardEvents-MzCzak6K.js → dashboardEvents-PktCbV72.js} +1 -1
- package/dist/assets/{deepen-FZiVqiEc.js → deepen-Dz4yTyJs.js} +1 -1
- package/dist/assets/{effort-BftNJCCV.js → effort-BKGxLYoq.js} +1 -1
- package/dist/assets/facts-CNQz8OQz.js +1 -0
- package/dist/assets/{generateBeats-Dqtfd8HC.js → generateBeats-BjWC2fwl.js} +1 -1
- package/dist/assets/{generateLive-B7nlaqz8.js → generateLive-BLajGcNK.js} +1 -1
- package/dist/assets/{index-Db-FgYxX.js → index-CKRjGbeR.js} +3 -3
- package/dist/assets/{kokoro-yB7iU_JU.js → kokoro-B-rc224u.js} +1 -1
- package/dist/assets/{lens-DyGK7Owa.js → lens-Ba83fBmq.js} +1 -1
- package/dist/assets/liveSchema-eKgFc5D0.js +127 -0
- package/dist/assets/loader-BiYFMeRS.js +2 -0
- package/dist/assets/notes-nfocTnUv.js +1 -0
- package/dist/assets/overflowAudit-DQLYFrM8.js +1 -0
- package/dist/assets/{perfProbe-DrOeB7yd.js → perfProbe-BqMK4N56.js} +1 -1
- package/dist/assets/{pin-C5_s4Ju5.js → pin-IyE46GaQ.js} +1 -1
- package/dist/assets/{portal-TqJbr2rR.js → portal-C2b5NoMN.js} +1 -1
- package/dist/assets/{prewarm-Bt5X_9CM.js → prewarm-Pvdu5Jt0.js} +1 -1
- package/dist/assets/{quietHours-LtXDl4-v.js → quietHours-lWcjQ2Iu.js} +1 -1
- package/dist/assets/registry-B3HqLZyO.css +1 -0
- package/dist/assets/registry-BD1Zyd46.js +1 -0
- package/dist/assets/registry-BJFqryP_.js +1 -0
- package/dist/assets/registry-BTUHr4mQ.js +1 -0
- package/dist/assets/registry-BZsqAOnQ.css +1 -0
- package/dist/assets/registry-BiT0eNZb.js +2 -0
- package/dist/assets/registry-BoLdoGPW.js +1 -0
- package/dist/assets/registry-CLHP_r7X.js +1 -0
- package/dist/assets/registry-CT85vG1M.js +1 -0
- package/dist/assets/{registry-CIcGBgtK.css → registry-CnNL4jmR.css} +1 -1
- package/dist/assets/{registry-BHDUu15I.js → registry-CnmuVlAA.js} +1 -1
- package/dist/assets/registry-CyPRooIp.css +1 -0
- package/dist/assets/registry-D5O0Ptw_.css +1 -0
- package/dist/assets/registry-DOctfuxc.js +1 -0
- package/dist/assets/{registry-BZuT2Epw.css → registry-DhWVSz_J.css} +1 -1
- package/dist/assets/{registry-BPLbZIVz.js → registry-OUL5YJry.js} +1 -1
- package/dist/assets/registry-brX673Dg.css +1 -0
- package/dist/assets/{registry-C4Yh05pk.js → registry-nCDSZOmZ.js} +1 -1
- package/dist/assets/registry-sT9NoG1k.css +1 -0
- package/dist/assets/registry-yzYj0SNk.css +1 -0
- package/dist/assets/{relate-CCma73G9.js → relate-ZHm-ZvaR.js} +1 -1
- package/dist/assets/{replay-dMDmsTaD.js → replay-DBeCo_vn.js} +1 -1
- package/dist/assets/select-CejTsgpx.js +3 -0
- package/dist/assets/shapes-BwXCYTlu.js +1 -0
- package/dist/assets/shard001-BrI-88cO.js +1 -0
- package/dist/assets/shard002-CVTdbXod.js +1 -0
- package/dist/assets/shard003-Bilw1tcB.js +1 -0
- package/dist/assets/shard004-Cq0Or-2a.js +1 -0
- package/dist/assets/shard005-Wh3WypcW.js +1 -0
- package/dist/assets/shard006-BAUUhTjB.js +1 -0
- package/dist/assets/shard007-DYMH8Yxn.js +1 -0
- package/dist/assets/shard008-DsrV7tH6.js +1 -0
- package/dist/assets/shard009-Bsf_hKwR.js +1 -0
- package/dist/assets/shard010-B5P3ny1k.js +1 -0
- package/dist/assets/shard011-BgeG9-or.js +1 -0
- package/dist/assets/shard012-BDkbj6cq.js +1 -0
- package/dist/assets/shard013-G23LG7Fa.js +1 -0
- package/dist/assets/shard014-CnDxCS2j.js +1 -0
- package/dist/assets/shard015-JvmiIIrG.js +1 -0
- package/dist/assets/shard016-BVcRKptB.js +1 -0
- package/dist/assets/shard017-DrpF6FaE.js +1 -0
- package/dist/assets/shard018-Bi11C9yu.js +1 -0
- package/dist/assets/shard019-QyeKtIb0.js +1 -0
- package/dist/assets/shard020-Djc1cf5i.js +1 -0
- package/dist/assets/shard021-D2RM4FCA.js +1 -0
- package/dist/assets/shard022-DRT0Qsp3.js +1 -0
- package/dist/assets/shard023-COM71H0n.js +1 -0
- package/dist/assets/shard024-DEnCOj6l.js +1 -0
- package/dist/assets/shard025-DHxYqsae.js +1 -0
- package/dist/assets/shard026-BIgdfcha.js +1 -0
- package/dist/assets/shard027-CvJzY_e0.js +1 -0
- package/dist/assets/shard028-57qhg2sc.js +1 -0
- package/dist/assets/shard029-Dx2Qnz9G.js +1 -0
- package/dist/assets/shard030-CtC4LpQR.js +1 -0
- package/dist/assets/shard031-jLIDhN2C.js +1 -0
- package/dist/assets/shard032-BDQTeOZV.js +1 -0
- package/dist/assets/shard033-955G5ec6.js +1 -0
- package/dist/assets/shard034-Bu3aEL9i.js +1 -0
- package/dist/assets/shard035-B2E-tzQZ.js +1 -0
- package/dist/assets/shard036-BEyPFMoV.js +1 -0
- package/dist/assets/shard037-CFQfstFa.js +1 -0
- package/dist/assets/shard038-C3QlFW5S.js +1 -0
- package/dist/assets/shard039-DFpQvV8e.js +1 -0
- package/dist/assets/shard040-I3SaNaKO.js +1 -0
- package/dist/assets/shard041-B1UVtmcS.js +1 -0
- package/dist/assets/shard042-DGJ4rHUt.js +1 -0
- package/dist/assets/shard043-BCie8K9U.js +1 -0
- package/dist/assets/shard044-DeFpPsR0.js +1 -0
- package/dist/assets/{shard043-BKoTEB-H.js → shard045-COwX5PHB.js} +1 -1
- package/dist/assets/shard046-CDOiSCGB.js +1 -0
- package/dist/assets/shard047-CuL2iVAe.js +1 -0
- package/dist/assets/shard048-B7z0WHO6.js +1 -0
- package/dist/assets/shard049-D1yDablJ.js +1 -0
- package/dist/assets/shard050-DJi3AgeT.js +1 -0
- package/dist/assets/shard051-D_2ipfUr.js +1 -0
- package/dist/assets/shard052-1aGgWZdd.js +1 -0
- package/dist/assets/shard053-Bjwa0Og4.js +1 -0
- package/dist/assets/shard054-Cx_GAk3v.js +1 -0
- package/dist/assets/shard055-LaeOD3V5.js +1 -0
- package/dist/assets/shard056-CAArZwW0.js +1 -0
- package/dist/assets/shard057-CM8eSRQk.js +1 -0
- package/dist/assets/shard058-QRpDl4Vs.js +1 -0
- package/dist/assets/shard059-DkY7CQm3.js +1 -0
- package/dist/assets/shard060-BVCgf7o0.js +1 -0
- package/dist/assets/shard061-93aGtdrX.js +1 -0
- package/dist/assets/shard062-rJE9X1_I.js +1 -0
- package/dist/assets/shard063-Co_V_D1g.js +1 -0
- package/dist/assets/{shard062-BJ8OX6CJ.js → shard064-C9A8iNiq.js} +1 -1
- package/dist/assets/shard065-CpmX_yt1.js +1 -0
- package/dist/assets/shard066-C_uen3Ub.js +1 -0
- package/dist/assets/shard067-Dl5k0N1Z.js +1 -0
- package/dist/assets/shard068-DLIIO7yh.js +1 -0
- package/dist/assets/shard069-D15zOFva.js +1 -0
- package/dist/assets/shard070-BwHL1JLg.js +1 -0
- package/dist/assets/shard071-BFQhwU3I.js +1 -0
- package/dist/assets/shard072-DC9v9Ysb.js +1 -0
- package/dist/assets/shard073-CicaGoa8.js +1 -0
- package/dist/assets/shard074-BvwBlB0R.js +1 -0
- package/dist/assets/shard075-BDKPICyR.js +1 -0
- package/dist/assets/shard076-COQxCeXV.js +1 -0
- package/dist/assets/{shard076-DZHs0uzd.js → shard076-b5-2mnEN.js} +1 -1
- package/dist/assets/shard077-DGa0bRNk.js +1 -0
- package/dist/assets/shard077-wv2mA5w5.js +1 -0
- package/dist/assets/shard078-CI97pFkb.js +1 -0
- package/dist/assets/shard078-D64eVQuV.js +1 -0
- package/dist/assets/{useDashboardLoop-Cnxmf7wU.js → useDashboardLoop-SPlr1Mrm.js} +3 -3
- package/dist/assets/{walkSync-D6leFb_u.js → walkSync-BtO3jsqQ.js} +1 -1
- package/dist/index.html +1 -1
- package/dist/legal/TERMS.md +9 -3
- package/package.json +1 -1
- package/dist/assets/DashboardLoopRuntime-BcdZtIgH.js +0 -1
- package/dist/assets/FallbackCard-ap_4wOfj.js +0 -1
- package/dist/assets/GalleryApp-7oBldBKU.js +0 -1
- package/dist/assets/GalleryApp-B1CB3_81.css +0 -1
- package/dist/assets/LiveApp-DNYYimuo.js +0 -79
- package/dist/assets/TopicCanvas-Cwc6-K3q.js +0 -2
- package/dist/assets/TopicCanvas-DWTm611H.css +0 -1
- package/dist/assets/canvas-CYrbzF43.js +0 -1
- package/dist/assets/catalog-CRekRbKO.js +0 -1
- package/dist/assets/facts-BUGuVUIc.js +0 -1
- package/dist/assets/liveSchema-Z_39HuDI.js +0 -125
- package/dist/assets/loader-Ciz6XbG-.js +0 -2
- package/dist/assets/notes-CEloxKQ3.js +0 -1
- package/dist/assets/registry-B5S3brjM.css +0 -1
- package/dist/assets/registry-BAoRB8rd.css +0 -1
- package/dist/assets/registry-B_wlsfxh.js +0 -1
- package/dist/assets/registry-BwlvYVHq.js +0 -2
- package/dist/assets/registry-BxkAuBx8.js +0 -1
- package/dist/assets/registry-C3ezxLR3.css +0 -1
- package/dist/assets/registry-CfIJ9dJS.js +0 -1
- package/dist/assets/registry-CwRTUk0R.js +0 -1
- package/dist/assets/registry-Dbe9TQPw.css +0 -1
- package/dist/assets/registry-S3j4OpCH.js +0 -1
- package/dist/assets/registry-YrewlFlo.js +0 -1
- package/dist/assets/registry-dmR14XnY.css +0 -1
- package/dist/assets/registry-twSIyxJQ.css +0 -1
- package/dist/assets/select-BuqyXI8k.js +0 -3
- package/dist/assets/shapes-BwoDrn09.js +0 -1
- package/dist/assets/shard001-gQEQs7_F.js +0 -1
- package/dist/assets/shard002-DbDas-W-.js +0 -1
- package/dist/assets/shard003-DxMszG4_.js +0 -1
- package/dist/assets/shard004-DZMpLBw1.js +0 -1
- package/dist/assets/shard005-Dp5TM33O.js +0 -1
- package/dist/assets/shard006-DpJfkjmW.js +0 -1
- package/dist/assets/shard007-CIQN8OfZ.js +0 -1
- package/dist/assets/shard008-BFiyL7r6.js +0 -1
- package/dist/assets/shard009-0s30Tkk9.js +0 -1
- package/dist/assets/shard010-DPhgF5ck.js +0 -1
- package/dist/assets/shard011-C2jVsC25.js +0 -1
- package/dist/assets/shard012-DYtN5yzJ.js +0 -1
- package/dist/assets/shard013-1D6_Qy9C.js +0 -1
- package/dist/assets/shard014-D8s7GHnm.js +0 -1
- package/dist/assets/shard015-16W6KgnL.js +0 -1
- package/dist/assets/shard016-B4PpWmro.js +0 -1
- package/dist/assets/shard017-BO1sA5b3.js +0 -1
- package/dist/assets/shard018-D4gn8z25.js +0 -1
- package/dist/assets/shard019-vSbfaqRA.js +0 -1
- package/dist/assets/shard020-DwbHP8bp.js +0 -1
- package/dist/assets/shard021-BhEyVVAL.js +0 -1
- package/dist/assets/shard022-BdT7zFy3.js +0 -1
- package/dist/assets/shard023-Dga_NQcm.js +0 -1
- package/dist/assets/shard024-CXHofcxc.js +0 -1
- package/dist/assets/shard025-a4CQKYw1.js +0 -1
- package/dist/assets/shard026-0rhLKfDL.js +0 -1
- package/dist/assets/shard027-C9GMfOtn.js +0 -1
- package/dist/assets/shard028-D9__rPnw.js +0 -1
- package/dist/assets/shard029-BSdYKGgG.js +0 -1
- package/dist/assets/shard030-DceOU7pS.js +0 -1
- package/dist/assets/shard031-C6_p076r.js +0 -1
- package/dist/assets/shard032-Cah16sJi.js +0 -1
- package/dist/assets/shard033-D-iobGzc.js +0 -1
- package/dist/assets/shard034-DIyfCKl8.js +0 -1
- package/dist/assets/shard035-BHWs8v0a.js +0 -1
- package/dist/assets/shard036-AhOPHqzq.js +0 -1
- package/dist/assets/shard037-CuAGDOOu.js +0 -1
- package/dist/assets/shard038-CYdtnPjK.js +0 -1
- package/dist/assets/shard039-DgvXKOyi.js +0 -1
- package/dist/assets/shard040-DO012waT.js +0 -1
- package/dist/assets/shard041-BeUicA1R.js +0 -1
- package/dist/assets/shard042-D2zbq14A.js +0 -1
- package/dist/assets/shard044-bmYKfH3A.js +0 -1
- package/dist/assets/shard045-i_R1olD9.js +0 -1
- package/dist/assets/shard046-CFk2L0GQ.js +0 -1
- package/dist/assets/shard047-pjHCnVaT.js +0 -1
- package/dist/assets/shard048-Cc7tGz6R.js +0 -1
- package/dist/assets/shard049-C9eoD-6Z.js +0 -1
- package/dist/assets/shard050-V3c_ZDrB.js +0 -1
- package/dist/assets/shard051-D1ISwZzf.js +0 -1
- package/dist/assets/shard052-Dy09xx3S.js +0 -1
- package/dist/assets/shard053-Bi4Z4cwW.js +0 -1
- package/dist/assets/shard054-CNzJxw2V.js +0 -1
- package/dist/assets/shard055-D2NJeMN1.js +0 -1
- package/dist/assets/shard056-sSFMbxXN.js +0 -1
- package/dist/assets/shard057-DhNK5nyZ.js +0 -1
- package/dist/assets/shard058-Du4SjxeD.js +0 -1
- package/dist/assets/shard059-fGiLnJzG.js +0 -1
- package/dist/assets/shard060-l84MDY2t.js +0 -1
- package/dist/assets/shard061-B3aIa7Aa.js +0 -1
- package/dist/assets/shard063-CMo-7Qit.js +0 -1
- package/dist/assets/shard064-B0EEOnfG.js +0 -1
- package/dist/assets/shard065-D-StlUHp.js +0 -1
- package/dist/assets/shard066-C2edvdvh.js +0 -1
- package/dist/assets/shard067-DFcuVhZm.js +0 -1
- package/dist/assets/shard068-BN8DM8JZ.js +0 -1
- package/dist/assets/shard069-i464K77p.js +0 -1
- package/dist/assets/shard070-BmNyRhxw.js +0 -1
- package/dist/assets/shard071-BPVvR8GH.js +0 -1
- package/dist/assets/shard072-Bal_0d9L.js +0 -1
- package/dist/assets/shard073-CBQu62kt.js +0 -1
- package/dist/assets/shard074-D5BRae0w.js +0 -1
- package/dist/assets/shard075-DtFvcBnZ.js +0 -1
- package/docs/media/go-hub.jpg +0 -0
- /package/dist/assets/{registry-Ci65uThi.js → registry-C4RNoF_2.js} +0 -0
- /package/dist/assets/{registry-Bjf2Ggs6.js → registry-CbKXa68-.js} +0 -0
- /package/dist/assets/{registry-Di1fTdpi.js → registry-Cdk7NOiD.js} +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"./jsx-runtime-DeHZSEgm.js";import{n as r}from"./icons-gLFQTv74.js";import{t as i}from"./richText-BkxJhl9N.js";import{i as a}from"./scale-Bcgfo6Hp.js";import{r as o}from"./lib-Dkb5WBRc.js";import{t as s}from"./registry-types-D3q_LrlV.js";import{n as c}from"./sourceHost-BV3t2XDb.js";var l=t(),u=n(),d=480,f=200,p=20,m=440,h=136,g=[`Exposition`,`Rising Action`,`Climax`,`Falling Action`,`Dénouement`],_=[0,.2,.5,.8,1],v=[.08,.45,1,.5,.1],y=[{label:`Act I — Setup`,x0:0,x1:.25},{label:`Act II — Confrontation`,x0:.25,x1:.75},{label:`Act III — Resolution`,x0:.75,x1:1}],b=[{x:.25,label:`Plot Point I`},{x:.75,label:`Plot Point II`}],x=[`Ordinary World`,`Call`,`Refusal`,`Mentor`,`Crossing`,`Tests`,`Innermost Cave`,`Ordeal`,`Reward`,`Road Back`,`Resurrection`,`Return`],S=[{label:`Opening Image`,pct:1},{label:`Theme Stated`,pct:5},{label:`Set-up`,pct:10},{label:`Catalyst`,pct:12},{label:`Debate`,pct:20},{label:`Break into 2`,pct:25},{label:`B Story`,pct:30},{label:`Fun & Games`,pct:50},{label:`Midpoint`,pct:50},{label:`Bad Guys Close In`,pct:62.5},{label:`All Is Lost`,pct:75},{label:`Dark Night`,pct:80},{label:`Break into 3`,pct:87},{label:`Finale`,pct:95},{label:`Final Image`,pct:99}],C=e=>p+e*m,w=e=>p+(1-e)*h,T=22;function E(e,t){return e.length>t?e.slice(0,t-1).trimEnd()+`…`:e}function D(e,t){let n=e.trim().toLowerCase(),r=t.findIndex(e=>e.toLowerCase()===n);return r>=0?r:t.findIndex(e=>e.toLowerCase().includes(n)||n.includes(e.toLowerCase()))}function ee({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,framework:a,beats:o,caption:s,footer:c,delay:p}){let m=r[t]??r.layers,h=(0,l.useMemo)(()=>{let e=o??[];return a===`freytag`?te(e):a===`threeact`?ne(e):a===`herojourney`?re(e):a===`savethecat`?ie(e):null},[a,o]),g={freytag:`Freytag Pyramid`,threeact:`Three-Act Structure`,herojourney:`Hero's Journey`,savethecat:`Save the Cat`};return(0,u.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(p??0)+`ms`},children:[e&&(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(m,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`div`,{className:`sa-framework-label`,children:g[a]??a}),(0,u.jsx)(`div`,{className:`sa-wrap`,children:(0,u.jsx)(`svg`,{className:`sa-svg`,viewBox:`0 0 ${d} ${f}`,role:`img`,"aria-label":`${g[a]??a} story structure`,preserveAspectRatio:`xMidYMid meet`,children:h})}),s&&(0,u.jsx)(`div`,{className:`block-caption`,children:s}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,dangerouslySetInnerHTML:i(c),style:{marginTop:12}})]})}function te(e){let t=_.map((e,t)=>`${C(e).toFixed(1)},${w(v[t]).toFixed(1)}`).join(` `),n=[`${C(0).toFixed(1)},${w(0).toFixed(1)}`,..._.map((e,t)=>`${C(e).toFixed(1)},${w(v[t]).toFixed(1)}`),`${C(1).toFixed(1)},${w(0).toFixed(1)}`].join(` `),r=e.map((e,t)=>{let n=D(e.stage,g);if(n<0)return null;let r=_[n],i=v[n],a=C(r),o=w(i);return(0,u.jsxs)(`g`,{children:[(0,u.jsx)(`circle`,{cx:a,cy:o,r:4,className:`sa-beat-dot`}),(0,u.jsxs)(`text`,{x:a,y:o-10,textAnchor:`middle`,className:`sa-beat-lbl`,children:[E(e.label,T),e.label.length>T&&(0,u.jsx)(`title`,{children:e.label})]})]},t)}).filter(Boolean);return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(`polygon`,{points:n,className:`sa-fill`}),(0,u.jsx)(`polyline`,{points:t,fill:`none`,className:`sa-curve`}),(0,u.jsx)(`line`,{x1:C(0),y1:w(0),x2:C(1),y2:w(0),className:`sa-baseline`}),g.map((e,t)=>{let n=t===0?`start`:t===g.length-1?`end`:`middle`;return(0,u.jsx)(`text`,{x:C(_[t]),y:194,textAnchor:n,className:`sa-stage-lbl`,children:e},t)}),r]})}function ne(e){let t=[`color-mix(in oklab, var(--presence) 12%, transparent)`,`color-mix(in oklab, var(--warning) 12%, transparent)`,`color-mix(in oklab, var(--insight) 12%, transparent)`],n=e.map((e,t)=>{let n=D(e.stage,y.map(e=>e.label));if(n<0)return null;let r=y[n],i=C((r.x0+r.x1)/2),a=w(.5);return(0,u.jsxs)(`g`,{children:[(0,u.jsx)(`circle`,{cx:i,cy:a,r:4,className:`sa-beat-dot`}),(0,u.jsxs)(`text`,{x:i,y:a-10,textAnchor:`middle`,className:`sa-beat-lbl`,children:[E(e.label,T),e.label.length>T&&(0,u.jsx)(`title`,{children:e.label})]})]},t)}).filter(Boolean);return(0,u.jsxs)(u.Fragment,{children:[y.map((e,n)=>(0,u.jsx)(`rect`,{x:C(e.x0),y:p,width:m*(e.x1-e.x0),height:h,fill:t[n],className:`sa-act-rect`},n)),b.map((e,t)=>(0,u.jsxs)(`g`,{children:[(0,u.jsx)(`line`,{x1:C(e.x),y1:p,x2:C(e.x),y2:w(0),className:`sa-transition`}),(0,u.jsx)(`text`,{x:C(e.x),y:32,textAnchor:`middle`,className:`sa-transition-lbl`,children:e.label})]},t)),y.map((e,t)=>(0,u.jsx)(`text`,{x:C((e.x0+e.x1)/2),y:194,textAnchor:`middle`,className:`sa-stage-lbl`,children:e.label},t)),n]})}function re(e){let t=x.length,n=h*.42,r=d/2,i=x.map((e,i)=>{let a=2*Math.PI*i/t-Math.PI/2;return{x:r+n*Math.cos(a),y:110+n*Math.sin(a),lx:r+83.12*Math.cos(a),ly:110+83.12*Math.sin(a),angle:a}}),a=e.map((e,t)=>{let n=D(e.stage,x);if(n<0)return null;let r=i[n];return(0,u.jsxs)(`g`,{children:[(0,u.jsx)(`circle`,{cx:r.x,cy:r.y,r:5,className:`sa-beat-dot-hero`}),(0,u.jsxs)(`text`,{x:r.lx,y:r.ly,textAnchor:`middle`,className:`sa-beat-lbl`,children:[E(e.label,T),e.label.length>T&&(0,u.jsx)(`title`,{children:e.label})]})]},t)}).filter(Boolean),o=i.map((e,t)=>t===0?`M ${e.x.toFixed(1)},${e.y.toFixed(1)}`:`L ${e.x.toFixed(1)},${e.y.toFixed(1)}`).join(` `)+` Z`;return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(`circle`,{cx:r,cy:110,r:n,fill:`none`,className:`sa-circle-guide`}),(0,u.jsx)(`path`,{d:o,fill:`none`,className:`sa-circle-path`}),i.map((e,t)=>{let n=e.lx<230?`end`:e.lx>250?`start`:`middle`;return(0,u.jsxs)(`g`,{children:[(0,u.jsx)(`circle`,{cx:e.x,cy:e.y,r:3.5,className:`sa-stage-dot`}),(0,u.jsx)(`text`,{x:e.lx,y:e.ly+4,textAnchor:n,className:`sa-hj-lbl`,children:x[t]})]},t)}),a,(0,u.jsx)(`text`,{x:164.88,y:116,textAnchor:`middle`,className:`sa-arc-lbl`,transform:`rotate(-90 164.88 110)`,children:`DEPARTURE`}),(0,u.jsx)(`text`,{x:r,y:28,textAnchor:`middle`,className:`sa-arc-lbl`,children:`INITIATION`}),(0,u.jsx)(`text`,{x:315.12,y:116,textAnchor:`middle`,className:`sa-arc-lbl`,transform:`rotate(90 315.12 110)`,children:`RETURN`})]})}function ie(e){let t=w(.5),n=e.map((e,n)=>{let r=D(e.stage,S.map(e=>e.label)),i=r>=0?S[r].pct/100:-1;if(i<0)return null;let a=C(i);return(0,u.jsxs)(`g`,{children:[(0,u.jsx)(`line`,{x1:a,y1:t-16,x2:a,y2:t+6,className:`sa-stc-pin`}),(0,u.jsxs)(`text`,{x:a,y:t-22,textAnchor:`middle`,className:`sa-beat-lbl`,children:[E(e.label,T),e.label.length>T&&(0,u.jsx)(`title`,{children:e.label})]})]},n)}).filter(Boolean);return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(`rect`,{x:p,y:t-4,width:m,height:8,rx:4,className:`sa-stc-bar`}),[25,75].map((e,n)=>(0,u.jsx)(`line`,{x1:C(e/100),y1:t-20,x2:C(e/100),y2:t+20,className:`sa-stc-break`},n)),S.map((e,n)=>{let r=C(e.pct/100),i=n%2==0;return(0,u.jsxs)(`g`,{children:[(0,u.jsx)(`line`,{x1:r,y1:t-4,x2:r,y2:i?t-10:t+10,className:`sa-stc-tick`}),(0,u.jsx)(`text`,{x:r,y:i?t-16:t+22,textAnchor:`middle`,className:`sa-stc-lbl`,children:e.label})]},n)}),[0,25,50,75,100].map(e=>(0,u.jsxs)(`text`,{x:C(e/100),y:196,textAnchor:`middle`,className:`sa-pct-lbl`,children:[e,`%`]},e)),n]})}var O={metaphor:`color-mix(in oklab, var(--presence) 25%, transparent)`,simile:`color-mix(in oklab, var(--insight) 25%, transparent)`,alliteration:`color-mix(in oklab, var(--warning) 22%, transparent)`,irony:`color-mix(in oklab, var(--danger) 20%, transparent)`,anaphora:`color-mix(in oklab, var(--presence) 35%, transparent)`,hyperbole:`color-mix(in oklab, var(--warning) 32%, transparent)`,personification:`color-mix(in oklab, var(--insight) 30%, transparent)`,allusion:`color-mix(in oklab, var(--presence) 18%, transparent)`,parallelism:`color-mix(in oklab, var(--insight) 22%, transparent)`,antithesis:`color-mix(in oklab, var(--danger) 25%, transparent)`,oxymoron:`color-mix(in oklab, var(--warning) 28%, transparent)`,repetition:`color-mix(in oklab, var(--presence) 20%, transparent)`,chiasmus:`color-mix(in oklab, var(--insight) 28%, transparent)`,assonance:`color-mix(in oklab, var(--warning) 18%, transparent)`,other:`color-mix(in oklab, var(--text-muted) 22%, transparent)`},k={metaphor:`var(--presence)`,simile:`var(--insight)`,alliteration:`var(--warning)`,irony:`var(--danger)`,anaphora:`var(--presence)`,hyperbole:`var(--warning)`,personification:`var(--insight)`,allusion:`var(--presence)`,parallelism:`var(--insight)`,antithesis:`var(--danger)`,oxymoron:`var(--warning)`,repetition:`var(--presence)`,chiasmus:`var(--insight)`,assonance:`var(--warning)`,other:`var(--text-muted)`};function ae(e,t){let n=[...t].sort((e,t)=>t.phrase.length-e.phrase.length),r=[];for(let t of n){let n=e.toLowerCase(),i=t.phrase.toLowerCase(),a=0;for(;a<n.length;){let o=n.indexOf(i,a);if(o<0)break;r.some(e=>o<e.end&&o+t.phrase.length>e.start)||r.push({start:o,end:o+t.phrase.length,device:t.device,phrase:e.slice(o,o+t.phrase.length),note:t.note}),a=o+1}}r.sort((e,t)=>e.start-t.start);let i=[],a=0;for(let t of r)t.start>a&&i.push({kind:`plain`,text:e.slice(a,t.start)}),i.push({kind:`marked`,text:t.phrase,device:t.device,note:t.note}),a=t.end;return a<e.length&&i.push({kind:`plain`,text:e.slice(a)}),i.length?i:[{kind:`plain`,text:e}]}function oe({title:e,icon:t=`doc`,iconColor:n=`var(--presence)`,text:a,marks:o,caption:s,footer:c,delay:d}){let f=r[t]??r.doc,p=(0,l.useMemo)(()=>o??[],[o]),m=(0,l.useMemo)(()=>ae(a,p),[a,p]),h=(0,l.useMemo)(()=>[...new Set(p.map(e=>e.device))],[p]);return(0,u.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(d??0)+`ms`},children:[e&&(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(f,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`p`,{className:`dm-passage`,children:m.map((e,t)=>{if(e.kind===`plain`)return e.text;let n=O[e.device]??O.other,r=k[e.device]??k.other;return(0,u.jsx)(`span`,{className:`dm-mark`,style:{"--dm-bg":n,"--dm-border":r},title:e.note?`${e.device}: ${e.note}`:e.device,"aria-label":`${e.text} [${e.device}${e.note?`: `+e.note:``}]`,children:e.text},t)})}),h.length>0&&(0,u.jsx)(`div`,{className:`dm-legend`,children:h.map(e=>{let t=O[e]??O.other,n=k[e]??k.other,r=p.find(t=>t.device===e&&t.note);return(0,u.jsxs)(`span`,{className:`dm-legend-item`,children:[(0,u.jsx)(`span`,{className:`dm-legend-swatch`,style:{"--dm-bg":t,"--dm-border":n}}),(0,u.jsxs)(`span`,{className:`dm-legend-label`,children:[e[0].toUpperCase()+e.slice(1),r&&(0,u.jsxs)(`span`,{className:`dm-legend-note`,children:[` — `,r.note]})]})]},e)})}),s&&(0,u.jsx)(`div`,{className:`block-caption dm-caption`,children:s}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,dangerouslySetInnerHTML:i(c),style:{marginTop:12}})]})}var se={info:`var(--presence)`,success:`var(--insight)`,warn:`var(--warning)`,danger:`var(--danger)`,neutral:`var(--text-muted)`},ce={info:`spark`,success:`check`,warn:`alert`,danger:`shield`,neutral:`doc`};function le({title:e,icon:t,iconColor:n,tone:a=`info`,kicker:o,body:s,points:c,collapsed:d=!1,footer:f,delay:p}){let[m,h]=(0,l.useState)(!d),g=se[a],_=r[t??ce[a]]||r.spark;return(0,u.jsxs)(`div`,{className:`card reveal lay-callout`,style:{"--delay":(p||0)+`ms`,"--lc":g},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(_,{className:`ic`,style:{color:n||g}}),` `,e]}),(0,u.jsxs)(`button`,{className:`lay-co-band`,type:`button`,onClick:()=>h(e=>!e),"aria-expanded":m,children:[(0,u.jsx)(`span`,{className:`lay-co-bar`}),(0,u.jsx)(_,{className:`ic lay-co-kic-ic`,style:{color:g}}),(0,u.jsx)(`span`,{className:`lay-co-kicker`,children:o||a}),(0,u.jsx)(r.chevR,{className:`ic lay-chev`,style:{transform:m?`rotate(90deg)`:`none`}})]}),(0,u.jsx)(`div`,{className:`lay-co-body ${m?`open`:``}`,children:(0,u.jsxs)(`div`,{className:`lay-co-inner`,children:[(0,u.jsx)(`div`,{className:`lay-co-text`,dangerouslySetInnerHTML:i(s)}),c&&c.length>0&&(0,u.jsx)(`ul`,{className:`lay-co-points`,children:c.map((e,t)=>(0,u.jsxs)(`li`,{children:[(0,u.jsx)(r.chevR,{className:`ic lay-co-pt-ic`,style:{color:g}}),(0,u.jsx)(`span`,{dangerouslySetInnerHTML:i(e)})]},t))})]})}),f&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(f)})]})}var A={yes:{color:`var(--insight)`,label:`Yes`,icon:`check`},no:{color:`var(--danger)`,label:`No`,icon:`x`},maybe:{color:`var(--warning)`,label:`Maybe`,icon:`alert`},caution:{color:`var(--warning)`,label:`Be careful`,icon:`alert`}},ue={high:`High confidence`,medium:`Medium confidence`,low:`Low confidence`},de={high:3,medium:2,low:1};function fe({title:e,icon:t,iconColor:n,verdict:a,stance:o=`maybe`,label:s,reason:c,caveat:l,confidence:d,footer:f,delay:p}){let m=A[o]??A.maybe,h=r[t??m.icon]||r.spark,g=r[m.icon]||r.check;return(0,u.jsxs)(`div`,{className:`card reveal lay-verdict`,style:{"--delay":(p||0)+`ms`,"--vc":m.color},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(h,{className:`ic`,style:{color:n||m.color}}),` `,e]}),(0,u.jsxs)(`div`,{className:`lay-vd-head`,children:[(0,u.jsxs)(`span`,{className:`lay-vd-badge`,children:[(0,u.jsx)(g,{className:`ic lay-vd-badge-ic`}),s||m.label]}),d&&(0,u.jsxs)(`span`,{className:`lay-vd-conf`,children:[(0,u.jsx)(`span`,{className:`lay-vd-dots`,"aria-hidden":`true`,children:[0,1,2].map(e=>(0,u.jsx)(`span`,{className:`lay-vd-dot ${e<de[d]?`on`:``}`},e))}),ue[d]]})]}),(0,u.jsx)(`div`,{className:`lay-vd-verdict`,dangerouslySetInnerHTML:i(a)}),c&&(0,u.jsxs)(`div`,{className:`lay-vd-reason`,children:[(0,u.jsx)(`span`,{className:`lay-vd-tag`,children:`Why`}),(0,u.jsx)(`span`,{dangerouslySetInnerHTML:i(c)})]}),l&&(0,u.jsxs)(`div`,{className:`lay-vd-caveat`,children:[(0,u.jsx)(r.alert,{className:`ic lay-vd-caveat-ic`}),(0,u.jsx)(`span`,{dangerouslySetInnerHTML:i(l)})]}),f&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(f)})]})}var pe={best:{color:`var(--insight)`,label:`Best case`},likely:{color:`var(--presence)`,label:`Likely`},worst:{color:`var(--danger)`,label:`Worst case`}};function me({title:e,icon:t=`chart`,iconColor:n=`var(--presence)`,metric:a,scenarios:o,highlight:s,footer:c,delay:l}){let d=r[t]||r.chart,f=s??o.findIndex(e=>e.kind===`likely`);return(0,u.jsxs)(`div`,{className:`card reveal lay-scenarios`,style:{"--delay":(l||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),a&&(0,u.jsx)(`div`,{className:`lay-sc-metric faint`,children:a}),(0,u.jsx)(`div`,{className:`lay-sc-grid`,children:o.map((e,t)=>{let n=(e.kind?pe[e.kind]:void 0)??{color:`var(--text-muted)`,label:e.label||`Scenario`};return(0,u.jsxs)(`div`,{className:`lay-sc-panel ${t===f?`hi`:``}`,style:{"--sc":n.color},children:[(0,u.jsx)(`span`,{className:`lay-sc-bar`}),(0,u.jsx)(`span`,{className:`lay-sc-label`,children:e.label||n.label}),(0,u.jsx)(`span`,{className:`lay-sc-value`,children:e.value}),e.detail&&(0,u.jsx)(`span`,{className:`lay-sc-detail faint`,dangerouslySetInnerHTML:i(e.detail)}),e.points&&e.points.length>0&&(0,u.jsx)(`ul`,{className:`lay-sc-points`,children:e.points.map((e,t)=>(0,u.jsxs)(`li`,{children:[(0,u.jsx)(`span`,{className:`lay-sc-pt-dot`}),(0,u.jsx)(`span`,{dangerouslySetInnerHTML:i(e)})]},t))})]},t)})}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}function he({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,sections:a,defaultOpen:o=0,multi:s=!1,footer:c,delay:d}){let f=r[t]||r.layers,[p,m]=(0,l.useState)(()=>o>=0?new Set([o]):new Set),h=e=>m(t=>{let n=new Set(s?t:[]);return t.has(e)?n.delete(e):n.add(e),n});return(0,u.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(d||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(f,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`div`,{className:`lay-acc-list`,children:a.map((e,t)=>{let a=p.has(t),o=e.icon?r[e.icon]:null;return(0,u.jsxs)(`div`,{className:`lay-acc-item ${a?`open`:``}`,children:[(0,u.jsxs)(`button`,{type:`button`,className:`lay-acc-head`,onClick:()=>h(t),"aria-expanded":a,children:[o&&(0,u.jsx)(o,{className:`ic lay-acc-lead`,style:{color:e.tagColor||n}}),(0,u.jsx)(`span`,{className:`lay-acc-label`,children:e.label}),e.tag&&(0,u.jsx)(`span`,{className:`lay-acc-tag`,style:e.tagColor?{color:e.tagColor,borderColor:`currentColor`}:void 0,children:e.tag}),e.meta&&(0,u.jsx)(`span`,{className:`lay-acc-meta`,children:e.meta}),(0,u.jsx)(r.arrowDown,{className:`ic lay-acc-chev`,style:{transform:a?`rotate(180deg)`:`none`}})]}),(0,u.jsx)(`div`,{className:`lay-acc-body ${a?`open`:``}`,children:(0,u.jsx)(`div`,{className:`lay-acc-body-inner`,dangerouslySetInnerHTML:i(e.body)})})]},t)})}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}function j({side:e,label:t,items:n,accent:a,hover:o,setHover:s}){let c=e===`pro`?r.check:r.x;return(0,u.jsxs)(`div`,{className:`lay-pc-col`,style:{"--pc":a},children:[(0,u.jsxs)(`div`,{className:`lay-pc-head`,children:[(0,u.jsx)(c,{className:`ic`,style:{color:a}}),(0,u.jsx)(`span`,{children:t}),(0,u.jsx)(`span`,{className:`lay-pc-count tab-num`,children:n.length})]}),(0,u.jsx)(`ul`,{className:`lay-pc-list`,children:n.map((t,n)=>{let r=o?.side===e&&o.i===n,l=Math.max(1,Math.min(5,t.weight??3));return(0,u.jsxs)(`li`,{className:`lay-pc-item ${r?`on`:``}`,onMouseEnter:()=>s({side:e,i:n}),onMouseLeave:()=>s(null),children:[(0,u.jsx)(c,{className:`ic lay-pc-mark`,style:{color:a}}),(0,u.jsxs)(`div`,{className:`lay-pc-body`,children:[(0,u.jsx)(`span`,{className:`lay-pc-text`,dangerouslySetInnerHTML:i(t.text)}),(0,u.jsx)(`span`,{className:`lay-pc-pips`,"aria-label":`weight ${l} of 5`,children:[0,1,2,3,4].map(e=>(0,u.jsx)(`span`,{className:`lay-pc-pip ${e<l?`fill`:``}`,style:{background:e<l?a:void 0}},e))}),t.note&&r&&(0,u.jsx)(`span`,{className:`lay-pc-note faint`,dangerouslySetInnerHTML:i(t.note)})]})]},n)})})]})}function ge({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,prosLabel:a=`Pros`,consLabel:o=`Cons`,pros:s,cons:c,verdict:d,footer:f,delay:p}){let m=r[t]||r.layers,[h,g]=(0,l.useState)(null),_=s.reduce((e,t)=>e+(t.weight??3),0),v=c.reduce((e,t)=>e+(t.weight??3),0),y=_/(_+v||1)*100;return(0,u.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(p||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(m,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsxs)(`div`,{className:`lay-pc-grid`,children:[(0,u.jsx)(j,{side:`pro`,label:a,items:s,accent:`var(--insight)`,hover:h,setHover:g}),(0,u.jsx)(`div`,{className:`lay-pc-divider`}),(0,u.jsx)(j,{side:`con`,label:o,items:c,accent:`var(--danger)`,hover:h,setHover:g})]}),(0,u.jsxs)(`div`,{className:`lay-pc-verdict`,children:[(0,u.jsxs)(`div`,{className:`lay-pc-vbar`,children:[(0,u.jsx)(`span`,{className:`lay-pc-vbar-l`,style:{width:y+`%`}}),(0,u.jsx)(`span`,{className:`lay-pc-vbar-r`,style:{width:100-y+`%`}})]}),(0,u.jsxs)(`div`,{className:`lay-pc-vrow`,children:[(0,u.jsxs)(`span`,{className:`lay-pc-vlabel`,style:{color:`var(--insight)`},children:[(0,u.jsx)(`span`,{className:`tab-num`,children:_}),` for`]}),d?(0,u.jsx)(`span`,{className:`lay-pc-vtext`,dangerouslySetInnerHTML:i(d)}):(0,u.jsx)(`span`,{className:`lay-pc-vtext faint`,children:y>=50?`Leans for`:`Leans against`}),(0,u.jsxs)(`span`,{className:`lay-pc-vlabel`,style:{color:`var(--danger)`},children:[(0,u.jsx)(`span`,{className:`tab-num`,children:v}),` against`]})]})]}),f&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(f)})]})}function _e({title:e,icon:t=`spark`,iconColor:n=`var(--presence)`,heading:a,items:o,footer:s,delay:c}){let d=r[t]||r.spark,[f,p]=(0,l.useState)(new Set),m=e=>p(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),h=o.length?Math.round(f.size/o.length*100):0;return(0,u.jsxs)(`div`,{className:`card reveal lay-ta`,style:{"--delay":(c||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),a&&(0,u.jsx)(`div`,{className:`lay-ta-heading`,children:a}),(0,u.jsx)(`ol`,{className:`lay-ta-list`,children:o.map((e,t)=>{let n=e.color||`var(--presence)`,a=f.has(t);return(0,u.jsxs)(`li`,{className:`lay-ta-item ${a?`done`:``}`,children:[(0,u.jsx)(`button`,{type:`button`,className:`lay-ta-num`,style:{"--tc":n},onClick:()=>m(t),"aria-pressed":a,children:a?(0,u.jsx)(r.check,{className:`ic`}):(0,u.jsx)(`span`,{className:`tab-num`,children:t+1})}),(0,u.jsxs)(`div`,{className:`lay-ta-body`,children:[(0,u.jsx)(`span`,{className:`lay-ta-text`,dangerouslySetInnerHTML:i(e.text)}),e.detail&&(0,u.jsx)(`span`,{className:`lay-ta-detail faint`,dangerouslySetInnerHTML:i(e.detail)})]})]},t)})}),(0,u.jsxs)(`div`,{className:`lay-ta-foot`,children:[(0,u.jsx)(`div`,{className:`lay-ta-track`,children:(0,u.jsx)(`span`,{className:`lay-ta-fill`,style:{width:h+`%`}})}),(0,u.jsxs)(`span`,{className:`lay-ta-pct tab-num faint`,children:[f.size,`/`,o.length]})]}),s&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(s)})]})}function ve({title:e,icon:t=`chat`,iconColor:n=`var(--presence)`,items:a,defaultOpen:o=0,multi:s=!1,footer:c,delay:d}){let f=r[t]||r.chat,[p,m]=(0,l.useState)(()=>o>=0?new Set([o]):new Set),h=e=>m(t=>{let n=new Set(s?t:[]);return t.has(e)?n.delete(e):n.add(e),n});return(0,u.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(d||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(f,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`div`,{className:`lay-faq-list`,children:a.map((e,t)=>{let n=p.has(t);return(0,u.jsxs)(`div`,{className:`lay-faq-item ${n?`open`:``}`,children:[(0,u.jsxs)(`button`,{type:`button`,className:`lay-faq-q`,onClick:()=>h(t),"aria-expanded":n,children:[(0,u.jsx)(r.plus,{className:`ic lay-faq-sign`,style:{transform:n?`rotate(45deg)`:`none`}}),(0,u.jsx)(`span`,{className:`lay-faq-q-text`,dangerouslySetInnerHTML:i(e.q)}),e.tag&&(0,u.jsx)(`span`,{className:`lay-faq-tag`,children:e.tag})]}),(0,u.jsx)(`div`,{className:`lay-faq-a ${n?`open`:``}`,children:(0,u.jsx)(`div`,{className:`lay-faq-a-inner`,dangerouslySetInnerHTML:i(e.a)})})]},t)})}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}function ye({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,tabs:a,defaultTab:o=0,accent:s=`var(--presence)`,footer:c,delay:d}){let f=r[t]||r.layers,[p,m]=(0,l.useState)(Math.max(0,Math.min(o,a.length-1))),h=a[p],g=(0,l.useRef)([]),_=(e,t)=>{let n;if(e.key===`ArrowRight`||e.key===`ArrowDown`)n=(t+1)%a.length;else if(e.key===`ArrowLeft`||e.key===`ArrowUp`)n=(t-1+a.length)%a.length;else if(e.key===`Home`)n=0;else if(e.key===`End`)n=a.length-1;else return;e.preventDefault(),m(n),g.current[n]?.focus()},v=Math.max(1,a.length);return(0,u.jsxs)(`div`,{className:`card reveal lay-tabs`,style:{"--delay":(d||0)+`ms`,"--tab-acc":s},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(f,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsxs)(`div`,{className:`lay-tab-bar`,role:`tablist`,children:[a.map((e,t)=>{let n=e.icon?r[e.icon]:null;return(0,u.jsxs)(`button`,{ref:e=>{g.current[t]=e},role:`tab`,type:`button`,className:`lay-tab ${t===p?`on`:``}`,"aria-selected":t===p,tabIndex:t===p?0:-1,onClick:()=>m(t),onKeyDown:e=>_(e,t),children:[n&&(0,u.jsx)(n,{className:`ic lay-tab-ic`}),(0,u.jsx)(`span`,{children:e.label}),e.badge!=null&&(0,u.jsx)(`span`,{className:`lay-tab-badge tab-num`,children:e.badge})]},t)}),(0,u.jsx)(`span`,{className:`lay-tab-underline`,style:{width:`${100/v}%`,transform:`translateX(${p*100}%)`}})]}),(0,u.jsx)(`div`,{className:`lay-tab-panel`,role:`tabpanel`,children:h&&(0,u.jsx)(`div`,{className:`lay-tab-body`,dangerouslySetInnerHTML:i(h.body)})},p),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}function be({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,eyebrow:a,heading:o,sub:s,badge:c,badgeColor:d=`var(--presence)`,chips:f,footer:p,delay:m}){let h=r[t]||r.layers,[g,_]=(0,l.useState)(0);return(0,u.jsxs)(`div`,{className:`card reveal lay-div`,style:{"--delay":(m||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(h,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsxs)(`div`,{className:`lay-div-main`,children:[(0,u.jsxs)(`div`,{className:`lay-div-head`,children:[a&&(0,u.jsx)(`div`,{className:`lay-div-eyebrow`,children:a}),(0,u.jsx)(`div`,{className:`lay-div-heading`,children:o})]}),c&&(0,u.jsx)(`span`,{className:`lay-div-badge tab-num`,style:{"--bc":d},children:c})]}),(0,u.jsxs)(`div`,{className:`lay-div-rule`,children:[(0,u.jsx)(`span`,{className:`lay-div-rule-line`}),(0,u.jsx)(`span`,{className:`lay-div-rule-dot`,style:{background:d}}),(0,u.jsx)(`span`,{className:`lay-div-rule-line`})]}),s&&(0,u.jsx)(`div`,{className:`lay-div-sub`,dangerouslySetInnerHTML:i(s)}),f&&f.length>0&&(0,u.jsx)(`div`,{className:`lay-div-chips`,children:f.map((e,t)=>{let n=e.color||`var(--presence)`;return(0,u.jsx)(`button`,{type:`button`,className:`lay-div-chip ${t===g?`on`:``}`,style:{"--cc":n},onClick:()=>_(t),children:e.label},t)})}),p&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(p)})]})}var xe={info:`var(--presence)`,success:`var(--insight)`,warn:`var(--warning)`,danger:`var(--danger)`,neutral:`var(--text-muted)`};function M({title:e,icon:t=`quote`,iconColor:n,quote:a,author:o,role:s,tone:c=`info`,variants:d,footer:f,delay:p}){let m=r[t]||r.quote,h=xe[c],g=[{quote:a,author:o,role:s},...d||[]],[_,v]=(0,l.useState)(0),y=g[_];return(0,u.jsxs)(`div`,{className:`card reveal lay-pq`,style:{"--delay":(p||0)+`ms`,"--pq":h},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(m,{className:`ic`,style:{color:n||h}}),` `,e]}),(0,u.jsxs)(`figure`,{className:`lay-pq-fig`,children:[(0,u.jsx)(`span`,{className:`lay-pq-bar`}),(0,u.jsx)(r.quote,{className:`ic lay-pq-mark`,style:{color:h}}),(0,u.jsx)(`blockquote`,{className:`lay-pq-quote`,dangerouslySetInnerHTML:i(y.quote)},_),(y.author||y.role)&&(0,u.jsxs)(`figcaption`,{className:`lay-pq-cap`,children:[y.author&&(0,u.jsx)(`span`,{className:`lay-pq-author`,children:y.author}),y.role&&(0,u.jsx)(`span`,{className:`lay-pq-role faint`,children:y.role})]})]}),g.length>1&&(0,u.jsxs)(`div`,{className:`lay-pq-nav`,children:[(0,u.jsx)(`button`,{type:`button`,className:`lay-pq-arrow mini-btn`,onClick:()=>v(e=>(e-1+g.length)%g.length),"aria-label":`previous quote`,children:(0,u.jsx)(r.chevR,{className:`ic`,style:{transform:`rotate(180deg)`}})}),(0,u.jsx)(`span`,{className:`lay-pq-dots`,children:g.map((e,t)=>(0,u.jsx)(`button`,{type:`button`,className:`lay-pq-dot ${t===_?`on`:``}`,onClick:()=>v(t),"aria-label":`quote ${t+1}`},t))}),(0,u.jsx)(`button`,{type:`button`,className:`lay-pq-arrow mini-btn`,onClick:()=>v(e=>(e+1)%g.length),"aria-label":`next quote`,children:(0,u.jsx)(r.chevR,{className:`ic`})})]}),f&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(f)})]})}function Se({title:e,icon:t=`slides`,iconColor:n=`var(--presence)`,panels:a,start:o=0,footer:s,delay:c}){let d=r[t]||r.slides,f=Math.max(0,a.length-1),[p,m]=(0,l.useState)(Math.max(0,Math.min(o,f))),h=a[p],g=h?.color||`var(--presence)`,_=h?.icon&&r[h.icon]||r.spark,v=Math.max(1,a.length),y=e=>m(t=>Math.max(0,Math.min(f,t+e)));return(0,u.jsxs)(`div`,{className:`card reveal lay-story`,style:{"--delay":(c||0)+`ms`,"--sc":g},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`div`,{className:`lay-story-stage`,children:(0,u.jsxs)(`div`,{className:`lay-story-panel`,children:[(0,u.jsx)(`div`,{className:`lay-story-badge`,style:{background:g},children:(0,u.jsx)(_,{className:`ic`})}),(0,u.jsxs)(`div`,{className:`lay-story-num tab-num`,children:[p+1,(0,u.jsxs)(`span`,{className:`lay-story-of`,children:[`/ `,v]})]}),(0,u.jsx)(`div`,{className:`lay-story-heading`,children:h?.heading}),h?.caption&&(0,u.jsx)(`div`,{className:`lay-story-caption faint`,children:h.caption}),(0,u.jsx)(`div`,{className:`lay-story-body`,dangerouslySetInnerHTML:i(h?.body||``)})]})},p),(0,u.jsx)(`div`,{className:`lay-story-track`,children:a.map((e,t)=>(0,u.jsx)(`button`,{type:`button`,className:`lay-story-tick ${t===p?`on`:``} ${t<p?`past`:``}`,style:{"--tk":e.color||`var(--presence)`},onClick:()=>m(t),"aria-label":`panel ${t+1}`},t))}),(0,u.jsxs)(`div`,{className:`lay-story-nav`,children:[(0,u.jsxs)(`button`,{type:`button`,className:`mini-btn`,onClick:()=>y(-1),disabled:p===0,children:[(0,u.jsx)(r.chevR,{className:`ic`,style:{transform:`rotate(180deg)`}}),` Back`]}),(0,u.jsxs)(`span`,{className:`lay-story-pos faint tab-num`,children:[p+1,` of `,v]}),(0,u.jsxs)(`button`,{type:`button`,className:`mini-btn accent`,onClick:()=>y(1),disabled:p===f,children:[`Next `,(0,u.jsx)(r.chevR,{className:`ic`})]})]}),s&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(s)})]})}var N=[{key:`setup`,label:`Setup`,icon:`doc`,color:`var(--text-muted)`},{key:`action`,label:`Action`,icon:`play`,color:`var(--presence)`},{key:`result`,label:`Result`,icon:`chart`,color:`var(--insight)`},{key:`lesson`,label:`Lesson`,icon:`spark`,color:`var(--warning)`}];function Ce({title:e,icon:t=`proof`,iconColor:n=`var(--presence)`,subject:a,setup:o,action:s,result:c,lesson:d,defaultStage:f=`result`,footer:p,delay:m}){let h=r[t]||r.proof,g={setup:o,action:s,result:c,lesson:d},[_,v]=(0,l.useState)(f);return(0,u.jsxs)(`div`,{className:`card reveal lay-cs`,style:{"--delay":(m||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(h,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`div`,{className:`lay-cs-subject`,children:a}),(0,u.jsx)(`div`,{className:`lay-cs-stages`,children:N.map((e,t)=>{let n=g[e.key],a=r[e.icon],o=_===e.key,s=t<N.length-1;return(0,u.jsxs)(`div`,{className:`lay-cs-stage ${o?`open`:``}`,style:{"--st":e.color},children:[(0,u.jsxs)(`span`,{className:`lay-cs-rail ${s?`has-line`:``}`,children:[(0,u.jsx)(`span`,{className:`lay-cs-node`,children:(0,u.jsx)(a,{className:`ic`})}),s&&(0,u.jsx)(`span`,{className:`lay-cs-line`})]}),(0,u.jsxs)(`button`,{type:`button`,className:`lay-cs-head`,onClick:()=>v(e.key),"aria-expanded":o,children:[(0,u.jsx)(`span`,{className:`lay-cs-label`,children:e.label}),n.metric&&(0,u.jsx)(`span`,{className:`lay-cs-metric tab-num`,children:n.metric}),(0,u.jsx)(r.chevR,{className:`ic lay-chev`,style:{transform:o?`rotate(90deg)`:`none`}})]}),(0,u.jsx)(`div`,{className:`lay-cs-body ${o?`open`:``}`,children:(0,u.jsx)(`div`,{className:`lay-cs-body-inner`,dangerouslySetInnerHTML:i(n.body)})})]},e.key)})}),p&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(p)})]})}function we(e){return e.replace(/<[^>]*>/g,``)}function Te({title:e,icon:t=`doc`,iconColor:n=`var(--presence)`,placeholder:a=`Filter terms…`,items:o,footer:s,delay:c}){let d=r[t]||r.doc,[f,p]=(0,l.useState)(``),m=(0,l.useMemo)(()=>{let e=f.trim().toLowerCase();return e?o.map((e,t)=>({it:e,i:t})).filter(({it:t})=>(t.term+` `+we(t.def)+` `+(t.tag||``)).toLowerCase().includes(e)):o.map((e,t)=>({it:e,i:t}))},[f,o]);return(0,u.jsxs)(`div`,{className:`card reveal lay-dl`,style:{"--delay":(c||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsxs)(`label`,{className:`lay-dl-search`,children:[(0,u.jsx)(r.eye,{className:`ic lay-dl-search-ic`}),(0,u.jsx)(`input`,{className:`lay-dl-input`,type:`text`,value:f,placeholder:a,onChange:e=>p(e.target.value)}),f&&(0,u.jsx)(`button`,{type:`button`,className:`lay-dl-clear`,onClick:()=>p(``),"aria-label":`clear`,children:(0,u.jsx)(r.x,{className:`ic`})}),(0,u.jsx)(`span`,{className:`lay-dl-count tab-num faint`,children:m.length})]}),(0,u.jsxs)(`dl`,{className:`lay-dl-list`,children:[m.map(({it:e,i:t})=>{let n=e.color||`var(--presence)`;return(0,u.jsxs)(`div`,{className:`lay-dl-item`,children:[(0,u.jsxs)(`dt`,{className:`lay-dl-term`,children:[(0,u.jsx)(`span`,{className:`lay-dl-dot`,style:{background:n}}),(0,u.jsx)(`span`,{className:`lay-dl-term-text`,children:e.term}),e.tag&&(0,u.jsx)(`span`,{className:`lay-dl-tag`,children:e.tag})]}),(0,u.jsx)(`dd`,{className:`lay-dl-def`,dangerouslySetInnerHTML:i(e.def)})]},t)}),m.length===0&&(0,u.jsxs)(`div`,{className:`lay-dl-empty faint`,children:[(0,u.jsx)(r.eyeOff,{className:`ic`}),` No terms match “`,f,`”.`]})]}),s&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(s)})]})}var P={"worth-it":{color:`var(--insight)`,label:`Worth it`,icon:`check`},skip:{color:`var(--danger)`,label:`Skip it`,icon:`x`},depends:{color:`var(--warning)`,label:`Depends`,icon:`alert`}};function Ee({title:e,icon:t,iconColor:n,product:a,verdict:o,price:s,priceNote:c,worthItIf:l,skipIf:d,dealBreaker:f,forWho:p,bottomLine:m,footer:h,delay:g}){let _=P[o]??P.depends,v=r[t??`cart`]||r.cart,y=r[_.icon]||r.check,b=l??[],x=d??[];return(0,u.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(g||0)+`ms`,"--wi":_.color},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(v,{className:`ic`,style:{color:n||_.color}}),` `,e]}),(0,u.jsxs)(`div`,{className:`wi-head`,children:[(0,u.jsxs)(`div`,{className:`wi-head-l`,children:[a&&(0,u.jsx)(`div`,{className:`wi-product`,children:a}),s&&(0,u.jsxs)(`div`,{className:`wi-price`,children:[(0,u.jsx)(`span`,{className:`wi-price-val`,children:s}),c&&(0,u.jsx)(`span`,{className:`wi-price-note`,children:c})]})]}),(0,u.jsxs)(`span`,{className:`wi-badge`,children:[(0,u.jsx)(y,{className:`ic wi-badge-ic`}),` `,_.label]})]}),(b.length>0||x.length>0)&&(0,u.jsxs)(`div`,{className:`wi-split`,children:[b.length>0&&(0,u.jsxs)(`div`,{className:`wi-col wi-col--yes`,children:[(0,u.jsx)(`div`,{className:`wi-col-h`,children:`Worth it if`}),(0,u.jsx)(`ul`,{className:`wi-list`,children:b.map((e,t)=>(0,u.jsxs)(`li`,{children:[(0,u.jsx)(r.check,{className:`ic wi-li-ic`}),(0,u.jsx)(`span`,{children:e})]},t))})]}),x.length>0&&(0,u.jsxs)(`div`,{className:`wi-col wi-col--no`,children:[(0,u.jsx)(`div`,{className:`wi-col-h`,children:`Skip if`}),(0,u.jsx)(`ul`,{className:`wi-list`,children:x.map((e,t)=>(0,u.jsxs)(`li`,{children:[(0,u.jsx)(r.x,{className:`ic wi-li-ic`}),(0,u.jsx)(`span`,{children:e})]},t))})]})]}),f&&(0,u.jsxs)(`div`,{className:`wi-dealbreaker`,children:[(0,u.jsx)(r.alert,{className:`ic`}),(0,u.jsxs)(`span`,{children:[(0,u.jsx)(`b`,{children:`Deal-breaker:`}),` `,f]})]}),(p||m)&&(0,u.jsxs)(`div`,{className:`wi-bottom`,children:[p&&(0,u.jsxs)(`div`,{className:`wi-forwho`,children:[(0,u.jsx)(`span`,{className:`wi-forwho-tag`,children:`For`}),` `,p]}),m&&(0,u.jsx)(`div`,{className:`wi-bottomline`,dangerouslySetInnerHTML:i(m)})]}),h&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(h)})]})}function De({reflection:e,follow:t,chip:n,delay:r}){return(0,u.jsxs)(`div`,{className:`card reveal cn-card`,style:{"--delay":(r||0)+`ms`},children:[(0,u.jsx)(`p`,{className:`cn-reflection`,children:e}),t&&(0,u.jsx)(`p`,{className:`cn-follow`,children:t}),n&&(0,u.jsx)(`span`,{className:`cn-chip`,children:n})]})}var F={good:`var(--insight)`,caution:`var(--warning)`,bad:`var(--danger)`};function Oe({title:e,icon:t=`alert`,iconColor:n,levels:a,atLevel:o,marker:s,reason:c,watchFor:l,caveat:d,footer:f,delay:p}){let m=r[t]||r.alert,h=a??[],g=typeof o==`number`?Math.max(0,Math.min(h.length-1,o)):-1,_=g>=0?h[g]:void 0,v=_?.tone?F[_.tone]:`var(--presence)`,y=l??[];return(0,u.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(p||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(m,{className:`ic`,style:{color:n||v}}),` `,e]}),(0,u.jsx)(`div`,{className:`pc-track`,children:h.map((e,t)=>(0,u.jsx)(`div`,{className:`pc-seg`+(t===g?` on`:``),style:{"--pc":e.tone?F[e.tone]:`var(--text-muted)`}},t))}),(0,u.jsx)(`div`,{className:`pc-labels`,children:h.map((e,t)=>(0,u.jsx)(`span`,{className:`pc-label`+(t===g?` on`:``),children:e.label},t))}),_&&(0,u.jsxs)(`div`,{className:`pc-current`,style:{"--pc":v},children:[(0,u.jsx)(`span`,{className:`pc-marker`,children:s||`Where this falls`}),(0,u.jsx)(`div`,{className:`pc-cur-label`,children:_.label}),_.detail&&(0,u.jsx)(`div`,{className:`pc-cur-detail`,children:_.detail})]}),c&&(0,u.jsx)(`div`,{className:`pc-reason`,children:c}),y.length>0&&(0,u.jsxs)(`div`,{className:`pc-watch`,children:[(0,u.jsxs)(`div`,{className:`pc-watch-h`,children:[(0,u.jsx)(r.alert,{className:`ic`}),` Get it checked if`]}),(0,u.jsx)(`ul`,{className:`pc-watch-list`,children:y.map((e,t)=>(0,u.jsx)(`li`,{children:e},t))})]}),d&&(0,u.jsx)(`div`,{className:`pc-caveat`,children:d}),f&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(f)})]})}var ke={common:{label:`Common`,color:`var(--insight)`},"less-common":{label:`Less common`,color:`var(--warning)`},rare:{label:`Rare`,color:`var(--text-muted)`}};function Ae({title:e,icon:t=`eye`,iconColor:n=`var(--presence)`,causes:a,prompt:o,caveat:s,footer:c,delay:l}){let d=r[t]||r.eye,f=a??[];return(0,u.jsxs)(`div`,{className:`card reveal`,style:{"--delay":(l||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`ol`,{className:`df-list`,children:f.map((e,t)=>{let n=e.likelihood?ke[e.likelihood]:void 0;return(0,u.jsxs)(`li`,{className:`df-cause`,children:[(0,u.jsxs)(`div`,{className:`df-head`,children:[(0,u.jsx)(`span`,{className:`df-rank`,children:t+1}),(0,u.jsx)(`span`,{className:`df-name`,children:e.name}),n&&(0,u.jsx)(`span`,{className:`df-band`,style:{"--db":n.color},children:n.label}),e.serious&&(0,u.jsxs)(`span`,{className:`df-serious`,children:[(0,u.jsx)(r.alert,{className:`ic`}),` serious`]})]}),e.tell&&(0,u.jsxs)(`div`,{className:`df-tell`,children:[(0,u.jsx)(`span`,{className:`df-tag df-tag--fit`,children:`Fits if`}),` `,e.tell]}),e.pointsAway&&(0,u.jsxs)(`div`,{className:`df-away`,children:[(0,u.jsx)(`span`,{className:`df-tag`,children:`Points away`}),` `,e.pointsAway]})]},t)})}),o&&(0,u.jsxs)(`div`,{className:`df-prompt`,children:[(0,u.jsx)(r.check,{className:`ic`}),(0,u.jsx)(`span`,{children:o})]}),s&&(0,u.jsx)(`div`,{className:`df-caveat`,children:s}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}function je({title:e=`A gentler take`,icon:t=`spark`,iconColor:n=`var(--presence)`,thought:a,distortion:o,reframe:s,footer:c,delay:l}){let d=r[t]||r.spark;return(0,u.jsxs)(`div`,{className:`card reveal rf-card`,style:{"--delay":(l||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsxs)(`div`,{className:`rf-thought`,children:[(0,u.jsx)(`div`,{className:`rf-tag`,children:`What you're telling yourself`}),(0,u.jsxs)(`p`,{className:`rf-quote`,children:[(0,u.jsx)(r.quote,{className:`ic rf-quote-ic`,style:{width:14,height:14}}),(0,u.jsx)(`span`,{dangerouslySetInnerHTML:i(a)})]}),o&&(0,u.jsx)(`span`,{className:`rf-distortion`,children:o})]}),(0,u.jsxs)(`div`,{className:`rf-shift`,"aria-hidden":`true`,children:[(0,u.jsx)(`span`,{className:`rf-shift-line`}),(0,u.jsx)(r.spark,{className:`ic rf-shift-ic`,style:{width:13,height:13}}),(0,u.jsx)(`span`,{className:`rf-shift-line`})]}),(0,u.jsxs)(`div`,{className:`rf-reframe`,children:[(0,u.jsx)(`div`,{className:`rf-tag rf-tag--true`,children:`What's also true`}),(0,u.jsx)(`p`,{className:`rf-counter`,dangerouslySetInnerHTML:i(s)})]}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}var I={478:{inhale:4,hold:7,exhale:8},box:{inhale:4,hold:4,exhale:4},calm:{inhale:4,hold:0,exhale:6}};function Me({title:e=`Breathe with me`,icon:t=`wind`,iconColor:n=`var(--presence)`,pattern:i=`calm`,inhale:a,hold:o,exhale:s,note:c,delay:l}){let d=r[t]||r.wind,f=I[i]??I.calm,p=L(a??f.inhale,2,12),m=L(o??f.hold,0,12),h=L(s??f.exhale,2,14),g=p+m+h,_=m>0,v=p/g,y=(p+m)/g,b={"--delay":(l||0)+`ms`,"--bp-cycle":g+`s`,"--bp-in-end":R(v),"--bp-hold-end":R(y),"--bp-accent":n};return(0,u.jsxs)(`div`,{className:`card reveal bp-card`,style:b,children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsxs)(`div`,{className:`bp-stage`,role:`img`,"aria-label":`Breathing pacer: ${Ne(p,m,h)}`,children:[(0,u.jsx)(`div`,{className:`bp-ring`,"aria-hidden":`true`,children:(0,u.jsx)(`span`,{className:`bp-orb`})}),(0,u.jsxs)(`div`,{className:`bp-caption`,"aria-hidden":`true`,children:[(0,u.jsxs)(`span`,{className:`bp-phase bp-phase--in`,children:[`Breathe in`,(0,u.jsxs)(`span`,{className:`bp-secs`,children:[p,`s`]})]}),_&&(0,u.jsxs)(`span`,{className:`bp-phase bp-phase--hold`,children:[`Hold`,(0,u.jsxs)(`span`,{className:`bp-secs`,children:[m,`s`]})]}),(0,u.jsxs)(`span`,{className:`bp-phase bp-phase--out`,children:[`Breathe out`,(0,u.jsxs)(`span`,{className:`bp-secs`,children:[h,`s`]})]})]})]}),(0,u.jsx)(`p`,{className:`bp-still`,children:Pe(p,m,h)}),c&&(0,u.jsx)(`div`,{className:`bp-note`,children:c})]})}function L(e,t,n){return Number.isFinite(e)?Math.min(n,Math.max(t,e)):t}function R(e){return(e*100).toFixed(2)+`%`}function Ne(e,t,n){return t>0?`in ${e} seconds, hold ${t}, out ${n}`:`in ${e} seconds, out ${n}`}function Pe(e,t,n){return t>0?`In through your nose for ${e}, hold for ${t}, out slowly for ${n}. Repeat a few times at your own pace.`:`In through your nose for ${e}, then out slowly for ${n}. Repeat a few times at your own pace.`}var Fe={low:{label:`Easy`,color:`var(--insight)`},medium:{label:`Some effort`,color:`var(--presence)`},high:{label:`A reach`,color:`var(--warning)`}};function Ie({title:e=`Things you could try`,icon:t=`spark`,iconColor:n=`var(--presence)`,intro:a=`Pick whatever feels possible — you don't have to do all of them.`,options:o,footer:s,delay:c}){let l=r[t]||r.spark,d=o??[];return(0,u.jsxs)(`div`,{className:`card reveal cpm-card`,style:{"--delay":(c||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),a&&(0,u.jsx)(`p`,{className:`cpm-intro`,children:a}),(0,u.jsx)(`ul`,{className:`cpm-list`,children:d.map((e,t)=>{let n=e.effort?Fe[e.effort]:void 0,i=e.icon?r[e.icon]:void 0;return(0,u.jsxs)(`li`,{className:`cpm-opt`,children:[(0,u.jsx)(`span`,{className:`cpm-opt-mark`,"aria-hidden":`true`,children:i?(0,u.jsx)(i,{className:`ic cpm-opt-ic`,style:{width:15,height:15}}):(0,u.jsx)(`span`,{className:`cpm-dot`})}),(0,u.jsxs)(`div`,{className:`cpm-opt-body`,children:[(0,u.jsxs)(`div`,{className:`cpm-opt-head`,children:[(0,u.jsx)(`span`,{className:`cpm-opt-label`,children:e.label}),e.time&&(0,u.jsxs)(`span`,{className:`cpm-tag cpm-tag--time`,children:[(0,u.jsx)(r.clock,{className:`ic cpm-tag-ic`,style:{width:11,height:11}}),e.time]}),n&&(0,u.jsx)(`span`,{className:`cpm-tag cpm-tag--effort`,style:{"--cm":n.color},children:n.label})]}),e.detail&&(0,u.jsx)(`p`,{className:`cpm-opt-detail`,children:e.detail})]})]},t)})}),s&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(s)})]})}var Le={"most likely":{label:`Most likely`,color:`var(--insight)`},possible:{label:`Possible`,color:`var(--warning)`},"less likely":{label:`Less likely`,color:`var(--text-muted)`}};function Re({title:e,icon:t,iconColor:n,flavor:a=`tone`,message:o,readings:s,cantKnow:c,reply:l,footer:d,delay:f}){let p=a===`caution`,m=r[t??(p?`shield`:`chat`)]||r.chat,h=n||(p?`var(--warning)`:`var(--presence)`),g=s??[];return(0,u.jsxs)(`div`,{className:`card reveal sbd-card`,style:{"--delay":(f||0)+`ms`,"--sd":h},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(m,{className:`ic`,style:{color:h}}),` `,e]}),(0,u.jsxs)(`figure`,{className:`sbd-msg`,children:[(0,u.jsx)(`span`,{className:`sbd-msg-bar`}),(0,u.jsx)(r.quote,{className:`ic sbd-msg-mark`,style:{width:22,height:22}}),(0,u.jsx)(`blockquote`,{className:`sbd-msg-text`,children:o})]}),g.length>0&&(0,u.jsx)(`ol`,{className:`sbd-readings`,children:g.map((e,t)=>{let n=e.likelihood?Le[e.likelihood]:void 0;return(0,u.jsxs)(`li`,{className:`sbd-reading`,children:[(0,u.jsxs)(`div`,{className:`sbd-reading-head`,children:[(0,u.jsx)(`span`,{className:`sbd-rank`,children:t+1}),(0,u.jsx)(`span`,{className:`sbd-interp`,children:e.interpretation}),n&&(0,u.jsx)(`span`,{className:`sbd-band`,style:{"--sb":n.color},children:n.label})]}),e.cue&&(0,u.jsxs)(`div`,{className:`sbd-cue`,children:[(0,u.jsx)(`span`,{className:`sbd-cue-tag`,children:p?`Red flag`:`Rests on`}),(0,u.jsx)(`span`,{children:e.cue})]})]},t)})}),c&&(0,u.jsxs)(`div`,{className:`sbd-cantknow`,children:[(0,u.jsx)(r.eye,{className:`ic`,style:{width:14,height:14}}),(0,u.jsx)(`span`,{children:c})]}),l&&(0,u.jsxs)(`div`,{className:`sbd-reply`,children:[(0,u.jsxs)(`div`,{className:`sbd-reply-tag`,children:[(0,u.jsx)(r.send,{className:`ic`,style:{width:13,height:13}}),p?`If you respond`:`You could ask`]}),(0,u.jsx)(`p`,{className:`sbd-reply-text`,children:l})]}),d&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(d)})]})}function ze({title:e,icon:t=`chat`,iconColor:n=`var(--presence)`,opener:a,branches:o,exit:s,footer:c,delay:l}){let d=r[t]||r.chat,f=o??[];return(0,u.jsxs)(`div`,{className:`card reveal rh-card`,style:{"--delay":(l||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsxs)(`div`,{className:`rh-opener`,children:[(0,u.jsx)(`span`,{className:`rh-open-tag`,children:`Open with`}),(0,u.jsx)(`p`,{className:`rh-open-line`,dangerouslySetInnerHTML:i(a)})]}),f.length>0&&(0,u.jsx)(`ol`,{className:`rh-branches`,children:f.map((e,t)=>(0,u.jsxs)(`li`,{className:`rh-branch`,children:[(0,u.jsxs)(`div`,{className:`rh-reaction`,children:[(0,u.jsx)(r.undo,{className:`ic rh-reaction-ic`,style:{width:13,height:13}}),(0,u.jsx)(`span`,{className:`rh-if`,children:`If they`}),` `,(0,u.jsx)(`span`,{dangerouslySetInnerHTML:i(e.reaction)})]}),(0,u.jsxs)(`div`,{className:`rh-say`,children:[(0,u.jsx)(`span`,{className:`rh-say-tag`,children:`Say`}),(0,u.jsx)(`span`,{className:`rh-say-line`,dangerouslySetInnerHTML:i(e.say)})]}),e.why&&(0,u.jsxs)(`div`,{className:`rh-why`,children:[(0,u.jsx)(r.spark,{className:`ic rh-why-ic`,style:{width:11,height:11}}),(0,u.jsx)(`span`,{dangerouslySetInnerHTML:i(e.why)})]})]},t))}),s&&(0,u.jsxs)(`div`,{className:`rh-exit`,children:[(0,u.jsx)(r.check,{className:`ic rh-exit-ic`,style:{width:14,height:14}}),(0,u.jsxs)(`span`,{children:[(0,u.jsx)(`span`,{className:`rh-exit-tag`,children:`If you need to wrap it up`}),` `,(0,u.jsx)(`span`,{dangerouslySetInnerHTML:i(s)})]})]}),(0,u.jsx)(`p`,{className:`rh-note`,children:`A rehearsal, not a prediction — say it your way.`}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}var z={email:{label:`Email`,icon:`mail`},phone:{label:`Call`,icon:`speaker`},"in-app":{label:`In-app`,icon:`sliders`},chat:{label:`Chat`,icon:`chat`}};function Be({title:e,icon:t=`send`,iconColor:n=`var(--presence)`,intro:a,scripts:s,footer:c,delay:l}){let d=r[t]||r.send,f=s??[];return(0,u.jsxs)(`div`,{className:`card reveal mss-card`,style:{"--delay":(l||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),a&&(0,u.jsx)(`p`,{className:`mss-intro`,children:a}),(0,u.jsx)(`ul`,{className:`mss-list`,children:f.map((e,t)=>{let n=e.channel?z[e.channel]:void 0,i=n?r[n.icon]||r.send:void 0;return(0,u.jsxs)(`li`,{className:`mss-item`,children:[(0,u.jsxs)(`div`,{className:`mss-head`,children:[(0,u.jsx)(`span`,{className:`mss-target`,children:e.target}),n&&i&&(0,u.jsxs)(`span`,{className:`mss-chan`,children:[(0,u.jsx)(i,{className:`ic mss-chan-ic`}),` `,n.label]})]}),(0,u.jsxs)(`div`,{className:`mss-msg`,children:[(0,u.jsx)(`p`,{className:`mss-msg-text`,children:e.message}),(0,u.jsx)(o,{text:e.message,label:`Copy message`,className:`mss-copy`})]}),e.rebuttal&&(0,u.jsxs)(`div`,{className:`mss-rebuttal`,children:[(0,u.jsx)(`span`,{className:`mss-rebuttal-tag`,children:`If they push back`}),(0,u.jsx)(`span`,{children:e.rebuttal})]})]},t)})}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}function Ve({title:e,icon:t=`mic`,iconColor:n=`var(--presence)`,lines:a,totalTime:o,footer:s,delay:c}){let l=r[t]||r.mic,d=a??[];return(0,u.jsxs)(`div`,{className:`card reveal tlk-card`,style:{"--delay":(c||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(l,{className:`ic`,style:{color:n}}),` `,e,o&&(0,u.jsxs)(`span`,{className:`tlk-total`,children:[(0,u.jsx)(r.clock,{className:`ic tlk-total-ic`}),` `,o]})]}),(0,u.jsx)(`ol`,{className:`tlk-list`,children:d.map((e,t)=>(0,u.jsxs)(`li`,{className:`tlk-line`,children:[(0,u.jsx)(`span`,{className:`tlk-rail`,"aria-hidden":`true`,children:(0,u.jsx)(`span`,{className:`tlk-dot`})}),(0,u.jsxs)(`div`,{className:`tlk-body`,children:[(0,u.jsx)(`p`,{className:`tlk-say`,children:e.say}),(e.beat||e.note)&&(0,u.jsxs)(`div`,{className:`tlk-meta`,children:[e.beat&&(0,u.jsxs)(`span`,{className:`tlk-beat`,children:[(0,u.jsx)(r.play,{className:`ic tlk-beat-ic`}),` `,e.beat]}),e.note&&(0,u.jsx)(`span`,{className:`tlk-note`,children:e.note})]})]})]},t))}),s&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(s)})]})}function He({title:e=`You deserve support right now`,message:t,safetyQuestion:n,resources:i,grounding:a,reassurance:o,delay:s}){let l=i??[];return(0,u.jsxs)(`div`,{className:`card reveal lfl-card`,style:{"--delay":(s||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(r.shield,{className:`ic`,style:{color:`var(--presence)`}}),` `,e]}),t&&(0,u.jsx)(`p`,{className:`lfl-message`,children:t}),n&&(0,u.jsx)(`p`,{className:`lfl-safety`,children:n}),(0,u.jsx)(`div`,{className:`lfl-resources`,children:l.map((e,t)=>{let n=(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(`span`,{className:`lfl-res-name`,children:e.name}),(0,u.jsx)(`span`,{className:`lfl-res-contact`,children:e.contact}),e.note&&(0,u.jsx)(`span`,{className:`lfl-res-note`,children:e.note})]}),r=e.href?c(e.href):null;return r?(0,u.jsx)(`a`,{className:`lfl-res lfl-res--link`,href:r,children:n},t):(0,u.jsx)(`div`,{className:`lfl-res`,children:n},t)})}),a&&(0,u.jsxs)(`div`,{className:`lfl-grounding`,children:[(0,u.jsx)(r.spark,{className:`ic`,style:{width:14,height:14}}),(0,u.jsx)(`span`,{children:a})]}),o&&(0,u.jsx)(`p`,{className:`lfl-reassurance`,children:o})]})}var B={stressed:`´`,unstressed:`˘`},V=[`var(--presence)`,`var(--insight)`,`var(--warning)`,`var(--danger)`];function Ue({title:e,icon:t=`proof`,iconColor:n=`var(--presence)`,lines:a,meter:o,caption:s,footer:c,delay:l}){let d=r[t]||r.proof,f=new Map;for(let e of a){let t=e.rhyme?.trim().toLowerCase();t&&!f.has(t)&&f.set(t,V[f.size%V.length])}return(0,u.jsxs)(`div`,{className:`card reveal lay-scan`,style:{"--delay":(l||0)+`ms`},children:[e&&(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),o&&(0,u.jsxs)(`div`,{className:`lay-scan-meter`,children:[(0,u.jsxs)(`span`,{className:`lay-scan-meter-key`,children:[(0,u.jsx)(`span`,{className:`lay-scan-glyph`,children:B.stressed}),` stressed`,(0,u.jsx)(`span`,{className:`lay-scan-glyph muted`,children:B.unstressed}),` unstressed`]}),(0,u.jsx)(`span`,{className:`lay-scan-meter-name`,children:o})]}),(0,u.jsx)(`div`,{className:`lay-scan-lines`,children:a.map((e,t)=>{let n=new Set((e.feet||[]).filter(t=>t>0&&t<e.syllables.length)),r=e.rhyme?f.get(e.rhyme.trim().toLowerCase()):void 0;return(0,u.jsxs)(`div`,{className:`lay-scan-row`,children:[(0,u.jsx)(`ol`,{className:`lay-scan-line`,children:e.syllables.map((e,t)=>(0,u.jsxs)(`li`,{className:`lay-scan-syl`,"data-stress":e.stress===`stressed`?`on`:`off`,children:[n.has(t)&&(0,u.jsx)(`span`,{className:`lay-scan-bar`,"aria-hidden":`true`}),(0,u.jsx)(`span`,{className:`lay-scan-mark`,"aria-hidden":`true`,children:B[e.stress]??B.unstressed}),(0,u.jsx)(`span`,{className:`lay-scan-text`,children:e.text})]},t))}),e.rhyme&&(0,u.jsx)(`span`,{className:`lay-scan-rhyme`,style:r?{"--rh":r}:void 0,children:e.rhyme.trim().toLowerCase()})]},t)})}),s&&(0,u.jsx)(`div`,{className:`lay-scan-caption faint`,children:s}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}var H=46,We=`The quick brown fox`;function Ge(e){return`${Number.isInteger(e)?e:Number(e.toFixed(1))} px`}function Ke({title:e,icon:t=`edit`,iconColor:n=`var(--presence)`,styles:a,pairing:o,caption:s,footer:c,delay:l}){let d=r[t]||r.edit,f=a.reduce((e,t)=>Math.max(e,t.sizePx||0),1),p=f>H?H/f:1,m=e=>{let t=[];return e.family&&t.push(e.family),e.weight&&t.push(String(e.weight)),t.push(Ge(e.sizePx)),e.lineHeight&&t.push(`${e.lineHeight}×`),e.tracking&&t.push(e.tracking),t};return(0,u.jsxs)(`div`,{className:`card reveal lay-tspec`,style:{"--delay":(l||0)+`ms`},children:[e&&(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`ol`,{className:`lay-tspec-list`,children:a.map((e,t)=>{let n=e.color||`var(--presence)`,r=Math.max(11,Math.round((e.sizePx||16)*p));return(0,u.jsxs)(`li`,{className:`lay-tspec-row`,children:[(0,u.jsxs)(`div`,{className:`lay-tspec-meta`,children:[(0,u.jsx)(`span`,{className:`lay-tspec-name`,style:{color:n},children:e.name}),(0,u.jsx)(`div`,{className:`lay-tspec-chips`,children:m(e).map((e,t)=>(0,u.jsx)(`span`,{className:`lay-tspec-chip tab-num`,children:e},t))})]}),(0,u.jsx)(`div`,{className:`lay-tspec-sample`,style:{fontSize:r+`px`,fontWeight:e.weight??500,lineHeight:e.lineHeight??1.15,letterSpacing:e.tracking,fontFamily:e.family},children:e.sample||We})]},t)})}),o&&(0,u.jsxs)(`div`,{className:`lay-tspec-pairing`,children:[(0,u.jsx)(`div`,{className:`lay-tspec-pair-tag`,children:`Pairing`}),(0,u.jsx)(`div`,{className:`lay-tspec-pair-head`,style:{fontFamily:o.heading},children:o.heading}),(0,u.jsxs)(`div`,{className:`lay-tspec-pair-body`,style:{fontFamily:o.body},children:[(0,u.jsxs)(`span`,{className:`lay-tspec-pair-faces tab-num`,children:[o.heading,` `,`·`,` `,o.body]}),` `,`pair a confident display face with a calm, readable body face — the heading carries the voice while the paragraph stays out of the way and lets the words breathe.`]})]}),s&&(0,u.jsx)(`div`,{className:`lay-tspec-caption faint`,children:s}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}var qe={WS:{subject:.5,label:`Wide`},MS:{subject:.78,label:`Medium`},CU:{subject:1.05,label:`Close`},ECU:{subject:1.5,label:`Extreme`},OTS:{subject:.92,label:`Over-shoulder`}},U=100,W=64;function Je(e){let t=qe[e],n=W*t.subject/4;return{headR:n,cx:e===`OTS`?U*.62:U/2,headCy:W-n*1.7,shoulderW:n*2.4,label:t.label}}function Ye({title:e,icon:t=`play`,iconColor:n=`var(--presence)`,shots:a,caption:o,footer:s,delay:c}){let l=r[t]||r.play;return(0,u.jsxs)(`div`,{className:`card reveal lay-shot`,style:{"--delay":(c||0)+`ms`},children:[e&&(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(l,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`ol`,{className:`lay-shot-list`,children:a.map((e,t)=>{let n=e.size||`MS`,i=Je(n),a=[e.movement,e.lens,e.duration].filter(Boolean);return(0,u.jsxs)(`li`,{className:`lay-shot-row`,children:[(0,u.jsxs)(`div`,{className:`lay-shot-thumb`,children:[(0,u.jsxs)(`svg`,{className:`lay-shot-frame`,viewBox:`0 0 ${U} ${W}`,role:`img`,"aria-label":`${n} shot framing`,preserveAspectRatio:`xMidYMid slice`,children:[n===`OTS`&&(0,u.jsx)(`path`,{d:`M 0 ${W} L 0 ${W*.28} Q ${U*.18} ${W*.2} ${U*.3} ${W} Z`,className:`lay-shot-fg`}),(0,u.jsx)(`circle`,{cx:i.cx,cy:i.headCy,r:i.headR,className:`lay-shot-subj`}),(0,u.jsx)(`path`,{d:`M ${i.cx-i.shoulderW} ${W} Q ${i.cx} ${i.headCy+i.headR*.4} ${i.cx+i.shoulderW} ${W} Z`,className:`lay-shot-subj`}),(0,u.jsx)(`line`,{x1:U/3,y1:0,x2:U/3,y2:W,className:`lay-shot-grid`}),(0,u.jsx)(`line`,{x1:U/3*2,y1:0,x2:U/3*2,y2:W,className:`lay-shot-grid`})]}),(0,u.jsx)(`span`,{className:`lay-shot-size`,children:n})]}),(0,u.jsxs)(`div`,{className:`lay-shot-body`,children:[(0,u.jsxs)(`div`,{className:`lay-shot-top`,children:[(0,u.jsx)(`span`,{className:`lay-shot-n tab-num`,children:e.n}),(0,u.jsx)(`span`,{className:`lay-shot-frame-label`,children:i.label}),a.length>0&&(0,u.jsx)(`div`,{className:`lay-shot-meta`,children:a.map((e,t)=>(0,u.jsx)(`span`,{className:`lay-shot-tag`,children:e},t))})]}),(0,u.jsx)(`div`,{className:`lay-shot-action`,children:e.action}),e.dialogue&&(0,u.jsxs)(`div`,{className:`lay-shot-dialogue`,children:[(0,u.jsx)(r.chat,{className:`ic`}),(0,u.jsx)(`span`,{children:e.dialogue})]})]})]},t)})}),o&&(0,u.jsx)(`div`,{className:`lay-shot-caption faint`,children:o}),s&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(s)})]})}var G=320,K=96,q={l:8,r:8,t:12,b:10};function Xe(e,t){if(!e)return null;let n=e.match(/-?\d+(\.\d+)?/);if(!n)return null;let r=parseFloat(n[0]);return Number.isFinite(r)?e.includes(`%`)||r<=100&&!/p/i.test(e)?Math.min(1,Math.max(0,r/100)):t>0?Math.min(1,Math.max(0,r/t)):null:null}function Ze({title:e,icon:t=`edit`,iconColor:n=`var(--presence)`,framework:o,beats:s,tension:c,caption:d,footer:f,delay:p}){let m=r[t]||r.edit,h=(0,l.useMemo)(()=>{let e=Math.max(1,s.length-1),t=s.map(e=>parseFloat((e.at||``).match(/\d+/)?.[0]||``)).filter(e=>Number.isFinite(e)),n=t.length?Math.max(...t):0,r=s.map((t,r)=>Xe(t.at,n)??r/e),i=a([0,1],[q.l,G-q.r]),o=``,l=[];if(c&&c.length>=2){let e=Math.min(...c),t=Math.max(...c),n=a([e,t===e?e+1:t],[K-q.b,q.t]);l=c.map((e,t)=>{let a=t<r.length?r[t]:t/Math.max(1,c.length-1);return{x:i(a),y:n(e)}}),o=l.map((e,t)=>{if(t===0)return`M ${e.x} ${e.y}`;let n=l[t-1],r=(n.x+e.x)/2;return`C ${r} ${n.y} ${r} ${e.y} ${e.x} ${e.y}`}).join(` `)}return{fracs:r,sx:i,curve:o,dots:l,baseY:K-q.b}},[s,c]);return(0,u.jsxs)(`div`,{className:`card reveal lay-beat`,style:{"--delay":(p||0)+`ms`},children:[e&&(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(m,{className:`ic`,style:{color:n}}),` `,e]}),o&&(0,u.jsxs)(`div`,{className:`lay-beat-framework`,children:[(0,u.jsx)(`span`,{className:`lay-beat-fw-tag`,children:`Structure`}),o]}),(0,u.jsx)(`ol`,{className:`lay-beat-list`,children:s.map((e,t)=>(0,u.jsxs)(`li`,{className:`lay-beat-row`,children:[(0,u.jsx)(`div`,{className:`lay-beat-rail`,children:(0,u.jsx)(`span`,{className:`lay-beat-dot`})}),(0,u.jsxs)(`div`,{className:`lay-beat-body`,children:[(0,u.jsxs)(`div`,{className:`lay-beat-head`,children:[(0,u.jsx)(`span`,{className:`lay-beat-name`,children:e.name}),e.at&&(0,u.jsx)(`span`,{className:`lay-beat-at tab-num`,children:e.at})]}),(0,u.jsx)(`div`,{className:`lay-beat-line`,children:e.line})]})]},t))}),h.curve&&(0,u.jsxs)(`figure`,{className:`lay-beat-curve`,children:[(0,u.jsx)(`figcaption`,{className:`lay-beat-curve-cap faint`,children:`Dramatic tension`}),(0,u.jsxs)(`svg`,{viewBox:`0 0 ${G} ${K}`,className:`lay-beat-svg`,role:`img`,"aria-label":`tension curve`,children:[(0,u.jsx)(`defs`,{children:(0,u.jsxs)(`linearGradient`,{id:`lay-beat-fill`,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,u.jsx)(`stop`,{offset:`0%`,stopColor:`var(--presence)`,stopOpacity:`0.22`}),(0,u.jsx)(`stop`,{offset:`100%`,stopColor:`var(--presence)`,stopOpacity:`0`})]})}),(0,u.jsx)(`path`,{d:`${h.curve} L ${h.dots[h.dots.length-1].x} ${h.baseY} L ${h.dots[0].x} ${h.baseY} Z`,fill:`url(#lay-beat-fill)`}),(0,u.jsx)(`path`,{d:h.curve,className:`lay-beat-stroke`,fill:`none`}),h.dots.map((e,t)=>(0,u.jsx)(`circle`,{cx:e.x,cy:e.y,r:2.6,className:`lay-beat-pt`},t))]})]}),d&&(0,u.jsx)(`div`,{className:`lay-beat-caption faint`,children:d}),f&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(f)})]})}function Qe({title:e=`A few things to sit with`,icon:t=`edit`,iconColor:n=`var(--presence)`,theme:a,prompts:o,caption:s,footer:c,delay:l}){let d=r[t]||r.edit,f=o??[];return(0,u.jsxs)(`div`,{className:`card reveal lay-ps`,style:{"--delay":(l||0)+`ms`},children:[e&&(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),a&&(0,u.jsxs)(`div`,{className:`lay-ps-theme`,children:[(0,u.jsx)(`span`,{className:`lay-ps-theme-dot`,"aria-hidden":`true`}),a]}),(0,u.jsx)(`ol`,{className:`lay-ps-list`,children:f.map((e,t)=>(0,u.jsxs)(`li`,{className:`lay-ps-card`,children:[(0,u.jsx)(`span`,{className:`lay-ps-mark tab-num`,"aria-hidden":`true`,children:t+1}),(0,u.jsxs)(`div`,{className:`lay-ps-body`,children:[(0,u.jsx)(`p`,{className:`lay-ps-q`,children:e.question}),e.guidance&&(0,u.jsx)(`p`,{className:`lay-ps-guide`,children:e.guidance})]})]},t))}),s&&(0,u.jsx)(`div`,{className:`lay-ps-caption faint`,children:s}),c&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(c)})]})}var $e={HR:`Heart rate`,pace:`Pace`,RPE:`Perceived effort`},J=[`var(--insight)`,`#10b981`,`var(--presence)`,`var(--warning)`,`var(--danger)`];function et(e){let t=J.length-1,n=Math.max(0,Math.min(t,e*t)),r=Math.floor(n),i=Math.min(t,r+1),a=n-r;return a===0?J[r]:`color-mix(in oklab, ${J[i]} ${Math.round(a*100)}%, ${J[r]})`}function tt({title:e=`Training zones`,icon:t=`spark`,iconColor:n=`var(--presence)`,metric:a=`HR`,zones:o,current:s,caption:c,footer:l,delay:d}){let f=r[t]||r.spark,p=o??[],m=p.length,h=typeof s==`number`&&m>0?Math.max(0,Math.min(m-1,Math.round(s))):-1,g=$e[a]??a,_=p.map((e,t)=>({z:e,i:t})).reverse();return(0,u.jsxs)(`div`,{className:`card reveal lay-zl`,style:{"--delay":(d||0)+`ms`},children:[e&&(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(f,{className:`ic`,style:{color:n}}),` `,e,(0,u.jsx)(`span`,{className:`lay-zl-metric`,children:g})]}),(0,u.jsx)(`div`,{className:`lay-zl-ladder`,children:_.map(({z:e,i:t})=>{let n=et(m>1?t/(m-1):0),r=t===h;return(0,u.jsxs)(`div`,{className:`lay-zl-band`+(r?` here`:``),style:{"--zc":n},children:[(0,u.jsx)(`div`,{className:`lay-zl-rail`,"aria-hidden":`true`}),(0,u.jsxs)(`div`,{className:`lay-zl-band-body`,children:[(0,u.jsxs)(`div`,{className:`lay-zl-band-top`,children:[(0,u.jsx)(`span`,{className:`lay-zl-name`,children:e.name}),(0,u.jsx)(`span`,{className:`lay-zl-range tab-num`,children:e.range}),r&&(0,u.jsxs)(`span`,{className:`lay-zl-here`,children:[(0,u.jsx)(`span`,{className:`lay-zl-here-dot`,"aria-hidden":`true`}),`You are here`]})]}),(0,u.jsx)(`div`,{className:`lay-zl-effort`,children:e.effort}),(0,u.jsx)(`div`,{className:`lay-zl-purpose`,children:e.purpose})]})]},t)})}),c&&(0,u.jsx)(`div`,{className:`lay-zl-caption faint`,children:c}),l&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(l)})]})}var nt={first:{label:`First`,color:`var(--insight)`},then:{label:`Then`,color:`var(--presence)`},next:{label:`Next`,color:`var(--presence)`},last:{label:`Last`,color:`var(--insight)`}};function rt(e,t){return e===0?`first`:e===t-1?`last`:e%2==1?`then`:`next`}function it({title:e,icon:t=`layers`,iconColor:n=`var(--presence)`,panels:a,caption:o,footer:s,delay:c}){let d=r[t]||r.layers,f=a??[],p=f.length;return(0,u.jsxs)(`div`,{className:`card reveal lay-pseq`,style:{"--delay":(c||0)+`ms`},children:[e&&(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(d,{className:`ic`,style:{color:n}}),` `,e]}),(0,u.jsx)(`ol`,{className:`lay-pseq-strip`,children:f.map((e,t)=>{let n=nt[e.marker??rt(t,p)];return(0,u.jsxs)(l.Fragment,{children:[(0,u.jsxs)(`li`,{className:`lay-pseq-panel`,style:{"--mc":n.color},children:[(0,u.jsx)(`span`,{className:`lay-pseq-marker`,children:n.label}),(0,u.jsx)(`div`,{className:`lay-pseq-frame`,children:(0,u.jsxs)(`svg`,{className:`lay-pseq-art`,viewBox:`0 0 64 48`,role:`img`,"aria-label":e.label,preserveAspectRatio:`xMidYMid meet`,children:[(0,u.jsx)(`rect`,{x:`8`,y:`8`,width:`48`,height:`32`,rx:`4`,className:`lay-pseq-art-card`}),(0,u.jsx)(`line`,{x1:`16`,y1:`32`,x2:`48`,y2:`32`,className:`lay-pseq-art-base`}),(0,u.jsx)(`circle`,{cx:`32`,cy:`21`,r:`9`,className:`lay-pseq-art-badge`}),(0,u.jsx)(`text`,{x:`32`,y:`21`,className:`lay-pseq-art-num`,children:t+1})]})}),(0,u.jsx)(`div`,{className:`lay-pseq-label`,children:e.label}),e.caption&&(0,u.jsx)(`div`,{className:`lay-pseq-cap faint`,children:e.caption})]}),t<p-1&&(0,u.jsx)(`li`,{className:`lay-pseq-arrow`,"aria-hidden":`true`,children:(0,u.jsx)(r.chevR,{className:`ic`})})]},t)})}),o&&(0,u.jsx)(`div`,{className:`lay-pseq-caption faint`,children:o}),s&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(s)})]})}function Y(e){return e==null||!Number.isFinite(e)?null:Math.max(0,Math.min(100,Math.round(e)))}function X({label:e,items:t,accent:n,mark:a}){let o=a===`check`?r.check:r.alert;return(0,u.jsxs)(`div`,{className:`tr-ev-col`,style:{"--te":n},children:[(0,u.jsxs)(`div`,{className:`tr-ev-head`,children:[(0,u.jsx)(o,{className:`ic`,style:{color:n,width:13,height:13}}),(0,u.jsx)(`span`,{children:e}),(0,u.jsx)(`span`,{className:`tr-ev-count tab-num`,children:t.length})]}),t.length===0?(0,u.jsx)(`p`,{className:`tr-ev-empty faint`,children:`None noted`}):(0,u.jsx)(`ul`,{className:`tr-ev-list`,children:t.map((e,t)=>(0,u.jsxs)(`li`,{className:`tr-ev-item m-stagger-item m-fade-rise`,style:{"--i":t},children:[(0,u.jsx)(o,{className:`ic tr-ev-mark`,style:{color:n}}),(0,u.jsx)(`span`,{className:`tr-ev-text`,dangerouslySetInnerHTML:i(e)})]},t))})]})}function at({title:e=`Thought record`,icon:t=`spark`,iconColor:n=`var(--presence)`,situation:a,automaticThought:o,emotion:s,emotionIntensity:c,evidenceFor:l=[],evidenceAgainst:d=[],alternativeThought:f,outcomeEmotion:p,outcomeIntensity:m,footer:h,delay:g}){let _=r[t]||r.spark,v=Y(c),y=Y(m),b=l.length>0||d.length>0,x=!!f,S=!!p||y!=null,C=(g||0)+140;return(0,u.jsxs)(`div`,{className:`card reveal tr-card`,style:{"--delay":(g||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(_,{className:`ic`,style:{color:n}}),` `,e]}),a&&(0,u.jsxs)(`div`,{className:`tr-block tr-situation`,children:[(0,u.jsx)(`div`,{className:`tr-tag`,children:`The situation`}),(0,u.jsx)(`p`,{className:`tr-body`,dangerouslySetInnerHTML:i(a)})]}),(0,u.jsxs)(`div`,{className:`tr-block tr-thought`,children:[(0,u.jsxs)(`div`,{className:`tr-row-head`,children:[(0,u.jsx)(`span`,{className:`tr-tag`,children:`The automatic thought`}),(0,u.jsxs)(`span`,{className:`tr-emo-chip`,children:[s,v!=null&&(0,u.jsxs)(`span`,{className:`tr-emo-pct tab-num`,children:[v,`%`]})]})]}),o&&(0,u.jsxs)(`p`,{className:`tr-quote`,children:[(0,u.jsx)(r.quote,{className:`ic tr-quote-ic`,style:{width:14,height:14}}),(0,u.jsx)(`span`,{dangerouslySetInnerHTML:i(o)})]}),v!=null&&(0,u.jsx)(`div`,{className:`tr-meter`,"aria-label":`felt ${v} of 100`,children:(0,u.jsx)(`span`,{className:`tr-meter-fill`,style:{width:v+`%`}})})]}),b&&(0,u.jsxs)(`div`,{className:`tr-block tr-evidence`,children:[(0,u.jsx)(`div`,{className:`tr-tag`,children:`Weighing the evidence`}),(0,u.jsxs)(`div`,{className:`tr-ev-grid`,children:[(0,u.jsx)(X,{label:`Feeds the thought`,items:l,accent:`var(--warning)`,mark:`alert`}),(0,u.jsx)(`div`,{className:`tr-ev-divider`}),(0,u.jsx)(X,{label:`Complicates it`,items:d,accent:`var(--insight)`,mark:`check`})]})]}),x&&(0,u.jsxs)(`div`,{className:`tr-shift`,"aria-hidden":`true`,children:[(0,u.jsx)(`span`,{className:`tr-shift-line`}),(0,u.jsx)(r.spark,{className:`ic tr-shift-ic`,style:{width:13,height:13}}),(0,u.jsx)(`span`,{className:`tr-shift-line`})]}),f&&(0,u.jsxs)(`div`,{className:`tr-block tr-alt m-fade-rise`,style:{"--delay":C+`ms`},children:[(0,u.jsx)(`div`,{className:`tr-tag tr-tag--true`,children:`The balanced thought`}),(0,u.jsx)(`p`,{className:`tr-alt-text`,dangerouslySetInnerHTML:i(f)})]}),S&&(0,u.jsxs)(`div`,{className:`tr-outcome`,children:[(0,u.jsxs)(`div`,{className:`tr-outcome-chip`,children:[(0,u.jsx)(`span`,{className:`tr-outcome-label`,children:`Felt`}),(0,u.jsx)(`span`,{className:`tr-outcome-emo`,children:s}),v!=null&&(0,u.jsxs)(`span`,{className:`tr-outcome-pct tab-num`,children:[v,`%`]})]}),(0,u.jsx)(r.chevR,{className:`ic tr-outcome-arrow`,style:{width:14,height:14}}),(0,u.jsxs)(`div`,{className:`tr-outcome-chip tr-outcome-chip--after`,children:[(0,u.jsx)(`span`,{className:`tr-outcome-label`,children:`Now`}),(0,u.jsx)(`span`,{className:`tr-outcome-emo`,children:p||s}),y!=null&&(0,u.jsxs)(`span`,{className:`tr-outcome-pct tab-num`,children:[y,`%`]})]})]}),h&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(h)})]})}function Z(e){return typeof e==`string`&&e.trim()!==``}function Q({text:e,label:t,accent:n,mark:a,solo:o}){let s=a===`check`?r.check:a===`alert`?r.alert:r.x;return(0,u.jsxs)(`div`,{className:`lay-dd-cell ${o?`solo`:``}`,style:{"--dd":n},children:[(0,u.jsx)(s,{className:`ic lay-dd-mark`}),(0,u.jsxs)(`div`,{className:`lay-dd-cell-body`,children:[(0,u.jsx)(`span`,{className:`lay-dd-tag`,children:t}),(0,u.jsx)(`span`,{className:`lay-dd-text`,dangerouslySetInnerHTML:i(e)})]})]})}function ot({title:e,icon:t=`shield`,iconColor:n=`var(--presence)`,heading:a,doLabel:o=`Do`,dontLabel:s=`Don’t`,pairs:c,footer:l,delay:d}){let f=r[t]||r.shield,p=(Array.isArray(c)?c:[]).filter(e=>!!e&&(Z(e.do)||Z(e.dont))),m=p.reduce((e,t)=>e+ +!!Z(t.do),0),h=p.reduce((e,t)=>e+ +!!Z(t.dont),0),g=m===0||h===0;return(0,u.jsxs)(`div`,{className:`card reveal lay-dd ${g?`lay-dd--single`:``}`,style:{"--delay":(d||0)+`ms`},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(f,{className:`ic`,style:{color:n}}),` `,e]}),a&&(0,u.jsx)(`div`,{className:`lay-dd-heading`,children:a}),p.length===0?(0,u.jsxs)(`div`,{className:`lay-dd-empty faint`,children:[(0,u.jsx)(r.eyeOff,{className:`ic`}),` No guidance to show yet.`]}):(0,u.jsxs)(u.Fragment,{children:[!g&&(0,u.jsxs)(`div`,{className:`lay-dd-heads`,children:[(0,u.jsxs)(`div`,{className:`lay-dd-head`,style:{"--dd":`var(--insight)`},children:[(0,u.jsx)(r.check,{className:`ic`}),(0,u.jsx)(`span`,{children:o}),(0,u.jsx)(`span`,{className:`lay-dd-count tab-num`,children:m})]}),(0,u.jsxs)(`div`,{className:`lay-dd-head`,style:{"--dd":`var(--warning)`},children:[(0,u.jsx)(r.x,{className:`ic`}),(0,u.jsx)(`span`,{children:s}),(0,u.jsx)(`span`,{className:`lay-dd-count tab-num`,children:h})]})]}),(0,u.jsx)(`ul`,{className:`lay-dd-list`,children:p.map((e,t)=>{let n=Z(e.do)?e.do:null,r=Z(e.dont)?e.dont:null,a=!g&&(!n||!r);return(0,u.jsxs)(`li`,{className:`lay-dd-row m-stagger-item m-fade-rise`,style:{"--i":t},children:[Z(e.topic)&&(0,u.jsx)(`span`,{className:`lay-dd-topic`,children:e.topic}),(0,u.jsxs)(`div`,{className:`lay-dd-cells`,children:[n&&(0,u.jsx)(Q,{text:n,label:o,accent:`var(--insight)`,mark:`check`,solo:a}),r&&(0,u.jsx)(Q,{text:r,label:s,accent:e.hazard?`var(--danger)`:`var(--warning)`,mark:e.hazard?`alert`:`x`,solo:a})]}),Z(e.why)&&(0,u.jsx)(`div`,{className:`lay-dd-why faint`,dangerouslySetInnerHTML:i(e.why)})]},t)})})]}),l&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(l)})]})}function st(e){return(Array.isArray(e?.paragraphs)?e.paragraphs:typeof e?.paragraphs==`string`?[e.paragraphs]:[]).filter(e=>typeof e==`string`&&e.trim()!==``)}function ct({title:e,icon:t=`sliders`,iconColor:n=`var(--presence)`,axis:a,subject:o,variants:s,defaultVariant:c=0,accent:d=`var(--presence)`,footer:f,delay:p}){let m=r[t]||r.sliders,h=(Array.isArray(s)?s:[]).filter(e=>!!e&&typeof e.label==`string`&&e.label.trim()!==``),[g,_]=(0,l.useState)(()=>Math.max(0,Math.round(c)||0)),v=(0,l.useRef)([]),y=(0,l.useId)(),b=`${y}-panel`,x=`${y}-solo`,S=e=>`${y}-tab-${e}`,C=h.length?Math.min(g,h.length-1):0,w=h[C],T=st(w),E=h.length>1,D=(e,t)=>{let n;if(e.key===`ArrowRight`||e.key===`ArrowDown`)n=(t+1)%h.length;else if(e.key===`ArrowLeft`||e.key===`ArrowUp`)n=(t-1+h.length)%h.length;else if(e.key===`Home`)n=0;else if(e.key===`End`)n=h.length-1;else return;e.preventDefault(),_(n),v.current[n]?.focus()};return(0,u.jsxs)(`div`,{className:`card reveal lay-vs`,style:{"--delay":(p||0)+`ms`,"--vs-acc":d},children:[(0,u.jsxs)(`div`,{className:`card-eyebrow`,children:[(0,u.jsx)(m,{className:`ic`,style:{color:n}}),` `,e]}),o&&(0,u.jsx)(`p`,{className:`lay-vs-subject`,children:o}),h.length===0?(0,u.jsxs)(`div`,{className:`lay-vs-empty faint`,children:[(0,u.jsx)(r.eyeOff,{className:`ic`}),` No versions to switch between.`]}):(0,u.jsxs)(u.Fragment,{children:[E&&(0,u.jsxs)(`div`,{className:`lay-vs-switch`,children:[a&&(0,u.jsx)(`span`,{className:`lay-vs-axis`,children:a}),(0,u.jsx)(`div`,{className:`lay-vs-chips`,role:`tablist`,"aria-label":a||`Versions`,children:h.map((e,t)=>{let n=(e.icon&&r[e.icon])??null;return(0,u.jsxs)(`button`,{ref:e=>{v.current[t]=e},id:S(t),role:`tab`,type:`button`,className:`lay-vs-chip ${t===C?`on`:``}`,"aria-selected":t===C,"aria-controls":b,tabIndex:t===C?0:-1,onClick:()=>_(t),onKeyDown:e=>D(e,t),children:[n&&(0,u.jsx)(n,{className:`ic lay-vs-chip-ic`}),(0,u.jsx)(`span`,{children:e.label})]},t)})})]}),(0,u.jsxs)(`div`,{className:`lay-vs-panel`,id:b,role:E?`tabpanel`:`group`,"aria-labelledby":E?S(C):x,tabIndex:0,children:[!E&&(0,u.jsx)(`span`,{className:`lay-vs-solo-label`,id:x,children:w?.label}),T.length===0?(0,u.jsx)(`p`,{className:`lay-vs-para faint`,children:`No text for this version.`}):T.map((e,t)=>(0,u.jsx)(`p`,{className:`lay-vs-para m-stagger-item m-fade-rise`,style:{"--i":t},children:e},t))]},C),typeof w?.when==`string`&&w.when.trim()!==``&&(0,u.jsxs)(`p`,{className:`lay-vs-when faint`,children:[(0,u.jsx)(r.spark,{className:`ic lay-vs-when-ic`}),w.when]})]}),f&&(0,u.jsx)(`div`,{className:`insight-summary`,style:{marginTop:12},dangerouslySetInnerHTML:i(f)})]})}var lt=e({layoutRegistry:()=>$}),$={callout:s(le),verdictcard:s(fe),scenarioset:s(me),accordion:s(he),proscons:s(ge),takeaways:s(_e),faq:s(ve),tabs:s(ye),divider:s(be),pullquote:s(M),storystrip:s(Se),casestudy:s(Ce),deflist:s(Te),worthit:s(Ee),companionnote:s(De),positioncard:s(Oe),differential:s(Ae),reframecard:s(je),breathpacer:s(Me),copingmenu:s(Ie),subtextdecode:s(Re),rehearsal:s(ze),messagescriptset:s(Be),talktrack:s(Ve),lifeline:s(He),scansionmark:s(Ue),typespec:s(Ke),shotlist:s(Ye),beatsheet:s(Ze),promptset:s(Qe),zoneladder:s(tt),picturesequence:s(it),storyarc:s(ee),devicemark:s(oe),thoughtrecord:s(at),dosdonts:s(ot),variantswitch:s(ct)};export{lt as n,$ as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.fs-subject{font-size:var(--fs-md,15px);color:var(--text-primary);margin-bottom:4px;font-weight:700}.fs-tagline{font-size:var(--fs-sm,13px);color:var(--text-secondary);margin-bottom:12px;line-height:1.5}.fs-facts{flex-direction:column;gap:0;display:flex}.fs-row{border-bottom:1px solid var(--grid-line);align-items:baseline;gap:12px;padding:8px 0;display:flex}.fs-row:last-child{border-bottom:none}.fs-label{font-size:var(--fs-xs,12px);color:var(--text-muted);flex-shrink:0;min-width:90px;font-weight:600}.fs-value{font-size:var(--fs-sm,13px);color:var(--text-primary);flex:1;line-height:1.45}.fs-note{font-size:var(--fs-xs,11px);color:var(--text-faint);font-style:italic}.fs-body{font-size:var(--fs-sm,13px);color:var(--text-primary);margin-top:12px;line-height:1.6}.nd-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.nd-topic{font-size:var(--fs-sm,13px);color:var(--text-primary);font-weight:600}.nd-asof{font-size:var(--fs-xs,11px);color:var(--text-faint)}.nd-items{flex-direction:column;gap:0;display:flex}.nd-item{border-bottom:1px solid var(--grid-line);padding:10px 0}.nd-item:last-child{border-bottom:none}.nd-headline{font-size:var(--fs-sm,14px);color:var(--text-primary);font-weight:600;line-height:1.4}.nd-item-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:3px;display:flex}.nd-source{font-size:var(--fs-xs,11px);color:var(--presence);font-weight:600}.nd-time{font-size:var(--fs-xs,11px);color:var(--text-faint)}.nd-cat{font-size:var(--fs-2xs);border-radius:var(--r-full);background:var(--track);color:var(--text-muted);padding:1px 6px;font-weight:700}.nd-summary{font-size:var(--fs-xs,12px);color:var(--text-secondary);margin-top:5px;line-height:1.5}.dc-word{font-size:var(--fs-lg,24px);color:var(--text-primary);margin-bottom:2px;font-weight:800}.dc-phonetic{font-size:var(--fs-sm,14px);color:var(--text-muted);margin-bottom:10px;font-style:italic}.dc-senses{flex-direction:column;gap:14px;margin-top:10px;display:flex}.dc-pos{font-size:var(--fs-xs,11px);color:var(--presence);text-transform:uppercase;letter-spacing:.07em;margin-bottom:4px;font-weight:700;display:inline-block}.dc-def{font-size:var(--fs-sm,13px);color:var(--text-primary);line-height:1.55}.dc-example{font-size:var(--fs-xs,12px);color:var(--text-secondary);border-left:2px solid var(--line-strong);margin-top:4px;padding-left:10px;font-style:italic}.dc-synonyms{font-size:var(--fs-xs,11px);color:var(--text-muted);margin-top:6px}.dc-etymology{font-size:var(--fs-xs,12px);color:var(--text-secondary);border-top:1px solid var(--line);margin-top:14px;padding-top:10px;font-style:italic;line-height:1.5}.tl-langs{font-size:var(--fs-xs,12px);color:var(--text-muted);align-items:center;gap:8px;margin-bottom:12px;font-weight:600;display:flex}.tl-from{color:var(--text-secondary)}.tl-arrow,.tl-to{color:var(--presence)}.tl-pair{border:1px solid var(--line);border-radius:var(--r-md);grid-template-columns:1fr 1fr;gap:0;display:grid;overflow:hidden}.tl-source{background:var(--surface-glass);padding:12px}.tl-result{border-left:1px solid var(--line);padding:12px}.tl-text{font-size:var(--fs-sm,14px);color:var(--text-primary);line-height:1.6}.tl-breakdowns{flex-direction:column;gap:0;margin-top:12px;display:flex}.tl-bp{border-bottom:1px solid var(--grid-line);font-size:var(--fs-xs,12px);gap:12px;padding:7px 0;display:flex}.tl-bp:last-child{border-bottom:none}.tl-bp-orig{color:var(--text-secondary);flex:1;font-style:italic}.tl-bp-trans{color:var(--text-primary);flex:1;font-weight:500}.tl-bp-note{color:var(--text-faint)}.pr-word{font-size:var(--fs-lg,22px);color:var(--text-primary);font-weight:800}.pr-ipa{font-size:var(--fs-md,16px);color:var(--text-muted);margin-top:4px;font-style:italic}.pr-syllables{font-size:var(--fs-sm,14px);color:var(--presence);letter-spacing:.08em;margin-top:4px;font-weight:600}.pr-tips{flex-direction:column;gap:6px;margin-top:14px;display:flex}.pr-tip{font-size:var(--fs-xs,12px);color:var(--text-secondary);align-items:flex-start;gap:8px;line-height:1.5;display:flex}.pr-tip:before{content:"→";color:var(--presence);flex-shrink:0}.gl-domain{font-size:var(--fs-xs,11px);color:var(--text-muted);background:var(--track);border-radius:var(--r-full);letter-spacing:.04em;margin-bottom:12px;padding:2px 10px;font-weight:600;display:inline-block}.gl-entries{flex-direction:column;gap:0;display:flex}.gl-letter-divider{font-size:var(--fs-xs,11px);color:var(--text-faint);letter-spacing:.1em;padding:8px 0 2px;font-weight:700;line-height:1}.gl-entries>div:first-child .gl-letter-divider{padding-top:0}.gl-entry{border-bottom:1px solid var(--grid-line);padding:9px 0}.gl-entry:last-child{border-bottom:none}.gl-term{font-size:var(--fs-md);color:var(--text-primary);font-weight:700}.gl-def{font-size:var(--fs-sm);color:var(--text-secondary);margin-top:3px;line-height:1.55}.gl-see{font-size:var(--fs-xs,11px);color:var(--text-faint);margin-top:4px}.scf-figure{flex-wrap:wrap;align-items:baseline;gap:6px;margin-bottom:14px;display:flex}.scf-value{font-size:var(--fs-xl,22px);color:var(--text-primary);letter-spacing:-.01em;font-weight:800;line-height:1.05}.scf-unit{font-size:var(--fs-sm,13px);color:var(--text-muted);font-weight:600}.scf-rows{flex-direction:column;gap:0;display:flex}.scf-row{border-bottom:1px solid var(--grid-line);padding:10px 0}.scf-row:last-child{border-bottom:none}.scf-line{flex-wrap:wrap;align-items:baseline;gap:6px;line-height:1.4;display:flex}.scf-count{font-size:var(--fs-sm,14px);color:var(--presence);flex-shrink:0;font-weight:800}.scf-to{font-size:var(--fs-sm,13px);color:var(--text-primary);overflow-wrap:anywhere}.scf-track{border-radius:var(--r-full,999px);background:var(--track);height:5px;margin-top:7px;overflow:hidden}.scf-bar{border-radius:var(--r-full,999px);background:color-mix(in oklab, var(--presence) 78%, transparent);height:100%;transition:width var(--m-fast,.22s) var(--ease-out,ease)}.scf-note{font-size:var(--fs-xs,11px);color:var(--text-faint);margin-top:5px;font-style:italic;line-height:1.5}.hri-rows{flex-direction:column;gap:0;margin:4px 0 0;padding:0;list-style:none;display:flex}.hri-row{border-bottom:1px solid var(--grid-line);align-items:center;gap:12px;min-width:0;padding:9px 0;display:flex}.hri-row:last-child{border-bottom:none}.hri-play{border-radius:var(--r-full,999px);border:1px solid var(--line-strong);background:var(--surface-glass);width:34px;height:34px;color:var(--presence);cursor:pointer;transition:background var(--m-fast,.16s) var(--ease-out,ease), border-color var(--m-fast,.16s) var(--ease-out,ease), transform var(--m-fast,.16s) var(--ease-out,ease);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.hri-play:hover:not(:disabled){background:color-mix(in oklab, var(--presence) 12%, transparent);border-color:var(--presence)}.hri-play:active:not(:disabled){transform:scale(.92)}.hri-play:focus-visible{outline:2px solid var(--presence);outline-offset:2px}.hri-play:disabled{cursor:not-allowed;opacity:.45;color:var(--text-muted)}.hri-play-ic{margin-left:1px}.hri-row[data-playing] .hri-play{background:color-mix(in oklab, var(--presence) 16%, transparent);border-color:var(--presence)}.hri-wave{align-items:flex-end;gap:2px;height:13px;display:inline-flex}.hri-wave>span{transform-origin:bottom;width:3px;height:100%;animation:hri-bounce .7s var(--ease-out,ease) infinite;background:currentColor;border-radius:1px}.hri-wave>span:nth-child(2){animation-delay:.18s}.hri-wave>span:nth-child(3){animation-delay:.36s}@keyframes hri-bounce{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.hri-wave>span{animation:none;transform:scaleY(.7)}}.hri-body{flex:1;min-width:0}.hri-label{font-size:var(--fs-sm,14px);color:var(--text-primary);overflow-wrap:anywhere;font-weight:600;line-height:1.35}.hri-sub{font-size:var(--fs-xs,12px);color:var(--text-secondary);overflow-wrap:anywhere;margin-top:2px;line-height:1.4}.hri-kind{font-size:var(--fs-2xs,10px);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);background:var(--track);border-radius:var(--r-full,999px);flex-shrink:0;align-items:center;gap:4px;padding:2px 8px;font-weight:700;display:inline-flex}.hri-kind-ic{color:var(--text-muted)}.ipa-caption{font-size:var(--fs-xs,12px);color:var(--text-secondary);margin-top:10px;line-height:1.5}.ipa-quad{margin-top:6px;max-width:360px;margin-inline:auto}.ipa-axis{letter-spacing:.04em;fill:var(--text-muted);text-transform:uppercase;font-size:4px;font-weight:700}.ipa-vowel{fill:var(--text-secondary);font-size:6px;font-weight:600;font-family:var(--font-mono,ui-monospace, monospace)}.ipa-vowel[data-hot]{fill:var(--presence);font-weight:800}.ipa-vowel-halo{fill:color-mix(in oklab, var(--presence) 16%, transparent);stroke:color-mix(in oklab, var(--presence) 55%, transparent);stroke-width:.6px}.ipa-examples{flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.ipa-ex{border:1px solid var(--line);border-radius:var(--r-full,999px);background:var(--surface-elevated);align-items:baseline;gap:6px;min-width:0;padding:4px 10px;display:inline-flex}.ipa-ex[data-hot]{border-color:color-mix(in oklab, var(--presence) 55%, transparent);background:color-mix(in oklab, var(--presence) 9%, transparent)}.ipa-ex-sym{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-sm,13px);color:var(--presence);flex-shrink:0;font-weight:700}.ipa-ex-word{font-size:var(--fs-xs,12px);color:var(--text-secondary);overflow-wrap:anywhere;min-width:0}.ipa-cgrid-wrap{max-width:100%;margin-top:6px;overflow-x:auto}.ipa-cgrid{border-collapse:collapse;table-layout:fixed;width:100%}.ipa-cgrid th,.ipa-cgrid td{border:1px solid var(--grid-line);text-align:center;vertical-align:middle;padding:5px 2px}.ipa-cgrid-corner{background:0 0;border:none}.ipa-cgrid-place{font-size:var(--fs-2xs,10px);color:var(--text-muted);letter-spacing:.02em;font-weight:700;line-height:1.2}.ipa-cgrid-manner{font-size:var(--fs-2xs,10px);color:var(--text-muted);text-align:left;white-space:nowrap;padding-left:4px;font-weight:700}.ipa-cgrid-cell{background:var(--surface-elevated)}.ipa-cgrid-pair{justify-content:center;gap:5px;display:inline-flex}.ipa-cgrid-sym{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-sm,13px);color:var(--text-primary);font-weight:600}.ipa-cgrid-sym[data-hot]{color:var(--presence);background:color-mix(in oklab, var(--presence) 14%, transparent);border-radius:var(--r-sm,4px);padding:0 3px;font-weight:800}.ipa-cgrid-empty{color:var(--text-faint)}.ipa-cgrid-na{background:repeating-linear-gradient(-45deg, transparent, transparent 3px, color-mix(in oklab, var(--text-faint) 18%, transparent) 3px, color-mix(in oklab, var(--text-faint) 18%, transparent) 4px);opacity:.5;min-height:16px;display:block}.ss-stage{flex-wrap:wrap;align-items:stretch;gap:16px;margin-top:4px;display:flex}.ss-square{flex:none;width:144px;max-width:100%}.ss-ghost{fill:color-mix(in oklab, var(--text-primary) 12%, transparent);font-size:60px;font-weight:500}.ss-glyph{fill:var(--text-primary);font-size:64px;font-weight:500}.ss-stroke{stroke:var(--presence);stroke-width:4px;stroke-dasharray:220;stroke-dashoffset:220px;animation:ss-draw .55s var(--ease-out,ease) forwards;animation-delay:calc(var(--i,0) * .4s)}@keyframes ss-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.ss-stroke{stroke-dashoffset:0;animation:none}}.ss-badge-bg{fill:var(--presence)}.ss-badge-num{fill:var(--surface-elevated);font-size:5px;font-weight:800;font-family:var(--font-mono,ui-monospace, monospace)}.ss-meta{flex-direction:column;flex:1;justify-content:center;gap:8px;min-width:0;display:flex}.ss-glyph-sm{font-size:var(--fs-2xl,30px);color:var(--text-primary);font-weight:600;line-height:1}.ss-romanization,.ss-meaning{flex-direction:column;gap:1px;min-width:0;display:flex}.ss-meta-k{font-size:var(--fs-2xs,10px);letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.ss-meta-v{font-size:var(--fs-sm,14px);color:var(--text-primary);overflow-wrap:anywhere;min-width:0;font-weight:600}.ss-romanization .ss-meta-v{color:var(--presence)}.ss-count{font-size:var(--fs-xs,11px);color:var(--text-faint)}.ss-steps{flex-direction:column;gap:0;margin:14px 0 0;padding:0;list-style:none;display:flex}.ss-step{border-bottom:1px solid var(--grid-line);align-items:flex-start;gap:10px;min-width:0;padding:7px 0;display:flex}.ss-step:last-child{border-bottom:none}.ss-step-num{border-radius:var(--r-full,999px);background:color-mix(in oklab, var(--presence) 14%, transparent);width:20px;height:20px;color:var(--presence);font-size:var(--fs-2xs,11px);font-weight:800;font-family:var(--font-mono,ui-monospace, monospace);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ss-step-hint{font-size:var(--fs-sm,13px);color:var(--text-secondary);overflow-wrap:anywhere;min-width:0;line-height:1.5}.pw-word{flex-wrap:wrap;align-items:stretch;gap:6px;margin-top:4px;display:flex}.pw-chunk{border:1.5px solid var(--line-strong);border-radius:var(--r-md,8px);background:var(--surface-elevated);min-width:38px;color:var(--text-primary);cursor:pointer;transition:background var(--m-fast,.16s) var(--ease-out,ease), border-color var(--m-fast,.16s) var(--ease-out,ease), transform var(--m-fast,.16s) var(--ease-out,ease);flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;padding:8px 12px;display:inline-flex}.pw-chunk:hover:not(:disabled){background:color-mix(in oklab, var(--presence) 10%, transparent);border-color:var(--presence)}.pw-chunk:active:not(:disabled){transform:scale(.94)}.pw-chunk:focus-visible{outline:2px solid var(--presence);outline-offset:2px}.pw-chunk[data-playing]{background:color-mix(in oklab, var(--presence) 16%, transparent);border-color:var(--presence)}.pw-chunk-text{font-size:var(--fs-lg,22px);letter-spacing:.02em;font-weight:800;line-height:1}.pw-chunk-sound{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-2xs,10px);color:var(--text-muted);font-weight:600;line-height:1}.pw-chunk[data-kind=digraph],.pw-chunk[data-kind=blend]{border-color:color-mix(in oklab, var(--presence) 55%, transparent);background:color-mix(in oklab, var(--presence) 9%, transparent)}.pw-chunk[data-kind=digraph] .pw-chunk-text,.pw-chunk[data-kind=blend] .pw-chunk-text{color:var(--presence)}.pw-chunk[data-kind=silent]{border-style:dashed;border-color:var(--line);cursor:default;background:0 0}.pw-chunk[data-kind=silent] .pw-chunk-text{color:var(--text-faint)}.pw-blend{border:1px solid var(--line-strong);border-radius:var(--r-full,999px);background:var(--surface-glass);max-width:100%;color:var(--presence);cursor:pointer;transition:background var(--m-fast,.16s) var(--ease-out,ease), border-color var(--m-fast,.16s) var(--ease-out,ease), transform var(--m-fast,.16s) var(--ease-out,ease);align-items:center;gap:8px;margin-top:12px;padding:7px 14px;display:inline-flex}.pw-blend:hover{background:color-mix(in oklab, var(--presence) 12%, transparent);border-color:var(--presence)}.pw-blend:active{transform:scale(.97)}.pw-blend:focus-visible{outline:2px solid var(--presence);outline-offset:2px}.pw-blend[data-playing]{background:color-mix(in oklab, var(--presence) 16%, transparent);border-color:var(--presence)}.pw-blend-ic{flex-shrink:0}.pw-blend-word{font-size:var(--fs-md,16px);color:var(--text-primary);overflow-wrap:anywhere;min-width:0;font-weight:700}.pw-wave{flex-shrink:0;align-items:flex-end;gap:2px;height:12px;display:inline-flex}.pw-wave>span{transform-origin:bottom;width:3px;height:100%;animation:pw-bounce .7s var(--ease-out,ease) infinite;background:currentColor;border-radius:1px}.pw-wave>span:nth-child(2){animation-delay:.18s}.pw-wave>span:nth-child(3){animation-delay:.36s}@keyframes pw-bounce{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.pw-wave>span{animation:none;transform:scaleY(.7)}}.pw-rhymes{flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:14px;display:flex}.pw-rhymes-k{font-size:var(--fs-2xs,10px);letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0;font-weight:700}.pw-rhyme-list{flex-wrap:wrap;gap:6px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.pw-rhyme{font-size:var(--fs-sm,13px);color:var(--text-secondary);border:1px solid var(--line);border-radius:var(--r-full,999px);background:var(--surface-elevated);overflow-wrap:anywhere;padding:3px 10px;font-weight:600}.sp-banner{isolation:isolate;aspect-ratio:16/7;border-radius:var(--r-md,8px);width:100%;margin-bottom:12px;position:relative;overflow:hidden}.sp-status{max-width:calc(100% - 16px);font-size:var(--fs-2xs,10px);letter-spacing:.05em;text-transform:uppercase;color:var(--text-primary);background:color-mix(in oklab, var(--surface-elevated) 82%, transparent);border:1px solid var(--line);border-radius:var(--r-full,999px);-webkit-backdrop-filter:var(--glass-blur,blur(6px));backdrop-filter:var(--glass-blur,blur(6px));text-overflow:ellipsis;white-space:nowrap;padding:3px 10px;font-weight:700;position:absolute;top:8px;right:8px;overflow:hidden}.sp-common{font-size:var(--fs-lg,20px);color:var(--text-primary);font-weight:800;line-height:1.15}.sp-scientific{font-size:var(--fs-sm,13px);color:var(--text-muted);overflow-wrap:anywhere;margin-top:2px;font-style:italic}.sp-caption{font-size:var(--fs-xs,12px);color:var(--text-secondary);margin-top:8px;line-height:1.5}.sp-marks{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-top:14px;display:grid}.sp-mark{border:1px solid var(--line);border-radius:var(--r-sm,6px);background:var(--surface-elevated);flex-direction:column;gap:2px;min-width:0;padding:8px 10px;display:flex}.sp-mark-label{font-size:var(--fs-2xs,10px);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.sp-mark-value{font-size:var(--fs-sm,13px);color:var(--text-primary);overflow-wrap:anywhere;min-width:0;font-weight:600;line-height:1.4}.sp-lookalikes{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.sp-lookalikes-k{font-size:var(--fs-2xs,10px);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:6px;font-weight:700;display:inline-flex}.sp-lookalikes-ic{color:var(--warning)}.sp-lookalike-list{flex-wrap:wrap;gap:6px;min-width:0;margin:8px 0 0;padding:0;list-style:none;display:flex}.sp-lookalike{font-size:var(--fs-sm,13px);color:var(--text-secondary);border:1px solid var(--line);border-radius:var(--r-full,999px);background:var(--surface-elevated);overflow-wrap:anywhere;padding:3px 10px;font-weight:600}.et-wrap{width:100%}.et-svg{width:100%;display:block;overflow:hidden}.et-box{fill:var(--surface-elevated);stroke-width:1.5px}.et-word-box{fill:var(--surface-elevated);stroke:var(--presence);stroke-width:2px}.et-word{fill:var(--text-primary);font-size:13px;font-weight:700}.et-form{fill:var(--text-primary);font-size:10px;font-weight:600}.et-lang{font-size:9px}.et-col-hdr{fill:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:9px;font-weight:700}.et-note{font-size:var(--fs-xs,12px);color:var(--text-secondary);overflow-wrap:anywhere;margin:10px 0 0;line-height:1.45}.hc-cas{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-xs,12px);color:var(--text-muted);margin-bottom:12px}.hc-signal{border-radius:var(--r-md,8px);background:color-mix(in oklab, var(--hc-c) 13%, var(--surface-glass));border:1px solid color-mix(in oklab, var(--hc-c) 34%, transparent);align-items:center;gap:8px;max-width:100%;margin-bottom:16px;padding:7px 16px 7px 12px;display:inline-flex}.hc-signal-icon{color:var(--hc-c);flex-shrink:0;display:inline-flex}.hc-signal-icon svg{width:16px;height:16px}.hc-signal-word{font-size:var(--fs-md,15px);letter-spacing:.05em;text-transform:uppercase;color:var(--hc-c);overflow-wrap:anywhere;font-weight:800}.hc-pictograms{flex-wrap:wrap;gap:12px 14px;margin-bottom:18px;display:flex}.hc-pic{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;width:72px;display:flex}.hc-pic-glyph{flex-shrink:0;width:40px;height:40px}.hc-pic-label{font-size:var(--fs-2xs,10px);color:var(--text-muted);text-align:center;overflow-wrap:anywhere;font-weight:600;line-height:1.2}.hc-section{margin-top:16px}.hc-section-label{font-size:var(--fs-2xs,10px);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-weight:700}.hc-codes{flex-direction:column;gap:0;display:flex}.hc-code-row{border-bottom:1px solid var(--grid-line);align-items:baseline;gap:10px;min-width:0;padding:7px 0;display:flex}.hc-code-row:last-child{border-bottom:none}.hc-code{min-width:42px;font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-xs,11px);color:var(--text-primary);flex-shrink:0;font-weight:700}.hc-code-text{min-width:0;font-size:var(--fs-sm,13px);color:var(--text-secondary);overflow-wrap:anywhere;flex:1;line-height:1.45}.tb-wrap{max-width:100%;margin-top:4px;overflow-x:auto}.tb-table{border-collapse:collapse;width:100%;min-width:max-content}.tb-table th,.tb-table td{text-align:left;border-bottom:1px solid var(--grid-line);vertical-align:top;padding:7px 14px 7px 0}.tb-table th:last-child,.tb-table td:last-child{padding-right:0}.tb-table th{font-size:var(--fs-2xs,10px);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;padding-top:0;font-weight:700}.tb-term-col{font-size:var(--fs-sm,13px);color:var(--text-primary);white-space:nowrap;font-weight:700}.tb-cell{font-size:var(--fs-sm,13px);color:var(--text-primary);min-width:110px}.tb-cell-text{overflow-wrap:anywhere;align-items:baseline;gap:6px;min-width:0;display:inline-flex}.tb-dot{border-radius:var(--r-full,999px);background:var(--tb-c,var(--text-faint));flex-shrink:0;align-self:center;width:7px;height:7px}.tb-dash{color:var(--text-faint)}.tb-flat{flex-direction:column;gap:0;margin:4px 0 0;padding:0;list-style:none;display:flex}.tb-flat-term{font-size:var(--fs-sm,13px);color:var(--text-primary);border-bottom:1px solid var(--grid-line);padding:7px 0;font-weight:600}.tb-flat-term:last-child{border-bottom:none}.tb-empty{font-size:var(--fs-sm,13px);color:var(--text-faint);font-style:italic}.ghs-diamond{fill:color-mix(in oklab, var(--danger) 9%, transparent);stroke:var(--danger);stroke-width:1.6px;stroke-linejoin:round}.ghs-symbol{fill:none;stroke:var(--danger);stroke-width:1.15px;stroke-linecap:round;stroke-linejoin:round}.ghs-symbol-fill{fill:var(--danger);stroke:none}.szc-empty{font-size:var(--fs-sm,13px);color:var(--text-faint);font-style:italic}.szc-scroll{max-width:100%;margin-top:8px;padding-bottom:2px;overflow-x:auto}.szc-row{align-items:flex-start;gap:20px;width:max-content;min-width:100%;display:flex}.szc-item{flex-direction:column;flex:none;align-items:center;min-width:64px;display:flex}.szc-shape-box{height:var(--szc-track-h,160px);border-bottom:2px solid var(--line-strong);background-image:repeating-linear-gradient(to right, var(--grid-line) 0 1px, transparent 1px 22px);background-position:bottom;background-repeat:repeat-x;justify-content:center;align-items:flex-end;width:100%;display:flex}.szc-glyph-cut{opacity:.9}.szc-item-label{font-size:var(--fs-sm,13px);color:var(--text-primary);text-align:center;overflow-wrap:anywhere;max-width:120px;margin-top:8px;font-weight:700}.szc-item-value{font-size:var(--fs-xs,11px);color:var(--text-muted);text-align:center;margin-top:2px}.bcv-value{font-size:var(--fs-xl,22px);color:var(--text-primary);letter-spacing:-.01em;overflow-wrap:anywhere;margin-bottom:14px;font-weight:800}.bcv-rows{flex-direction:column;gap:0;display:flex}.bcv-row{border-bottom:1px solid var(--grid-line);padding:9px 0}.bcv-row:last-child{border-bottom:none}.bcv-row-head{align-items:baseline;gap:8px;margin-bottom:5px;display:flex}.bcv-label{font-size:var(--fs-sm,13px);color:var(--text-primary);font-weight:700}.bcv-radix{font-size:var(--fs-2xs,10px);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.bcv-digits{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-md,16px);flex-wrap:wrap;gap:1px;font-weight:700;display:flex}.bcv-digit{border-radius:var(--r-sm,4px);color:var(--text-primary);padding:2px 3px}.bcv-digit[data-group=a]{background:color-mix(in oklab, var(--presence) 12%, transparent)}.bcv-digit[data-group=b]{background:color-mix(in oklab, var(--presence) 4%, transparent)}.bcv-dash,.bcv-empty{color:var(--text-faint);font-style:italic;font-size:var(--fs-sm,13px)}.hp-head{align-items:center;gap:14px;margin-bottom:4px;display:flex}.hp-medallion{border-radius:var(--r-full,999px);width:52px;height:52px;font-size:var(--fs-md,16px);letter-spacing:.02em;color:var(--presence);background:color-mix(in oklab, var(--presence) 14%, transparent);border:1px solid color-mix(in oklab, var(--presence) 30%, transparent);flex-shrink:0;justify-content:center;align-items:center;font-weight:800;display:flex}.hp-headline{min-width:0}.hp-name{font-size:var(--fs-lg,20px);color:var(--text-primary);overflow-wrap:anywhere;font-weight:800;line-height:1.15}.hp-era{font-size:var(--fs-sm,13px);color:var(--presence);margin-top:1px;font-weight:600}.hp-known{font-size:var(--fs-xs,12px);color:var(--text-secondary);margin-top:2px;line-height:1.4}.hp-dates{border-top:1px solid var(--line);flex-wrap:wrap;gap:20px;margin-top:14px;padding-top:12px;display:flex}.hp-date{flex-direction:column;gap:1px;min-width:0;display:flex}.hp-date-k{font-size:var(--fs-2xs,10px);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.hp-date-v{font-size:var(--fs-sm,13px);color:var(--text-primary);overflow-wrap:anywhere;font-weight:600}.hp-beats{gap:10px;margin-top:14px;padding-bottom:2px;display:flex;overflow-x:auto}.hp-beat{border-radius:var(--r-sm,6px);background:var(--surface-elevated);border:1px solid var(--line);flex-direction:column;flex:none;gap:2px;min-width:84px;max-width:140px;padding:8px 10px;display:flex}.hp-beat-year{font-size:var(--fs-xs,11px);color:var(--presence);font-weight:800;font-family:var(--font-mono,ui-monospace, monospace)}.hp-beat-label{font-size:var(--fs-xs,12px);color:var(--text-secondary);overflow-wrap:anywhere;line-height:1.35}.hp-facts{flex-direction:column;gap:0;margin-top:14px;display:flex}.hp-fact-row{border-bottom:1px solid var(--grid-line);align-items:baseline;gap:12px;padding:7px 0;display:flex}.hp-fact-row:last-child{border-bottom:none}.hp-fact-label{font-size:var(--fs-xs,12px);color:var(--text-muted);flex-shrink:0;min-width:84px;font-weight:600}.hp-fact-value{font-size:var(--fs-sm,13px);color:var(--text-primary);overflow-wrap:anywhere;flex:1;line-height:1.45}.hp-legacy{border-top:1px solid var(--line);font-size:var(--fs-sm,13px);color:var(--text-secondary);margin-top:14px;padding-top:12px;line-height:1.6}.otd-date{font-size:var(--fs-sm,13px);color:var(--presence);margin-bottom:12px;font-weight:700}.otd-events{flex-direction:column;gap:0;display:flex}.otd-event{border-bottom:1px solid var(--grid-line);align-items:flex-start;gap:12px;min-width:0;padding:9px 0;display:flex}.otd-event:last-child{border-bottom:none}.otd-year-chip{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-xs,11px);color:var(--presence);background:color-mix(in oklab, var(--presence) 12%, transparent);border-radius:var(--r-full,999px);text-align:center;flex-shrink:0;min-width:44px;padding:3px 9px;font-weight:800}.otd-event-body{flex:1;min-width:0}.otd-label{font-size:var(--fs-sm,14px);color:var(--text-primary);overflow-wrap:anywhere;font-weight:600;line-height:1.4}.otd-cat{font-size:var(--fs-2xs,10px);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);background:var(--track);border-radius:var(--r-full,999px);margin-top:3px;padding:1px 8px;font-weight:700;display:inline-block}.otd-empty{font-size:var(--fs-sm,13px);color:var(--text-faint);font-style:italic}.otd-people{border-top:1px solid var(--line);flex-wrap:wrap;gap:24px;margin-top:14px;padding-top:12px;display:flex}.otd-people-col{flex-direction:column;gap:4px;min-width:120px;display:flex}.otd-people-k{font-size:var(--fs-2xs,10px);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2px;font-weight:700}.otd-person{font-size:var(--fs-xs,12px);align-items:baseline;gap:8px;display:flex}.otd-person-year{font-family:var(--font-mono,ui-monospace, monospace);color:var(--text-muted);flex-shrink:0}.otd-person-name{color:var(--text-secondary);overflow-wrap:anywhere}.cc-banner{aspect-ratio:16/6;border-radius:var(--r-md,8px);background:linear-gradient(150deg, var(--surface-elevated-2,var(--surface-elevated)), var(--surface-elevated));border:1px solid var(--line);justify-content:center;align-items:center;width:100%;margin-bottom:12px;display:flex;overflow:hidden}.cc-flag{font-size:clamp(36px,8cqi,56px);line-height:1}.cc-name{font-size:var(--fs-lg,20px);color:var(--text-primary);overflow-wrap:anywhere;font-weight:800;line-height:1.15}.cc-marks{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:14px;display:grid}.cc-mark{border:1px solid var(--line);border-radius:var(--r-sm,6px);background:var(--surface-elevated);flex-direction:column;gap:2px;min-width:0;padding:8px 10px;display:flex}.cc-mark-label{font-size:var(--fs-2xs,10px);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.cc-mark-value{font-size:var(--fs-sm,13px);color:var(--text-primary);overflow-wrap:anywhere;min-width:0;font-weight:600;line-height:1.4}.cc-langs{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.cc-lang-chip{font-size:var(--fs-xs,12px);color:var(--presence);border:1px solid color-mix(in oklab, var(--presence) 30%, transparent);border-radius:var(--r-full,999px);background:color-mix(in oklab, var(--presence) 9%, transparent);overflow-wrap:anywhere;padding:3px 10px;font-weight:600}.cc-facts{flex-direction:column;gap:0;margin-top:14px;display:flex}.cc-fact-row{border-bottom:1px solid var(--grid-line);align-items:baseline;gap:12px;padding:7px 0;display:flex}.cc-fact-row:last-child{border-bottom:none}.cc-fact-label{font-size:var(--fs-xs,12px);color:var(--text-muted);flex-shrink:0;min-width:84px;font-weight:600}.cc-fact-value{font-size:var(--fs-sm,13px);color:var(--text-primary);overflow-wrap:anywhere;flex:1;line-height:1.45}.wg-empty{font-size:var(--fs-sm,13px);color:var(--text-faint);font-style:italic}.wg-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px;display:grid}.wg-tile{border:1px solid var(--line);border-radius:var(--r-md,8px);background:var(--surface-elevated);flex-direction:column;gap:3px;min-width:0;padding:12px;display:flex}.wg-flag{margin-bottom:4px;font-size:26px;line-height:1}.wg-name{font-size:var(--fs-sm,13px);color:var(--text-primary);overflow-wrap:anywhere;margin-bottom:3px;font-weight:700}.wg-row{font-size:var(--fs-2xs,10px);justify-content:space-between;gap:6px;min-width:0;line-height:1.4;display:flex}.wg-row-k{color:var(--text-muted);flex-shrink:0}.wg-row-v{color:var(--text-secondary);text-align:right;overflow-wrap:anywhere;min-width:0;font-weight:600}.wc-dates{font-size:var(--fs-sm,13px);color:var(--text-secondary);margin-bottom:12px;font-weight:700}.wc-sides{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.wc-side{border-radius:var(--r-sm,6px);border-left:3px solid var(--wc-c,var(--presence));background:color-mix(in oklab, var(--wc-c,var(--presence)) 7%, var(--surface-elevated));min-width:0;padding:10px 12px}.wc-side-name{font-size:var(--fs-sm,14px);color:var(--wc-c,var(--text-primary));overflow-wrap:anywhere;font-weight:800}.wc-leaders{flex-direction:column;gap:3px;margin:6px 0 0;padding:0;list-style:none;display:flex}.wc-leader{font-size:var(--fs-xs,12px);color:var(--text-secondary);overflow-wrap:anywhere}.wc-battles{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px 16px;margin-top:16px;padding-top:12px;display:flex}.wc-battle{min-width:0;font-size:var(--fs-xs,12px);align-items:baseline;gap:6px;display:inline-flex}.wc-battle-dot{border-radius:var(--r-full,999px);background:var(--text-muted);flex-shrink:0;align-self:center;width:6px;height:6px}.wc-battle-label{color:var(--text-primary);overflow-wrap:anywhere;font-weight:600}.wc-battle-at{color:var(--text-faint);overflow-wrap:anywhere}.wc-stat-row{border-top:1px solid var(--line);align-items:baseline;gap:12px;margin-top:14px;padding-top:12px;display:flex}.wc-stat-k{font-size:var(--fs-xs,12px);color:var(--text-muted);flex-shrink:0;font-weight:600}.wc-stat-v{font-size:var(--fs-sm,13px);color:var(--text-primary);overflow-wrap:anywhere}.wc-outcome{font-size:var(--fs-sm,13px);color:var(--text-secondary);margin-top:10px;line-height:1.6}.psb-token,.psb-leg{--psb-c:var(--text-muted)}.psb-token[data-pos=noun],.psb-leg[data-pos=noun]{--psb-c:var(--presence)}.psb-token[data-pos=verb],.psb-leg[data-pos=verb]{--psb-c:var(--insight)}.psb-token[data-pos=adjective],.psb-leg[data-pos=adjective]{--psb-c:var(--warning)}.psb-token[data-pos=adverb],.psb-leg[data-pos=adverb]{--psb-c:var(--presence-deep)}.psb-token[data-pos=pronoun],.psb-leg[data-pos=pronoun]{--psb-c:var(--presence-soft)}.psb-token[data-pos=preposition],.psb-leg[data-pos=preposition]{--psb-c:var(--insight-soft)}.psb-token[data-pos=conjunction],.psb-leg[data-pos=conjunction]{--psb-c:var(--warning-soft)}.psb-token[data-pos=determiner],.psb-leg[data-pos=determiner]{--psb-c:var(--text-muted)}.psb-token[data-pos=interjection],.psb-leg[data-pos=interjection]{--psb-c:var(--danger)}.psb-flow{flex-wrap:wrap;align-items:flex-start;gap:8px 5px;min-width:0;margin-top:6px;display:flex}.psb-group{align-items:flex-start;min-width:0;display:inline-flex}.psb-token{border-radius:var(--r-sm,6px) var(--r-sm,6px) 2px 2px;background:color-mix(in oklab, var(--psb-c) 9%, transparent);border-bottom:2px solid color-mix(in oklab, var(--psb-c) 80%, transparent);min-width:0;transition:opacity var(--m-fast,.16s) var(--ease-out,ease);flex-direction:column;align-items:center;gap:2px;padding:3px 7px 4px;display:inline-flex}.psb-word{font-size:var(--fs-md,16px);color:var(--text-primary);overflow-wrap:anywhere;min-width:0;font-weight:600;line-height:1.25}.psb-note-mark{font-size:var(--fs-2xs,10px);color:color-mix(in oklab, var(--psb-c) 72%, var(--text-primary));margin-left:1px;font-weight:800}.psb-abbr{font-size:var(--fs-2xs,10px);letter-spacing:.05em;color:color-mix(in oklab, var(--psb-c) 72%, var(--text-primary));font-weight:700;line-height:1}.psb-punct{font-size:var(--fs-md,16px);color:var(--text-secondary);transition:opacity var(--m-fast,.16s) var(--ease-out,ease);padding-top:3px;font-weight:600;line-height:1.25}.psb-token[data-dim],.psb-punct[data-dim]{opacity:.3}.psb-plain{font-size:var(--fs-md,15px);color:var(--text-primary);overflow-wrap:anywhere;margin:6px 0 0;line-height:1.6}.psb-empty{font-size:var(--fs-sm,13px);color:var(--text-faint);font-style:italic}.psb-translation{font-size:var(--fs-sm,13px);color:var(--text-secondary);overflow-wrap:anywhere;margin-top:10px;font-style:italic;line-height:1.5}.psb-legend{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.psb-leg{min-width:0;font-size:var(--fs-xs,12px);color:var(--text-secondary);background:var(--surface-elevated);border:1px solid var(--line);border-radius:var(--r-full,999px);cursor:pointer;transition:background var(--m-fast,.16s) var(--ease-out,ease), border-color var(--m-fast,.16s) var(--ease-out,ease);align-items:center;gap:6px;padding:3px 10px;font-weight:600;display:inline-flex}.psb-leg:hover{border-color:color-mix(in oklab, var(--psb-c) 55%, transparent)}.psb-leg:focus-visible{outline:2px solid var(--presence);outline-offset:2px}.psb-leg[aria-pressed=true]{border-color:color-mix(in oklab, var(--psb-c) 65%, transparent);background:color-mix(in oklab, var(--psb-c) 12%, transparent);color:var(--text-primary)}.psb-leg-dot{border-radius:var(--r-full,999px);background:var(--psb-c);flex-shrink:0;width:8px;height:8px}.psb-leg-n{font-size:var(--fs-2xs,10px);color:var(--text-faint);font-weight:700}.psb-notes{flex-direction:column;gap:4px;margin:12px 0 0;padding:0;list-style:none;display:flex}.psb-note{font-size:var(--fs-xs,12px);color:var(--text-secondary);align-items:baseline;gap:6px;min-width:0;line-height:1.45;display:flex}.psb-note-num{color:var(--text-muted);flex-shrink:0;font-weight:800}.psb-note-text{overflow-wrap:anywhere;min-width:0}.psb-note-word{color:var(--text-primary);font-weight:700}.dcd-terms{grid-template-columns:repeat(var(--dcd-cols,2), minmax(0, 1fr));gap:10px;margin-top:6px;display:grid}@container (width<=520px){.dcd-terms{grid-template-columns:repeat(var(--dcd-cols-narrow,2), minmax(0, 1fr))}}@container (width<=380px){.dcd-terms{grid-template-columns:1fr}}.dcd-term{border-radius:var(--r-sm,6px);border:1px solid color-mix(in oklab, var(--dcd-c,var(--presence)) 24%, transparent);border-top:3px solid var(--dcd-c,var(--presence));background:color-mix(in oklab, var(--dcd-c,var(--presence)) 7%, var(--surface-elevated));min-width:0;padding:10px 12px 11px}.dcd-term-head{flex-wrap:wrap;align-items:baseline;gap:3px 7px;min-width:0;display:flex}.dcd-term-name{min-width:0;font-size:var(--fs-lg,16px);color:color-mix(in oklab, var(--dcd-c,var(--presence)) 78%, var(--text-primary));overflow-wrap:anywhere;font-weight:800;line-height:1.25}.dcd-term-tag{border-radius:var(--r-full,999px);min-width:0;font-size:var(--fs-xs,11px);color:color-mix(in oklab, var(--dcd-c,var(--presence)) 70%, var(--text-primary));background:color-mix(in oklab, var(--dcd-c,var(--presence)) 14%, transparent);overflow-wrap:anywhere;padding:1px 7px;font-weight:700;line-height:1.7}.dcd-gist{font-size:var(--fs-sm,13px);color:var(--text-secondary);overflow-wrap:anywhere;text-wrap:pretty;margin:6px 0 0;line-height:1.5}.dcd-example{border-left:2px solid color-mix(in oklab, var(--dcd-c,var(--presence)) 40%, transparent);font-size:var(--fs-sm,13px);color:var(--text-primary);overflow-wrap:anywhere;text-wrap:pretty;margin:8px 0 0;padding-left:8px;font-style:italic;line-height:1.5}.dcd-example-k{font-style:normal;font-weight:700;font-size:var(--fs-xs,11px);letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);margin-right:5px}.dcd-rule{border-radius:var(--r-md,10px);border:1px solid color-mix(in oklab, var(--insight) 34%, transparent);border-left:3px solid var(--insight);background:color-mix(in oklab, var(--insight) 11%, var(--surface-elevated));min-width:0;margin-top:14px;padding:11px 14px 13px}.dcd-rule-label{min-width:0;font-size:var(--fs-xs,11px);letter-spacing:.08em;text-transform:uppercase;color:var(--insight);overflow-wrap:anywhere;align-items:center;gap:6px;font-weight:800;display:flex}.dcd-rule-label .ic{flex-shrink:0;width:14px;height:14px}.dcd-rule-text{font-size:var(--fs-xl,19px);color:var(--text-primary);overflow-wrap:anywhere;text-wrap:pretty;margin:5px 0 0;font-weight:700;line-height:1.35}.dcd-mistake{min-width:0;font-size:var(--fs-sm,13px);color:var(--text-secondary);align-items:flex-start;gap:7px;margin:10px 0 0;line-height:1.5;display:flex}.dcd-mistake .ic{width:14px;height:14px;color:var(--warning);flex-shrink:0;margin-top:2px}.dcd-mistake-text{overflow-wrap:anywhere;text-wrap:pretty;min-width:0}.dcd-mistake-k{color:var(--warning);font-weight:700}.dcd-empty{font-size:var(--fs-sm,13px);color:var(--text-faint);font-style:italic}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.md-draft{border:1px solid var(--line);border-radius:var(--r-md);margin-top:12px;overflow:hidden}.md-header{background:var(--surface-glass);border-bottom:1px solid var(--line);padding:10px 14px}.md-field{font-size:var(--fs-xs,12px);align-items:baseline;gap:8px;padding:2px 0;display:flex}.md-field-label{color:var(--text-muted);flex-shrink:0;min-width:48px}.md-field-value{color:var(--text-primary);text-overflow:ellipsis;min-width:0;font-weight:500;overflow:hidden}.md-subject{font-size:var(--fs-md,15px);color:var(--text-primary);padding:8px 14px 4px;font-weight:700}.md-body{font-size:var(--fs-sm,13px);color:var(--text-primary);white-space:pre-wrap;padding:8px 14px 14px;line-height:1.65}.md-closing{font-size:var(--fs-sm,13px);color:var(--text-secondary);padding:0 14px 12px}.md-tone-chip{font-size:var(--fs-xs,11px);border-radius:var(--r-full);background:color-mix(in oklab, var(--presence) 12%, transparent);color:var(--presence);margin-top:10px;padding:2px 8px;font-weight:600;display:inline-block}.md-copy-row{border-top:1px solid var(--line);justify-content:flex-end;padding:8px 14px;display:flex}.ct-thread{flex-direction:column;gap:6px;max-height:440px;margin-top:10px;display:flex;overflow-y:auto}.ct-participants{font-size:var(--fs-xs,12px);color:var(--text-muted);margin-bottom:4px}.ct-row{align-items:flex-end;gap:8px;display:flex}.ct-row.ct-user{flex-direction:row-reverse}.ct-avatar{background:color-mix(in oklab, var(--presence) 18%, var(--surface-elevated));width:28px;height:28px;color:var(--presence);font-size:var(--fs-xs,11px);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.ct-row.ct-user .ct-avatar{background:color-mix(in oklab, var(--insight) 18%, var(--surface-elevated));color:var(--insight)}.ct-bubble{background:var(--surface-elevated);border:1px solid var(--line);border-radius:var(--r-md);max-width:76%;font-size:var(--fs-sm,13px);color:var(--text-primary);border-bottom-left-radius:4px;padding:8px 12px;line-height:1.55}.ct-row.ct-user .ct-bubble{background:color-mix(in oklab, var(--presence) 10%, var(--surface-elevated));border-color:color-mix(in oklab, var(--presence) 20%, var(--line));border-bottom-left-radius:var(--r-md);border-bottom-right-radius:4px}.ct-name{font-size:var(--fs-xs,11px);color:var(--text-muted);margin-bottom:2px;font-weight:600}.ct-time{font-size:var(--fs-2xs);color:var(--text-faint);text-align:right;margin-top:3px}.dg-ctx{font-size:var(--fs-sm,13px);color:var(--text-muted);margin-bottom:12px;font-style:italic;line-height:1.5}.dg-lines{flex-direction:column;gap:10px;max-height:480px;margin-top:10px;display:flex;overflow-y:auto}.dg-line{align-items:flex-start;gap:10px;display:flex}.dg-speaker{font-size:var(--fs-xs,11px);color:var(--presence);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;min-width:60px;padding-top:2px;font-weight:700}.dg-line:nth-child(2n) .dg-speaker{color:var(--text-secondary)}.dg-text{font-size:var(--fs-sm,13px);color:var(--text-primary);flex:1;min-width:0;line-height:1.6}.dg-note{font-size:var(--fs-xs,11px);color:var(--text-muted);margin-top:2px;font-style:italic}.vt-prompt{font-size:var(--fs-sm,13px);color:var(--text-muted);background:var(--surface-glass);border-left:3px solid var(--line-strong);border-radius:0 var(--r-sm) var(--r-sm) 0;margin-bottom:12px;padding:8px 12px;font-style:italic;line-height:1.5}.vt-list{flex-direction:column;gap:10px;max-height:420px;margin-top:10px;display:flex;overflow-y:auto}.vt-item{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.vt-label{font-size:var(--fs-xs,11px);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--surface-glass);border-bottom:1px solid var(--line);padding:6px 12px;font-weight:700}.vt-text{font-size:var(--fs-sm,13px);color:var(--text-primary);padding:10px 12px;line-height:1.65}.vt-note{font-size:var(--fs-xs,11px);color:var(--text-muted);padding:4px 12px 8px;font-style:italic}.vs-form{font-size:var(--fs-xs,12px);color:var(--text-muted);font-variant:small-caps;letter-spacing:.06em;margin-bottom:12px}.vs-stanzas{flex-direction:column;gap:18px;max-height:520px;margin-top:12px;display:flex;overflow-y:auto}.vs-stanza-label{font-size:var(--fs-xs,11px);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-weight:700}.vs-lines{flex-direction:column;gap:1px;display:flex}.vs-line{font-size:var(--fs-sm,14px);color:var(--text-primary);font-style:italic;line-height:1.7}.vs-line.indent-1{padding-left:24px}.vs-line.indent-2{padding-left:48px}.sd-slides{flex-direction:column;gap:12px;max-height:560px;margin-top:10px;display:flex;overflow-y:auto}.sd-slide{border:1px solid var(--line);border-radius:var(--r-md);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sd-slide-head{background:var(--surface-glass);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:8px 12px;display:flex}.sd-num{font-size:var(--fs-xs,11px);color:var(--text-faint);background:var(--track);border-radius:var(--r-sm);flex-shrink:0;padding:1px 6px;font-weight:700}.sd-title{font-size:var(--fs-sm,13px);color:var(--text-primary);min-width:0;font-weight:600}.sd-layout-chip{font-size:var(--fs-2xs);color:var(--text-faint);background:var(--track);border-radius:var(--r-full);text-transform:lowercase;flex-shrink:0;margin-left:auto;padding:1px 6px;font-weight:600}.sd-bullets{flex-direction:column;gap:3px;margin:0;padding:8px 12px;list-style:none;display:flex}.sd-bullet{font-size:var(--fs-sm,13px);color:var(--text-primary);padding-left:14px;line-height:1.5;position:relative}.sd-bullet:before{content:"·";color:var(--text-faint);position:absolute;left:4px}.sd-note{font-size:var(--fs-xs,11px);color:var(--text-muted);border-top:1px solid var(--line);padding:4px 12px 8px;font-style:italic}.copy-btn{border-radius:var(--r-sm);border:1px solid var(--line);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;transition:color .15s,background .15s;display:inline-flex}.copy-btn:hover{color:var(--text-primary);background:var(--surface-elevated)}.copy-btn.copied{color:var(--insight);border-color:var(--insight)}.copy-btn .ic{width:14px;height:14px}@container (width<=320px){.ct-bubble{max-width:88%}.dg-speaker{min-width:44px}.sd-layout-chip{display:none}}.vst-traits{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.vst-chip{border-radius:var(--r-full,999px);border:1px solid color-mix(in oklab, var(--presence) 24%, var(--line));background:color-mix(in oklab, var(--presence) 8%, transparent);flex-direction:column;gap:1px;max-width:100%;padding:5px 10px;display:inline-flex}.vst-chip-label{font-size:var(--fs-xs,12px);color:var(--presence);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.vst-chip-ex{font-size:var(--fs-2xs,10px);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-style:italic;overflow:hidden}.vst-baf{flex-direction:column;gap:8px;margin-top:14px;display:flex}.vst-side{border-radius:var(--r-md);border:1px solid var(--line);padding:10px 12px;overflow:hidden}.vst-side--generic{background:var(--surface-glass)}.vst-side--mine{border-color:color-mix(in oklab, var(--presence) 38%, var(--line));background:color-mix(in oklab, var(--presence) 10%, var(--surface-elevated));box-shadow:0 0 0 1px color-mix(in oklab, var(--presence) 18%, transparent) inset}.vst-side-tag{font-size:var(--fs-2xs,10px);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);align-items:center;gap:4px;margin-bottom:5px;font-weight:700;display:inline-flex}.vst-side-tag--mine{color:var(--presence)}.vst-generic-text{font-size:var(--fs-sm,13px);color:var(--text-muted);overflow-wrap:anywhere;margin:0;line-height:1.55}.vst-mine-text{font-size:var(--fs-md,15px);color:var(--text-primary);overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.6}.vst-arrow{color:color-mix(in oklab, var(--presence) 70%, var(--text-faint));justify-content:center;align-items:center;display:flex}.scp-caption{font-size:var(--fs-sm,13px);color:var(--text-muted);margin-bottom:12px;font-style:italic;line-height:1.5}.scp-page{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-elevated);font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-sm,13px);color:var(--text-primary);max-height:520px;margin-top:10px;padding:16px 18px;line-height:1.55;overflow-y:auto}.scp-el{overflow-wrap:anywhere;white-space:pre-wrap;min-width:0}.scp-el+.scp-el{margin-top:10px}.scp-slug{letter-spacing:.02em;color:var(--text-primary);font-weight:700}.scp-action{color:var(--text-secondary)}.scp-character{margin-inline:auto;letter-spacing:.04em;width:fit-content;max-width:100%;color:var(--text-primary);text-align:center;margin-top:14px;font-weight:700}.scp-character+.scp-parenthetical,.scp-character+.scp-dialogue{margin-top:2px}.scp-parenthetical{color:var(--text-muted);margin-inline:30% 18%;font-style:italic}.scp-dialogue{color:var(--text-primary);margin-inline:22% 18%}.scp-transition{text-align:right;letter-spacing:.04em;color:var(--text-secondary);font-weight:700}@container (width<=360px){.scp-parenthetical{margin-inline:16% 8%}.scp-dialogue{margin-inline:10% 6%}}.sp-card--x{--sp-accent:var(--text-primary);--sp-bar:var(--text-primary)}.sp-card--linkedin{--sp-accent:var(--insight);--sp-bar:var(--insight)}.sp-card--instagram{--sp-accent:var(--warning);--sp-bar:linear-gradient(90deg, var(--presence), var(--warning), var(--danger))}.sp-card--threads{--sp-accent:var(--text-primary);--sp-bar:var(--text-primary)}.sp-card--generic{--sp-accent:var(--text-muted);--sp-bar:var(--text-muted)}.sp-platform-chip{font-size:var(--fs-2xs,10px);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--r-full);border:1px solid color-mix(in oklab, var(--sp-accent) 32%, var(--line));color:var(--sp-accent);background:color-mix(in oklab, var(--sp-accent) 10%, transparent);white-space:nowrap;flex-shrink:0;padding:2px 8px;font-weight:700}.sp-post{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-elevated);margin-top:12px;position:relative;overflow:hidden}.sp-post:before{content:"";background:var(--sp-bar);height:3px;display:block}.sp-head{align-items:flex-start;gap:10px;padding:12px 14px 0;display:flex}.sp-avatar{width:38px;height:38px;font-size:var(--fs-sm,13px);background:color-mix(in oklab, var(--sp-accent) 18%, var(--surface-elevated));color:var(--sp-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.sp-who{flex:1;min-width:0}.sp-name-row{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.sp-name{font-weight:700;font-size:var(--fs-sm,13px);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.sp-handle{font-size:var(--fs-xs,12px);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sp-time{font-size:var(--fs-2xs,11px);color:var(--text-faint);margin-top:1px}.sp-body{font-size:var(--fs-sm,13px);color:var(--text-primary);white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;padding:8px 14px 4px;line-height:1.55;overflow-y:auto}.sp-media{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px;padding:6px 14px 4px;display:grid}.sp-media-item{border:1px dashed var(--line-strong);border-radius:var(--r-sm);background:var(--surface-glass);color:var(--text-faint);flex-direction:column;align-items:center;gap:4px;min-width:0;padding:10px 6px;display:flex}.sp-media-item .ic{width:16px;height:16px}.sp-media-alt{font-size:var(--fs-2xs,10px);color:var(--text-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.sp-meta-row{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;margin-top:8px;padding:8px 14px 12px;display:flex}.sp-engagement{color:var(--text-faint);align-items:center;gap:14px;display:flex}.sp-eng-icon{width:15px;height:15px}.sp-charcount{font-size:var(--fs-2xs,11px);font-variant-numeric:tabular-nums;border-radius:var(--r-full);color:var(--text-muted);background:var(--track);flex-shrink:0;padding:2px 8px;font-weight:600}.sp-charcount[data-state=warning]{color:var(--warning);background:color-mix(in oklab, var(--warning) 14%, transparent)}.sp-charcount[data-state=danger]{color:var(--danger);background:color-mix(in oklab, var(--danger) 16%, transparent)}@container (width<=320px){.sp-engagement{gap:8px}.sp-name{max-width:100px}}.lgr-wrap{margin-top:10px;max-width:70ch;font-size:var(--fs-md);margin-inline:auto}.lgr-meta{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-bottom:8px;display:flex}.lgr-readtime{font-size:var(--fs-xs);letter-spacing:.02em;overflow-wrap:anywhere;min-width:0}.lgr-standfirst{font-size:var(--fs-lg);color:var(--text-secondary);overflow-wrap:break-word;margin:12px 0 0;font-weight:500;line-height:1.5}.lgr-piece{max-height:620px;margin-top:14px;overflow-y:auto}.lgr-piece--spine .lgr-section{border-left:1px solid var(--line);padding-left:18px}.lgr-section{padding-bottom:18px}.lgr-section:last-child{padding-bottom:0}.lgr-heading{font-size:var(--fs-md);color:var(--text-primary);justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 8px;font-weight:700;line-height:1.35;display:flex;position:relative}.lgr-piece--spine .lgr-heading:before{content:"";background:color-mix(in oklab, var(--presence) 70%, var(--surface-elevated));border-radius:50%;width:7px;height:7px;position:absolute;top:.45em;left:-22px}.lgr-heading-text{overflow-wrap:break-word;min-width:0}.lgr-section-copy{flex-shrink:0;align-self:center}.lgr-para{color:var(--text-primary);overflow-wrap:break-word;margin:0 0 .85em;line-height:1.7}.lgr-section .lgr-para:last-child{margin-bottom:0}@container (width<=380px){.lgr-piece--spine .lgr-section{padding-left:10px}.lgr-piece--spine .lgr-heading:before{left:-14px}}.ibd-ask{font-size:var(--fs-sm);color:var(--text-muted);background:var(--surface-glass);border-left:3px solid var(--line-strong);border-radius:0 var(--r-sm) var(--r-sm) 0;overflow-wrap:break-word;margin-top:12px;padding:8px 12px;font-style:italic;line-height:1.5}.ibd-board{flex-direction:column;gap:16px;max-height:520px;margin-top:12px;display:flex;overflow-y:auto}.ibd-angle{min-width:0}.ibd-angle-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.ibd-angle-label{font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ibd-tint,var(--presence));overflow-wrap:anywhere;min-width:0;font-weight:700}.ibd-angle-count{font-size:var(--fs-2xs);color:var(--text-faint);background:var(--track);border-radius:var(--r-full);flex-shrink:0;padding:1px 7px;font-weight:600}.ibd-angle-rule{background:linear-gradient(90deg, color-mix(in oklab, var(--ibd-tint,var(--presence)) 40%, transparent), transparent);flex:1;min-width:12px;height:1px}.ibd-ideas{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:8px;display:grid}.ibd-idea{border-radius:var(--r-md);border:1px solid color-mix(in oklab, var(--ibd-tint,var(--presence)) 22%, var(--line));background:color-mix(in oklab, var(--ibd-tint,var(--presence)) 7%, var(--surface-glass));flex-direction:column;gap:3px;min-width:0;padding:9px 11px;display:flex}.ibd-idea-label{font-size:var(--fs-sm);color:var(--text-primary);overflow-wrap:break-word;font-weight:600;line-height:1.4}.ibd-idea-note{font-size:var(--fs-xs);color:var(--text-muted);overflow-wrap:break-word;line-height:1.45}@container (width<=380px){.ibd-ideas{grid-template-columns:1fr}}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{n as e,t}from"./preload-helper-CiWYd9n-.js";import{n,t as r}from"./catalog-CRekRbKO.js";import{n as i,t as a}from"./facts-BUGuVUIc.js";import{t as o}from"./liveSchema-Z_39HuDI.js";import{a as s,i as c,n as l,t as u}from"./shapes-BwoDrn09.js";var d=`insight.scorecard.trendtile.waterfall.funnel.flightchart.deltacascade.bulletkpi.bulletchart.comparebars.bcgmatrix.pivot.groupedbars.leaderboard.datatable.roadmap.gantt.kanban.plandag.milestones.progressbar.statustimeline.healthgrid.kpidashboard.issuetree.meetingnotes.sparkstat.counter.herostat.streamgraph.scorebadge.radar.smallmultiples.arearange.waffle.histogram.boxplot.sparktable.percentilebar.statpair.calibration.ratinginput.sliderinput.segmented.rangefilter.stepindicator.pregnancyweek.cycletrack.contractiontimer.reasoning.routing.agenttrace.toolcalls.retrieval.embedmap.tokenstream.modelcompare.whatchanged.factcheck.confidencemeter.citationchain.sourcelist.claimgrid.highlightsnippet.redline.annotateddoc.docoutline.network.sunburst.researchsummary.hypothesiscard.dotplot.controlchart.errorbars.kpi.plot.matrix.diagram.diagramflow.docview.pdfreader.datastructure.bigo.complexitysummary.confusionmatrix.protocolstack.logicgates.algorithmtrace.sortingviz.graphtrace.binarytree.dptable.hashtable.trie.gridtrace.sysarchdiagram.recursiontree.sequencealign.compare.timeline.clinicaltimeline.medicationschedule.clearancematrix.anatomyfigure.odontogram.ecgstrip.vitalstrip.careplan.triageboard.mentalhealthscreen.callout.casebrief.discoverytracker.patentclaimchart.litigationtimeline.billtracker.immigrationcase.caseload.verdictcard.scenarioset.divider.wizard.goaltree.candlestick.lollipop.decisiontree.slopegraph.dumbbell.powersample.abtestresult.orgchart.treemap.processflow.journeymap.userpersona.swimlane.bubble.matrixgrid.treetable.footnotetable.tabs.deflist.faq.accordion.riskmatrix.threatmodel.pricingtable.raci.dimensiondrawing.explodedview.weldsymbol.cutlist.linebalance.moodboard.palette.photo.geomap.bars.storystrip.carousel.lightbox.beforeafter.imagecallouts.annotcallouts.videoembed.waveform.sankey.proscons.casestudy.pullquote.takeaways.skeleton.emptystate.mediacard.voicestyle.exposuretriangle.colorwheel.artanalysis.shotlist.runofshow.beatsheet.craftchart.patternpiece.storyarc.castmap.devicemark.creativetest.brandguide.musicstaff.flashcard.chronologicaltimeline.chorddiagram.mixerboard.pianokeys.fretboardmap.circleoffifths.practicelog.gallery.togglegroup.radiogroup.svgblock.scalefelt.moonphase.skychart.orbitdiagram.sizecompare.donut.foodweb.taxonrank.list.speciescard.scoreboard.ring.standings.bump.scoutingreport.tournamentbracket.banner.checklist.epicurve.web.positioncard.differential.growthcurve.painscale.badgeset.livescore.gameboard.boardgamescore.tierlist.seatingchart.checkboxgroup.numberstepper.picturesequence.vaxschedule.vetpatientchart.stickerchart.avatar.avatargroup.chipset.kbd.codeblock.toaststack.spinner.notification.tooltip.hovercard.a11yaudit.usabilityfindings.typespec.navbar.sidenav.treeview.breadcrumb.menubar.toolbar.megamenu.commandbar.pagination.commandk.modal.drawer.bottomnav.screenmap.wireframe.textfield.fileupload.textarea.combobox.formpanel.select.buttonbar.switchset.actionchecklist.otp.trustmap.datepicker.calendarpick.timepicker.daterange.colorpicker.tagsinput.searchselect.sheet.menu.popover.contextmenu.confirmdialog.roomblockdashboard.messagedraft.chatthread.dialogue.variants.verse.slidedeck.screenplay.socialpost.storystructure.ideaboard.longread.variantswitch.forecast.agenda.picks.transitroute.timezones.lifewheel.promptset.prayertimes.amortization.receipt.settleup.bracketbar.stackedbars.budgetallocator.paystub.taxbracket.taxreturnsummary.siteplan.zoningmap.factsheet.newsdigest.dictionary.translation.pronunciation.gloss.stacktrace.syntaxbreakdown.codewalk.hearit.ipachart.scriptstroke.paralleltext.comparematrix.toulmin.etymtree.rollcall.termbase.historicalperson.onthisday.countrycard.worldgrid.warconflict.distinctioncard.chart.stack.messagescriptset.eligibilitycheck.bridge.supplydemand.payoffdiagram.yieldcurve.efficientfrontier.bondladder.collectiontracker.cma.claimagecompare.scatter.companionnote.breathpacer.sleepcycle.heat.bodymap.calheat.workoutplan.macrobreakdown.runninglog.zoneladder.streakgrid.copingmenu.thoughtrecord.habittracker.readinglist.maproute.packlist.weathernow.pictogramchart.menucard.quadrant.venn.recipecard.cocktailcard.ingredientmatrix.plangrid.nutritionlabel.unitconvert.seasonband.worthit.reviewsynth.sizechart.breakdown.gauge.countdown.blanks.reframecard.talktrack.resume.understand.schema.buildprog.sponsorshiptracker.contentcalendar.podcastplanner.marimekko.timeseriesdecomposition.financialstatement.pareto.flowchord.evidencetrace.cohortgrid.fivewhychain.pipeline.quotes.emotionwheel.livecompute.captable.vestingschedule.termsheet.fundraisingrounds.saferterms.dilutionwaterfall.threestatementlink.tamsam.trainingcurve.burnrunway.ridgeplot.correlationheatmap.scatterplotmatrix.roccurve.precisionrecallcurve.biasvariance.gradientdescent.nnarchitecture.datadictionary.datapipeline.ablationtable.interviewscorecard.paybandchart.headcountplan.dosdonts.breakeven.depreciationschedule.logicmodel.fiveforces.cvssscorecard.changelog.lessonplan.equationblock.numberline.workedexample.quiz.quizsession.piedonut.distributioncurve.dualaxis.scatterregression.molecularstructure.sequencediagram.diffviewer.sensitivitytable.periodictable.elementcard.circuitdiagram.statemachine.erdiagram.labpanel.geometrycanvas.freebodydiagram.vectorspace.reactionmechanism.synthesisroute.hazardcard.labprotocol.argumentmap.teachdiagram.fractionbar.gridmatrix.conjugation.probabilitytree.mindshape.world.areaplot.wave.energydiagram.phylotree.parsetree.eratimeline.celldiagram.raydiagram.interferencepattern.vectorfield.phasediagram.particlemodel.bohrmodel.orbitaldiagram.pedigree.indifferencecurve.causationchain.equationbalancer.yieldcalc.vseprmolecule.titrationcurve.unitcircle.solidfigure.crosssection.loaddiagram.scansionmark.clockface.moneytray.placevaluechart.columnarithmetic.pictograph.populationpyramid.shapecard.letterform.toolscale.cyclewheel.phonicsword.sightwordlist.alphabetchart.morphemebreakdown.skilltree.violinplot.stemleafplot.surfaceplot.qqplot.samplingdistribution.gridtransform.phaseportrait.twocolumnproof.polarplot.taylorseries.areamodel.dnahelix.plasmidmap.linespectrum.pyramidtiers.rubric.gradebook.spectrumtable.fmeatable.billofmaterials.chromatogram.stressstraincurve.gatingplot.expressionheatmap.gellane.parallelcoordinates.primefactortree.numbersequence.constantcard.baseconversion.doseladder.flow.analogymap.logstream.gitgraph.queryplan.flamegraph.regexscope.terminal.httpexchange.latencydist.ecdf.codemap.checks.diff.componentapi.sportspitch.developmentmilestone.dentaltreatmentplan.estateplanchecklist.subtextdecode.rehearsal.caregivercoord.allocatepeople.lifeline.familytree.relationshipmap.vendortracker.wiringdiagram.pipingschematic.controlblockdiagram.floorplan.howtosteps.spacefit.thesis.alignmentgauge.standingalerts.sourceslineage.preflightchecklist.inventoryreorder.visachecklist.hrdiagram.ternaryplot.parliamentseats.prooftree.fishbone.classdiagram.energybarchart.karyotype.numberbond.posbreakdown.frayermodel.forestplot.cashflowtimeline.businesscanvas.guitartab.pianoroll.stitchchart.wordsearch.playingcards.statblock`.split(`.`);e();var f=[()=>t(()=>import(`./shard000-Bx6Nmt0m.js`),[]),()=>t(()=>import(`./shard001-CL6O9SLr.js`),[]),()=>t(()=>import(`./shard002-vLQ0Ss-O.js`),[]),()=>t(()=>import(`./shard003-kKZdpzuh.js`),[]),()=>t(()=>import(`./shard004-CdVohAu1.js`),[]),()=>t(()=>import(`./shard005-CMzF_uJB.js`),[]),()=>t(()=>import(`./shard006-DQoDWuoN.js`),[]),()=>t(()=>import(`./shard007-Ck0N0IUk.js`),[]),()=>t(()=>import(`./shard008-Dt395x0Q.js`),[]),()=>t(()=>import(`./shard009-D_z8Lhqh.js`),[]),()=>t(()=>import(`./shard010-CQfR6lnk.js`),[]),()=>t(()=>import(`./shard011-l-w2t2Ie.js`),[]),()=>t(()=>import(`./shard012-BTw_UO1C.js`),[]),()=>t(()=>import(`./shard013-D8ZjKKYb.js`),[]),()=>t(()=>import(`./shard014-Cth_76It.js`),[]),()=>t(()=>import(`./shard015-DdYJVsHx.js`),[]),()=>t(()=>import(`./shard016-BdlBf9uZ.js`),[]),()=>t(()=>import(`./shard017-C3HTxh6t.js`),[]),()=>t(()=>import(`./shard018-Mf4wvqVk.js`),[]),()=>t(()=>import(`./shard019-Dpcy1Arx.js`),[]),()=>t(()=>import(`./shard020-BNvKfQld.js`),[]),()=>t(()=>import(`./shard021-D0kpI_PQ.js`),[]),()=>t(()=>import(`./shard022-Cjms7kAe.js`),[]),()=>t(()=>import(`./shard023-Bdwci7fy.js`),[]),()=>t(()=>import(`./shard024-BBoyPtpP.js`),[]),()=>t(()=>import(`./shard025-lMGpgN_0.js`),[]),()=>t(()=>import(`./shard026-Bp3UVI4_.js`),[]),()=>t(()=>import(`./shard027-C4HTpdeT.js`),[]),()=>t(()=>import(`./shard028-BsFTH3Sf.js`),[]),()=>t(()=>import(`./shard029-B3dEcXPy.js`),[]),()=>t(()=>import(`./shard030-DWwA-fNs.js`),[]),()=>t(()=>import(`./shard031-RhqA_0nH.js`),[]),()=>t(()=>import(`./shard032-BlZdG1Yi.js`),[]),()=>t(()=>import(`./shard033-Dmx2lOjI.js`),[]),()=>t(()=>import(`./shard034-BLOFKJT4.js`),[]),()=>t(()=>import(`./shard035-DMXdH733.js`),[]),()=>t(()=>import(`./shard036-DzOiEn23.js`),[]),()=>t(()=>import(`./shard037-BcHfVaYM.js`),[]),()=>t(()=>import(`./shard038-KozOx-Jh.js`),[]),()=>t(()=>import(`./shard039-apdILQwC.js`),[]),()=>t(()=>import(`./shard040-BrNXGaBi.js`),[]),()=>t(()=>import(`./shard041-D6eq9h1u.js`),[]),()=>t(()=>import(`./shard042-M-L34DbY.js`),[]),()=>t(()=>import(`./shard043-Ct6_C2pN.js`),[]),()=>t(()=>import(`./shard044-Bo0iaVHx.js`),[]),()=>t(()=>import(`./shard045-9ccZ4Y_N.js`),[]),()=>t(()=>import(`./shard046-eXoP478L.js`),[]),()=>t(()=>import(`./shard047-N56r6Lsz.js`),[]),()=>t(()=>import(`./shard048-BeKX7cI8.js`),[]),()=>t(()=>import(`./shard049-hPaNN2sL.js`),[]),()=>t(()=>import(`./shard050-B-YpP0B6.js`),[]),()=>t(()=>import(`./shard051-Bww5_KB2.js`),[]),()=>t(()=>import(`./shard052-DErwF8Df.js`),[]),()=>t(()=>import(`./shard053-C-qGH4jz.js`),[]),()=>t(()=>import(`./shard054-kcSxZrSj.js`),[]),()=>t(()=>import(`./shard055-CsETBTqa.js`),[]),()=>t(()=>import(`./shard056-CdBR4qTC.js`),[]),()=>t(()=>import(`./shard057-yRUG8B9e.js`),[]),()=>t(()=>import(`./shard058-DeDAnECG.js`),[]),()=>t(()=>import(`./shard059-Dh6jbDnW.js`),[]),()=>t(()=>import(`./shard060-B5kpWrhW.js`),[]),()=>t(()=>import(`./shard061-BTnj5LZA.js`),[]),()=>t(()=>import(`./shard062-DC7LTaNc.js`),[]),()=>t(()=>import(`./shard063-C8SIGCfd.js`),[]),()=>t(()=>import(`./shard064-DLyASocW.js`),[]),()=>t(()=>import(`./shard065-Cy_yV4ry.js`),[]),()=>t(()=>import(`./shard066-BmjVQqFX.js`),[]),()=>t(()=>import(`./shard067-uZUJsqtF.js`),[]),()=>t(()=>import(`./shard068-CXVjyJU4.js`),[]),()=>t(()=>import(`./shard069-CyfmjAm-.js`),[]),()=>t(()=>import(`./shard070-CxN3xiuY.js`),[]),()=>t(()=>import(`./shard071-CP1WrYC-.js`),[]),()=>t(()=>import(`./shard072-D6L5Yr05.js`),[]),()=>t(()=>import(`./shard073-DFEzkwg2.js`),[]),()=>t(()=>import(`./shard074-BSv3rvRL.js`),[]),()=>t(()=>import(`./shard075-Bt0OjGVd.js`),[]),()=>t(()=>import(`./shard076-DZHs0uzd.js`),[])],p=new Map(d.map((e,t)=>[e,Math.floor(t/8)])),m=new Set,h=new Map,g=new Map;f.length;function _(e){return p.get(e)??-1}function v(e){if(m.has(e))return Promise.resolve();let t=h.get(e);if(t)return t;let n=f[e];if(!n)return Promise.resolve();let r=n().then(({E:t})=>{for(let[e,n]of Object.entries(t))g.set(e,n);m.add(e)}).catch(()=>{}).finally(()=>h.delete(e));return h.set(e,r),r}async function ee(e){let t=new Set;for(let n of e){let e=_(n);e>=0&&!m.has(e)&&t.add(e)}t.size&&await Promise.all([...t].map(v))}function y(e){let t=g.get(e);return t&&typeof t==`object`&&!Array.isArray(t)?t:null}var b={maxStr:48,maxArray:2},x={maxStr:90,maxArray:5};function S(e,t){if(typeof e==`string`)return e.length>t.maxStr?`${e.slice(0,t.maxStr-1)}…`:e;if(Array.isArray(e))return e.slice(0,t.maxArray).map(e=>S(e,t));if(e&&typeof e==`object`){let n={};for(let[r,i]of Object.entries(e))n[r]=S(i,t);return n}return e}var C=new Map;function w(e,t=!1){let n=`${t?`d`:`c`}:${e}`,r=C.get(n);if(r!==void 0)return r;let i=y(e),a=_(e);if(i===null&&a>=0&&!m.has(a))return null;let o=null;if(i!==null)try{o=JSON.stringify(S(i,t?x:b))}catch{o=null}return C.set(n,o),o}var T=[`insight`,`chart`,`breakdown`,`list`,`timeline`,`compare`,`kpi`,`ring`],E=new Set([...T,`bars`,`stack`,`donut`,`gauge`]),D=new Set([`diagramflow`,`composite`,`svgblock`]),O=new Set([...T,`bars`,`stack`,`donut`,`gauge`,`diagramflow`,`composite`]),k=new Set([`map`,`markermap`,`choropleth`]),te=new Set(a.filter(e=>(e.coercer===`generic`||O.has(e.type))&&!k.has(e.type)).map(e=>e.type)),A={small:new Set([`base`,`frontier`]),mid:new Set([`base`,`frontier`,`cutting`]),frontier:new Set([`base`,`frontier`,`cutting`])};function j(e,t){return A[t].has(e.tier)}function ne(e){return a.filter(t=>j(t,e))}var re={stat:`kpi`,trend:`chart`,bar:`bars`,composition:`breakdown`,distribution:`bars`,scatter:`chart`,matrix:`breakdown`,table:`datatable`,compare:`compare`,list:`list`,steps:`list`,timeline:`timeline`,graph:`diagramflow`,tree:`breakdown`,flow:`diagramflow`,map:`geomap`,prose:`insight`,code:`codeblock`};function M(e){let t=i(e);if(t)return{min:t.colMin??Math.max(3,Math.round(t.colDefault*.7)),pref:t.colDefault}}var N=[{d:`math`,re:/\b(eigen\w*|matrix|matrices|vector|scalar|linear algebra|calculus|derivative|integral|theorem|polynomial|trigonometr\w*|algebra|geometry|equation|probabilit\w*|statistic\w*|logarithm|factorial)\b/i},{d:`science`,re:/\b(physic\w*|chemistr\w*|chemical|molecul\w*|atoms?|reaction|biolog\w*|dna|genes?|enzyme|quantum|thermodynamic\w*|electron|photosynthesis|periodic table|velocity|acceleration|momentum|voltage|circuit)\b/i},{d:`health`,re:/\b(symptom\w*|disease|diagnos\w*|medicine|medication|doctor|clinical|injur\w*|surgery|treatment|dosage|prescription|anatomy|therap\w*|illness|fever|rash|nausea|migraine)\b/i},{d:`fitness`,re:/\b(workout|exercise|gym|reps?|sets?|lift(ing|s)?|cardio|run(ning)?|marathon|muscles?|strength|hypertrophy|stretch\w*|weight loss)\b/i},{d:`money`,re:/\b(budget\w*|salary|income|invest\w*|savings?|debt|loans?|mortgage|tax(es)?|expenses?|spending|paycheck|retirement|portfolio|afford|finances?)\b/i},{d:`business`,re:/\b(revenue|profit|margins?|\bkpi\b|churn|pipeline|startup|funnel|\broi\b|b2b|saas|stakeholders?|quarterly|forecast|go-to-market)\b/i},{d:`sports`,re:/\b(soccer|football|basketball|baseball|tennis|hockey|golf|\bnba\b|\bnfl\b|\bmlb\b|playoffs?|tournament|standings|quarterback|inning|free throw|offside)\b/i},{d:`cooking`,re:/\b(recipe\w*|cook\w*|bak(e|ing)|ingredient\w*|meals?|dinner|lunch|breakfast|dish(es)?|cuisine|saute|simmer|roast|grill|kitchen)\b/i},{d:`travel`,re:/\b(trips?|travel\w*|flights?|itinerar\w*|hotels?|vacation|destinations?|tourist|visa|sightsee\w*|layover|airport)\b/i},{d:`tech`,re:/\b(wi-?fi|router|laptop|smartphone|software|devices?|install\w*|settings|browser|bluetooth|operating system|hard drive)\b/i},{d:`code`,re:/\b(code|functions?|api|algorithm\w*|debug\w*|compile\w*|syntax|typescript|javascript|python|repository|regex|database|query)\b/i},{d:`music`,re:/\b(chord\w*|melody|guitar|piano|instruments?|key signature|tempo|octave|musical scale|fret\w*|sheet music)\b/i},{d:`art`,re:/\b(painting|drawing|sketch\w*|sculpture|artists?|palette|illustration|portrait)\b/i},{d:`home`,re:/\b(apartment|rent(al|ing)?|lease|renovat\w*|furniture|plumb\w*|repair|toilet|sink|drain|garden\w*|appliances?|tenant|landlord)\b/i},{d:`legal`,re:/\b(legal|laws?|contracts?|clause|lawsuit|attorney|lawyer|liabilit\w*|statute|compliance|terms of service)\b/i},{d:`education`,re:/\b(stud(y|ying)|exams?|quiz\w*|homework|college|lecture|curriculum|flashcards?|syllabus|coursework)\b/i},{d:`nature`,re:/\b(animals?|plants?|trees?|weather|climate|ocean|mountains?|rivers?|ecosystem|species|dinosaur\w*|planets?|wildlife|geolog\w*)\b/i},{d:`history`,re:/\b(histor\w*|ancient|centur\w*|\bwar\b|empires?|civilization|dynast\w*|revolution|medieval)\b/i},{d:`language`,re:/\b(translat\w*|pronounc\w*|pronunciation|grammar|vocabular\w*|conjugat\w*|spanish|french|japanese|mandarin|verb tense)\b/i},{d:`data`,re:/\b(datasets?|data ?(science|scientist|analy\w*|pipeline|engineering|warehouse|lake|model(ing|ling)?)|\betl\b|\bsql\b|bigquery|tableau|power ?bi|spreadsheets?|\bcsv\b|pivot tables?|dataframe\w*|pandas)\b/i},{d:`design`,re:/\b(design system|\bux\b|\bui\b|user (experience|interface)|wireframe\w*|figma|prototyp\w*|mockups?|usability|visual hierarchy|component library|brand(ing| guidelines?)|typograph\w*|type ?scale)\b/i},{d:`photo`,re:/\b(photograph\w*|photos?|camera|aperture|shutter speed|\biso\b|exposure|\blens(es)?\b|\bf-?stops?\b|depth of field|lightroom|bokeh)\b/i},{d:`media`,re:/\b(videos?|films?|movies?|footage|podcasts?|youtube|streaming|cinematograph\w*|shot ?lists?|storyboard\w*|b-?roll|screenplay\w*)\b/i},{d:`productivity`,re:/\b(productivit\w*|to-?do\w*|task ?lists?|workflows?|habits?|routines?|time ?management|\bgtd\b|pomodoro|prioriti[sz]\w*|backlog|getting things done)\b/i},{d:`relationship`,re:/\b(relationships?|partner\w*|spouse|husband|wife|boyfriend|girlfriend|marriage|married|dating|breakups?|broke up|divorce\w*|friendships?|in-?laws?|coworkers?|my (boss|friend|mom|dad|family))\b/i},{d:`news`,re:/\b(news|headlines?|current events|breaking|press release|journalis\w*|newspapers?|world events|latest (on|news)|what'?s happening)\b/i},{d:`parenting`,re:/\b(parent\w*|toddler\w*|infants?|newborns?|\bbaby\b|babies|nursery|diaper\w*|tantrum\w*|potty training|bedtime|my (kid|child|son|daughter|baby)|developmental milestones?)\b/i},{d:`writing`,re:/\b(write|writing|rewrite|essays?|paragraphs?|\bdrafts?\b|cover letters?|poems?|poetry|short stor(y|ies)|novels?|screenplay\w*|proofread|prose|narrative|copywrit\w*)\b/i},{d:`decision`,re:/\b(decide|decisions?|choose|choosing|which (one|option|should)|pros and cons|trade-?offs?|should i (buy|get|choose|pick|go)|\bvs\.?\b|versus|compare (these|the|my|two|options))\b/i},{d:`shopping`,re:/\b(buy|buying|purchas\w*|shopping|gifts?|deals?|discount\w*|coupons?|product reviews?|wishlists?|add to cart)\b/i},{d:`reference`,re:/\b(define|definition of|meaning of|look ?up|dictionary|thesaurus|encyclopedia|glossary|translat\w*|spell(ing)? of|synonyms?|antonyms?)\b/i},{d:`lifestyle`,re:/\b(collectibles?|my collection|stamp collection|coin collection|card collection|vinyl collection|collecting (?:stamps|coins|cards|vinyl|memorabilia)|hobby collection|memorabilia)\b/i}];function P(e,t){let n=(t??[]).slice(-2).map(e=>typeof e?.content==`string`?e.content:``).join(` `);return(e+` `+n).toLowerCase()}function ie(e,t){let n=P(e||``,t),r=new Set;for(let{d:e,re:t}of N)t.test(n)&&r.add(e);return r}function ae(e,t){if(!e||e.length===0||t.size===0)return!0;for(let n of e)if(t.has(n))return!0;return!1}var F={circuitdiagram:[`science`,`tech`],molecularstructure:[`science`,`health`],periodictable:[`science`],reactionmechanism:[`science`],bodymap:[`health`,`fitness`],labpanel:[`health`],medicationschedule:[`health`],musicstaff:[`music`],chorddiagram:[`music`],sportspitch:[`sports`]};function oe(e){return e.domains??F[e.type]}var I=/\b(kill (myself|him|her|them)|killing myself|end (my|his|her|their) life|ending my life|take my (own )?life|don'?t want to (be here|live|wake up|exist)|want(ing)? to die|wanna die|suicid\w*|self.?harm|harm myself|hurt(ing)? myself|cut(ting)? myself|no reason to (live|go on)|better off dead|overdos\w*)\b/i;function se(e,t){return I.test(P(e||``,t))}var L=[{test:/\b(state machine|finite[- ]state|\bfsm\b|state diagram|state transitions?|states? and transitions?)\b/,type:`statemachine`,over:`diagram`},{test:/\b(sequence diagram|interaction diagram|message sequence|request[- ]response (?:flow|cycle)|handshake (?:between|sequence)|who calls whom)\b/,type:`sequencediagram`,over:`diagram`},{test:/\b(er[- ]?diagram|entity[- ]relationship|database schema|data model\b|tables? and (?:their )?(?:keys|relationships?))\b/,type:`erdiagram`,over:`diagram`},{test:/\b(risk matrix|probability[- ](?:and[- ]|x[- ]|by[- ])?impact|likelihood[- ](?:and[- ]|x[- ]|vs[- ])?impact|impact[- ](?:and[- ])?likelihood|risk (?:heat ?map|grid))\b/,type:`riskmatrix`,over:`matrixgrid`},{test:/\b(confusion matrix|true positives?|false positives?|precision and recall grid)\b/,type:`confusionmatrix`,over:`matrix`},{test:/\b(magic quadrant|2\s?[x×]\s?2(?: matrix| grid)?|four[- ]quadrant|positioning (?:map|matrix)|priority matrix|eisenhower (?:matrix|box))\b/,type:`quadrant`,over:`compare`},{test:/\b(?:plot|graph|sketch) (?:the )?(?:function|equation|curve|y\s*=|f\(x\))|\bgraph of (?:y|f|the function)\b|\b(?:sine|cosine|tangent) (?:curve|wave|graph)\b|\bparabola\b/,type:`plot`,over:`scatter`},{test:/\bperiodic table\b/,type:`periodictable`,over:`datatable`},{test:/\b(?:timeline|chronology|history) of\b.{0,48}\b(?:\d{3,4}s?|\d{1,2}(?:th|st|nd|rd) century|\bbce?\b|\bad\b|war|empire|dynasty|revolution|civili[sz]ation)\b/,type:`chronologicaltimeline`,over:`timeline`},{test:/\bcompare and contrast\b|\bcomparison (?:table|grid|matrix|chart)\b|\b(?:differences?|distinctions?) between\b|\bhow do\b.{0,40}\bdiffer\b|\b[\w-]+ vs\.? [\w-]+ vs\.? [\w-]+\b/,type:`comparematrix`,over:`compare`},{test:/\b(?:bfs|dfs|breadth[- ]first|depth[- ]first)\b.{0,60}\b(?:graph|node|vertex|vertices)\b|\btrace\b.{0,40}\b(?:bfs|dfs|breadth[- ]first|depth[- ]first)\b|\b(?:bfs|dfs) (?:step|traversal|from)\b/,type:`graphtrace`,over:`datastructure`},{test:/\b(?:dp|dynamic[- ]programming|memoiz[ae]tion|memoization)\s+table\b|\b(?:fill|filling)[- ](?:in )?(?:the )?(?:dp|dynamic[- ]programming)\b|\b(?:lcs|edit[- ]distance|knapsack|coin[- ]change)\b.{0,60}\btable\b/,type:`dptable`,over:`algorithmtrace`},{test:/\bhash\s+(?:table|map)\b.{0,60}\b(?:collision|chaining|bucket|separate[- ]chaining|linear[- ]probing)\b|\bseparate[- ]chaining\b|\bhash function\b.{0,50}\bbucket\b/,type:`hashtable`,over:`datastructure`},{test:/\b(?:prefix[- ]tree|trie\b|autocompletion? (?:using|with|via) (?:a )?trie|insert.{0,30}\btrie\b|search.{0,30}\btrie\b)/,type:`trie`,over:`datastructure`},{test:/\b(?:inorder|preorder|postorder|level[- ]order)\s+traversal\b|\btrace\b.{0,40}\b(?:binary[- ]tree|bst)\b|\bwalk[- ]?(?:me[- ])?through\b.{0,50}\b(?:binary[- ]tree|bst)\b|\bbst\s+(?:insert|search|delete)\b/,type:`binarytree`,over:`datastructure`},{test:/\b(?:bubble|merge|quick|insertion|selection|heap)\s+sort\b|\bsort(?:ing)?\s+algorithm\b.{0,50}\b(?:step|animate|visual|trace)\b|\bvisuali[sz]e\b.{0,40}\bsort\b|\banimated?\b.{0,30}\bsort\b/,type:`sortingviz`,over:`algorithmtrace`},{test:/\b(?:toulmin\b|grounds?\s+and\s+warrant|warrant\s+and\s+(?:grounds?|backing)|claim[\s,]+grounds?[\s,]+warrant)\b/i,type:`toulmin`,over:`argumentmap`},{test:/\b(?:character\s+(?:map|web|network|relationships?)|relationship\s+(?:map|web|diagram)\b.{0,50}\bcharacter|who(?:'s| is)\s+(?:who|friends?|rivals?)|cast\s+of\s+characters?|factions?\s+and\s+alliances?|allies?\s+and\s+rivals?)\b/i,type:`castmap`,over:`network`},{test:/\b(?:freytag|three[- ]act\s+structure|hero(?:'s)?\s+journey|save\s+the\s+cat|plot\s+structure\b|story\s+arc\b|narrative\s+arc\b|story\s+structure\b)\b/i,type:`storyarc`,over:`beatsheet`},{test:/\b(?:rhetorical\s+devices?|literary\s+devices?|figures?\s+of\s+speech|identify\s+the\s+(?:devices?|techniques?|metaphors?)|highlight\s+the\s+(?:metaphors?|similes?|alliteration)|mark\s+the\s+(?:devices?|techniques?))\b/i,type:`devicemark`,over:`annotateddoc`},{test:/\b(?:etymology\b|word\s+origin\b|roots?\s+of\s+the\s+word|where\s+does\s+(?:the\s+word\s+)?[a-z]+\s+come\s+from|latin\s+(?:and\s+greek\s+)?roots?\s+of|word\s+history)\b/i,type:`etymtree`,over:`dictionary`}];function R(e){let t=e.toLowerCase(),n=[],r=new Set;for(let e of L)e.test.test(t)&&!r.has(e.type)&&(r.add(e.type),n.push({type:e.type,over:e.over}));return n}function z(e){return e.length?`BEST-FIT COMPONENT — the content maps to a purpose-built block: prefer ${e.map(e=>`${e.type} (not ${e.over})`).join(`, `)}. The specialist renders this exact structure correctly where the generic only approximates it.`:``}var B={small:8,mid:24,frontier:30},ce=3,V=2,H=2,U=1.6,W=1.2,G=1,le=.6,K=2,ue=.8,q={base:1,frontier:1.3,cutting:1.6},J=1.2,Y=.3,X=2.5,Z=.3,de=new Set,fe=.2,pe=[`teachdiagram`,`workedexample`,`quiz`,`flashcard`],me=1.4,he=new Set([`nav`,`forms`,`pickers`,`overlays`]),ge=new Set([`kbd`,`spinner`,`skeleton`,`sliderinput`,`rangefilter`,`ratinginput`,`emptystate`,`segmented`,`toaststack`,`divider`,`spacer`]);function _e(e){return he.has(e.family)||ge.has(e.type)}function ve(e,t){let n=0;for(let r of e.dataShapes)n+=t[r]??0;return n}function ye(e){return e.shapeFit+G*e.intentPts+K*e.semFit}function be(e,t,n,r=de,i=de,a=!1){let o=ve(e,t),s=1+U*o,c=Math.max(0,e.wowWeight)**+W,l=(q[e.tier]??1)*(e.interactive?J:1),u=n.has(e.type)&&o===0?Y:1,d=r.has(e.type)?X:i.has(e.type)?Z:1,f=a&&e.family===`learn`?me:1;return s*c*l*u*d*f}function xe(e){let t=e>>>0;return()=>{t|=0,t=t+1831565813|0;let e=Math.imul(t^t>>>15,1|t);return e=e+Math.imul(e^e>>>7,61|e)^e,((e^e>>>14)>>>0)/4294967296}}function Se(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return t>>>0}var Ce=class{pool;tree;size;highBit;total=0;live;constructor(e){this.pool=e,this.size=e.length,this.live=e.length,this.tree=new Float64Array(this.size+1);for(let t=0;t<this.size;t++)this.add(t,e[t].weight),this.total+=e[t].weight;this.highBit=this.size>0?1<<31-Math.clz32(this.size):0}add(e,t){for(let n=e+1;n<=this.size;n+=n&-n)this.tree[n]+=t}locate(e){let t=0,n=0;for(let r=this.highBit;r>0;r>>=1){let i=t+r;i<=this.size&&n+this.tree[i]<e&&(t=i,n+=this.tree[i])}return Math.min(t,this.size-1)}take(e){let t=this.locate(e),n=this.pool[t];return this.add(t,-n.weight),this.total-=n.weight,this.live--,n}};function we(e,t,n,r){let i=new Ce(e),a=[];for(;a.length<t&&i.live>0&&!(i.total<=0);){let e=i.take(n()*i.total).meta,t=r.family.get(e.family)??0;if(t>=V)continue;let o=r.archetype.get(e.archetype)??0;o>=H||(a.push(e),r.family.set(e.family,t+1),r.archetype.set(e.archetype,o+1))}return a}function Q(e){return Math.max(.5,.15*e)}function Te(e){return[...e].sort((e,t)=>t.fit-e.fit||(e.meta.type<t.meta.type?-1:1))}var Ee=2;function De(e,t,n,r){let i=Te(e),a=[],o=0;for(;o<i.length&&a.length<t;){let e=i[o].fit,s=e-Q(e),c=o;for(;c<i.length&&i[c].fit>=s;)c++;a.push(...we(i.slice(o,c),t-a.length,n,r)),o=c}return a}var Oe=5;function ke(e){let t=e.itemShapes??[],n=e.stringItems??[];if(!t.length&&!n.length)return``;let r=e=>{let t=e.children,n=[e.text,t?r(t):void 0].filter(Boolean).join(`, `);return`${e.prop}[]: {${n}}`};return` · ${[...t.map(r),...n.map(e=>`${e}[]: plain strings`)].join(`, `)}`}function Ae(e){let t=e.propHints;if(!t)return``;let n=Object.entries(t);return n.length?` · hints: ${n.map(([e,t])=>`${e}=${t}`).join(`, `)}`:``}function $(e,t=!1,n=!1){let r=e.requires.length?e.requires.join(`, `):`—`,i=t?w(e.type,n):null;if(i)return`- ${e.type} — ${e.blurb} · needs: ${r}${o(e)} · example: ${i}`;let a=e.optional.slice(0,Oe),s=a.length?` · richer with: ${a.join(`, `)}`:``;return`- ${e.type} — ${e.blurb} · needs: ${r}${ke(e)}${o(e)}${Ae(e)}${s}`}function je(){return T.map(r).filter(e=>!!e).map(e=>$(e)).join(`
|
|
2
|
-
`)}var Me=3;function Ne(e,t){let n=[...e.map(e=>r(e.type)).filter(e=>!!e)].sort((e,n)=>{let r=+((t.get(e.type)??0)>0),i=+((t.get(n.type)??0)>0);return r===i?n.wowWeight-e.wowWeight:i-r}).map((e,t)=>$(e,t<Me,!0)),i=[];return n.length&&i.push(`HERO COMPONENTS for THIS answer — your most impressive options, best first. Build the`,`canvas AROUND two or three of these (a demo-grade reply leads with the cool visuals), and`,`fill in the rest with the common blocks below. Pick only components that genuinely FIT this`,`answer's content — a striking visual used for data it wasn't meant for reads as a mistake;`,`when in doubt prefer the clearer block. Use the exact prop NAMES and printed limits shown.`,`The example shows SHAPE and DENSITY, not the answer. Prioritize the highest-value real items`,`that fit; summarize any remainder and offer it as a follow-up instead of cramming, shrinking,`,`or overflowing the card. Use the ANSWER'S OWN real values — never copy example values:`,...n,``),i.push(`ALWAYS AVAILABLE — the reliable staples. Use these freely alongside the hero components`,`(every good canvas mixes both); fall back to a plain insight/list/breakdown only when`,`nothing richer fits:`,je()),i.join(`
|
|
3
|
-
`)}function Pe(e){try{let t=l(e.userText,e.history),n=e.attachments??[],r=[];(n.some(e=>e.kind===`sheet`)||n.some(e=>e.kind===`image`)&&/\b(receipt|itemi[sz]e|line items?|breakdown|invoice|bill|expenses?|subtotal|totals?|tax)\b/i.test(e.userText))&&r.push(`datatable`),r.length&&(t.tabular=(t.tabular??0)+1.2);let i=new Set(e.recent??[]),a=new Set(e.lessons?.prefer??[]),o=new Set(e.lessons?.avoid??[]),d=e.exclude,f=ie(e.userText,e.history),p=new Set(u(e.userText)),m=R(e.userText);for(let e of m)p.add(e.type);for(let e of r)p.add(e);let h=!!e.teaching&&e.tier!==`small`;if(h)for(let e of pe)p.add(e);let g=se(e.userText,e.history),_=g?new Set([`companionnote`,`reframecard`,`breathpacer`,`copingmenu`]):null,v=new Set(s(c(e.userText,e.history))),ee=e=>{let t=0;for(let n of e.intents??[])v.has(n)&&(t+=1);return t},y=e.semanticFit,b=e=>y?.get(e.type)??0,x=ne(e.tier).filter(e=>te.has(e.type)&&!T.includes(e.type)&&!_e(e)&&!(d&&d.has(e.type))&&(p.has(e.type)||ae(oe(e),f))&&!(_&&_.has(e.type))&&!(e.type===`lifeline`&&!g)).map(e=>{let n=ee(e),r=b(e);return{meta:e,ip:n,sem:r,fit:ye({shapeFit:ve(e,t),intentPts:n,semFit:r})}}),S=x.some(e=>e.fit>0),C=x.map(({meta:e,ip:n,sem:r,fit:s})=>({meta:e,fit:s,weight:be(e,t,i,a,o,h)*(1+le*n+ue*r)*(S&&s===0?fe:1)})),w=e.complexity===`lean`||e.complexity===`brief`,E=e.speedTier===`slow`?Math.max(6,Math.round(B[e.tier]*.45)):B[e.tier],D=w?ce:E,O=xe((Se(e.userText)^Math.imul((e.rotation??0)+1,2654435761))>>>0),k=new Map(C.map(e=>[e.meta.type,e.meta])),A=[...u(e.userText),...r].map(e=>k.get(e)).filter(e=>!!e),j=m.map(e=>k.get(e.type)).filter(e=>!!e),M=g?k.get(`lifeline`):void 0,N=h?pe.map(e=>k.get(e)).filter(e=>!!e):[],P=new Set([...A,...j,...N].map(e=>e.type));M&&P.add(`lifeline`);let F=C.filter(e=>e.fit>0&&!P.has(e.meta.type)).sort((e,t)=>t.fit-e.fit).slice(0,w?1:2).map(e=>e.meta);for(let e of F)P.add(e.type);let I=Te(C.filter(e=>e.fit>0)),L=I.length?I[0].fit-Q(I[0].fit):0,z=[];for(let e of I){if(e.fit<L||z.length>=Ee)break;let t=re[e.meta.archetype];if(!t||T.includes(t)||P.has(t))continue;let n=k.get(t);n&&(P.add(t),z.push(n))}let V=[...M?[M]:[],...A,...j,...N,...F,...z],H=new Set,U=V.filter(e=>!H.has(e.type)&&(H.add(e.type),!0)),W=C.filter(e=>!P.has(e.meta.type)),G={family:new Map,archetype:new Map},K=Math.max(0,D-U.length),q=De(W.filter(e=>e.fit>0),K,O,G),J=we(W.filter(e=>e.fit===0),K-q.length,O,G),Y=[...U,...q,...J],X=Array.from(new Set([...T,...Y.map(e=>e.type)])),Z=C.reduce((e,t)=>Math.max(e,t.fit),0);return{types:X,chosen:Y,fitOf:new Map(C.map(e=>[e.meta.type,e.fit])),allowed:new Set(X),bestFit:Z}}catch{return{types:[...E],chosen:[],fitOf:new Map,allowed:new Set(E),bestFit:0}}}function Fe(e){return e.chosen.length||T.length?Ne(e.chosen,e.fitOf):``}async function Ie(e){let t=Pe(e);return await Promise.all([n([...t.types,...T]),ee(t.types)]),{types:t.types,promptSnippet:Fe(t),allowed:t.allowed,bestFit:t.bestFit}}export{M as a,D as i,R as n,z as r,Ie as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=[{key:`decision`,test:/\b(should i|should we|worth it|is it worth|which (?:one|should|is better)|do i (?:need|have to)|ought i|better to|or should i)\b/},{key:`comparison`,test:/\b(vs\.?|versus|compare\w*|comparison|pros and cons|trade-?offs?|better than|which is better)\b/},{key:`risk`,test:/\b(risk\w*|danger\w*|downside|what could go wrong|threat\w*|is it safe|safe to|consequenc\w*|backfire|red flags?|pitfalls?)\b/},{key:`planning`,test:/\b(roadmap|schedule|timeline|milestone\w*|strateg\w*|prepare for|get ready|launch|plan (?:to|for|a|my|out)|over the next \d+|in \d+ (?:weeks?|months?|days?))\b/},{key:`troubleshoot`,test:/\b(troubleshoot|debug|not working|isn'?t working|won'?t \w+|broken|\berror\b|\bbug\b|fix\b|stopped working|fail(?:s|ing|ed)?|why (?:is|does|won'?t|isn'?t|can'?t))\b/},{key:`learning`,test:/\b(explain|how does|how do .* work|what is|what are|teach me|help me understand|learn\b|tell me about|why does|the difference between|concept of|crash course|walk me through|for (?:my|an?|the|our) (?:\w+ )?(?:interview|exam|test|midterm|final)|study for)\b/},{key:`creative`,test:/\b(brainstorm|ideas? for|come up with|imagine|invent|design a|creative|name (?:my|a|some|ideas)|suggest (?:some )?\w+ (?:names|ideas))\b/},{key:`whatIf`,test:/\b(what (?:if|happens if|would happen)|if i (?:do|don'?t|take|stay|leave|wait)|either way|both (?:paths|options|ways)|play(?:ed)? out|scenario\w*|down the road|in (?:each|both) cases?|stay or (?:go|leave|take)|futures?\b)\b/},{key:`reflection`,test:/\b(my (?:friend|partner|relationship|boyfriend|girlfriend|marriage|spouse|boss|family|mom|dad|kid)|feel(?:ing)?\b|emotionally|am i (?:wrong|right|overreacting|the problem)|should i feel|drain(?:s|ing|ed)?|toxic|healthy (?:relationship|friendship)|cope\b|burn(?:t|ed)?\s?out|overwhelm\w*|anxious|lonely)\b/},{key:`highStakes`,test:/\b(quit (?:my|the|this) (?:job|career)|get married|getting married|divorce|buy a (?:house|home)|mortgage|life savings|career change|drop out|move (?:abroad|across|countr|to another)|surgery|diagnos\w*|lawsuit|\bsue\b|custody|life-?changing)\b/},{key:`serious`,test:/\b(grief|grieving|death|dying|depress\w*|suicid\w*|self-?harm|abuse|trauma|addiction|crisis|terminal|miscarriage)\b/}],t=[{domain:`health`,test:/\b(health\w*|symptom\w*|doctor|medic\w*|diagnos\w*|disease|surgery|mental health|therap\w*|depress\w*|anxiety)\b/},{domain:`legal`,test:/\b(legal|lawyer|attorney|lawsuit|\bsue\b|court|custody|rights\b|contract\b)\b/},{domain:`money`,test:/\b(money|budget|invest\w*|savings|\bdebt\b|loan|mortgage|finance\w*|retire\w*|taxe?s?\b|salary)\b/},{domain:`career`,test:/\b(job\b|career|\bwork\b|boss|promotion|freelanc\w*|resume|interview|fired|laid off|quit)\b/},{domain:`relationship`,test:/\b(relationship|friend\w*|partner|boyfriend|girlfriend|marriage|spouse|dating|breakup|family)\b/},{domain:`travel`,test:/\b(travel|trip|vacation|flight|hotel|itinerary|destination|visit\b)\b/},{domain:`tech`,test:/\b(code|coding|software|\bapp\b|\bapi\b|database|server|deploy|programming|website|algorithm)\b/},{domain:`learning`,test:/\b(study|course|exam|tutorial|homework|\bclass\b|lesson|curriculum)\b/}];function n(e){if(!e)return``;for(let t=e.length-1;t>=0;t--)if(e[t].role===`user`)return e[t].content;return``}function r(r,i){let a=r.toLowerCase(),o=n(i).toLowerCase(),s=o?`${a} ${o}`:a,c={decision:!1,comparison:!1,risk:!1,planning:!1,troubleshoot:!1,learning:!1,creative:!1,whatIf:!1,reflection:!1,highStakes:!1,serious:!1};for(let t of e)t.test.test(s)&&(c[t.key]=!0);(c.highStakes||c.reflection)&&(c.serious=!0);for(let e of t)if(e.test.test(s)){c.domain=e.domain;break}return c}function i(e){let t=new Set;return e.decision&&t.add(`decide`),e.comparison&&(t.add(`compare`),t.add(`decide`)),e.risk&&t.add(`decide`),e.planning&&(t.add(`plan`),t.add(`howto`)),e.troubleshoot&&(t.add(`howto`),t.add(`explain`)),e.learning&&(t.add(`explain`),t.add(`reference`)),e.creative&&t.add(`draft`),e.whatIf&&t.add(`decide`),e.reflection&&(t.add(`reflect`),t.add(`comfort`)),[...t]}var a=[{shape:`composition`,weight:1,test:/\b(budget|allocat\w*|split|breakdown|where\s+(?:\w+\s+)?(?:my\s+|the\s+)?(?:money|time|spend\w*|budget)|(?:money|time|spend\w*)\s+goes?|portion|share|mix|composition|makeup|made up of|percent\w*|proportion|divid\w*)\b/},{shape:`series`,weight:1,test:/\b(trend\w*|over time|growth|history|historical|month\w*|week\w*|dai\w*|quarter\w*|year\w*|forecast|projection|trajectory|since|past \d+)\b/},{shape:`comparison`,weight:1,test:/\b(vs\.?|versus|compare\w*|comparison|better|which (?:one|should|is)|either|or should|pros and cons|trade-?offs?|options?|best|top \d+|worth it|should i (?:buy|get|pick|choose|use)|recommend\w*)\b/},{shape:`ranking`,weight:1,test:/\b(rank\w*|leaderboard|top \d+|best|worst|most|least|highest|lowest|fastest|biggest|smallest|standings)\b/},{shape:`status`,weight:1,test:/\b(progress|on track|readiness|ready|status|health\w*|complete\w*|how (?:far|close)|goal|target|score|rating|grade)\b/},{shape:`sequence`,weight:1,test:/\b(steps?|how (?:do|to)|process|guide|walk\s?through|plan|schedule|roadmap|sequence|order|first.*then|itinerary|timeline)\b/},{shape:`flow`,weight:.8,test:/\b(funnel|pipeline|workflow|conversion|stages?|flow|drop-?off|state\s?machine|feedback\s?loops?|decision\s?tree|control\s?flow)\b/},{shape:`geo`,weight:1,test:/\b(map|where is|near\w*|location|route|directions?|cities|country|countries|region|travel|trip|drive)\b/},{shape:`list`,weight:.8,test:/\b(list|tips?|checklist|things to|ways to|ideas|reasons|items|bullet\w*)\b/},{shape:`distribution`,weight:1,test:/\b(distribution|spread|histogram|range|variance|outliers?|percentile|frequency|how (?:often|spread))\b/},{shape:`relationship`,weight:1,test:/\b(correlat\w*|relationship between|scatter|vs.*axis|impact of|affect\w*|driver\w*)\b/},{shape:`structure`,weight:1,test:/\b(molecul\w*|chemical structure|molecular structure|skeletal (?:formula|structure)|lewis structure|smiles|functional group|benzene)\b/},{shape:`tabular`,weight:.9,test:/\b(table|rows?|columns?|spreadsheet|records|dataset|grid of|matrix)\b/},{shape:`media`,weight:1,test:/\b(image\w*|photos?|gallery|pictures?|visual\w*|video|watch|before and after|screenshot)\b/},{shape:`text`,weight:.8,test:/\b(quote\w*|testimonial\w*|said|opinions?|reviews?|feedback|explain|defin\w*|definition|what is|tell me about|meaning of|translate\w*|vocabulary)\b/},{shape:`code`,weight:1.1,test:/\b(code|coding|programming|software|function|algorithm\w*|recursi\w*|data structures?|linked lists?|binary (?:tree|search)|hash\s?(?:map|table)|big-?o|time complexity|syntax|compil\w*|debug\w*|refactor\w*|regex|sql|snippet|pseudo\s?code|api)\b/},{shape:`scalar`,weight:.7,test:/\b(how (?:many|much)|number of|total|count|metric|stat\w*|kpi|figure)\b/},{shape:`keyvalue`,weight:.7,test:/\b(stats|metrics|numbers|key figures|at a glance|summary of|overview)\b/},{shape:`selection`,weight:.9,test:/\b(choose|pick|select|decide|configure|settings|sign\s?up|form|filter|adjust|set up)\b/},{shape:`hierarchy`,weight:.9,test:/\b(hierarch\w*|tree|nested|org\s?chart|structure of|breakdown of .* into|parent|sub-?categor\w*)\b/}],o=[{test:/\b(pdf|white\s?paper|the paper|the document|the report|the contract|the article|the spec|the manual|the filing|the brief|full text|read (?:it|the\b))\b/,types:[`pdfreader`,`docview`]},{test:/\b(images?|photos?|pictures?|gallery|pics?|snapshots?)\b/,types:[`gallery`]},{test:/\b(maps?|where is|located|directions?|on a map|near (?:the|downtown|campus)|walking distance|walkable|nearby|neighborhood|what'?s around|close to (?:downtown|the))\b/,types:[`geomap`]},{test:/\b(code|snippet|implementation|source code|pseudo\s?code)\b/,types:[`codeblock`]},{test:/\b(dialogue\w*|a scene\b|conversation between|exchange between|speakers?|write a (?:script|scene|transcript))\b/,types:[`dialogue`]},{test:/\b(defin\w*|etymology\b|what does .{1,30} mean|look up\b|vocabulary\b|word for\b)\b/,types:[`dictionary`]},{test:/\b(variant\w*|alternativ\w*|\d+ (?:version\w*|option\w*|draft\w*)|rewrit\w*|different (?:tone\w*|style\w*|version\w*))\b/,types:[`variants`]},{test:/\b(?:make|say|write|phrase|word|put) (?:it|this|that|the \w{2,14}) (?:more |a bit |a little |much |way )?(?:firm|soft|warm|blunt|gentl|harsh|kind|stern|polit|casual|formal|direct|punchi|short|long|terse|friendl)\w*\b|\b(?:firmer|softer|warmer|blunter|gentler|harsher|sterner|punchier|shorter|longer|friendlier) (?:version|tone|wording|take|draft|phrasing)\b|\bexplain (?:it|this|that) (?:for|to) (?:an? )?(?:exec|executive|engineer|beginner|expert|layperson)\b|\b(?:at|in) (?:different|two|three|several) (?:levels?|tones?|registers?|reading levels?)\b|\bfor (?:different|two|three|several) audiences\b/,types:[`variantswitch`]},{test:/\b(translat\w+|in (?:french|spanish|japanese|german|chinese|portuguese|italian|korean|arabic|russian|hindi|dutch|swedish|polish|turkish|vietnamese|thai|hebrew|greek|latin)|from (?:english|spanish|french|japanese|german|chinese) (?:to|into))\b/,types:[`translation`]},{test:/\b(rank (?:the )?top \d+|top \d+ (?:ranked|ranking)|leaderboard\b|ranked list\b|best \d+ .{1,30} rank\w*)\b/,types:[`bracketbar`]},{test:/\b(?:as|in|into) (?:a |an )?(?:data )?table\b|\b(?:make|build|draw|create|show|give|put|render|format)\b(?:[\w\s]{0,12})?\btable\b|\btabular\b|\bspreadsheet\b/,types:[`datatable`]},{test:/\b(?:draw|make|show|give|create|build)\b(?:[\w\s]{0,12})?\b(?:flow\s?chart|flow\s?diagram|diagram)\b|\bdiagram (?:this|it|of|the)\b|\bflow\s?chart\b|\bas an? [\w\s]{0,20}?diagram\b|\bstate\s?machine\b/,types:[`diagramflow`]},{test:/\b(?:as|make|draw|show|give|build|on)\b(?:[\w\s]{0,12})?\btime\s?line\b|\btime\s?line of\b/,types:[`timeline`]},{test:/\bcheck\s?list\b/,types:[`checklist`]},{test:/\bstep[-\s]?by[-\s]?step\b|\b(?:numbered|ordered) steps\b|\bwalk me through (?:the )?steps\b/,types:[`howtosteps`,`checklist`]},{test:/\bcompare\b|\bcomparison\b|\b\w+ (?:vs\.?|versus) \w+\b|\bdifference between\b|\bside[-\s]?by[-\s]?side\b/,types:[`compare`]},{test:/\bdifferences? between (?:an? |the )?\w+ and (?:an? |the )?\w+\b|\bhow (?:is|are|does|do) (?:an? |the )?\w+ (?:and (?:an? |the )?\w+ )?differ\w*\b|\bconfus\w+ (?:with|between|for)\b|\b(?:commonly|easily|often) confused\b|\bmix\w* (?:them|these two|those two|the two) up\b|\b(?:them|these two|those two|the two) (?:mixed|confused)\b|\btell\b[^.?!]{0,30}\bapart\b|\bwhich (?:one )?is which\b|\bare\b[^.?!]{1,40}\bthe same thing\b|\bwhen (?:to|do i|should i) use\b[^.?!]{1,30}\b(?:vs\.?|versus|instead of)\b/,types:[`distinctioncard`]},{test:/\bquiz\b|\btest me on\b|\bpractice questions\b/,types:[`quiz`]},{test:/\b(?:quiz|test|grill|drill) me\b|\btest my knowledge\b|\b(?:mock|practice|sample) (?:exam|test)\b|\b\d+[-\s]question\b|\b\d+ (?:practice|review|exam|multiple[-\s]choice|short[-\s]answer) questions?\b|\b(?:ask|give|write|make|generate) me \d+ questions\b|\bexam prep\b/,types:[`quizsession`]},{test:/\bflash\s?cards?\b/,types:[`flashcard`]},{test:/\b(?:100\s?%\s?)?stacked\s+(?:bar|column)s?(?:\s+(?:chart|graph))?\b|\bstacked\s+(?:chart|graph)\b|\b100\s?%\s?stacked\b/,types:[`stackedbars`]},{test:/\b(?:write|draft|compose|give me|make me) (?:me )?(?:an? |the )?(?:\w+[- ]){0,2}(?:essays?|articles?|blog posts?|op-?eds?)\b|\b(?:essays?|blog posts?) (?:about|on|arguing)\b|\b(?:cover letter|personal statement|statement of purpose|college essay)\b|\bin prose\b|\blong[-\s]?form\b|\b(?:wedding|best man'?s?|maid of honou?r|retirement|graduation|farewell) (?:toast|speech)\b|\b(?:few|couple(?: of)?|several|\d+) paragraphs\b|\bwrite (?:it|this) out in full\b/,types:[`longread`]},{test:/\bbrainstorm\w*\b|\b(?:ideas|suggestions) (?:for|on|about)\b|\b(?:some|any|other|more|fresh|a few) (?:ideas|suggestions|names)\b|\b(?:give|list|need|want) (?:me |us )?\d+ (?:ideas|suggestions|names)\b|\bgive me ideas\b|\bideas on how\b|\bwhat (?:should|could) (?:i|we) (?:call|name) (?:it|this|my|our|the)\b|\bname (?:ideas|suggestions)\b|\bwhat could (?:i|we) do about\b|\bpossible (?:approaches|angles|directions)\b|\bcome up with (?:some |a few |\d+ )?(?:ideas|names|concepts|angles|titles)\b/,types:[`ideaboard`]},{test:/\bdo(?:'|’)?s and don(?:'|’)?ts\b|\bwhat not to (?:say|do|wear|bring|ask|write|post)\b|\bwhat (?:should|do) i (?:say|do)\b[^.?!]{0,4}\b(?:when|if|at|during)\b|\bwhat (?:should|do) i avoid\b|\b(?:screw|mess|blow|botch) (?:this|it|that) up\b|\betiquette\b|\b(?:common|rookie|beginner|classic|typical) mistakes?\b|\bthings to avoid\b/,types:[`dosdonts`]},{test:/\banalog(?:y|ies) for\b|\bmetaphors? for\b|\b(?:an?|another|any|the) (?:\w+ ){0,2}analog(?:y|ies)\b|\bby analogy\b|\beli ?5\b|\blike i(?:'|’)?m (?:five|5)\b|\bfor a (?:five|5)[-\s]?year[-\s]?old\b|\b(?:explain|describe)\b[^.?!]{0,40}\blike\s+an?\b/,types:[`analogymap`]},{test:/\b(recipe\b|how to (?:make|cook|bake) |step\w*-?by\w*-?step .{0,20}(?:recipe|cook)|(?:dinner|lunch|breakfast|dessert|cookie|pasta|chicken|beef|vegan|gluten.free) recipe\b)\b/,types:[`recipecard`]},{test:/\b(workout plan|training plan|exercise plan|gym (?:program|plan|routine)|fitness (?:plan|program|routine)|sets? and reps?|push.?pull.?legs?|strength (?:program|plan)|build muscle (?:plan|program)|weekly (?:workout|training|gym) (?:plan|program|schedule))\b/,types:[`workoutplan`]},{test:/\b(macro(?:nutrient)?s?\b|(?:calorie|nutrition(?:al)?) (?:breakdown|facts?|info|content)|grams? of (?:protein|carbs?|fat)|protein.*carb\w*.*fat|caloric breakdown)\b/,types:[`macrobreakdown`]},{test:/\b(medication (?:schedule|reminder|timing)|dosing schedule|pill (?:schedule|reminder)|when (?:to|should i|do i) take .{0,30}(?:pill\w*|drug|medication|meds?|tablet\w*|dose\w*)|what time .{0,20}(?:take|dose) .{0,20}(?:pill\w*|medication|meds?)|drug dosage (?:schedule|timing))\b/,types:[`medicationschedule`]},{test:/\b(chord diagram|guitar chord\b|(?:how to (?:play|finger)|fingering for) .{0,20}chord|barre chord|power chord|open chord|chord shape\w*)\b/,types:[`chorddiagram`]},{test:/\b((?:baby|child|toddler|infant) (?:milestone\w*|developmental? milestone\w*)|developmental? milestone\w*|\d+[- ]month[- ]old milestone\w*|\d+[- ]year[- ]old milestone\w*|when (?:should|do) (?:babies|kids|toddlers|infants)\b)\b/,types:[`developmentmilestone`]},{test:/\b(argument map\b|arguments? (?:for and against\b|supporting and opposing)|philosophical argument\b|claim(?:s?) (?:and|with) (?:evidence|support\w*|objection\w*)|debate the (?:claim|motion|topic)\b|case for and against\b)\b/,types:[`argumentmap`]},{test:/\b((?:soccer|football|basketball|baseball|tennis) (?:formation\b|lineup\b|position\w*|play diagram|tactic\w*)|4-3-3\b|4-4-2\b|3-5-2\b|4-2-3-1\b|3-4-3\b|defensive (?:shift\b|formation\b)|starting (?:eleven\b|xi\b|lineup\b))\b/,types:[`sportspitch`]},{test:/\b(floor\s?plan\b|room layout\b|apartment layout\b|(?:house|home|office) (?:layout\b|floor plan)|room arrangement\b|furniture layout\b)\b/,types:[`floorplan`]},{test:/\b(medical (?:history|timeline|chronolog\w*)|clinical (?:history|course|timeline)|patient (?:history|chronolog\w*)|diagnosis timeline\b|treatment (?:history|timeline)|symptom (?:progression|history|chronolog\w*))\b/,types:[`clinicaltimeline`]},{test:/\b(research (?:finding\w*|result\w*|summary|paper summary)|what (?:does|did) (?:the research|studies|the study|the science) (?:say|show|find|reveal)\b|scientific (?:consensus|evidence|finding\w*)|meta-?analysis\b|randomized (?:controlled )?trial\b|clinical (?:evidence|finding\w*|trial\w*))\b/,types:[`researchsummary`]},{test:/\b(hourly itinerary|hour.?by.?hour|itinerary (?:for|of)\b|trip itinerary|travel itinerary|daily itinerary|day.?by.?day (?:plan|schedule|itinerary)|morning (?:to|through) (?:evening|night)|full day (?:plan|schedule|itinerary)|schedule (?:for|of) (?:my |a |the )?(?:trip|day|visit))\b/,types:[`agenda`]}];function s(e){let t=e.toLowerCase(),n=[];for(let e of o)e.test.test(t)&&n.push(...e.types);return[...new Set(n)]}var c={datatable:`a data table`,diagramflow:`a flow diagram`,timeline:`a timeline`,codeblock:`a code block`,geomap:`a map`,gallery:`an image gallery`,pdfreader:`the document`,docview:`the document`,checklist:`a checklist`,howtosteps:`a step-by-step`,compare:`a side-by-side comparison`,quiz:`a quiz`,flashcard:`flashcards`,dictionary:`a definition`,recipecard:`a recipe`,dialogue:`a scripted dialogue`,variants:`variations`,translation:`a translation`,bracketbar:`a ranking`,stackedbars:`a stacked bar chart`,distinctioncard:`a distinction between the terms`,longread:`a long-form written piece`,ideaboard:`a board of ideas`,dosdonts:`a do's-and-don'ts list`,variantswitch:`the same content at several settings`,quizsession:`a graded quiz run`,analogymap:`an analogy`};function l(e){return c[e]??`a ${e}`}function u(e){return e.length?`FORMAT REQUEST — the user explicitly asked for their answer in a specific FORM: ${[...new Set(e.map(l))].join(`, `)}. Make that the LEAD block (position 0 or 1), built fully and completely; the rest of the canvas supports it. Never answer in a different shape than the one they named.`:``}function d(e){if(!e)return``;for(let t=e.length-1;t>=0;t--)if(e[t].role===`user`)return e[t].content;return``}function f(e,t){let n=e.toLowerCase(),r=d(t).toLowerCase(),i={};for(let e of a){let t=0;e.test.test(n)&&(t+=e.weight),r&&e.test.test(r)&&(t+=e.weight*.4),t>0&&(i[e.shape]=(i[e.shape]??0)+t)}return i}export{i as a,r as i,f as n,u as r,s as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={embedmap:{blurb:`2D embedding scatter plot with cluster visualization.`,optional:[`icon`,`iconColor`,`footer`]},calibration:{blurb:`Calibration curve with predicted vs actual reliability.`,optional:[`icon`,`iconColor`,`color`,`ece`,`footer`]},httpexchange:{blurb:`HTTP request/response inspector — a sequence of exchanges, each a method badge, URL, status pill colored by class, latency, and optional request/response body preview.`,optional:[`title`,`icon`,`iconColor`,`caption`,`footer`],itemShapes:[{prop:`exchanges`,text:`url`,textAliases:[`path`,`endpoint`,`name`]}],propHints:{"exchanges[].method":`'GET'|'POST'|'PUT'|'PATCH'|'DELETE'`,"exchanges[].status":`numeric HTTP status code, e.g. 200, 404, 503`}},trainingcurve:{blurb:`ML model training-curve panel: loss curves (train + validation) in the top panel and accuracy curves in the bottom, both against epoch index. Marks the best-val-loss epoch. Reveals overfitting when train and val curves diverge. Use for showing neural-network training progress, diagnosing overfitting/underfitting, comparing learning-rate schedules.`,optional:[`title`,`icon`,`iconColor`,`valLoss`,`trainAcc`,`valAcc`,`footer`],propHints:{epochs:`array of epoch indices (or auto 1..N if omitted)`,trainLoss:`training loss per epoch`,valLoss:`validation loss per epoch`,trainAcc:`training accuracy per epoch (0–1)`,valAcc:`validation accuracy per epoch (0–1)`}},treemap:{blurb:`Nested hierarchical data as proportional rectangles; shows part-to-whole at multiple levels.`,optional:[`icon`,`iconColor`,`unit`,`footer`]},sunburst:{blurb:`Radial hierarchy; nested rings show multiple levels from center outward.`,optional:[`icon`,`iconColor`,`unit`,`footer`]},sankey:{blurb:`Flow diagram showing how quantities move between layered stages; reveals bottlenecks and splits.`,optional:[`icon`,`iconColor`,`unit`,`footer`]},network:{blurb:`Graph of interconnected entities with circle or grid layout; shows topology and clusters.`,optional:[`icon`,`iconColor`,`layout`,`footer`]}};export{e as D};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={radar:{blurb:`Multi-axis comparison of one or more series; highlights strengths and gaps across dimensions.`,optional:[`icon`,`iconColor`,`max`,`footer`],stringItems:[`axes`]},waterfall:{blurb:`Cascading bars showing incremental change; bridges starting value to ending total.`,optional:[`icon`,`iconColor`,`unit`,`footer`]},funnel:{blurb:`Progressive narrowing through stages where each stage is a SUBSET of the one above — conversion/retention drop-off (signups → trials → paid). Never for a plain ranked list or unrelated categories — use leaderboard or bars.`,optional:[`icon`,`iconColor`,`unit`,`footer`]},histogram:{blurb:`Frequency distribution; bin-based view with optional reference marker (mean, median, etc).`,optional:[`icon`,`iconColor`,`unit`,`color`,`marker`,`markerLabel`,`footer`]},boxplot:{blurb:`Quartile-based summary (min/Q1/median/Q3/max + outliers) per group; compares spread and skew.`,optional:[`icon`,`iconColor`,`unit`,`domain`,`footer`]},streamgraph:{blurb:`Stacked flow over time; smooth curves reveal how composition evolves and peaks shift.`,optional:[`icon`,`iconColor`,`unit`,`footer`],stringItems:[`ticks`]},correlationheatmap:{blurb:`Numeric correlation matrix (Pearson/Spearman/etc.) between N variables, diverging color by strength and sign — red for negative, presence-blue for positive, neutral near zero. For pairwise relationships across many variables at once, not a single x-vs-y scatter.`,optional:[`icon`,`iconColor`,`footer`],stringItems:[`variables`],propHints:{variables:`ordered variable names, same order on both axes`,matrix:`square N×N array, matrix[i][j] = correlation of variables[i] with variables[j], each in [-1, 1]`}},bcgmatrix:{blurb:`BCG growth-share matrix: a portfolio of products or business units scattered by market growth (y) vs. relative market share (x), split into Star/Question-Mark/Cash-Cow/Dog by the portfolio median. Bubble size carries revenue when given. Use for product-portfolio strategy, investment prioritization across business lines, "which bets to double down on vs. divest".`,optional:[`icon`,`iconColor`,`unit`,`footer`],itemShapes:[{prop:`items`,text:`label`,textAliases:[`name`,`title`,`product`]}],propHints:{"items[].growth":`market growth rate in percent, e.g. 18 for +18% YoY; can be negative`,"items[].share":`relative market share vs. the category leader, e.g. 1.4 = 1.4x the #2 player`,"items[].revenue":`optional — sizes the bubble; omit and every bubble matches`,"items[].note":`optional one-line context shown on hover`}}};export{e as D};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={flowchord:{blurb:`Circular relationship/flow diagram: named entities ring the perimeter, and flows between them draw as arced ribbons sized by value — like a Sankey bent into a circle. Reads two-way movement between the SAME nodes (a gain and a loss) cleanly, which a layered Sankey cannot. Use for trade/migration between regions, budget movement between departments, account movement between tiers, traffic between services.`,optional:[`icon`,`iconColor`,`unit`,`footer`],itemShapes:[{prop:`nodes`,text:`label`,textAliases:[`name`,`title`,`id`]}],propHints:{"nodes[].id":`a short stable key, referenced by flows[].from/to`,"nodes[].label":`the display name shown on the ring`,"flows[].from":`a nodes[].id — the flow's source`,"flows[].to":`a nodes[].id — the flow's destination`,"flows[].value":`numeric flow size; ribbon width scales with it`}},venn:{blurb:`Two or three overlapping circles; unique versus shared, with counts.`,optional:[`icon`,`iconColor`,`overlaps`,`footer`]},quadrant:{blurb:`2×2 matrix — SWOT, Eisenhower, impact-effort; plots items by position in four labeled quadrants.`,optional:[`icon`,`iconColor`,`xLabel`,`yLabel`,`topRight`,`topLeft`,`bottomLeft`,`bottomRight`,`footer`],itemShapes:[{prop:`items`,text:`label`,textAliases:[`name`,`title`,`text`],requiredFields:[`quadrant`]}],propHints:{"items[].quadrant":`'topRight'|'topLeft'|'bottomRight'|'bottomLeft'`}},piedonut:{blurb:`Pie or donut chart split; each slice is a named portion with value and optional label.`,optional:[`icon`,`iconColor`,`unit`,`hole`,`centerValue`,`centerLabel`,`footer`],itemShapes:[{prop:`slices`,text:`label`,textAliases:[`name`,`category`,`segment`]}]},distributioncurve:{blurb:`Smooth bell curve with mean/±σ bands; shades a highlight region under the curve.`,optional:[`icon`,`iconColor`,`kind`,`mean`,`sd`,`points`,`shadeFrom`,`shadeBetween`,`markers`,`unit`,`footer`],propHints:{kind:`'normal'|'custom'`,"markers[].color":`optional accent for marker line`}},latencydist:{blurb:`Latency distribution histogram with p50/p90/p95/p99 markers and an SLO threshold line that turns red when the p99 tail breaches it — the classic latency-vs-SLO view for an API or dashboard.`,optional:[`icon`,`iconColor`,`unit`,`p50`,`p90`,`p95`,`p99`,`slo`,`sloLabel`,`caption`,`footer`],propHints:{unit:`latency unit, usually 'ms' (default) or 's'`,sloLabel:`short label for the SLO line, e.g. 'SLO 200ms'`,iconColor:`var(--presence)|var(--insight)|var(--warning)`}},captable:{blurb:`Startup capitalization table: a stacked ownership bar over a ledger of holders (founders, ESOP, investors) with share counts and fully-diluted %. FD% is computed from shares when not given.`,optional:[`icon`,`iconColor`,`totalShares`,`caption`,`footer`],itemShapes:[{prop:`holders`,text:`name`,textAliases:[`holder`,`label`,`who`,`investor`]}],propHints:{"holders[].class":`share class, e.g. 'Common', 'Preferred Seed', 'Series A', 'Options'`,"holders[].fdPct":`fully-diluted percent (0..100); omit to derive from shares`,totalShares:`fully-diluted total for the % base; defaults to the sum of holder shares`}},lifewheel:{blurb:`Wheel-of-life radial self-assessment: one spoke per life domain rated 0–10, a filled polygon whose roundness shows balance vs imbalance, and the felt score on each spoke. Reads how full and how even a life is at a glance.`,optional:[`title`,`icon`,`iconColor`,`caption`,`footer`],itemShapes:[{prop:`domains`,text:`label`,textAliases:[`name`,`area`,`domain`]}],propHints:{"domains[].score":`felt rating 0..10 (clamped on render)`,"domains[].note":`optional one-line reflection shown on hover`}}};export{e as D};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={violinplot:{blurb:`Mirrored kernel-density estimate (KDE) per group with an embedded box plot — reveals full distribution shape, modes, and spread across multiple groups in one view. Better than a boxplot when the shape matters (bimodal, skewed). Each group is a {label, values, color?} object.`,optional:[`title`,`icon`,`iconColor`,`showBox`,`unit`,`footer`],propHints:{"groups[].values":`raw numeric array — at least 5 values per group`,"groups[].color":`optional CSS variable, e.g. var(--presence)`,"groups[].label":`group name shown on the axis`,showBox:`overlay embedded box plot, default true`}},stemleafplot:{blurb:`Classic stem-and-leaf display — preserves exact data values while showing distribution shape in monospace. Optional back-to-back layout for side-by-side group comparison. Best for small integer datasets (n < 100). leafUnit adjusts which digit is the leaf.`,optional:[`title`,`icon`,`iconColor`,`title2`,`values2`,`leafUnit`,`footer`],propHints:{values:`numeric array (integers work best)`,leafUnit:`each leaf represents this unit; default 1 (ones digit)`,title2:`label for the second dataset in back-to-back mode`,values2:`optional second dataset for back-to-back comparison`}},tamsam:{blurb:`TAM/SAM/SOM concentric ring chart: nested circles sized by market value, labelled with the acronym and dollar amount. Use for market-sizing decks, startup pitch slides, and investor materials where you need to show total addressable market vs. serviceable addressable vs. serviceable obtainable.`,optional:[`title`,`icon`,`iconColor`,`footer`],propHints:{"markets[]":`{label, value, unit?} — outermost ring first (TAM → SAM → SOM)`,"markets[].label":`e.g. "TAM", "SAM", "SOM"`,"markets[].value":`numeric market size`,"markets[].unit":`optional suffix — "B" for billions, "T" for trillions`}},slopegraph:{blurb:`Before-and-after change lines with labels — shows trajectory or shift per category.`,optional:[`icon`,`iconColor`,`unit`,`beforeLabel`,`afterLabel`,`footer`]},dumbbell:{blurb:`Paired dots with connector bars — compare ranges or intervals across categories.`,optional:[`icon`,`iconColor`,`unit`,`startLabel`,`endLabel`,`startColor`,`endColor`,`domain`,`footer`]},lollipop:{blurb:`Stem-and-circle bars — cleaner bar chart alternative for ranked values.`,optional:[`icon`,`iconColor`,`unit`,`footer`],itemShapes:[{prop:`rows`,text:`label`}],propHints:{"rows[].value":`a REAL number this row ranks by — required, never omit or leave non-numeric. If the items have no true magnitude to rank by (e.g. a plain checklist of categories), pick a checklist-shaped block instead of lollipop`,"rows[].sub":`optional short annotation shown on hover next to the value`}},bulletchart:{blurb:`Actual vs a defined TARGET with qualitative bands — a performance gauge with context (revenue vs quota, latency vs SLA). Never for a plain category comparison with no target — use bars.`,optional:[`icon`,`iconColor`,`footer`]},candlestick:{blurb:`OHLC candles over time — requires a real open/high/low/close per period (stock/crypto/commodity prices). Never for a generic time series with a single value per point — use chart.`,optional:[`icon`,`iconColor`,`unit`,`footer`]}};export{e as D};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={gantt:{blurb:`Project schedule: task bars spanning DATE RANGES on a timeline, with completion and dependencies. Never for a single-point event timeline or a status list — use timeline or statustimeline.`,optional:[`icon`,`iconColor`,`footer`],stringItems:[`cols`]},bubble:{blurb:`Scatter plot with size and color — multivariate relationship explorer.`,optional:[`icon`,`iconColor`,`xLabel`,`yLabel`,`xDomain`,`yDomain`,`footer`]},arearange:{blurb:`Line with confidence band — forecast or range trend over time.`,optional:[`icon`,`iconColor`,`unit`,`color`,`footer`]},waffle:{blurb:`10x10 grid of squares — composition breakdown or percentage at a glance.`,optional:[`icon`,`iconColor`,`footer`]},groupedbars:{blurb:`Clustered bars by group — compare multiple series side-by-side.`,optional:[`icon`,`iconColor`,`unit`,`footer`],stringItems:[`groups`]},stackedbars:{blurb:`Stacked bar chart (stacked columns): one bar per category, split bottom-to-top into shared colour-keyed segments — revenue by region per quarter, hours by activity per day, spend by category per month. Each column reads as a whole AND as its parts; a value is printed in every segment tall enough to hold one, with the column total above the bar. mode:"percent" normalises every column to 100% to compare MIX alone. Use marimekko instead when column WIDTH should also carry the total, groupedbars when the series are compared side-by-side rather than summed, and stack for a single one-bar breakdown. Values must be ≥ 0 — for signed +/− contributions use bridge.`,optional:[`icon`,`iconColor`,`unit`,`mode`,`yLabel`,`footer`],itemShapes:[{prop:`series`,text:`name`,textAliases:[`label`,`segment`,`category`]}],stringItems:[`groups`],propHints:{groups:`one category label per BAR, left → right (quarters, days, departments)`,"series[].data":"one value per group, index-aligned with `groups`; ≥ 0 (a negative counts as 0)","series[].name":`segment name, shared across every bar — it keys the colour and legend`,mode:`'absolute' (default, real totals on the y-axis) | 'percent' (each column = 100%)`,yLabel:`rotated value-axis title, e.g. "Revenue ($k)"`},contentBudget:{fields:{"series[].data":{maxItems:20}}}},bridge:{blurb:`Waterfall bridge explaining why a number changed — a start, a sequence of signed +/- contributions, and an end, each step floating from the running total. For "what moved revenue/cost/score". Use bars for a plain comparison with no start→end story.`,optional:[`icon`,`iconColor`,`unit`,`prefix`,`footer`],itemShapes:[{prop:`steps`,text:`label`}]},calheat:{blurb:`GitHub-style activity calendar: daily intensity over weeks (streaks and gaps).`,optional:[`icon`,`iconColor`,`color`,`weekdays`,`legend`,`footer`],stringItems:[`weekdays`]}};export{e as D};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={bump:{blurb:`Rank-over-time lines; crossings show where things overtake each other.`,optional:[`icon`,`iconColor`,`footer`],stringItems:[`periods`]},marimekko:{blurb:`Mosaic: column width is the total, height is the share — magnitude and mix at once.`,optional:[`icon`,`iconColor`,`unit`,`footer`]},plot:{blurb:`Cartesian plot of functions/curves on an x/y plane; axes through origin, gridlines, markers.`,optional:[`icon`,`iconColor`,`xLabel`,`yLabel`,`xDomain`,`yDomain`,`markers`,`origin`,`footer`]},dualaxis:{blurb:`Two y-axes over the same x (e.g. revenue + margin); bars on left, line on right.`,optional:[`icon`,`iconColor`,`footer`],stringItems:[`categories`],propHints:{"bar.unit":`e.g. "$" or "units"`,"line.unit":`e.g. "%" or "bps"`}},scatterregression:{blurb:`Scatter plot with an OLS regression line, R² annotation, and optional point labels.`,optional:[`icon`,`iconColor`,`xLabel`,`yLabel`,`color`,`fit`,`footer`]},dotplot:{blurb:`A stacked-dot plot where each observation becomes one dot above a number line. Shows distribution shape, clusters, and outliers. Ideal for small datasets (≤ 30 values).`,optional:[`label`,`color`,`note`,`sub`],propHints:{values:`raw numeric observations, e.g. [12, 15, 15, 18, 22]`,label:`x-axis label, e.g. "Test score"`}},controlchart:{blurb:`A Shewhart process-control chart with upper/lower control limits and a center line. Out-of-control points are highlighted. Use for manufacturing quality, service metrics, or any process monitored over time.`,optional:[`icon`,`iconColor`,`yLabel`,`note`,`sub`],propHints:{"points[].label":`sample label, e.g. "Week 1"`,"points[].value":`measured value for that sample`,ucl:`upper control limit (mean + 3σ)`,lcl:`lower control limit (mean − 3σ)`,centerLine:`process mean`}},areaplot:{blurb:`Cartesian plot that shades a region — area under a curve to the x-axis or between two curves, with optional Riemann/trapezoid rectangles and the area value labeled. The integral/AUC visual: calculus areas, probability mass under a pdf, consumer/producer surplus, work under an F–x curve.`,optional:[`icon`,`iconColor`,`xLabel`,`yLabel`,`xDomain`,`yDomain`,`shade`,`rects`,`areaLabel`,`showArea`,`origin`,`footer`],itemShapes:[{prop:`curves`,textAliases:[`name`,`title`]}],propHints:{"curves[].points":`sampled points [{x,y}] in data coords (sample finely, e.g. ~30+ pts, for a smooth fill)`,shade:`{ from: 'axis' | curveIndex, to: topCurveIndex, x0?, x1? } — 'axis' fills down to y=0; x0/x1 are the integration limits (default = the curves' sampled span)`,rects:`{ n: number, rule: 'left'|'right'|'mid'|'trap' } — draws Riemann/trapezoid rectangles over the region and prints the estimate`,areaLabel:`override the area badge (e.g. an exact symbolic value); omit to show the computed integral`,origin:`true (default) draws axes through (0,0) when in range; false = edge axes`}}};export{e as D};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={supplydemand:{blurb:`The economics supply×demand diagram: an upward supply line and downward demand line on price(y)×quantity(x) axes, the equilibrium marked P*/Q*, optional shaded consumer/producer surplus, and an optional shift of one curve (faded original + arrow). Pick it for market equilibrium, price controls, taxes, and comparative-statics questions.`,optional:[`icon`,`iconColor`,`shift`,`region`,`qMax`,`pMax`,`priceLabel`,`quantityLabel`,`pricePrefix`,`showEquilibrium`,`footer`],propHints:{supply:`the supply line as { intercept, slope } where P = intercept + slope·Q with slope > 0 (e.g. { intercept: 2, slope: 0.5 }), OR { points: [{q,p},{q,p}] }`,demand:`the demand line as { intercept, slope } where P = intercept + slope·Q with slope < 0 (e.g. { intercept: 14, slope: -0.7 }), OR { points: [{q,p},{q,p}] }`,"shift.curve":`'supply'|'demand' — which curve moves`,"shift.to":`the curve’s new position, same shape as supply/demand ({intercept,slope} or {points})`,region:`'consumer'|'producer'|'none' — shade the surplus triangle at equilibrium`,pricePrefix:`currency symbol on every price, e.g. '$'`}},bigo:{blurb:`Big-O growth chart: operations vs input size n, the canonical complexity curves (O(1), O(log n), O(n), O(n log n), O(n^2), O(2^n)) drawn together so the exponential visibly dwarfs the rest. Pick for "how fast does X grow" / comparing algorithm complexities; highlight one class or annotate "this algorithm" on a curve.`,optional:[`icon`,`iconColor`,`classes`,`maxN`,`highlight`,`algorithm`,`xLabel`,`yLabel`,`footer`],propHints:{classes:`subset of 'o-1'|'o-logn'|'o-n'|'o-nlogn'|'o-n2'|'o-2n' (drawn slow->fast; default all six)`,highlight:`one of 'o-1'|'o-logn'|'o-n'|'o-nlogn'|'o-n2'|'o-2n'`,maxN:`integer largest input size on x-axis, 2..64 (default 16)`,algorithm:`{ name: string, complexity: 'o-1'|'o-logn'|'o-n'|'o-nlogn'|'o-n2'|'o-2n' }`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},errorbars:{blurb:`Group means with their uncertainty — each group a point (or bar) plus a confidence-interval whisker (mean ± ci, or explicit low/high). The #1 inferential-statistics graphic for comparing groups, and the standard way to report lab/experiment results. Use over plain bars whenever the spread or overlap of the estimates is the point.`,optional:[`icon`,`iconColor`,`unit`,`yLabel`,`bars`,`reference`,`bracket`,`footer`],itemShapes:[{prop:`groups`,text:`label`,textAliases:[`name`,`group`]}],propHints:{"groups[].label":`group name, e.g. "Placebo"`,"groups[].mean":`the group mean / central estimate (the point or bar height)`,"groups[].ci":`symmetric half-width of the interval (drawn as mean ± ci)`,"groups[].low":`explicit lower interval bound (use low + high for asymmetric CIs instead of ci)`,"groups[].high":`explicit upper interval bound (pair with low)`,"groups[].color":`var(--presence)|var(--insight)|var(--warning)|var(--danger)`,bars:`true draws a bar from the baseline to each mean behind the whisker; false (default) = points`,reference:`{ value: number, label?: string } — a horizontal target/baseline line`,bracket:`{ from: number, to: number, label: string } — significance annotation between two groups by index, e.g. { from: 0, to: 2, label: "p < 0.001" }`}},eratimeline:{blurb:`Comparative multi-track timeline on ONE shared time axis: several parallel lanes (regions, fields, people), each with era BANDS (start→end spans) and point events, so synchronous history lines up vertically. For "what was happening in X vs Y at the same time", overlapping eras, side-by-side project/era comparison. Times are signed years (negative = BCE). Use gantt for a project schedule with dependencies; timeline for a single sequence of dated points.`,optional:[`icon`,`iconColor`,`min`,`max`,`footer`],itemShapes:[{prop:`tracks`,text:`label`,children:{prop:`spans`,text:`label`}}],propHints:{"tracks[].spans[].start":`signed year, negative = BCE (e.g. -509 for 509 BCE, 1492 for 1492 CE)`,"tracks[].spans[].end":`signed year >= start`,"tracks[].events[].at":`signed year of a single-moment event`,color:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},payoffdiagram:{blurb:`Options / derivatives payoff diagram: profit-and-loss (y) vs the underlying price at expiration (x). The kinked payoff line is computed from the position legs (call/put × long/short × strike × premium), with breakeven prices marked where P/L crosses zero, profit (green) vs loss (red) zones shaded, a zero reference line, and max profit / max loss (incl. "unlimited") derived. Pick for a single call/put, a spread, a straddle, a collar — any options strategy P&L.`,optional:[`icon`,`iconColor`,`priceMin`,`priceMax`,`pricePrefix`,`underlyingLabel`,`pnlLabel`,`spot`,`footer`],itemShapes:[{prop:`legs`}],propHints:{legs:`the position's legs: [{ type: 'call'|'put', position: 'long'|'short', strike: number, premium: number, qty?: number }] — payoff is summed across legs, so the curve bends at every strike`,"legs[].type":`'call' | 'put'`,"legs[].position":`'long' (bought, pays premium) | 'short' (written, collects premium)`,priceMin:`visible price-axis lower bound; auto-fit around the strikes when omitted`,priceMax:`visible price-axis upper bound; auto-fit around the strikes when omitted`,pricePrefix:`currency symbol on prices and P/L, e.g. '$' (default '$')`,spot:`today's underlying price; drawn as a vertical guide`}},phasediagram:{blurb:`A pressure–temperature phase diagram: temperature (x) vs pressure (y), with the solid / liquid / gas (and optional supercritical-fluid) regions separated by phase-boundary curves (sublimation, fusion, vaporization), the triple point and critical point marked and labelled. Pick it for chemistry / thermodynamics / materials questions about states of matter, phase transitions, sublimation, melting/boiling under pressure — and water’s famous negative-slope fusion line (ice melts under pressure), which the boundary points can express directly.`,optional:[`icon`,`iconColor`,`triplePoint`,`criticalPoint`,`regions`,`tLabel`,`pLabel`,`tUnit`,`pUnit`,`tDomain`,`pDomain`,`footer`],itemShapes:[{prop:`boundaries`,text:`label`},{prop:`regions`,text:`label`}],propHints:{"boundaries[].kind":`'sublimation' (solid⇌gas) | 'fusion' (solid⇌liquid) | 'vaporization' (liquid⇌gas)`,"boundaries[].points":`sampled points [{t,p}] in data coords (temperature, pressure) along the curve; sample finely. Fusion can have NEGATIVE slope (e.g. water) — just supply points trending left as pressure rises.`,"boundaries[].color":`var(--presence)|var(--insight)|var(--warning)|var(--danger)|var(--line-strong)`,triplePoint:`{ t, p } — where all three phases coexist (e.g. water: {t:273.16, p:0.006} in K/atm)`,criticalPoint:`{ t, p } — where the liquid⇌gas boundary ends and the supercritical fluid begins (e.g. water: {t:647.1, p:218} in K/atm)`,"regions[]":`{ t, p, phase, label, color?, anchor? } — a label placed inside an area; phase is 'solid'|'liquid'|'gas'|'supercritical' (drives the tint), anchor is 'start'|'middle'|'end'`,tUnit:`temperature unit, e.g. 'K' or '°C'`,pUnit:`pressure unit, e.g. 'atm', 'kPa', 'bar'`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},indifferencecurve:{blurb:`The microeconomics indifference-curve map: good X (x) vs good Y (y), a family of convex, downward-sloping indifference curves (further from the origin = more utility, labelled U₁ < U₂ < U₃), with an optional budget line and the optimal consumption bundle marked where the budget line is tangent to the highest reachable curve. Pick it for consumer choice / utility theory, MRS = price-ratio tangency, and how a price or income change moves the optimum.`,optional:[`icon`,`iconColor`,`budget`,`optimal`,`xLabel`,`yLabel`,`xMax`,`yMax`,`footer`],itemShapes:[{prop:`curves`,textAliases:[`name`,`title`]}],propHints:{"curves[].points":`sampled points [{x,y}] left→right tracing ONE convex, downward-sloping curve (sample finely, ~8+ pts); higher-utility curves bow further from the origin and must NOT cross a lower one`,"curves[].label":`utility level, e.g. "U₁" (lowest) … "U₃" (highest)`,budget:`the budget line as { intercept, slope } where Y = intercept + slope·X with slope < 0 (intercept = income ÷ price of Y, slope = −price of X ÷ price of Y), OR { points: [{x,y},{x,y}] }`,optimal:`{ x, y, label? } the optimal bundle (tangency of the budget line with the highest reachable curve); make (x,y) an exact sampled point on that curve to highlight it`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},breakeven:{blurb:`The cost-volume-profit (break-even) chart: a revenue line and a total-cost line on units(x) x money(y) axes that cross at the break-even volume, with the loss region (left of the crossing) shaded and the profit region (right) shaded. Computed entirely from fixed cost, price per unit, and variable cost per unit — it derives break-even units = fixed / (price - cost) and the per-unit contribution margin. Pick it for pricing, profitability, and "how many do we need to sell" questions.`,optional:[`title`,`icon`,`iconColor`,`maxUnits`,`unit`,`currency`,`caption`,`footer`],propHints:{fixedCost:`total fixed cost that does not change with volume (rent, salaries, tooling)`,pricePerUnit:`revenue earned per unit sold`,costPerUnit:`variable cost per unit produced; must be < pricePerUnit for a finite break-even`,maxUnits:`right end of the units axis; auto-fits to ~2x the break-even volume when omitted`,unit:`unit noun on the x-axis + readouts, e.g. 'units'|'subscriptions'|'seats'`,currency:`currency symbol prefixing every money value (default '$')`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}}};export{e as D};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={burnrunway:{blurb:`Cash balance + monthly burn rate chart with projected runway: a dual-axis view pairing the declining cash curve against the per-month burn bars. A runway horizon line and read-out show exactly how many months remain. Use for startup financials, seed-round planning, "how long does our cash last", and fundraising readiness discussions.`,optional:[`title`,`icon`,`iconColor`,`initialCash`,`runwayMonths`,`currency`,`footer`],itemShapes:[{prop:`months`,text:`label`,textAliases:[`month`,`period`,`name`]}],propHints:{months:`array of monthly data — each has label (e.g. "Jan 25"), burn (monthly spend), and optional balance (if omitted, computed as running total)`,initialCash:`opening cash balance in the same units as burn (e.g. 1_200_000 for $1.2M); inferred from the first balance when omitted`,currency:`currency symbol prefix shown on all cash figures; default "$"`}},loaddiagram:{blurb:`A structural-engineering beam load diagram with its matched shear V(x) and bending-moment M(x) plots — three panels stacked on one shared position axis (distance along the beam), so a support, a load, the shear it produces, and the resulting moment all line up vertically. The top panel draws the beam with supports (pin/roller/fixed) and applied loads (point arrows, distributed bands); the V and M panels plot the supplied series with the peaks (Vmax, Mmax) marked. For statics, mechanics of materials, and structural-analysis explanations. Plots the V/M series it is given (it does not solve the statics); supply them alongside the loads.`,optional:[`icon`,`iconColor`,`unit`,`shear`,`moment`,`caption`,`footer`],itemShapes:[{prop:`supports`},{prop:`loads`,text:`label`},{prop:`shear`},{prop:`moment`}],propHints:{span:`total beam length; sets the shared distance axis [0, span]`,"supports[].at":`position along the span (0 … span) where the support sits`,"supports[].kind":`'pin'|'roller'|'fixed' (default 'pin')`,"loads[].kind":`'point' (concentrated force) | 'udl' (uniformly distributed load over [at, to])`,"loads[].at":`the load's position (point) or its start (udl)`,"loads[].to":`the udl's end position; required for kind 'udl', ignored for 'point'`,"loads[].mag":`a point load's force, or a udl's intensity per unit length`,"loads[].label":`caption drawn by the load, e.g. 'P = 12 kN' or 'w = 4 kN/m'`,unit:`force unit suffix on labels + read-outs, e.g. 'kN', 'lbf'`,shear:`the shear diagram V(x) as a sampled series [{x, v}] left→right (plotted, not computed) — include the jumps at point loads and the endpoints`,moment:`the bending-moment diagram M(x) as a sampled series [{x, m}] left→right (plotted, not computed) — sample finely enough to show its curvature`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},ecgstrip:{blurb:`A physiologic ECG rhythm strip on the classic pink graticule (1 mm small squares grouped into 5 mm large squares). The P-QRS-T waveform is drawn from a sampled trace (normalized -1..2, baseline 0, R-wave peak near 2); when no samples are given a normal sinus beat is synthesized and repeated at rateBpm, so the strip stays honest to the stated rate. PR/QRS/QT interval brackets and abnormality pins (PVC, ST elevation…) are placed by millisecond and the rate + rhythm read out above. For cardiology, vitals, and clinical-teaching explanations. Plots the trace it is given — it never invents a measurement.`,optional:[`title`,`icon`,`iconColor`,`samples`,`rateBpm`,`rhythm`,`intervals`,`abnormalities`,`gridMs`,`caption`,`footer`],itemShapes:[{prop:`intervals`,text:`label`},{prop:`abnormalities`,text:`label`}],propHints:{samples:`the waveform as numbers, one per gridMs, normalized -1..2 (0 = baseline, ~2 = R-wave peak); omit to synthesize a normal sinus beat at rateBpm`,rateBpm:`heart rate in beats per minute; drives synthesized beat spacing + the rate read-out`,rhythm:`rhythm interpretation shown beside the rate, e.g. 'Normal sinus rhythm'`,"intervals[].label":`segment measured, e.g. 'PR', 'QRS', 'QT'`,"intervals[].fromMs":`interval start, in ms from the strip's left edge`,"intervals[].toMs":`interval end, in ms (>= fromMs)`,"abnormalities[].atMs":`time of the finding, in ms from the strip's left edge`,"abnormalities[].label":`short caption pinned above the trace, e.g. 'PVC'`,gridMs:`ms represented by one small (1 mm) grid square (default 40, paper standard)`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},vitalstrip:{blurb:`A multi-channel patient-monitor panel. Each channel (HR, BP, SpO₂, RR, temp…) stacks a mini trend line with its normal-range band shaded behind it and a big current read-out; any value falling outside the channel’s normal range is flagged (the row glows, the value turns red). The trend geometry, the band, and the out-of-range detection are all computed from the supplied series + range — it plots the numbers it is given and never fabricates a reading. For bedside monitoring, triage, and clinical explanations.`,optional:[`title`,`icon`,`iconColor`,`windowLabel`,`caption`,`footer`],itemShapes:[{prop:`channels`,text:`label`}],propHints:{"channels[].label":`channel name, e.g. 'HR', 'SpO₂', 'RR'`,"channels[].unit":`unit suffix on the read-out, e.g. 'bpm', '%', '°C'`,"channels[].series":`the trend samples as numbers, oldest → newest (left → right)`,"channels[].current":`the headline current value; defaults to the last sample when omitted`,"channels[].normal":`the channel’s normal range as [low, high]; the band is shaded and excursions flagged`,"channels[].color":`var(--presence)|var(--insight)|var(--warning)|var(--danger)`,windowLabel:`the time window the trends cover, e.g. 'last 30 min'`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},growthcurve:{blurb:`A pediatric percentile growth chart. Reference percentile curves (p3 … p97) fan out over an age axis; the child’s measured points are plotted on top and each landing is tracked to a percentile by interpolating the fan AT that exact age, so the standing read-out is computed, never invented. The median curve is emphasised and the outer band tinted. Both the reference curves and the child’s track come from the data (real-data-only). For pediatrics, well-child visits, and growth-monitoring explanations.`,optional:[`title`,`icon`,`iconColor`,`unit`,`ageUnit`,`caption`,`footer`],propHints:{metric:`'weight'|'height'|'head' — drives the default y-axis title`,unit:`value-axis unit suffix, e.g. 'kg', 'cm', 'lb'`,ageUnit:`age-axis unit noun, e.g. 'months', 'years' (default 'months')`,"percentiles[].p":`the percentile this curve represents, e.g. 3, 15, 50, 85, 97`,"percentiles[].points":`the curve as {age, value} samples, ascending in age`,"plotted[].age":`the child’s age at this measurement, on the same scale as the curves`,"plotted[].value":`the measured weight / height / head circumference`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},sleepcycle:{blurb:`A one-night hypnogram. Sleep stages (Awake / REM / Light / Deep) on a categorical depth axis are traced as a stepped line across the hours of the night; REM spans are highlighted, bedtime and wake are marked, and the cycle count is reported. The step geometry, the time axis, the per-stage time totals, and the cycle count are all computed from the supplied spans — it plots the sleep architecture it is given and never fabricates a stage. For sleep science, sleep-tracker read-outs, and clinical explanations.`,optional:[`title`,`icon`,`iconColor`,`bedtime`,`wake`,`cycles`,`caption`,`footer`],itemShapes:[{prop:`stages`,text:`stage`,closedVocab:!0}],propHints:{"stages[].stage":`'awake'|'rem'|'light'|'deep'`,"stages[].fromMin":`start of the span, in minutes from lights-out (= 0)`,"stages[].toMin":`end of the span, in minutes (>= fromMin)`,bedtime:`clock label for lights-out under the left edge, e.g. '11:00 PM'`,wake:`clock label for waking under the right edge, e.g. '7:00 AM'`,cycles:`number of completed sleep cycles; inferred from REM bouts when omitted`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},seasonband:{blurb:`A 12-month seasonal calendar band. Each row (a crop, a flower, a fish) shows its active WINDOWS across a fixed Jan→Dec grid — in-season / planting / harvest / peak / bloom spans — with an optional "now" marker pinning today's month. Every x-position is computed from the month numbers (1=Jan…12=Dec); it never invents a month. For "what's in season when", planting/harvest calendars, bloom schedules, and any annually-recurring availability. Use gantt for a dated one-off project schedule, eratimeline for multi-year history.`,optional:[`title`,`icon`,`iconColor`,`nowMonth`,`caption`,`footer`],itemShapes:[{prop:`rows`,text:`label`}],propHints:{"rows[].windows[].from":`first active month, inclusive (1 = Jan … 12 = Dec)`,"rows[].windows[].to":`last active month, inclusive (>= from)`,"rows[].windows[].kind":`'peak'|'available'|'planting'|'harvest'|'bloom' (default 'available')`,nowMonth:`highlight today's month with a vertical marker, 1 (Jan) … 12 (Dec)`,iconColor:`var(--presence)|var(--insight)|var(--warning)|var(--danger)`}},roccurve:{blurb:`ROC (Receiver Operating Characteristic) curve: TPR vs FPR at each decision threshold, with the chance diagonal, shaded AUC area, and a draggable operating-point marker. Compare multiple classifiers or diagnostic tests on the same axes. The model supplies the (fpr, tpr) point cloud and AUC; dragging explores trade-offs without fabricating data. Use for classifier evaluation, diagnostic test sensitivity/specificity, model selection.`,optional:[`title`,`icon`,`iconColor`,`operatingPoint`,`xLabel`,`yLabel`,`caption`,`footer`],itemShapes:[{prop:`curves`,text:`name`,textAliases:[`label`,`model`,`classifier`]}],propHints:{"curves[].name":`classifier or model name shown in the legend`,"curves[].points":`array of { fpr, tpr, threshold? } in ascending fpr order`,"curves[].auc":`area under curve 0-1 (model-supplied, not recomputed)`,operatingPoint:`0-based index into the first curve points for the initial marker position`}}};export{e as D};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={surfaceplot:{blurb:`Scalar field z = f(x,y) rendered as a 2-D heatmap with optional marching-squares contour isolines (mode "contour", default), a flat heatmap without isolines (mode "filled"), or an oblique 3-D projection (mode "surface3d"). Color ramp goes from insight (low) through presence (mid) to warning (high). Use for multivariable calculus (gradient fields, saddle points, Lagrange multipliers), heat distribution, probability density surfaces, and topographic elevation. The model supplies a row-major grid of z-values; all geometry is computed.`,optional:[`mode`,`levels`,`xLabel`,`yLabel`,`zLabel`,`zRange`,`caption`],propHints:{grid:`2-D number[][] row-major array of z-values; grid[0] is the top row`,mode:`"contour" (default) | "filled" | "surface3d"`,levels:`number of contour threshold bands (default 6)`,zRange:`[min, max] override; omit to auto-compute from grid`}},gradientdescent:{blurb:`A loss surface — contour isolines over a 2-D grid of (x, y, z) samples — with an optimizer's actual descent path traced over it as a drawn-on trail with step markers. Use for gradient descent, learning-rate/convergence intuition, and optimization landscapes (saddle points, local minima, ravines). The model supplies both the real loss grid and the real visited points; no curve is fitted or fabricated.`,optional:[`title`,`icon`,`iconColor`,`learningRate`,`footer`],propHints:{contour:`row-major 2-D array of { x, y, z } loss samples — a rectilinear mesh, grid[0] is the top row`,path:`array of { x, y, step } — the optimizer's actual visited points, in step order`,learningRate:`the optimizer's step size, shown as a caption`}},biasvariance:{blurb:`The canonical bias-variance tradeoff diagram: training error falling and test error forming a U-shape as model complexity rises, with an optional shaded "sweet spot" band at the best-generalizing complexity. Use for overfitting/underfitting intuition, model-selection and regularization discussions, and explaining the complexity/generalization tradeoff. Three parallel arrays plot straight through — nothing is curve-fit.`,optional:[`title`,`icon`,`iconColor`,`sweetSpot`,`footer`],propHints:{complexity:`ascending model-complexity x-values, one per sample`,trainError:`training error at each complexity level, same length as complexity`,testError:`held-out/test error at each complexity level, same length as complexity`,sweetSpot:`complexity value to shade as the best-generalizing point, if known`}},timeseriesdecomposition:{blurb:`STL-style time series decomposition: observed, trend, seasonal, and residual plotted as four small panels stacked on one shared x-axis, each with its own y-scale so a small seasonal/residual swing stays readable next to a much larger observed series. Use for forecasting explainers, seasonality analysis, and anomaly discussions (residual spikes). All four series are the caller's real numbers — nothing is filtered or smoothed here.`,optional:[`title`,`icon`,`iconColor`,`footer`],stringItems:[`dates`],propHints:{dates:`x-axis labels, one per sample (only shown under the bottom panel)`,observed:`the raw series`,trend:`the long-run trend component, same length as dates`,seasonal:`the repeating seasonal component, same length as dates`,residual:`what's left after removing trend and seasonal — the noise/anomaly component`}},precisionrecallcurve:{blurb:`Precision-recall curve for classifier evaluation: precision (y) vs recall (x) across decision thresholds, with a shaded area-under-curve fill. Unlike ROC there is no chance-diagonal (a PR curve's no-skill baseline depends on class prevalence, which this component is never given, so none is drawn). Prefer this over ROC on imbalanced classes, where ROC can look misleadingly good. Compare multiple classifiers on the same axes; an optional average-precision badge summarizes the primary curve.`,optional:[`title`,`icon`,`iconColor`,`avgPrecision`,`footer`],itemShapes:[{prop:`curves`,text:`label`,textAliases:[`name`,`model`,`classifier`]}],propHints:{"curves[].label":`classifier or model name shown in the legend`,"curves[].points":`array of { precision, recall, threshold? } — any order, sorted by recall to draw`,avgPrecision:`area under the PR curve, 0-1 (model-supplied, not recomputed) — shown as an AP badge`}},chromatogram:{blurb:"An HPLC/GC chromatography readout: detector signal over retention time with each eluting peak apex labeled (RT, compound, area%) and its real integrated region shaded between the valleys either side of it. Give `trace` for the full baseline; without it, only the peak results table renders — never a fabricated baseline shape. Use for analytical chemistry, purity checks, and separation science.",optional:[`icon`,`iconColor`,`method`,`trace`,`footer`],propHints:{method:`instrument/method line, e.g. "HPLC · C18, 1.0 mL/min, 254 nm"`,"trace[].t":`retention time, in minutes unless stated otherwise`,"trace[].signal":`detector response (mAU or counts) at that time`,"peaks[].rt":`retention time of the peak apex`,"peaks[].label":`compound identity, e.g. "Caffeine"`,"peaks[].areaPct":`percent of total integrated area, 0-100`,"peaks[].height":`peak height in detector units`}},stressstraincurve:{blurb:"A material's engineering stress-strain diagram, plotted straight from the tensile-test curve. When `yieldPoint` is given, the elastic region (up to yield) is shaded and a Young's-modulus slope is computed from the curve's own first sample and the yield point. Yield/ultimate-tensile/fracture points are each independently optional and called out with a labeled leader line. Use for materials science, mechanical engineering, and manufacturing QA — never for a curve the model hasn't actually sampled.",optional:[`icon`,`iconColor`,`yieldPoint`,`ultimatePoint`,`fracturePoint`,`footer`],propHints:{"curve[].strain":`engineering strain, dimensionless (e.g. 0.02 = 2%)`,"curve[].stress":`engineering stress, in the material's own unit (MPa unless stated otherwise)`,yieldPoint:`{ strain, stress } where plastic deformation begins`,ultimatePoint:`{ strain, stress } at the curve peak — ultimate tensile strength`,fracturePoint:`{ strain, stress } where the sample actually broke`}},gatingplot:{blurb:`A flow-cytometry gating plot: the raw event point-cloud on linear or log axes, with translucent gate boundaries (ellipse or polygon) drawn over the populations they enclose, each labeled with its name and percent-of-parent. Click a gate or its legend chip to isolate that population. Use for immunology, cell biology, and clinical flow-cytometry panels — never invents a gate boundary the model wasn't given.`,optional:[`icon`,`iconColor`,`xScale`,`yScale`,`gates`,`footer`],itemShapes:[{prop:`gates`,text:`name`,textAliases:[`label`,`population`,`gateName`]}],propHints:{xScale:`'linear' (default) | 'log' — fluorescence channels commonly need log`,yScale:`'linear' (default) | 'log'`,"points[].gate":"0-based index into `gates` this event was assigned to; omit for ungated","gates[].shape":`'ellipse' | 'polygon'`,"gates[].region":`ellipse: exactly [[cx,cy],[rx,ry]] (center, then radii). polygon: 3+ [x,y] vertices in order.`,"gates[].pctOfParent":`percent of the parent population this gate captures, 0-100`}}};export{e as D};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={gellane:{blurb:`A gel electrophoresis lane readout: vertical sample lanes on a gel backdrop with blurred bands positioned by migration distance and shaded by intensity, plus an optional size ladder with tick labels. Use for molecular biology (DNA/RNA gels, Western blots, PCR product checks) — band position and darkness come straight from the data, nothing is fit or estimated.`,optional:[`icon`,`iconColor`,`ladder`,`footer`],itemShapes:[{prop:`lanes`,text:`label`,textAliases:[`name`,`sample`],children:{prop:`bands`}}],propHints:{"lanes[].bands[].pos":`0-1 migration distance from the well; 0 = top (well), 1 = bottom (dye front)`,"lanes[].bands[].intensity":`0-1 band darkness/brightness`,"lanes[].bands[].sizeLabel":`size shown beside the band, e.g. "480 bp" or "42 kDa"`,ladder:`{ unit: "bp"|"kDa", marks: [...] } — a standard ladder lane drawn first, any mark order`}},flightchart:{blurb:`A media flight/budget chart: channels as horizontal lanes, each flight a bar across the timeline sized and labeled by spend, with a total-spend readout. Use for marketing/ad campaign planning across channels — never for a project schedule with dependencies, use gantt.`,optional:[`icon`,`iconColor`,`totalBudget`,`currency`,`footer`],itemShapes:[{prop:`channels`,text:`name`,textAliases:[`label`,`channel`]},{prop:`flights`,text:`channel`,textAliases:[`lane`,`name`]}],propHints:{"flights[].start":`0-based period index the flight starts in`,"flights[].span":`how many periods the flight runs, minimum 1`,"flights[].budget":`spend for that one flight`,currency:`ISO 4217 code, e.g. "USD" — defaults to USD`}},paybandchart:{blurb:`An HR compensation band: a role’s min–mid–max range as a bullet-style track, with named offers/incumbents plotted inside it. A marker flagged as an equity-watch case (compression, off-cycle exception) gets a distinct accent. Use for comp bands, offer positioning, pay-equity review — never for a plain min/max range with no named people on it.`,optional:[`icon`,`iconColor`,`currency`,`footer`],itemShapes:[{prop:`markers`,text:`name`,textAliases:[`label`,`person`,`employee`]}],propHints:{"markers[].value":`that person/offer’s comp, same unit as min/mid/max`,"markers[].flag":`true marks it an equity-watch case, drawn with the warning accent`,currency:`ISO 4217 code, e.g. "USD" — defaults to USD`}},linebalance:{blurb:`A manufacturing line-balance/takt chart: one bar per station’s real cycle time, with a dashed takt-time reference line spanning every bar. Any station whose cycle time clears takt flips to the warning tint and is labeled a bottleneck. Use for assembly-line balancing, station-by-station throughput — never for a generic time series, use chart.`,optional:[`icon`,`iconColor`,`unit`,`footer`],itemShapes:[{prop:`stations`,text:`name`,textAliases:[`label`,`station`]}],propHints:{takt:`takt time — the pace demand sets, same unit as every station’s cycleTime`,"stations[].cycleTime":`that station’s measured cycle time`,"stations[].bottleneck":`true forces the bottleneck tint even if under takt`}},epicurve:{blurb:`An epidemiological epi curve: case counts per period, stacked and colored by diagnostic classification (confirmed/probable/suspected), with an optional dashed alert-threshold line and dotted vertical markers for named interventions/events. Use for outbreak surveillance over time — never for a single running total, use chart.`,optional:[`icon`,`iconColor`,`threshold`,`phases`,`footer`],itemShapes:[{prop:`cases`,text:`period`,textAliases:[`label`,`week`,`date`,`time`]},{prop:`phases`,text:`label`,textAliases:[`name`,`event`]}],propHints:{"cases[].classification":`'confirmed' | 'probable' | 'suspected' — omit for unclassified`,threshold:`{ value, label } — drawn as a dashed reference line`,"phases[].period":`must match one of cases[].period; a non-matching phase is dropped`}},pareto:{blurb:`An 80/20 Pareto chart: bars sorted descending by frequency/value, with a cumulative-percent line on a dual right axis and an 80% guide line. The bars carrying the line up to that guide are highlighted. Use to find the vital few causes behind most of an effect — never for data with no meaningful "which few matter most" read, use bars.`,optional:[`icon`,`iconColor`,`cumulative`,`unit`,`footer`],itemShapes:[{prop:`bars`,text:`label`,textAliases:[`name`,`category`,`reason`,`cause`]}]},populationpyramid:{blurb:`A demographic population pyramid: mirrored horizontal bars from a shared center axis, one row per age band, both sides sharing one scale so bar length is comparable across the whole chart. Use for age/sex population structure — never for a plain two-series comparison with no natural left/right split, use dumbbell.`,optional:[`icon`,`iconColor`,`unit`,`footer`],itemShapes:[{prop:`bands`,text:`label`,textAliases:[`age`,`group`,`range`]}],propHints:{leftLabel:`header over the left bars, e.g. "Male"`,rightLabel:`header over the right bars, e.g. "Female"`,"bands[].left":`the left side's real count for that age band`,"bands[].right":`the right side's real count for that age band`}},parallelcoordinates:{blurb:`A parallel-coordinates plot: one vertical axis per variable, each observation drawn as a line connecting its own position on every axis, each axis normalized to its own real min/max. Hover a line or its legend chip to isolate it. Use to compare several options/observations across MANY variables at once — never for just two variables, use scatterregression.`,optional:[`icon`,`iconColor`,`footer`],itemShapes:[{prop:`axes`,text:`key`,textAliases:[`id`,`field`,`name`]},{prop:`lines`,text:`label`,textAliases:[`name`,`series`]}],propHints:{"axes[].label":`display name for the axis; falls back to its key when omitted`,"axes[].domain":`optional fixed [min,max]; omit to normalize from the real data`,"lines[].values":`object keyed by each axes[].key — a missing key just skips that axis`}}};export{e as D};
|