agent-relay 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/bridge/spawner.d.ts +53 -0
- package/dist/bridge/spawner.d.ts.map +1 -1
- package/dist/bridge/spawner.js +203 -19
- package/dist/bridge/spawner.js.map +1 -1
- package/dist/bridge/types.d.ts +12 -0
- package/dist/bridge/types.d.ts.map +1 -1
- package/dist/cli/index.js +401 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cloud/api/auth.d.ts +3 -2
- package/dist/cloud/api/auth.d.ts.map +1 -1
- package/dist/cloud/api/auth.js +10 -98
- package/dist/cloud/api/auth.js.map +1 -1
- package/dist/cloud/api/cli-pty-runner.d.ts +54 -0
- package/dist/cloud/api/cli-pty-runner.d.ts.map +1 -0
- package/dist/cloud/api/cli-pty-runner.js +119 -0
- package/dist/cloud/api/cli-pty-runner.js.map +1 -0
- package/dist/cloud/api/generic-webhooks.d.ts +8 -0
- package/dist/cloud/api/generic-webhooks.d.ts.map +1 -0
- package/dist/cloud/api/generic-webhooks.js +129 -0
- package/dist/cloud/api/generic-webhooks.js.map +1 -0
- package/dist/cloud/api/git.d.ts +8 -0
- package/dist/cloud/api/git.d.ts.map +1 -0
- package/dist/cloud/api/git.js +131 -0
- package/dist/cloud/api/git.js.map +1 -0
- package/dist/cloud/api/github-app.d.ts +11 -0
- package/dist/cloud/api/github-app.d.ts.map +1 -0
- package/dist/cloud/api/github-app.js +189 -0
- package/dist/cloud/api/github-app.js.map +1 -0
- package/dist/cloud/api/middleware/planLimits.d.ts +7 -0
- package/dist/cloud/api/middleware/planLimits.d.ts.map +1 -1
- package/dist/cloud/api/middleware/planLimits.js +39 -1
- package/dist/cloud/api/middleware/planLimits.js.map +1 -1
- package/dist/cloud/api/monitoring.d.ts +11 -0
- package/dist/cloud/api/monitoring.d.ts.map +1 -0
- package/dist/cloud/api/monitoring.js +578 -0
- package/dist/cloud/api/monitoring.js.map +1 -0
- package/dist/cloud/api/nango-auth.d.ts +9 -0
- package/dist/cloud/api/nango-auth.d.ts.map +1 -0
- package/dist/cloud/api/nango-auth.js +377 -0
- package/dist/cloud/api/nango-auth.js.map +1 -0
- package/dist/cloud/api/onboarding.d.ts +8 -1
- package/dist/cloud/api/onboarding.d.ts.map +1 -1
- package/dist/cloud/api/onboarding.js +300 -119
- package/dist/cloud/api/onboarding.js.map +1 -1
- package/dist/cloud/api/policy.d.ts +8 -0
- package/dist/cloud/api/policy.d.ts.map +1 -0
- package/dist/cloud/api/policy.js +229 -0
- package/dist/cloud/api/policy.js.map +1 -0
- package/dist/cloud/api/providers.js +114 -42
- package/dist/cloud/api/providers.js.map +1 -1
- package/dist/cloud/api/test-helpers.d.ts +10 -0
- package/dist/cloud/api/test-helpers.d.ts.map +1 -0
- package/dist/cloud/api/test-helpers.js +575 -0
- package/dist/cloud/api/test-helpers.js.map +1 -0
- package/dist/cloud/api/webhooks.d.ts +7 -0
- package/dist/cloud/api/webhooks.d.ts.map +1 -0
- package/dist/cloud/api/webhooks.js +496 -0
- package/dist/cloud/api/webhooks.js.map +1 -0
- package/dist/cloud/api/workspaces.js +225 -8
- package/dist/cloud/api/workspaces.js.map +1 -1
- package/dist/cloud/billing/plans.d.ts.map +1 -1
- package/dist/cloud/billing/plans.js +13 -0
- package/dist/cloud/billing/plans.js.map +1 -1
- package/dist/cloud/billing/types.d.ts +9 -3
- package/dist/cloud/billing/types.d.ts.map +1 -1
- package/dist/cloud/config.d.ts +9 -2
- package/dist/cloud/config.d.ts.map +1 -1
- package/dist/cloud/config.js +13 -4
- package/dist/cloud/config.js.map +1 -1
- package/dist/cloud/db/drizzle.d.ts +84 -1
- package/dist/cloud/db/drizzle.d.ts.map +1 -1
- package/dist/cloud/db/drizzle.js +470 -0
- package/dist/cloud/db/drizzle.js.map +1 -1
- package/dist/cloud/db/index.d.ts +9 -4
- package/dist/cloud/db/index.d.ts.map +1 -1
- package/dist/cloud/db/index.js +11 -3
- package/dist/cloud/db/index.js.map +1 -1
- package/dist/cloud/db/schema.d.ts +3283 -556
- package/dist/cloud/db/schema.d.ts.map +1 -1
- package/dist/cloud/db/schema.js +314 -1
- package/dist/cloud/db/schema.js.map +1 -1
- package/dist/cloud/index.d.ts +1 -0
- package/dist/cloud/index.d.ts.map +1 -1
- package/dist/cloud/index.js +2 -0
- package/dist/cloud/index.js.map +1 -1
- package/dist/cloud/provisioner/index.d.ts +24 -0
- package/dist/cloud/provisioner/index.d.ts.map +1 -1
- package/dist/cloud/provisioner/index.js +319 -18
- package/dist/cloud/provisioner/index.js.map +1 -1
- package/dist/cloud/server.d.ts +1 -0
- package/dist/cloud/server.d.ts.map +1 -1
- package/dist/cloud/server.js +357 -13
- package/dist/cloud/server.js.map +1 -1
- package/dist/cloud/services/auto-scaler.d.ts +152 -0
- package/dist/cloud/services/auto-scaler.d.ts.map +1 -0
- package/dist/cloud/services/auto-scaler.js +439 -0
- package/dist/cloud/services/auto-scaler.js.map +1 -0
- package/dist/cloud/services/capacity-manager.d.ts +148 -0
- package/dist/cloud/services/capacity-manager.d.ts.map +1 -0
- package/dist/cloud/services/capacity-manager.js +449 -0
- package/dist/cloud/services/capacity-manager.js.map +1 -0
- package/dist/cloud/services/ci-agent-spawner.d.ts +49 -0
- package/dist/cloud/services/ci-agent-spawner.d.ts.map +1 -0
- package/dist/cloud/services/ci-agent-spawner.js +373 -0
- package/dist/cloud/services/ci-agent-spawner.js.map +1 -0
- package/dist/cloud/services/index.d.ts +12 -0
- package/dist/cloud/services/index.d.ts.map +1 -0
- package/dist/cloud/services/index.js +15 -0
- package/dist/cloud/services/index.js.map +1 -0
- package/dist/cloud/services/mention-handler.d.ts +65 -0
- package/dist/cloud/services/mention-handler.d.ts.map +1 -0
- package/dist/cloud/services/mention-handler.js +405 -0
- package/dist/cloud/services/mention-handler.js.map +1 -0
- package/dist/cloud/services/nango.d.ts +126 -0
- package/dist/cloud/services/nango.d.ts.map +1 -0
- package/dist/cloud/services/nango.js +191 -0
- package/dist/cloud/services/nango.js.map +1 -0
- package/dist/cloud/services/persistence.d.ts +131 -0
- package/dist/cloud/services/persistence.d.ts.map +1 -0
- package/dist/cloud/services/persistence.js +200 -0
- package/dist/cloud/services/persistence.js.map +1 -0
- package/dist/cloud/services/planLimits.d.ts +15 -0
- package/dist/cloud/services/planLimits.d.ts.map +1 -1
- package/dist/cloud/services/planLimits.js +28 -0
- package/dist/cloud/services/planLimits.js.map +1 -1
- package/dist/cloud/services/scaling-orchestrator.d.ts +159 -0
- package/dist/cloud/services/scaling-orchestrator.d.ts.map +1 -0
- package/dist/cloud/services/scaling-orchestrator.js +502 -0
- package/dist/cloud/services/scaling-orchestrator.js.map +1 -0
- package/dist/cloud/services/scaling-policy.d.ts +121 -0
- package/dist/cloud/services/scaling-policy.d.ts.map +1 -0
- package/dist/cloud/services/scaling-policy.js +415 -0
- package/dist/cloud/services/scaling-policy.js.map +1 -0
- package/dist/cloud/vault/index.js +1 -1
- package/dist/cloud/vault/index.js.map +1 -1
- package/dist/cloud/webhooks/index.d.ts +24 -0
- package/dist/cloud/webhooks/index.d.ts.map +1 -0
- package/dist/cloud/webhooks/index.js +29 -0
- package/dist/cloud/webhooks/index.js.map +1 -0
- package/dist/cloud/webhooks/parsers/github.d.ts +8 -0
- package/dist/cloud/webhooks/parsers/github.d.ts.map +1 -0
- package/dist/cloud/webhooks/parsers/github.js +234 -0
- package/dist/cloud/webhooks/parsers/github.js.map +1 -0
- package/dist/cloud/webhooks/parsers/index.d.ts +23 -0
- package/dist/cloud/webhooks/parsers/index.d.ts.map +1 -0
- package/dist/cloud/webhooks/parsers/index.js +30 -0
- package/dist/cloud/webhooks/parsers/index.js.map +1 -0
- package/dist/cloud/webhooks/parsers/linear.d.ts +9 -0
- package/dist/cloud/webhooks/parsers/linear.d.ts.map +1 -0
- package/dist/cloud/webhooks/parsers/linear.js +258 -0
- package/dist/cloud/webhooks/parsers/linear.js.map +1 -0
- package/dist/cloud/webhooks/parsers/slack.d.ts +9 -0
- package/dist/cloud/webhooks/parsers/slack.d.ts.map +1 -0
- package/dist/cloud/webhooks/parsers/slack.js +214 -0
- package/dist/cloud/webhooks/parsers/slack.js.map +1 -0
- package/dist/cloud/webhooks/responders/github.d.ts +8 -0
- package/dist/cloud/webhooks/responders/github.d.ts.map +1 -0
- package/dist/cloud/webhooks/responders/github.js +73 -0
- package/dist/cloud/webhooks/responders/github.js.map +1 -0
- package/dist/cloud/webhooks/responders/index.d.ts +23 -0
- package/dist/cloud/webhooks/responders/index.d.ts.map +1 -0
- package/dist/cloud/webhooks/responders/index.js +30 -0
- package/dist/cloud/webhooks/responders/index.js.map +1 -0
- package/dist/cloud/webhooks/responders/linear.d.ts +9 -0
- package/dist/cloud/webhooks/responders/linear.d.ts.map +1 -0
- package/dist/cloud/webhooks/responders/linear.js +149 -0
- package/dist/cloud/webhooks/responders/linear.js.map +1 -0
- package/dist/cloud/webhooks/responders/slack.d.ts +20 -0
- package/dist/cloud/webhooks/responders/slack.d.ts.map +1 -0
- package/dist/cloud/webhooks/responders/slack.js +178 -0
- package/dist/cloud/webhooks/responders/slack.js.map +1 -0
- package/dist/cloud/webhooks/router.d.ts +25 -0
- package/dist/cloud/webhooks/router.d.ts.map +1 -0
- package/dist/cloud/webhooks/router.js +504 -0
- package/dist/cloud/webhooks/router.js.map +1 -0
- package/dist/cloud/webhooks/rules-engine.d.ts +24 -0
- package/dist/cloud/webhooks/rules-engine.d.ts.map +1 -0
- package/dist/cloud/webhooks/rules-engine.js +287 -0
- package/dist/cloud/webhooks/rules-engine.js.map +1 -0
- package/dist/cloud/webhooks/types.d.ts +186 -0
- package/dist/cloud/webhooks/types.d.ts.map +1 -0
- package/dist/cloud/webhooks/types.js +8 -0
- package/dist/cloud/webhooks/types.js.map +1 -0
- package/dist/continuity/formatter.d.ts +51 -0
- package/dist/continuity/formatter.d.ts.map +1 -0
- package/dist/continuity/formatter.js +313 -0
- package/dist/continuity/formatter.js.map +1 -0
- package/dist/continuity/handoff-store.d.ts +67 -0
- package/dist/continuity/handoff-store.d.ts.map +1 -0
- package/dist/continuity/handoff-store.js +472 -0
- package/dist/continuity/handoff-store.js.map +1 -0
- package/dist/continuity/index.d.ts +45 -0
- package/dist/continuity/index.d.ts.map +1 -0
- package/dist/continuity/index.js +48 -0
- package/dist/continuity/index.js.map +1 -0
- package/dist/continuity/ledger-store.d.ts +110 -0
- package/dist/continuity/ledger-store.d.ts.map +1 -0
- package/dist/continuity/ledger-store.js +500 -0
- package/dist/continuity/ledger-store.js.map +1 -0
- package/dist/continuity/manager.d.ts +178 -0
- package/dist/continuity/manager.d.ts.map +1 -0
- package/dist/continuity/manager.js +562 -0
- package/dist/continuity/manager.js.map +1 -0
- package/dist/continuity/parser.d.ts +76 -0
- package/dist/continuity/parser.d.ts.map +1 -0
- package/dist/continuity/parser.js +579 -0
- package/dist/continuity/parser.js.map +1 -0
- package/dist/continuity/types.d.ts +180 -0
- package/dist/continuity/types.d.ts.map +1 -0
- package/dist/continuity/types.js +9 -0
- package/dist/continuity/types.js.map +1 -0
- package/dist/daemon/agent-manager.d.ts +27 -0
- package/dist/daemon/agent-manager.d.ts.map +1 -1
- package/dist/daemon/agent-manager.js +107 -6
- package/dist/daemon/agent-manager.js.map +1 -1
- package/dist/daemon/agent-registry.d.ts +32 -0
- package/dist/daemon/agent-registry.d.ts.map +1 -1
- package/dist/daemon/agent-registry.js +42 -2
- package/dist/daemon/agent-registry.js.map +1 -1
- package/dist/daemon/api.d.ts +12 -0
- package/dist/daemon/api.d.ts.map +1 -1
- package/dist/daemon/api.js +131 -2
- package/dist/daemon/api.js.map +1 -1
- package/dist/daemon/cli-auth.d.ts +67 -0
- package/dist/daemon/cli-auth.d.ts.map +1 -0
- package/dist/daemon/cli-auth.js +537 -0
- package/dist/daemon/cli-auth.js.map +1 -0
- package/dist/daemon/cloud-sync.d.ts.map +1 -1
- package/dist/daemon/cloud-sync.js +9 -7
- package/dist/daemon/cloud-sync.js.map +1 -1
- package/dist/daemon/orchestrator.d.ts.map +1 -1
- package/dist/daemon/orchestrator.js +30 -0
- package/dist/daemon/orchestrator.js.map +1 -1
- package/dist/daemon/router.d.ts +5 -0
- package/dist/daemon/router.d.ts.map +1 -1
- package/dist/daemon/router.js +78 -26
- package/dist/daemon/router.js.map +1 -1
- package/dist/daemon/server.d.ts +5 -0
- package/dist/daemon/server.d.ts.map +1 -1
- package/dist/daemon/server.js +9 -1
- package/dist/daemon/server.js.map +1 -1
- package/dist/daemon/services/browser-testing.d.ts +88 -0
- package/dist/daemon/services/browser-testing.d.ts.map +1 -0
- package/dist/daemon/services/browser-testing.js +244 -0
- package/dist/daemon/services/browser-testing.js.map +1 -0
- package/dist/daemon/services/container-spawner.d.ts +135 -0
- package/dist/daemon/services/container-spawner.d.ts.map +1 -0
- package/dist/daemon/services/container-spawner.js +313 -0
- package/dist/daemon/services/container-spawner.js.map +1 -0
- package/dist/daemon/types.d.ts +5 -1
- package/dist/daemon/types.d.ts.map +1 -1
- package/dist/dashboard/out/404.html +1 -1
- package/dist/dashboard/out/_next/static/chunks/116-2502180def231162.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/282-980c2eb8fff20123.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/480-2d4111711d4e473c.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/724-73c1ee5f60abe860.js +9 -0
- package/dist/dashboard/out/_next/static/chunks/766-c3a14283c88d815b.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/app/page-7120be68bea622f3.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/connect-repos/page-dc2e3a1a22478efc.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/history/{page-b6edd4dde8d08194.js → page-56a8b4616a90dc43.js} +1 -1
- package/dist/dashboard/out/_next/static/chunks/app/login/page-3eac37ea6f5dd153.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/metrics/page-1081dd190a331a91.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/page-daf87e86f783f980.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/providers/page-b68a681526eb145e.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/signup/page-fee4ed1709070bcd.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/e868780c-48e5f147c90a3a41.js +18 -0
- package/dist/dashboard/out/_next/static/chunks/{main-c2f423b9c9f4591b.js → main-97850e03d723ea8c.js} +1 -1
- package/dist/dashboard/out/_next/static/chunks/webpack-1cdd8ed57114d5e1.js +1 -0
- package/dist/dashboard/out/_next/static/css/29852f26181969a0.css +1 -0
- package/dist/dashboard/out/_next/static/css/411ce23ffeae9f76.css +1 -0
- package/dist/dashboard/out/app.html +1 -14
- package/dist/dashboard/out/app.txt +2 -2
- package/dist/dashboard/out/connect-repos.html +1 -0
- package/dist/dashboard/out/connect-repos.txt +7 -0
- package/dist/dashboard/out/history.html +1 -1
- package/dist/dashboard/out/history.txt +2 -2
- package/dist/dashboard/out/index.html +1 -1
- package/dist/dashboard/out/index.txt +2 -2
- package/dist/dashboard/out/login.html +6 -0
- package/dist/dashboard/out/login.txt +7 -0
- package/dist/dashboard/out/metrics.html +1 -1
- package/dist/dashboard/out/metrics.txt +2 -2
- package/dist/dashboard/out/pricing.html +2 -2
- package/dist/dashboard/out/pricing.txt +2 -2
- package/dist/dashboard/out/providers.html +1 -0
- package/dist/dashboard/out/providers.txt +7 -0
- package/dist/dashboard/out/signup.html +6 -0
- package/dist/dashboard/out/signup.txt +7 -0
- package/dist/dashboard-server/server.d.ts.map +1 -1
- package/dist/dashboard-server/server.js +1308 -8
- package/dist/dashboard-server/server.js.map +1 -1
- package/dist/hooks/emitter.d.ts +40 -0
- package/dist/hooks/emitter.d.ts.map +1 -0
- package/dist/hooks/emitter.js +63 -0
- package/dist/hooks/emitter.js.map +1 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +3 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/registry.d.ts +173 -0
- package/dist/hooks/registry.d.ts.map +1 -0
- package/dist/hooks/registry.js +476 -0
- package/dist/hooks/registry.js.map +1 -0
- package/dist/hooks/trajectory-hooks.d.ts +52 -0
- package/dist/hooks/trajectory-hooks.d.ts.map +1 -0
- package/dist/hooks/trajectory-hooks.js +183 -0
- package/dist/hooks/trajectory-hooks.js.map +1 -0
- package/dist/hooks/types.d.ts +141 -0
- package/dist/hooks/types.d.ts.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/memory/adapters/index.d.ts +8 -0
- package/dist/memory/adapters/index.d.ts.map +1 -0
- package/dist/memory/adapters/index.js +8 -0
- package/dist/memory/adapters/index.js.map +1 -0
- package/dist/memory/adapters/inmemory.d.ts +59 -0
- package/dist/memory/adapters/inmemory.d.ts.map +1 -0
- package/dist/memory/adapters/inmemory.js +195 -0
- package/dist/memory/adapters/inmemory.js.map +1 -0
- package/dist/memory/adapters/supermemory.d.ts +71 -0
- package/dist/memory/adapters/supermemory.d.ts.map +1 -0
- package/dist/memory/adapters/supermemory.js +338 -0
- package/dist/memory/adapters/supermemory.js.map +1 -0
- package/dist/memory/factory.d.ts +48 -0
- package/dist/memory/factory.d.ts.map +1 -0
- package/dist/memory/factory.js +143 -0
- package/dist/memory/factory.js.map +1 -0
- package/dist/memory/index.d.ts +32 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +32 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/memory-hooks.d.ts +60 -0
- package/dist/memory/memory-hooks.d.ts.map +1 -0
- package/dist/memory/memory-hooks.js +313 -0
- package/dist/memory/memory-hooks.js.map +1 -0
- package/dist/memory/service.d.ts +49 -0
- package/dist/memory/service.d.ts.map +1 -0
- package/dist/memory/service.js +146 -0
- package/dist/memory/service.js.map +1 -0
- package/dist/memory/types.d.ts +195 -0
- package/dist/memory/types.d.ts.map +1 -0
- package/dist/memory/types.js +8 -0
- package/dist/memory/types.js.map +1 -0
- package/dist/policy/agent-policy.d.ts +225 -0
- package/dist/policy/agent-policy.d.ts.map +1 -0
- package/dist/policy/agent-policy.js +665 -0
- package/dist/policy/agent-policy.js.map +1 -0
- package/dist/policy/cloud-policy-fetcher.d.ts +12 -0
- package/dist/policy/cloud-policy-fetcher.d.ts.map +1 -0
- package/dist/policy/cloud-policy-fetcher.js +64 -0
- package/dist/policy/cloud-policy-fetcher.js.map +1 -0
- package/dist/resiliency/crash-insights.d.ts +156 -0
- package/dist/resiliency/crash-insights.d.ts.map +1 -0
- package/dist/resiliency/crash-insights.js +492 -0
- package/dist/resiliency/crash-insights.js.map +1 -0
- package/dist/resiliency/gossip-health.d.ts +137 -0
- package/dist/resiliency/gossip-health.d.ts.map +1 -0
- package/dist/resiliency/gossip-health.js +241 -0
- package/dist/resiliency/gossip-health.js.map +1 -0
- package/dist/resiliency/index.d.ts +5 -0
- package/dist/resiliency/index.d.ts.map +1 -1
- package/dist/resiliency/index.js +5 -0
- package/dist/resiliency/index.js.map +1 -1
- package/dist/resiliency/leader-watchdog.d.ts +109 -0
- package/dist/resiliency/leader-watchdog.d.ts.map +1 -0
- package/dist/resiliency/leader-watchdog.js +189 -0
- package/dist/resiliency/leader-watchdog.js.map +1 -0
- package/dist/resiliency/memory-monitor.d.ts +172 -0
- package/dist/resiliency/memory-monitor.d.ts.map +1 -0
- package/dist/resiliency/memory-monitor.js +593 -0
- package/dist/resiliency/memory-monitor.js.map +1 -0
- package/dist/resiliency/stateless-lead.d.ts +149 -0
- package/dist/resiliency/stateless-lead.d.ts.map +1 -0
- package/dist/resiliency/stateless-lead.js +308 -0
- package/dist/resiliency/stateless-lead.js.map +1 -0
- package/dist/resiliency/supervisor.d.ts +38 -0
- package/dist/resiliency/supervisor.d.ts.map +1 -1
- package/dist/resiliency/supervisor.js +122 -0
- package/dist/resiliency/supervisor.js.map +1 -1
- package/dist/shared/cli-auth-config.d.ts +91 -0
- package/dist/shared/cli-auth-config.d.ts.map +1 -0
- package/dist/shared/cli-auth-config.js +264 -0
- package/dist/shared/cli-auth-config.js.map +1 -0
- package/dist/storage/adapter.d.ts +1 -1
- package/dist/storage/adapter.d.ts.map +1 -1
- package/dist/trajectory/config.d.ts +84 -0
- package/dist/trajectory/config.d.ts.map +1 -0
- package/dist/trajectory/config.js +163 -0
- package/dist/trajectory/config.js.map +1 -0
- package/dist/trajectory/index.d.ts +8 -0
- package/dist/trajectory/index.d.ts.map +1 -0
- package/dist/trajectory/index.js +8 -0
- package/dist/trajectory/index.js.map +1 -0
- package/dist/trajectory/integration.d.ts +292 -0
- package/dist/trajectory/integration.d.ts.map +1 -0
- package/dist/trajectory/integration.js +834 -0
- package/dist/trajectory/integration.js.map +1 -0
- package/dist/utils/logger.js +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/project-namespace.d.ts +24 -0
- package/dist/utils/project-namespace.d.ts.map +1 -1
- package/dist/utils/project-namespace.js +84 -0
- package/dist/utils/project-namespace.js.map +1 -1
- package/dist/wrapper/parser.d.ts +10 -0
- package/dist/wrapper/parser.d.ts.map +1 -1
- package/dist/wrapper/parser.js +100 -33
- package/dist/wrapper/parser.js.map +1 -1
- package/dist/wrapper/pty-wrapper.d.ts +197 -16
- package/dist/wrapper/pty-wrapper.d.ts.map +1 -1
- package/dist/wrapper/pty-wrapper.js +943 -106
- package/dist/wrapper/pty-wrapper.js.map +1 -1
- package/dist/wrapper/shared.d.ts +165 -0
- package/dist/wrapper/shared.d.ts.map +1 -0
- package/dist/wrapper/shared.js +270 -0
- package/dist/wrapper/shared.js.map +1 -0
- package/dist/wrapper/tmux-wrapper.d.ts +73 -11
- package/dist/wrapper/tmux-wrapper.d.ts.map +1 -1
- package/dist/wrapper/tmux-wrapper.js +541 -120
- package/dist/wrapper/tmux-wrapper.js.map +1 -1
- package/docs/CLOUD-ARCHITECTURE.md +152 -0
- package/docs/HOOKS_API.md +394 -0
- package/docs/WRAPPER_EVENTS.md +358 -0
- package/docs/agent-policy-snippet.md +40 -0
- package/docs/agent-relay-protocol.md +238 -0
- package/docs/agent-relay-snippet.md +53 -47
- package/docs/archive/EXECUTIVE_SUMMARY.md +358 -0
- package/docs/archive/ROADMAP.md +329 -0
- package/docs/competitive/GASTOWN.md +451 -0
- package/docs/{COMPETITIVE_ANALYSIS.md → competitive/OVERVIEW.md} +1 -0
- package/docs/competitive/README.md +34 -0
- package/docs/competitive/TMUX_ORCHESTRATOR.md +605 -0
- package/docs/dashboard.png +0 -0
- package/docs/design/ci-failure-webhooks.md +812 -0
- package/docs/design/comprehensive-integrations.md +238 -0
- package/docs/design/e2b-sandbox-integration.md +504 -0
- package/docs/design/github-app-permissions.md +264 -0
- package/docs/local-testing.md +428 -0
- package/docs/proposals/continuous-claude-integration.md +622 -0
- package/docs/proposals/custom-commands.md +368 -0
- package/docs/tasks/global-skills-system.tasks.md +230 -0
- package/docs/tasks/webhook-integrations.tasks.md +184 -0
- package/docs/tasks/workspace-capabilities.tasks.md +121 -0
- package/docs/testing/RESILIENCY-TEST-PLAN-2026-01-01.md +366 -0
- package/package.json +16 -7
- package/scripts/cloud-setup.sh +96 -0
- package/scripts/manual-qa.sh +293 -0
- package/scripts/postinstall.js +60 -0
- package/scripts/run-cloud-qa.sh +220 -0
- package/scripts/test-cli-auth/Dockerfile +44 -0
- package/scripts/test-cli-auth/Dockerfile.real +79 -0
- package/scripts/test-cli-auth/README.md +286 -0
- package/scripts/test-cli-auth/ci-test-real-clis.ts +251 -0
- package/scripts/test-cli-auth/ci-test-runner.ts +263 -0
- package/scripts/test-cli-auth/mock-cli.sh +147 -0
- package/scripts/test-cli-auth/package.json +14 -0
- package/scripts/test-cli-auth/test-oauth-flow.ts +220 -0
- package/scripts/test-pty-input-auto.js +222 -0
- package/scripts/test-pty-input.js +150 -0
- package/dist/dashboard/out/_next/static/chunks/693-7b3301d8f6bc5014.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/713-f78477eb185f1f4d.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/766-e53e1cfe39b0b5b5.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/900-037c64bfd797fb2a.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/app/app/page-e3d9e1f4466b9bae.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/app/metrics/page-e68825a81db67ba1.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/app/page-cc108bf68c8a657f.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/webpack-a5acc2831d094776.js +0 -1
- package/dist/dashboard/out/_next/static/css/79b80143647a07d7.css +0 -1
- package/dist/dashboard/out/_next/static/css/8cf277370ad48cfe.css +0 -1
- /package/dist/dashboard/out/_next/static/{6HHWb2ZmnJ4OSm0zUP7h4 → H5aWG0udPB4iOUIl_gytz}/_buildManifest.js +0 -0
- /package/dist/dashboard/out/_next/static/{6HHWb2ZmnJ4OSm0zUP7h4 → H5aWG0udPB4iOUIl_gytz}/_ssgManifest.js +0 -0
- /package/dist/dashboard/out/_next/static/chunks/{117-b2cd8d6485aacf2b.js → 117-b100311aff8d5c61.js} +0 -0
- /package/dist/dashboard/out/_next/static/chunks/{648-8f3f26864ce515e5.js → 648-a13d3c2b1be45466.js} +0 -0
- /package/dist/dashboard/out/_next/static/chunks/app/_not-found/{page-0b990dbb71d72a98.js → page-a4973f3e3c82fb67.js} +0 -0
- /package/dist/dashboard/out/_next/static/chunks/app/pricing/{page-d80e03a5297f95b6.js → page-4d72d5a5d8a9b618.js} +0 -0
- /package/docs/{CHANGELOG.md → archive/CHANGELOG.md} +0 -0
- /package/docs/{CLI-SIMPLIFICATION-COMPLETE.md → archive/CLI-SIMPLIFICATION-COMPLETE.md} +0 -0
- /package/docs/{DESIGN_BRIDGE_STAFFING.md → archive/DESIGN_BRIDGE_STAFFING.md} +0 -0
- /package/docs/{DESIGN_V2.md → archive/DESIGN_V2.md} +0 -0
- /package/docs/{MONETIZATION.md → archive/MONETIZATION.md} +0 -0
- /package/docs/{PROPOSAL-trajectories.md → archive/PROPOSAL-trajectories.md} +0 -0
- /package/docs/{SCALING_ANALYSIS.md → archive/SCALING_ANALYSIS.md} +0 -0
- /package/docs/{TESTING_PRESENCE_FEATURES.md → archive/TESTING_PRESENCE_FEATURES.md} +0 -0
- /package/docs/{TMUX_IMPLEMENTATION_NOTES.md → archive/TMUX_IMPLEMENTATION_NOTES.md} +0 -0
- /package/docs/{TMUX_IMPROVEMENTS.md → archive/TMUX_IMPROVEMENTS.md} +0 -0
- /package/docs/{dashboard-v2-plan.md → archive/dashboard-v2-plan.md} +0 -0
- /package/docs/{removable-code-analysis.md → archive/removable-code-analysis.md} +0 -0
- /package/docs/{competitive-analysis-mcp-agent-mail.md → competitive/MCP_AGENT_MAIL.md} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[766],{8766:function(e,s,a){"use strict";a.d(s,{fy:function(){return t},Wv:function(){return C}});var n=a(7437),i=a(2265);a(3655);var r=a(6272);let l={claude:{name:"Claude",color:"#00D9FF",icon:"◈"},codex:{name:"Codex",color:"#FF6B35",icon:"⬡"},gemini:{name:"Gemini",color:"#A855F7",icon:"◇"}},c=[{from:"Architect",to:"all",content:"Starting auth module implementation. @Backend handle API, @Frontend build login UI.",provider:"claude"},{from:"Backend",to:"Architect",content:"Acknowledged. Setting up JWT middleware and user routes.",provider:"codex"},{from:"Frontend",to:"Architect",content:"On it. Creating login form with OAuth integration.",provider:"claude"},{from:"Backend",to:"Frontend",content:"API ready at /api/auth. Endpoints: POST /login, POST /register, GET /me",provider:"codex"},{from:"Frontend",to:"Backend",content:"Perfect. Integrating now. Need CORS headers for localhost:3000",provider:"claude"},{from:"Backend",to:"Frontend",content:"Done. CORS configured for development.",provider:"codex"},{from:"Reviewer",to:"all",content:"Running security audit on auth implementation...",provider:"gemini"},{from:"Reviewer",to:"Backend",content:"Found issue: password not being hashed. Use bcrypt.",provider:"gemini"},{from:"Backend",to:"Reviewer",content:"Good catch. Fixed and pushed. Using bcrypt with 12 rounds.",provider:"codex"},{from:"Architect",to:"all",content:"Auth module complete. Moving to dashboard implementation.",provider:"claude"}];function t(){return(0,n.jsxs)("div",{className:"landing-page",children:[(0,n.jsxs)("div",{className:"landing-bg",children:[(0,n.jsx)(N,{}),(0,n.jsx)(f,{})]}),(0,n.jsx)(o,{}),(0,n.jsxs)("main",{children:[(0,n.jsx)(d,{}),(0,n.jsx)(u,{}),(0,n.jsx)(p,{}),(0,n.jsx)(x,{}),(0,n.jsx)(j,{}),(0,n.jsx)(g,{})]}),(0,n.jsx)(v,{})]})}function o(){let[e,s]=(0,i.useState)(!1),[a,l]=(0,i.useState)(!1);(0,i.useEffect)(()=>{let e=()=>s(window.scrollY>50);return window.addEventListener("scroll",e),()=>window.removeEventListener("scroll",e)},[]),(0,i.useEffect)(()=>{let e=()=>{window.innerWidth>768&&l(!1)};return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),(0,i.useEffect)(()=>(a?document.body.style.overflow="hidden":document.body.style.overflow="",()=>{document.body.style.overflow=""}),[a]);let c=()=>{l(!1)};return(0,n.jsxs)("nav",{className:"nav ".concat(e?"scrolled":""," ").concat(a?"menu-open":""),children:[(0,n.jsxs)("div",{className:"nav-inner",children:[(0,n.jsxs)("a",{href:"/",className:"nav-logo",children:[(0,n.jsx)(r.K7,{size:28,withGlow:!0}),(0,n.jsx)("span",{className:"logo-text",children:"Agent Relay"})]}),(0,n.jsxs)("div",{className:"nav-links",children:[(0,n.jsx)("a",{href:"#demo",children:"Demo"}),(0,n.jsx)("a",{href:"#features",children:"Features"}),(0,n.jsx)("a",{href:"#pricing",children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",className:"nav-docs",children:"Docs"})]}),(0,n.jsxs)("div",{className:"nav-actions",children:[(0,n.jsx)("a",{href:"/login",className:"btn-ghost",children:"Sign In"}),(0,n.jsx)("a",{href:"/signup",className:"btn-primary",children:"Get Started"})]}),(0,n.jsx)("button",{className:"mobile-menu-toggle",onClick:()=>l(!a),"aria-label":a?"Close menu":"Open menu",children:(0,n.jsxs)("span",{className:"hamburger ".concat(a?"open":""),children:[(0,n.jsx)("span",{className:"hamburger-line"}),(0,n.jsx)("span",{className:"hamburger-line"}),(0,n.jsx)("span",{className:"hamburger-line"})]})})]}),(0,n.jsx)("div",{className:"mobile-menu-overlay ".concat(a?"open":""),onClick:c}),(0,n.jsx)("div",{className:"mobile-menu ".concat(a?"open":""),children:(0,n.jsxs)("div",{className:"mobile-menu-content",children:[(0,n.jsxs)("div",{className:"mobile-nav-links",children:[(0,n.jsx)("a",{href:"#demo",onClick:c,children:"Demo"}),(0,n.jsx)("a",{href:"#features",onClick:c,children:"Features"}),(0,n.jsx)("a",{href:"#pricing",onClick:c,children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",onClick:c,children:"Documentation"})]}),(0,n.jsxs)("div",{className:"mobile-nav-actions",children:[(0,n.jsx)("a",{href:"/login",className:"btn-ghost btn-full",onClick:c,children:"Sign In"}),(0,n.jsx)("a",{href:"/signup",className:"btn-primary btn-full",onClick:c,children:"Get Started"})]})]})})]})}function d(){return(0,n.jsxs)("section",{className:"hero",children:[(0,n.jsxs)("div",{className:"hero-content",children:[(0,n.jsxs)("div",{className:"hero-badge",children:[(0,n.jsx)("span",{className:"badge-dot"}),(0,n.jsx)("span",{children:"Now in Public Beta"})]}),(0,n.jsxs)("h1",{className:"hero-title",children:[(0,n.jsx)("span",{className:"title-line",children:"Orchestrate AI Agents"}),(0,n.jsx)("span",{className:"title-line gradient",children:"Like a Symphony"})]}),(0,n.jsx)("p",{className:"hero-subtitle",children:"Deploy Claude, Codex, and Gemini agents that communicate in real-time. One dashboard to rule them all. Zero infrastructure headaches."}),(0,n.jsxs)("div",{className:"hero-cta",children:[(0,n.jsxs)("a",{href:"/signup",className:"btn-primary btn-large",children:[(0,n.jsx)("span",{children:"Start Building"}),(0,n.jsx)("span",{className:"btn-arrow",children:"→"})]}),(0,n.jsxs)("a",{href:"#demo",className:"btn-ghost btn-large",children:[(0,n.jsx)("span",{className:"play-icon",children:"▶"}),(0,n.jsx)("span",{children:"Watch Demo"})]})]}),(0,n.jsxs)("div",{className:"hero-stats",children:[(0,n.jsxs)("div",{className:"stat",children:[(0,n.jsx)("span",{className:"stat-value",children:"10K+"}),(0,n.jsx)("span",{className:"stat-label",children:"Agents Spawned"})]}),(0,n.jsx)("div",{className:"stat-divider"}),(0,n.jsxs)("div",{className:"stat",children:[(0,n.jsx)("span",{className:"stat-value",children:"500+"}),(0,n.jsx)("span",{className:"stat-label",children:"Teams"})]}),(0,n.jsx)("div",{className:"stat-divider"}),(0,n.jsxs)("div",{className:"stat",children:[(0,n.jsx)("span",{className:"stat-value",children:"99.9%"}),(0,n.jsx)("span",{className:"stat-label",children:"Uptime"})]})]})]}),(0,n.jsx)("div",{className:"hero-visual",children:(0,n.jsx)(h,{})})]})}function h(){let e=[{id:"lead",name:"Lead",x:50,y:30,provider:"claude",pulse:!0},{id:"backend",name:"Backend",x:25,y:55,provider:"codex",pulse:!1},{id:"frontend",name:"Frontend",x:75,y:55,provider:"claude",pulse:!1},{id:"reviewer",name:"Reviewer",x:50,y:80,provider:"gemini",pulse:!1}];return(0,n.jsxs)("div",{className:"agent-network",children:[(0,n.jsx)("svg",{className:"network-lines",viewBox:"0 0 100 100",preserveAspectRatio:"none",children:[{from:"lead",to:"backend"},{from:"lead",to:"frontend"},{from:"backend",to:"frontend"},{from:"backend",to:"reviewer"},{from:"frontend",to:"reviewer"}].map((s,a)=>{let i=e.find(e=>e.id===s.from),r=e.find(e=>e.id===s.to);return(0,n.jsxs)("g",{children:[(0,n.jsx)("line",{x1:i.x,y1:i.y,x2:r.x,y2:r.y,className:"network-line"}),(0,n.jsx)("line",{x1:i.x,y1:i.y,x2:r.x,y2:r.y,className:"network-line-glow",style:{animationDelay:"".concat(.3*a,"s")}})]},a)})}),e.map(e=>{let s=l[e.provider];return(0,n.jsxs)("div",{className:"network-agent ".concat(e.pulse?"pulse":""),style:{left:"".concat(e.x,"%"),top:"".concat(e.y,"%"),"--agent-color":s.color},children:[(0,n.jsx)("div",{className:"agent-glow"}),(0,n.jsx)("div",{className:"agent-icon",children:s.icon}),(0,n.jsx)("div",{className:"agent-label",children:e.name})]},e.id)}),(0,n.jsx)(m,{fromX:50,fromY:30,toX:25,toY:55,delay:0}),(0,n.jsx)(m,{fromX:25,fromY:55,toX:75,toY:55,delay:1}),(0,n.jsx)(m,{fromX:75,fromY:55,toX:50,toY:80,delay:2})]})}function m(e){let{fromX:s,fromY:a,toX:i,toY:r,delay:l}=e;return(0,n.jsx)("div",{className:"data-packet",style:{"--from-x":"".concat(s,"%"),"--from-y":"".concat(a,"%"),"--to-x":"".concat(i,"%"),"--to-y":"".concat(r,"%"),animationDelay:"".concat(l,"s")}})}function u(){let[e,s]=(0,i.useState)([]),[a,r]=(0,i.useState)(0),t=(0,i.useRef)(null);return(0,i.useEffect)(()=>{if(a>=c.length){let e=setTimeout(()=>{s([]),r(0)},3e3);return()=>clearTimeout(e)}let e=setTimeout(()=>{s(e=>[...e,c[a]]),r(e=>e+1)},1500);return()=>clearTimeout(e)},[a]),(0,i.useEffect)(()=>{let e=t.current;e&&(e.scrollTop=e.scrollHeight)},[e]),(0,n.jsxs)("section",{id:"demo",className:"demo-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Live Demo"}),(0,n.jsx)("h2",{children:"Watch Agents Collaborate"}),(0,n.jsx)("p",{children:"See how multiple AI agents work together on a real task in real-time."})]}),(0,n.jsxs)("div",{className:"demo-container",children:[(0,n.jsxs)("div",{className:"demo-window",children:[(0,n.jsxs)("div",{className:"window-header",children:[(0,n.jsxs)("div",{className:"window-dots",children:[(0,n.jsx)("span",{className:"dot red"}),(0,n.jsx)("span",{className:"dot yellow"}),(0,n.jsx)("span",{className:"dot green"})]}),(0,n.jsx)("div",{className:"window-title",children:"Agent Relay — auth-module"}),(0,n.jsxs)("div",{className:"window-status",children:[(0,n.jsx)("span",{className:"status-dot"}),(0,n.jsx)("span",{children:"4 agents online"})]})]}),(0,n.jsxs)("div",{className:"demo-content",children:[(0,n.jsx)("div",{className:"demo-sidebar",children:(0,n.jsxs)("div",{className:"sidebar-section",children:[(0,n.jsx)("div",{className:"sidebar-label",children:"AGENTS"}),["Architect","Backend","Frontend","Reviewer"].map((e,s)=>{let a=l[["claude","codex","claude","gemini"][s]];return(0,n.jsxs)("div",{className:"sidebar-agent",children:[(0,n.jsx)("span",{className:"agent-dot",style:{background:a.color}}),(0,n.jsx)("span",{className:"agent-name",children:e}),(0,n.jsx)("span",{className:"agent-status",children:"●"})]},e)})]})}),(0,n.jsxs)("div",{className:"demo-messages",ref:t,children:[e.map((e,s)=>{let a=l[e.provider];return(0,n.jsxs)("div",{className:"message",style:{"--msg-color":a.color},children:[(0,n.jsxs)("div",{className:"message-header",children:[(0,n.jsx)("span",{className:"message-icon",style:{background:a.color},children:a.icon}),(0,n.jsx)("span",{className:"message-from",children:e.from}),(0,n.jsx)("span",{className:"message-arrow",children:"→"}),(0,n.jsx)("span",{className:"message-to",children:"all"===e.to?"everyone":e.to}),(0,n.jsx)("span",{className:"message-time",children:"just now"})]}),(0,n.jsx)("div",{className:"message-content",children:e.content})]},s)}),e.length<c.length&&(0,n.jsxs)("div",{className:"typing-indicator",children:[(0,n.jsx)("span",{className:"typing-dot"}),(0,n.jsx)("span",{className:"typing-dot"}),(0,n.jsx)("span",{className:"typing-dot"})]})]})]})]}),(0,n.jsx)("div",{className:"demo-caption",children:(0,n.jsx)("p",{children:"This is a simulation of agents completing a task. In production, agents run your actual code."})})]})]})}function p(){return(0,n.jsxs)("section",{id:"features",className:"features-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Features"}),(0,n.jsx)("h2",{children:"Everything You Need"}),(0,n.jsx)("p",{children:"Built for developers who want AI agents that actually work together."})]}),(0,n.jsx)("div",{className:"features-grid",children:[{icon:"⚡",title:"One-Click Workspaces",description:"Spin up isolated environments for each project. Connect your repo and agents are ready in seconds."},{icon:"\uD83D\uDD04",title:"Real-Time Messaging",description:"Agents communicate through a blazing-fast relay. @mentions, broadcasts, and direct messages."},{icon:"\uD83D\uDD10",title:"Secure Credential Vault",description:"Store API keys and secrets encrypted at rest. Agents access only what they need."},{icon:"\uD83C\uDFAF",title:"Smart Orchestration",description:"Lead agents delegate tasks. Workers report progress. The system handles the complexity."},{icon:"\uD83D\uDCCA",title:"Full Observability",description:"Trace every message, tool call, and decision. Replay and debug any session."},{icon:"\uD83D\uDE80",title:"Auto-Scaling",description:"From 1 agent to 100. Pay only for what you use. Scale down to zero when idle."}].map((e,s)=>(0,n.jsxs)("div",{className:"feature-card",style:{animationDelay:"".concat(.1*s,"s")},children:[(0,n.jsx)("div",{className:"feature-icon",children:e.icon}),(0,n.jsx)("h3",{children:e.title}),(0,n.jsx)("p",{children:e.description})]},s))})]})}function x(){return(0,n.jsxs)("section",{className:"providers-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Providers"}),(0,n.jsx)("h2",{children:"Bring Your Own Agents"}),(0,n.jsx)("p",{children:"Use any AI provider. Mix and match for the perfect team."})]}),(0,n.jsxs)("div",{className:"providers-grid",children:[Object.entries(l).map(e=>{let[s,a]=e;return(0,n.jsxs)("div",{className:"provider-card",style:{"--provider-color":a.color},children:[(0,n.jsx)("div",{className:"provider-icon",children:a.icon}),(0,n.jsx)("div",{className:"provider-name",children:a.name}),(0,n.jsx)("div",{className:"provider-status",children:"Supported"})]},s)}),(0,n.jsxs)("div",{className:"provider-card coming-soon",children:[(0,n.jsx)("div",{className:"provider-icon",children:"◎"}),(0,n.jsx)("div",{className:"provider-name",children:"More Coming"}),(0,n.jsx)("div",{className:"provider-status",children:"2025"})]})]})]})}function j(){return(0,n.jsxs)("section",{id:"pricing",className:"pricing-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Pricing"}),(0,n.jsx)("h2",{children:"Simple, Transparent Pricing"}),(0,n.jsx)("p",{children:"Start free. Scale as you grow. No hidden fees."})]}),(0,n.jsx)("div",{className:"pricing-grid",children:[{name:"Free",price:"$0",period:"forever",description:"Try it out on a side project",features:["1 workspace","3 repositories","2 concurrent agents","10 compute hours/month","Community support"],cta:"Get Started",highlighted:!1},{name:"Pro",price:"$29",period:"/month",description:"For professional developers",features:["5 workspaces","20 repositories","10 concurrent agents","100 compute hours/month","Coordinator agents","Email support"],cta:"Start Free Trial",highlighted:!0},{name:"Team",price:"$99",period:"/month",description:"For growing teams",features:["20 workspaces","100 repositories","50 concurrent agents","500 compute hours/month","Coordinator agents","Priority support","Audit logs"],cta:"Start Free Trial",highlighted:!1},{name:"Enterprise",price:"Custom",period:"",description:"For organizations at scale",features:["Unlimited workspaces","Unlimited repositories","Unlimited agents","Unlimited compute","SSO/SAML","SLA guarantee","Dedicated support"],cta:"Contact Sales",highlighted:!1}].map((e,s)=>(0,n.jsxs)("div",{className:"pricing-card ".concat(e.highlighted?"highlighted":""),children:[e.highlighted&&(0,n.jsx)("div",{className:"popular-badge",children:"Most Popular"}),(0,n.jsxs)("div",{className:"pricing-header",children:[(0,n.jsx)("h3",{children:e.name}),(0,n.jsxs)("div",{className:"pricing-price",children:[(0,n.jsx)("span",{className:"price",children:e.price}),(0,n.jsx)("span",{className:"period",children:e.period})]}),(0,n.jsx)("p",{className:"pricing-description",children:e.description})]}),(0,n.jsx)("ul",{className:"pricing-features",children:e.features.map((e,s)=>(0,n.jsxs)("li",{children:[(0,n.jsx)("span",{className:"check",children:"✓"}),(0,n.jsx)("span",{children:e})]},s))}),(0,n.jsx)("a",{href:"/signup",className:"btn-".concat(e.highlighted?"primary":"ghost"," btn-full"),children:e.cta})]},s))})]})}function g(){return(0,n.jsxs)("section",{className:"cta-section",children:[(0,n.jsxs)("div",{className:"cta-content",children:[(0,n.jsx)("h2",{children:"Ready to Orchestrate?"}),(0,n.jsx)("p",{children:"Join thousands of developers building with AI agent teams."}),(0,n.jsxs)("div",{className:"cta-buttons",children:[(0,n.jsxs)("a",{href:"/signup",className:"btn-primary btn-large",children:[(0,n.jsx)("span",{children:"Start Building Free"}),(0,n.jsx)("span",{className:"btn-arrow",children:"→"})]}),(0,n.jsx)("a",{href:"/docs",className:"btn-ghost btn-large",children:"Read the Docs"})]})]}),(0,n.jsxs)("div",{className:"cta-terminal",children:[(0,n.jsxs)("div",{className:"terminal-header",children:[(0,n.jsx)("span",{className:"terminal-prompt",children:"$"}),(0,n.jsx)("span",{className:"terminal-text",children:"npx agent-relay init"})]}),(0,n.jsxs)("div",{className:"terminal-output",children:[(0,n.jsx)("span",{className:"output-line",children:"✓ Connected to Agent Relay Cloud"}),(0,n.jsx)("span",{className:"output-line",children:"✓ Workspace created: my-project"}),(0,n.jsx)("span",{className:"output-line",children:"✓ Ready to spawn agents"}),(0,n.jsx)("span",{className:"output-line cursor",children:"→ agent-relay spawn Lead --provider claude"})]})]})]})}function v(){return(0,n.jsxs)("footer",{className:"footer",children:[(0,n.jsxs)("div",{className:"footer-inner",children:[(0,n.jsxs)("div",{className:"footer-brand",children:[(0,n.jsxs)("a",{href:"/",className:"footer-logo",children:[(0,n.jsx)(r.K7,{size:24,withGlow:!0}),(0,n.jsx)("span",{className:"logo-text",children:"Agent Relay"})]}),(0,n.jsx)("p",{children:"Orchestrate AI agents like a symphony."})]}),(0,n.jsxs)("div",{className:"footer-links",children:[(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Product"}),(0,n.jsx)("a",{href:"#features",children:"Features"}),(0,n.jsx)("a",{href:"#pricing",children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",children:"Documentation"}),(0,n.jsx)("a",{href:"/changelog",children:"Changelog"})]}),(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Company"}),(0,n.jsx)("a",{href:"/about",children:"About"}),(0,n.jsx)("a",{href:"/blog",children:"Blog"}),(0,n.jsx)("a",{href:"/careers",children:"Careers"}),(0,n.jsx)("a",{href:"/contact",children:"Contact"})]}),(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Legal"}),(0,n.jsx)("a",{href:"/privacy",children:"Privacy"}),(0,n.jsx)("a",{href:"/terms",children:"Terms"}),(0,n.jsx)("a",{href:"/security",children:"Security"})]})]})]}),(0,n.jsxs)("div",{className:"footer-bottom",children:[(0,n.jsx)("p",{children:"\xa9 2025 Agent Relay. All rights reserved."}),(0,n.jsxs)("div",{className:"social-links",children:[(0,n.jsx)("a",{href:"https://github.com/agent-relay","aria-label":"GitHub",children:(0,n.jsx)(y,{})}),(0,n.jsx)("a",{href:"https://twitter.com/agentrelay","aria-label":"Twitter",children:(0,n.jsx)(b,{})}),(0,n.jsx)("a",{href:"https://discord.gg/agentrelay","aria-label":"Discord",children:(0,n.jsx)(w,{})})]})]})]})}function N(){return(0,n.jsxs)("div",{className:"grid-bg",children:[(0,n.jsx)("div",{className:"grid-lines"}),(0,n.jsx)("div",{className:"grid-glow"})]})}function f(){return(0,n.jsxs)("div",{className:"glow-orbs",children:[(0,n.jsx)("div",{className:"orb orb-1"}),(0,n.jsx)("div",{className:"orb orb-2"}),(0,n.jsx)("div",{className:"orb orb-3"})]})}function y(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z"})})}function b(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"})})}function w(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M20.317 4.37a19.791 19.791 0 00-4.885-1.515.074.074 0 00-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 00-5.487 0 12.64 12.64 0 00-.617-1.25.077.077 0 00-.079-.037A19.736 19.736 0 003.677 4.37a.07.07 0 00-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 00.031.057 19.9 19.9 0 005.993 3.03.078.078 0 00.084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 00-.041-.106 13.107 13.107 0 01-1.872-.892.077.077 0 01-.008-.128 10.2 10.2 0 00.372-.292.074.074 0 01.077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 01.078.01c.12.098.246.198.373.292a.077.077 0 01-.006.127 12.299 12.299 0 01-1.873.892.077.077 0 00-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 00.084.028 19.839 19.839 0 006.002-3.03.077.077 0 00.032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 00-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z"})})}let k=[{id:"free",name:"Free",price:0,period:"forever",tagline:"Try it out on a side project",description:"Perfect for exploring AI agent orchestration on personal projects.",limits:{workspaces:1,repos:3,concurrentAgents:2,computeHours:10},features:[{name:"Workspaces",value:"1",included:!0},{name:"Repositories",value:"3",included:!0},{name:"Concurrent agents",value:"2",included:!0},{name:"Compute hours/month",value:"10",included:!0},{name:"Coordinator agents",value:null,included:!1},{name:"Team collaboration",value:null,included:!1},{name:"Priority support",value:null,included:!1},{name:"Audit logs",value:null,included:!1},{name:"SSO/SAML",value:null,included:!1},{name:"SLA guarantee",value:null,included:!1}],cta:"Get Started Free",ctaLink:"/signup",highlighted:!1},{id:"pro",name:"Pro",price:29,period:"/month",tagline:"For professional developers",description:"Unlock coordinator agents and scale your AI workforce.",limits:{workspaces:5,repos:20,concurrentAgents:10,computeHours:100},features:[{name:"Workspaces",value:"5",included:!0},{name:"Repositories",value:"20",included:!0},{name:"Concurrent agents",value:"10",included:!0},{name:"Compute hours/month",value:"100",included:!0},{name:"Coordinator agents",value:"Yes",included:!0},{name:"Team collaboration",value:null,included:!1},{name:"Priority support",value:null,included:!1},{name:"Audit logs",value:null,included:!1},{name:"SSO/SAML",value:null,included:!1},{name:"SLA guarantee",value:null,included:!1}],cta:"Start Free Trial",ctaLink:"/signup?plan=pro",highlighted:!0,badge:"Most Popular"},{id:"team",name:"Team",price:99,period:"/month",tagline:"For growing teams",description:"Collaborate with your team and ship faster together.",limits:{workspaces:20,repos:100,concurrentAgents:50,computeHours:500},features:[{name:"Workspaces",value:"20",included:!0},{name:"Repositories",value:"100",included:!0},{name:"Concurrent agents",value:"50",included:!0},{name:"Compute hours/month",value:"500",included:!0},{name:"Coordinator agents",value:"Yes",included:!0},{name:"Team collaboration",value:"Yes",included:!0},{name:"Priority support",value:"Yes",included:!0},{name:"Audit logs",value:"Yes",included:!0},{name:"SSO/SAML",value:null,included:!1},{name:"SLA guarantee",value:null,included:!1}],cta:"Start Free Trial",ctaLink:"/signup?plan=team",highlighted:!1},{id:"enterprise",name:"Enterprise",price:null,period:"",tagline:"For organizations at scale",description:"Custom solutions with dedicated support and SLA guarantees.",limits:{workspaces:1/0,repos:1/0,concurrentAgents:1/0,computeHours:1/0},features:[{name:"Workspaces",value:"Unlimited",included:!0},{name:"Repositories",value:"Unlimited",included:!0},{name:"Concurrent agents",value:"Unlimited",included:!0},{name:"Compute hours/month",value:"Unlimited",included:!0},{name:"Coordinator agents",value:"Yes",included:!0},{name:"Team collaboration",value:"Yes",included:!0},{name:"Priority support",value:"Dedicated",included:!0},{name:"Audit logs",value:"Yes",included:!0},{name:"SSO/SAML",value:"Yes",included:!0},{name:"SLA guarantee",value:"99.9%",included:!0}],cta:"Contact Sales",ctaLink:"/contact?subject=enterprise",highlighted:!1}],A=[{q:'What counts as a "compute hour"?',a:"A compute hour is measured when your agents are actively running in our cloud infrastructure. Time spent waiting for your input or idle time doesn't count. We track usage to the second and round up to the nearest minute for billing."},{q:"Can I use my own AI API keys?",a:"Yes! Agent Relay orchestrates your agents—you connect your own Claude, Codex, or Gemini instances. We don't charge for AI API usage; that's between you and your AI provider. Our pricing covers the orchestration infrastructure."},{q:"What are coordinator agents?",a:"Coordinators are special agents that oversee project groups. They delegate tasks to other agents, track progress, and ensure work is completed efficiently across multiple repositories. Available on Pro plans and above."},{q:"What happens if I exceed my limits?",a:"We'll notify you when you're approaching your limits. If you exceed them, new agent spawns will be blocked until you upgrade or wait for the next billing cycle. Your existing agents will continue running."},{q:"Can I change plans anytime?",a:"Absolutely. Upgrade instantly and get prorated billing. Downgrade takes effect at the end of your billing cycle. No long-term contracts required."},{q:"Do you offer discounts for startups or open source?",a:"Yes! We offer 50% off for verified startups (less than $1M raised) and free Pro accounts for maintainers of popular open source projects. Contact us to apply."}];function C(){let[e,s]=(0,i.useState)("monthly"),[a,r]=(0,i.useState)(null);return(0,n.jsxs)("div",{className:"pricing-page",children:[(0,n.jsxs)("div",{className:"pricing-bg",children:[(0,n.jsx)(I,{}),(0,n.jsx)(B,{})]}),(0,n.jsx)(S,{}),(0,n.jsxs)("main",{children:[(0,n.jsx)(F,{billingCycle:e,setBillingCycle:s}),(0,n.jsx)(D,{billingCycle:e}),(0,n.jsx)(P,{}),(0,n.jsx)(L,{openFaq:a,setOpenFaq:r}),(0,n.jsx)(T,{})]}),(0,n.jsx)(R,{})]})}function S(){let[e,s]=(0,i.useState)(!1);return(0,i.useEffect)(()=>{let e=()=>s(window.scrollY>50);return window.addEventListener("scroll",e),()=>window.removeEventListener("scroll",e)},[]),(0,n.jsx)("nav",{className:"nav ".concat(e?"scrolled":""),children:(0,n.jsxs)("div",{className:"nav-inner",children:[(0,n.jsxs)("a",{href:"/",className:"nav-logo",children:[(0,n.jsx)(r.K7,{size:28,withGlow:!0}),(0,n.jsx)("span",{className:"logo-text",children:"Agent Relay"})]}),(0,n.jsxs)("div",{className:"nav-links",children:[(0,n.jsx)("a",{href:"/#demo",children:"Demo"}),(0,n.jsx)("a",{href:"/#features",children:"Features"}),(0,n.jsx)("a",{href:"/pricing",className:"active",children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",className:"nav-docs",children:"Docs"})]}),(0,n.jsxs)("div",{className:"nav-actions",children:[(0,n.jsx)("a",{href:"/login",className:"btn-ghost",children:"Sign In"}),(0,n.jsx)("a",{href:"/signup",className:"btn-primary",children:"Get Started"})]})]})})}function F(e){let{billingCycle:s,setBillingCycle:a}=e;return(0,n.jsx)("section",{className:"pricing-hero",children:(0,n.jsxs)("div",{className:"pricing-hero-content",children:[(0,n.jsxs)("div",{className:"hero-badge",children:[(0,n.jsx)("span",{className:"badge-icon",children:"◈"}),(0,n.jsx)("span",{children:"Simple, transparent pricing"})]}),(0,n.jsxs)("h1",{children:[(0,n.jsx)("span",{className:"title-line",children:"Choose Your"}),(0,n.jsx)("span",{className:"title-line gradient",children:"Mission Control"})]}),(0,n.jsxs)("p",{className:"hero-subtitle",children:["Start free. Scale as you grow. Pay only for what you use.",(0,n.jsx)("br",{}),"All plans include a 14-day free trial."]}),(0,n.jsxs)("div",{className:"billing-toggle",children:[(0,n.jsx)("button",{className:"monthly"===s?"active":"",onClick:()=>a("monthly"),children:"Monthly"}),(0,n.jsxs)("button",{className:"annual"===s?"active":"",onClick:()=>a("annual"),children:["Annual",(0,n.jsx)("span",{className:"save-badge",children:"Save 20%"})]})]})]})})}function D(e){let{billingCycle:s}=e,a=e=>{if(null===e.price)return"Custom";if(0===e.price)return"$0";let a="annual"===s?Math.floor(.8*e.price):e.price;return"$".concat(a)};return(0,n.jsx)("section",{className:"plans-section",children:(0,n.jsx)("div",{className:"plans-grid",children:k.map(e=>(0,n.jsxs)("div",{className:"plan-card ".concat(e.highlighted?"highlighted":""),children:[e.badge&&(0,n.jsx)("div",{className:"plan-badge",children:e.badge}),(0,n.jsxs)("div",{className:"plan-header",children:[(0,n.jsx)("h3",{children:e.name}),(0,n.jsx)("p",{className:"plan-tagline",children:e.tagline})]}),(0,n.jsxs)("div",{className:"plan-price",children:[(0,n.jsx)("span",{className:"price",children:a(e)}),null!==e.price&&e.price>0&&(0,n.jsx)("span",{className:"period",children:"annual"===s?"/mo, billed annually":"/month"}),0===e.price&&(0,n.jsx)("span",{className:"period",children:"forever"})]}),(0,n.jsx)("p",{className:"plan-description",children:e.description}),(0,n.jsxs)("div",{className:"plan-limits",children:[(0,n.jsxs)("div",{className:"limit-item",children:[(0,n.jsx)("span",{className:"limit-icon",children:"◇"}),(0,n.jsx)("span",{className:"limit-value",children:e.limits.workspaces===1/0?"∞":e.limits.workspaces}),(0,n.jsx)("span",{className:"limit-label",children:"workspaces"})]}),(0,n.jsxs)("div",{className:"limit-item",children:[(0,n.jsx)("span",{className:"limit-icon",children:"◈"}),(0,n.jsx)("span",{className:"limit-value",children:e.limits.repos===1/0?"∞":e.limits.repos}),(0,n.jsx)("span",{className:"limit-label",children:"repos"})]}),(0,n.jsxs)("div",{className:"limit-item",children:[(0,n.jsx)("span",{className:"limit-icon",children:"⬡"}),(0,n.jsx)("span",{className:"limit-value",children:e.limits.concurrentAgents===1/0?"∞":e.limits.concurrentAgents}),(0,n.jsx)("span",{className:"limit-label",children:"agents"})]}),(0,n.jsxs)("div",{className:"limit-item",children:[(0,n.jsx)("span",{className:"limit-icon",children:"⏱"}),(0,n.jsx)("span",{className:"limit-value",children:e.limits.computeHours===1/0?"∞":e.limits.computeHours}),(0,n.jsx)("span",{className:"limit-label",children:"hours/mo"})]})]}),(0,n.jsx)("a",{href:e.ctaLink,className:"btn-".concat(e.highlighted?"primary":"ghost"," btn-full"),children:e.cta})]},e.id))})})}function P(){let e=k[0].features.map(e=>e.name);return(0,n.jsxs)("section",{className:"comparison-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Compare Plans"}),(0,n.jsx)("h2",{children:"Feature Comparison"}),(0,n.jsx)("p",{children:"See exactly what's included in each plan."})]}),(0,n.jsx)("div",{className:"comparison-table-wrapper",children:(0,n.jsxs)("table",{className:"comparison-table",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{className:"feature-col",children:"Feature"}),k.map(e=>(0,n.jsx)("th",{className:e.highlighted?"highlighted":"",children:e.name},e.id))]})}),(0,n.jsx)("tbody",{children:e.map((e,s)=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"feature-col",children:e}),k.map(e=>{let a=e.features[s];return(0,n.jsx)("td",{className:e.highlighted?"highlighted":"",children:a.included?a.value?(0,n.jsx)("span",{className:"feature-value",children:a.value}):(0,n.jsx)("span",{className:"check",children:"✓"}):(0,n.jsx)("span",{className:"dash",children:"—"})},e.id)})]},e))})]})})]})}function L(e){let{openFaq:s,setOpenFaq:a}=e;return(0,n.jsxs)("section",{className:"faq-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"FAQ"}),(0,n.jsx)("h2",{children:"Questions? Answers."}),(0,n.jsx)("p",{children:"Everything you need to know about Agent Relay pricing."})]}),(0,n.jsx)("div",{className:"faq-grid",children:A.map((e,i)=>(0,n.jsxs)("div",{className:"faq-item ".concat(s===i?"open":""),onClick:()=>a(s===i?null:i),children:[(0,n.jsxs)("div",{className:"faq-question",children:[(0,n.jsx)("span",{children:e.q}),(0,n.jsx)("span",{className:"faq-toggle",children:s===i?"−":"+"})]}),(0,n.jsx)("div",{className:"faq-answer",children:(0,n.jsx)("p",{children:e.a})})]},i))})]})}function T(){return(0,n.jsx)("section",{className:"cta-section",children:(0,n.jsxs)("div",{className:"cta-card",children:[(0,n.jsxs)("div",{className:"cta-content",children:[(0,n.jsx)("h2",{children:"Ready to orchestrate?"}),(0,n.jsx)("p",{children:"Start free and upgrade when you need more power."}),(0,n.jsxs)("div",{className:"cta-buttons",children:[(0,n.jsxs)("a",{href:"/signup",className:"btn-primary btn-large",children:[(0,n.jsx)("span",{children:"Get Started Free"}),(0,n.jsx)("span",{className:"btn-arrow",children:"→"})]}),(0,n.jsx)("a",{href:"/contact",className:"btn-ghost btn-large",children:"Talk to Sales"})]})]}),(0,n.jsx)("div",{className:"cta-visual",children:(0,n.jsxs)("div",{className:"orbit",children:[(0,n.jsx)("div",{className:"orbit-ring ring-1"}),(0,n.jsx)("div",{className:"orbit-ring ring-2"}),(0,n.jsx)("div",{className:"orbit-ring ring-3"}),(0,n.jsx)("div",{className:"orbit-center",children:(0,n.jsx)(r.K7,{size:40,withGlow:!0})}),(0,n.jsx)("div",{className:"orbit-dot dot-1",children:"◈"}),(0,n.jsx)("div",{className:"orbit-dot dot-2",children:"⬡"}),(0,n.jsx)("div",{className:"orbit-dot dot-3",children:"◇"})]})})]})})}function R(){return(0,n.jsxs)("footer",{className:"footer",children:[(0,n.jsxs)("div",{className:"footer-inner",children:[(0,n.jsxs)("div",{className:"footer-brand",children:[(0,n.jsxs)("a",{href:"/",className:"footer-logo",children:[(0,n.jsx)(r.K7,{size:24,withGlow:!0}),(0,n.jsx)("span",{className:"logo-text",children:"Agent Relay"})]}),(0,n.jsx)("p",{children:"Orchestrate AI agents like a symphony."})]}),(0,n.jsxs)("div",{className:"footer-links",children:[(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Product"}),(0,n.jsx)("a",{href:"/#features",children:"Features"}),(0,n.jsx)("a",{href:"/pricing",children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",children:"Documentation"}),(0,n.jsx)("a",{href:"/changelog",children:"Changelog"})]}),(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Company"}),(0,n.jsx)("a",{href:"/about",children:"About"}),(0,n.jsx)("a",{href:"/blog",children:"Blog"}),(0,n.jsx)("a",{href:"/careers",children:"Careers"}),(0,n.jsx)("a",{href:"/contact",children:"Contact"})]}),(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Legal"}),(0,n.jsx)("a",{href:"/privacy",children:"Privacy"}),(0,n.jsx)("a",{href:"/terms",children:"Terms"}),(0,n.jsx)("a",{href:"/security",children:"Security"})]})]})]}),(0,n.jsxs)("div",{className:"footer-bottom",children:[(0,n.jsx)("p",{children:"\xa9 2025 Agent Relay. All rights reserved."}),(0,n.jsxs)("div",{className:"social-links",children:[(0,n.jsx)("a",{href:"https://github.com/agent-relay","aria-label":"GitHub",children:(0,n.jsx)(O,{})}),(0,n.jsx)("a",{href:"https://twitter.com/agentrelay","aria-label":"Twitter",children:(0,n.jsx)(z,{})}),(0,n.jsx)("a",{href:"https://discord.gg/agentrelay","aria-label":"Discord",children:(0,n.jsx)(E,{})})]})]})]})}function I(){return(0,n.jsxs)("div",{className:"grid-bg",children:[(0,n.jsx)("div",{className:"grid-lines"}),(0,n.jsx)("div",{className:"grid-glow"})]})}function B(){return(0,n.jsxs)("div",{className:"glow-orbs",children:[(0,n.jsx)("div",{className:"orb orb-1"}),(0,n.jsx)("div",{className:"orb orb-2"})]})}function O(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z"})})}function z(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"})})}function E(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M20.317 4.37a19.791 19.791 0 00-4.885-1.515.074.074 0 00-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 00-5.487 0 12.64 12.64 0 00-.617-1.25.077.077 0 00-.079-.037A19.736 19.736 0 003.677 4.37a.07.07 0 00-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 00.031.057 19.9 19.9 0 005.993 3.03.078.078 0 00.084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 00-.041-.106 13.107 13.107 0 01-1.872-.892.077.077 0 01-.008-.128 10.2 10.2 0 00.372-.292.074.074 0 01.077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 01.078.01c.12.098.246.198.373.292a.077.077 0 01-.006.127 12.299 12.299 0 01-1.873.892.077.077 0 00-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 00.084.028 19.839 19.839 0 006.002-3.03.077.077 0 00.032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 00-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z"})})}},3655:function(){}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[900],{9116:function(e,t,r){r.d(t,{hi:function(){return s}});let s={async sendMessage(e){try{let t=await fetch("".concat("","/api/send"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),r=await t.json();if(t.ok&&r.success)return{success:!0};return{success:!1,error:r.error||"Failed to send message"}}catch(e){return{success:!1,error:"Network error"}}},async uploadAttachment(e){try{let t,r,s;e instanceof File?(t=e.name,r=e.type,s=await new Promise((t,r)=>{let s=new FileReader;s.onload=()=>t(s.result),s.onerror=r,s.readAsDataURL(e)})):(t=e.filename,r=e.mimeType,s=e.data);let a=await fetch("".concat("","/api/upload"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({filename:t,mimeType:r,data:s})}),c=await a.json();if(a.ok&&c.success&&c.attachment)return{success:!0,data:{attachment:c.attachment}};return{success:!1,error:c.error||"Failed to upload attachment"}}catch(e){return{success:!1,error:"Network error"}}},async spawnAgent(e){try{let t=await fetch("".concat("","/api/spawn"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});return await t.json()}catch(t){return{success:!1,name:e.name,error:"Network error"}}},async getSpawnedAgents(){try{let e=await fetch("".concat("","/api/spawned")),t=await e.json();if(e.ok&&t.success)return{success:!0,data:{agents:t.agents||[]}};return{success:!1,error:t.error}}catch(e){return{success:!1,error:"Network error"}}},async releaseAgent(e){try{let t=await fetch("".concat("","/api/spawned/").concat(encodeURIComponent(e)),{method:"DELETE"}),r=await t.json();if(t.ok&&r.success)return{success:!0};return{success:!1,error:r.error}}catch(e){return{success:!1,error:"Network error"}}},async getData(){try{let e=await fetch("".concat("","/api/data")),t=await e.json();if(e.ok)return{success:!0,data:t};return{success:!1,error:"Failed to fetch data"}}catch(e){return{success:!1,error:"Network error"}}},async getBridgeData(){try{let e=await fetch("".concat("","/api/bridge")),t=await e.json();if(e.ok)return{success:!0,data:t};return{success:!1,error:"Failed to fetch bridge data"}}catch(e){return{success:!1,error:"Network error"}}},async getMetrics(){try{let e=await fetch("".concat("","/api/metrics")),t=await e.json();if(e.ok)return{success:!0,data:t};return{success:!1,error:"Failed to fetch metrics"}}catch(e){return{success:!1,error:"Network error"}}},async getHistorySessions(e){try{let t=new URLSearchParams;(null==e?void 0:e.agent)&&t.set("agent",e.agent),(null==e?void 0:e.since)&&t.set("since",String(e.since)),(null==e?void 0:e.limit)&&t.set("limit",String(e.limit));let r=await fetch("".concat("","/api/history/sessions?").concat(t)),s=await r.json();if(r.ok)return{success:!0,data:s};return{success:!1,error:"Failed to fetch sessions"}}catch(e){return{success:!1,error:"Network error"}}},async getHistoryMessages(e){try{let t=new URLSearchParams;(null==e?void 0:e.from)&&t.set("from",e.from),(null==e?void 0:e.to)&&t.set("to",e.to),(null==e?void 0:e.thread)&&t.set("thread",e.thread),(null==e?void 0:e.since)&&t.set("since",String(e.since)),(null==e?void 0:e.limit)&&t.set("limit",String(e.limit)),(null==e?void 0:e.order)&&t.set("order",e.order),(null==e?void 0:e.search)&&t.set("search",e.search);let r=await fetch("".concat("","/api/history/messages?").concat(t)),s=await r.json();if(r.ok)return{success:!0,data:s};return{success:!1,error:"Failed to fetch messages"}}catch(e){return{success:!1,error:"Network error"}}},async getHistoryConversations(){try{let e=await fetch("".concat("","/api/history/conversations")),t=await e.json();if(e.ok)return{success:!0,data:t};return{success:!1,error:"Failed to fetch conversations"}}catch(e){return{success:!1,error:"Network error"}}},async getHistoryMessage(e){try{let t=await fetch("".concat("","/api/history/message/").concat(encodeURIComponent(e))),r=await t.json();if(t.ok)return{success:!0,data:r};return{success:!1,error:r.error||"Failed to fetch message"}}catch(e){return{success:!1,error:"Network error"}}},async getHistoryStats(){try{let e=await fetch("".concat("","/api/history/stats")),t=await e.json();if(e.ok)return{success:!0,data:t};return{success:!1,error:"Failed to fetch stats"}}catch(e){return{success:!1,error:"Network error"}}},async searchFiles(e){try{let t=new URLSearchParams;(null==e?void 0:e.query)&&t.set("q",e.query),(null==e?void 0:e.limit)&&t.set("limit",String(e.limit));let r=await fetch("".concat("","/api/files?").concat(t)),s=await r.json();if(r.ok)return{success:!0,data:s};return{success:!1,error:"Failed to search files"}}catch(e){return{success:!1,error:"Network error"}}}}},637:function(e,t,r){r.d(t,{GW:function(){return o},hP:function(){return i},oU:function(){return f},yh:function(){return c}});let s={backend:{primary:"#1264a3",light:"#e8f4fd",dark:"#0d4f82",text:"#ffffff"},frontend:{primary:"#7c3aed",light:"#f3e8ff",dark:"#5b21b6",text:"#ffffff"},infra:{primary:"#ea580c",light:"#fff7ed",dark:"#c2410c",text:"#ffffff"},lead:{primary:"#2bac76",light:"#ecfdf5",dark:"#059669",text:"#ffffff"},test:{primary:"#0d9488",light:"#f0fdfa",dark:"#0f766e",text:"#ffffff"},data:{primary:"#dc2626",light:"#fef2f2",dark:"#b91c1c",text:"#ffffff"},api:{primary:"#2563eb",light:"#eff6ff",dark:"#1d4ed8",text:"#ffffff"},worker:{primary:"#9333ea",light:"#faf5ff",dark:"#7e22ce",text:"#ffffff"},monitor:{primary:"#0891b2",light:"#ecfeff",dark:"#0e7490",text:"#ffffff"},security:{primary:"#be123c",light:"#fff1f2",dark:"#9f1239",text:"#ffffff"}},a=[{primary:"#6366f1",light:"#eef2ff",dark:"#4f46e5",text:"#ffffff"},{primary:"#ec4899",light:"#fdf2f8",dark:"#db2777",text:"#ffffff"},{primary:"#14b8a6",light:"#f0fdfa",dark:"#0d9488",text:"#ffffff"},{primary:"#f59e0b",light:"#fffbeb",dark:"#d97706",text:"#000000"},{primary:"#8b5cf6",light:"#f5f3ff",dark:"#7c3aed",text:"#ffffff"},{primary:"#06b6d4",light:"#ecfeff",dark:"#0891b2",text:"#ffffff"},{primary:"#f43f5e",light:"#fff1f2",dark:"#e11d48",text:"#ffffff"},{primary:"#84cc16",light:"#f7fee7",dark:"#65a30d",text:"#000000"}],c={online:"#22c55e",offline:"#6b7280",busy:"#eab308",processing:"#6366f1",error:"#ef4444",attention:"#ef4444"};function n(e){return e.toLowerCase().split("-").filter(Boolean)}function f(e){return n(e)[0]||e.toLowerCase()}function o(e){let t=f(e);return t in s?s[t]:a[function(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t&=t;return Math.abs(t)}(t)%a.length]}function i(e){let t=n(e);return 0===t.length?e.substring(0,2).toUpperCase():t.length>=2?(t[0][0]+t[1][0]).toUpperCase():t[0].substring(0,2).toUpperCase()}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[191],{3561:function(n,u,e){Promise.resolve().then(e.bind(e,7047))},7047:function(n,u,e){"use strict";e.r(u),e.d(u,{default:function(){return c}});var t=e(7437),r=e(693);function c(){return(0,t.jsx)(r.g,{})}}},function(n){n.O(0,[713,900,693,971,117,744],function(){return n(n.s=3561)}),_N_E=n.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[860],{3047:function(e,t,s){Promise.resolve().then(s.bind(s,5804))},5804:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return o}});var n=s(7437),r=s(2265),a=s(7648);let l=["#4a9eff","#b388ff","#ff9e40","#00e676","#ff5c5c","#00ffc8"];function c(e){return e<60?"".concat(e,"s"):e<3600?"".concat(Math.floor(e/60),"m"):e<86400?"".concat(Math.floor(e/3600),"h ").concat(Math.floor(e%3600/60),"m"):"".concat(Math.floor(e/86400),"d ").concat(Math.floor(e%86400/3600),"h")}function i(e){return new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})}function o(){var e,t,s,l;let[o,f]=(0,r.useState)(null),[j,v]=(0,r.useState)(null),[N,y]=(0,r.useState)(!0);if((0,r.useEffect)(()=>{let e=async()=>{try{let e=await fetch("/api/metrics");if(!e.ok)throw Error("Failed to fetch metrics");let t=await e.json();f(t),v(null)}catch(e){v(e instanceof Error?e.message:"Failed to load metrics")}finally{y(!1)}};e();let t=setInterval(e,5e3);return()=>clearInterval(t)},[]),N)return(0,n.jsx)("div",{className:"min-h-screen bg-bg-primary text-text-primary font-sans",children:(0,n.jsxs)("div",{className:"flex flex-col items-center justify-center h-screen gap-4",children:[(0,n.jsx)("div",{className:"w-8 h-8 border-2 border-border border-t-accent rounded-full animate-spin"}),(0,n.jsx)("p",{className:"text-text-muted text-sm",children:"Loading metrics..."})]})});if(j||!o)return(0,n.jsx)("div",{className:"min-h-screen bg-bg-primary text-text-primary font-sans",children:(0,n.jsxs)("div",{className:"flex flex-col items-center justify-center h-screen gap-4",children:[(0,n.jsx)("div",{className:"w-12 h-12 rounded-full bg-error/10 flex items-center justify-center",children:(0,n.jsx)("svg",{className:"w-6 h-6 text-error",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})})}),(0,n.jsx)("p",{className:"text-text-secondary",children:j||"No metrics available"}),(0,n.jsx)("button",{onClick:()=>window.location.reload(),className:"px-5 py-2.5 bg-accent text-white rounded-lg text-sm font-medium transition-colors hover:bg-accent-hover",children:"Retry"})]})});let w=(null!==(s=null===(e=o.sessions)||void 0===e?void 0:e.errorRate)&&void 0!==s?s:0)<=1?"healthy":(null!==(l=null===(t=o.sessions)||void 0===t?void 0:t.errorRate)&&void 0!==l?l:0)<=5?"warning":"critical";return(0,n.jsxs)("div",{className:"min-h-screen bg-bg-primary text-text-primary font-sans",children:[(0,n.jsx)("header",{className:"sticky top-0 z-50 bg-sidebar-bg border-b border-sidebar-border px-4 md:px-8 py-4",children:(0,n.jsxs)("div",{className:"max-w-[1400px] mx-auto flex items-center justify-between",children:[(0,n.jsxs)("div",{className:"flex items-center gap-4",children:[(0,n.jsxs)(a.default,{href:"/",className:"flex items-center gap-2 text-text-muted text-sm font-medium px-3 py-2 rounded-md transition-all hover:text-accent hover:bg-accent/10",children:[(0,n.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:(0,n.jsx)("path",{d:"M19 12H5M12 19l-7-7 7-7"})}),(0,n.jsx)("span",{className:"hidden sm:inline",children:"Dashboard"})]}),(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[(0,n.jsx)("div",{className:"w-8 h-8 bg-gradient-to-br from-accent/80 to-accent rounded-lg flex items-center justify-center border border-accent/30",children:(0,n.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:"2",children:[(0,n.jsx)("path",{d:"M3 3v18h18"}),(0,n.jsx)("path",{d:"M18 17V9"}),(0,n.jsx)("path",{d:"M13 17V5"}),(0,n.jsx)("path",{d:"M8 17v-3"})]})}),(0,n.jsxs)("div",{className:"text-lg font-semibold tracking-tight",children:["Agent ",(0,n.jsx)("span",{className:"text-accent",children:"Metrics"})]})]})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 bg-success/10 border border-success/30 rounded-full",children:[(0,n.jsx)("span",{className:"w-2 h-2 bg-success rounded-full animate-pulse shadow-[0_0_8px_rgba(43,172,118,0.5)]"}),(0,n.jsx)("span",{className:"text-success text-xs font-semibold font-mono tracking-wide",children:"LIVE"})]})]})}),(0,n.jsxs)("main",{className:"max-w-[1400px] mx-auto px-4 md:px-8 py-6",children:[(0,n.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mb-6",children:[(0,n.jsx)(d,{label:"Total Agents",value:o.totalAgents,subtext:"".concat(o.onlineAgents," online / ").concat(o.offlineAgents," offline"),accent:"cyan"}),(0,n.jsx)(d,{label:"Online Now",value:o.onlineAgents,subtext:"".concat(o.totalAgents>0?Math.round(o.onlineAgents/o.totalAgents*100):0,"% availability"),accent:"green"}),(0,n.jsx)(d,{label:"Total Messages",value:o.totalMessages.toLocaleString(),subtext:"all time",accent:"purple"}),(0,n.jsx)(d,{label:"Avg. Throughput",value:o.throughput.avgMessagesPerMinute,subtext:"messages / minute",accent:"orange"})]}),(0,n.jsxs)("section",{className:"mb-6",children:[(0,n.jsx)(x,{title:"Message Throughput"}),(0,n.jsx)("div",{className:"bg-bg-secondary border border-border rounded-lg p-6",children:(0,n.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6",children:[(0,n.jsx)(m,{value:o.throughput.messagesLastMinute,label:"Last Minute",max:10}),(0,n.jsx)(m,{value:o.throughput.messagesLastHour,label:"Last Hour",max:100}),(0,n.jsx)(m,{value:o.throughput.messagesLast24Hours,label:"Last 24 Hours",max:1e3}),(0,n.jsx)(m,{value:o.throughput.avgMessagesPerMinute,label:"Avg / Min",max:5})]})})]}),o.sessions&&(0,n.jsxs)("section",{className:"mb-6",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,n.jsx)(x,{title:"Session Lifecycle"}),(0,n.jsx)(h,{rate:o.sessions.errorRate||0,status:w})]}),(0,n.jsxs)("div",{className:"bg-bg-secondary border border-border rounded-lg p-6",children:[(0,n.jsxs)("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-5 gap-5 mb-6",children:[(0,n.jsx)(u,{value:o.sessions.totalSessions,label:"Total Sessions",accent:"purple"}),(0,n.jsx)(u,{value:o.sessions.activeSessions,label:"Active",accent:"blue"}),(0,n.jsx)(u,{value:o.sessions.closedByAgent,label:"Clean Close",accent:"green"}),(0,n.jsx)(u,{value:o.sessions.closedByDisconnect,label:"Disconnect",accent:"orange"}),(0,n.jsx)(u,{value:o.sessions.closedByError,label:"Error",accent:"red"})]}),o.sessions.recentSessions&&o.sessions.recentSessions.length>0&&(0,n.jsx)("div",{className:"overflow-x-auto -mx-6 px-6",children:(0,n.jsxs)("table",{className:"w-full min-w-[500px]",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{className:"border-b border-border",children:[(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Agent"}),(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Status"}),(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Messages"}),(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Started"}),(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Duration"})]})}),(0,n.jsx)("tbody",{children:o.sessions.recentSessions.slice(0,5).map((e,t)=>{let s=new Date(e.startedAt),r=Math.floor(((e.endedAt?new Date(e.endedAt):new Date).getTime()-s.getTime())/1e3);return(0,n.jsxs)("tr",{className:"border-b border-border/50 last:border-0",children:[(0,n.jsx)("td",{className:"py-3 px-4",children:(0,n.jsx)(g,{name:e.agentName})}),(0,n.jsx)("td",{className:"py-3 px-4",children:(0,n.jsx)(b,{closedBy:e.closedBy})}),(0,n.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-accent",children:e.messageCount}),(0,n.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-text-muted",children:i(e.startedAt)}),(0,n.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-text-muted",children:c(r)})]},t)})})]})})]})]}),(0,n.jsxs)("section",{className:"mb-6",children:[(0,n.jsx)(x,{title:"Agent Health"}),(0,n.jsx)("div",{className:"bg-bg-secondary border border-border rounded-lg overflow-hidden",children:0===o.agents.length?(0,n.jsxs)("div",{className:"py-12 text-center",children:[(0,n.jsxs)("svg",{className:"w-12 h-12 mx-auto mb-4 text-text-muted opacity-50",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:[(0,n.jsx)("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),(0,n.jsx)("circle",{cx:"12",cy:"7",r:"4"})]}),(0,n.jsx)("p",{className:"text-text-muted text-sm",children:"No agents registered yet"})]}):(0,n.jsx)("div",{className:"overflow-x-auto",children:(0,n.jsxs)("table",{className:"w-full min-w-[700px]",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{className:"bg-bg-tertiary border-b border-border",children:[(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Agent"}),(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Status"}),(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Sent"}),(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Received"}),(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Uptime"}),(0,n.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Last Seen"})]})}),(0,n.jsx)("tbody",{children:o.agents.map(e=>(0,n.jsxs)("tr",{className:"border-b border-border/50 last:border-0 transition-colors hover:bg-bg-hover",children:[(0,n.jsx)("td",{className:"py-3 px-4",children:(0,n.jsx)(g,{name:e.name})}),(0,n.jsx)("td",{className:"py-3 px-4",children:(0,n.jsx)(p,{isOnline:e.isOnline})}),(0,n.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-accent",children:e.messagesSent.toLocaleString()}),(0,n.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-[#a78bfa]",children:e.messagesReceived.toLocaleString()}),(0,n.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-text-muted",children:c(e.uptimeSeconds)}),(0,n.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-text-muted",children:i(e.lastSeen)})]},e.name))})]})})})]}),(0,n.jsxs)("div",{className:"text-center py-4 text-text-muted text-xs font-mono",children:["Last updated: ",i(o.timestamp)]})]})]})}function d(e){let{label:t,value:s,subtext:r,accent:a}=e;return(0,n.jsxs)("div",{className:"bg-bg-secondary border border-border rounded-lg p-5 transition-all hover:border-border-dark hover:bg-bg-tertiary group",children:[(0,n.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-wide text-text-muted mb-2",children:t}),(0,n.jsx)("div",{className:"font-mono text-3xl font-bold ".concat({cyan:"text-accent",green:"text-success",purple:"text-[#a78bfa]",orange:"text-warning"}[a]," transition-transform group-hover:scale-105 origin-left"),children:s}),(0,n.jsx)("div",{className:"text-xs text-text-muted font-mono mt-2",children:r})]})}function x(e){let{title:t}=e;return(0,n.jsxs)("h2",{className:"flex items-center gap-2.5 text-xs font-semibold uppercase tracking-wider text-text-muted mb-3",children:[(0,n.jsx)("span",{className:"w-[3px] h-3.5 bg-accent rounded-sm"}),t]})}function m(e){let{value:t,label:s,max:r}=e,a=Math.min(t/r*100,100);return(0,n.jsxs)("div",{className:"text-center",children:[(0,n.jsx)("div",{className:"font-mono text-4xl font-bold text-accent leading-none",children:t}),(0,n.jsx)("div",{className:"text-xs text-text-muted uppercase tracking-wide mt-2",children:s}),(0,n.jsx)("div",{className:"h-1 bg-border rounded-full mt-3 overflow-hidden",children:(0,n.jsx)("div",{className:"h-full bg-gradient-to-r from-accent to-[#6366f1] rounded-full transition-all duration-500",style:{width:"".concat(a,"%")}})})]})}function u(e){let{value:t,label:s,accent:r}=e;return(0,n.jsxs)("div",{className:"text-center",children:[(0,n.jsx)("div",{className:"font-mono text-3xl font-bold ".concat({purple:"text-[#a78bfa]",blue:"text-accent",green:"text-success",orange:"text-warning",red:"text-error"}[r]," leading-none"),children:t}),(0,n.jsx)("div",{className:"text-[11px] text-text-muted uppercase tracking-wide mt-2",children:s})]})}function h(e){let{rate:t,status:s}=e;return(0,n.jsxs)("span",{className:"inline-flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-semibold font-mono border ".concat({healthy:"bg-success/15 text-success border-success/30",warning:"bg-warning/15 text-warning border-warning/30",critical:"bg-error/15 text-error border-error/30"}[s]),children:[t.toFixed(1),"% error rate"]})}function g(e){let{name:t}=e;return(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[(0,n.jsx)("div",{className:"w-8 h-8 rounded-md flex items-center justify-center text-white text-xs font-semibold",style:{backgroundColor:function(e){let t=0;for(let s=0;s<e.length;s++)t=e.charCodeAt(s)+((t<<5)-t);return l[Math.abs(t)%l.length]}(t)},children:t.slice(0,2).toUpperCase()}),(0,n.jsx)("span",{className:"font-semibold font-mono text-sm",children:t})]})}function p(e){let{isOnline:t}=e;return(0,n.jsxs)("span",{className:"inline-flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-medium ".concat(t?"bg-success/15 text-success":"bg-bg-hover text-text-muted"),children:[(0,n.jsx)("span",{className:"w-1.5 h-1.5 rounded-full ".concat(t?"bg-success":"bg-text-muted")}),t?"Online":"Offline"]})}function b(e){let{closedBy:t}=e,s={agent:{label:"Clean",className:"bg-success/15 text-success"},disconnect:{label:"Disconnect",className:"bg-warning/15 text-warning"},error:{label:"Error",className:"bg-error/15 text-error"},active:{label:"Active",className:"bg-accent/15 text-accent"}}[t||"active"];return(0,n.jsx)("span",{className:"inline-flex items-center px-2 py-0.5 rounded-lg text-[11px] font-medium ".concat(s.className),children:s.label})}}},function(e){e.O(0,[648,971,117,744],function(){return e(e.s=3047)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[931],{3713:function(e,t,n){Promise.resolve().then(n.bind(n,7340))},7340:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return l}});var r=n(7437),u=n(2265),a=n(8766),c=n(693);function l(){let[e,t]=(0,u.useState)(!1),[n,l]=(0,u.useState)(!1);return((0,u.useEffect)(()=>{t(function(){let e=window.location.hostname,t=new URLSearchParams(window.location.search);if("true"===t.get("landing")||"true"===t.get("cloud")||e.includes("agent-relay.com")||e.includes("agentrelay.dev")||e.includes(".fly.dev"))return!0;let n=document.querySelector('meta[name="agent-relay-cloud"]');return(null==n?void 0:n.getAttribute("content"))==="true"||"true"===localStorage.getItem("agent-relay-cloud-mode")}()),l(!0)},[]),n)?e?(0,r.jsx)(a.fy,{}):(0,r.jsx)(c.g,{}):(0,r.jsx)("div",{className:"flex h-screen bg-bg-deep font-sans text-text-primary items-center justify-center",children:(0,r.jsx)("div",{className:"text-text-muted",children:"Loading..."})})}}},function(e){e.O(0,[732,713,900,693,766,971,117,744],function(){return e(e.s=3713)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
!function(){"use strict";var e,t,n,r,o,u,i,c,f,a={},l={};function d(e){var t=l[e];if(void 0!==t)return t.exports;var n=l[e]={exports:{}},r=!0;try{a[e](n,n.exports,d),r=!1}finally{r&&delete l[e]}return n.exports}d.m=a,e=[],d.O=function(t,n,r,o){if(n){o=o||0;for(var u=e.length;u>0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[n,r,o];return}for(var i=1/0,u=0;u<e.length;u++){for(var n=e[u][0],r=e[u][1],o=e[u][2],c=!0,f=0;f<n.length;f++)i>=o&&Object.keys(d.O).every(function(e){return d.O[e](n[f])})?n.splice(f--,1):(c=!1,o<i&&(i=o));if(c){e.splice(u--,1);var a=r();void 0!==a&&(t=a)}}return t},d.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return d.d(t,{a:t}),t},n=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},d.t=function(e,r){if(1&r&&(e=this(e)),8&r||"object"==typeof e&&e&&(4&r&&e.__esModule||16&r&&"function"==typeof e.then))return e;var o=Object.create(null);d.r(o);var u={};t=t||[null,n({}),n([]),n(n)];for(var i=2&r&&e;"object"==typeof i&&!~t.indexOf(i);i=n(i))Object.getOwnPropertyNames(i).forEach(function(t){u[t]=function(){return e[t]}});return u.default=function(){return e},d.d(o,u),o},d.d=function(e,t){for(var n in t)d.o(t,n)&&!d.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},d.f={},d.e=function(e){return Promise.all(Object.keys(d.f).reduce(function(t,n){return d.f[n](e,t),t},[]))},d.u=function(e){},d.miniCssF=function(e){},d.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r={},o="_N_E:",d.l=function(e,t,n,u){if(r[e]){r[e].push(t);return}if(void 0!==n)for(var i,c,f=document.getElementsByTagName("script"),a=0;a<f.length;a++){var l=f[a];if(l.getAttribute("src")==e||l.getAttribute("data-webpack")==o+n){i=l;break}}i||(c=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,d.nc&&i.setAttribute("nonce",d.nc),i.setAttribute("data-webpack",o+n),i.src=d.tu(e)),r[e]=[t];var s=function(t,n){i.onerror=i.onload=null,clearTimeout(p);var o=r[e];if(delete r[e],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach(function(e){return e(n)}),t)return t(n)},p=setTimeout(s.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=s.bind(null,i.onerror),i.onload=s.bind(null,i.onload),c&&document.head.appendChild(i)},d.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},d.tt=function(){return void 0===u&&(u={createScriptURL:function(e){return e}},"undefined"!=typeof trustedTypes&&trustedTypes.createPolicy&&(u=trustedTypes.createPolicy("nextjs#bundler",u))),u},d.tu=function(e){return d.tt().createScriptURL(e)},d.p="/_next/",i={272:0,587:0,732:0},d.f.j=function(e,t){var n=d.o(i,e)?i[e]:void 0;if(0!==n){if(n)t.push(n[2]);else if(/^(272|587|732)$/.test(e))i[e]=0;else{var r=new Promise(function(t,r){n=i[e]=[t,r]});t.push(n[2]=r);var o=d.p+d.u(e),u=Error();d.l(o,function(t){if(d.o(i,e)&&(0!==(n=i[e])&&(i[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;u.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",u.name="ChunkLoadError",u.type=r,u.request=o,n[1](u)}},"chunk-"+e,e)}}},d.O.j=function(e){return 0===i[e]},c=function(e,t){var n,r,o=t[0],u=t[1],c=t[2],f=0;if(o.some(function(e){return 0!==i[e]})){for(n in u)d.o(u,n)&&(d.m[n]=u[n]);if(c)var a=c(d)}for(e&&e(t);f<o.length;f++)r=o[f],d.o(i,r)&&i[r]&&i[r][0](),i[r]=0;return d.O(a)},(f=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(c.bind(null,0)),f.push=c.bind(null,f.push.bind(f))}();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:host,:root{--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-indigo-50:oklch(96.2% .018 272.314);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-500:oklch(58.5% .233 277.117);--color-gray-500:oklch(55.1% .027 264.364);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-4xl:56rem;--text-xs--line-height:calc(1/.75);--text-sm--line-height:calc(1.25/.875);--text-base--line-height:calc(1.5/1);--text-lg--line-height:calc(1.75/1.125);--text-xl--line-height:calc(1.75/1.25);--text-2xl--line-height:calc(2/1.5);--text-3xl--line-height:calc(2.25/1.875);--text-4xl--line-height:calc(2.5/2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--drop-shadow-lg:0 4px 4px #00000026;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-bounce:bounce 1s infinite;--blur-sm:8px;--blur-2xl:40px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-variation-settings:normal;font-family:IBM Plex Mono,SF Mono,Consolas,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-\[-20\%\]{inset:-20%}.-top-1\.5{top:calc(var(--spacing)*-1.5)}.-top-3{top:calc(var(--spacing)*-3)}.top-0{top:calc(var(--spacing)*0)}.top-0\.5{top:calc(var(--spacing)*.5)}.top-1{top:calc(var(--spacing)*1)}.top-1\.5{top:calc(var(--spacing)*1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.top-\[calc\(100\%\+4px\)\]{top:calc(100% + 4px)}.top-full{top:100%}.-right-0\.5{right:calc(var(--spacing)*-.5)}.-right-1\.5{right:calc(var(--spacing)*-1.5)}.-right-3{right:calc(var(--spacing)*-3)}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.right-1\.5{right:calc(var(--spacing)*1.5)}.right-2{right:calc(var(--spacing)*2)}.-bottom-0\.5{bottom:calc(var(--spacing)*-.5)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-1{bottom:calc(var(--spacing)*1)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing)*0)}.left-0\.5{left:calc(var(--spacing)*.5)}.left-3{left:calc(var(--spacing)*3)}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[999\]{z-index:999}.z-\[1000\]{z-index:1000}.z-\[1099\]{z-index:1099}.z-\[9998\]{z-index:9998}.z-\[9999\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.m-3{margin:calc(var(--spacing)*3)}.-mx-2{margin-inline:calc(var(--spacing)*-2)}.-mx-6{margin-inline:calc(var(--spacing)*-6)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-5{margin-inline:calc(var(--spacing)*5)}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing)*2)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.-mr-2{margin-right:calc(var(--spacing)*-2)}.mr-1{margin-right:calc(var(--spacing)*1)}.mb-0\.5{margin-bottom:calc(var(--spacing)*.5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-11{height:calc(var(--spacing)*11)}.h-12{height:calc(var(--spacing)*12)}.h-16{height:calc(var(--spacing)*16)}.h-24{height:calc(var(--spacing)*24)}.h-\[16px\]{height:16px}.h-\[18px\]{height:18px}.h-\[52px\]{height:52px}.h-\[60vh\]{height:60vh}.h-\[80vh\]{height:80vh}.h-full{height:100%}.h-screen{height:100vh}.max-h-32{max-height:calc(var(--spacing)*32)}.max-h-48{max-height:calc(var(--spacing)*48)}.max-h-64{max-height:calc(var(--spacing)*64)}.max-h-\[60vh\]{max-height:60vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[100px\]{max-height:100px}.max-h-\[120px\]{max-height:120px}.max-h-\[200px\]{max-height:200px}.max-h-\[240px\]{max-height:240px}.max-h-\[300px\]{max-height:300px}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\[40px\]{min-height:40px}.min-h-\[44px\]{min-height:44px}.min-h-\[120px\]{min-height:120px}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing)*1)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-11{width:calc(var(--spacing)*11)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-24{width:calc(var(--spacing)*24)}.w-64{width:calc(var(--spacing)*64)}.w-80{width:calc(var(--spacing)*80)}.w-\[3px\]{width:3px}.w-\[90vw\]{width:90vw}.w-\[280px\]{width:280px}.w-\[480px\]{width:480px}.w-\[500px\]{width:500px}.w-\[520px\]{width:520px}.w-\[560px\]{width:560px}.w-\[600px\]{width:600px}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\[90vw\]{max-width:90vw}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[200px\]{max-width:200px}.max-w-\[300px\]{max-width:300px}.max-w-\[1400px\]{max-width:1400px}.max-w-full{max-width:100%}.max-w-md{max-width:var(--container-md)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\[16px\]{min-width:16px}.min-w-\[18px\]{min-width:18px}.min-w-\[450px\]{min-width:450px}.min-w-\[500px\]{min-width:500px}.min-w-\[700px\]{min-width:700px}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.origin-left{transform-origin:0}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.translate-x-0{translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0)}.translate-x-5{--tw-translate-x:calc(var(--spacing)*5)}.-translate-y-1\/2,.translate-x-5{translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1)}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-\[float_6s_ease-in-out_infinite\]{animation:float 6s ease-in-out infinite}.animate-bounce{animation:var(--animate-bounce)}.animate-fade-in{animation:fadeIn .15s}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-pulse-glow{animation:pulseGlow 2s ease-in-out infinite}.animate-slide-down{animation:slideDown .2s}.animate-slide-up{animation:slideUp .2s}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-px>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(1px*var(--tw-space-y-reverse));margin-block-end:calc(1px*calc(1 - var(--tw-space-y-reverse)))}:where(.-space-x-1\.5>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*-1.5)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*-1.5)*calc(1 - var(--tw-space-x-reverse)))}:where(.-space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*-2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*-2)*calc(1 - var(--tw-space-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:#ffffff1a}.truncate{text-overflow:ellipsis;white-space:nowrap}.overflow-hidden,.truncate{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:8px}.rounded-md{border-radius:6px}.rounded-none{border-radius:0}.rounded-sm{border-radius:4px}.rounded-xl{border-radius:12px}.rounded-b-lg{border-bottom-right-radius:8px;border-bottom-left-radius:8px}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-\[\#1a1d21\]{border-color:#1a1d21}.border-\[\#1aab29\]{border-color:#1aab29}.border-\[\#2a2d35\]{border-color:#2a2d35}.border-\[\#3a3a4e\]{border-color:#3a3a4e}.border-\[\#4a2020\]{border-color:#4a2020}.border-\[\#21262d\]{border-color:#21262d}.border-\[\#21262d\]\/50{border-color:oklab(26.6643% -.00341691 -.0145655/.5)}.border-\[\#30363d\]{border-color:#30363d}.border-\[\#30363d\]\/50{border-color:oklab(32.9984% -.00452305 -.0141812/.5)}.border-\[\#204060\]{border-color:#204060}.border-\[\#a855f7\]\/30{border-color:oklab(62.6846% .129701 -.193012/.3)}.border-\[\#dea123\]{border-color:#dea123}.border-\[\#e0443e\]{border-color:#e0443e}.border-\[\#f85149\]\/30{border-color:oklab(66.5118% .18236 .0927555/.3)}.border-\[\#ffdf5d\]{border-color:#ffdf5d}.border-accent{border-color:#00d9ff}.border-accent-cyan\/30{border-color:oklab(81.5968% -.116812 -.0864434/.3)}.border-accent-purple\/30{border-color:oklab(62.6846% .129701 -.193012/.3)}.border-accent\/30{border-color:oklab(81.5968% -.116812 -.0864434/.3)}.border-bg-primary{border-color:#0d0d14}.border-bg-secondary{border-color:#12121c}.border-border{border-color:#ffffff1a}.border-border-subtle{border-color:#ffffff0f}.border-border\/50{border-color:oklab(100% 0 5.96046e-8/.0509804)}.border-error{border-color:#ff4757}.border-error\/30{border-color:oklab(66.8917% .204495 .0781476/.3)}.border-indigo-200{border-color:var(--color-indigo-200)}.border-red-500\/30{border-color:#fb2c364d}@supports (color:color-mix(in lab,red,red)){.border-red-500\/30{border-color:color-mix(in oklab,var(--color-red-500)30%,transparent)}}.border-sidebar-border{border-color:#ffffff14}.border-sidebar-hover{border-color:#ffffff0f}.border-success\/30{border-color:oklab(88.9283% -.173708 .0314021/.3)}.border-transparent{border-color:#0000}.border-warning\/30{border-color:oklab(70.4517% .149185 .121806/.3)}.border-white{border-color:var(--color-white)}.border-white\/5{border-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.border-white\/5{border-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.border-t-accent{border-top-color:#00d9ff}.border-l-warning{border-left-color:#ff6b35}.bg-\[\#00c896\]{background-color:#00c896}.bg-\[\#1a1a2e\]{background-color:#1a1a2e}.bg-\[\#1a1d21\]{background-color:#1a1d21}.bg-\[\#2a2a3e\]{background-color:#2a2a3e}.bg-\[\#3d1d20\]{background-color:#3d1d20}.bg-\[\#3d4043\]{background-color:#3d4043}.bg-\[\#3fb950\]{background-color:#3fb950}.bg-\[\#3fb950\]\/15{background-color:oklab(69.5081% -.149324 .102163/.15)}.bg-\[\#3fb950\]\/20{background-color:oklab(69.5081% -.149324 .102163/.2)}.bg-\[\#8d8d8e\]{background-color:#8d8d8e}.bg-\[\#27c93f\]{background-color:#27c93f}.bg-\[\#161b22\]{background-color:#161b22}.bg-\[\#484f58\]{background-color:#484f58}.bg-\[\#484f58\]\/15{background-color:oklab(42.4669% -.00460503 -.016859/.15)}.bg-\[\#484f58\]\/20{background-color:oklab(42.4669% -.00460503 -.016859/.2)}.bg-\[\#634d00\]{background-color:#634d00}.bg-\[\#634d00\]\/30{background-color:oklab(43.1019% .000398383 .0880775/.3)}.bg-\[\#21262d\]{background-color:#21262d}.bg-\[\#21262d\]\/80{background-color:oklab(26.6643% -.00341691 -.0145655/.8)}.bg-\[\#21262d\]\/90{background-color:oklab(26.6643% -.00341691 -.0145655/.9)}.bg-\[\#30363d\]{background-color:#30363d}.bg-\[\#238636\]{background-color:#238636}.bg-\[\#238636\]\/20{background-color:oklab(54.6037% -.122595 .0818901/.2)}.bg-\[\#a855f7\]{background-color:#a855f7}.bg-\[\#d29922\]{background-color:#d29922}.bg-\[\#d29922\]\/15{background-color:oklab(71.9551% .0245407 .13798/.15)}.bg-\[\#d29922\]\/20{background-color:oklab(71.9551% .0245407 .13798/.2)}.bg-\[\#f85149\]\/20{background-color:oklab(66.5118% .18236 .0927555/.2)}.bg-\[\#ff5f56\]{background-color:#ff5f56}.bg-\[\#ffbd2e\]{background-color:#ffbd2e}.bg-\[rgba\(0\,200\,150\,0\.1\)\]{background-color:#00c8961a}.bg-\[rgba\(0\,255\,200\,0\.08\)\]{background-color:#00ffc814}.bg-accent,.bg-accent-cyan{background-color:#00d9ff}.bg-accent-cyan\/10{background-color:oklab(81.5968% -.116812 -.0864434/.1)}.bg-accent-cyan\/15{background-color:oklab(81.5968% -.116812 -.0864434/.15)}.bg-accent-cyan\/20{background-color:oklab(81.5968% -.116812 -.0864434/.2)}.bg-accent-light{background-color:#00d9ff26}.bg-accent-orange\/20{background-color:oklab(70.4517% .149185 .121806/.2)}.bg-accent-purple{background-color:#a855f7}.bg-accent-purple\/20{background-color:oklab(62.6846% .129701 -.193012/.2)}.bg-accent\/10{background-color:oklab(81.5968% -.116812 -.0864434/.1)}.bg-accent\/15{background-color:oklab(81.5968% -.116812 -.0864434/.15)}.bg-accent\/20{background-color:oklab(81.5968% -.116812 -.0864434/.2)}.bg-bg-active{background-color:#ffffff14}.bg-bg-card{background-color:#1a1a28}.bg-bg-deep{background-color:#0a0a0f}.bg-bg-elevated{background-color:#202030}.bg-bg-hover{background-color:#ffffff0a}.bg-bg-hover\/50{background-color:oklab(100% 0 5.96046e-8/.0196078)}.bg-bg-primary{background-color:#0d0d14}.bg-bg-secondary{background-color:#12121c}.bg-bg-secondary\/50{background-color:oklab(18.729% .00499356 -.0196259/.5)}.bg-bg-tertiary{background-color:#181824}.bg-bg-tertiary\/50{background-color:oklab(21.4943% .00578009 -.0227564/.5)}.bg-bg-tertiary\/80{background-color:oklab(21.4943% .00578009 -.0227564/.8)}.bg-black\/0{background-color:#0000}@supports (color:color-mix(in lab,red,red)){.bg-black\/0{background-color:color-mix(in oklab,var(--color-black)0,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black)60%,transparent)}}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black)70%,transparent)}}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab,red,red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black)80%,transparent)}}.bg-border{background-color:#ffffff1a}.bg-border-medium{background-color:#ffffff26}.bg-error{background-color:#ff4757}.bg-error\/10{background-color:oklab(66.8917% .204495 .0781476/.1)}.bg-error\/15{background-color:oklab(66.8917% .204495 .0781476/.15)}.bg-error\/20{background-color:oklab(66.8917% .204495 .0781476/.2)}.bg-error\/90{background-color:oklab(66.8917% .204495 .0781476/.9)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-green-500{background-color:var(--color-green-500)}.bg-indigo-50{background-color:var(--color-indigo-50)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500)10%,transparent)}}.bg-sidebar-bg{background-color:#0d0d14}.bg-sidebar-border{background-color:#ffffff14}.bg-success{background-color:#00ffc8}.bg-success\/10{background-color:oklab(88.9283% -.173708 .0314021/.1)}.bg-success\/15{background-color:oklab(88.9283% -.173708 .0314021/.15)}.bg-success\/20{background-color:oklab(88.9283% -.173708 .0314021/.2)}.bg-text-dim{background-color:#404050}.bg-text-muted{background-color:#606070}.bg-text-muted\/10{background-color:oklab(49.4863% .0067419 -.0244138/.1)}.bg-text-muted\/20{background-color:oklab(49.4863% .0067419 -.0244138/.2)}.bg-transparent{background-color:#0000}.bg-warning{background-color:#ff6b35}.bg-warning-light\/20{background-color:oklab(70.4517% .149185 .121806/.0298039)}.bg-warning\/10{background-color:oklab(70.4517% .149185 .121806/.1)}.bg-warning\/15{background-color:oklab(70.4517% .149185 .121806/.15)}.bg-warning\/20{background-color:oklab(70.4517% .149185 .121806/.2)}.bg-white{background-color:var(--color-white)}.bg-white\/5{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.bg-white\/5{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.bg-white\/\[0\.08\]{background-color:#ffffff14}@supports (color:color-mix(in lab,red,red)){.bg-white\/\[0\.08\]{background-color:color-mix(in oklab,var(--color-white)8%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab}.bg-gradient-to-b,.bg-gradient-to-br{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab}.bg-gradient-to-r{--tw-gradient-position:to right in oklab}.bg-gradient-to-r,.bg-gradient-to-t{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab}.bg-none{background-image:none}.from-\[\#1a2a3a\]{--tw-gradient-from:#1a2a3a;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-\[\#3a1a1a\]{--tw-gradient-from:#3a1a1a;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-\[rgba\(255\,255\,255\,0\.06\)\]{--tw-gradient-from:#ffffff0f;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent,.from-accent-cyan{--tw-gradient-from:#00d9ff;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent-purple{--tw-gradient-from:#a855f7;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent-purple\/10{--tw-gradient-from:oklab(62.6846% .129701 -.193012/.1);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent\/80{--tw-gradient-from:oklab(81.5968% -.116812 -.0864434/.8);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-black\/60{--tw-gradient-from:#0009}@supports (color:color-mix(in lab,red,red)){.from-black\/60{--tw-gradient-from:color-mix(in oklab,var(--color-black)60%,transparent)}}.from-black\/60{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#0f1a2a\]{--tw-gradient-to:#0f1a2a;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#00b8d9\]{--tw-gradient-to:#00b8d9;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#2a0f0f\]{--tw-gradient-to:#2a0f0f;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#6366f1\]{--tw-gradient-to:#6366f1;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-accent,.to-accent-cyan{--tw-gradient-to:#00d9ff;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-accent-cyan\/10{--tw-gradient-to:oklab(81.5968% -.116812 -.0864434/.1);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-2\.5{padding:calc(var(--spacing)*2.5)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.px-0\.5{padding-inline:calc(var(--spacing)*.5)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-3\.5{padding-inline:calc(var(--spacing)*3.5)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-\[15vh\]{padding-top:15vh}.pr-3\.5{padding-right:calc(var(--spacing)*3.5)}.pr-4{padding-right:calc(var(--spacing)*4)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-5{padding-left:calc(var(--spacing)*5)}.pl-10{padding-left:calc(var(--spacing)*10)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-\[inherit\]{font-family:inherit}.font-display{font-family:Outfit,sans-serif}.font-mono{font-family:IBM Plex Mono,SF Mono,Consolas,monospace}.font-sans{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.text-2xl{font-size:18px;line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:24px;line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:32px;line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:14px;line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:15px;line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:13px;line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:16px;line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:11px;line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.5px\]{--tw-tracking:.5px;letter-spacing:.5px}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#1a1a2e\]{color:#1a1a2e}.text-\[\#3fb950\]{color:#3fb950}.text-\[\#6b6b6c\]{color:#6b6b6c}.text-\[\#6e7681\]{color:#6e7681}.text-\[\#8b949e\]{color:#8b949e}.text-\[\#8d8d8e\]{color:#8d8d8e}.text-\[\#58a6ff\]{color:#58a6ff}.text-\[\#484f58\]{color:#484f58}.text-\[\#666\]{color:#666}.text-\[\#888\]{color:#888}.text-\[\#a78bfa\]{color:#a78bfa}.text-\[\#a855f7\]{color:#a855f7}.text-\[\#b8b8b8\]{color:#b8b8b8}.text-\[\#c9d1d9\]{color:#c9d1d9}.text-\[\#d1d2d3\]{color:#d1d2d3}.text-\[\#d29922\]{color:#d29922}.text-\[\#e8e8e8\]{color:#e8e8e8}.text-\[\#f85149\]{color:#f85149}.text-\[\#ff6b6b\]{color:#ff6b6b}.text-\[\#ffd700\]{color:gold}.text-\[\#ffdf5d\]{color:#ffdf5d}.text-accent,.text-accent-cyan{color:#00d9ff}.text-accent-orange{color:#ff6b35}.text-accent-purple{color:#a855f7}.text-accent-purple\/70{color:oklab(62.6846% .129701 -.193012/.7)}.text-bg-deep{color:#0a0a0f}.text-border-subtle{color:#ffffff0f}.text-error{color:#ff4757}.text-green-400{color:var(--color-green-400)}.text-indigo-500{color:var(--color-indigo-500)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-success{color:#00ffc8}.text-text-dim{color:#404050}.text-text-muted{color:#606070}.text-text-primary{color:#f0f0f5}.text-text-secondary{color:#a0a0b0}.text-warning{color:#ff6b35}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.accent-accent-cyan{accent-color:#00d9ff}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.shadow-2xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040)}.shadow-\[0_-4px_20px_rgba\(0\,0\,0\,0\.4\)\]{--tw-shadow:0 -4px 20px var(--tw-shadow-color,#0006)}.shadow-\[0_-4px_20px_rgba\(0\,0\,0\,0\.4\)\],.shadow-\[0_0_0_2px_rgba\(74\,158\,255\,0\.15\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_2px_rgba\(74\,158\,255\,0\.15\)\]{--tw-shadow:0 0 0 2px var(--tw-shadow-color,#4a9eff26)}.shadow-\[0_0_4px_rgba\(63\,185\,80\,0\.5\)\]{--tw-shadow:0 0 4px var(--tw-shadow-color,#3fb95080)}.shadow-\[0_0_4px_rgba\(63\,185\,80\,0\.5\)\],.shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.15\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.15\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#00d9ff26)}.shadow-\[0_0_8px_rgba\(43\,172\,118\,0\.5\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#2bac7680)}.shadow-\[0_0_8px_rgba\(239\,68\,68\,0\.6\)\],.shadow-\[0_0_8px_rgba\(43\,172\,118\,0\.5\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_8px_rgba\(239\,68\,68\,0\.6\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#ef444499)}.shadow-\[0_0_8px_rgba\(255\,107\,53\,0\.5\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#ff6b3580)}.shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.25\)\],.shadow-\[0_0_8px_rgba\(255\,107\,53\,0\.5\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.25\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#00d9ff40)}.shadow-\[0_0_12px_rgba\(63\,185\,80\,0\.25\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#3fb95040)}.shadow-\[0_0_12px_rgba\(63\,185\,80\,0\.25\)\],.shadow-\[0_1px_3px_rgba\(0\,0\,0\,0\.2\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_1px_3px_rgba\(0\,0\,0\,0\.2\)\]{--tw-shadow:0 1px 3px var(--tw-shadow-color,#0003)}.shadow-\[0_10px_40px_rgba\(0\,0\,0\,0\.4\)\]{--tw-shadow:0 10px 40px var(--tw-shadow-color,#0006)}.shadow-\[0_10px_40px_rgba\(0\,0\,0\,0\.4\)\],.shadow-\[0_20px_60px_rgba\(0\,0\,0\,0\.5\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_20px_60px_rgba\(0\,0\,0\,0\.5\)\]{--tw-shadow:0 20px 60px var(--tw-shadow-color,#00000080)}.shadow-\[inset_0_1px_0_rgba\(0\,217\,255\,0\.1\)\,0_2px_4px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#00d9ff1a),0 2px 4px var(--tw-shadow-color,#0000004d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[inset_0_1px_0_rgba\(255\,107\,107\,0\.1\)\,0_2px_4px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#ff6b6b1a),0 2px 4px var(--tw-shadow-color,#0000004d)}.shadow-\[inset_0_1px_0_rgba\(255\,107\,107\,0\.1\)\,0_2px_4px_rgba\(0\,0\,0\,0\.3\)\],.shadow-lg{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 4px 6px var(--tw-shadow-color,#0000001a)}.shadow-modal{--tw-shadow:0 16px 70px var(--tw-shadow-color,#000000b3)}.shadow-modal,.shadow-sm{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000000d)}.shadow-xl{--tw-shadow:0 10px 15px var(--tw-shadow-color,#0000001a)}.ring,.ring-1,.shadow-xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.ring-2,.ring-3{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-3{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.ring-\[\#1a1d21\]{--tw-ring-color:#1a1d21}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.blur-2xl{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-2xl{--tw-blur:blur(var(--blur-2xl))}.drop-shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.3\)\]{--tw-drop-shadow-size:drop-shadow(0 0 8px var(--tw-drop-shadow-color,#00d9ff4d));--tw-drop-shadow:var(--tw-drop-shadow-size)}.drop-shadow-\[0_0_20px_rgba\(0\,217\,255\,0\.4\)\],.drop-shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.3\)\]{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-\[0_0_20px_rgba\(0\,217\,255\,0\.4\)\]{--tw-drop-shadow-size:drop-shadow(0 0 20px var(--tw-drop-shadow-color,#00d9ff66));--tw-drop-shadow:var(--tw-drop-shadow-size)}.drop-shadow-lg{--tw-drop-shadow-size:drop-shadow(0 4px 4px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-lg))}.drop-shadow-lg,.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:border-accent-cyan\/50:is(:where(.group):hover *),.group-hover\:border-accent\/50:is(:where(.group):hover *){border-color:oklab(81.5968% -.116812 -.0864434/.5)}.group-hover\:bg-black\/10:is(:where(.group):hover *){background-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-black\/10:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--color-black)10%,transparent)}}.group-hover\:\[stroke-width\:5\]:is(:where(.group):hover *){stroke-width:5px}.group-hover\:text-accent-cyan:is(:where(.group):hover *){color:#00d9ff}.group-hover\:text-text-primary:is(:where(.group):hover *){color:#f0f0f5}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.2\)\]:is(:where(.group):hover *){--tw-shadow:0 0 8px var(--tw-shadow-color,#00d9ff33);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-hover\:shadow-md:is(:where(.group):hover *){--tw-shadow:0 1px 3px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-hover\:drop-shadow-\[0_0_16px_rgba\(0\,217\,255\,0\.5\)\]:is(:where(.group):hover *){--tw-drop-shadow-size:drop-shadow(0 0 16px var(--tw-drop-shadow-color,#00d9ff80));--tw-drop-shadow:var(--tw-drop-shadow-size);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}}.placeholder\:text-\[\#484f58\]::-moz-placeholder{color:#484f58}.placeholder\:text-\[\#484f58\]::placeholder{color:#484f58}.placeholder\:text-\[\#666\]::-moz-placeholder{color:#666}.placeholder\:text-\[\#666\]::placeholder{color:#666}.placeholder\:text-text-muted::-moz-placeholder{color:#606070}.placeholder\:text-text-muted::placeholder{color:#606070}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.focus-within\:border-accent-cyan\/50:focus-within{border-color:oklab(81.5968% -.116812 -.0864434/.5)}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing)*-.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:border-\[\#4a4a5e\]:hover{border-color:#4a4a5e}.hover\:border-\[\#30363d\]:hover{border-color:#30363d}.hover\:border-\[\#ff4444\]:hover{border-color:#f44}.hover\:border-accent-cyan:hover{border-color:#00d9ff}.hover\:border-accent-cyan\/30:hover{border-color:oklab(81.5968% -.116812 -.0864434/.3)}.hover\:border-accent-cyan\/50:hover,.hover\:border-accent\/50:hover{border-color:oklab(81.5968% -.116812 -.0864434/.5)}.hover\:border-border-medium:hover{border-color:#ffffff26}.hover\:border-error:hover{border-color:#ff4757}.hover\:border-error\/30:hover{border-color:oklab(66.8917% .204495 .0781476/.3)}.hover\:bg-\[\#00a87d\]:hover{background-color:#00a87d}.hover\:bg-\[\#3a3a4e\]:hover{background-color:#3a3a4e}.hover\:bg-\[\#3fb950\]\/15:hover{background-color:oklab(69.5081% -.149324 .102163/.15)}.hover\:bg-\[\#161b22\]\/80:hover{background-color:oklab(22.0223% -.0035809 -.0152867/.8)}.hover\:bg-\[\#9333ea\]:hover{background-color:#9333ea}.hover\:bg-\[\#21262d\]:hover{background-color:#21262d}.hover\:bg-\[\#21262d\]\/60:hover{background-color:oklab(26.6643% -.00341691 -.0145655/.6)}.hover\:bg-\[\#30363d\]:hover{background-color:#30363d}.hover\:bg-\[\#30363d\]\/90:hover{background-color:oklab(32.9984% -.00452305 -.0141812/.9)}.hover\:bg-\[\#f85149\]\/10:hover{background-color:oklab(66.5118% .18236 .0927555/.1)}.hover\:bg-\[\#f85149\]\/30:hover{background-color:oklab(66.5118% .18236 .0927555/.3)}.hover\:bg-\[rgba\(168\,85\,247\,0\.1\)\]:hover{background-color:#a855f71a}.hover\:bg-\[var\(--group-light\)\]:hover{background-color:var(--group-light)}.hover\:bg-\[var\(--project-light\)\]:hover{background-color:var(--project-light)}.hover\:bg-accent-cyan\/10:hover{background-color:oklab(81.5968% -.116812 -.0864434/.1)}.hover\:bg-accent-cyan\/20:hover{background-color:oklab(81.5968% -.116812 -.0864434/.2)}.hover\:bg-accent-cyan\/30:hover{background-color:oklab(81.5968% -.116812 -.0864434/.3)}.hover\:bg-accent-cyan\/90:hover{background-color:oklab(81.5968% -.116812 -.0864434/.9)}.hover\:bg-accent-hover:hover{background-color:#00b8d9}.hover\:bg-accent\/10:hover{background-color:oklab(81.5968% -.116812 -.0864434/.1)}.hover\:bg-bg-active:hover{background-color:#ffffff14}.hover\:bg-bg-card:hover{background-color:#1a1a28}.hover\:bg-bg-card\/50:hover{background-color:oklab(22.4727% .00655653 -.0262805/.5)}.hover\:bg-bg-elevated:hover{background-color:#202030}.hover\:bg-bg-hover:hover{background-color:#ffffff0a}.hover\:bg-bg-primary:hover{background-color:#0d0d14}.hover\:bg-bg-secondary:hover{background-color:#12121c}.hover\:bg-bg-tertiary:hover{background-color:#181824}.hover\:bg-error\/10:hover{background-color:oklab(66.8917% .204495 .0781476/.1)}.hover\:bg-error\/30:hover{background-color:oklab(66.8917% .204495 .0781476/.3)}.hover\:bg-sidebar-border:hover{background-color:#ffffff14}.hover\:bg-white\/5:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/5:hover{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.hover\:bg-white\/\[0\.05\]:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/\[0\.05\]:hover{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.hover\:bg-white\/\[0\.08\]:hover{background-color:#ffffff14}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/\[0\.08\]:hover{background-color:color-mix(in oklab,var(--color-white)8%,transparent)}}.hover\:bg-gradient-to-b:hover{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.hover\:bg-gradient-to-r:hover{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.hover\:from-\[\#4a2020\]:hover{--tw-gradient-from:#4a2020;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:from-\[\#204060\]:hover{--tw-gradient-from:#204060;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:from-\[rgba\(255\,255\,255\,0\.03\)\]:hover{--tw-gradient-from:#ffffff08;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-\[\#1a3a50\]:hover{--tw-gradient-to:#1a3a50;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-\[\#3a1515\]:hover{--tw-gradient-to:#3a1515;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-transparent:hover{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:text-\[\#c9d1d9\]:hover{color:#c9d1d9}.hover\:text-\[\#c084fc\]:hover{color:#c084fc}.hover\:text-\[\#e8e8e8\]:hover{color:#e8e8e8}.hover\:text-\[\#f85149\]:hover{color:#f85149}.hover\:text-\[\#ff4444\]:hover{color:#f44}.hover\:text-accent-cyan:hover,.hover\:text-accent:hover{color:#00d9ff}.hover\:text-accent-orange:hover{color:#ff6b35}.hover\:text-accent-purple:hover{color:#a855f7}.hover\:text-error:hover{color:#ff4757}.hover\:text-text-primary:hover{color:#f0f0f5}.hover\:text-text-secondary:hover{color:#a0a0b0}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.2\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#00d9ff33)}.hover\:shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.15\)\]:hover,.hover\:shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.2\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.15\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#00d9ff26)}.hover\:shadow-\[0_0_8px_rgba\(39\,201\,63\,0\.5\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#27c93f80)}.hover\:shadow-\[0_0_8px_rgba\(39\,201\,63\,0\.5\)\]:hover,.hover\:shadow-\[0_0_8px_rgba\(63\,185\,80\,0\.2\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_8px_rgba\(63\,185\,80\,0\.2\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#3fb95033)}.hover\:shadow-\[0_0_8px_rgba\(248\,81\,73\,0\.2\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#f8514933)}.hover\:shadow-\[0_0_8px_rgba\(248\,81\,73\,0\.2\)\]:hover,.hover\:shadow-\[0_0_8px_rgba\(255\,95\,86\,0\.5\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_8px_rgba\(255\,95\,86\,0\.5\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#ff5f5680)}.hover\:shadow-\[0_0_8px_rgba\(255\,189\,46\,0\.5\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#ffbd2e80)}.hover\:shadow-\[0_0_8px_rgba\(255\,189\,46\,0\.5\)\]:hover,.hover\:shadow-\[0_0_8px_rgba\(255\,255\,255\,0\.1\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_8px_rgba\(255\,255\,255\,0\.1\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#ffffff1a)}.hover\:shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.25\)\]:hover{--tw-shadow:0 0 12px var(--tw-shadow-color,#00d9ff40)}.hover\:shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.25\)\]:hover,.hover\:shadow-\[0_0_12px_rgba\(255\,68\,68\,0\.25\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_12px_rgba\(255\,68\,68\,0\.25\)\]:hover{--tw-shadow:0 0 12px var(--tw-shadow-color,#ff444440)}.hover\:shadow-\[inset_0_1px_0_rgba\(0\,217\,255\,0\.2\)\,0_0_12px_rgba\(0\,217\,255\,0\.4\)\,0_2px_8px_rgba\(0\,0\,0\,0\.4\)\]:hover{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#00d9ff33),0 0 12px var(--tw-shadow-color,#00d9ff66),0 2px 8px var(--tw-shadow-color,#0006);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[inset_0_1px_0_rgba\(255\,68\,68\,0\.2\)\,0_0_12px_rgba\(255\,68\,68\,0\.4\)\,0_2px_8px_rgba\(0\,0\,0\,0\.4\)\]:hover{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#f443),0 0 12px var(--tw-shadow-color,#f446),0 2px 8px var(--tw-shadow-color,#0006);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-glow-cyan:hover{--tw-shadow:0 0 20px var(--tw-shadow-color,#00d9ff4d)}.hover\:shadow-glow-cyan:hover,.hover\:shadow-lg:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 4px 6px var(--tw-shadow-color,#0000001a)}.hover\:shadow-md:hover{--tw-shadow:0 1px 3px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-\[\#00c896\]:focus{border-color:#00c896}.focus\:border-accent:focus{border-color:#00d9ff}.focus\:border-accent-cyan\/50:focus{border-color:oklab(81.5968% -.116812 -.0864434/.5)}.focus\:border-accent-purple\/50:focus{border-color:oklab(62.6846% .129701 -.193012/.5)}.focus\:shadow-\[0_0_0_3px_rgba\(0\,217\,255\,0\.1\)\]:focus{--tw-shadow:0 0 0 3px var(--tw-shadow-color,#00d9ff1a)}.focus\:ring-2:focus,.focus\:shadow-\[0_0_0_3px_rgba\(0\,217\,255\,0\.1\)\]:focus{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.focus\:ring-accent:focus{--tw-ring-color:#00d9ff}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:ring-offset-bg-primary:focus{--tw-ring-offset-color:#0d0d14}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:scale-\[0\.98\]:active{scale:.98}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-bg-hover:disabled{background-color:#ffffff0a}.disabled\:text-text-muted:disabled{color:#606070}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}@media (hover:hover){.disabled\:hover\:translate-y-0:disabled:hover{--tw-translate-y:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.disabled\:hover\:shadow-none:disabled:hover{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media not all and (min-width:48rem){.max-md\:flex{display:flex}.max-md\:hidden{display:none}.max-md\:w-\[85vw\]{width:85vw}.max-md\:max-w-\[150px\]{max-width:150px}.max-md\:max-w-\[280px\]{max-width:280px}.max-md\:truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}@media (min-width:40rem){.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:48rem){.md\:relative{position:relative}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-\[400px\]{width:400px}.md\:max-w-\[500px\]{max-width:500px}.md\:min-w-\[320px\]{min-width:320px}.md\:flex-\[2\]{flex:2}.md\:flex-shrink-0{flex-shrink:0}.md\:translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:px-8{padding-inline:calc(var(--spacing)*8)}}@media (min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%}:focus-visible{outline-offset:2px;outline:2px solid #00d9ff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}::-moz-selection{color:#00d9ff;background:#00d9ff26}::selection{color:#00d9ff;background:#00d9ff26}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{opacity:1;box-shadow:0 0 #00d9ff66}50%{opacity:.8;box-shadow:0 0 20px 4px #0000}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&family=Inter:wght@400;500;600&display=swap");:root{--bg-deep:#0a0a0f;--bg-primary:#0d0d14;--bg-secondary:#12121c;--bg-tertiary:#181824;--bg-card:#1a1a28;--bg-elevated:#202030;--text-primary:#f0f0f5;--text-secondary:#a0a0b0;--text-muted:#606070;--text-dim:#404050;--accent-cyan:#00d9ff;--accent-orange:#ff6b35;--accent-purple:#a855f7;--accent-green:#00ffc8;--border-subtle:hsla(0,0%,100%,.06);--border-light:hsla(0,0%,100%,.1);--border-medium:hsla(0,0%,100%,.15);--glow-cyan:0 0 30px rgba(0,217,255,.3);--glow-orange:0 0 30px rgba(255,107,53,.3);--glow-purple:0 0 30px rgba(168,85,247,.3);--font-display:"Outfit",sans-serif;--font-mono:"IBM Plex Mono",monospace;--font-body:"Inter",sans-serif;--section-padding:120px;--container-max:1280px;--transition-fast:0.15s ease;--transition-medium:0.3s ease;--transition-slow:0.5s ease}.landing-page *,.landing-page :after,.landing-page :before,.pricing-page *,.pricing-page :after,.pricing-page :before{margin:0;padding:0;box-sizing:border-box}.landing-page,.pricing-page{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--text-primary);background:var(--bg-deep);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.landing-page a,.pricing-page a{color:inherit;text-decoration:none}.landing-page button,.pricing-page button{font-family:inherit;cursor:pointer;border:none;background:none}.landing-page{position:relative;min-height:100vh;overflow-x:hidden}.landing-bg{position:fixed;inset:0;pointer-events:none;z-index:0}.grid-bg{overflow:hidden}.grid-bg,.grid-lines{position:absolute;inset:0}.grid-lines{background-image:linear-gradient(hsla(0,0%,100%,.02) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.02) 1px,transparent 0);background-size:60px 60px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 30%,transparent 70%);mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 30%,transparent 70%)}.grid-glow{position:absolute;top:0;left:50%;transform:translateX(-50%);width:100%;height:600px;background:radial-gradient(ellipse 60% 40% at 50% 0,rgba(0,217,255,.08) 0,transparent 70%)}.glow-orbs{inset:0}.glow-orbs,.orb{position:absolute}.orb{border-radius:50%;filter:blur(100px);opacity:.4;animation:float 20s ease-in-out infinite}.orb-1{width:600px;height:600px;background:var(--accent-cyan);top:-200px;left:-200px;animation-delay:0s}.orb-2{width:500px;height:500px;background:var(--accent-purple);top:40%;right:-150px;animation-delay:-7s}.orb-3{width:400px;height:400px;background:var(--accent-orange);bottom:10%;left:20%;animation-delay:-14s}@keyframes float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-30px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(20px,10px) scale(1.02)}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 40px;transition:var(--transition-medium)}.nav.scrolled{background:rgba(10,10,15,.9);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-subtle);padding:16px 40px}.nav-inner{max-width:var(--container-max);margin:0 auto;justify-content:space-between}.nav-inner,.nav-logo{display:flex;align-items:center}.nav-logo{gap:10px;font-family:var(--font-display);font-weight:700;font-size:20px}.logo-icon{font-size:24px;color:var(--accent-cyan);filter:drop-shadow(var(--glow-cyan))}.nav-links{display:flex;align-items:center;gap:40px}.nav-links a{font-size:14px;font-weight:500;color:var(--text-secondary);transition:var(--transition-fast)}.nav-links a:hover{color:var(--text-primary)}.nav-docs{padding:6px 14px;background:var(--bg-elevated);border-radius:6px;border:1px solid var(--border-light)}.nav-actions{display:flex;align-items:center;gap:12px}.mobile-menu,.mobile-menu-overlay,.mobile-menu-toggle{display:none}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,var(--accent-cyan) 0,#00b8d9 100%);color:var(--bg-deep);font-weight:600;font-size:14px;border-radius:8px;transition:var(--transition-fast);box-shadow:0 4px 20px rgba(0,217,255,.3)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 30px rgba(0,217,255,.4)}.btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:transparent;color:var(--text-primary);font-weight:500;font-size:14px;border-radius:8px;border:1px solid var(--border-light);transition:var(--transition-fast)}.btn-ghost:hover{background:hsla(0,0%,100%,.05);border-color:var(--border-medium)}.btn-large{padding:16px 32px;font-size:16px}.btn-full{width:100%;justify-content:center}.btn-arrow{transition:transform var(--transition-fast)}.btn-primary:hover .btn-arrow{transform:translateX(4px)}.play-icon{font-size:10px}.hero{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-columns:1fr 1fr;gap:80px;max-width:var(--container-max);margin:0 auto;padding:140px 40px 100px}.hero,.hero-badge{align-items:center}.hero-badge{display:inline-flex;gap:8px;padding:8px 16px;background:rgba(0,217,255,.1);border:1px solid rgba(0,217,255,.2);border-radius:100px;font-size:13px;font-weight:500;color:var(--accent-cyan);margin-bottom:24px;animation:fadeInUp .6s ease forwards}.badge-dot{width:6px;height:6px;background:var(--accent-cyan);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.hero-title{font-family:var(--font-display);font-size:clamp(48px,6vw,72px);font-weight:800;line-height:1.1;letter-spacing:-.02em;margin-bottom:24px}.title-line{display:block;animation:fadeInUp .6s ease forwards;animation-delay:.1s;opacity:0}.title-line:nth-child(2){animation-delay:.2s}.title-line.gradient{background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-purple) 50%,var(--accent-orange) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-subtitle{font-size:18px;line-height:1.7;color:var(--text-secondary);max-width:500px;margin-bottom:40px;animation:fadeInUp .6s ease forwards;animation-delay:.3s;opacity:0}.hero-cta{gap:16px;margin-bottom:60px;animation:fadeInUp .6s ease forwards;animation-delay:.4s}.hero-cta,.hero-stats{display:flex;opacity:0}.hero-stats{align-items:center;gap:32px;animation:fadeInUp .6s ease forwards;animation-delay:.5s}.stat{display:flex;flex-direction:column;gap:4px}.stat-value{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--text-primary)}.stat-label{font-size:13px;color:var(--text-muted)}.stat-divider{width:1px;height:40px;background:var(--border-light)}.hero-visual{position:relative;animation:fadeIn 1s ease forwards;animation-delay:.6s;opacity:0}@keyframes fadeIn{to{opacity:1}}.agent-network{position:relative;width:100%;aspect-ratio:1;max-width:500px;margin:0 auto}.network-lines{position:absolute;inset:0;width:100%;height:100%}.network-line{stroke:hsla(0,0%,100%,.1);stroke-width:.5}.network-line-glow{stroke:var(--accent-cyan);stroke-width:1;stroke-dasharray:100;stroke-dashoffset:100;animation:lineFlow 3s ease-in-out infinite;filter:drop-shadow(0 0 4px var(--accent-cyan))}@keyframes lineFlow{0%{stroke-dashoffset:100;opacity:0}50%{opacity:1}to{stroke-dashoffset:-100;opacity:0}}.network-agent{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:8px}.agent-glow{position:absolute;width:80px;height:80px;background:var(--agent-color);border-radius:50%;filter:blur(30px);opacity:.3;z-index:-1}.agent-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:2px solid var(--agent-color);border-radius:16px;font-size:24px;color:var(--agent-color);box-shadow:0 0 20px rgba(0,0,0,.5),inset 0 0 20px hsla(0,0%,100%,.02);transition:var(--transition-medium)}.network-agent.pulse .agent-icon{animation:agentPulse 2s ease-in-out infinite}@keyframes agentPulse{0%,to{box-shadow:0 0 20px rgba(0,0,0,.5),0 0 0 0 var(--agent-color)}50%{box-shadow:0 0 20px rgba(0,0,0,.5),0 0 30px 10px transparent}}.agent-label{font-family:var(--font-mono);font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.data-packet{position:absolute;width:8px;height:8px;background:var(--accent-cyan);border-radius:50%;filter:blur(2px);box-shadow:0 0 10px var(--accent-cyan);animation:packetMove 3s ease-in-out infinite}@keyframes packetMove{0%{left:var(--from-x);top:var(--from-y);opacity:0}10%{opacity:1}90%{opacity:1}to{left:var(--to-x);top:var(--to-y);opacity:0}}section{position:relative;z-index:1}.section-header{text-align:center;max-width:700px;margin:0 auto 60px}.section-tag{display:inline-block;font-family:var(--font-mono);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:var(--accent-cyan);margin-bottom:16px}.section-header h2{font-family:var(--font-display);font-size:clamp(32px,4vw,48px);font-weight:700;margin-bottom:16px}.section-header p{font-size:18px;color:var(--text-secondary)}.demo-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.demo-container{perspective:1000px}.demo-window{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px hsla(0,0%,100%,.05),0 20px 80px rgba(0,0,0,.5);transform:rotateX(2deg);transition:var(--transition-medium)}.demo-window:hover{transform:rotateX(0deg);box-shadow:0 0 0 1px hsla(0,0%,100%,.1),0 30px 100px rgba(0,0,0,.6)}.window-header{display:flex;align-items:center;padding:16px 20px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle)}.window-dots{display:flex;gap:8px}.dot{width:12px;height:12px;border-radius:50%}.dot.red{background:#ff5f57}.dot.yellow{background:#febc2e}.dot.green{background:#28c840}.window-title{flex:1;text-align:center;font-family:var(--font-mono);font-size:13px;color:var(--text-muted)}.window-status{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.status-dot{width:8px;height:8px;background:var(--accent-green);border-radius:50%;animation:pulse 2s ease-in-out infinite}.demo-content{display:grid;grid-template-columns:200px 1fr;height:400px}.demo-sidebar{padding:20px;background:var(--bg-tertiary);border-right:1px solid var(--border-subtle)}.sidebar-section{margin-bottom:24px}.sidebar-label{font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);margin-bottom:12px}.sidebar-agent{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;margin-bottom:4px;transition:var(--transition-fast)}.sidebar-agent:hover{background:hsla(0,0%,100%,.03)}.agent-dot{width:8px;height:8px;border-radius:50%}.sidebar-agent .agent-name{flex:1;font-size:13px;color:var(--text-secondary)}.sidebar-agent .agent-status{font-size:8px;color:var(--accent-green)}.demo-messages{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.message{animation:messageSlide .3s ease forwards}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-header{gap:8px;margin-bottom:6px}.message-header,.message-icon{display:flex;align-items:center}.message-icon{width:24px;height:24px;justify-content:center;border-radius:6px;font-size:12px;color:var(--bg-deep)}.message-from{font-weight:600;font-size:13px;color:var(--msg-color)}.message-arrow{font-size:10px;color:var(--text-dim)}.message-to{font-size:13px;color:var(--text-muted)}.message-time{margin-left:auto;font-size:11px;color:var(--text-dim)}.message-content{font-size:14px;color:var(--text-secondary);line-height:1.6;padding-left:32px}.typing-indicator{display:flex;align-items:center;gap:4px;padding:8px 0 8px 32px}.typing-dot{width:6px;height:6px;background:var(--text-dim);border-radius:50%;animation:typingBounce 1.4s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.demo-caption{text-align:center;margin-top:20px}.demo-caption p{font-size:13px;color:var(--text-dim)}.features-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card{padding:32px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;transition:var(--transition-medium);animation:fadeInUp .6s ease forwards;opacity:0}.feature-card:hover{background:var(--bg-elevated);border-color:var(--border-light);transform:translateY(-4px)}.feature-icon{font-size:32px;margin-bottom:20px}.feature-card h3{font-family:var(--font-display);font-size:18px;font-weight:600;margin-bottom:12px}.feature-card p{font-size:14px;color:var(--text-secondary);line-height:1.6}.providers-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.providers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.provider-card{padding:40px 32px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;text-align:center;transition:var(--transition-medium)}.provider-card:hover{border-color:var(--provider-color);box-shadow:0 0 40px rgba(0,0,0,.3)}.provider-icon{font-size:48px;color:var(--provider-color);margin-bottom:16px;filter:drop-shadow(0 0 20px var(--provider-color))}.provider-name{font-family:var(--font-display);font-size:20px;font-weight:600;margin-bottom:8px}.provider-status{font-size:12px;color:var(--accent-green);text-transform:uppercase;letter-spacing:1px}.provider-card.coming-soon{--provider-color:var(--text-dim)}.provider-card.coming-soon .provider-status{color:var(--text-muted)}.pricing-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:start}.pricing-card{position:relative;padding:32px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;transition:var(--transition-medium)}.pricing-card:hover{border-color:var(--border-light)}.pricing-card.highlighted{background:linear-gradient(135deg,rgba(0,217,255,.05),rgba(168,85,247,.05));border-color:var(--accent-cyan);transform:scale(1.02)}.pricing-card .popular-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);padding:6px 16px;background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-purple) 100%);color:var(--bg-deep);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;border-radius:100px}.pricing-header{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--border-subtle)}.pricing-header h3{font-family:var(--font-display);font-size:20px;font-weight:600;margin-bottom:12px}.pricing-price{margin-bottom:12px}.pricing-price .price{font-family:var(--font-display);font-size:40px;font-weight:700}.pricing-price .period{font-size:16px;color:var(--text-muted)}.pricing-description{font-size:13px;color:var(--text-muted)}.pricing-features{list-style:none;margin-bottom:32px}.pricing-features li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--text-secondary);padding:8px 0}.pricing-features .check{color:var(--accent-green);font-weight:700}.cta-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.cta-content h2{font-family:var(--font-display);font-size:clamp(32px,4vw,48px);font-weight:700;margin-bottom:16px}.cta-content p{font-size:18px;color:var(--text-secondary);margin-bottom:32px}.cta-buttons{display:flex;gap:16px}.cta-terminal{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:12px;padding:24px;font-family:var(--font-mono);font-size:14px}.terminal-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-subtle)}.terminal-prompt{color:var(--accent-cyan)}.terminal-text{color:var(--text-primary)}.terminal-output{display:flex;flex-direction:column;gap:8px}.output-line{color:var(--text-secondary)}.output-line.cursor:after{content:"▋";animation:cursorBlink 1s step-end infinite;color:var(--accent-cyan)}@keyframes cursorBlink{50%{opacity:0}}.footer{position:relative;z-index:1;border-top:1px solid var(--border-subtle);padding:60px 40px 40px;background:var(--bg-primary)}.footer-inner{max-width:var(--container-max);display:grid;grid-template-columns:1fr 2fr;gap:80px;margin:0 auto 60px}.footer-logo{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:18px;margin-bottom:12px}.footer-brand p{font-size:14px;color:var(--text-muted)}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.footer-column h4{font-family:var(--font-display);font-size:14px;font-weight:600;margin-bottom:20px}.footer-column a{display:block;font-size:14px;color:var(--text-muted);padding:6px 0;transition:var(--transition-fast)}.footer-column a:hover{color:var(--text-primary)}.footer-bottom{max-width:var(--container-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding-top:24px;border-top:1px solid var(--border-subtle)}.footer-bottom p{font-size:13px;color:var(--text-dim)}.social-links{display:flex;gap:16px}.social-links a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-muted);transition:var(--transition-fast)}.social-links a:hover{background:var(--bg-elevated);border-color:var(--border-light);color:var(--text-primary)}.mobile-menu-toggle{padding:8px;background:transparent;border:none;cursor:pointer;z-index:102}.hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:24px;height:20px}.hamburger-line{width:100%;height:2px;background:var(--text-primary);border-radius:2px;transition:var(--transition-fast);transform-origin:center}.hamburger.open .hamburger-line:first-child{transform:translateY(7px) rotate(45deg)}.hamburger.open .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger.open .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);opacity:0;visibility:hidden;transition:var(--transition-medium);z-index:99}.mobile-menu-overlay.open{opacity:1;visibility:visible}.mobile-menu{position:fixed;top:0;right:0;width:300px;max-width:85vw;height:100vh;background:var(--bg-secondary);border-left:1px solid var(--border-subtle);transform:translateX(100%);transition:transform var(--transition-medium);z-index:100;overflow-y:auto}.mobile-menu.open{transform:translateX(0)}.mobile-menu-content{padding:100px 24px 40px;display:flex;flex-direction:column;min-height:100%}.mobile-nav-links{display:flex;flex-direction:column;gap:8px;margin-bottom:32px}.mobile-nav-links a{display:block;padding:16px 20px;font-size:16px;font-weight:500;color:var(--text-secondary);border-radius:12px;transition:var(--transition-fast)}.mobile-nav-links a:hover{background:hsla(0,0%,100%,.05);color:var(--text-primary)}.mobile-nav-actions{display:flex;flex-direction:column;gap:12px;margin-top:auto}@media (max-width:1024px){.hero{grid-template-columns:1fr;text-align:center;padding:140px 32px 80px;gap:60px}.hero-subtitle{margin-left:auto;margin-right:auto}.hero-cta,.hero-stats{justify-content:center}.hero-visual{order:-1;margin:0 auto}.agent-network,.hero-visual{max-width:350px}.features-grid,.pricing-grid,.providers-grid{grid-template-columns:repeat(2,1fr)}.cta-section{grid-template-columns:1fr;text-align:center;gap:48px}.cta-buttons{justify-content:center}.cta-terminal{max-width:500px;margin:0 auto}.demo-content{grid-template-columns:160px 1fr}.demo-sidebar{padding:16px}.sidebar-agent{padding:6px 8px}.sidebar-agent .agent-name{font-size:12px}.footer-inner{grid-template-columns:1fr;gap:40px;text-align:center}.footer-brand{display:flex;flex-direction:column;align-items:center}.footer-links{justify-content:center}}@media (max-width:900px){.demo-content{grid-template-columns:1fr;height:auto;min-height:350px}.demo-sidebar{display:none}.demo-messages{max-height:400px}.window-status{display:none}}@media (max-width:768px){:root{--section-padding:80px}.mobile-menu,.mobile-menu-overlay,.mobile-menu-toggle{display:block}.nav{padding:16px 20px}.nav.scrolled{padding:12px 20px}.nav-actions,.nav-links{display:none}.hero{padding:120px 20px 60px;gap:40px}.hero-title{font-size:clamp(32px,8vw,42px)}.hero-badge{padding:6px 12px;font-size:12px;margin-bottom:20px}.hero-subtitle{font-size:16px;margin-bottom:32px}.hero-cta{flex-direction:column;align-items:center;gap:12px;margin-bottom:40px}.hero-cta .btn-large{width:100%;max-width:280px;justify-content:center}.hero-stats{flex-wrap:wrap;gap:20px}.stat{min-width:80px}.stat-value{font-size:24px}.stat-label{font-size:11px}.stat-divider{display:none}.agent-network,.hero-visual{width:100%;max-width:320px}.agent-network{min-width:280px;aspect-ratio:1.2}.agent-icon{width:48px;height:48px;font-size:18px;border-radius:12px}.agent-label{font-size:10px}.agent-glow{width:50px;height:50px;filter:blur(20px)}.section-header{margin-bottom:40px;padding:0 8px}.section-header h2{font-size:clamp(26px,6vw,36px)}.section-header p{font-size:15px}.demo-section{padding:var(--section-padding) 20px}.demo-window{border-radius:12px}.window-header{padding:12px 16px}.window-dots{gap:6px}.dot{width:10px;height:10px}.window-title{font-size:11px}.demo-messages{padding:16px;gap:12px;max-height:320px}.message-header{flex-wrap:wrap;gap:6px}.message-icon{width:20px;height:20px;font-size:10px}.message-from,.message-to{font-size:12px}.message-time{width:100%;margin-left:26px;margin-top:4px}.message-content{font-size:13px;padding-left:26px}.demo-caption p{font-size:12px}.features-section{padding:var(--section-padding) 20px}.features-grid{grid-template-columns:1fr;gap:16px}.feature-card{padding:24px;border-radius:12px}.feature-icon{font-size:28px;margin-bottom:16px}.feature-card h3{font-size:16px;margin-bottom:8px}.feature-card p{font-size:13px}.providers-section{padding:var(--section-padding) 20px}.providers-grid{grid-template-columns:repeat(2,1fr);gap:16px}.provider-card{padding:24px 16px;border-radius:12px}.provider-icon{font-size:36px;margin-bottom:12px}.provider-name{font-size:16px;margin-bottom:4px}.provider-status{font-size:10px}.pricing-section{padding:var(--section-padding) 20px}.pricing-grid{grid-template-columns:1fr;gap:20px}.pricing-card{padding:24px;border-radius:14px}.pricing-card.highlighted{transform:none}.pricing-header h3{font-size:18px}.pricing-price .price{font-size:32px}.pricing-features li{font-size:13px;padding:6px 0}.cta-section{padding:var(--section-padding) 20px;gap:32px}.cta-content h2{font-size:clamp(26px,6vw,36px)}.cta-content p{font-size:15px;margin-bottom:24px}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn-large{width:100%;max-width:280px;justify-content:center}.cta-terminal{padding:20px;border-radius:10px}.terminal-header{margin-bottom:16px;padding-bottom:12px}.cta-terminal,.terminal-output{font-size:12px}.terminal-output{gap:6px}.footer{padding:40px 20px 32px}.footer-inner{gap:32px;margin-bottom:32px}.footer-logo{font-size:16px;justify-content:center}.footer-brand p{font-size:13px}.footer-links{grid-template-columns:repeat(3,1fr);gap:24px;text-align:left}.footer-column h4{font-size:13px;margin-bottom:16px}.footer-column a{font-size:13px;padding:4px 0}.footer-bottom{flex-direction:column;gap:16px;text-align:center;padding-top:20px}.footer-bottom p{font-size:12px}.social-links a{width:32px;height:32px}}@media (max-width:480px){:root{--section-padding:60px}.hero{padding:100px 16px 48px;gap:32px}.hero-title{font-size:28px}.hero-subtitle{font-size:14px;line-height:1.6}.hero-visual{width:100%;max-width:100%;overflow-x:auto;display:flex;justify-content:center}.agent-network{width:280px;min-width:280px;flex-shrink:0}.agent-icon{width:42px;height:42px;font-size:16px;border-radius:10px}.agent-label{font-size:9px}.agent-glow{width:40px;height:40px;filter:blur(15px);opacity:.4}.data-packet{width:6px;height:6px}.hero-stats{gap:16px}.stat-value{font-size:20px}.stat-label{font-size:10px}.section-header h2{font-size:24px}.section-header p{font-size:14px}.demo-section{padding:var(--section-padding) 16px}.demo-messages{padding:12px;max-height:280px}.message-content{font-size:12px;line-height:1.5}.features-section{padding:var(--section-padding) 16px}.feature-card{padding:20px}.providers-section{padding:var(--section-padding) 16px}.providers-grid{gap:12px}.provider-card{padding:20px 12px}.provider-icon{font-size:28px}.provider-name{font-size:14px}.pricing-section{padding:var(--section-padding) 16px}.pricing-card{padding:20px}.pricing-price .price{font-size:28px}.cta-section{padding:var(--section-padding) 16px}.cta-content h2{font-size:24px}.cta-terminal{padding:16px}.footer{padding:32px 16px 24px}.footer-links{grid-template-columns:repeat(2,1fr);gap:24px 16px}.footer-links .footer-column:last-child{grid-column:span 2;text-align:center}.footer-links .footer-column:last-child a{display:inline-block;padding:4px 8px}.mobile-menu{width:100%;max-width:none}}.pricing-page{position:relative;min-height:100vh;overflow-x:hidden}.pricing-bg{position:fixed;inset:0;pointer-events:none;z-index:0}.nav-links a.active{color:var(--accent-cyan)}.pricing-hero{position:relative;z-index:1;padding:180px 40px 80px;text-align:center}.pricing-hero-content{max-width:700px;margin:0 auto}.pricing-hero .hero-badge{display:inline-flex;align-items:center;gap:10px;padding:10px 20px;background:rgba(0,217,255,.08);border:1px solid rgba(0,217,255,.2);border-radius:100px;font-size:14px;font-weight:500;color:var(--accent-cyan);margin-bottom:32px;animation:fadeInUp .6s ease forwards}.badge-icon{font-size:16px;filter:drop-shadow(0 0 8px var(--accent-cyan))}.pricing-hero h1{font-family:var(--font-display);font-size:clamp(40px,5vw,64px);font-weight:800;line-height:1.1;letter-spacing:-.02em;margin-bottom:24px}.pricing-hero .title-line{display:block;animation:fadeInUp .6s ease forwards;opacity:0}.pricing-hero .title-line:first-child{animation-delay:.1s}.pricing-hero .title-line:nth-child(2){animation-delay:.2s}.pricing-hero .title-line.gradient{background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-purple) 50%,var(--accent-orange) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pricing-hero .hero-subtitle{font-size:18px;line-height:1.8;color:var(--text-secondary);margin-bottom:40px;animation:fadeInUp .6s ease forwards;animation-delay:.3s;opacity:0}.billing-toggle{display:inline-flex;padding:4px;background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;animation:fadeInUp .6s ease forwards;animation-delay:.4s;opacity:0}.billing-toggle button{position:relative;padding:12px 24px;font-size:14px;font-weight:500;color:var(--text-muted);border-radius:8px;transition:var(--transition-fast)}.billing-toggle button.active{background:var(--bg-elevated);color:var(--text-primary)}.billing-toggle button:hover:not(.active){color:var(--text-secondary)}.save-badge{position:absolute;top:-8px;right:-8px;padding:4px 8px;background:var(--accent-green);color:var(--bg-deep);font-size:10px;font-weight:700;border-radius:100px;text-transform:uppercase;letter-spacing:.5px}.plans-section{position:relative;z-index:1;padding:0 40px 100px;max-width:var(--container-max);margin:0 auto}.plans-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:start}.plan-card{position:relative;padding:32px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:20px;transition:var(--transition-medium)}.plan-card:hover{border-color:var(--border-light);transform:translateY(-4px)}.plan-card.highlighted{background:linear-gradient(135deg,rgba(0,217,255,.08),rgba(168,85,247,.05));border-color:var(--accent-cyan);box-shadow:0 0 60px rgba(0,217,255,.15)}.plan-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);padding:6px 16px;background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-purple) 100%);color:var(--bg-deep);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;border-radius:100px;white-space:nowrap}.plan-header{margin-bottom:24px}.plan-header h3{font-family:var(--font-display);font-size:24px;font-weight:700;margin-bottom:4px}.plan-tagline{font-size:13px;color:var(--text-muted)}.plan-price{margin-bottom:16px}.plan-price .price{font-family:var(--font-display);font-size:48px;font-weight:800;letter-spacing:-.02em}.plan-price .period{font-size:14px;color:var(--text-muted);margin-left:4px}.plan-description{font-size:14px;color:var(--text-secondary);line-height:1.6;margin-bottom:24px;min-height:44px}.plan-limits{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:20px;background:rgba(0,0,0,.2);border-radius:12px;margin-bottom:24px}.limit-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px}.limit-icon{font-size:16px;color:var(--accent-cyan);opacity:.6}.limit-value{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--text-primary)}.limit-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.comparison-section{position:relative;z-index:1;padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.comparison-table-wrapper{overflow-x:auto;border-radius:16px;border:1px solid var(--border-subtle);background:var(--bg-card)}.comparison-table{width:100%;border-collapse:collapse;font-size:14px}.comparison-table td,.comparison-table th{padding:16px 24px;text-align:center;border-bottom:1px solid var(--border-subtle)}.comparison-table th{font-family:var(--font-display);font-weight:600;font-size:16px;background:var(--bg-tertiary)}.comparison-table th.highlighted{background:rgba(0,217,255,.1);color:var(--accent-cyan)}.comparison-table td.highlighted{background:rgba(0,217,255,.03)}.comparison-table .feature-col{text-align:left;font-weight:500;color:var(--text-secondary)}.comparison-table .check{color:var(--accent-green);font-size:18px;font-weight:700}.comparison-table .dash{color:var(--text-dim)}.comparison-table .feature-value{color:var(--text-primary);font-weight:500}.comparison-table tbody tr:last-child td{border-bottom:none}.comparison-table tbody tr:hover td{background:hsla(0,0%,100%,.02)}.comparison-table tbody tr:hover td.highlighted{background:rgba(0,217,255,.05)}.faq-section{position:relative;z-index:1;padding:var(--section-padding) 40px;max-width:900px;margin:0 auto}.faq-grid{display:flex;flex-direction:column;gap:12px}.faq-item{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden;cursor:pointer;transition:var(--transition-fast)}.faq-item:hover{border-color:var(--border-light)}.faq-item.open{border-color:var(--accent-cyan);background:rgba(0,217,255,.03)}.faq-question{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;font-weight:500;font-size:15px}.faq-toggle{font-size:24px;color:var(--text-muted);line-height:1;transition:var(--transition-fast)}.faq-item.open .faq-toggle{color:var(--accent-cyan)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease}.faq-item.open .faq-answer{max-height:300px}.faq-answer p{padding:0 24px 20px;font-size:14px;color:var(--text-secondary);line-height:1.7}.pricing-page .cta-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.cta-card{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:60px;background:linear-gradient(135deg,var(--bg-card) 0,var(--bg-secondary) 100%);border:1px solid var(--border-light);border-radius:24px;overflow:hidden}.cta-card .cta-content h2{font-family:var(--font-display);font-size:36px;font-weight:700;margin-bottom:12px}.cta-card .cta-content p{font-size:16px;color:var(--text-secondary);margin-bottom:32px}.orbit{position:relative;width:300px;height:300px;margin:0 auto}.orbit-ring{position:absolute;border:1px solid var(--border-subtle);border-radius:50%;animation:spin 20s linear infinite}.ring-1{width:100%;height:100%;top:0;left:0}.ring-2{width:70%;height:70%;top:15%;left:15%;animation-duration:15s;animation-direction:reverse}.ring-3{width:40%;height:40%;top:30%;left:30%;animation-duration:10s}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.orbit-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:40px;color:var(--accent-cyan);filter:drop-shadow(var(--glow-cyan))}.orbit-dot{position:absolute;font-size:20px;animation:orbitMove 6s ease-in-out infinite}.dot-1{top:0;left:50%;transform:translateX(-50%);color:var(--accent-cyan);animation-delay:0s}.dot-2{top:50%;right:0;transform:translateY(-50%);color:var(--accent-orange);animation-delay:-2s}.dot-3{bottom:15%;left:15%;color:var(--accent-purple);animation-delay:-4s}@keyframes orbitMove{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.8)}}@media (max-width:1024px){.plans-grid{grid-template-columns:repeat(2,1fr)}.cta-card{grid-template-columns:1fr;text-align:center}.cta-card .cta-content{order:1}.cta-visual{order:0}.orbit{width:200px;height:200px}}@media (max-width:768px){.pricing-hero{padding:120px 20px 48px}.pricing-hero h1{font-size:clamp(32px,8vw,48px)}.pricing-hero .hero-subtitle{font-size:15px;line-height:1.7}.billing-toggle{width:100%;max-width:280px}.billing-toggle button{flex:1;padding:10px 16px;font-size:13px}.plans-section{padding:0 20px 60px}.plans-grid{grid-template-columns:1fr;gap:20px}.plan-card{padding:24px;border-radius:16px}.plan-card.highlighted{transform:none}.plan-header h3{font-size:20px}.plan-price .price{font-size:40px}.plan-limits{padding:16px;gap:8px}.limit-value{font-size:20px}.limit-label{font-size:10px}.comparison-section{padding:60px 20px}.comparison-table-wrapper{border-radius:12px}.comparison-table td,.comparison-table th{padding:10px 12px;font-size:12px}.comparison-table th{font-size:13px}.faq-section{padding:60px 20px}.faq-question{padding:16px 20px;font-size:14px}.faq-answer p{padding:0 20px 16px;font-size:13px}.pricing-page .cta-section{padding:60px 20px}.cta-card{padding:32px 20px;border-radius:16px;gap:40px}.cta-card .cta-content h2{font-size:28px}.cta-card .cta-content p{font-size:14px;margin-bottom:24px}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn-large{width:100%;max-width:260px}.orbit{width:160px;height:160px}.orbit-center{font-size:28px}.orbit-dot{font-size:14px}}@media (max-width:480px){.pricing-hero{padding:100px 16px 40px}.pricing-hero h1{font-size:28px}.pricing-hero .hero-subtitle{font-size:14px}.pricing-hero .hero-badge{padding:8px 14px;font-size:12px;margin-bottom:24px}.plans-section{padding:0 16px 48px}.plan-card{padding:20px}.plan-price .price{font-size:36px}.comparison-section{padding:48px 16px}.comparison-table td,.comparison-table th{padding:8px;font-size:11px}.faq-section,.pricing-page .cta-section{padding:48px 16px}.cta-card{padding:24px 16px}.cta-card .cta-content h2{font-size:24px}.orbit{width:140px;height:140px}}
|
|
File without changes
|
|
File without changes
|
/package/dist/dashboard/out/_next/static/chunks/{117-b2cd8d6485aacf2b.js → 117-b100311aff8d5c61.js}
RENAMED
|
File without changes
|
/package/dist/dashboard/out/_next/static/chunks/{648-8f3f26864ce515e5.js → 648-a13d3c2b1be45466.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|