kontexta 4.5.2 → 4.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle/standalone/CHANGELOG.md +53 -0
- package/bundle/standalone/apps/web/.next/BUILD_ID +1 -1
- package/bundle/standalone/apps/web/.next/app-build-manifest.json +97 -83
- package/bundle/standalone/apps/web/.next/app-path-routes-manifest.json +13 -11
- package/bundle/standalone/apps/web/.next/build-manifest.json +2 -2
- package/bundle/standalone/apps/web/.next/prerender-manifest.json +25 -25
- package/bundle/standalone/apps/web/.next/routes-manifest.json +8 -0
- package/bundle/standalone/apps/web/.next/server/app/_not-found/page.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/_not-found.html +1 -1
- package/bundle/standalone/apps/web/.next/server/app/_not-found.rsc +4 -4
- package/bundle/standalone/apps/web/.next/server/app/api/about/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/about/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/login/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/setup/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/setup/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/status/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/token/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/auth/token/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/conflicts/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/conflicts/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/entities/[id]/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/entities/[id]/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/entities/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/entities/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/events/[id]/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/events/[id]/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/events/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/events/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/ics/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/ics/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/links/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/links/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/settings/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/calendar/settings/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/clip/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/clip/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/docker-config/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/docker-config/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/export/zip/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/export/zip/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/backlinks/route.js +1 -0
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/backlinks/route.js.nft.json +1 -0
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/backlinks/route_client-reference-manifest.js +1 -0
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/download/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/download/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/export-html/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/export-html/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/export-pdf/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/export-pdf/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/history/restore/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/history/restore/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/history/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/history/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/move/route.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/move/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/move/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/[id]/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/route.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/upload/route.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/upload/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/files/upload/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/folders/route.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/folders/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/folders/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/git/remote/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/git/remote/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/git/sync-all/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/git/sync-all/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/hands/test-pattern/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/hands/test-pattern/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/hands/validate/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/hands/validate/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/health/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/install-snippets/route.js +9 -9
- package/bundle/standalone/apps/web/.next/server/app/api/install-snippets/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/install-snippets/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/mcp-tools/route.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/mcp-tools/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/mcp-tools/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/profile/route.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/profile/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/profile/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/hands-config/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/hands-config/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/journal-config/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/journal-config/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/journal-status/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/journal-status/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/onboard/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/onboard/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/refresh/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/refresh/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/sync/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/[id]/sync/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/onboard/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/onboard/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/publish/html/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/publish/html/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/publish/route.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/publish/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/publish/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/refresh/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/refresh/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/reindex/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/reindex/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/reports/resources/[name]/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/reports/resources/[name]/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/search/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/tags/route.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/tags/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/tags/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/version-check/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/version-check/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/welcome/route.js +1 -0
- package/bundle/standalone/apps/web/.next/server/app/api/welcome/route.js.nft.json +1 -0
- package/bundle/standalone/apps/web/.next/server/app/api/welcome/route_client-reference-manifest.js +1 -0
- package/bundle/standalone/apps/web/.next/server/app/api/ws-config/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/api/ws-config/route_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/apple-icon.png/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/calendar/page.js +2 -2
- package/bundle/standalone/apps/web/.next/server/app/calendar/page.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/calendar/page_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/favicon.ico/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/icon.png/route.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/login/page.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/login/page.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/page.js +4 -4
- package/bundle/standalone/apps/web/.next/server/app/page.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/preview/motifs/page.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/preview/motifs/page.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/app/preview/motifs/page_client-reference-manifest.js +1 -1
- package/bundle/standalone/apps/web/.next/server/app/preview/motifs.html +2 -2
- package/bundle/standalone/apps/web/.next/server/app/preview/motifs.rsc +4 -4
- package/bundle/standalone/apps/web/.next/server/app-paths-manifest.json +13 -11
- package/bundle/standalone/apps/web/.next/server/chunks/{2144.js → 5156.js} +1 -1
- package/bundle/standalone/apps/web/.next/server/chunks/6680.js +1 -1
- package/bundle/standalone/apps/web/.next/server/pages/404.html +1 -1
- package/bundle/standalone/apps/web/.next/server/pages/500.html +1 -1
- package/bundle/standalone/apps/web/.next/server/pages/_app.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/pages/_document.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/pages/_error.js.nft.json +1 -1
- package/bundle/standalone/apps/web/.next/server/server-reference-manifest.json +1 -1
- package/bundle/standalone/apps/web/.next/static/chunks/1480-3e4f4a95f11429a9.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/3466-1f8fcb266364a156.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/about/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/login/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/logout/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/setup/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/status/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/token/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/conflicts/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/entities/[id]/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/entities/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/events/[id]/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/events/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/ics/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/links/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/settings/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/clip/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/docker-config/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/export/zip/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/backlinks/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/download/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/export-html/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/export-pdf/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/history/restore/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/history/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/move/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/upload/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/folders/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/git/remote/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/git/sync-all/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/hands/test-pattern/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/hands/validate/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/health/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/install-snippets/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/mcp-tools/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/profile/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/hands-config/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/journal-config/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/journal-status/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/onboard/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/refresh/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/sync/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/onboard/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/publish/html/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/publish/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/refresh/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/reindex/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/reports/resources/[name]/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/search/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/tags/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/version-check/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/welcome/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/ws-config/route-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/calendar/page-f9542f9f518f9257.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/{layout-50d1052f9326c7ff.js → layout-3050c58d9809581a.js} +1 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/page-96f2fdc6101470a1.js +1 -0
- package/bundle/standalone/apps/web/.next/static/chunks/app/preview/motifs/page-f5e054069fb68dd7.js +1 -0
- package/bundle/standalone/apps/web/.next/static/css/35a6a6dfd2c31933.css +3 -0
- package/bundle/standalone/apps/web/.next/static/e8IRGM68RBzuPGOWA-87s/_buildManifest.js +1 -0
- package/bundle/standalone/apps/web/package.json +4 -4
- package/bundle/standalone/apps/web/src/lib/mcp-tools.json +99 -13
- package/bundle/standalone/node_modules/kontexta-mcp/dist/agent-rules/rules-block.md +11 -0
- package/bundle/standalone/node_modules/kontexta-mcp/dist/index.js +207 -37
- package/bundle/standalone/node_modules/kontexta-mcp/dist/index.js.map +1 -1
- package/bundle/standalone/node_modules/kontexta-mcp/dist/migrations/008-content-class.sql +29 -0
- package/bundle/standalone/node_modules/kontexta-mcp/dist/migrations/009-content-class-windows-safe.sql +27 -0
- package/bundle/standalone/node_modules/kontexta-mcp/package.json +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/agent-rules/rules-block.md +11 -0
- package/bundle/standalone/node_modules/kxta-core/dist/clip/index.js +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/clip/index.js.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/content-class/index.d.ts +8 -0
- package/bundle/standalone/node_modules/kxta-core/dist/content-class/index.d.ts.map +1 -0
- package/bundle/standalone/node_modules/kxta-core/dist/content-class/index.js +31 -0
- package/bundle/standalone/node_modules/kxta-core/dist/content-class/index.js.map +1 -0
- package/bundle/standalone/node_modules/kxta-core/dist/db/migrations/008-content-class.sql +29 -0
- package/bundle/standalone/node_modules/kxta-core/dist/db/migrations/009-content-class-windows-safe.sql +27 -0
- package/bundle/standalone/node_modules/kxta-core/dist/files/index.d.ts +3 -1
- package/bundle/standalone/node_modules/kxta-core/dist/files/index.d.ts.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/files/index.js +60 -19
- package/bundle/standalone/node_modules/kxta-core/dist/files/index.js.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/files/layout.d.ts +11 -0
- package/bundle/standalone/node_modules/kxta-core/dist/files/layout.d.ts.map +1 -0
- package/bundle/standalone/node_modules/kxta-core/dist/files/layout.js +70 -0
- package/bundle/standalone/node_modules/kxta-core/dist/files/layout.js.map +1 -0
- package/bundle/standalone/node_modules/kxta-core/dist/index.d.ts +2 -1
- package/bundle/standalone/node_modules/kxta-core/dist/index.d.ts.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/index.js +2 -1
- package/bundle/standalone/node_modules/kxta-core/dist/index.js.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/metadata/index.d.ts +18 -0
- package/bundle/standalone/node_modules/kxta-core/dist/metadata/index.d.ts.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/metadata/index.js +82 -6
- package/bundle/standalone/node_modules/kxta-core/dist/metadata/index.js.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/profile/index.d.ts +8 -3
- package/bundle/standalone/node_modules/kxta-core/dist/profile/index.d.ts.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/profile/index.js +12 -1
- package/bundle/standalone/node_modules/kxta-core/dist/profile/index.js.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/reports/sanitize.d.ts.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/reports/sanitize.js +15 -5
- package/bundle/standalone/node_modules/kxta-core/dist/reports/sanitize.js.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/types.d.ts +5 -1
- package/bundle/standalone/node_modules/kxta-core/dist/types.d.ts.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/util/paths.d.ts.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/dist/util/paths.js +3 -0
- package/bundle/standalone/node_modules/kxta-core/dist/util/paths.js.map +1 -1
- package/bundle/standalone/node_modules/kxta-core/package.json +2 -2
- package/bundle/standalone/node_modules/kxta-publish/dist/render/html-export.js +11 -3
- package/bundle/standalone/node_modules/kxta-publish/package.json +2 -2
- package/bundle/standalone/package.json +2 -2
- package/package.json +1 -1
- package/bundle/standalone/apps/web/.next/static/3-XgdPUkib9c8DXcXAxa1/_buildManifest.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/3068-293b252158eb9d15.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/9794-16144bed6de4bf26.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/about/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/login/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/logout/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/setup/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/status/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/auth/token/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/conflicts/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/entities/[id]/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/entities/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/events/[id]/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/events/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/ics/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/links/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/calendar/settings/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/clip/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/docker-config/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/export/zip/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/download/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/export-html/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/export-pdf/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/history/restore/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/history/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/move/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/[id]/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/files/upload/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/folders/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/git/remote/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/git/sync-all/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/hands/test-pattern/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/hands/validate/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/health/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/install-snippets/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/mcp-tools/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/profile/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/hands-config/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/journal-config/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/journal-status/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/onboard/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/refresh/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/[id]/sync/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/onboard/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/projects/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/publish/html/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/publish/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/refresh/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/reindex/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/reports/resources/[name]/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/search/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/tags/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/version-check/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/api/ws-config/route-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/calendar/page-c2b69b100c786dc4.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/page-c733552ab47df1c0.js +0 -1
- package/bundle/standalone/apps/web/.next/static/chunks/app/preview/motifs/page-c6ecffaac8622c61.js +0 -1
- package/bundle/standalone/apps/web/.next/static/css/3088e309ea0d151a.css +0 -3
- /package/bundle/standalone/apps/web/.next/static/{3-XgdPUkib9c8DXcXAxa1 → e8IRGM68RBzuPGOWA-87s}/_ssgManifest.js +0 -0
package/bundle/standalone/apps/web/.next/static/chunks/app/preview/motifs/page-f5e054069fb68dd7.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,533,635,1113,1151,1273,1636,1699,1806,2041,2224,2598,2654,2772,3063,3145,3365,3425,3426,3430,3549,3576,3878,4076,4260,4490,4882,4930,5031,5148,5469,5581,5789,6202,7073,7473,7490,7676,7758,7874,8100,8198,8208,8267,8314,8489,8518,8636,8998,9207,9234,9329,9347,9514,9881,9930],{98473:()=>{}},_=>{_.O(0,[9922,5159,7358],()=>_(_.s=98473)),_N_E=_.O()}]);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-sans:"Inter","Inter Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_3c557b{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_3c557b{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_73ee6c{font-family:Manrope,Manrope Fallback;font-style:normal}.__variable_73ee6c{--font-title:"Manrope","Manrope Fallback"}@font-face{font-family:Saira;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(/_next/static/media/a5ded5fed781d3c1-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Saira;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(/_next/static/media/f28ff2d15b1e9bd8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Saira;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(/_next/static/media/9b01607e2f794050-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Saira Fallback;src:local("Arial");ascent-override:109.52%;descent-override:42.36%;line-gap-override:0.00%;size-adjust:103.63%}.__className_37e029{font-family:Saira,Saira Fallback;font-style:normal}.__variable_37e029{--font-saira:"Saira","Saira Fallback"}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
|
|
2
|
+
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
|
|
3
|
+
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--font-mono),ui-monospace,SFMono-Regular,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"\201C""\201D""\2018""\2019";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-kbd:#111827;--tw-prose-kbd-shadows:rgb(17 24 39/10%);--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:rgb(255 255 255/10%);--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:rgb(0 0 0/50%);--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-top:.8888889em;margin-bottom:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.1428571em;margin-top:0;margin-bottom:.8em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.4285714em;margin-top:1.6em;margin-bottom:.8em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;margin-top:1.5555556em;margin-bottom:.4444444em;line-height:1.5555556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.4285714em;margin-bottom:.5714286em;line-height:1.4285714}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;border-radius:.3125rem;padding-top:.1428571em;padding-inline-end:.3571429em;padding-bottom:.1428571em;padding-inline-start:.3571429em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.6666667;margin-top:1.6666667em;margin-bottom:1.6666667em;border-radius:.25rem;padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;margin-bottom:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;padding-inline-start:1.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.8571429em;margin-bottom:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-left-1{left:-.25rem}.-left-3{left:-.75rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.left-0{left:0}.left-1\/2{left:50%}.left-16{left:4rem}.left-4{left:1rem}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-10{top:2.5rem}.top-14{top:3.5rem}.top-16{top:4rem}.top-2{top:.5rem}.top-3{top:.75rem}.top-4{top:1rem}.top-\[20vh\]{top:20vh}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[var\(--z-dropdown\)\]{z-index:var(--z-dropdown)}.z-\[var\(--z-modal\)\]{z-index:var(--z-modal)}.-m-5{margin:-1.25rem}.-m-6{margin:-1.5rem}.m-2{margin:.5rem}.m-6{margin:1.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.-mb-3{margin-bottom:-.75rem}.-mb-px{margin-bottom:-1px}.-ml-1{margin-left:-.25rem}.-ml-3{margin-left:-.75rem}.-mt-1{margin-top:-.25rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.block{display:block}.\!inline{display:inline!important}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[150px\]{height:150px}.h-\[56px\]{height:56px}.h-\[85vh\]{height:85vh}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-32{max-height:8rem}.max-h-48{max-height:12rem}.max-h-72{max-height:18rem}.max-h-\[400px\]{max-height:400px}.max-h-\[75vh\]{max-height:75vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.min-h-0{min-height:0}.min-h-\[96px\]{min-height:96px}.min-h-screen{min-height:100vh}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\/3{width:66.666667%}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-4\/6{width:66.666667%}.w-48{width:12rem}.w-5{width:1.25rem}.w-5\/6{width:83.333333%}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[300px\]{width:300px}.w-\[350px\]{width:350px}.w-\[480px\]{width:480px}.w-\[48px\]{width:48px}.w-\[600px\]{width:600px}.w-\[92vw\]{width:92vw}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[140px\]{min-width:140px}.min-w-\[180px\]{min-width:180px}.min-w-\[200px\]{min-width:200px}.min-w-\[220px\]{min-width:220px}.min-w-\[8rem\]{min-width:8rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-48{max-width:12rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-\[1400px\]{max-width:1400px}.max-w-\[260px\]{max-width:260px}.max-w-\[440px\]{max-width:440px}.max-w-\[500px\]{max-width:500px}.max-w-\[560px\]{max-width:560px}.max-w-\[90vw\]{max-width:90vw}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1{--tw-translate-x:-0.25rem}.-translate-x-1,.-translate-x-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-y-1{--tw-translate-y:-0.25rem}.-translate-y-1,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-y-0{--tw-translate-y:0px}.translate-y-0,.translate-y-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y:100%}.-rotate-90{--tw-rotate:-90deg}.-rotate-90,.rotate-90{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate:90deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-\[logo-float-lg_3s_ease-in-out_infinite\]{animation:logo-float-lg 3s ease-in-out infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize-y{resize:vertical}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-\[var\(--border\)\]>:not([hidden])~:not([hidden]){border-color:var(--border)}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-r-full{border-top-right-radius:9999px;border-bottom-right-radius:9999px}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-l-\[3px\]{border-left-width:3px}.border-r{border-right-width:1px}.border-r-0{border-right-width:0}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[var\(--accent\)\]{border-color:var(--accent)}.border-\[var\(--accent-soft\)\]{border-color:var(--accent-soft)}.border-\[var\(--bg-tertiary\)\]{border-color:var(--bg-tertiary)}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--border-color\)\]{border-color:var(--border-color)}.border-\[var\(--danger\)\]{border-color:var(--danger)}.border-\[var\(--muted\)\]{border-color:var(--muted)}.border-amber-500\/20{border-color:rgb(245 158 11/.2)}.border-amber-500\/30{border-color:rgb(245 158 11/.3)}.border-amber-accent{--tw-border-opacity:1;border-color:rgb(180 120 30/var(--tw-border-opacity,1))}.border-amber-accent\/10{border-color:rgb(180 120 30/.1)}.border-amber-accent\/20{border-color:rgb(180 120 30/.2)}.border-amber-accent\/30{border-color:rgb(180 120 30/.3)}.border-amber-accent\/40{border-color:rgb(180 120 30/.4)}.border-amber-accent\/60{border-color:rgb(180 120 30/.6)}.border-black\/10{border-color:rgb(0 0 0/.1)}.border-blue-300{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.border-cyan-500\/30{border-color:rgb(6 182 212/.3)}.border-emerald-500\/30{border-color:rgb(16 185 129/.3)}.border-rose-500\/30{border-color:rgb(244 63 94/.3)}.border-sky-500\/30{border-color:rgb(14 165 233/.3)}.border-transparent{border-color:transparent}.border-violet-500\/30{border-color:rgb(139 92 246/.3)}.bg-\[var\(--accent\)\]{background-color:var(--accent)}.bg-\[var\(--accent-soft\)\]{background-color:var(--accent-soft)}.bg-\[var\(--bg-primary\)\]{background-color:var(--bg-primary)}.bg-\[var\(--bg-secondary\)\]{background-color:var(--bg-secondary)}.bg-\[var\(--bg-tertiary\)\]{background-color:var(--bg-tertiary)}.bg-\[var\(--border\)\]{background-color:var(--border)}.bg-\[var\(--danger\)\]{background-color:var(--danger)}.bg-\[var\(--danger-soft\)\]{background-color:var(--danger-soft)}.bg-\[var\(--muted\)\]{background-color:var(--muted)}.bg-\[var\(--success\)\]{background-color:var(--success)}.bg-amber-500\/10{background-color:rgb(245 158 11/.1)}.bg-amber-500\/5{background-color:rgb(245 158 11/.05)}.bg-amber-accent{--tw-bg-opacity:1;background-color:rgb(180 120 30/var(--tw-bg-opacity,1))}.bg-amber-accent\/10{background-color:rgb(180 120 30/.1)}.bg-amber-accent\/15{background-color:rgb(180 120 30/.15)}.bg-amber-accent\/5{background-color:rgb(180 120 30/.05)}.bg-amber-accent\/70{background-color:rgb(180 120 30/.7)}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/10{background-color:rgb(0 0 0/.1)}.bg-black\/20{background-color:rgb(0 0 0/.2)}.bg-black\/50{background-color:rgb(0 0 0/.5)}.bg-black\/60{background-color:rgb(0 0 0/.6)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-200{--tw-bg-opacity:1;background-color:rgb(191 219 254/var(--tw-bg-opacity,1))}.bg-cyan-400{--tw-bg-opacity:1;background-color:rgb(34 211 238/var(--tw-bg-opacity,1))}.bg-cyan-500\/15{background-color:rgb(6 182 212/.15)}.bg-emerald-400{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity,1))}.bg-emerald-500\/15{background-color:rgb(16 185 129/.15)}.bg-rose-400{--tw-bg-opacity:1;background-color:rgb(251 113 133/var(--tw-bg-opacity,1))}.bg-rose-500\/15{background-color:rgb(244 63 94/.15)}.bg-sky-400{--tw-bg-opacity:1;background-color:rgb(56 189 248/var(--tw-bg-opacity,1))}.bg-sky-500\/15{background-color:rgb(14 165 233/.15)}.bg-transparent{background-color:transparent}.bg-violet-400{--tw-bg-opacity:1;background-color:rgb(167 139 250/var(--tw-bg-opacity,1))}.bg-violet-500\/15{background-color:rgb(139 92 246/.15)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-zinc-900{--tw-bg-opacity:1;background-color:rgb(24 24 27/var(--tw-bg-opacity,1))}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-\[var\(--accent\)\]{--tw-gradient-from:var(--accent) var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 255 255/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[var\(--accent-soft\)\]{--tw-gradient-from:var(--accent-soft) var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 255 255/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[var\(--bg-tertiary\)\]{--tw-gradient-from:var(--bg-tertiary) var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 255 255/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-amber-accent-light{--tw-gradient-to:rgb(229 192 121/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#E5C079 var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-\[var\(--accent\)\]{--tw-gradient-to:var(--accent) var(--tw-gradient-to-position)}.to-\[var\(--bg-secondary\)\]{--tw-gradient-to:var(--bg-secondary) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-current{fill:currentColor}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-6{padding-bottom:1.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-6{padding-left:1.5rem}.pl-9{padding-left:2.25rem}.pr-12{padding-right:3rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-6{padding-right:1.5rem}.pt-0\.5{padding-top:.125rem}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.\!font-mono{font-family:var(--font-mono),ui-monospace,SFMono-Regular,monospace!important}.font-\[family-name\:var\(--font-title\)\]{font-family:var(--font-title)}.font-mono{font-family:var(--font-mono),ui-monospace,SFMono-Regular,monospace}.font-sans{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.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)}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[4px\]{letter-spacing:4px}.tracking-normal{letter-spacing:0}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[\#FF7F50\]{--tw-text-opacity:1;color:rgb(255 127 80/var(--tw-text-opacity,1))}.text-\[var\(--accent\)\]{color:var(--accent)}.text-\[var\(--bg-primary\)\]{color:var(--bg-primary)}.text-\[var\(--border\)\]{color:var(--border)}.text-\[var\(--danger\)\]{color:var(--danger)}.text-\[var\(--muted\)\]{color:var(--muted)}.text-\[var\(--success\)\]{color:var(--success)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.text-\[var\(--text-tertiary\)\]{color:var(--text-tertiary)}.text-\[var\(--warning\)\]{color:var(--warning)}.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-accent{--tw-text-opacity:1;color:rgb(180 120 30/var(--tw-text-opacity,1))}.text-amber-accent-dark{--tw-text-opacity:1;color:rgb(142 94 20/var(--tw-text-opacity,1))}.text-amber-accent-light{--tw-text-opacity:1;color:rgb(229 192 121/var(--tw-text-opacity,1))}.text-amber-accent\/70{color:rgb(180 120 30/.7)}.text-amber-accent\/80{color:rgb(180 120 30/.8)}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-blue-900{--tw-text-opacity:1;color:rgb(30 58 138/var(--tw-text-opacity,1))}.text-cyan-700{--tw-text-opacity:1;color:rgb(14 116 144/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity,1))}.text-sky-700{--tw-text-opacity:1;color:rgb(3 105 161/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-violet-700{--tw-text-opacity:1;color:rgb(109 40 217/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-zinc-100{--tw-text-opacity:1;color:rgb(244 244 245/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-\[var\(--accent\)\]{accent-color:var(--accent)}.accent-amber-accent{accent-color:#B4781E}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgb(0 0 0/0.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-\[0_-4px_12px_rgba\(0\2c 0\2c 0\2c 0\.08\)\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_-4px_12px_rgba\(0\2c 0\2c 0\2c 0\.08\)\]{--tw-shadow:0 -4px 12px rgba(0,0,0,0.08);--tw-shadow-colored:0 -4px 12px var(--tw-shadow-color)}.shadow-\[0_0_20px_rgba\(180\2c 120\2c 30\2c 0\.4\)\]{--tw-shadow:0 0 20px rgba(180,120,30,0.4);--tw-shadow-colored:0 0 20px var(--tw-shadow-color)}.shadow-\[0_0_20px_rgba\(180\2c 120\2c 30\2c 0\.4\)\],.shadow-\[0_0_6px_var\(--accent-soft\)\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_6px_var\(--accent-soft\)\]{--tw-shadow:0 0 6px var(--accent-soft);--tw-shadow-colored:0 0 6px var(--tw-shadow-color)}.shadow-\[0_0_8px_color-mix\(in_srgb\2c var\(--accent\)_60\%\2c transparent\)\]{--tw-shadow:0 0 8px color-mix(in srgb,var(--accent) 60%,transparent);--tw-shadow-colored:0 0 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[4px_0_15px_rgba\(180\2c 120\2c 30\2c 0\.6\)\]{--tw-shadow:4px 0 15px rgba(180,120,30,0.6);--tw-shadow-colored:4px 0 15px var(--tw-shadow-color)}.shadow-\[4px_0_15px_rgba\(180\2c 120\2c 30\2c 0\.6\)\],.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgb(0 0 0/0.1),0 8px 10px -6px rgb(0 0 0/0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1,.ring-2{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-\[var\(--danger\)\]{--tw-ring-color:var(--danger)}.ring-red-400{--tw-ring-opacity:1;--tw-ring-color:rgb(248 113 113/var(--tw-ring-opacity,1))}.ring-red-400\/70{--tw-ring-color:rgb(248 113 113/0.7)}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow-\[0_0_14px_color-mix\(in_srgb\2c var\(--accent\)_55\%\2c transparent\)\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-\[0_0_14px_color-mix\(in_srgb\2c var\(--accent\)_55\%\2c transparent\)\]{--tw-drop-shadow:drop-shadow(0 0 14px color-mix(in srgb,var(--accent) 55%,transparent))}.drop-shadow-\[0_0_15px_color-mix\(in_srgb\2c var\(--accent\)_20\%\2c transparent\)\]{--tw-drop-shadow:drop-shadow(0 0 15px color-mix(in srgb,var(--accent) 20%,transparent))}.drop-shadow-\[0_0_15px_color-mix\(in_srgb\2c var\(--accent\)_20\%\2c transparent\)\],.drop-shadow-\[0_0_15px_rgba\(180\2c 120\2c 30\2c 0\.1\)\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-\[0_0_15px_rgba\(180\2c 120\2c 30\2c 0\.1\)\]{--tw-drop-shadow:drop-shadow(0 0 15px rgba(180,120,30,0.1))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.backdrop-blur-sm,.backdrop-blur-xl{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-xl{--tw-backdrop-blur:blur(24px)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--bg-primary:#F4F3EF;--bg-secondary:#ECE9E2;--bg-tertiary:#E0DDD3;--text-primary:#0F274F;--text-secondary:#4A5874;--muted:#94A3B8;--border:rgba(180,120,30,0.2);--accent:#B4781E;--accent-soft:rgba(180,120,30,0.16);--success:#2F855A;--warning:#C0841A;--danger:#C05656;--danger-soft:rgba(192,86,86,0.15);--text-tertiary:#6B7A99;--z-dropdown:60;--z-modal:100;--z-toast:150}.dark{--bg-primary:#0A0F1A;--bg-secondary:#121A2B;--bg-tertiary:#0F274F;--text-primary:#efd3a0;--text-secondary:#BFA17A;--muted:#8C755A;--border:rgba(180,120,30,0.15);--accent:#B4781E;--accent-soft:rgba(180,120,30,0.18);--success:#2F855A;--warning:#C0841A;--danger:#C05656;--danger-soft:rgba(192,86,86,0.15);--text-tertiary:#A08662}.blueprint{--bg-primary:#060A12;--bg-secondary:#0D1119;--bg-tertiary:#10141F;--text-primary:#E8EDF5;--text-secondary:#C4B49A;--muted:#A89880;--border:rgba(224,144,48,0.3);--accent:#E09030;--accent-soft:rgba(224,144,48,0.14);--success:#2F855A;--warning:#C0841A;--danger:#C05656;--danger-soft:rgba(192,86,86,0.15);--text-tertiary:#8E8270;--font-title:var(--font-saira)}.blueprint [class*=rounded]{border-radius:0!important}.blueprint .bp-keep-round{border-radius:9999px!important}.blueprint .bp-annotation{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary)}.blueprint .bp-dashed{border-style:dashed}.blueprint .bp-toolbar-btn{color:var(--text-secondary)}.blueprint .bp-grid{background-image:linear-gradient(rgba(224,144,48,.05) 1px,transparent 0),linear-gradient(90deg,rgba(224,144,48,.05) 1px,transparent 0);background-size:22px 22px}.bp-title-block{display:inline;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--text-secondary);opacity:.7}.blueprint .bp-title-block{opacity:1}html:not(.dark) .dark-icon{filter:brightness(.85) saturate(.95) contrast(1.05)}body{background-color:var(--bg-primary);color:var(--text-primary);font-size:15px;line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-title);letter-spacing:-.02em}@media (min-width:1440px){body{font-size:16px}}@media (min-width:1920px){body{font-size:17px}}@media (max-width:768px){body{font-size:14px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#4A5874;border-radius:3px}.dark ::-webkit-scrollbar-thumb{background:#24324A}::-webkit-scrollbar-thumb:hover{background:var(--accent)}*{scrollbar-width:thin;scrollbar-color:#4A5874 var(--bg-secondary)}.dark *{scrollbar-color:#24324A var(--bg-secondary)}.scrollbar-thin{scrollbar-width:thin}@keyframes logo-float-sm{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes logo-float-lg{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes logo-orbit{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background-color:rgba(180,120,30,.1);background-image:linear-gradient(90deg,rgba(180,120,30,0),rgba(180,120,30,.1) 40%,rgba(180,120,30,.45) 50%,rgba(180,120,30,.1) 60%,rgba(180,120,30,0));background-size:200% 100%;background-repeat:no-repeat;animation:skeleton-shimmer 1.4s linear infinite;border-radius:4px}html{scroll-behavior:smooth}.hover-lift{transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease}.hover-lift:hover{transform:translateY(-2px) scale(1.02)}.scroll-smooth{scroll-behavior:smooth}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dark .prose{--tw-prose-body:var(--text-primary);--tw-prose-headings:var(--text-primary);--tw-prose-lead:var(--text-secondary);--tw-prose-links:var(--accent);--tw-prose-bold:var(--text-primary);--tw-prose-counters:var(--accent);--tw-prose-bullets:var(--accent);--tw-prose-hr:var(--border);--tw-prose-quotes:var(--text-primary);--tw-prose-quote-borders:var(--accent);--tw-prose-captions:var(--text-secondary);--tw-prose-code:var(--text-primary);--tw-prose-pre-code:var(--text-primary);--tw-prose-pre-bg:var(--bg-secondary);--tw-prose-th-borders:var(--border);--tw-prose-td-borders:var(--border)}.animate-fade-in{animation:fade-in .4s cubic-bezier(.16,1,.3,1)}@keyframes scale-in{0%{opacity:0;transform:scale(.96) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}.animate-scale-in{animation:scale-in .3s cubic-bezier(.16,1,.3,1)}.glass{background-color:color-mix(in srgb,var(--bg-secondary) 80%,transparent);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%)}.floating-surface{background-color:var(--bg-primary);border:1px solid var(--border);box-shadow:0 20px 50px -12px rgba(0,0,0,.5);transition:box-shadow .3s ease,border-color .3s ease}.dark .floating-surface{box-shadow:0 25px 60px -15px rgba(0,0,0,.7);background-color:#0d1421}.focus-glow{transition:box-shadow .2s ease,border-color .2s ease}.focus-glow:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft),0 0 15px var(--accent-soft)}.btn-press{transition:transform .1s ease,box-shadow .15s ease}.btn-press:hover{transform:scale(1.03)}.btn-press:active{transform:scale(.97)}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='%23B4781E'%3E%3Cpath d='M2 4 L6 8 L10 4 Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .4rem center;background-size:.65rem;padding-inline-end:1.4rem!important}select::-ms-expand{display:none}option{background-color:var(--bg-primary);color:var(--text-primary)}.blueprint select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='%23E09030'%3E%3Cpath d='M2 4 L6 8 L10 4 Z'/%3E%3C/svg%3E")}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;border:1px solid transparent;color:#0F274F;font-family:system-ui,-apple-system,sans-serif;font-weight:600;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:color .15s,background .15s,border-color .15s}.dark .btn{color:#E5C079}.blueprint .btn{color:var(--text-secondary)}.btn:active,.btn:focus,.btn:hover,.dark .btn:active,.dark .btn:focus,.dark .btn:hover{color:#FFFFFF;background:var(--accent)}.btn:focus-visible{outline:none;border-color:var(--accent)}.btn:disabled,.btn[aria-disabled=true]{opacity:.35;cursor:not-allowed}.btn:disabled:active,.btn:disabled:focus,.btn:disabled:hover{color:#94A3B8;background:transparent}.btn-sm{padding:4px 10px;font-size:11px;border-radius:4px}.btn-md{padding:7px 14px;font-size:13px;border-radius:6px}.btn-icon-sm{width:28px;height:28px;padding:0;font-size:14px;border-radius:4px}.btn-icon-md{width:32px;height:32px;padding:0;font-size:16px;border-radius:6px}.btn-primary{background:var(--accent);border-color:var(--accent)}.blueprint .btn-primary,.btn-primary,.dark .btn-primary{color:#FFFFFF}.btn-primary:active,.btn-primary:focus,.btn-primary:hover{background:color-mix(in srgb,var(--accent) 82%,black);color:#FFFFFF}.btn-primary:disabled:active,.btn-primary:disabled:focus,.btn-primary:disabled:hover{background:var(--accent);color:#FFFFFF}.btn-outline{border-color:var(--border);background:color-mix(in srgb,var(--bg-tertiary) 60%,transparent)}.btn-destructive{color:var(--danger)}.btn-destructive:active,.btn-destructive:focus,.btn-destructive:hover,.dark .btn-destructive:active,.dark .btn-destructive:focus,.dark .btn-destructive:hover{color:#ffffff;background:color-mix(in srgb,var(--danger) 85%,transparent)}.btn-destructive:disabled:active,.btn-destructive:disabled:focus,.btn-destructive:disabled:hover{color:var(--danger);background:transparent}.dropdown-menu{position:absolute;z-index:50;margin-top:.25rem;min-width:160px;overflow:hidden;border-radius:.375rem;border-width:1px;border-color:var(--border);background-color:var(--bg-primary);padding-top:.375rem;padding-bottom:.375rem;--tw-shadow:0 20px 25px -5px rgb(0 0 0/0.1),0 8px 10px -6px rgb(0 0 0/0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.dropdown-item{display:flex;width:100%;align-items:center;gap:.5rem;padding:.5rem .75rem;text-align:left;font-size:.75rem;line-height:1rem;font-weight:500;color:var(--text-secondary);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.dropdown-item:focus,.dropdown-item:hover{background-color:var(--accent)!important;--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.dark\:prose-invert:is(:is(.dark,.blueprint) *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}.first-letter\:uppercase:first-letter{text-transform:uppercase}.marker\:text-\[var\(--accent\)\] ::marker{color:var(--accent)}.marker\:text-\[var\(--accent\)\]::marker{color:var(--accent)}.placeholder\:text-\[var\(--muted\)\]::-moz-placeholder{color:var(--muted)}.placeholder\:text-\[var\(--muted\)\]::placeholder{color:var(--muted)}.placeholder\:text-\[var\(--text-secondary\)\]::-moz-placeholder{color:var(--text-secondary)}.placeholder\:text-\[var\(--text-secondary\)\]::placeholder{color:var(--text-secondary)}.hover\:translate-x-0\.5:hover{--tw-translate-x:0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[var\(--accent\)\]:hover{border-color:var(--accent)}.hover\:border-\[var\(--border\)\]:hover{border-color:var(--border)}.hover\:border-amber-accent\/50:hover{border-color:rgb(180 120 30/.5)}.hover\:border-opacity-50:hover{--tw-border-opacity:0.5}.hover\:bg-\[color-mix\(in_srgb\2c var\(--accent\)_85\%\2c black\)\]:hover{background-color:color-mix(in srgb,var(--accent) 85%,black)}.hover\:bg-\[color-mix\(in_srgb\2c var\(--danger\)_85\%\2c black\)\]:hover{background-color:color-mix(in srgb,var(--danger) 85%,black)}.hover\:bg-\[var\(--accent\)\]:hover{background-color:var(--accent)}.hover\:bg-\[var\(--accent-soft\)\]:hover{background-color:var(--accent-soft)}.hover\:bg-\[var\(--bg-secondary\)\]:hover{background-color:var(--bg-secondary)}.hover\:bg-\[var\(--bg-tertiary\)\]:hover{background-color:var(--bg-tertiary)}.hover\:bg-\[var\(--border\)\]:hover{background-color:var(--border)}.hover\:bg-\[var\(--danger\)\]:hover{background-color:var(--danger)}.hover\:bg-amber-accent\/5:hover{background-color:rgb(180 120 30/.05)}.hover\:bg-black\/20:hover{background-color:rgb(0 0 0/.2)}.hover\:bg-blue-300:hover{--tw-bg-opacity:1;background-color:rgb(147 197 253/var(--tw-bg-opacity,1))}.hover\:text-\[var\(--accent\)\]:hover{color:var(--accent)}.hover\:text-\[var\(--danger\)\]:hover{color:var(--danger)}.hover\:text-\[var\(--text-primary\)\]:hover{color:var(--text-primary)}.hover\:text-amber-accent:hover{--tw-text-opacity:1;color:rgb(180 120 30/var(--tw-text-opacity,1))}.hover\:text-black:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:border-\[var\(--accent\)\]:focus{border-color:var(--accent)}.focus\:border-amber-accent\/40:focus{border-color:rgb(180 120 30/.4)}.focus\:border-amber-accent\/50:focus{border-color:rgb(180 120 30/.5)}.focus\:bg-\[var\(--accent-soft\)\]:focus{background-color:var(--accent-soft)}.focus\:text-\[var\(--text-primary\)\]:focus{color:var(--text-primary)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-\[var\(--accent\)\]:focus{--tw-ring-color:var(--accent)}.focus\:ring-amber-accent\/30:focus{--tw-ring-color:rgb(180 120 30/0.3)}.focus\:ring-offset-0:focus{--tw-ring-offset-width:0px}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95}.active\:scale-95:active,.active\:scale-\[0\.98\]:active{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.98\]:active{--tw-scale-x:0.98;--tw-scale-y:0.98}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:text-\[var\(--accent\)\]{color:var(--accent)}.group:hover .group-hover\:text-\[var\(--text-primary\)\]{color:var(--text-primary)}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:drop-shadow-\[0_0_20px_rgba\(180\2c 120\2c 30\2c 0\.5\)\]{--tw-drop-shadow:drop-shadow(0 0 20px rgba(180,120,30,0.5));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.data-\[highlighted\]\:bg-\[var\(--accent\)\][data-highlighted]{background-color:var(--accent)}.data-\[highlighted\]\:text-white[data-highlighted]{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:block:is(:is(.dark,.blueprint) *){display:block}.dark\:hidden:is(:is(.dark,.blueprint) *){display:none}.dark\:bg-\[\#1a1a1a\]:is(:is(.dark,.blueprint) *){--tw-bg-opacity:1;background-color:rgb(26 26 26/var(--tw-bg-opacity,1))}.dark\:bg-\[var\(--bg-primary\)\]:is(:is(.dark,.blueprint) *){background-color:var(--bg-primary)}.dark\:bg-black\/30:is(:is(.dark,.blueprint) *){background-color:rgb(0 0 0/.3)}.dark\:text-\[var\(--text-primary\)\]:is(:is(.dark,.blueprint) *){color:var(--text-primary)}.dark\:text-amber-400:is(:is(.dark,.blueprint) *){--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.dark\:text-amber-accent-light:is(:is(.dark,.blueprint) *){--tw-text-opacity:1;color:rgb(229 192 121/var(--tw-text-opacity,1))}.dark\:text-cyan-300:is(:is(.dark,.blueprint) *){--tw-text-opacity:1;color:rgb(103 232 249/var(--tw-text-opacity,1))}.dark\:text-emerald-300:is(:is(.dark,.blueprint) *){--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.dark\:text-rose-300:is(:is(.dark,.blueprint) *){--tw-text-opacity:1;color:rgb(253 164 175/var(--tw-text-opacity,1))}.dark\:text-sky-300:is(:is(.dark,.blueprint) *){--tw-text-opacity:1;color:rgb(125 211 252/var(--tw-text-opacity,1))}.dark\:text-violet-300:is(:is(.dark,.blueprint) *){--tw-text-opacity:1;color:rgb(196 181 253/var(--tw-text-opacity,1))}.dark\:drop-shadow-\[0_0_15px_rgba\(180\2c 120\2c 30\2c 0\.3\)\]:is(:is(.dark,.blueprint) *){--tw-drop-shadow:drop-shadow(0 0 15px rgba(180,120,30,0.3));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.dark\:drop-shadow-none:is(:is(.dark,.blueprint) *){--tw-drop-shadow:drop-shadow(0 0 #0000);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width:1024px){.lg\:p-4{padding:1rem}}@media (min-width:1280px){.xl\:flex{display:flex}}.\[\&_\*\]\:\!text-\[var\(--accent\)\] *{color:var(--accent)!important}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
self.__BUILD_MANIFEST=function(e,r,t,_){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:45,errorRate:1e-4,numBits:863,numHashes:14,bitArray:[0,0,r,1,r,r,1,e,r,r,r,e,r,r,e,r,e,r,e,e,e,e,r,r,r,e,r,e,e,e,r,e,r,r,e,e,r,e,e,e,e,e,e,e,e,e,r,r,e,e,r,e,r,r,r,e,r,e,e,e,r,r,e,r,e,r,e,r,r,r,e,e,r,e,e,e,r,r,r,r,e,e,e,r,r,r,e,r,r,e,e,e,e,e,r,e,r,r,e,r,r,e,e,e,e,r,r,e,r,e,e,e,r,e,e,r,e,r,r,e,e,e,r,e,r,r,r,r,r,e,r,e,e,r,e,r,r,e,r,r,r,e,r,r,e,e,r,e,r,r,e,e,r,e,r,e,e,e,e,r,e,e,r,e,e,e,e,e,e,e,r,e,r,e,r,r,e,r,r,r,e,r,e,e,e,e,e,e,r,r,e,e,r,e,r,r,e,r,e,r,e,e,e,r,e,r,r,r,r,r,e,r,r,r,e,e,r,e,e,e,e,e,r,e,e,r,r,r,r,r,r,r,r,e,r,r,e,e,e,e,e,r,e,r,r,r,e,e,e,r,e,r,r,r,e,r,r,e,r,e,e,e,e,e,e,r,r,e,r,r,e,e,r,e,r,e,r,e,e,e,r,e,r,e,e,e,e,r,r,r,r,r,r,e,r,e,r,r,e,r,r,e,e,r,e,e,e,e,r,e,r,e,e,r,e,e,e,r,e,e,r,e,e,e,r,r,r,e,e,r,r,r,r,e,e,r,r,e,e,e,r,e,r,r,e,e,e,r,r,r,r,e,e,e,e,e,r,e,r,r,e,r,e,r,e,r,e,r,e,r,r,r,r,r,e,r,r,r,r,r,r,r,r,r,r,e,e,e,r,e,r,e,r,r,r,e,e,e,e,e,r,e,e,r,e,e,e,r,e,r,e,r,e,r,r,r,e,e,e,e,r,e,e,r,e,e,r,e,r,r,e,e,e,r,e,e,e,e,r,r,r,r,e,r,r,r,r,e,r,e,r,r,e,e,r,e,e,e,e,r,r,r,e,e,r,r,r,e,e,r,e,e,r,r,r,e,r,r,e,r,e,r,r,r,e,e,r,e,e,e,r,e,e,e,r,r,r,e,e,r,e,r,e,r,e,e,r,e,r,r,r,e,r,e,e,e,e,e,e,r,r,r,e,r,e,e,r,r,r,e,r,e,e,r,e,e,e,r,r,r,e,r,r,r,e,e,e,r,r,r,r,e,r,r,r,e,r,r,e,e,e,e,e,e,r,r,r,r,e,r,e,r,r,r,e,r,e,e,e,r,e,e,e,e,e,r,e,r,r,r,e,r,r,r,e,r,e,e,e,e,e,e,e,e,e,e,r,e,r,r,r,e,r,r,e,e,e,e,r,r,r,r,r,r,r,r,r,e,e,e,r,r,r,r,r,r,e,e,e,r,r,e,r,r,r,e,e,e,e,e,r,r,r,r,r,r,r,e,r,r,r,e,r,r,e,r,e,e,e,r,r,r,r,e,r,e,r,r,e,r,e,r,e,r,e,e,r,e,r,e,r,e,e,r,e,e,r,r,e,e,r,r,e,e,e,r,e,r,r,e,r,r,e,r,e,r,r,e,e,r,e,e,e,r,r,e,e,e,r,r,e,r,r,r,r,e,e,e,r,e,e,e,e,r,r,e,e,e,r,r,e,e,r,e,e,r,r,r,r,e,r,e,e,e,r,r,e,r,e,e,e,r,e,e,r,e,e,e,r,r,e,r,r,r,r,r,e,e,r,e,r,e,r,e,r,e,r,e,r,r,e,e,e,r,e,r,e,r,e,e,r,r,r,r,r,e,r,r,e,r,e,r,r,e,e,r,e,r,e,r,e,r,e,r,r,r,r,e,r,r,r,e,r,r,r,r,r,e,e,e,r,r,e,r,e,r,e,r,e,e,e,r,e]},__routerFilterDynamic:{numItems:5,errorRate:1e-4,numBits:96,numHashes:14,bitArray:[r,e,e,r,e,r,e,e,e,r,e,r,r,r,e,e,r,e,r,e,r,e,r,e,e,r,r,e,r,e,r,e,e,r,r,r,e,e,r,e,e,e,r,r,e,r,e,r,r,e,r,r,r,r,r,r,e,r,e,e,e,e,e,e,e,e,r,e,r,e,e,e,r,r,r,r,r,r,e,e,e,e,e,r,e,r,e,r,e,r,r,r,e,r,e,e]},"/_error":["static/chunks/pages/_error-2973b69c43483f0b.js"],sortedPages:["/_app","/_error"]}}(1,0,1e-4,14),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kxta-web",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.6.0",
|
|
4
4
|
"private": true,
|
|
5
5
|
"scripts": {
|
|
6
6
|
"dev": "next dev --turbopack -p 23002",
|
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
"archiver": "^7.0.1",
|
|
27
27
|
"better-sqlite3": "^12.10.0",
|
|
28
28
|
"jsdom": "^29.1.1",
|
|
29
|
-
"kontexta-mcp": "4.
|
|
30
|
-
"kxta-core": "4.
|
|
31
|
-
"kxta-publish": "4.
|
|
29
|
+
"kontexta-mcp": "4.6.0",
|
|
30
|
+
"kxta-core": "4.6.0",
|
|
31
|
+
"kxta-publish": "4.6.0",
|
|
32
32
|
"lucide-react": "^1.21.0",
|
|
33
33
|
"mermaid": "^11",
|
|
34
34
|
"next": "^15.3.0",
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
{
|
|
2
|
-
"generatedAt": "2026-09-
|
|
2
|
+
"generatedAt": "2026-09-12T20:33:45.496Z",
|
|
3
3
|
"tools": [
|
|
4
|
+
{
|
|
5
|
+
"name": "refresh_session_context",
|
|
6
|
+
"description": "Re-read the session context (profile, upcoming events within 7d, conflicts, freshness nudge) as it stands NOW. Call this when the user just edited their profile or added/moved calendar events and you want the current picture instead of the snapshot taken at session start. Read-only; no side effects. Returns the same block Kontexta sent as MCP instructions at session start.",
|
|
7
|
+
"inputSchema": {
|
|
8
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
9
|
+
"type": "object",
|
|
10
|
+
"properties": {}
|
|
11
|
+
},
|
|
12
|
+
"execution": {
|
|
13
|
+
"taskSupport": "forbidden"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
4
16
|
{
|
|
5
17
|
"name": "journal_append",
|
|
6
18
|
"description": "Append a timestamped text entry to today's daily journal file in the Knowledge Base. Creates the file if it doesn't already exist. Both calls on the same calendar day return the same file_id. Returns { file_id }.",
|
|
@@ -28,7 +40,7 @@
|
|
|
28
40
|
},
|
|
29
41
|
{
|
|
30
42
|
"name": "create_file",
|
|
31
|
-
"description": "Create a new markdown, mermaid, or HTML file in the knowledge base or project. This operation writes a new file to disk and adds it to the local SQLite FTS5 index. Destination can be 'knowledge' (global KB), 'project' (reference file inside a project repo), or 'kontexta' (internal Kontexta schema file). If destination is 'project' or 'kontexta', project_id is strictly required. No external auth required. Rate limits do not apply (local operation). Returns the created file metadata including its new ID, path, and estimated tokens. If the destination directory does not exist, it will be created automatically. Use this tool to instantiate new contextual documents or notes. To modify an existing file, use 'update_file' instead. Parameters: 'destination' dictates required fields; if 'project' or 'kontexta', 'project_id' must be a valid integer. 'tags' and 'folder' are optional. Pass format='mmd' to create a Mermaid diagram file (.mmd) or format='html' for HTML reports; defaults to 'md'.",
|
|
43
|
+
"description": "Create a new markdown, mermaid, or HTML file in the knowledge base or project. This operation writes a new file to disk and adds it to the local SQLite FTS5 index. Destination can be 'knowledge' (global KB), 'project' (reference file inside a project repo), or 'kontexta' (internal Kontexta schema file). If destination is 'project' or 'kontexta', project_id is strictly required. If destination is 'knowledge', 'kind' is strictly required — pick 'dictionary' (authoritative source-of-truth) or 'note' (informational snapshot); see the kind param for the rubric. No external auth required. Rate limits do not apply (local operation). Returns the created file metadata including its new ID, path, and estimated tokens. If the destination directory does not exist, it will be created automatically. Use this tool to instantiate new contextual documents or notes. To modify an existing file, use 'update_file' instead. Parameters: 'destination' dictates required fields; if 'project' or 'kontexta', 'project_id' must be a valid integer; if 'knowledge', 'kind' must be 'dictionary' or 'note'. 'tags' and 'folder' are optional. Pass format='mmd' to create a Mermaid diagram file (.mmd) or format='html' for HTML reports; defaults to 'md'.",
|
|
32
44
|
"inputSchema": {
|
|
33
45
|
"type": "object",
|
|
34
46
|
"properties": {
|
|
@@ -72,6 +84,14 @@
|
|
|
72
84
|
"html"
|
|
73
85
|
],
|
|
74
86
|
"description": "File extension to write. Defaults to 'md'. Use 'html' for HTML reports."
|
|
87
|
+
},
|
|
88
|
+
"kind": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"enum": [
|
|
91
|
+
"dictionary",
|
|
92
|
+
"note"
|
|
93
|
+
],
|
|
94
|
+
"description": "REQUIRED for destination='knowledge'. 'dictionary' = source of truth (mappings, glossaries, runbooks, PR templates). 'note' = snapshot (meeting notes, sprint reviews, PR findings, post-mortems). Test: if this file disagreed with the code, who wins? File wins → dictionary; file loses → note. Ignored for destination='project' or 'kontexta'."
|
|
75
95
|
}
|
|
76
96
|
},
|
|
77
97
|
"required": [
|
|
@@ -315,7 +335,7 @@
|
|
|
315
335
|
},
|
|
316
336
|
{
|
|
317
337
|
"name": "regex_search",
|
|
318
|
-
"description": "Match a JS regex against the body of every file in scope (project, KB, or all) and return per-file hits with line numbers. Slower than FTS `search` because it reads each file's content; use only when FTS misses substrings, URLs, or code identifiers. Read-only; no side effects, auth, or rate limits. Capped at 500 files / 10 hits per file by default; the response reports `files_truncated` and per-file truncation so the agent can re-scope. `project_id: null` = KB only; omit = everywhere. Invalid regex throws.",
|
|
338
|
+
"description": "Match a JS regex against the body of every file in scope (project, KB, or all) and return per-file hits with line numbers. Slower than FTS `search` because it reads each file's content; use only when FTS misses substrings, URLs, or code identifiers. Read-only; no side effects, auth, or rate limits. Capped at 500 files / 10 hits per file by default; the response reports `files_truncated` and per-file truncation so the agent can re-scope. `project_id: null` = KB only; omit = everywhere; `kind` narrows to one content class. Invalid regex throws.",
|
|
319
339
|
"inputSchema": {
|
|
320
340
|
"type": "object",
|
|
321
341
|
"properties": {
|
|
@@ -344,6 +364,16 @@
|
|
|
344
364
|
"exclusiveMinimum": 0,
|
|
345
365
|
"maximum": 100,
|
|
346
366
|
"description": "Per-file hit cap (default 10)"
|
|
367
|
+
},
|
|
368
|
+
"kind": {
|
|
369
|
+
"type": "string",
|
|
370
|
+
"enum": [
|
|
371
|
+
"dictionary",
|
|
372
|
+
"note",
|
|
373
|
+
"journal",
|
|
374
|
+
"project"
|
|
375
|
+
],
|
|
376
|
+
"description": "Filter by content class before scanning."
|
|
347
377
|
}
|
|
348
378
|
},
|
|
349
379
|
"required": [
|
|
@@ -405,7 +435,7 @@
|
|
|
405
435
|
},
|
|
406
436
|
{
|
|
407
437
|
"name": "list_files",
|
|
408
|
-
"description": "List file metadata with optional filters (project_id, tag, favorite, folder, untagged) and pagination. Read-only; no side effects, auth, or rate limits. Each row is annotated with tags, est_tokens, and
|
|
438
|
+
"description": "List file metadata with optional filters (project_id, tag, favorite, folder, untagged, kind) and pagination. Read-only; no side effects, auth, or rate limits. Each row is annotated with tags, est_tokens, size_bytes, and content_class; the response includes `total_est_tokens` so you can budget before reading bodies. `project_id: null` returns ONLY Knowledge Base files; omit the field to span everything; `kind` narrows to one content class. Use to browse known structure; for keyword/content lookup use `search`; for a denser whole-vault dump use `project_map`.",
|
|
409
439
|
"inputSchema": {
|
|
410
440
|
"type": "object",
|
|
411
441
|
"properties": {
|
|
@@ -439,6 +469,16 @@
|
|
|
439
469
|
"offset": {
|
|
440
470
|
"type": "number",
|
|
441
471
|
"description": "Offset for pagination"
|
|
472
|
+
},
|
|
473
|
+
"kind": {
|
|
474
|
+
"type": "string",
|
|
475
|
+
"enum": [
|
|
476
|
+
"dictionary",
|
|
477
|
+
"note",
|
|
478
|
+
"journal",
|
|
479
|
+
"project"
|
|
480
|
+
],
|
|
481
|
+
"description": "Filter by content class. dictionary = authoritative KB, note = informational KB, journal = time-log, project = project file."
|
|
442
482
|
}
|
|
443
483
|
},
|
|
444
484
|
"additionalProperties": false,
|
|
@@ -450,7 +490,7 @@
|
|
|
450
490
|
},
|
|
451
491
|
{
|
|
452
492
|
"name": "search",
|
|
453
|
-
"description": "Full-text (SQLite FTS5) keyword search across files. Returns ranked matches with inline match_excerpt and title_highlight (no follow-up `read_file` needed for snippets) plus tags, est_tokens, size_bytes, and aggregate `total_est_tokens`. Read-only; no side effects, auth, or rate limits. FTS is tokenised: it WILL miss URLs, hyphenated terms, and partial substrings — fall back to `regex_search` for those. `project_id: null` searches only the KB; omit the field to span everything; `tags[]` requires ALL listed tags to match. For prompt-ready bundled bodies use `bundle_search`.",
|
|
493
|
+
"description": "Full-text (SQLite FTS5) keyword search across files. Returns ranked matches with inline match_excerpt and title_highlight (no follow-up `read_file` needed for snippets) plus tags, est_tokens, size_bytes, content_class, and aggregate `total_est_tokens`. Read-only; no side effects, auth, or rate limits. Ordering: dictionary hits sort above everything else for the same query (dictionary-wins on conflict), then BM25 rank. FTS is tokenised: it WILL miss URLs, hyphenated terms, and partial substrings — fall back to `regex_search` for those. `project_id: null` searches only the KB; omit the field to span everything; `tags[]` requires ALL listed tags to match; `kind` narrows to one content class. For prompt-ready bundled bodies use `bundle_search`.",
|
|
454
494
|
"inputSchema": {
|
|
455
495
|
"type": "object",
|
|
456
496
|
"properties": {
|
|
@@ -475,6 +515,16 @@
|
|
|
475
515
|
"favorite": {
|
|
476
516
|
"type": "boolean",
|
|
477
517
|
"description": "Filter by favorite status"
|
|
518
|
+
},
|
|
519
|
+
"kind": {
|
|
520
|
+
"type": "string",
|
|
521
|
+
"enum": [
|
|
522
|
+
"dictionary",
|
|
523
|
+
"note",
|
|
524
|
+
"journal",
|
|
525
|
+
"project"
|
|
526
|
+
],
|
|
527
|
+
"description": "Filter by content class. dictionary = authoritative KB (system IDs, mappings, glossaries), note = informational KB, journal = time-log, project = project file. Omit to see all classes with dictionary-first ordering."
|
|
478
528
|
}
|
|
479
529
|
},
|
|
480
530
|
"required": [
|
|
@@ -489,7 +539,7 @@
|
|
|
489
539
|
},
|
|
490
540
|
{
|
|
491
541
|
"name": "bundle_search",
|
|
492
|
-
"description": "Run an FTS search and concatenate matched bodies into a single prompt-ready bundle (XML `<document>` blocks or markdown headers + fences) capped at `max_tokens`. Files are added in rank order until the next would exceed the budget; the rest go to `skipped[]`. Read-only; no side effects, auth, or rate limits. Use instead of `search` + N×`read_file` when you need several related files as one context blob. Defaults: format=xml, max_tokens=50000. `project_id: null` = KB only; `tags[]` requires ALL to match.",
|
|
542
|
+
"description": "Run an FTS search and concatenate matched bodies into a single prompt-ready bundle (XML `<document>` blocks or markdown headers + fences) capped at `max_tokens`. Files are added in rank order (dictionary-wins first, then BM25) until the next would exceed the budget; the rest go to `skipped[]`. Read-only; no side effects, auth, or rate limits. Use instead of `search` + N×`read_file` when you need several related files as one context blob. Defaults: format=xml, max_tokens=50000. `project_id: null` = KB only; `tags[]` requires ALL to match; `kind` narrows to one content class.",
|
|
493
543
|
"inputSchema": {
|
|
494
544
|
"type": "object",
|
|
495
545
|
"properties": {
|
|
@@ -529,6 +579,16 @@
|
|
|
529
579
|
"exclusiveMinimum": 0,
|
|
530
580
|
"default": 50000,
|
|
531
581
|
"description": "Token budget. Files added in rank order until the next would exceed; remainder go to skipped[]"
|
|
582
|
+
},
|
|
583
|
+
"kind": {
|
|
584
|
+
"type": "string",
|
|
585
|
+
"enum": [
|
|
586
|
+
"dictionary",
|
|
587
|
+
"note",
|
|
588
|
+
"journal",
|
|
589
|
+
"project"
|
|
590
|
+
],
|
|
591
|
+
"description": "Filter by content class. dictionary = authoritative KB, note = informational KB, journal = time-log, project = project file."
|
|
532
592
|
}
|
|
533
593
|
},
|
|
534
594
|
"required": [
|
|
@@ -784,7 +844,7 @@
|
|
|
784
844
|
},
|
|
785
845
|
{
|
|
786
846
|
"name": "clip_url",
|
|
787
|
-
"description": "SIDE-EFFECTFUL — fetches an EXTERNAL URL and writes a NEW KB file. Downloads the page, extracts the main article via Readability, converts to markdown, and saves it as
|
|
847
|
+
"description": "SIDE-EFFECTFUL — fetches an EXTERNAL URL and writes a NEW KB file. Downloads the page, extracts the main article via Readability, converts to markdown, and saves it under `knowledge/urlclips/`. Auto-classified as content_class='dictionary' (clipped external references are treated as authoritative reference material). NOT idempotent / no de-dup — re-clipping the same URL creates a second file. AUTH: anonymous by default; pass `headers` (e.g. `{Cookie: 'session=...'}` or `{Authorization: 'Bearer ...'}`) to clip behind logins. Kontexta does not rate-limit but the upstream may throttle. On auth-required pages returns isError with `code: AUTH_REQUIRED`, optional `login_url`, and a hint to retry with `headers`. Returns `{file_id, path, title, source}`. Use to ingest external docs into the KB.",
|
|
788
848
|
"inputSchema": {
|
|
789
849
|
"type": "object",
|
|
790
850
|
"properties": {
|
|
@@ -1050,7 +1110,7 @@
|
|
|
1050
1110
|
},
|
|
1051
1111
|
{
|
|
1052
1112
|
"name": "move_file",
|
|
1053
|
-
"description": "Move/rename a file. Destination 'new_path' must be absolute and resolve INSIDE the file's owning project or global knowledge directory. Cross-project moves are rejected.
|
|
1113
|
+
"description": "Move/rename a file. Destination 'new_path' must be absolute and resolve INSIDE the file's owning project or global knowledge directory. Cross-project moves are rejected. Alternative: pass `kind='dictionary'|'note'` (with no `new_path`) to move a KB file into the mirrored path in the other class tree — subfolder path is preserved. Operates locally with no auth or limits.",
|
|
1054
1114
|
"inputSchema": {
|
|
1055
1115
|
"type": "object",
|
|
1056
1116
|
"properties": {
|
|
@@ -1061,11 +1121,18 @@
|
|
|
1061
1121
|
"new_path": {
|
|
1062
1122
|
"type": "string",
|
|
1063
1123
|
"description": "Absolute destination path"
|
|
1124
|
+
},
|
|
1125
|
+
"kind": {
|
|
1126
|
+
"type": "string",
|
|
1127
|
+
"enum": [
|
|
1128
|
+
"dictionary",
|
|
1129
|
+
"note"
|
|
1130
|
+
],
|
|
1131
|
+
"description": "Move the file to the mirrored path in the other class tree. Subfolder path is preserved: knowledge/dictionary/slt/ids.md ↔ knowledge/notes/slt/ids.md. Ignored if `new_path` is also provided."
|
|
1064
1132
|
}
|
|
1065
1133
|
},
|
|
1066
1134
|
"required": [
|
|
1067
|
-
"file_id"
|
|
1068
|
-
"new_path"
|
|
1135
|
+
"file_id"
|
|
1069
1136
|
],
|
|
1070
1137
|
"additionalProperties": false,
|
|
1071
1138
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -1076,7 +1143,7 @@
|
|
|
1076
1143
|
},
|
|
1077
1144
|
{
|
|
1078
1145
|
"name": "find_related",
|
|
1079
|
-
"description": "Find other files sharing tags with the given file, ranked by `shared_tag_count` descending. Read-only; no side effects, auth, or rate limits. Returns annotated file rows with `shared_tag_count` and `shared_tags`. Empty result means the file has no tags or no other file shares them — try `search`/`regex_search` for content-based discovery, or `suggest_tags` to bootstrap labels first. Default limit 10.",
|
|
1146
|
+
"description": "Find other files sharing tags with the given file, ranked by `shared_tag_count` descending. Read-only; no side effects, auth, or rate limits. Returns annotated file rows with `shared_tag_count` and `shared_tags`. Empty result means the file has no tags or no other file shares them — try `search`/`regex_search` for content-based discovery, or `suggest_tags` to bootstrap labels first. `kind` narrows to one content class. Default limit 10.",
|
|
1080
1147
|
"inputSchema": {
|
|
1081
1148
|
"type": "object",
|
|
1082
1149
|
"properties": {
|
|
@@ -1087,6 +1154,16 @@
|
|
|
1087
1154
|
"limit": {
|
|
1088
1155
|
"type": "number",
|
|
1089
1156
|
"description": "Maximum number of related files to return (default 10)"
|
|
1157
|
+
},
|
|
1158
|
+
"kind": {
|
|
1159
|
+
"type": "string",
|
|
1160
|
+
"enum": [
|
|
1161
|
+
"dictionary",
|
|
1162
|
+
"note",
|
|
1163
|
+
"journal",
|
|
1164
|
+
"project"
|
|
1165
|
+
],
|
|
1166
|
+
"description": "Filter related results to a single content class."
|
|
1090
1167
|
}
|
|
1091
1168
|
},
|
|
1092
1169
|
"required": [
|
|
@@ -1101,7 +1178,7 @@
|
|
|
1101
1178
|
},
|
|
1102
1179
|
{
|
|
1103
1180
|
"name": "create_files",
|
|
1104
|
-
"description": "Batch variant of `create_file` — create up to 200 markdown or
|
|
1181
|
+
"description": "Batch variant of `create_file` — create up to 200 markdown, mermaid, or HTML files in one call. Each item follows the same rules: `project_id` required if `destination` is `project`/`kontexta`; `kind` ('dictionary' or 'note') required if `destination` is `knowledge`. SIDE EFFECTS: writes new files to disk and inserts FTS5 rows; missing folders are mkdir'd. Per-item failures are isolated to `errors[]` and the rest of the batch still commits — partial success is the norm, always inspect `error_count`. No external auth or rate limits. Returns `{created_count, error_count, created, errors}`. Use for bulk ingestion; for >200 items, page yourself. Pass format='mmd' on an item to create a Mermaid diagram file (.mmd) or 'html' for HTML reports; defaults to 'md'.",
|
|
1105
1182
|
"inputSchema": {
|
|
1106
1183
|
"type": "object",
|
|
1107
1184
|
"properties": {
|
|
@@ -1140,8 +1217,17 @@
|
|
|
1140
1217
|
"type": "string",
|
|
1141
1218
|
"enum": [
|
|
1142
1219
|
"md",
|
|
1143
|
-
"mmd"
|
|
1220
|
+
"mmd",
|
|
1221
|
+
"html"
|
|
1144
1222
|
]
|
|
1223
|
+
},
|
|
1224
|
+
"kind": {
|
|
1225
|
+
"type": "string",
|
|
1226
|
+
"enum": [
|
|
1227
|
+
"dictionary",
|
|
1228
|
+
"note"
|
|
1229
|
+
],
|
|
1230
|
+
"description": "REQUIRED per-item for destination='knowledge'. See create_file for the dictionary/note rubric."
|
|
1145
1231
|
}
|
|
1146
1232
|
},
|
|
1147
1233
|
"required": [
|
|
@@ -19,6 +19,8 @@ This project is registered with kontexta. Honor these rules to keep the index, h
|
|
|
19
19
|
|
|
20
20
|
### Core rules
|
|
21
21
|
|
|
22
|
+
**Print the session welcome as your first message.** On the very first turn of any new session, call `refresh_session_context` and print a brief greeting to the user based on what it returns — today's date, their name from the profile, upcoming events / conflicts if any, a nudge if the profile is empty or stale. 1–3 lines, not a report. Two reasons: (1) if the client lazy-loads MCP servers, this is what actually triggers `initialize`; (2) the user sees kontexta is connected and knows what context you have. Skip if the user's first message is already a work request — do the work.
|
|
23
|
+
|
|
22
24
|
**Search before reading.** Use `search`, `bundle_search`, or `regex_search` to find context first. Skipping straight to `read_file` on a guessed path wastes tokens and often misses the right file.
|
|
23
25
|
|
|
24
26
|
**All KB writes go through kontexta.** Use `create_file` / `update_file` / `update_file_section` / `journal_note`. **Never** edit a KB file with raw filesystem tools (Edit/Write/cat) — the watcher and FTS index will diverge until `refresh_index` runs, and subsequent searches will return stale results.
|
|
@@ -68,6 +70,14 @@ A KI that isn't maintained becomes noise — which is worse than no KI.
|
|
|
68
70
|
project in a while, run `whats_new(since: "7d")` to surface recently changed
|
|
69
71
|
files — including KIs updated by other agents or the user.
|
|
70
72
|
|
|
73
|
+
### Content class
|
|
74
|
+
|
|
75
|
+
`create_file` / `create_files` require `kind` for KB writes:
|
|
76
|
+
- **`dictionary`** = source of truth (mappings, glossaries, runbooks, PR templates, architecture docs)
|
|
77
|
+
- **`note`** = snapshot (meeting notes, PR findings, sprint reviews, post-mortems, working thoughts)
|
|
78
|
+
|
|
79
|
+
Test: *if this file disagreed with the code, who wins?* File wins → dictionary; file loses → note. Search ranks dictionary hits above everything else; filter with `kind` on any read tool for one class. `journal`/`project` are auto-assigned — don't pass them to `create_file`.
|
|
80
|
+
|
|
71
81
|
### Tool reference
|
|
72
82
|
|
|
73
83
|
The matrix below is grouped by intent. For each tool: when to reach for it, the most common wrong context, and the better sibling tool when wrong.
|
|
@@ -158,6 +168,7 @@ The matrix below is grouped by intent. For each tool: when to reach for it, the
|
|
|
158
168
|
| `project_map` | Folder/file tree for a project | Flat file list | `list_files` |
|
|
159
169
|
| `stats` | Counts and health for a project | Per-file detail | `describe_file` |
|
|
160
170
|
| `whats_new` | Files added/changed since a cutoff | Full-text search | `search` |
|
|
171
|
+
| `refresh_session_context` | Re-fetch profile + upcoming events after mid-session edits | Reading a single profile field | `get_profile` |
|
|
161
172
|
|
|
162
173
|
#### Calendar
|
|
163
174
|
|