constella 0.1.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/.next/BUILD_ID +1 -0
- package/.next/app-path-routes-manifest.json +53 -0
- package/.next/build-manifest.json +20 -0
- package/.next/diagnostics/build-diagnostics.json +6 -0
- package/.next/diagnostics/framework.json +1 -0
- package/.next/export-marker.json +6 -0
- package/.next/images-manifest.json +68 -0
- package/.next/next-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +36 -0
- package/.next/react-loadable-manifest.json +14 -0
- package/.next/required-server-files.js +343 -0
- package/.next/required-server-files.json +343 -0
- package/.next/routes-manifest.json +362 -0
- package/.next/server/app/(app)/activity/page.js +2 -0
- package/.next/server/app/(app)/activity/page.js.nft.json +1 -0
- package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/agents/[handle]/page.js +18 -0
- package/.next/server/app/(app)/agents/[handle]/page.js.nft.json +1 -0
- package/.next/server/app/(app)/agents/[handle]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/code/page.js +2 -0
- package/.next/server/app/(app)/code/page.js.nft.json +1 -0
- package/.next/server/app/(app)/code/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/config/page.js +2 -0
- package/.next/server/app/(app)/config/page.js.nft.json +1 -0
- package/.next/server/app/(app)/config/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/costs/page.js +2 -0
- package/.next/server/app/(app)/costs/page.js.nft.json +1 -0
- package/.next/server/app/(app)/costs/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/cron/page.js +2 -0
- package/.next/server/app/(app)/cron/page.js.nft.json +1 -0
- package/.next/server/app/(app)/cron/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/dashboard/page.js +2 -0
- package/.next/server/app/(app)/dashboard/page.js.nft.json +1 -0
- package/.next/server/app/(app)/dashboard/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/docs/[id]/page.js +2 -0
- package/.next/server/app/(app)/docs/[id]/page.js.nft.json +1 -0
- package/.next/server/app/(app)/docs/[id]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/docs/page.js +2 -0
- package/.next/server/app/(app)/docs/page.js.nft.json +1 -0
- package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/github/page.js +2 -0
- package/.next/server/app/(app)/github/page.js.nft.json +1 -0
- package/.next/server/app/(app)/github/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/goals/page.js +2 -0
- package/.next/server/app/(app)/goals/page.js.nft.json +1 -0
- package/.next/server/app/(app)/goals/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/inbox/page.js +2 -0
- package/.next/server/app/(app)/inbox/page.js.nft.json +1 -0
- package/.next/server/app/(app)/inbox/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/knowledge/page.js +3 -0
- package/.next/server/app/(app)/knowledge/page.js.nft.json +1 -0
- package/.next/server/app/(app)/knowledge/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/models/page.js +2 -0
- package/.next/server/app/(app)/models/page.js.nft.json +1 -0
- package/.next/server/app/(app)/models/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/notifications/page.js +2 -0
- package/.next/server/app/(app)/notifications/page.js.nft.json +1 -0
- package/.next/server/app/(app)/notifications/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/org/page.js +2 -0
- package/.next/server/app/(app)/org/page.js.nft.json +1 -0
- package/.next/server/app/(app)/org/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/organizations/page.js +2 -0
- package/.next/server/app/(app)/organizations/page.js.nft.json +1 -0
- package/.next/server/app/(app)/organizations/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/page.js +3 -0
- package/.next/server/app/(app)/page.js.nft.json +1 -0
- package/.next/server/app/(app)/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/planner/page.js +2 -0
- package/.next/server/app/(app)/planner/page.js.nft.json +1 -0
- package/.next/server/app/(app)/planner/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/plugins/page.js +2 -0
- package/.next/server/app/(app)/plugins/page.js.nft.json +1 -0
- package/.next/server/app/(app)/plugins/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/pm/page.js +2 -0
- package/.next/server/app/(app)/pm/page.js.nft.json +1 -0
- package/.next/server/app/(app)/pm/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/prepare-deploy/page.js +19 -0
- package/.next/server/app/(app)/prepare-deploy/page.js.nft.json +1 -0
- package/.next/server/app/(app)/prepare-deploy/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/profile/page.js +2 -0
- package/.next/server/app/(app)/profile/page.js.nft.json +1 -0
- package/.next/server/app/(app)/profile/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/pulse/page.js +2 -0
- package/.next/server/app/(app)/pulse/page.js.nft.json +1 -0
- package/.next/server/app/(app)/pulse/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/reports/[id]/page.js +3 -0
- package/.next/server/app/(app)/reports/[id]/page.js.nft.json +1 -0
- package/.next/server/app/(app)/reports/[id]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/reports/page.js +5 -0
- package/.next/server/app/(app)/reports/page.js.nft.json +1 -0
- package/.next/server/app/(app)/reports/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/routines/page.js +2 -0
- package/.next/server/app/(app)/routines/page.js.nft.json +1 -0
- package/.next/server/app/(app)/routines/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/search/page.js +2 -0
- package/.next/server/app/(app)/search/page.js.nft.json +1 -0
- package/.next/server/app/(app)/search/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/security/page.js +2 -0
- package/.next/server/app/(app)/security/page.js.nft.json +1 -0
- package/.next/server/app/(app)/security/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/skills/page.js +18 -0
- package/.next/server/app/(app)/skills/page.js.nft.json +1 -0
- package/.next/server/app/(app)/skills/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/tasks/page.js +2 -0
- package/.next/server/app/(app)/tasks/page.js.nft.json +1 -0
- package/.next/server/app/(app)/tasks/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/test-dev/page.js +2 -0
- package/.next/server/app/(app)/test-dev/page.js.nft.json +1 -0
- package/.next/server/app/(app)/test-dev/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/update/page.js +2 -0
- package/.next/server/app/(app)/update/page.js.nft.json +1 -0
- package/.next/server/app/(app)/update/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(auth)/login/page.js +2 -0
- package/.next/server/app/(auth)/login/page.js.nft.json +1 -0
- package/.next/server/app/(auth)/login/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(auth)/onboarding/page.js +18 -0
- package/.next/server/app/(auth)/onboarding/page.js.nft.json +1 -0
- package/.next/server/app/(auth)/onboarding/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_global-error/page.js +32 -0
- package/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_global-error.html +1 -0
- package/.next/server/app/_global-error.meta +16 -0
- package/.next/server/app/_global-error.rsc +15 -0
- package/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_index.segment.rsc +6 -0
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
- package/.next/server/app/_not-found/page.js +2 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/[...all]/route.js +1 -0
- package/.next/server/app/api/auth/[...all]/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/[...all]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/cron/tick/route.js +52 -0
- package/.next/server/app/api/cron/tick/route.js.nft.json +1 -0
- package/.next/server/app/api/cron/tick/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/dev-login/route.js +1 -0
- package/.next/server/app/api/dev-login/route.js.nft.json +1 -0
- package/.next/server/app/api/dev-login/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/locks/acquire/route.js +1 -0
- package/.next/server/app/api/locks/acquire/route.js.nft.json +1 -0
- package/.next/server/app/api/locks/acquire/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models/progress/route.js +1 -0
- package/.next/server/app/api/models/progress/route.js.nft.json +1 -0
- package/.next/server/app/api/models/progress/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/authenticate/options/route.js +1 -0
- package/.next/server/app/api/passkey/authenticate/options/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/authenticate/options/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/authenticate/verify/route.js +1 -0
- package/.next/server/app/api/passkey/authenticate/verify/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/authenticate/verify/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/register/options/route.js +1 -0
- package/.next/server/app/api/passkey/register/options/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/register/options/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/register/verify/route.js +1 -0
- package/.next/server/app/api/passkey/register/verify/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/register/verify/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/stream/route.js +4 -0
- package/.next/server/app/api/stream/route.js.nft.json +1 -0
- package/.next/server/app/api/stream/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sync/file/route.js +2 -0
- package/.next/server/app/api/sync/file/route.js.nft.json +1 -0
- package/.next/server/app/api/sync/file/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/telegram/poll/route.js +15 -0
- package/.next/server/app/api/telegram/poll/route.js.nft.json +1 -0
- package/.next/server/app/api/telegram/poll/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/upload/route.js +1 -0
- package/.next/server/app/api/upload/route.js.nft.json +1 -0
- package/.next/server/app/api/upload/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/v1/[[...path]]/route.js +1 -0
- package/.next/server/app/api/v1/[[...path]]/route.js.nft.json +1 -0
- package/.next/server/app/api/v1/[[...path]]/route_client-reference-manifest.js +1 -0
- package/.next/server/app-paths-manifest.json +53 -0
- package/.next/server/chunks/1003.js +1 -0
- package/.next/server/chunks/127.js +26 -0
- package/.next/server/chunks/1388.js +1 -0
- package/.next/server/chunks/1408.js +21 -0
- package/.next/server/chunks/1572.js +1 -0
- package/.next/server/chunks/1591.js +24 -0
- package/.next/server/chunks/1619.js +188 -0
- package/.next/server/chunks/162.js +1 -0
- package/.next/server/chunks/1881.js +1 -0
- package/.next/server/chunks/1968.js +1 -0
- package/.next/server/chunks/2297.js +348 -0
- package/.next/server/chunks/2341.js +1 -0
- package/.next/server/chunks/2517.js +1 -0
- package/.next/server/chunks/2549.js +1 -0
- package/.next/server/chunks/259.js +14 -0
- package/.next/server/chunks/2599.js +1 -0
- package/.next/server/chunks/260.js +1 -0
- package/.next/server/chunks/2867.js +147 -0
- package/.next/server/chunks/3018.js +1 -0
- package/.next/server/chunks/3050.js +18 -0
- package/.next/server/chunks/3085.js +12 -0
- package/.next/server/chunks/3131.js +1 -0
- package/.next/server/chunks/3242.js +1 -0
- package/.next/server/chunks/3266.js +15 -0
- package/.next/server/chunks/3524.js +1 -0
- package/.next/server/chunks/3527.js +479 -0
- package/.next/server/chunks/3533.js +869 -0
- package/.next/server/chunks/3550.js +1 -0
- package/.next/server/chunks/3609.js +2 -0
- package/.next/server/chunks/3667.js +462 -0
- package/.next/server/chunks/3760.js +4 -0
- package/.next/server/chunks/4679.js +1 -0
- package/.next/server/chunks/4804.js +1 -0
- package/.next/server/chunks/4832.js +2 -0
- package/.next/server/chunks/4853.js +1 -0
- package/.next/server/chunks/4979.js +67 -0
- package/.next/server/chunks/5060.js +1 -0
- package/.next/server/chunks/5278.js +1 -0
- package/.next/server/chunks/5614.js +1 -0
- package/.next/server/chunks/5818.js +1 -0
- package/.next/server/chunks/6479.js +1 -0
- package/.next/server/chunks/6658.js +1 -0
- package/.next/server/chunks/6706.js +1 -0
- package/.next/server/chunks/6719.js +1 -0
- package/.next/server/chunks/678.js +1 -0
- package/.next/server/chunks/683.js +1 -0
- package/.next/server/chunks/6862.js +1 -0
- package/.next/server/chunks/6882.js +1 -0
- package/.next/server/chunks/7037.js +1 -0
- package/.next/server/chunks/7107.js +741 -0
- package/.next/server/chunks/73.js +17 -0
- package/.next/server/chunks/7327.js +1 -0
- package/.next/server/chunks/7514.js +1 -0
- package/.next/server/chunks/7622.js +1 -0
- package/.next/server/chunks/7778.js +1 -0
- package/.next/server/chunks/7912.js +1 -0
- package/.next/server/chunks/7949.js +1 -0
- package/.next/server/chunks/7971.js +1 -0
- package/.next/server/chunks/7989.js +1 -0
- package/.next/server/chunks/842.js +22 -0
- package/.next/server/chunks/8762.js +15 -0
- package/.next/server/chunks/8823.js +77 -0
- package/.next/server/chunks/9146.js +4 -0
- package/.next/server/chunks/9676.js +1 -0
- package/.next/server/chunks/9783.js +22 -0
- package/.next/server/chunks/9969.js +3 -0
- package/.next/server/functions-config-manifest.json +18 -0
- package/.next/server/instrumentation.js +1 -0
- package/.next/server/instrumentation.js.nft.json +1 -0
- package/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/.next/server/middleware.js +18 -0
- package/.next/server/middleware.js.nft.json +1 -0
- package/.next/server/next-font-manifest.js +1 -0
- package/.next/server/next-font-manifest.json +1 -0
- package/.next/server/pages/500.html +1 -0
- package/.next/server/pages-manifest.json +3 -0
- package/.next/server/prefetch-hints.json +1 -0
- package/.next/server/server-reference-manifest.js +1 -0
- package/.next/server/server-reference-manifest.json +1 -0
- package/.next/server/webpack-runtime.js +1 -0
- package/.next/static/chunks/1858-339516f78a4b00da.js +1 -0
- package/.next/static/chunks/2320-fc8b39380e69d465.js +2 -0
- package/.next/static/chunks/23550918-ff694f70f4b0648c.js +1 -0
- package/.next/static/chunks/3219-ebb3c23be38c838d.js +1 -0
- package/.next/static/chunks/4263-adecb5b466380b6e.js +1 -0
- package/.next/static/chunks/5479-0cceab68cd0ca9c7.js +1 -0
- package/.next/static/chunks/5701-665b927b06158b76.js +1 -0
- package/.next/static/chunks/5920.6451a68b63918988.js +1 -0
- package/.next/static/chunks/6575-5c9139720bb0f5bf.js +4 -0
- package/.next/static/chunks/6834-4759af1ce7d95fb6.js +32 -0
- package/.next/static/chunks/7509.721cd47a931c5518.js +1 -0
- package/.next/static/chunks/8264-1ca011989ee2b231.js +1 -0
- package/.next/static/chunks/9219-4a39a98b5502d9d1.js +1 -0
- package/.next/static/chunks/9690-53d5222618cbeddb.js +1 -0
- package/.next/static/chunks/app/(app)/activity/page-3973534281ecea81.js +1 -0
- package/.next/static/chunks/app/(app)/agents/[handle]/page-83662a175c098282.js +1 -0
- package/.next/static/chunks/app/(app)/code/page-33979545192cd137.js +1 -0
- package/.next/static/chunks/app/(app)/config/page-9933aed1ca8a85c1.js +1 -0
- package/.next/static/chunks/app/(app)/costs/page-131c4dc580efcc19.js +1 -0
- package/.next/static/chunks/app/(app)/cron/page-53ea1aff998a87ca.js +1 -0
- package/.next/static/chunks/app/(app)/dashboard/page-deed83aaa9d0d447.js +1 -0
- package/.next/static/chunks/app/(app)/docs/[id]/page-38c993d73c0eab4f.js +1 -0
- package/.next/static/chunks/app/(app)/docs/page-bf463b55d0554e86.js +1 -0
- package/.next/static/chunks/app/(app)/error-988cd28480809861.js +1 -0
- package/.next/static/chunks/app/(app)/github/page-62678b4e82dfecb6.js +1 -0
- package/.next/static/chunks/app/(app)/goals/page-4adb426fe1c96106.js +1 -0
- package/.next/static/chunks/app/(app)/inbox/page-e347dc55ab467310.js +1 -0
- package/.next/static/chunks/app/(app)/knowledge/page-65393a045b4349be.js +1 -0
- package/.next/static/chunks/app/(app)/layout-7f65675705b011d8.js +1 -0
- package/.next/static/chunks/app/(app)/models/page-e01f1dd7e49a2951.js +1 -0
- package/.next/static/chunks/app/(app)/notifications/page-56548ac87aef00da.js +1 -0
- package/.next/static/chunks/app/(app)/org/page-699e6a6dc0db7d81.js +1 -0
- package/.next/static/chunks/app/(app)/organizations/page-36051a380a7e8eb7.js +1 -0
- package/.next/static/chunks/app/(app)/page-7d1011a566f81520.js +1 -0
- package/.next/static/chunks/app/(app)/planner/page-dab7ced94083373a.js +1 -0
- package/.next/static/chunks/app/(app)/plugins/page-5b5a1f53389be42e.js +1 -0
- package/.next/static/chunks/app/(app)/pm/page-0de5c08c0b227bb0.js +1 -0
- package/.next/static/chunks/app/(app)/prepare-deploy/page-e426038552df8d41.js +1 -0
- package/.next/static/chunks/app/(app)/profile/page-608dfcaf8aae0a69.js +1 -0
- package/.next/static/chunks/app/(app)/pulse/page-309ccaca91de1faa.js +1 -0
- package/.next/static/chunks/app/(app)/reports/[id]/page-53ea1aff998a87ca.js +1 -0
- package/.next/static/chunks/app/(app)/reports/page-68cdc6dcfa472d86.js +1 -0
- package/.next/static/chunks/app/(app)/routines/page-bcc55550b197a9fa.js +1 -0
- package/.next/static/chunks/app/(app)/search/page-5c5f67558d0dbf0d.js +1 -0
- package/.next/static/chunks/app/(app)/security/page-a7d41e36aa366b45.js +1 -0
- package/.next/static/chunks/app/(app)/skills/page-c5b21e89593b8336.js +1 -0
- package/.next/static/chunks/app/(app)/tasks/page-08ae079e3e54d2ce.js +1 -0
- package/.next/static/chunks/app/(app)/test-dev/page-633f82dfd9c3ce23.js +1 -0
- package/.next/static/chunks/app/(app)/update/page-4be019054351bfac.js +1 -0
- package/.next/static/chunks/app/(auth)/login/page-6e85d3377062acae.js +1 -0
- package/.next/static/chunks/app/(auth)/onboarding/page-ebb10c175abf3b85.js +1 -0
- package/.next/static/chunks/app/_global-error/page-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/_not-found/page-dc38b02aebeab535.js +1 -0
- package/.next/static/chunks/app/api/auth/[...all]/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/cron/tick/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/dev-login/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/locks/acquire/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/models/progress/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/authenticate/options/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/authenticate/verify/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/register/options/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/register/verify/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/stream/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/sync/file/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/telegram/poll/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/upload/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/v1/[[...path]]/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/error-09899a13c38b6e89.js +1 -0
- package/.next/static/chunks/app/global-error-b8050d4d886f448c.js +1 -0
- package/.next/static/chunks/app/layout-ab9deed1e7e2e9df.js +1 -0
- package/.next/static/chunks/framework-4b2c6b6043dd203f.js +1 -0
- package/.next/static/chunks/main-722e16032e7764d1.js +5 -0
- package/.next/static/chunks/main-app-761880af2b6f1962.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/.next/static/chunks/webpack-222e3894b78c67db.js +1 -0
- package/.next/static/css/0a9b5805594444e3.css +1 -0
- package/.next/static/yztMvBwyrWWkSqP6jfXoa/_buildManifest.js +1 -0
- package/.next/static/yztMvBwyrWWkSqP6jfXoa/_ssgManifest.js +1 -0
- package/.next/trace-build +1 -0
- package/.next/types/app/(app)/activity/page.ts +87 -0
- package/.next/types/app/(app)/agents/[handle]/page.ts +87 -0
- package/.next/types/app/(app)/code/page.ts +87 -0
- package/.next/types/app/(app)/config/page.ts +87 -0
- package/.next/types/app/(app)/costs/page.ts +87 -0
- package/.next/types/app/(app)/cron/page.ts +87 -0
- package/.next/types/app/(app)/dashboard/page.ts +87 -0
- package/.next/types/app/(app)/docs/[id]/page.ts +87 -0
- package/.next/types/app/(app)/docs/page.ts +87 -0
- package/.next/types/app/(app)/github/page.ts +87 -0
- package/.next/types/app/(app)/goals/page.ts +87 -0
- package/.next/types/app/(app)/inbox/page.ts +87 -0
- package/.next/types/app/(app)/knowledge/page.ts +87 -0
- package/.next/types/app/(app)/models/page.ts +87 -0
- package/.next/types/app/(app)/notifications/page.ts +87 -0
- package/.next/types/app/(app)/org/page.ts +87 -0
- package/.next/types/app/(app)/organizations/page.ts +87 -0
- package/.next/types/app/(app)/page.ts +87 -0
- package/.next/types/app/(app)/planner/page.ts +87 -0
- package/.next/types/app/(app)/plugins/page.ts +87 -0
- package/.next/types/app/(app)/pm/page.ts +87 -0
- package/.next/types/app/(app)/prepare-deploy/page.ts +87 -0
- package/.next/types/app/(app)/profile/page.ts +87 -0
- package/.next/types/app/(app)/pulse/page.ts +87 -0
- package/.next/types/app/(app)/reports/[id]/page.ts +87 -0
- package/.next/types/app/(app)/reports/page.ts +87 -0
- package/.next/types/app/(app)/routines/page.ts +87 -0
- package/.next/types/app/(app)/search/page.ts +87 -0
- package/.next/types/app/(app)/security/page.ts +87 -0
- package/.next/types/app/(app)/skills/page.ts +87 -0
- package/.next/types/app/(app)/tasks/page.ts +87 -0
- package/.next/types/app/(app)/test-dev/page.ts +87 -0
- package/.next/types/app/(app)/update/page.ts +87 -0
- package/.next/types/app/(auth)/login/page.ts +87 -0
- package/.next/types/app/(auth)/onboarding/page.ts +87 -0
- package/.next/types/app/api/auth/[...all]/route.ts +351 -0
- package/.next/types/app/api/cron/tick/route.ts +351 -0
- package/.next/types/app/api/dev-login/route.ts +351 -0
- package/.next/types/app/api/locks/acquire/route.ts +351 -0
- package/.next/types/app/api/models/progress/route.ts +351 -0
- package/.next/types/app/api/passkey/authenticate/options/route.ts +351 -0
- package/.next/types/app/api/passkey/authenticate/verify/route.ts +351 -0
- package/.next/types/app/api/passkey/register/options/route.ts +351 -0
- package/.next/types/app/api/passkey/register/verify/route.ts +351 -0
- package/.next/types/app/api/stream/route.ts +351 -0
- package/.next/types/app/api/sync/file/route.ts +351 -0
- package/.next/types/app/api/telegram/poll/route.ts +351 -0
- package/.next/types/app/api/upload/route.ts +351 -0
- package/.next/types/app/api/v1/[[...path]]/route.ts +351 -0
- package/.next/types/cache-life.d.ts +145 -0
- package/.next/types/link.d.ts +210 -0
- package/.next/types/package.json +1 -0
- package/.next/types/routes.d.ts +120 -0
- package/.next/types/validator.ts +511 -0
- package/CHANGELOG.md +312 -0
- package/LICENSE +21 -0
- package/README.md +382 -0
- package/README.pt-BR.md +391 -0
- package/bin/constella.mjs +329 -0
- package/bin/guard-hook.mjs +44 -0
- package/bin/lock-hook.mjs +49 -0
- package/bin/worker.mjs +142 -0
- package/docs/assets/arch-orbit.svg +56 -0
- package/docs/assets/blackhole.svg +37 -0
- package/docs/assets/divider-orbit.svg +23 -0
- package/docs/assets/hero-constella.svg +72 -0
- package/docs/en/AGENTS.md +279 -0
- package/docs/en/AI_ARCHITECTURE.md +373 -0
- package/docs/en/ARCHITECTURE.md +334 -0
- package/docs/en/AUTH_MODE.md +247 -0
- package/docs/en/CHAT_COMMANDS.md +305 -0
- package/docs/en/CONFIGURATION.md +340 -0
- package/docs/en/DEPLOY.md +331 -0
- package/docs/en/DM.md +297 -0
- package/docs/en/FAQ.md +258 -0
- package/docs/en/GITHUB.md +341 -0
- package/docs/en/GOALS_SPECS_ISSUES.md +303 -0
- package/docs/en/INBOX.md +340 -0
- package/docs/en/INSTALLATION.md +329 -0
- package/docs/en/KB_AGENT.md +305 -0
- package/docs/en/KB_RAG.md +356 -0
- package/docs/en/MCP.md +313 -0
- package/docs/en/MEMORY_RAG.md +289 -0
- package/docs/en/MODELS.md +341 -0
- package/docs/en/ONBOARDING.md +327 -0
- package/docs/en/PLUGINS.md +290 -0
- package/docs/en/PORTABLE_MODE.md +387 -0
- package/docs/en/PO_AGENT.md +379 -0
- package/docs/en/PREPARE_DEPLOY.md +308 -0
- package/docs/en/PROJECT_STACKS.md +258 -0
- package/docs/en/PUBLIC_API.md +315 -0
- package/docs/en/PUBLISHING.md +343 -0
- package/docs/en/README.md +95 -0
- package/docs/en/SECURITY.md +280 -0
- package/docs/en/SKILLS.md +349 -0
- package/docs/en/START_MODE.md +340 -0
- package/docs/en/SYNCED_BLOCKS.md +320 -0
- package/docs/en/TEAM_ROOM.md +285 -0
- package/docs/en/TELEGRAM.md +294 -0
- package/docs/en/TEST_DEV.md +321 -0
- package/docs/en/TROUBLESHOOTING.md +294 -0
- package/docs/en/UPDATE.md +301 -0
- package/docs/en/VPS_MODE.md +334 -0
- package/docs/en/WORKFLOW.md +321 -0
- package/docs/pt/AGENTS.md +279 -0
- package/docs/pt/AI_ARCHITECTURE.md +373 -0
- package/docs/pt/ARCHITECTURE.md +334 -0
- package/docs/pt/AUTH_MODE.md +247 -0
- package/docs/pt/CHAT_COMMANDS.md +307 -0
- package/docs/pt/CONFIGURATION.md +340 -0
- package/docs/pt/DEPLOY.md +331 -0
- package/docs/pt/DM.md +297 -0
- package/docs/pt/FAQ.md +258 -0
- package/docs/pt/GITHUB.md +341 -0
- package/docs/pt/GOALS_SPECS_ISSUES.md +303 -0
- package/docs/pt/INBOX.md +340 -0
- package/docs/pt/INSTALLATION.md +329 -0
- package/docs/pt/KB_AGENT.md +305 -0
- package/docs/pt/KB_RAG.md +356 -0
- package/docs/pt/MCP.md +313 -0
- package/docs/pt/MEMORY_RAG.md +289 -0
- package/docs/pt/MODELS.md +341 -0
- package/docs/pt/ONBOARDING.md +327 -0
- package/docs/pt/PLUGINS.md +290 -0
- package/docs/pt/PORTABLE_MODE.md +387 -0
- package/docs/pt/PO_AGENT.md +379 -0
- package/docs/pt/PREPARE_DEPLOY.md +308 -0
- package/docs/pt/PROJECT_STACKS.md +258 -0
- package/docs/pt/PUBLIC_API.md +315 -0
- package/docs/pt/PUBLISHING.md +343 -0
- package/docs/pt/README.md +95 -0
- package/docs/pt/SECURITY.md +280 -0
- package/docs/pt/SKILLS.md +349 -0
- package/docs/pt/START_MODE.md +340 -0
- package/docs/pt/SYNCED_BLOCKS.md +320 -0
- package/docs/pt/TEAM_ROOM.md +285 -0
- package/docs/pt/TELEGRAM.md +294 -0
- package/docs/pt/TEST_DEV.md +321 -0
- package/docs/pt/TROUBLESHOOTING.md +294 -0
- package/docs/pt/UPDATE.md +301 -0
- package/docs/pt/VPS_MODE.md +334 -0
- package/docs/pt/WORKFLOW.md +321 -0
- package/drizzle/0000_regular_nightshade.sql +644 -0
- package/drizzle/0001_mixed_zombie.sql +106 -0
- package/drizzle/meta/0000_snapshot.json +4650 -0
- package/drizzle/meta/0001_snapshot.json +5418 -0
- package/drizzle/meta/_journal.json +20 -0
- package/drizzle.config.mjs +16 -0
- package/next.config.mjs +18 -0
- package/package.json +130 -0
- package/scripts/clean-repo.mjs +20 -0
- package/scripts/dev-all.mjs +46 -0
- package/scripts/i18n-parity.mjs +57 -0
- package/scripts/mcp-server.mjs +100 -0
- package/scripts/postbuild.mjs +11 -0
- package/scripts/publish-public.mjs +116 -0
- package/scripts/start-all.mjs +45 -0
- package/scripts/trim-next.mjs +23 -0
- package/scripts/vps-install.sh +39 -0
- package/skills/CONTRIBUTING.md +122 -0
- package/skills/COVERAGE.md +129 -0
- package/skills/INDEX.json +3443 -0
- package/skills/README.md +57 -0
- package/skills/design/animation-motion/SKILL.md +60 -0
- package/skills/design/color-and-typography/SKILL.md +60 -0
- package/skills/design/css-techniques/SKILL.md +58 -0
- package/skills/design/design-systems/SKILL.md +60 -0
- package/skills/design/gradients/SKILL.md +59 -0
- package/skills/design/graphic-design-basics/SKILL.md +55 -0
- package/skills/design/microinteractions/SKILL.md +58 -0
- package/skills/design/responsive-layout/SKILL.md +59 -0
- package/skills/design/ui-ux-principles/SKILL.md +58 -0
- package/skills/engineering/architecture/api-design-rest-graphql/SKILL.md +67 -0
- package/skills/engineering/architecture/caching-strategies/SKILL.md +59 -0
- package/skills/engineering/architecture/data-modeling/SKILL.md +64 -0
- package/skills/engineering/architecture/message-queues-async/SKILL.md +58 -0
- package/skills/engineering/architecture/scalability-reliability/SKILL.md +62 -0
- package/skills/engineering/architecture/software-architecture-patterns/SKILL.md +56 -0
- package/skills/engineering/architecture/system-design-fundamentals/SKILL.md +56 -0
- package/skills/engineering/backend/auth-and-authorization/SKILL.md +62 -0
- package/skills/engineering/backend/backend-fundamentals/SKILL.md +65 -0
- package/skills/engineering/backend/observability-logging/SKILL.md +60 -0
- package/skills/engineering/frontend/accessibility-wcag/SKILL.md +57 -0
- package/skills/engineering/frontend/frontend-architecture/SKILL.md +65 -0
- package/skills/engineering/frontend/rendering-strategies-ssr-csr/SKILL.md +60 -0
- package/skills/engineering/frontend/state-management/SKILL.md +69 -0
- package/skills/engineering/performance/backend-performance/SKILL.md +69 -0
- package/skills/engineering/performance/database-query-optimization/SKILL.md +64 -0
- package/skills/engineering/performance/profiling-and-benchmarking/SKILL.md +60 -0
- package/skills/engineering/performance/web-performance-core-vitals/SKILL.md +72 -0
- package/skills/engineering/practices/clean-code/SKILL.md +61 -0
- package/skills/engineering/practices/code-optimization/SKILL.md +60 -0
- package/skills/engineering/practices/code-review-practices/SKILL.md +58 -0
- package/skills/engineering/practices/git-workflow/SKILL.md +62 -0
- package/skills/engineering/practices/refactoring/SKILL.md +58 -0
- package/skills/engineering/security/appsec-fundamentals/SKILL.md +70 -0
- package/skills/engineering/security/dependency-supply-chain/SKILL.md +77 -0
- package/skills/engineering/security/owasp-asvs/SKILL.md +54 -0
- package/skills/engineering/security/owasp-top-10/SKILL.md +63 -0
- package/skills/engineering/security/secrets-management/SKILL.md +58 -0
- package/skills/engineering/security/secure-auth-sessions/SKILL.md +56 -0
- package/skills/engineering/testing/tdd-and-coverage/SKILL.md +62 -0
- package/skills/engineering/testing/testing-strategy-pyramid/SKILL.md +56 -0
- package/skills/engineering/testing/unit-integration-e2e/SKILL.md +75 -0
- package/skills/languages/c/SKILL.md +74 -0
- package/skills/languages/clojure/SKILL.md +73 -0
- package/skills/languages/cpp/SKILL.md +75 -0
- package/skills/languages/csharp/SKILL.md +75 -0
- package/skills/languages/dart/SKILL.md +82 -0
- package/skills/languages/elixir/SKILL.md +74 -0
- package/skills/languages/erlang/SKILL.md +76 -0
- package/skills/languages/go/SKILL.md +83 -0
- package/skills/languages/haskell/SKILL.md +70 -0
- package/skills/languages/java/SKILL.md +71 -0
- package/skills/languages/javascript/SKILL.md +62 -0
- package/skills/languages/kotlin/SKILL.md +68 -0
- package/skills/languages/lua/SKILL.md +79 -0
- package/skills/languages/objectivec/SKILL.md +83 -0
- package/skills/languages/php/SKILL.md +74 -0
- package/skills/languages/python/SKILL.md +68 -0
- package/skills/languages/r/SKILL.md +70 -0
- package/skills/languages/ruby/SKILL.md +67 -0
- package/skills/languages/rust/SKILL.md +72 -0
- package/skills/languages/scala/SKILL.md +73 -0
- package/skills/languages/swift/SKILL.md +73 -0
- package/skills/languages/typescript/SKILL.md +69 -0
- package/skills/meta/authoring-agent-skills/SKILL.md +73 -0
- package/skills/meta/progressive-disclosure/SKILL.md +65 -0
- package/skills/meta/skill-frontmatter-spec/SKILL.md +65 -0
- package/skills/process/adr-technical-decisions/SKILL.md +59 -0
- package/skills/process/app-planning/SKILL.md +63 -0
- package/skills/process/architecture-before-code/SKILL.md +52 -0
- package/skills/process/breaking-work-into-sprints/SKILL.md +53 -0
- package/skills/process/idea-to-product/SKILL.md +50 -0
- package/skills/process/mocks-and-screen-flows/SKILL.md +52 -0
- package/skills/process/prioritization-moscow-rice/SKILL.md +64 -0
- package/skills/process/problem-framing/SKILL.md +51 -0
- package/skills/process/product-discovery/SKILL.md +53 -0
- package/skills/process/readme-generation/SKILL.md +90 -0
- package/skills/process/requirements-to-specs/SKILL.md +53 -0
- package/skills/process/research-official-docs/SKILL.md +58 -0
- package/skills/process/review-code-perf-security/SKILL.md +65 -0
- package/skills/process/security-by-design/SKILL.md +68 -0
- package/skills/process/specs-to-issues/SKILL.md +53 -0
- package/skills/process/testing-before-done/SKILL.md +61 -0
- package/skills/process/validating-ux-navigation/SKILL.md +63 -0
- package/skills/references/ai-attachments-ui/SKILL.md +66 -0
- package/skills/references/ai-in-browser-webllm/SKILL.md +74 -0
- package/skills/references/ai-tool-ui-patterns/SKILL.md +63 -0
- package/skills/references/component-patterns-gallery/SKILL.md +62 -0
- package/skills/references/gradient-resources/SKILL.md +66 -0
- package/skills/references/react-component-libraries/SKILL.md +61 -0
- package/skills/references/saas-landing-patterns/SKILL.md +67 -0
- package/skills/references/shadcn-tailwind-theming/SKILL.md +74 -0
- package/skills/references/vercel-ai-sdk-elements/SKILL.md +66 -0
- package/skills/references/web-animation-codrops/SKILL.md +68 -0
- package/skills/stacks/aiml/jupyter/SKILL.md +68 -0
- package/skills/stacks/aiml/keras/SKILL.md +77 -0
- package/skills/stacks/aiml/numpy/SKILL.md +69 -0
- package/skills/stacks/aiml/pandas/SKILL.md +72 -0
- package/skills/stacks/aiml/pytorch/SKILL.md +77 -0
- package/skills/stacks/aiml/scikit-learn/SKILL.md +74 -0
- package/skills/stacks/aiml/tensorflow/SKILL.md +79 -0
- package/skills/stacks/auth/auth0/SKILL.md +63 -0
- package/skills/stacks/auth/authjs/SKILL.md +69 -0
- package/skills/stacks/auth/clerk/SKILL.md +72 -0
- package/skills/stacks/auth/keycloak/SKILL.md +63 -0
- package/skills/stacks/auth/lucia/SKILL.md +56 -0
- package/skills/stacks/auth/passport/SKILL.md +70 -0
- package/skills/stacks/auth/supabase-auth/SKILL.md +66 -0
- package/skills/stacks/baas/amplify/SKILL.md +71 -0
- package/skills/stacks/baas/appwrite/SKILL.md +79 -0
- package/skills/stacks/baas/firebase/SKILL.md +73 -0
- package/skills/stacks/baas/heroku/SKILL.md +71 -0
- package/skills/stacks/backend/actix/SKILL.md +77 -0
- package/skills/stacks/backend/adonisjs/SKILL.md +65 -0
- package/skills/stacks/backend/aspnet-core/SKILL.md +75 -0
- package/skills/stacks/backend/codeigniter/SKILL.md +76 -0
- package/skills/stacks/backend/django/SKILL.md +62 -0
- package/skills/stacks/backend/express/SKILL.md +65 -0
- package/skills/stacks/backend/fastapi/SKILL.md +64 -0
- package/skills/stacks/backend/fastify/SKILL.md +64 -0
- package/skills/stacks/backend/fiber/SKILL.md +68 -0
- package/skills/stacks/backend/flask/SKILL.md +71 -0
- package/skills/stacks/backend/gin/SKILL.md +68 -0
- package/skills/stacks/backend/graphql/SKILL.md +70 -0
- package/skills/stacks/backend/hono/SKILL.md +64 -0
- package/skills/stacks/backend/koa/SKILL.md +63 -0
- package/skills/stacks/backend/laravel/SKILL.md +73 -0
- package/skills/stacks/backend/nestjs/SKILL.md +70 -0
- package/skills/stacks/backend/nginx/SKILL.md +77 -0
- package/skills/stacks/backend/phoenix/SKILL.md +68 -0
- package/skills/stacks/backend/rails/SKILL.md +67 -0
- package/skills/stacks/backend/spring/SKILL.md +70 -0
- package/skills/stacks/backend/spring-boot/SKILL.md +70 -0
- package/skills/stacks/backend/symfony/SKILL.md +77 -0
- package/skills/stacks/container/containerd/SKILL.md +75 -0
- package/skills/stacks/container/docker/SKILL.md +90 -0
- package/skills/stacks/container/podman/SKILL.md +93 -0
- package/skills/stacks/database/cassandra/SKILL.md +74 -0
- package/skills/stacks/database/cockroachdb/SKILL.md +69 -0
- package/skills/stacks/database/dynamodb/SKILL.md +62 -0
- package/skills/stacks/database/mariadb/SKILL.md +71 -0
- package/skills/stacks/database/mongodb/SKILL.md +71 -0
- package/skills/stacks/database/mysql/SKILL.md +72 -0
- package/skills/stacks/database/neon/SKILL.md +68 -0
- package/skills/stacks/database/planetscale/SKILL.md +70 -0
- package/skills/stacks/database/postgresql/SKILL.md +81 -0
- package/skills/stacks/database/redis/SKILL.md +78 -0
- package/skills/stacks/database/sqlite/SKILL.md +70 -0
- package/skills/stacks/database/supabase/SKILL.md +79 -0
- package/skills/stacks/dataviz/chart-js/SKILL.md +72 -0
- package/skills/stacks/dataviz/d3/SKILL.md +77 -0
- package/skills/stacks/dataviz/grafana/SKILL.md +69 -0
- package/skills/stacks/dataviz/plotly/SKILL.md +71 -0
- package/skills/stacks/frontend/alpine/SKILL.md +75 -0
- package/skills/stacks/frontend/angular/SKILL.md +75 -0
- package/skills/stacks/frontend/backbone/SKILL.md +82 -0
- package/skills/stacks/frontend/ember/SKILL.md +85 -0
- package/skills/stacks/frontend/htmx/SKILL.md +73 -0
- package/skills/stacks/frontend/lit/SKILL.md +76 -0
- package/skills/stacks/frontend/preact/SKILL.md +74 -0
- package/skills/stacks/frontend/qwik/SKILL.md +65 -0
- package/skills/stacks/frontend/react/SKILL.md +77 -0
- package/skills/stacks/frontend/solidjs/SKILL.md +75 -0
- package/skills/stacks/frontend/svelte/SKILL.md +70 -0
- package/skills/stacks/frontend/vue/SKILL.md +69 -0
- package/skills/stacks/infra/ansible/SKILL.md +76 -0
- package/skills/stacks/infra/aws/SKILL.md +66 -0
- package/skills/stacks/infra/azure/SKILL.md +72 -0
- package/skills/stacks/infra/circleci/SKILL.md +78 -0
- package/skills/stacks/infra/cloudflare/SKILL.md +65 -0
- package/skills/stacks/infra/fly-io/SKILL.md +63 -0
- package/skills/stacks/infra/gcp/SKILL.md +66 -0
- package/skills/stacks/infra/jenkins/SKILL.md +73 -0
- package/skills/stacks/infra/kubernetes/SKILL.md +64 -0
- package/skills/stacks/infra/netlify/SKILL.md +60 -0
- package/skills/stacks/infra/railway/SKILL.md +63 -0
- package/skills/stacks/infra/tailscale/SKILL.md +65 -0
- package/skills/stacks/infra/terraform/SKILL.md +75 -0
- package/skills/stacks/infra/vagrant/SKILL.md +70 -0
- package/skills/stacks/infra/vercel/SKILL.md +60 -0
- package/skills/stacks/meta/astro/SKILL.md +64 -0
- package/skills/stacks/meta/docusaurus/SKILL.md +71 -0
- package/skills/stacks/meta/eleventy/SKILL.md +69 -0
- package/skills/stacks/meta/gatsby/SKILL.md +63 -0
- package/skills/stacks/meta/hugo/SKILL.md +73 -0
- package/skills/stacks/meta/jekyll/SKILL.md +70 -0
- package/skills/stacks/meta/nextjs/SKILL.md +62 -0
- package/skills/stacks/meta/nuxt/SKILL.md +66 -0
- package/skills/stacks/meta/remix/SKILL.md +67 -0
- package/skills/stacks/meta/sveltekit/SKILL.md +70 -0
- package/skills/stacks/meta/vite/SKILL.md +63 -0
- package/skills/stacks/mobile/android/SKILL.md +77 -0
- package/skills/stacks/mobile/flutter/SKILL.md +77 -0
- package/skills/stacks/mobile/ionic/SKILL.md +72 -0
- package/skills/stacks/mobile/nativescript/SKILL.md +71 -0
- package/skills/stacks/mobile/react-native/SKILL.md +75 -0
- package/skills/stacks/mobile/xamarin/SKILL.md +73 -0
- package/skills/stacks/orm/diesel/SKILL.md +72 -0
- package/skills/stacks/orm/django-orm/SKILL.md +58 -0
- package/skills/stacks/orm/drizzle/SKILL.md +67 -0
- package/skills/stacks/orm/gorm/SKILL.md +73 -0
- package/skills/stacks/orm/knex/SKILL.md +64 -0
- package/skills/stacks/orm/mongoose/SKILL.md +64 -0
- package/skills/stacks/orm/prisma/SKILL.md +64 -0
- package/skills/stacks/orm/sequelize/SKILL.md +65 -0
- package/skills/stacks/orm/sqlalchemy/SKILL.md +71 -0
- package/skills/stacks/orm/typeorm/SKILL.md +70 -0
- package/skills/stacks/queue/bullmq/SKILL.md +69 -0
- package/skills/stacks/queue/celery/SKILL.md +68 -0
- package/skills/stacks/queue/kafka/SKILL.md +66 -0
- package/skills/stacks/queue/nats/SKILL.md +66 -0
- package/skills/stacks/queue/rabbitmq/SKILL.md +64 -0
- package/skills/stacks/queue/redis/SKILL.md +66 -0
- package/skills/stacks/runtime/beam/SKILL.md +72 -0
- package/skills/stacks/runtime/bun/SKILL.md +80 -0
- package/skills/stacks/runtime/deno/SKILL.md +74 -0
- package/skills/stacks/runtime/dotnet/SKILL.md +64 -0
- package/skills/stacks/runtime/jvm/SKILL.md +66 -0
- package/skills/stacks/runtime/node/SKILL.md +70 -0
- package/skills/stacks/runtime/pypy/SKILL.md +69 -0
- package/skills/stacks/runtime/python3/SKILL.md +70 -0
- package/skills/stacks/styling/bootstrap/SKILL.md +74 -0
- package/skills/stacks/styling/bulma/SKILL.md +80 -0
- package/skills/stacks/styling/chakra-ui/SKILL.md +61 -0
- package/skills/stacks/styling/css-modules/SKILL.md +54 -0
- package/skills/stacks/styling/mui/SKILL.md +60 -0
- package/skills/stacks/styling/sass/SKILL.md +63 -0
- package/skills/stacks/styling/shadcn-ui/SKILL.md +58 -0
- package/skills/stacks/styling/styled-components/SKILL.md +62 -0
- package/skills/stacks/styling/tailwind/SKILL.md +59 -0
- package/skills/stacks/styling/unocss/SKILL.md +64 -0
- package/skills/stacks/styling/vanilla-extract/SKILL.md +64 -0
- package/skills/stacks/styling/vuetify/SKILL.md +89 -0
- package/skills/stacks/testing/cypress/SKILL.md +68 -0
- package/skills/stacks/testing/jasmine/SKILL.md +67 -0
- package/skills/stacks/testing/jest/SKILL.md +67 -0
- package/skills/stacks/testing/mocha/SKILL.md +71 -0
- package/skills/stacks/testing/playwright/SKILL.md +68 -0
- package/skills/stacks/testing/puppeteer/SKILL.md +70 -0
- package/skills/stacks/testing/selenium/SKILL.md +70 -0
- package/skills/stacks/testing/vitest/SKILL.md +68 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:"Inter",ui-sans-serif,system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--spacing:.25rem;--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-bold:700;--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--radius-card:.85rem}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.col-12{grid-column:12}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-1{margin:var(--spacing)}.m-3{margin:calc(var(--spacing) * 3)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table\!{display:table!important}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.p-2{padding:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:var(--spacing)}.pt-4{padding-top:calc(var(--spacing) * 4)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.break-all{word-break:break-all}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.ring,.shadow{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.invert{--tw-invert:invert(100%)}.filter,.invert{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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}.theme-dark,:root{--bg-app:#06060c;--bg-editor:#0d0e17;--bg-panel:#0a0b13;--bg-elevated:#161827;--bg-hover:#181a2a;--bg-active:#23263c;--bg-input:#1c1f30;--bg-selection:#2a2f5a;--border:#1f2132;--border-subtle:#14151f;--text:#d6dae8;--text-dim:#828aa3;--text-faint:#555b73;--accent:#e0a44e;--accent-fg:#1a1206;--ring:#e0a44e73;--shadow:0 18px 50px -14px #000000b3;--sx-keyword:#e8688f;--sx-string:#b3d97a;--sx-function:#c4a0ff;--sx-number:#f0a35e;--sx-property:#84aef5;--cs-bg:#0a1124;--cs-line:#3d7dff;--cs-node:#dbe6ff;--cs-core:#fff;--cs-glow:#7c5cff;--cs-border:#1c2845}.theme-light{--border:#b6ac93;--border-subtle:#d3cbb6;--text-dim:#5c5647;--text-faint:#6e6856;--accent:#b9781f;--ring:#965f1499;--shadow:0 14px 40px -14px #3c30144d;--cs-bg:#1d2550;--cs-line:#6f9bff;--cs-node:#eaf0ff;--cs-core:#fff;--cs-glow:#9a7cff;--cs-border:#2b3566}body{font-family:var(--font-sans);background:0 0;margin:0}:root{--ui-scale:1}@media (min-width:2560px){:root{--ui-scale:1.15}}@media (min-width:3008px){:root{--ui-scale:1.3}}@media (min-width:3840px){:root{--ui-scale:1.5}}@media (min-width:5000px){:root{--ui-scale:1.8}}@media (min-width:2560px) and (max-height:1240px){:root{--ui-scale:1.08}}@media (min-width:3400px) and (max-height:1500px){:root{--ui-scale:1.22}}html{zoom:var(--ui-scale,1)}.surface{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-card)}.muted{color:var(--text-dim)}.mono{font-family:var(--font-mono)}.health-dot{border-radius:50%;flex:none;display:inline-block}.health-dot.pulse{box-shadow:0 0 0 0 var(--hc);animation:hd-kf 1.8s infinite}@keyframes hd-kf{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--hc) 55%,transparent)}70%{box-shadow:0 0 0 5px #0000}to{box-shadow:0 0 #0000}}.runmode{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;align-items:center;gap:9px;margin:0 14px 12px;padding:9px 11px;display:flex}.runmode.live{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.runmode.live{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.runmode-dot{background:var(--text-faint);border-radius:50%;flex:0 0 9px;width:9px;height:9px}.runmode-dot.on{background:var(--sx-string,#b3d97a);box-shadow:0 0 0 4px var(--sx-string,#b3d97a)}@supports (color:color-mix(in lab,red,red)){.runmode-dot.on{box-shadow:0 0 0 4px color-mix(in srgb,var(--sx-string,#b3d97a) 22%,transparent)}}.runmode-dot.on{animation:rm-kf 2s infinite}@keyframes rm-kf{0%,to{opacity:1}50%{opacity:.55}}.runmode-meta{flex:1;min-width:0}.runmode-label{color:var(--text);font-size:12px;font-weight:600}.runmode-sub{color:var(--text-dim);font-size:10px}.runmode-btn{border:1px solid var(--border);background:var(--bg-app);color:var(--text);cursor:pointer;border-radius:7px;padding:4px 10px;font-size:11px;font-weight:700}.runmode-btn:hover{background:var(--bg-hover)}.runmode-btn:disabled{opacity:.5;cursor:default}.login-wrap,.onb-wrap{z-index:1;place-items:center;min-height:100vh;padding:24px;display:grid;position:relative}.login-modes{margin-bottom:6px}.onb-card{background:var(--bg-elevated);border:1px solid var(--border);width:760px;max-width:96vw;box-shadow:var(--shadow);border-radius:20px;padding:30px 34px}.onb-steps{gap:8px;margin-bottom:20px}.onb-step{background:var(--bg-active);border-radius:3px;flex:1;height:4px}.onb-step.on{background:var(--accent)}.stack-card{text-align:left;color:var(--text);border-radius:11px;padding:11px 13px;font-size:13px;font-weight:600}@supports (color:color-mix(in lab,red,red)){.stack-card.on{background:color-mix(in srgb,var(--accent) 9%,var(--bg-elevated))}}.mini{border:1px solid var(--border);background:var(--bg-app);width:22px;height:22px;color:var(--text-dim);cursor:pointer;border-radius:6px;font-size:12px;line-height:1}.mini:hover{color:var(--text);border-color:var(--text-faint)}.org-canvas{border:1px solid var(--border-subtle);background:radial-gradient(circle at 1px 1px,var(--border-subtle) 1px,transparent 0) 0 0 /26px 26px;border-radius:12px;height:560px;position:relative;overflow:auto}.org-card.target{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.org-card .oc-link{font-size:12px;line-height:1}.code-mod{border:1px solid var(--border-subtle);border-radius:12px;height:560px;display:flex;overflow:hidden}.code-tree{border-right:1px solid var(--border-subtle);background:var(--bg-panel);flex:0 0 240px;width:240px;overflow-y:auto}.code-tree-head{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);gap:6px;padding:10px 12px;font-size:11px;font-weight:700}.code-row,.code-tree-head{align-items:center;display:flex}.code-row{cursor:pointer;font-size:12.5px;font-family:var(--font-mono);gap:8px;padding:7px 12px}.code-row:hover{background:var(--bg-hover)}.code-row.on{background:var(--bg-active)}.code-row .mini{opacity:0}.code-row:hover .mini{opacity:1}.code-main{background:var(--bg-editor);flex-direction:column;flex:1;min-width:0;display:flex}@supports (color:color-mix(in lab,red,red)){.code-main{background:color-mix(in srgb,var(--bg-editor) 90%,transparent)}}.code-crumb{border-bottom:1px solid var(--border-subtle);color:var(--text-dim);font-size:12px;font-family:var(--font-mono);align-items:center;gap:4px;padding:8px 14px;display:flex}.code-crumb-btn{color:var(--text-dim);cursor:pointer;font:inherit;background:0 0;border:none;border-radius:5px;padding:2px 4px}.code-crumb-btn:hover{background:var(--bg-hover);color:var(--text)}.code-area,.code-view{font-family:var(--font-mono);flex:1;margin:0;padding:10px 0;font-size:12.5px;line-height:1.55;overflow:auto}.code-view div{padding:0 14px;display:flex}.code-gutter{width:36px;color:var(--text-faint);text-align:right;-webkit-user-select:none;user-select:none;flex:0 0 36px;margin-right:14px}.code-area{resize:none;width:100%;color:var(--text);white-space:pre;background:0 0;border:none;outline:none;padding:10px 14px}.code-empty,.code-folder{color:var(--text-faint);flex:1;place-items:center;display:grid}.code-folder{display:block}.code-folder-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;padding:16px;display:grid}.code-folder-item{text-align:left;background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;font-family:var(--font-mono);color:var(--text);border-radius:10px;padding:11px 13px;font-size:13px}.code-folder-item:hover{border-color:var(--accent)}.chat-fab{z-index:50;border:1px solid var(--border);background:var(--bg-elevated);width:48px;height:48px;box-shadow:var(--shadow);cursor:pointer;color:var(--text-dim);border-radius:50%;place-items:center;display:grid;position:fixed;bottom:18px;right:18px}.chat-fab:hover{color:var(--accent);border-color:var(--accent)}.chat-back{text-align:left;border:none;border-bottom:1px solid var(--border-subtle);color:var(--text-dim);cursor:pointer;background:0 0;padding:8px 14px;font-size:12px}.chat-stream{gap:10px;padding:14px}.chat-msg{align-items:flex-start;gap:8px;display:flex}.chat-msg.me{justify-content:flex-end}.chat-bubble{background:var(--bg-elevated);border:1px solid var(--border);border-radius:11px;max-width:80%;padding:8px 11px;font-size:13px;line-height:1.45}.chat-msg.me .chat-bubble{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.chat-msg.me .chat-bubble{background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated))}}.chat-composer{gap:8px;padding:12px;display:flex}.as-tab{background:0 0}.as-tab,.as-toggle{cursor:pointer;border:none}.as-toggle{background:var(--bg-active);border-radius:12px;flex:0 0 38px;width:38px;height:22px;position:relative}.as-toggle:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .15s;position:absolute;top:3px;left:3px}.as-toggle.on{background:var(--accent)}.as-toggle.on:after{left:19px}.md{color:var(--text);max-width:820px;font-size:14px;line-height:1.7}.md h1,.md h2,.md h3{letter-spacing:-.2px;margin:22px 0 10px;font-weight:800}.md h1{font-size:24px}.md h2{font-size:19px}.md h3{font-size:16px}.md p{margin:10px 0}.md ol,.md ul{margin:10px 0 10px 22px}.md li{margin:4px 0}.md a{color:var(--sx-property);text-decoration:underline}.md code{font-family:var(--font-mono);background:var(--bg-active);border-radius:6px;padding:1px 6px;font-size:12.5px}.md pre{background:var(--bg-editor);border:1px solid var(--border-subtle);border-radius:10px;margin:12px 0;padding:12px 14px;overflow-x:auto}.md pre code{background:0 0;padding:0;font-size:12.5px;line-height:1.55}.md blockquote{border-left:3px solid var(--accent);color:var(--text-dim);margin:12px 0;padding:2px 14px}.md table{border-collapse:collapse;margin:12px 0}.md td,.md th{border:1px solid var(--border);padding:7px 11px;font-size:13px}.md hr{border:none;border-top:1px solid var(--border-subtle);margin:20px 0}:root{--accent:#e0a44e;--ui-font:"Inter",ui-sans-serif,system-ui,"Segoe UI",sans-serif;--mono-font:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--code-size:13px;--row-h:22px;--tab-h:36px;--titlebar-h:36px;--statusbar-h:24px;--activity-w:50px}.theme-dark{--bg-app:#06060c;--bg-editor:#0d0e17;--bg-panel:#0a0b13;--bg-activity:#060609;--bg-elevated:#161827;--bg-hover:#181a2a;--bg-active:#23263c;--bg-input:#1c1f30;--bg-selection:#3a2f5e;--border:#1f2132;--border-subtle:#14151f;--text:#d6dae8;--text-dim:#828aa3;--text-faint:#555b73;--accent-fg:#1a1206;--shadow:0 20px 60px -16px #000c,0 0 0 1px #e0a44e14;--scroll-thumb:#292c40;--glow:0 0 0 1px #e0a44e40,0 0 22px -6px #e0a44e66;--sx-keyword:#e8688f;--sx-type:#4fc9b0;--sx-string:#b3d97a;--sx-comment:#565d75;--sx-function:#c4a0ff;--sx-number:#f0a35e;--sx-operator:#6cc7e0;--sx-property:#84aef5;--sx-plain:var(--text)}.app{--cs-bg:#0a1124;--cs-border:#1c2845;--cs-line:#3d7dff;--cs-spoke:#5a93ff;--cs-node:#dbe6ff;--cs-core:#fff;--cs-glow:#7c5cff}.app.theme-light{--cs-bg:#1d2550;--cs-border:#2b3566;--cs-line:#6f9bff;--cs-spoke:#8fb0ff;--cs-node:#eaf0ff;--cs-core:#fff;--cs-glow:#9a7cff}.theme-light{--bg-app:#e7e2d5;--bg-editor:#fff;--bg-panel:#f0ede5;--bg-activity:#e0dacb;--bg-elevated:#fff;--bg-hover:#ece7da;--bg-active:#ddd6c4;--bg-input:#fff;--bg-selection:#e4d3a8;--border:#c9c1ac;--border-subtle:#ddd5c2;--text:#2b2820;--text-dim:#6b6453;--text-faint:#98917e;--accent-fg:#2a1d08;--ring:#b4781e73;--shadow:0 14px 40px -14px #3c30144d,0 1px 2px #3c301414;--scroll-thumb:#c4b99e;--glow:0 0 0 1px #b4781e59,0 0 18px -6px #b4781e66;--sx-keyword:#c43666;--sx-type:#0f8a78;--sx-string:#5a7a1e;--sx-comment:#a39c89;--sx-function:#7a48c4;--sx-number:#b56a1e;--sx-operator:#1a7e96;--sx-property:#2960ba;--sx-plain:var(--text)}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;overflow:hidden}body{font-family:var(--ui-font);background:var(--bg-app);color:var(--text);-webkit-font-smoothing:antialiased;font-size:13px}#root{height:100vh}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}::selection{background:var(--bg-selection)}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);background-clip:padding-box;border:3px solid #0000;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--text-faint);background-clip:padding-box}::-webkit-scrollbar-corner{background:0 0}.scroll::-webkit-scrollbar{width:11px;height:11px}.scroll::-webkit-scrollbar-track{background:0 0}.scroll::-webkit-scrollbar-thumb{background:var(--scroll-thumb);background-clip:padding-box;border:3px solid #0000;border-radius:6px}.scroll::-webkit-scrollbar-thumb:hover{background:var(--text-faint);background-clip:padding-box;border:3px solid #0000}.ide{background:var(--bg-editor);flex-direction:column;height:100vh;display:flex;overflow:hidden}.titlebar{height:var(--titlebar-h);flex:0 0 var(--titlebar-h);background:var(--bg-activity);border-bottom:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none;-webkit-app-region:drag;gap:18px;padding:0 12px}.tb-traffic,.titlebar{align-items:center;display:flex}.tb-traffic{gap:8px}.tb-dot{border-radius:50%;width:12px;height:12px}.tb-dot.r{background:#ff5f57}.tb-dot.y{background:#febc2e}.tb-dot.g{background:#28c840}.theme-dark .tb-dot{opacity:.9}.tb-menu{gap:2px;display:flex}.tb-menu-item{color:var(--text-dim);border-radius:6px;padding:4px 9px;font-size:12.5px}.tb-menu-item:hover{background:var(--bg-hover);color:var(--text)}.tb-title{text-align:center;color:var(--text-dim);flex:1;justify-content:center;align-items:center;gap:8px;font-size:12.5px;display:flex}.tb-title .repo{color:var(--text);font-weight:500}.tb-right{align-items:center;gap:4px;display:flex}.tb-icon-btn{width:30px;height:26px;color:var(--text-dim);border-radius:6px;place-items:center;display:grid}.tb-icon-btn:hover{background:var(--bg-hover);color:var(--text)}.body{flex:1;min-height:0;display:flex}.activity{width:var(--activity-w);flex:0 0 var(--activity-w);background:var(--bg-activity);border-right:1px solid var(--border-subtle);flex-direction:column;align-items:center;gap:4px;padding:8px 0;display:flex}.activity-spacer{flex:1}.act-btn{width:40px;height:40px;color:var(--text-faint);border-radius:9px;place-items:center;transition:color .12s,background .12s;display:grid;position:relative}.act-btn.active{color:var(--text);background:var(--bg-hover)}.act-btn.active:before{content:"";background:var(--accent);border-radius:2px;width:2.5px;position:absolute;top:9px;bottom:9px;left:-8px}.act-badge{background:var(--accent);min-width:15px;height:15px;color:var(--accent-fg);border-radius:8px;place-items:center;padding:0 3px;font-size:9px;font-weight:600;display:grid;position:absolute;top:4px;right:4px}.sidebar{background:var(--bg-panel);border-right:1px solid var(--border-subtle);flex-direction:column;flex:0 0 262px;width:262px;min-height:0;display:flex;overflow:hidden}.sidebar.collapsed{display:none}.side-header{flex:0 0 36px;justify-content:space-between;align-items:center;height:36px;padding:0 8px 0 18px;display:flex}.side-title{letter-spacing:.9px;text-transform:uppercase;color:var(--text-dim);font-size:11px;font-weight:600}.side-actions{gap:1px;display:flex}.side-act{width:24px;height:24px;color:var(--text-dim);border-radius:5px;place-items:center;display:grid}.side-act:hover{background:var(--bg-hover);color:var(--text)}.side-body{flex:1;min-height:0;overflow:hidden auto}.tree-section-label{letter-spacing:.5px;text-transform:uppercase;color:var(--text);cursor:pointer;align-items:center;gap:4px;padding:4px 8px 4px 12px;font-size:11px;font-weight:700;display:flex}.tree-section-label:hover{color:var(--text)}.row{height:var(--row-h);color:var(--text-dim);cursor:pointer;white-space:nowrap;align-items:center;padding-right:10px;font-size:13px;display:flex;position:relative}.row:hover{background:var(--bg-hover)}.row.selected{background:var(--bg-active);color:var(--text)}.row.selected:before{content:"";background:var(--accent);width:2px;position:absolute;top:0;bottom:0;left:0}.row .chev{width:16px;color:var(--text-faint)}.row .chev,.row .fi{flex:0 0 16px;place-items:center;display:grid}.row .fi{width:16px;height:16px;margin-right:6px}.row .name{text-overflow:ellipsis;overflow:hidden}.row.dir .name{color:var(--text)}.row .git-badge{text-align:center;width:16px;margin-left:auto;font-size:11px;font-weight:600}.search-panel{flex-direction:column;gap:8px;padding:8px 12px;display:flex}.search-input-wrap{position:relative}.replace-input,.search-input{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text);font-size:12.5px;font-family:var(--ui-font);border-radius:6px;outline:none;padding:6px 8px}.replace-input:focus,.search-input:focus{border-color:var(--accent)}.search-toolbar{gap:4px;display:flex}.search-toggle{color:var(--text-dim);font-size:11px;font-family:var(--mono-font);border-radius:5px;padding:3px 6px}.search-toggle.on{background:var(--accent);color:var(--accent-fg)}.search-toggle:hover:not(.on){background:var(--bg-hover)}.search-summary{color:var(--text-dim);padding:2px;font-size:11.5px}.search-result-file{margin-top:6px}.search-file-row{color:var(--text);cursor:pointer;align-items:center;gap:6px;padding:3px 2px;font-size:12.5px;display:flex}.search-file-row:hover{color:var(--accent)}.search-file-row .count{background:var(--bg-active);color:var(--text-dim);border-radius:8px;margin-left:auto;padding:0 6px;font-size:10px}.search-match{font-family:var(--mono-font);color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border-radius:4px;padding:2px 2px 2px 26px;font-size:12px;overflow:hidden}.search-match:hover{background:var(--bg-hover)}.search-match mark{color:var(--sx-type);background:#ffb45447;border-radius:2px}.code-search{flex-direction:column;height:100%;min-height:0;display:flex}.cs-bar{background:var(--bg-input);border:1px solid var(--border);color:var(--text-faint);border-radius:8px;align-items:center;gap:8px;margin:8px 10px 6px;padding:7px 10px;display:flex}.cs-bar:focus-within{border-color:var(--accent)}.cs-bar input{min-width:0;color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:12.5px}.cs-bar .ss-clear{color:var(--text-faint);cursor:pointer;background:0 0;border:none;display:inline-flex}.cs-toggles{align-items:center;gap:5px;margin:0 10px 6px;display:flex}.cs-tog{background:var(--bg-app);border:1px solid var(--border);color:var(--text-dim);font-family:var(--mono-font);cursor:pointer;border-radius:6px;padding:2px 7px;font-size:11px}.cs-tog.on{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.cs-count{color:var(--text-faint);margin-left:auto;font-size:10.5px}.cs-results{flex:1;min-height:0;padding-bottom:8px;overflow-y:auto}.cs-file-head{cursor:pointer;align-items:center;gap:7px;padding:4px 10px;display:flex}.cs-file-head:hover{background:var(--bg-hover)}.cs-file-name{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.cs-file-name.name-hit{color:var(--accent)}.cs-file-n{color:var(--text-faint);margin-left:auto;font-size:10px}.cs-hit{cursor:pointer;font-family:var(--mono-font);gap:8px;padding:2px 10px 2px 26px;font-size:11px;display:flex}.cs-hit:hover{background:var(--bg-hover)}.cs-hit .cs-ln{color:var(--text-faint);text-align:right;min-width:30px}.cs-hit .cs-line{color:var(--text-dim);white-space:pre;text-overflow:ellipsis;overflow:hidden}.cs-line mark,.line-content mark{color:var(--text);background:#e0a44e4d;border-radius:2px;padding:0 1px}.code-line.search-hit{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.code-line.search-hit{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.git-panel{flex-direction:column;gap:6px;padding:8px 12px;display:flex}.git-commit-box{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text);resize:none;font-size:12.5px;font-family:var(--ui-font);border-radius:6px;outline:none;padding:7px 9px}.git-commit-box:focus{border-color:var(--accent)}.git-commit-btn{background:var(--accent);color:var(--accent-fg);border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:6px;font-size:12.5px;font-weight:600;display:flex}.git-commit-btn:hover{filter:brightness(1.08)}.git-group-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin-top:8px;padding-left:2px;font-size:11px;font-weight:700}.git-row{height:var(--row-h);cursor:pointer;border-radius:5px;align-items:center;gap:8px;padding:0 4px;display:flex}.git-row:hover{background:var(--bg-hover)}.git-row .gname{color:var(--text);text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.git-row .gpath{color:var(--text-faint);font-size:11px}.git-row .gstat{font-family:var(--mono-font);text-align:center;width:16px;margin-left:auto;font-size:12px;font-weight:700}.gstat.M{color:var(--sx-type)}.gstat.A{color:var(--sx-string)}.gstat.U{color:var(--sx-number)}.gstat.D{color:var(--sx-keyword)}.main{background:var(--bg-editor);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.tabbar{height:var(--tab-h);flex:0 0 var(--tab-h);background:var(--bg-panel);border-bottom:1px solid var(--border-subtle);align-items:stretch;display:flex;overflow:auto hidden}.tabbar::-webkit-scrollbar{height:0}.tab{border-right:1px solid var(--border-subtle);min-width:0;color:var(--text-dim);cursor:pointer;flex:none;align-items:center;gap:8px;max-width:200px;padding:0 10px 0 14px;font-size:12.5px;display:flex;position:relative}.tab:hover{background:var(--bg-hover)}.tab.active{background:var(--bg-editor);color:var(--text)}.tab.active:before{content:"";background:var(--accent);height:2px;position:absolute;top:0;left:0;right:0}.tab .tname{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tab .tname.dirty{font-style:normal}.tab .tclose{width:18px;height:18px;color:var(--text-faint);border-radius:4px;flex:0 0 18px;place-items:center;display:grid}.tab .tclose:hover{background:var(--bg-active);color:var(--text)}.tab .tdot{background:var(--text-dim);border-radius:50%;width:8px;height:8px}.breadcrumb{height:28px;color:var(--text-faint);background:var(--bg-editor);border-bottom:1px solid var(--border-subtle);flex:0 0 28px;padding:0 16px;font-size:12px}.breadcrumb,.breadcrumb .crumb{align-items:center;gap:5px;display:flex}.breadcrumb .crumb:hover{color:var(--text);cursor:pointer}.breadcrumb .crumb-wrap{align-items:center;gap:5px;display:inline-flex;position:relative}.breadcrumb .crumb-btn{font:inherit;color:var(--text-faint);background:0 0;border:none;border-radius:5px;padding:2px 4px}.breadcrumb .crumb-btn:hover{color:var(--text);background:var(--bg-hover);cursor:pointer}.crumb-pop{z-index:60;background:var(--bg-elevated);border:1px solid var(--border);min-width:180px;box-shadow:var(--shadow);border-radius:9px;max-height:280px;padding:5px;animation:ddin .12s;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.crumb-pop-item{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px;display:flex}.crumb-pop-item:hover{background:var(--bg-hover)}.editor-wrap{flex-direction:column}.editor-body,.editor-wrap{flex:1;min-height:0;display:flex;position:relative}.editor-toolbar{border-bottom:1px solid var(--border-subtle);background:var(--bg-panel);align-items:center;gap:10px;padding:6px 12px;font-size:12px;display:flex}.editor-toolbar .et-lang{color:var(--text-dim);align-items:center;gap:7px;font-weight:600;display:inline-flex}.editor-toolbar .et-spacer{flex:1}.editor-toolbar .et-diag{align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:inline-flex}.editor-toolbar .et-diag.ok{color:var(--sx-string)}.editor-toolbar .et-diag.warn{color:#d98a2b}.editor-toolbar .et-diag.err{color:var(--sx-keyword)}.editor-toolbar .et-edit{color:var(--text-dim);border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;border-radius:7px;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.editor-toolbar .et-edit:hover{color:var(--text);border-color:var(--text-faint)}.editor-toolbar .et-edit.on{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.editor-scroll{flex:1;min-width:0;position:relative;overflow:auto}.code-line.has-prob .gutter{box-shadow:inset 2px 0 #d98a2b}.editor-input{resize:none;color:#0000;width:100%;height:100%;caret-color:var(--accent);font-family:var(--mono-font);font-size:var(--code-size);white-space:pre;-webkit-text-fill-color:transparent;background:0 0;border:none;outline:none;margin:0;padding:0 0 0 calc(3.2em + 12px);line-height:1.55;position:absolute;inset:0;overflow:hidden}.editor-input::selection{background:var(--bg-selection)}.diag-bar{border-top:1px solid var(--border-subtle);background:var(--bg-panel);flex:none;gap:8px;padding:6px 12px;display:flex;overflow-x:auto}.diag-item{white-space:nowrap;border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;color:var(--text-dim);border-radius:7px;align-items:center;gap:6px;padding:3px 9px;font-size:11px;display:inline-flex}.diag-item:hover{border-color:var(--text-faint)}.diag-item.error{color:var(--sx-keyword)}.diag-item.warn{color:#d98a2b}.skill-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px;display:grid}.skill-card2{background:var(--bg-elevated);border:1px solid var(--border);border-radius:13px;flex-direction:column;gap:9px;padding:15px 16px;display:flex}.sc2-top{align-items:center;gap:9px;display:flex}.sc2-ico{background:var(--accent);border-radius:8px;width:28px;height:28px}@supports (color:color-mix(in lab,red,red)){.sc2-ico{background:color-mix(in srgb,var(--accent) 16%,transparent)}}.sc2-ico{color:var(--accent);flex:0 0 28px;place-items:center;display:grid}.sc2-name{font-family:var(--mono-font);color:var(--text);flex:1;font-size:13.5px;font-weight:700}.sc2-name .sc2-ext{color:var(--text-faint);font-weight:400}.sc2-index{text-transform:uppercase;letter-spacing:.3px;border-radius:10px;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.sc2-index.ok{background:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.sc2-index.ok{background:color-mix(in srgb,var(--sx-string) 16%,transparent)}}.sc2-index.ok{color:var(--sx-string)}.sc2-index.pending{color:#d98a2b;background:#d98a2b29}.sc2-index.pending svg{animation:spin 1.4s linear infinite}.sc2-summary{color:var(--text-dim);font-size:12.5px;line-height:1.5}.sc2-meta{color:var(--text-faint);flex-wrap:wrap;align-items:center;gap:7px;font-size:11px;display:flex}.sc2-kind{text-transform:uppercase;letter-spacing:.4px;background:var(--bg-active);color:var(--text-dim);border-radius:8px;padding:2px 7px;font-size:10px;font-weight:700}.sc2-trigger{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sc2-actions{gap:7px;margin-top:2px;display:flex}.sc2-btn{color:var(--text-dim);border:1px solid var(--border);background:var(--bg-app);cursor:pointer;border-radius:7px;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:600;display:inline-flex}.sc2-btn:hover{color:var(--text);border-color:var(--text-faint);background:var(--bg-hover)}.sc2-btn.danger{color:var(--sx-keyword);border-color:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.sc2-btn.danger{border-color:color-mix(in srgb,var(--sx-keyword) 35%,var(--border))}}.sc2-btn.danger:hover{background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.sc2-btn.danger:hover{background:color-mix(in srgb,var(--sx-keyword) 12%,transparent)}}.sc2-users{align-items:center;margin-left:auto;display:flex}.sc2-users .sc2-user{box-shadow:0 0 0 2px var(--bg-elevated);border-radius:50%;margin-left:-6px}.sc2-users .sc2-user:first-child{margin-left:0}.sc2-user-more{color:var(--text-dim);margin-left:4px;font-size:11px;font-weight:700}.sc2-nouser{color:var(--text-faint);font-size:10.5px;font-style:italic}.ceo-pipe{flex-direction:column;gap:0;margin-bottom:20px;display:flex}.ceo-stage{gap:13px;padding-bottom:16px;display:flex;position:relative}.ceo-stage:before{content:"";background:var(--border);width:2px;position:absolute;top:28px;bottom:-2px;left:13px}.ceo-stage:last-child:before{display:none}.ceo-stage .cs-dot{z-index:1;border:2px solid var(--border);background:var(--bg-elevated);width:28px;height:28px;color:var(--text-dim);border-radius:50%;flex:0 0 28px;place-items:center;font-size:12px;font-weight:700;display:grid}.ceo-stage.done .cs-dot{background:var(--sx-string);border-color:var(--sx-string);color:#06140a}.ceo-stage.active .cs-dot{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);box-shadow:var(--glow)}.ceo-stage.wait .cs-dot{background:#d98a2b}@supports (color:color-mix(in lab,red,red)){.ceo-stage.wait .cs-dot{background:color-mix(in srgb,#d98a2b 22%,var(--bg-elevated))}}.ceo-stage.wait .cs-dot{color:#d98a2b;border-color:#d98a2b}.ceo-stage.fail .cs-dot{background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.ceo-stage.fail .cs-dot{background:color-mix(in srgb,var(--sx-keyword) 20%,var(--bg-elevated))}}.ceo-stage.fail .cs-dot{border-color:var(--sx-keyword);color:var(--sx-keyword)}.ceo-stage .cs-meta{color:var(--text-faint);font-size:11px;font-family:var(--mono-font);margin-top:3px}.ceo-stage.active .cs-t,.ceo-stage.wait .cs-t{color:var(--text)}.ceo-stage .cs-main{padding-top:3px}.ceo-stage .cs-t{color:var(--text);align-items:center;gap:7px;font-size:13.5px;font-weight:600;display:inline-flex}.ceo-stage .cs-d,.ceo-stage.todo .cs-t{color:var(--text-dim)}.ceo-stage .cs-d{margin-top:2px;font-size:12px}.plan-gate{background:var(--accent);align-items:center;gap:14px;display:flex}@supports (color:color-mix(in lab,red,red)){.plan-gate{background:color-mix(in srgb,var(--accent) 10%,var(--bg-elevated))}}.plan-gate{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.plan-gate{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border))}}.plan-gate{border-radius:14px;padding:16px 18px}.plan-gate .pg-ic{background:var(--accent);width:42px;height:42px;color:var(--accent-fg);border-radius:11px;flex:0 0 42px;place-items:center;display:grid}.plan-gate .pg-main{flex:1}.plan-gate .pg-t{color:var(--text);font-size:14.5px;font-weight:800}.plan-gate .pg-d{color:var(--text-dim);margin-top:2px;font-size:12.5px}.plan-gate .pg-actions{flex-direction:column;align-items:flex-end;gap:9px;display:flex}.plan-gate{position:relative;overflow:hidden}.plan-gate-bar{background:linear-gradient(90deg,var(--accent),var(--accent),var(--accent),var(--accent),var(--accent));height:3px;position:absolute;top:0;left:0;right:0}@supports (color:color-mix(in lab,red,red)){.plan-gate-bar{background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#9a5cff),var(--accent),color-mix(in srgb,var(--accent) 55%,#9a5cff),var(--accent))}}.plan-gate-bar{background-size:200% 100%;animation:plan-gradient 3s linear infinite}@keyframes plan-gradient{0%{background-position:0 0}to{background-position:-200% 0}}.plan-hint{background:var(--accent);border-radius:9px;max-width:290px;padding:8px 11px;position:relative}@supports (color:color-mix(in lab,red,red)){.plan-hint{background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated))}}.plan-hint{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.plan-hint{border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border))}}.plan-hint{box-shadow:var(--shadow)}.plan-hint:after{content:"";background:var(--accent);width:11px;height:11px;position:absolute;bottom:-6px;right:24px}@supports (color:color-mix(in lab,red,red)){.plan-hint:after{background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated))}}.plan-hint:after{border-right:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.plan-hint:after{border-right:1px solid color-mix(in srgb,var(--accent) 40%,var(--border))}}.plan-hint:after{border-bottom:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.plan-hint:after{border-bottom:1px solid color-mix(in srgb,var(--accent) 40%,var(--border))}}.plan-hint:after{transform:rotate(45deg)}.plan-hint-t{color:var(--text);align-items:center;gap:5px;font-size:12.5px;font-weight:800;display:flex}.plan-hint-t:before{content:"✦";color:var(--accent)}.plan-hint-d{color:var(--text-dim);margin-top:3px;font-size:11px;line-height:1.45}.plan-progress{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:16px 18px}.pp-head{align-items:center;margin-bottom:10px;display:flex}.pp-t{color:var(--text);gap:9px;font-size:13.5px;font-weight:700}.pp-live,.pp-t{align-items:center;display:inline-flex}.pp-live{color:var(--sx-string);gap:5px;font-size:11px;font-weight:600}.dotpulse{background:var(--sx-string);border-radius:50%;width:7px;height:7px;animation:pulse 1.4s infinite}.pp-n{color:var(--text-dim);margin-left:auto;font-size:12px}.pp-bar{background:var(--bg-active);border-radius:5px;height:8px;overflow:hidden}.pp-bar span{background:var(--accent);border-radius:5px;height:100%;transition:width .4s;display:block}.pp-cols{color:var(--text-dim);gap:16px;margin-top:9px;font-size:11.5px;display:flex}.plan-progress.ready{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.plan-progress.ready{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.plan-progress.ready{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.plan-progress.ready{background:color-mix(in srgb,var(--accent) 8%,var(--bg-elevated))}}.run-cta{background:var(--accent);border-radius:10px;align-items:center;gap:11px;margin-bottom:12px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab,red,red)){.run-cta{background:color-mix(in srgb,var(--accent) 14%,var(--bg-elevated))}}.run-cta{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.run-cta{border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border))}}.run-cta-ic{background:var(--accent);width:28px;height:28px;color:var(--accent-fg);border-radius:8px;flex:0 0 28px;place-items:center;animation:pulse 1.6s infinite;display:grid}.run-cta-tx{color:var(--text-dim);font-size:12.5px;line-height:1.5}.run-cta-tx b{color:var(--text)}.run-attn{animation:run-attn-glow 1.7s ease-in-out infinite}@keyframes run-attn-glow{0%,to{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 55%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 0%,transparent)}}.pill.issue-todo{background:var(--bg-active);color:var(--text-dim)}.pill.issue-doing{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.pill.issue-doing{background:color-mix(in srgb,var(--accent) 20%,transparent)}}.pill.issue-doing{color:var(--accent)}.pill.issue-review{color:#c4a0ff;background:#c4a0ff38}.pill.issue-done{background:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.pill.issue-done{background:color-mix(in srgb,var(--sx-string) 20%,transparent)}}.pill.issue-done{color:var(--sx-string)}.pill.issue-blocked{color:#e8688f;background:#e8688f33}.pill.issue-cancelled{color:#e8688f;background:#e8688f29;text-decoration:line-through}.pill.issue-archived{background:var(--bg-active);color:var(--text-faint)}.notif-row{position:relative}.notif-row .notif-unread{background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.notif-row.read{opacity:.72}.gh-repo{border-bottom:1px solid var(--border-subtle);cursor:pointer;gap:11px;padding:11px 4px}.gh-repo:last-child{border-bottom:none}.gh-repo:hover{background:var(--bg-hover);border-radius:8px}.gh-repo .ghr-name{color:var(--text);font-size:13px;font-weight:700;font-family:var(--mono-font);align-items:center;gap:8px;display:flex}.gh-repo .ghr-desc{color:var(--text-dim);margin-top:1px;font-size:11.5px}.folder-view{flex-direction:column;flex:1;min-height:0;display:flex}.folder-body{flex:1;padding:18px 20px 40px;overflow-y:auto}.folder-head{font-family:var(--mono-font);color:var(--text);align-items:center;gap:9px;margin-bottom:14px;font-size:13px;font-weight:700;display:flex}.folder-head .fh-count{font-family:var(--ui-font);color:var(--text-faint);margin-left:auto;font-size:11px;font-weight:500}.folder-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.folder-item{border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:10px;padding:11px 13px;display:flex}.folder-item:hover{border-color:var(--accent);background:var(--bg-hover)}.folder-item .fi-name{color:var(--text);font-size:13px;font-family:var(--mono-font);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.codemod-main,.view-body{width:100%}.code{font-family:var(--mono-font);font-size:var(--code-size);min-width:100%;padding-bottom:40vh;line-height:1.55;display:table}.code-line{white-space:pre;min-height:calc(var(--code-size) * 1.55);align-items:flex-start;display:flex}.code-line.cursor-line,.code-line:hover{background:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){.code-line.cursor-line{background:color-mix(in srgb,var(--bg-hover) 60%,transparent)}}.gutter{text-align:right;color:var(--text-faint);-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;flex:0 0 56px;padding-right:18px}.code-line.cursor-line .gutter{color:var(--text)}.line-content{flex:1;padding-right:24px}.tok-keyword{color:var(--sx-keyword)}.tok-type{color:var(--sx-type)}.tok-string{color:var(--sx-string)}.tok-comment{color:var(--sx-comment);font-style:italic}.tok-function{color:var(--sx-function)}.tok-number{color:var(--sx-number)}.tok-operator{color:var(--sx-operator)}.tok-property{color:var(--sx-property)}.tok-punct{color:var(--text-dim)}.tok-plain{color:var(--sx-plain)}.minimap{background:var(--bg-editor);border-left:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none;flex:0 0 78px;width:78px;position:relative;overflow:hidden}.minimap-inner{font-family:var(--mono-font);opacity:.72;padding:6px 4px;font-size:2px;line-height:3px}.mini-line{white-space:pre;height:3px;overflow:hidden}.minimap-view{background:var(--text);opacity:.08;pointer-events:none;border-radius:2px;position:absolute;left:0;right:0}.welcome{background:var(--bg-editor);flex:1;place-items:center;display:grid}.welcome-inner{text-align:center;color:var(--text-faint)}.welcome-logo{letter-spacing:6px;color:var(--text-faint);margin-bottom:10px;font-size:56px;font-weight:200}.welcome-sub{font-size:13px}.welcome-keys{flex-direction:column;gap:8px;margin-top:22px;font-size:12.5px;display:flex}.welcome-key-row{justify-content:center;align-items:center;gap:12px;display:flex}.welcome-key-row .lbl{color:var(--text-dim);text-align:right;width:160px}kbd{font-family:var(--mono-font);background:var(--bg-elevated);color:var(--text-dim);border:solid var(--border);border-width:1px 1px 2px;border-radius:5px;padding:2px 6px;font-size:11px}.terminal{background:var(--bg-panel);border-top:1px solid var(--border);flex-direction:column;flex:none;min-height:0;display:flex}.term-tabs{border-bottom:1px solid var(--border-subtle);flex:0 0 34px;align-items:stretch;gap:2px;height:34px;padding:0 6px 0 12px;display:flex}.term-tab{letter-spacing:.5px;text-transform:uppercase;color:var(--text-dim);border-bottom:2px solid #0000;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:500;display:flex}.term-tab.active{border-bottom-color:var(--accent)}.term-tab.active,.term-tab:hover{color:var(--text)}.term-spacer{flex:1}.term-actions{align-items:center;gap:2px;display:flex}.term-act{width:26px;height:26px;color:var(--text-dim);border-radius:5px;align-self:center;place-items:center;display:grid}.term-act:hover{background:var(--bg-hover);color:var(--text)}.term-body{font-family:var(--mono-font);color:var(--text);flex:1;min-height:0;padding:8px 14px;font-size:12.5px;line-height:1.6;overflow-y:auto}.term-line{white-space:pre-wrap;word-break:break-word}.term-prompt-path{color:var(--sx-function)}.term-prompt-git{color:var(--sx-string)}.term-prompt-arrow{color:var(--accent)}.term-dim{color:var(--text-dim)}.term-ok{color:var(--sx-string)}.term-warn{color:var(--sx-number)}.term-err{color:var(--sx-keyword)}.term-input-line{align-items:center;gap:8px;display:flex}.term-input{color:var(--text);font-family:var(--mono-font);background:0 0;border:none;outline:none;flex:1;font-size:12.5px}.term-cursor{background:var(--accent);vertical-align:middle;width:8px;height:15px;animation:blink 1.1s step-end infinite;display:inline-block}@keyframes blink{50%{opacity:0}}.statusbar{height:var(--statusbar-h);flex:0 0 var(--statusbar-h);background:var(--bg-activity);border-top:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none;align-items:center;font-size:11.5px;display:flex}.statusbar,.theme-light .statusbar{color:var(--text-dim)}.sb-left,.sb-right{align-items:center;height:100%;display:flex}.sb-left{flex:1}.sb-item{align-items:center;gap:5px;height:100%;padding:0 9px;display:flex}.sb-item.btn{cursor:pointer}.sb-item.btn:hover{background:var(--bg-hover);color:var(--text)}.sb-brand,.sb-item.accent{color:var(--accent)}.sb-brand{letter-spacing:.3px;padding-left:12px;font-weight:700}.sb-item svg{opacity:.92}.palette-overlay{z-index:100;background:#00000052;justify-content:center;align-items:flex-start;padding-top:90px;display:flex;position:fixed;inset:0}.theme-light .palette-overlay{background:#28324638}.palette{background:var(--bg-elevated);border:1px solid var(--border);width:600px;max-width:90vw;box-shadow:var(--shadow);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.palette-input-wrap{border-bottom:1px solid var(--border-subtle);padding:10px}.palette-input{background:var(--bg-app);border:1px solid var(--border);width:100%;color:var(--text);font-size:14px;font-family:var(--ui-font);border-radius:8px;outline:none;padding:9px 12px}.palette-input:focus{border-color:var(--accent)}.palette-list{max-height:360px;padding:6px;overflow-y:auto}.palette-item{cursor:pointer;color:var(--text-dim);border-radius:8px;align-items:center;gap:11px;padding:9px 12px;display:flex}.palette-item.active{background:var(--accent);color:var(--accent-fg)}.palette-item.active .pi-hint,.palette-item.active .pi-icon{color:var(--accent-fg);opacity:.85}.pi-icon{color:var(--text-faint);place-items:center;display:grid}.pi-label{color:var(--text);flex:1;font-size:13.5px}.palette-item.active .pi-label{color:var(--accent-fg)}.pi-hint{color:var(--text-faint);font-size:11.5px;font-family:var(--mono-font)}.palette-empty{text-align:center;color:var(--text-faint);padding:24px;font-size:13px}.palette-cat{text-transform:uppercase;letter-spacing:.6px;color:var(--text-faint);padding:8px 12px 4px;font-size:10.5px;font-weight:600}.brand-mark{background:linear-gradient(150deg,var(--accent),#9a5cff);width:18px;height:18px;color:var(--accent-fg);box-shadow:var(--glow);border-radius:5px;flex:0 0 18px;place-items:center;font-size:11px;font-weight:800;display:grid}.brand-word{letter-spacing:.2px;font-weight:700}.welcome-logo{background:linear-gradient(120deg,var(--accent),#b58bff 70%);color:#0000;-webkit-background-clip:text;background-clip:text}.agents-panel{flex-direction:column;height:100%;min-height:0;display:flex}.agents-scroll{flex:1;min-height:0;overflow-y:auto}.room-cta{text-align:left;background:linear-gradient(135deg,var(--accent),var(--bg-elevated));border-radius:10px;align-items:center;gap:11px;width:calc(100% - 20px);margin:12px 10px 6px;padding:11px 12px;display:flex}@supports (color:color-mix(in lab,red,red)){.room-cta{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 26%,var(--bg-elevated)),var(--bg-elevated))}}.room-cta{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.room-cta{border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border))}}.room-cta:hover{box-shadow:var(--glow)}.room-cta-ico{background:var(--accent);width:30px;height:30px;color:var(--accent-fg);border-radius:8px;flex:0 0 30px;place-items:center;display:grid}.room-cta-text{flex-direction:column;flex:1;display:flex}.room-cta-title{color:var(--text);font-size:13px;font-weight:700}.room-cta-sub{color:var(--text-dim);font-size:11px}.org-hint{color:var(--text-faint);padding:10px 16px;font-size:11px;font-style:italic}.org-label{letter-spacing:.5px;text-transform:uppercase;color:var(--text-dim);justify-content:space-between;align-items:center;padding:10px 14px 4px;font-size:11px;font-weight:700;display:flex}.org-count{color:var(--text-faint);font-weight:600}.agent-row{cursor:pointer;padding:7px 14px;position:relative}.agent-row:hover{background:var(--bg-hover)}.agent-row.sel{background:var(--bg-active)}.agent-row.sel:before{content:"";background:var(--accent);width:2px;position:absolute;top:0;bottom:0;left:0}.agent-row.child{padding-left:30px}.agent-row.child:after{content:"";background:var(--border);width:1px;position:absolute;top:0;bottom:50%;left:20px}.avatar{color:#fff;border-radius:8px;flex:0 0 28px;place-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:grid;position:relative}.avatar .stat-dot{border:2px solid var(--bg-panel);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-2px;right:-2px}.agent-meta{flex:1;min-width:0}.agent-name{color:var(--text);align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.agent-handle{color:var(--accent);font-family:var(--mono-font);font-size:11px;font-weight:600}.agent-sub{color:var(--text-dim);align-items:center;gap:6px;margin-top:1px;font-size:11px;display:flex}.adapter-chip{font-family:var(--mono-font);background:var(--bg-active);color:var(--text-dim);white-space:nowrap;border-radius:5px;padding:1px 6px;font-size:10px}.status-pill{text-transform:capitalize;border-radius:20px;align-items:center;gap:4px;padding:1px 7px;font-size:10px;font-weight:600;display:inline-flex}.delegate{border-top:1px solid var(--border);background:var(--bg-panel);flex-direction:column;flex:none;display:flex}.thread{flex-direction:column;gap:12px;max-height:200px;padding:10px 14px;display:flex;overflow-y:auto}.thread:empty{display:none}.msg{gap:9px;display:flex}.msg .avatar{border-radius:7px;flex-basis:24px;width:24px;height:24px;font-size:10px}.msg-body{min-width:0}.msg-who{color:var(--text);margin-bottom:2px;font-size:11.5px;font-weight:600}.msg-who .when{color:var(--text-faint);margin-left:6px;font-size:10.5px;font-weight:400}.msg-text{color:var(--text-dim);word-wrap:break-word;font-size:12.5px;line-height:1.5}.msg-text .mention{color:var(--accent);font-weight:600;font-family:var(--mono-font)}.msg.system .msg-text{color:var(--text-faint);font-style:italic}.composer{padding:10px 12px 12px;position:relative}.composer-box{box-sizing:border-box;background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;width:100%;padding:8px 10px;transition:border-color .15s,box-shadow .15s;display:block}.composer-box.focus{border-color:var(--accent);box-shadow:var(--glow)}.composer-input{resize:none;width:100%;color:var(--text);font-family:var(--ui-font);background:0 0;border:none;outline:none;min-height:76px;max-height:260px;font-size:13px;line-height:1.5}.composer-input::placeholder{color:var(--text-faint)}.composer-foot{align-items:center;gap:8px;margin-top:8px;display:flex}.composer-actions{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.composer-hint{color:var(--text-faint);flex:1;font-size:11px}.composer-hint kbd{padding:1px 5px;font-size:10px}.send-btn{background:var(--accent);color:var(--accent-fg);border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-size:12.5px;font-weight:700;display:inline-flex}.send-btn:hover{filter:brightness(1.08)}.send-btn:disabled{opacity:.45;cursor:default;filter:none}.att-btn{color:var(--text-dim);border:1px solid var(--border-subtle);background:var(--bg-panel);cursor:pointer;border-radius:7px;align-items:center;gap:5px;padding:4px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.att-btn:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.att-btn:disabled{opacity:.5;cursor:default}.att-row{flex-wrap:wrap;gap:6px;padding:6px 4px 2px;display:flex}.att-chip{max-width:160px;color:var(--text-dim);background:var(--bg-active);border-radius:7px;align-items:center;gap:5px;padding:3px 6px;font-size:11px;display:inline-flex}.att-chip .att-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.att-chip .att-x{color:var(--text-faint);cursor:pointer;display:inline-flex}.att-chip .att-x:hover{color:#e8688f}.msg-atts{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.msg-att-img{border:1px solid var(--border-subtle);border-radius:9px;max-width:180px;display:block;overflow:hidden}.msg-att-img img{object-fit:cover;max-width:180px;max-height:180px;display:block}.msg-att-doc{max-width:200px;color:var(--text-dim);background:var(--bg-active);border:1px solid var(--border-subtle);border-radius:8px;align-items:center;gap:6px;padding:6px 9px;font-size:11.5px;display:inline-flex}.msg-att-doc:hover{color:var(--text);border-color:var(--accent)}.msg-att-doc .mad-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mention-pop{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);z-index:50;border-radius:10px;flex-direction:column;max-height:280px;display:flex;position:absolute;bottom:calc(100% - 4px);left:12px;right:12px;overflow:hidden}.mention-head{text-transform:uppercase;letter-spacing:.6px;color:var(--text-faint);border-bottom:1px solid var(--border-subtle);align-items:center;gap:6px;padding:7px 12px 5px;font-size:10.5px;font-weight:700;display:flex}.mention-list{padding:5px;overflow-y:auto}.mention-item{cursor:pointer;border-radius:7px;align-items:center;gap:9px;padding:6px 9px;display:flex}.mention-item.active{background:var(--accent)}.mention-item.active .mi-handle,.mention-item.active .mi-name,.mention-item.active .mi-role{color:var(--accent-fg)}.mention-item .avatar{border-radius:7px;flex-basis:24px;width:24px;height:24px;font-size:10px}.mi-text{flex:1;min-width:0}.mi-name{color:var(--text);font-size:12.5px;font-weight:500}.mi-handle{font-family:var(--mono-font);color:var(--accent);font-size:11px;font-weight:600}.mi-role{color:var(--text-dim);white-space:nowrap;margin-left:auto;font-size:11px}.mention-empty{text-align:center;color:var(--text-faint);padding:14px;font-size:12px}.kb-pull-pop{max-height:360px}.kb-pull-body{flex-direction:column;gap:8px;padding:10px;display:flex}.kb-pull-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.kb-pull-input{box-sizing:border-box;background:var(--bg-panel);border:1px solid var(--border-subtle);width:100%;min-width:0;height:30px;color:var(--text);font-family:var(--ui-font);border-radius:7px;outline:none;padding:0 9px;font-size:12px}.kb-pull-input:focus{border-color:var(--accent);box-shadow:var(--glow)}.kb-pull-preview{border:1px solid var(--border-subtle);background:var(--bg-panel);min-height:76px;max-height:170px;color:var(--text-dim);border-radius:8px;padding:9px 10px;font-size:12px;line-height:1.5;overflow-y:auto}.kb-pull-text{white-space:pre-wrap;overflow-wrap:anywhere}.kb-pull-muted{color:var(--text-faint)}.kb-pull-error{color:#e8688f}.kb-pull-sources{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.kb-pull-sources span{text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--border-subtle);max-width:180px;color:var(--accent);background:var(--bg-active);border-radius:6px;padding:2px 6px;font-size:10.5px;overflow:hidden}.kb-pull-actions{justify-content:flex-end;display:flex}.chat-view{background:var(--bg-editor);flex-direction:column;flex:1;min-height:0;display:flex}.chat-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-panel);flex:none;gap:12px;padding:12px 20px}.chat-header,.chat-title{align-items:center;display:flex}.chat-title{color:var(--text);gap:9px;font-size:14px;font-weight:700}.chat-sub{color:var(--text-dim);font-size:11.5px}.chat-members{align-items:center;margin-left:auto;display:flex}.chat-members .avatar{flex-basis:26px;font-size:9px}.chat-members .avatar,.chat-members .more{border:2px solid var(--bg-panel);border-radius:8px;width:26px;height:26px;margin-left:-8px}.chat-members .more{background:var(--bg-active);color:var(--text-dim);place-items:center;font-size:10px;font-weight:700;display:grid}.dm-context-note{color:var(--text-dim);background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:8px;flex:none;align-items:center;gap:8px;margin:12px 20px 0;padding:7px 12px;font-size:11.5px;display:flex}.dm-context-note .ico{color:var(--accent)}.tg-connect{flex:1;min-height:0;padding:16px;overflow-y:auto}.tg-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:12px;padding:16px;display:flex}.tg-card-head{align-items:flex-start;gap:11px;display:flex}.tg-card-ico{color:#fff;background:linear-gradient(150deg,#2aabee,#229ed9);border-radius:10px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.tg-card-title{color:var(--text);font-size:14px;font-weight:700}.tg-card-sub{margin-top:2px}.tg-card-sub,.tg-steps{color:var(--text-dim);font-size:11.5px;line-height:1.45}.tg-steps{flex-direction:column;gap:6px;margin:0;padding-left:18px;display:flex}.tg-steps code{font-family:var(--mono-font);background:var(--bg-app);border:1px solid var(--border);color:var(--text);border-radius:5px;padding:1px 5px;font-size:10.5px}.tg-steps b{color:var(--text);font-weight:600}.tg-field{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.tg-field>span{color:var(--text-dim);text-transform:uppercase;letter-spacing:.03em;font-size:10.5px;font-weight:600}.tg-field-row{gap:10px;display:flex}.tg-msg{border-radius:7px;padding:6px 10px;font-size:11.5px}.tg-msg.err{color:#e8688f;background:#e8688f1f}.tg-msg.ok{color:#b3d97a;background:#b3d97a1f}.tg-save{justify-content:center}.tg-note{color:var(--text-faint);border-top:1px solid var(--border-subtle);align-items:flex-start;gap:6px;padding-top:10px;font-size:10.5px;line-height:1.45;display:flex}.chat-stream{flex-direction:column;flex:1;gap:20px;min-height:0;padding:18px 20px 8px;display:flex;overflow-y:auto}.chat-stream .day-sep{text-align:center;color:var(--text-faint);font-size:11px;position:relative}.cmsg{gap:11px;max-width:820px;animation:cmsgin .26s;display:flex}@keyframes cmsgin{0%{opacity:0;transform:translateY(6px)}}.cmsg.operator{flex-direction:row-reverse;margin-left:auto}.cmsg .avatar{flex-basis:30px;width:30px;height:30px;font-size:11px}.cmsg-body{flex:1;min-width:0}.cmsg.operator .cmsg-body{flex-direction:column;align-items:flex-end;display:flex}.cmsg-head{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.cmsg-name{color:var(--text);font-size:12.5px;font-weight:700}.cmsg-role{color:var(--text-dim);font-size:11px}.cmsg-when{color:var(--text-faint);font-size:10.5px}.cmsg-bubble{background:var(--bg-panel);border:1px solid var(--border-subtle);color:var(--text);word-wrap:break-word;border-radius:4px 13px 13px;max-width:100%;padding:9px 13px;font-size:13.5px;line-height:1.6;display:inline-block;position:relative}.cmsg.operator .cmsg-bubble{background:var(--bg-active);border-radius:13px 13px 5px}.cmsg-bubble.clamped{max-height:240px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 80%,#0000);mask-image:linear-gradient(#000 80%,#0000)}.cmsg-more{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:6px;padding:0;font-size:11.5px;font-weight:600;display:inline-block}.cmsg-md{font-size:13.5px;line-height:1.6}.cmsg-md p{margin:0 0 7px}.cmsg-md p:last-child{margin:0}.cmsg-md ol,.cmsg-md ul{margin:5px 0;padding-left:18px}.cmsg-md li{margin:2px 0}.cmsg-md h1,.cmsg-md h2,.cmsg-md h3{margin:8px 0 4px;font-size:14px;font-weight:700}.cmsg-md h1:first-child,.cmsg-md h2:first-child,.cmsg-md h3:first-child{margin-top:0}.cmsg-md code{background:var(--bg-active);border-radius:4px;padding:1px 5px;font-size:12px}.cmsg-md strong{font-weight:700}.msg-sources{margin-top:6px}.msg-sources-toggle{color:var(--text-faint);cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;padding:0;font-size:10.5px;display:inline-flex}.msg-sources-list,.msg-sources-toggle:hover{color:var(--text-dim)}.msg-sources-list{flex-direction:column;gap:2px;margin-top:4px;font-size:10.5px;display:flex}.kb-card{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.kb-card{border:1px solid color-mix(in srgb,var(--accent) 32%,var(--border))}}.kb-card{background:linear-gradient(180deg,var(--accent),var(--bg-panel));border-radius:12px}@supports (color:color-mix(in lab,red,red)){.kb-card{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 7%,var(--bg-panel)),var(--bg-panel))}}.kb-card{max-width:100%;padding:12px 14px}.kb-card-head{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);align-items:center;gap:6px;margin-bottom:7px;font-size:11px;font-weight:700;display:inline-flex}.kb-card-body{color:var(--text);font-size:13.5px;line-height:1.6}.kb-card-note{color:var(--sx-string);align-items:center;gap:5px;margin-top:8px;font-size:11.5px;display:inline-flex}.kb-card-actions{flex-wrap:wrap;gap:7px;margin-top:11px;display:flex}.kbc-btn{cursor:pointer;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 11px;font-size:11.5px;font-weight:600;transition:border-color .12s,transform .1s}.kbc-btn:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}.kbc-btn:disabled{opacity:.55;cursor:default}.kbc-btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.kb-card-sources{border-top:1px solid var(--border-subtle);margin-top:10px;padding-top:8px}.room-filter{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:4px;padding:6px 10px;display:flex}.rf-label{color:var(--text-faint);margin-right:2px;font-size:10.5px}.rf-chip{cursor:pointer;border:1px solid var(--border);color:var(--text-dim);background:0 0;border-radius:6px;padding:2px 8px;font-size:10.5px;transition:background .12s,color .12s,border-color .12s}.rf-chip.on,.rf-chip:hover{border-color:var(--accent)}.rf-chip.on{background:var(--accent);color:var(--accent-fg)}.cmsg-bubble .mention,.cmsg-bubble .ref-chip{color:var(--accent);font-weight:600;font-family:var(--mono-font);font-size:12px}.cmsg-bubble .ref-chip{background:#7864ff1a;border:1px solid #7864ff40;border-radius:4px;padding:1px 4px;text-decoration:none}.cmsg-bubble .ref-chip:hover{text-decoration:underline}.mi-ref-kind{text-transform:uppercase;letter-spacing:.5px;color:var(--text-faint);background:var(--bg-active);border-radius:4px;flex:none;padding:2px 5px;font-size:10px;font-weight:700}.rf-chip.rf-role{border-style:dashed}.rf-chip.rf-lane{border-style:dotted}.rf-search{border:1px solid var(--border-subtle);color:var(--text-faint);border-radius:6px;align-items:center;gap:4px;margin-left:auto;padding:2px 6px;display:inline-flex}.rf-search input{color:var(--text-dim);background:0 0;border:none;outline:none;width:110px;font-size:10.5px}.rf-clear{cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:inline-flex}.rf-clear,.wstep-more{color:var(--text-faint)}.wstep-more{padding:2px 0 0;font-size:10.5px}.wmeta.wfiles{color:var(--text-faint)}.cmsg.system{justify-content:center;max-width:none}.cmsg.system .sys-pill{color:var(--text-dim);background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:20px;align-items:center;gap:7px;padding:4px 12px;font-size:11.5px;display:inline-flex}.typing-row{align-items:center;gap:11px;display:flex}.typing-bubble{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:4px 12px 12px;gap:4px;padding:11px 14px;display:flex}.typing-bubble span{background:var(--text-faint);border-radius:50%;width:6px;height:6px;animation:typedot 1.2s infinite}.typing-bubble span:nth-child(2){animation-delay:.18s}.typing-bubble span:nth-child(3){animation-delay:.36s}@keyframes typedot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.chat-skel{flex-direction:column;gap:18px;padding:6px 2px;display:flex}.skel-row{opacity:0;gap:11px;animation:skelfade .4s forwards;display:flex}.skel-avatar{border-radius:9px;flex:0 0 30px;width:30px;height:30px}.skel-lines{flex-direction:column;flex:1;gap:7px;padding-top:3px;display:flex}.skel-line{border-radius:5px;height:10px}.skel-avatar,.skel-line{background:linear-gradient(100deg,var(--bg-elevated) 30%,var(--text-faint) 50%,var(--bg-elevated) 70%)}@supports (color:color-mix(in lab,red,red)){.skel-avatar,.skel-line{background:linear-gradient(100deg,var(--bg-elevated) 30%,color-mix(in srgb,var(--text-faint) 22%,var(--bg-elevated)) 50%,var(--bg-elevated) 70%)}}.skel-avatar,.skel-line{background-size:200% 100%;animation:skelshimmer 1.3s ease-in-out infinite}@keyframes skelshimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes skelfade{to{opacity:1}}.live-caret{vertical-align:text-bottom;background:var(--accent);border-radius:1px;width:7px;height:13px;margin-left:2px;animation:caretblink 1s step-end infinite;display:inline-block}@keyframes caretblink{0%,to{opacity:1}50%{opacity:0}}.work-block{border:1px solid var(--border);background:var(--bg-panel);border-radius:12px;margin-top:8px;overflow:hidden}.work-head{color:var(--text);background:var(--bg-hover);text-align:left;cursor:pointer;border:none;border-bottom:1px solid var(--border-subtle);align-items:center;gap:9px;width:100%;padding:9px 13px;font-family:inherit;font-size:12.5px;display:flex}.work-head:hover{background:var(--bg-active)}.work-block.collapsed .work-head{border-bottom:none}.work-toggle{color:var(--text-faint);margin-left:6px;transition:transform .15s;display:inline-flex}.work-toggle.open{transform:rotate(90deg)}.work-head .spin{color:var(--accent);animation:spin 1.1s linear infinite;display:inline-flex}@keyframes spin{to{transform:rotate(1turn)}}.work-head .done-check{color:var(--sx-string)}.work-head .wlabel{font-weight:600}.work-head .wmeta{color:var(--text-faint);font-size:11px;font-family:var(--mono-font);margin-left:auto}.work-thinking{color:var(--text-dim);border-bottom:1px solid var(--border-subtle);gap:8px;padding:9px 13px;font-size:12px;font-style:italic;line-height:1.6;display:flex}.work-thinking .ti{color:var(--sx-function);flex:none;margin-top:1px;font-style:normal}.work-steps{flex-direction:column;display:flex}.work-step{border-bottom:1px solid var(--border-subtle)}.work-step:last-child{border-bottom:none}.wstep-head{align-items:center;gap:9px;padding:8px 13px;font-size:12px;display:flex}.wstep-verb{text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:700}.wstep-verb.create{color:var(--sx-string)}.wstep-verb.edit{color:var(--sx-number)}.wstep-verb.read{color:var(--sx-property)}.wstep-verb.run{color:var(--sx-function)}.wstep-file{font-family:var(--mono-font);color:var(--text);cursor:pointer;font-size:12px}.wstep-file:hover{color:var(--accent);text-decoration:underline}.wstep-badge{font-size:10.5px;font-family:var(--mono-font);color:var(--text-faint);margin-left:auto}.wstep-badge .plus{color:var(--sx-string)}.wstep-badge .minus{color:var(--sx-keyword)}.wstep-code{font-family:var(--mono-font);background:var(--bg-editor);border-top:1px solid var(--border-subtle);padding:8px 0;font-size:11.5px;line-height:1.6;overflow-x:auto}.wcode-line{white-space:pre;display:flex}.wcode-gutter{text-align:right;color:var(--text-faint);-webkit-user-select:none;user-select:none;flex:0 0 38px;padding-right:12px}.wcode-text{padding-right:16px}.wdiff-line{white-space:pre;padding-left:8px;display:flex}.wdiff-line.add{background:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.wdiff-line.add{background:color-mix(in srgb,var(--sx-string) 13%,transparent)}}.wdiff-line.del{background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.wdiff-line.del{background:color-mix(in srgb,var(--sx-keyword) 13%,transparent)}}.wdiff-sign{text-align:center;-webkit-user-select:none;user-select:none;flex:0 0 18px}.wdiff-line.add .wdiff-sign{color:var(--sx-string)}.wdiff-line.del .wdiff-sign{color:var(--sx-keyword)}.wdiff-line.ctx{color:var(--text-dim)}.wdiff-text{padding-right:16px}.wstep-term{font-family:var(--mono-font);background:var(--bg-editor);border-top:1px solid var(--border-subtle);color:var(--text-dim);padding:8px 13px;font-size:11.5px;line-height:1.6}.wstep-term .ok{color:var(--sx-string)}.chat-composer{border-top:1px solid var(--border-subtle);flex:none;padding:10px 16px 14px;position:relative}.chat-composer .composer-box{border-radius:12px}.chat-composer .mention-pop{bottom:calc(100% - 6px);left:16px;right:16px}.chat-dock{background:var(--bg-editor);flex-direction:column;flex:none;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.chat-dock.right{border-left:1px solid var(--border)}.chat-dock.left{border-right:1px solid var(--border)}.dock-resizer{z-index:5;cursor:col-resize;width:7px;position:absolute;top:0;bottom:0}.dock-resizer.right{left:-3px}.dock-resizer.left{right:-3px}.dock-resizer:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dock-resizer:hover{background:color-mix(in srgb,var(--accent) 45%,transparent)}}.dock-toolbar{background:var(--bg-activity);border-bottom:1px solid var(--border-subtle);flex:0 0 38px;justify-content:space-between;align-items:center;height:38px;padding:0 8px 0 14px;display:flex}.dock-toolbar-title{color:var(--text);text-transform:uppercase;letter-spacing:.5px;gap:8px;font-size:12px;font-weight:700}.dock-back,.dock-toolbar-title{align-items:center;display:flex}.dock-back{color:var(--text-dim);border-radius:6px;gap:6px;padding:4px 8px 4px 4px;font-size:12.5px;font-weight:600}.dock-back:hover{color:var(--text);background:var(--bg-hover)}.dock-tools{gap:2px;display:flex}.dock-tool{width:28px;height:28px;color:var(--text-dim);border-radius:6px;place-items:center;display:grid}.dock-tool:hover{background:var(--bg-hover);color:var(--text)}.chat-dock .chat-header{padding:11px 16px}.chat-dock .chat-stream{padding:16px 16px 6px}.chat-dock .cmsg{max-width:100%}.member-btn{border-radius:8px;padding:0;display:inline-flex}.member-btn:hover{transition:transform .1s;transform:translateY(-2px)}.dock-tabs{border-bottom:1px solid var(--border-subtle);background:var(--bg-panel);flex:none;gap:4px;padding:8px 12px;display:flex}.dock-tab{color:var(--text-dim);border-radius:8px;flex:1;justify-content:center;align-items:center;gap:7px;padding:7px;font-size:12.5px;font-weight:600;display:flex}.dock-tab:hover{background:var(--bg-hover);color:var(--text)}.dock-tab.on{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dock-tab.on{background:color-mix(in srgb,var(--accent) 16%,transparent)}}.dock-tab.on{color:var(--text)}.dock-tab.on svg{color:var(--accent)}.dock-tab .dt-badge{background:var(--accent);color:var(--accent-fg);border-radius:9px;place-items:center;min-width:15px;height:15px;padding:0 5px;font-size:9px;font-weight:700;display:grid}.ctx-bar{border-bottom:1px solid var(--border-subtle);background:var(--bg-panel);justify-content:space-between;gap:10px;padding:6px 12px;display:flex}.ctx-bar,.ctx-hint{flex:none;align-items:center}.ctx-hint{color:var(--accent);white-space:nowrap;background:var(--accent);border-radius:999px;gap:6px;padding:4px 11px;font-size:11px;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.ctx-hint{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.ctx-hint{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.ctx-hint{border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border))}}.ctx-hint{transition:background .15s}.ctx-hint:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ctx-hint:hover{background:color-mix(in srgb,var(--accent) 20%,transparent)}}.ctx-hint svg{color:var(--accent)}.sess-tab{color:var(--text-dim);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;max-width:160px;padding:4px 11px;font-size:11px;font-weight:600;transition:background .15s,color .15s;display:inline-flex;overflow:hidden}.sess-tab:hover{color:var(--text);background:var(--bg-hover)}.sess-tab.active{background:var(--bg-active);color:var(--text);box-shadow:inset 0 0 0 1px var(--border);cursor:default}.sess-new{color:var(--accent);background:var(--accent);border-radius:999px;align-items:center;gap:5px;padding:4px 11px;font-size:11px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.sess-new{background:color-mix(in srgb,var(--accent) 14%,transparent)}}.sess-new{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.sess-new{border:1px solid color-mix(in srgb,var(--accent) 36%,var(--border))}}.sess-new{cursor:pointer;transition:background .15s,transform .1s}.sess-new:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.sess-new:hover{background:color-mix(in srgb,var(--accent) 26%,transparent)}}.sess-new:active{transform:scale(.96)}.sess-new svg{color:var(--accent)}.sess-pill{align-items:center;gap:1px;display:inline-flex}.sess-del{width:18px;height:18px;color:var(--text-faint);cursor:pointer;border-radius:50%;place-items:center;transition:color .15s,background .15s;display:inline-grid}.sess-del:hover{color:var(--sx-keyword);background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.sess-del:hover{background:color-mix(in srgb,var(--sx-keyword) 16%,transparent)}}.ctx-donut-wrap{align-items:center;gap:10px;display:flex}.ctx-donut{outline:none;position:relative}.ctx-donut svg{display:block}.ctx-pop{z-index:60;background:var(--bg-elevated);border:1px solid var(--border);opacity:0;pointer-events:none;border-radius:10px;width:244px;padding:10px 12px;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 6px);left:0;transform:translateY(-4px);box-shadow:0 10px 30px #00000073}.ctx-donut:focus-within .ctx-pop,.ctx-donut:hover .ctx-pop{opacity:1;pointer-events:auto;transform:translateY(0)}.ctx-pop-title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.ctx-rows{flex-direction:column;gap:4px;font-size:12px;display:flex}.ctx-rows>div{justify-content:space-between;display:flex}.ctx-rows span{color:var(--text-dim)}.ctx-rows b{color:var(--text);font-weight:600}.ctx-pop-sub{color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em;margin:9px 0 6px;font-size:10.5px}.ctx-agents{flex-direction:column;gap:6px;display:flex}.ctx-agent{align-items:center;gap:7px;font-size:11.5px;display:flex}.ctx-agent-name{text-overflow:ellipsis;white-space:nowrap;max-width:64px;color:var(--text);flex:none;overflow:hidden}.ctx-agent-bar{background:var(--border);border-radius:3px;flex:1;height:5px;overflow:hidden}.ctx-agent-bar>span{border-radius:3px;height:100%;display:block}.ctx-agent-tok{color:var(--text-faint);font-family:var(--mono-font);flex:none;font-size:10px}.ctx-compact{color:var(--accent);border:1px solid var(--accent);border-radius:7px;align-items:center;gap:5px;padding:4px 9px;font-size:11.5px;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.ctx-compact{border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}}.ctx-compact{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ctx-compact{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.ctx-compact{cursor:pointer}.ctx-compact:hover:not(:disabled){background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ctx-compact:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 20%,transparent)}}.ctx-compact:disabled{opacity:.6;cursor:default}.ctx-compact .spin{animation:spin 1.1s linear infinite;display:inline-flex}.dock-bell-wrap{position:relative}.dock-bell-badge{background:var(--accent);color:var(--accent-fg);border-radius:7px;place-items:center;min-width:13px;height:13px;padding:0 3px;font-size:8.5px;font-weight:700;display:grid;position:absolute;top:-2px;right:-2px}.dock-notif-pop{z-index:70;background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;width:274px;max-height:350px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 12px 32px #00000080}.dock-notif-head{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;padding:6px 8px;font-size:11px;font-weight:700}.dock-notif-empty{color:var(--text-faint);padding:10px 8px;font-size:12px}.dock-notif-row{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:flex-start;gap:8px;width:100%;padding:8px;font-family:inherit;display:flex}.dock-notif-row:hover{background:var(--bg-hover)}.dock-notif-row.approval .dn-ico{color:var(--sx-string)}.dn-ico{color:var(--accent);flex:none;margin-top:1px;display:inline-flex}.dn-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.dn-text{color:var(--text);font-size:12.5px;font-weight:600}.dn-detail{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.dn-go{color:var(--text-faint);flex:none;margin-top:2px}.cmsg.highlight{border-radius:10px;animation:cmsgflash 2.4s}@keyframes cmsgflash{0%,30%{background:color-mix(in srgb,var(--accent) 18%,transparent)}to{background:0 0}}.dm-search{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-faint);border-radius:9px;align-items:center;gap:8px;margin:10px 12px 4px;padding:7px 10px;display:flex}.dm-search:focus-within{border-color:var(--accent)}.dm-search input{color:var(--text);font-family:var(--ui-font);background:0 0;border:none;outline:none;flex:1;font-size:12.5px}.people-list{flex:1;min-height:0;padding:4px 8px 12px;overflow-y:auto}.people-row{cursor:pointer;border-radius:10px;align-items:center;gap:11px;padding:9px 10px;display:flex}.people-row:hover{background:var(--bg-hover)}.people-meta{flex:1;min-width:0}.people-name{color:var(--text);align-items:center;gap:7px;font-size:13px;font-weight:600;display:flex}.people-name .agent-handle{font-size:11px}.people-sub{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:11.5px;overflow:hidden}.people-sub.preview{font-style:italic}.people-go,.people-sub.preview{color:var(--text-faint)}.people-row:hover .people-go{color:var(--accent)}.dm-back-row{border-bottom:1px solid var(--border-subtle);flex:none;align-items:center;gap:8px;padding:8px 12px;display:flex}.dm-back-btn{color:var(--text-dim);border-radius:6px;align-items:center;gap:5px;padding:4px 8px 4px 4px;font-size:12px;font-weight:600;display:inline-flex}.dm-back-btn:hover{color:var(--text);background:var(--bg-hover)}.chat-launcher{z-index:80;background:var(--accent);color:var(--accent-fg);box-shadow:0 8px 24px -6px #00000080,var(--glow);border-radius:30px;align-items:center;gap:8px;padding:10px 14px;font-size:12.5px;font-weight:700;display:flex;position:fixed;bottom:40px}.chat-launcher.right{right:22px}.chat-launcher.left{left:64px}.chat-launcher:hover{filter:brightness(1.08)}.launch-badge{background:var(--bg-app);color:var(--accent);border-radius:10px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;display:grid}.sb-item .sb-badge{background:var(--accent);color:var(--accent-fg);border-radius:8px;place-items:center;min-width:14px;height:14px;margin-left:3px;padding:0 4px;font-size:9px;font-weight:700;display:inline-grid}.view{background:var(--bg-editor);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.mod-nav{padding:4px 0 16px}.mod-nav-search{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-faint);border-radius:8px;align-items:center;gap:7px;margin:10px 12px 4px;padding:6px 9px;display:flex}.mod-nav-search:focus-within{border-color:var(--accent)}.mod-nav-filter{color:var(--text);font-family:var(--ui-font);background:0 0;border:none;outline:none;flex:1;font-size:12.5px}.mod-nav-filter::placeholder{color:var(--text-faint)}.mod-nav-clear{color:var(--text-faint);border-radius:4px;place-items:center;display:grid}.mod-nav-clear:hover{color:var(--text);background:var(--bg-hover)}.mod-nav-empty{color:var(--text-faint);padding:14px 16px;font-size:12px;font-style:italic}.mod-nav-group{margin-top:4px}.mod-nav-label{text-transform:uppercase;letter-spacing:.7px;color:var(--text-faint);padding:10px 16px 4px;font-size:10px;font-weight:700}.mod-nav-item{text-align:left;width:100%;color:var(--text-dim);align-items:center;gap:10px;padding:6px 16px;font-size:13px;display:flex;position:relative}.mod-nav-item:hover{background:var(--bg-hover);color:var(--text)}.mod-nav-item.active{background:var(--bg-active);color:var(--text)}.mod-nav-item.active:before{content:"";background:var(--accent);width:2px;position:absolute;top:0;bottom:0;left:0}.mod-nav-item svg{color:var(--text-faint);flex:0 0 16px}.mod-nav-item.active svg,.mod-nav-item:hover svg{color:var(--accent)}.view-head{border-bottom:1px solid var(--border-subtle);flex:none;align-items:flex-end;gap:14px;padding:20px 28px 16px;display:flex}.view-head .vh-icon{background:var(--bg-elevated);border:1px solid var(--border);width:38px;height:38px;color:var(--accent);border-radius:10px;flex:0 0 38px;place-items:center;display:grid}.view-title{color:var(--text);letter-spacing:-.2px;font-size:19px;font-weight:800}.view-sub{color:var(--text-dim);margin-top:2px;font-size:12.5px}.vh-right{flex:none;align-items:center;gap:8px;margin-left:auto;display:flex}.view-body{flex:1;min-height:0;padding:22px 28px 40px;overflow:hidden auto}.view-section-title{text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);margin:8px 0 12px;font-size:12px;font-weight:700}.btn-accent{background:var(--accent);color:var(--accent-fg);white-space:nowrap;border-radius:8px;align-items:center;gap:7px;padding:7px 14px;font-size:12.5px;font-weight:700;display:inline-flex}.btn-accent:disabled{opacity:.42;cursor:not-allowed}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.btn-accent:hover{filter:brightness(1.08)}.btn-ghost{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);white-space:nowrap;border-radius:8px;align-items:center;gap:7px;padding:7px 13px;font-size:12.5px;font-weight:600;display:inline-flex}.btn-ghost:hover{background:var(--bg-hover)}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:16px}.cards-grid{gap:14px;display:grid}.pill{text-transform:uppercase;letter-spacing:.3px;border-radius:20px;padding:2px 8px;font-size:10.5px;font-weight:700}.chip-sm{font-size:11px;font-family:var(--mono-font);color:var(--text-dim);border-radius:6px;padding:1px 7px}.chip-sm,.pbar{background:var(--bg-active)}.pbar{height:7px;overflow:hidden}.pbar,.pbar>span{border-radius:5px}.pbar>span{background:var(--accent);height:100%;display:block}.barrow{grid-template-columns:120px 1fr 64px;align-items:center;gap:12px;padding:5px 0;font-size:12.5px;display:grid}.barrow .bl{color:var(--text);align-items:center;gap:7px;display:flex;overflow:hidden}.barrow .bt{background:var(--accent);border-radius:5px;min-width:3px;height:9px}.barrow .bv{text-align:right;color:var(--text-dim);font-family:var(--mono-font);font-size:12px}.tbl{border-collapse:collapse;width:100%;font-size:12.5px}.tbl th{text-align:left;color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border);padding:8px 12px;font-size:11px;font-weight:600}.tbl td{border-bottom:1px solid var(--border-subtle);color:var(--text);padding:9px 12px}.tbl tr:hover td{background:var(--bg-hover)}.tbl .who{align-items:center;gap:8px;display:flex}.dash-grid{grid-template-columns:repeat(12,1fr);gap:16px;display:grid}.dash-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;flex-direction:column;min-height:0;padding:16px 18px;display:flex}.dash-card h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);align-items:center;gap:8px;margin-bottom:12px;font-size:12px;font-weight:700;display:flex}.dash-card h3 .more-link{color:var(--accent);cursor:pointer;text-transform:none;letter-spacing:0;margin-left:auto;font-size:11px}.kpi{color:var(--text);letter-spacing:-1px;font-size:30px;font-weight:800}.kpi-sub{color:var(--text-dim);font-size:12px}.module-tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.mod-tile{background:var(--bg-panel);border:1px solid var(--border-subtle);cursor:pointer;border-radius:10px;flex-direction:column;gap:7px;padding:12px;transition:border-color .12s,transform .1s;display:flex}.mod-tile:hover{border-color:var(--accent);transform:translateY(-2px)}.mod-tile .mt-ico{background:var(--bg-active);width:30px;height:30px;color:var(--accent);border-radius:8px;place-items:center;display:grid}.mod-tile .mt-name{color:var(--text);font-size:12.5px;font-weight:700}.mod-tile .mt-desc{color:var(--text-dim);font-size:11px;line-height:1.4}.mini-agent{align-items:center;gap:8px;padding:5px 0;font-size:12.5px;display:flex}.mini-agent .ma-name{color:var(--text)}.mini-agent .ma-role{color:var(--text-dim);margin-left:auto;font-size:11px}.dash{flex-direction:column;gap:16px;display:flex}.dash-filters{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 12px;display:flex}.df-ranges{background:var(--bg-app);border:1px solid var(--border);border-radius:9px;gap:4px;padding:3px;display:flex}.df-chip{color:var(--text-dim);border-radius:6px;padding:5px 11px;font-size:12px;font-weight:600}.df-chip.on{background:var(--accent);color:var(--accent-fg)}.df-selects{gap:8px;min-width:0;display:flex}.df-selects .dd{min-width:150px}.df-meta{align-items:center;gap:10px;margin-left:auto;display:flex}.df-updated{color:var(--text-faint);font-size:11.5px;font-family:var(--mono-font)}.df-refresh{background:var(--bg-app);border:1px solid var(--border);width:30px;height:30px;color:var(--text-dim);border-radius:8px;place-items:center;display:grid}.df-refresh:hover{color:var(--accent);border-color:var(--accent)}.kpi-of{font-size:16px}.kpi-of,.kpi-row{color:var(--text-dim)}.kpi-row{flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:11.5px;display:flex}.kpi-row .bad,.kpi-row .warn{color:var(--sx-number);font-weight:700}.kpi-row .bad{color:var(--sx-keyword)}.kpi-foot{color:var(--text-faint);gap:6px;margin-top:8px;font-size:11px;display:flex}.kpi-foot,.trend{align-items:center}.trend{color:var(--text-dim);gap:3px;font-weight:700;display:inline-flex}.trend.up{color:var(--sx-keyword)}.trend.down{color:var(--sx-string)}.health-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.health-item{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:10px;align-items:center;gap:10px;padding:9px 11px;display:flex}.hdot{background:var(--text-faint);border-radius:50%;flex:0 0 9px;width:9px;height:9px}.hdot.healthy{background:var(--sx-string)}.hdot.attention{background:var(--sx-number)}.hdot.error{background:var(--sx-keyword)}.hdot.offline{background:var(--text-faint)}.hdot.needs-config{background:var(--sx-property)}.hi-main{flex:1;min-width:0}.hi-label{color:var(--text);font-size:12.5px;font-weight:600}.hi-detail{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.hi-act{color:var(--accent);border:1px solid var(--accent);font-size:11px;font-weight:700}@supports (color:color-mix(in lab,red,red)){.hi-act{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border))}}.hi-act{white-space:nowrap;border-radius:7px;padding:4px 9px;text-decoration:none}.hi-act:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hi-act:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.exec-live{grid-template-columns:1fr 1fr;gap:8px 18px;display:grid}.exec-row{align-items:baseline;gap:10px;min-width:0;display:flex}.exec-row .ex-k{text-transform:uppercase;letter-spacing:.4px;color:var(--text-faint);flex:0 0 84px;font-size:10.5px;font-weight:700}.exec-row .ex-v{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.exec-empty{flex-direction:column;gap:12px;display:flex}.exec-cta{flex-wrap:wrap;gap:8px;display:flex}.taskbar{color:inherit;text-decoration:none}.taskbar:hover .bl{color:var(--accent)}.bt-track{background:var(--bg-active);border-radius:5px;height:9px;overflow:hidden}.bt-track .bt{background:var(--accent);border-radius:5px;min-width:2px;height:100%;display:block}.agent-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:7px 0;display:flex}.agent-row:last-child{border-bottom:none}.ar-main{flex:1;min-width:0}.ar-top{align-items:center;gap:8px;display:flex}.ar-name{color:var(--text);font-size:12.5px;font-weight:600}.ar-model{color:var(--text-faint);font-size:10.5px}.ar-sub{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.alert-group{color:inherit;align-items:center;gap:9px;padding:7px 0;text-decoration:none;display:flex}.alert-group:hover .ag-text{color:var(--accent)}.ag-dot{background:var(--text-faint);border-radius:50%;flex:0 0 8px;width:8px;height:8px}.ag-dot.p0,.ag-dot.p1{background:var(--sx-keyword)}.ag-dot.p2,.ag-dot.p3{background:var(--sx-number)}.ag-dot.p4,.ag-dot.p5{background:var(--sx-property)}.ag-text{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12.5px;overflow:hidden}.ag-time{color:var(--text-faint);font-size:11px;font-family:var(--mono-font)}.problem-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:11px;padding:9px 0;display:flex}.problem-row:last-child{border-bottom:none}.prob-sev{text-transform:uppercase;letter-spacing:.4px;border-radius:6px;flex:none;padding:2px 7px;font-size:10px;font-weight:800}.prob-sev.high{color:var(--sx-keyword);background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.prob-sev.high{background:color-mix(in srgb,var(--sx-keyword) 16%,transparent)}}.prob-sev.med{color:var(--sx-number);background:var(--sx-number)}@supports (color:color-mix(in lab,red,red)){.prob-sev.med{background:color-mix(in srgb,var(--sx-number) 16%,transparent)}}.prob-sev.low{color:var(--text-dim);background:var(--bg-active)}.pr-main{flex:1;min-width:0}.pr-title{color:var(--text);font-size:12.5px;font-weight:600}.pr-impact{color:var(--text-dim);font-size:11.5px}.kb-stat{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px;display:grid}.kb-stat .ks{background:var(--bg-panel);border:1px solid var(--border-subtle);text-align:center;border-radius:10px;padding:10px}.kb-stat .ks-v{color:var(--text);font-size:18px;font-weight:800}.kb-stat .ks-v.warn{color:var(--sx-number)}.kb-stat .ks-k{color:var(--text-dim);margin-top:2px;font-size:10.5px}.integ-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:9px;padding:7px 0;display:flex}.integ-row:last-child{border-bottom:none}.integ-dot{background:var(--text-faint);border-radius:50%;flex:0 0 9px;width:9px;height:9px}.integ-dot.connected{background:var(--sx-string)}.integ-dot.needs-config{background:var(--sx-number)}.integ-dot.needs-login{background:var(--sx-property)}.integ-dot.error{background:var(--sx-keyword)}.integ-dot.disconnected{background:var(--text-faint)}.ir-name{color:var(--text);flex:none;font-size:12.5px}.ir-detail{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;overflow:hidden}.ir-status{color:var(--text-dim);font-size:11px}.lock-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:9px;padding:7px 0;display:flex}.lock-row:last-child{border-bottom:none}.lk-path{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11.5px;overflow:hidden}.lk-by{color:var(--text-dim);font-size:11px}@media (max-width:760px){.exec-live{grid-template-columns:1fr}}@media (max-width:1100px){.dash-grid>.dash-card{grid-column:span 6!important}}@media (max-width:680px){.dash-grid>.dash-card{grid-column:span 12!important}}.donut-wrap{flex:none;place-items:center;display:inline-grid;position:relative}.donut-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-num{color:var(--text);letter-spacing:-.5px;font-weight:800;line-height:1}.donut-sub{color:var(--text-faint);text-transform:uppercase;letter-spacing:.3px;margin-top:1px;font-size:9px}.donut-arc{transition:stroke-dasharray .6s cubic-bezier(.4,0,.2,1)}.spark{display:block;overflow:visible}.segbar{background:var(--bg-active);width:100%;display:flex;overflow:hidden}.segbar-seg{height:100%;transition:width .5s;display:block}.segbar-empty{background:var(--bg-active);width:100%}.stat-card{background:linear-gradient(180deg,var(--accent),var(--bg-elevated))}@supports (color:color-mix(in lab,red,red)){.stat-card{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 4%,var(--bg-elevated)),var(--bg-elevated))}}.sc-body{justify-content:space-between;align-items:center;gap:12px;display:flex}.sc-left{flex-direction:column;min-width:0;display:flex}.stat-num{color:var(--text);letter-spacing:-1.2px;font-size:34px;font-weight:800;line-height:1}.stat-of{color:var(--text-dim);letter-spacing:0;font-size:16px;font-weight:600}.sc-seg{margin:13px 0 9px}.stat-chips{color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:5px 12px;font-size:11.5px;display:flex}.stat-chips span{align-items:center;gap:5px;display:inline-flex}.stat-chips .bad{color:var(--sx-keyword);font-weight:700}.dotc{border-radius:50%;flex:0 0 7px;width:7px;height:7px;display:inline-block}.sc-foot{color:var(--text-faint);align-items:center;gap:6px;margin-top:9px;font-size:11px;display:flex}.hcard-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;display:grid}.hcard{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:12px;flex-direction:column;gap:7px;padding:11px 12px;transition:border-color .12s,transform .1s;display:flex}.hcard:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hcard:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}}.hcard:hover{transform:translateY(-1px)}.hc-top{align-items:center;gap:8px;display:flex}.hc-ic{background:var(--bg-active);width:26px;height:26px;color:var(--text-dim);border-radius:8px;flex:0 0 26px;place-items:center;display:grid}.hc-name{color:var(--text);font-size:12.5px;font-weight:700}.hc-detail{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.hc-foot{align-items:center;gap:8px;display:flex}.hc-foot .hi-act{margin-left:auto}.hc-badge{text-transform:uppercase;letter-spacing:.3px;color:var(--text-dim);background:var(--bg-active);border-radius:6px;padding:2px 7px;font-size:9.5px;font-weight:800}.hc-badge.healthy{color:var(--sx-string);background:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.hc-badge.healthy{background:color-mix(in srgb,var(--sx-string) 16%,transparent)}}.hc-badge.attention{color:var(--sx-number);background:var(--sx-number)}@supports (color:color-mix(in lab,red,red)){.hc-badge.attention{background:color-mix(in srgb,var(--sx-number) 16%,transparent)}}.hc-badge.error{color:var(--sx-keyword);background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.hc-badge.error{background:color-mix(in srgb,var(--sx-keyword) 16%,transparent)}}.hc-badge.needs-config{color:var(--sx-property);background:var(--sx-property)}@supports (color:color-mix(in lab,red,red)){.hc-badge.needs-config{background:color-mix(in srgb,var(--sx-property) 16%,transparent)}}.exec-panel{flex-direction:column;gap:12px;display:flex}.exec-head{background:var(--accent);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab,red,red)){.exec-head{background:color-mix(in srgb,var(--accent) 8%,var(--bg-panel))}}.exec-head{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.exec-head{border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border))}}.exec-goal{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.exec-agent,.exec-elapsed{color:var(--text-dim);font-size:12px}.exec-elapsed{margin-left:auto}.exec-grid{grid-template-columns:1fr 1fr;gap:8px 18px;display:grid}.exec-blank{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:22px 10px;display:flex}.exec-blank-ic{background:var(--bg-active);width:48px;height:48px;color:var(--text-dim);border-radius:14px;place-items:center;display:grid}.exec-blank-t{color:var(--text-dim);font-size:13px}.tasks-seg{margin:4px 0 14px}.tasks-rows{flex-direction:column;gap:1px;display:flex}.taskrow{color:inherit;border-radius:7px;grid-template-columns:12px 88px 1fr 66px;align-items:center;gap:9px;padding:5px 4px;text-decoration:none;display:grid}.taskrow:hover{background:var(--bg-hover)}.tr-dot{border-radius:50%;width:8px;height:8px}.tr-name{color:var(--text);font-size:12px}.tr-track{background:var(--bg-active);border-radius:5px;height:8px;overflow:hidden}.tr-fill{border-radius:5px;min-width:2px;height:100%;transition:width .5s;display:block}.tr-val{color:var(--text);text-align:right;font-size:12px;font-family:var(--mono-font)}.tr-pct{color:var(--text-faint)}.agent-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.agent-card{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:12px;gap:10px;padding:11px 12px;display:flex}.agent-card .ac-main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.ac-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ac-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:700;overflow:hidden}.ac-meta{align-items:center;gap:8px;display:flex}.ac-model{color:var(--text-faint);font-size:10.5px}.ac-cost{color:var(--sx-number);font-size:10.5px;font-family:var(--mono-font)}.ac-task{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ac-hb{color:var(--text-faint);align-items:center;gap:4px;font-size:10.5px;display:flex}.ag-badge{min-width:22px;height:22px;color:var(--text-dim);background:var(--bg-active);border-radius:7px;flex:none;place-items:center;padding:0 6px;font-size:11.5px;font-weight:800;display:inline-grid}.ag-badge.p0,.ag-badge.p1{color:var(--sx-keyword);background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.ag-badge.p0,.ag-badge.p1{background:color-mix(in srgb,var(--sx-keyword) 18%,transparent)}}.ag-badge.p2,.ag-badge.p3{color:var(--sx-number);background:var(--sx-number)}@supports (color:color-mix(in lab,red,red)){.ag-badge.p2,.ag-badge.p3{background:color-mix(in srgb,var(--sx-number) 18%,transparent)}}.ag-badge.p4,.ag-badge.p5{color:var(--sx-property);background:var(--sx-property)}@supports (color:color-mix(in lab,red,red)){.ag-badge.p4,.ag-badge.p5{background:color-mix(in srgb,var(--sx-property) 18%,transparent)}}.kb-body{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.kb-donut{flex-direction:column;flex:none;align-items:center;gap:10px;display:flex}.kb-legend{flex-direction:column;gap:3px;display:flex}.kb-leg{color:var(--text-dim);align-items:center;gap:6px;min-width:120px;font-size:11px;display:flex}.kb-leg b{color:var(--text);margin-left:auto}.kb-right{flex-direction:column;flex:1;gap:12px;min-width:240px;display:flex}.kb-tiles{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.kb-tiles .ks{background:var(--bg-panel);border:1px solid var(--border-subtle);text-align:center;border-radius:10px;padding:10px}.kb-tiles .ks-v{color:var(--text);font-size:18px;font-weight:800}.kb-tiles .ks-v.warn{color:var(--sx-number)}.kb-tiles .ks-k{color:var(--text-dim);margin-top:2px;font-size:10px}.integ-grid{flex-direction:column;gap:8px;display:flex}.integ-card{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:10px;align-items:center;gap:10px;padding:9px 11px;display:flex}.ic-ic{background:var(--bg-active);width:26px;height:26px;color:var(--text-dim);border-radius:8px;flex:0 0 26px;place-items:center;display:grid}.ic-main{flex:1;min-width:0}.ic-name{color:var(--text);font-size:12.5px;font-weight:600}.ic-detail{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.integ-chip{text-transform:uppercase;letter-spacing:.3px;color:var(--text-dim);background:var(--bg-active);border-radius:20px;flex:none;padding:2px 8px;font-size:10px;font-weight:700}.integ-chip.connected{color:var(--sx-string);background:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.integ-chip.connected{background:color-mix(in srgb,var(--sx-string) 16%,transparent)}}.integ-chip.needs-config{color:var(--sx-number);background:var(--sx-number)}@supports (color:color-mix(in lab,red,red)){.integ-chip.needs-config{background:color-mix(in srgb,var(--sx-number) 16%,transparent)}}.integ-chip.needs-login{color:var(--sx-property);background:var(--sx-property)}@supports (color:color-mix(in lab,red,red)){.integ-chip.needs-login{background:color-mix(in srgb,var(--sx-property) 16%,transparent)}}.integ-chip.error{color:var(--sx-keyword);background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.integ-chip.error{background:color-mix(in srgb,var(--sx-keyword) 16%,transparent)}}.kanban{align-items:flex-start;gap:14px;padding-bottom:12px;display:flex;overflow-x:auto}.kanban::-webkit-scrollbar{height:9px}.kanban::-webkit-scrollbar-track{background:0 0}.kanban::-webkit-scrollbar-thumb{background:var(--scroll-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:6px}.kanban::-webkit-scrollbar-thumb:hover{background:var(--text-faint);background-clip:padding-box}.kanban-fit{align-items:flex-start;gap:14px;display:flex;overflow-x:auto}.kanban-fit .kan-col{flex:1 0 230px;width:auto}.kan-col{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:12px;flex-direction:column;flex:0 0 252px;max-height:100%;display:flex}.kan-col-head{color:var(--text);border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;padding:11px 13px;font-size:12px;font-weight:700;display:flex}.kan-col-head .kc-count{background:var(--bg-active);color:var(--text-dim);border-radius:10px;margin-left:auto;padding:1px 7px;font-size:10.5px}.kan-col-head .kc-dot{border-radius:50%;width:8px;height:8px}.kan-cards{flex-direction:column;gap:9px;max-height:calc(100vh - 200px);padding:10px;display:flex;overflow:hidden auto}.kan-card{background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:11px;transition:border-color .12s,transform 80ms}.kan-card:hover{border-color:var(--accent);transform:translateY(-1px)}.kan-card .kk-id{font-family:var(--mono-font);color:var(--text-faint);font-size:10.5px}.kan-card .kk-title{color:var(--text);margin:5px 0 9px;font-size:12.5px;font-weight:500;line-height:1.4}.kan-card .kk-foot{align-items:center;gap:8px;display:flex}.kan-card .kk-prio{border-radius:50%;width:7px;height:7px}.kan-add{border:1px dashed var(--border);color:var(--text-dim);border-radius:9px;justify-content:center;align-items:center;gap:6px;margin:0 10px 10px;padding:8px;font-size:12px;display:flex}.kan-add:hover{color:var(--accent);border-color:var(--accent)}.detail-overlay{z-index:60;background:#0006;justify-content:flex-end;display:flex;position:absolute;inset:0}.theme-light .detail-overlay{background:#28324640}.detail-panel{background:var(--bg-editor);border-left:1px solid var(--border);width:460px;max-width:92%;height:100%;box-shadow:var(--shadow);animation:slidein .22s;overflow-y:auto}@keyframes slidein{0%{opacity:.5;transform:translate(30px)}}.detail-head{border-bottom:1px solid var(--border-subtle);padding:18px 20px}.detail-body{flex-direction:column;gap:18px;padding:18px 20px;display:flex}.detail-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin-bottom:8px;font-size:11px;font-weight:700}.accept-item{color:var(--text);align-items:flex-start;gap:9px;padding:4px 0;font-size:12.5px;display:flex}.accept-item .ck{color:var(--text-faint);margin-top:1px}.live-step{align-items:center;gap:9px;padding:6px 0;font-size:12.5px;display:flex}.live-step .ls-ico{flex:0 0 18px;place-items:center;width:18px;display:grid}.live-step.done{color:var(--text-dim)}.live-step.active{color:var(--text);font-weight:600}.live-step .spin,.live-step.active .ls-ico{color:var(--accent)}.live-step .spin{animation:spin 1.1s linear infinite;display:inline-flex}.live-stream .live-elapsed{font-variant-numeric:tabular-nums;color:var(--text-faint);font-size:11px}.live-more{color:var(--text-faint);margin-bottom:4px;font-size:10.5px}.live-stream-lines{flex-direction:column;gap:3px;max-height:150px;display:flex;overflow:hidden}.live-line{align-items:baseline;gap:8px;min-width:0;font-size:12px;line-height:1.45;display:flex}.live-line .ll-k{font-family:var(--mono-font);color:var(--accent);flex:none;font-size:10.5px}.live-line .ll-c{min-width:0;color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;flex:auto;overflow:hidden}.live-line.text .ll-c,.live-line.thinking .ll-c{color:var(--text);white-space:normal;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.live-line.error .ll-c,.live-line.error .ll-k{color:var(--sx-keyword)}.ll-caret{background:var(--accent);vertical-align:text-bottom;width:6px;height:12px;margin-left:2px;animation:pulse 1s step-end infinite;display:inline-block}.org-chart{flex-direction:column;gap:0;padding:10px 0 40px}.org-chart,.org-node{align-items:center;display:flex}.org-node{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;gap:11px;min-width:210px;padding:11px 16px 11px 11px;position:relative}.org-node.ceo{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.org-node.ceo{border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}}.org-node.ceo{box-shadow:var(--glow)}.org-node .on-name{color:var(--text);font-size:13.5px;font-weight:700}.org-node .on-role{color:var(--text-dim);font-size:11.5px}.org-level{flex-wrap:wrap;justify-content:center;gap:24px;display:flex}.org-connector{background:var(--border);width:2px;height:26px}.org-branch{flex-direction:column}.lrow,.org-branch{align-items:center;display:flex}.lrow{border:1px solid var(--border);background:var(--bg-elevated);border-radius:11px;gap:12px;padding:13px 16px}.lrow+.lrow{margin-top:9px}.lrow .lr-main{flex:1;min-width:0}.lrow .lr-title{color:var(--text);font-size:13px;font-weight:600}.lrow .lr-sub{color:var(--text-dim);margin-top:2px;font-size:11.5px}.lrow .lr-mono{font-family:var(--mono-font);color:var(--sx-operator);font-size:11.5px}.toggle{background:var(--bg-active);cursor:pointer;border-radius:12px;flex:0 0 36px;width:36px;height:20px;transition:background .15s;position:relative}.toggle.on{background:var(--accent)}.toggle:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle.on:after{transform:translate(16px)}.timeline{padding-left:8px;position:relative}.tl-item{gap:12px;padding-bottom:16px;display:flex;position:relative}.tl-item:before{content:"";background:var(--border);width:1.5px;position:absolute;top:30px;bottom:-2px;left:14px}.tl-item:last-child:before{display:none}.tl-time{font-family:var(--mono-font);flex:0 0 44px;padding-top:8px}.tl-text{color:var(--text);padding-top:7px;line-height:1.5}.logs-toolbar{border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;padding:6px 12px;display:flex}.log-line{font-family:var(--mono-font);gap:10px;padding:2px 0;font-size:12px;display:flex}.log-time{color:var(--text-faint);flex:0 0 64px}.log-lvl{text-transform:uppercase;flex:0 0 50px;padding-top:1px;font-size:10px;font-weight:700}.log-lvl.info{color:var(--sx-property)}.log-lvl.warn{color:var(--sx-number)}.log-lvl.error{color:var(--sx-keyword)}.log-lvl.debug{color:var(--text-faint)}.log-agent{color:var(--sx-function);flex:0 0 80px}.log-msg{color:var(--text-dim)}.goal-tree{flex-direction:column;gap:14px;display:flex}.goal-children,.goal-node{flex-direction:column;gap:12px;display:flex}.goal-children{padding-left:28px}.goal-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:15px 17px}.goal-card.child{border-left:3px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.goal-card.child{border-left:3px solid color-mix(in srgb,var(--accent) 40%,var(--border))}}.goal-filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:4px;display:flex}.goal-agent-sel{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);font-size:12px;font-family:var(--ui-font);border-radius:8px;padding:5px 9px}.goal-card.status-cancelled{opacity:.7;border-style:dashed}.goal-card.status-archived{opacity:.55}.goal-card.status-done{border-color:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.goal-card.status-done{border-color:color-mix(in srgb,var(--sx-string) 45%,var(--border))}}.goal-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.goal-title{flex:1;min-width:0;font-size:14px;font-weight:700}.goal-status-badge{text-transform:uppercase;letter-spacing:.05em;background:var(--bg-active);color:var(--text-dim);border-radius:6px;padding:2px 7px;font-size:9.5px;font-weight:700}.goal-status-badge.active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.goal-status-badge.active{background:color-mix(in srgb,var(--accent) 16%,transparent)}}.goal-status-badge.active{color:var(--accent)}.goal-status-badge.done{background:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.goal-status-badge.done{background:color-mix(in srgb,var(--sx-string) 16%,transparent)}}.goal-status-badge.done{color:var(--sx-string)}.goal-status-badge.cancelled{color:#e8688f;background:#e8688f29}.goal-status-badge.archived{color:var(--text-faint)}.goal-desc{color:var(--text-dim);margin-bottom:10px;font-size:12px}.goal-meta{color:var(--text-faint);margin-top:8px;font-size:11px}.goal-issues{border-top:1px solid var(--border-subtle);flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.goal-issue-empty{color:var(--text-faint);padding:4px 2px;font-size:12px}.goal-issue{align-items:flex-start;gap:10px;display:flex}.gi-key{font-family:var(--mono-font);color:var(--text-faint);background:var(--bg-active);border-radius:5px;flex:none;margin-top:2px;padding:1px 6px;font-size:11px}.gi-main{flex:1;min-width:0}.gi-title-row{align-items:center;gap:8px;display:flex}.gi-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12.5px;overflow:hidden}.gi-col{color:var(--text-dim);flex:none;gap:4px;font-size:10.5px;display:inline-flex}.gi-col,.gi-prog{align-items:center}.gi-prog{gap:8px;margin-top:5px;display:flex}.gi-bar{background:var(--bg-active);border-radius:3px;flex:1;height:5px;overflow:hidden}.gi-bar>span{background:var(--accent);border-radius:3px;height:100%;display:block}.gi-pct{color:var(--text-faint);font-size:10px;font-family:var(--mono-font);flex:none}.goal-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;display:flex}.goal-actions{gap:6px;display:flex}.goal-act{color:var(--text-dim);border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;border-radius:7px;align-items:center;gap:4px;padding:4px 9px;font-size:11px;font-weight:600;display:inline-flex}.goal-act:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.goal-act:disabled{opacity:.55;cursor:default}.goal-act.danger{color:#e8688f;border-color:#e8688f}@supports (color:color-mix(in lab,red,red)){.goal-act.danger{border-color:color-mix(in srgb,#e8688f 35%,var(--border))}}.goal-act.accent{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.goal-act.accent{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}}.finding{border:1px solid var(--border);background:var(--bg-elevated);border-radius:11px;padding:14px 16px}.finding+.finding{margin-top:10px}.kv{gap:10px;padding:4px 0;font-size:12.5px;display:flex}.kv .k{color:var(--text-dim);flex:0 0 120px}.kv .v{color:var(--text)}.gh-connect{text-align:center;flex-direction:column;align-items:center;gap:7px;padding:18px 6px;display:flex}.gh-connect-ico{background:var(--bg-elevated);border:1px solid var(--border);width:44px;height:44px;color:var(--accent);border-radius:12px;place-items:center;margin-bottom:4px;display:grid}.gh-connect-title{color:var(--text);font-size:13.5px;font-weight:700}.gh-connect-sub{color:var(--text-dim);margin-bottom:8px;font-size:11.5px;line-height:1.5}.gh-repo{background:var(--bg-elevated);border:1px solid var(--border);border-radius:9px;align-items:center;gap:9px;margin-bottom:10px;padding:8px 10px;display:flex}.gh-repo-main{flex:1;min-width:0}.gh-repo-name{color:var(--text);font-size:12.5px;font-weight:600;font-family:var(--mono-font)}.gh-repo-branch{color:var(--text-dim);align-items:center;gap:4px;margin-top:1px;font-size:11px;display:flex}.commit-assist{margin-bottom:8px;position:relative}.assist-btn{color:var(--accent);border:1px solid var(--accent);border-radius:7px;align-items:center;gap:6px;padding:5px 9px;font-size:11.5px;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.assist-btn{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border))}}.assist-btn{margin-top:6px}.assist-btn:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.assist-btn:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.assist-btn:disabled{opacity:.6}.assist-btn .spin{animation:spin 1.1s linear infinite;display:inline-flex}.assist-by{color:var(--text-faint);gap:6px;margin-top:8px;font-size:11px}.assist-by,.commit-progress{align-items:center;display:flex}.commit-progress{color:var(--text);background:var(--bg-elevated);border:1px solid var(--border);border-radius:9px;gap:8px;padding:8px 10px;font-size:12px}.commit-progress .spin{color:var(--accent);animation:spin 1.1s linear infinite;display:inline-flex}.rundebug{padding:10px 12px}.rd-launch{align-items:center;gap:8px;display:flex}.rd-select{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);font-size:12.5px;font-family:var(--ui-font);border-radius:7px;outline:none;flex:1;padding:7px 9px}.rd-select:focus{border-color:var(--accent)}.rd-play{background:var(--sx-string);color:#06140a;border-radius:7px;flex:0 0 32px;place-items:center;width:32px;height:32px;display:grid}.rd-play:hover{filter:brightness(1.1)}.rd-play .spin{animation:spin 1.1s linear infinite;display:inline-flex}.rd-cmd{color:var(--text-dim);margin:8px 2px 14px;font-size:11.5px}.rd-section{margin-bottom:12px}.rd-section-head{text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);align-items:center;gap:5px;padding:4px 0;font-size:11px;font-weight:700;display:flex}.rd-var{color:var(--text);padding:3px 0 3px 18px}.rd-bp,.rd-var{font-family:var(--mono-font);font-size:11.5px}.rd-bp{color:var(--text-dim);align-items:center;gap:7px;padding:3px 0 3px 4px;display:flex}.bp-dot{background:var(--sx-keyword);border-radius:50%;flex:0 0 9px;width:9px;height:9px}.bp-line{color:var(--text-faint)}.open-editors{border-bottom:1px solid var(--border-subtle);margin-bottom:4px;padding-bottom:6px}.oe-head{align-items:center;gap:6px;padding:6px 8px 4px 12px;display:flex}.oe-count{color:var(--text-faint);background:var(--bg-active);border-radius:8px;padding:0 6px;font-size:10.5px}.oe-head .side-act{margin-left:auto}.oe-row{height:var(--row-h);cursor:pointer;color:var(--text-dim);align-items:center;gap:7px;padding:0 8px 0 18px;font-size:13px;display:flex}.oe-row:hover{background:var(--bg-hover)}.oe-row.active{background:var(--bg-active);color:var(--text)}.oe-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.oe-close{width:18px;height:18px;color:var(--text-faint);opacity:0;border-radius:4px;place-items:center;display:grid}.oe-row:hover .oe-close{opacity:1}.oe-close:hover{background:var(--bg-active);color:var(--text)}.tb-menu-item{position:relative}.tb-menu-item.open{background:var(--bg-hover);color:var(--text)}.menu-dropdown{background:var(--bg-elevated);border:1px solid var(--border);min-width:200px;box-shadow:var(--shadow);z-index:200;-webkit-app-region:no-drag;border-radius:9px;margin-top:4px;padding:5px;position:absolute;top:100%;left:0}.menu-row{color:var(--text);cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:7px 10px;font-size:12.5px;display:flex}.menu-row:hover{background:var(--accent);color:var(--accent-fg)}.menu-row .mr-key{font-family:var(--mono-font);color:var(--text-faint);margin-left:auto;font-size:11px}.menu-row:hover .mr-key{color:var(--accent-fg);opacity:.8}.menu-sep{background:var(--border-subtle);height:1px;margin:5px 4px}.form-field{margin-bottom:4px}.form-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);margin-bottom:6px;font-size:11px;font-weight:700;display:block}.form-input{background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text);font-size:13px;font-family:var(--ui-font);border-radius:8px;outline:none;padding:9px 11px}.form-input.mono{font-family:var(--mono-font);font-size:12px}.form-input:focus{border-color:var(--accent)}.form-input[readonly]{color:var(--text-dim);background:var(--bg-panel)}.form-hint{color:var(--text-faint);align-items:center;gap:6px;font-size:11px}.form-actions,.form-hint{margin-top:6px;display:flex}.form-actions{gap:8px}.form-actions .spin{animation:spin 1.1s linear infinite;display:inline-flex}.seg{background:var(--bg-app);border:1px solid var(--border);border-radius:9px;gap:4px;padding:3px;display:flex}.seg-opt{color:var(--text-dim);border-radius:6px;flex:1;padding:7px 8px;font-size:12px;font-weight:600}.seg-opt.on{background:var(--accent);color:var(--accent-fg)}.seg-opt:hover:not(.on){color:var(--text)}.prov-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.prov-opt{border:1px solid var(--border);background:var(--bg-app);color:var(--text-dim);text-align:left;border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-size:12px;font-weight:600;display:flex}.prov-opt:hover{color:var(--text);border-color:var(--text-faint)}.prov-opt.on{border-color:var(--accent);color:var(--text);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.prov-opt.on{background:color-mix(in srgb,var(--accent) 13%,transparent)}}.prov-opt.on svg{color:var(--accent)}.oauth-btn{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:13px;font-weight:600;display:flex}.oauth-btn:hover{border-color:var(--accent)}.oauth-btn:disabled{opacity:.6}.oauth-btn .spin{animation:spin 1.1s linear infinite;display:inline-flex}.oauth-ok{color:var(--sx-string);background:var(--sx-string);align-items:center;gap:8px;font-size:12.5px;display:flex}@supports (color:color-mix(in lab,red,red)){.oauth-ok{background:color-mix(in srgb,var(--sx-string) 12%,transparent)}}.oauth-ok{border:1px solid var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.oauth-ok{border:1px solid color-mix(in srgb,var(--sx-string) 30%,transparent)}}.oauth-ok{border-radius:8px;padding:9px 11px}.link-btn{color:var(--accent);font-size:12px;font-weight:600}.link-btn:hover{text-decoration:underline}.settings{align-items:flex-start;gap:22px;display:flex}.settings-nav{flex-direction:column;flex:0 0 196px;gap:2px;display:flex;position:sticky;top:0}.settings-nav .sn-item{color:var(--text-dim);text-align:left;border-radius:9px;align-items:center;gap:10px;padding:9px 12px;font-size:13px;display:flex}.settings-nav .sn-item:hover{background:var(--bg-hover);color:var(--text)}.settings-nav .sn-item.on{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.settings-nav .sn-item.on{background:color-mix(in srgb,var(--accent) 16%,transparent)}}.settings-nav .sn-item.on{color:var(--text);font-weight:600}.settings-nav .sn-item.on svg{color:var(--accent)}.settings-nav .sn-item svg{color:var(--text-faint);flex:0 0 16px}.settings-panel{flex-direction:column;flex:1;gap:16px;min-width:0;display:flex}.set-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:13px;padding:18px 20px}.set-card h4{color:var(--text);margin-bottom:4px;font-size:14px;font-weight:700}.set-card .set-desc{color:var(--text-dim);margin-bottom:14px;font-size:12px}.set-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.set-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;padding:11px 0;display:flex}.set-row:last-child{border-bottom:none}.set-row .sr-main{flex:1;min-width:0}.set-row .sr-title{color:var(--text);font-size:13px;font-weight:500}.set-row .sr-sub{color:var(--text-dim);margin-top:1px;font-size:11.5px}.set-avatar{background:linear-gradient(150deg,var(--accent),#9a5cff);width:64px;height:64px;color:var(--accent-fg);border-radius:16px;flex:0 0 64px;place-items:center;font-size:24px;font-weight:800;display:grid}.avatar-upload{align-items:center;gap:14px;display:flex}.avatar-upload-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.token-pill{font-family:var(--mono-font);border:1px solid var(--border);color:var(--text-dim);border-radius:6px;padding:3px 8px;font-size:11.5px}.brand-ico,.token-pill{background:var(--bg-app)}.brand-ico{border:1px solid var(--border);width:34px;height:34px;color:var(--text);border-radius:9px;flex:0 0 34px;place-items:center;font-weight:700;display:grid}.danger-card{border-color:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.danger-card{border-color:color-mix(in srgb,var(--sx-keyword) 40%,var(--border))}}.btn-danger{background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.btn-danger{background:color-mix(in srgb,var(--sx-keyword) 18%,transparent)}}.btn-danger{color:var(--sx-keyword);border:1px solid var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.btn-danger{border:1px solid color-mix(in srgb,var(--sx-keyword) 40%,var(--border))}}.btn-danger{border-radius:8px;align-items:center;gap:7px;padding:7px 13px;font-size:12.5px;font-weight:700;display:inline-flex}.btn-danger:hover{background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.btn-danger:hover{background:color-mix(in srgb,var(--sx-keyword) 26%,transparent)}}.hint-toast{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);color:var(--text);z-index:90;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;animation:toastin .2s;display:flex;position:fixed;bottom:38px;left:50%;transform:translate(-50%)}@keyframes toastin{0%{opacity:0;transform:translate(-50%,8px)}}.app{height:100vh;color:var(--text);z-index:1;display:flex;position:relative;overflow:hidden}.app,.app-view .view,.view{background:0 0}@supports (color:color-mix(in lab,red,red)){.codemod-main{background:color-mix(in srgb,var(--bg-editor) 90%,transparent)}}.login-wrap,.onb{background:0 0!important}#root{z-index:1;position:relative}.side{background:var(--bg-panel);border-right:1px solid var(--border-subtle);flex-direction:column;flex:0 0 250px;width:250px;min-height:0;display:flex}.side-brand{align-items:center;gap:12px;padding:18px 18px 14px;display:flex}.side-brand .bm{background:linear-gradient(150deg,var(--accent),#9a5cff);width:36px;height:36px;color:var(--accent-fg);box-shadow:var(--glow);border-radius:10px;flex:0 0 36px;place-items:center;font-size:17px;font-weight:800;display:grid}.side-brand .bw{color:var(--text);letter-spacing:-.2px;font-size:15.5px;font-weight:800;line-height:1.1}.side-brand .bs{color:var(--text-dim);font-size:11px}.nav-search{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-faint);cursor:text;border-radius:9px;align-items:center;gap:8px;margin:0 14px 6px;padding:7px 10px;display:flex}.nav-search:focus-within{border-color:var(--accent)}.nav-search input{color:var(--text);font-family:var(--ui-font);background:0 0;border:none;outline:none;flex:1;font-size:12.5px}.nav-search input::placeholder{color:var(--text-faint)}.nav-search kbd{padding:1px 5px;font-size:10px}.side-nav{flex:1;padding:6px 10px 14px;overflow:hidden auto}.nav-group-label{text-transform:uppercase;letter-spacing:.7px;color:var(--text-faint);padding:12px 8px 5px;font-size:10px;font-weight:700}.nav-item{text-align:left;width:100%;color:var(--text-dim);border-radius:9px;align-items:center;gap:11px;margin-bottom:1px;padding:8px 10px;font-size:13px;display:flex;position:relative}.nav-item:hover{background:var(--bg-hover);color:var(--text)}.nav-item.active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.nav-item.active{background:color-mix(in srgb,var(--accent) 16%,transparent)}}.nav-item.active{color:var(--text);font-weight:600}.nav-item.active svg{color:var(--accent)}.nav-item svg{color:var(--text-faint);flex:0 0 18px}.nav-item .nv-dot{border-radius:50%;flex:0 0 7px;width:7px;height:7px}.nav-item .nv-badge,.nav-item .nv-dot{background:var(--accent);margin-left:auto}.nav-item .nv-badge{color:var(--accent-fg);border-radius:9px;place-items:center;min-width:16px;height:16px;padding:0 6px;font-size:10px;font-weight:700;display:grid}.side-foot{border-top:1px solid var(--border-subtle);align-items:center;gap:10px;padding:11px 12px;display:flex}.side-foot .pf{cursor:pointer;flex:1;min-width:0}.side-foot .pn{color:var(--text);font-size:12.5px;font-weight:700}.side-foot .pe{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.side-foot .foot-btn{width:30px;height:30px;color:var(--text-dim);border-radius:8px;place-items:center;display:grid}.side-foot .foot-btn:hover{background:var(--bg-hover);color:var(--text)}.app-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.app-top{border-bottom:1px solid var(--border-subtle);background:var(--bg-panel);flex:0 0 54px;gap:14px;height:54px;padding:0 20px}.app-crumb,.app-top{align-items:center;display:flex}.app-crumb{color:var(--text-dim);gap:8px;font-size:13px}.app-crumb .ci{color:var(--accent);display:inline-flex}.app-crumb b{color:var(--text);font-weight:700}.app-top-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.top-btn{width:36px;height:36px;color:var(--text-dim);border-radius:9px;place-items:center;display:grid;position:relative}.top-btn:hover{background:var(--bg-hover);color:var(--text)}.top-btn.on{color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.top-btn.on{background:color-mix(in srgb,var(--accent) 14%,transparent)}}.top-btn .nv-badge{background:var(--accent);place-items:center;min-width:14px;height:14px;padding:0 4px;font-size:9px;display:grid;position:absolute;top:3px;right:3px}.top-avatar,.top-btn .nv-badge{color:var(--accent-fg);border-radius:9px;font-weight:700}.top-avatar{background:linear-gradient(150deg,var(--accent),#9a5cff);width:32px;height:32px;place-items:center;margin-left:4px;font-size:11px;display:grid}.app-content{flex:1;overflow:hidden}.app-content,.app-view{min-height:0;display:flex}.app-view{flex-direction:column;flex:1;min-width:0}.app-view .view{background:0 0}.app-view:after{content:"";pointer-events:none;background:var(--bg-app);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.app-view:after{background:color-mix(in srgb,var(--bg-app) 38%,transparent)}}.app-view:after{z-index:-1}.app-view{position:relative}.codemod{flex:1;min-height:0;display:flex}.codemod-files{border-right:1px solid var(--border-subtle);background:var(--bg-panel);flex:0 0 240px;width:240px;padding-top:6px;overflow-y:auto}.codemod-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.codemod-main,.codemod-main .editor-wrap{background:var(--bg-editor)}.codemod-empty{color:var(--text-faint);flex:1;place-items:center;display:grid}.app-content .chat-dock{height:100%}.agent-studio{flex:1;min-height:0;display:flex}.as-list{border-right:1px solid var(--border-subtle);background:var(--bg-panel);flex:0 0 248px;width:248px;padding:8px;overflow-y:auto}.as-list-head{text-transform:uppercase;letter-spacing:.6px;color:var(--text-faint);padding:8px 8px 6px;font-size:10px;font-weight:700}.as-agent{cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:8px 9px;display:flex}.as-agent:hover{background:var(--bg-hover)}.as-agent.on{background:var(--bg-active)}.as-agent.on:before{content:"";position:absolute}.as-agent .am{flex:1;min-width:0}.as-agent .an{color:var(--text);font-size:13px;font-weight:600}.as-agent .ar{color:var(--text-dim);font-size:11px}.as-detail{background:0 0;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.as-head{padding:18px 24px 0}.as-hero{align-items:center;gap:14px;display:flex}.as-hero .ah-name{color:var(--text);font-size:19px;font-weight:800}.as-hero .ah-sub{color:var(--text-dim);font-size:12.5px}.as-tabs{border-bottom:1px solid var(--border-subtle);gap:4px;margin-top:16px;display:flex}.as-tab{color:var(--text-dim);border-bottom:2px solid #0000;padding:9px 14px;font-size:13px;font-weight:600}.as-tab.on,.as-tab:hover{color:var(--text)}.as-tab.on{border-bottom-color:var(--accent)}.as-body{flex:1;min-height:0;padding:20px 24px 40px;overflow-y:auto}.wf{flex-direction:column;gap:0;display:flex}.wf-step{gap:14px;padding-bottom:18px;display:flex;position:relative}.wf-step:before{content:"";background:var(--border);width:2px;position:absolute;top:30px;bottom:-2px;left:15px}.wf-step:last-child:before{display:none}.wf-dot{z-index:1;border:2px solid var(--border);background:var(--bg-elevated);width:32px;height:32px;color:var(--text-dim);border-radius:50%;flex:0 0 32px;place-items:center;font-size:12px;font-weight:700;display:grid}.wf-step.done .wf-dot{background:var(--sx-string);border-color:var(--sx-string);color:#06140a}.wf-step.active .wf-dot{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);box-shadow:var(--glow)}.wf-main{flex:1;padding-top:4px}.wf-title{color:var(--text);align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.wf-desc,.wf-step.done .wf-title{color:var(--text-dim)}.wf-desc{margin-top:2px;font-size:12px;line-height:1.5}.wf-tool{font-family:var(--mono-font);color:var(--sx-operator);font-size:11px}.wf-pill{text-transform:uppercase;letter-spacing:.3px;border-radius:10px;padding:1px 7px;font-size:10px;font-weight:700}.wf-pill.active{background:var(--accent);color:var(--accent-fg)}.wf-pill.done{background:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.wf-pill.done{background:color-mix(in srgb,var(--sx-string) 22%,transparent)}}.wf-pill.done{color:var(--sx-string)}.rag-src{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:10px 0;display:flex}.rag-src:last-child{border:none}.rag-ico{background:var(--bg-active);width:30px;height:30px;color:var(--accent);border-radius:8px;flex:0 0 30px;place-items:center;display:grid}.persona-field{margin-bottom:16px}.persona-ta{background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text);font-size:12.5px;line-height:1.6;font-family:var(--ui-font);resize:vertical;border-radius:9px;outline:none;min-height:70px;padding:11px 13px}.persona-ta.mono{font-family:var(--mono-font);font-size:12px}.persona-ta:focus{border-color:var(--accent)}.skill-pick{border-bottom:1px solid var(--border-subtle);align-items:center;gap:11px;padding:11px 0;display:flex}.skill-pick:last-child{border:none}.skill-pick .sp-main{flex:1}.orgcanvas-wrap{flex-direction:column;flex:1;min-height:0;display:flex}.orgcanvas-bar{border-bottom:1px solid var(--border-subtle);gap:10px;padding:10px 16px}.orgcanvas-bar,.orgcanvas-hint{align-items:center;display:flex}.orgcanvas-hint{color:var(--text-dim);gap:7px;font-size:12px}.orgcanvas{background:radial-gradient(circle at 1px 1px,var(--border-subtle) 1px,transparent 0) 0 0 /26px 26px,var(--bg-app);cursor:default;flex:1;min-height:0;position:relative;overflow:hidden}.org-card{background:var(--bg-elevated);border:1px solid var(--border);cursor:grab;-webkit-user-select:none;user-select:none;z-index:2;border-radius:12px;align-items:center;gap:10px;width:184px;padding:11px;display:flex;position:absolute;box-shadow:0 4px 14px -8px #00000080}.org-card.ceo{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.org-card.ceo{border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}}.org-card.ceo{box-shadow:var(--glow)}.org-card.dragging{cursor:grabbing;z-index:5;box-shadow:0 12px 30px -8px #0009}.org-card.linktarget{border-color:var(--accent);box-shadow:var(--glow)}.org-card .oc-name{color:var(--text);font-size:12.5px;font-weight:700}.org-card .oc-role{color:var(--text-dim);font-size:11px}.org-card .oc-link{background:var(--accent);width:20px;height:20px;color:var(--accent-fg);cursor:crosshair;opacity:0;border:2px solid var(--bg-app);border-radius:50%;place-items:center;transition:opacity .12s;display:grid;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)}.org-card:hover .oc-link{opacity:1}.org-card.linking .oc-link{opacity:1;background:var(--sx-string)}.org-svg{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;inset:0}.org-svg path{stroke:var(--text-faint);stroke-width:2px;fill:none}.org-svg path.temp{stroke:var(--accent);stroke-dasharray:5 4}.gh-mod{max-width:760px}.gh-hero{background:linear-gradient(135deg,var(--accent),var(--bg-elevated))}@supports (color:color-mix(in lab,red,red)){.gh-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 16%,var(--bg-elevated)),var(--bg-elevated))}}.gh-hero{border:1px solid var(--border);border-radius:14px;align-items:center;gap:16px;margin-bottom:18px;padding:20px 22px;display:flex}.gh-hero .ghh-ico{background:var(--bg-app);border:1px solid var(--border);width:52px;height:52px;color:var(--text);border-radius:13px;flex:0 0 52px;place-items:center;display:grid}.gh-hero .ghh-title{color:var(--text);font-size:16px;font-weight:800}.gh-hero .ghh-sub{color:var(--text-dim);margin-top:2px;font-size:12.5px}.gh-auth-tabs{gap:6px;margin-bottom:14px;display:flex}.gh-stat{border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;padding:10px 0;font-size:12.5px;display:flex}.gh-stat:last-child{border:none}.gh-stat .gs-file{font-family:var(--mono-font);color:var(--text);flex:1;font-size:12px}.gh-flow{align-items:center;gap:10px;margin:6px 0 16px;display:flex}.gh-flow .gf-node{text-align:center;background:var(--bg-app);border:1px solid var(--border);border-radius:10px;flex:1;padding:12px 8px}.gh-flow .gf-node .gf-t{color:var(--text);font-size:12px;font-weight:700}.gh-flow .gf-node .gf-s{color:var(--text-dim);font-size:10.5px}.gh-flow .gf-arrow{color:var(--accent);flex:none}.gh-progress-step{color:var(--text-dim);align-items:center;gap:10px;padding:7px 0;font-size:12.5px;display:flex}.gh-progress-step.on{color:var(--text)}.gh-progress-step.done .gp-ico{color:var(--sx-string)}.gh-progress-step .spin{color:var(--accent);animation:spin 1.1s linear infinite;display:inline-flex}.agent-do{background:var(--bg-app);border:1px dashed var(--accent);align-items:center;gap:11px;display:flex}@supports (color:color-mix(in lab,red,red)){.agent-do{border:1px dashed color-mix(in srgb,var(--accent) 40%,var(--border))}}.agent-do{border-radius:11px;margin-top:14px;padding:12px 14px}.codemod-files-head{align-items:center;gap:2px;padding:6px 8px 6px 14px;display:flex}.codemod-files-head .cf-title{text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);flex:1;font-size:11px;font-weight:700}.codemod-files-head .cf-act{width:24px;height:24px;color:var(--text-dim);border-radius:5px;place-items:center;display:grid}.codemod-files-head .cf-act:hover{background:var(--bg-hover);color:var(--text)}.ws-bar{border-bottom:1px solid var(--border-subtle);background:var(--bg-panel);gap:8px;padding:7px 12px}.ws-bar,.ws-chip{align-items:center;display:flex}.ws-chip{color:var(--text);gap:7px;font-size:12px;font-weight:600}.ws-chip .wc-ico{background:var(--accent);width:22px;height:22px;color:var(--accent-fg);border-radius:6px;place-items:center;display:grid}.ws-branch{color:var(--text-dim);align-items:center;gap:5px;font-size:11.5px;display:flex}.ws-spacer{flex:1}.ws-btn{color:var(--text-dim);border:1px solid var(--border);border-radius:7px;align-items:center;gap:6px;padding:5px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.ws-btn:hover{background:var(--bg-hover);color:var(--text)}.modal-overlay{z-index:120;background:#00000073;place-items:center;display:grid;position:fixed;inset:0}.theme-light .modal-overlay{background:#28324647}.modal{background:var(--bg-elevated);border:1px solid var(--border);width:420px;max-width:92vw;box-shadow:var(--shadow);border-radius:14px;animation:cmsgin .18s;overflow:visible}.modal-head{padding:16px 18px 6px}.modal-title{color:var(--text);align-items:center;gap:9px;font-size:15px;font-weight:800;display:flex}.modal-body{padding:8px 18px 16px}.modal-foot{border-top:1px solid var(--border-subtle);background:var(--bg-panel);border-bottom-right-radius:14px;border-bottom-left-radius:14px;justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.modal-hint{color:var(--text-faint);margin-top:8px;font-size:11.5px}.cat-overlay{z-index:130;background:#00000080;place-items:center;padding:30px;display:grid;position:fixed;inset:0}.theme-light .cat-overlay{background:#2832464d}.cat-modal{background:var(--bg-elevated);border:1px solid var(--border);width:1040px;max-width:96vw;height:86vh;box-shadow:var(--shadow);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.cat-head{border-bottom:1px solid var(--border-subtle);padding:18px 22px 14px}.cat-head-row{align-items:center;gap:12px;display:flex}.cat-title{color:var(--text);font-size:18px;font-weight:800}.cat-sub{color:var(--text-dim);margin-top:2px;font-size:12.5px}.cat-search{background:var(--bg-app);border:1px solid var(--border);color:var(--text-faint);border-radius:10px;align-items:center;gap:9px;margin-top:14px;padding:9px 12px;display:flex}.cat-search:focus-within{border-color:var(--accent)}.cat-search input{color:var(--text);font-family:var(--ui-font);background:0 0;border:none;outline:none;flex:1;font-size:13px}.cat-filters{border-bottom:1px solid var(--border-subtle);gap:16px;padding:12px 22px}.cat-fgroup,.cat-filters{flex-wrap:wrap;align-items:center;display:flex}.cat-fgroup{gap:6px}.cat-fgroup .fg-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-faint);margin-right:2px;font-size:10px;font-weight:700}.cat-chip{color:var(--text-dim);border:1px solid var(--border);background:var(--bg-app);white-space:nowrap;border-radius:20px;padding:4px 10px;font-size:11.5px;font-weight:600}.cat-chip:hover{color:var(--text);border-color:var(--text-faint)}.cat-chip.on{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.cat-grid{flex:1;grid-template-columns:repeat(2,1fr);align-content:start;gap:12px;padding:16px 22px 26px;display:grid;overflow-y:auto}.cat-card{background:var(--bg-app);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;padding:13px 14px;display:flex}.cat-card:hover{border-color:var(--text-faint)}.cat-card-top{align-items:center;gap:10px;display:flex}.cat-ico{background:var(--bg-elevated);border:1px solid var(--border);width:34px;height:34px;color:var(--accent);border-radius:9px;flex:0 0 34px;place-items:center;display:grid}.cat-name{color:var(--text);font-size:13.5px;font-weight:700}.cat-meta{color:var(--text-dim);margin-top:1px;font-size:11px}.cat-stat{white-space:nowrap;border-radius:12px;padding:2px 8px;font-size:10px;font-weight:700}.cat-notes{color:var(--text-dim);font-size:11.5px;line-height:1.45}.cat-caps{flex-wrap:wrap;gap:5px;display:flex}.cap-tag{color:var(--text-dim);background:var(--bg-elevated);border:1px solid var(--border-subtle);text-transform:uppercase;letter-spacing:.3px;border-radius:5px;padding:1px 6px;font-size:9.5px;font-weight:600}.cap-tag.sync{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.cap-tag.sync{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}}.cat-card-foot{align-items:center;gap:8px;margin-top:2px;display:flex}.cat-card-foot>.act-btn,.cat-card-foot>button{white-space:nowrap;flex:none}.cat-conn{flex-wrap:wrap;flex:1;gap:5px;min-width:0;display:flex}.conn-tag{background:var(--bg-elevated);border-radius:5px;padding:1px 6px;font-size:9.5px}.cat-empty,.conn-tag{color:var(--text-faint)}.cat-empty{text-align:center;grid-column:1/-1;padding:40px;font-size:13px}.cat-count{color:var(--text-dim);margin-left:auto;font-size:11.5px}.tbl .gstat-cell{align-items:center;gap:6px;display:inline-flex}.status-dot{border-radius:50%;flex:0 0 7px;width:7px;height:7px}.row-actions{gap:4px}.act-btn{width:auto;min-width:0;height:auto;color:var(--text-dim);border:1px solid var(--border);background:var(--bg-app);white-space:nowrap;border-radius:6px;align-items:center;gap:5px;padding:4px 9px;font-size:11px;font-weight:600;line-height:1.4;display:inline-flex}.act-btn:hover{color:var(--text);border-color:var(--text-faint)}.act-btn.accent{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.act-btn.accent{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.act-btn.danger{color:var(--sx-keyword);border-color:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.act-btn.danger{border-color:color-mix(in srgb,var(--sx-keyword) 40%,var(--border))}}.act-btn:disabled{opacity:.4}.sync-spin{color:var(--accent);animation:spin 1s linear infinite;display:inline-flex}.models-pop{z-index:140;background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;width:360px;max-height:60vh;padding:6px;position:fixed;overflow-y:auto}.models-pop .mp-head{color:var(--text);border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;padding:10px 12px 8px;font-size:12px;font-weight:700;display:flex}.models-pop .mp-row{font-family:var(--mono-font);color:var(--text-dim);border-radius:7px;align-items:center;gap:8px;padding:7px 12px;font-size:11.5px;display:flex}.models-pop .mp-row:hover{background:var(--bg-hover);color:var(--text)}.budget{margin-top:4px}.budget-top{align-items:baseline;gap:6px;margin-bottom:6px;display:flex}.budget-spent{color:var(--text);font-size:18px;font-weight:800}.budget-cap{color:var(--text-dim);font-size:12px}.budget-pct{border-radius:10px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:700}.budget-track{background:var(--bg-active);border-radius:5px;height:8px;overflow:hidden}.budget-fill{border-radius:5px;height:100%;transition:width .3s}.budget-note{align-items:center;gap:6px;margin-top:6px;font-size:11px;display:flex}.budget-note.ok{color:var(--text-faint)}.budget-note.warn{color:#f0a35e}.budget-note.crit{color:#e8688f}.budget-row{grid-template-columns:130px 1fr 96px;align-items:center;gap:12px;padding:7px 0;display:grid}.budget-row .br-name{color:var(--text);align-items:center;gap:8px;font-size:12.5px;display:flex}.budget-row .br-val{text-align:right;font-family:var(--mono-font);color:var(--text-dim);font-size:11.5px}.temp-wrap{padding:2px 0}.temp-head{align-items:center;margin-bottom:8px;display:flex}.temp-val{font-family:var(--mono-font);color:var(--accent);margin-left:auto;font-size:12px;font-weight:700}input[type=range].temp-range{appearance:none;background:linear-gradient(90deg,var(--sx-property),var(--accent),var(--sx-keyword));border-radius:4px;outline:none;width:100%;height:6px}input[type=range].temp-range::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--accent);cursor:pointer;background:#fff;border-radius:50%;width:18px;height:18px;box-shadow:0 2px 6px #0006}input[type=range].temp-range::-moz-range-thumb{border:2px solid var(--accent);cursor:pointer;background:#fff;border-radius:50%;width:16px;height:16px}.temp-scale{color:var(--text-faint);justify-content:space-between;margin-top:6px;font-size:10.5px;display:flex}.temp-desc{color:var(--text-dim);align-items:center;gap:7px;margin-top:8px;font-size:11.5px;line-height:1.5;display:flex}.temp-desc .ti{color:var(--accent);flex:none;margin-top:1px}.rag-map{border:1px solid var(--border-subtle);background:radial-gradient(circle at 1px 1px,var(--border-subtle) 1px,transparent 0) 0 0 /22px 22px,var(--bg-app);border-radius:12px;height:230px;margin:8px 0 18px;position:relative;overflow:hidden}.rag-core{background:radial-gradient(circle,var(--accent),var(--bg-elevated));border-radius:50%;width:92px;height:92px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@supports (color:color-mix(in lab,red,red)){.rag-core{background:radial-gradient(circle,color-mix(in srgb,var(--accent) 40%,var(--bg-elevated)),var(--bg-elevated))}}.rag-core{border:1px solid var(--accent);text-align:center;box-shadow:var(--glow);z-index:2;place-items:center;display:grid}.rag-core .rc-t{color:var(--text);font-size:11px;font-weight:800}.rag-core .rc-s{color:var(--text-dim);font-size:9.5px}.rag-node{background:var(--bg-elevated);border:1px solid var(--border);z-index:2;border-radius:10px;width:116px;padding:7px 9px;position:absolute;transform:translate(-50%,-50%)}.rag-node.off{opacity:.42;border-style:dashed}.rag-node .rn-t{color:var(--text);align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:flex}.rag-node .rn-s{color:var(--text-dim);margin-top:1px;font-size:10px}.rag-svg{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.rag-svg line{stroke:var(--accent)}@supports (color:color-mix(in lab,red,red)){.rag-svg line{stroke:color-mix(in srgb,var(--accent) 45%,transparent)}}.rag-svg line{stroke-width:1.5px}.rag-svg line.off{stroke:var(--border);stroke-dasharray:4 4}.onb{z-index:200;background:var(--bg-app);flex-direction:column;display:flex;position:fixed;inset:0}.onb-top{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;height:60px;padding:0 26px;display:flex}.onb-close{width:32px;height:32px;color:var(--text-dim);border:1px solid var(--border-subtle);background:var(--bg-panel);cursor:pointer;border-radius:9px;place-items:center;margin-left:auto;display:grid}.onb-close:hover{color:var(--text);background:var(--bg-hover)}.req{color:#e8688f;margin-left:2px;font-weight:700}.onb-brand{align-items:center;gap:11px;display:flex}.onb-brand .bm{background:linear-gradient(150deg,var(--accent),#9a5cff);width:34px;height:34px;color:var(--accent-fg);box-shadow:var(--glow);border-radius:9px;place-items:center;font-size:16px;font-weight:800;display:grid}.onb-brand .bw{color:var(--text);font-size:15px;font-weight:800}.onb-steps{margin-left:auto}.onb-stepdot,.onb-steps{align-items:center;gap:6px;display:flex}.onb-stepdot{color:var(--text-faint);font-size:11.5px}.onb-stepdot .num{background:var(--bg-active);border-radius:50%;place-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:grid}.onb-stepdot.on{color:var(--text)}.onb-stepdot.on .num{background:var(--accent);color:var(--accent-fg)}.onb-stepdot.done .num{background:var(--sx-string);color:#06140a}.onb-sep{background:var(--border);width:22px;height:1px}.onb-body{flex:1;place-items:center;padding:30px;display:grid;overflow-y:auto}.onb-card{width:600px;max-width:94vw}.onb-h{color:var(--text);letter-spacing:-.3px;font-size:24px;font-weight:800}.onb-sub{color:var(--text-dim);margin:6px 0 22px;font-size:13px;line-height:1.5}.onb-foot{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.track{flex-direction:column;gap:0;margin:8px 0;display:flex}.track-step{gap:14px;padding-bottom:20px;display:flex;position:relative}.track-step:before{content:"";background:var(--border);width:2px;position:absolute;top:36px;bottom:-2px;left:17px}.track-step:last-child:before{display:none}.track-ico{background:var(--bg-elevated);border:2px solid var(--border);width:36px;height:36px;color:var(--text-faint);z-index:1;border-radius:50%;flex:0 0 36px;place-items:center;display:grid}.track-step.done .track-ico{background:var(--sx-string);border-color:var(--sx-string);color:#06140a}.track-step.on .track-ico{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);box-shadow:var(--glow)}.track-step.on .track-ico .spin{animation:spin 1.1s linear infinite;display:inline-flex}.track-main{padding-top:6px}.track-t{color:var(--text);font-size:14px;font-weight:700}.track-d,.track-step.todo .track-t{color:var(--text-dim)}.track-d{margin-top:2px;font-size:12px}.onb-mono{background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--mono-font);resize:vertical;border-radius:10px;outline:none;min-height:120px;padding:12px;font-size:12px;line-height:1.6}.onb-mono:focus{border-color:var(--accent)}.onb-drop{border:1.5px dashed var(--border);text-align:center;color:var(--text-dim);cursor:pointer;border-radius:11px;padding:18px;font-size:12.5px}.onb-drop:hover{border-color:var(--accent);color:var(--text)}.onb-drop.has{border-style:solid;border-color:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.onb-drop.has{border-color:color-mix(in srgb,var(--sx-string) 45%,var(--border))}}.onb-drop.has{color:var(--text)}.ragm{grid-template-columns:1fr;gap:14px;margin:6px 0 18px;display:grid}.ragm-stats{gap:10px;display:flex}.ragm-stat{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;flex:1;padding:9px 12px}.ragm-stat .rs-n{color:var(--text);font-size:18px;font-weight:800}.ragm-stat .rs-l{color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;font-size:10.5px}.ragm-canvas{border:1px solid var(--border-subtle);background:radial-gradient(circle at 1px 1px,var(--border-subtle) 1px,transparent 0) 0 0 /20px 20px,var(--bg-app);border-radius:13px;height:280px;position:relative;overflow:hidden}.ragm-svg{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ragm-core{z-index:3;background:radial-gradient(circle,var(--accent),var(--bg-elevated));border-radius:50%;width:78px;height:78px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@supports (color:color-mix(in lab,red,red)){.ragm-core{background:radial-gradient(circle,color-mix(in srgb,var(--accent) 45%,var(--bg-elevated)),var(--bg-elevated))}}.ragm-core{border:1px solid var(--accent);text-align:center;box-shadow:var(--glow);place-items:center;display:grid}.ragm-core .rc-t{color:var(--text);font-size:11px;font-weight:800}.ragm-core .rc-s{color:var(--text-dim);font-size:9px}.ragm-node{z-index:2;cursor:pointer;border:1.5px solid var(--bg-app);border-radius:50%;transition:transform .12s;position:absolute;transform:translate(-50%,-50%)}.ragm-node:hover{z-index:6;transform:translate(-50%,-50%)scale(1.4)}.ragm-tip{z-index:7;background:var(--bg-elevated);border:1px solid var(--border);white-space:nowrap;box-shadow:var(--shadow);pointer-events:none;border-radius:8px;padding:6px 9px;position:absolute;transform:translate(-50%,-125%)}.ragm-tip .tt-t{color:var(--text);font-size:11.5px;font-weight:700;font-family:var(--mono-font)}.ragm-tip .tt-s{color:var(--text-dim);font-size:10.5px}.ragm-legend{z-index:3;background:var(--bg-app);flex-direction:column;gap:4px;display:flex;position:absolute;top:12px;right:12px}@supports (color:color-mix(in lab,red,red)){.ragm-legend{background:color-mix(in srgb,var(--bg-app) 80%,transparent)}}.ragm-legend{border:1px solid var(--border-subtle);border-radius:9px;padding:7px 9px}.ragm-legend .lg{color:var(--text-dim);align-items:center;gap:6px;font-size:10.5px;display:flex}.ragm-legend .lg .dot{border-radius:50%;flex:0 0 8px;width:8px;height:8px}.ragm-docs{border:1px solid var(--border-subtle);border-radius:11px;max-height:230px;overflow:hidden auto}.ragm-doc{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:9px 12px;display:flex}.ragm-doc:last-child{border-bottom:none}.ragm-doc:hover{background:var(--bg-hover)}.ragm-doc .rd-t{font-family:var(--mono-font);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;overflow:hidden}.ragm-doc .rd-chunks{color:var(--text-dim);white-space:nowrap;font-size:11px}.ragm-doc .rd-bar{background:var(--bg-active);border-radius:3px;flex:0 0 64px;width:64px;height:5px;overflow:hidden}.ragm-doc .rd-bar i{border-radius:3px;height:100%;display:block}.src-chip{text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;border-radius:10px;padding:2px 7px;font-size:9.5px;font-weight:700}.wf-step.running .wf-dot{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);box-shadow:var(--glow)}.wf-step.running .wf-dot .spin{animation:spin 1.1s linear infinite;display:inline-flex}.wf-progress{background:var(--bg-active);border-radius:3px;height:4px;margin-top:8px;overflow:hidden}.wf-progress i{background:linear-gradient(90deg,var(--accent),#9a5cff);border-radius:3px;height:100%;transition:width .25s linear;display:block}.wf-live{font-family:var(--mono-font);color:var(--accent);align-items:center;gap:6px;margin-top:6px;font-size:11px;display:flex}.wf-live .cursor{background:var(--accent);border-radius:1px;width:7px;height:13px;animation:blink 1s step-end infinite}.wf-step.running .wf-title{color:var(--text)}.wf-runbar{white-space:nowrap;background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:10px;flex-wrap:nowrap;align-items:center;gap:10px;margin-bottom:14px;padding:9px 13px;display:flex}.wf-runbar .rb-pulse{background:var(--sx-string);border-radius:50%;flex:0 0 8px;width:8px;height:8px;animation:pulse 1.6s infinite}@keyframes pulse{50%{opacity:.5}}.wf-runbar .rb-btn{color:var(--text-dim);border:1px solid var(--border);border-radius:7px;margin-left:auto;padding:4px 9px;font-size:11.5px;font-weight:600}.wf-runbar .rb-btn:hover{color:var(--text);background:var(--bg-hover)}.org-card .oc-unlink{background:var(--sx-keyword);color:#fff;cursor:pointer;opacity:0;border:2px solid var(--bg-app);border-radius:50%;place-items:center;width:20px;height:20px;transition:opacity .12s;display:grid;position:absolute;top:-9px;right:-9px}.org-card:hover .oc-unlink{opacity:1}.dd{width:100%;position:relative}.dd-btn{background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text);font-size:13px;font-family:var(--ui-font);text-align:left;border-radius:8px;align-items:center;gap:8px;padding:9px 11px;transition:border-color .12s;display:flex}.dd-btn.mono{font-family:var(--mono-font);font-size:12px}.dd-btn:hover,.dd.open .dd-btn{border-color:var(--accent)}.dd.disabled{opacity:.55;pointer-events:none}.dd-val{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dd-ph{color:var(--text-faint)}.dd-btn>svg:last-child{color:var(--text-dim);flex:none;transition:transform .15s}.dd.open .dd-btn>svg:last-child{transform:rotate(180deg)}.dd-menu{z-index:130;background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;max-height:300px;padding:5px;animation:ddin .12s;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto}@keyframes ddin{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.dd-opt{width:100%;color:var(--text);text-align:left;border-radius:7px;align-items:center;gap:9px;padding:8px 9px;display:flex}.dd-opt:hover{background:var(--bg-hover)}.dd-opt.on{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dd-opt.on{background:color-mix(in srgb,var(--accent) 15%,transparent)}}.dd-opt.on>svg:last-child{color:var(--accent);flex:none}.dd-opt-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.dd-opt-label{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.dd-opt-label.mono{font-family:var(--mono-font);font-size:12px}.dd-opt-sub{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.dd-opt-tag{text-transform:uppercase;letter-spacing:.3px;background:var(--bg-active);color:var(--text-dim);border-radius:9px;flex:none;padding:1px 6px;font-size:9.5px;font-weight:700}.dd-empty{color:var(--text-faint);text-align:center;padding:10px;font-size:12px}.tbl-wrap{border-radius:10px;width:100%;overflow:auto visible}.tbl-wrap .tbl{min-width:720px}.tbl-wrap::-webkit-scrollbar{height:8px}.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:230px;margin-left:auto;display:flex}.iact,.row-actions .act-btn{background:var(--bg-elevated)}.iact{border:1px solid var(--border);width:30px;height:30px;color:var(--text-dim);cursor:pointer;border-radius:8px;flex:none;place-items:center;transition:color .12s,border-color .12s,background .12s;display:grid}.iact:hover{color:var(--text);border-color:var(--text-faint);background:var(--bg-hover)}.iact.accent{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.iact.accent{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.iact.accent:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.iact.accent:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.iact.danger{color:var(--sx-keyword);border-color:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.iact.danger{border-color:color-mix(in srgb,var(--sx-keyword) 35%,var(--border))}}.iact.danger:hover{background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.iact.danger:hover{background:color-mix(in srgb,var(--sx-keyword) 12%,transparent)}}.iact:disabled{opacity:.45;cursor:default}.row-del{width:20px;height:20px;color:var(--text-faint);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:5px;flex:none;place-items:center;margin-left:auto;display:grid}.folder-item:hover .row-del,.row.dir:hover .row-del,.row.file:hover .row-del{opacity:1}.row-del:hover{color:var(--sx-keyword);background:var(--sx-keyword)}@supports (color:color-mix(in lab,red,red)){.row-del:hover{background:color-mix(in srgb,var(--sx-keyword) 14%,transparent)}}.seg-nav{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:11px;gap:4px;width:fit-content;max-width:100%;margin-bottom:20px;padding:4px;display:flex;overflow-x:auto}.seg-nav-btn{color:var(--text-dim);white-space:nowrap;border-radius:8px;align-items:center;gap:8px;padding:8px 15px;font-size:13px;font-weight:600;display:flex}.seg-nav-btn:hover{color:var(--text);background:var(--bg-hover)}.seg-nav-btn.on{background:var(--accent);color:var(--accent-fg)}.seg-nav-btn .sn-badge{background:var(--text);border-radius:9px;place-items:center;min-width:16px;height:16px;padding:0 6px;font-size:10px;font-weight:700;display:grid}@supports (color:color-mix(in lab,red,red)){.seg-nav-btn .sn-badge{background:color-mix(in srgb,var(--text) 12%,transparent)}}.seg-nav-btn.on .sn-badge{color:var(--accent-fg);background:#0000002e}.lr-grid{margin-bottom:22px}.lr-grid,.pd-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.pd-grid{align-items:start}@media (max-width:1100px){.pd-grid{grid-template-columns:1fr}}.pd-steps{color:var(--text-dim);flex-direction:column;gap:4px;margin:8px 0 12px;padding-left:20px;font-size:12px;display:flex}.pd-result{border-top:1px solid var(--border-subtle);margin-top:12px;padding-top:10px}.pd-log{background:var(--bg-app);border:1px solid var(--border-subtle);font-family:var(--mono-font);white-space:pre-wrap;max-height:220px;color:var(--text-dim);border-radius:8px;margin:0;padding:10px 12px;font-size:10.5px;line-height:1.6;overflow:auto}.pd-page{flex-direction:column;gap:16px;display:flex}.pd-cols{grid-template-columns:1.25fr 1fr;align-items:stretch;gap:16px;display:grid}.pd-col{flex-direction:column;gap:16px;min-width:0;display:flex}@media (max-width:1100px){.pd-cols{grid-template-columns:1fr}}.pd-hero{align-items:flex-start;gap:14px;display:flex}.pd-hero .hw-ic{flex:0 0 44px;width:44px;height:44px}.pd-hero-body{flex:1;min-width:0}.pd-hero-top{align-items:center;gap:10px;display:flex}.pd-hero-top .hw-t{font-size:18px;font-weight:800}.pd-pill{text-transform:uppercase;letter-spacing:.3px;border-radius:20px;padding:2px 9px;font-size:11px;font-weight:700}.pd-hero-meta{color:var(--text-dim);flex-wrap:wrap;gap:6px 16px;margin-top:7px;font-size:12px;display:flex}.pd-hero-meta span{align-items:center;gap:5px;display:inline-flex}.pd-hero-actions{flex-direction:column;flex:none;gap:8px;display:flex}@media (max-width:720px){.pd-hero{flex-wrap:wrap}.pd-hero-actions{flex-flow:wrap}}.pd-checklist{flex-direction:column;gap:2px;display:flex}.pd-chk-row{color:var(--text);border-radius:8px;align-items:center;gap:9px;padding:7px 8px;font-size:12.5px;display:flex}.pd-chk-row:hover{background:var(--bg-hover)}.pd-chk-label{flex:1;min-width:0}.pd-chk-detail{color:var(--text-faint);font-size:11px;font-family:var(--mono-font);white-space:nowrap}.pd-env-grid{grid-template-columns:auto 1fr;align-items:baseline;gap:7px 16px;display:grid}.pd-env-k{text-transform:uppercase;letter-spacing:.4px;color:var(--text-faint);font-size:10.5px;font-weight:700}.pd-env-v{color:var(--text);word-break:break-word;font-size:12.5px}.pd-env-v.mono{font-family:var(--mono-font);font-size:11.5px}.pd-env-vars{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;display:flex}.pd-env-vars .pa-flabel{width:100%;margin-bottom:2px}.pd-var{font-family:var(--mono-font);background:var(--bg-app);border:1px solid var(--border-subtle);color:var(--text-dim);border-radius:6px;padding:2px 7px;font-size:11px}.pd-var.warn{color:var(--sx-number);border-color:var(--sx-number)}@supports (color:color-mix(in lab,red,red)){.pd-var.warn{border-color:color-mix(in srgb,var(--sx-number) 40%,var(--border))}}.pd-gate{color:#e8688f;background:#e8688f1a;border:1px solid #e8688f59;border-radius:10px;padding:9px 11px;font-weight:600}.pd-gate,.pd-ok{align-items:center;gap:8px;font-size:12.5px;display:flex}.pd-ok,.pd-pkg-meta{color:var(--text-dim)}.pd-pkg-meta{flex-wrap:wrap;gap:8px 18px;font-size:12px;display:flex}.pd-pkg-meta b{color:var(--text);font-weight:700}.pd-pkg-docs{color:var(--text-dim);align-items:center;gap:6px;margin-top:10px;font-size:12px}.pd-pkg-docs,.pd-quick{flex-wrap:wrap;display:flex}.pd-quick{gap:8px}.pd-quick .btn-ghost{font-size:12px}@media (max-width:1100px){.lr-grid{grid-template-columns:1fr}}.hw-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:18px 20px}.hw-head{align-items:center;gap:10px;margin-bottom:14px;display:flex}.hw-head .hw-ic{background:var(--bg-app);border:1px solid var(--border);width:38px;height:38px;color:var(--accent);border-radius:10px;flex:0 0 38px;place-items:center;display:grid}.hw-head .hw-t{color:var(--text);font-size:14px;font-weight:700}.hw-head .hw-s{color:var(--text-dim);font-size:11.5px}.hw-rows{grid-template-columns:1fr 1fr;gap:10px 18px;display:grid}.hw-item .hi-k{text-transform:uppercase;letter-spacing:.4px;color:var(--text-faint);font-size:10.5px;font-weight:700}.hw-item .hi-v{color:var(--text);margin-top:2px;font-size:13px}.hw-badges{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.hw-badge{background:var(--sx-string);border-radius:20px;padding:3px 9px;font-size:11px;font-weight:600}@supports (color:color-mix(in lab,red,red)){.hw-badge{background:color-mix(in srgb,var(--sx-string) 16%,transparent)}}.hw-badge{color:var(--sx-string)}.srv-status{align-items:center;gap:12px;margin-bottom:16px;display:flex}.srv-dot{border-radius:50%;flex:0 0 10px;width:10px;height:10px}.srv-dot.run{background:var(--sx-string);box-shadow:0 0 0 4px var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.srv-dot.run{box-shadow:0 0 0 4px color-mix(in srgb,var(--sx-string) 20%,transparent)}}.srv-dot.run{animation:pulse 2s infinite}.srv-dot.stop{background:var(--text-faint)}.srv-dot.boot{background:#f0a35e;animation:pulse 1s infinite;box-shadow:0 0 0 4px #f0a35e38}.srv-meta{flex:1}.srv-meta .sm-t{color:var(--text);font-size:14px;font-weight:700}.srv-meta .sm-s{color:var(--text-dim);font-size:12px;font-family:var(--mono-font)}.srv-stats{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:4px;display:grid}.srv-stat{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:9px;padding:9px 11px}.srv-stat .ss-v{color:var(--text);font-size:16px;font-weight:800}.srv-stat .ss-k{color:var(--text-dim);font-size:10.5px}.srv-log{background:var(--bg-app);border:1px solid var(--border-subtle);font-family:var(--mono-font);border-radius:9px;max-height:110px;margin-top:14px;padding:10px 12px;font-size:11px;line-height:1.7;overflow-y:auto}.srv-log .lg-ok{color:var(--sx-string)}.srv-log .lg-dim{color:var(--text-faint)}.srv-log .lg-warn{color:#f0a35e}.tdb-card{margin-top:18px}.tdb-vp{background:var(--bg-app);border:1px solid var(--border);border-radius:8px;gap:2px;padding:2px;display:inline-flex}.tdb-vp-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 9px;font-size:11px;font-weight:600}.tdb-vp-btn:hover:not(:disabled){color:var(--text)}.tdb-vp-btn.on{background:var(--accent);color:var(--accent-fg)}.tdb-vp-btn:disabled{opacity:.45;cursor:not-allowed}.tdb-bar{background:var(--bg-app);border:1px solid var(--border);border-bottom:none;border-radius:10px 10px 0 0;align-items:center;gap:9px;margin-top:14px;padding:8px 11px;display:flex}.tdb-dots{gap:5px;padding-right:4px;display:flex}.tdb-dots span{background:var(--border);border-radius:50%;width:10px;height:10px}.tdb-dots span:first-child{background:#e8688f}.tdb-dots span:nth-child(2){background:#d98a2b}.tdb-dots span:nth-child(3){background:var(--sx-string)}.tdb-ico{background:var(--bg-elevated);border:1px solid var(--border);width:28px;height:28px;color:var(--text-dim);cursor:pointer;border-radius:7px;place-items:center;display:inline-grid}.tdb-ico:hover:not(:disabled):not(.off){color:var(--text);border-color:var(--text-faint)}.tdb-ico.off,.tdb-ico:disabled{opacity:.4;cursor:default;pointer-events:none}.tdb-addr{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-faint);border-radius:8px;flex:1;align-items:center;gap:8px;min-width:0;padding:6px 11px;display:flex}.tdb-addr input{min-width:0;color:var(--text);font-family:var(--mono-font);background:0 0;border:none;outline:none;flex:1;font-size:12px}.tdb-stage{border:1px solid var(--border);background:#fff;border-radius:0 0 12px 12px;justify-content:center;height:560px;display:flex;overflow:auto}.tdb-frame{background:#fff;border:none;height:100%}.tdb-empty{background:var(--bg-app);width:100%;color:var(--text-dim);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.tdb-empty-ic{color:var(--text-faint);margin-bottom:4px}.tdb-empty-ic.spin{animation:spin 1s linear infinite}.tdb-empty-t{color:var(--text);font-size:14px;font-weight:700}.tdb-empty-s{color:var(--text-faint);font-size:12px}.dl-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;align-items:center;gap:13px;padding:13px 15px;display:flex}.dl-card.unfit{opacity:.62}.dl-main{flex:1;min-width:0}.dl-name{color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;font-weight:700;display:flex}.dl-repo{color:var(--text-dim);font-size:11px;font-family:var(--mono-font);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden}.dl-tags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.dl-tag{color:var(--text-dim);border-radius:10px;padding:2px 7px;font-size:10px;font-weight:600}.dl-prog,.dl-tag{background:var(--bg-active)}.dl-prog{border-radius:4px;width:100%;height:6px;margin-top:9px;overflow:hidden}.dl-prog-fill{background:var(--accent);border-radius:4px;height:100%;transition:width .2s}.dl-right{flex-direction:column;flex:none;align-items:flex-end;gap:6px;display:flex}.dl-right .act-btn{white-space:nowrap}.dl-size{color:var(--text-dim);font-size:11.5px;font-family:var(--mono-font)}.pa-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.pa-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:13px;padding:15px 16px}.pa-head{align-items:center;gap:11px;margin-bottom:13px;display:flex}.pa-head .pa-n{color:var(--text);font-size:14px;font-weight:700}.pa-head .pa-r{color:var(--text-dim);font-size:11.5px}.pa-field+.pa-field{margin-top:9px}.pa-flabel{text-transform:uppercase;letter-spacing:.4px;color:var(--text-faint);margin-bottom:5px;font-size:10px;font-weight:700}.onb-secrow{align-items:center;gap:8px;margin:22px 0 12px;display:flex}.onb-secrow .osr-t{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);font-size:12px;font-weight:700}.onb-secrow .osr-line{background:var(--border-subtle);flex:1;height:1px}.prov-cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.prov-card{aspect-ratio:1;background:var(--bg-elevated);border:1.5px solid var(--border);text-align:center;cursor:pointer;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;transition:border-color .12s,transform .12s,background .12s;display:flex;position:relative}.prov-card:hover{border-color:var(--text-faint);transform:translateY(-2px)}.prov-card.on{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.prov-card.on{background:color-mix(in srgb,var(--accent) 8%,var(--bg-elevated))}}.prov-card.on{box-shadow:var(--glow)}.prov-card.on:after{content:"";background:var(--accent);border-radius:50%;width:18px;height:18px;position:absolute;top:10px;right:10px}.prov-card.on:before{content:"✓";width:18px;height:18px;color:var(--accent-fg);z-index:1;place-items:center;font-size:11px;font-weight:800;display:grid;position:absolute;top:10px;right:10px}.src-cards{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:4px;display:grid}.src-card{background:var(--bg-elevated);border:1.5px solid var(--border);text-align:center;cursor:pointer;color:var(--text-dim);border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:13px 11px;transition:border-color .12s,background .12s;display:flex}.src-card:hover{border-color:var(--text-faint)}.src-card.on{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.src-card.on{background:color-mix(in srgb,var(--accent) 9%,var(--bg-elevated))}}.src-card .src-t,.src-card.on{color:var(--text)}.src-card .src-t{font-size:12.5px;font-weight:700}.src-card .src-d{color:var(--text-faint);font-size:10.5px;line-height:1.35}.prov-card .pc-name{color:var(--text);font-size:13px;font-weight:700;line-height:1.2}.prov-card .pc-sub{color:var(--text-dim);font-size:10.5px}.prov-card .pc-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:8px;padding:2px 6px;font-size:9px;font-weight:700;position:absolute;top:10px;left:10px}.prov-card.local-card .pc-badge{background:var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.prov-card.local-card .pc-badge{background:color-mix(in srgb,var(--sx-string) 20%,transparent)}}.prov-card.local-card .pc-badge{color:var(--sx-string)}.prov-card.cloud-card .pc-badge{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.prov-card.cloud-card .pc-badge{background:color-mix(in srgb,var(--accent) 20%,transparent)}}.prov-card.cloud-card .pc-badge{color:var(--accent)}.prov-card.add-card{color:var(--text-dim);border-style:dashed}.prov-card.add-card:hover{border-color:var(--accent);color:var(--text)}.onb-fallback{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:18px 20px}.onb-empty-note{background:#f0a35e;align-items:center;gap:10px;display:flex}@supports (color:color-mix(in lab,red,red)){.onb-empty-note{background:color-mix(in srgb,#f0a35e 12%,var(--bg-elevated))}}.onb-empty-note{border:1px solid #f0a35e}@supports (color:color-mix(in lab,red,red)){.onb-empty-note{border:1px solid color-mix(in srgb,#f0a35e 30%,var(--border))}}.onb-empty-note{color:var(--text);border-radius:11px;margin-bottom:16px;padding:12px 14px;font-size:12.5px}.onb-empty-note .oen-ic{color:#f0a35e;flex:none}.reg-tabs{gap:6px;margin-bottom:14px;display:flex}.org-switch{padding:14px 12px 10px;position:relative}.org-switch-btn{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:11px;width:100%;padding:6px 8px;transition:background .12s,border-color .12s;display:flex}.org-switch-btn.open,.org-switch-btn:hover{background:var(--bg-hover);border-color:var(--border-subtle)}.org-switch-btn .os-meta{flex:1;min-width:0}.org-switch-btn .os-name{color:var(--text);letter-spacing:-.2px;font-size:14px;font-weight:800;line-height:1.15}.org-switch-btn .os-name,.org-switch-btn .os-sub{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.org-switch-btn .os-sub{color:var(--text-dim);font-size:11px;font-family:var(--mono-font)}.org-switch-btn>svg:last-child{color:var(--text-faint);flex:none}.org-pop{z-index:80;background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;padding:7px;animation:ddin .12s;position:absolute;top:calc(100% - 2px);left:12px;right:12px}.org-pop-h{text-transform:uppercase;letter-spacing:.6px;color:var(--text-faint);padding:6px 8px 7px;font-size:10px;font-weight:700}.org-pop-item{cursor:pointer;width:100%;color:var(--text);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 9px;display:flex}.org-pop-item:hover{background:var(--bg-hover)}.org-pop-item.on{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.org-pop-item.on{background:color-mix(in srgb,var(--accent) 13%,transparent)}}.org-pop-item .op-badge{background:var(--bg-active);width:20px;height:20px;color:var(--text-dim);font-size:11px;font-weight:700;font-family:var(--mono-font);border-radius:6px;flex:0 0 20px;place-items:center;display:grid}.org-pop-item.on .op-badge{background:var(--accent);color:var(--accent-fg)}.org-pop-item .op-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:600;overflow:hidden}.org-pop-item.on>svg{color:var(--accent);flex:none}.org-pop-sep{background:var(--border-subtle);height:1px;margin:6px 4px}.org-pop-create{cursor:pointer;width:100%;color:var(--text-dim);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 9px;font-size:13px;font-weight:600;display:flex}.org-pop-create:hover{background:var(--bg-hover);color:var(--text)}.org-pop-create .opc-ic{border:1px dashed var(--border);border-radius:6px;flex:0 0 20px;place-items:center;width:20px;height:20px;display:grid}.login-wrap{z-index:210;background:var(--bg-app);place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:auto}.login-aurora{pointer-events:none;background:radial-gradient(60% 50% at 70% 15%,var(--accent),transparent),radial-gradient(50% 50% at 20% 90%,#7c5cff2e,transparent);position:fixed;inset:0}@supports (color:color-mix(in lab,red,red)){.login-aurora{background:radial-gradient(60% 50% at 70% 15%,color-mix(in srgb,var(--accent) 16%,transparent),transparent),radial-gradient(50% 50% at 20% 90%,#7c5cff2e,transparent)}}.login-card{background:var(--bg-elevated);border:1px solid var(--border);width:460px;max-width:96vw;box-shadow:var(--shadow);border-radius:20px;padding:30px 32px;position:relative}.login-brand{align-items:center;gap:12px;margin-bottom:20px;display:flex}.login-word{letter-spacing:-.3px;font-size:18px}.login-h,.login-word{color:var(--text);font-weight:800}.login-h{letter-spacing:-.5px;margin-bottom:6px;font-size:24px}.login-sub{color:var(--text-dim);margin-bottom:18px;font-size:13px;line-height:1.5}.login-sub b{color:var(--accent)}.login-modes{grid-template-columns:1fr 1fr;gap:8px;display:grid}.login-mode{text-align:left;background:var(--bg-app);border:1.5px solid var(--border);cursor:pointer;border-radius:11px;padding:10px 12px;transition:border-color .12s,background .12s}.login-mode:hover{border-color:var(--text-faint)}.login-mode.on{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.login-mode.on{background:color-mix(in srgb,var(--accent) 8%,var(--bg-elevated))}}.login-mode .lm-label{color:var(--text);font-size:13px;font-weight:700;display:block}.login-mode .lm-desc{color:var(--text-dim);margin-top:1px;font-size:11px;display:block}.login-note{color:var(--text-dim);align-items:flex-start;gap:8px;margin-top:14px;font-size:11.5px;line-height:1.5;display:flex}.login-note svg{color:var(--accent);flex:none;margin-top:1px}.login-start-note{color:var(--text);background:var(--sx-string);align-items:center;gap:8px;font-size:12.5px;display:flex}@supports (color:color-mix(in lab,red,red)){.login-start-note{background:color-mix(in srgb,var(--sx-string) 12%,var(--bg-app))}}.login-start-note{border:1px solid var(--sx-string)}@supports (color:color-mix(in lab,red,red)){.login-start-note{border:1px solid color-mix(in srgb,var(--sx-string) 28%,var(--border))}}.login-start-note{border-radius:10px;margin-top:14px;padding:11px 13px}.login-start-note svg{color:var(--sx-string);flex:none}.login-btn{justify-content:center;width:100%;margin-top:16px;padding:11px;font-size:14px}.foot-signout{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:7px;flex:none;padding:6px}.foot-signout:hover{background:var(--bg-hover);color:var(--sx-keyword)}.onb-card.onb-card-wide{width:920px}.stack-cat{margin-bottom:14px}.stack-cards{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px;display:grid}.stack-card{aspect-ratio:1;background:var(--bg-app);border:1.5px solid var(--border);cursor:pointer;text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:12px 8px;transition:border-color .12s,background .12s,transform .1s;display:flex;position:relative}.stack-card:hover{border-color:var(--text-faint);transform:translateY(-1px)}.stack-card.on{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.stack-card.on{background:color-mix(in srgb,var(--accent) 10%,var(--bg-elevated))}}.stack-card.disabled{opacity:.38;cursor:not-allowed}.stack-card .sc-ico{object-fit:contain;width:44px;height:44px}.stack-card .sc-mono{background:var(--bg-active);width:44px;height:44px;color:var(--text);font-family:var(--mono-font);text-transform:lowercase;border-radius:11px;place-items:center;font-size:16px;font-weight:700;display:grid}.stack-card.on .sc-mono{background:var(--accent);color:var(--accent-fg)}.stack-card .sc-name{color:var(--text);word-break:break-word;font-size:12px;font-weight:600;line-height:1.2}.stack-card .sc-check{background:var(--accent);width:18px;height:18px;color:var(--accent-fg);border-radius:6px;place-items:center;display:grid;position:absolute;top:6px;right:6px}.stack-search-wrap{margin-bottom:20px;position:relative}.stack-search{background:var(--bg-input);border:1px solid var(--border);color:var(--text-faint);border-radius:11px;align-items:center;gap:10px;padding:11px 14px;display:flex}.stack-search:focus-within{border-color:var(--accent)}.stack-search input{color:var(--text);font-family:var(--ui-font);background:0 0;border:none;outline:none;flex:1;font-size:14px}.stack-search .ss-clear{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:2px;display:inline-flex}.stack-search .ss-clear:hover{color:var(--text);background:var(--bg-hover)}.stack-find{z-index:30;background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:2px;max-height:320px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 16px 40px #0006}.stack-find-row{cursor:pointer;width:100%;color:var(--text);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:11px;padding:8px 10px;display:flex}.stack-find-row:hover{background:var(--bg-hover)}.stack-find-row.disabled{opacity:.4;cursor:not-allowed}.stack-find-row .sc-ico,.stack-find-row .sc-mono{border-radius:6px;flex:0 0 24px;width:24px;height:24px;font-size:10px}.stack-find-row .sf-name{font-size:13px;font-weight:600}.stack-find-row .sf-cat{color:var(--text-faint);margin-left:auto;font-size:11px}.stack-find.sf-empty{color:var(--text-faint);text-align:center;padding:14px;font-size:12.5px}.onb-card-wide .onb-secrow .osr-pick{color:var(--accent);font-size:11.5px;font-weight:600;font-family:var(--mono-font);margin-left:4px}@media (max-width:980px){.onb-card.onb-card-wide{width:96vw}}.update-banner{z-index:65;background:var(--bg-elevated);border:1px solid var(--accent);box-shadow:var(--shadow);color:var(--text);border-radius:999px;align-items:center;gap:10px;padding:9px 12px 9px 14px;font-size:12.5px;animation:toast-in .2s;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.update-banner .upd-banner-btn{background:var(--accent);color:var(--accent-fg);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600;text-decoration:none}.update-banner .update-x{color:var(--text-faint);cursor:pointer;background:0 0;border:none;padding:2px;display:inline-flex}.update-banner .update-x:hover{color:var(--text)}.upd-versions{align-items:center;gap:16px;display:flex}.upd-k{color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px}.upd-v{font-size:18px;font-weight:800;font-family:var(--mono-font)}.upd-changelog{color:var(--text-dim);max-height:360px;font-size:12.5px;line-height:1.6;overflow:auto}.upd-changelog h2,.upd-changelog h3{color:var(--text);margin:10px 0 4px;font-size:13px}.upd-changelog ul{margin:4px 0;padding-left:18px}.upd-changelog code{font-family:var(--mono-font);background:var(--bg-app);border-radius:4px;padding:1px 4px;font-size:11.5px}.toaster{z-index:60;pointer-events:none;flex-direction:column;width:340px;max-width:calc(100vw - 36px);position:fixed;bottom:78px;right:18px}.toast,.toaster{gap:10px;display:flex}.toast{pointer-events:auto;background:var(--bg-elevated);border:1px solid var(--border);border-left:3px solid var(--accent);box-shadow:var(--shadow);cursor:pointer;border-radius:10px;align-items:flex-start;padding:11px 12px;animation:toast-in .22s}.toast:hover{border-color:var(--accent)}.toast-block,.toast-blocked,.toast-error,.toast-security,.toast-warn,.toast-warning{border-left-color:#e8688f}.toast-approval,.toast-needs-approval{border-left-color:var(--sx-number)}.toast-deploy{border-left-color:var(--sx-string)}.toast-ic{color:var(--accent);flex:none;margin-top:1px}.toast-body{flex:1;min-width:0}.toast-title{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;font-weight:600;line-height:1.35;display:-webkit-box}.toast-detail,.toast-title{text-overflow:ellipsis;overflow:hidden}.toast-detail{color:var(--text-dim);white-space:nowrap;margin-top:2px;font-size:11px}.toast-x{color:var(--text-faint);cursor:pointer;background:0 0;border:none;flex:none;padding:2px;display:inline-flex}.toast-x:hover{color:var(--text)}@keyframes toast-in{0%{opacity:0;transform:translate(12px)}}html.anim-off *,html.anim-off :after,html.anim-off :before{transition-duration:0s!important;animation-duration:0s!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.home-hero{background:linear-gradient(180deg,var(--accent),var(--bg-elevated));align-items:flex-start;gap:18px;display:flex}@supports (color:color-mix(in lab,red,red)){.home-hero{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 7%,var(--bg-elevated)),var(--bg-elevated))}}.home-hero{border:1px solid var(--border);border-radius:16px;margin-bottom:18px;padding:22px 24px}.home-hero-body{flex:1;min-width:0}.home-hero-top{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.home-hero-name{letter-spacing:-.5px;color:var(--text);font-size:26px;font-weight:800}.home-status-chip{color:var(--text-dim);background:var(--bg-active);border:1px solid var(--border-subtle);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.hsc-dot{background:var(--sx-string);width:7px;height:7px;box-shadow:0 0 0 3px var(--sx-string);border-radius:50%}@supports (color:color-mix(in lab,red,red)){.hsc-dot{box-shadow:0 0 0 3px color-mix(in srgb,var(--sx-string) 22%,transparent)}}.hsc-dot.off{background:var(--text-faint);box-shadow:none}.home-status-chip.idle{cursor:pointer;transition:border-color .12s,color .12s}.home-status-chip.idle:hover{border-color:var(--accent);color:var(--accent)}.home-status-chip.idle:disabled{opacity:.6;cursor:default}.dr-reason{color:var(--text-dim);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:11.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.dr-sub{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.dr-ref{text-transform:uppercase;letter-spacing:.4px;color:var(--accent);background:var(--accent);font-size:9.5px;font-weight:700}@supports (color:color-mix(in lab,red,red)){.dr-ref{background:color-mix(in srgb,var(--accent) 13%,transparent)}}.dr-ref{border-radius:4px;flex:none;padding:1px 5px}.home-hero-mission{color:var(--text-dim);max-width:760px;margin-top:7px;font-size:14px;line-height:1.55}.home-actions{flex-wrap:wrap;gap:9px;margin-top:15px;display:flex}.ha-ghost,.ha-primary{cursor:pointer;border-radius:9px;align-items:center;gap:7px;padding:8px 14px;font-size:12.5px;font-weight:600;transition:transform .1s,border-color .12s,background .12s;display:inline-flex}.ha-primary{background:var(--accent);color:var(--accent-fg);border:1px solid var(--accent)}.ha-primary:hover{transform:translateY(-1px)}.ha-ghost{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border)}.ha-ghost:hover{border-color:var(--accent)}.home-status-row{border-top:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:18px;margin-top:16px;padding-top:14px;display:flex}.hsr-stat{color:var(--text-dim);align-items:baseline;gap:6px;font-size:12.5px;text-decoration:none;display:inline-flex}.hsr-stat b{color:var(--text);font-size:17px;font-weight:800}.hsr-stat:hover b{color:var(--accent)}.hsr-more{color:var(--text-dim);align-items:center;gap:5px;margin-left:auto;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.hsr-more:hover{color:var(--accent)}.cmdbar-wrap{margin-bottom:20px}.cmdbar{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-faint);border-radius:13px;align-items:center;gap:10px;padding:4px 6px 4px 14px;transition:border-color .12s,box-shadow .12s;display:flex;position:relative}.cmdbar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab,red,red)){.cmdbar:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}}.cmdbar.busy{opacity:.8}.cmdbar-input{min-width:0;color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:11px 0;font-family:inherit;font-size:14.5px}.cmdbar-input::placeholder{color:var(--text-faint)}.cmdbar-go{background:var(--accent);width:34px;height:34px;color:var(--accent-fg);cursor:pointer;border:none;border-radius:9px;flex:none;place-items:center;transition:transform .1s,opacity .12s;display:inline-grid}.cmdbar-go:hover:not(:disabled){transform:scale(1.05)}.cmdbar-go:disabled{opacity:.4;cursor:default}.cmdbar-menu{z-index:30;background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow,0 12px 30px #0000004d);border-radius:11px;padding:5px;position:absolute;top:calc(100% + 6px);left:0;right:0}.cmdbar-item{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;border-radius:7px;align-items:baseline;gap:10px;padding:8px 10px;display:flex}.cmdbar-item.active,.cmdbar-item:hover{background:var(--bg-active)}.ci-cmd{font-family:var(--mono-font);color:var(--accent);flex:none;font-size:12.5px;font-weight:600}.ci-arg{color:var(--text-faint);font-weight:400}.ci-desc{color:var(--text-dim);text-align:right;margin-left:auto;font-size:12px}.cmdbar-hint{color:var(--text-faint);margin-top:7px;padding-left:4px;font-size:11px}.welcome-chat{background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;flex-direction:column;max-height:80vh;margin-bottom:20px;display:flex;overflow:hidden;box-shadow:0 6px 24px #0000002e}.wc-head{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:10px;padding:11px 14px 11px 16px;display:flex}.wc-head-titles{flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0;display:flex}.wc-head-title{color:var(--text);align-items:center;gap:7px;font-size:13px;font-weight:700;display:inline-flex}.wc-head-sub{color:var(--text-dim);font-size:11.5px}.wc-head-actions{flex:none;align-items:center;gap:4px;display:flex}.wc-head-btn{width:28px;height:28px;color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;place-items:center;transition:background .12s,color .12s,border-color .12s;display:inline-grid}.wc-head-btn:hover{background:var(--bg-active);color:var(--accent);border-color:var(--border-subtle)}.welcome-chat .chat-stream{min-height:min(360px,50vh)}.welcome-chat .cmsg{width:100%;max-width:1180px;margin-left:auto;margin-right:auto}.welcome-chat .cmsg-body{max-width:82%}.welcome-chat .cmsg-bubble{padding:11px 15px}.welcome-chat .cmsg-bubble,.welcome-chat .cmsg-md{font-size:16px;line-height:1.6}.welcome-chat .cmsg-md h1,.welcome-chat .cmsg-md h2,.welcome-chat .cmsg-md h3{font-size:18px}.welcome-chat .cmsg-name{font-size:14px}.welcome-chat .cmsg-role{font-size:12px}.welcome-chat .cmsg-when{font-size:11px}.welcome-chat .cmsg-head{gap:10px;margin-bottom:6px}.welcome-chat .kb-card-head{font-size:13px}.welcome-chat .cmsg-bubble .mention,.welcome-chat .cmsg-bubble .ref-chip,.welcome-chat .cmsg-md .mention{font-size:inherit}.welcome-chat .cmsg-bubble code,.welcome-chat .cmsg-md code{font-size:.86em}.welcome-chat .wlabel,.welcome-chat .work-head{font-size:14px}.welcome-chat .wmeta{font-size:12.5px}.welcome-chat .work-thinking{font-size:15px;line-height:1.55}.welcome-chat .wstep-verb{font-size:11.5px}.welcome-chat .wstep-file{font-size:13.5px}.welcome-chat .msg-sources-toggle,.welcome-chat .wcode-gutter,.welcome-chat .wcode-text,.welcome-chat .wdiff-sign,.welcome-chat .wdiff-text,.welcome-chat .wstep-term{font-size:13px}.welcome-chat .msg-sources-list{font-size:12.5px}.welcome-chat .kb-card-actions .kbc-btn{padding:8px 13px;font-size:13.5px}.welcome-chat .kb-card-note{font-size:13px}.welcome-chat .chat-header,.welcome-chat .ctx-bar,.welcome-chat .dm-search,.welcome-chat .dock-tabs{flex:none}.welcome-chat .people-list,.welcome-chat .tg-connect{flex:auto;min-height:0}.welcome-chat .dm-back-btn{background:var(--bg-active);border:1px solid var(--border-subtle);width:28px;height:28px;color:var(--text-dim);cursor:pointer;border-radius:7px;flex:none;place-items:center;margin-right:8px;display:inline-grid}.welcome-chat .dm-back-btn:hover{color:var(--accent);border-color:var(--accent)}.welcome-chat .chat-composer .composer-box,.welcome-chat .chat-composer .mention-pop{max-width:1180px;margin-left:auto;margin-right:auto}.welcome-chat .composer-input{font-size:15px}.welcome-chat.full{z-index:60;margin:0;position:fixed;inset:24px;box-shadow:0 24px 70px #00000080}.welcome-chat.full .chat-stream{flex:1;max-height:none}.wc-thread{flex-direction:column;gap:18px;min-height:140px;max-height:460px;padding:18px 20px;display:flex;overflow-y:auto}.wc-intro,.wc-loading{color:var(--text-dim);padding:8px 2px;font-size:12.5px;line-height:1.5}.wc-msg{align-items:flex-start;gap:9px;display:flex}.wc-msg.me{justify-content:flex-end}.wc-sys-ava{background:var(--accent);border-radius:7px;flex:0 0 26px;width:26px;height:26px}@supports (color:color-mix(in lab,red,red)){.wc-sys-ava{background:color-mix(in srgb,var(--accent) 14%,transparent)}}.wc-sys-ava{color:var(--accent);place-items:center;display:grid}.wc-bubble{max-width:84%}.wc-msg:not(.me) .wc-bubble{background:0 0;border:none;padding:1px 0}.wc-msg.me .wc-bubble{background:var(--bg-active);border:1px solid var(--border-subtle);border-radius:14px 14px 5px;padding:8px 13px}.wc-name{color:var(--text);margin-bottom:4px;font-size:11.5px;font-weight:700}.wc-sys-tag{color:var(--accent);font-weight:600}.wc-text{color:var(--text);font-size:14px;line-height:1.62}.wc-msg.me .wc-text{color:var(--text);white-space:pre-wrap}.wc-text.md{max-width:none}.wc-text.md p{margin:0 0 8px}.wc-text.md p:last-child{margin:0}.wc-text.md ol,.wc-text.md ul{margin:5px 0;padding-left:18px}.wc-text.md li{margin:2px 0}.wc-text.md h1,.wc-text.md h2,.wc-text.md h3{color:var(--text);margin:8px 0 4px;font-size:14px;font-weight:700}.wc-text.md h1:first-child,.wc-text.md h2:first-child,.wc-text.md h3:first-child{margin-top:0}.wc-text.md code{background:var(--bg-active);border-radius:4px;padding:1px 5px;font-size:12px}.wc-text.md strong{font-weight:700}.wc-typing{gap:4px;padding:4px 2px;display:inline-flex}.wc-typing span{background:var(--text-faint);border-radius:50%;width:6px;height:6px;animation:wc-bounce 1s infinite}.wc-typing span:nth-child(2){animation-delay:.15s}.wc-typing span:nth-child(3){animation-delay:.3s}@keyframes wc-bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.wc-composer{border-top:1px solid var(--border-subtle);color:var(--text-faint);align-items:flex-end;gap:11px;padding:14px 16px;display:flex;position:relative}.wc-composer:focus-within{color:var(--accent)}.wc-input{resize:none;min-width:0;max-height:130px;color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:8px 0;font-family:inherit;font-size:15px;line-height:1.5}.wc-input::placeholder{color:var(--text-faint)}.wc-send{background:var(--accent);width:34px;height:34px;color:var(--accent-fg);cursor:pointer;border:none;border-radius:9px;flex:none;place-items:center;transition:transform .1s,opacity .12s;display:inline-grid}.wc-send:hover:not(:disabled){transform:scale(1.05)}.wc-send:disabled{opacity:.4;cursor:default}.wc-menu{background:var(--bg-elevated);border:1px solid var(--border);z-index:20;border-radius:11px;padding:5px;position:absolute;bottom:calc(100% + 6px);left:12px;right:12px;box-shadow:0 12px 30px #0000004d}.wc-hint{color:var(--text-faint);padding:7px 16px 12px;font-size:11px}.home-areas{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;display:grid}.home-area-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:16px 18px;transition:border-color .12s,transform .1s}.home-area-card:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.home-area-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}}.hac-head{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.hac-ico{background:var(--accent);border-radius:11px;flex:none;place-items:center;width:40px;height:40px;display:grid}@supports (color:color-mix(in lab,red,red)){.hac-ico{background:color-mix(in srgb,var(--accent) 14%,transparent)}}.hac-ico{color:var(--accent)}.hac-titles{flex-direction:column;min-width:0;display:flex}.hac-title{color:var(--text);font-size:15px;font-weight:700}.hac-desc{color:var(--text-dim);margin-top:1px;font-size:11.5px}.hac-count{color:var(--text);letter-spacing:-.5px;margin-left:auto;font-size:18px;font-weight:800}.hac-links{flex-wrap:wrap;gap:6px;margin-top:13px;display:flex}.hac-links .chip-sm{text-decoration:none;transition:background .12s,color .12s}.hac-links .chip-sm:hover{background:var(--bg-active);color:var(--text)}.home-section{margin-top:24px}.home-sec-title{color:var(--text);align-items:center;gap:8px;margin-bottom:11px;font-size:13.5px;font-weight:700;display:flex}.home-sec-title .hst-ico{color:var(--accent);display:inline-flex}.home-sec-title .hst-more{color:var(--text-dim);margin-left:auto;font-size:11.5px;font-weight:600;text-decoration:none}.home-sec-title .hst-more:hover{color:var(--accent)}.home-empty{color:var(--text-dim);background:var(--bg-panel);border:1px dashed var(--border);border-radius:11px;padding:16px 18px;font-size:12.5px;line-height:1.5}.hse-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:11px;display:flex}.hse-create{color:var(--accent-fg);background:var(--accent);border:1px solid var(--accent);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:transform .1s;display:inline-flex}.hse-create:hover:not(:disabled){transform:translateY(-1px)}.hse-create:disabled{opacity:.6;cursor:default}.hse-link{color:var(--text-dim);font-size:12px;font-weight:600;text-decoration:none}.hse-link:hover{color:var(--accent)}.kb-actions-msg{color:var(--text-dim);margin-right:4px;font-size:11.5px}.home-area-card:hover{transform:translateY(-1px)}.continue-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.continue-card{background:var(--bg-elevated);border:1px solid var(--border);color:inherit;border-radius:12px;flex-direction:column;gap:8px;padding:13px 14px;text-decoration:none;transition:border-color .12s,transform .1s;display:flex}.continue-card:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.continue-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}}.continue-card:hover{transform:translateY(-1px)}.cc-top{gap:8px;display:flex}.cc-top,.cc-type{align-items:center}.cc-type{text-transform:uppercase;letter-spacing:.4px;color:var(--accent);gap:4px;font-size:10.5px;font-weight:700;display:inline-flex}.cc-status{color:var(--text-dim);background:var(--bg-active);border-radius:5px;margin-left:auto;padding:1px 6px;font-size:10.5px}.cc-title{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.cc-foot{align-items:center;gap:6px;margin-top:2px;display:flex}.cc-meta{color:var(--text-dim);font-size:11px}.decide-list{flex-direction:column;gap:8px;display:flex}.decide-row{background:var(--bg-elevated);border:1px solid var(--border);border-radius:11px;align-items:center;gap:11px;padding:10px 13px;display:flex}.dr-ico{background:var(--bg-active);width:30px;height:30px;color:var(--accent);border-radius:8px;flex:none;place-items:center;display:grid}.dr-main{flex:1;min-width:0}.dr-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.dr-sub{color:var(--text-dim);margin-top:1px;font-size:11px}.dr-actions{flex:none;align-items:center;gap:6px;display:flex}.dr-approve,.dr-reject{cursor:pointer;border-radius:7px;padding:5px 11px;font-size:11.5px;font-weight:600;transition:opacity .12s,background .12s}.dr-approve{background:var(--accent);color:var(--accent-fg);border:1px solid var(--accent)}.dr-reject{color:var(--text-dim);border:1px solid var(--border);background:0 0}.dr-reject:hover{color:#e8688f;border-color:#e8688f}.dr-approve:disabled,.dr-reject:disabled{opacity:.5;cursor:default}.dr-ghost{background:var(--bg-active);border:1px solid var(--border-subtle);width:28px;height:28px;color:var(--text-dim);cursor:pointer;border-radius:7px;place-items:center;display:inline-grid}.dr-ghost:hover{color:var(--accent);border-color:var(--accent)}.po-wrap{flex-direction:column;gap:12px;display:flex}.po-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.po-stat{background:var(--bg-elevated);border:1px solid var(--border);color:inherit;border-radius:11px;flex-direction:column;gap:2px;padding:12px 14px;text-decoration:none;transition:border-color .12s;display:flex}.po-stat:hover{border-color:var(--accent)}.po-stat b{color:var(--text);letter-spacing:-.5px;font-size:22px;font-weight:800}.po-stat span{color:var(--text-dim);font-size:11px}.po-issues,.po-next{background:var(--bg-elevated);border:1px solid var(--border);border-radius:11px;padding:12px 14px}.po-sub{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);font-size:10.5px;font-weight:700}.po-issue{color:inherit;align-items:center;gap:8px;padding:6px 0;text-decoration:none;display:flex}.po-issue+.po-issue{border-top:1px solid var(--border-subtle)}.prio-dot{background:var(--text-faint);border-radius:50%;flex:0 0 7px;width:7px;height:7px}.prio-dot.p-high{background:#e8688f}.prio-dot.p-med{background:var(--accent)}.prio-dot.p-low{background:var(--text-faint)}.poi-key{font-family:var(--mono-font);color:var(--accent);flex:none;font-size:11px}.poi-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12.5px;overflow:hidden}.poi-col{color:var(--text-dim);background:var(--bg-active);border-radius:5px;flex:none;padding:1px 6px;font-size:10.5px}.po-next{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.po-step{color:var(--text);background:var(--bg-active);border:1px solid var(--border-subtle);border-radius:7px;padding:5px 11px;font-size:12px;font-weight:600;text-decoration:none;transition:border-color .12s}.po-step:hover{border-color:var(--accent);color:var(--accent)}.timeline{flex-direction:column;gap:14px;display:flex}.tl-day-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin-bottom:6px;font-size:10.5px;font-weight:700}.tl-row{align-items:center;gap:9px;padding:4px 0;display:flex}.tl-sys{background:var(--bg-active);border-radius:6px;flex:0 0 20px;width:20px;height:20px}.tl-text{min-width:0;color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12.5px;overflow:hidden}.tl-text b{font-weight:600}.tl-target,.tl-text b{color:var(--text)}.tl-time{color:var(--text-faint);flex:none;font-size:11px}.block-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:13px;display:grid}.block-card{background:var(--bg-elevated);border:1px solid var(--border);color:inherit;border-radius:13px;flex-direction:column;gap:8px;padding:14px 15px;text-decoration:none;transition:border-color .12s,transform .1s;display:flex}.block-card:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.block-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}}.block-card:hover{transform:translateY(-1px)}.bc-top{align-items:center;gap:8px;display:flex}.bc-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.bc-kind{text-transform:uppercase;letter-spacing:.4px;color:var(--accent);background:var(--accent);flex:none;margin-left:auto;font-size:10px;font-weight:600}@supports (color:color-mix(in lab,red,red)){.bc-kind{background:color-mix(in srgb,var(--accent) 13%,transparent)}}.bc-kind{border-radius:5px;padding:2px 7px}.bc-body{color:var(--text-dim);max-height:116px;font-size:12px;line-height:1.5;position:relative;overflow:hidden}.bc-body:after{content:"";background:linear-gradient(transparent,var(--bg-elevated));height:26px;position:absolute;bottom:0;left:0;right:0}.bc-body p{margin:0 0 6px}.bc-foot{color:var(--text-faint);align-items:center;gap:6px;margin-top:auto;font-size:11px;display:flex}.bc-open{color:var(--accent);margin-left:auto;font-weight:600}.docs-wrap{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:14px;display:grid}.docs-col{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:12px 14px}.docs-col .po-sub{margin-bottom:6px;display:block}.doc-row{color:var(--text-dim);align-items:center;gap:8px;padding:6px 0;text-decoration:none;display:flex}.doc-row:hover{color:var(--text)}.doc-row+.doc-row{border-top:1px solid var(--border-subtle)}.doc-title{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12.5px;overflow:hidden}.doc-kind{text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);background:var(--bg-active);border-radius:5px;padding:1px 6px;font-size:10px}.doc-time{color:var(--text-faint);flex:none;font-size:11px}.doc-sugg{color:var(--text-dim);border:1px dashed var(--border);border-radius:8px;align-items:center;gap:7px;margin-top:6px;padding:8px 10px;font-size:12.5px;text-decoration:none;transition:border-color .12s,color .12s;display:flex}.doc-sugg:hover{border-color:var(--accent)}.doc-sugg svg,.doc-sugg:hover{color:var(--accent)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
self.__BUILD_MANIFEST={__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:46,errorRate:1e-4,numBits:882,numHashes:14,bitArray:[0,0,1,1,0,0,1,1,0,0,0,0,1,0,1,0,1,0,1,0,0,1,0,1,0,1,0,0,1,0,1,1,0,1,1,0,0,0,1,1,1,1,0,1,1,1,1,0,1,1,0,1,0,0,1,1,0,0,1,0,0,1,0,1,0,0,0,0,1,1,1,1,1,1,0,0,1,1,0,0,1,0,0,0,1,0,1,1,1,1,0,1,1,1,1,1,1,0,0,0,1,1,1,1,0,1,1,1,0,0,1,0,0,0,0,1,1,0,0,1,0,0,1,0,1,0,0,1,0,0,1,1,1,1,1,1,0,0,0,1,1,1,1,0,1,1,0,1,0,0,1,0,1,1,0,1,0,1,0,0,0,0,1,1,0,0,0,1,0,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,0,1,1,0,0,1,1,1,0,0,0,1,1,1,0,1,1,0,0,1,0,1,0,1,0,1,1,1,1,1,0,1,1,1,0,1,1,1,1,1,0,0,1,0,1,0,1,0,0,0,1,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1,1,1,0,0,1,0,1,1,1,1,1,1,0,0,0,1,1,0,1,0,0,0,1,0,0,0,1,1,1,0,1,1,1,1,0,1,1,1,1,0,0,0,1,0,0,1,0,0,0,1,1,1,1,1,0,1,0,0,0,1,1,1,1,1,0,1,1,1,0,1,0,1,1,0,1,1,1,1,0,1,1,0,0,1,1,1,1,1,0,0,1,0,1,0,1,0,0,1,1,0,1,1,1,1,0,0,1,0,0,1,1,0,0,1,1,1,0,0,1,1,0,0,0,1,0,0,1,0,0,0,0,0,1,0,0,1,0,0,1,1,1,1,1,0,0,1,1,1,0,1,0,1,0,1,0,1,1,0,0,1,1,0,0,0,0,0,1,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,1,0,1,1,1,0,1,0,1,0,1,0,1,1,0,0,0,1,0,1,1,0,0,0,0,1,0,1,1,0,0,1,0,0,0,1,1,0,0,1,1,1,1,0,0,1,1,1,1,1,0,1,0,1,1,1,1,0,1,0,1,0,0,0,1,1,1,1,0,1,0,0,0,0,1,0,1,1,1,0,0,0,1,0,0,0,1,1,1,0,0,1,1,0,0,0,0,1,1,0,0,1,0,0,1,1,0,0,0,0,1,0,1,0,0,0,0,0,0,0,1,0,1,1,1,1,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,0,0,1,1,0,1,1,1,0,1,1,0,0,0,1,1,0,1,1,1,0,0,1,1,0,1,1,1,0,0,1,0,0,0,1,1,1,0,0,0,0,1,1,1,1,0,1,1,0,0,0,1,1,0,0,1,1,0,1,1,1,1,1,0,1,1,1,0,1,0,1,1,1,0,0,1,0,1,0,0,0,0,0,0,0,1,0,1,1,0,1,0,1,0,1,1,0,1,0,1,1,1,1,0,1,0,0,1,1,0,0,0,0,1,0,1,0,0,1,0,1,0,1,1,1,1,0,1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,1,1,1,0,0,0,1,1,0,1,0,0,0,0,1,1,0,1,0,0,0,1,1,0,1,1,1,1,1,0,1,1,0,1,1,0,0,0,0,1,0,1,1,0,0,1,0,1,0,0,1,1,0,0,0,0,0,0,1,0,1,0,1,0,0,1,1,1,0,1,0,0,0,0,0,1,0,0,1,1,1,1,0,0,1,1,1,1,1,1,0,1,1,1,1,0,1,1,0,0,1,1,1,1,1,1,1,0,1,1,0,1,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,0,1,1,1,0,1,0,1,0]},__routerFilterDynamic:{numItems:5,errorRate:1e-4,numBits:96,numHashes:14,bitArray:[0,0,1,0,0,1,1,0,1,0,0,1,0,1,0,0,0,1,0,1,1,0,1,1,1,1,1,1,0,1,0,0,1,0,1,0,0,0,0,1,0,0,1,1,1,0,1,1,1,1,0,0,0,0,1,1,0,0,0,0,1,1,1,0,1,1,1,1,0,1,0,1,0,0,1,0,1,0,1,1,1,0,1,0,1,1,1,1,0,0,1,1,0,0,1,1]},sortedPages:["/_app"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
self.__SSG_MANIFEST=new Set([]);self.__SSG_MANIFEST_CB&&self.__SSG_MANIFEST_CB()
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[{"name":"run-webpack","duration":29449218,"timestamp":448607782722,"id":14,"parentId":1,"tags":{},"startTime":1782163414734,"traceId":"ed0be4f6ab42b8cd"},{"name":"run-typescript","duration":12034936,"timestamp":448637235994,"id":7511,"parentId":1,"tags":{},"startTime":1782163444187,"traceId":"ed0be4f6ab42b8cd"},{"name":"static-check","duration":1537730,"timestamp":448649483762,"id":7514,"parentId":1,"tags":{},"startTime":1782163456435,"traceId":"ed0be4f6ab42b8cd"},{"name":"static-generation","duration":3671636,"timestamp":448652247147,"id":7622,"parentId":1,"tags":{},"startTime":1782163459198,"traceId":"ed0be4f6ab42b8cd"},{"name":"collect-build-traces","duration":13784909,"timestamp":448651025908,"id":7619,"parentId":1,"tags":{},"startTime":1782163457977,"traceId":"ed0be4f6ab42b8cd"},{"name":"telemetry-flush","duration":34,"timestamp":448664814252,"id":7631,"parentId":1,"tags":{},"startTime":1782163471765,"traceId":"ed0be4f6ab42b8cd"},{"name":"next-build","duration":57317121,"timestamp":448607497171,"id":1,"tags":{"buildMode":"default","version":"16.2.9","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1782163414448,"traceId":"ed0be4f6ab42b8cd"}]
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
// File: C:\Users\Usuario\Documents\constella\src\app\(app)\activity\page.tsx
|
|
2
|
+
import * as entry from '../../../../../src/app/(app)/activity/page.js'
|
|
3
|
+
import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
|
|
4
|
+
|
|
5
|
+
import type { InstantConfigForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
|
|
6
|
+
|
|
7
|
+
type TEntry = typeof import('../../../../../src/app/(app)/activity/page.js')
|
|
8
|
+
|
|
9
|
+
type SegmentParams<T extends Object = any> = T extends Record<string, any>
|
|
10
|
+
? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
|
|
11
|
+
: T
|
|
12
|
+
|
|
13
|
+
// Check that the entry is a valid entry
|
|
14
|
+
checkFields<Diff<{
|
|
15
|
+
default: Function
|
|
16
|
+
config?: {}
|
|
17
|
+
generateStaticParams?: Function
|
|
18
|
+
unstable_instant?: InstantConfigForTypeCheckInternal
|
|
19
|
+
unstable_dynamicStaleTime?: number
|
|
20
|
+
revalidate?: RevalidateRange<TEntry> | false
|
|
21
|
+
dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
|
|
22
|
+
dynamicParams?: boolean
|
|
23
|
+
fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
|
|
24
|
+
preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
|
|
25
|
+
runtime?: 'nodejs' | 'experimental-edge' | 'edge'
|
|
26
|
+
maxDuration?: number
|
|
27
|
+
|
|
28
|
+
metadata?: any
|
|
29
|
+
generateMetadata?: Function
|
|
30
|
+
viewport?: any
|
|
31
|
+
generateViewport?: Function
|
|
32
|
+
|
|
33
|
+
}, TEntry, ''>>()
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
// Check the prop type of the entry function
|
|
37
|
+
checkFields<Diff<PageProps, FirstArg<TEntry['default']>, 'default'>>()
|
|
38
|
+
|
|
39
|
+
// Check the arguments and return type of the generateMetadata function
|
|
40
|
+
if ('generateMetadata' in entry) {
|
|
41
|
+
checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
|
|
42
|
+
checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Check the arguments and return type of the generateViewport function
|
|
46
|
+
if ('generateViewport' in entry) {
|
|
47
|
+
checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
|
|
48
|
+
checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// Check the arguments and return type of the generateStaticParams function
|
|
52
|
+
if ('generateStaticParams' in entry) {
|
|
53
|
+
checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
|
|
54
|
+
checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export interface PageProps {
|
|
58
|
+
params?: Promise<SegmentParams>
|
|
59
|
+
searchParams?: Promise<any>
|
|
60
|
+
}
|
|
61
|
+
export interface LayoutProps {
|
|
62
|
+
children?: React.ReactNode
|
|
63
|
+
|
|
64
|
+
params?: Promise<SegmentParams>
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// =============
|
|
68
|
+
// Utility types
|
|
69
|
+
type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
|
|
70
|
+
|
|
71
|
+
// If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
|
|
72
|
+
type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
|
|
73
|
+
type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
|
|
74
|
+
|
|
75
|
+
type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
|
|
76
|
+
type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
|
|
77
|
+
type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
function checkFields<_ extends { [k in keyof any]: never }>() {}
|
|
82
|
+
|
|
83
|
+
// https://github.com/sindresorhus/type-fest
|
|
84
|
+
type Numeric = number | bigint
|
|
85
|
+
type Zero = 0 | 0n
|
|
86
|
+
type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
|
|
87
|
+
type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
|