@openscout/scout 0.2.79 → 0.2.80
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/bin/scoutd +0 -0
- package/dist/build-manifest.json +3 -3
- package/dist/client/assets/ActivityScreen-BXm6nJ6L.js +1 -0
- package/dist/client/assets/{AddProjectForm-BoVtelSP.js → AddProjectForm-CtEiLQnm.js} +1 -1
- package/dist/client/assets/{AgentAvatar-CufDA4A-.js → AgentAvatar-CszU5eaU.js} +1 -1
- package/dist/client/assets/AgentConfigurationScreen-CfBXxrsD.js +1 -0
- package/dist/client/assets/AgentDefinitionsWorkspace-4Z0aN8AR.js +1 -0
- package/dist/client/assets/{AgentDetailCard-DxxVkgT1.js → AgentDetailCard-sZuHl1de.js} +1 -1
- package/dist/client/assets/AgentFloorView-DMivAYHU.js +1 -0
- package/dist/client/assets/AgentInfoScreen-CPkLg1pK.js +1 -0
- package/dist/client/assets/{AgentLaneCard-DTUvE96I.js → AgentLaneCard-nB68f2CI.js} +1 -1
- package/dist/client/assets/{AgentLaneChrome-BfVygkgL.js → AgentLaneChrome-O9Yf0uR-.js} +1 -1
- package/dist/client/assets/AgentLaneDetailSheet-BfhpaEQ3.js +4 -0
- package/dist/client/assets/{AgentLaneSummaryResize-CMgzYvAA.js → AgentLaneSummaryResize-Ct3b0TQR.js} +1 -1
- package/dist/client/assets/AgentLanesEmbedScreen-CjHMvy3v.js +1 -0
- package/dist/client/assets/{AgentLanesPreflight-KWfLcaNB.js → AgentLanesPreflight-DNGvZvjd.js} +1 -1
- package/dist/client/assets/{AgentLanesView-CxfbV8Kd.js → AgentLanesView-DqRK5-d2.js} +1 -1
- package/dist/client/assets/{AgentLiveActions-CZdAInEu.js → AgentLiveActions-DI4ooSHW.js} +1 -1
- package/dist/client/assets/{AgentSessions-Bkr0lyry.js → AgentSessions-BxWIPkWh.js} +1 -1
- package/dist/client/assets/{AgentsConsole-WtFVqaPJ.js → AgentsConsole-D6VHSCfZ.js} +1 -1
- package/dist/client/assets/AgentsScreen-zR6b2bUL.js +1 -0
- package/dist/client/assets/AgentsSubnav-q0xcZi6C.js +1 -0
- package/dist/client/assets/{AtopView-_OKDlZ1h.js → AtopView-VZkk40v0.js} +1 -1
- package/dist/client/assets/{BackToPicker-CkUmHuuo.js → BackToPicker-DZg_4nHL.js} +1 -1
- package/dist/client/assets/{BriefingDetailScreen-i54EtZKW.js → BriefingDetailScreen-BZU4qMwE.js} +1 -1
- package/dist/client/assets/{BriefingsScreen-CBrHojlQ.js → BriefingsScreen-Bfc3tqPp.js} +1 -1
- package/dist/client/assets/{BrokerMetadataPanel-opTLuZU6.js → BrokerMetadataPanel-CaFe6kdh.js} +1 -1
- package/dist/client/assets/BrokerScreen-Chh8sGen.js +5 -0
- package/dist/client/assets/{ChatCollapsedStrip-Dr2vmKXQ.js → ChatCollapsedStrip-Cov54p9V.js} +1 -1
- package/dist/client/assets/{CodeDiffPane-CLOGjwul.js → CodeDiffPane-C1ebFt-Y.js} +1 -1
- package/dist/client/assets/{CodeProjectPicker-DTV8hR6A.js → CodeProjectPicker-tsCly-f3.js} +1 -1
- package/dist/client/assets/CodeScreen-D0hpZNLP.js +1 -0
- package/dist/client/assets/{ContextMenu-BlBQhpax.js → ContextMenu-N-Z6X0Z1.js} +1 -1
- package/dist/client/assets/ConversationComposer-CiEF7dhd.js +1 -0
- package/dist/client/assets/ConversationFeedRows-5it6QNBV.js +1 -0
- package/dist/client/assets/ConversationHeader-BGgbITvr.js +1 -0
- package/dist/client/assets/ConversationPanels-vI9YuQJh.js +2 -0
- package/dist/client/assets/ConversationScreen-C-PrCRz1.js +1 -0
- package/dist/client/assets/ConversationScreen-yIKEsm-8.css +1 -0
- package/dist/client/assets/{ConversationStatus-DSgdVofa.js → ConversationStatus-COEj5loj.js} +1 -1
- package/dist/client/assets/{DataTable-0DwuXyvW.js → DataTable-BoofV-_4.js} +1 -1
- package/dist/client/assets/{DispatchAftermath-BrreQifA.js → DispatchAftermath-OXYlMbT1.js} +1 -1
- package/dist/client/assets/{DocumentFocusViewer-DU_9BHsD.js → DocumentFocusViewer-BCG2kOmd.js} +1 -1
- package/dist/client/assets/{EmbeddableSurfacesLab-DdaswbfI.js → EmbeddableSurfacesLab-C2SZvrHJ.js} +1 -1
- package/dist/client/assets/{EmptyState-CoL-QuUO.js → EmptyState-DypEjx0V.js} +1 -1
- package/dist/client/assets/{FileViewerPane-C9Ly01Ef.js → FileViewerPane-CXCq-oKj.js} +1 -1
- package/dist/client/assets/{FleetSearch-DlWTLl-v.js → FleetSearch-Dj7-CfNi.js} +1 -1
- package/dist/client/assets/FlightObserveScreen-Yq5NtQQJ.js +1 -0
- package/dist/client/assets/FollowScreen-DRgYuAvp.js +1 -0
- package/dist/client/assets/HarnessMark-BE-YSyci.js +1 -0
- package/dist/client/assets/HarnessesScreen-L-emPcXd.js +1 -0
- package/dist/client/assets/HerdrSession-DKFCJMst.js +4 -0
- package/dist/client/assets/{HomeHero-Cfsow7qL.js → HomeHero-CAEg8Yg5.js} +1 -1
- package/dist/client/assets/{KnowledgeSearchInspector-DKashKoH.js → KnowledgeSearchInspector-C2EZsQ5i.js} +1 -1
- package/dist/client/assets/KnowledgeSearchScreen-DvdOFh-b.js +1 -0
- package/dist/client/assets/{LaneToolHoverCard-BzehBmdi.js → LaneToolHoverCard-DrPXYZvQ.js} +1 -1
- package/dist/client/assets/LaneTraceDetailSheet-Dl7foF88.js +1 -0
- package/dist/client/assets/{LaneTraceEventFocus-DYvHfs_3.js → LaneTraceEventFocus-X4-DDFEo.js} +1 -1
- package/dist/client/assets/{MeshCanvas-DIjlrMPU.js → MeshCanvas-rtCBD7s6.js} +1 -1
- package/dist/client/assets/{MeshCanvasMinimap-DEq-PkF0.js → MeshCanvasMinimap-CuvXOkc7.js} +1 -1
- package/dist/client/assets/MeshScreen-D5zzTn0o.js +1 -0
- package/dist/client/assets/{MeshTopologyView-BMHpH5BU.js → MeshTopologyView-CeTShs-U.js} +2 -2
- package/dist/client/assets/{MessageComposerSuggestions-zAUUcLOv.js → MessageComposerSuggestions-Cs9u-F_3.js} +1 -1
- package/dist/client/assets/MessagesScreen-BhOJ7_tj.js +1 -0
- package/dist/client/assets/MissionContextRail-0O-Zu1Tn.js +1 -0
- package/dist/client/assets/MissionControlView-D2JO9u-y.js +1 -0
- package/dist/client/assets/{MissionFocusOverlay-C7cPt6eU.js → MissionFocusOverlay-LnjmqBiW.js} +1 -1
- package/dist/client/assets/{MissionLeftAgentRow-CxlH3dON.js → MissionLeftAgentRow-nc1Jyq3D.js} +1 -1
- package/dist/client/assets/MissionLogPane-lZ9vUftY.js +1 -0
- package/dist/client/assets/{NewAgentModal-DprvD4EK.js → NewAgentModal-K1cvdmZr.js} +1 -1
- package/dist/client/assets/NewChatComposer-C5LT7MF7.css +1 -0
- package/dist/client/assets/NewChatComposer-DXDxV2Mh.js +19 -0
- package/dist/client/assets/{NewChatOrigin--pHWUb4V.js → NewChatOrigin-CnjoswTG.js} +1 -1
- package/dist/client/assets/{ObserveEmbedScreen-CfvrnOiZ.js → ObserveEmbedScreen-CRpzYf0Y.js} +1 -1
- package/dist/client/assets/{ObserveTextFlow-CBitljxi.js → ObserveTextFlow-DJxQc2H6.js} +2 -2
- package/dist/client/assets/{ObservedTopologyPanel-Dv6fbHzW.js → ObservedTopologyPanel-C1AQM0Mq.js} +1 -1
- package/dist/client/assets/OpenScoutAppShell-DrHYD_pd.js +87 -0
- package/dist/client/assets/OpsAgentsView-BnMX0vEY.js +1 -0
- package/dist/client/assets/OpsScreen-BeC0lieE.js +1 -0
- package/dist/client/assets/OpsSubnav-D5Bpowtk.js +1 -0
- package/dist/client/assets/{PlanView-DYtt8H37.js → PlanView-DDXdC19M.js} +1 -1
- package/dist/client/assets/ProjectAgentProfile-zE1cApxw.js +1 -0
- package/dist/client/assets/{ProjectAgentProfileBar-B3IvVbqS.js → ProjectAgentProfileBar-MODhG0P6.js} +1 -1
- package/dist/client/assets/{ProjectAgentProfileHero-D5E8yvDj.js → ProjectAgentProfileHero-C1ImgGDu.js} +1 -1
- package/dist/client/assets/ProjectsInbox-C3Jd6JTk.js +2 -0
- package/dist/client/assets/{ProjectsRail-DEDS-M1c.js → ProjectsRail-B1zrQLZe.js} +1 -1
- package/dist/client/assets/ProjectsScreen-PW_NH5VK.js +1 -0
- package/dist/client/assets/ProjectsThreadAside-DaCEUWN1.js +1 -0
- package/dist/client/assets/Provider-DSsb2gLR.js +1 -0
- package/dist/client/assets/{RailRow-BTlVAnHS.js → RailRow-DerXOXQS.js} +1 -1
- package/dist/client/assets/RawSessionsTable-LWEvXJzj.js +1 -0
- package/dist/client/assets/RealtimeVoiceScreen-XtxbCjOs.js +1 -0
- package/dist/client/assets/{RepoDiffEmbedScreen-CtTdlQ2A.js → RepoDiffEmbedScreen-C9oLCcZX.js} +1 -1
- package/dist/client/assets/{RepoDiffPageScreen-BRvaVYoC.js → RepoDiffPageScreen-CGEMAv2Z.js} +1 -1
- package/dist/client/assets/{RepoDiffViewer-Bo0gREMj.js → RepoDiffViewer-CB8PSVey.js} +1 -1
- package/dist/client/assets/RepoDiffViewerLazy-DIxkiMto.js +2 -0
- package/dist/client/assets/{ReposScreen-BBkJf8xT.js → ReposScreen-BN1lVjOj.js} +1 -1
- package/dist/client/assets/{ScoutDeckSurface-Bi9ov9Bm.js → ScoutDeckSurface-BCpl0QCx.js} +1 -1
- package/dist/client/assets/{ScoutSurface-DEQg_7Io.js → ScoutSurface-BEnDlynn.js} +1 -1
- package/dist/client/assets/{ScoutbotBroadcastChip-DJXuyn73.js → ScoutbotBroadcastChip-z9R_pC_U.js} +1 -1
- package/dist/client/assets/{ScoutbotFxLab-BgsuLDjo.js → ScoutbotFxLab-fAROyIfz.js} +1 -1
- package/dist/client/assets/{ScoutbotRealtimeVoiceCall-Bzyl0BCS.js → ScoutbotRealtimeVoiceCall-CDyFJX8m.js} +1 -1
- package/dist/client/assets/{SecondaryNav-Bks0CO2h.js → SecondaryNav-Hv5AJ3Fv.js} +1 -1
- package/dist/client/assets/{SessionEmbedScreen-b0Zgmfx5.js → SessionEmbedScreen-CDRpQc3g.js} +1 -1
- package/dist/client/assets/{SessionObserve-Dlx5vDaV.js → SessionObserve-BmmJ8dEh.js} +1 -1
- package/dist/client/assets/{SessionObserveEvidence-ChBD1d4c.js → SessionObserveEvidence-CEedIk2a.js} +1 -1
- package/dist/client/assets/SessionRefScreen-Dk-O4OVt.js +1 -0
- package/dist/client/assets/SessionsScreen-BJEjuo2X.js +1 -0
- package/dist/client/assets/{SettingsDrawer-C587L1i1.js → SettingsDrawer-DL-SVLdd.js} +1 -1
- package/dist/client/assets/SettingsScreen-DJ-BhBwR.js +1 -0
- package/dist/client/assets/{ShikiPane-I_OTW5NO.js → ShikiPane-B7O4if20.js} +1 -1
- package/dist/client/assets/{SlidePanel-FCqT1zO3.js → SlidePanel-B3gc5HnM.js} +1 -1
- package/dist/client/assets/{SpriteAvatar-CQs-jC-v.js → SpriteAvatar-BpQDpOkq.js} +1 -1
- package/dist/client/assets/{StatusPill-CbABggnQ.js → StatusPill-B33sQinT.js} +1 -1
- package/dist/client/assets/{TailView-C_MXVSum.js → TailView-DL3YZkzE.js} +2 -2
- package/dist/client/assets/Terminal-Dp1FSGIS.js +1 -0
- package/dist/client/assets/TerminalEmbedScreen-DP9IM4xf.js +1 -0
- package/dist/client/assets/{TextDocumentSurface-C-9EtYqt.js → TextDocumentSurface-DRjctOIt.js} +1 -1
- package/dist/client/assets/{TmuxPeek-Dz1gJ2pU.js → TmuxPeek-DNC4uWky.js} +1 -1
- package/dist/client/assets/{VoicePermissionsPanel-MfICy9kk.js → VoicePermissionsPanel-WLN0V-Xv.js} +1 -1
- package/dist/client/assets/{WorkDetailScreen-Cs7kdllj.js → WorkDetailScreen-D2Yl0mYZ.js} +1 -1
- package/dist/client/assets/{WorkFilesViewer-CF-nhtZ4.js → WorkFilesViewer-BbVfcUN-.js} +1 -1
- package/dist/client/assets/{activity-WhBf3FXP.js → activity-BxwKkT8z.js} +1 -1
- package/dist/client/assets/{addon-fit-q-x_HytU.js → addon-fit-B9O2vJoh.js} +1 -1
- package/dist/client/assets/{addon-webgl-fhhvEA9h.js → addon-webgl-BhRZFDcn.js} +1 -1
- package/dist/client/assets/{agent-essentials-DyJiUGpZ.js → agent-essentials-SrzMYEXV.js} +1 -1
- package/dist/client/assets/agent-identity-BxCsXnDp.js +1 -0
- package/dist/client/assets/{agent-lane-card-model-BCIwPjEh.js → agent-lane-card-model-DSWdGu-v.js} +1 -1
- package/dist/client/assets/agent-lane-detail-BNNm6FNu.js +2 -0
- package/dist/client/assets/{agent-lane-preview-BtnfNyFR.js → agent-lane-preview-C33Dwpn7.js} +1 -1
- package/dist/client/assets/{agent-lanes-model-Bl6xfviL.js → agent-lanes-model-CPgQRenB.js} +2 -2
- package/dist/client/assets/{arc.es-DPJ0xRV6.js → arc.es-NlJw-19N.js} +1 -1
- package/dist/client/assets/{arrow-down-DsD-dYj-.js → arrow-down-D3-IbArq.js} +1 -1
- package/dist/client/assets/{arrow-left-WjQIN9J6.js → arrow-left-_vS7itsV.js} +1 -1
- package/dist/client/assets/{arrow-up-right-CtTDrZJr.js → arrow-up-right-CcrWONpD.js} +1 -1
- package/dist/client/assets/{bot-B_Uzf4_O.js → bot-BRINYlC6.js} +1 -1
- package/dist/client/assets/{check-BbgHJX8u.js → check-COxArFXG.js} +1 -1
- package/dist/client/assets/{chevron-down-BFai6ZfE.js → chevron-down-DRCbnzyY.js} +1 -1
- package/dist/client/assets/{chevron-right-CyUa1zXx.js → chevron-right-CNE6QAVr.js} +1 -1
- package/dist/client/assets/{chunk-HRAB3GC3-CvwpNg-G.js → chunk-HRAB3GC3-CAeEKaf5.js} +1 -1
- package/dist/client/assets/chunk-JTPDIGGW-s6WbxdjC.js +46 -0
- package/dist/client/assets/{chunk-T65CQEWV-DI4NKdNq.js → chunk-T65CQEWV-CiZ_ICHW.js} +1 -1
- package/dist/client/assets/chunk-YOZR3KYS-DLOc92uD.js +2 -0
- package/dist/client/assets/{clock-DviOalxA.js → clock-CyfvRmj6.js} +1 -1
- package/dist/client/assets/{code-xml-05TD3uOC.js → code-xml--LjSM4Mv.js} +1 -1
- package/dist/client/assets/content-7ZeCPAEt.js +1 -0
- package/dist/client/assets/content-BHUcUCH5.js +1 -0
- package/dist/client/assets/content-BUhvLPkv.js +1 -0
- package/dist/client/assets/content-BomQ5YWo.js +1 -0
- package/dist/client/assets/content-C39ELNgC.js +1 -0
- package/dist/client/assets/content-C4RYKHut.js +1 -0
- package/dist/client/assets/content-CCiZfG4H.js +1 -0
- package/dist/client/assets/content-CDpDtVI-.js +1 -0
- package/dist/client/assets/content-CO-9CeFd.js +1 -0
- package/dist/client/assets/content-CuOLxp1x.js +1 -0
- package/dist/client/assets/content-CvtLIjXS.js +1 -0
- package/dist/client/assets/content-CzwTUb9n.js +1 -0
- package/dist/client/assets/content-DQXbo2RO.js +1 -0
- package/dist/client/assets/content-DRTQ9QQb.js +1 -0
- package/dist/client/assets/content-LCELs6zg.js +1 -0
- package/dist/client/assets/content-Uqt8AG-s.css +1 -0
- package/dist/client/assets/content-qsDjA4Au.js +1 -0
- package/dist/client/assets/{conversation-icons-DohQL6GI.js → conversation-icons-c-hXv7hY.js} +1 -1
- package/dist/client/assets/conversation-model-CHwHZNw-.js +1 -0
- package/dist/client/assets/conversation-motion-features-T8vF9zED.js +1 -0
- package/dist/client/assets/{copy-CwCAivnc.js → copy-4LfKIdQJ.js} +1 -1
- package/dist/client/assets/{createLucideIcon-DlxlBfLC.js → createLucideIcon-ClCdc3F9.js} +1 -1
- package/dist/client/assets/discover-7Ks00w-M.js +2 -0
- package/dist/client/assets/embed-entry-n2ThmSSX.js +2 -0
- package/dist/client/assets/{external-link-CnjcXf32.js → external-link-CnaI1QFS.js} +1 -1
- package/dist/client/assets/{eye-So8tNNK6.js → eye-BFlhMzQL.js} +1 -1
- package/dist/client/assets/{file-text-i3xTDUjJ.js → file-text-DG-pufl1.js} +1 -1
- package/dist/client/assets/{gestures-CgvAMd6F.js → gestures-CxG3Dphs.js} +1 -1
- package/dist/client/assets/home-live-action-BkqGLVRY.js +1 -0
- package/dist/client/assets/home-moving-signal-aNJusIzL.js +1 -0
- package/dist/client/assets/home-now-card-BQK4EFHx.js +1 -0
- package/dist/client/assets/{home-now-card-nano-CkLHUQ4J.js → home-now-card-nano-CdtzqSIF.js} +1 -1
- package/dist/client/assets/hooks-Dst1TH7n.js +2 -0
- package/dist/client/assets/index-9as_JTUs.css +1 -0
- package/dist/client/assets/index-CU9dtwJk.js +1 -0
- package/dist/client/assets/{index-sUomXsrf.js → index-CzVeWScw.js} +2 -2
- package/dist/client/assets/index-Dewd56RX.js +1 -0
- package/dist/client/assets/index-_YQXKEhb.js +1 -0
- package/dist/client/assets/{inspector-panel-DhXd-YbT.js → inspector-panel-DgOM8nCo.js} +1 -1
- package/dist/client/assets/keyboard-nav-BJnFoFDP.js +1 -0
- package/dist/client/assets/{lane-observe-DrhKkQ3A.js → lane-observe-BA3g9aVd.js} +1 -1
- package/dist/client/assets/{lane-roster-store-NE15Oe6M.js → lane-roster-store-pR4ZaYQm.js} +1 -1
- package/dist/client/assets/left-BhzPp-_E.js +1 -0
- package/dist/client/assets/left-CN1MABD0.js +2 -0
- package/dist/client/assets/left-DDgbsio7.js +1 -0
- package/dist/client/assets/left-Dpf2R9uD.js +1 -0
- package/dist/client/assets/left-HwwbMVtl.js +2 -0
- package/dist/client/assets/left-YfH0daht.js +1 -0
- package/dist/client/assets/left-agents-CYUwAy2Z.js +1 -0
- package/dist/client/assets/left-default-vEGZALPv.js +1 -0
- package/dist/client/assets/left-lanes-bphF-vlX.js +1 -0
- package/dist/client/assets/left-mission-B54-c3hq.js +1 -0
- package/dist/client/assets/left-np5USKqG.js +1 -0
- package/dist/client/assets/left-plan-BNBuDoPQ.js +2 -0
- package/dist/client/assets/library-DbCVJG_O.js +1 -0
- package/dist/client/assets/{loader-circle-lWOOKezu.js → loader-circle-Byb9kSFx.js} +1 -1
- package/dist/client/assets/{local-agents-C7fDHLVC.js → local-agents-DBaUbP-_.js} +1 -1
- package/dist/client/assets/{mentions-CY_wPZc5.js → mentions-fbQJ2mBI.js} +1 -1
- package/dist/client/assets/{mesh-ops-Kn8pCtyJ.js → mesh-ops-Cnw3vwAu.js} +1 -1
- package/dist/client/assets/{mesh-view-store-D14ihwkF.js → mesh-view-store-Btlyc7rW.js} +1 -1
- package/dist/client/assets/{message-circle-C5UZ6fO7.js → message-circle-aGOfQWm2.js} +1 -1
- package/dist/client/assets/{message-markup-C8Nx04sP.js → message-markup-mGF07emJ.js} +1 -1
- package/dist/client/assets/{message-square-BD-4UUdc.js → message-square-CIXda-Y7.js} +1 -1
- package/dist/client/assets/mission-control-m3BTDQ9l.css +1 -0
- package/dist/client/assets/{mission-control-store-xQHVQdm8.js → mission-control-store-CcoNeQHG.js} +1 -1
- package/dist/client/assets/mission-wall-CocIM1cF.js +1 -0
- package/dist/client/assets/{observe-uJfIlIUV.js → observe-BNFzh-7B.js} +1 -1
- package/dist/client/assets/openAgent-Dbv5wfuL.js +1 -0
- package/dist/client/assets/{page-status-BymFEFai.js → page-status-DDvNdA8s.js} +1 -1
- package/dist/client/assets/{paperclip-DL9BXPp2.js → paperclip-DfpJkR4s.js} +1 -1
- package/dist/client/assets/{plus-C9lTjsgd.js → plus-CmFQp9Uj.js} +1 -1
- package/dist/client/assets/profile-s3KRbip1.js +1 -0
- package/dist/client/assets/{projects-inbox-DfVmGFFk.js → projects-inbox-Diddml6e.js} +1 -1
- package/dist/client/assets/{radio-DedMyP8J.js → radio-PauJIekM.js} +1 -1
- package/dist/client/assets/{refresh-cw-D8PFyhUa.js → refresh-cw-4oeFn1Jn.js} +1 -1
- package/dist/client/assets/resolve-panes-cp6eNewO.js +1 -0
- package/dist/client/assets/resolve-sidebar-context-Dbo-5PWx.js +1 -0
- package/dist/client/assets/right-09W2JJFg.js +1 -0
- package/dist/client/assets/right-B-MKhiJ6.js +1 -0
- package/dist/client/assets/right-B91Zl8lQ.js +1 -0
- package/dist/client/assets/{right-C1sIsSHR.js → right-BcFnuse9.js} +1 -1
- package/dist/client/assets/right-BdtMzn35.js +1 -0
- package/dist/client/assets/right-BqmKXLtf.js +1 -0
- package/dist/client/assets/right-BzeB-Dpt.js +1 -0
- package/dist/client/assets/right-CkGOs-sq.js +1 -0
- package/dist/client/assets/right-CzGiNBzB.js +1 -0
- package/dist/client/assets/right-Dc7uqv7l.js +1 -0
- package/dist/client/assets/{rocket-CriBwkHM.js → rocket-C-AskjZH.js} +1 -1
- package/dist/client/assets/router-B-K15T7B.js +1 -0
- package/dist/client/assets/{runtime-picker-DOZpZOlt.js → runtime-picker-BCQD7d4K.js} +1 -1
- package/dist/client/assets/{scope-views-BF_RvGKU.js → scope-views-BhkbIFPY.js} +1 -1
- package/dist/client/assets/{scout-voice-BZ4KqADJ.js → scout-voice-S5_YZ2v8.js} +1 -1
- package/dist/client/assets/{scroll-text-BIYf6g6N.js → scroll-text-BV-BB7v-.js} +1 -1
- package/dist/client/assets/{search-DCT_EvPr.js → search-C3bSJluv.js} +1 -1
- package/dist/client/assets/{secondaryNavConfig-Drb7wPG4.js → secondaryNavConfig-Bg4Tc0gT.js} +1 -1
- package/dist/client/assets/{selection-bridge-CJOTyYQs.js → selection-bridge-B1dmkX3P.js} +1 -1
- package/dist/client/assets/{send-horizontal-DDwOgEs3.js → send-horizontal-CqogPmbY.js} +1 -1
- package/dist/client/assets/{server-CHZCp3cF.js → server-Brw5Y1Gh.js} +1 -1
- package/dist/client/assets/{session-catalog-XhGxCtP-.js → session-catalog-9FqXmjBw.js} +1 -1
- package/dist/client/assets/session-table-1xdSxSXq.js +1 -0
- package/dist/client/assets/{sliders-horizontal-B9Nj-Y4J.js → sliders-horizontal-CUiOH26y.js} +1 -1
- package/dist/client/assets/{sparkles-up7pVlX-.js → sparkles-BjCA3Evu.js} +1 -1
- package/dist/client/assets/{sse-CVoGDiKW.js → sse-QcU9bikk.js} +1 -1
- package/dist/client/assets/synthetic-agent-routing-aduMYO7P.js +1 -0
- package/dist/client/assets/system-surfaces-redesign-B7GQhfpw.css +1 -0
- package/dist/client/assets/{tail-display-BdyoLvzY.js → tail-display-BRcJltQa.js} +2 -2
- package/dist/client/assets/{tail-events-CTipUIli.js → tail-events-C6K7bCWB.js} +1 -1
- package/dist/client/assets/{terminal-DXQISjZn.js → terminal-DrTkVXIj.js} +1 -1
- package/dist/client/assets/{terminal-relay-B5Sma7fK.js → terminal-relay-BkXjjSkq.js} +1 -1
- package/dist/client/assets/{terminal-screen-19jAI0Cw.css → terminal-screen-BqVnCwl0.css} +1 -1
- package/dist/client/assets/terminal-sessions-C3qU8tnY.js +1 -0
- package/dist/client/assets/{terminal-takeover-X97KCSJk.js → terminal-takeover-KvmTwABa.js} +1 -1
- package/dist/client/assets/{use-conversation-list-B1T6J_qE.js → use-conversation-list-C5sF6WBR.js} +1 -1
- package/dist/client/assets/{use-fleet-active-asks-DLofGhhK.js → use-fleet-active-asks-BOMPW0nl.js} +1 -1
- package/dist/client/assets/{use-mesh-ops-items-ByGZk8rU.js → use-mesh-ops-items-Co05vcTV.js} +1 -1
- package/dist/client/assets/{use-reduced-motion-Cvk-HRKg.js → use-reduced-motion-Dla-G_Jz.js} +1 -1
- package/dist/client/assets/{use-scout-dev-flags-BHvg3G2c.js → use-scout-dev-flags-BOQF3fW2.js} +1 -1
- package/dist/client/assets/{useAgentHoverCard-D5e8Qg1z.js → useAgentHoverCard-FtCmY-b9.js} +1 -1
- package/dist/client/assets/useContentSecondaryNav-BX7Sq7vy.js +1 -0
- package/dist/client/assets/{usePierreRuntime-DIVunfX0.js → usePierreRuntime-Bo4lD7Ui.js} +1 -1
- package/dist/client/assets/{wrench-pEVd8JnN.js → wrench-CeCdjiPF.js} +1 -1
- package/dist/client/assets/{x-0XjXwGqq.js → x-D4X_y1j_.js} +1 -1
- package/dist/client/assets/{xterm-CRLlV1Xp.js → xterm-D2a5wrkJ.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/main.mjs +1404 -356
- package/dist/node/main.mjs +63 -15
- package/dist/openscout-terminal-relay.mjs +16 -4
- package/dist/pairing-runtime-controller.mjs +3028 -2946
- package/dist/runtime/broker-daemon.mjs +356 -134
- package/dist/scout-control-plane-web.mjs +5631 -5183
- package/dist/scout-web-server.mjs +5631 -5183
- package/package.json +1 -1
- package/dist/client/assets/ActivityScreen-DnqqRSlS.js +0 -1
- package/dist/client/assets/AgentConfigurationScreen-CJqoMA0J.js +0 -1
- package/dist/client/assets/AgentDefinitionsWorkspace-FpEkb-tu.js +0 -1
- package/dist/client/assets/AgentFloorView-CycUn0Lv.js +0 -1
- package/dist/client/assets/AgentInfoScreen-CAQAxpAK.js +0 -1
- package/dist/client/assets/AgentLaneDetailSheet-CWs9wKWk.js +0 -5
- package/dist/client/assets/AgentLanesEmbedScreen-BUCW4nUj.js +0 -1
- package/dist/client/assets/AgentsScreen-BMXvuiA2.js +0 -1
- package/dist/client/assets/AgentsSubnav-BTNjPYoA.js +0 -1
- package/dist/client/assets/BrokerScreen-CObCQvoy.js +0 -5
- package/dist/client/assets/CodeScreen-BXqi72NK.js +0 -1
- package/dist/client/assets/ConversationComposer-BBNPa5S9.js +0 -1
- package/dist/client/assets/ConversationFeedRows-BuejHMCY.js +0 -1
- package/dist/client/assets/ConversationHeader-DXMT-YXv.js +0 -1
- package/dist/client/assets/ConversationPanels-DHCtilQF.js +0 -2
- package/dist/client/assets/ConversationScreen-DSxIt9pq.css +0 -1
- package/dist/client/assets/ConversationScreen-Dz2d_Z_F.js +0 -1
- package/dist/client/assets/FlightObserveScreen-C-9S0nA5.js +0 -1
- package/dist/client/assets/FollowScreen--Q04xSSE.js +0 -1
- package/dist/client/assets/HarnessMark-Dm_qm1Ku.js +0 -1
- package/dist/client/assets/HarnessesScreen-Y54viPX8.js +0 -1
- package/dist/client/assets/KnowledgeSearchScreen-DsdDz8wY.js +0 -1
- package/dist/client/assets/LaneTraceDetailSheet-CBf_aNZx.js +0 -1
- package/dist/client/assets/MeshScreen-TgDtz-1l.js +0 -1
- package/dist/client/assets/MessagesScreen-BTQL0UcE.js +0 -1
- package/dist/client/assets/MissionControlView-D59SPnAm.js +0 -1
- package/dist/client/assets/MissionLogPane-Ye3YlF9s.js +0 -1
- package/dist/client/assets/NewChatComposer-B5FnPyzS.js +0 -19
- package/dist/client/assets/NewChatComposer-W-t-L4oV.css +0 -1
- package/dist/client/assets/OpenScoutAppShell-BIp0WitK.js +0 -87
- package/dist/client/assets/OpsAgentsView-CoBfAigH.js +0 -1
- package/dist/client/assets/OpsScreen-Bbo0W64T.js +0 -1
- package/dist/client/assets/OpsSubnav-CoN8utF8.js +0 -1
- package/dist/client/assets/ProjectAgentProfile-FiiIcB5R.js +0 -1
- package/dist/client/assets/ProjectsInbox-BWiXjGi7.js +0 -2
- package/dist/client/assets/ProjectsScreen-Cxk4CuYn.js +0 -1
- package/dist/client/assets/ProjectsThreadAside-BF66ugT5.js +0 -1
- package/dist/client/assets/Provider-tFc3jqZ4.js +0 -1
- package/dist/client/assets/RawSessionsTable-BsGVgZB3.js +0 -1
- package/dist/client/assets/RealtimeVoiceScreen-B0Bem5Rc.js +0 -1
- package/dist/client/assets/RepoDiffViewerLazy-C8UPk4oo.js +0 -2
- package/dist/client/assets/SessionRefScreen-D7TfPYPN.js +0 -1
- package/dist/client/assets/SessionsScreen-BlknOWAd.js +0 -1
- package/dist/client/assets/SettingsScreen-BIlYxv_a.js +0 -1
- package/dist/client/assets/Terminal-DwZyo8kA.js +0 -1
- package/dist/client/assets/TerminalEmbedScreen-Czp3tQyd.js +0 -1
- package/dist/client/assets/agent-chat-Bfjd9y6c.js +0 -1
- package/dist/client/assets/agent-identity-xQHedtLl.js +0 -1
- package/dist/client/assets/agent-lane-detail-Cw4QVAgH.js +0 -1
- package/dist/client/assets/chunk-YOZR3KYS-BW85tiCr.js +0 -47
- package/dist/client/assets/content-2u_eV3fX.js +0 -1
- package/dist/client/assets/content-5irOghrY.js +0 -1
- package/dist/client/assets/content-8Z_0CwtD.js +0 -1
- package/dist/client/assets/content-B38YRDBu.js +0 -1
- package/dist/client/assets/content-BE3uK0LB.js +0 -1
- package/dist/client/assets/content-BtIxSqVY.js +0 -1
- package/dist/client/assets/content-CFsPAihU.js +0 -1
- package/dist/client/assets/content-CHU0wwA3.css +0 -1
- package/dist/client/assets/content-CKj5g5tu.js +0 -1
- package/dist/client/assets/content-CLDWXf9Z.js +0 -1
- package/dist/client/assets/content-CRr73E0r.js +0 -1
- package/dist/client/assets/content-CVR75_Uj.js +0 -1
- package/dist/client/assets/content-Czdp7_JQ.js +0 -1
- package/dist/client/assets/content-D0_EJ6nP.js +0 -1
- package/dist/client/assets/content-DNmxpNhD.js +0 -1
- package/dist/client/assets/content-XpbI9uxd.js +0 -1
- package/dist/client/assets/content-cyxWdgKQ.js +0 -1
- package/dist/client/assets/conversation-model-C4yb6_FA.js +0 -1
- package/dist/client/assets/conversation-motion-features-CifSdJtm.js +0 -1
- package/dist/client/assets/discover-DoiAJo4Z.js +0 -2
- package/dist/client/assets/embed-entry-D1Or9S4d.js +0 -2
- package/dist/client/assets/home-live-action-B22u89j7.js +0 -1
- package/dist/client/assets/home-moving-signal-BdkERL6B.js +0 -1
- package/dist/client/assets/home-now-card-lLkv6nQs.js +0 -1
- package/dist/client/assets/hooks-BPLDD9yu.js +0 -2
- package/dist/client/assets/index-DGoLx89y.js +0 -1
- package/dist/client/assets/index-DITWsjFb.css +0 -1
- package/dist/client/assets/index-m6dFtY5f.js +0 -1
- package/dist/client/assets/index-pY8-Mz7y.js +0 -1
- package/dist/client/assets/keyboard-nav-BhZZ5HEq.js +0 -1
- package/dist/client/assets/left-B6eawimv.js +0 -1
- package/dist/client/assets/left-BL2uBHe0.js +0 -2
- package/dist/client/assets/left-BNJguPDG.js +0 -1
- package/dist/client/assets/left-BvCtvN0f.js +0 -1
- package/dist/client/assets/left-CfBb6bxM.js +0 -1
- package/dist/client/assets/left-DTrlBF0h.js +0 -2
- package/dist/client/assets/left-agents-DsOHgDCY.js +0 -1
- package/dist/client/assets/left-d4hlBBxY.js +0 -1
- package/dist/client/assets/left-default-BRCwoCJr.js +0 -1
- package/dist/client/assets/left-lanes-DNtoRzoV.js +0 -1
- package/dist/client/assets/left-mission-DsTu2X5Y.js +0 -1
- package/dist/client/assets/left-plan-CtySjsXC.js +0 -2
- package/dist/client/assets/library-CLpgWNJO.js +0 -1
- package/dist/client/assets/mission-control-D3ikEPND.css +0 -1
- package/dist/client/assets/openAgent-Bjt57GdM.js +0 -1
- package/dist/client/assets/profile-BqY5tesX.js +0 -1
- package/dist/client/assets/resolve-panes-1xeZMuaw.js +0 -1
- package/dist/client/assets/resolve-sidebar-context-PLr32WHN.js +0 -1
- package/dist/client/assets/right-1x7HzabC.js +0 -1
- package/dist/client/assets/right-CFzPUzlF.js +0 -1
- package/dist/client/assets/right-CRKyeJDk.js +0 -1
- package/dist/client/assets/right-CagzkLWg.js +0 -1
- package/dist/client/assets/right-CsV149pN.js +0 -1
- package/dist/client/assets/right-DITNyG2s.js +0 -1
- package/dist/client/assets/right-E3nNcLE3.js +0 -1
- package/dist/client/assets/right-eUQvSjd7.js +0 -1
- package/dist/client/assets/right-ozp4nM44.js +0 -1
- package/dist/client/assets/router-Dja9_ygK.js +0 -1
- package/dist/client/assets/session-table-sAVe44a4.js +0 -1
- package/dist/client/assets/system-surfaces-redesign-CD26LFc0.css +0 -1
- package/dist/client/assets/terminal-sessions-D5CIR2OL.js +0 -1
- package/dist/client/assets/useContentSecondaryNav-ZfBNi3d4.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
.s-term{height:100%;display:flex;flex-direction:column;background:#0d0d0d;overflow:hidden;container-type:inline-size}.s-terminal-embed{width:100vw;height:100vh;min-height:0;overflow:hidden;background:#0d0d0d}.s-term-bar{display:flex;align-items:center;gap:var(--space-md);padding:0 var(--space-3xl);height:48px;flex:none;border-bottom:1px solid rgba(255,255,255,.06);background:#111}.s-term-bar>*{min-width:0}.s-term-bar--takeover{display:grid;grid-template-columns:minmax(220px,auto) minmax(140px,1fr) auto;column-gap:var(--space-2xl)}.s-term-bar-left,.s-term-bar-meta,.s-term-bar-actions{display:flex;align-items:center;min-width:0}.s-term-bar-left,.s-term-bar-meta{gap:var(--space-lg)}.s-term-bar-actions{gap:var(--space-md);justify-content:flex-end}.s-term-action-cluster{display:inline-flex;align-items:center;gap:var(--space-2xs);flex:none;min-width:0}.s-term-action-cluster--signals{padding-left:var(--space-sm);margin-left:var(--space-2xs);border-left:1px solid rgba(251,191,36,.18)}.s-term-back{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-md);color:#fff6;background:none;border:none;cursor:pointer;padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-sm);flex:none;white-space:nowrap;transition:color .12s,background .12s}.s-term-back:hover{color:#ffffffbf;background:var(--scout-chrome-hover)}.s-term-agent{display:flex;align-items:center;gap:var(--space-sm);flex:0 1 min(300px,24vw);max-width:min(300px,24vw);min-width:0}.s-term-agent-name{font-size:var(--text-md);font-weight:500;color:#ffffffd9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-agent-handle{font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffff59;letter-spacing:var(--tracking-sm);flex:0 1 auto;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-label{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);color:#ffffff40;text-transform:uppercase;flex:none;white-space:nowrap}.s-term-session{min-width:0;flex:1 1 180px;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffff6b}.s-term-action{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);border:1px solid rgba(94,234,212,.22);border-radius:var(--radius-sm);background:#5eead414;color:#dbfff8d1;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);min-width:auto;height:30px;padding:0 var(--space-md);text-transform:uppercase;white-space:nowrap;flex:none}.s-term-action:hover:not(:disabled){background:#5eead424;color:#f0fffcf2}.s-term-action:disabled{cursor:not-allowed;opacity:.58}.s-term-action--warn{border-color:#fbbf243d;background:#fbbf2414;color:#ffedb4db}.s-term-action--warn:hover:not(:disabled){background:#fbbf2424;color:#fff7d6f5}.s-term-action--danger{border-color:#f8717147;background:#f8717114;color:#ffdcdce0}.s-term-action--danger:hover:not(:disabled){background:#f8717126;color:#fff0f0fa}.s-term-session-menu{border-color:#ffffff29;background:#ffffff0e;color:#ffffffb8}.s-term-session-menu:hover:not(:disabled){background:#ffffff1a;color:#ffffffe6}.s-term-registered-chip{display:inline-flex;align-items:center;gap:var(--space-sm);min-width:0;max-width:min(520px,42vw);color:#ffffffb3;font-family:var(--font-mono);font-size:var(--text-xs)}.s-term-registered-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-registered-chip span:last-child{color:#ffffff61}.s-term-status{margin-left:var(--space-3xs);display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff4d;flex:none;white-space:nowrap}.s-term-icon-button{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:none;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0e;color:#ffffffa3;cursor:pointer}.s-term-icon-button:hover:not(:disabled){background:#ffffff1a;color:#ffffffeb}.s-term-icon-button:disabled{cursor:progress;opacity:.52}.s-term-icon-button--danger{border-color:#f8717133;color:#ffd2d2b8}.s-term-icon-button--danger:hover:not(:disabled){background:#f871711f;color:#ffe8e8f0}@container (max-width: 980px){.s-term-bar--takeover{grid-template-columns:minmax(0,1fr);height:auto;min-height:86px;align-content:center;row-gap:var(--space-sm);padding:var(--space-md) var(--space-xl)}.s-term-bar-left,.s-term-bar-meta,.s-term-bar-actions{width:100%}.s-term-bar-left{gap:var(--space-md)}.s-term-bar-actions{justify-content:flex-start;flex-wrap:wrap}.s-term-action-cluster{flex-wrap:wrap}.s-term-bar--takeover .s-term-agent{flex:1 1 auto;max-width:none}.s-term-bar--takeover .s-term-session{flex-basis:160px}}@container (max-width: 520px){.s-term-bar--takeover .s-term-agent-handle{display:none}.s-term-action{height:28px;padding:0 var(--space-md)}}.s-term-body{flex:1;min-height:0;overflow:hidden}.s-term--empty-main{display:grid;place-items:center}.s-term--summary{justify-content:flex-start;padding:clamp(24px,5vh,52px) clamp(24px,5vw,72px);overflow:auto}.s-term--home{justify-content:flex-start;padding:clamp(22px,4vh,42px) clamp(20px,4vw,58px);overflow:auto}.s-term--workspace{justify-content:flex-start;padding:clamp(16px,3vh,32px) clamp(16px,3vw,44px);overflow:auto}.s-term-workspace{width:min(1480px,100%);min-height:100%;display:grid;grid-template-rows:auto;gap:var(--space-xl);align-self:center}.s-term-workspace-head{min-width:0;display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-2xl)}.s-term-workspace-title{min-width:0;display:grid;gap:var(--space-sm)}.s-term-workspace-title h1{min-width:0;margin:0;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:clamp(22px,3vw,34px);font-weight:520;line-height:var(--leading-tight);letter-spacing:0;color:#ffffffe6}.s-term-workspace-title p{max-width:680px;margin:0;font-size:var(--text-sm);color:#fff6}.s-term--workspace-library,.s-term--workspace-builder{justify-content:flex-start;padding:clamp(22px,4vh,44px) clamp(20px,4vw,58px);overflow:auto}.s-term-workspace-library,.s-term-workspace-builder{width:min(1380px,100%);display:grid;gap:var(--space-3xl);align-self:center}.s-term-workspace-library-head,.s-term-workspace-builder-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-2xl)}.s-term-workspace-library-head>div:first-child,.s-term-workspace-builder-head>div:first-child{min-width:0;display:grid;gap:var(--space-sm)}.s-term-workspace-library-head h1,.s-term-workspace-builder-head h1{margin:0;font-family:var(--font-mono);font-size:clamp(28px,4vw,46px);font-weight:520;line-height:var(--leading-tight);color:#ffffffeb}.s-term-workspace-library-head p,.s-term-workspace-builder-head p{max-width:720px;margin:0;color:#ffffff6b;font-size:var(--text-sm)}.s-term-workspace-library-empty{min-height:420px;display:grid;place-items:center;align-content:center;gap:var(--space-lg);border:1px dashed rgba(94,234,212,.2);border-radius:var(--radius-md);background:#5eead406;text-align:center;color:#dbfff899}.s-term-workspace-library-empty h2,.s-term-workspace-library-empty p{margin:0}.s-term-workspace-library-empty h2{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:520;color:#fffc}.s-term-workspace-library-empty p{max-width:520px;color:#ffffff61}.s-term-workspace-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:var(--space-lg)}.s-term-workspace-card{min-width:0;display:grid;gap:var(--space-lg);padding:var(--space-lg);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-md);background:#ffffff06}.s-term-workspace-card-preview{height:108px;display:grid;grid-template-columns:repeat(var(--terminal-grid-columns, 2),minmax(0,1fr));gap:var(--space-xs);padding:var(--space-sm);border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-sm);background:#090909}.s-term-workspace-card-preview span{min-width:0;border:1px solid rgba(255,255,255,.09);border-radius:3px;background:#ffffff09}.s-term-workspace-card-preview span.is-session{border-color:#5eead433;background:#5eead411}.s-term-workspace-card-copy{min-width:0;display:grid;gap:var(--space-xs)}.s-term-workspace-card-copy>span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#5eead475}.s-term-workspace-card-copy h2,.s-term-workspace-card-copy p{margin:0}.s-term-workspace-card-copy h2{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:520;color:#ffffffd6}.s-term-workspace-card-copy p{min-height:38px;color:#ffffff61;font-size:var(--text-sm)}.s-term-workspace-card-actions,.s-term-workspace-builder-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);flex-wrap:wrap}.s-term-workspace-builder-identity{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(280px,1.3fr);gap:var(--space-lg);padding:var(--space-lg);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-md);background:#ffffff05}.s-term-workspace-builder-identity label{min-width:0;display:grid;gap:var(--space-sm)}.s-term-workspace-builder-identity label>span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffff61}.s-term-workspace-builder-identity input{min-width:0;height:40px;padding:0 var(--space-md);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);background:#0a0a0a;color:#ffffffd6;font-family:var(--font-mono);font-size:var(--text-sm);outline:none}.s-term-workspace-builder-identity input:focus{border-color:#5eead46b;box-shadow:0 0 0 2px #5eead412}.s-term-workspace-builder-layout,.s-term-workspace-builder-placement{min-width:0;display:grid;gap:var(--space-lg)}.s-term-workspace-builder-section-head{display:flex;align-items:end;justify-content:space-between;gap:var(--space-lg)}.s-term-workspace-builder-section-head>div{display:grid;gap:var(--space-xs)}.s-term-workspace-builder-section-head span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#5eead485}.s-term-workspace-builder-section-head h2,.s-term-workspace-builder-section-head p{margin:0}.s-term-workspace-builder-section-head h2{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:520;color:#fffc}.s-term-workspace-builder-section-head p{font-size:var(--text-sm);color:#ffffff57}.s-term-workspace-builder-canvas{min-width:0;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:var(--space-lg);align-items:stretch}.s-term-workspace-builder-grid{min-width:0;display:grid;grid-template-columns:repeat(var(--terminal-grid-columns, 2),minmax(0,1fr));gap:var(--space-sm);padding:var(--space-md);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-md);background:#090909}.s-term-workspace-builder-cell{position:relative;min-width:0;min-height:154px;display:grid;place-items:center;align-content:center;gap:var(--space-sm);padding:var(--space-md);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-sm);background:#ffffff05;color:#ffffff61;cursor:pointer;font-family:var(--font-mono)}.s-term-workspace-builder-cell.is-selected{border-color:#5eead494;background:#5eead412;box-shadow:inset 0 0 0 1px #5eead41f}.s-term-workspace-builder-cell-select{min-width:0;width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:var(--space-sm);border:0;background:transparent;color:inherit;cursor:pointer;font-family:inherit}.s-term-workspace-builder-cell-remove{position:absolute;top:var(--space-xs);right:var(--space-xs);display:grid;place-items:center;width:22px;height:22px;border:1px solid transparent;border-radius:var(--radius-xs);background:transparent;color:#ffffff52;cursor:pointer}.s-term-workspace-builder-cell-remove:hover{border-color:#f8717152;color:#f87171db}.s-term-workspace-builder-cell--add{color:#ffffff6b;border-style:dashed}.s-term-workspace-builder-cell--add:hover{border-color:#5eead45c;color:#ffffffc7}.s-term-workspace-builder-columns{display:flex;align-items:center;gap:var(--space-xs);margin-top:var(--space-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff5c;text-transform:uppercase}.s-term-workspace-builder-columns button{min-width:26px;padding:3px 6px;border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-xs);background:#ffffff06;color:#fff9;font-family:inherit;font-size:var(--text-2xs);cursor:pointer}.s-term-workspace-builder-columns button.is-selected{border-color:#5eead46b;background:#5eead417;color:#ffffffeb}.s-term-workspace-builder-cell-select>span{justify-self:start;align-self:start;font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff47}.s-term-workspace-builder-cell strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);font-weight:520;color:#ffffffbd}.s-term-workspace-builder-cell small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-2xs);color:#ffffff4d}.s-term-workspace-builder-source{min-width:0;display:grid;align-content:start;gap:var(--space-md);padding:var(--space-lg);border:1px solid rgba(94,234,212,.14);border-radius:var(--radius-md);background:#5eead406}.s-term-workspace-builder-source>span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#5eead494}.s-term-workspace-builder-source h3{margin:0;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:520;text-transform:uppercase;letter-spacing:var(--tracking-md);color:#fff9}.s-term-workspace-builder-source-actions{display:flex;gap:var(--space-xs);flex-wrap:wrap}.s-term-workspace-builder-source-actions button,.s-term-workspace-builder-sessions button{border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-sm);background:#ffffff06;color:#ffffff94;cursor:pointer;font-family:var(--font-mono)}.s-term-workspace-builder-source-actions button{height:30px;padding:0 var(--space-md);font-size:var(--text-2xs);text-transform:uppercase}.s-term-workspace-builder-source-actions button:hover,.s-term-workspace-builder-sessions button:hover{border-color:#5eead452;background:#5eead40f;color:#ffffffd1}.s-term-workspace-builder-sessions{max-height:320px;display:grid;overflow:auto;border-top:1px solid rgba(255,255,255,.07)}.s-term-workspace-builder-sessions button{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border-width:0 0 1px;text-align:left}.s-term-workspace-builder-sessions button>span{min-width:0;display:grid;gap:var(--space-3xs)}.s-term-workspace-builder-sessions strong,.s-term-workspace-builder-sessions small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-workspace-builder-sessions strong{font-size:var(--text-xs);font-weight:520}.s-term-workspace-builder-sessions small,.s-term-workspace-builder-sessions em,.s-term-workspace-builder-no-sessions{font-size:var(--text-2xs);font-style:normal;color:#ffffff4d}.s-term-workspace-builder-no-sessions{padding:var(--space-xl) 0;text-align:center;text-transform:uppercase}.s-term-workspace-actions,.s-term-workspace-empty-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);flex-wrap:wrap}.s-term-workspace-action{height:34px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);flex:none;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0e;color:#ffffffb8;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);padding:0 var(--space-lg);text-transform:uppercase;white-space:nowrap}.s-term-workspace-action:hover:not(:disabled){background:#ffffff1a;color:#ffffffeb}.s-term-workspace-action:disabled{cursor:not-allowed;opacity:.5}.s-term-workspace-action--primary{border-color:#5eead447;background:#5eead41a;color:#dbfff8e6}.s-term-workspace-action--primary:hover:not(:disabled){background:#5eead429}.s-term-workspace-empty{min-height:clamp(300px,42vh,460px);display:grid;place-items:center;align-content:center;gap:var(--space-lg);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);background:linear-gradient(180deg,rgba(94,234,212,.035),transparent 42%),#ffffff05;color:#ffffff73;font-family:var(--font-mono)}.s-term-workspace-empty strong{font-size:var(--text-sm);font-weight:520;letter-spacing:var(--tracking-md);text-transform:uppercase;color:#ffffff9e}.s-term-workspace-grid{min-width:0;display:grid;grid-template-columns:repeat(var(--terminal-grid-columns, 2),minmax(0,1fr));gap:var(--space-lg);align-content:start;align-items:stretch}.s-term-grid-setup{min-width:0;display:grid;gap:var(--space-xl);padding:clamp(18px,3vw,30px);border:1px solid rgba(94,234,212,.16);border-radius:var(--radius-md);background:radial-gradient(circle at 100% 0%,rgba(94,234,212,.08),transparent 34%),#ffffff06}.s-term-grid-setup-copy{display:grid;gap:var(--space-xs)}.s-term-grid-setup-kicker{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#5eead49e}.s-term-grid-setup-copy h2,.s-term-grid-setup-copy p{margin:0}.s-term-grid-setup-copy h2{max-width:720px;font-family:var(--font-mono);font-size:clamp(17px,2vw,23px);font-weight:520;color:#ffffffe0}.s-term-grid-setup-copy p{font-size:var(--text-sm);color:#ffffff6b}.s-term-grid-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm)}.s-term-grid-preset{min-width:0;display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto;column-gap:var(--space-md);align-items:center;padding:var(--space-md);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-sm);background:#ffffff06;color:#ffffff94;text-align:left;cursor:pointer}.s-term-grid-preset:hover,.s-term-grid-preset--selected{border-color:#5eead447;background:#5eead412;color:#ffffffe6}.s-term-grid-preset:focus-visible,.s-term-grid-slot-options button:focus-visible{outline:1px solid rgba(94,234,212,.72);outline-offset:2px}.s-term-grid-preset-map{grid-row:1 / -1;width:52px;height:34px;display:grid;grid-template-columns:repeat(var(--terminal-preset-columns),minmax(0,1fr));gap:3px}.s-term-grid-preset-map i{min-width:0;border:1px solid currentColor;border-radius:2px;background:currentColor;opacity:.36}.s-term-grid-preset-label,.s-term-grid-preset-detail{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.s-term-grid-preset-label{font-size:var(--text-xs);letter-spacing:var(--tracking-md);text-transform:uppercase}.s-term-grid-preset-detail{font-size:var(--text-2xs);color:#ffffff52}.s-term-grid-slots{min-width:0;display:grid;grid-template-columns:repeat(var(--terminal-preset-columns),minmax(0,1fr));gap:var(--space-sm)}.s-term-grid-slot{min-width:0;min-height:112px;display:grid;align-content:space-between;gap:var(--space-lg);padding:var(--space-md);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);background:#0a0a0a}.s-term-grid-slot-head{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff4d}.s-term-grid-slot-options{display:flex;gap:var(--space-2xs);flex-wrap:wrap}.s-term-grid-slot-options button{min-height:25px;padding:0 var(--space-sm);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:#ffffff5c;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);text-transform:uppercase}.s-term-grid-slot-options button:hover{color:#ffffffb8;background:#ffffff0d}.s-term-grid-slot-options button.is-selected{border-color:#5eead438;background:#5eead417;color:#dbfff8db}.s-term-grid-setup-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding-top:var(--space-sm);border-top:1px solid rgba(255,255,255,.07);font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffff57}.s-term-grid-setup-actions{display:flex;align-items:center;gap:var(--space-sm);flex:none}.s-term-workspace-tile{min-width:0;height:clamp(360px,44vh,620px);min-height:360px;overflow:hidden;border:1px solid rgba(255,255,255,.095);border-radius:var(--radius-sm);background:#090909;box-shadow:0 18px 52px #0000003d}.s-term-workspace-cell{min-width:0;border-radius:var(--radius-sm);transition:opacity .12s ease,box-shadow .12s ease,transform .12s ease}.s-term-workspace-cell .s-term-bar{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.s-term-workspace-cell .s-term-bar:active{cursor:grabbing}.s-term-workspace-cell .s-term-bar button,.s-term-workspace-cell .s-term-bar a{cursor:pointer}.s-term-workspace-cell--dragging{opacity:.42;transform:scale(.985)}.s-term-workspace-cell--drop-target{box-shadow:0 0 0 2px #5eead4b8,0 18px 52px #00000047}.s-term-workspace-add-cell{min-width:0;height:150px;min-height:150px;display:grid;place-items:center;align-content:center;gap:var(--space-sm);border:1px dashed rgba(94,234,212,.32);border-radius:var(--radius-sm);background:#5eead409;color:#dbfff885;cursor:pointer;font-family:var(--font-mono);transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.s-term-workspace-add-cell strong{font-size:var(--text-xs);font-weight:520;letter-spacing:var(--tracking-lg);text-transform:uppercase}.s-term-workspace-add-cell span{font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:#ffffff4d}.s-term-workspace-add-cell--target{border-color:#5eead4e0;background:#5eead41a;box-shadow:inset 0 0 0 1px #5eead43d}.s-term-workspace-tile>.s-term{height:100%}.s-term-workspace-tile--unavailable{display:grid;grid-template-rows:auto 1fr;border-style:dashed;background:#ffffff05}.s-term-workspace-unavailable-body{display:grid;place-content:center;justify-items:center;gap:var(--space-sm);padding:var(--space-2xl);text-align:center;color:#ffffff47}.s-term-workspace-unavailable-body strong{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:520;color:#ffffff9e}.s-term-workspace-unavailable-body span{max-width:36ch;font-size:var(--text-xs);line-height:1.55}.s-term-workspace-tile-mark{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;flex:none;border:1px solid rgba(94,234,212,.18);border-radius:var(--radius-sm);color:#dbfff8c2;background:#5eead40f}.s-term-attach{min-width:0;display:grid;gap:var(--space-md)}.s-term-attach-grid{min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:var(--space-sm)}.s-term-attach-card{min-width:0;min-height:58px;display:grid;grid-template-columns:24px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid rgba(255,255,255,.095);border-radius:var(--radius-sm);background:#ffffff08;color:inherit;cursor:grab}.s-term-attach-card:hover,.s-term-attach-card:focus-visible{border-color:#5eead447;background:#5eead40e;outline:none}.s-term-attach-card:active{cursor:grabbing}.s-term-attach-card--active{cursor:default;opacity:.66}.s-term-attach-card-icon{display:inline-flex;align-items:center;justify-content:center;color:#dbfff8bd}.s-term-attach-card-copy{min-width:0;display:grid;gap:2px}.s-term-attach-card-title,.s-term-attach-card-detail{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.s-term-attach-card-title{font-size:var(--text-xs);color:#ffffffc7}.s-term-attach-card-detail{font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff57}.s-term-attach-card-badges{min-width:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-3xs)}.s-term-attach-card-badges span{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1px var(--space-2xs);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff6b;text-transform:uppercase}.s-term-attach-empty{min-height:58px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff57;text-transform:uppercase}.s-term-workspace-tile-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffffc2}.s-term-workspace-dock{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2xl);align-items:start}.s-term-picker{min-width:0;display:grid;gap:var(--space-md);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-sm);background:#ffffff05}.s-term-picker--collapsed{gap:0}.s-term-picker-head{min-width:0;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding:var(--space-sm) var(--space-md);border-bottom:1px solid rgba(255,255,255,.07)}.s-term-picker--collapsed .s-term-picker-head{border-bottom:0}.s-term-picker-title,.s-term-picker-actions{min-width:0;display:flex;align-items:center;gap:var(--space-sm)}.s-term-picker-title{color:#dbfff8ad}.s-term-picker-title h2{margin:0;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:520;letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffffb8}.s-term-picker-title>span{padding:1px var(--space-xs);border-radius:var(--radius-sm);background:#ffffff0f;font-family:var(--font-mono);font-size:var(--text-2xs);color:#ffffff61}.s-term-picker-toggle{display:inline-flex;align-items:center;gap:var(--space-sm);border:0;background:transparent;color:#fff6;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase}.s-term-picker-toggle:hover{color:#ffffffc2}.s-term-picker-hint{margin:0;padding:0 var(--space-md);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff52}.s-term-picker-list{min-width:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));max-height:210px;overflow:auto;border-top:1px solid rgba(255,255,255,.06)}.s-term-picker-item{min-width:0;min-height:62px;display:grid;grid-template-columns:18px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-right:1px solid rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.055);background:#ffffff03;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:background .12s ease,opacity .12s ease}.s-term-picker-item:hover{background:#ffffff09}.s-term-picker-item--attached{background:#5eead409}.s-term-picker-item--dragging{opacity:.42;cursor:grabbing}.s-term-picker-grip{color:#ffffff38;font-size:var(--text-md)}.s-term-picker-item-main{min-width:0;display:grid;gap:var(--space-3xs)}.s-term-picker-item-main strong,.s-term-picker-item-main span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.s-term-picker-item-main strong{font-size:var(--text-xs);font-weight:520;color:#ffffffc2}.s-term-picker-item-main span{font-size:var(--text-2xs);color:#ffffff4d}.s-term-picker-item-meta{display:grid;justify-items:end;gap:var(--space-3xs);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);text-transform:uppercase;color:#ffffff57}.s-term-picker-add{min-width:48px;height:26px;border:1px solid rgba(94,234,212,.18);border-radius:var(--radius-sm);background:#5eead40e;color:#dbfff8ad;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);text-transform:uppercase}.s-term-picker-add:disabled{border-color:transparent;background:transparent;color:#5eead461;cursor:default}.s-term-picker-empty{min-height:72px;display:grid;place-items:center;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:#ffffff4d}.s-term--embedded .s-term-bar{min-height:42px;height:42px;padding:0 var(--space-md);gap:var(--space-sm)}.s-term--embedded .s-term-bar--fresh{display:grid;grid-template-columns:minmax(0,1fr) minmax(96px,auto) auto;column-gap:var(--space-md)}.s-term--embedded .s-term-bar--takeover{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--space-md)}.s-term--embedded .s-term-bar--takeover .s-term-bar-meta{display:none}.s-term--embedded .s-term-bar-left,.s-term--embedded .s-term-bar-meta,.s-term--embedded .s-term-bar-actions{min-width:0}.s-term--embedded .s-term-bar-left{gap:var(--space-sm)}.s-term--embedded .s-term-bar-actions{gap:var(--space-2xs)}.s-term--embedded .s-term-registered-chip{max-width:none}.s-term--embedded .s-term-action{width:30px;height:30px;padding:0}.s-term--embedded .s-term-action-cluster--view,.s-term--embedded .s-term-action-cluster--signals,.s-term--embedded .s-term-action span,.s-term--embedded .s-term-session-menu span,.s-term--embedded .s-term-status{display:none}.s-term--embedded .s-term-body{background:#080808}.s-term-home{width:min(1280px,100%);display:grid;gap:var(--space-2xl);align-self:center}.s-term-home-head{display:grid;gap:var(--space-lg)}.s-term-home-titleline{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg)}.s-term-home-titleline h1{min-width:0;margin:0;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:clamp(24px,4vw,44px);font-weight:520;line-height:var(--leading-tight);color:#ffffffe6;letter-spacing:0}.s-term-home-refresh{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;flex:none;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0b;color:#ffffff94;cursor:pointer}.s-term-home-refresh:hover:not(:disabled){background:#ffffff16;color:#ffffffdb}.s-term-home-refresh:disabled{cursor:progress;opacity:.56}.s-term-home-error{display:grid;gap:var(--space-xs);padding:var(--space-md) var(--space-lg);border:1px solid rgba(248,113,113,.22);border-radius:var(--radius-sm);background:#f8717112;font-family:var(--font-mono);color:#ffdcdce0}.s-term-home-error span{font-size:var(--text-xs);letter-spacing:var(--tracking-lg);text-transform:uppercase}.s-term-home-error code{min-width:0;overflow-wrap:anywhere;font-size:var(--text-xs);color:#ffdcdca8}.s-term-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2xl);align-items:start}.s-term-home-section{min-width:0;display:grid;gap:var(--space-md)}.s-term-home-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid rgba(255,255,255,.08)}.s-term-home-section-head h2{margin:0;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#ffffff6b}.s-term-home-section-head span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:#ffffff47}.s-term-home-list{min-width:0;display:grid;gap:var(--space-2xs)}.s-term-data-table{min-width:0;overflow-x:auto;display:grid;gap:0}.s-term-data-header,.s-term-data-row{min-width:1080px;display:grid;align-items:center;column-gap:var(--space-md);border-bottom:1px solid rgba(255,255,255,.055)}.s-term-data-table--inventory .s-term-data-header,.s-term-data-table--inventory .s-term-data-row{grid-template-columns:minmax(230px,1.25fr) minmax(150px,.7fr) minmax(160px,.75fr) minmax(190px,.95fr) minmax(190px,.95fr) minmax(86px,.38fr) minmax(108px,108px)}.s-term-data-header{min-height:28px;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffff47}.s-term-data-header span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-data-header span:last-child{justify-self:end;text-align:right}.s-term-data-row{min-height:58px}.s-term-data-row:hover{background:#ffffff06}.s-term-data-cell{min-width:0;display:grid;gap:2px;align-content:center}.s-term-data-primary{height:100%;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:var(--space-sm);border:0;background:transparent;color:inherit;cursor:pointer;text-align:left;padding:var(--space-sm) 0}.s-term-data-main,.s-term-data-sub,.s-term-data-kicker{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.s-term-data-main{font-size:var(--text-xs);color:#ffffffad}.s-term-data-sub{font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff57}.s-term-data-kicker{font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#5eead480}.s-term-home-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);min-height:54px;border-bottom:1px solid rgba(255,255,255,.055)}.s-term-home-row:hover{background:#ffffff06}.s-term-home-row-main{min-width:0;height:100%;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);border:0;background:transparent;color:inherit;cursor:pointer;text-align:left;padding:var(--space-sm) var(--space-sm) var(--space-sm) 0}.s-term-home-row-icon{display:inline-flex;color:#ffffff6b}.s-term-agent-dot{width:10px;height:10px;justify-self:center;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:#ffffff1f;box-shadow:0 0 0 3px #ffffff09}.s-term-agent-dot--bound{border-color:#5eead475;background:#5eead49e;box-shadow:0 0 0 3px #5eead414}.s-term-home-row-copy{min-width:0;display:grid;gap:2px}.s-term-home-row-title,.s-term-home-row-detail{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-home-row-title{font-family:var(--font-mono);font-size:var(--text-sm);color:#ffffffd1}.s-term-home-row-detail{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff57}.s-term-home-row-badges{min-width:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-3xs)}.s-term-home-row-badges span{max-width:78px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1px var(--space-2xs);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff6b;text-transform:uppercase}.s-term-home-row-actions{display:inline-flex;align-items:center;justify-self:end;justify-content:flex-end;gap:var(--space-2xs);padding-right:var(--space-xs)}.s-term-home-row-actions .s-term-summary-action{height:28px;padding:0 var(--space-md)}.s-term-home-row-actions .s-term-row-more{width:28px;padding:0}.s-term-home-empty{min-height:80px;display:grid;place-items:center;border-bottom:1px solid rgba(255,255,255,.055);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);color:#ffffff57;text-transform:uppercase}@container (max-width: 980px){.s-term-workspace-library-head,.s-term-workspace-builder-head{align-items:stretch;flex-direction:column}.s-term-workspace-builder-actions,.s-term-workspace-card-actions{justify-content:flex-start}.s-term-workspace-builder-identity,.s-term-workspace-builder-canvas{grid-template-columns:minmax(0,1fr)}.s-term-workspace-head{align-items:stretch;flex-direction:column}.s-term-workspace-actions{justify-content:flex-start}.s-term-home-grid{grid-template-columns:1fr}.s-term-grid-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.s-term-grid-slots{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}}@container (max-width: 640px){.s-term--workspace-library,.s-term--workspace-builder{padding:var(--space-lg)}.s-term-workspace-builder-grid{grid-template-columns:minmax(0,1fr)}.s-term--workspace{padding:var(--space-md)}.s-term-workspace-tile{height:420px}.s-term-workspace-grid,.s-term-grid-slots,.s-term-grid-presets{grid-template-columns:minmax(0,1fr)}.s-term-grid-setup-foot{align-items:stretch;flex-direction:column}.s-term-grid-setup-actions{justify-content:flex-end}.s-term--embedded .s-term-bar--takeover,.s-term--embedded .s-term-bar--fresh{grid-template-columns:minmax(0,1fr) auto}.s-term--embedded .s-term-bar-meta{display:none}.s-term-home-row{grid-template-columns:1fr;gap:var(--space-2xs);padding-bottom:var(--space-sm)}.s-term-home-row-actions{justify-content:flex-start;padding:0 0 0 32px}.s-term-home-row-main{grid-template-columns:22px minmax(0,1fr)}.s-term-attach-card{grid-template-columns:24px minmax(0,1fr) auto}.s-term-attach-card-badges{grid-column:2 / 3;justify-content:flex-start}.s-term-home-row-badges{grid-column:2;justify-content:flex-start}.s-term-data-header,.s-term-data-row{min-width:820px}}.s-term-summary{width:min(1120px,100%);display:grid;gap:var(--space-2xl);align-self:center}.s-term-summary-main{display:grid;gap:var(--space-2xl)}.s-term-summary-mark{display:inline-flex;align-items:center;gap:var(--space-sm);width:fit-content;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#ffffff6b}.s-term-summary-heading{display:grid;gap:var(--space-xs)}.s-term-summary-heading h1{margin:0;min-width:0;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:clamp(22px,4vw,42px);font-weight:520;line-height:var(--leading-tight);color:#ffffffe6;letter-spacing:0}.s-term-summary-heading p{margin:0;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffff5c}.s-term-summary-actions{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.s-term-summary-action{height:34px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0d;color:#ffffffb8;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);padding:0 var(--space-lg);text-transform:uppercase}.s-term-summary-action:hover{background:#ffffff17;color:#ffffffeb}.s-term-summary-action--primary{border-color:#5eead447;background:#5eead41a;color:#dbfff8e6}.s-term-summary-action--primary:hover{background:#5eead429}.s-term-summary-preview{min-width:0}.s-term-preview-peek{--tmux-peek-font-size: var(--text-3xs);border-color:#5eead429;background:linear-gradient(180deg,rgba(94,234,212,.05),transparent 46%),#ffffff06}.s-term-preview-peek .ctx-panel-tmux-peek-head{min-height:28px}.s-term-preview-peek .ctx-panel-tmux-peek-screen,.s-term-preview-peek .ctx-panel-tmux-peek-empty{border-color:#ffffff14;background:linear-gradient(180deg,rgba(255,255,255,.018),transparent 44%),#070b0b}.s-term-summary-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;border-top:1px solid rgba(255,255,255,.08)}.s-term-summary-detail{min-width:0;display:grid;gap:var(--space-2xs);padding:var(--space-md) var(--space-lg) var(--space-md) 0;border-bottom:1px solid rgba(255,255,255,.08)}.s-term-summary-detail dt{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffff47}.s-term-summary-detail dd{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffffb3}@container (max-width: 520px){.s-term-summary-details{grid-template-columns:1fr}}.s-term-empty-main-mark,.s-term-empty{display:grid;place-items:center;color:#fff6;font-family:var(--font-mono);font-size:var(--text-sm)}.s-term-empty-main-mark{gap:var(--space-sm)}.s-term-empty-action{border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0f;color:#ffffffb8;cursor:pointer;font:inherit;padding:var(--space-xs) var(--space-md)}.s-term-empty-action:hover{background:#ffffff1a}.s-term-empty--sidebar{min-height:120px;font-size:var(--text-xs)}.s-term-body--placeholder{display:grid;place-items:center}.s-term-placeholder{display:flex;align-items:center;gap:var(--space-lg);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-md);color:#ffffff6b;text-transform:uppercase}.s-term-placeholder button{border:1px solid rgba(94,234,212,.25);border-radius:var(--radius-sm);background:#5eead414;color:#dbfff8cc;cursor:pointer;font:inherit;padding:var(--space-xs) var(--space-md)}.s-term-placeholder button:hover{background:#5eead424}.s-term-picker-views{display:inline-flex;gap:2px;padding:2px;border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-xs);background:#ffffff05}.s-term-picker-views button{padding:3px 9px;border:0;border-radius:3px;background:transparent;color:#ffffff80;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;cursor:pointer}.s-term-picker-views button.is-selected{background:#5eead41f;color:#ffffffeb}.s-term-picker-table-wrap{min-width:0;max-height:320px;overflow:auto;border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-sm)}.s-term-picker-table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:var(--text-2xs)}.s-term-picker-table thead th{position:sticky;top:0;z-index:1;padding:0;background:#0c0c0c;border-bottom:1px solid rgba(255,255,255,.09);text-align:left;font-weight:500}.s-term-picker-table thead th button{display:flex;align-items:center;gap:var(--space-xs);width:100%;padding:7px var(--space-sm);border:0;background:transparent;color:#ffffff6b;font:inherit;letter-spacing:var(--tracking-lg);text-transform:uppercase;cursor:pointer}.s-term-picker-table thead th button:hover{color:#ffffffd1}.s-term-picker-table thead th[aria-sort=ascending] button,.s-term-picker-table thead th[aria-sort=descending] button{color:#5eead4eb}.s-term-picker-table thead th em{font-style:normal;font-size:8px;opacity:.7}.s-term-picker-table tbody td{max-width:240px;padding:6px var(--space-sm);border-bottom:1px solid rgba(255,255,255,.045);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffffff9e}.s-term-picker-table tbody td:first-child{color:#ffffffe0}.s-term-picker-table tbody tr:hover td{background:#ffffff07}.s-term-picker-table tbody tr.is-attached td{color:#ffffff57}.s-term-picker-table tbody td:last-child{width:1%;padding-right:var(--space-sm)}.s-term-workspace-builder-source-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.s-term-workspace-builder-source-head h3{margin:0}.s-term-workspace-builder-columns em{font-style:normal;color:#ffffff4d;text-transform:none;letter-spacing:0}.s-term-workspace-tile--hosted .s-term-workspace-unavailable-body code{max-width:100%;overflow-wrap:anywhere;color:#f87171d1}.s-term-workspace-builder-sessions{display:block;min-width:0}.s-term-workspace-builder-sessions .s-term-picker-list{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xs);max-height:320px;overflow:auto}
|
|
1
|
+
.s-term{height:100%;display:flex;flex-direction:column;background:#0d0d0d;overflow:hidden;container-type:inline-size}.s-terminal-embed{width:100vw;height:100vh;min-height:0;overflow:hidden;background:#0d0d0d}.s-term-bar{display:flex;align-items:center;gap:var(--space-md);padding:0 var(--space-3xl);height:48px;flex:none;border-bottom:1px solid rgba(255,255,255,.06);background:#111}.s-term-bar>*{min-width:0}.s-term-bar--takeover{display:grid;grid-template-columns:minmax(220px,auto) minmax(140px,1fr) auto;column-gap:var(--space-2xl)}.s-term-bar-left,.s-term-bar-meta,.s-term-bar-actions{display:flex;align-items:center;min-width:0}.s-term-bar-left,.s-term-bar-meta{gap:var(--space-lg)}.s-term-bar-actions{gap:var(--space-md);justify-content:flex-end}.s-term-action-cluster{display:inline-flex;align-items:center;gap:var(--space-2xs);flex:none;min-width:0}.s-term-action-cluster--signals{padding-left:var(--space-sm);margin-left:var(--space-2xs);border-left:1px solid rgba(251,191,36,.18)}.s-term-back{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-md);color:#fff6;background:none;border:none;cursor:pointer;padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-sm);flex:none;white-space:nowrap;transition:color .12s,background .12s}.s-term-back:hover{color:#ffffffbf;background:var(--scout-chrome-hover)}.s-term-agent{display:flex;align-items:center;gap:var(--space-sm);flex:0 1 min(300px,24vw);max-width:min(300px,24vw);min-width:0}.s-term-agent-name{font-size:var(--text-md);font-weight:500;color:#ffffffd9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-agent-handle{font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffff59;letter-spacing:var(--tracking-sm);flex:0 1 auto;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-label{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);color:#ffffff40;text-transform:uppercase;flex:none;white-space:nowrap}.s-term-session{min-width:0;flex:1 1 180px;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffff6b}.s-term-action{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);border:1px solid rgba(94,234,212,.22);border-radius:var(--radius-sm);background:#5eead414;color:#dbfff8d1;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);min-width:auto;height:30px;padding:0 var(--space-md);text-transform:uppercase;white-space:nowrap;flex:none}.s-term-action:hover:not(:disabled){background:#5eead424;color:#f0fffcf2}.s-term-action:disabled{cursor:not-allowed;opacity:.58}.s-term-action--warn{border-color:#fbbf243d;background:#fbbf2414;color:#ffedb4db}.s-term-action--warn:hover:not(:disabled){background:#fbbf2424;color:#fff7d6f5}.s-term-action--danger{border-color:#f8717147;background:#f8717114;color:#ffdcdce0}.s-term-action--danger:hover:not(:disabled){background:#f8717126;color:#fff0f0fa}.s-term-session-menu{border-color:#ffffff29;background:#ffffff0e;color:#ffffffb8}.s-term-session-menu:hover:not(:disabled){background:#ffffff1a;color:#ffffffe6}.s-term-registered-chip{display:inline-flex;align-items:center;gap:var(--space-sm);min-width:0;max-width:min(520px,42vw);color:#ffffffb3;font-family:var(--font-mono);font-size:var(--text-xs)}.s-term-registered-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-registered-chip span:last-child{color:#ffffff61}.s-term-status{margin-left:var(--space-3xs);display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff4d;flex:none;white-space:nowrap}.s-term-icon-button{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:none;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0e;color:#ffffffa3;cursor:pointer}.s-term-icon-button:hover:not(:disabled){background:#ffffff1a;color:#ffffffeb}.s-term-icon-button:disabled{cursor:progress;opacity:.52}.s-term-icon-button--danger{border-color:#f8717133;color:#ffd2d2b8}.s-term-icon-button--danger:hover:not(:disabled){background:#f871711f;color:#ffe8e8f0}@container (max-width: 980px){.s-term-bar--takeover{grid-template-columns:minmax(0,1fr);height:auto;min-height:86px;align-content:center;row-gap:var(--space-sm);padding:var(--space-md) var(--space-xl)}.s-term-bar-left,.s-term-bar-meta,.s-term-bar-actions{width:100%}.s-term-bar-left{gap:var(--space-md)}.s-term-bar-actions{justify-content:flex-start;flex-wrap:wrap}.s-term-action-cluster{flex-wrap:wrap}.s-term-bar--takeover .s-term-agent{flex:1 1 auto;max-width:none}.s-term-bar--takeover .s-term-session{flex-basis:160px}}@container (max-width: 520px){.s-term-bar--takeover .s-term-agent-handle{display:none}.s-term-action{height:28px;padding:0 var(--space-md)}}.s-term-body{flex:1;min-height:0;overflow:hidden}.s-term--empty-main{display:grid;place-items:center}.s-term--summary{justify-content:flex-start;padding:clamp(24px,5vh,52px) clamp(24px,5vw,72px);overflow:auto}.s-term--home{justify-content:flex-start;padding:clamp(22px,4vh,42px) clamp(20px,4vw,58px);overflow:auto}.s-term--workspace{justify-content:flex-start;padding:clamp(16px,3vh,32px) clamp(16px,3vw,44px);overflow:auto}.s-term-workspace{width:min(1480px,100%);min-height:100%;display:grid;grid-template-rows:auto;gap:var(--space-xl);align-self:center}.s-term-workspace-head{min-width:0;display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-2xl)}.s-term-workspace-title{min-width:0;display:grid;gap:var(--space-sm)}.s-term-workspace-title h1{min-width:0;margin:0;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:clamp(22px,3vw,34px);font-weight:520;line-height:var(--leading-tight);letter-spacing:0;color:#ffffffe6}.s-term-workspace-title p{max-width:680px;margin:0;font-size:var(--text-sm);color:#fff6}.s-term--workspace-library,.s-term--workspace-builder{justify-content:flex-start;padding:clamp(22px,4vh,44px) clamp(20px,4vw,58px);overflow:auto}.s-term-workspace-library,.s-term-workspace-builder{width:min(1380px,100%);display:grid;gap:var(--space-3xl);align-self:center}.s-term-workspace-library-head,.s-term-workspace-builder-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-2xl)}.s-term-workspace-library-head>div:first-child,.s-term-workspace-builder-head>div:first-child{min-width:0;display:grid;gap:var(--space-sm)}.s-term-workspace-library-head h1,.s-term-workspace-builder-head h1{margin:0;font-family:var(--font-mono);font-size:clamp(28px,4vw,46px);font-weight:520;line-height:var(--leading-tight);color:#ffffffeb}.s-term-workspace-library-head p,.s-term-workspace-builder-head p{max-width:720px;margin:0;color:#ffffff6b;font-size:var(--text-sm)}.s-term-workspace-library-empty{min-height:420px;display:grid;place-items:center;align-content:center;gap:var(--space-lg);border:1px dashed rgba(94,234,212,.2);border-radius:var(--radius-md);background:#5eead406;text-align:center;color:#dbfff899}.s-term-workspace-library-empty h2,.s-term-workspace-library-empty p{margin:0}.s-term-workspace-library-empty h2{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:520;color:#fffc}.s-term-workspace-library-empty p{max-width:520px;color:#ffffff61}.s-term-workspace-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:var(--space-lg)}.s-term-workspace-card{min-width:0;display:grid;gap:var(--space-lg);padding:var(--space-lg);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-md);background:#ffffff06}.s-term-workspace-card-preview{height:108px;display:grid;grid-template-columns:repeat(var(--terminal-grid-columns, 2),minmax(0,1fr));gap:var(--space-xs);padding:var(--space-sm);border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-sm);background:#090909}.s-term-workspace-card-preview span{min-width:0;border:1px solid rgba(255,255,255,.09);border-radius:3px;background:#ffffff09}.s-term-workspace-card-preview span.is-session{border-color:#5eead433;background:#5eead411}.s-term-workspace-card-copy{min-width:0;display:grid;gap:var(--space-xs)}.s-term-workspace-card-copy>span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#5eead475}.s-term-workspace-card-copy h2,.s-term-workspace-card-copy p{margin:0}.s-term-workspace-card-copy h2{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:520;color:#ffffffd6}.s-term-workspace-card-copy p{min-height:38px;color:#ffffff61;font-size:var(--text-sm)}.s-term-workspace-card-actions,.s-term-workspace-builder-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);flex-wrap:wrap}.s-term-workspace-builder-identity{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(280px,1.3fr);gap:var(--space-lg);padding:var(--space-lg);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-md);background:#ffffff05}.s-term-workspace-builder-identity label{min-width:0;display:grid;gap:var(--space-sm)}.s-term-workspace-builder-identity label>span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffff61}.s-term-workspace-builder-identity input{min-width:0;height:40px;padding:0 var(--space-md);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);background:#0a0a0a;color:#ffffffd6;font-family:var(--font-mono);font-size:var(--text-sm);outline:none}.s-term-workspace-builder-identity input:focus{border-color:#5eead46b;box-shadow:0 0 0 2px #5eead412}.s-term-workspace-builder-layout,.s-term-workspace-builder-placement{min-width:0;display:grid;gap:var(--space-lg)}.s-term-workspace-builder-section-head{display:flex;align-items:end;justify-content:space-between;gap:var(--space-lg)}.s-term-workspace-builder-section-head>div{display:grid;gap:var(--space-xs)}.s-term-workspace-builder-section-head span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#5eead485}.s-term-workspace-builder-section-head h2,.s-term-workspace-builder-section-head p{margin:0}.s-term-workspace-builder-section-head h2{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:520;color:#fffc}.s-term-workspace-builder-section-head p{font-size:var(--text-sm);color:#ffffff57}.s-term-workspace-builder-canvas{min-width:0;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:var(--space-lg);align-items:stretch}.s-term-workspace-builder-grid{min-width:0;display:grid;grid-template-columns:repeat(var(--terminal-grid-columns, 2),minmax(0,1fr));gap:var(--space-sm);padding:var(--space-md);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-md);background:#090909}.s-term-workspace-builder-cell{position:relative;min-width:0;min-height:154px;display:grid;place-items:center;align-content:center;gap:var(--space-sm);padding:var(--space-md);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-sm);background:#ffffff05;color:#ffffff61;cursor:pointer;font-family:var(--font-mono)}.s-term-workspace-builder-cell.is-selected{border-color:#5eead494;background:#5eead412;box-shadow:inset 0 0 0 1px #5eead41f}.s-term-workspace-builder-cell-select{min-width:0;width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:var(--space-sm);border:0;background:transparent;color:inherit;cursor:pointer;font-family:inherit}.s-term-workspace-builder-cell-remove{position:absolute;top:var(--space-xs);right:var(--space-xs);display:grid;place-items:center;width:22px;height:22px;border:1px solid transparent;border-radius:var(--radius-xs);background:transparent;color:#ffffff52;cursor:pointer}.s-term-workspace-builder-cell-remove:hover{border-color:#f8717152;color:#f87171db}.s-term-workspace-builder-cell--add{color:#ffffff6b;border-style:dashed}.s-term-workspace-builder-cell--add:hover{border-color:#5eead45c;color:#ffffffc7}.s-term-workspace-builder-columns{display:flex;align-items:center;gap:var(--space-xs);margin-top:var(--space-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff5c;text-transform:uppercase}.s-term-workspace-builder-columns button{min-width:26px;padding:3px 6px;border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-xs);background:#ffffff06;color:#fff9;font-family:inherit;font-size:var(--text-2xs);cursor:pointer}.s-term-workspace-builder-columns button.is-selected{border-color:#5eead46b;background:#5eead417;color:#ffffffeb}.s-term-workspace-builder-cell-select>span{justify-self:start;align-self:start;font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff47}.s-term-workspace-builder-cell strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);font-weight:520;color:#ffffffbd}.s-term-workspace-builder-cell small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-2xs);color:#ffffff4d}.s-term-workspace-builder-source{min-width:0;display:grid;align-content:start;gap:var(--space-md);padding:var(--space-lg);border:1px solid rgba(94,234,212,.14);border-radius:var(--radius-md);background:#5eead406}.s-term-workspace-builder-source>span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#5eead494}.s-term-workspace-builder-source h3{margin:0;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:520;text-transform:uppercase;letter-spacing:var(--tracking-md);color:#fff9}.s-term-workspace-builder-source-actions{display:flex;gap:var(--space-xs);flex-wrap:wrap}.s-term-workspace-builder-source-actions button,.s-term-workspace-builder-sessions button{border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-sm);background:#ffffff06;color:#ffffff94;cursor:pointer;font-family:var(--font-mono)}.s-term-workspace-builder-source-actions button{height:30px;padding:0 var(--space-md);font-size:var(--text-2xs);text-transform:uppercase}.s-term-workspace-builder-source-actions button:hover,.s-term-workspace-builder-sessions button:hover{border-color:#5eead452;background:#5eead40f;color:#ffffffd1}.s-term-workspace-builder-sessions{max-height:320px;display:grid;overflow:auto;border-top:1px solid rgba(255,255,255,.07)}.s-term-workspace-builder-sessions button{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border-width:0 0 1px;text-align:left}.s-term-workspace-builder-sessions button>span{min-width:0;display:grid;gap:var(--space-3xs)}.s-term-workspace-builder-sessions strong,.s-term-workspace-builder-sessions small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-workspace-builder-sessions strong{font-size:var(--text-xs);font-weight:520}.s-term-workspace-builder-sessions small,.s-term-workspace-builder-sessions em,.s-term-workspace-builder-no-sessions{font-size:var(--text-2xs);font-style:normal;color:#ffffff4d}.s-term-workspace-builder-no-sessions{padding:var(--space-xl) 0;text-align:center;text-transform:uppercase}.s-term-workspace-actions,.s-term-workspace-empty-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);flex-wrap:wrap}.s-term-workspace-action{height:34px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);flex:none;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0e;color:#ffffffb8;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);padding:0 var(--space-lg);text-transform:uppercase;white-space:nowrap}.s-term-workspace-action:hover:not(:disabled){background:#ffffff1a;color:#ffffffeb}.s-term-workspace-action:disabled{cursor:not-allowed;opacity:.5}.s-term-workspace-action--primary{border-color:#5eead447;background:#5eead41a;color:#dbfff8e6}.s-term-workspace-action--primary:hover:not(:disabled){background:#5eead429}.s-term-workspace-empty{min-height:clamp(300px,42vh,460px);display:grid;place-items:center;align-content:center;gap:var(--space-lg);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);background:linear-gradient(180deg,rgba(94,234,212,.035),transparent 42%),#ffffff05;color:#ffffff73;font-family:var(--font-mono)}.s-term-workspace-empty strong{font-size:var(--text-sm);font-weight:520;letter-spacing:var(--tracking-md);text-transform:uppercase;color:#ffffff9e}.s-term-workspace-grid{min-width:0;display:grid;grid-template-columns:repeat(var(--terminal-grid-columns, 2),minmax(0,1fr));gap:var(--space-lg);align-content:start;align-items:stretch}.s-term-grid-setup{min-width:0;display:grid;gap:var(--space-xl);padding:clamp(18px,3vw,30px);border:1px solid rgba(94,234,212,.16);border-radius:var(--radius-md);background:radial-gradient(circle at 100% 0%,rgba(94,234,212,.08),transparent 34%),#ffffff06}.s-term-grid-setup-copy{display:grid;gap:var(--space-xs)}.s-term-grid-setup-kicker{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#5eead49e}.s-term-grid-setup-copy h2,.s-term-grid-setup-copy p{margin:0}.s-term-grid-setup-copy h2{max-width:720px;font-family:var(--font-mono);font-size:clamp(17px,2vw,23px);font-weight:520;color:#ffffffe0}.s-term-grid-setup-copy p{font-size:var(--text-sm);color:#ffffff6b}.s-term-grid-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm)}.s-term-grid-preset{min-width:0;display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto;column-gap:var(--space-md);align-items:center;padding:var(--space-md);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-sm);background:#ffffff06;color:#ffffff94;text-align:left;cursor:pointer}.s-term-grid-preset:hover,.s-term-grid-preset--selected{border-color:#5eead447;background:#5eead412;color:#ffffffe6}.s-term-grid-preset:focus-visible,.s-term-grid-slot-options button:focus-visible{outline:1px solid rgba(94,234,212,.72);outline-offset:2px}.s-term-grid-preset-map{grid-row:1 / -1;width:52px;height:34px;display:grid;grid-template-columns:repeat(var(--terminal-preset-columns),minmax(0,1fr));gap:3px}.s-term-grid-preset-map i{min-width:0;border:1px solid currentColor;border-radius:2px;background:currentColor;opacity:.36}.s-term-grid-preset-label,.s-term-grid-preset-detail{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.s-term-grid-preset-label{font-size:var(--text-xs);letter-spacing:var(--tracking-md);text-transform:uppercase}.s-term-grid-preset-detail{font-size:var(--text-2xs);color:#ffffff52}.s-term-grid-slots{min-width:0;display:grid;grid-template-columns:repeat(var(--terminal-preset-columns),minmax(0,1fr));gap:var(--space-sm)}.s-term-grid-slot{min-width:0;min-height:112px;display:grid;align-content:space-between;gap:var(--space-lg);padding:var(--space-md);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);background:#0a0a0a}.s-term-grid-slot-head{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff4d}.s-term-grid-slot-options{display:flex;gap:var(--space-2xs);flex-wrap:wrap}.s-term-grid-slot-options button{min-height:25px;padding:0 var(--space-sm);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:#ffffff5c;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);text-transform:uppercase}.s-term-grid-slot-options button:hover{color:#ffffffb8;background:#ffffff0d}.s-term-grid-slot-options button.is-selected{border-color:#5eead438;background:#5eead417;color:#dbfff8db}.s-term-grid-setup-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding-top:var(--space-sm);border-top:1px solid rgba(255,255,255,.07);font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffff57}.s-term-grid-setup-actions{display:flex;align-items:center;gap:var(--space-sm);flex:none}.s-term-workspace-tile{min-width:0;height:clamp(360px,44vh,620px);min-height:360px;overflow:hidden;border:1px solid rgba(255,255,255,.095);border-radius:var(--radius-sm);background:#090909;box-shadow:0 18px 52px #0000003d}.s-term-workspace-cell{min-width:0;border-radius:var(--radius-sm);transition:opacity .12s ease,box-shadow .12s ease,transform .12s ease}.s-term-workspace-cell .s-term-bar{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.s-term-workspace-cell .s-term-bar:active{cursor:grabbing}.s-term-workspace-cell .s-term-bar button,.s-term-workspace-cell .s-term-bar a{cursor:pointer}.s-term-workspace-cell--dragging{opacity:.42;transform:scale(.985)}.s-term-workspace-cell--drop-target{box-shadow:0 0 0 2px #5eead4b8,0 18px 52px #00000047}.s-term-workspace-add-cell{min-width:0;height:150px;min-height:150px;display:grid;place-items:center;align-content:center;gap:var(--space-sm);border:1px dashed rgba(94,234,212,.32);border-radius:var(--radius-sm);background:#5eead409;color:#dbfff885;cursor:pointer;font-family:var(--font-mono);transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.s-term-workspace-add-cell strong{font-size:var(--text-xs);font-weight:520;letter-spacing:var(--tracking-lg);text-transform:uppercase}.s-term-workspace-add-cell span{font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:#ffffff4d}.s-term-workspace-add-cell--target{border-color:#5eead4e0;background:#5eead41a;box-shadow:inset 0 0 0 1px #5eead43d}.s-term-workspace-tile>.s-term{height:100%}.s-term-workspace-tile--unavailable{display:grid;grid-template-rows:auto 1fr;border-style:dashed;background:#ffffff05}.s-term-workspace-unavailable-body{display:grid;place-content:center;justify-items:center;gap:var(--space-sm);padding:var(--space-2xl);text-align:center;color:#ffffff47}.s-term-workspace-unavailable-body strong{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:520;color:#ffffff9e}.s-term-workspace-unavailable-body span{max-width:36ch;font-size:var(--text-xs);line-height:1.55}.s-term-workspace-tile-mark{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;flex:none;border:1px solid rgba(94,234,212,.18);border-radius:var(--radius-sm);color:#dbfff8c2;background:#5eead40f}.s-term-attach{min-width:0;display:grid;gap:var(--space-md)}.s-term-attach-grid{min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:var(--space-sm)}.s-term-attach-card{min-width:0;min-height:58px;display:grid;grid-template-columns:24px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid rgba(255,255,255,.095);border-radius:var(--radius-sm);background:#ffffff08;color:inherit;cursor:grab}.s-term-attach-card:hover,.s-term-attach-card:focus-visible{border-color:#5eead447;background:#5eead40e;outline:none}.s-term-attach-card:active{cursor:grabbing}.s-term-attach-card--active{cursor:default;opacity:.66}.s-term-attach-card-icon{display:inline-flex;align-items:center;justify-content:center;color:#dbfff8bd}.s-term-attach-card-copy{min-width:0;display:grid;gap:2px}.s-term-attach-card-title,.s-term-attach-card-detail{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.s-term-attach-card-title{font-size:var(--text-xs);color:#ffffffc7}.s-term-attach-card-detail{font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff57}.s-term-attach-card-badges{min-width:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-3xs)}.s-term-attach-card-badges span{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1px var(--space-2xs);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff6b;text-transform:uppercase}.s-term-attach-empty{min-height:58px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);color:#ffffff57;text-transform:uppercase}.s-term-workspace-tile-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffffc2}.s-term-workspace-dock{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2xl);align-items:start}.s-term-picker{min-width:0;display:grid;gap:var(--space-md);border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-sm);background:#ffffff05}.s-term-picker--collapsed{gap:0}.s-term-picker-head{min-width:0;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding:var(--space-sm) var(--space-md);border-bottom:1px solid rgba(255,255,255,.07)}.s-term-picker--collapsed .s-term-picker-head{border-bottom:0}.s-term-picker-title,.s-term-picker-actions{min-width:0;display:flex;align-items:center;gap:var(--space-sm)}.s-term-picker-title{color:#dbfff8ad}.s-term-picker-title h2{margin:0;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:520;letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffffb8}.s-term-picker-title>span{padding:1px var(--space-xs);border-radius:var(--radius-sm);background:#ffffff0f;font-family:var(--font-mono);font-size:var(--text-2xs);color:#ffffff61}.s-term-picker-toggle{display:inline-flex;align-items:center;gap:var(--space-sm);border:0;background:transparent;color:#fff6;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase}.s-term-picker-toggle:hover{color:#ffffffc2}.s-term-picker-hint{margin:0;padding:0 var(--space-md);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff52}.s-term-picker-list{min-width:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));max-height:210px;overflow:auto;border-top:1px solid rgba(255,255,255,.06)}.s-term-picker-group{grid-column:1 / -1;min-width:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr))}.s-term-picker-group-title{grid-column:1 / -1;margin:0;padding:var(--space-sm) var(--space-md) var(--space-xs);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:500;letter-spacing:var(--tracking-md);text-transform:uppercase;color:#ffffff4d}.s-term-picker-item{min-width:0;min-height:62px;display:grid;grid-template-columns:18px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-right:1px solid rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.055);background:#ffffff03;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:background .12s ease,opacity .12s ease}.s-term-picker-item:hover{background:#ffffff09}.s-term-picker-item--attached{background:#5eead409}.s-term-picker-item--dragging{opacity:.42;cursor:grabbing}.s-term-picker-grip{color:#ffffff38;font-size:var(--text-md)}.s-term-picker-item-main{min-width:0;display:grid;gap:var(--space-3xs)}.s-term-picker-item-main strong,.s-term-picker-item-main span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.s-term-picker-item-main strong{font-size:var(--text-xs);font-weight:520;color:#ffffffc2}.s-term-picker-item-main span{font-size:var(--text-2xs);color:#ffffff4d}.s-term-picker-item-meta{display:grid;justify-items:end;gap:var(--space-3xs);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);text-transform:uppercase;color:#ffffff57}.s-term-picker-add{min-width:48px;height:26px;border:1px solid rgba(94,234,212,.18);border-radius:var(--radius-sm);background:#5eead40e;color:#dbfff8ad;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);text-transform:uppercase}.s-term-picker-add:disabled{border-color:transparent;background:transparent;color:#5eead461;cursor:default}.s-term-picker-empty{min-height:72px;display:grid;place-items:center;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:#ffffff4d}.s-term--embedded .s-term-bar{min-height:42px;height:42px;padding:0 var(--space-md);gap:var(--space-sm)}.s-term--embedded .s-term-bar--fresh{display:grid;grid-template-columns:minmax(0,1fr) minmax(96px,auto) auto;column-gap:var(--space-md)}.s-term--embedded .s-term-bar--takeover{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--space-md)}.s-term--embedded .s-term-bar--takeover .s-term-bar-meta{display:none}.s-term--embedded .s-term-bar-left,.s-term--embedded .s-term-bar-meta,.s-term--embedded .s-term-bar-actions{min-width:0}.s-term--embedded .s-term-bar-left{gap:var(--space-sm)}.s-term--embedded .s-term-bar-actions{gap:var(--space-2xs)}.s-term--embedded .s-term-registered-chip{max-width:none}.s-term--embedded .s-term-action{width:30px;height:30px;padding:0}.s-term--embedded .s-term-action-cluster--view,.s-term--embedded .s-term-action-cluster--signals,.s-term--embedded .s-term-action span,.s-term--embedded .s-term-session-menu span,.s-term--embedded .s-term-status{display:none}.s-term--embedded .s-term-body{background:#080808}.s-term-home{width:min(1280px,100%);display:grid;gap:var(--space-2xl);align-self:center}.s-term-home-head{display:grid;gap:var(--space-lg)}.s-term-home-titleline{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg)}.s-term-home-titleline h1{min-width:0;margin:0;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:clamp(24px,4vw,44px);font-weight:520;line-height:var(--leading-tight);color:#ffffffe6;letter-spacing:0}.s-term-home-refresh{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;flex:none;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0b;color:#ffffff94;cursor:pointer}.s-term-home-refresh:hover:not(:disabled){background:#ffffff16;color:#ffffffdb}.s-term-home-refresh:disabled{cursor:progress;opacity:.56}.s-term-home-error{display:grid;gap:var(--space-xs);padding:var(--space-md) var(--space-lg);border:1px solid rgba(248,113,113,.22);border-radius:var(--radius-sm);background:#f8717112;font-family:var(--font-mono);color:#ffdcdce0}.s-term-home-error span{font-size:var(--text-xs);letter-spacing:var(--tracking-lg);text-transform:uppercase}.s-term-home-error code{min-width:0;overflow-wrap:anywhere;font-size:var(--text-xs);color:#ffdcdca8}.s-term-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2xl);align-items:start}.s-term-home-section{min-width:0;display:grid;gap:var(--space-md)}.s-term-home-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid rgba(255,255,255,.08)}.s-term-home-section-head h2{margin:0;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#ffffff6b}.s-term-home-section-head span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:#ffffff47}.s-term-home-list{min-width:0;display:grid;gap:var(--space-2xs)}.s-term-data-table{min-width:0;overflow-x:auto;display:grid;gap:0}.s-term-data-header,.s-term-data-row{min-width:1080px;display:grid;align-items:center;column-gap:var(--space-md);border-bottom:1px solid rgba(255,255,255,.055)}.s-term-data-table--inventory .s-term-data-header,.s-term-data-table--inventory .s-term-data-row{grid-template-columns:minmax(230px,1.25fr) minmax(150px,.7fr) minmax(160px,.75fr) minmax(190px,.95fr) minmax(190px,.95fr) minmax(86px,.38fr) minmax(108px,108px)}.s-term-data-header{min-height:28px;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffff47}.s-term-data-header span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-data-header span:last-child{justify-self:end;text-align:right}.s-term-data-row{min-height:58px}.s-term-data-row:hover{background:#ffffff06}.s-term-data-cell{min-width:0;display:grid;gap:2px;align-content:center}.s-term-data-primary{height:100%;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:var(--space-sm);border:0;background:transparent;color:inherit;cursor:pointer;text-align:left;padding:var(--space-sm) 0}.s-term-data-main,.s-term-data-sub,.s-term-data-kicker{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.s-term-data-main{font-size:var(--text-xs);color:#ffffffad}.s-term-data-sub{font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff57}.s-term-data-kicker{font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#5eead480}.s-term-home-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);min-height:54px;border-bottom:1px solid rgba(255,255,255,.055)}.s-term-home-row:hover{background:#ffffff06}.s-term-home-row-main{min-width:0;height:100%;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);border:0;background:transparent;color:inherit;cursor:pointer;text-align:left;padding:var(--space-sm) var(--space-sm) var(--space-sm) 0}.s-term-home-row-icon{display:inline-flex;color:#ffffff6b}.s-term-agent-dot{width:10px;height:10px;justify-self:center;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:#ffffff1f;box-shadow:0 0 0 3px #ffffff09}.s-term-agent-dot--bound{border-color:#5eead475;background:#5eead49e;box-shadow:0 0 0 3px #5eead414}.s-term-home-row-copy{min-width:0;display:grid;gap:2px}.s-term-home-row-title,.s-term-home-row-detail{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-home-row-title{font-family:var(--font-mono);font-size:var(--text-sm);color:#ffffffd1}.s-term-home-row-detail{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff57}.s-term-home-row-badges{min-width:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-3xs)}.s-term-home-row-badges span{max-width:78px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1px var(--space-2xs);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:#ffffff6b;text-transform:uppercase}.s-term-home-row-actions{display:inline-flex;align-items:center;justify-self:end;justify-content:flex-end;gap:var(--space-2xs);padding-right:var(--space-xs)}.s-term-home-row-actions .s-term-summary-action{height:28px;padding:0 var(--space-md)}.s-term-home-row-actions .s-term-row-more{width:28px;padding:0}.s-term-home-empty{min-height:80px;display:grid;place-items:center;border-bottom:1px solid rgba(255,255,255,.055);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);color:#ffffff57;text-transform:uppercase}@container (max-width: 980px){.s-term-workspace-library-head,.s-term-workspace-builder-head{align-items:stretch;flex-direction:column}.s-term-workspace-builder-actions,.s-term-workspace-card-actions{justify-content:flex-start}.s-term-workspace-builder-identity,.s-term-workspace-builder-canvas{grid-template-columns:minmax(0,1fr)}.s-term-workspace-head{align-items:stretch;flex-direction:column}.s-term-workspace-actions{justify-content:flex-start}.s-term-home-grid{grid-template-columns:1fr}.s-term-grid-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.s-term-grid-slots{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}}@container (max-width: 640px){.s-term--workspace-library,.s-term--workspace-builder{padding:var(--space-lg)}.s-term-workspace-builder-grid{grid-template-columns:minmax(0,1fr)}.s-term--workspace{padding:var(--space-md)}.s-term-workspace-tile{height:420px}.s-term-workspace-grid,.s-term-grid-slots,.s-term-grid-presets{grid-template-columns:minmax(0,1fr)}.s-term-grid-setup-foot{align-items:stretch;flex-direction:column}.s-term-grid-setup-actions{justify-content:flex-end}.s-term--embedded .s-term-bar--takeover,.s-term--embedded .s-term-bar--fresh{grid-template-columns:minmax(0,1fr) auto}.s-term--embedded .s-term-bar-meta{display:none}.s-term-home-row{grid-template-columns:1fr;gap:var(--space-2xs);padding-bottom:var(--space-sm)}.s-term-home-row-actions{justify-content:flex-start;padding:0 0 0 32px}.s-term-home-row-main{grid-template-columns:22px minmax(0,1fr)}.s-term-attach-card{grid-template-columns:24px minmax(0,1fr) auto}.s-term-attach-card-badges{grid-column:2 / 3;justify-content:flex-start}.s-term-home-row-badges{grid-column:2;justify-content:flex-start}.s-term-data-header,.s-term-data-row{min-width:820px}}.s-term-summary{width:min(1120px,100%);display:grid;gap:var(--space-2xl);align-self:center}.s-term-summary-main{display:grid;gap:var(--space-2xl)}.s-term-summary-mark{display:inline-flex;align-items:center;gap:var(--space-sm);width:fit-content;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:#ffffff6b}.s-term-summary-heading{display:grid;gap:var(--space-xs)}.s-term-summary-heading h1{margin:0;min-width:0;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:clamp(22px,4vw,42px);font-weight:520;line-height:var(--leading-tight);color:#ffffffe6;letter-spacing:0}.s-term-summary-heading p{margin:0;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffff5c}.s-term-summary-actions{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.s-term-summary-action{height:34px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0d;color:#ffffffb8;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);padding:0 var(--space-lg);text-transform:uppercase}.s-term-summary-action:hover{background:#ffffff17;color:#ffffffeb}.s-term-summary-action--primary{border-color:#5eead447;background:#5eead41a;color:#dbfff8e6}.s-term-summary-action--primary:hover{background:#5eead429}.s-term-summary-preview{min-width:0}.s-term-preview-peek{--tmux-peek-font-size: var(--text-3xs);border-color:#5eead429;background:linear-gradient(180deg,rgba(94,234,212,.05),transparent 46%),#ffffff06}.s-term-preview-peek .ctx-panel-tmux-peek-head{min-height:28px}.s-term-preview-peek .ctx-panel-tmux-peek-screen,.s-term-preview-peek .ctx-panel-tmux-peek-empty{border-color:#ffffff14;background:linear-gradient(180deg,rgba(255,255,255,.018),transparent 44%),#070b0b}.s-term-summary-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;border-top:1px solid rgba(255,255,255,.08)}.s-term-summary-detail{min-width:0;display:grid;gap:var(--space-2xs);padding:var(--space-md) var(--space-lg) var(--space-md) 0;border-bottom:1px solid rgba(255,255,255,.08)}.s-term-summary-detail dt{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:#ffffff47}.s-term-summary-detail dd{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-xs);color:#ffffffb3}@container (max-width: 520px){.s-term-summary-details{grid-template-columns:1fr}}.s-term-empty-main-mark,.s-term-empty{display:grid;place-items:center;color:#fff6;font-family:var(--font-mono);font-size:var(--text-sm)}.s-term-empty-main-mark{gap:var(--space-sm)}.s-term-empty-action{border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);background:#ffffff0f;color:#ffffffb8;cursor:pointer;font:inherit;padding:var(--space-xs) var(--space-md)}.s-term-empty-action:hover{background:#ffffff1a}.s-term-empty--sidebar{min-height:120px;font-size:var(--text-xs)}.s-term-body--placeholder{display:grid;place-items:center}.s-term-placeholder{display:flex;align-items:center;gap:var(--space-lg);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-md);color:#ffffff6b;text-transform:uppercase}.s-term-placeholder button{border:1px solid rgba(94,234,212,.25);border-radius:var(--radius-sm);background:#5eead414;color:#dbfff8cc;cursor:pointer;font:inherit;padding:var(--space-xs) var(--space-md)}.s-term-placeholder button:hover{background:#5eead424}.s-term-picker-views{display:inline-flex;gap:2px;padding:2px;border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-xs);background:#ffffff05}.s-term-picker-views button{padding:3px 9px;border:0;border-radius:3px;background:transparent;color:#ffffff80;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-lg);text-transform:uppercase;cursor:pointer}.s-term-picker-views button.is-selected{background:#5eead41f;color:#ffffffeb}.s-term-picker-table-wrap{min-width:0;max-height:320px;overflow:auto;border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-sm)}.s-term-picker-table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:var(--text-2xs)}.s-term-picker-table thead th{position:sticky;top:0;z-index:1;padding:0;background:#0c0c0c;border-bottom:1px solid rgba(255,255,255,.09);text-align:left;font-weight:500}.s-term-picker-table thead th button{display:flex;align-items:center;gap:var(--space-xs);width:100%;padding:7px var(--space-sm);border:0;background:transparent;color:#ffffff6b;font:inherit;letter-spacing:var(--tracking-lg);text-transform:uppercase;cursor:pointer}.s-term-picker-table thead th button:hover{color:#ffffffd1}.s-term-picker-table thead th[aria-sort=ascending] button,.s-term-picker-table thead th[aria-sort=descending] button{color:#5eead4eb}.s-term-picker-table thead th em{font-style:normal;font-size:8px;opacity:.7}.s-term-picker-table tbody td{max-width:240px;padding:6px var(--space-sm);border-bottom:1px solid rgba(255,255,255,.045);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffffff9e}.s-term-picker-table tbody td:first-child{color:#ffffffe0}.s-term-picker-table tbody tr:hover td{background:#ffffff07}.s-term-picker-table tbody tr.is-attached td{color:#ffffff57}.s-term-picker-table tbody td:last-child{width:1%;padding-right:var(--space-sm)}.s-term-workspace-builder-source-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.s-term-workspace-builder-source-head h3{margin:0}.s-term-workspace-builder-columns em{font-style:normal;color:#ffffff4d;text-transform:none;letter-spacing:0}.s-term-workspace-tile--hosted .s-term-workspace-unavailable-body code{max-width:100%;overflow-wrap:anywhere;color:#f87171d1}.s-term-workspace-builder-sessions{display:block;min-width:0}.s-term-workspace-builder-sessions .s-term-picker-list{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xs);max-height:320px;overflow:auto}.s-term-workspace-builder-sessions .s-term-picker-group{grid-template-columns:minmax(0,1fr);gap:var(--space-xs)}.s-herdr{display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-xl) var(--space-3xl);overflow-y:auto;min-height:0;flex:1}.s-herdr-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg)}.s-herdr-title{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--text-lg)}.s-herdr-mark{display:inline-flex;color:var(--dim)}.s-herdr-state{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xl);text-transform:uppercase;color:var(--muted);border:1px solid var(--chrome);border-radius:var(--radius-sm);padding:var(--space-2xs) var(--space-sm)}.s-herdr-state--live{color:var(--green);border-color:var(--green)}.s-herdr-actions{display:flex;align-items:center;gap:var(--space-sm)}.s-herdr-attach{display:inline-flex;align-items:center;gap:var(--space-xs);border:1px solid var(--chrome);border-radius:var(--radius-sm);padding:var(--space-2xs) var(--space-sm);background:transparent;color:var(--dim);cursor:copy}.s-herdr-attach:hover{background:var(--scout-chrome-hover);color:var(--ink)}.s-herdr-attach code{font-family:var(--font-mono);font-size:var(--text-xs)}.s-herdr-error{color:var(--red);font-size:var(--text-sm)}.s-herdr-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);text-align:center;color:var(--muted);padding:var(--space-3xl) var(--space-xl)}.s-herdr-workspace{display:flex;flex-direction:column;gap:var(--space-md)}.s-herdr-workspace-head{display:flex;align-items:center;gap:var(--space-sm)}.s-herdr-workspace-label{font-size:var(--text-md);font-weight:600}.s-herdr-tabs{display:flex;align-items:center;gap:var(--space-2xs);border-bottom:1px solid var(--chrome)}.s-herdr-tab{display:inline-flex;align-items:center;gap:var(--space-xs);border:none;border-bottom:2px solid transparent;background:transparent;color:var(--dim);padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm);cursor:pointer}.s-herdr-tab:hover{color:var(--ink)}.s-herdr-tab--active{color:var(--ink);border-bottom-color:var(--accent)}.s-herdr-tab-count{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--muted)}.s-herdr-pane-label{font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-herdr-agent-mark{display:inline-flex;align-items:center;flex:none;color:var(--accent)}.s-herdr-tab-marks{display:inline-flex;align-items:center;gap:3px;color:var(--muted)}.s-herdr-tab-marks .s-herdr-agent-mark{color:inherit}.s-herdr-pane-spacer{flex:1}.s-herdr-cwd{font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-herdr-focused{font-size:var(--text-2xs);color:var(--accent)}.s-herdr-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex:none}.s-herdr-dot--working{background:var(--amber)}.s-herdr-dot--idle{background:var(--green)}.s-herdr-dot--blocked{background:var(--red)}.s-herdr-dot--done{background:var(--dim)}.s-herdr-badge{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);text-transform:uppercase}.s-herdr-badge--working{color:var(--amber)}.s-herdr-badge--idle{color:var(--green)}.s-herdr-badge--blocked{color:var(--red)}.s-herdr-badge--done{color:var(--dim)}.s-herdr-peek-reason{color:var(--muted);font-size:var(--text-xs)}.s-herdr-layout-window{width:100%;margin-bottom:var(--space-md);border:1px solid rgba(255,255,255,.11);border-radius:10px;background:#0a0b0c;overflow:hidden;box-shadow:0 18px 48px -24px #000000d9,inset 0 1px #ffffff0a}.s-herdr-layout-titlebar{display:flex;align-items:center;gap:var(--space-sm);height:30px;padding:0 var(--space-md);background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.08);font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--muted)}.s-herdr-layout-lights{display:inline-flex;gap:6px;flex:none}.s-herdr-layout-lights i{width:9px;height:9px;border-radius:50%;background:#3a3d40}.s-herdr-layout-lights i:nth-child(1){background:#b0524b}.s-herdr-layout-lights i:nth-child(2){background:#b08a3c}.s-herdr-layout-lights i:nth-child(3){background:#4f9e57}.s-herdr-layout-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-herdr-layout-hint{margin-left:auto;flex:none;color:var(--muted);opacity:.7}.s-herdr-layout{position:relative;width:100%;background:#060708}.s-herdr-layout-pane{position:absolute;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:2px;padding:var(--space-xs) var(--space-sm);border:0;border-radius:0;box-shadow:inset 0 0 0 1px #ffffff1a;background:#ffffff05;color:var(--ink);font:inherit;text-align:left;cursor:pointer;overflow:hidden;transition:background .12s ease,box-shadow .12s ease}.s-herdr-layout-pane:hover{box-shadow:inset 0 0 0 1px var(--accent);background:#ffffff0d;z-index:1}.s-herdr-layout-pane--focused{box-shadow:inset 0 0 0 1px var(--accent);background:#ffffff09}.s-herdr-layout-pane-head{display:flex;align-items:center;gap:var(--space-xs);min-width:0;max-width:100%}.s-herdr-table-wrap{min-width:0;overflow-x:auto;border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-sm)}.s-herdr-table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:var(--text-2xs)}.s-herdr-table thead th{padding:0;background:#0c0c0c;border-bottom:1px solid rgba(255,255,255,.09);text-align:left;font-weight:500}.s-herdr-table thead th button{display:flex;align-items:center;gap:var(--space-xs);width:100%;padding:7px var(--space-sm);border:0;background:transparent;color:#ffffff6b;font:inherit;letter-spacing:var(--tracking-lg);text-transform:uppercase;cursor:pointer}.s-herdr-table thead th button:hover{color:#ffffffd1}.s-herdr-table thead th[aria-sort=ascending] button,.s-herdr-table thead th[aria-sort=descending] button{color:#5eead4eb}.s-herdr-table thead th em{font-style:normal;font-size:8px;opacity:.7}.s-herdr-table tbody td{max-width:260px;padding:6px var(--space-sm);border-bottom:1px solid rgba(255,255,255,.045);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffffff9e}.s-herdr-table tbody tr{cursor:pointer}.s-herdr-table tbody tr:hover td{background:#ffffff07}.s-herdr-table tbody tr.is-focused td{background:#5eead40b}.s-herdr-table tbody tr.is-focused td:first-child{box-shadow:inset 2px 0 0 var(--accent)}.s-herdr-table-pane{color:#ffffffe0}.s-herdr-table-pane strong{font-weight:520}.s-herdr-table-pane .s-herdr-dot{display:inline-block;margin-right:var(--space-xs)}.s-herdr-table-pane .s-herdr-focused{margin-left:var(--space-xs)}.s-herdr-table-harness-mark{display:inline-flex;align-items:center;color:#ffffff9e}.s-herdr-table-drift{text-align:left;font-variant-numeric:tabular-nums}.s-herdr-table-output{color:#ffffff7a}.s-herdr-table-actions{width:1%;white-space:nowrap}.s-herdr-table-actions .s-term-icon-button{margin-left:var(--space-2xs)}.s-herdr-table-actions .s-term-icon-button.is-active{border-color:var(--accent);color:var(--accent)}.s-herdr-table-expand td{max-width:none;padding:0;white-space:normal;background:#ffffff04}.s-herdr-table-expand pre{margin:0;padding:var(--space-sm) var(--space-md);overflow-x:auto;font-family:var(--font-mono);font-size:var(--text-2xs);line-height:1.5;color:#ffffffa8}.s-herdr-table-expand .s-herdr-peek-reason{display:inline-block;padding:var(--space-sm) var(--space-md)}.s-herdr-lightbox{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:10vh 10vw;box-sizing:border-box;background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.s-herdr-live{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;border:1px solid var(--chrome);border-radius:var(--radius-md);overflow:hidden;background:var(--surface);box-shadow:0 24px 64px var(--shadow-soft)}.s-herdr-live-head{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-bottom:1px solid var(--chrome)}.s-herdr-live-body{flex:1;min-height:0;overflow:auto;padding:var(--space-sm) var(--space-md)}.s-herdr-live-body pre{margin:0;font-family:var(--font-mono);font-size:var(--text-2xs);line-height:1.45;white-space:pre-wrap;word-break:break-word;color:var(--dim)}.s-term-icon-button--active{color:var(--accent);border-color:var(--accent)}.s-term-workspace-hosted-body{display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-md);flex:1;border:none;background:transparent;color:inherit;text-align:left;font:inherit}.s-term-workspace-hosted-body--link{cursor:pointer}.s-term-workspace-hosted-body--link:hover{background:var(--scout-chrome-hover)}.s-term-workspace-hosted-tab{display:flex;align-items:center;gap:var(--space-sm)}.s-term-workspace-hosted-tab-dots{display:inline-flex;gap:var(--space-2xs)}.s-term-workspace-hosted-tab-label{font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-term-workspace-hosted-tab-count{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--muted)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as N}from"./api-h5zurxmi.js";const m="srf1.",x=/^(?<backend>[A-Za-z][A-Za-z0-9_-]*):(?<hostSession>.+)$/u,f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";function F(e){return typeof e=="string"&&e.startsWith(m)}function I(e){const n=e.backend.trim(),t=e.hostSession.trim();if(!n||!t)throw new Error("a terminal surface id needs a backend and a host session");const r=e.paneId?.trim()||null,s=e.nodeId?.trim()||null;return`${m}${g(JSON.stringify([s,n,t,r]))}`}function l(e){const n=e?.trim();if(!n)return null;if(n.startsWith(m)){const s=w(n.slice(m.length));if(s===null)return null;let a;try{a=JSON.parse(s)}catch{return null}if(!Array.isArray(a)||a.length<3)return null;const[i,o,d,u]=a;return typeof o!="string"||!o.trim()||typeof d!="string"||!d.trim()?null:{backend:o.trim(),hostSession:d.trim(),paneId:typeof u=="string"&&u.trim()?u.trim():null,nodeId:typeof i=="string"&&i.trim()?i.trim():null}}const t=x.exec(n);if(!t?.groups)return null;const r=t.groups.hostSession.trim();return r?{backend:t.groups.backend,hostSession:r,paneId:null,nodeId:null}:null}function P(e,n){const t=l(e),r=l(n);return!t||!r?!1:t.backend===r.backend&&t.hostSession===r.hostSession&&(t.paneId??null)===(r.paneId??null)&&(t.nodeId??null)===(r.nodeId??null)}function H(e){return`${e.backend}:${e.hostSession}`}function g(e){const n=new TextEncoder().encode(e);let t="";for(let r=0;r<n.length;r+=3){const s=n[r],a=n[r+1],i=n[r+2];if(t+=f[s>>2],t+=f[(s&3)<<4|(a??0)>>4],a===void 0||(t+=f[(a&15)<<2|(i??0)>>6],i===void 0))break;t+=f[i&63]}return t}function w(e){if(!e)return null;const n=[];let t=0,r=0;for(const s of e){const a=f.indexOf(s);if(a<0)return null;t=t<<6|a,r+=6,r>=8&&(r-=8,n.push(t>>r&255))}try{return new TextDecoder("utf-8",{fatal:!0}).decode(new Uint8Array(n))}catch{return null}}function v(e,n={}){return e.surfaceId?e.surfaceId:I({backend:e.backend,hostSession:e.sessionName,paneId:e.paneId,nodeId:n.nodeId??null})}function T(e){if(e.handleNodeId===null)return!0;if(e.surfaceNodeId!==null)return e.handleNodeId===e.surfaceNodeId;const n=e.localNodeId?.trim()||null;return n!==null&&e.handleNodeId===n}function $(e){return l(e.surfaceId)?.nodeId??null}function p(e,n,t={}){const r=l(n);return!r||r.backend!==e.backend||r.hostSession!==e.sessionName||r.paneId!==null&&r.paneId!==(e.paneId??null)?!1:T({handleNodeId:r.nodeId??null,surfaceNodeId:$(e),localNodeId:t.localNodeId})}async function U(e={}){const n=e.includeDiscovered??!0;return(await N(`/api/terminal-sessions${n?"?includeDiscovered=1":""}`)).sessions}function h(e){return e.origin==="discovered"||e.metadata?.registryState==="discovered"}function A(e){return v(e)}function _(e,n){const t=e?.trim(),r=n?.trim();return!t||!r?null:I({backend:t,hostSession:r})}function z(e){const n=l(e);return n?I(n):null}function M(e){const n=l(e);return!n||n.paneId||n.nodeId?null:{backend:n.backend,sessionName:n.hostSession}}function C(e){return e==="tmux"||e==="zellij"||e==="herdr"}function O(e){return C(e.backend)?{backend:e.backend,sessionName:e.sessionName,paneId:e.paneId,socketDir:e.socketDir??null}:null}function G(e,n,t){const r=n?e.find(o=>o.id===n):null;if(!t){const o=r?.surfaces[0];return r&&o?{session:r,surface:o}:null}const a=r?.surfaces.some(o=>p(o,t))?r:e.find(o=>o.surfaces.some(d=>p(d,t))),i=a?.surfaces.find(o=>p(o,t));return!a||!i?null:{session:a,surface:i}}function B(e){if(e.cwd)return e.cwd;const n=e.surfaces[0],t=typeof e.metadata?.backendState=="string"?e.metadata.backendState:n?.state;return t||"terminal"}function k(e,n){const t=typeof e.metadata?.attachedClients=="number"?e.metadata.attachedClients:null;return t!==null?`${t} attached`:(typeof e.metadata?.backendState=="string"?e.metadata.backendState:n.state)??"ready"}function c(e,n){const t=e?.[n];return typeof t=="string"&&t.trim()?t.trim():null}function S(...e){for(const n of e){const t=n?.trim();if(t)return t}return null}function y(e){const n=e?.trim().replace(/\/+$/u,"");if(!n)return"";const t=n.split("/").filter(Boolean);return t.length<=2?n:`${t.at(-2)}/${t.at(-1)}`}function D(e,n){const t=e.metadata,r=S(c(t,"project"),c(t,"projectName"),c(t,"workspace"),c(t,"workspaceQualifier"));if(r)return r;const s=S(c(t,"projectRoot"),c(t,"workspaceRoot"),e.cwd),a=y(s).split("/").pop();if(a)return a;const i=n?.sessionName??e.sourceSessionId,o=/^relay-(.+?)-(?:arts-mac-mini-local-)?(?:claude|codex)$/iu.exec(i);return o?.[1]?o[1]:h(e)?"backend-only":"unscoped"}function L(e){const n=e.metadata,t=c(n,"threadId");if(t)return{kind:"thread",value:t};const r=c(n,"externalSessionId");if(r)return{kind:"external",value:r};const s=c(n,"conversationId");if(s)return{kind:"conversation",value:s};const a=S(c(n,"runtimeSessionId"),c(n,"sessionId"));return a?{kind:"runtime",value:a}:{kind:"source",value:e.sourceSessionId}}function K(e){return e.flatMap(n=>n.surfaces.map(t=>{const r=A(t),s=E(t.sessionName),a=B(n),i=D(n,t),o=L(n),d=y(n.cwd),u=h(n)?"backend":"scout",b=k(n,t);return{id:`${n.id}:${r}`,session:n,surface:t,key:r,title:s,detail:a,project:i,contextKind:o.kind,contextValue:o.value,cwdLabel:d,origin:u,condition:b,searchable:[n.harness,n.sourceSessionId,n.cwd,i,o.kind,o.value,d,c(n.metadata,"currentCommand"),c(n.metadata,"currentPath"),t.backend,t.sessionName,s,a,u,b].filter(Boolean).join(" ").toLowerCase()}}))}function W(e){const n=[],t=[],r=new Set,s=new Set;for(const a of e){if(a.surface.backend==="herdr"){r.has(a.surface.sessionName)||(r.add(a.surface.sessionName),n.push(a));continue}const i=a.session.metadata?.windows;if(a.surface.backend==="tmux"&&typeof i=="number"&&i>1){s.has(a.session.id)||(s.add(a.session.id),n.push(a));continue}t.push(a)}return{managed:n,regular:t}}function E(e){return e.replace(/^relay-/u,"").replace(/-arts-mac-mini-local-(claude|codex)$/u,"").replace(/^(claude|codex|tmux)-/u,"$1 · ")}function R(e){return/^(?:relay|claude|codex)-/u.test(e)?!0:/^(?:session|tmux)-[0-9a-z]{4,}-[0-9a-z]{4,}$/u.test(e)}function q(e){return e.surface.backend==="herdr"?"herdr":e.origin==="backend"||e.surface.backend!=="tmux"?"external":R(e.surface.sessionName)?"tmux-auto":"tmux-named"}function J(e){const n=new Set,t=[];for(const r of e){if(r.surface.backend!=="herdr"){t.push(r);continue}n.has(r.surface.sessionName)||(n.add(r.surface.sessionName),t.push(r))}return t}function V(e){const n=h(e.session)?"Backend":"Scout",t=typeof e.session.metadata?.backendState=="string"?e.session.metadata.backendState:e.surface.state,r=k(e.session,e.surface);return[["Backend",e.surface.backend],["Session",e.surface.sessionName],["Origin",n],["Condition",r],["State",t],["Harness",e.session.harness],["Working Dir",e.session.cwd],["Source Id",e.session.sourceSessionId]].filter(s=>!!s[1])}export{q as a,K as b,J as c,P as d,y as e,U as f,p as g,E as h,C as i,W as j,k,H as l,V as m,_ as n,z as o,l as p,F as q,G as r,A as s,O as t,M as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as o}from"./index-
|
|
1
|
+
import{d as o}from"./index-CzVeWScw.js";async function n(e){if(t(e.agentId),!(await fetch(o("terminalRunPath"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:e.command,...e.cwd?{cwd:e.cwd}:{},...e.agentId?{agentId:e.agentId}:{}})})).ok)throw new Error("Failed to queue takeover")}function t(e){if(!(typeof window>"u"))try{window.localStorage.removeItem("hudson.relay.scout-takeover"),e&&window.localStorage.removeItem(`hudson.relay.scout-takeover-${e}`)}catch{}}export{n as q};
|
package/dist/client/assets/{use-conversation-list-B1T6J_qE.js → use-conversation-list-C5sF6WBR.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r}from"./index-
|
|
1
|
+
import{r}from"./index-CzVeWScw.js";import{f as p}from"./Provider-DSsb2gLR.js";import{a as C}from"./api-h5zurxmi.js";import{u as v}from"./sse-QcU9bikk.js";let e=null,a=null,l=null;const u=new Set,g=[];function f(){return e}function d(){return e??g}function S(){return l}function y(n){return u.add(n),()=>{u.delete(n)}}function h(){for(const n of u)n()}async function L(n={}){if(e&&!n.force)return e;if(a&&!n.force)return a;const o=C("/api/conversations").then(t=>(e=t,l=null,h(),t)).catch(t=>{throw l=t instanceof Error?t.message:String(t),h(),t}).finally(()=>{a=null});return a=o,o}function N(){const n=r.useSyncExternalStore(y,d,d),[o,t]=r.useState(()=>f()==null),[E,c]=r.useState(()=>S()),s=r.useCallback(async(i=!1)=>{f()!=null||t(!0);try{await L({force:i}),c(null)}catch(m){c(p(m))}finally{t(!1)}},[]);return r.useEffect(()=>{s(!1)},[s]),v(i=>{(i.kind==="message.posted"||i.kind==="conversation.upserted")&&s(!0)}),{sessions:n,loading:o,loadError:E,reload:s}}export{N as u};
|
package/dist/client/assets/{use-fleet-active-asks-DLofGhhK.js → use-fleet-active-asks-BOMPW0nl.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as s}from"./index-
|
|
1
|
+
import{r as s}from"./index-CzVeWScw.js";import{a as d}from"./api-h5zurxmi.js";import{u}from"./sse-QcU9bikk.js";const r=new Set(["working","queued","needs_attention"]);function l(){const[n,i]=s.useState(null),a=s.useCallback(async()=>{const t=await d("/api/fleet").catch(()=>null);i(t)},[]);return s.useEffect(()=>{a()},[a]),u(t=>{(t.kind==="message.posted"||t.kind==="flight.updated"||t.kind==="collaboration.event.appended")&&a()}),s.useMemo(()=>{const t=new Map;for(const e of n?.activeAsks??[]){if(!r.has(e.status))continue;const o=t.get(e.agentId);(!o||e.updatedAt>o.updatedAt)&&t.set(e.agentId,e)}return t},[n])}export{l as u};
|
package/dist/client/assets/{use-mesh-ops-items-ByGZk8rU.js → use-mesh-ops-items-Co05vcTV.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as m}from"./index-
|
|
1
|
+
import{r as m}from"./index-CzVeWScw.js";import{a as S}from"./api-h5zurxmi.js";import{u as k}from"./sse-QcU9bikk.js";import{u as E,m as p,j as M,k as l,l as _,n as q}from"./mesh-ops-Cnw3vwAu.js";const w=new Set(["collaboration.event.appended","flight.updated","message.posted"]),y=750;let b=0;const c=new Map,f=new Map,g=new Map;let d=0;function h(e,s){const t=e??"",r=s.background?`background:${t}`:`foreground:${t}:${s.refreshToken??0}`,a=c.get(r);if(a)return s.background||l(e),a;const n=++b;g.set(t,n),s.background||l(e);const i=(async()=>{try{const o=new URLSearchParams;e&&o.set("machineId",e),o.set("limit","200"),s.background||o.set("refresh",String(n));const u=await S(`/api/mesh-ops?${o.toString()}`);if(g.get(t)!==n||p().machineId!==e)return;_(e,Array.isArray(u.items)?u.items:[],u.generatedAt??null,Array.isArray(u.hosts)?u.hosts:[])}catch(o){!s.background&&g.get(t)===n&&p().machineId===e&&q(e,o instanceof Error?o.message:String(o))}finally{f.get(r)===n&&(c.delete(r),f.delete(r))}})();return c.set(r,i),f.set(r,n),i}function F(e){const{items:s,status:t,error:r,refreshToken:a}=E();return m.useEffect(()=>{h(e,{background:!1,refreshToken:a})},[e,a]),k(n=>{if(!w.has(n.kind))return;const i=Date.now();i-d<y||(d=i,h(p().machineId,{background:!0}))}),{items:s,loading:t==="idle"||t==="loading",error:r,refresh:M}}export{F as u};
|
package/dist/client/assets/{use-reduced-motion-Cvk-HRKg.js → use-reduced-motion-Dla-G_Jz.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as h,j as et}from"./index-sUomXsrf.js";const Ce=h.createContext({});function Pe(t){const e=h.useRef(null);return e.current===null&&(e.current=t()),e.current}const Ae=typeof window<"u",Fe=Ae?h.useLayoutEffect:h.useEffect,$t=h.createContext(null);function Re(t,e){t.indexOf(e)===-1&&t.push(e)}function Ee(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Kt=(t,e,n)=>n>e?e:n<t?t:n;let Be=()=>{};const zt={},Ne=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t),Ie=t=>/^0[^.\s]+$/u.test(t);function Oe(t){let e;return()=>(e===void 0&&(e=t()),e)}const Yt=t=>t;class Ut{constructor(){this.subscriptions=[]}add(e){return Re(this.subscriptions,e),()=>Ee(this.subscriptions,e)}notify(e,n,s){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](e,n,s);else for(let r=0;r<i;r++){const a=this.subscriptions[r];a&&a(e,n,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const Xt=t=>t*1e3,q=t=>t/1e3,ke=(t,e)=>e?t*(1e3/e):0,Le=t=>Array.isArray(t)&&typeof t[0]=="number",W=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function De(t,e){let n=new Set,s=new Set,i=!1,r=!1;const a=new WeakSet;let u={delta:0,timestamp:0,isProcessing:!1};function c(l){a.has(l)&&(d.schedule(l),t()),l(u)}const d={schedule:(l,f=!1,p=!1)=>{const m=p&&i?n:s;return f&&a.add(l),m.add(l),l},cancel:l=>{s.delete(l),a.delete(l)},process:l=>{if(u=l,i){r=!0;return}i=!0;const f=n;n=s,s=f,n.forEach(c),n.clear(),i=!1,r&&(r=!1,d.process(l))}};return d}const je=40;function _t(t,e){let n=!1,s=!0;const i={delta:0,timestamp:0,isProcessing:!1},r=()=>n=!0,a=W.reduce((b,V)=>(b[V]=De(r),b),{}),{setup:u,read:c,resolveKeyframes:d,preUpdate:l,update:f,preRender:p,render:g,postRender:m}=a,v=()=>{const b=zt.useManualTiming,V=b?i.timestamp:performance.now();n=!1,b||(i.delta=s?1e3/60:Math.max(Math.min(V-i.timestamp,je),1)),i.timestamp=V,i.isProcessing=!0,u.process(i),c.process(i),d.process(i),l.process(i),f.process(i),p.process(i),g.process(i),m.process(i),i.isProcessing=!1,n&&e&&(s=!1,t(v))},x=()=>{n=!0,s=!0,i.isProcessing||t(v)};return{schedule:W.reduce((b,V)=>{const we=a[V];return b[V]=(Te,Me=!1,xe=!1)=>(n||x(),we.schedule(Te,Me,xe)),b},{}),cancel:b=>{for(let V=0;V<W.length;V++)a[W[V]].cancel(b)},state:i,steps:a}}const{schedule:k,cancel:vt,state:wt,steps:js}=_t(typeof requestAnimationFrame<"u"?requestAnimationFrame:Yt,!0);let z;function We(){z=void 0}const I={now:()=>(z===void 0&&I.set(wt.isProcessing||zt.useManualTiming?wt.timestamp:performance.now()),z),set:t=>{z=t,queueMicrotask(We)}},Ht=t=>e=>typeof e=="string"&&e.startsWith(t),$e=Ht("--"),Ke=Ht("var(--"),Ws=t=>Ke(t)?ze.test(t.split("/*")[0].trim()):!1,ze=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function $s(t){return typeof t!="string"?!1:t.split("/*")[0].includes("var(--")}const R={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},L={...R,transform:t=>Kt(0,1,t)},$={...R,default:1},O=t=>Math.round(t*1e5)/1e5,pt=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Ye(t){return t==null}const Ue=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,mt=(t,e)=>n=>!!(typeof n=="string"&&Ue.test(n)&&n.startsWith(t)||e&&!Ye(n)&&Object.prototype.hasOwnProperty.call(n,e)),Zt=(t,e,n)=>s=>{if(typeof s!="string")return s;const[i,r,a,u]=s.match(pt);return{[t]:parseFloat(i),[e]:parseFloat(r),[n]:parseFloat(a),alpha:u!==void 0?parseFloat(u):1}},Xe=t=>Kt(0,255,t),Q={...R,transform:t=>Math.round(Xe(t))},B={test:mt("rgb","red"),parse:Zt("red","green","blue"),transform:({red:t,green:e,blue:n,alpha:s=1})=>"rgba("+Q.transform(t)+", "+Q.transform(e)+", "+Q.transform(n)+", "+O(L.transform(s))+")"};function _e(t){let e="",n="",s="",i="";return t.length>5?(e=t.substring(1,3),n=t.substring(3,5),s=t.substring(5,7),i=t.substring(7,9)):(e=t.substring(1,2),n=t.substring(2,3),s=t.substring(3,4),i=t.substring(4,5),e+=e,n+=n,s+=s,i+=i),{red:parseInt(e,16),green:parseInt(n,16),blue:parseInt(s,16),alpha:i?parseInt(i,16)/255:1}}const Tt={test:mt("#"),parse:_e,transform:B.transform},D=t=>({test:e=>typeof e=="string"&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),T=D("deg"),F=D("%"),o=D("px"),He=D("vh"),Ze=D("vw"),Mt={...F,parse:t=>F.parse(t)/100,transform:t=>F.transform(t*100)},K={test:mt("hsl","hue"),parse:Zt("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:n,alpha:s=1})=>"hsla("+Math.round(t)+", "+F.transform(O(e))+", "+F.transform(O(n))+", "+O(L.transform(s))+")"},y={test:t=>B.test(t)||Tt.test(t)||K.test(t),parse:t=>B.test(t)?B.parse(t):K.test(t)?K.parse(t):Tt.parse(t),transform:t=>typeof t=="string"?t:t.hasOwnProperty("red")?B.transform(t):K.transform(t),getAnimatableNone:t=>{const e=y.parse(t);return e.alpha=0,y.transform(e)}},Ge=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function qe(t){return isNaN(t)&&typeof t=="string"&&(t.match(pt)?.length||0)+(t.match(Ge)?.length||0)>0}const Gt="number",qt="color",Qe="var",Je="var(",xt="${}",tn=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function gt(t){const e=t.toString(),n=[],s={color:[],number:[],var:[]},i=[];let r=0;const u=e.replace(tn,c=>(y.test(c)?(s.color.push(r),i.push(qt),n.push(y.parse(c))):c.startsWith(Je)?(s.var.push(r),i.push(Qe),n.push(c)):(s.number.push(r),i.push(Gt),n.push(parseFloat(c))),++r,xt)).split(xt);return{values:n,split:u,indexes:s,types:i}}function en(t){return gt(t).values}function Qt({split:t,types:e}){const n=t.length;return s=>{let i="";for(let r=0;r<n;r++)if(i+=t[r],s[r]!==void 0){const a=e[r];a===Gt?i+=O(s[r]):a===qt?i+=y.transform(s[r]):i+=s[r]}return i}}function nn(t){return Qt(gt(t))}const sn=t=>typeof t=="number"?0:y.test(t)?y.getAnimatableNone(t):t,rn=(t,e)=>typeof t=="number"?e?.trim().endsWith("/")?t:0:sn(t);function an(t){const e=gt(t);return Qt(e)(e.values.map((s,i)=>rn(s,e.split[i])))}const M={test:qe,parse:en,createTransformer:nn,getAnimatableNone:an},on=(t,e,n)=>t+(e-t)*n,un=(t,e,n=10)=>{let s="";const i=Math.max(Math.round(e/n),2);for(let r=0;r<i;r++)s+=Math.round(t(r/(i-1))*1e4)/1e4+", ";return`linear(${s.substring(0,s.length-2)})`},cn=t=>t!==null;function ln(t,{repeat:e,repeatType:n="loop"},s,i=1){const r=t.filter(cn),u=i<0||e&&n!=="loop"&&e%2===1?0:r.length-1;return!u||s===void 0?r[u]:s}class fn{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,n){return this.finished.then(e,n)}}function dn(t){for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}const P=t=>t*180/Math.PI,nt=t=>{const e=P(Math.atan2(t[1],t[0]));return st(e)},hn={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:nt,rotateZ:nt,skewX:t=>P(Math.atan(t[1])),skewY:t=>P(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},st=t=>(t=t%360,t<0&&(t+=360),t),Ct=nt,Pt=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),At=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),pn={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:Pt,scaleY:At,scale:t=>(Pt(t)+At(t))/2,rotateX:t=>st(P(Math.atan2(t[6],t[5]))),rotateY:t=>st(P(Math.atan2(-t[2],t[0]))),rotateZ:Ct,rotate:Ct,skewX:t=>P(Math.atan(t[4])),skewY:t=>P(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function Ft(t){return t.includes("scale")?1:0}function it(t,e){if(!t||t==="none")return Ft(e);const n=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let s,i;if(n)s=pn,i=n;else{const u=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);s=hn,i=u}if(!i)return Ft(e);const r=s[e],a=i[1].split(",").map(mn);return typeof r=="function"?r(a):a[r]}const Ks=(t,e)=>{const{transform:n="none"}=getComputedStyle(t);return it(n,e)};function mn(t){return parseFloat(t.trim())}const j=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],yt=new Set([...j,"pathRotation"]),zs=t=>t===R||t===o,gn=new Set(["x","y","z"]),yn=j.filter(t=>!gn.has(t));function bn(t){const e=[];return yn.forEach(n=>{const s=t.getValue(n);s!==void 0&&(e.push([n,s.get()]),s.set(n.startsWith("scale")?1:0))}),e}const Y={width:({x:t},{paddingLeft:e="0",paddingRight:n="0",boxSizing:s})=>{const i=t.max-t.min;return s==="border-box"?i:i-parseFloat(e)-parseFloat(n)},height:({y:t},{paddingTop:e="0",paddingBottom:n="0",boxSizing:s})=>{const i=t.max-t.min;return s==="border-box"?i:i-parseFloat(e)-parseFloat(n)},top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>it(e,"x"),y:(t,{transform:e})=>it(e,"y")};Y.translateX=Y.x;Y.translateY=Y.y;const A=new Set;let rt=!1,at=!1,ot=!1;function Jt(){if(at){const t=Array.from(A).filter(s=>s.needsMeasurement),e=new Set(t.map(s=>s.element)),n=new Map;e.forEach(s=>{const i=bn(s);i.length&&(n.set(s,i),s.render())}),t.forEach(s=>s.measureInitialState()),e.forEach(s=>{s.render();const i=n.get(s);i&&i.forEach(([r,a])=>{s.getValue(r)?.set(a)})}),t.forEach(s=>s.measureEndState()),t.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}at=!1,rt=!1,A.forEach(t=>t.complete(ot)),A.clear()}function te(){A.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(at=!0)})}function Ys(){ot=!0,te(),Jt(),ot=!1}class Sn{constructor(e,n,s,i,r,a=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=n,this.name=s,this.motionValue=i,this.element=r,this.isAsync=a}scheduleResolve(){this.state="scheduled",this.isAsync?(A.add(this),rt||(rt=!0,k.read(te),k.resolveKeyframes(Jt))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:n,element:s,motionValue:i}=this;if(e[0]===null){const r=i?.get(),a=e[e.length-1];if(r!==void 0)e[0]=r;else if(s&&n){const u=s.readValue(n,a);u!=null&&(e[0]=u)}e[0]===void 0&&(e[0]=a),i&&r===void 0&&i.set(e[0])}dn(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),A.delete(this)}cancel(){this.state==="scheduled"&&(A.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const Vn=t=>t.startsWith("--");function vn(t,e,n){Vn(e)?t.style.setProperty(e,n):t.style[e]=n}const wn={};function ee(t,e){const n=Oe(t);return()=>wn[e]??n()}const Tn=ee(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),ne=ee(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),N=([t,e,n,s])=>`cubic-bezier(${t}, ${e}, ${n}, ${s})`,Rt={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:N([0,.65,.55,1]),circOut:N([.55,0,1,.45]),backIn:N([.31,.01,.66,-.59]),backOut:N([.33,1.53,.69,.99])};function se(t,e){if(t)return typeof t=="function"?ne()?un(t,e):"ease-out":Le(t)?N(t):Array.isArray(t)?t.map(n=>se(n,e)||Rt.easeOut):Rt[t]}function Mn(t,e,n,{delay:s=0,duration:i=300,repeat:r=0,repeatType:a="loop",ease:u="easeOut",times:c}={},d=void 0){const l={[e]:n};c&&(l.offset=c);const f=se(u,i);Array.isArray(f)&&(l.easing=f);const p={delay:s,duration:i,easing:Array.isArray(f)?"linear":f,fill:"both",iterations:r+1,direction:a==="reverse"?"alternate":"normal"};return d&&(p.pseudoElement=d),t.animate(l,p)}function xn(t){return typeof t=="function"&&"applyToOptions"in t}function Cn({type:t,...e}){return xn(t)&&ne()?t.applyToOptions(e):(e.duration??(e.duration=300),e.ease??(e.ease="easeOut"),e)}class Pn extends fn{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!e)return;const{element:n,name:s,keyframes:i,pseudoElement:r,allowFlatten:a=!1,finalKeyframe:u,onComplete:c}=e;this.isPseudoElement=!!r,this.allowFlatten=a,this.options=e,Be(typeof e.type!="string");const d=Cn(e);this.animation=Mn(n,s,i,d,r),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!r){const l=ln(i,this.options,u,this.speed);this.updateMotionValue&&this.updateMotionValue(l),vn(n,s,l),this.animation.cancel()}c?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:e}=this;e==="idle"||e==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){const e=this.options?.element;!this.isPseudoElement&&e?.isConnected&&this.animation.commitStyles?.()}get duration(){const e=this.animation.effect?.getComputedTiming?.().duration||0;return q(Number(e))}get iterationDuration(){const{delay:e=0}=this.options||{};return this.duration+q(e)}get time(){return q(Number(this.animation.currentTime)||0)}set time(e){const n=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=Xt(e),n&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(e){this.manualStartTime=this.animation.startTime=e}attachTimeline({timeline:e,rangeStart:n,rangeEnd:s,observe:i}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,e&&Tn()?(this.animation.timeline=e,n&&(this.animation.rangeStart=n),s&&(this.animation.rangeEnd=s),Yt):i(this)}}const An=new Set(["opacity","clipPath","filter","transform"]),Et=30,Fn=t=>!isNaN(parseFloat(t));class Rn{constructor(e,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=s=>{const i=I.now();if(this.updatedAt!==i&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const r of this.dependents)r.dirty()},this.hasAnimated=!1,this.setCurrent(e),this.owner=n.owner}setCurrent(e){this.current=e,this.updatedAt=I.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=Fn(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,n){this.events[e]||(this.events[e]=new Ut);const s=this.events[e].add(n);return e==="change"?()=>{s(),k.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,n){this.passiveEffect=e,this.stopPassiveEffect=n}set(e){this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e)}setWithVelocity(e,n,s){this.set(n),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-s}jump(e,n=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(e){this.dependents||(this.dependents=new Set),this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const e=I.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>Et)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,Et);return ke(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(e){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=e(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function ut(t,e){return new Rn(t,e)}function Bt(t){const e=[{},{}];return t?.values.forEach((n,s)=>{e[0][s]=n.get(),e[1][s]=n.getVelocity()}),e}function ie(t,e,n,s){if(typeof e=="function"){const[i,r]=Bt(s);e=e(n!==void 0?n:t.custom,i,r)}if(typeof e=="string"&&(e=t.variants&&t.variants[e]),typeof e=="function"){const[i,r]=Bt(s);e=e(n!==void 0?n:t.custom,i,r)}return e}const S=t=>!!(t&&t.getVelocity);function En(t){return t.replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`)}const Bn="framerAppearId",Nn="data-"+En(Bn),In={test:t=>t==="auto",parse:t=>t},re=t=>e=>e.test(t),ae=[R,o,F,T,Ze,He,In],Us=t=>ae.find(re(t)),On=new Set(["brightness","contrast","saturate","opacity"]);function kn(t){const[e,n]=t.slice(0,-1).split("(");if(e==="drop-shadow")return t;const[s]=n.match(pt)||[];if(!s)return t;const i=n.replace(s,"");let r=On.has(e)?1:0;return s!==n&&(r*=100),e+"("+r+i+")"}const Ln=/\b([a-z-]*)\(.*?\)/gu,ct={...M,getAnimatableNone:t=>{const e=t.match(Ln);return e?e.map(kn).join(" "):t}},lt={...M,getAnimatableNone:t=>{const e=M.parse(t);return M.createTransformer(t)(e.map(s=>typeof s=="number"?0:typeof s=="object"?{...s,alpha:1}:s))}},Nt={...R,transform:Math.round},Dn={rotate:T,pathRotation:T,rotateX:T,rotateY:T,rotateZ:T,scale:$,scaleX:$,scaleY:$,scaleZ:$,skew:T,skewX:T,skewY:T,distance:o,translateX:o,translateY:o,translateZ:o,x:o,y:o,z:o,perspective:o,transformPerspective:o,opacity:L,originX:Mt,originY:Mt,originZ:o},U={borderWidth:o,borderTopWidth:o,borderRightWidth:o,borderBottomWidth:o,borderLeftWidth:o,borderRadius:o,borderTopLeftRadius:o,borderTopRightRadius:o,borderBottomRightRadius:o,borderBottomLeftRadius:o,width:o,maxWidth:o,height:o,maxHeight:o,top:o,right:o,bottom:o,left:o,inset:o,insetBlock:o,insetBlockStart:o,insetBlockEnd:o,insetInline:o,insetInlineStart:o,insetInlineEnd:o,padding:o,paddingTop:o,paddingRight:o,paddingBottom:o,paddingLeft:o,paddingBlock:o,paddingBlockStart:o,paddingBlockEnd:o,paddingInline:o,paddingInlineStart:o,paddingInlineEnd:o,margin:o,marginTop:o,marginRight:o,marginBottom:o,marginLeft:o,marginBlock:o,marginBlockStart:o,marginBlockEnd:o,marginInline:o,marginInlineStart:o,marginInlineEnd:o,fontSize:o,backgroundPositionX:o,backgroundPositionY:o,...Dn,zIndex:Nt,fillOpacity:L,strokeOpacity:L,numOctaves:Nt},jn={...U,color:y,backgroundColor:y,outlineColor:y,fill:y,stroke:y,borderColor:y,borderTopColor:y,borderRightColor:y,borderBottomColor:y,borderLeftColor:y,filter:ct,WebkitFilter:ct,mask:lt,WebkitMask:lt},Wn=t=>jn[t],$n=new Set([ct,lt]);function Kn(t,e){let n=Wn(t);return $n.has(n)||(n=M),n.getAnimatableNone?n.getAnimatableNone(e):void 0}const ft=(t,e)=>e&&typeof t=="number"?e.transform(t):t,{schedule:zn}=_t(queueMicrotask,!1),Yn=[...ae,y,M],Un=t=>Yn.find(re(t)),It=()=>({translate:0,scale:1,origin:0,originPoint:0}),Xs=()=>({x:It(),y:It()}),Ot=()=>({min:0,max:0}),Xn=()=>({x:Ot(),y:Ot()}),_n=new WeakMap;function oe(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}function dt(t){return typeof t=="string"||Array.isArray(t)}const Hn=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Zn=["initial",...Hn];function Z(t){return oe(t.animate)||Zn.some(e=>dt(t[e]))}function ue(t){return!!(Z(t)||t.variants)}function Gn(t,e,n){for(const s in e){const i=e[s],r=n[s];if(S(i))t.addValue(s,i);else if(S(r))t.addValue(s,ut(i,{owner:t}));else if(r!==i)if(t.hasValue(s)){const a=t.getValue(s);a.liveStyle===!0?a.jump(i):a.hasAnimated||a.set(i)}else{const a=t.getStaticValue(s);t.addValue(s,ut(a!==void 0?a:i,{owner:t}))}}for(const s in n)e[s]===void 0&&t.removeValue(s);return e}const X={current:null},bt={current:!1},qn=typeof window<"u";function ce(){if(bt.current=!0,!!qn)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),e=()=>X.current=t.matches;t.addEventListener("change",e),e()}else X.current=!1}const kt=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let _={};function le(t){_=t}function Qn(){return _}class _s{scrapeMotionValuesFromProps(e,n,s){return{}}constructor({parent:e,props:n,presenceContext:s,reducedMotionConfig:i,skipAnimations:r,blockInitialAnimation:a,visualState:u},c={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=Sn,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const g=I.now();this.renderScheduledAt<g&&(this.renderScheduledAt=g,k.render(this.render,!1,!0))};const{latestValues:d,renderState:l}=u;this.latestValues=d,this.baseTarget={...d},this.initialValues=n.initial?{...d}:{},this.renderState=l,this.parent=e,this.props=n,this.presenceContext=s,this.depth=e?e.depth+1:0,this.reducedMotionConfig=i,this.skipAnimationsConfig=r,this.options=c,this.blockInitialAnimation=!!a,this.isControllingVariants=Z(n),this.isVariantNode=ue(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);const{willChange:f,...p}=this.scrapeMotionValuesFromProps(n,{},this);for(const g in p){const m=p[g];d[g]!==void 0&&S(m)&&m.set(d[g])}}mount(e){if(this.hasBeenMounted)for(const n in this.initialValues)this.values.get(n)?.jump(this.initialValues[n]),this.latestValues[n]=this.initialValues[n];this.current=e,_n.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((n,s)=>this.bindToMotionValue(s,n)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(bt.current||ce(),this.shouldReduceMotion=X.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),vt(this.notifyUpdate),vt(this.render),this.valueSubscriptions.forEach(e=>e()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const e in this.events)this.events[e].clear();for(const e in this.features){const n=this.features[e];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(e){this.children.add(e),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(e)}removeChild(e){this.children.delete(e),this.enteringChildren&&this.enteringChildren.delete(e)}bindToMotionValue(e,n){if(this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)(),n.accelerate&&An.has(e)&&this.current instanceof HTMLElement){const{factory:a,keyframes:u,times:c,ease:d,duration:l}=n.accelerate,f=new Pn({element:this.current,name:e,keyframes:u,times:c,ease:d,duration:Xt(l)}),p=a(f);this.valueSubscriptions.set(e,()=>{p(),f.cancel()});return}const s=yt.has(e);s&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",a=>{this.latestValues[e]=a,this.props.onUpdate&&k.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let r;typeof window<"u"&&window.MotionCheckAppearSync&&(r=window.MotionCheckAppearSync(this,e,n)),this.valueSubscriptions.set(e,()=>{i(),r&&r()})}sortNodePosition(e){return!this.current||!this.sortInstanceNodePosition||this.type!==e.type?0:this.sortInstanceNodePosition(this.current,e.current)}updateFeatures(){let e="animation";for(e in _){const n=_[e];if(!n)continue;const{isEnabled:s,Feature:i}=n;if(!this.features[e]&&i&&s(this.props)&&(this.features[e]=new i(this)),this.features[e]){const r=this.features[e];r.isMounted?r.update():(r.mount(),r.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Xn()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,n){this.latestValues[e]=n}update(e,n){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let s=0;s<kt.length;s++){const i=kt[s];this.propEventSubscriptions[i]&&(this.propEventSubscriptions[i](),delete this.propEventSubscriptions[i]);const r="on"+i,a=e[r];a&&(this.propEventSubscriptions[i]=this.on(i,a))}this.prevMotionValues=Gn(this,this.scrapeMotionValuesFromProps(e,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(e){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(e),()=>n.variantChildren.delete(e)}addValue(e,n){const s=this.values.get(e);n!==s&&(s&&this.removeValue(e),this.bindToMotionValue(e,n),this.values.set(e,n),this.latestValues[e]=n.get())}removeValue(e){this.values.delete(e);const n=this.valueSubscriptions.get(e);n&&(n(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,n){if(this.props.values&&this.props.values[e])return this.props.values[e];let s=this.values.get(e);return s===void 0&&n!==void 0&&(s=ut(n===null?void 0:n,{owner:this}),this.addValue(e,s)),s}readValue(e,n){let s=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return s!=null&&(typeof s=="string"&&(Ne(s)||Ie(s))?s=parseFloat(s):!Un(s)&&M.test(n)&&(s=Kn(e,n)),this.setBaseTarget(e,S(s)?s.get():s)),S(s)?s.get():s}setBaseTarget(e,n){this.baseTarget[e]=n}getBaseTarget(e){const{initial:n}=this.props;let s;if(typeof n=="string"||typeof n=="object"){const r=ie(this.props,n,this.presenceContext?.custom);r&&(s=r[e])}if(n&&s!==void 0)return s;const i=this.getBaseTargetFromProps(this.props,e);return i!==void 0&&!S(i)?i:this.initialValues[e]!==void 0&&s===void 0?void 0:this.baseTarget[e]}on(e,n){return this.events[e]||(this.events[e]=new Ut),this.events[e].add(n)}notify(e,...n){this.events[e]&&this.events[e].notify(...n)}scheduleRenderMicrotask(){zn.render(this.render)}}const Jn={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},ts=j.length;function es(t,e,n){let s="",i=!0;for(let a=0;a<ts;a++){const u=j[a],c=t[u];if(c===void 0)continue;let d=!0;if(typeof c=="number")d=c===(u.startsWith("scale")?1:0);else{const l=parseFloat(c);d=u.startsWith("scale")?l===1:l===0}if(!d||n){const l=ft(c,U[u]);if(!d){i=!1;const f=Jn[u]||u;s+=`${f}(${l}) `}n&&(e[u]=l)}}const r=t.pathRotation;return r&&(i=!1,s+=`rotate(${ft(r,U.pathRotation)}) `),s=s.trim(),n?s=n(e,i?"":s):i&&(s="none"),s}function fe(t,e,n){const{style:s,vars:i,transformOrigin:r}=t;let a=!1,u=!1;for(const c in e){const d=e[c];if(yt.has(c)){a=!0;continue}else if($e(c)){i[c]=d;continue}else{const l=ft(d,U[c]);c.startsWith("origin")?(u=!0,r[c]=l):s[c]=l}}if(e.transform||(a||n?s.transform=es(e,t.transform,n):s.transform&&(s.transform="none")),u){const{originX:c="50%",originY:d="50%",originZ:l=0}=r;s.transformOrigin=`${c} ${d} ${l}`}}function Lt(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}const E={correct:(t,e)=>{if(!e.target)return t;if(typeof t=="string")if(o.test(t))t=parseFloat(t);else return t;const n=Lt(t,e.target.x),s=Lt(t,e.target.y);return`${n}% ${s}%`}},ns={correct:(t,{treeScale:e,projectionDelta:n})=>{const s=t,i=M.parse(t);if(i.length>5)return s;const r=M.createTransformer(t),a=typeof i[0]!="number"?1:0,u=n.x.scale*e.x,c=n.y.scale*e.y;i[0+a]/=u,i[1+a]/=c;const d=on(u,c,.5);return typeof i[2+a]=="number"&&(i[2+a]/=d),typeof i[3+a]=="number"&&(i[3+a]/=d),r(i)}},ss={borderRadius:{...E,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:E,borderTopRightRadius:E,borderBottomLeftRadius:E,borderBottomRightRadius:E,boxShadow:ns};function de(t,{layout:e,layoutId:n}){return yt.has(t)||t.startsWith("origin")||(e||n!==void 0)&&(!!ss[t]||t==="opacity")}function he(t,e,n){const s=t.style,i=e?.style,r={};if(!s)return r;for(const a in s)(S(s[a])||i&&S(i[a])||de(a,t)||n?.getValue(a)?.liveStyle!==void 0)&&(r[a]=s[a]);return r}const is={offset:"stroke-dashoffset",array:"stroke-dasharray"},rs={offset:"strokeDashoffset",array:"strokeDasharray"};function as(t,e,n=1,s=0,i=!0){t.pathLength=1;const r=i?is:rs;t[r.offset]=`${-s}`,t[r.array]=`${e} ${n}`}const os=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function us(t,{attrX:e,attrY:n,attrScale:s,pathLength:i,pathSpacing:r=1,pathOffset:a=0,...u},c,d,l){if(fe(t,u,d),c){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:f,style:p}=t;f.transform&&(p.transform=f.transform,delete f.transform),(p.transform||f.transformOrigin)&&(p.transformOrigin=f.transformOrigin??"50% 50%",delete f.transformOrigin),p.transform&&(p.transformBox=l?.transformBox??"fill-box",delete f.transformBox);for(const g of os)f[g]!==void 0&&(p[g]=f[g],delete f[g]);e!==void 0&&(f.x=e),n!==void 0&&(f.y=n),s!==void 0&&(f.scale=s),i!==void 0&&as(f,i,r,a,!1)}const cs=t=>typeof t=="string"&&t.toLowerCase()==="svg";function ls(t,e,n){const s=he(t,e,n);for(const i in t)if(S(t[i])||S(e[i])){const r=j.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;s[r]=t[i]}return s}function fs(t){return S(t)?t.get():t}const pe=h.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"}),St=h.createContext({strict:!1}),Dt={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let jt=!1;function ds(){if(jt)return;const t={};for(const e in Dt)t[e]={isEnabled:n=>Dt[e].some(s=>!!n[s])};le(t),jt=!0}function me(){return ds(),Qn()}function ht(t){const e=me();for(const n in t)e[n]={...e[n],...t[n]};le(e)}function Hs({children:t,features:e,strict:n=!1}){const[,s]=h.useState(!J(e)),i=h.useRef(void 0);if(!J(e)){const{renderer:r,...a}=e;i.current=r,ht(a)}return h.useEffect(()=>{J(e)&&e().then(({renderer:r,...a})=>{ht(a),i.current=r,s(!0)})},[]),et.jsx(St.Provider,{value:{renderer:i.current,strict:n},children:t})}function J(t){return typeof t=="function"}const hs=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function H(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||hs.has(t)}let ge=t=>!H(t);function ps(t){typeof t=="function"&&(ge=e=>e.startsWith("on")?!H(e):t(e))}try{ps(require("@emotion/is-prop-valid").default)}catch{}function ms(t,e,n){const s={};for(const i in t)i==="values"&&typeof t.values=="object"||S(t[i])||(ge(i)||n===!0&&H(i)||!e&&!H(i)||t.draggable&&i.startsWith("onDrag"))&&(s[i]=t[i]);return s}const G=h.createContext({});function gs(t,e){if(Z(t)){const{initial:n,animate:s}=t;return{initial:n===!1||dt(n)?n:void 0,animate:dt(s)?s:void 0}}return t.inherit!==!1?e:{}}function ys(t){const{initial:e,animate:n}=gs(t,h.useContext(G));return h.useMemo(()=>({initial:e,animate:n}),[Wt(e),Wt(n)])}function Wt(t){return Array.isArray(t)?t.join(" "):t}const Vt=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function ye(t,e,n){for(const s in e)!S(e[s])&&!de(s,n)&&(t[s]=e[s])}function bs({transformTemplate:t},e){return h.useMemo(()=>{const n=Vt();return fe(n,e,t),Object.assign({},n.vars,n.style)},[e])}function Ss(t,e){const n=t.style||{},s={};return ye(s,n,t),Object.assign(s,bs(t,e)),s}function Vs(t,e){const n={},s=Ss(t,e);return t.drag&&t.dragListener!==!1&&(n.draggable=!1,s.userSelect=s.WebkitUserSelect=s.WebkitTouchCallout="none",s.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(n.tabIndex=0),n.style=s,n}const be=()=>({...Vt(),attrs:{}});function vs(t,e,n,s){const i=h.useMemo(()=>{const r=be();return us(r,e,cs(s),t.transformTemplate,t.style),{...r.attrs,style:{...r.style}}},[e]);if(t.style){const r={};ye(r,t.style,t),i.style={...r,...i.style}}return i}const ws=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Se(t){return typeof t!="string"||t.includes("-")?!1:!!(ws.indexOf(t)>-1||/[A-Z]/u.test(t))}function Ts(t,e,n,{latestValues:s},i,r=!1,a){const c=(a??Se(t)?vs:Vs)(e,s,i,t),d=ms(e,typeof t=="string",r),l=t!==h.Fragment?{...d,...c,ref:n}:{},{children:f}=e,p=h.useMemo(()=>S(f)?f.get():f,[f]);return h.createElement(t,{...l,children:p})}function Ms({scrapeMotionValuesFromProps:t,createRenderState:e},n,s,i){return{latestValues:xs(n,s,i,t),renderState:e()}}function xs(t,e,n,s){const i={},r=s(t,{});for(const p in r)i[p]=fs(r[p]);let{initial:a,animate:u}=t;const c=Z(t),d=ue(t);e&&d&&!c&&t.inherit!==!1&&(a===void 0&&(a=e.initial),u===void 0&&(u=e.animate));let l=n?n.initial===!1:!1;l=l||a===!1;const f=l?u:a;if(f&&typeof f!="boolean"&&!oe(f)){const p=Array.isArray(f)?f:[f];for(let g=0;g<p.length;g++){const m=ie(t,p[g]);if(m){const{transitionEnd:v,transition:x,...C}=m;for(const w in C){let b=C[w];if(Array.isArray(b)){const V=l?b.length-1:0;b=b[V]}b!==null&&(i[w]=b)}for(const w in v)i[w]=v[w]}}}return i}const Ve=t=>(e,n)=>{const s=h.useContext(G),i=h.useContext($t),r=()=>Ms(t,e,s,i);return n?r():Pe(r)},Cs=Ve({scrapeMotionValuesFromProps:he,createRenderState:Vt}),Ps=Ve({scrapeMotionValuesFromProps:ls,createRenderState:be}),As=Symbol.for("motionComponentSymbol");function Fs(t,e,n){const s=h.useRef(n);h.useInsertionEffect(()=>{s.current=n});const i=h.useRef(null);return h.useCallback(r=>{r&&t.onMount?.(r),e&&(r?e.mount(r):e.unmount());const a=s.current;if(typeof a=="function")if(r){const u=a(r);typeof u=="function"&&(i.current=u)}else i.current?(i.current(),i.current=null):a(r);else a&&(a.current=r)},[e])}const Rs=h.createContext({});function Es(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function Bs(t,e,n,s,i,r){const{visualElement:a}=h.useContext(G),u=h.useContext(St),c=h.useContext($t),d=h.useContext(pe),l=d.reducedMotion,f=d.skipAnimations,p=h.useRef(null),g=h.useRef(!1);s=s||u.renderer,!p.current&&s&&(p.current=s(t,{visualState:e,parent:a,props:n,presenceContext:c,blockInitialAnimation:c?c.initial===!1:!1,reducedMotionConfig:l,skipAnimations:f,isSVG:r}),g.current&&p.current&&(p.current.manuallyAnimateOnMount=!0));const m=p.current,v=h.useContext(Rs);m&&!m.projection&&i&&(m.type==="html"||m.type==="svg")&&Ns(p.current,n,i,v);const x=h.useRef(!1);h.useInsertionEffect(()=>{m&&x.current&&m.update(n,c)});const C=n[Nn],w=h.useRef(!!C&&typeof window<"u"&&!window.MotionHandoffIsComplete?.(C)&&window.MotionHasOptimisedAnimation?.(C));return Fe(()=>{g.current=!0,m&&(x.current=!0,window.MotionIsMounted=!0,m.updateFeatures(),m.scheduleRenderMicrotask(),w.current&&m.animationState&&m.animationState.animateChanges())}),h.useEffect(()=>{m&&(!w.current&&m.animationState&&m.animationState.animateChanges(),w.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(C)}),w.current=!1),m.enteringChildren=void 0)}),m}function Ns(t,e,n,s){const{layoutId:i,layout:r,drag:a,dragConstraints:u,layoutScroll:c,layoutRoot:d,layoutAnchor:l,layoutCrossfade:f}=e;t.projection=new n(t.latestValues,e["data-framer-portal-id"]?void 0:ve(t.parent)),t.projection.setOptions({layoutId:i,layout:r,alwaysMeasureLayout:!!a||u&&Es(u),visualElement:t,animationType:typeof r=="string"?r:"both",initialPromotionConfig:s,crossfade:f,layoutScroll:c,layoutRoot:d,layoutAnchor:l})}function ve(t){if(t)return t.options.allowProjection!==!1?t.projection:ve(t.parent)}function tt(t,{forwardMotionProps:e=!1,type:n}={},s,i){s&&ht(s);const r=n?n==="svg":Se(t),a=r?Ps:Cs;function u(d,l){let f;const p={...h.useContext(pe),...d,layoutId:Is(d)},{isStatic:g}=p,m=ys(d),v=a(d,g);if(!g&&typeof window<"u"){Os();const x=ks(p);f=x.MeasureLayout,m.visualElement=Bs(t,v,p,i,x.ProjectionNode,r)}return et.jsxs(G.Provider,{value:m,children:[f&&m.visualElement?et.jsx(f,{visualElement:m.visualElement,...p}):null,Ts(t,d,Fs(v,m.visualElement,l),v,g,e,r)]})}u.displayName=`motion.${typeof t=="string"?t:`create(${t.displayName??t.name??""})`}`;const c=h.forwardRef(u);return c[As]=t,c}function Is({layoutId:t}){const e=h.useContext(Ce).id;return e&&t!==void 0?e+"-"+t:t}function Os(t,e){h.useContext(St).strict}function ks(t){const e=me(),{drag:n,layout:s}=e;if(!n&&!s)return{};const i={...n,...s};return{MeasureLayout:n?.isEnabled(t)||s?.isEnabled(t)?i.MeasureLayout:void 0,ProjectionNode:i.ProjectionNode}}function Ls(t,e){if(typeof Proxy>"u")return tt;const n=new Map,s=(r,a)=>tt(r,a,t,e),i=(r,a)=>s(r,a);return new Proxy(i,{get:(r,a)=>a==="create"?s:(n.has(a)||n.set(a,tt(a,void 0,t,e)),n.get(a))})}const Zs=Ls();function Gs(){!bt.current&&ce();const[t]=h.useState(X.current);return t}export{Xn as $,Oe as A,Ys as B,yt as C,Ne as D,ie as E,j as F,ut as G,S as H,Nn as I,Ie as J,Sn as K,Hs as L,zt as M,Pn as N,Kn as O,Us as P,$s as Q,Y as R,zs as S,Ft as T,Ks as U,_s as V,fn as W,$e as X,fe as Y,he as Z,En as _,Be as a,ls as a0,us as a1,cs as a2,Wn as a3,dt as a4,Zn as a5,oe as a6,Hn as a7,Se as a8,F as a9,o as aa,Re as ab,Ee as ac,Ut as ad,js as ae,zn as af,Xs as ag,fs as ah,ss as ai,pe as aj,Pe as ak,$t as al,Fe as am,Ce as an,Es as ao,Rs as ap,Ls as aq,on as b,Tt as c,Ws as d,y as e,M as f,gt as g,K as h,Le as i,wt as j,vt as k,k as l,Zs as m,Yt as n,q as o,Kt as p,un as q,B as r,Xt as s,I as t,Gs as u,ke as v,ln as w,vn as x,xn as y,An as z};
|
|
1
|
+
import{r as h,j as et}from"./index-CzVeWScw.js";const Ce=h.createContext({});function Pe(t){const e=h.useRef(null);return e.current===null&&(e.current=t()),e.current}const Ae=typeof window<"u",Fe=Ae?h.useLayoutEffect:h.useEffect,$t=h.createContext(null);function Re(t,e){t.indexOf(e)===-1&&t.push(e)}function Ee(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Kt=(t,e,n)=>n>e?e:n<t?t:n;let Be=()=>{};const zt={},Ne=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t),Ie=t=>/^0[^.\s]+$/u.test(t);function Oe(t){let e;return()=>(e===void 0&&(e=t()),e)}const Yt=t=>t;class Ut{constructor(){this.subscriptions=[]}add(e){return Re(this.subscriptions,e),()=>Ee(this.subscriptions,e)}notify(e,n,s){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](e,n,s);else for(let r=0;r<i;r++){const a=this.subscriptions[r];a&&a(e,n,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const Xt=t=>t*1e3,q=t=>t/1e3,ke=(t,e)=>e?t*(1e3/e):0,Le=t=>Array.isArray(t)&&typeof t[0]=="number",W=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function De(t,e){let n=new Set,s=new Set,i=!1,r=!1;const a=new WeakSet;let u={delta:0,timestamp:0,isProcessing:!1};function c(l){a.has(l)&&(d.schedule(l),t()),l(u)}const d={schedule:(l,f=!1,p=!1)=>{const m=p&&i?n:s;return f&&a.add(l),m.add(l),l},cancel:l=>{s.delete(l),a.delete(l)},process:l=>{if(u=l,i){r=!0;return}i=!0;const f=n;n=s,s=f,n.forEach(c),n.clear(),i=!1,r&&(r=!1,d.process(l))}};return d}const je=40;function _t(t,e){let n=!1,s=!0;const i={delta:0,timestamp:0,isProcessing:!1},r=()=>n=!0,a=W.reduce((b,V)=>(b[V]=De(r),b),{}),{setup:u,read:c,resolveKeyframes:d,preUpdate:l,update:f,preRender:p,render:g,postRender:m}=a,v=()=>{const b=zt.useManualTiming,V=b?i.timestamp:performance.now();n=!1,b||(i.delta=s?1e3/60:Math.max(Math.min(V-i.timestamp,je),1)),i.timestamp=V,i.isProcessing=!0,u.process(i),c.process(i),d.process(i),l.process(i),f.process(i),p.process(i),g.process(i),m.process(i),i.isProcessing=!1,n&&e&&(s=!1,t(v))},x=()=>{n=!0,s=!0,i.isProcessing||t(v)};return{schedule:W.reduce((b,V)=>{const we=a[V];return b[V]=(Te,Me=!1,xe=!1)=>(n||x(),we.schedule(Te,Me,xe)),b},{}),cancel:b=>{for(let V=0;V<W.length;V++)a[W[V]].cancel(b)},state:i,steps:a}}const{schedule:k,cancel:vt,state:wt,steps:js}=_t(typeof requestAnimationFrame<"u"?requestAnimationFrame:Yt,!0);let z;function We(){z=void 0}const I={now:()=>(z===void 0&&I.set(wt.isProcessing||zt.useManualTiming?wt.timestamp:performance.now()),z),set:t=>{z=t,queueMicrotask(We)}},Ht=t=>e=>typeof e=="string"&&e.startsWith(t),$e=Ht("--"),Ke=Ht("var(--"),Ws=t=>Ke(t)?ze.test(t.split("/*")[0].trim()):!1,ze=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function $s(t){return typeof t!="string"?!1:t.split("/*")[0].includes("var(--")}const R={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},L={...R,transform:t=>Kt(0,1,t)},$={...R,default:1},O=t=>Math.round(t*1e5)/1e5,pt=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Ye(t){return t==null}const Ue=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,mt=(t,e)=>n=>!!(typeof n=="string"&&Ue.test(n)&&n.startsWith(t)||e&&!Ye(n)&&Object.prototype.hasOwnProperty.call(n,e)),Zt=(t,e,n)=>s=>{if(typeof s!="string")return s;const[i,r,a,u]=s.match(pt);return{[t]:parseFloat(i),[e]:parseFloat(r),[n]:parseFloat(a),alpha:u!==void 0?parseFloat(u):1}},Xe=t=>Kt(0,255,t),Q={...R,transform:t=>Math.round(Xe(t))},B={test:mt("rgb","red"),parse:Zt("red","green","blue"),transform:({red:t,green:e,blue:n,alpha:s=1})=>"rgba("+Q.transform(t)+", "+Q.transform(e)+", "+Q.transform(n)+", "+O(L.transform(s))+")"};function _e(t){let e="",n="",s="",i="";return t.length>5?(e=t.substring(1,3),n=t.substring(3,5),s=t.substring(5,7),i=t.substring(7,9)):(e=t.substring(1,2),n=t.substring(2,3),s=t.substring(3,4),i=t.substring(4,5),e+=e,n+=n,s+=s,i+=i),{red:parseInt(e,16),green:parseInt(n,16),blue:parseInt(s,16),alpha:i?parseInt(i,16)/255:1}}const Tt={test:mt("#"),parse:_e,transform:B.transform},D=t=>({test:e=>typeof e=="string"&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),T=D("deg"),F=D("%"),o=D("px"),He=D("vh"),Ze=D("vw"),Mt={...F,parse:t=>F.parse(t)/100,transform:t=>F.transform(t*100)},K={test:mt("hsl","hue"),parse:Zt("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:n,alpha:s=1})=>"hsla("+Math.round(t)+", "+F.transform(O(e))+", "+F.transform(O(n))+", "+O(L.transform(s))+")"},y={test:t=>B.test(t)||Tt.test(t)||K.test(t),parse:t=>B.test(t)?B.parse(t):K.test(t)?K.parse(t):Tt.parse(t),transform:t=>typeof t=="string"?t:t.hasOwnProperty("red")?B.transform(t):K.transform(t),getAnimatableNone:t=>{const e=y.parse(t);return e.alpha=0,y.transform(e)}},Ge=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function qe(t){return isNaN(t)&&typeof t=="string"&&(t.match(pt)?.length||0)+(t.match(Ge)?.length||0)>0}const Gt="number",qt="color",Qe="var",Je="var(",xt="${}",tn=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function gt(t){const e=t.toString(),n=[],s={color:[],number:[],var:[]},i=[];let r=0;const u=e.replace(tn,c=>(y.test(c)?(s.color.push(r),i.push(qt),n.push(y.parse(c))):c.startsWith(Je)?(s.var.push(r),i.push(Qe),n.push(c)):(s.number.push(r),i.push(Gt),n.push(parseFloat(c))),++r,xt)).split(xt);return{values:n,split:u,indexes:s,types:i}}function en(t){return gt(t).values}function Qt({split:t,types:e}){const n=t.length;return s=>{let i="";for(let r=0;r<n;r++)if(i+=t[r],s[r]!==void 0){const a=e[r];a===Gt?i+=O(s[r]):a===qt?i+=y.transform(s[r]):i+=s[r]}return i}}function nn(t){return Qt(gt(t))}const sn=t=>typeof t=="number"?0:y.test(t)?y.getAnimatableNone(t):t,rn=(t,e)=>typeof t=="number"?e?.trim().endsWith("/")?t:0:sn(t);function an(t){const e=gt(t);return Qt(e)(e.values.map((s,i)=>rn(s,e.split[i])))}const M={test:qe,parse:en,createTransformer:nn,getAnimatableNone:an},on=(t,e,n)=>t+(e-t)*n,un=(t,e,n=10)=>{let s="";const i=Math.max(Math.round(e/n),2);for(let r=0;r<i;r++)s+=Math.round(t(r/(i-1))*1e4)/1e4+", ";return`linear(${s.substring(0,s.length-2)})`},cn=t=>t!==null;function ln(t,{repeat:e,repeatType:n="loop"},s,i=1){const r=t.filter(cn),u=i<0||e&&n!=="loop"&&e%2===1?0:r.length-1;return!u||s===void 0?r[u]:s}class fn{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,n){return this.finished.then(e,n)}}function dn(t){for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}const P=t=>t*180/Math.PI,nt=t=>{const e=P(Math.atan2(t[1],t[0]));return st(e)},hn={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:nt,rotateZ:nt,skewX:t=>P(Math.atan(t[1])),skewY:t=>P(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},st=t=>(t=t%360,t<0&&(t+=360),t),Ct=nt,Pt=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),At=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),pn={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:Pt,scaleY:At,scale:t=>(Pt(t)+At(t))/2,rotateX:t=>st(P(Math.atan2(t[6],t[5]))),rotateY:t=>st(P(Math.atan2(-t[2],t[0]))),rotateZ:Ct,rotate:Ct,skewX:t=>P(Math.atan(t[4])),skewY:t=>P(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function Ft(t){return t.includes("scale")?1:0}function it(t,e){if(!t||t==="none")return Ft(e);const n=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let s,i;if(n)s=pn,i=n;else{const u=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);s=hn,i=u}if(!i)return Ft(e);const r=s[e],a=i[1].split(",").map(mn);return typeof r=="function"?r(a):a[r]}const Ks=(t,e)=>{const{transform:n="none"}=getComputedStyle(t);return it(n,e)};function mn(t){return parseFloat(t.trim())}const j=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],yt=new Set([...j,"pathRotation"]),zs=t=>t===R||t===o,gn=new Set(["x","y","z"]),yn=j.filter(t=>!gn.has(t));function bn(t){const e=[];return yn.forEach(n=>{const s=t.getValue(n);s!==void 0&&(e.push([n,s.get()]),s.set(n.startsWith("scale")?1:0))}),e}const Y={width:({x:t},{paddingLeft:e="0",paddingRight:n="0",boxSizing:s})=>{const i=t.max-t.min;return s==="border-box"?i:i-parseFloat(e)-parseFloat(n)},height:({y:t},{paddingTop:e="0",paddingBottom:n="0",boxSizing:s})=>{const i=t.max-t.min;return s==="border-box"?i:i-parseFloat(e)-parseFloat(n)},top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>it(e,"x"),y:(t,{transform:e})=>it(e,"y")};Y.translateX=Y.x;Y.translateY=Y.y;const A=new Set;let rt=!1,at=!1,ot=!1;function Jt(){if(at){const t=Array.from(A).filter(s=>s.needsMeasurement),e=new Set(t.map(s=>s.element)),n=new Map;e.forEach(s=>{const i=bn(s);i.length&&(n.set(s,i),s.render())}),t.forEach(s=>s.measureInitialState()),e.forEach(s=>{s.render();const i=n.get(s);i&&i.forEach(([r,a])=>{s.getValue(r)?.set(a)})}),t.forEach(s=>s.measureEndState()),t.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}at=!1,rt=!1,A.forEach(t=>t.complete(ot)),A.clear()}function te(){A.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(at=!0)})}function Ys(){ot=!0,te(),Jt(),ot=!1}class Sn{constructor(e,n,s,i,r,a=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=n,this.name=s,this.motionValue=i,this.element=r,this.isAsync=a}scheduleResolve(){this.state="scheduled",this.isAsync?(A.add(this),rt||(rt=!0,k.read(te),k.resolveKeyframes(Jt))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:n,element:s,motionValue:i}=this;if(e[0]===null){const r=i?.get(),a=e[e.length-1];if(r!==void 0)e[0]=r;else if(s&&n){const u=s.readValue(n,a);u!=null&&(e[0]=u)}e[0]===void 0&&(e[0]=a),i&&r===void 0&&i.set(e[0])}dn(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),A.delete(this)}cancel(){this.state==="scheduled"&&(A.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const Vn=t=>t.startsWith("--");function vn(t,e,n){Vn(e)?t.style.setProperty(e,n):t.style[e]=n}const wn={};function ee(t,e){const n=Oe(t);return()=>wn[e]??n()}const Tn=ee(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),ne=ee(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),N=([t,e,n,s])=>`cubic-bezier(${t}, ${e}, ${n}, ${s})`,Rt={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:N([0,.65,.55,1]),circOut:N([.55,0,1,.45]),backIn:N([.31,.01,.66,-.59]),backOut:N([.33,1.53,.69,.99])};function se(t,e){if(t)return typeof t=="function"?ne()?un(t,e):"ease-out":Le(t)?N(t):Array.isArray(t)?t.map(n=>se(n,e)||Rt.easeOut):Rt[t]}function Mn(t,e,n,{delay:s=0,duration:i=300,repeat:r=0,repeatType:a="loop",ease:u="easeOut",times:c}={},d=void 0){const l={[e]:n};c&&(l.offset=c);const f=se(u,i);Array.isArray(f)&&(l.easing=f);const p={delay:s,duration:i,easing:Array.isArray(f)?"linear":f,fill:"both",iterations:r+1,direction:a==="reverse"?"alternate":"normal"};return d&&(p.pseudoElement=d),t.animate(l,p)}function xn(t){return typeof t=="function"&&"applyToOptions"in t}function Cn({type:t,...e}){return xn(t)&&ne()?t.applyToOptions(e):(e.duration??(e.duration=300),e.ease??(e.ease="easeOut"),e)}class Pn extends fn{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!e)return;const{element:n,name:s,keyframes:i,pseudoElement:r,allowFlatten:a=!1,finalKeyframe:u,onComplete:c}=e;this.isPseudoElement=!!r,this.allowFlatten=a,this.options=e,Be(typeof e.type!="string");const d=Cn(e);this.animation=Mn(n,s,i,d,r),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!r){const l=ln(i,this.options,u,this.speed);this.updateMotionValue&&this.updateMotionValue(l),vn(n,s,l),this.animation.cancel()}c?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:e}=this;e==="idle"||e==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){const e=this.options?.element;!this.isPseudoElement&&e?.isConnected&&this.animation.commitStyles?.()}get duration(){const e=this.animation.effect?.getComputedTiming?.().duration||0;return q(Number(e))}get iterationDuration(){const{delay:e=0}=this.options||{};return this.duration+q(e)}get time(){return q(Number(this.animation.currentTime)||0)}set time(e){const n=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=Xt(e),n&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(e){this.manualStartTime=this.animation.startTime=e}attachTimeline({timeline:e,rangeStart:n,rangeEnd:s,observe:i}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,e&&Tn()?(this.animation.timeline=e,n&&(this.animation.rangeStart=n),s&&(this.animation.rangeEnd=s),Yt):i(this)}}const An=new Set(["opacity","clipPath","filter","transform"]),Et=30,Fn=t=>!isNaN(parseFloat(t));class Rn{constructor(e,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=s=>{const i=I.now();if(this.updatedAt!==i&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const r of this.dependents)r.dirty()},this.hasAnimated=!1,this.setCurrent(e),this.owner=n.owner}setCurrent(e){this.current=e,this.updatedAt=I.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=Fn(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,n){this.events[e]||(this.events[e]=new Ut);const s=this.events[e].add(n);return e==="change"?()=>{s(),k.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,n){this.passiveEffect=e,this.stopPassiveEffect=n}set(e){this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e)}setWithVelocity(e,n,s){this.set(n),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-s}jump(e,n=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(e){this.dependents||(this.dependents=new Set),this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const e=I.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>Et)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,Et);return ke(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(e){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=e(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function ut(t,e){return new Rn(t,e)}function Bt(t){const e=[{},{}];return t?.values.forEach((n,s)=>{e[0][s]=n.get(),e[1][s]=n.getVelocity()}),e}function ie(t,e,n,s){if(typeof e=="function"){const[i,r]=Bt(s);e=e(n!==void 0?n:t.custom,i,r)}if(typeof e=="string"&&(e=t.variants&&t.variants[e]),typeof e=="function"){const[i,r]=Bt(s);e=e(n!==void 0?n:t.custom,i,r)}return e}const S=t=>!!(t&&t.getVelocity);function En(t){return t.replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`)}const Bn="framerAppearId",Nn="data-"+En(Bn),In={test:t=>t==="auto",parse:t=>t},re=t=>e=>e.test(t),ae=[R,o,F,T,Ze,He,In],Us=t=>ae.find(re(t)),On=new Set(["brightness","contrast","saturate","opacity"]);function kn(t){const[e,n]=t.slice(0,-1).split("(");if(e==="drop-shadow")return t;const[s]=n.match(pt)||[];if(!s)return t;const i=n.replace(s,"");let r=On.has(e)?1:0;return s!==n&&(r*=100),e+"("+r+i+")"}const Ln=/\b([a-z-]*)\(.*?\)/gu,ct={...M,getAnimatableNone:t=>{const e=t.match(Ln);return e?e.map(kn).join(" "):t}},lt={...M,getAnimatableNone:t=>{const e=M.parse(t);return M.createTransformer(t)(e.map(s=>typeof s=="number"?0:typeof s=="object"?{...s,alpha:1}:s))}},Nt={...R,transform:Math.round},Dn={rotate:T,pathRotation:T,rotateX:T,rotateY:T,rotateZ:T,scale:$,scaleX:$,scaleY:$,scaleZ:$,skew:T,skewX:T,skewY:T,distance:o,translateX:o,translateY:o,translateZ:o,x:o,y:o,z:o,perspective:o,transformPerspective:o,opacity:L,originX:Mt,originY:Mt,originZ:o},U={borderWidth:o,borderTopWidth:o,borderRightWidth:o,borderBottomWidth:o,borderLeftWidth:o,borderRadius:o,borderTopLeftRadius:o,borderTopRightRadius:o,borderBottomRightRadius:o,borderBottomLeftRadius:o,width:o,maxWidth:o,height:o,maxHeight:o,top:o,right:o,bottom:o,left:o,inset:o,insetBlock:o,insetBlockStart:o,insetBlockEnd:o,insetInline:o,insetInlineStart:o,insetInlineEnd:o,padding:o,paddingTop:o,paddingRight:o,paddingBottom:o,paddingLeft:o,paddingBlock:o,paddingBlockStart:o,paddingBlockEnd:o,paddingInline:o,paddingInlineStart:o,paddingInlineEnd:o,margin:o,marginTop:o,marginRight:o,marginBottom:o,marginLeft:o,marginBlock:o,marginBlockStart:o,marginBlockEnd:o,marginInline:o,marginInlineStart:o,marginInlineEnd:o,fontSize:o,backgroundPositionX:o,backgroundPositionY:o,...Dn,zIndex:Nt,fillOpacity:L,strokeOpacity:L,numOctaves:Nt},jn={...U,color:y,backgroundColor:y,outlineColor:y,fill:y,stroke:y,borderColor:y,borderTopColor:y,borderRightColor:y,borderBottomColor:y,borderLeftColor:y,filter:ct,WebkitFilter:ct,mask:lt,WebkitMask:lt},Wn=t=>jn[t],$n=new Set([ct,lt]);function Kn(t,e){let n=Wn(t);return $n.has(n)||(n=M),n.getAnimatableNone?n.getAnimatableNone(e):void 0}const ft=(t,e)=>e&&typeof t=="number"?e.transform(t):t,{schedule:zn}=_t(queueMicrotask,!1),Yn=[...ae,y,M],Un=t=>Yn.find(re(t)),It=()=>({translate:0,scale:1,origin:0,originPoint:0}),Xs=()=>({x:It(),y:It()}),Ot=()=>({min:0,max:0}),Xn=()=>({x:Ot(),y:Ot()}),_n=new WeakMap;function oe(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}function dt(t){return typeof t=="string"||Array.isArray(t)}const Hn=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Zn=["initial",...Hn];function Z(t){return oe(t.animate)||Zn.some(e=>dt(t[e]))}function ue(t){return!!(Z(t)||t.variants)}function Gn(t,e,n){for(const s in e){const i=e[s],r=n[s];if(S(i))t.addValue(s,i);else if(S(r))t.addValue(s,ut(i,{owner:t}));else if(r!==i)if(t.hasValue(s)){const a=t.getValue(s);a.liveStyle===!0?a.jump(i):a.hasAnimated||a.set(i)}else{const a=t.getStaticValue(s);t.addValue(s,ut(a!==void 0?a:i,{owner:t}))}}for(const s in n)e[s]===void 0&&t.removeValue(s);return e}const X={current:null},bt={current:!1},qn=typeof window<"u";function ce(){if(bt.current=!0,!!qn)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),e=()=>X.current=t.matches;t.addEventListener("change",e),e()}else X.current=!1}const kt=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let _={};function le(t){_=t}function Qn(){return _}class _s{scrapeMotionValuesFromProps(e,n,s){return{}}constructor({parent:e,props:n,presenceContext:s,reducedMotionConfig:i,skipAnimations:r,blockInitialAnimation:a,visualState:u},c={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=Sn,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const g=I.now();this.renderScheduledAt<g&&(this.renderScheduledAt=g,k.render(this.render,!1,!0))};const{latestValues:d,renderState:l}=u;this.latestValues=d,this.baseTarget={...d},this.initialValues=n.initial?{...d}:{},this.renderState=l,this.parent=e,this.props=n,this.presenceContext=s,this.depth=e?e.depth+1:0,this.reducedMotionConfig=i,this.skipAnimationsConfig=r,this.options=c,this.blockInitialAnimation=!!a,this.isControllingVariants=Z(n),this.isVariantNode=ue(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);const{willChange:f,...p}=this.scrapeMotionValuesFromProps(n,{},this);for(const g in p){const m=p[g];d[g]!==void 0&&S(m)&&m.set(d[g])}}mount(e){if(this.hasBeenMounted)for(const n in this.initialValues)this.values.get(n)?.jump(this.initialValues[n]),this.latestValues[n]=this.initialValues[n];this.current=e,_n.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((n,s)=>this.bindToMotionValue(s,n)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(bt.current||ce(),this.shouldReduceMotion=X.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),vt(this.notifyUpdate),vt(this.render),this.valueSubscriptions.forEach(e=>e()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const e in this.events)this.events[e].clear();for(const e in this.features){const n=this.features[e];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(e){this.children.add(e),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(e)}removeChild(e){this.children.delete(e),this.enteringChildren&&this.enteringChildren.delete(e)}bindToMotionValue(e,n){if(this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)(),n.accelerate&&An.has(e)&&this.current instanceof HTMLElement){const{factory:a,keyframes:u,times:c,ease:d,duration:l}=n.accelerate,f=new Pn({element:this.current,name:e,keyframes:u,times:c,ease:d,duration:Xt(l)}),p=a(f);this.valueSubscriptions.set(e,()=>{p(),f.cancel()});return}const s=yt.has(e);s&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",a=>{this.latestValues[e]=a,this.props.onUpdate&&k.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let r;typeof window<"u"&&window.MotionCheckAppearSync&&(r=window.MotionCheckAppearSync(this,e,n)),this.valueSubscriptions.set(e,()=>{i(),r&&r()})}sortNodePosition(e){return!this.current||!this.sortInstanceNodePosition||this.type!==e.type?0:this.sortInstanceNodePosition(this.current,e.current)}updateFeatures(){let e="animation";for(e in _){const n=_[e];if(!n)continue;const{isEnabled:s,Feature:i}=n;if(!this.features[e]&&i&&s(this.props)&&(this.features[e]=new i(this)),this.features[e]){const r=this.features[e];r.isMounted?r.update():(r.mount(),r.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Xn()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,n){this.latestValues[e]=n}update(e,n){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let s=0;s<kt.length;s++){const i=kt[s];this.propEventSubscriptions[i]&&(this.propEventSubscriptions[i](),delete this.propEventSubscriptions[i]);const r="on"+i,a=e[r];a&&(this.propEventSubscriptions[i]=this.on(i,a))}this.prevMotionValues=Gn(this,this.scrapeMotionValuesFromProps(e,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(e){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(e),()=>n.variantChildren.delete(e)}addValue(e,n){const s=this.values.get(e);n!==s&&(s&&this.removeValue(e),this.bindToMotionValue(e,n),this.values.set(e,n),this.latestValues[e]=n.get())}removeValue(e){this.values.delete(e);const n=this.valueSubscriptions.get(e);n&&(n(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,n){if(this.props.values&&this.props.values[e])return this.props.values[e];let s=this.values.get(e);return s===void 0&&n!==void 0&&(s=ut(n===null?void 0:n,{owner:this}),this.addValue(e,s)),s}readValue(e,n){let s=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return s!=null&&(typeof s=="string"&&(Ne(s)||Ie(s))?s=parseFloat(s):!Un(s)&&M.test(n)&&(s=Kn(e,n)),this.setBaseTarget(e,S(s)?s.get():s)),S(s)?s.get():s}setBaseTarget(e,n){this.baseTarget[e]=n}getBaseTarget(e){const{initial:n}=this.props;let s;if(typeof n=="string"||typeof n=="object"){const r=ie(this.props,n,this.presenceContext?.custom);r&&(s=r[e])}if(n&&s!==void 0)return s;const i=this.getBaseTargetFromProps(this.props,e);return i!==void 0&&!S(i)?i:this.initialValues[e]!==void 0&&s===void 0?void 0:this.baseTarget[e]}on(e,n){return this.events[e]||(this.events[e]=new Ut),this.events[e].add(n)}notify(e,...n){this.events[e]&&this.events[e].notify(...n)}scheduleRenderMicrotask(){zn.render(this.render)}}const Jn={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},ts=j.length;function es(t,e,n){let s="",i=!0;for(let a=0;a<ts;a++){const u=j[a],c=t[u];if(c===void 0)continue;let d=!0;if(typeof c=="number")d=c===(u.startsWith("scale")?1:0);else{const l=parseFloat(c);d=u.startsWith("scale")?l===1:l===0}if(!d||n){const l=ft(c,U[u]);if(!d){i=!1;const f=Jn[u]||u;s+=`${f}(${l}) `}n&&(e[u]=l)}}const r=t.pathRotation;return r&&(i=!1,s+=`rotate(${ft(r,U.pathRotation)}) `),s=s.trim(),n?s=n(e,i?"":s):i&&(s="none"),s}function fe(t,e,n){const{style:s,vars:i,transformOrigin:r}=t;let a=!1,u=!1;for(const c in e){const d=e[c];if(yt.has(c)){a=!0;continue}else if($e(c)){i[c]=d;continue}else{const l=ft(d,U[c]);c.startsWith("origin")?(u=!0,r[c]=l):s[c]=l}}if(e.transform||(a||n?s.transform=es(e,t.transform,n):s.transform&&(s.transform="none")),u){const{originX:c="50%",originY:d="50%",originZ:l=0}=r;s.transformOrigin=`${c} ${d} ${l}`}}function Lt(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}const E={correct:(t,e)=>{if(!e.target)return t;if(typeof t=="string")if(o.test(t))t=parseFloat(t);else return t;const n=Lt(t,e.target.x),s=Lt(t,e.target.y);return`${n}% ${s}%`}},ns={correct:(t,{treeScale:e,projectionDelta:n})=>{const s=t,i=M.parse(t);if(i.length>5)return s;const r=M.createTransformer(t),a=typeof i[0]!="number"?1:0,u=n.x.scale*e.x,c=n.y.scale*e.y;i[0+a]/=u,i[1+a]/=c;const d=on(u,c,.5);return typeof i[2+a]=="number"&&(i[2+a]/=d),typeof i[3+a]=="number"&&(i[3+a]/=d),r(i)}},ss={borderRadius:{...E,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:E,borderTopRightRadius:E,borderBottomLeftRadius:E,borderBottomRightRadius:E,boxShadow:ns};function de(t,{layout:e,layoutId:n}){return yt.has(t)||t.startsWith("origin")||(e||n!==void 0)&&(!!ss[t]||t==="opacity")}function he(t,e,n){const s=t.style,i=e?.style,r={};if(!s)return r;for(const a in s)(S(s[a])||i&&S(i[a])||de(a,t)||n?.getValue(a)?.liveStyle!==void 0)&&(r[a]=s[a]);return r}const is={offset:"stroke-dashoffset",array:"stroke-dasharray"},rs={offset:"strokeDashoffset",array:"strokeDasharray"};function as(t,e,n=1,s=0,i=!0){t.pathLength=1;const r=i?is:rs;t[r.offset]=`${-s}`,t[r.array]=`${e} ${n}`}const os=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function us(t,{attrX:e,attrY:n,attrScale:s,pathLength:i,pathSpacing:r=1,pathOffset:a=0,...u},c,d,l){if(fe(t,u,d),c){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:f,style:p}=t;f.transform&&(p.transform=f.transform,delete f.transform),(p.transform||f.transformOrigin)&&(p.transformOrigin=f.transformOrigin??"50% 50%",delete f.transformOrigin),p.transform&&(p.transformBox=l?.transformBox??"fill-box",delete f.transformBox);for(const g of os)f[g]!==void 0&&(p[g]=f[g],delete f[g]);e!==void 0&&(f.x=e),n!==void 0&&(f.y=n),s!==void 0&&(f.scale=s),i!==void 0&&as(f,i,r,a,!1)}const cs=t=>typeof t=="string"&&t.toLowerCase()==="svg";function ls(t,e,n){const s=he(t,e,n);for(const i in t)if(S(t[i])||S(e[i])){const r=j.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;s[r]=t[i]}return s}function fs(t){return S(t)?t.get():t}const pe=h.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"}),St=h.createContext({strict:!1}),Dt={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let jt=!1;function ds(){if(jt)return;const t={};for(const e in Dt)t[e]={isEnabled:n=>Dt[e].some(s=>!!n[s])};le(t),jt=!0}function me(){return ds(),Qn()}function ht(t){const e=me();for(const n in t)e[n]={...e[n],...t[n]};le(e)}function Hs({children:t,features:e,strict:n=!1}){const[,s]=h.useState(!J(e)),i=h.useRef(void 0);if(!J(e)){const{renderer:r,...a}=e;i.current=r,ht(a)}return h.useEffect(()=>{J(e)&&e().then(({renderer:r,...a})=>{ht(a),i.current=r,s(!0)})},[]),et.jsx(St.Provider,{value:{renderer:i.current,strict:n},children:t})}function J(t){return typeof t=="function"}const hs=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function H(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||hs.has(t)}let ge=t=>!H(t);function ps(t){typeof t=="function"&&(ge=e=>e.startsWith("on")?!H(e):t(e))}try{ps(require("@emotion/is-prop-valid").default)}catch{}function ms(t,e,n){const s={};for(const i in t)i==="values"&&typeof t.values=="object"||S(t[i])||(ge(i)||n===!0&&H(i)||!e&&!H(i)||t.draggable&&i.startsWith("onDrag"))&&(s[i]=t[i]);return s}const G=h.createContext({});function gs(t,e){if(Z(t)){const{initial:n,animate:s}=t;return{initial:n===!1||dt(n)?n:void 0,animate:dt(s)?s:void 0}}return t.inherit!==!1?e:{}}function ys(t){const{initial:e,animate:n}=gs(t,h.useContext(G));return h.useMemo(()=>({initial:e,animate:n}),[Wt(e),Wt(n)])}function Wt(t){return Array.isArray(t)?t.join(" "):t}const Vt=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function ye(t,e,n){for(const s in e)!S(e[s])&&!de(s,n)&&(t[s]=e[s])}function bs({transformTemplate:t},e){return h.useMemo(()=>{const n=Vt();return fe(n,e,t),Object.assign({},n.vars,n.style)},[e])}function Ss(t,e){const n=t.style||{},s={};return ye(s,n,t),Object.assign(s,bs(t,e)),s}function Vs(t,e){const n={},s=Ss(t,e);return t.drag&&t.dragListener!==!1&&(n.draggable=!1,s.userSelect=s.WebkitUserSelect=s.WebkitTouchCallout="none",s.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(n.tabIndex=0),n.style=s,n}const be=()=>({...Vt(),attrs:{}});function vs(t,e,n,s){const i=h.useMemo(()=>{const r=be();return us(r,e,cs(s),t.transformTemplate,t.style),{...r.attrs,style:{...r.style}}},[e]);if(t.style){const r={};ye(r,t.style,t),i.style={...r,...i.style}}return i}const ws=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Se(t){return typeof t!="string"||t.includes("-")?!1:!!(ws.indexOf(t)>-1||/[A-Z]/u.test(t))}function Ts(t,e,n,{latestValues:s},i,r=!1,a){const c=(a??Se(t)?vs:Vs)(e,s,i,t),d=ms(e,typeof t=="string",r),l=t!==h.Fragment?{...d,...c,ref:n}:{},{children:f}=e,p=h.useMemo(()=>S(f)?f.get():f,[f]);return h.createElement(t,{...l,children:p})}function Ms({scrapeMotionValuesFromProps:t,createRenderState:e},n,s,i){return{latestValues:xs(n,s,i,t),renderState:e()}}function xs(t,e,n,s){const i={},r=s(t,{});for(const p in r)i[p]=fs(r[p]);let{initial:a,animate:u}=t;const c=Z(t),d=ue(t);e&&d&&!c&&t.inherit!==!1&&(a===void 0&&(a=e.initial),u===void 0&&(u=e.animate));let l=n?n.initial===!1:!1;l=l||a===!1;const f=l?u:a;if(f&&typeof f!="boolean"&&!oe(f)){const p=Array.isArray(f)?f:[f];for(let g=0;g<p.length;g++){const m=ie(t,p[g]);if(m){const{transitionEnd:v,transition:x,...C}=m;for(const w in C){let b=C[w];if(Array.isArray(b)){const V=l?b.length-1:0;b=b[V]}b!==null&&(i[w]=b)}for(const w in v)i[w]=v[w]}}}return i}const Ve=t=>(e,n)=>{const s=h.useContext(G),i=h.useContext($t),r=()=>Ms(t,e,s,i);return n?r():Pe(r)},Cs=Ve({scrapeMotionValuesFromProps:he,createRenderState:Vt}),Ps=Ve({scrapeMotionValuesFromProps:ls,createRenderState:be}),As=Symbol.for("motionComponentSymbol");function Fs(t,e,n){const s=h.useRef(n);h.useInsertionEffect(()=>{s.current=n});const i=h.useRef(null);return h.useCallback(r=>{r&&t.onMount?.(r),e&&(r?e.mount(r):e.unmount());const a=s.current;if(typeof a=="function")if(r){const u=a(r);typeof u=="function"&&(i.current=u)}else i.current?(i.current(),i.current=null):a(r);else a&&(a.current=r)},[e])}const Rs=h.createContext({});function Es(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function Bs(t,e,n,s,i,r){const{visualElement:a}=h.useContext(G),u=h.useContext(St),c=h.useContext($t),d=h.useContext(pe),l=d.reducedMotion,f=d.skipAnimations,p=h.useRef(null),g=h.useRef(!1);s=s||u.renderer,!p.current&&s&&(p.current=s(t,{visualState:e,parent:a,props:n,presenceContext:c,blockInitialAnimation:c?c.initial===!1:!1,reducedMotionConfig:l,skipAnimations:f,isSVG:r}),g.current&&p.current&&(p.current.manuallyAnimateOnMount=!0));const m=p.current,v=h.useContext(Rs);m&&!m.projection&&i&&(m.type==="html"||m.type==="svg")&&Ns(p.current,n,i,v);const x=h.useRef(!1);h.useInsertionEffect(()=>{m&&x.current&&m.update(n,c)});const C=n[Nn],w=h.useRef(!!C&&typeof window<"u"&&!window.MotionHandoffIsComplete?.(C)&&window.MotionHasOptimisedAnimation?.(C));return Fe(()=>{g.current=!0,m&&(x.current=!0,window.MotionIsMounted=!0,m.updateFeatures(),m.scheduleRenderMicrotask(),w.current&&m.animationState&&m.animationState.animateChanges())}),h.useEffect(()=>{m&&(!w.current&&m.animationState&&m.animationState.animateChanges(),w.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(C)}),w.current=!1),m.enteringChildren=void 0)}),m}function Ns(t,e,n,s){const{layoutId:i,layout:r,drag:a,dragConstraints:u,layoutScroll:c,layoutRoot:d,layoutAnchor:l,layoutCrossfade:f}=e;t.projection=new n(t.latestValues,e["data-framer-portal-id"]?void 0:ve(t.parent)),t.projection.setOptions({layoutId:i,layout:r,alwaysMeasureLayout:!!a||u&&Es(u),visualElement:t,animationType:typeof r=="string"?r:"both",initialPromotionConfig:s,crossfade:f,layoutScroll:c,layoutRoot:d,layoutAnchor:l})}function ve(t){if(t)return t.options.allowProjection!==!1?t.projection:ve(t.parent)}function tt(t,{forwardMotionProps:e=!1,type:n}={},s,i){s&&ht(s);const r=n?n==="svg":Se(t),a=r?Ps:Cs;function u(d,l){let f;const p={...h.useContext(pe),...d,layoutId:Is(d)},{isStatic:g}=p,m=ys(d),v=a(d,g);if(!g&&typeof window<"u"){Os();const x=ks(p);f=x.MeasureLayout,m.visualElement=Bs(t,v,p,i,x.ProjectionNode,r)}return et.jsxs(G.Provider,{value:m,children:[f&&m.visualElement?et.jsx(f,{visualElement:m.visualElement,...p}):null,Ts(t,d,Fs(v,m.visualElement,l),v,g,e,r)]})}u.displayName=`motion.${typeof t=="string"?t:`create(${t.displayName??t.name??""})`}`;const c=h.forwardRef(u);return c[As]=t,c}function Is({layoutId:t}){const e=h.useContext(Ce).id;return e&&t!==void 0?e+"-"+t:t}function Os(t,e){h.useContext(St).strict}function ks(t){const e=me(),{drag:n,layout:s}=e;if(!n&&!s)return{};const i={...n,...s};return{MeasureLayout:n?.isEnabled(t)||s?.isEnabled(t)?i.MeasureLayout:void 0,ProjectionNode:i.ProjectionNode}}function Ls(t,e){if(typeof Proxy>"u")return tt;const n=new Map,s=(r,a)=>tt(r,a,t,e),i=(r,a)=>s(r,a);return new Proxy(i,{get:(r,a)=>a==="create"?s:(n.has(a)||n.set(a,tt(a,void 0,t,e)),n.get(a))})}const Zs=Ls();function Gs(){!bt.current&&ce();const[t]=h.useState(X.current);return t}export{Xn as $,Oe as A,Ys as B,yt as C,Ne as D,ie as E,j as F,ut as G,S as H,Nn as I,Ie as J,Sn as K,Hs as L,zt as M,Pn as N,Kn as O,Us as P,$s as Q,Y as R,zs as S,Ft as T,Ks as U,_s as V,fn as W,$e as X,fe as Y,he as Z,En as _,Be as a,ls as a0,us as a1,cs as a2,Wn as a3,dt as a4,Zn as a5,oe as a6,Hn as a7,Se as a8,F as a9,o as aa,Re as ab,Ee as ac,Ut as ad,js as ae,zn as af,Xs as ag,fs as ah,ss as ai,pe as aj,Pe as ak,$t as al,Fe as am,Ce as an,Es as ao,Rs as ap,Ls as aq,on as b,Tt as c,Ws as d,y as e,M as f,gt as g,K as h,Le as i,wt as j,vt as k,k as l,Zs as m,Yt as n,q as o,Kt as p,un as q,B as r,Xt as s,I as t,Gs as u,ke as v,ln as w,vn as x,xn as y,An as z};
|
package/dist/client/assets/{use-scout-dev-flags-BHvg3G2c.js → use-scout-dev-flags-BOQF3fW2.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t}from"./index-
|
|
1
|
+
import{r as t}from"./index-CzVeWScw.js";import{d as f,e as p,f as m,g as w,w as s,h as v}from"./router-B-K15T7B.js";import{a as h}from"./api-h5zurxmi.js";let o=null;function g(){return import.meta.env?.DEV===!0}function y(){if(typeof window>"u")return!1;const e=window.location.hostname.trim().toLowerCase();return e==="localhost"||e==="127.0.0.1"||e==="[::1]"||e.endsWith(".local")}function S(){typeof window>"u"||o!==null||h("/api/build").then(e=>{o=e.mode==="production"?"production":"dev"}).catch(()=>{o=null})}typeof window<"u"&&S();function b(){return!!(g()||y()||o==="dev")}function F(){const e=v(new URL(window.location.href));window.history.replaceState(window.history.state,"",`${e.pathname}${e.search}${e.hash}`)}function C(){const e=f(),a=t.useMemo(()=>p()??m(),[e.layers]),r=t.useCallback(i=>{e.resetLocalOverrides();const n=w(i);n.audience&&e.setLocalAudienceOverride(n.audience);for(const[d,l]of Object.entries(n.flags??{}))typeof l=="boolean"&&e.setLocalOverride(d,l);s({action:"set",bundle:i})},[e]),u=t.useCallback(()=>{r(a==="max-pro"?"light-prod":"max-pro")},[a,r]),c=t.useCallback(()=>{e.resetLocalOverrides(),s({action:"clear"}),F(),window.location.reload()},[e]);return{activeBundle:a,applyBundle:r,toggleBundle:u,resetBundle:c}}export{b as i,C as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,j as B}from"./index-
|
|
1
|
+
import{r as t,j as B}from"./index-CzVeWScw.js";import{r as N}from"./index-Dewd56RX.js";import{A as Y}from"./AgentDetailCard-sZuHl1de.js";const A=340,S=16,$=180,q=100,I=A+S;function F(s,m){const i=window.innerWidth,y=window.innerHeight,c=12,u=i-s.right,o=s.left;if(u<I&&o<I)return{top:Math.max(c,Math.min(y/2-m/2,y-m-c)),left:Math.max(c,i/2-A/2),side:"center"};const p=u>=o?"right":"left",v=p==="right"?Math.min(s.right+S,i-A-c):Math.max(s.left-S-A,c),h=s.top+s.height/2-m/2;return{top:Math.max(c,Math.min(h,y-m-c)),left:v,side:p}}function Q({agents:s,orderedIds:m,navigate:i,selectMode:y="preview"}){const[c,u]=t.useState(null),[o,p]=t.useState(null),[v,D]=t.useState(null),h=t.useRef(new Map),l=t.useRef(null),C=t.useRef(null),b=t.useRef(null),T=t.useRef(null),a=o??c,d=t.useMemo(()=>a?s.find(e=>e.id===a)??null:null,[a,s]),O=t.useMemo(()=>o?s.find(e=>e.id===o)??null:null,[o,s]),f=t.useCallback(()=>{l.current&&(window.clearTimeout(l.current),l.current=null),C.current&&(window.clearTimeout(C.current),C.current=null)},[]);t.useEffect(()=>()=>f(),[f]),t.useEffect(()=>{if(!a){D(null);return}const e=h.current.get(a);if(!e)return;const n=()=>{const E=e.getBoundingClientRect(),w=b.current?.offsetHeight??260;D(F(E,w))};n(),window.addEventListener("scroll",n,!0),window.addEventListener("resize",n);const r=new ResizeObserver(n);return b.current&&r.observe(b.current),()=>{window.removeEventListener("scroll",n,!0),window.removeEventListener("resize",n),r.disconnect()}},[a]),t.useEffect(()=>{if(!o)return;const e=r=>{r.key==="Escape"&&(p(null),u(null))},n=r=>{const E=r.target;if(!b.current?.contains(E)){for(const w of h.current.values())if(w.contains(E))return;p(null)}};return window.addEventListener("keydown",e),window.addEventListener("mousedown",n),()=>{window.removeEventListener("keydown",e),window.removeEventListener("mousedown",n)}},[o]);const g=t.useCallback(e=>{if(!e)return;const n=h.current.get(e);n&&(typeof n.focus=="function"&&n.focus({preventScroll:!1}),n.scrollIntoView({block:"nearest",behavior:"smooth"}))},[]);t.useEffect(()=>{const e=T.current;if(!e)return;const n=r=>{const E=document.activeElement,w=E?.dataset?.agentId??null,k=m;if(!(k.length===0||!e.contains(E)&&r.key!=="Escape")){if(r.key==="ArrowDown"||r.key==="ArrowUp"){r.preventDefault();const x=w?k.indexOf(w):-1,W=r.key==="ArrowDown"?x<0?0:Math.min(x+1,k.length-1):x<=0?0:x-1;g(k[W]);return}if(r.key==="Home"){r.preventDefault(),g(k[0]);return}if(r.key==="End"){r.preventDefault(),g(k[k.length-1]);return}r.key.toLowerCase()==="o"&&w&&!r.metaKey&&!r.ctrlKey&&!r.altKey&&(r.preventDefault(),i({view:"agents-v2",agentId:w}))}};return e.addEventListener("keydown",n),()=>e.removeEventListener("keydown",n)},[m,g,i]);const R=t.useCallback(e=>{if(f(),!(o&&o!==e)){if(c||o===e){u(e);return}l.current=window.setTimeout(()=>{u(e),l.current=null},$)}},[f,c,o]),L=t.useCallback(()=>{o||(l.current&&(window.clearTimeout(l.current),l.current=null),C.current=window.setTimeout(()=>{u(null),C.current=null},q))},[o]),H=t.useCallback(e=>{if(y==="navigate"){i({view:"agents-v2",agentId:e});return}f(),p(n=>n===e?null:e),u(e)},[y,i,f]),P=t.useCallback(()=>{d&&i({view:"agents-v2",agentId:d.id})},[d,i]),M=t.useCallback(()=>{f(),p(null),u(null)},[f]),_=t.useCallback(e=>({ref:n=>{n?h.current.set(e,n):h.current.delete(e)},onMouseEnter:()=>R(e),onMouseLeave:()=>L(),onFocus:()=>R(e),onBlur:()=>L(),onClick:()=>H(e),"data-agent-id":e,tabIndex:0}),[R,L,H]),K=t.useCallback(e=>({isActive:a===e,isPinned:o===e}),[a,o]),j=v?{position:"fixed",top:v.top,left:v.left,width:A}:void 0,z=d&&v&&typeof document<"u"?N.createPortal(B.jsx(Y,{ref:b,agent:d,pinned:o===d.id,onOpen:P,onClose:M,onAction:M,style:j,className:`agent-card--side-${v.side}${o===d.id?"":" agent-card--preview"}`}),document.querySelector("[data-scout-theme]")??document.body):null;return{bind:_,getState:K,activeAgent:d,pinnedAgent:O,clear:M,card:z,containerRef:T}}export{Q as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{u as e}from"./router-B-K15T7B.js";function n(){return!e("nav.sidebar",!1)}export{n as u};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as r,r as h}from"./index-
|
|
1
|
+
import{j as r,r as h}from"./index-CzVeWScw.js";import{u as Q}from"./chunk-HRAB3GC3-CAeEKaf5.js";function je({className:e,children:t}){return r.jsx("div",{className:e?`rd-viewer ${e}`:"rd-viewer","data-scout-theme":!0,children:t})}function P({children:e}){return r.jsx("div",{className:"rd-center",children:r.jsx("div",{className:"rd-center-card",children:e})})}const Pe=["branch","unstaged","staged"],X={unstaged:"Unstaged",staged:"Staged",branch:"Branch"},ye={added:"A",modified:"M",deleted:"D",renamed:"R",copied:"C",typechange:"T",conflict:"!",unknown:"?"};function Z(e){return e.newPath??e.oldPath??"(unknown)"}function Ne(e){const t=e.split("/"),n=t[t.length-1]||e,i=t.slice(0,-1).join("/");return{name:n,dir:i}}function ee(e,t){return`${e.oldPath??""}→${e.newPath??""}#${t}`}function Le(e){return e.files.reduce((t,n)=>({add:t.add+(n.additions??0),del:t.del+(n.deletions??0)}),{add:0,del:0})}function Se(e,t,n=null){return{fetchedAt:e.fetchedAt,cacheHit:!0,refreshing:t,refreshError:n}}function Ee(e,t){return{fetchedAt:e.fetchedAt,cacheHit:e.cacheHit,refreshing:t,refreshError:null}}function W(e){const t=e.trim();return!t||t==="/dev/null"?null:t.startsWith("a/")||t.startsWith("b/")?t.slice(2):t}function te(e,t){return[t.newPath,t.oldPath].filter(i=>!!i).includes(e)}function ne(e,t){if(!e?.rawPatch)return[];const n=[];let i=null,c=null,a=null,d=null;for(const s of e.rawPatch.split(`
|
|
2
2
|
`)){if(s.startsWith("diff --git ")){i=null,c=null,a=null,d=null;continue}if(s.startsWith("--- ")){i=W(s.slice(4));continue}if(s.startsWith("+++ ")){c=W(s.slice(4));continue}const o=/^@@\s+-(\d+)(?:,\d+)?\s+\+(\d+)(?:,\d+)?\s+@@/.exec(s);if(o){a=Number(o[1]),d=Number(o[2]);continue}if(a==null||d==null)continue;const f=c??i;f&&(t&&!te(f,t)||(s.startsWith("+")?(n.push({layer:e.kind,filePath:f,side:"add",oldLine:null,newLine:d,text:s.slice(1)}),d+=1):s.startsWith("-")?(n.push({layer:e.kind,filePath:f,side:"del",oldLine:a,newLine:null,text:s.slice(1)}),a+=1):s.startsWith(" ")&&(n.push({layer:e.kind,filePath:f,side:"context",oldLine:a,newLine:d,text:s.slice(1)}),a+=1,d+=1)))}return n}function re(e){return e.newLine!=null?`L${e.newLine}`:e.oldLine!=null?`old L${e.oldLine}`:"line"}function ie(e,t=160){const n=e.replace(/\s+/g," ").trim();return n.length>t?`${n.slice(0,t-1)}…`:n}function Re(e){const{line:t}=e,n=t.side==="add"?"+":t.side==="del"?"-":" ";return`[Diff line: ${t.layer} · ${t.filePath}:${re(t)} · ${n} ${ie(t.text)}]`}function Ce(e){const{selection:t}=e;return[`[Diff selection: ${[t.layer??"diff",t.filePath].filter(Boolean).join(" · ")||"diff"}]`,t.text.trim(),"[/Diff selection]"].join(`
|
|
3
3
|
`)}function B(e){const t=window.getSelection(),n=t?.toString().trim()??"";if(!t||!n||!e.root)return null;const i=t.anchorNode,c=t.focusNode;return i&&!e.root.contains(i)||c&&!e.root.contains(c)?null:{layer:e.activeLayer,filePath:e.selectedFile?Z(e.selectedFile):null,text:n}}const ae="1.2.7",C=`https://esm.sh/@pierre/diffs@${ae}`,A={base:`${C}?external=react,react-dom`,react:`${C}/react?external=react,react-dom`,worker:`${C}/worker/worker.js`},O=["typescript","tsx","javascript","jsx","json","markdown","rust","swift","shellscript","yaml","css","html"];function se(){return import(A.react)}function oe(){return import(A.base)}let y=null;function H(){return y||(y=(async()=>{const e="react",t="react-dom/client",[n,i,c,a]=await Promise.all([se(),oe(),import(e),import(t)]),d=o=>typeof o=="function"||typeof o=="object"&&o!==null;if(!d(n?.CodeView)||!d(n?.WorkerPoolContextProvider)||typeof i?.parsePatchFiles!="function"||typeof c?.createElement!="function"||typeof a?.createRoot!="function")throw new Error(`Pierre loaded from ${C} but the expected exports are missing.`);const s=()=>{const o=`import ${JSON.stringify(A.worker)};`,f=URL.createObjectURL(new Blob([o],{type:"text/javascript"})),u=new Worker(f,{type:"module"});return URL.revokeObjectURL(f),u};return{CodeView:n.CodeView,PatchDiff:n.PatchDiff,WorkerPoolContextProvider:n.WorkerPoolContextProvider,parsePatchFiles:i.parsePatchFiles,preloadHighlighter:i.preloadHighlighter,workerFactory:s,createElement:c.createElement,createRoot:a.createRoot}})(),y.catch(()=>{y=null}),y)}let E=null;function de(e,t){return E||(E=e.preloadHighlighter({themes:[t],langs:[...O]}).catch(()=>{E=null}),E)}function le(e,t,n){return e.parsePatchFiles(t,n,!0)}const ce=`
|
|
4
4
|
[data-line-type="change-addition"]:is(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c}from"./createLucideIcon-
|
|
1
|
+
import{c}from"./createLucideIcon-ClCdc3F9.js";const a=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],o=c("wrench",a);export{o as W};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as o}from"./createLucideIcon-
|
|
1
|
+
import{c as o}from"./createLucideIcon-ClCdc3F9.js";const c=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],t=o("x",c);export{t as X};
|