@xopcai/xopc 0.0.6 → 0.0.11
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/dist/extensions/weixin/src/api/api.js +1 -1
- package/dist/extensions/weixin/src/cdn/upload.js +1 -1
- package/dist/extensions/weixin/src/media/data-url.js +1 -1
- package/dist/extensions/weixin/src/messaging/process-message.js +1 -1
- package/dist/gateway/static/root/assets/{agents-B6s2BvpH.js → agents-BdC4Y-HX.js} +2 -2
- package/dist/gateway/static/root/assets/agents-BdC4Y-HX.js.map +1 -0
- package/dist/gateway/static/root/assets/{apps-page-BtsZ5ZPx.js → apps-page-C-oaSHkm.js} +2 -2
- package/dist/gateway/static/root/assets/{apps-page-BtsZ5ZPx.js.map → apps-page-C-oaSHkm.js.map} +1 -1
- package/dist/gateway/static/root/assets/attachment-load-BDDlItdE.js +1 -0
- package/dist/gateway/static/root/assets/{channels-settings-BUfWBEVU.js → channels-settings-BqEUppPO.js} +2 -2
- package/dist/gateway/static/root/assets/{channels-settings-BUfWBEVU.js.map → channels-settings-BqEUppPO.js.map} +1 -1
- package/dist/gateway/static/root/assets/{chat-agents-api-BR30M2YQ.js → chat-agents-api-BhqjQ7iL.js} +2 -2
- package/dist/gateway/static/root/assets/{chat-agents-api-BR30M2YQ.js.map → chat-agents-api-BhqjQ7iL.js.map} +1 -1
- package/dist/gateway/static/root/assets/{cron-page-CMTx0Mjz.js → cron-page-Cli49RKR.js} +2 -2
- package/dist/gateway/static/root/assets/{cron-page-CMTx0Mjz.js.map → cron-page-Cli49RKR.js.map} +1 -1
- package/dist/gateway/static/root/assets/{cron-utils-BJma9IcD.js → cron-utils-Dkj-Ldpf.js} +2 -2
- package/dist/gateway/static/root/assets/{cron-utils-BJma9IcD.js.map → cron-utils-Dkj-Ldpf.js.map} +1 -1
- package/dist/gateway/static/root/assets/electron-env-BDtJw9AY.js +2 -0
- package/dist/gateway/static/root/assets/electron-env-BDtJw9AY.js.map +1 -0
- package/dist/gateway/static/root/assets/{extension-debug-page-BCVoNSo6.js → extension-debug-page-BMcZlaxF.js} +2 -2
- package/dist/gateway/static/root/assets/{extension-debug-page-BCVoNSo6.js.map → extension-debug-page-BMcZlaxF.js.map} +1 -1
- package/dist/gateway/static/root/assets/{extension-iframe-host-PWB-Pw2d.js → extension-iframe-host-D5HEF0KR.js} +2 -2
- package/dist/gateway/static/root/assets/{extension-iframe-host-PWB-Pw2d.js.map → extension-iframe-host-D5HEF0KR.js.map} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-D2tTklsD.js → extension-page-CXdCSSPl.js} +2 -2
- package/dist/gateway/static/root/assets/{extension-page-D2tTklsD.js.map → extension-page-CXdCSSPl.js.map} +1 -1
- package/dist/gateway/static/root/assets/{extension-provider-BpHodVRj.js → extension-provider-DZCZgQE2.js} +2 -2
- package/dist/gateway/static/root/assets/{extension-provider-BpHodVRj.js.map → extension-provider-DZCZgQE2.js.map} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-BEu6Xw1Z.js → extension-settings-page-CX6STpx3.js} +2 -2
- package/dist/gateway/static/root/assets/{extension-settings-page-BEu6Xw1Z.js.map → extension-settings-page-CX6STpx3.js.map} +1 -1
- package/dist/gateway/static/root/assets/{gateway-config-swr-C7ZFPhNj.js → gateway-config-swr-Cph02QZn.js} +2 -2
- package/dist/gateway/static/root/assets/{gateway-config-swr-C7ZFPhNj.js.map → gateway-config-swr-Cph02QZn.js.map} +1 -1
- package/dist/gateway/static/root/assets/index-Bty3m0mS.css +2 -0
- package/dist/gateway/static/root/assets/index-iTUyfzNr.js +16 -0
- package/dist/gateway/static/root/assets/index-iTUyfzNr.js.map +1 -0
- package/dist/gateway/static/root/assets/{logs-page-BpsxYdcL.js → logs-page-B9O5l3I8.js} +2 -2
- package/dist/gateway/static/root/assets/{logs-page-BpsxYdcL.js.map → logs-page-B9O5l3I8.js.map} +1 -1
- package/dist/gateway/static/root/assets/{model-selector-BiiDq8Pk.js → model-selector-BLiY_O25.js} +2 -2
- package/dist/gateway/static/root/assets/{model-selector-BiiDq8Pk.js.map → model-selector-BLiY_O25.js.map} +1 -1
- package/dist/gateway/static/root/assets/navigation-DB9S-C6S.js +2 -0
- package/dist/gateway/static/root/assets/navigation-DB9S-C6S.js.map +1 -0
- package/dist/gateway/static/root/assets/page-header-store-BFpnFTed.js +2 -0
- package/dist/gateway/static/root/assets/{page-header-store-HcRZK5CZ.js.map → page-header-store-BFpnFTed.js.map} +1 -1
- package/dist/gateway/static/root/assets/{session-api-DxNaAkmX.js → session-api-DEhQXWJg.js} +2 -2
- package/dist/gateway/static/root/assets/{session-api-DxNaAkmX.js.map → session-api-DEhQXWJg.js.map} +1 -1
- package/dist/gateway/static/root/assets/{session-working-directory-control-CDH-Wk4E.js → session-working-directory-control-DKOtWs3-.js} +3 -3
- package/dist/gateway/static/root/assets/{session-working-directory-control-CDH-Wk4E.js.map → session-working-directory-control-DKOtWs3-.js.map} +1 -1
- package/dist/gateway/static/root/assets/{sessions-page-5PK75r1n.js → sessions-page-BYlWP1ep.js} +2 -2
- package/dist/gateway/static/root/assets/{sessions-page-5PK75r1n.js.map → sessions-page-BYlWP1ep.js.map} +1 -1
- package/dist/gateway/static/root/assets/settings-page-oCnIavdg.js +2 -0
- package/dist/gateway/static/root/assets/settings-page-oCnIavdg.js.map +1 -0
- package/dist/gateway/static/root/assets/{skill-api-CxbNlOD_.js → skill-api-DWrn8Az0.js} +2 -2
- package/dist/gateway/static/root/assets/{skill-api-CxbNlOD_.js.map → skill-api-DWrn8Az0.js.map} +1 -1
- package/dist/gateway/static/root/assets/{skills-page-Dd8ZzYJb.js → skills-page-C59WQpM1.js} +2 -2
- package/dist/gateway/static/root/assets/{skills-page-Dd8ZzYJb.js.map → skills-page-C59WQpM1.js.map} +1 -1
- package/dist/gateway/static/root/assets/{theme-store-CPTH77BE.js → theme-store-CywXkKml.js} +2 -2
- package/dist/gateway/static/root/assets/{theme-store-CPTH77BE.js.map → theme-store-CywXkKml.js.map} +1 -1
- package/dist/gateway/static/root/assets/url-D7yWllI8.js +2 -0
- package/dist/gateway/static/root/assets/url-D7yWllI8.js.map +1 -0
- package/dist/gateway/static/root/assets/{useTranslation-BEUWOMuh.js → useTranslation-CACj0DBJ.js} +2 -2
- package/dist/gateway/static/root/assets/{useTranslation-BEUWOMuh.js.map → useTranslation-CACj0DBJ.js.map} +1 -1
- package/dist/gateway/static/root/index.html +16 -16
- package/dist/package.js +1 -1
- package/dist/src/agent/agent-manager.d.ts +1 -0
- package/dist/src/agent/agent-manager.js +17 -9
- package/dist/src/agent/agent-manager.js.map +1 -1
- package/dist/src/agent/background-review/run-background-review.js +2 -0
- package/dist/src/agent/background-review/run-background-review.js.map +1 -1
- package/dist/src/agent/child-agent-factory.js +2 -0
- package/dist/src/agent/child-agent-factory.js.map +1 -1
- package/dist/src/agent/context/expand-at-file-mentions.d.ts +4 -0
- package/dist/src/agent/context/expand-at-file-mentions.js +69 -0
- package/dist/src/agent/context/expand-at-file-mentions.js.map +1 -0
- package/dist/src/agent/context/workspace-seed.js +1 -1
- package/dist/src/agent/image/index.d.ts +0 -1
- package/dist/src/agent/image/index.js +1 -2
- package/dist/src/agent/image/understanding/pi-ai-provider.js.map +1 -1
- package/dist/src/agent/ipc/inbox.js +1 -1
- package/dist/src/agent/ipc/socket.js +1 -1
- package/dist/src/agent/memory/compaction.d.ts +1 -1
- package/dist/src/agent/memory/compaction.js +38 -11
- package/dist/src/agent/memory/compaction.js.map +1 -1
- package/dist/src/agent/memory/plugin-discovery.js +1 -1
- package/dist/src/agent/messaging/command-handler.d.ts +13 -0
- package/dist/src/agent/messaging/command-handler.js +14 -2
- package/dist/src/agent/messaging/command-handler.js.map +1 -1
- package/dist/src/agent/orchestration/agent-orchestrator.js +6 -1
- package/dist/src/agent/orchestration/agent-orchestrator.js.map +1 -1
- package/dist/src/agent/service.d.ts +16 -1
- package/dist/src/agent/service.js +175 -17
- package/dist/src/agent/service.js.map +1 -1
- package/dist/src/agent/skills/format-skills-prompt.js.map +1 -1
- package/dist/src/agent/skills/hub-hash.js +1 -1
- package/dist/src/agent/skills/hub-pull.js +1 -1
- package/dist/src/agent/skills/scanner.js +1 -1
- package/dist/src/agent/skills/skill-manage-ops.js +1 -1
- package/dist/src/agent/skills/skill-manage-ops.js.map +1 -1
- package/dist/src/agent/tools/browser/tools.js +2 -2
- package/dist/src/agent/tools/browser/tools.js.map +1 -1
- package/dist/src/agent/tools/image-generate-tool.js +1 -1
- package/dist/src/agent/tools/image-tool.js +2 -2
- package/dist/src/agent/tools/image-tool.js.map +1 -1
- package/dist/src/agent/tools/index.d.ts +1 -1
- package/dist/src/agent/tools/index.js +2 -2
- package/dist/src/agent/tools/read.d.ts +0 -2
- package/dist/src/agent/tools/read.js +1 -3
- package/dist/src/agent/tools/read.js.map +1 -1
- package/dist/src/agent/tools/skill-manage-tool.js +1 -1
- package/dist/src/agent/tools/write.js +1 -1
- package/dist/src/auth/credentials.js +2 -2
- package/dist/src/channels/attachments/inbound-persist.js +1 -1
- package/dist/src/channels/attachments/outbound-tts-persist.js +1 -1
- package/dist/src/channels/index.d.ts +1 -1
- package/dist/src/channels/index.js +2 -2
- package/dist/src/channels/pipeline.d.ts +8 -1
- package/dist/src/channels/pipeline.js +49 -4
- package/dist/src/channels/pipeline.js.map +1 -1
- package/dist/src/channels/plugin-types.d.ts +14 -0
- package/dist/src/chat-commands/builtins/config.d.ts +4 -0
- package/dist/src/chat-commands/builtins/config.js +197 -0
- package/dist/src/chat-commands/builtins/config.js.map +1 -0
- package/dist/src/chat-commands/builtins/context.d.ts +4 -0
- package/dist/src/chat-commands/builtins/context.js +44 -0
- package/dist/src/chat-commands/builtins/context.js.map +1 -0
- package/dist/src/chat-commands/builtins/session.js +111 -0
- package/dist/src/chat-commands/builtins/session.js.map +1 -1
- package/dist/src/chat-commands/builtins/thinking.js +49 -21
- package/dist/src/chat-commands/builtins/thinking.js.map +1 -1
- package/dist/src/chat-commands/config-paths.d.ts +10 -0
- package/dist/src/chat-commands/config-paths.js +45 -0
- package/dist/src/chat-commands/config-paths.js.map +1 -0
- package/dist/src/chat-commands/config-value.d.ts +12 -0
- package/dist/src/chat-commands/config-value.js +53 -0
- package/dist/src/chat-commands/config-value.js.map +1 -0
- package/dist/src/chat-commands/context.d.ts +24 -1
- package/dist/src/chat-commands/context.js +41 -0
- package/dist/src/chat-commands/context.js.map +1 -1
- package/dist/src/chat-commands/index.d.ts +2 -0
- package/dist/src/chat-commands/index.js +5 -1
- package/dist/src/chat-commands/index.js.map +1 -1
- package/dist/src/chat-commands/types.d.ts +33 -1
- package/dist/src/cli/commands/agent/interactive.js +1 -1
- package/dist/src/cli/commands/agent/interactive.js.map +1 -1
- package/dist/src/cli/commands/agent.js +21 -9
- package/dist/src/cli/commands/agent.js.map +1 -1
- package/dist/src/cli/commands/auth.js.map +1 -1
- package/dist/src/cli/commands/doctor/checks/channel-config.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/channel-config.js +113 -0
- package/dist/src/cli/commands/doctor/checks/channel-config.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/channel-plugins.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/channel-plugins.js +47 -0
- package/dist/src/cli/commands/doctor/checks/channel-plugins.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/config-health.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/config-health.js +82 -0
- package/dist/src/cli/commands/doctor/checks/config-health.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/cron-health.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/cron-health.js +116 -0
- package/dist/src/cli/commands/doctor/checks/cron-health.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/gateway-health.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/gateway-health.js +64 -0
- package/dist/src/cli/commands/doctor/checks/gateway-health.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/gateway-service.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/gateway-service.js +64 -0
- package/dist/src/cli/commands/doctor/checks/gateway-service.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/node-version.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/node-version.js +33 -0
- package/dist/src/cli/commands/doctor/checks/node-version.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/provider-auth.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/provider-auth.js +91 -0
- package/dist/src/cli/commands/doctor/checks/provider-auth.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/security-audit.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/security-audit.js +85 -0
- package/dist/src/cli/commands/doctor/checks/security-audit.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/session-integrity.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/session-integrity.js +118 -0
- package/dist/src/cli/commands/doctor/checks/session-integrity.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/state-integrity.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/state-integrity.js +99 -0
- package/dist/src/cli/commands/doctor/checks/state-integrity.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/version-check.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/version-check.js +71 -0
- package/dist/src/cli/commands/doctor/checks/version-check.js.map +1 -0
- package/dist/src/cli/commands/doctor/checks/workspace-status.d.ts +2 -0
- package/dist/src/cli/commands/doctor/checks/workspace-status.js +73 -0
- package/dist/src/cli/commands/doctor/checks/workspace-status.js.map +1 -0
- package/dist/src/cli/commands/doctor/flow.d.ts +9 -0
- package/dist/src/cli/commands/doctor/flow.js +51 -0
- package/dist/src/cli/commands/doctor/flow.js.map +1 -0
- package/dist/src/cli/commands/doctor/format.d.ts +6 -0
- package/dist/src/cli/commands/doctor/format.js +61 -0
- package/dist/src/cli/commands/doctor/format.js.map +1 -0
- package/dist/src/cli/commands/doctor/index.js +44 -0
- package/dist/src/cli/commands/doctor/index.js.map +1 -0
- package/dist/src/cli/commands/doctor/types.d.ts +20 -0
- package/dist/src/cli/commands/doctor/types.js +1 -0
- package/dist/src/cli/commands/extension.js +10 -0
- package/dist/src/cli/commands/extension.js.map +1 -1
- package/dist/src/cli/commands/init.js +1 -2
- package/dist/src/cli/commands/init.js.map +1 -1
- package/dist/src/cli/commands/session/utils.js.map +1 -1
- package/dist/src/cli/commands/update.d.ts +1 -0
- package/dist/src/cli/commands/update.js +171 -0
- package/dist/src/cli/commands/update.js.map +1 -0
- package/dist/src/cli/index.d.ts +2 -2
- package/dist/src/cli/index.js +4 -2
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/utils/init-workspace.js +1 -1
- package/dist/src/config/index.d.ts +1 -0
- package/dist/src/config/index.js +4 -3
- package/dist/src/config/index.js.map +1 -1
- package/dist/src/config/loader.js +1 -1
- package/dist/src/config/models-json.d.ts +15 -15
- package/dist/src/config/paths.js.map +1 -1
- package/dist/src/config/profile.js +1 -1
- package/dist/src/config/runtime-overrides.d.ts +8 -0
- package/dist/src/config/runtime-overrides.js +40 -0
- package/dist/src/config/runtime-overrides.js.map +1 -0
- package/dist/src/config/schema.d.ts +34 -104
- package/dist/src/config/schema.js +18 -39
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/cron/persistence.js +1 -1
- package/dist/src/cron/run-log-store.js +1 -1
- package/dist/src/daemon/launchd.js +2 -2
- package/dist/src/daemon/launchd.js.map +1 -1
- package/dist/src/daemon/systemd.js +2 -2
- package/dist/src/daemon/systemd.js.map +1 -1
- package/dist/src/extensions/health.js +1 -1
- package/dist/src/extensions/loader.d.ts +1 -1
- package/dist/src/extensions/loader.js +5 -8
- package/dist/src/extensions/loader.js.map +1 -1
- package/dist/src/extensions/lockfile.js +1 -1
- package/dist/src/extensions/sdk/index.js +6 -1
- package/dist/src/extensions/sdk/index.js.map +1 -0
- package/dist/src/gateway/agents-admin.js +1 -1
- package/dist/src/gateway/agents-admin.js.map +1 -1
- package/dist/src/gateway/hono/lib/static-ui.js +1 -1
- package/dist/src/gateway/hono/oauth.js +1 -1
- package/dist/src/gateway/hono/routes/config.js +1 -1
- package/dist/src/gateway/hono/routes/doctor.d.ts +3 -0
- package/dist/src/gateway/hono/routes/doctor.js +35 -0
- package/dist/src/gateway/hono/routes/doctor.js.map +1 -0
- package/dist/src/gateway/hono/routes/index.js +4 -0
- package/dist/src/gateway/hono/routes/index.js.map +1 -1
- package/dist/src/gateway/hono/routes/models.js +64 -11
- package/dist/src/gateway/hono/routes/models.js.map +1 -1
- package/dist/src/gateway/hono/routes/public-gateway.js +10 -0
- package/dist/src/gateway/hono/routes/public-gateway.js.map +1 -1
- package/dist/src/gateway/hono/routes/update.d.ts +3 -0
- package/dist/src/gateway/hono/routes/update.js +141 -0
- package/dist/src/gateway/hono/routes/update.js.map +1 -0
- package/dist/src/gateway/hono/routes/workspace.js +82 -2
- package/dist/src/gateway/hono/routes/workspace.js.map +1 -1
- package/dist/src/gateway/lock.js +1 -1
- package/dist/src/gateway/ports.js +98 -3
- package/dist/src/gateway/ports.js.map +1 -1
- package/dist/src/gateway/service.d.ts +1 -4
- package/dist/src/gateway/service.js +13 -20
- package/dist/src/gateway/service.js.map +1 -1
- package/dist/src/gateway/workspace-fs-file-list.d.ts +5 -0
- package/dist/src/gateway/workspace-fs-file-list.js +56 -0
- package/dist/src/gateway/workspace-fs-file-list.js.map +1 -0
- package/dist/src/gateway/workspace-heartbeat-path.js +1 -1
- package/dist/src/gateway/workspace-ripgrep.d.ts +5 -0
- package/dist/src/gateway/workspace-ripgrep.js +88 -4
- package/dist/src/gateway/workspace-ripgrep.js.map +1 -1
- package/dist/src/infra/update-channels.d.ts +14 -0
- package/dist/src/infra/update-channels.js +30 -0
- package/dist/src/infra/update-channels.js.map +1 -0
- package/dist/src/infra/update-check.d.ts +53 -0
- package/dist/src/infra/update-check.js +155 -0
- package/dist/src/infra/update-check.js.map +1 -0
- package/dist/src/infra/update-runner.d.ts +18 -0
- package/dist/src/infra/update-runner.js +112 -0
- package/dist/src/infra/update-runner.js.map +1 -0
- package/dist/src/infra/update-startup.d.ts +20 -0
- package/dist/src/infra/update-startup.js +246 -0
- package/dist/src/infra/update-startup.js.map +1 -0
- package/dist/src/providers/extension-stream-bridge.d.ts +3 -0
- package/dist/src/providers/extension-stream-bridge.js +239 -0
- package/dist/src/providers/extension-stream-bridge.js.map +1 -0
- package/dist/src/providers/index.d.ts +7 -2
- package/dist/src/providers/index.js +77 -14
- package/dist/src/providers/index.js.map +1 -1
- package/dist/src/providers/model-registry.js +1 -1
- package/dist/src/providers/plugin-registry.js +92 -87
- package/dist/src/providers/plugin-registry.js.map +1 -1
- package/dist/src/routing/bindings.js +1 -1
- package/dist/src/routing/index.d.ts +1 -1
- package/dist/src/routing/index.js +2 -2
- package/dist/src/routing/index.js.map +1 -1
- package/dist/src/routing/resolve-route.js +1 -1
- package/dist/src/routing/session-key.d.ts +0 -5
- package/dist/src/routing/session-key.js +1 -27
- package/dist/src/routing/session-key.js.map +1 -1
- package/dist/src/session/chat-export.d.ts +5 -0
- package/dist/src/session/chat-export.js +35 -0
- package/dist/src/session/chat-export.js.map +1 -0
- package/dist/src/session/config-store.js +1 -1
- package/dist/src/session/manager.d.ts +1 -1
- package/dist/src/session/manager.js +2 -2
- package/dist/src/session/manager.js.map +1 -1
- package/dist/src/session/store.d.ts +1 -1
- package/dist/src/session/store.js +3 -7
- package/dist/src/session/store.js.map +1 -1
- package/dist/src/session/types.d.ts +0 -10
- package/dist/src/session/types.js.map +1 -1
- package/dist/src/utils/logger/audit.js +1 -1
- package/dist/src/utils/logger/log-store.js +1 -1
- package/dist/src/utils/logger/rotation.js +1 -1
- package/dist/src/voice/tts/audio.js +1 -1
- package/package.json +2 -2
- package/dist/gateway/static/root/assets/agents-B6s2BvpH.js.map +0 -1
- package/dist/gateway/static/root/assets/attachment-load-6pRlDPZ8.js +0 -1
- package/dist/gateway/static/root/assets/index-DBZ5eXW5.js +0 -16
- package/dist/gateway/static/root/assets/index-DBZ5eXW5.js.map +0 -1
- package/dist/gateway/static/root/assets/index-KsVMH-Jo.css +0 -2
- package/dist/gateway/static/root/assets/navigation-BpLKd2Ca.js +0 -2
- package/dist/gateway/static/root/assets/navigation-BpLKd2Ca.js.map +0 -1
- package/dist/gateway/static/root/assets/page-header-store-HcRZK5CZ.js +0 -2
- package/dist/gateway/static/root/assets/preference-select-fields-B4AJBqUY.js +0 -2
- package/dist/gateway/static/root/assets/preference-select-fields-B4AJBqUY.js.map +0 -1
- package/dist/gateway/static/root/assets/settings-page-BvSj0JqX.js +0 -2
- package/dist/gateway/static/root/assets/settings-page-BvSj0JqX.js.map +0 -1
- package/dist/gateway/static/root/assets/url-QmwQTJ-j.js +0 -2
- package/dist/gateway/static/root/assets/url-QmwQTJ-j.js.map +0 -1
- package/dist/src/acp/commands.d.ts +0 -11
- package/dist/src/acp/commands.js +0 -17
- package/dist/src/acp/commands.js.map +0 -1
- package/dist/src/acp/control-plane/identity-reconcile.d.ts +0 -36
- package/dist/src/acp/control-plane/identity-reconcile.js +0 -124
- package/dist/src/acp/control-plane/identity-reconcile.js.map +0 -1
- package/dist/src/acp/control-plane/index.d.ts +0 -10
- package/dist/src/acp/control-plane/index.js +0 -6
- package/dist/src/acp/control-plane/manager.d.ts +0 -86
- package/dist/src/acp/control-plane/manager.js +0 -502
- package/dist/src/acp/control-plane/manager.js.map +0 -1
- package/dist/src/acp/control-plane/manager.types.d.ts +0 -125
- package/dist/src/acp/control-plane/manager.types.js +0 -14
- package/dist/src/acp/control-plane/manager.types.js.map +0 -1
- package/dist/src/acp/control-plane/manager.utils.d.ts +0 -29
- package/dist/src/acp/control-plane/manager.utils.js +0 -46
- package/dist/src/acp/control-plane/manager.utils.js.map +0 -1
- package/dist/src/acp/control-plane/runtime-cache-manager.d.ts +0 -49
- package/dist/src/acp/control-plane/runtime-cache-manager.js +0 -155
- package/dist/src/acp/control-plane/runtime-cache-manager.js.map +0 -1
- package/dist/src/acp/control-plane/runtime-cache.d.ts +0 -45
- package/dist/src/acp/control-plane/runtime-cache.js +0 -58
- package/dist/src/acp/control-plane/runtime-cache.js.map +0 -1
- package/dist/src/acp/control-plane/runtime-options.d.ts +0 -30
- package/dist/src/acp/control-plane/runtime-options.js +0 -92
- package/dist/src/acp/control-plane/runtime-options.js.map +0 -1
- package/dist/src/acp/control-plane/session-actor-queue.d.ts +0 -22
- package/dist/src/acp/control-plane/session-actor-queue.js +0 -70
- package/dist/src/acp/control-plane/session-actor-queue.js.map +0 -1
- package/dist/src/acp/control-plane/session-lifecycle-manager.d.ts +0 -59
- package/dist/src/acp/control-plane/session-lifecycle-manager.js +0 -209
- package/dist/src/acp/control-plane/session-lifecycle-manager.js.map +0 -1
- package/dist/src/acp/control-plane/session-store.d.ts +0 -39
- package/dist/src/acp/control-plane/session-store.js +0 -149
- package/dist/src/acp/control-plane/session-store.js.map +0 -1
- package/dist/src/acp/control-plane/turn-manager.d.ts +0 -40
- package/dist/src/acp/control-plane/turn-manager.js +0 -134
- package/dist/src/acp/control-plane/turn-manager.js.map +0 -1
- package/dist/src/acp/event-mapper.d.ts +0 -48
- package/dist/src/acp/event-mapper.js +0 -94
- package/dist/src/acp/event-mapper.js.map +0 -1
- package/dist/src/acp/index.d.ts +0 -10
- package/dist/src/acp/index.js +0 -5
- package/dist/src/acp/meta.d.ts +0 -15
- package/dist/src/acp/meta.js +0 -36
- package/dist/src/acp/meta.js.map +0 -1
- package/dist/src/acp/routing-integration.d.ts +0 -37
- package/dist/src/acp/routing-integration.js +0 -58
- package/dist/src/acp/routing-integration.js.map +0 -1
- package/dist/src/acp/runtime/backends/index.d.ts +0 -4
- package/dist/src/acp/runtime/backends/index.js +0 -2
- package/dist/src/acp/runtime/backends/local.d.ts +0 -136
- package/dist/src/acp/runtime/backends/local.js +0 -603
- package/dist/src/acp/runtime/backends/local.js.map +0 -1
- package/dist/src/acp/runtime/error-text.d.ts +0 -16
- package/dist/src/acp/runtime/error-text.js +0 -40
- package/dist/src/acp/runtime/error-text.js.map +0 -1
- package/dist/src/acp/runtime/errors.d.ts +0 -31
- package/dist/src/acp/runtime/errors.js +0 -47
- package/dist/src/acp/runtime/errors.js.map +0 -1
- package/dist/src/acp/runtime/index.d.ts +0 -7
- package/dist/src/acp/runtime/index.js +0 -4
- package/dist/src/acp/runtime/registry.d.ts +0 -35
- package/dist/src/acp/runtime/registry.js +0 -85
- package/dist/src/acp/runtime/registry.js.map +0 -1
- package/dist/src/acp/runtime/session-identity.d.ts +0 -35
- package/dist/src/acp/runtime/session-identity.js +0 -134
- package/dist/src/acp/runtime/session-identity.js.map +0 -1
- package/dist/src/acp/runtime/types.d.ts +0 -214
- package/dist/src/acp/secret-file.d.ts +0 -7
- package/dist/src/acp/secret-file.js +0 -19
- package/dist/src/acp/secret-file.js.map +0 -1
- package/dist/src/acp/server.d.ts +0 -48
- package/dist/src/acp/server.js +0 -300
- package/dist/src/acp/server.js.map +0 -1
- package/dist/src/acp/session.d.ts +0 -29
- package/dist/src/acp/session.js +0 -30
- package/dist/src/acp/session.js.map +0 -1
- package/dist/src/acp/types.d.ts +0 -39
- package/dist/src/acp/types.js +0 -13
- package/dist/src/acp/types.js.map +0 -1
- package/dist/src/agent/image/describe-images.d.ts +0 -18
- package/dist/src/agent/image/describe-images.js +0 -19
- package/dist/src/agent/image/describe-images.js.map +0 -1
- package/dist/src/cli/commands/acp.d.ts +0 -4
- package/dist/src/cli/commands/acp.js +0 -200
- package/dist/src/cli/commands/acp.js.map +0 -1
- /package/dist/src/{acp/runtime/types.js → cli/commands/doctor/index.d.ts} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
|
|
2
|
-
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--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-divide-x-reverse:0;--tw-border-style:solid;--tw-divide-y-reverse:0;--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-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-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}::backdrop{--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-divide-x-reverse:0;--tw-border-style:solid;--tw-divide-y-reverse:0;--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-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-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", system-ui, "Segoe UI", Roboto, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", "Microsoft YaHei", 微软雅黑, sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Monaco, Consolas, monospace;--color-red-50:#fef2f2;--color-red-100:#ffe2e2;--color-red-200:#ffcaca;--color-red-300:#ffa3a3;--color-red-400:#ff6568;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-red-700:#bf000f;--color-red-800:#9f0712;--color-red-900:#82181a;--color-red-950:#460809;--color-amber-50:#fffbeb;--color-amber-100:#fef3c6;--color-amber-200:#fee685;--color-amber-500:#f99c00;--color-amber-800:#953d00;--color-amber-900:#7b3306;--color-amber-950:#461901;--color-yellow-400:#fac800;--color-yellow-600:#cd8900;--color-green-400:#05df72;--color-green-600:#00a544;--color-emerald-50:#ecfdf5;--color-emerald-100:#d0fae5;--color-emerald-200:#a4f4cf;--color-emerald-300:#5ee9b5;--color-emerald-400:#00d294;--color-emerald-500:#00bb7f;--color-emerald-600:#009767;--color-emerald-700:#007956;--color-emerald-800:#005f46;--color-emerald-900:#004e3b;--color-emerald-950:#002c22;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bedbff;--color-blue-400:#54a2ff;--color-blue-600:#155dfc;--color-blue-800:#193cb8;--color-blue-900:#1c398e;--color-blue-950:#162456;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-4xl:2.25rem;--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-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.625rem;--radius-md:.75rem;--radius-lg:.875rem;--radius-xl:1.125rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-surface-base:#f5f5f7;--color-surface-panel:#fff;--color-surface-hover:#e8e8ed;--color-surface-active:#dcdcde;--color-fg:#1d1d1f;--color-fg-muted:#6e6e73;--color-fg-subtle:#86868b;--color-fg-disabled:#aeaeb2;--color-edge-subtle:#ebebed;--color-edge:#d2d2d7;--color-edge-strong:#bcbcc0;--color-accent:#2563eb;--color-accent-hover:#1d4ed8;--color-accent-soft:#eff6ff;--color-accent-fg:#2563eb;--color-checkbox-accent:#3c3c43;--color-success:#059669;--color-success-soft:#d1fae5;--color-danger:#dc2626;--color-warning:#d97706;--color-scrim:#0000005c;--radius-pill:9999px;--max-width-app-main:56rem;--max-width-chat:52rem}@supports (color:lab(0% 0 0)){:root,:host{--color-red-50:lab(96.5005% 4.18508 1.52328);--color-red-100:lab(92.243% 10.2865 3.83865);--color-red-200:lab(86.017% 19.8815 7.75869);--color-red-300:lab(76.5514% 36.422 15.5335);--color-red-400:lab(63.7053% 60.745 31.3109);--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-700:lab(40.4273% 67.2623 53.7441);--color-red-800:lab(33.7174% 55.8993 41.0293);--color-red-900:lab(28.5139% 44.5539 29.0463);--color-red-950:lab(13.003% 29.04 16.7519);--color-amber-50:lab(98.6252% -.635922 8.42309);--color-amber-100:lab(95.916% -1.21653 23.111);--color-amber-200:lab(91.7203% -.505269 49.9084);--color-amber-500:lab(72.7183% 31.8672 97.9407);--color-amber-800:lab(37.8822% 37.1699 52.2718);--color-amber-900:lab(31.2288% 30.2627 40.0378);--color-amber-950:lab(15.8111% 20.9107 23.3752);--color-yellow-400:lab(83.2664% 8.65132 106.895);--color-yellow-600:lab(62.7799% 22.4197 86.1544);--color-green-400:lab(78.503% -64.9265 39.7492);--color-green-600:lab(59.0978% -58.6621 41.2579);--color-emerald-50:lab(97.8462% -6.94966 1.85487);--color-emerald-100:lab(94.9004% -17.0769 5.63836);--color-emerald-200:lab(90.2247% -31.039 9.47084);--color-emerald-300:lab(83.9203% -48.7124 13.8849);--color-emerald-400:lab(75.0771% -60.7313 19.4147);--color-emerald-500:lab(66.9756% -58.27 19.5419);--color-emerald-600:lab(55.0481% -49.9246 15.93);--color-emerald-700:lab(44.4871% -41.0396 11.0361);--color-emerald-800:lab(35.3675% -33.1188 8.04002);--color-emerald-900:lab(28.8637% -26.9249 5.45986);--color-emerald-950:lab(15.0582% -17.9507 2.38369);--color-blue-50:lab(96.492% -1.14644 -5.11479);--color-blue-100:lab(92.0301% -2.24757 -11.6453);--color-blue-200:lab(86.15% -4.04379 -21.0797);--color-blue-400:lab(65.0361% -1.42065 -56.9802);--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-800:lab(30.2514% 27.7853 -70.2699);--color-blue-900:lab(26.1542% 15.7545 -51.5504);--color-blue-950:lab(15.6723% 8.86232 -32.2945)}}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{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}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{box-sizing:border-box}html{height:100%;font-family:var(--font-sans);background-color:var(--color-surface-base);color:var(--color-fg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:100%;overflow:hidden}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}html[data-font-scale=compact]{font-size:87.5%}html[data-font-scale=large]{font-size:112.5%}body{letter-spacing:-.006em;height:100%;min-height:100%;margin:0;font-size:.9375rem;line-height:1.47059;overflow:hidden}#root{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}::selection{background:var(--color-accent-soft);color:var(--color-accent-fg)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}:focus-visible:not(input):not(textarea){border-radius:var(--radius-sm)}:focus:not(:focus-visible){outline:none}input:focus,input:focus-visible,textarea:focus,textarea:focus-visible,select:focus,select:focus-visible{outline-offset:0;box-shadow:none;outline:none}}@layer components{.ui-checkbox{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);cursor:pointer;border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-edge);background-color:var(--color-surface-panel);accent-color:var(--color-checkbox-accent);border-radius:.25rem;flex-shrink:0}.ui-checkbox:disabled{cursor:not-allowed;opacity:.5}.ui-select{border-radius:var(--radius-lg);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-edge-subtle);background-color:var(--color-surface-panel);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-leading:var(--leading-snug);line-height:var(--leading-snug);--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--color-fg);cursor:pointer;transition-property:border-color,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:var(--ease-out);transition-duration:.15s;transition-timing-function:var(--ease-out)}@media (hover:hover){.ui-select:hover{border-color:var(--color-edge);background-color:#e8e8ed73}@supports (color:color-mix(in lab, red, red)){.ui-select:hover{background-color:color-mix(in oklab, var(--color-surface-hover) 45%, transparent)}}}.ui-select:focus,.ui-select:focus-visible{--tw-outline-style:none;outline-style:none}.ui-select:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ui-select:focus-visible{--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);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);border-color:var(--color-edge)}html.dark .ui-select{border-color:var(--color-edge-subtle);background-color:var(--color-surface-panel)}html.dark .ui-select:hover{border-color:var(--color-edge);background-color:#e8e8ed8c}@supports (color:color-mix(in lab, red, red)){html.dark .ui-select:hover{background-color:color-mix(in oklab, var(--color-surface-hover) 55%, transparent)}}.ui-select:disabled{cursor:not-allowed;opacity:.5}.chat-skill-pill{max-width:100%;padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * .5);vertical-align:baseline;--tw-leading:calc(var(--spacing) * 5);font-size:.9375rem;line-height:calc(var(--spacing) * 5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:#8a8a2e;background-color:#f5f5e6;border-radius:3.40282e38px;flex-shrink:0;align-items:center;display:inline-flex}html.dark .chat-skill-pill{color:#c4c47a;background-color:#2d2d24}.composer-input{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;position:relative}.composer-input-empty:before{content:attr(data-placeholder);color:var(--color-fg-disabled);pointer-events:none}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-4{inset:calc(var(--spacing) * 4)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-1{top:calc(var(--spacing) * -1)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-3{top:calc(var(--spacing) * 3)}.top-full{top:100%}.-right-1{right:calc(var(--spacing) * -1)}.right-0{right:calc(var(--spacing) * 0)}.right-1{right:calc(var(--spacing) * 1)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-6{right:calc(var(--spacing) * 6)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-1{bottom:calc(var(--spacing) * 1)}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-\[calc\(11rem\+env\(safe-area-inset-bottom\,0px\)\)\]{bottom:calc(11rem + env(safe-area-inset-bottom,0px))}.left-0{left:calc(var(--spacing) * 0)}.left-0\.5{left:calc(var(--spacing) * .5)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing) * 3)}.left-full{left:100%}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.z-\[2\]{z-index:2}.z-\[55\]{z-index:55}.z-\[60\]{z-index:60}.z-\[62\]{z-index:62}.z-\[65\]{z-index:65}.z-\[66\]{z-index:66}.z-\[70\]{z-index:70}.z-\[80\]{z-index:80}.z-\[81\]{z-index:81}.z-\[100\]{z-index:100}.z-\[120\]{z-index:120}.z-\[130\]{z-index:130}.z-\[131\]{z-index:131}.z-\[200\]{z-index:200}.z-\[201\]{z-index:201}.order-1{order:1}.order-2{order:2}.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)}.mx-1\.5{margin-inline:calc(var(--spacing) * 1.5)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-2{margin-block:calc(var(--spacing) * 2)}.my-4{margin-block:calc(var(--spacing) * 4)}.-mt-2{margin-top: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-2\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.-mb-px{margin-bottom:-1px}.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-2{margin-left:calc(var(--spacing) * -2)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.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}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-4{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.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}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-14{width:calc(var(--spacing) * 14);height:calc(var(--spacing) * 14)}.size-16{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16)}.size-\[1\.35rem\]{width:1.35rem;height:1.35rem}.size-\[4\.5rem\]{width:4.5rem;height:4.5rem}.size-\[18px\]{width:18px;height:18px}.size-full{width:100%;height:100%}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.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-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-36{height:calc(var(--spacing) * 36)}.h-40{height:calc(var(--spacing) * 40)}.h-52{height:calc(var(--spacing) * 52)}.h-\[100dvh\]{height:100dvh}.h-\[calc\(100dvh-2rem\)\]{height:calc(100dvh - 2rem)}.h-\[min\(18rem\,40vh\)\]{height:min(18rem,40vh)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-16{max-height:calc(var(--spacing) * 16)}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[4\.5rem\]{max-height:4.5rem}.max-h-\[calc\(100dvh-2rem\)\]{max-height:calc(100dvh - 2rem)}.max-h-\[min\(16rem\,calc\(100vh-10rem\)\)\]{max-height:min(16rem,100vh - 10rem)}.max-h-\[min\(20rem\,calc\(100vh-6rem\)\)\]{max-height:min(20rem,100vh - 6rem)}.max-h-\[min\(24rem\,50vh\)\]{max-height:min(24rem,50vh)}.max-h-\[min\(24rem\,55vh\)\]{max-height:min(24rem,55vh)}.max-h-\[min\(30vh\,11rem\)\]{max-height:min(30vh,11rem)}.max-h-\[min\(32rem\,85vh\)\]{max-height:min(32rem,85vh)}.max-h-\[min\(32rem\,90vh\)\]{max-height:min(32rem,90vh)}.max-h-\[min\(42vh\,20rem\)\]{max-height:min(42vh,20rem)}.max-h-\[min\(50vh\,20rem\)\]{max-height:min(50vh,20rem)}.max-h-\[min\(90vh\,32rem\)\]{max-height:min(90vh,32rem)}.max-h-\[min\(90vh\,44rem\)\]{max-height:min(90vh,44rem)}.max-h-\[min\(90vh\,48rem\)\]{max-height:min(90vh,48rem)}.max-h-\[min\(90vh\,52rem\)\]{max-height:min(90vh,52rem)}.max-h-\[min\(90vh\,56rem\)\]{max-height:min(90vh,56rem)}.max-h-\[min\(90vh\,640px\)\]{max-height:min(90vh,640px)}.max-h-\[min\(90vh\,720px\)\]{max-height:min(90vh,720px)}.max-h-\[min\(90vh\,800px\)\]{max-height:min(90vh,800px)}.max-h-\[min\(90vh\,840px\)\]{max-height:min(90vh,840px)}.max-h-\[min\(100\%\,calc\(100dvh-9rem\)\)\]{max-height:min(100%,100dvh - 9rem)}.max-h-\[min\(100vh-2rem\,44rem\)\]{max-height:min(100vh - 2rem,44rem)}.max-h-full{max-height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-8{min-height:calc(var(--spacing) * 8)}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-\[1\.125rem\]{min-height:1.125rem}.min-h-\[1\.3125rem\]{min-height:1.3125rem}.min-h-\[2\.5rem\]{min-height:2.5rem}.min-h-\[2\.75rem\]{min-height:2.75rem}.min-h-\[4\.5rem\]{min-height:4.5rem}.min-h-\[5\.5rem\]{min-height:5.5rem}.min-h-\[7\.5rem\]{min-height:7.5rem}.min-h-\[11rem\]{min-height:11rem}.min-h-\[12rem\]{min-height:12rem}.min-h-\[44px\]{min-height:44px}.min-h-\[88px\]{min-height:88px}.min-h-\[100px\]{min-height:100px}.min-h-\[140px\]{min-height:140px}.min-h-\[200px\]{min-height:200px}.min-h-\[320px\]{min-height:320px}.min-h-\[min\(40vh\,16rem\)\]{min-height:min(40vh,16rem)}.min-h-\[min\(40vh\,20rem\)\]{min-height:min(40vh,20rem)}.min-h-full{min-height:100%}.w-0\.5{width:calc(var(--spacing) * .5)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\/3{width:66.6667%}.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-5\/6{width:83.3333%}.w-6{width:calc(var(--spacing) * 6)}.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-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-52{width:calc(var(--spacing) * 52)}.w-64{width:calc(var(--spacing) * 64)}.w-80{width:calc(var(--spacing) * 80)}.w-\[4\.5rem\]{width:4.5rem}.w-\[5\.25rem\]{width:5.25rem}.w-\[9\.25rem\]{width:9.25rem}.w-\[min\(22rem\,calc\(100vw-2rem\)\)\]{width:min(22rem,100vw - 2rem)}.w-\[min\(28rem\,calc\(100vw-2rem\)\)\]{width:min(28rem,100vw - 2rem)}.w-\[min\(42rem\,calc\(100vw-1\.5rem\)\)\]{width:min(42rem,100vw - 1.5rem)}.w-\[min\(100\%\,var\(--max-width-app-main\)\)\]{width:min(100%, var(--max-width-app-main))}.w-\[min\(100\%-2rem\,22rem\)\]{width:min(100% - 2rem,22rem)}.w-\[min\(100\%-2rem\,24rem\)\]{width:min(100% - 2rem,24rem)}.w-\[min\(100\%-2rem\,26rem\)\]{width:min(100% - 2rem,26rem)}.w-\[min\(100\%-2rem\,28rem\)\]{width:min(100% - 2rem,28rem)}.w-\[min\(100\%-2rem\,32rem\)\]{width:min(100% - 2rem,32rem)}.w-\[min\(100\%-2rem\,36rem\)\]{width:min(100% - 2rem,36rem)}.w-\[min\(100\%-2rem\,min\(92vw\,48rem\)\)\]{width:min(100% - 2rem,min(92vw,48rem))}.w-\[min\(100\%-2rem\,min\(92vw\,56rem\)\)\]{width:min(100% - 2rem,min(92vw,56rem))}.w-\[min\(calc\(100vw-2rem\)\,15rem\)\]{width:min(100vw - 2rem,15rem)}.w-\[min\(calc\(100vw-2rem\)\,20rem\)\]{width:min(100vw - 2rem,20rem)}.w-\[var\(--radix-popover-trigger-width\)\]{width:var(--radix-popover-trigger-width)}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:max-content}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-40{max-width:calc(var(--spacing) * 40)}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-\[7rem\]{max-width:7rem}.max-w-\[8rem\]{max-width:8rem}.max-w-\[10rem\]{max-width:10rem}.max-w-\[11rem\]{max-width:11rem}.max-w-\[12rem\]{max-width:12rem}.max-w-\[14rem\]{max-width:14rem}.max-w-\[16rem\]{max-width:16rem}.max-w-\[200px\]{max-width:200px}.max-w-\[min\(6\.5rem\,30vw\)\]{max-width:min(6.5rem,30vw)}.max-w-\[min\(10rem\,calc\(100vw-12rem\)\)\]{max-width:min(10rem,100vw - 12rem)}.max-w-\[min\(12rem\,40vw\)\]{max-width:min(12rem,40vw)}.max-w-\[min\(16rem\,48vw\)\]{max-width:min(16rem,48vw)}.max-w-\[min\(20rem\,calc\(100vw-10rem\)\)\]{max-width:min(20rem,100vw - 10rem)}.max-w-\[min\(32rem\,calc\(100vw-8rem\)\)\]{max-width:min(32rem,100vw - 8rem)}.max-w-\[min\(85\%\,var\(--max-width-chat\)\)\]{max-width:min(85%, var(--max-width-chat))}.max-w-\[min\(100\%\,12rem\)\]{max-width:min(100%,12rem)}.max-w-\[min\(280px\,90vw\)\]{max-width:min(280px,90vw)}.max-w-\[min\(calc\(100vw-1rem\)\,28rem\)\]{max-width:min(100vw - 1rem,28rem)}.max-w-\[min\(calc\(100vw-2rem\)\,16rem\)\]{max-width:min(100vw - 2rem,16rem)}.max-w-\[var\(--max-width-chat\)\]{max-width:var(--max-width-chat)}.max-w-app-main{max-width:var(--max-width-app-main)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-\[4\.5rem\]{min-width:4.5rem}.min-w-\[4\.25rem\]{min-width:4.25rem}.min-w-\[4rem\]{min-width:4rem}.min-w-\[5rem\]{min-width:5rem}.min-w-\[6\.5rem\]{min-width:6.5rem}.min-w-\[7\.5rem\]{min-width:7.5rem}.min-w-\[8\.5rem\]{min-width:8.5rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[9\.5rem\]{min-width:9.5rem}.min-w-\[9rem\]{min-width:9rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[11rem\]{min-width:11rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[32rem\]{min-width:32rem}.min-w-\[44px\]{min-width:44px}.min-w-\[700px\]{min-width:700px}.min-w-\[min\(16rem\,90vw\)\]{min-width:min(16rem,90vw)}.min-w-\[min\(100\%\,36rem\)\]{min-width:min(100%,36rem)}.min-w-\[min\(240px\,85vw\)\]{min-width:min(240px,85vw)}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-5{--tw-translate-x:calc(var(--spacing) * 5);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.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-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.cursor-wait{cursor:wait}.touch-none{touch-action:none}.resize{resize:both}.resize-y{resize:vertical}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{appearance: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-\[5\.5rem_1fr\]{grid-template-columns:5.5rem 1fr}.grid-cols-\[auto_minmax\(0\,1fr\)_auto\]{grid-template-columns:auto minmax(0,1fr) auto}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.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)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-px{gap:1px}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}: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-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * 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)))}.gap-x-0\.5{column-gap:calc(var(--spacing) * .5)}.gap-x-1\.5{column-gap:calc(var(--spacing) * 1.5)}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-0{row-gap:calc(var(--spacing) * 0)}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px * var(--tw-divide-x-reverse));border-inline-end-width:calc(1px * calc(1 - var(--tw-divide-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-edge>:not(:last-child)){border-color:var(--color-edge)}:where(.divide-edge-subtle>:not(:last-child)){border-color:var(--color-edge-subtle)}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.overscroll-y-contain{overscroll-behavior-y:contain}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-pill{border-radius:var(--radius-pill)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.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-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-accent{border-color:var(--color-accent)}.border-accent\/25{border-color:#2563eb40}@supports (color:color-mix(in lab, red, red)){.border-accent\/25{border-color:color-mix(in oklab, var(--color-accent) 25%, transparent)}}.border-accent\/40{border-color:#2563eb66}@supports (color:color-mix(in lab, red, red)){.border-accent\/40{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.border-amber-100{border-color:var(--color-amber-100)}.border-amber-200{border-color:var(--color-amber-200)}.border-amber-500{border-color:var(--color-amber-500)}.border-amber-500\/40{border-color:#f99c0066}@supports (color:color-mix(in lab, red, red)){.border-amber-500\/40{border-color:color-mix(in oklab, var(--color-amber-500) 40%, transparent)}}.border-blue-200\/80{border-color:#bedbffcc}@supports (color:color-mix(in lab, red, red)){.border-blue-200\/80{border-color:color-mix(in oklab, var(--color-blue-200) 80%, transparent)}}.border-danger\/30{border-color:#dc26264d}@supports (color:color-mix(in lab, red, red)){.border-danger\/30{border-color:color-mix(in oklab, var(--color-danger) 30%, transparent)}}.border-danger\/35{border-color:#dc262659}@supports (color:color-mix(in lab, red, red)){.border-danger\/35{border-color:color-mix(in oklab, var(--color-danger) 35%, transparent)}}.border-danger\/40{border-color:#dc262666}@supports (color:color-mix(in lab, red, red)){.border-danger\/40{border-color:color-mix(in oklab, var(--color-danger) 40%, transparent)}}.border-edge{border-color:var(--color-edge)}.border-edge-subtle{border-color:var(--color-edge-subtle)}.border-edge-subtle\/60{border-color:#ebebed99}@supports (color:color-mix(in lab, red, red)){.border-edge-subtle\/60{border-color:color-mix(in oklab, var(--color-edge-subtle) 60%, transparent)}}.border-edge-subtle\/80{border-color:#ebebedcc}@supports (color:color-mix(in lab, red, red)){.border-edge-subtle\/80{border-color:color-mix(in oklab, var(--color-edge-subtle) 80%, transparent)}}.border-edge-subtle\/90{border-color:#ebebede6}@supports (color:color-mix(in lab, red, red)){.border-edge-subtle\/90{border-color:color-mix(in oklab, var(--color-edge-subtle) 90%, transparent)}}.border-edge\/60{border-color:#d2d2d799}@supports (color:color-mix(in lab, red, red)){.border-edge\/60{border-color:color-mix(in oklab, var(--color-edge) 60%, transparent)}}.border-emerald-200{border-color:var(--color-emerald-200)}.border-emerald-500\/40{border-color:#00bb7f66}@supports (color:color-mix(in lab, red, red)){.border-emerald-500\/40{border-color:color-mix(in oklab, var(--color-emerald-500) 40%, transparent)}}.border-fg{border-color:var(--color-fg)}.border-red-100{border-color:var(--color-red-100)}.border-red-200{border-color:var(--color-red-200)}.border-red-500{border-color:var(--color-red-500)}.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-red-500\/40{border-color:#fb2c3666}@supports (color:color-mix(in lab, red, red)){.border-red-500\/40{border-color:color-mix(in oklab, var(--color-red-500) 40%, transparent)}}.border-red-500\/50{border-color:#fb2c3680}@supports (color:color-mix(in lab, red, red)){.border-red-500\/50{border-color:color-mix(in oklab, var(--color-red-500) 50%, transparent)}}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.bg-\[\#0a0a0a\]{background-color:#0a0a0a}.bg-\[\#000000\]{background-color:#000}.bg-\[\#1d1d1f\]{background-color:#1d1d1f}.bg-\[\#10b981\]{background-color:#10b981}.bg-\[\#28c840\]{background-color:#28c840}.bg-\[\#34d399\]{background-color:#34d399}.bg-\[\#065f46\]{background-color:#065f46}.bg-\[\#134e2a\]{background-color:#134e2a}.bg-\[\#2563eb\]{background-color:#2563eb}.bg-\[\#d2d2d7\]{background-color:#d2d2d7}.bg-\[\#f5f5f7\]{background-color:#f5f5f7}.bg-\[\#febc2e\]{background-color:#febc2e}.bg-\[\#ff5f57\]{background-color:#ff5f57}.bg-\[\#ffffff\]{background-color:#fff}.bg-accent{background-color:var(--color-accent)}.bg-accent-soft{background-color:var(--color-accent-soft)}.bg-accent-soft\/40{background-color:#eff6ff66}@supports (color:color-mix(in lab, red, red)){.bg-accent-soft\/40{background-color:color-mix(in oklab, var(--color-accent-soft) 40%, transparent)}}.bg-accent-soft\/55{background-color:#eff6ff8c}@supports (color:color-mix(in lab, red, red)){.bg-accent-soft\/55{background-color:color-mix(in oklab, var(--color-accent-soft) 55%, transparent)}}.bg-accent-soft\/60{background-color:#eff6ff99}@supports (color:color-mix(in lab, red, red)){.bg-accent-soft\/60{background-color:color-mix(in oklab, var(--color-accent-soft) 60%, transparent)}}.bg-accent-soft\/70{background-color:#eff6ffb3}@supports (color:color-mix(in lab, red, red)){.bg-accent-soft\/70{background-color:color-mix(in oklab, var(--color-accent-soft) 70%, transparent)}}.bg-accent-soft\/80{background-color:#eff6ffcc}@supports (color:color-mix(in lab, red, red)){.bg-accent-soft\/80{background-color:color-mix(in oklab, var(--color-accent-soft) 80%, transparent)}}.bg-accent\/5{background-color:#2563eb0d}@supports (color:color-mix(in lab, red, red)){.bg-accent\/5{background-color:color-mix(in oklab, var(--color-accent) 5%, transparent)}}.bg-accent\/15{background-color:#2563eb26}@supports (color:color-mix(in lab, red, red)){.bg-accent\/15{background-color:color-mix(in oklab, var(--color-accent) 15%, transparent)}}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-50\/80{background-color:#fffbebcc}@supports (color:color-mix(in lab, red, red)){.bg-amber-50\/80{background-color:color-mix(in oklab, var(--color-amber-50) 80%, transparent)}}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/10{background-color:color-mix(in oklab, var(--color-amber-500) 10%, transparent)}}.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\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\/40{background-color:color-mix(in oklab, var(--color-black) 40%, 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-blue-50\/95{background-color:#eff6fff2}@supports (color:color-mix(in lab, red, red)){.bg-blue-50\/95{background-color:color-mix(in oklab, var(--color-blue-50) 95%, transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-danger{background-color:var(--color-danger)}.bg-danger\/10{background-color:#dc26261a}@supports (color:color-mix(in lab, red, red)){.bg-danger\/10{background-color:color-mix(in oklab, var(--color-danger) 10%, transparent)}}.bg-edge{background-color:var(--color-edge)}.bg-edge-subtle{background-color:var(--color-edge-subtle)}.bg-edge-subtle\/80{background-color:#ebebedcc}@supports (color:color-mix(in lab, red, red)){.bg-edge-subtle\/80{background-color:color-mix(in oklab, var(--color-edge-subtle) 80%, transparent)}}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/10{background-color:color-mix(in oklab, var(--color-emerald-500) 10%, transparent)}}.bg-emerald-500\/15{background-color:#00bb7f26}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/15{background-color:color-mix(in oklab, var(--color-emerald-500) 15%, transparent)}}.bg-fg{background-color:var(--color-fg)}.bg-red-50{background-color:var(--color-red-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-red-500\/15{background-color:#fb2c3626}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/15{background-color:color-mix(in oklab, var(--color-red-500) 15%, transparent)}}.bg-red-500\/20{background-color:#fb2c3633}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/20{background-color:color-mix(in oklab, var(--color-red-500) 20%, transparent)}}.bg-red-600{background-color:var(--color-red-600)}.bg-scrim{background-color:var(--color-scrim)}.bg-success{background-color:var(--color-success)}.bg-success-soft{background-color:var(--color-success-soft)}.bg-surface-active{background-color:var(--color-surface-active)}.bg-surface-active\/70{background-color:#dcdcdeb3}@supports (color:color-mix(in lab, red, red)){.bg-surface-active\/70{background-color:color-mix(in oklab, var(--color-surface-active) 70%, transparent)}}.bg-surface-base{background-color:var(--color-surface-base)}.bg-surface-base\/40{background-color:#f5f5f766}@supports (color:color-mix(in lab, red, red)){.bg-surface-base\/40{background-color:color-mix(in oklab, var(--color-surface-base) 40%, transparent)}}.bg-surface-hover{background-color:var(--color-surface-hover)}.bg-surface-hover\/20{background-color:#e8e8ed33}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/20{background-color:color-mix(in oklab, var(--color-surface-hover) 20%, transparent)}}.bg-surface-hover\/25{background-color:#e8e8ed40}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/25{background-color:color-mix(in oklab, var(--color-surface-hover) 25%, transparent)}}.bg-surface-hover\/30{background-color:#e8e8ed4d}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/30{background-color:color-mix(in oklab, var(--color-surface-hover) 30%, transparent)}}.bg-surface-hover\/35{background-color:#e8e8ed59}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/35{background-color:color-mix(in oklab, var(--color-surface-hover) 35%, transparent)}}.bg-surface-hover\/40{background-color:#e8e8ed66}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/40{background-color:color-mix(in oklab, var(--color-surface-hover) 40%, transparent)}}.bg-surface-hover\/45{background-color:#e8e8ed73}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/45{background-color:color-mix(in oklab, var(--color-surface-hover) 45%, transparent)}}.bg-surface-hover\/50{background-color:#e8e8ed80}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/50{background-color:color-mix(in oklab, var(--color-surface-hover) 50%, transparent)}}.bg-surface-hover\/60{background-color:#e8e8ed99}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/60{background-color:color-mix(in oklab, var(--color-surface-hover) 60%, transparent)}}.bg-surface-hover\/70{background-color:#e8e8edb3}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/70{background-color:color-mix(in oklab, var(--color-surface-hover) 70%, transparent)}}.bg-surface-hover\/80{background-color:#e8e8edcc}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/80{background-color:color-mix(in oklab, var(--color-surface-hover) 80%, transparent)}}.bg-surface-hover\/90{background-color:#e8e8ede6}@supports (color:color-mix(in lab, red, red)){.bg-surface-hover\/90{background-color:color-mix(in oklab, var(--color-surface-hover) 90%, transparent)}}.bg-surface-panel{background-color:var(--color-surface-panel)}.bg-surface-panel\/40{background-color:#fff6}@supports (color:color-mix(in lab, red, red)){.bg-surface-panel\/40{background-color:color-mix(in oklab, var(--color-surface-panel) 40%, transparent)}}.bg-surface-panel\/60{background-color:#fff9}@supports (color:color-mix(in lab, red, red)){.bg-surface-panel\/60{background-color:color-mix(in oklab, var(--color-surface-panel) 60%, transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.\[fill\:var\(--color-fg\)\]{fill:var(--color-fg)}.fill-edge{fill:var(--color-edge)}.\[stroke\:var\(--color-accent\)\]{stroke:var(--color-accent)}.stroke-\[1\.75\]{stroke-width:1.75px}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-0\.5{padding:calc(var(--spacing) * .5)}.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{padding-inline:calc(var(--spacing) * 0)}.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-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{padding-block:calc(var(--spacing) * 0)}.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-3\.5{padding-block:calc(var(--spacing) * 3.5)}.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-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-\[min\(20vh\,8rem\)\]{padding-top:min(20vh,8rem)}.pr-0{padding-right:calc(var(--spacing) * 0)}.pr-0\.5{padding-right:calc(var(--spacing) * .5)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-20{padding-right:calc(var(--spacing) * 20)}.pb-0{padding-bottom:calc(var(--spacing) * 0)}.pb-0\.5{padding-bottom:calc(var(--spacing) * .5)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pl-0{padding-left:calc(var(--spacing) * 0)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-9{padding-left:calc(var(--spacing) * 9)}.pl-10{padding-left:calc(var(--spacing) * 10)}.\[text-align\:inherit\]{text-align:inherit}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.align-top{vertical-align:top}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.75rem\]{font-size:.75rem}.text-\[0\.8125rem\]{font-size:.8125rem}.text-\[0\.9375rem\]{font-size:.9375rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.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-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)}.text-pretty{text-wrap:pretty}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--color-accent)}.text-accent-fg{color:var(--color-accent-fg)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-amber-950{color:var(--color-amber-950)}.text-blue-600{color:var(--color-blue-600)}.text-blue-800{color:var(--color-blue-800)}.text-current{color:currentColor}.text-danger{color:var(--color-danger)}.text-emerald-500{color:var(--color-emerald-500)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-fg{color:var(--color-fg)}.text-fg-disabled{color:var(--color-fg-disabled)}.text-fg-muted{color:var(--color-fg-muted)}.text-fg-muted\/25{color:#6e6e7340}@supports (color:color-mix(in lab, red, red)){.text-fg-muted\/25{color:color-mix(in oklab, var(--color-fg-muted) 25%, transparent)}}.text-fg-subtle{color:var(--color-fg-subtle)}.text-green-600{color:var(--color-green-600)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-red-900{color:var(--color-red-900)}.text-success{color:var(--color-success)}.text-surface-panel{color:var(--color-surface-panel)}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.capitalize{text-transform:capitalize}.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,)}.underline{text-decoration-line:underline}.decoration-accent-fg\/40{text-decoration-color:#2563eb66}@supports (color:color-mix(in lab, red, red)){.decoration-accent-fg\/40{-webkit-text-decoration-color:color-mix(in oklab, var(--color-accent-fg) 40%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-accent-fg) 40%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-accent-fg) 40%, transparent);text-decoration-color:color-mix(in oklab, var(--color-accent-fg) 40%, transparent)}}.underline-offset-2{text-underline-offset:2px}.caret-current{caret-color:currentColor}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.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);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_1px_var\(--color-accent\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--color-accent));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-elevated{--tw-shadow:0 2px 8px var(--tw-shadow-color,#0000000f), 0 4px 24px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-float{--tw-shadow:0 4px 16px var(--tw-shadow-color,#0000001a), 0 12px 40px var(--tw-shadow-color,#00000014);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 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px 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)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px 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)}.shadow-none{--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)}.shadow-popover{--tw-shadow:0 8px 32px var(--tw-shadow-color,#0000001f), 0 2px 12px var(--tw-shadow-color,#00000014);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 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px 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)}.shadow-surface{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000000a), 0 1px 6px var(--tw-shadow-color,#0000000f);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);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-accent{--tw-ring-color:var(--color-accent)}.ring-edge{--tw-ring-color:var(--color-edge)}.ring-edge\/35{--tw-ring-color:#d2d2d759}@supports (color:color-mix(in lab, red, red)){.ring-edge\/35{--tw-ring-color:color-mix(in oklab, var(--color-edge) 35%, transparent)}}.ring-edge\/40{--tw-ring-color:#d2d2d766}@supports (color:color-mix(in lab, red, red)){.ring-edge\/40{--tw-ring-color:color-mix(in oklab, var(--color-edge) 40%, transparent)}}.ring-offset-surface-base{--tw-ring-offset-color:var(--color-surface-base)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.backdrop-blur-\[1px\]{--tw-backdrop-blur:blur(1px);-webkit-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,);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,)}.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);-webkit-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,);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,-webkit-backdrop-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-\[border-color\,background-color\]{transition-property:border-color,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[border-color\,box-shadow\]{transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,background-color\,border-color\,opacity\]{transition-property:color,background-color,border-color,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,background-color\,border-color\]{transition-property:color,background-color,border-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,background-color\,box-shadow\]{transition-property:color,background-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,box-shadow\]{transition-property:transform,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,width\,height\]{transition-property:transform,width,height;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;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-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-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[transition-timing-function\:cubic-bezier\(0\.32\,0\.72\,0\,1\)\]{transition-timing-function:cubic-bezier(.32,.72,0,1)}.will-change-transform{will-change:transform}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[-ms-overflow-style\:none\]{-ms-overflow-style:none}.\[-webkit-app-region\:drag\]{-webkit-app-region:drag}.\[-webkit-app-region\:no-drag\]{-webkit-app-region:no-drag}.\[backface-visibility\:hidden\]{backface-visibility:hidden}.\[fill-opacity\:0\.82\]{fill-opacity:.82}.\[scrollbar-gutter\:stable\]{scrollbar-gutter:stable}.\[scrollbar-width\:none\]{scrollbar-width:none}.ring-inset{--tw-ring-inset:inset}.group-open\:rotate-180:is(:where(.group):is([open],:popover-open,:open) *){rotate:180deg}.group-open\:text-fg-muted:is(:where(.group):is([open],:popover-open,:open) *){color:var(--color-fg-muted)}@media (hover:hover){.group-hover\:-translate-y-px:is(:where(.group):hover *){--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:bg-black\/25:is(:where(.group):hover *){background-color:#00000040}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-black\/25:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--color-black) 25%, transparent)}}.group-hover\:text-fg:is(:where(.group):hover *){color:var(--color-fg)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:ring-edge\/55:is(:where(.group):hover *){--tw-ring-color:#d2d2d78c}@supports (color:color-mix(in lab, red, red)){.group-hover\:ring-edge\/55:is(:where(.group):hover *){--tw-ring-color:color-mix(in oklab, var(--color-edge) 55%, transparent)}}}.placeholder\:text-fg-disabled::placeholder{color:var(--color-fg-disabled)}.placeholder\:text-fg-muted::placeholder{color:var(--color-fg-muted)}.placeholder\:text-fg-subtle::placeholder{color:var(--color-fg-subtle)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bottom-0:after{content:var(--tw-content);bottom:calc(var(--spacing) * 0)}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:h-0\.5:after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.after\:w-9:after{content:var(--tw-content);width:calc(var(--spacing) * 9)}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.after\:rounded-full:after{content:var(--tw-content);border-radius:3.40282e38px}.after\:bg-accent:after{content:var(--tw-content);background-color:var(--color-accent)}.last\:mb-0:last-child{margin-bottom:calc(var(--spacing) * 0)}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.open\:pb-3:is([open],:popover-open,:open){padding-bottom:calc(var(--spacing) * 3)}.focus-within\:outline-none:focus-within{--tw-outline-style:none;outline-style:none}@media (hover:hover){.hover\:border-accent:hover{border-color:var(--color-accent)}.hover\:border-accent\/40:hover{border-color:#2563eb66}@supports (color:color-mix(in lab, red, red)){.hover\:border-accent\/40:hover{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.hover\:border-accent\/50:hover{border-color:#2563eb80}@supports (color:color-mix(in lab, red, red)){.hover\:border-accent\/50:hover{border-color:color-mix(in oklab, var(--color-accent) 50%, transparent)}}.hover\:border-edge:hover{border-color:var(--color-edge)}.hover\:border-edge-subtle:hover{border-color:var(--color-edge-subtle)}.hover\:bg-accent-hover:hover{background-color:var(--color-accent-hover)}.hover\:bg-accent-soft:hover{background-color:var(--color-accent-soft)}.hover\:bg-accent-soft\/50:hover{background-color:#eff6ff80}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent-soft\/50:hover{background-color:color-mix(in oklab, var(--color-accent-soft) 50%, transparent)}}.hover\:bg-accent-soft\/60:hover{background-color:#eff6ff99}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent-soft\/60:hover{background-color:color-mix(in oklab, var(--color-accent-soft) 60%, transparent)}}.hover\:bg-accent-soft\/80:hover{background-color:#eff6ffcc}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent-soft\/80:hover{background-color:color-mix(in oklab, var(--color-accent-soft) 80%, transparent)}}.hover\:bg-accent-soft\/90:hover{background-color:#eff6ffe6}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent-soft\/90:hover{background-color:color-mix(in oklab, var(--color-accent-soft) 90%, transparent)}}.hover\:bg-accent\/15:hover{background-color:#2563eb26}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/15:hover{background-color:color-mix(in oklab, var(--color-accent) 15%, transparent)}}.hover\:bg-accent\/90:hover{background-color:#2563ebe6}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/90:hover{background-color:color-mix(in oklab, var(--color-accent) 90%, transparent)}}.hover\:bg-danger\/90:hover{background-color:#dc2626e6}@supports (color:color-mix(in lab, red, red)){.hover\:bg-danger\/90:hover{background-color:color-mix(in oklab, var(--color-danger) 90%, transparent)}}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-red-500\/10:hover{background-color:#fb2c361a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-red-500\/10:hover{background-color:color-mix(in oklab, var(--color-red-500) 10%, transparent)}}.hover\:bg-red-500\/15:hover{background-color:#fb2c3626}@supports (color:color-mix(in lab, red, red)){.hover\:bg-red-500\/15:hover{background-color:color-mix(in oklab, var(--color-red-500) 15%, transparent)}}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:bg-surface-active:hover{background-color:var(--color-surface-active)}.hover\:bg-surface-active\/70:hover{background-color:#dcdcdeb3}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-active\/70:hover{background-color:color-mix(in oklab, var(--color-surface-active) 70%, transparent)}}.hover\:bg-surface-base:hover{background-color:var(--color-surface-base)}.hover\:bg-surface-hover:hover{background-color:var(--color-surface-hover)}.hover\:bg-surface-hover\/40:hover{background-color:#e8e8ed66}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-hover\/40:hover{background-color:color-mix(in oklab, var(--color-surface-hover) 40%, transparent)}}.hover\:bg-surface-hover\/45:hover{background-color:#e8e8ed73}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-hover\/45:hover{background-color:color-mix(in oklab, var(--color-surface-hover) 45%, transparent)}}.hover\:bg-surface-hover\/50:hover{background-color:#e8e8ed80}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-hover\/50:hover{background-color:color-mix(in oklab, var(--color-surface-hover) 50%, transparent)}}.hover\:bg-surface-hover\/60:hover{background-color:#e8e8ed99}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-hover\/60:hover{background-color:color-mix(in oklab, var(--color-surface-hover) 60%, transparent)}}.hover\:bg-surface-hover\/70:hover{background-color:#e8e8edb3}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-hover\/70:hover{background-color:color-mix(in oklab, var(--color-surface-hover) 70%, transparent)}}.hover\:bg-surface-hover\/80:hover{background-color:#e8e8edcc}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-hover\/80:hover{background-color:color-mix(in oklab, var(--color-surface-hover) 80%, transparent)}}.hover\:bg-surface-hover\/90:hover{background-color:#e8e8ede6}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-hover\/90:hover{background-color:color-mix(in oklab, var(--color-surface-hover) 90%, transparent)}}.hover\:bg-surface-panel:hover{background-color:var(--color-surface-panel)}.hover\:bg-surface-panel\/60:hover{background-color:#fff9}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-panel\/60:hover{background-color:color-mix(in oklab, var(--color-surface-panel) 60%, transparent)}}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-accent-fg:hover{color:var(--color-accent-fg)}.hover\:text-fg:hover{color:var(--color-fg)}.hover\:text-fg-muted:hover{color:var(--color-fg-muted)}.hover\:text-red-600:hover{color:var(--color-red-600)}.hover\:underline:hover{text-decoration-line:underline}.hover\:decoration-accent-fg:hover{-webkit-text-decoration-color:var(--color-accent-fg);-webkit-text-decoration-color:var(--color-accent-fg);-webkit-text-decoration-color:var(--color-accent-fg);text-decoration-color:var(--color-accent-fg)}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-95:hover{opacity:.95}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:absolute:focus{position:absolute}.focus\:top-3:focus{top:calc(var(--spacing) * 3)}.focus\:left-4:focus{left:calc(var(--spacing) * 4)}.focus\:border-0:focus{border-style:var(--tw-border-style);border-width:0}.focus\:border-accent:focus{border-color:var(--color-accent)}.focus\:border-edge-strong:focus{border-color:var(--color-edge-strong)}.focus\:opacity-100:focus{opacity:1}.focus\:shadow-none:focus{--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)}.focus\:ring-0:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);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-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);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-accent:focus{--tw-ring-color:var(--color-accent)}.focus\:ring-offset-0:focus{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-edge:focus-visible{border-color:var(--color-edge)}.focus-visible\:border-edge-strong:focus-visible{border-color:var(--color-edge-strong)}.focus-visible\:shadow-none:focus-visible{--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)}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-accent:focus-visible{--tw-ring-color:var(--color-accent)}.focus-visible\:ring-accent\/40:focus-visible{--tw-ring-color:#2563eb66}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-accent\/40:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.focus-visible\:ring-red-500\/40:focus-visible{--tw-ring-color:#fb2c3666}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-red-500\/40:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-red-500) 40%, transparent)}}.focus-visible\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--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-visible\:ring-offset-surface-base:focus-visible{--tw-ring-offset-color:var(--color-surface-base)}.focus-visible\:ring-offset-surface-panel:focus-visible{--tw-ring-offset-color:var(--color-surface-panel)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-inset:focus-visible{--tw-ring-inset:inset}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-100:active{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-\[0\.97\]:active{scale:.97}.active\:scale-\[0\.99\]:active{scale:.99}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-25:disabled{opacity:.25}.disabled\:opacity-35:disabled{opacity:.35}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-100:disabled{opacity:1}.data-highlighted\:bg-red-500\/10[data-highlighted]{background-color:#fb2c361a}@supports (color:color-mix(in lab, red, red)){.data-highlighted\:bg-red-500\/10[data-highlighted]{background-color:color-mix(in oklab, var(--color-red-500) 10%, transparent)}}.data-highlighted\:bg-surface-hover[data-highlighted]{background-color:var(--color-surface-hover)}.data-\[highlighted\]\:bg-red-50[data-highlighted]{background-color:var(--color-red-50)}.data-\[highlighted\]\:bg-surface-hover[data-highlighted]{background-color:var(--color-surface-hover)}.data-\[state\=open\]\:border-edge[data-state=open]{border-color:var(--color-edge)}@media (prefers-reduced-motion:reduce){.motion-reduce\:animate-none{animation:none}.motion-reduce\:opacity-100{opacity:1}.motion-reduce\:\!transition-none{transition-property:none!important}.motion-reduce\:transition-none{transition-property:none}.motion-reduce\:\!duration-0{--tw-duration:0s!important;transition-duration:0s!important}.motion-reduce\:active\:scale-100:active{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}}@media not all and (min-width:48rem){.max-md\:pointer-events-none{pointer-events:none}.max-md\:fixed{position:fixed}.max-md\:top-0{top:calc(var(--spacing) * 0)}.max-md\:right-0{right:calc(var(--spacing) * 0)}.max-md\:left-0{left:calc(var(--spacing) * 0)}.max-md\:z-50{z-index:50}.max-md\:hidden{display:none}.max-md\:h-\[100dvh\]{height:100dvh}.max-md\:w-\[min\(16rem\,85vw\)\]{width:min(16rem,85vw)}.max-md\:w-\[min\(20rem\,92vw\)\]{width:min(20rem,92vw)}.max-md\:-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.max-md\:translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.max-md\:translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.max-md\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.max-md\:border-edge{border-color:var(--color-edge)}.max-md\:shadow-popover{--tw-shadow:0 8px 32px var(--tw-shadow-color,#0000001f), 0 2px 12px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.max-md\: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))}.max-md\:duration-200{--tw-duration:.2s;transition-duration:.2s}.max-md\:ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}@media (prefers-reduced-motion:reduce){@media not all and (min-width:48rem){.motion-reduce\:max-md\:transition-none{transition-property:none}}}@media (min-width:40rem){.sm\:not-sr-only{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.sm\:inset-auto{inset:auto}.sm\:top-1\/2{top:50%}.sm\:top-4{top:calc(var(--spacing) * 4)}.sm\:right-4{right:calc(var(--spacing) * 4)}.sm\:left-1\/2{left:50%}.sm\:order-1{order:1}.sm\:order-2{order:2}.sm\:col-span-2{grid-column:span 2/span 2}.sm\:mr-auto{margin-right:auto}.sm\:ml-0{margin-left:calc(var(--spacing) * 0)}.sm\:ml-2\.5{margin-left:calc(var(--spacing) * 2.5)}.sm\:ml-auto{margin-left:auto}.sm\:flex{display:flex}.sm\:inline{display:inline}.sm\:h-\[min\(88vh\,48rem\)\]{height:min(88vh,48rem)}.sm\:max-h-\[min\(88vh\,48rem\)\]{max-height:min(88vh,48rem)}.sm\:min-h-9{min-height:calc(var(--spacing) * 9)}.sm\:min-h-10{min-height:calc(var(--spacing) * 10)}.sm\:min-h-\[32rem\]{min-height:32rem}.sm\:w-9{width:calc(var(--spacing) * 9)}.sm\:w-48{width:calc(var(--spacing) * 48)}.sm\:w-56{width:calc(var(--spacing) * 56)}.sm\:w-\[5\.25rem\]{width:5.25rem}.sm\:w-\[min\(100\%\,14rem\)\]{width:min(100%,14rem)}.sm\:w-\[min\(100\%-2rem\,58rem\)\]{width:min(100% - 2rem,58rem)}.sm\:w-auto{width:auto}.sm\:max-w-2xl{max-width:var(--container-2xl)}.sm\:max-w-\[11rem\]{max-width:11rem}.sm\:max-w-\[14rem\]{max-width:14rem}.sm\:max-w-\[17rem\]{max-width:17rem}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-xs{max-width:var(--container-xs)}.sm\:min-w-0{min-width:calc(var(--spacing) * 0)}.sm\:min-w-\[7\.5rem\]{min-width:7.5rem}.sm\:min-w-\[7rem\]{min-width:7rem}.sm\:min-w-\[11rem\]{min-width:11rem}.sm\:min-w-\[12rem\]{min-width:12rem}.sm\:flex-1{flex:1}.sm\:shrink-0{flex-shrink:0}.sm\:-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.sm\:-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-col{flex-direction:column}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:items-start{align-items:flex-start}.sm\:items-stretch{align-items:stretch}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:justify-start{justify-content:flex-start}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-3{gap:calc(var(--spacing) * 3)}.sm\:gap-4{gap:calc(var(--spacing) * 4)}.sm\:gap-6{gap:calc(var(--spacing) * 6)}.sm\:self-center{align-self:center}.sm\:overflow-hidden{overflow:hidden}.sm\:overflow-y-auto{overflow-y:auto}.sm\:border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.sm\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.sm\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.sm\:border-edge{border-color:var(--color-edge)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:px-0{padding-inline:calc(var(--spacing) * 0)}.sm\:px-2{padding-inline:calc(var(--spacing) * 2)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:px-5{padding-inline:calc(var(--spacing) * 5)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:py-3{padding-block:calc(var(--spacing) * 3)}.sm\:py-4{padding-block:calc(var(--spacing) * 4)}.sm\:py-10{padding-block:calc(var(--spacing) * 10)}.sm\:pr-3{padding-right:calc(var(--spacing) * 3)}.sm\:pr-5{padding-right:calc(var(--spacing) * 5)}.sm\:pl-2{padding-left:calc(var(--spacing) * 2)}.sm\:pl-4{padding-left:calc(var(--spacing) * 4)}.sm\:text-left{text-align:left}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}@media (min-width:48rem){.md\:pointer-events-none{pointer-events:none}.md\:relative{position:relative}.md\:right-10{right:calc(var(--spacing) * 10)}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline-flex{display:inline-flex}.md\:h-full{height:100%}.md\:max-h-none{max-height:none}.md\:min-h-0{min-height:calc(var(--spacing) * 0)}.md\:w-0{width:calc(var(--spacing) * 0)}.md\:w-80{width:calc(var(--spacing) * 80)}.md\:w-\[4\.5rem\]{width:4.5rem}.md\:max-w-0{max-width:calc(var(--spacing) * 0)}.md\:max-w-80{max-width:calc(var(--spacing) * 80)}.md\:min-w-0{min-width:calc(var(--spacing) * 0)}.md\:flex-1{flex:1}.md\: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\:flex-row{flex-direction:row}.md\:overflow-hidden{overflow:hidden}.md\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.md\:border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.md\:border-edge{border-color:var(--color-edge)}.md\:pb-4{padding-bottom:calc(var(--spacing) * 4)}.md\:text-center{text-align:center}.md\:transition-\[width\,max-width\]{transition-property:width,max-width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.md\:duration-300{--tw-duration:.3s;transition-duration:.3s}.md\:ease-\[cubic-bezier\(0\.22\,1\,0\.36\,1\)\]{--tw-ease:cubic-bezier(.22,1,.36,1);transition-timing-function:cubic-bezier(.22,1,.36,1)}}@media (prefers-reduced-motion:reduce){@media (min-width:48rem){.motion-reduce\:md\:transition-none{transition-property:none}}}@media (min-width:64rem){.lg\:inline{display:inline}.lg\:max-w-app-main{max-width:var(--max-width-app-main)}.lg\:max-w-xl{max-width:var(--container-xl)}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}@media (min-width:80rem){.xl\:px-6{padding-inline:calc(var(--spacing) * 6)}}:where(.dark\:divide-edge:where(.dark,.dark *)>:not(:last-child)){border-color:var(--color-edge)}.dark\:border-accent\/30:where(.dark,.dark *){border-color:#2563eb4d}@supports (color:color-mix(in lab, red, red)){.dark\:border-accent\/30:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-accent) 30%, transparent)}}.dark\:border-amber-800:where(.dark,.dark *){border-color:var(--color-amber-800)}.dark\:border-amber-900\/40:where(.dark,.dark *){border-color:#7b330666}@supports (color:color-mix(in lab, red, red)){.dark\:border-amber-900\/40:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-amber-900) 40%, transparent)}}.dark\:border-blue-900\/50:where(.dark,.dark *){border-color:#1c398e80}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-900\/50:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-blue-900) 50%, transparent)}}.dark\:border-danger\/40:where(.dark,.dark *){border-color:#dc262666}@supports (color:color-mix(in lab, red, red)){.dark\:border-danger\/40:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-danger) 40%, transparent)}}.dark\:border-edge:where(.dark,.dark *){border-color:var(--color-edge)}.dark\:border-edge-subtle:where(.dark,.dark *){border-color:var(--color-edge-subtle)}.dark\:border-edge-subtle\/70:where(.dark,.dark *){border-color:#ebebedb3}@supports (color:color-mix(in lab, red, red)){.dark\:border-edge-subtle\/70:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-edge-subtle) 70%, transparent)}}.dark\:border-edge-subtle\/90:where(.dark,.dark *){border-color:#ebebede6}@supports (color:color-mix(in lab, red, red)){.dark\:border-edge-subtle\/90:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-edge-subtle) 90%, transparent)}}.dark\:border-emerald-900\/40:where(.dark,.dark *){border-color:#004e3b66}@supports (color:color-mix(in lab, red, red)){.dark\:border-emerald-900\/40:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-emerald-900) 40%, transparent)}}.dark\:border-red-800:where(.dark,.dark *){border-color:var(--color-red-800)}.dark\:border-red-900\/40:where(.dark,.dark *){border-color:#82181a66}@supports (color:color-mix(in lab, red, red)){.dark\:border-red-900\/40:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-red-900) 40%, transparent)}}.dark\:border-red-900\/50:where(.dark,.dark *){border-color:#82181a80}@supports (color:color-mix(in lab, red, red)){.dark\:border-red-900\/50:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-red-900) 50%, transparent)}}.dark\:border-red-900\/60:where(.dark,.dark *){border-color:#82181a99}@supports (color:color-mix(in lab, red, red)){.dark\:border-red-900\/60:where(.dark,.dark *){border-color:color-mix(in oklab, var(--color-red-900) 60%, transparent)}}.dark\:bg-\[\#1e1e1e\]:where(.dark,.dark *){background-color:#1e1e1e}.dark\:bg-accent-soft\/25:where(.dark,.dark *){background-color:#eff6ff40}@supports (color:color-mix(in lab, red, red)){.dark\:bg-accent-soft\/25:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-accent-soft) 25%, transparent)}}.dark\:bg-accent-soft\/35:where(.dark,.dark *){background-color:#eff6ff59}@supports (color:color-mix(in lab, red, red)){.dark\:bg-accent-soft\/35:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-accent-soft) 35%, transparent)}}.dark\:bg-accent-soft\/40:where(.dark,.dark *){background-color:#eff6ff66}@supports (color:color-mix(in lab, red, red)){.dark\:bg-accent-soft\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-accent-soft) 40%, transparent)}}.dark\:bg-accent\/10:where(.dark,.dark *){background-color:#2563eb1a}@supports (color:color-mix(in lab, red, red)){.dark\:bg-accent\/10:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-accent) 10%, transparent)}}.dark\:bg-amber-950\/30:where(.dark,.dark *){background-color:#4619014d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/30:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-amber-950) 30%, transparent)}}.dark\:bg-amber-950\/40:where(.dark,.dark *){background-color:#46190166}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-amber-950) 40%, transparent)}}.dark\:bg-amber-950\/50:where(.dark,.dark *){background-color:#46190180}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/50:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-amber-950) 50%, transparent)}}.dark\:bg-black\/60:where(.dark,.dark *){background-color:#0009}@supports (color:color-mix(in lab, red, red)){.dark\:bg-black\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.dark\:bg-blue-950:where(.dark,.dark *){background-color:var(--color-blue-950)}.dark\:bg-blue-950\/40:where(.dark,.dark *){background-color:#16245666}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 40%, transparent)}}.dark\:bg-blue-950\/45:where(.dark,.dark *){background-color:#16245673}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/45:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 45%, transparent)}}.dark\:bg-emerald-950:where(.dark,.dark *){background-color:var(--color-emerald-950)}.dark\:bg-emerald-950\/40:where(.dark,.dark *){background-color:#002c2266}@supports (color:color-mix(in lab, red, red)){.dark\:bg-emerald-950\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-emerald-950) 40%, transparent)}}.dark\:bg-fg:where(.dark,.dark *){background-color:var(--color-fg)}.dark\:bg-red-500\/25:where(.dark,.dark *){background-color:#fb2c3640}@supports (color:color-mix(in lab, red, red)){.dark\:bg-red-500\/25:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-red-500) 25%, transparent)}}.dark\:bg-red-950\/40:where(.dark,.dark *){background-color:#46080966}@supports (color:color-mix(in lab, red, red)){.dark\:bg-red-950\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-red-950) 40%, transparent)}}.dark\:bg-red-950\/50:where(.dark,.dark *){background-color:#46080980}@supports (color:color-mix(in lab, red, red)){.dark\:bg-red-950\/50:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-red-950) 50%, transparent)}}.dark\:bg-surface-active:where(.dark,.dark *){background-color:var(--color-surface-active)}.dark\:bg-surface-active\/50:where(.dark,.dark *){background-color:#dcdcde80}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-active\/50:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-active) 50%, transparent)}}.dark\:bg-surface-active\/80:where(.dark,.dark *){background-color:#dcdcdecc}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-active\/80:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-active) 80%, transparent)}}.dark\:bg-surface-base\/20:where(.dark,.dark *){background-color:#f5f5f733}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-base\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-base) 20%, transparent)}}.dark\:bg-surface-hover\/15:where(.dark,.dark *){background-color:#e8e8ed26}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-hover\/15:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-hover) 15%, transparent)}}.dark\:bg-surface-hover\/20:where(.dark,.dark *){background-color:#e8e8ed33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-hover\/20:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-hover) 20%, transparent)}}.dark\:bg-surface-hover\/25:where(.dark,.dark *){background-color:#e8e8ed40}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-hover\/25:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-hover) 25%, transparent)}}.dark\:bg-surface-hover\/30:where(.dark,.dark *){background-color:#e8e8ed4d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-hover\/30:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-hover) 30%, transparent)}}.dark\:bg-surface-hover\/35:where(.dark,.dark *){background-color:#e8e8ed59}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-hover\/35:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-hover) 35%, transparent)}}.dark\:bg-surface-hover\/40:where(.dark,.dark *){background-color:#e8e8ed66}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-hover\/40:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-hover) 40%, transparent)}}.dark\:bg-surface-hover\/50:where(.dark,.dark *){background-color:#e8e8ed80}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-hover\/50:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-hover) 50%, transparent)}}.dark\:bg-surface-hover\/70:where(.dark,.dark *){background-color:#e8e8edb3}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-hover\/70:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-hover) 70%, transparent)}}.dark\:bg-surface-hover\/80:where(.dark,.dark *){background-color:#e8e8edcc}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-hover\/80:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-hover) 80%, transparent)}}.dark\:bg-surface-panel:where(.dark,.dark *){background-color:var(--color-surface-panel)}.dark\:bg-surface-panel\/60:where(.dark,.dark *){background-color:#fff9}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-panel\/60:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-panel) 60%, transparent)}}.dark\:bg-surface-panel\/95:where(.dark,.dark *){background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-panel\/95:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-surface-panel) 95%, transparent)}}.dark\:text-accent-fg:where(.dark,.dark *){color:var(--color-accent-fg)}.dark\:text-amber-100:where(.dark,.dark *){color:var(--color-amber-100)}.dark\:text-amber-200:where(.dark,.dark *){color:var(--color-amber-200)}.dark\:text-blue-200:where(.dark,.dark *){color:var(--color-blue-200)}.dark\:text-blue-400:where(.dark,.dark *){color:var(--color-blue-400)}.dark\:text-emerald-200:where(.dark,.dark *){color:var(--color-emerald-200)}.dark\:text-emerald-300:where(.dark,.dark *){color:var(--color-emerald-300)}.dark\:text-emerald-400:where(.dark,.dark *){color:var(--color-emerald-400)}.dark\:text-green-400:where(.dark,.dark *){color:var(--color-green-400)}.dark\:text-red-100:where(.dark,.dark *){color:var(--color-red-100)}.dark\:text-red-200:where(.dark,.dark *){color:var(--color-red-200)}.dark\:text-red-300:where(.dark,.dark *){color:var(--color-red-300)}.dark\:text-red-400:where(.dark,.dark *){color:var(--color-red-400)}.dark\:text-surface-panel:where(.dark,.dark *){color:var(--color-surface-panel)}.dark\:text-yellow-400:where(.dark,.dark *){color:var(--color-yellow-400)}.dark\:shadow-elevated:where(.dark,.dark *){--tw-shadow:0 2px 8px var(--tw-shadow-color,#0000000f), 0 4px 24px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.dark\:shadow-none:where(.dark,.dark *){--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)}.dark\:shadow-sm:where(.dark,.dark *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px 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)}.dark\:ring-1:where(.dark,.dark *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.dark\:ring-edge-strong\/40:where(.dark,.dark *){--tw-ring-color:#bcbcc066}@supports (color:color-mix(in lab, red, red)){.dark\:ring-edge-strong\/40:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-edge-strong) 40%, transparent)}}.dark\:ring-edge\/50:where(.dark,.dark *){--tw-ring-color:#d2d2d780}@supports (color:color-mix(in lab, red, red)){.dark\:ring-edge\/50:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-edge) 50%, transparent)}}.dark\:ring-edge\/55:where(.dark,.dark *){--tw-ring-color:#d2d2d78c}@supports (color:color-mix(in lab, red, red)){.dark\:ring-edge\/55:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-edge) 55%, transparent)}}@media (hover:hover){.dark\:group-hover\:ring-edge\/65:where(.dark,.dark *):is(:where(.group):hover *){--tw-ring-color:#d2d2d7a6}@supports (color:color-mix(in lab, red, red)){.dark\:group-hover\:ring-edge\/65:where(.dark,.dark *):is(:where(.group):hover *){--tw-ring-color:color-mix(in oklab, var(--color-edge) 65%, transparent)}}.dark\:hover\:border-edge:where(.dark,.dark *):hover{border-color:var(--color-edge)}.dark\:hover\:bg-accent-soft:where(.dark,.dark *):hover{background-color:var(--color-accent-soft)}.dark\:hover\:bg-black\/70:where(.dark,.dark *):hover{background-color:#000000b3}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-black\/70:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-black) 70%, transparent)}}.dark\:hover\:bg-red-950\/40:where(.dark,.dark *):hover{background-color:#46080966}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-red-950\/40:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-red-950) 40%, transparent)}}.dark\:hover\:bg-red-950\/70:where(.dark,.dark *):hover{background-color:#460809b3}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-red-950\/70:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-red-950) 70%, transparent)}}.dark\:hover\:bg-surface-hover\/25:where(.dark,.dark *):hover{background-color:#e8e8ed40}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-surface-hover\/25:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-surface-hover) 25%, transparent)}}.dark\:hover\:bg-surface-hover\/50:where(.dark,.dark *):hover{background-color:#e8e8ed80}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-surface-hover\/50:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-surface-hover) 50%, transparent)}}.dark\:hover\:bg-surface-hover\/55:where(.dark,.dark *):hover{background-color:#e8e8ed8c}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-surface-hover\/55:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-surface-hover) 55%, transparent)}}.dark\:hover\:bg-surface-panel\/40:where(.dark,.dark *):hover{background-color:#fff6}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-surface-panel\/40:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-surface-panel) 40%, transparent)}}.dark\:hover\:text-red-400:where(.dark,.dark *):hover{color:var(--color-red-400)}}@media not all and (min-width:48rem){.max-md\:dark\:border-edge:where(.dark,.dark *){border-color:var(--color-edge)}}@media (min-width:40rem){.dark\:sm\:border-edge:where(.dark,.dark *){border-color:var(--color-edge)}}@media (min-width:48rem){.md\:dark\:border-edge:where(.dark,.dark *){border-color:var(--color-edge)}}.\[\&_\.markdown-body\]\:text-sm .markdown-body{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.\[\&_\.markdown-body\]\:leading-snug .markdown-body{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}.\[\&\>\*\]\:min-h-0>*{min-height:calc(var(--spacing) * 0)}.\[\&\>\*\]\:flex-1>*{flex:1}.\[\&\>div\]\:border-0>div{border-style:var(--tw-border-style);border-width:0}.\[\&\>div\]\:pt-0>div{padding-top:calc(var(--spacing) * 0)}}html.dark{--color-surface-base:#1c1c1e;--color-surface-panel:#2c2c2e;--color-surface-hover:#3a3a3c;--color-surface-active:#48484a;--color-fg:#f5f5f7;--color-fg-muted:#a1a1a6;--color-fg-subtle:#8e8e93;--color-fg-disabled:#636366;--color-edge-subtle:#3a3a3c;--color-edge:#48484a;--color-edge-strong:#636366;--color-accent:#3b82f6;--color-accent-hover:#60a5fa;--color-accent-soft:#1e3a8a8c;--color-accent-fg:#60a5fa;--color-checkbox-accent:#c7c7cc;--color-success:#34d399;--color-success-soft:#064e3b80;--color-danger:#f87171;--color-danger-soft:#7f1d1d80;--color-warning:#fbbf24;--color-warning-soft:#713f1280;--color-scrim:#00000085;--shadow-surface:0 0 0 1px #ffffff0f;--shadow-elevated:0 8px 32px #00000073;--shadow-float:0 12px 48px #0000008c;--shadow-popover:0 16px 48px #00000080}.app-sidebar-push{transform:translateZ(0)}@media (min-width:768px){.app-sidebar-push{transition:width .2s cubic-bezier(.4,0,.2,1)}.app-sidebar-expanded-width{width:var(--sidebar-expanded-px,16rem)}}.app-sidebar-push.sidebar-width-resizing{transition:none!important}@media (prefers-reduced-motion:reduce){.app-sidebar-push{transition:none}}@media (min-width:768px){.settings-page-rail{width:var(--sidebar-expanded-px,16rem);transition:width .2s cubic-bezier(.4,0,.2,1);transform:translateZ(0)}}.settings-page-rail.settings-page-rail-resizing{transition:none!important}@media (prefers-reduced-motion:reduce){.settings-page-rail{transition:none}}@keyframes page-enter{0%{opacity:0;transform:translateY(4px)translateZ(0)}to{opacity:1;transform:translateY(0)translateZ(0)}}.page-enter{animation:.2s both page-enter}.page-enter--gentle{animation-duration:.28s;animation-timing-function:cubic-bezier(.22,1,.36,1)}@media (prefers-reduced-motion:reduce){.page-enter,.page-enter--gentle{animation:none}}@media (prefers-reduced-motion:no-preference){::view-transition-old(root){animation-duration:.42s;animation-timing-function:ease}::view-transition-new(root){animation-duration:.42s;animation-timing-function:ease}}html[data-color-scheme=emerald]{--color-surface-base:#f0fdf4;--color-surface-panel:#fff;--color-surface-hover:#dcfce7;--color-surface-active:#bbf7d0;--color-fg:#052e16;--color-fg-muted:#166534;--color-fg-subtle:#15803d;--color-fg-disabled:#86efac;--color-edge-subtle:#bbf7d0;--color-edge:#86efac;--color-edge-strong:#4ade80;--color-accent:#059669;--color-accent-hover:#047857;--color-accent-soft:#d1fae5;--color-accent-fg:#047857;--color-checkbox-accent:#059669;--color-success:#059669;--color-success-soft:#d1fae5;--color-danger:#dc2626;--color-danger-soft:#fee2e2;--color-warning:#d97706;--color-warning-soft:#fef3c7;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem}html.dark[data-color-scheme=emerald]{--color-surface-base:#000;--color-surface-panel:#0a0a0a;--color-surface-hover:#111;--color-surface-active:#1a1a1a;--color-fg:#d1fae5;--color-fg-muted:#6ee7b7;--color-fg-subtle:#34d399;--color-fg-disabled:#065f46;--color-edge-subtle:#0d2818;--color-edge:#134e2a;--color-edge-strong:#166534;--color-accent:#10b981;--color-accent-hover:#34d399;--color-accent-soft:#064e3b99;--color-accent-fg:#34d399;--color-checkbox-accent:#10b981;--color-success:#34d399;--color-success-soft:#064e3b80;--color-danger:#f87171;--color-danger-soft:#7f1d1d80;--color-warning:#fbbf24;--color-warning-soft:#713f1280;--color-scrim:#000000b8;--shadow-surface:0 0 0 1px #10b9811a;--shadow-elevated:0 8px 32px #000c, 0 0 0 1px #10b98112;--shadow-float:0 12px 48px #000000e6, 0 0 0 1px #10b9810f;--shadow-popover:0 16px 48px #000000d9, 0 0 0 1px #10b9811f;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-edge-strong);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--color-fg-subtle)}.chat-messages{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#bcbcc094 transparent}@supports (color:color-mix(in lab, red, red)){.chat-messages{scrollbar-color:color-mix(in srgb, var(--color-edge-strong) 58%, transparent) transparent}}.chat-messages{overscroll-behavior-y:contain}.markdown-content{min-width:0;max-width:100%}.markdown-content .markdown-body{overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%}.markdown-content .markdown-body pre{box-sizing:border-box;min-width:0;max-width:100%}.markdown-content .markdown-body pre code.hljs{box-sizing:border-box;max-width:100%}.markdown-content .markdown-body table{table-layout:fixed;max-width:100%}.markdown-content .markdown-body th,.markdown-content .markdown-body td{word-break:break-word;overflow-wrap:anywhere}html.dark .chat-messages{scrollbar-color:#d2d2d7b8 transparent}@supports (color:color-mix(in lab, red, red)){html.dark .chat-messages{scrollbar-color:color-mix(in srgb, var(--color-edge) 72%, transparent) transparent}}.chat-messages::-webkit-scrollbar{width:10px}.chat-messages::-webkit-scrollbar-track{background:0 0}.chat-messages::-webkit-scrollbar-thumb{background-color:#bcbcc080;background-clip:content-box;border:3px solid #0000;border-radius:9999px}@supports (color:color-mix(in lab, red, red)){.chat-messages::-webkit-scrollbar-thumb{background-color:color-mix(in srgb, var(--color-edge-strong) 50%, transparent)}}.chat-messages::-webkit-scrollbar-thumb:hover{background-color:#86868b61}@supports (color:color-mix(in lab, red, red)){.chat-messages::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb, var(--color-fg-subtle) 38%, transparent)}}html.dark .chat-messages::-webkit-scrollbar-thumb{background-color:#d2d2d78c}@supports (color:color-mix(in lab, red, red)){html.dark .chat-messages::-webkit-scrollbar-thumb{background-color:color-mix(in srgb, var(--color-edge) 55%, transparent)}}html.dark .chat-messages::-webkit-scrollbar-thumb:hover{background-color:#6e6e7373}@supports (color:color-mix(in lab, red, red)){html.dark .chat-messages::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb, var(--color-fg-muted) 45%, transparent)}}.app-sidebar-nav-scroll{-ms-overflow-style:none;scrollbar-width:none}.app-sidebar-nav-scroll::-webkit-scrollbar{width:0;height:0;display:none}@keyframes xopc-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes xopc-drawer-in{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes xopc-dialog-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes xopc-dialog-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes xopc-dialog-content-in{0%{opacity:0}to{opacity:1}}@keyframes xopc-dialog-content-out{0%{opacity:1}to{opacity:0}}@keyframes xopc-dialog-fullscreen-in{0%{opacity:0}to{opacity:1}}@keyframes xopc-dialog-fullscreen-out{0%{opacity:1}to{opacity:0}}@keyframes xopc-dialog-pane-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes xopc-dialog-pane-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@keyframes xopc-drawer-right-in{0%{opacity:.92;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes xopc-drawer-right-out{0%{opacity:1;transform:translate(0)}to{opacity:.92;transform:translate(100%)}}.xopc-dialog-overlay[data-state=open]{animation:.2s ease-out both xopc-dialog-overlay-in}.xopc-dialog-overlay[data-state=closed]{animation:.15s ease-in both xopc-dialog-overlay-out}.xopc-dialog-content[data-state=open]{animation:.25s cubic-bezier(.32,.72,0,1) both xopc-dialog-content-in}.xopc-dialog-content[data-state=closed]{animation:.2s ease-in both xopc-dialog-content-out}.xopc-dialog-content-fullscreen[data-state=open]{animation:.25s cubic-bezier(.32,.72,0,1) both xopc-dialog-fullscreen-in}.xopc-dialog-content-fullscreen[data-state=closed]{animation:.2s ease-in both xopc-dialog-fullscreen-out}.xopc-dialog-content-pane[data-state=open]{animation:.25s cubic-bezier(.32,.72,0,1) both xopc-dialog-pane-in}.xopc-dialog-content-pane[data-state=closed]{animation:.2s ease-in both xopc-dialog-pane-out}.xopc-drawer-right[data-state=open]{animation:.38s cubic-bezier(.22,1,.36,1) both xopc-drawer-right-in}.xopc-drawer-right[data-state=closed]{animation:.24s cubic-bezier(.4,0,1,1) both xopc-drawer-right-out}.xopc-mobile-nav-overlay[data-state=open]{animation:.2s ease-out both xopc-overlay-in}.xopc-mobile-nav-overlay[data-state=closed]{animation:.15s ease-in both xopc-dialog-overlay-out}.xopc-mobile-nav-content[data-state=open]{animation:.28s cubic-bezier(.32,.72,0,1) both xopc-drawer-in}@media (prefers-reduced-motion:reduce){*,:before,:after{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-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@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-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-content{syntax:"*";inherits:false;initial-value:""}@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(360deg)}}@keyframes pulse{50%{opacity:.5}}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./cn-DPF56z7S.js";var t=e(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),n=e(`eye-off`,[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`,key:`ct8e1f`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`,key:`151rxh`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`,key:`13bj9a`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),r=e(`pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),i={settingsAppearance:`appearance`,settingsAgentDefaults:`agent-defaults`,settingsAgents:`agents`,settingsProviders:`providers`,settingsModels:`models`,settingsChannels:`channels`,settingsVoice:`voice`,settingsGateway:`gateway`,settingsHeartbeat:`heartbeat`,settingsSearch:`search`};function a(e){return i[e]??null}var o=[{id:`interface`,tabs:[`settingsAppearance`]},{id:`data`,tabs:[`sessions`,`logs`]},{id:`agentAndModels`,tabs:[`settingsProviders`,`settingsModels`,`settingsAgentDefaults`,`settingsSearch`]},{id:`voice`,tabs:[`settingsVoice`]},{id:`gateway`,tabs:[`settingsGateway`,`settingsHeartbeat`]}];o.filter(e=>e.id!==`data`).flatMap(e=>[...e.tabs]),o.flatMap(e=>[...e.tabs]);var s=`https://xopcai.github.io/xopc`;function c(e){return e===`zh`?`${s}/zh/`:`${s}/`}function l(e,t){let n=t.replace(/^\/+/,``).replace(/\.md$/,``);return e===`zh`?`${s}/zh/${n}`:`${s}/${n}`}function u(e){if(e===`chat`)return`/chat`;if(e===`cron`)return`/cron`;if(e===`skills`)return`/skills`;if(e===`channels`||e===`settingsChannels`)return`/channels`;if(e===`agents`||e===`settingsAgents`)return`/agents`;let t=a(e);return t?`/settings/${t}`:e===`sessions`||e===`logs`?`/settings/${e}`:`/${e}`}export{r as a,u as i,l as n,n as o,c as r,t as s,o as t};
|
|
2
|
-
//# sourceMappingURL=navigation-BpLKd2Ca.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-BpLKd2Ca.js","names":["__iconNode","__iconNode"],"sources":["../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/copy.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/eye-off.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/pencil.js","../../../../../web/src/navigation/index.ts"],"sourcesContent":["/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"14\", height: \"14\", x: \"8\", y: \"8\", rx: \"2\", ry: \"2\", key: \"17jyea\" }],\n [\"path\", { d: \"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\", key: \"zix9uf\" }]\n];\nconst Copy = createLucideIcon(\"copy\", __iconNode);\n\nexport { __iconNode, Copy as default };\n//# sourceMappingURL=copy.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49\",\n key: \"ct8e1f\"\n }\n ],\n [\"path\", { d: \"M14.084 14.158a3 3 0 0 1-4.242-4.242\", key: \"151rxh\" }],\n [\n \"path\",\n {\n d: \"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143\",\n key: \"13bj9a\"\n }\n ],\n [\"path\", { d: \"m2 2 20 20\", key: \"1ooewy\" }]\n];\nconst EyeOff = createLucideIcon(\"eye-off\", __iconNode);\n\nexport { __iconNode, EyeOff as default };\n//# sourceMappingURL=eye-off.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z\",\n key: \"1a8usu\"\n }\n ],\n [\"path\", { d: \"m15 5 4 4\", key: \"1mk7zo\" }]\n];\nconst Pencil = createLucideIcon(\"pencil\", __iconNode);\n\nexport { __iconNode, Pencil as default };\n//# sourceMappingURL=pencil.js.map\n","import type { StoredLanguage } from '@/lib/storage';\n\nimport type { SettingsSectionId, Tab } from '@/i18n/messages';\n\nexport type { SettingsSectionId, Tab } from '@/i18n/messages';\n\nexport type ChatRoute =\n | { type: 'recent' }\n | { type: 'session'; sessionKey: string }\n | { type: 'new' };\n\nconst SETTINGS_SECTION_TO_TAB: Record<SettingsSectionId, Tab> = {\n appearance: 'settingsAppearance',\n agent: 'settingsAgents',\n 'agent-defaults': 'settingsAgentDefaults',\n agents: 'settingsAgents',\n providers: 'settingsProviders',\n models: 'settingsModels',\n channels: 'settingsChannels',\n voice: 'settingsVoice',\n gateway: 'settingsGateway',\n heartbeat: 'settingsHeartbeat',\n search: 'settingsSearch',\n};\n\nconst TAB_TO_SETTINGS_SECTION: Record<\n | 'settingsAppearance'\n | 'settingsAgentDefaults'\n | 'settingsAgents'\n | 'settingsProviders'\n | 'settingsModels'\n | 'settingsChannels'\n | 'settingsVoice'\n | 'settingsGateway'\n | 'settingsHeartbeat'\n | 'settingsSearch',\n SettingsSectionId\n> = {\n settingsAppearance: 'appearance',\n settingsAgentDefaults: 'agent-defaults',\n settingsAgents: 'agents',\n settingsProviders: 'providers',\n settingsModels: 'models',\n settingsChannels: 'channels',\n settingsVoice: 'voice',\n settingsGateway: 'gateway',\n settingsHeartbeat: 'heartbeat',\n settingsSearch: 'search',\n};\n\nexport function settingsSectionToTab(section: SettingsSectionId): Tab {\n return SETTINGS_SECTION_TO_TAB[section];\n}\n\nexport function tabToSettingsSection(tab: Tab): SettingsSectionId | null {\n return TAB_TO_SETTINGS_SECTION[tab as keyof typeof TAB_TO_SETTINGS_SECTION] ?? null;\n}\n\n/** Group keys for `messages(lang).settingsNavGroups` — left rail sections + sort order. */\nexport type SettingsNavGroupId =\n | 'interface'\n | 'agentAndModels'\n | 'voice'\n | 'gateway'\n | 'data';\n\nexport type SettingsShellNavGroup = {\n id: SettingsNavGroupId;\n tabs: readonly Tab[];\n};\n\n/**\n * Priority: general UX → history → AI (providers → models → agent → search) → voice →\n * connection/heartbeat → extensions (rendered last in settings shell).\n * Cron, skills, IM channels, and agents live under the main app shell (`/cron`, `/skills`, `/channels`, `/agents`), not here.\n * See `settingsNavGroups` copy in i18n.\n */\nexport const SETTINGS_SHELL_NAV_GROUPS: readonly SettingsShellNavGroup[] = [\n { id: 'interface', tabs: ['settingsAppearance'] },\n { id: 'data', tabs: ['sessions', 'logs'] },\n {\n id: 'agentAndModels',\n tabs: ['settingsProviders', 'settingsModels', 'settingsAgentDefaults', 'settingsSearch'],\n },\n { id: 'voice', tabs: ['settingsVoice'] },\n { id: 'gateway', tabs: ['settingsGateway', 'settingsHeartbeat'] },\n] as const;\n\n/** Flat order: settings routes only (excludes sessions/logs). */\nexport const SETTINGS_NAV_TABS: readonly Tab[] = SETTINGS_SHELL_NAV_GROUPS.filter(\n (g) => g.id !== 'data',\n).flatMap((g) => [...g.tabs]);\n\n/** Settings shell: full left rail including sessions + logs. */\nexport const SETTINGS_SHELL_NAV_TABS: readonly Tab[] = SETTINGS_SHELL_NAV_GROUPS.flatMap((g) => [...g.tabs]);\n\n/** Official docs site (VitePress `base: /xopc/`). */\nexport const HELP_DOCS_BASE_URL = 'https://xopcai.github.io/xopc';\n\n/** Sidebar “Documentation” — English root vs `zh/` locale home. */\nexport function helpDocsHomeUrl(language: StoredLanguage): string {\n return language === 'zh' ? `${HELP_DOCS_BASE_URL}/zh/` : `${HELP_DOCS_BASE_URL}/`;\n}\n\n/**\n * Path to a VitePress guide page (e.g. `models` → `/models.md` in repo root `docs/`).\n * Chinese lives under `docs/zh/` → `/zh/<page>` on the site.\n */\nexport function docsGuidePageUrl(language: StoredLanguage, page: string): string {\n const slug = page.replace(/^\\/+/, '').replace(/\\.md$/, '');\n if (language === 'zh') {\n return `${HELP_DOCS_BASE_URL}/zh/${slug}`;\n }\n return `${HELP_DOCS_BASE_URL}/${slug}`;\n}\n\n/** Parse `#/settings/<section>` etc. Returns null if not a settings route. */\nexport function parseSettingsHash(hash: string): SettingsSectionId | null {\n let h = hash.startsWith('#') ? hash.slice(1) : hash;\n if (h.startsWith('/')) h = h.slice(1);\n if (h === 'settings' || h === 'settings/') {\n return 'appearance';\n }\n if (!h.startsWith('settings/')) return null;\n const rest = h.slice('settings/'.length);\n const parts = rest.split('/').filter(Boolean);\n const section = parts[0];\n if (!section) return 'appearance';\n if (section === 'agents' && parts.length > 1) {\n return 'agents';\n }\n return section in SETTINGS_SECTION_TO_TAB ? (section as SettingsSectionId) : null;\n}\n\nexport function getSettingsHash(section: SettingsSectionId): string {\n return `#/settings/${section}`;\n}\n\nexport function parseChatHash(hash: string): ChatRoute | null {\n const withoutHash = hash.startsWith('#') ? hash.slice(1) : hash;\n const cleanHash = withoutHash.replace(/^\\/?chat\\/?/, '');\n\n if (!cleanHash || cleanHash === '/') {\n return { type: 'recent' };\n }\n\n const path = cleanHash.replace(/^\\/?/, '');\n\n if (path === 'new') {\n return { type: 'new' };\n }\n\n if (path && path.length > 0) {\n return { type: 'session', sessionKey: decodeURIComponent(path) };\n }\n\n return { type: 'recent' };\n}\n\nexport function getChatHash(route: ChatRoute): string {\n switch (route.type) {\n case 'recent':\n return '#/chat';\n case 'new':\n return '#/chat/new';\n case 'session':\n return `#/chat/${encodeURIComponent(route.sessionKey)}`;\n }\n}\n\n/** Path for React Router `to` prop (hash router, no `#`). */\nexport function pathForTab(tab: Tab): string {\n if (tab === 'chat') return '/chat';\n if (tab === 'cron') return '/cron';\n if (tab === 'skills') return '/skills';\n if (tab === 'channels' || tab === 'settingsChannels') return '/channels';\n if (tab === 'agents' || tab === 'settingsAgents') return '/agents';\n const section = tabToSettingsSection(tab);\n if (section) return `/settings/${section}`;\n if (tab === 'sessions' || tab === 'logs') {\n return `/settings/${tab}`;\n }\n return `/${tab}`;\n}\n"],"x_google_ignoreList":[0,1,2],"mappings":"qCAaA,IAAM,EAAO,EAAiB,OAJX,CACjB,CAAC,OAAQ,CAAE,MAAO,KAAM,OAAQ,KAAM,EAAG,IAAK,EAAG,IAAK,GAAI,IAAK,GAAI,IAAK,IAAK,SAAU,CAAC,CACxF,CAAC,OAAQ,CAAE,EAAG,0DAA2D,IAAK,SAAU,CAAC,CAC1F,CACgD,CCc3C,EAAS,EAAiB,UAlBb,CACjB,CACE,OACA,CACE,EAAG,iGACH,IAAK,SACN,CACF,CACD,CAAC,OAAQ,CAAE,EAAG,uCAAwC,IAAK,SAAU,CAAC,CACtE,CACE,OACA,CACE,EAAG,+FACH,IAAK,SACN,CACF,CACD,CAAC,OAAQ,CAAE,EAAG,aAAc,IAAK,SAAU,CAAC,CAC7C,CACqD,CCRhD,EAAS,EAAiB,SAVb,CACjB,CACE,OACA,CACE,EAAG,mIACH,IAAK,SACN,CACF,CACD,CAAC,OAAQ,CAAE,EAAG,YAAa,IAAK,SAAU,CAAC,CAC5C,CACoD,CCM/C,EAYF,CACF,mBAAoB,aACpB,sBAAuB,iBACvB,eAAgB,SAChB,kBAAmB,YACnB,eAAgB,SAChB,iBAAkB,WAClB,cAAe,QACf,gBAAiB,UACjB,kBAAmB,YACnB,eAAgB,SACjB,CAMD,SAAgB,EAAqB,EAAoC,CACvE,OAAO,EAAwB,IAAgD,KAsBjF,IAAa,EAA8D,CACzE,CAAE,GAAI,YAAa,KAAM,CAAC,qBAAqB,CAAE,CACjD,CAAE,GAAI,OAAQ,KAAM,CAAC,WAAY,OAAO,CAAE,CAC1C,CACE,GAAI,iBACJ,KAAM,CAAC,oBAAqB,iBAAkB,wBAAyB,iBAAiB,CACzF,CACD,CAAE,GAAI,QAAS,KAAM,CAAC,gBAAgB,CAAE,CACxC,CAAE,GAAI,UAAW,KAAM,CAAC,kBAAmB,oBAAoB,CAAE,CAClE,CAGgD,EAA0B,OACxE,GAAM,EAAE,KAAO,OACjB,CAAC,QAAS,GAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAG0B,EAA0B,QAAS,GAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAG5G,IAAa,EAAqB,gCAGlC,SAAgB,EAAgB,EAAkC,CAChE,OAAO,IAAa,KAAO,GAAG,EAAmB,MAAQ,GAAG,EAAmB,GAOjF,SAAgB,EAAiB,EAA0B,EAAsB,CAC/E,IAAM,EAAO,EAAK,QAAQ,OAAQ,GAAG,CAAC,QAAQ,QAAS,GAAG,CAI1D,OAHI,IAAa,KACR,GAAG,EAAmB,MAAM,IAE9B,GAAG,EAAmB,GAAG,IA0DlC,SAAgB,EAAW,EAAkB,CAC3C,GAAI,IAAQ,OAAQ,MAAO,QAC3B,GAAI,IAAQ,OAAQ,MAAO,QAC3B,GAAI,IAAQ,SAAU,MAAO,UAC7B,GAAI,IAAQ,YAAc,IAAQ,mBAAoB,MAAO,YAC7D,GAAI,IAAQ,UAAY,IAAQ,iBAAkB,MAAO,UACzD,IAAM,EAAU,EAAqB,EAAI,CAKzC,OAJI,EAAgB,aAAa,IAC7B,IAAQ,YAAc,IAAQ,OACzB,aAAa,IAEf,IAAI"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./vendor-react-QAsRxa6t.js";import{c as t,l as n,s as r}from"./url-QmwQTJ-j.js";import{r as i,t as a}from"./cn-DPF56z7S.js";import{o}from"./form-field-width-BlpNwrfn.js";import{a as s,i as c}from"./theme-store-CPTH77BE.js";var l=i(`box`,[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]),u=i(`circle-alert`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]]),d=i(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),f=i(`heart`,[[`path`,{d:`M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5`,key:`mvr1a0`}]]),p=i(`key-round`,[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]),m=i(`log-in`,[[`path`,{d:`m10 17 5-5-5-5`,key:`1bsop3`}],[`path`,{d:`M15 12H3`,key:`6jk70r`}],[`path`,{d:`M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4`,key:`u53s6r`}]]),h=i(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),g=i(`mic`,[[`path`,{d:`M12 19v3`,key:`npa21l`}],[`path`,{d:`M19 10v2a7 7 0 0 1-14 0v-2`,key:`1vc78b`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`13`,rx:`3`,key:`s6n7sd`}]]),_=i(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),v=i(`server`,[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`,key:`ngkwjq`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`,key:`iecqi9`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`,key:`16zg32`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`,key:`nzw8ys`}]]),y=i(`volume-2`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`path`,{d:`M16 9a5 5 0 0 1 0 6`,key:`1q6k2b`}],[`path`,{d:`M19.364 18.364a9 9 0 0 0 0-12.728`,key:`ijwkga`}]]),b=[`compact`,`default`,`large`];function x(e){document.documentElement.dataset.fontScale=e}function S(){try{let e=localStorage.getItem(`xopc-web-font-scale`),t=`default`;if(e){let n=JSON.parse(e).state?.preference;n&&b.includes(n)&&(t=n)}x(t)}catch{x(`default`)}}var C=t(s(e=>({preference:`default`,setPreference:t=>{x(t),e({preference:t})}}),{name:`xopc-web-font-scale`}));function w(){x(C.getState().preference)}var T=e(),E=[`language`,`theme`,`font`];function D({variant:e,sections:t=E}){let i=r(e=>e.language),s=r(e=>e.setLanguage),l=c(e=>e.preference),u=c(e=>e.setPreference),d=C(e=>e.preference),f=C(e=>e.setPreference),p=n(i).appearanceSettings,m=a(o,e===`page`?`w-full max-w-[min(100%,12rem)] shrink-0 sm:ml-auto sm:w-auto sm:max-w-[11rem]`:e===`toolbar`?`w-auto min-w-[6.5rem] max-w-[10rem] shrink-0 sm:min-w-[7.5rem]`:`w-full`),h=e===`page`?`flex flex-col gap-2 border-b border-edge-subtle py-3.5 last:border-b-0 sm:flex-row sm:items-center sm:justify-between sm:gap-6 sm:py-4`:`flex flex-col gap-1.5`,g=e=>t.includes(e);return e===`toolbar`?(0,T.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:[g(`language`)?(0,T.jsxs)(`select`,{className:m,value:i,"aria-label":p.languageTitle,onChange:e=>s(e.target.value),children:[(0,T.jsx)(`option`,{value:`en`,children:p.langOptionEn}),(0,T.jsx)(`option`,{value:`zh`,children:p.langOptionZh})]}):null,g(`theme`)?(0,T.jsxs)(`select`,{className:m,value:l,"aria-label":p.themeTitle,onChange:e=>u(e.target.value),children:[(0,T.jsx)(`option`,{value:`light`,children:p.themeOptionLight}),(0,T.jsx)(`option`,{value:`dark`,children:p.themeOptionDark}),(0,T.jsx)(`option`,{value:`system`,children:p.themeOptionSystem})]}):null,g(`font`)?(0,T.jsxs)(`select`,{className:m,value:d,"aria-label":p.fontScaleTitle,onChange:e=>f(e.target.value),children:[(0,T.jsx)(`option`,{value:`compact`,children:p.fontScaleCompact}),(0,T.jsx)(`option`,{value:`default`,children:p.fontScaleDefault}),(0,T.jsx)(`option`,{value:`large`,children:p.fontScaleLarge})]}):null]}):(0,T.jsxs)(`div`,{className:a(e===`sidebar`&&`flex flex-col gap-4`),children:[g(`language`)?(0,T.jsxs)(`div`,{className:h,children:[(0,T.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,T.jsx)(`div`,{className:`text-sm font-semibold text-fg`,children:p.languageTitle}),(0,T.jsx)(`p`,{className:`mt-0.5 text-xs text-fg-muted`,children:p.languageDescription})]}),(0,T.jsxs)(`select`,{className:m,value:i,"aria-label":p.languageTitle,onChange:e=>s(e.target.value),children:[(0,T.jsx)(`option`,{value:`en`,children:p.langOptionEn}),(0,T.jsx)(`option`,{value:`zh`,children:p.langOptionZh})]})]}):null,g(`theme`)?(0,T.jsxs)(`div`,{className:h,children:[(0,T.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,T.jsx)(`div`,{className:`text-sm font-semibold text-fg`,children:p.themeTitle}),(0,T.jsx)(`p`,{className:`mt-0.5 text-xs text-fg-muted`,children:p.themeDescription})]}),(0,T.jsxs)(`select`,{className:m,value:l,"aria-label":p.themeTitle,onChange:e=>u(e.target.value),children:[(0,T.jsx)(`option`,{value:`light`,children:p.themeOptionLight}),(0,T.jsx)(`option`,{value:`dark`,children:p.themeOptionDark}),(0,T.jsx)(`option`,{value:`system`,children:p.themeOptionSystem})]})]}):null,g(`font`)?(0,T.jsxs)(`div`,{className:h,children:[(0,T.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,T.jsx)(`div`,{className:`text-sm font-semibold text-fg`,children:p.fontScaleTitle}),(0,T.jsx)(`p`,{className:`mt-0.5 text-xs text-fg-muted`,children:p.fontScaleDescription})]}),(0,T.jsxs)(`select`,{className:m,value:d,"aria-label":p.fontScaleTitle,onChange:e=>f(e.target.value),children:[(0,T.jsx)(`option`,{value:`compact`,children:p.fontScaleCompact}),(0,T.jsx)(`option`,{value:`default`,children:p.fontScaleDefault}),(0,T.jsx)(`option`,{value:`large`,children:p.fontScaleLarge})]})]}):null]})}export{y as a,g as c,p as d,f,l as h,C as i,h as l,u as m,S as n,v as o,d as p,w as r,_ as s,D as t,m as u};
|
|
2
|
-
//# sourceMappingURL=preference-select-fields-B4AJBqUY.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"preference-select-fields-B4AJBqUY.js","names":["__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode"],"sources":["../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/box.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/circle-alert.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/circle-check.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/heart.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/key-round.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/log-in.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/log-out.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/mic.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/play.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/server.js","../../../../../node_modules/.pnpm/lucide-react@1.8.0_react@19.2.5/node_modules/lucide-react/dist/esm/icons/volume-2.js","../../../../../web/src/stores/font-scale-store.ts","../../../../../web/src/components/shell/preference-select-fields.tsx"],"sourcesContent":["/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\",\n key: \"hh9hay\"\n }\n ],\n [\"path\", { d: \"m3.3 7 8.7 5 8.7-5\", key: \"g66t2b\" }],\n [\"path\", { d: \"M12 22V12\", key: \"d0xqtd\" }]\n];\nconst Box = createLucideIcon(\"box\", __iconNode);\n\nexport { __iconNode, Box as default };\n//# sourceMappingURL=box.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"line\", { x1: \"12\", x2: \"12\", y1: \"8\", y2: \"12\", key: \"1pkeuh\" }],\n [\"line\", { x1: \"12\", x2: \"12.01\", y1: \"16\", y2: \"16\", key: \"4dfq90\" }]\n];\nconst CircleAlert = createLucideIcon(\"circle-alert\", __iconNode);\n\nexport { __iconNode, CircleAlert as default };\n//# sourceMappingURL=circle-alert.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"path\", { d: \"m9 12 2 2 4-4\", key: \"dzmm74\" }]\n];\nconst CircleCheck = createLucideIcon(\"circle-check\", __iconNode);\n\nexport { __iconNode, CircleCheck as default };\n//# sourceMappingURL=circle-check.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5\",\n key: \"mvr1a0\"\n }\n ]\n];\nconst Heart = createLucideIcon(\"heart\", __iconNode);\n\nexport { __iconNode, Heart as default };\n//# sourceMappingURL=heart.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z\",\n key: \"1s6t7t\"\n }\n ],\n [\"circle\", { cx: \"16.5\", cy: \"7.5\", r: \".5\", fill: \"currentColor\", key: \"w0ekpg\" }]\n];\nconst KeyRound = createLucideIcon(\"key-round\", __iconNode);\n\nexport { __iconNode, KeyRound as default };\n//# sourceMappingURL=key-round.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m10 17 5-5-5-5\", key: \"1bsop3\" }],\n [\"path\", { d: \"M15 12H3\", key: \"6jk70r\" }],\n [\"path\", { d: \"M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4\", key: \"u53s6r\" }]\n];\nconst LogIn = createLucideIcon(\"log-in\", __iconNode);\n\nexport { __iconNode, LogIn as default };\n//# sourceMappingURL=log-in.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m16 17 5-5-5-5\", key: \"1bji2h\" }],\n [\"path\", { d: \"M21 12H9\", key: \"dn1m92\" }],\n [\"path\", { d: \"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4\", key: \"1uf3rs\" }]\n];\nconst LogOut = createLucideIcon(\"log-out\", __iconNode);\n\nexport { __iconNode, LogOut as default };\n//# sourceMappingURL=log-out.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 19v3\", key: \"npa21l\" }],\n [\"path\", { d: \"M19 10v2a7 7 0 0 1-14 0v-2\", key: \"1vc78b\" }],\n [\"rect\", { x: \"9\", y: \"2\", width: \"6\", height: \"13\", rx: \"3\", key: \"s6n7sd\" }]\n];\nconst Mic = createLucideIcon(\"mic\", __iconNode);\n\nexport { __iconNode, Mic as default };\n//# sourceMappingURL=mic.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z\",\n key: \"10ikf1\"\n }\n ]\n];\nconst Play = createLucideIcon(\"play\", __iconNode);\n\nexport { __iconNode, Play as default };\n//# sourceMappingURL=play.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"20\", height: \"8\", x: \"2\", y: \"2\", rx: \"2\", ry: \"2\", key: \"ngkwjq\" }],\n [\"rect\", { width: \"20\", height: \"8\", x: \"2\", y: \"14\", rx: \"2\", ry: \"2\", key: \"iecqi9\" }],\n [\"line\", { x1: \"6\", x2: \"6.01\", y1: \"6\", y2: \"6\", key: \"16zg32\" }],\n [\"line\", { x1: \"6\", x2: \"6.01\", y1: \"18\", y2: \"18\", key: \"nzw8ys\" }]\n];\nconst Server = createLucideIcon(\"server\", __iconNode);\n\nexport { __iconNode, Server as default };\n//# sourceMappingURL=server.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z\",\n key: \"uqj9uw\"\n }\n ],\n [\"path\", { d: \"M16 9a5 5 0 0 1 0 6\", key: \"1q6k2b\" }],\n [\"path\", { d: \"M19.364 18.364a9 9 0 0 0 0-12.728\", key: \"ijwkga\" }]\n];\nconst Volume2 = createLucideIcon(\"volume-2\", __iconNode);\n\nexport { __iconNode, Volume2 as default };\n//# sourceMappingURL=volume-2.js.map\n","import { create } from 'zustand';\nimport { persist } from 'zustand/middleware';\n\nexport type FontScalePreference = 'compact' | 'default' | 'large';\n\nconst VALID: readonly FontScalePreference[] = ['compact', 'default', 'large'];\n\nfunction applyDomFontScale(pref: FontScalePreference) {\n document.documentElement.dataset.fontScale = pref;\n}\n\n/** Sync DOM from localStorage before React paint (zustand persist hydrates async). */\nexport function bootstrapFontScale() {\n try {\n const raw = localStorage.getItem('xopc-web-font-scale');\n let pref: FontScalePreference = 'default';\n if (raw) {\n const parsed = JSON.parse(raw) as { state?: { preference?: FontScalePreference } };\n const p = parsed.state?.preference;\n if (p && (VALID as readonly string[]).includes(p)) pref = p;\n }\n applyDomFontScale(pref);\n } catch {\n applyDomFontScale('default');\n }\n}\n\ntype FontScaleState = {\n preference: FontScalePreference;\n setPreference: (p: FontScalePreference) => void;\n};\n\nexport const useFontScaleStore = create(\n persist<FontScaleState>(\n (set) => ({\n preference: 'default',\n\n setPreference: (preference) => {\n applyDomFontScale(preference);\n set({ preference });\n },\n }),\n {\n name: 'xopc-web-font-scale',\n },\n ),\n);\n\nexport function syncFontScaleAfterHydration() {\n applyDomFontScale(useFontScaleStore.getState().preference);\n}\n","import type { StoredLanguage } from '@/lib/storage';\nimport { selectControlBaseClass } from '@/lib/form-field-width';\nimport { cn } from '@/lib/cn';\nimport { messages } from '@/i18n/messages';\nimport { useLocaleStore } from '@/stores/locale-store';\nimport { type FontScalePreference, useFontScaleStore } from '@/stores/font-scale-store';\nimport { type ThemePreference, useThemeStore } from '@/stores/theme-store';\n\ntype Variant = 'page' | 'sidebar' | 'toolbar';\n\nexport type PreferenceSection = 'language' | 'theme' | 'font';\n\nconst ALL_SECTIONS: readonly PreferenceSection[] = ['language', 'theme', 'font'];\n\nexport function PreferenceSelectFields({\n variant,\n sections = ALL_SECTIONS,\n}: {\n variant: Variant;\n sections?: readonly PreferenceSection[];\n}) {\n const language = useLocaleStore((s) => s.language);\n const setLanguage = useLocaleStore((s) => s.setLanguage);\n const themePref = useThemeStore((s) => s.preference);\n const setThemePref = useThemeStore((s) => s.setPreference);\n const fontPref = useFontScaleStore((s) => s.preference);\n const setFontPref = useFontScaleStore((s) => s.setPreference);\n\n const m = messages(language);\n const a = m.appearanceSettings;\n\n /** Page layout: short control width (labels are short); avoid `w-full` stretching on wide rows. */\n const selectClass = cn(\n selectControlBaseClass,\n variant === 'page'\n ? 'w-full max-w-[min(100%,12rem)] shrink-0 sm:ml-auto sm:w-auto sm:max-w-[11rem]'\n : variant === 'toolbar'\n ? 'w-auto min-w-[6.5rem] max-w-[10rem] shrink-0 sm:min-w-[7.5rem]'\n : 'w-full',\n );\n\n const rowClass =\n variant === 'page'\n ? 'flex flex-col gap-2 border-b border-edge-subtle py-3.5 last:border-b-0 sm:flex-row sm:items-center sm:justify-between sm:gap-6 sm:py-4'\n : 'flex flex-col gap-1.5';\n\n const show = (id: PreferenceSection) => sections.includes(id);\n\n if (variant === 'toolbar') {\n return (\n <div className=\"flex flex-wrap items-center justify-end gap-2\">\n {show('language') ? (\n <select\n className={selectClass}\n value={language}\n aria-label={a.languageTitle}\n onChange={(e) => setLanguage(e.target.value as StoredLanguage)}\n >\n <option value=\"en\">{a.langOptionEn}</option>\n <option value=\"zh\">{a.langOptionZh}</option>\n </select>\n ) : null}\n {show('theme') ? (\n <select\n className={selectClass}\n value={themePref}\n aria-label={a.themeTitle}\n onChange={(e) => setThemePref(e.target.value as ThemePreference)}\n >\n <option value=\"light\">{a.themeOptionLight}</option>\n <option value=\"dark\">{a.themeOptionDark}</option>\n <option value=\"system\">{a.themeOptionSystem}</option>\n </select>\n ) : null}\n {show('font') ? (\n <select\n className={selectClass}\n value={fontPref}\n aria-label={a.fontScaleTitle}\n onChange={(e) => setFontPref(e.target.value as FontScalePreference)}\n >\n <option value=\"compact\">{a.fontScaleCompact}</option>\n <option value=\"default\">{a.fontScaleDefault}</option>\n <option value=\"large\">{a.fontScaleLarge}</option>\n </select>\n ) : null}\n </div>\n );\n }\n\n return (\n <div className={cn(variant === 'sidebar' && 'flex flex-col gap-4')}>\n {show('language') ? (\n <div className={rowClass}>\n <div className=\"min-w-0 flex-1\">\n <div className=\"text-sm font-semibold text-fg\">{a.languageTitle}</div>\n <p className=\"mt-0.5 text-xs text-fg-muted\">{a.languageDescription}</p>\n </div>\n <select\n className={selectClass}\n value={language}\n aria-label={a.languageTitle}\n onChange={(e) => setLanguage(e.target.value as StoredLanguage)}\n >\n <option value=\"en\">{a.langOptionEn}</option>\n <option value=\"zh\">{a.langOptionZh}</option>\n </select>\n </div>\n ) : null}\n\n {show('theme') ? (\n <div className={rowClass}>\n <div className=\"min-w-0 flex-1\">\n <div className=\"text-sm font-semibold text-fg\">{a.themeTitle}</div>\n <p className=\"mt-0.5 text-xs text-fg-muted\">{a.themeDescription}</p>\n </div>\n <select\n className={selectClass}\n value={themePref}\n aria-label={a.themeTitle}\n onChange={(e) => setThemePref(e.target.value as ThemePreference)}\n >\n <option value=\"light\">{a.themeOptionLight}</option>\n <option value=\"dark\">{a.themeOptionDark}</option>\n <option value=\"system\">{a.themeOptionSystem}</option>\n </select>\n </div>\n ) : null}\n\n {show('font') ? (\n <div className={rowClass}>\n <div className=\"min-w-0 flex-1\">\n <div className=\"text-sm font-semibold text-fg\">{a.fontScaleTitle}</div>\n <p className=\"mt-0.5 text-xs text-fg-muted\">{a.fontScaleDescription}</p>\n </div>\n <select\n className={selectClass}\n value={fontPref}\n aria-label={a.fontScaleTitle}\n onChange={(e) => setFontPref(e.target.value as FontScalePreference)}\n >\n <option value=\"compact\">{a.fontScaleCompact}</option>\n <option value=\"default\">{a.fontScaleDefault}</option>\n <option value=\"large\">{a.fontScaleLarge}</option>\n </select>\n </div>\n ) : null}\n </div>\n );\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10],"mappings":"kPAoBA,IAAM,EAAM,EAAiB,MAXV,CACjB,CACE,OACA,CACE,EAAG,yHACH,IAAK,SACN,CACF,CACD,CAAC,OAAQ,CAAE,EAAG,qBAAsB,IAAK,SAAU,CAAC,CACpD,CAAC,OAAQ,CAAE,EAAG,YAAa,IAAK,SAAU,CAAC,CAC5C,CAC8C,CCNzC,EAAc,EAAiB,eALlB,CACjB,CAAC,SAAU,CAAE,GAAI,KAAM,GAAI,KAAM,EAAG,KAAM,IAAK,SAAU,CAAC,CAC1D,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,KAAM,GAAI,IAAK,GAAI,KAAM,IAAK,SAAU,CAAC,CAClE,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,QAAS,GAAI,KAAM,GAAI,KAAM,IAAK,SAAU,CAAC,CACvE,CAC+D,CCD1D,EAAc,EAAiB,eAJlB,CACjB,CAAC,SAAU,CAAE,GAAI,KAAM,GAAI,KAAM,EAAG,KAAM,IAAK,SAAU,CAAC,CAC1D,CAAC,OAAQ,CAAE,EAAG,gBAAiB,IAAK,SAAU,CAAC,CAChD,CAC+D,CCK1D,EAAQ,EAAiB,QATZ,CACjB,CACE,OACA,CACE,EAAG,wJACH,IAAK,SACN,CACF,CACF,CACkD,CCC7C,EAAW,EAAiB,YAVf,CACjB,CACE,OACA,CACE,EAAG,6KACH,IAAK,SACN,CACF,CACD,CAAC,SAAU,CAAE,GAAI,OAAQ,GAAI,MAAO,EAAG,KAAM,KAAM,eAAgB,IAAK,SAAU,CAAC,CACpF,CACyD,CCLpD,EAAQ,EAAiB,SALZ,CACjB,CAAC,OAAQ,CAAE,EAAG,iBAAkB,IAAK,SAAU,CAAC,CAChD,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,SAAU,CAAC,CAC1C,CAAC,OAAQ,CAAE,EAAG,4CAA6C,IAAK,SAAU,CAAC,CAC5E,CACmD,CCA9C,EAAS,EAAiB,UALb,CACjB,CAAC,OAAQ,CAAE,EAAG,iBAAkB,IAAK,SAAU,CAAC,CAChD,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,SAAU,CAAC,CAC1C,CAAC,OAAQ,CAAE,EAAG,0CAA2C,IAAK,SAAU,CAAC,CAC1E,CACqD,CCAhD,EAAM,EAAiB,MALV,CACjB,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,SAAU,CAAC,CAC1C,CAAC,OAAQ,CAAE,EAAG,6BAA8B,IAAK,SAAU,CAAC,CAC5D,CAAC,OAAQ,CAAE,EAAG,IAAK,EAAG,IAAK,MAAO,IAAK,OAAQ,KAAM,GAAI,IAAK,IAAK,SAAU,CAAC,CAC/E,CAC8C,CCIzC,EAAO,EAAiB,OATX,CACjB,CACE,OACA,CACE,EAAG,qFACH,IAAK,SACN,CACF,CACF,CACgD,CCH3C,EAAS,EAAiB,SANb,CACjB,CAAC,OAAQ,CAAE,MAAO,KAAM,OAAQ,IAAK,EAAG,IAAK,EAAG,IAAK,GAAI,IAAK,GAAI,IAAK,IAAK,SAAU,CAAC,CACvF,CAAC,OAAQ,CAAE,MAAO,KAAM,OAAQ,IAAK,EAAG,IAAK,EAAG,KAAM,GAAI,IAAK,GAAI,IAAK,IAAK,SAAU,CAAC,CACxF,CAAC,OAAQ,CAAE,GAAI,IAAK,GAAI,OAAQ,GAAI,IAAK,GAAI,IAAK,IAAK,SAAU,CAAC,CAClE,CAAC,OAAQ,CAAE,GAAI,IAAK,GAAI,OAAQ,GAAI,KAAM,GAAI,KAAM,IAAK,SAAU,CAAC,CACrE,CACoD,CCK/C,EAAU,EAAiB,WAXd,CACjB,CACE,OACA,CACE,EAAG,2KACH,IAAK,SACN,CACF,CACD,CAAC,OAAQ,CAAE,EAAG,sBAAuB,IAAK,SAAU,CAAC,CACrD,CAAC,OAAQ,CAAE,EAAG,oCAAqC,IAAK,SAAU,CAAC,CACpE,CACuD,CCflD,EAAwC,CAAC,UAAW,UAAW,QAAQ,CAE7E,SAAS,EAAkB,EAA2B,CACpD,SAAS,gBAAgB,QAAQ,UAAY,EAI/C,SAAgB,GAAqB,CACnC,GAAI,CACF,IAAM,EAAM,aAAa,QAAQ,sBAAsB,CACnD,EAA4B,UAChC,GAAI,EAAK,CAEP,IAAM,EADS,KAAK,MAAM,EAAI,CACb,OAAO,WACpB,GAAM,EAA4B,SAAS,EAAE,GAAE,EAAO,GAE5D,EAAkB,EAAK,MACjB,CACN,EAAkB,UAAU,EAShC,IAAa,EAAoB,EAC/B,EACG,IAAS,CACR,WAAY,UAEZ,cAAgB,GAAe,CAC7B,EAAkB,EAAW,CAC7B,EAAI,CAAE,aAAY,CAAC,EAEtB,EACD,CACE,KAAM,sBACP,CACF,CACF,CAED,SAAgB,GAA8B,CAC5C,EAAkB,EAAkB,UAAU,CAAC,WAAW,WCrCtD,EAA6C,CAAC,WAAY,QAAS,OAAO,CAEhF,SAAgB,EAAuB,CACrC,UACA,WAAW,GAIV,CACD,IAAM,EAAW,EAAgB,GAAM,EAAE,SAAS,CAC5C,EAAc,EAAgB,GAAM,EAAE,YAAY,CAClD,EAAY,EAAe,GAAM,EAAE,WAAW,CAC9C,EAAe,EAAe,GAAM,EAAE,cAAc,CACpD,EAAW,EAAmB,GAAM,EAAE,WAAW,CACjD,EAAc,EAAmB,GAAM,EAAE,cAAc,CAGvD,EADI,EAAS,EAAS,CAChB,mBAGN,EAAc,EAClB,EACA,IAAY,OACR,gFACA,IAAY,UACV,iEACA,SACP,CAEK,EACJ,IAAY,OACR,yIACA,wBAEA,EAAQ,GAA0B,EAAS,SAAS,EAAG,CA4C7D,OA1CI,IAAY,WAEZ,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,yDAAf,CACG,EAAK,WAAW,EACf,EAAA,EAAA,MAAC,SAAD,CACE,UAAW,EACX,MAAO,EACP,aAAY,EAAE,cACd,SAAW,GAAM,EAAY,EAAE,OAAO,MAAwB,UAJhE,EAME,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,cAAM,EAAE,aAAsB,CAAA,EAC5C,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,cAAM,EAAE,aAAsB,CAAA,CACrC,GACP,KACH,EAAK,QAAQ,EACZ,EAAA,EAAA,MAAC,SAAD,CACE,UAAW,EACX,MAAO,EACP,aAAY,EAAE,WACd,SAAW,GAAM,EAAa,EAAE,OAAO,MAAyB,UAJlE,EAME,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,iBAAS,EAAE,iBAA0B,CAAA,EACnD,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,gBAAQ,EAAE,gBAAyB,CAAA,EACjD,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,kBAAU,EAAE,kBAA2B,CAAA,CAC9C,GACP,KACH,EAAK,OAAO,EACX,EAAA,EAAA,MAAC,SAAD,CACE,UAAW,EACX,MAAO,EACP,aAAY,EAAE,eACd,SAAW,GAAM,EAAY,EAAE,OAAO,MAA6B,UAJrE,EAME,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,mBAAW,EAAE,iBAA0B,CAAA,EACrD,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,mBAAW,EAAE,iBAA0B,CAAA,EACrD,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,iBAAS,EAAE,eAAwB,CAAA,CAC1C,GACP,KACA,IAKR,EAAA,EAAA,MAAC,MAAD,CAAK,UAAW,EAAG,IAAY,WAAa,sBAAsB,UAAlE,CACG,EAAK,WAAW,EACf,EAAA,EAAA,MAAC,MAAD,CAAK,UAAW,WAAhB,EACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,0BAAf,EACE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,yCAAiC,EAAE,cAAoB,CAAA,EACtE,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,wCAAgC,EAAE,oBAAwB,CAAA,CACnE,IACN,EAAA,EAAA,MAAC,SAAD,CACE,UAAW,EACX,MAAO,EACP,aAAY,EAAE,cACd,SAAW,GAAM,EAAY,EAAE,OAAO,MAAwB,UAJhE,EAME,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,cAAM,EAAE,aAAsB,CAAA,EAC5C,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,cAAM,EAAE,aAAsB,CAAA,CACrC,GACL,GACJ,KAEH,EAAK,QAAQ,EACZ,EAAA,EAAA,MAAC,MAAD,CAAK,UAAW,WAAhB,EACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,0BAAf,EACE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,yCAAiC,EAAE,WAAiB,CAAA,EACnE,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,wCAAgC,EAAE,iBAAqB,CAAA,CAChE,IACN,EAAA,EAAA,MAAC,SAAD,CACE,UAAW,EACX,MAAO,EACP,aAAY,EAAE,WACd,SAAW,GAAM,EAAa,EAAE,OAAO,MAAyB,UAJlE,EAME,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,iBAAS,EAAE,iBAA0B,CAAA,EACnD,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,gBAAQ,EAAE,gBAAyB,CAAA,EACjD,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,kBAAU,EAAE,kBAA2B,CAAA,CAC9C,GACL,GACJ,KAEH,EAAK,OAAO,EACX,EAAA,EAAA,MAAC,MAAD,CAAK,UAAW,WAAhB,EACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,0BAAf,EACE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,yCAAiC,EAAE,eAAqB,CAAA,EACvE,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,wCAAgC,EAAE,qBAAyB,CAAA,CACpE,IACN,EAAA,EAAA,MAAC,SAAD,CACE,UAAW,EACX,MAAO,EACP,aAAY,EAAE,eACd,SAAW,GAAM,EAAY,EAAE,OAAO,MAA6B,UAJrE,EAME,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,mBAAW,EAAE,iBAA0B,CAAA,EACrD,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,mBAAW,EAAE,iBAA0B,CAAA,EACrD,EAAA,EAAA,KAAC,SAAD,CAAQ,MAAM,iBAAS,EAAE,eAAwB,CAAA,CAC1C,GACL,GACJ,KACA"}
|