@oscharko-dev/keiko 0.2.0-beta.4 → 0.2.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -14
- package/dist/ui/csp-hashes.json +16 -21
- package/dist/ui/static/404.html +1 -1
- package/dist/ui/static/__next.__PAGE__.txt +2 -2
- package/dist/ui/static/__next._full.txt +3 -3
- package/dist/ui/static/__next._head.txt +1 -1
- package/dist/ui/static/__next._index.txt +2 -2
- package/dist/ui/static/__next._tree.txt +2 -2
- package/dist/ui/static/_next/static/chunks/0-qhhdvxg2j_y.js +1 -0
- package/dist/ui/static/_next/static/chunks/0ke4ratkgvcxo.css +1 -0
- package/dist/ui/static/_next/static/chunks/0xhu-pfsyvbmx.js +5 -0
- package/dist/ui/static/_next/static/chunks/3vf3oh2-sl2nc.js +1 -0
- package/dist/ui/static/_next/static/chunks/3wmd4-2vznp2g.js +106 -0
- package/dist/ui/static/_next/static/chunks/turbopack-18q50fp2-1qbt.js +1 -0
- package/dist/ui/static/_not-found/__next._full.txt +2 -2
- package/dist/ui/static/_not-found/__next._head.txt +1 -1
- package/dist/ui/static/_not-found/__next._index.txt +2 -2
- package/dist/ui/static/_not-found/__next._not-found.__PAGE__.txt +1 -1
- package/dist/ui/static/_not-found/__next._not-found.txt +1 -1
- package/dist/ui/static/_not-found/__next._tree.txt +2 -2
- package/dist/ui/static/_not-found.html +1 -1
- package/dist/ui/static/_not-found.txt +2 -2
- package/dist/ui/static/index.html +1 -1
- package/dist/ui/static/index.txt +3 -3
- package/dist/ui/static/launch/__next._full.txt +3 -3
- package/dist/ui/static/launch/__next._head.txt +1 -1
- package/dist/ui/static/launch/__next._index.txt +2 -2
- package/dist/ui/static/launch/__next._tree.txt +2 -2
- package/dist/ui/static/launch/__next.launch.__PAGE__.txt +2 -2
- package/dist/ui/static/launch/__next.launch.txt +1 -1
- package/dist/ui/static/launch.html +1 -1
- package/dist/ui/static/launch.txt +3 -3
- package/dist/ui/static/local-knowledge/__next._full.txt +3 -3
- package/dist/ui/static/local-knowledge/__next._head.txt +1 -1
- package/dist/ui/static/local-knowledge/__next._index.txt +2 -2
- package/dist/ui/static/local-knowledge/__next._tree.txt +2 -2
- package/dist/ui/static/local-knowledge/__next.local-knowledge.__PAGE__.txt +2 -2
- package/dist/ui/static/local-knowledge/__next.local-knowledge.txt +1 -1
- package/dist/ui/static/local-knowledge/capsule/__next._full.txt +3 -3
- package/dist/ui/static/local-knowledge/capsule/__next._head.txt +1 -1
- package/dist/ui/static/local-knowledge/capsule/__next._index.txt +2 -2
- package/dist/ui/static/local-knowledge/capsule/__next._tree.txt +2 -2
- package/dist/ui/static/local-knowledge/capsule/__next.local-knowledge.capsule.__PAGE__.txt +2 -2
- package/dist/ui/static/local-knowledge/capsule/__next.local-knowledge.capsule.txt +1 -1
- package/dist/ui/static/local-knowledge/capsule/__next.local-knowledge.txt +1 -1
- package/dist/ui/static/local-knowledge/capsule.html +1 -1
- package/dist/ui/static/local-knowledge/capsule.txt +3 -3
- package/dist/ui/static/local-knowledge.html +1 -1
- package/dist/ui/static/local-knowledge.txt +3 -3
- package/dist/ui/static/memoriaviva/__next._full.txt +6 -6
- package/dist/ui/static/memoriaviva/__next._head.txt +1 -1
- package/dist/ui/static/memoriaviva/__next._index.txt +2 -2
- package/dist/ui/static/memoriaviva/__next._tree.txt +2 -2
- package/dist/ui/static/memoriaviva/__next.memoriaviva.__PAGE__.txt +4 -4
- package/dist/ui/static/memoriaviva/__next.memoriaviva.txt +1 -1
- package/dist/ui/static/memoriaviva/consolidation/__next._full.txt +4 -4
- package/dist/ui/static/memoriaviva/consolidation/__next._head.txt +1 -1
- package/dist/ui/static/memoriaviva/consolidation/__next._index.txt +2 -2
- package/dist/ui/static/memoriaviva/consolidation/__next._tree.txt +2 -2
- package/dist/ui/static/memoriaviva/consolidation/__next.memoriaviva.consolidation.__PAGE__.txt +2 -2
- package/dist/ui/static/memoriaviva/consolidation/__next.memoriaviva.consolidation.txt +1 -1
- package/dist/ui/static/memoriaviva/consolidation/__next.memoriaviva.txt +1 -1
- package/dist/ui/static/memoriaviva/consolidation.html +1 -1
- package/dist/ui/static/memoriaviva/consolidation.txt +4 -4
- package/dist/ui/static/memoriaviva/detail/__next._full.txt +6 -6
- package/dist/ui/static/memoriaviva/detail/__next._head.txt +1 -1
- package/dist/ui/static/memoriaviva/detail/__next._index.txt +2 -2
- package/dist/ui/static/memoriaviva/detail/__next._tree.txt +2 -2
- package/dist/ui/static/memoriaviva/detail/__next.memoriaviva.detail.__PAGE__.txt +4 -4
- package/dist/ui/static/memoriaviva/detail/__next.memoriaviva.detail.txt +1 -1
- package/dist/ui/static/memoriaviva/detail/__next.memoriaviva.txt +1 -1
- package/dist/ui/static/memoriaviva/detail.html +1 -1
- package/dist/ui/static/memoriaviva/detail.txt +6 -6
- package/dist/ui/static/memoriaviva/review-queue/__next._full.txt +4 -4
- package/dist/ui/static/memoriaviva/review-queue/__next._head.txt +1 -1
- package/dist/ui/static/memoriaviva/review-queue/__next._index.txt +2 -2
- package/dist/ui/static/memoriaviva/review-queue/__next._tree.txt +2 -2
- package/dist/ui/static/memoriaviva/review-queue/__next.memoriaviva.review-queue.__PAGE__.txt +2 -2
- package/dist/ui/static/memoriaviva/review-queue/__next.memoriaviva.review-queue.txt +1 -1
- package/dist/ui/static/memoriaviva/review-queue/__next.memoriaviva.txt +1 -1
- package/dist/ui/static/memoriaviva/review-queue.html +1 -1
- package/dist/ui/static/memoriaviva/review-queue.txt +4 -4
- package/dist/ui/static/memoriaviva.html +1 -1
- package/dist/ui/static/memoriaviva.txt +6 -6
- package/node_modules/@oscharko-dev/keiko-cli/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/doctor.d.ts +24 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/doctor.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/doctor.js +108 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/evaluate.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/evaluate.js +7 -4
- package/node_modules/@oscharko-dev/keiko-cli/dist/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/index.js +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/init.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-cli/dist/init.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/init.js +4 -4
- package/node_modules/@oscharko-dev/keiko-cli/dist/install-layout.d.ts +6 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/install-layout.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/install-layout.js +24 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/launcher.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/launcher.js +5 -7
- package/node_modules/@oscharko-dev/keiko-cli/dist/lifecycle.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/lifecycle.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/lifecycle.js +75 -30
- package/node_modules/@oscharko-dev/keiko-cli/dist/memory.d.ts +3 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/memory.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/memory.js +76 -7
- package/node_modules/@oscharko-dev/keiko-cli/dist/run.d.ts +3 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/run.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/run.js +123 -43
- package/node_modules/@oscharko-dev/keiko-cli/dist/runner.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/runner.js +20 -4
- package/node_modules/@oscharko-dev/keiko-cli/dist/ui.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/ui.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/ui.js +17 -14
- package/node_modules/@oscharko-dev/keiko-cli/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/bff-wire.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/bff-wire.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/connected-context.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/connected-context.js +1 -2
- package/node_modules/@oscharko-dev/keiko-contracts/dist/evidence.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/evidence.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/gateway.d.ts +12 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/gateway.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/index.d.ts +4 -2
- package/node_modules/@oscharko-dev/keiko-contracts/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/index.js +4 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/local-knowledge-validation.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-audit-events.d.ts +13 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-audit-events.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-audit-events.js +7 -6
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-internal.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-internal.js +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-operations.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-workflow-port.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-workflow-port.js +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/bffWire.d.ts +23 -4
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/bffWire.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/index.js +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/sourceEnvelope.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/sourceEnvelope.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/sourceEnvelope.js +26 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/testQualityRubric.d.ts +5 -3
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/testQualityRubric.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/testQualityRubric.js +29 -3
- package/node_modules/@oscharko-dev/keiko-contracts/dist/text-safety.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/text-safety.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/text-safety.js +58 -0
- package/node_modules/@oscharko-dev/keiko-contracts/package.json +5 -1
- package/node_modules/@oscharko-dev/keiko-evaluations/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-evaluations/dist/surface-parity.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evaluations/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/candidatesArtifact.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/candidatesArtifact.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/candidatesArtifact.js +62 -13
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/companionStore.d.ts +3 -3
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/companionStore.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/companionStore.js +31 -11
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/schema.d.ts +35 -3
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/schema.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/schema.js +107 -3
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/store.d.ts +15 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/store.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/store.js +248 -36
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/index.d.ts +4 -4
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/manifestSchema.d.ts +33 -2
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/manifestSchema.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/store.d.ts +34 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/store.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/store.js +95 -22
- package/node_modules/@oscharko-dev/keiko-evidence/dist/side-file.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/side-file.js +17 -5
- package/node_modules/@oscharko-dev/keiko-evidence/dist/store.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/store.js +128 -12
- package/node_modules/@oscharko-dev/keiko-evidence/dist/workflow-evidence.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/workflow-evidence.js +1 -3
- package/node_modules/@oscharko-dev/keiko-evidence/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-harness/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-harness/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/capsule-set-lifecycle.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/capsule-set-lifecycle.js +1 -2
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/composition.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/composition.js +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/index.d.ts +0 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/index.js +0 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/model-gateway-answer-generator.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/model-gateway-answer-generator.js +7 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/types.js +2 -3
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/extract.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/extract.js +45 -21
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/media-type.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/media-type.js +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/walk.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/walk.js +11 -3
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/dimensions.d.ts +2 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/dimensions.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/dimensions.js +42 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/fixtures.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/fixtures.js +34 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/report.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/report.js +7 -6
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/runner.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/runner.js +7 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/types.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/types.js +2 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/embedding-batcher.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/embedding-batcher.js +121 -3
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/orchestrator.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/orchestrator.js +34 -4
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/_internal.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/_internal.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/_internal.js +63 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/docx-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/docx-parser.js +4 -7
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/html-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/html-parser.js +67 -11
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/index.js +3 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/json-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/json-parser.js +39 -3
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/ocr/null-ocr-adapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/ocr/ocr-pipeline-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/ocr/ocr-pipeline-parser.js +46 -11
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/parser-test-fixtures.d.ts +2 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/parser-test-fixtures.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/parser-test-fixtures.js +2 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/pdf-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/pdf-parser.js +114 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/xlsx-parser.d.ts +3 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/xlsx-parser.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/xlsx-parser.js +425 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/privacy/retention-applier.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/qualityIntelligence/capsuleCorpus.d.ts +9 -4
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/qualityIntelligence/capsuleCorpus.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/qualityIntelligence/capsuleCorpus.js +11 -6
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/retrieval-runner.js +15 -2
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/scoped-vector-search.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/scoped-vector-search.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/scoped-vector-search.js +220 -7
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/types.d.ts +2 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/source-lifecycle.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/source-lifecycle.js +3 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/package.json +4 -2
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/capture-safety.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/capture-safety.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/capture-safety.js +17 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/errors.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/errors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/index.js +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/salience.js +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/_constants.d.ts +3 -0
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/_constants.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/_constants.js +5 -0
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/consolidate.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/consolidate.js +93 -30
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/stale.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/stale.js +3 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/types.d.ts +5 -0
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/types.js +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/package.json +2 -2
- package/node_modules/@oscharko-dev/keiko-memory-governance/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-governance/dist/forget.js +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-governance/dist/types.js +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-governance/package.json +2 -2
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/context.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/context.js +61 -18
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/ranking.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/ranking.js +3 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/retrieve.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/retrieve.js +26 -4
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/types.d.ts +9 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/embeddings.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/embeddings.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/embeddings.js +21 -0
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/migrate-encrypt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/migrate-encrypt.js +24 -4
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/schema.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/schema.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/schema.js +27 -4
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/tombstones.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/tombstones.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/tombstones.js +21 -4
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/types.d.ts +22 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/validate.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/validate.js +3 -0
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/vault.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/vault.js +105 -28
- package/node_modules/@oscharko-dev/keiko-memory-vault/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/config.d.ts +2 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/config.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/config.js +83 -69
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/embedding.d.ts +3 -2
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/embedding.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/embedding.js +20 -16
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/gateway.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/gateway.js +9 -3
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/http.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/http.js +29 -3
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/index.d.ts +4 -4
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/index.js +3 -3
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/normalize.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/normalize.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/normalize.js +22 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-adapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-adapter.js +69 -10
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-embedding-adapter.d.ts +20 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-embedding-adapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-embedding-adapter.js +122 -7
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityGate.d.ts +10 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityGate.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityGate.js +33 -11
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityMapping.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityMapping.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityMapping.js +21 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/routing.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/routing.js +2 -13
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/resilience.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/resilience.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/resilience.js +18 -2
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/types.d.ts +5 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/assertions.d.ts +35 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/assertions.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/assertions.js +74 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/deduplication.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/deduplication.js +6 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/a11yBaseline.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/a11yBaseline.js +64 -19
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/cleanToScreenIr.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/cleanToScreenIr.js +3 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/color.d.ts +6 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/color.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/color.js +22 -9
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/emissionPlan.d.ts +4 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/emissionPlan.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/emissionPlan.js +28 -12
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/htmlCssAdapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/htmlCssAdapter.js +123 -33
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/index.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/irTypes.d.ts +7 -4
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/irTypes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/links.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/links.js +13 -17
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/navGraph.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/navGraph.js +35 -12
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/normalize.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/normalize.js +54 -6
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/screenIrTestBaseline.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/screenIrTestBaseline.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/screenIrTestBaseline.js +29 -10
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/tokens.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/tokens.js +10 -4
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/requirementExcerpt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/requirementExcerpt.js +15 -6
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/staleness.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/staleness.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/staleness.js +162 -6
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/testDesignModel.d.ts +14 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/testDesignModel.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/testDesignModel.js +50 -12
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/validation.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/validation.js +4 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/alm.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/alm.js +29 -30
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/markdown.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/markdown.js +34 -5
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/qtest.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/qtest.js +29 -29
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/spreadsheetSafeCsv.d.ts +2 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/spreadsheetSafeCsv.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/spreadsheetSafeCsv.js +40 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/traceability.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/traceability.js +12 -9
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/xray.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/xray.js +6 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/textSafety.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/textSafety.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/textSafety.js +7 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/candidateBounds.d.ts +10 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/candidateBounds.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/candidateBounds.js +14 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/index.js +3 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/parseGeneratedCandidates.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/parseGeneratedCandidates.js +97 -50
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/prompt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/prompt.js +35 -7
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/index.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/index.js +2 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-sdk/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-sdk/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-security/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-security/dist/errors/gateway.d.ts +11 -0
- package/node_modules/@oscharko-dev/keiko-security/dist/errors/gateway.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-security/dist/errors/gateway.js +13 -0
- package/node_modules/@oscharko-dev/keiko-security/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/assistant-response.d.ts +6 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/assistant-response.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/assistant-response.js +12 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-handlers.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-handlers.js +61 -16
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-stream-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-stream-handlers.js +11 -9
- package/node_modules/@oscharko-dev/keiko-server/dist/conversation-prompt.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/conversation-prompt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/conversation-prompt.js +3 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/deps.d.ts +4 -2
- package/node_modules/@oscharko-dev/keiko-server/dist/deps.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/deps.js +44 -69
- package/node_modules/@oscharko-dev/keiko-server/dist/gateway-setup.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/gateway-setup.js +120 -28
- package/node_modules/@oscharko-dev/keiko-server/dist/governed-workflow.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/governed-workflow.js +4 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-handoff.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-handoff.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-orchestrator.d.ts +0 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-orchestrator.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-orchestrator.js +222 -18
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-hybrid.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-hybrid.js +118 -23
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-multi-source.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-multi-source.js +57 -22
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa.js +14 -5
- package/node_modules/@oscharko-dev/keiko-server/dist/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/index.js +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-grounded-qa.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-grounded-qa.js +11 -4
- package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-handlers.js +26 -14
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-audit-handler.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-audit-handler.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-audit-handler.js +52 -27
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-capture-policy.d.ts +10 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-capture-policy.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-capture-policy.js +44 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-handlers.js +79 -57
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-registry.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-registry.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-conv-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-conv-handlers.js +6 -4
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-conversation-context.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-diagnostics.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-diagnostics.js +16 -9
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-handlers.d.ts +3 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-handlers.js +538 -87
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-maintenance-handlers.d.ts +6 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-maintenance-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-maintenance-handlers.js +17 -38
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-retention.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-retention.js +7 -15
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-salience.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-salience.js +17 -2
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-scope-sanitizer.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-scope-sanitizer.js +19 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-target-resolver.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-target-resolver.js +4 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-workflow-port.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-workflow-port.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-workflow-port.js +108 -27
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/capsuleAdapter.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/capsuleAdapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/capsuleAdapter.js +3 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/connectorErrors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/connectorErrors.js +11 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/editRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/editRoutes.js +62 -7
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/exportRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/exportRoutes.js +98 -33
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConcurrency.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConcurrency.js +2 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnector.d.ts +6 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnector.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnector.js +16 -3
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorAudit.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorAudit.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorErrors.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorErrors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorErrors.js +3 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConsent.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConsent.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConsent.js +3 -3
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaObservedActions.d.ts +5 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaObservedActions.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaObservedActions.js +10 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaReadiness.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaReadiness.js +11 -5
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaRenderPort.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaRenderPort.js +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaScopedPagination.d.ts +3 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaScopedPagination.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaScopedPagination.js +71 -10
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotBuilder.d.ts +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotBuilder.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotBuilder.js +86 -23
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotTypes.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotTypes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaTokenSource.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaTokenSource.js +4 -3
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaUrl.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaUrl.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaCodegenRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaCodegenRoutes.js +60 -20
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotAdapter.d.ts +11 -6
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotAdapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotAdapter.js +144 -6
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotOrchestration.d.ts +9 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotOrchestration.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotOrchestration.js +84 -15
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.d.ts +9 -7
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.js +206 -42
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/generationPort.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/generationPort.js +12 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffErrors.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffErrors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffErrors.js +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffRoutes.js +41 -9
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/index.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/judgePort.d.ts +3 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/judgePort.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/judgePort.js +86 -68
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/modelSelection.d.ts +15 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/modelSelection.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/modelSelection.js +56 -39
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reCheckRoutes.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reCheckRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reCheckRoutes.js +382 -75
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/retentionRoutes.d.ts +5 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/retentionRoutes.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/retentionRoutes.js +70 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewRoutes.js +20 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewStore.d.ts +25 -4
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewStore.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewStore.js +72 -9
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runExecution.d.ts +3 -2
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runExecution.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runExecution.js +44 -16
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runIngestion.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runIngestion.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runIngestion.js +370 -38
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRegistry.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRegistry.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRoutes.js +15 -5
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/traceabilityRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/traceabilityRoutes.js +36 -4
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/uiRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/uiRoutes.js +73 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/routes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/routes.js +20 -6
- package/node_modules/@oscharko-dev/keiko-server/dist/run-engine.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/run-engine.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/run-engine.js +3 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/run-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/run-handlers.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/sse-write.d.ts +9 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/sse-write.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/sse-write.js +26 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/store/chats.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/store/chats.js +16 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/store/messages.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/store-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/store-handlers.js +4 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/terminal.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-tools/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-tools/dist/patch-normalize.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-tools/dist/patch-normalize.js +13 -7
- package/node_modules/@oscharko-dev/keiko-tools/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-verification/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-verification/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/memory.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/memory.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/memory.js +16 -18
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/prompt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/prompt.js +6 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/workflow.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/workflow.js +3 -3
- package/node_modules/@oscharko-dev/keiko-workflows/dist/governed-handoff.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/planner/anchors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/planner/anchors.js +68 -0
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/descriptors.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/modelRoutedTestDesign.d.ts +18 -2
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/modelRoutedTestDesign.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/modelRoutedTestDesign.js +209 -54
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/runtimeCommon.d.ts +4 -4
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/runtimeCommon.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/runtimeCommon.js +4 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/unit-tests/target-guard.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/discovery.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/discovery.js +34 -2
- package/node_modules/@oscharko-dev/keiko-workspace/dist/realpath.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-workspace/dist/realpath.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/realpath.js +2 -2
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchEntries.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchEntries.js +1 -2
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchLineSelection.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchLineSelection.js +2 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchMatchers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchMatchers.js +74 -2
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchRegexSafety.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/package.json +1 -1
- package/package.json +23 -6
- package/dist/ui/static/_next/static/chunks/082obv3v03b-9.js +0 -2
- package/dist/ui/static/_next/static/chunks/0uifns067thv8.js +0 -1
- package/dist/ui/static/_next/static/chunks/0x31-j53ab1tt.js +0 -1
- package/dist/ui/static/_next/static/chunks/1t04tfgin0v_g.js +0 -106
- package/dist/ui/static/_next/static/chunks/1v4hrxrm_6_rw.js +0 -1
- package/dist/ui/static/_next/static/chunks/27jktro2p5rq9.js +0 -4
- package/dist/ui/static/_next/static/chunks/2lypy3ewh0r04.js +0 -1
- package/dist/ui/static/_next/static/chunks/32573pyyglqxl.js +0 -1
- package/dist/ui/static/_next/static/chunks/3_t_pzet29qtn.js +0 -1
- package/dist/ui/static/_next/static/chunks/3jgg_oe0iok0l.js +0 -1
- package/dist/ui/static/_next/static/chunks/3o_oia3vsam60.js +0 -1
- package/dist/ui/static/_next/static/chunks/3wr_35f2vg6sd.css +0 -1
- package/dist/ui/static/_next/static/chunks/turbopack-2lg1g6kbsfm0x.js +0 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/scripted-answer-generator.d.ts +0 -6
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/scripted-answer-generator.d.ts.map +0 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/scripted-answer-generator.js +0 -49
- /package/dist/ui/static/_next/static/{Hb6brrvZY2nZtizQlYhVt → fQMXe8UmV01bh25WOoIt3}/_buildManifest.js +0 -0
- /package/dist/ui/static/_next/static/{Hb6brrvZY2nZtizQlYhVt → fQMXe8UmV01bh25WOoIt3}/_clientMiddlewareManifest.js +0 -0
- /package/dist/ui/static/_next/static/{Hb6brrvZY2nZtizQlYhVt → fQMXe8UmV01bh25WOoIt3}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,95057,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r={formatUrl:function(){return c},formatWithValidation:function(){return u},urlObjectKeys:function(){return s}};for(var o in r)Object.defineProperty(n,o,{enumerable:!0,get:r[o]});let a=e.r(90809)._(e.r(98183)),i=/https?|ftp|gopher|file/;function c(e){let{auth:t,hostname:n}=e,r=e.protocol||"",o=e.pathname||"",c=e.hash||"",s=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:n&&(u=t+(~n.indexOf(":")?`[${n}]`:n),e.port&&(u+=":"+e.port)),s&&"object"==typeof s&&(s=String(a.urlQueryToSearchParams(s)));let l=e.search||s&&`?${s}`||"";return r&&!r.endsWith(":")&&(r+=":"),e.slashes||(!r||i.test(r))&&!1!==u?(u="//"+(u||""),o&&"/"!==o[0]&&(o="/"+o)):u||(u=""),c&&"#"!==c[0]&&(c="#"+c),l&&"?"!==l[0]&&(l="?"+l),o=o.replace(/[?#]/g,encodeURIComponent),l=l.replace("#","%23"),`${r}${u}${o}${l}${c}`}let s=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return c(e)}},18581,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"useMergedRef",{enumerable:!0,get:function(){return o}});let r=e.r(71645);function o(e,t){let n=(0,r.useRef)(null),o=(0,r.useRef)(null);return(0,r.useCallback)(r=>{if(null===r){let e=n.current;e&&(n.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(n.current=a(e,r)),t&&(o.current=a(t,r))},[e,t])}function a(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let n=e(t);return"function"==typeof n?n:()=>e(null)}}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},73668,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"isLocalURL",{enumerable:!0,get:function(){return a}});let r=e.r(18967),o=e.r(52817);function a(e){if(!(0,r.isAbsoluteUrl)(e))return!0;try{let t=(0,r.getLocationOrigin)(),n=new URL(e,t);return n.origin===t&&(0,o.hasBasePath)(n.pathname)}catch(e){return!1}}},84508,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"errorOnce",{enumerable:!0,get:function(){return r}});let r=e=>{}},22016,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r={default:function(){return m},useLinkStatus:function(){return b}};for(var o in r)Object.defineProperty(n,o,{enumerable:!0,get:r[o]});let a=e.r(90809),i=e.r(43476),c=a._(e.r(71645)),s=e.r(95057),u=e.r(8372),l=e.r(18581),f=e.r(18967),d=e.r(5550);e.r(33525);let p=e.r(88540),h=e.r(91949),y=e.r(73668),g=e.r(9396);function m(t){var n,r;let o,a,m,[b,v]=(0,c.useOptimistic)(h.IDLE_LINK_STATUS),P=(0,c.useRef)(null),{href:C,as:O,children:T,prefetch:R=null,passHref:w,replace:j,shallow:U,scroll:E,onClick:_,onMouseEnter:N,onTouchStart:k,legacyBehavior:x=!1,onNavigate:L,transitionTypes:I,ref:A,unstable_dynamicOnHover:$,...M}=t;o=T,x&&("string"==typeof o||"number"==typeof o)&&(o=(0,i.jsx)("a",{children:o}));let D=c.default.useContext(u.AppRouterContext),J=!1!==R,K=!1!==R?null===(r=R)||"auto"===r?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,F="string"==typeof(n=O||C)?n:(0,s.formatUrl)(n);if(x){if(o?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});a=c.default.Children.only(o)}let G=x?a&&"object"==typeof a&&a.ref:A,B=c.default.useCallback(e=>(null!==D&&(P.current=(0,h.mountLinkInstance)(e,F,D,K,J,v)),()=>{P.current&&((0,h.unmountLinkForCurrentNavigation)(P.current),P.current=null),(0,h.unmountPrefetchableInstance)(e)}),[J,F,D,K,v]),H={ref:(0,l.useMergedRef)(B,G),onClick(t){x||"function"!=typeof _||_(t),x&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(t),!D||t.defaultPrevented||function(t,n,r,o,a,i,s){if("u">typeof window){let u,{nodeName:l}=t.currentTarget;if("A"===l.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,y.isLocalURL)(n)){o&&(t.preventDefault(),location.replace(n));return}if(t.preventDefault(),i){let e=!1;if(i({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:f}=e.r(99781);c.default.startTransition(()=>{f(n,o?"replace":"push",!1===a?p.ScrollBehavior.NoScroll:p.ScrollBehavior.Default,r.current,s)})}}(t,F,P,j,E,L,I)},onMouseEnter(e){x||"function"!=typeof N||N(e),x&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),D&&J&&(0,h.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){x||"function"!=typeof k||k(e),x&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),D&&J&&(0,h.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,f.isAbsoluteUrl)(F)?H.href=F:x&&!w&&("a"!==a.type||"href"in a.props)||(H.href=(0,d.addBasePath)(F)),m=x?c.default.cloneElement(a,H):(0,i.jsx)("a",{...M,...H,children:o}),(0,i.jsx)(S.Provider,{value:b,children:m})}e.r(84508);let S=(0,c.createContext)(h.IDLE_LINK_STATUS),b=()=>(0,c.useContext)(S);("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},76055,66702,e=>{"use strict";let t,n,r={maxConnectedSources:16,maxLocalKnowledgeSources:16,maxPromptReferences:8,maxExcerptChars:900,referenceBudget:10,hybridMaxCandidates:24,hybridMaxExcerptBytes:131072};r.maxConnectedSources,r.maxLocalKnowledgeSources,e.s(["DEFAULT_GROUNDING_LIMITS",0,r],66702);class o extends Error{code;status;constructor(e,t,n){super(t),this.code=e,this.status=n,this.name="ApiError"}}async function a(e,t){let n=(t?.method??"GET").toUpperCase(),r=await fetch(e,{...t,headers:{Accept:"application/json",...t?.body!==void 0?{"Content-Type":"application/json"}:{},..."GET"===n||"HEAD"===n?{}:{"X-Keiko-CSRF":"1"},...t?.headers??{}}});if(!r.ok){let e="INTERNAL",t=`HTTP ${r.status.toString()}`;try{let n=await r.json();e=n.error.code,t=n.error.message}catch{}throw new o(e,t,r.status)}if(204!==r.status)return r.json()}async function i(){let e=await a("/api/config");return{config:e.config,configPresent:e.configPresent,effectiveGroundingLimits:e.effectiveGroundingLimits??r}}async function c(){return t??=a("/api/models").catch(e=>{throw t=void 0,e})}async function s(e){let n=await a("/api/gateway/setup",{method:"POST",body:JSON.stringify(e)});return t=void 0,n}async function u(e){return a("/api/runs",{method:"POST",body:JSON.stringify(e)})}async function l(e){return a("/api/chats/runs",{method:"POST",body:JSON.stringify(e)})}async function f(e){return a("/api/chats/messages/grounded/handoff",{method:"POST",body:JSON.stringify(e)})}async function d(e){return a(`/api/runs/${encodeURIComponent(e)}/cancel`,{method:"POST",body:JSON.stringify({confirm:!0})})}async function p(e){return a(`/api/runs/${encodeURIComponent(e)}`)}async function h(e){return a(`/api/runs/${encodeURIComponent(e)}/apply`,{method:"POST",body:JSON.stringify({confirm:!0})})}async function y(e){return a(`/api/evidence/${encodeURIComponent(e)}`)}async function g(){return n??=a("/api/projects").finally(()=>{n=void 0})}async function m(e){return a("/api/projects",{method:"POST",body:JSON.stringify(e)})}async function S(e){return a(`/api/chats?projectPath=${encodeURIComponent(e)}`)}async function b(e,t){return a(`/api/chats?id=${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(t)})}async function v(e,t){return a(`/api/chats?id=${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify({connectedScopes:t})})}async function P(e,t){return a(`/api/chats?id=${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify({localKnowledgeScopes:t})})}async function C(e,t){let n=new URLSearchParams;return n.set("chatId",e),n.set("projectPath",t),a(`/api/chats/messages?${n.toString()}`)}async function O(e={}){return a("/api/desktop/chats",{method:"POST",body:JSON.stringify(e)})}async function T(e,t){return a("/api/desktop/chat",{method:"POST",body:JSON.stringify(e),signal:t??null})}class R extends Error{code;constructor(e,t){super(t),this.code=e,this.name="StreamingUnavailableError"}}async function w(e,t,n){let r,o=e.getReader(),a=new TextDecoder,i="";try{for(;!t.aborted;){let e=await o.read();if(e.done)break;let t=(i+=a.decode(e.value,{stream:!0})).split("\n");i=t.pop()??"",r=function(e,t,n){let r=t;for(let t of e){let e=t.trimEnd();if(e.startsWith("event:"))r=e.slice(6).trim();else if(e.startsWith("data:")){let t,o=e.slice(5).trim();try{t=JSON.parse(o)}catch{continue}!function(e,t,n){switch(e){case"token":{let e=function(e){if("object"==typeof e&&null!==e&&"text"in e&&"string"==typeof e.text)return e}(t);void 0!==e&&n.onToken(e.text);break}case"done":{let e=function(e){if("object"==typeof e&&null!==e&&"chat"in e&&"messages"in e)return e}(t);void 0!==e&&n.onDone(e);break}case"error":{let e=function(e){if("object"==typeof e&&null!==e&&"code"in e&&"message"in e&&"string"==typeof e.code&&"string"==typeof e.message)return e}(t);void 0!==e&&n.onError(e);break}case"cancelled":n.onCancelled()}}(r,t,n),r=void 0}else""===e&&(r=void 0)}return r}(t,r,n)}}finally{o.releaseLock()}}async function j(e,t,n){let r=await fetch("/api/desktop/chat/stream",{method:"POST",headers:{Accept:"text/event-stream","Content-Type":"application/json","X-Keiko-CSRF":"1"},body:JSON.stringify(e),signal:t});if(!(r.headers.get("content-type")??"").includes("text/event-stream")){let e="STREAMING_UNSUPPORTED",t=`HTTP ${r.status.toString()}`;try{let n=await r.json();e=n.error?.code??e,t=n.error?.message??t}catch{}throw new R(e,t)}if(null===r.body)throw new R("STREAMING_UNSUPPORTED","Response body was null.");await w(r.body,t,n)}async function U(e,t){let n=new URLSearchParams;return n.set("root",e),void 0!==t&&t.length>0&&n.set("path",t),a(`/api/files/directories?${n.toString()}`)}async function E(e,t=""){let n=new URLSearchParams;return n.set("root",e),t.length>0&&n.set("path",t),a(`/api/files/tree?${n.toString()}`)}async function _(e,t){let n=new URLSearchParams;return n.set("root",e),n.set("path",t),a(`/api/files/preview?${n.toString()}`)}async function N(e,t){let n=new URLSearchParams;return n.set("root",e),n.set("path",t),a(`/api/files/content?${n.toString()}`)}async function k(e){return a("/api/files/content",{method:"PATCH",body:JSON.stringify(e)})}async function x(e,t){return a("/api/chats/messages/grounded",{method:"POST",body:JSON.stringify(e),signal:t??null})}e.s(["ApiError",0,o,"StreamingUnavailableError",0,R,"applyRun",0,h,"askGrounded",0,x,"cancelRun",0,d,"createDesktopChat",0,O,"createProject",0,m,"fetchChatMessages",0,C,"fetchChats",0,S,"fetchConfig",0,i,"fetchEvidenceManifest",0,y,"fetchFilesContent",0,N,"fetchFilesDirectories",0,U,"fetchFilesPreview",0,_,"fetchFilesTree",0,E,"fetchModels",0,c,"fetchProjects",0,g,"fetchRunReport",0,p,"saveFilesContent",0,k,"sendDesktopChat",0,T,"sendDesktopChatStream",0,j,"setupGateway",0,s,"startChatRun",0,l,"startGroundedWorkflowHandoff",0,f,"startRun",0,u,"updateChat",0,b,"updateChatConnectedScopes",0,v,"updateChatLocalKnowledgeScopes",0,P],76055)},18566,(e,t,n)=>{t.exports=e.r(76562)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e100f;--surface:#161816;--card:#1d1f1d;--card-2:#242624;--inset:#0b0d0c;--line:#2c2e2d;--line-soft:#222523;--line-strong:#404341;--fg:#f3f6f4;--fg-muted:#a9abaa;--fg-dim:#909391;--fg-faint:#8a8d8b;--ink-inverse:#101211;--ink-muted:#787b79;--accent:#4eba87;--accent-bright:#61d19a;--accent-dim:#4eba872e;--accent-line:#4eba8766;--accent-glow:#4eba8742;--accent-text:var(--accent);--ok:#4eba87;--warn:#e8aa4e;--info:#6db3e4;--danger:#ea6a64;--radius:14px;--radius-sm:9px;--radius-lg:18px;--shadow-card:0 1px 0 0 #ffffff08 inset, 0 8px 24px -12px #0009;--shadow-pop:0 16px 50px -16px #000000b3, 0 0 0 1px var(--line);--font-ui:-apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}@supports (color:lab(0% 0 0)){:root{--bg:lab(4.47462% -.857808 .340948);--surface:lab(7.83543% -1.24855 .496358);--card:lab(11.3143% -1.28133 .509417);--card-2:lab(14.7943% -1.28087 .509298);--inset:lab(3.39429% -.712723 .283253);--line:lab(18.8543% -1.28049 .509191);--line-soft:lab(14.2143% -1.28095 .509322);--line-strong:lab(28.1479% -1.60055 .636458);--fg:lab(96.5608% -.958711 .381434);--fg-muted:lab(69.8944% -1.27876 .508702);--fg-dim:lab(60.6144% -1.27894 .508761);--fg-faint:lab(58.2944% -1.27894 .50875);--ink-inverse:lab(5.31948% -1.20091 .477222);--ink-muted:lab(51.3344% -1.27906 .508785);--accent-bright:lab(76.2044% -42.9221 16.9102);--accent-dim:lab(68.2884% -41.5409 16.2592/.18);--accent-line:lab(68.2884% -41.5409 16.2592/.4);--accent-glow:lab(68.2884% -41.5409 16.2592/.26);--warn:lab(74.4048% 16.5655 55.5067);--info:lab(69.8284% -12.8528 -31.6803);--danger:lab(61.3079% 50.1954 28.9223);--shadow-card:0 1px 0 0 lab(100% 0 0/.03) inset, 0 8px 24px -12px #0009}}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--fg);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow:hidden}#root{height:100%}button{color:inherit;cursor:pointer;background:0 0;border:none;font-family:inherit}::selection{background:var(--accent-glow)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line);background-clip:padding-box;border:3px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--line-strong)}::-webkit-scrollbar-track{background:0 0}.kbd{font-family:var(--font-mono);color:var(--fg-dim);background:var(--inset);border:1px solid var(--line-soft);border-radius:6px;align-items:center;gap:2px;padding:4px 6px;font-size:11px;line-height:1;display:inline-flex}.row{align-items:center;display:flex}.spacer{flex:1}.mono{font-family:var(--font-mono)}.dot{border-radius:50%;flex:none;width:7px;height:7px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef1ef;--surface:#f6f8f7;--card:#fff;--card-2:#f0f3f1;--inset:#eaeeec;--line:#d4d9d6;--line-soft:#e0e4e2;--line-strong:#babfbc;--fg:#1f2622;--fg-muted:#484f4b;--fg-dim:#595f5c;--fg-faint:#646b67;--accent-text:#007047;--danger:#b32228;--warn:#704500;--info:#005b8d;--ok:#00764c;--shadow-card:0 1px 0 0 #ffffffb3 inset, 0 6px 18px -12px #141e1938;--shadow-pop:0 18px 50px -18px #141e1942, 0 0 0 1px var(--line)}@supports (color:lab(0% 0 0)){[data-theme=light]{--bg:lab(94.8344% -1.27849 .50863);--surface:lab(97.4888% -.958681 .381446);--card:lab(100% 0 0);--card-2:lab(95.4144% -1.27849 .50863);--inset:lab(93.688% -1.59839 .635874);--line:lab(86.1616% -1.91858 .763166);--line-soft:lab(90.208% -1.59842 .635874);--line-strong:lab(76.9087% -2.55951 1.01799);--fg:lab(14.3222% -3.86415 1.53382);--fg-muted:lab(32.8691% -3.52936 1.40247);--fg-dim:lab(39.8157% -3.20548 1.27413);--fg-faint:lab(44.4557% -3.20452 1.27386);--accent-text:lab(41.3781% -44.0935 17.2352);--danger:lab(40.1691% 57.0293 36.0154);--warn:lab(33.5217% 22.3139 76.2583);--info:lab(35.7269% -9.27331 -46.1411);--ok:lab(43.7008% -43.9579 17.1976);--shadow-card:0 1px 0 0 lab(100% 0 0/.7) inset, 0 6px 18px -12px #141e1938}}[data-theme=light] .dlg-overlay{background:#2a2f2c57;background:lab(18.9354% -3.21262 1.27611/.34)}[data-theme=light] .ws-fab,[data-theme=light] .dlg-primary,[data-theme=light] .cmp-send[data-on=true],[data-theme=light] .qi-badge-succeeded,[data-theme=light] .qi-badge-running,[data-theme=light] .qi-badge-cancelled{color:var(--ink-inverse)}.sb-section{align-items:center;padding:16px 10px 6px;display:flex}.sb-section-label{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-faint);font-size:11px;font-weight:600}.proj-head{width:100%;color:var(--fg-muted);text-align:left;border-radius:8px;align-items:center;gap:8px;padding:7px 9px;font-size:13px;display:flex}.proj-head:hover{background:var(--card);color:var(--fg)}.proj-caret{color:var(--fg-faint);place-items:center;transition:transform .15s;display:grid}.proj-caret[data-open=true]{transform:rotate(90deg)}.proj-name{font-weight:500}.proj-chats{padding:1px 0 4px}.proj-empty{color:var(--fg-muted);padding:5px 9px 5px 31px;font-size:12.5px}.chat-row{width:100%;color:var(--fg-dim);text-align:left;border-radius:8px;align-items:center;gap:7px;padding:6px 9px 6px 31px;font-size:13px;display:flex;position:relative}.chat-row:hover,.chat-row[data-active=true]{background:var(--card);color:var(--fg)}.chat-row[data-active=true]:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:14px}.chat-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.chat-time{color:var(--fg-muted);font-size:11px;font-family:var(--font-mono)}.chat-meta{color:var(--fg-faint);place-items:center;display:grid}.app{background:var(--surface);flex-direction:column;height:100%;display:flex}.header{background:var(--surface);flex:none;align-items:center;gap:5px;height:46px;padding:0 10px;display:flex}.hd-brand{align-items:center;gap:8px;padding:0 6px 0 4px;display:flex}.hd-logo{width:22px;height:22px}.hd-wordmark{letter-spacing:-.01em;font-size:15px;font-weight:650}.tb-btn{width:30px;height:30px;color:var(--fg-dim);border-radius:8px;place-items:center;display:grid}.tb-btn:hover{background:var(--card);color:var(--fg)}.tb-btn[data-on=true]{color:var(--fg)}.tb-tabs{align-items:center;gap:4px;margin-left:2px;display:flex}.tb-tab{color:var(--fg-muted);border:1px solid #0000;border-radius:9px;align-items:center;gap:8px;padding:6px 11px;font-size:13px;display:flex}.tb-tab[data-active=true]{background:var(--card);color:var(--fg);border-color:var(--line-soft)}.tb-status{color:var(--fg-muted);border:1px solid var(--line-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11.5px;display:flex}.hd-tools{align-items:center;gap:3px;display:flex}.hd-tool{width:32px;height:30px;color:var(--fg-muted);border-radius:8px;place-items:center;display:grid}.hd-tool:hover{background:var(--card);color:var(--fg)}.hd-tool-cta{width:auto;color:var(--fg);background:var(--card);border:1px solid var(--line);align-items:center;gap:6px;padding:0 13px;font-size:13px;font-weight:500;display:flex}.hd-tool-cta:hover{border-color:var(--accent-line);color:var(--fg)}.hd-div{background:var(--line-soft);flex:none;width:1px;height:22px;margin:0 6px}@media (max-width:680px){.header{flex-wrap:wrap;align-items:flex-start;gap:6px 8px;height:auto;padding:8px 8px 9px}.hd-brand{padding-left:2px;padding-right:2px}.hd-wordmark{display:none}.tb-tabs{flex:auto;min-width:0;margin-left:0}.tb-tab{min-width:0;max-width:100%;padding-inline:9px}.tb-tab>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.spacer{display:none}.hd-tools{flex-wrap:wrap;flex:auto;gap:4px;min-width:0}.hd-tools .hd-div,.header>.hd-div{display:none}.hd-tool-cta{justify-content:center;width:32px;padding:0}.hd-tool-cta span{display:none}.edm-trigger{padding-right:7px}.edm-trigger-label{display:none}.modesw{flex:0 auto;min-width:0}.modesw-opt{gap:4px;min-width:0;padding:5px 8px;font-size:12px}.tb-status,.tb-btn{display:none}}.edm{display:flex;position:relative}.edm-trigger{border:1px solid var(--line);background:var(--card);border-radius:9px;align-items:center;gap:7px;height:30px;padding:0 10px 0 7px;display:flex}.edm-trigger:hover{border-color:var(--line-strong)}.edm-trigger-label{white-space:nowrap;color:var(--fg-muted);font-size:12px}.ed-tile{flex:none;place-items:center;display:inline-grid;box-shadow:inset 0 0 0 .5px #ffffff38}.ed-img{-o-object-fit:contain;object-fit:contain;flex:none;display:block}.ed-mark{letter-spacing:-.04em;font-weight:800;line-height:1}.edm-backdrop{z-index:9690;position:fixed;inset:0}.edm-menu{z-index:9700;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:232px;box-shadow:var(--shadow-pop);padding:6px;position:absolute;top:38px;left:0}.edm-head{color:var(--fg-muted);padding:6px 8px 8px;font-size:10.5px}.edm-item{text-align:left;width:100%;color:var(--fg-muted);border-radius:9px;align-items:center;gap:11px;padding:8px 9px;font-size:13.5px;display:flex}.edm-item:hover{background:var(--card-2);color:var(--fg)}.edm-item[data-sel=true]{color:var(--fg)}.edm-name{flex:1}.mid{flex:1;min-height:0;display:flex}.footer{background:var(--surface);height:46px;color:var(--fg-muted);flex:none;align-items:center;gap:4px;padding:0 12px;font-size:11.5px;display:flex}.ft-seg{white-space:nowrap;border-radius:7px;align-items:center;gap:6px;padding:4px 9px;display:flex}.ft-seg svg{opacity:.8}.ft-accent{color:var(--accent-text)}.ft-dim{color:var(--fg-faint)}.stage{flex:1;gap:6px;min-width:0;padding:6px;display:flex;position:relative}.ws-scene{will-change:transform;z-index:2;width:0;height:0;position:absolute;top:0;left:0}.workspace .window{cursor:default}.ws-zoom{z-index:8000;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);align-items:center;gap:2px;padding:3px;display:flex;position:absolute;bottom:14px;left:14px}.ws-zoom-btn{width:30px;height:28px;color:var(--fg-dim);border-radius:11px;place-items:center;display:grid}.ws-zoom-btn:hover{background:var(--card-2);color:var(--fg)}.ws-zoom-pct{min-width:48px;height:28px;font-family:var(--font-mono);color:var(--fg-muted);border-radius:8px;font-size:11.5px}.ws-zoom-pct:hover{background:var(--card-2);color:var(--fg)}.workspace{cursor:grab;border:1px solid var(--line);background:var(--bg);border-radius:12px;flex:1;min-width:0;position:relative;overflow:clip}.ws-shader{z-index:0;pointer-events:none;transition:opacity .35s;display:block;position:absolute;inset:0}.ws-grid{z-index:1;pointer-events:none;background-image:radial-gradient(circle at 1px 1px, var(--line-soft) 1px, transparent 0);position:absolute;inset:0}.rail{background:var(--surface);flex-direction:column;flex:none;align-items:center;gap:5px;width:50px;padding:10px 0;display:flex}.rail-new{width:38px;height:38px;color:var(--accent-text);border:1px solid var(--accent-line);background:var(--accent-dim);border-radius:10px;place-items:center;display:grid}.rail-new:hover{background:var(--accent-glow);border-color:var(--accent)}.rail-div{background:var(--line-soft);width:22px;height:1px;margin:6px 0 7px}.rail-group{flex-direction:column;align-items:center;gap:6px;display:flex}.rail-btn{width:38px;height:38px;color:var(--fg-dim);border-radius:10px;place-items:center;display:grid;position:relative}.rail-btn:hover{background:var(--card);color:var(--fg)}.rail-btn[data-active=true]{background:var(--card);color:var(--accent-text)}.rail-btn[data-active=true]:before{content:"";background:var(--accent);width:3px;position:absolute;top:8px;bottom:8px}.rail-btn[data-side=left][data-active=true]:before{border-radius:0 3px 3px 0;left:-6px}.rail-btn[data-side=right][data-active=true]:before{border-radius:3px 0 0 3px;right:-6px}.rail-avatar{background:var(--accent-dim);width:28px;height:28px;color:var(--accent-text);border:1px solid var(--accent-line);border-radius:50%;place-items:center;margin-top:5px;font-size:11px;font-weight:700;display:grid}.tw-panel{z-index:9000;background:var(--card);border:1px solid var(--line);width:304px;box-shadow:var(--shadow-pop);border-radius:12px;flex-direction:column;display:flex;position:absolute;top:10px;bottom:10px;overflow:hidden}.tw-left{left:10px}.tw-right{right:10px}.tw-head{border-bottom:1px solid var(--line-soft);flex:none;align-items:center;gap:8px;height:42px;padding:0 8px 0 13px;display:flex}.tw-ico{place-items:center;display:grid}.tw-title{font-size:13px;font-weight:600}.tw-body{flex:1;min-height:0;overflow:auto}.tw-scroll{padding:8px 6px}.tw-pad{padding:12px 13px}.tw-list{flex-direction:column;gap:2px;padding:6px;display:flex}.tw-label{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-faint);margin:14px 4px 8px;font-size:11px;font-weight:600}.srch-box{background:var(--inset);border:1px solid var(--line-soft);color:var(--fg-faint);border-radius:9px;align-items:center;gap:8px;padding:9px 11px;display:flex}.srch-box input{min-width:0;color:var(--fg);font-size:13px;font-family:var(--font-ui);background:0 0;border:none;outline:none;flex:1}.srch{flex-direction:column;height:100%;display:flex}.srch .srch-box{margin:12px 12px 4px}.srch-label{align-items:center;gap:8px;display:flex;margin:10px 12px 6px!important}.srch-meta{color:var(--fg-muted);text-transform:none;letter-spacing:0;font-size:10px;font-weight:400}.tr{flex:1;padding:2px 6px 8px;overflow:auto}.tr-row{width:100%;min-height:24px;color:var(--fg-muted);text-align:left;border-radius:7px;align-items:center;gap:7px;padding:4px 8px;font-size:13px;display:flex}.tr-dir-line{align-items:stretch;width:100%;display:flex}.tr-caret-btn{width:25px;min-height:24px;color:var(--fg-faint);border-radius:7px;flex:none;place-items:center;display:grid}.tr-caret-btn:hover:not(:disabled){background:var(--card-2);color:var(--fg-muted)}.tr-caret-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.tr-dir-enter{flex:1;width:auto;min-width:0}.tr-row:hover:not(:disabled){background:var(--card-2)}.tr-file[data-active=true],.tr-dir-enter[data-active=true]{background:var(--accent-dim);color:var(--fg)}.tr-caret{color:var(--fg-faint);flex:none;place-items:center;transition:transform .12s;display:grid}.tr-caret[data-open=true]{transform:rotate(90deg)}.fi-img{flex:none;display:block}.fi-fallback{color:var(--fg-dim);flex:none;place-items:center;display:grid}.tr-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tr-folder{color:var(--fg);font-weight:500}.plg{padding:8px 8px 12px}.plg-sec{align-items:baseline;gap:8px;padding:8px;display:flex}.plg-sec2{border-top:1px solid var(--line-soft);margin-top:8px;padding-top:14px}.plg-sec-t{letter-spacing:.05em;text-transform:uppercase;color:var(--fg-dim);font-size:11px;font-weight:700}.plg-sec-c{color:var(--accent-text);margin-left:auto;font-size:10px}.plg-row{text-align:left;border-radius:10px;align-items:center;gap:11px;width:100%;padding:8px 9px;display:flex}.plg-row:hover{background:var(--card-2)}.plg-conn{border:1px solid #0000}.plg-ico{background:var(--inset);border:1px solid var(--line-soft);border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.pl-img{display:block}.pl-line{color:var(--accent);place-items:center;display:grid}.pl-glyph{color:var(--fg-muted);font-size:14px}.plg-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.plg-name{color:var(--fg);font-size:13px;font-weight:500}.plg-desc{color:var(--fg-muted);font-size:11px}.plg-dot{background:var(--line-strong);border-radius:50%;flex:none;width:8px;height:8px}.plg-dot.on{background:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.auto-row{border-radius:9px;align-items:center;gap:10px;padding:9px 10px;display:flex}.auto-row:hover{background:var(--card-2)}.auto-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.auto-name{color:var(--fg);font-size:13px}.auto-when{color:var(--fg-muted);font-size:11px}.auto-toggle{background:var(--inset);border:1px solid var(--line);border-radius:999px;flex:none;width:30px;height:18px;position:relative}.auto-toggle span{background:var(--fg-dim);border-radius:50%;width:12px;height:12px;transition:left .15s,background .15s;position:absolute;top:2px;left:2px}.auto-toggle.on{background:var(--accent-dim);border-color:var(--accent-line)}.auto-toggle.on span{background:var(--accent);left:14px}.mob{text-align:center}.mob-qr{border-radius:var(--radius);border:1px solid var(--line);place-items:center;width:130px;height:130px;margin:8px auto 14px;display:grid;position:relative;overflow:hidden}.mob-title{font-size:14px;font-weight:600}.mob-sub{color:var(--fg-muted);margin-top:4px;font-size:12px;line-height:1.4}.nt-row{border-radius:9px;gap:9px;padding:10px;display:flex}.nt-row:hover{background:var(--card-2)}.nt-text{flex-direction:column;gap:2px;display:flex}.nt-title{color:var(--fg);font-size:12.5px;line-height:1.35}.nt-time{color:var(--fg-muted);font-size:10.5px}.composer{max-width:760px;margin:0 auto 8px}.composer-title{text-align:center;letter-spacing:-.02em;color:var(--fg);margin:18px 0 26px;font-size:30px;font-weight:600}.cmp-box{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:14px 14px 10px;transition:border-color .15s,box-shadow .15s}.cmp-box:focus-within{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-glow), var(--shadow-card)}.cmp-input{resize:none;width:100%;color:var(--fg);font-family:var(--font-ui);background:0 0;border:none;outline:none;padding:2px;font-size:15px;line-height:1.5}.cmp-input::placeholder{color:var(--fg-muted)}.cmp-bar{align-items:center;gap:8px;margin-top:8px;display:flex}.cmp-add{width:32px;height:32px;color:var(--fg-muted);border:1px solid var(--line-soft);border-radius:9px;place-items:center;display:grid}.cmp-add:hover{background:var(--card-2);color:var(--fg)}.cmp-mode{color:var(--fg-muted);border:1px solid var(--line-soft);border-radius:9px;align-items:center;gap:6px;padding:7px 11px;font-size:13px;display:flex}.cmp-mode:hover{background:var(--card-2);color:var(--fg)}.cmp-model{color:var(--fg-muted);border-radius:9px;align-items:center;gap:6px;padding:7px 11px;font-size:12.5px;display:flex}.cmp-model:hover{background:var(--card-2);color:var(--fg)}.cmp-eff{color:var(--fg-faint)}.cmp-icon{width:32px;height:32px;color:var(--fg-muted);border-radius:9px;place-items:center;display:grid}.cmp-icon:hover{background:var(--card-2);color:var(--fg)}.cmp-icon:focus-visible,.attach-chip-remove:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cmp-send{width:34px;height:34px;color:var(--bg);background:var(--line-strong);border-radius:10px;place-items:center;transition:background .15s,transform .1s;display:grid}.cmp-send[data-on=true]{background:var(--accent)}.cmp-send[data-on=true]:hover{transform:translateY(-1px)}.cmp-send:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.attach-strip{flex-wrap:wrap;gap:6px;padding:4px 2px;display:flex}.attach-chip{border-radius:var(--radius-sm);border:1px solid var(--line-soft);background:var(--card);align-items:center;gap:6px;max-width:280px;padding:5px 8px 5px 6px;display:inline-flex}.attach-chip-thumb{-o-object-fit:cover;object-fit:cover;border-radius:5px;flex:none;width:40px;height:40px}.attach-chip-name{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:12.5px;overflow:hidden}.attach-chip-size{color:var(--fg-muted);flex:none;font-size:11px}.attach-chip-remove{width:24px;height:24px;color:var(--fg-muted);border-radius:6px;flex:none;place-items:center;display:grid}.attach-chip-remove:hover{background:var(--card-2);color:var(--fg)}.attach-drop-zone{border:1px dashed var(--line);border-radius:var(--radius-sm);padding:10px 14px;transition:border-color .15s,background .15s}.attach-drop-zone[data-dragover=true]{border-color:var(--accent-line);background:var(--accent-dim)}.attach-drop-hint{color:var(--fg-muted);font-size:12px}.attach-rejection-alert{border:1px solid color-mix(in oklch, var(--danger) 48%, transparent);background:color-mix(in oklch, var(--danger) 22%, var(--card));color:var(--fg);border-radius:9px;padding:9px 11px;font-size:12.5px;line-height:1.45}.source-limit-alert{z-index:60;border:1px solid color-mix(in oklch, var(--danger) 48%, transparent);background:color-mix(in oklch, var(--danger) 22%, var(--card));max-width:min(520px,100% - 28px);color:var(--fg);box-shadow:0 8px 24px color-mix(in oklch, var(--bg) 55%, transparent);border-radius:9px;align-items:center;gap:10px;padding:9px 11px;font-size:12.5px;line-height:1.45;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.source-limit-alert-dismiss{border:1px solid var(--line-soft);width:22px;height:22px;color:var(--fg-muted);cursor:pointer;background:0 0;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:inline-flex}.source-limit-alert-dismiss:hover{border-color:var(--line);color:var(--fg)}.source-limit-alert-dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cmp-context{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.chip{border-radius:var(--radius-sm);color:var(--fg-muted);background:var(--card);border:1px solid var(--line-soft);align-items:center;gap:6px;padding:6px 10px;font-size:12.5px;display:flex}.chip:hover{border-color:var(--line);color:var(--fg)}.chat-memory-panel{padding:8px 16px 0}.chat-memory-panel-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.chat-memory-toggle,.chat-memory-budget{color:var(--fg-muted);align-items:center;gap:8px;font-size:12px;display:inline-flex}.chat-memory-budget input{border:1px solid var(--line-soft);background:var(--card);width:88px;color:var(--fg);border-radius:999px;padding:4px 10px}.chat-memory-disclosure{gap:10px;margin-top:10px;display:grid}.chat-memory-summary{color:var(--fg-muted);margin:0;font-size:12px}.chat-memory-item,.chat-memory-action{border:1px solid var(--line-soft);background:color-mix(in srgb, var(--card) 88%, var(--accent) 12%);border-radius:14px;padding:10px 12px}.chat-memory-item-head,.chat-memory-action-head{justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.chat-memory-item p,.chat-memory-action p{margin:8px 0 0;font-size:13px}.chat-memory-action-buttons{gap:8px;margin-top:10px;display:flex}.chat-memory-action-buttons button{border:1px solid var(--line-soft);background:var(--card);color:var(--fg);border-radius:999px;padding:6px 12px}.cmp-suggest{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;display:flex}.suggest{color:var(--fg-muted);border:1px solid var(--line-soft);background:0 0;border-radius:999px;align-items:center;gap:7px;padding:8px 13px;font-size:12.5px;display:flex}.suggest:hover{background:var(--card);color:var(--fg);border-color:var(--line)}.composer-compact{max-width:none;margin:0}.composer-compact .composer-title{text-align:left;margin:12px 2px 18px;font-size:21px}.composer-compact .cmp-context,.composer-compact .cmp-suggest{justify-content:flex-start}.window{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);flex-direction:column;transition:box-shadow .15s,border-color .15s;display:flex;position:absolute;overflow:visible}.window[data-top=true]{box-shadow:var(--shadow-pop);border-color:var(--line-strong)}.window[data-max=true]{border-radius:0}.win-head{border-bottom:1px solid var(--line-soft);cursor:grab;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:8px;height:38px;padding:0 6px 0 11px;display:flex}.win-head:active{cursor:grabbing}.win-ico{place-items:center;display:grid}.win-title{color:var(--fg);font-size:13px;font-weight:600}.win-sub{color:var(--fg-muted);background:var(--inset);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;max-width:150px;padding:2px 7px;font-size:11px;overflow:hidden}.win-btn{width:26px;height:26px;color:var(--fg-dim);border-radius:7px;place-items:center;display:grid}.win-zoom{opacity:0;align-items:center;gap:1px;transition:opacity .12s;display:flex}.win-head:hover .win-zoom,.win-zoom:focus-within{opacity:1}.win-zbtn{width:24px;height:24px;color:var(--fg-faint);border-radius:6px;place-items:center;display:grid}.win-zbtn:hover{background:var(--card-2);color:var(--fg)}.win-zpct{font-family:var(--font-mono);color:var(--fg-dim);text-align:center;min-width:36px;height:24px;padding:0 3px;font-size:10.5px}.win-zpct:hover{color:var(--fg)}.conn-layer{z-index:0;pointer-events:none;position:absolute;inset:0}.conn-svg{width:20000px;height:20000px;position:absolute;top:-10000px;left:-10000px;overflow:visible}.conn-path{fill:none;stroke:var(--accent);stroke-width:2.25px;stroke-linecap:round;opacity:.9}.conn-temp{stroke-dasharray:6 5;opacity:.85;stroke-width:2.5px}.conn-dot{fill:var(--accent);opacity:.95;filter:drop-shadow(0 0 4px var(--accent));animation:none}@media (prefers-reduced-motion:no-preference){.conn-dot{animation:1s ease-in-out infinite conn-dot-pulse}}@keyframes conn-dot-pulse{0%,to{r:5;opacity:.95}50%{r:7;opacity:.6}}.conn-badge{pointer-events:auto;background:var(--card);border:1px solid var(--accent-line);min-height:24px;color:var(--accent-text);font-size:11px;font-family:var(--font-mono);box-shadow:var(--shadow-card);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;display:inline-flex;position:absolute;transform:translate(-50%,-50%)}.conn-badge svg{display:block}.conn-badge:hover{border-color:var(--danger);color:var(--danger);background:color-mix(in oklch, var(--danger) 14%, var(--card))}.conn-path[data-active=true]{opacity:1;stroke-width:2.75px;filter:drop-shadow(0 0 5px var(--accent))}.conn-path[data-active=true][data-intensity=heavy]{stroke-width:3.4px}@media (prefers-reduced-motion:no-preference){.conn-path[data-active=true]{stroke-dasharray:10 8;animation:.9s linear infinite conn-flow}.conn-path[data-active=true][data-intensity=heavy]{animation-duration:.45s}}@keyframes conn-flow{to{stroke-dashoffset:-18px}}.conn-path[data-reduced-motion=true]{stroke-dasharray:3 6;animation:none!important}.conn-particle{fill:var(--accent);opacity:.95;filter:drop-shadow(0 0 4px var(--accent))}.conn-badge[data-active=true]{border-color:var(--accent);color:var(--accent-text);background:color-mix(in oklch, var(--accent) 16%, var(--card))}.conn-flow-tag{margin-left:1px;font-weight:700}.workspace[data-connecting=true]{cursor:crosshair}.workspace[data-connecting=true] .window[data-conn=valid]{cursor:cell}.win-port{z-index:20;background:var(--card);border:2px solid var(--accent);opacity:0;cursor:crosshair;pointer-events:auto;border-radius:50%;width:13px;height:13px;transition:opacity .12s,box-shadow .12s;position:absolute;transform:translate(-50%,-50%)}.window:hover .win-port,.window[data-conn] .win-port{opacity:1}.win-port:hover{box-shadow:0 0 0 4px var(--accent-glow);opacity:1}.win-port:focus-visible{outline:2px solid var(--accent);outline-offset:3px;opacity:1}.workspace[data-connecting=true] .window[data-conn=source] .win-port{opacity:1;animation:none}@media (prefers-reduced-motion:no-preference){.workspace[data-connecting=true] .window[data-conn=source] .win-port{animation:1s ease-in-out infinite port-pulse}}@keyframes port-pulse{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 6px #0000}}.wp-t{top:0;left:50%}.wp-b{top:100%;left:50%}.wp-l{top:50%;left:0}.wp-r{top:50%;left:100%}.chat-ctx{color:var(--accent-text);background:var(--accent-dim);border:1px solid var(--accent-line);border-radius:8px;flex:none;align-items:center;gap:6px;margin:10px 16px 0;padding:6px 10px;font-size:12px;display:flex}.chat-ctx .mono{color:var(--accent-text)}.window[data-conn=valid]{box-shadow:0 0 0 2px var(--accent), var(--shadow-pop)}.window[data-conn=invalid]{opacity:.42}.window[data-conn=source]{box-shadow:0 0 0 2px var(--accent-line), var(--shadow-pop)}.arun{flex-direction:column;gap:10px;height:100%;padding:12px 13px;display:flex}.arun-head{flex:none;align-items:center;gap:8px;display:flex}.arun-role{font-size:14px;font-weight:650}.arun-status{align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:flex}.arun-meters{flex:none;grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.arun-meter{background:var(--inset);border:1px solid var(--line-soft);border-radius:9px;flex-direction:column;gap:2px;padding:7px 9px;display:flex}.arun-mk{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px}.arun-mv{color:var(--fg);font-size:14px;font-weight:600}.arun-prog{background:var(--inset);border-radius:999px;flex:none;height:4px;overflow:hidden}.arun-prog i{border-radius:999px;height:100%;transition:width .4s;display:block}.arun-perms{flex-wrap:wrap;flex:none;gap:5px;display:flex}.arun-perm{font-size:10.5px;font-family:var(--font-mono);color:var(--fg-dim);background:var(--inset);border:1px solid var(--line-soft);border-radius:6px;align-items:center;gap:4px;padding:3px 7px;display:inline-flex}.arun-perm[data-on=true]{color:var(--accent-text);border-color:var(--accent-line);background:var(--accent-dim)}.arun-gate{border:1px solid var(--warn);background:color-mix(in oklch, var(--warn) 12%, var(--card));border-radius:11px;flex:none;padding:11px}.arun-gate-h{text-transform:uppercase;letter-spacing:.04em;color:var(--warn);align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.arun-gate-t{margin-top:6px;font-size:13.5px;font-weight:600}.arun-gate-d{color:var(--fg-muted);margin-top:3px;font-size:11.5px}.arun-gate-btns{gap:8px;margin-top:11px;display:flex}.arun-btn{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--card);color:var(--fg-muted);padding:7px 14px;font-size:12.5px;font-weight:550}.arun-btn:hover:not(:disabled){color:var(--fg);background:var(--card-2)}.arun-btn.primary{background:var(--accent);color:var(--ink-inverse);border-color:var(--accent);flex:1}.arun-btn.primary:hover:not(:disabled){filter:brightness(1.06);color:var(--ink-inverse)}.arun-btn.ghost{flex:1}.arun-btn.danger:hover{color:#fff;background:color-mix(in oklch, var(--danger) 70%, transparent);border-color:var(--danger)}.arun-current{color:var(--fg-muted);flex:none;align-items:center;gap:8px;font-size:12.5px;display:flex}.arun-spin{color:var(--accent);place-items:center;animation:none;display:grid}.arun-spin[data-paused=true]{color:var(--warn);animation:none}@media (prefers-reduced-motion:no-preference){.arun-spin:not([data-paused=true]){animation:1.4s linear infinite spin}}.arun-log{border-top:1px solid var(--line-soft);flex-direction:column;flex:1;gap:1px;min-height:36px;padding-top:8px;display:flex;overflow:auto}.arun-log-row{border-radius:6px;align-items:center;gap:8px;padding:4px;font-size:12px;display:flex}.arun-log-row:hover{background:var(--card-2)}.arun-log-ico{color:var(--fg-dim);flex:none;place-items:center;display:grid}.arun-log-text{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.arun-log-t{color:var(--fg-muted);flex:none;font-size:10px}.arun-controls{border-top:1px solid var(--line-soft);flex:none;align-items:center;gap:8px;padding-top:9px;display:flex}.arun-final{color:var(--fg-faint);margin-left:auto;font-size:11.5px}.arun-real{overflow:hidden}.arun-summary{border:1px solid var(--line-soft);background:var(--inset);color:var(--fg-muted);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;font-size:12px;display:flex}.arun-summary strong{color:var(--fg);font-weight:650}.arun-real .arun-log{flex:none;max-height:150px}.arun-results{flex-direction:column;flex:1;gap:8px;min-height:90px;display:flex;overflow:auto}.arun-result-card{border:1px solid var(--line-soft);background:var(--inset);border-radius:10px;flex-direction:column;gap:7px;padding:9px 10px;display:flex}.arun-result-title{color:var(--fg);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.arun-result-card pre,.arun-input pre{max-height:220px;color:var(--fg-muted);font-family:var(--font-mono);white-space:pre;margin:0;font-size:11.5px;line-height:1.55;overflow:auto}.arun-input{border:1px solid var(--line-soft);background:var(--inset);color:var(--fg-muted);border-radius:9px;flex:none;padding:7px 9px;font-size:12px}.arun-input summary{cursor:pointer;color:var(--fg-faint)}.arun-kv,.arun-check-row{color:var(--fg-muted);justify-content:space-between;gap:10px;font-size:12px;display:flex}.arun-kv strong{color:var(--fg)}.arun-applied{border-color:var(--accent-line);background:var(--accent-dim)}.arun-error{border:1px solid color-mix(in oklch, var(--danger) 55%, transparent);color:var(--danger);background:color-mix(in oklch, var(--danger) 12%, transparent);border-radius:9px;padding:8px 10px;font-size:12px}.arun-empty{color:var(--fg-muted);text-align:center;justify-content:center}.arun .dot[data-live=true]{background:var(--accent);animation:none}@media (prefers-reduced-motion:no-preference){.arun .dot[data-live=true]{animation:1.3s infinite pulse}}.tl{flex-direction:column;gap:2px;padding:8px;display:flex}.tl-empty{color:var(--fg-muted);text-align:center;padding:26px 16px;font-size:12.5px;line-height:1.6}.tl-row{border-radius:8px;gap:10px;padding:7px 8px;display:flex}.tl-row:hover{background:var(--card-2)}.tl-dot{border-radius:50%;flex:none;width:8px;height:8px;margin-top:5px}.tl-body{flex-direction:column;gap:1px;min-width:0;display:flex}.tl-text{color:var(--fg);overflow-wrap:anywhere;font-size:12.5px}.tl-meta{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.cmdk-overlay{z-index:100000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#03040380;background:lab(.915997% -.295676 .117427/.5);justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.cmdk{background:var(--surface);border:1px solid var(--line);width:560px;max-width:calc(100% - 40px);box-shadow:var(--shadow-pop);border-radius:14px;overflow:hidden}.cmdk-input{border-bottom:1px solid var(--line-soft);color:var(--fg-faint);align-items:center;gap:10px;padding:14px 16px;display:flex}.cmdk-input input{color:var(--fg);font-size:15px;font-family:var(--font-ui);background:0 0;border:none;outline:none;flex:1}.cmdk-list{max-height:50vh;padding:6px;overflow:auto}.cmdk-empty{text-align:center;color:var(--fg-faint);padding:24px;font-size:13px}.cmdk-row{text-align:left;width:100%;color:var(--fg-muted);cursor:pointer;border-radius:9px;align-items:center;gap:11px;padding:9px 11px;display:flex}.cmdk-row[data-sel=true]{background:var(--accent-dim);color:var(--fg)}.cmdk-ico{color:var(--fg-dim);place-items:center;display:grid}.cmdk-row[data-sel=true] .cmdk-ico{color:var(--accent)}.cmdk-label{font-size:13.5px}.cmdk-group{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px}.set{flex-direction:column;height:100%;display:flex}.set-hero{border-bottom:1px solid var(--line-soft);align-items:center;gap:9px;padding:13px 13px 12px;display:flex}.set-title{font-size:14px;font-weight:650}.set-onprem{font-size:10px;font-family:var(--font-mono);color:var(--accent-text);background:var(--accent-dim);border:1px solid var(--accent-line);border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:3px 9px 3px 7px;display:inline-flex}.set-tabs,.twin-tabs{border-bottom:1px solid var(--line-soft);gap:2px;padding:8px 8px 0;display:flex}.set-tab,.twin-tab{color:var(--fg-dim);border-radius:8px 8px 0 0;flex:1;padding:8px 4px;font-size:12px}.set-tab[data-on=true],.twin-tab[data-on=true]{color:var(--fg);background:var(--inset);box-shadow:inset 0 -2px 0 var(--accent)}.set-body{flex:1;padding:12px;overflow:auto}.set-sec-h{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.set-sec-t{font-size:13px;font-weight:600}.set-sec-d{color:var(--fg-muted);margin-top:2px;font-size:11.5px;line-height:1.4}.set-add{background:var(--accent);color:var(--ink-inverse);white-space:nowrap;border-radius:8px;align-items:center;gap:5px;margin-left:auto;padding:7px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.set-list{flex-direction:column;gap:6px;display:flex}.ml-row{border:1px solid var(--line-soft);background:var(--card);border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.ml-row:hover{border-color:var(--line)}.ml-ico{background:var(--inset);border:1px solid var(--line-soft);width:32px;height:32px;color:var(--accent);border-radius:8px;flex:none;place-items:center;display:grid}.ml-info{flex:1;min-width:0}.ml-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ml-name{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.ml-type{color:var(--fg-faint);background:var(--inset);border-radius:5px;padding:1px 6px;font-size:10px}.ml-url{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ml-key{color:var(--fg-dim);flex:none;font-size:11px}.ml-status{background:var(--line-strong);border-radius:50%;flex:none;width:8px;height:8px}.ml-status.connected{background:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.ml-status.error{background:var(--danger)}.ml-status.ineligible{background:var(--warn);box-shadow:0 0 0 3px color-mix(in oklab, var(--warn) 22%, transparent)}.ml-status.untested{background:var(--fg-faint)}.ml-elig{border:1px solid #0000;border-radius:5px;align-items:center;padding:2px 8px;font-size:12px;line-height:1.4;display:inline-flex}.ml-elig-ok{color:var(--fg);background:color-mix(in oklab, var(--accent) 14%, transparent);border-color:color-mix(in oklab, var(--accent) 30%, transparent)}.ml-elig-no{color:var(--fg);background:color-mix(in oklab, var(--danger) 14%, transparent);border-color:color-mix(in oklab, var(--danger) 30%, transparent)}.set-placeholder{color:var(--fg-muted);text-align:center;padding:20px 4px;font-size:12.5px}.gpref{padding:4px 2px 8px}.gpref-row{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.gpref-label{color:var(--fg);font-size:12.5px;font-weight:550}.gpref-val{color:var(--accent-text);font-variant-numeric:tabular-nums;font-size:12px}.gpref-slider{appearance:none;cursor:pointer;background:linear-gradient(to right, var(--accent) 0 var(--p,100%), var(--card-2) var(--p,100%) 100%);background-clip:content-box;border-radius:999px;outline:none;width:100%;height:22px;padding:8px 0}.gpref-slider::-webkit-slider-thumb{appearance:none;background:var(--fg);border:3px solid var(--accent);cursor:pointer;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 4px #00000059}.gpref-slider::-moz-range-thumb{background:var(--fg);border:3px solid var(--accent);cursor:pointer;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 4px #00000059}.gpref-scale{color:var(--fg-muted);letter-spacing:.02em;justify-content:space-between;margin-top:7px;font-size:10.5px;display:flex}.fpv{flex-direction:column;height:100%;display:flex}.fpv-bar{border-bottom:1px solid var(--line-soft);background:var(--surface);flex:none;align-items:center;gap:8px;padding:7px 8px 7px 9px;display:flex}.fpv-back{width:26px;height:26px;color:var(--fg-dim);border-radius:7px;flex:none;place-items:center;display:grid}.fpv-back:hover{background:var(--card-2);color:var(--fg)}.fpv-name{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;font-size:12.5px;overflow:hidden}.fpv-lang{color:var(--fg-muted);background:var(--inset);border:1px solid var(--line-strong);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:5px;flex:none;padding:1px 6px;font-size:10px}.fpv-code{background:#0b0d0c;background:lab(3.39429% -.712723 .283253);flex:1;padding:8px 0;font-size:12.5px;line-height:1.7;overflow:auto}.fpv-line{display:flex}.fpv-num{width:var(--fpv-gutter-w,44px);text-align:right;color:var(--fg-dim);-webkit-user-select:none;user-select:none;flex:none;padding-right:16px}.fpv-src{white-space:pre;color:#c5cdd9;padding-right:14px}.fpv-state{color:var(--fg-muted);background:var(--inset);border:1px solid var(--line-soft);border-radius:8px;margin:12px;padding:14px 16px;font-size:12.5px;line-height:1.5}.fpv-error{color:var(--fg);background:color-mix(in oklch, var(--danger) 14%, var(--inset));border-color:color-mix(in oklch, var(--danger) 55%, var(--line-soft))}.hl-com{color:#6b7787;font-style:italic}.hl-str{color:#c3e88d}.hl-num,.hl-lit{color:#f78c6c}.hl-key{color:#c792ea}.hl-type{color:#ffcb6b}.hl-fn,.hl-key2{color:#82aaff}.hl-punct{color:#89ddff}.hl-head{color:var(--accent);font-weight:700}.hl-id,.hl-ws{color:inherit}[data-theme=light] .fpv-code{background:#f3f6f4;background:lab(96.5744% -1.27849 .508618)}[data-theme=light] .fpv-src{color:#2b3440}[data-theme=light] .hl-key{color:#8b2bb8}[data-theme=light] .hl-str{color:#2f7d32}[data-theme=light] .hl-num,[data-theme=light] .hl-lit{color:#b04e08}[data-theme=light] .hl-fn,[data-theme=light] .hl-key2{color:#2563c9}[data-theme=light] .hl-type{color:#8a5f00}[data-theme=light] .hl-punct{color:#177287}.rail-img{border-radius:6px;width:22px;height:22px;display:block}.modesw{background:var(--inset);border:1px solid var(--line-soft);border-radius:9px;align-items:center;gap:2px;padding:2px;display:flex}.modesw-opt{color:var(--fg-dim);border-radius:7px;align-items:center;gap:6px;padding:5px 10px;font-size:12.5px;font-weight:500;display:flex}.modesw-opt[data-on=true]{background:var(--card);color:var(--fg);box-shadow:var(--shadow-card)}.modesw[data-mode=autonomous] .modesw-opt[data-on=true]{background:var(--accent-dim);color:var(--accent-text);box-shadow:0 0 0 1px var(--accent-line)}.modesw-av{background:var(--info);width:18px;height:18px;color:var(--ink-inverse);border-radius:50%;place-items:center;font-size:10px;font-weight:700;display:grid}.modesw-orca{width:18px;height:18px;display:block}.ft-gov{border:1px solid var(--line-soft);color:var(--fg-muted);border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 4px;display:flex}.ft-gov[data-mode=autonomous]{border-color:var(--accent-line);background:var(--accent-dim)}.ft-orca{width:15px;height:15px;display:block}.ft-you{background:var(--info);width:15px;height:15px;color:var(--ink-inverse);border-radius:50%;place-items:center;font-size:9px;font-weight:700;display:grid}.arun-gov{font-size:10px;font-family:var(--font-mono);border:1px solid var(--line);border-radius:999px;padding:1px 7px}.permctl{flex-direction:column;gap:9px;display:flex}.perm-toggle{border:1px solid var(--line);background:var(--inset);text-align:left;border-radius:10px;align-items:center;gap:10px;padding:10px 11px;display:flex}.perm-toggle[data-on=true]{border-color:var(--accent-line);background:var(--accent-dim)}.perm-orca{flex:none;width:26px;height:26px}.perm-tt{flex-direction:column;flex:1;gap:1px;display:flex}.perm-name{color:var(--fg);font-size:13px;font-weight:600}.perm-desc{color:var(--fg-faint);font-size:11px}.perm-sw,.brg-tg{background:var(--line);border-radius:999px;flex:none;width:34px;height:20px;position:relative}.perm-sw span,.brg-tg span{background:var(--fg-dim);border-radius:50%;width:16px;height:16px;position:absolute;top:2px;left:2px}.perm-sw.on,.brg-tg.on{background:var(--accent)}.perm-sw.on span,.brg-tg.on span{background:var(--ink-inverse);left:16px}.perm-legacy{gap:7px;display:flex}.perm-opt{border:1px solid var(--line);color:var(--fg-muted);border-radius:8px;flex:1;padding:8px;font-size:12px}.perm-opt[data-on=true]{border-color:var(--accent-line);color:var(--accent-text);background:var(--accent-dim)}.perm-note{color:var(--fg-faint);font-size:11px;line-height:1.45}.dlg-agent-warning{border:1px solid color-mix(in oklch, var(--warn) 55%, transparent);background:color-mix(in oklch, var(--warn) 12%, transparent);color:var(--warn);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:12px;display:flex}.dlg-current-file{border:1px solid var(--accent-line);background:var(--accent-dim);color:var(--accent-text);text-align:left;border-radius:9px;align-items:center;gap:7px;padding:8px 10px;font-size:12px;display:flex}.dlg-current-file .mono{color:var(--accent-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dlg-agent-actions{align-items:center;gap:10px;display:flex}.dlg-note{color:var(--fg-faint);font-size:11px}.twin{flex-direction:column;height:100%;display:flex}.twin-hero{border-bottom:1px solid var(--line-soft);align-items:center;gap:11px;padding:13px 13px 12px;display:flex}.twin-orca{flex:none;width:34px;height:34px}.twin-id{flex-direction:column;gap:1px;min-width:0;display:flex}.twin-name{font-size:14px;font-weight:650}.twin-sub{color:var(--fg-faint);font-size:11px}.twin-mode{color:var(--fg-dim);border:1px solid var(--line);border-radius:999px;margin-left:auto;padding:3px 9px;font-size:10.5px;font-weight:600}.twin-mode.on{color:var(--accent-text);border-color:var(--accent-line);background:var(--accent-dim)}.twin-body{flex:1;padding:10px;overflow:auto}.pol-hint,.evl-hint{color:var(--fg-faint);margin:2px 4px 10px;font-size:11px;line-height:1.45}.pol-row{border-radius:9px;align-items:center;gap:10px;padding:8px 9px;display:flex}.pol-row:hover{background:var(--card-2)}.pol-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.pol-action{color:var(--fg);font-size:12.5px}.pol-scope{color:var(--fg-faint);font-size:10.5px}.pol-dec{border:1px solid;border-radius:999px;min-width:56px;padding:3px 10px;font-size:11px;font-weight:600}.evl-head{align-items:center;gap:10px;margin:0 4px 8px;display:flex}.evl-run{background:var(--accent);color:var(--ink-inverse);border-radius:8px;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.evl-score{font-size:12px;font-family:var(--font-mono);color:var(--danger)}.evl-score.ok{color:var(--accent-text)}.evl-row{border-radius:9px;align-items:center;gap:9px;padding:8px 9px;font-size:12.5px;display:flex}.evl-row:hover{background:var(--card-2)}.evl-ico{place-items:center;width:18px;display:grid}.evl-row[data-state=pass] .evl-ico{color:var(--accent)}.evl-row[data-state=fail] .evl-ico{color:var(--danger)}.evl-dot{background:var(--line-strong);border-radius:50%;width:7px;height:7px}.evl-label{color:var(--fg-muted);flex:1}.evl-res{font-size:11px}.mem-add{gap:7px;margin-bottom:8px;display:flex}.mem-add input{background:var(--inset);border:1px solid var(--line-soft);color:var(--fg);border-radius:8px;outline:none;flex:1;padding:8px 11px;font-size:12.5px}.mem-add input:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-glow)}.mem-add button{background:var(--card-2);width:36px;color:var(--fg-muted);border-radius:8px;flex:none;place-items:center;display:grid}.mem-row{color:var(--accent);border-radius:8px;align-items:center;gap:8px;padding:8px 9px;display:flex}.mem-row:hover{background:var(--card-2)}.mem-text{color:var(--fg-muted);flex:1;font-size:12.5px}.mem-x{color:var(--fg-faint);border-radius:5px;place-items:center;width:20px;height:20px;display:grid}.mem-x:hover{color:var(--danger);background:var(--inset)}.brg-row,.prs-row{text-align:left;border-radius:10px;align-items:center;gap:11px;width:100%;padding:10px;display:flex}.brg-row:hover,.prs-row:hover{background:var(--card-2)}.brg-ico{background:var(--inset);border:1px solid var(--line-soft);width:32px;height:32px;color:var(--fg-dim);border-radius:9px;flex:none;place-items:center;display:grid}.brg-row[data-on=true] .brg-ico{color:var(--accent);border-color:var(--accent-line);background:var(--accent-dim)}.brg-name{color:var(--fg);flex:1;font-size:13px}.prs-dot{background:var(--line-strong);border-radius:50%;flex:none;width:9px;height:9px}.prs-row[data-on=true] .prs-dot{background:var(--accent)}.prs-text{flex-direction:column;flex:1;gap:1px;display:flex}.prs-name{color:var(--fg);font-size:13px;font-weight:500}.prs-desc{color:var(--fg-faint);font-size:11px}.arun-gate[data-esc=true]{border-color:var(--info);background:color-mix(in oklch, var(--info) 12%, var(--card))}.arun-gate[data-esc=true] .arun-gate-h{color:var(--info)}.win-btn:hover{background:var(--card-2);color:var(--fg)}.win-close:hover{background:color-mix(in oklch, var(--danger) 24%, transparent);color:#fff}.win-body{flex:1;min-height:0;overflow:auto}.win-body[data-mode=mini],.win-body[data-mode=tiny]{overflow:hidden}.too-small{text-align:center;height:100%;color:var(--fg-faint);background:radial-gradient(circle at 1px 1px, var(--line-soft) 1px, transparent 0) 0 0 / 14px 14px, var(--inset);flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:10px;display:flex}.ts-ico{background:var(--card-2);border:1px solid var(--line);width:44px;height:44px;color:var(--fg-dim);border-radius:12px;place-items:center;margin-bottom:3px;display:grid}.ts-title{color:var(--fg-muted);font-size:12.5px;font-weight:600}.ts-sub{color:var(--fg-muted);font-size:11px}.ts-arrow{color:var(--accent);margin-top:3px}.chatw-mini{height:100%}.composer-fill{flex-direction:column;min-width:0;height:100%;padding:12px;display:flex}.cmp-box-fill{flex:1;min-width:0;padding:0;position:relative;overflow:hidden}.cmp-box-fill .cmp-input{resize:none;box-sizing:border-box;width:100%;min-width:0;height:100%;padding:13px 14px 48px}.cmp-send-float{position:absolute;bottom:11px;right:11px}.wz{z-index:6;position:absolute}.wz-n{cursor:ns-resize;height:8px;top:-3px;left:10px;right:10px}.wz-s{cursor:ns-resize;height:8px;bottom:-3px;left:10px;right:10px}.wz-e{cursor:ew-resize;width:8px;top:10px;bottom:10px;right:-3px}.wz-w{cursor:ew-resize;width:8px;top:10px;bottom:10px;left:-3px}.wz-ne{cursor:nesw-resize;width:15px;height:15px;top:-3px;right:-3px}.wz-nw{cursor:nwse-resize;width:15px;height:15px;top:-3px;left:-3px}.wz-se{cursor:nwse-resize;width:15px;height:15px;bottom:-3px;right:-3px}.wz-sw{cursor:nesw-resize;width:15px;height:15px;bottom:-3px;left:-3px}.snap-ghost{z-index:9800;background:var(--accent-glow);border:2px solid var(--accent);border-radius:var(--radius);pointer-events:none;box-shadow:inset 0 0 40px var(--accent-glow);position:absolute}.ws-fab{z-index:8000;background:var(--accent);width:46px;height:46px;color:var(--ink-inverse);box-shadow:0 10px 30px -8px var(--accent-glow), 0 6px 16px #00000080;border-radius:14px;place-items:center;display:grid;position:absolute;bottom:18px;right:18px}.ws-fab:hover{transform:translateY(-2px)}.ws-empty{z-index:3;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex;position:absolute;inset:0}.ws-empty-logo{opacity:.5;width:54px;height:54px;margin-bottom:8px}.ws-empty-title{font-size:16px;font-weight:600}.ws-empty-sub{color:var(--fg-muted);font-size:13px}.ws-empty-btn{pointer-events:auto;background:var(--accent);color:var(--ink-inverse);border-radius:10px;align-items:center;gap:7px;margin-top:14px;padding:9px 16px;font-size:13px;font-weight:600;display:flex}.palette{z-index:9600;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);width:384px;max-width:calc(100% - 36px);max-height:calc(100% - 88px);box-shadow:var(--shadow-pop);flex-direction:column;display:flex;position:absolute;bottom:74px;right:18px;overflow:hidden}@keyframes fadePop{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.palette-head{border-bottom:1px solid var(--line-soft);flex:none;align-items:center;gap:11px;padding:14px 12px 14px 14px;display:flex}.palette-badge{width:34px;height:34px;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-line);border-radius:10px;flex:none;place-items:center;display:grid}.palette-htext{flex-direction:column;gap:2px;min-width:0;display:flex}.palette-title{letter-spacing:-.01em;white-space:nowrap;font-size:15px;font-weight:650}.palette-sub{color:var(--fg-faint);white-space:nowrap;font-size:11.5px}.palette-x{width:30px;height:30px;color:var(--fg-dim);border-radius:8px;flex:none;place-items:center;display:grid}.palette-x:hover{background:var(--card);color:var(--fg)}.palette-grid{flex:1;grid-template-columns:1fr 1fr;align-content:start;align-items:start;gap:8px;min-height:0;padding:10px;display:grid;overflow:auto}.pal-card{border:1px solid var(--line-soft);background:var(--card);border-radius:11px;transition:border-color .12s;overflow:hidden}.pal-card:hover{border-color:var(--accent-line)}.pal-main{text-align:left;grid-template-rows:auto auto;grid-template-columns:auto 1fr;gap:2px 11px;width:100%;padding:12px 11px;display:grid;position:relative}.pal-main:hover{background:var(--card-2)}.pal-ico{width:38px;height:38px;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-line);border-radius:10px;grid-row:1/3;align-self:center;place-items:center;display:grid}.pal-name{color:var(--fg);align-self:end;padding-right:18px;font-size:13.5px;font-weight:600}.pal-desc{color:var(--fg-faint);font-size:11.5px}.pal-add{width:20px;height:20px;color:var(--fg-faint);border-radius:6px;place-items:center;display:grid;position:absolute;top:9px;right:9px}.pal-card:hover .pal-add{color:var(--accent);background:var(--accent-dim)}.dlg-overlay{z-index:99999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;background:#0304038c;background:lab(.915997% -.295676 .117427/.55);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dlg-overlay.in{opacity:1}.dlg{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);width:420px;max-width:100%;max-height:calc(100% - 48px);box-shadow:var(--shadow-pop);flex-direction:column;display:flex;overflow:hidden;transform:translateY(10px)scale(.985)}.dlg-overlay.in .dlg{transform:none}@media (prefers-reduced-motion:no-preference){.dlg-overlay{transition:opacity .16s}.dlg{transition:transform .18s cubic-bezier(.2,.7,.2,1)}}.dlg-head{border-bottom:1px solid var(--line-soft);flex:none;align-items:center;gap:12px;padding:16px 12px 16px 16px;display:flex}.dlg-ico{width:40px;height:40px;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-line);border-radius:11px;flex:none;place-items:center;display:grid}.dlg-htext{flex-direction:column;gap:2px;min-width:0;display:flex}.dlg-title{letter-spacing:-.01em;font-size:15.5px;font-weight:650}.dlg-sub{color:var(--fg-faint);font-size:12px}.dlg-body{flex-direction:column;gap:14px;padding:18px 18px 6px;display:flex;overflow:auto}.dlg-empty{color:var(--fg-muted);padding:6px 0 14px;font-size:13px}.dlg-field{flex-direction:column;gap:7px;display:flex}.dlg-label{color:var(--fg-muted);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.dlg-opt{color:var(--fg-faint);text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--line-soft);border-radius:5px;padding:1px 5px;font-size:10px;font-weight:500}.dlg-input{background:var(--inset);border:1px solid var(--line);width:100%;color:var(--fg);border-radius:9px;outline:none;padding:10px 12px;font-size:13px}.dlg-input:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-glow)}.dlg-input::placeholder{color:var(--fg-faint)}.dlg-textarea{resize:vertical;min-height:64px;font-family:var(--font-ui);line-height:1.5}select.dlg-input{appearance:none;cursor:pointer}.dlg-foot{flex:none;justify-content:flex-end;gap:9px;padding:14px 18px 18px;display:flex}.dlg-btn{color:var(--fg-muted);border:1px solid var(--line);background:var(--card);border-radius:9px;padding:9px 16px;font-size:13px;font-weight:550}.dlg-btn:hover:not(:disabled){background:var(--card-2);color:var(--fg)}.dlg-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.dlg-primary{color:var(--ink-inverse);background:var(--accent);border-color:var(--accent)}.dlg-primary:hover:not(:disabled){filter:brightness(1.06);background:var(--accent);color:var(--ink-inverse)}.dlg-selwrap{display:block;position:relative}.dlg-selwrap .dlg-input{padding-right:34px}.dlg-selchev{color:var(--fg-faint);pointer-events:none;place-items:center;display:grid;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.rail-new,.rail-avatar{position:relative}.rail-btn[data-tip]:after,.rail-new[data-tip]:after,.rail-avatar[data-tip]:after{content:attr(data-tip);white-space:nowrap;background:var(--card);border:1px solid var(--line);color:var(--fg);box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;z-index:9999;border-radius:7px;padding:5px 9px;font-size:12px;font-weight:500;position:absolute;top:50%;transform:translateY(-50%)translate(-4px)}.rail-left .rail-btn:after,.rail-left .rail-new:after,.rail-left .rail-avatar:after{left:calc(100% + 8px)}.rail-right .rail-btn:after{left:auto;right:calc(100% + 8px);transform:translateY(-50%)translate(4px)}.rail-btn:hover:after,.rail-new:hover:after,.rail-avatar:hover:after{opacity:1;transform:translateY(-50%)}.insp-top{align-items:center;gap:9px;margin:8px 0 12px;display:flex}.insp-ico{background:var(--inset);border:1px solid var(--line-soft);border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.insp-title{font-size:14px;font-weight:650}.insp-empty{color:var(--fg-muted);padding:10px 0 14px;font-size:12.5px}.ag-spec{align-items:center;gap:8px;margin-bottom:9px;display:flex}.ag-role{color:var(--fg);font-size:13px;font-weight:650}.ag-model{color:var(--accent-text);background:var(--accent-dim);border:1px solid var(--accent-line);border-radius:999px;padding:2px 7px;font-size:10.5px}.ag-task{color:var(--fg-muted);background:var(--inset);border:1px solid var(--line-soft);border-radius:8px;margin-bottom:11px;padding:8px 10px;font-size:12px;line-height:1.42}.rv-arrow{color:var(--fg-faint);margin:0 1px}@media (max-width:1180px){.ft-opt1{display:none}}@media (max-width:1000px){.ft-opt2{display:none}}.editor{flex-direction:column;height:100%;display:flex}.ed-tabs{border-bottom:1px solid var(--line-soft);align-items:center;gap:2px;padding:6px 8px 0;display:flex}.ed-tab{color:var(--fg-faint);border-radius:8px 8px 0 0;align-items:center;gap:6px;padding:6px 11px;font-size:11.5px;display:flex}.ed-tab.active{color:var(--fg);background:var(--inset)}.ed-save{color:var(--fg);background:var(--card);border:1px solid var(--line-soft);border-radius:8px;padding:6px 10px;font-size:11.5px}.ed-save:hover:not(:disabled){background:var(--card-2)}.ed-save:disabled{opacity:.5;cursor:default}.ed-meta{border-bottom:1px solid var(--line-soft);background:var(--card);color:var(--fg-dim);align-items:center;gap:8px;padding:6px 12px;font-size:11px;display:flex}.ed-status{min-width:0}.ed-limit{color:var(--fg-faint);margin-left:auto}.ed-empty{color:var(--fg-dim);padding:12px;font-size:12px}.ed-textarea{resize:none;background:var(--inset);width:100%;color:var(--fg);border:0;flex:1;padding:12px 14px;font-size:12.5px;line-height:1.7}.ed-textarea:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ed-code{background:var(--inset);flex:1;padding:8px 0;font-size:12.5px;line-height:1.7;overflow:auto}.ed-line{padding:0 12px;display:flex}.ed-num{width:44px;color:var(--fg-dim);text-align:right;-webkit-user-select:none;user-select:none;padding-right:16px}.ed-src{white-space:pre}.tk-k{color:var(--accent-bright);font-weight:500}.tk-f{color:var(--fg)}.tk-s{color:var(--accent)}.tk-c{color:var(--fg-faint);font-style:italic}.tk-p{color:var(--fg-dim)}.tk-a,.tk-v{color:var(--fg-muted)}.chatw{flex-direction:column;height:100%;min-height:0;display:flex}.chatw-scroll{flex:1;min-height:0;padding:4px 16px 18px;overflow:auto}.chatw-log{flex-direction:column;display:flex}.chatw-foot{flex:none;padding:0 16px 14px}.chatw-foot .composer{max-width:none;margin:0}.chat-msg{margin-bottom:14px;display:flex}.chat-msg[data-role=user]{justify-content:flex-end}.chat-msg-bubble{border:1px solid var(--line-soft);background:var(--card);max-width:min(640px,84%);color:var(--fg);white-space:pre-wrap;word-break:break-word;border-radius:14px;padding:10px 13px;font-size:14px;line-height:1.55}.chat-msg[data-role=user] .chat-msg-bubble{border-color:var(--accent-line);background:var(--accent-dim)}.chat-msg-role{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:5px;font-size:10px;font-weight:800}.chat-msg-brand{justify-content:center;align-items:center;width:24px;height:24px;margin:0 0 6px -1px;display:inline-flex}.chat-msg-brand img{transform-origin:50%;filter:drop-shadow(0 1px 2px #000000b8)drop-shadow(0 0 4px #7ee0ab38);width:22px;height:22px;display:block}.chat-msg-brand[data-pulsing=true] img{animation:1.15s ease-in-out infinite chat-keiko-logo-pulse}@keyframes chat-keiko-logo-pulse{0%,to{filter:drop-shadow(0 1px 2px #000000b8)drop-shadow(0 0 4px #7ee0ab38);transform:scale(1)}50%{filter:drop-shadow(0 1px 2px #000000b8)drop-shadow(0 0 8px #7ee0ab66);transform:scale(1.14)}}@media (prefers-reduced-motion:reduce){.chat-msg-brand[data-pulsing=true] img{animation:none}}.chat-msg-time{color:var(--fg-muted);font-size:10px;font-family:var(--font-mono);margin-top:6px}.chat-typing{align-items:center;gap:4px;display:inline-flex}.chat-typing i{background:var(--fg-faint);border-radius:50%;width:6px;height:6px;animation:none}@media (prefers-reduced-motion:no-preference){.chat-typing i{animation:1.2s infinite pulse}.chat-typing i:nth-child(2){animation-delay:.2s}.chat-typing i:nth-child(3){animation-delay:.4s}}.cmp-model-select{appearance:none;color:inherit;font:inherit;cursor:pointer;text-overflow:ellipsis;background:0 0;border:none;outline:none;max-width:168px;padding:0 2px}.cmp-model-select option{color:var(--fg);background:var(--surface)}.cmp-err{border:1px solid color-mix(in oklch, var(--danger) 35%, transparent);border-radius:var(--radius-sm);color:var(--danger);background:color-mix(in oklch, var(--danger) 12%, transparent);margin-top:10px;padding:9px 10px;font-size:12.5px}.cmp-no-model{margin-bottom:10px}.cmp-loading-status{color:var(--fg);align-items:center;gap:8px;padding:8px 2px;font-size:12.5px;display:flex}.cmp-loading-dot{background:var(--accent);border-radius:50%;flex:none;width:7px;height:7px;animation:none}@media (prefers-reduced-motion:no-preference){.cmp-loading-dot{animation:1.4s infinite pulse}}.sr-only,.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rb-edge-badge{align-items:center;display:inline-flex}.rb-edge-badge-btn,.rb-edge-badge-static{cursor:default;border-radius:4px;align-items:center;gap:4px;min-height:20px;padding:2px 6px;font-size:11px;font-weight:500;line-height:1.4;display:inline-flex}.rb-edge-badge-btn{cursor:pointer;background:0 0;outline:none;min-width:24px;min-height:24px}.rb-edge-badge-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rb-edge-badge-label{font-size:11px}.rb-edge-badge-type{opacity:.7;margin-left:2px;font-size:10px}.rb-edge-badge-icon{display:block}.rb-edge-badge-icon--high-contrast{transform-origin:50%;transform:scale(1.1)}@media (prefers-reduced-motion:no-preference){.rb-edge-badge-icon--processing{animation:1.6s linear infinite spin}}@media (prefers-contrast:more){.rb-edge-badge-btn,.rb-edge-badge-static{background:var(--card)!important}.rb-edge-badge-icon{transform-origin:50%;transform:scale(1.1)}}.chatw-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:32px 24px;animation:none;display:flex}@media (prefers-reduced-motion:no-preference){.chatw-empty{animation:.25s both fadeUp}}.chatw-empty-headline{letter-spacing:-.02em;color:var(--fg);margin:0 0 8px;font-size:22px;font-weight:600}.chatw-empty-sub{color:var(--fg-muted);max-width:340px;margin:0 0 24px;font-size:13.5px;line-height:1.55}.chatw-empty-prompts{flex-wrap:wrap;justify-content:center;gap:8px;max-width:480px;display:flex}.chatw-empty-no-chat{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px 24px;animation:none;display:flex}@media (prefers-reduced-motion:no-preference){.chatw-empty-no-chat{animation:.25s both fadeUp}}.chatw-empty-no-chat-icon{background:var(--card);border:1px solid var(--line-soft);width:40px;height:40px;color:var(--accent);border-radius:12px;place-items:center;margin-bottom:14px;display:grid}.chatw-empty-no-chat-label{color:var(--fg);margin:0 0 6px;font-size:14px;font-weight:600}.chatw-empty-no-chat-hint{color:var(--fg-muted);max-width:260px;margin:0;font-size:12.5px;line-height:1.5}.suggest:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cmp-model-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.rightbar{background:var(--surface);border-left:1px solid var(--line-soft);flex-direction:column;flex:none;width:280px;padding:14px 14px 12px;display:flex}.rb-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.rb-title{font-size:14px;font-weight:600}.rb-count{color:var(--fg-muted);background:var(--inset);border-radius:999px;padding:2px 8px;font-size:11px}.rb-section-label{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-faint);margin:16px 0 8px;font-size:11px;font-weight:600}.rb-placeholder{border:1px dashed var(--line);border-radius:12px;place-items:center;height:116px;display:grid;position:relative;overflow:hidden}.rb-ph-label{color:var(--fg-faint);letter-spacing:.08em;text-transform:uppercase;font-size:11px;position:relative}.rb-rows{flex-direction:column;gap:1px;display:flex}.rb-row{border-radius:8px;justify-content:space-between;align-items:center;padding:9px 10px;font-size:12.5px;display:flex}.rb-row:hover{background:var(--card)}.rb-row-k,.rb-row-v,.insp-governance.rb-section-label,.insp-governance .rb-row-v{color:var(--fg-muted)}.rb-foot{color:var(--fg-faint);text-align:center;border-top:1px solid var(--line-soft);padding-top:10px;font-size:11px}.files{flex-direction:column;height:100%;padding:6px;display:flex;position:relative}.files-refresh{z-index:1;width:24px;height:24px;color:var(--fg-faint);opacity:0;border-radius:6px;place-items:center;transition:opacity .12s,color .12s,background .12s;display:grid;position:absolute;top:4px;right:6px}.window:hover .files-refresh,.files-refresh:focus-visible{opacity:1}.files-refresh:hover{background:var(--card-2);color:var(--fg)}.files-root-bar{border-bottom:1px solid var(--line-soft);align-items:center;gap:4px;margin-bottom:4px;padding:2px 30px 6px 2px;display:flex}.files-root-up{border:1px solid var(--line);background:var(--card);width:24px;height:24px;color:var(--fg-muted);border-radius:6px;flex:none;place-items:center;display:grid}.files-root-up:hover:not(:disabled){background:var(--card-2);color:var(--fg)}.files-root-up:disabled{opacity:.4;cursor:not-allowed}.files-root-input{border:1px solid var(--line);background:var(--inset);min-width:0;height:24px;color:var(--fg);border-radius:6px;flex:auto;padding:0 8px;font-size:11.5px}.files-root-input::placeholder{color:var(--fg-faint)}.files-root-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.files-root-open{border:1px solid var(--accent);background:var(--accent);height:24px;color:var(--ink-inverse);border-radius:6px;flex:none;padding:0 10px;font-size:11.5px;font-weight:550}.files-root-open:hover{filter:brightness(1.06)}.file-mut{font-family:var(--font-mono);color:var(--warn);font-size:11px}.browser{flex-direction:column;height:100%;display:flex}.bw-bar{border-bottom:1px solid var(--line-soft);color:var(--fg-faint);align-items:center;gap:8px;padding:8px 10px;display:flex}.bw-dot{border-radius:50%;width:9px;height:9px}.bw-url{background:var(--inset);color:var(--fg-muted);border-radius:7px;flex:1;align-items:center;gap:7px;padding:5px 9px;font-size:11.5px;display:flex}.bw-view{flex:1;position:relative;overflow:hidden}.bw-overlay{color:var(--fg-muted);letter-spacing:.08em;text-transform:uppercase;text-align:center;width:max-content;max-width:85%;font-size:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bw-field{align-items:center;gap:6px;display:flex}.bw-field-url{flex:1}.bw-field-label{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px}.bw-input{background:var(--inset);border:1px solid var(--line-strong);color:var(--fg);border-radius:6px;min-width:80px;padding:4px 8px;font-size:12px}.bw-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.bw-input-url{flex:1;min-width:160px}.bw-actions{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;gap:6px;padding:8px 10px;display:flex}.bw-btn{background:var(--inset);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--fg);cursor:pointer;min-width:64px;min-height:28px;padding:5px 10px;font-size:12px}.bw-btn:hover:not(:disabled){border-color:var(--accent-line)}.bw-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.bw-btn:disabled{opacity:.45;cursor:not-allowed}.bw-btn-primary{background:var(--accent);color:var(--ink-inverse);border-color:var(--accent)}.bw-btn-danger{background:color-mix(in oklch, var(--danger) 18%, var(--inset));color:var(--fg);border-color:color-mix(in oklch, var(--danger) 55%, var(--line-soft))}.bw-status{color:var(--fg-muted);margin:0;padding:6px 10px;font-size:11.5px}.bw-error{background:color-mix(in oklch, var(--danger) 12%, var(--card));color:var(--fg);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:8px 10px;font-size:12px}.bw-screenshot{max-width:100%;max-height:100%;margin:0 auto;display:block}.bw-log{border-top:1px solid var(--line-soft);max-height:140px;overflow:auto}.bw-log-list{flex-direction:column;gap:3px;margin:0;padding:6px 10px;font-size:11.5px;list-style:none;display:flex}.bw-log-item{color:var(--fg-muted);gap:8px;display:flex}.bw-log-kind{min-width:120px;color:var(--fg-muted);flex:none}.bw-log-detail{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ph-stripes{background:repeating-linear-gradient(135deg, var(--inset) 0 11px, transparent 11px 22px);opacity:.5;position:absolute;inset:0}.review{flex-direction:column;height:100%;display:flex}.rv-file{border-bottom:1px solid var(--line-soft);color:var(--fg-muted);align-items:center;gap:8px;margin:0;padding:9px 12px;font-size:12.5px;display:flex}.rv-stat{border-radius:5px;padding:1px 5px;font-size:11px}.rv-stat.add{color:var(--accent-text);background:var(--accent-dim)}.rv-stat.del{color:var(--danger);background:color-mix(in oklch, var(--danger) 16%, transparent)}.rv-code{flex:1;padding:8px 0;font-size:12.5px;line-height:1.7;overflow:auto}.rv-line{padding:0 12px;display:flex}.rv-line.rv-add{background:color-mix(in oklch, var(--ok) 10%, transparent)}.rv-line.rv-del{background:color-mix(in oklch, var(--danger) 12%, transparent)}.rv-gutter{width:14px;color:var(--fg-faint)}.rv-add .rv-gutter{color:var(--accent-text)}.rv-del .rv-gutter{color:var(--danger)}.rv-num{width:26px;color:var(--fg-faint);text-align:right;padding-right:12px}.rv-src{color:var(--fg-muted);white-space:pre}.rv-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rv-num-old,.rv-num-new{width:36px;color:var(--fg-faint);text-align:right;-webkit-user-select:none;user-select:none;padding-right:8px;font-size:11px;display:inline-block}.rv-line.rv-meta{color:var(--fg-faint);font-style:italic}.rv-hunk{color:var(--fg-faint);background:var(--inset);padding:2px 12px;font-size:11.5px}.rv-oldpath{color:var(--fg-faint);font-style:italic}.rv-elevated{color:var(--warn,var(--danger));margin-left:4px;font-size:11px;font-weight:700}.rv-header{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:flex}.rv-status{color:var(--fg-muted)}.rv-model{color:var(--fg-faint)}.rv-counts{color:var(--fg-muted);align-items:center;gap:4px;display:flex}.rv-evidence-link{color:var(--accent-text);border:1px solid var(--accent-line);border-radius:6px;padding:3px 8px;font-size:11.5px;text-decoration:none}.rv-evidence-link[href]:hover{background:var(--accent-dim)}.rv-evidence-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rv-evidence-disabled{color:var(--fg-faint);border:1px solid var(--line-soft);cursor:default;border-radius:6px;padding:3px 8px;font-size:11.5px}.rv-evidence-error{color:var(--fg);border-color:color-mix(in oklch, var(--danger) 35%, transparent);background:color-mix(in oklch, var(--danger) 12%, transparent);cursor:default}.rv-error-evidence{vertical-align:middle;margin-left:8px;display:inline-flex}.rv-layout{flex:1;display:flex;overflow:hidden}.rv-filelist{border-right:1px solid var(--line-soft);flex:none;width:180px;padding:4px 0;overflow-y:auto}.rv-filelist ul{margin:0;padding:0;list-style:none}.rv-filerow{cursor:pointer;text-align:left;width:100%;color:var(--fg-muted);background:0 0;border:none;align-items:center;gap:5px;min-height:24px;padding:5px 10px;font-size:11.5px;display:flex}.rv-filerow:hover{background:var(--card-2)}.rv-filerow[aria-pressed=true]{background:var(--accent-dim);color:var(--fg)}.rv-filerow:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:4px}.rv-filerow-path{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.rv-body{flex:1;overflow:auto}.rv-controls{border-top:1px solid var(--line-soft);align-items:center;gap:8px;padding:8px 12px;display:flex}.rv-apply-status{color:var(--fg-muted);flex:1;font-size:11.5px}.rv-apply-error{color:var(--fg);background:color-mix(in oklch, var(--danger) 16%, transparent);border:1px solid color-mix(in oklch, var(--danger) 30%, transparent);border-radius:6px;padding:3px 8px;font-size:11.5px}.rv-final{color:var(--ink-inverse);background:var(--accent);border:1px solid var(--accent);border-radius:6px;padding:3px 8px;font-size:12px}.rv-truncated{color:var(--fg-muted);border-top:1px solid var(--line-soft);margin:0;padding:8px 12px;font-size:11.5px}.rv-truncated a{color:var(--accent-text)}.rv-truncated a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rv-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;padding:24px;display:flex}.rv-empty-h{color:var(--fg-muted);margin:0;font-size:14px;font-weight:600}.rv-empty-p{color:var(--fg-muted);margin:0;font-size:12.5px}.rv-loading{flex-direction:column;gap:8px;padding:12px;display:flex}.rv-skel{background:var(--inset);border-radius:6px;height:14px;animation:none}@media (prefers-reduced-motion:no-preference){.rv-skel{animation:1.4s ease-in-out infinite pulse}}.rv-skel-sm{width:60%}.rv-error{background:color-mix(in oklch, var(--danger) 10%, transparent);color:var(--fg);border:1px solid color-mix(in oklch, var(--danger) 30%, transparent);border-radius:8px;margin:12px;padding:10px 12px;font-size:12.5px}.rv-no-diff{color:var(--fg-muted);margin:0;padding:16px 12px;font-size:12.5px}.arun-btn:focus-visible,.rail-btn:focus-visible,.rail-new:focus-visible,.rail-avatar:focus-visible,.hd-tool:focus-visible,.tb-btn:focus-visible,.edm-trigger:focus-visible,.modesw-opt:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rv-src .hl-com{color:var(--fg-dim);font-style:italic}.rv-src .hl-str{color:var(--ok)}.rv-src .hl-num,.rv-src .hl-lit{color:var(--accent)}.rv-src .hl-key{color:var(--accent);font-weight:600}.rv-src .hl-type{color:var(--fg)}.rv-src .hl-fn{color:var(--fg-muted)}.rv-src .hl-key2{color:var(--fg)}.rv-src .hl-punct{color:var(--fg-dim)}.rv-src .hl-head{color:var(--fg);font-weight:600}.rv-src .hl-id{color:var(--fg-muted)}.rv-src .hl-ws{white-space:pre}.terminal{color:var(--fg-muted);background:var(--inset);flex-direction:column;gap:8px;height:100%;padding:12px 14px;font-size:12.5px;line-height:1.75;display:flex;overflow:auto}.tm-form{flex-direction:column;gap:8px;display:flex}.tm-field{color:var(--fg-muted);flex-direction:column;gap:4px;font-size:12px;font-weight:500;display:flex}.tm-field input,.tm-field select{background:var(--card);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--fg);font-size:12.5px;font-family:var(--font-ui);outline:none;padding:6px 9px}.tm-field input:focus,.tm-field select:focus{border-color:var(--accent-line);box-shadow:0 0 0 2px var(--accent-glow)}.tm-field input::placeholder{color:var(--fg-muted)}.tm-actions{align-items:center;gap:8px;margin-top:2px;display:flex}.tm-action{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--card);min-width:56px;min-height:28px;color:var(--fg-muted);cursor:pointer;padding:6px 14px;font-size:12.5px;font-weight:550}.tm-action:hover:not(:disabled){background:var(--card-2);color:var(--fg);border-color:var(--line-strong)}.tm-action:disabled{opacity:.45;cursor:not-allowed}.tm-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tm-action[data-primary=true]{background:var(--accent);color:var(--ink-inverse);border-color:var(--accent)}.tm-action[data-primary=true]:hover:not(:disabled){filter:brightness(1.06)}.tm-limits{color:var(--fg-dim);margin:0;font-size:11px}.tm-error{border-radius:var(--radius-sm);background:color-mix(in oklch, var(--danger) 12%, var(--card));border:1px solid var(--line-strong);color:var(--fg);align-items:flex-start;gap:8px;padding:9px 11px;font-size:12.5px;display:flex}.tm-error-text{flex:1}.tm-error-dismiss{min-width:24px;min-height:24px;color:var(--fg-dim);border-radius:6px;flex:none;place-items:center;display:grid}.tm-error-dismiss:hover{color:var(--fg);background:var(--card-2)}.tm-error-dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tm-result{flex-direction:column;gap:6px;display:flex}.tm-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tm-badge{font-size:11px;font-family:var(--font-mono);background:var(--inset);border:1px solid var(--line-strong);color:var(--fg-muted);border-radius:999px;align-items:center;padding:2px 8px;display:inline-flex}.tm-badge-ok{background:color-mix(in oklch, var(--ok) 18%, var(--inset));border-color:var(--accent-line);color:var(--accent-text)}.tm-badge-fail{background:color-mix(in oklch, var(--danger) 18%, var(--inset));border-color:color-mix(in oklch, var(--danger) 45%, transparent);color:var(--danger)}.tm-badge-warn{background:color-mix(in oklch, var(--warn) 18%, var(--inset));border-color:color-mix(in oklch, var(--warn) 45%, transparent);color:var(--warn)}.tm-stdout,.tm-stderr{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line-strong);font-family:var(--font-mono);color:var(--fg-muted);white-space:pre-wrap;word-wrap:break-word;max-height:16rem;margin:0;padding:8px 10px;font-size:11.5px;line-height:1.6;overflow-x:auto}.tm-stderr{border-color:color-mix(in oklch, var(--danger) 40%, transparent);color:var(--fg-muted)}.tm-events{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.tm-event{border-radius:6px;align-items:center;gap:8px;padding:4px 6px;font-size:11.5px;display:flex}.tm-event:hover{background:var(--card)}.tm-event-kind{text-transform:uppercase;letter-spacing:.04em;color:var(--fg-dim);min-width:72px;font-size:10.5px;font-weight:700}.tm-event-detail{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (prefers-reduced-motion:no-preference){.tm-field input,.tm-field select{transition:border-color .12s,box-shadow .12s}.tm-action{transition:background .12s,color .12s,border-color .12s}}.integ{flex-direction:column;gap:6px;padding:8px;display:flex}.integ-row{border:1px solid var(--line-soft);text-align:left;border-radius:10px;align-items:center;gap:11px;padding:10px 11px;display:flex}.integ-glyph{background:var(--inset);width:30px;height:30px;color:var(--fg-muted);border-radius:8px;flex:none;place-items:center;font-size:13px;display:grid}.integ-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.integ-name{color:var(--fg);font-size:13px;font-weight:500}.integ-desc{color:var(--fg-muted);font-size:11.5px}.gw-setup-backdrop{z-index:10000;background:radial-gradient(circle at 50% 12%, color-mix(in oklch, var(--accent) 20%, transparent), transparent 34%), #010202c7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);place-items:center;padding:24px;display:grid;position:fixed;inset:0}@supports (color:lab(0% 0 0)){.gw-setup-backdrop{background:radial-gradient(circle at 50% 12%, color-mix(in oklch, var(--accent) 20%, transparent), transparent 34%), lab(.470612% -.188783 .0749379/.78)}}.gw-setup{border:1px solid var(--line-strong);background:linear-gradient(145deg, color-mix(in oklch, var(--card) 96%, var(--accent) 4%), var(--surface)), var(--surface);width:min(560px,100%);box-shadow:var(--shadow-pop);border-radius:24px;flex-direction:column;gap:14px;padding:28px;animation:none;display:flex}@media (prefers-reduced-motion:no-preference){.gw-setup{animation:.22s ease-out fadeUp}}.gw-setup-badge{border:1px solid var(--accent-line);color:var(--accent);background:var(--accent-dim);border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:7px 11px;font-size:12px;font-weight:650;display:inline-flex}.gw-setup h1{letter-spacing:-.04em;margin:2px 0 0;font-size:clamp(24px,4vw,34px);line-height:1}.gw-setup p{color:var(--fg-muted);margin:0;font-size:14px;line-height:1.55}.gw-field{color:var(--fg-muted);flex-direction:column;gap:7px;font-size:12px;font-weight:650;display:flex}.gw-input{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--inset);width:100%;color:var(--fg);outline:none;padding:12px 13px;font-size:13px}.gw-input:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-glow)}.gw-input::placeholder{color:var(--fg-faint)}.gw-textarea{resize:vertical;min-height:82px}.gw-note{border-radius:var(--radius);border:1px solid var(--line-soft);color:var(--fg-dim);background:var(--card);padding:10px 12px;font-size:12px;line-height:1.45}.gw-error,.gw-success{border-radius:var(--radius);border:1px solid var(--line-strong);padding:11px 12px;font-size:12.5px;line-height:1.45}.gw-error{color:var(--fg);background:color-mix(in oklch, var(--danger) 22%, var(--card));border-color:color-mix(in oklch, var(--danger) 48%, transparent)}.gw-success{color:var(--accent-text);background:var(--accent-dim);border-color:var(--accent-line)}.gw-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.gw-cancel{border-radius:var(--radius);border:1px solid var(--line);min-height:44px;color:var(--fg-muted);background:var(--card);padding:0 18px;font-weight:650}.gw-cancel:hover:not(:disabled){color:var(--fg);background:var(--card-2)}.gw-cancel:disabled{opacity:.55;cursor:not-allowed}.gw-submit{border-radius:var(--radius);background:var(--accent);min-height:44px;color:var(--ink-inverse);letter-spacing:-.01em;padding:0 20px;font-weight:750}.gw-submit:hover:not(:disabled){filter:brightness(1.06)}.gw-submit:disabled{opacity:.55;cursor:not-allowed}.scope-pill-group,.scope-pill-wrap{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.scope-pill{border-radius:var(--radius-sm);background:var(--accent);color:var(--ink-inverse);border:1px solid color-mix(in oklab, var(--accent) 70%, #000 30%);align-items:center;gap:6px;min-height:24px;padding:4px 8px;font-size:12px;line-height:1.2;display:inline-flex}.scope-pill-disconnect{border-radius:var(--radius-sm);min-width:24px;min-height:24px;color:var(--ink-inverse);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.scope-pill-disconnect:hover:not(:disabled):not([aria-disabled=true]){background:color-mix(in oklab, var(--ink-inverse) 15%, transparent)}.scope-pill-disconnect:disabled{opacity:.55;cursor:not-allowed}.scope-pill-detail{color:var(--fg-dim);max-width:min(560px,100%);font-size:11px;line-height:1.35}.scope-pill-disconnect:focus-visible{outline:2px solid var(--ink-inverse);outline-offset:1px}.scope-connect-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.scope-connect-btn{border-radius:var(--radius-sm);background:var(--accent);min-width:24px;min-height:24px;color:var(--ink-inverse);border:1px solid color-mix(in oklab, var(--accent) 70%, #000 30%);cursor:pointer;justify-content:center;align-items:center;padding:6px 12px;font-size:12px;line-height:1.2;display:inline-flex}.scope-connect-btn:hover:not(:disabled){filter:brightness(1.05)}.scope-connect-btn:disabled{opacity:.55;cursor:not-allowed}.scope-connect-hint{color:var(--fg);margin-top:4px;font-size:11px;display:block}.scope-connect-error{color:var(--danger);margin-top:4px;font-size:11px;display:block}.tr-row-wrap{flex-direction:column;display:flex}.grounded-answer{flex-direction:column;gap:8px;display:flex}.grounded-citations-wrap{flex-direction:column;gap:4px;margin-top:4px;display:flex}.grounded-citations{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.grounded-citations-item{margin:0;display:inline-flex}.grounded-citations-label{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);font-size:10px;font-weight:700}.grounded-citation{border:1px solid var(--accent-line);background:var(--accent-dim);min-width:24px;min-height:24px;color:var(--fg);font-family:var(--font-mono);cursor:default;border-radius:8px;align-items:center;padding:4px 8px;font-size:11px;display:inline-flex}.grounded-citation-score{color:var(--fg);margin-left:6px;font-size:10px}.grounded-uncertainty{color:var(--fg);font-size:11px;font-style:italic}.grounded-uncertainty-list{margin:4px 0 0;padding-left:16px}.grounded-meta{color:var(--fg);font-size:10px;font-family:var(--font-mono)}.grounded-coverage-notice{color:var(--fg);background:var(--card-2);border-left:3px solid var(--warn);border-radius:4px;flex-direction:column;gap:2px;margin:8px 0;padding:8px 10px;font-size:12px;display:flex}.grounded-coverage-notice-title{color:var(--fg);font-weight:600}.grounded-context-pack{border-top:1px solid var(--line-soft);font-size:11px;font-family:var(--font-mono);margin-top:8px;padding:8px 10px}.grounded-context-pack-headline{color:var(--fg);margin-bottom:4px}.grounded-context-pack-dl{-moz-column-gap:12px;grid-template-columns:max-content 1fr;gap:2px 12px;margin:0;display:grid}.grounded-context-pack-dt{color:var(--fg);font-weight:500}.grounded-context-pack-dd{color:var(--fg);text-align:right;font-variant-numeric:tabular-nums;margin:0}.chatw-typing-row{align-items:center;gap:10px;display:flex}.grounded-cancel-btn{border-radius:var(--radius-sm);background:var(--accent);min-width:24px;min-height:24px;color:var(--ink-inverse);border:1px solid color-mix(in oklab, var(--accent) 70%, #000 30%);cursor:pointer;justify-content:center;align-items:center;padding:4px 12px;font-size:12px;font-weight:600;line-height:1.2;display:inline-flex}.grounded-cancel-btn:hover:not(:disabled){filter:brightness(1.06)}.grounded-cancel-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.grounded-cancel-btn:disabled{opacity:.55;cursor:not-allowed}.lk-page{flex-direction:column;gap:24px;width:100%;max-width:900px;height:100%;margin:0 auto;padding:24px 28px;display:flex}.lk-header{flex-shrink:0;align-items:center;gap:12px;display:flex}.lk-title{letter-spacing:-.01em;color:var(--fg);flex:1;margin:0;font-size:20px;font-weight:650}.lk-header-actions{align-items:center;gap:8px;display:flex}.lkd-rename-form{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.lkd-rename-actions{justify-content:flex-end;gap:8px;display:flex}.lk-compose-fieldset{border:1px solid var(--line);border-radius:var(--radius-sm);max-height:280px;margin:12px 0 4px;padding:8px 10px;overflow-y:auto}.lk-compose-member-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.lk-compose-member-label{cursor:pointer;align-items:center;gap:8px;padding:4px 2px;display:flex}.lk-compose-member-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.lk-alert{border-radius:var(--radius-sm);background:color-mix(in oklch, var(--danger) 12%, transparent);border:1px solid color-mix(in oklch, var(--danger) 45%, transparent);color:var(--danger);padding:10px 12px;font-size:13px}.lk-alert-retry{color:var(--danger);cursor:pointer;background:0 0;border:none;min-height:24px;margin-left:12px;padding:2px 6px;font-size:12px;text-decoration:underline}.lk-pipeline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lk-node{border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-card);text-align:center;flex-direction:column;align-items:center;gap:6px;min-width:110px;padding:14px 16px;display:flex}.lk-node[data-connected=true]{border-color:var(--accent-line)}.lk-node-icon{background:var(--inset);border:1px solid var(--line-soft);border-radius:10px;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.lk-node-label{color:var(--fg);font-size:12px;font-weight:600}.lk-node-sub{color:var(--fg-dim);margin-top:2px;font-size:11px}.lk-section-head{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-muted);margin:0 0 10px;font-size:12px;font-weight:600}.lk-capsule-row{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line-soft);box-shadow:var(--shadow-card);align-items:center;gap:10px;padding:10px 12px;display:flex}.lk-capsule-drag-handle{appearance:none;color:inherit;font:inherit;text-align:left;cursor:grab;background:0 0;border:0;flex:1;align-items:center;gap:10px;min-width:0;margin:0;padding:0;display:flex}.lk-capsule-drag-handle:active{cursor:grabbing}.lk-capsule-drag-handle:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-xs)}.lk-connector-drag-ghost{z-index:10000;pointer-events:none;border:1px solid var(--accent-line);border-radius:var(--radius-sm);background:color-mix(in oklch, var(--surface) 92%, var(--accent));max-width:260px;color:var(--fg);box-shadow:var(--shadow-pop);align-items:center;gap:9px;padding:9px 11px;display:inline-flex;position:fixed}.lk-connector-drag-ghost-icon{border-radius:var(--radius-sm);background:color-mix(in oklch, var(--accent) 14%, var(--card));width:30px;height:30px;color:var(--accent);flex:none;place-items:center;display:grid}.lk-connector-drag-ghost-copy{gap:2px;min-width:0;font-size:12px;font-weight:700;display:grid}.lk-connector-drag-ghost-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lk-connector-drag-ghost-copy small{color:var(--fg-muted);text-transform:uppercase;font-size:10.5px;font-weight:600}.lk-capsule-icon{background:var(--inset);border:1px solid var(--line-soft);width:32px;height:32px;color:var(--accent);border-radius:8px;flex-shrink:0;place-items:center;font-size:14px;display:grid}.lk-capsule-info{flex:1;min-width:0}.lk-capsule-name{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.lk-capsule-actions{gap:6px;display:flex}.lk-badge{border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.lk-badge[data-state=ready]{background:var(--accent-dim);color:var(--fg);border:1px solid var(--accent-line)}.lk-badge[data-state=indexing]{background:color-mix(in oklch, var(--warn) 22%, transparent);color:var(--warn);border:1px solid color-mix(in oklch, var(--warn) 55%, transparent)}.lk-badge[data-state=stale]{background:color-mix(in oklch, var(--warn) 16%, transparent);color:var(--fg-muted);border:1px solid color-mix(in oklch, var(--warn) 40%, transparent)}.lk-badge[data-state=error]{background:color-mix(in oklch, var(--danger) 18%, transparent);color:var(--fg);border:1px solid color-mix(in oklch, var(--danger) 45%, transparent)}.lk-badge[data-state=draft],.lk-badge[data-state=deleting]{background:var(--inset);color:var(--fg-dim);border:1px solid var(--line-soft)}.lk-btn{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-width:30px;height:30px;padding:0 11px;font-size:12.5px;font-weight:500;transition:background .12s,color .12s;display:inline-flex}.lk-btn:disabled{opacity:.55;cursor:not-allowed}.lk-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.lk-btn-primary{background:var(--accent);color:var(--ink-inverse);border:1px solid var(--accent)}.lk-btn-primary:hover:not(:disabled){filter:brightness(1.06)}.lk-btn-ghost{background:var(--card);color:var(--fg-muted);border:1px solid var(--line-soft)}.lk-btn-ghost:hover:not(:disabled){background:var(--card-2);color:var(--fg)}.lk-btn-danger{background:var(--inset);color:var(--danger);border:1px solid color-mix(in oklch, var(--danger) 40%, transparent)}.lk-btn-danger:hover:not(:disabled){background:color-mix(in oklch, var(--danger) 14%, var(--inset))}.lk-btn-lg{height:34px;padding:0 16px;font-size:13px}.lk-btn-xl{height:36px;padding:0 20px;font-size:13.5px}.lk-empty{border-radius:var(--radius);border:1px dashed var(--line);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:48px 24px;display:flex}.lk-empty-icon{font-size:36px}.lk-empty-title{color:var(--fg);margin:0 0 6px;font-size:15px;font-weight:600}.lk-empty-body,.lk-loading{color:var(--fg-muted);margin:0;font-size:13px}.lkd-content{flex-direction:column;flex:1;gap:22px;min-height:0;display:flex;overflow-y:auto}.lkd-status-section{flex-direction:column;gap:12px;display:flex}.lkd-section-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.lkd-live-note{color:var(--fg-dim);font-size:11.5px;font-family:var(--font-mono)}.lkd-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.lkd-metric-card{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius-sm);min-width:0;box-shadow:var(--shadow-card);padding:12px 14px}.lkd-metric-card[data-tone=ok]{border-color:color-mix(in oklch, var(--ok) 32%, var(--line-soft))}.lkd-metric-card[data-tone=warn]{border-color:color-mix(in oklch, var(--warn) 38%, var(--line-soft))}.lkd-metric-card[data-tone=danger]{border-color:color-mix(in oklch, var(--danger) 42%, var(--line-soft))}.lkd-metric-label,.lkd-metric-meta{min-width:0;color:var(--fg-muted);font-size:11.5px;display:block}.lkd-metric-value{color:var(--fg);margin:4px 0;font-size:18px;font-weight:700;line-height:1.1;display:block}.lkd-status-bars{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius-sm);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.lkd-status-bar-row{color:var(--fg-muted);grid-template-columns:minmax(128px,.5fr) minmax(120px,1fr) minmax(42px,auto);align-items:center;gap:10px;font-size:12px;display:grid}.lkd-progress,.lkd-source-coverage{background:color-mix(in oklch, var(--fg) 8%, transparent);border:1px solid var(--line-soft);border-radius:999px;height:8px;overflow:hidden}.lkd-progress-fill{min-width:2px;height:100%;display:block}.lkd-progress-fill[data-tone=ok]{background:var(--ok)}.lkd-progress-fill[data-tone=warn]{background:var(--warn)}.lkd-progress-fill[data-tone=danger]{background:var(--danger)}.lkd-status-callout{color:var(--fg);background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius-sm);margin:0;padding:10px 12px;font-size:12.5px;line-height:1.45}.lkd-status-callout[data-tone=ok]{border-color:color-mix(in oklch, var(--ok) 34%, var(--line-soft))}.lkd-status-callout[data-tone=warn]{border-color:color-mix(in oklch, var(--warn) 42%, var(--line-soft))}.lkd-status-callout[data-tone=danger]{border-color:color-mix(in oklch, var(--danger) 48%, var(--line-soft));background:color-mix(in oklch, var(--danger) 7%, var(--card))}.lkd-dl{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);flex-direction:column;gap:8px;padding:14px 16px;display:flex}.lkd-row{align-items:baseline;gap:12px;display:flex}.lkd-label{color:var(--fg-muted);flex:none;min-width:140px;font-size:12px;font-weight:600}.lkd-value{color:var(--fg);flex:1;min-width:0;margin:0;font-size:13px}.lkd-tags{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.lkd-tag{background:var(--accent-dim);border:1px solid var(--accent-line);color:var(--fg);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:500}.lkd-stale-reasons{color:var(--fg-muted);margin:0;padding-left:16px;font-size:13px;list-style:outside}.lkd-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.lkd-source-row,.lkd-source-card{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius-sm);min-width:0;box-shadow:var(--shadow-card);display:flex}.lkd-source-row{align-items:center;gap:10px;padding:10px 14px}.lkd-source-card{flex-direction:column;gap:10px;padding:12px 14px}.lkd-source-card-head{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.lkd-source-name{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:500;overflow:hidden}.lkd-source-path{max-width:100%;color:var(--fg-muted);font-size:11.5px;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lkd-source-scope{color:var(--fg-dim);font-size:11px;font-family:var(--font-mono);border:1px solid var(--line-soft);border-radius:999px;flex:none;padding:2px 6px}.lkd-source-coverage{border-radius:var(--radius-sm);width:100%;display:flex}.lkd-source-segment{height:100%;display:block}.lkd-source-segment-ok{background:var(--ok)}.lkd-source-segment-fail{background:var(--danger)}.lkd-source-segment-skip{background:var(--fg-dim)}.lkd-source-counts{flex-wrap:wrap;flex-shrink:0;gap:8px;display:flex}.lkd-count{font-size:11.5px;font-weight:500;font-family:var(--font-mono)}.lkd-count-ok{color:var(--ok)}.lkd-count-fail{color:var(--danger)}.lkd-count-skip{color:var(--fg-dim)}.lkd-diag-list{gap:4px}.lkd-diag-group-list{margin-bottom:10px}.lkd-diag-row,.lkd-diag-group{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius-sm);align-items:baseline;gap:10px;padding:8px 14px;display:flex}.lkd-diag-group{align-items:center}.lkd-diag-row[data-severity=error],.lkd-diag-group[data-severity=error]{border-color:color-mix(in oklch, var(--danger) 40%, transparent);background:color-mix(in oklch, var(--danger) 6%, var(--card))}.lkd-diag-row[data-severity=warning],.lkd-diag-group[data-severity=warning]{border-color:color-mix(in oklch, var(--warn) 40%, transparent)}.lkd-diag-group-count{min-width:36px;color:var(--fg);font-size:12px;font-family:var(--font-mono);font-weight:700}.lkd-diag-severity{flex:none;min-width:56px;font-size:11px;font-weight:700}.lkd-diag-row[data-severity=error] .lkd-diag-severity{color:var(--danger)}.lkd-diag-row[data-severity=warning] .lkd-diag-severity{color:var(--warn)}.lkd-diag-row[data-severity=info] .lkd-diag-severity{color:var(--info)}.lkd-diag-code{font-size:11px;font-family:var(--font-mono);color:var(--fg-muted);flex:none;min-width:80px}.lkd-diag-message{color:var(--fg);flex:1;min-width:0;font-size:12.5px}.lkd-diag-page{font-size:11px;font-family:var(--font-mono);color:var(--fg-muted);flex:none}.lkd-job-row{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.lkd-job-status{flex:none;min-width:72px;font-size:11.5px;font-weight:600}.lkd-job-status[data-status=succeeded]{color:var(--ok)}.lkd-job-status[data-status=failed]{color:var(--danger)}.lkd-job-status[data-status=running]{color:var(--warn)}.lkd-job-status[data-status=queued],.lkd-job-status[data-status=cancelled]{color:var(--fg-dim)}.lkd-job-dates{color:var(--fg-muted);font-size:11.5px;font-family:var(--font-mono);flex:1}.lkd-job-duration{color:var(--fg-muted);font-size:11.5px;font-family:var(--font-mono)}.lkd-job-error{min-width:0;color:var(--danger);font-size:11.5px;font-family:var(--font-mono);flex-basis:100%;gap:8px;display:flex}@media (max-width:760px){.lkd-metric-grid{grid-template-columns:1fr}.lkd-status-bar-row{grid-template-columns:1fr;gap:6px}}.lkd-empty-note{color:var(--fg-dim);margin:0;padding:10px 0;font-size:13px}.lkd-actions-group{flex-shrink:0;gap:6px;display:flex}.lkd-btn-destructive{color:var(--ink-inverse)!important;background:var(--danger)!important;border-color:var(--danger)!important}.lkd-btn-destructive:hover:not(:disabled){filter:brightness(1.08)}.lkd-btn-destructive:disabled,.lkd-btn-destructive[aria-disabled=true]{opacity:.45;cursor:not-allowed}.mc-filters{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.mc-filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mc-filter-label{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-muted);flex-shrink:0;min-width:72px;font-size:11px;font-weight:600}.mc-filter-chips{flex-wrap:wrap;gap:4px;display:flex}.mc-chip{border:1px solid var(--line-soft);background:var(--card);min-width:24px;height:24px;color:var(--fg);cursor:pointer;border-radius:12px;align-items:center;padding:0 10px;font-size:11px;font-weight:500;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.mc-chip:hover:not(:disabled){background:var(--card-2);color:var(--fg)}.mc-chip[data-active=true],.mc-chip[aria-pressed=true]{background:var(--accent);color:var(--ink-inverse);border-color:var(--accent)}.mc-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mc-badge{white-space:nowrap;border:1px solid #0000;border-radius:10px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.mc-badge-proposed{background:color-mix(in oklch, var(--warn) 22%, transparent);color:var(--warn);border-color:color-mix(in oklch, var(--warn) 55%, transparent)}.mc-badge-accepted{background:var(--accent-dim);color:var(--fg);border-color:var(--accent-line)}.mc-badge-conflicted{background:color-mix(in oklch, var(--danger) 18%, transparent);color:var(--fg);border-color:color-mix(in oklch, var(--danger) 45%, transparent)}.mc-badge-rejected,.mc-badge-forgotten,.mc-badge-superseded,.mc-badge-expired{background:var(--inset);color:var(--fg-muted);border-color:var(--line-soft)}.mc-badge-archived{background:color-mix(in oklch, var(--info) 16%, transparent);color:var(--fg-muted);border-color:color-mix(in oklch, var(--info) 40%, transparent)}.mc-badge-pinned{background:color-mix(in oklch, var(--accent) 20%, transparent);color:var(--fg);border-color:var(--accent-line)}.mc-badge-default{background:var(--inset);color:var(--fg-muted);border-color:var(--line-soft)}.mc-badge-count{background:var(--accent);min-width:20px;height:20px;color:var(--ink-inverse);border-radius:10px;justify-content:center;align-items:center;margin-left:6px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.mc-row{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line-soft);color:var(--fg);align-items:center;gap:12px;padding:10px 12px;text-decoration:none;transition:background .12s;display:flex}.mc-row:hover{background:var(--card-2)}.mc-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mc-row-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.mc-row-body{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:13px;overflow:hidden}.mc-row-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.mc-row-type,.mc-row-scope{color:var(--fg-muted);font-size:11px}.mc-row-pinned{color:var(--accent-text);font-size:11px;font-weight:700}.mc-detail{flex-direction:column;flex:1;gap:24px;min-height:0;display:flex;overflow-y:auto}.mc-detail-header{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.mc-detail-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.mc-back-link{align-self:flex-start;text-decoration:none}.mc-section{flex-direction:column;gap:10px;display:flex}.mc-meta{grid-template-columns:auto 1fr;gap:6px 16px;font-size:13px;display:grid}.mc-meta-label{color:var(--fg-muted);white-space:nowrap;font-weight:600}.mc-meta-value{color:var(--fg);word-break:break-word;margin:0}.mc-meta-empty{color:var(--fg-dim);font-size:13px}.mc-body-text{color:var(--fg);white-space:pre-wrap;word-break:break-word;background:var(--inset);border-radius:var(--radius-sm);margin:0;padding:12px;font-size:14px;line-height:1.6}.mc-code{font-family:var(--font-mono);color:var(--fg-muted);word-break:break-all;font-size:11px}.mc-tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.mc-tag{background:var(--card);border:1px solid var(--line-soft);color:var(--fg-muted);border-radius:10px;padding:2px 8px;font-size:11px}.mc-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mc-action-error{color:var(--danger);width:100%;margin:0;font-size:12px}.mc-action-notice{color:var(--ok);width:100%;margin:0;font-size:12px}.mc-review-row{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line-soft);gap:12px;padding:12px;display:flex}.mc-review-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.mc-review-actions{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.mc-queue-link{align-items:center;text-decoration:none;display:inline-flex}.mc-dialog-backdrop{z-index:9000;background:#0000008c;background:lab(0% 0 0/.55);place-items:center;display:grid;position:fixed;inset:0}.mc-dialog{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:min(480px,100vw - 32px);box-shadow:var(--shadow-pop);flex-direction:column;gap:16px;padding:24px;display:flex}.mc-dialog-title{color:var(--fg);margin:0;font-size:16px;font-weight:650}.mc-dialog-body{color:var(--fg-muted);margin:0;font-size:13px;line-height:1.5}.mc-dialog-quote{color:var(--fg-muted);border-left:3px solid var(--line);background:var(--inset);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin:0;padding:8px 12px;font-size:13px;font-style:italic}.mc-dialog-field{flex-direction:column;gap:6px;display:flex}.mc-dialog-label{color:var(--fg-muted);font-size:12px;font-weight:600}.mc-dialog-hint{color:var(--fg-muted);font-weight:400}.mc-dialog-textarea,.mc-dialog-input,.mc-dialog-select{background:var(--inset);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--fg);font-family:var(--font-ui);box-sizing:border-box;resize:vertical;width:100%;padding:8px 10px;font-size:13px}.mc-dialog-textarea:focus,.mc-dialog-input:focus,.mc-dialog-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow);outline:none}.mc-dialog-textarea:focus-visible,.mc-dialog-input:focus-visible,.mc-dialog-select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.mc-dialog-error{color:var(--danger);margin:0;font-size:12px}.mc-dialog-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.sm-root{white-space:normal;word-break:break-word;color:var(--fg);font-size:inherit;line-height:inherit}.sm-p{margin:0 0 10px}.sm-p:last-child{margin-bottom:0}.sm-h{color:var(--fg);margin:14px 0 6px;font-weight:700;line-height:1.3}.sm-h:first-child{margin-top:0}.sm-h1{font-size:1.25em}.sm-h2{font-size:1.15em}.sm-h3{font-size:1.05em}.sm-h4,.sm-h5,.sm-h6{font-size:1em}.sm-ul,.sm-ol{margin:0 0 10px 1.4em;padding:0}.sm-ul:last-child,.sm-ol:last-child{margin-bottom:0}.sm-li{margin-bottom:3px}.sm-inline-code{font-family:var(--font-mono);background:var(--inset);border:1px solid var(--line-soft);color:var(--fg);border-radius:4px;padding:1px 5px;font-size:.88em}.sm-code-block-frame{border-radius:var(--radius-sm);border:1px solid var(--line);margin:10px 0;position:relative;overflow:hidden}.sm-code-block-header{background:var(--card-2);border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding:4px 10px;display:flex}.sm-code-lang{font-family:var(--font-mono);color:var(--fg-muted);letter-spacing:.03em;text-transform:lowercase;font-size:11px}.sm-code-copy{min-width:24px;min-height:24px;font-size:11px;font-family:var(--font-ui);color:var(--fg-muted);border:1px solid var(--line-soft);cursor:pointer;background:0 0;border-radius:4px;padding:2px 8px;transition:color .1s,border-color .1s}.sm-code-copy:hover{color:var(--fg);border-color:var(--line-strong)}.sm-code-copy:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sm-pre{background:var(--inset);font-family:var(--font-mono);color:var(--fg);margin:0;padding:12px 14px;font-size:13px;line-height:1.6;overflow-x:auto}.sm-pre code{background:0 0;border:none;padding:0;font-family:inherit}.sm-blockquote{border-left:3px solid var(--accent-line);background:var(--inset);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--fg);margin:10px 0;padding:6px 12px}.sm-hr{border:none;border-top:1px solid var(--line);margin:14px 0}.sm-link{color:var(--accent-bright);text-underline-offset:2px;word-break:break-all;text-decoration:underline}.sm-link:hover{color:var(--accent)}.sm-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}[data-theme=light] .sm-link{color:#00764c;color:lab(43.7008% -43.9579 17.1976)}[data-theme=light] .sm-link:hover{color:#00683e;color:lab(37.8937% -44.3275 17.2999)}[data-theme=light] .sm-link:focus-visible{outline-color:#00764c;outline-color:lab(43.7008% -43.9579 17.1976)}.sm-table-wrapper{border-radius:var(--radius-sm);border:1px solid var(--line);margin:10px 0;overflow-x:auto}.sm-table{border-collapse:collapse;width:100%;font-size:13px}.sm-table th,.sm-table td{border:1px solid var(--line-soft);color:var(--fg);text-align:left;padding:6px 12px}.sm-table th{background:var(--card-2);font-weight:600}.sm-table tr:nth-child(2n) td{background:var(--inset)}.chat-msg[data-role=assistant] .chat-msg-bubble{white-space:normal}.qi-col-header{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:8px;padding:12px 16px;display:flex}.qi-col-title{text-transform:uppercase;letter-spacing:.05em;color:var(--fg-muted);flex:1;margin:0;font-size:12px;font-weight:600}.qi-col-count{color:var(--fg-dim);font-size:11px}.qi-col-body{flex:1;min-height:0;padding:8px 0;overflow-y:auto}.qi-run-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.qi-run-item{text-align:left;cursor:pointer;width:100%;color:var(--fg);font-family:var(--font-ui);background:0 0;border:none;border-radius:0;flex-direction:column;gap:4px;min-height:44px;padding:10px 16px;font-size:13px;transition:background .12s;display:flex}.qi-run-item:hover{background:var(--card-2)}.qi-run-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.qi-run-item-selected{background:var(--card-2);box-shadow:inset 2px 0 0 var(--accent)}.qi-run-item-selected:hover{background:var(--card-2)}.qi-run-id{font-family:var(--font-mono);color:var(--fg);font-size:12px}.qi-run-meta{color:var(--fg-dim);font-size:11px}.qi-run-totals{color:var(--fg-muted);font-size:11px}.qi-badge{letter-spacing:.02em;border-radius:99px;align-items:center;width:fit-content;padding:1px 7px;font-size:11px;font-weight:500;display:inline-flex}.qi-badge-succeeded{background:var(--accent-dim);color:var(--accent)}.qi-badge-running{background:color-mix(in oklch, var(--info) 18%, transparent);color:var(--info)}.qi-badge-failed{background:color-mix(in oklch, var(--danger) 18%, transparent);color:var(--fg)}.qi-badge-cancelled{background:color-mix(in oklch, var(--fg-dim) 18%, transparent);color:var(--fg-muted)}.qi-badge-default{background:var(--card-2);color:var(--fg-muted);box-shadow:inset 0 0 0 1px var(--line-soft)}.qi-sev{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;align-items:center;padding:1px 6px;font-size:10px;font-weight:600;display:inline-flex}.qi-sev-critical{background:color-mix(in oklch, var(--danger) 25%, transparent);color:var(--fg)}.qi-sev-high{background:color-mix(in oklch, var(--warn) 20%, transparent);color:var(--warn)}.qi-sev-medium{background:color-mix(in oklch, var(--info) 20%, transparent);color:var(--info)}.qi-sev-low{background:color-mix(in oklch, var(--fg-dim) 18%, transparent);color:var(--fg-muted)}.qi-quality-high{background:var(--accent-dim);color:var(--accent-text)}.qi-quality-mid{background:color-mix(in oklch, var(--warn) 20%, transparent);color:var(--warn)}.qi-quality-low{background:color-mix(in oklch, var(--danger) 22%, transparent);color:var(--fg)}.qi-weak-flag{border:1px solid color-mix(in oklch, var(--danger) 40%, transparent);border-radius:var(--radius-sm);background:color-mix(in oklch, var(--danger) 10%, var(--card));flex-direction:column;gap:3px;margin:4px 0 2px;padding:6px 8px;display:flex}.qi-weak-flag-badge{text-transform:uppercase;letter-spacing:.03em;width:fit-content;color:var(--fg);align-items:center;gap:4px;font-size:11px;font-weight:600;display:inline-flex}.qi-weak-flag-icon{color:var(--danger)}.qi-weak-flag-reason{color:var(--fg-muted);margin:0;font-size:12px;line-height:1.4}.qi-coverage-panel{border-top:1px solid var(--line-soft);flex-direction:column;gap:8px;margin-top:12px;padding-top:10px;display:flex}.qi-coverage-summary{color:var(--fg-muted);margin:0;font-size:12px}.qi-coverage-gaps{flex-direction:column;gap:6px;display:flex}.qi-coverage-gap-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.qi-coverage-gap-item{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--card);justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;display:flex}.qi-coverage-atom-id{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.qi-coverage-gap-req{flex-direction:column;gap:2px;min-width:0;display:flex}.qi-coverage-gap-text{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.qi-cov-covered{background:var(--accent-dim);color:var(--accent-text)}.qi-cov-weak{background:color-mix(in oklch, var(--warn) 20%, transparent);color:var(--warn)}.qi-cov-uncovered{background:color-mix(in oklch, var(--danger) 22%, transparent);color:var(--fg)}.qi-drift-panel{border-top:1px solid var(--line-soft);flex-direction:column;gap:8px;margin-top:12px;padding-top:10px;display:flex}.qi-drift-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.qi-drift-stale{color:var(--warn);align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.qi-drift-icon-warn{font-size:13px}.qi-drift-fresh{color:var(--accent-text);align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.qi-drift-icon-ok{font-size:13px}.qi-drift-regenerated{color:var(--fg-muted);margin:0;font-size:12px}.qi-monospace{font-family:var(--font-mono);font-size:11px}.qi-finding-list{flex-direction:column;gap:6px;margin:0;padding:0 8px;list-style:none;display:flex}.qi-finding-item{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line-soft);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.qi-finding-header{align-items:center;gap:8px;display:flex}.qi-finding-kind{color:var(--fg-muted);font-size:11px;font-weight:600}.qi-finding-summary{color:var(--fg);margin:0;font-size:12px;line-height:1.5}.qi-skeleton{background:var(--card-2);border-radius:4px;position:relative;overflow:hidden}@media (prefers-reduced-motion:no-preference){.qi-skeleton:after{content:"";background:linear-gradient(90deg, transparent 0%, color-mix(in oklch, var(--fg) 6%, transparent) 50%, transparent 100%);animation:1.4s infinite qi-shimmer;position:absolute;inset:0}@keyframes qi-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}}.install-banner{z-index:900;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-pop);width:calc(100vw - 48px);max-width:480px;padding:14px 18px;position:fixed;bottom:40px;left:50%;transform:translate(-50%)}@media (prefers-reduced-motion:no-preference){.install-banner{animation:.18s ease-out both install-banner-slide-in}@keyframes install-banner-slide-in{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}}.install-banner-body{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.install-banner-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.install-banner-heading{color:var(--fg);font-size:14px;font-weight:600;line-height:1.4}.install-banner-desc{color:var(--fg-muted);font-size:13px;line-height:1.5}.install-banner-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.install-banner-btn-install{border-radius:var(--radius-sm);background:var(--accent);min-width:120px;height:32px;color:var(--ink-inverse);cursor:pointer;white-space:nowrap;border:none;outline:none;padding:0 14px;font-size:13px;font-weight:600}.install-banner-btn-install:hover:not(:disabled){background:var(--accent-bright)}.install-banner-btn-install:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px var(--accent-glow)}.install-banner-btn-dismiss{border-radius:var(--radius-sm);border:1px solid var(--line-soft);min-width:60px;height:32px;color:var(--fg-muted);cursor:pointer;white-space:nowrap;background:0 0;outline:none;padding:0 10px;font-size:13px}.install-banner-btn-dismiss:hover{background:var(--card-2);color:var(--fg)}.install-banner-btn-dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px var(--accent-glow)}[data-theme=light] .install-banner-btn-dismiss,[data-theme=light] .install-banner-desc{color:var(--fg)}.qi-launcher{border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0}.qi-launcher-body{flex-direction:column;gap:10px;padding:12px 16px 16px;display:flex}.qi-connected-source{border:1px solid color-mix(in oklch, var(--accent) 45%, var(--line));border-radius:var(--radius-sm);background:color-mix(in oklab, var(--accent) 12%, var(--card));flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding:8px 10px;display:flex}.qi-connected-kind{text-transform:uppercase;letter-spacing:.04em;color:var(--fg);font-size:10px;font-weight:700}.qi-connected-path{color:var(--fg);word-break:break-all;font-size:11px}.qi-connected-hint{color:var(--fg-muted);width:100%;font-size:11px}.qi-connected-roots{flex-direction:column;gap:3px;width:100%;margin:4px 0 0;padding:0;list-style:none;display:flex}.qi-connected-root-item{align-items:baseline;gap:8px;display:flex}.qi-connected-root-name{color:var(--fg);font-size:11px;font-weight:600}.qi-coverage-notice{color:var(--fg);background:var(--card-2);border-left:3px solid var(--warn);border-radius:4px;flex-direction:column;gap:2px;margin:8px 0 0;padding:8px 10px;font-size:12px;display:flex}.qi-coverage-line{color:var(--fg);margin:0}.qi-field{flex-direction:column;gap:4px;display:flex}.qi-field-inline{flex-direction:row;align-items:center;gap:8px}.qi-launcher-row{flex-wrap:wrap;gap:12px;display:flex}.qi-launcher-row>.qi-field:first-child{flex:1;min-width:220px}.qi-field-kind{min-width:160px}.qi-field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);font-size:11px;font-weight:600}.qi-input,.qi-textarea,.qi-select{background:var(--card);width:100%;color:var(--fg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;font-family:inherit;font-size:13px}.qi-textarea{resize:vertical;min-height:96px;line-height:1.5}.qi-input:focus-visible,.qi-textarea:focus-visible,.qi-select:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.qi-launcher-controls{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.qi-btn{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--card-2);min-width:64px;min-height:32px;color:var(--fg);cursor:pointer;padding:6px 14px;font-size:13px;font-weight:600;transition:background .12s,color .12s,border-color .12s}.qi-btn:hover:not(:disabled){border-color:var(--line-strong)}.qi-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.qi-btn:disabled{opacity:.5;cursor:not-allowed}.qi-btn-primary{background:var(--accent);border-color:var(--accent);color:var(--ink-inverse)}.qi-btn-secondary{background:0 0}.qi-btn-approve{color:var(--accent-bright);border-color:color-mix(in oklch, var(--accent) 50%, var(--line))}.qi-btn-approve[aria-pressed=true]{background:var(--accent);color:var(--ink-inverse)}.qi-btn-reject{color:#f2a4a0;border-color:color-mix(in oklch, var(--danger) 45%, var(--line))}.qi-btn-reject[aria-pressed=true]{background:color-mix(in oklch, var(--danger) 75%, black);border-color:color-mix(in oklch, var(--danger) 75%, black);color:#fff}.qi-progress{color:var(--fg-muted);align-items:center;gap:8px;font-size:12px;display:flex}.qi-progress-spinner{border:2px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite qi-spin}@keyframes qi-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.qi-progress-spinner{animation:none}}.qi-col-subtitle{text-transform:uppercase;letter-spacing:.05em;color:var(--fg-muted);align-items:center;gap:8px;margin:0;padding:0;font-size:12px;font-weight:600;display:flex}.qi-cand-cards{grid-template-columns:repeat(auto-fill,minmax(248px,1fr));align-items:start;gap:10px;margin:0;padding:0;list-style:none;display:grid}.qi-cand-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;padding:12px 14px;display:flex}.qi-cand-card-editing{grid-column:1/-1}.qi-cand-header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.qi-cand-title{color:var(--fg);margin:0;font-size:13px;font-weight:600;line-height:1.4}.qi-cand-badges{flex-shrink:0;align-items:center;gap:6px;display:flex}.qi-cand-pri,.qi-cand-risk{background:var(--card-2);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.03em;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.qi-cand-block{margin-top:8px}.qi-cand-block-label{text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);margin:0 0 3px;font-size:10px;font-weight:700}.qi-cand-list{color:var(--fg);flex-direction:column;gap:2px;margin:0;padding-left:18px;font-size:12px;line-height:1.5;display:flex}.qi-cand-tags{flex-wrap:wrap;gap:4px;margin:10px 0 0;padding:0;list-style:none;display:flex}.qi-cand-tag{background:var(--card-2);color:var(--fg-muted);border-radius:4px;padding:2px 6px;font-size:10px}.qi-cand-actions{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.qi-cand-governance-note{color:var(--fg-muted);margin:0 0 10px;font-size:12px}.qi-edit-form{flex-direction:column;gap:10px;max-width:760px;display:flex}.qi-edit-field{flex-direction:column;gap:4px;display:flex}.qi-edit-label{text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);font-size:10px;font-weight:700}.qi-edit-input,.qi-edit-textarea,.qi-edit-select{background:var(--card-2);width:100%;color:var(--fg);border:1px solid var(--line);border-radius:var(--radius-sm);box-sizing:border-box;padding:8px 10px;font-family:inherit;font-size:12px}.qi-edit-textarea{resize:vertical;min-height:72px;line-height:1.45}.qi-edit-input:focus-visible,.qi-edit-textarea:focus-visible,.qi-edit-select:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.qi-edit-actions{z-index:2;background:var(--card);border-bottom:1px solid var(--line-soft);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:8px 0;display:flex;position:sticky;top:0}.qi-edit-error{color:var(--danger);margin:0;font-size:12px}.qi-cand-more,.qi-show-more{justify-self:start;margin:12px 0 0}.qi-review-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:700}.qi-review-open{background:color-mix(in oklab, var(--fg-muted) 26%, var(--card));color:var(--fg)}.qi-review-approved{background:color-mix(in oklab, var(--accent) 32%, var(--card));color:var(--fg)}.qi-review-changes{background:color-mix(in oklab, var(--warn) 38%, var(--card));color:var(--fg)}.qi-review-rejected{background:color-mix(in oklab, var(--danger) 38%, var(--card));color:var(--fg)}.qi-review-withdrawn{background:var(--card-2);color:var(--fg)}[data-theme=light] .qi-cand-pri,[data-theme=light] .qi-cand-risk{color:var(--fg)}.qi-export{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.qi-export-preview{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;max-height:220px;color:var(--fg-muted);white-space:pre-wrap;font-size:11px;line-height:1.45;font-family:var(--font-mono,monospace);margin:8px 0 0;padding:8px 10px;overflow:auto}.qi-export-hint{width:100%;color:var(--fg-muted);margin:6px 0 0;font-size:11px;line-height:1.4}.qi-export-success{width:100%;color:var(--fg);margin:6px 0 0;font-size:11px;line-height:1.4}.qi-hub{flex-direction:column;height:100%;min-height:0;display:flex}.qi-hub .qi-launcher{border-bottom:1px solid var(--line);flex-shrink:0}.qi-hub-runs{flex-direction:column;flex:1;min-height:0;display:flex}.qi-run-card{flex-direction:column;height:100%;min-height:0;display:flex}.qi-run-card-head{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:8px;padding:12px 16px;display:flex}.qi-run-card-head .qi-run-id{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.qi-run-card-body{flex-direction:column;flex:1;gap:16px;min-height:0;padding:14px 16px;display:flex;overflow-y:auto}.qi-run-governance{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;gap:6px;padding:12px 14px;display:flex}.qi-run-governance-input{max-width:320px}.qi-run-governance-help,.qi-run-governance-warning{margin:0;font-size:12px}.qi-run-governance-help{color:var(--fg-muted)}.qi-run-governance-warning{color:var(--danger)}.qi-run-summary{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);flex-wrap:wrap;gap:10px 22px;margin:0;padding:12px 14px;display:flex}.qi-run-summary-item{flex-direction:column;gap:3px;display:flex}.qi-run-summary-item dt{text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);margin:0;font-size:10px;font-weight:600}.qi-run-summary-item dd{color:var(--fg);margin:0;font-size:12px}.qi-run-summary-review{text-transform:none}.qi-run-cases,.qi-run-findings{flex-direction:column;gap:10px;display:flex}.qi-run-cases-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.qi-skeleton-row{border-radius:var(--radius-sm);background:var(--inset);flex-direction:column;gap:6px;padding:12px 14px;display:flex}.figma-snapshot-window{height:100%;color:var(--fg);flex-direction:column;gap:12px;padding:14px;display:flex;overflow-y:auto}.figma-snapshot-form{flex-direction:column;gap:6px;display:flex}.figma-snapshot-label{color:var(--fg-muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:600}.figma-snapshot-input-row{align-items:stretch;gap:6px;display:flex}.figma-snapshot-input{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--card);color:var(--fg);outline-offset:2px;flex:1;min-width:0;padding:7px 10px;font-size:13px}.figma-snapshot-input:focus-visible{outline:2px solid var(--accent)}.figma-snapshot-input[aria-invalid=true]{border-color:var(--danger)}.figma-snapshot-input:disabled{opacity:.6}.figma-snapshot-trigger-btn{border-radius:var(--radius-sm);background:var(--accent);color:var(--ink-inverse);white-space:nowrap;cursor:pointer;outline-offset:2px;border:none;padding:7px 14px;font-size:13px;font-weight:600}.figma-snapshot-trigger-btn:focus-visible{outline:2px solid var(--accent)}.figma-snapshot-trigger-btn:disabled{opacity:.5;cursor:default}.figma-snapshot-hint{color:var(--fg-dim);margin:0;font-size:12px}.figma-snapshot-status{min-height:20px}.figma-snapshot-progress{color:var(--fg-muted);margin:0;font-size:13px}.figma-snapshot-error{color:var(--danger);margin:0;font-size:13px}.figma-snapshot-error-card{border-radius:var(--radius-sm,6px);background:#e736231f;border:1px solid #e736238c;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.figma-snapshot-error-title,.figma-snapshot-error-detail,.figma-snapshot-error-status,.figma-snapshot-error-remediation{margin:0;font-size:.8125rem}.figma-snapshot-error-title{color:#ec4e3c;font-weight:700}.figma-snapshot-error-detail{color:#ec6051}.figma-snapshot-error-status,.figma-snapshot-error-remediation{color:var(--fg-muted)}.figma-snapshot-stored-notice{border-radius:var(--radius-sm);background:var(--card-2);border:1px solid var(--line);align-items:center;gap:10px;padding:8px 12px;display:flex}.figma-snapshot-stored-text{color:var(--fg-muted);flex:1;margin:0;font-size:13px}.figma-snapshot-load-btn{border-radius:var(--radius-sm);background:var(--card);color:var(--fg);border:1px solid var(--line);cursor:pointer;outline-offset:2px;padding:5px 12px;font-size:13px}.figma-snapshot-load-btn:focus-visible{outline:2px solid var(--accent)}.figma-snapshot-result{flex-direction:column;gap:10px;display:flex}.figma-snapshot-reduction{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);padding:8px 12px}.figma-snapshot-reduction-hint{color:var(--fg);margin:0;font-size:13px;font-weight:600}.figma-snapshot-skipped-notice{color:var(--fg-muted);margin:4px 0 0;font-size:12px}.figma-snapshot-resnapshot-btn{border-radius:var(--radius-sm);background:var(--card);color:var(--fg);border:1px solid var(--line);cursor:pointer;outline-offset:2px;align-self:flex-start;padding:5px 14px;font-size:13px}.figma-snapshot-resnapshot-btn:focus-visible{outline:2px solid var(--accent)}.figma-snapshot-resnapshot-btn:disabled{opacity:.5;cursor:default}.figma-snapshot-consent{color:var(--fg-muted);cursor:pointer;align-items:flex-start;gap:8px;margin:8px 0 0;font-size:12px;display:flex}.figma-snapshot-consent-checkbox{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;flex:none;margin-top:1px}.figma-snapshot-codegen{flex-direction:column;gap:8px;margin-top:4px;display:flex}.figma-snapshot-codegen-btn{border-radius:var(--radius-sm);background:var(--accent);color:var(--ink-inverse);border:1px solid var(--accent);cursor:pointer;outline-offset:2px;align-self:flex-start;padding:5px 14px;font-size:13px}.figma-snapshot-codegen-btn:focus-visible{outline:2px solid var(--accent)}.figma-snapshot-codegen-btn:disabled{opacity:.5;cursor:default}.figma-snapshot-code-result{flex-direction:column;gap:4px;display:flex}.figma-snapshot-code-summary{color:var(--fg-muted);margin:0;font-size:12px}.figma-snapshot-code-file-path{cursor:pointer;font-family:var(--font-mono,monospace);color:var(--fg);outline-offset:2px;padding:3px 0;font-size:12px}.figma-snapshot-code-file-path:focus-visible{outline:2px solid var(--accent);border-radius:2px}.figma-snapshot-code-file-contents{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);max-height:260px;font-family:var(--font-mono,monospace);white-space:pre;color:var(--fg);margin:4px 0 0;padding:8px;font-size:11px;line-height:1.5;overflow:auto}.figma-snapshot-scopes{color:var(--fg-muted);border-radius:var(--radius-sm);padding:4px 0;font-size:12px}.figma-snapshot-scopes-summary{cursor:pointer;color:var(--fg-muted);outline-offset:2px;padding:4px 0;font-size:12px}.figma-snapshot-scopes-summary:focus-visible{outline:2px solid var(--accent);border-radius:2px}.figma-snapshot-scopes-list{flex-direction:column;gap:3px;margin:6px 0 0;padding-left:18px;display:flex}.figma-snapshot-scopes-note{color:var(--fg-dim);margin:6px 0 0}.figma-snapshot-gallery{flex-direction:column;gap:8px;display:flex}.figma-snapshot-screen-card{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.figma-snapshot-screen-placeholder{border-radius:var(--radius-sm);background:var(--card-2);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.figma-snapshot-screen-index{color:var(--fg-muted);font-size:12px;font-weight:700}.figma-snapshot-screen-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.figma-snapshot-screen-name{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:13px;font-weight:600;overflow:hidden}.figma-snapshot-screen-summary{color:var(--fg-muted);margin:0;font-size:12px}.figma-snapshot-screen-size,.figma-snapshot-screen-id{color:var(--fg-dim);margin:0;font-size:11px}.tb-status .dot[data-tone=ok]{background:var(--accent-text)}.tb-status .dot[data-tone=warn]{background:var(--warn)}.tb-status .dot[data-tone=danger]{background:var(--danger)}.conn-badge>span{text-overflow:ellipsis;max-width:240px;overflow:hidden}.wf-dialog-overlay{z-index:99999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0304038c;background:lab(.915997% -.295676 .117427/.55);place-items:center;padding:24px;display:grid;position:fixed;inset:0}[data-theme=light] .wf-dialog-overlay{background:#2a2f2c57;background:lab(18.9354% -3.21262 1.27611/.34)}.wf-dialog{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);width:460px;max-width:100%;max-height:calc(100% - 48px);box-shadow:var(--shadow-pop);padding:16px 18px;position:relative;overflow:auto}.wf-dialog-title{margin:0 24px 12px 0;font-size:14px;font-weight:650}.wf-dialog-close{width:26px;height:26px;color:var(--fg-muted);border-radius:8px;place-items:center;transition:background .15s,color .15s;display:grid;position:absolute;top:10px;right:10px}.wf-dialog-close:hover{background:var(--card-2);color:var(--fg)}.wf-dialog-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.wf-dialog-choice{text-align:left;border:1px solid var(--line-soft);background:var(--card);border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;transition:background .15s,border-color .15s;display:flex}.wf-dialog-choice:hover{background:var(--card-2);border-color:var(--accent-line)}.wf-dialog-choice-label{color:var(--fg);font-size:13px;font-weight:600}.wf-dialog-choice-desc{color:var(--fg-muted);font-size:12px}.wf-dialog-form{flex-direction:column;gap:10px;display:flex}.wf-dialog-form-desc{color:var(--fg-muted);margin:0;font-size:12.5px}.wf-dialog-field{color:var(--fg-muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.wf-dialog-input{border:1px solid var(--line);background:var(--card);width:100%;color:var(--fg);resize:vertical;border-radius:9px;padding:8px 10px;font-size:12.5px}.wf-dialog-input:focus{border-color:var(--accent-line)}.wf-dialog-error{color:var(--danger);border:1px solid color-mix(in oklch, var(--danger) 48%, transparent);background:color-mix(in oklch, var(--danger) 12%, var(--card));border-radius:9px;padding:8px 10px;font-size:12.5px}.wf-dialog-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.wf-dialog-cancel,.wf-dialog-launch{border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:9px;padding:7px 14px;font-size:12.5px;font-weight:600;transition:background .15s,filter .15s}.wf-dialog-cancel:hover{background:var(--card-2)}.wf-dialog-launch{background:var(--accent);border-color:var(--accent);color:var(--ink-inverse)}.wf-dialog-launch:hover:not(:disabled){filter:brightness(1.06)}.wf-dialog-launch:disabled{opacity:.55;cursor:not-allowed}.wf-dialog-choice:focus-visible,.wf-dialog-cancel:focus-visible,.wf-dialog-launch:focus-visible,.wf-dialog-close:focus-visible,.wf-dialog-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.run-summary-card{border:1px solid var(--line-soft);background:var(--card);border-radius:14px;max-width:min(640px,84%);margin-bottom:14px;padding:10px 13px;font-size:13px;line-height:1.5}.run-summary-card-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.run-summary-card-workflow{color:var(--fg);font-size:12px}.run-summary-card-status{text-transform:capitalize;border:1px solid var(--line-soft);color:var(--fg-dim);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600}.run-summary-card-status[data-status=succeeded]{color:var(--ok);border-color:color-mix(in oklch, var(--ok) 40%, transparent)}[data-theme=light] .run-summary-card-status[data-status=succeeded]{color:var(--accent-text)}.run-summary-card-status[data-status=failed]{color:var(--danger);border-color:color-mix(in oklch, var(--danger) 40%, transparent)}.run-summary-card-status[data-status=running]{color:var(--warn);border-color:color-mix(in oklch, var(--warn) 40%, transparent)}.run-summary-card-body p{margin:0 0 4px}.run-summary-card-body p:last-child{margin-bottom:0}.run-summary-card-line{color:var(--fg)}.run-summary-card-result{color:var(--fg-muted)}.run-summary-card-meta{color:var(--fg-faint);font-size:10px;font-family:var(--font-mono);margin-top:6px}[data-theme=light] .cmdk-overlay{background:#2a2f2c57;background:lab(18.9354% -3.21262 1.27611/.34)}[data-theme=light] .gw-setup-backdrop{background:radial-gradient(circle at 50% 12%, color-mix(in oklch, var(--accent) 20%, transparent), transparent 34%), #2a2f2c57}@supports (color:lab(0% 0 0)){[data-theme=light] .gw-setup-backdrop{background:radial-gradient(circle at 50% 12%, color-mix(in oklch, var(--accent) 20%, transparent), transparent 34%), lab(18.9354% -3.21262 1.27611/.34)}}.cmdk-input:focus-within{border-bottom-color:var(--accent-line);box-shadow:0 1px 0 0 var(--accent-glow)}.bw-btn-primary:hover:not(:disabled){filter:brightness(1.06);border-color:var(--accent)}.bw-btn-danger:hover:not(:disabled){border-color:var(--danger);background:color-mix(in oklch, var(--danger) 28%, var(--inset))}@media (prefers-reduced-motion:no-preference){.bw-btn,.arun-btn{transition:background .12s,color .12s,border-color .12s,filter .12s}}.figma-snapshot-trigger-btn:hover:not(:disabled){background:var(--accent-bright)}.figma-snapshot-codegen-btn:hover:not(:disabled){background:var(--accent-bright);border-color:var(--accent-bright)}.figma-snapshot-load-btn:hover:not(:disabled),.figma-snapshot-resnapshot-btn:hover:not(:disabled){background:var(--card-2);border-color:var(--line-strong)}@media (prefers-reduced-motion:no-preference){.figma-snapshot-trigger-btn,.figma-snapshot-codegen-btn,.figma-snapshot-load-btn,.figma-snapshot-resnapshot-btn{transition:background .15s,border-color .15s}}.qi-btn-primary:hover:not(:disabled){background:var(--accent-bright);border-color:var(--accent-bright)}.lk-alert-retry:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}[data-theme=light] :focus-visible,[data-theme=light] .rv-truncated a:focus-visible{outline-color:var(--accent-text)}.win-btn:focus-visible,.win-zbtn:focus-visible,.win-zpct:focus-visible,.ws-zoom-btn:focus-visible,.ws-zoom-pct:focus-visible,.ws-fab:focus-visible,.ws-empty-btn:focus-visible,.conn-badge:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.tm-field input:focus-visible,.tm-field select:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}[data-theme=light] .win-close:hover{background:var(--danger);color:#fff}[data-theme=light] .arun-btn.danger:hover{background:var(--danger)}[data-theme=light] .fpv-num,[data-theme=light] .ed-num,[data-theme=light] .hl-com{color:var(--fg-muted)}.ws-zoom-btn:disabled,.win-zbtn:disabled{opacity:.4;cursor:default}.ws-zoom-btn:disabled:hover{color:var(--fg-dim);background:0 0}.win-zbtn:disabled:hover{color:var(--fg-faint);background:0 0}.qi-input:disabled,.qi-textarea:disabled,.qi-select:disabled{opacity:.55;cursor:not-allowed}.qi-input::-moz-placeholder{color:var(--fg-muted)}.qi-textarea::-moz-placeholder{color:var(--fg-muted)}.qi-input::placeholder,.qi-textarea::placeholder{color:var(--fg-muted)}.qi-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.qi-btn-primary[aria-disabled=true]:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}.qi-field-error{color:var(--danger);margin:0;font-size:12px}.qi-field-hint,.qi-generate-hint{color:var(--fg-muted);font-size:11px}.qi-generate-hint{flex-basis:100%}.conn-layer:focus-within{z-index:9000}.conn-badge:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[data-theme=light] .mc-badge-proposed{color:#27231e;color:lab(14.1738% 1.1639 4.53491)}.lk-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.lk-btn[aria-disabled=true]:hover{filter:none}.mc-consolidation-scroll{flex-direction:column;flex:1;gap:24px;min-height:0;display:flex;overflow-y:auto}.chatw-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.cmp-box:not(.cmp-box-fill)>.cmp-input{max-height:220px;overflow-y:auto}.chatw-grounded{border:1px solid var(--line-soft);background:var(--card);border-radius:14px;flex-direction:column;gap:10px;max-width:min(640px,84%);margin-bottom:14px;padding:10px 13px;display:flex}.grounded-citations-more{border:1px solid var(--line);min-height:24px;color:var(--fg-muted);cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;padding:2px 10px;font-size:11px;transition:color .15s,border-color .15s}.grounded-citations-more:hover{color:var(--fg);border-color:var(--line-strong)}.grounded-citations-more:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.grounded-citation{max-width:100%}.grounded-citation>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:32ch;overflow:hidden}.grounded-context-pack .grounded-context-pack{border-top:none;border-left:2px solid var(--line-soft);margin-top:6px;padding:0 0 0 10px}.grounded-context-pack .grounded-context-pack-headline{color:var(--fg-muted)}.rail-btn:focus-visible:after,.rail-new:focus-visible:after,.rail-avatar:focus-visible:after{opacity:1;transform:translateY(-50%)}.rail-avatar:hover{filter:brightness(1.12)}.ft-val{text-overflow:ellipsis;max-width:28ch;overflow:hidden}[data-theme=light] .modesw-av,[data-theme=light] .ft-you{color:#fff}.cmp-budget{color:var(--fg-muted);flex-direction:column;gap:6px;margin-top:8px;font-size:12px;display:flex}.cmp-budget-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cmp-budget-count{font-variant-numeric:tabular-nums}.cmp-budget-badge{letter-spacing:.02em;border-radius:99px;align-items:center;padding:1px 7px;font-size:11px;font-weight:500;display:inline-flex}.cmp-budget-badge-low{background:var(--accent-dim);color:var(--accent)}.cmp-budget-badge-moderate{background:color-mix(in oklch, var(--info) 18%, transparent);color:var(--info)}.cmp-budget-badge-high{background:color-mix(in oklch, var(--warn) 18%, transparent);color:var(--warn)}.cmp-budget-badge-exceeded{background:color-mix(in oklch, var(--danger) 18%, transparent);color:var(--fg)}[data-theme=light] .cmp-budget-badge-low{color:var(--ink-inverse)}.cmp-budget-info{border:1px solid var(--line-strong);width:15px;height:15px;color:var(--fg-muted);cursor:help;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:10px;font-style:italic;display:inline-flex;position:relative}.cmp-budget-info:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cmp-budget-info[data-tip]:after{content:attr(data-tip);background:var(--card);border:1px solid var(--line);width:max-content;max-width:240px;color:var(--fg);box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;z-index:9999;border-radius:7px;padding:5px 9px;font-size:12px;font-style:normal;font-weight:500;line-height:1.35;transition:opacity .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.cmp-budget-info[data-tip]:hover:after,.cmp-budget-info[data-tip]:focus-visible:after{opacity:1}.cmp-budget-clear{border:1px solid var(--line-soft);min-height:24px;color:var(--fg-muted);background:0 0;border-radius:999px;padding:2px 10px;font-size:11.5px;transition:border-color .15s,background .15s,color .15s}.cmp-budget-clear:hover:not(:disabled){background:var(--card-2);border-color:var(--line-strong);color:var(--fg)}.cmp-budget-clear:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cmp-budget-clear:disabled{opacity:.55;cursor:not-allowed}.cmp-budget-confirm{align-items:center;gap:8px;display:inline-flex}.cmp-budget-confirm-label{color:var(--fg)}.cmp-budget-cleared{color:var(--fg-muted);font-size:11.5px}.cmp-budget-alert{margin-top:2px}.scope-pill-disconnect[aria-disabled=true]{opacity:.55;cursor:not-allowed}.scope-pill--connector{background:color-mix(in oklab, var(--accent) 72%, var(--info) 28%);border-color:color-mix(in oklab, var(--accent) 55%, #000 30%)}.conn-badge[data-armed=true]{border-color:var(--danger);color:var(--danger);background:color-mix(in oklch, var(--danger) 14%, var(--card))}.fpv-code:focus-visible,.ed-code:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.dlg-dirwrap{align-items:center;gap:8px;display:flex}.dlg-dirwrap .dlg-input{flex:1;width:auto;min-width:0}.dlg-dirbtn{white-space:nowrap}.dir-picker{flex-direction:column;gap:10px;display:flex}.dir-top{gap:8px;display:flex}.dir-top .dir-path{flex:1;width:auto;min-width:0}.dir-roots{flex-wrap:wrap;gap:6px;display:flex}.dir-chip{border:1px solid var(--line);background:var(--card);min-height:24px;color:var(--fg-muted);border-radius:999px;padding:4px 11px;font-size:12px}.dir-chip:hover{background:var(--card-2);color:var(--fg)}.dir-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dir-list{border:1px solid var(--line-soft);border-radius:var(--radius-sm);flex-direction:column;gap:2px;max-height:220px;padding:4px;display:flex;overflow:auto}.dir-row{text-align:left;width:100%;min-height:28px;color:var(--fg-muted);border-radius:7px;align-items:center;gap:8px;padding:6px 10px;font-size:12.5px;display:flex}.dir-row:hover{background:var(--card-2);color:var(--fg)}.dir-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.dir-note{color:var(--fg-faint);padding:6px 10px;font-size:12px}.dir-actions{justify-content:flex-end;gap:9px;display:flex}.dlg-error,.dir-error{border-radius:var(--radius-sm);border:1px solid color-mix(in oklch, var(--danger) 48%, transparent);background:color-mix(in oklch, var(--danger) 22%, var(--card));color:var(--fg);padding:10px 12px;font-size:12.5px;line-height:1.45}@media (max-width:1100px){.hd-wordmark,.edm-trigger-label{display:none}}@media (max-width:1000px){.header .tb-status,.header .tb-btn{display:none}}.tb-tabs{min-width:0}.tb-tab{white-space:nowrap;min-width:0}.tb-tab>span{text-overflow:ellipsis;white-space:nowrap;max-width:220px;display:block;overflow:hidden}.bw-input:disabled,.tm-field input:disabled,.tm-field select:disabled{opacity:.45;cursor:not-allowed}.connector-picker{height:100%;color:var(--fg);flex-direction:column;gap:8px;padding:12px 14px;font-size:12.5px;display:flex;overflow-y:auto}.connector-picker-label{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-muted);font-size:11px;font-weight:600}.connector-picker-select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--card);min-height:28px;color:var(--fg);font-size:12.5px;font-family:var(--font-ui);padding:6px 9px}.connector-picker-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.connector-picker-status,.connector-picker-empty{color:var(--fg-muted);flex-direction:column;align-items:flex-start;gap:8px;padding:12px 14px;font-size:12.5px;display:flex}.connector-picker-empty p{margin:0}.connector-picker-error{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:color-mix(in oklch, var(--danger) 12%, var(--card));color:var(--fg);flex-direction:column;align-items:flex-start;gap:8px;margin:12px 14px;padding:9px 11px;font-size:12.5px;display:flex}.connector-picker-error p{margin:0}.connector-picker-retry{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--card);min-height:24px;color:var(--fg);cursor:pointer;padding:3px 10px;font-size:12px;transition:border-color .15s}.connector-picker-retry:hover{border-color:var(--accent-line)}.connector-picker-retry:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.connector-picker-selected{color:var(--accent-text);align-items:center;gap:6px;font-size:12px;display:flex}.connector-picker-notice{color:var(--warn);margin:0;font-size:11.5px}.connector-picker-footer{margin-top:auto;padding-top:4px}.connector-picker-create-link{min-height:24px;color:var(--accent-text);cursor:pointer;background:0 0;border:0;align-items:center;padding:0;font-size:12.5px;text-decoration:none;display:inline-flex}.connector-picker-create-link:hover{text-decoration:underline}.connector-picker-create-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.connector-node{height:100%;color:var(--fg);background:linear-gradient(180deg, color-mix(in oklch, var(--accent) 10%, transparent), transparent 42%), var(--surface);grid-template-rows:auto minmax(0,1fr) auto;gap:10px;padding:16px;display:grid}.connector-node-icon{border:1px solid var(--accent-line);border-radius:var(--radius-sm);background:color-mix(in oklch, var(--accent) 14%, var(--card));width:64px;height:64px;color:var(--accent);box-shadow:var(--shadow-card);place-items:center;display:grid}.connector-node-copy{align-self:center;min-width:0}.connector-node-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--accent-text);margin:0 0 5px;font-size:11px;font-weight:700}.connector-node-title{color:var(--fg);overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:700;line-height:1.2}.connector-node-id{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;margin:8px 0 0;font-size:11px;overflow:hidden}.connector-node-manage{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--card);min-height:28px;color:var(--fg);cursor:pointer;justify-self:start;padding:4px 10px;font-size:12px}.connector-node-manage:hover{border-color:var(--accent-line)}.connector-node-manage:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-height:720px){.rail{scrollbar-width:none;overflow-y:auto}.rail::-webkit-scrollbar{display:none}.rail>:not(.spacer){flex:none}}.sm-fallback{white-space:pre-wrap}.sm-code-copy{min-width:58px}.sm-code-copy[data-copied=true]{color:var(--ok);border-color:var(--ok)}.set-tab:hover{color:var(--fg);background:var(--inset)}.set-tab:focus-visible,.set-add:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.set-add:hover{filter:brightness(1.06)}.gw-error-retry{color:var(--danger);cursor:pointer;background:0 0;border:none;min-height:24px;margin-left:12px;padding:2px 6px;font-size:12px;text-decoration:underline}.gw-error-retry:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:4px}ul.integ{margin:0;list-style:none}.integ-status{color:var(--fg-muted);background:var(--inset);border:1px solid var(--line-soft);white-space:nowrap;border-radius:999px;flex:none;padding:2px 8px;font-size:11px}.dlg-btn:disabled,.dlg-primary:disabled,.arun-btn:disabled{opacity:.55;cursor:not-allowed}.dlg-input:disabled,.gw-input:disabled{opacity:.6;cursor:not-allowed}.pal-card:focus-visible,.palette-x:focus-visible,.gw-submit:focus-visible,.gw-cancel:focus-visible,.perm-toggle:focus-visible,.perm-opt:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gw-error-code{color:var(--fg-muted);margin-top:4px;font-size:11px}.qi-btn[aria-disabled=true]:hover{border-color:var(--line)}.srch-box{transition:border-color .15s,box-shadow .15s}.srch-box:focus-within{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-glow)}.gpref-slider:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.figma-snapshot-input::placeholder{color:var(--fg-muted)}.qi-input[aria-invalid=true]{border-color:var(--danger)}.figma-snapshot-scopes-summary:hover{color:var(--fg)}.figma-snapshot-code-file-path:hover{text-decoration:underline}@media (prefers-reduced-motion:no-preference){.figma-snapshot-scopes-summary{transition:color .15s}}.mc-dialog{border-radius:var(--radius-lg);max-height:calc(100vh - 48px);overflow-y:auto}@media (prefers-reduced-motion:no-preference){.mc-dialog-backdrop{animation:.16s mc-dialog-fade}.mc-dialog{animation:.18s cubic-bezier(.2,.7,.2,1) mc-dialog-rise}}@keyframes mc-dialog-fade{0%{opacity:0}}@keyframes mc-dialog-rise{0%{transform:translateY(10px)scale(.985)}}.fpv-image-pane{flex-direction:column;flex:1;align-items:center;gap:12px;padding:14px;display:flex;overflow:auto}.fpv-image-card{background:var(--inset);border:1px solid var(--line-soft);border-radius:9px;max-width:100%;padding:8px}.fpv-image{max-width:100%;height:auto;display:block}.fpv-meta{flex-direction:column;gap:4px;width:100%;max-width:360px;font-size:12px;display:flex}.fpv-meta-row{justify-content:space-between;gap:16px;padding:2px 0;display:flex}.fpv-meta-row span{color:var(--fg-muted)}.fpv-meta-row strong{color:var(--fg);font-weight:550}.fpv-meta-pane{flex:1;place-items:center;padding:16px;display:grid;overflow:auto}.fpv-meta-card{background:var(--inset);border:1px solid var(--line-soft);border-radius:9px;flex-direction:column;gap:8px;max-width:100%;padding:16px 20px;display:flex}.fpv-meta-card h3{color:var(--fg);overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:600}.fpv-meta-card p{color:var(--fg-muted);margin:0;font-size:12px;line-height:1.5}.fpv-banner{color:var(--fg);background:color-mix(in oklch, var(--warn) 12%, var(--surface));border-bottom:1px solid color-mix(in oklch, var(--warn) 40%, var(--line-soft));flex:none;padding:6px 12px;font-size:11.5px;line-height:1.4}.files-note{color:var(--fg-muted);padding:4px 8px;font-size:12px;line-height:1.5}.files-warning{border-left:2px solid var(--warn)}.files-error{color:var(--fg);background:color-mix(in oklch, var(--danger) 14%, var(--inset));border:1px solid color-mix(in oklch, var(--danger) 55%, var(--line-soft));border-radius:9px;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 8px;padding:8px 10px;font-size:12px;line-height:1.5;display:flex}.files-retry{min-width:24px;min-height:24px;color:var(--fg);background:var(--card-2);border:1px solid var(--line-strong);border-radius:7px;flex:none;padding:2px 10px;font-size:12px;transition:background .15s,border-color .15s}.files-retry:hover{background:var(--card);border-color:var(--line)}.files-retry:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tr-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--fg-muted);background:var(--inset);border:1px solid var(--line-strong);border-radius:5px;flex:none;padding:0 5px;font-size:9.5px}.tr-meta{color:var(--fg-muted);flex:none;font-size:10.5px}.tr-row:focus-visible,.chat-row:focus-visible,.proj-head:focus-visible,.edm-item:focus-visible,.plg-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fpv-back:focus-visible,.files-root-up:focus-visible,.files-root-open:focus-visible,.files-refresh:focus-visible,.chip:focus-visible,.cmp-mode:focus-visible,.pal-card:focus-visible,.palette-x:focus-visible,.auto-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auto-toggle:hover{border-color:var(--line-strong)}.auto-toggle:after{content:"";position:absolute;inset:-4px -2px}.conn-badge-layer{z-index:99999;pointer-events:none;position:absolute;inset:0}.files-note{color:var(--fg-muted);padding:6px 8px;font-size:12px}.files-warning{color:var(--warn)}.files-error{color:var(--fg);background:color-mix(in oklch, var(--danger) 14%, var(--inset));border:1px solid color-mix(in oklch, var(--danger) 55%, var(--line-soft));border-radius:8px;align-items:center;gap:10px;margin:6px 8px;padding:8px 10px;font-size:12px;display:flex}.files-error>span{flex:1;min-width:0}.files-retry{border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:6px;flex:none;padding:2px 8px;font-size:11.5px;transition:background .15s}.files-retry:hover{background:var(--card-2)}.tr-badge{text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);background:var(--inset);border:1px solid var(--line-soft);border-radius:5px;flex:none;padding:2px 5px;font-size:9.5px;line-height:1}.tr-meta{color:var(--fg-muted);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:11px}.tr-caret-ghost{visibility:hidden}.tr-row:disabled,.tr-row[aria-disabled=true]{opacity:.45;cursor:not-allowed}.tr-row[aria-disabled=true]:hover{background:0 0}.files .files-tree{min-height:0}.win-body{border-radius:0 0 calc(var(--radius) - 1px) calc(var(--radius) - 1px)}.window[data-max=true] .win-body{border-radius:0}.win-port:after{content:"";border-radius:50%;position:absolute;inset:-6px}.win-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.win-ico,.win-btn{flex:none}.win-zoom{width:0;overflow:hidden}.win-head:hover .win-zoom,.win-zoom:focus-within{width:auto;overflow:visible}.mc-review-row .mc-row-body{white-space:normal;-webkit-line-clamp:3;line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.mc-row-detail-link{color:var(--accent-text);text-underline-offset:2px;font-size:11px;text-decoration:underline}.mc-row-detail-link:hover{color:var(--fg)}.mc-row-detail-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:no-preference){.mc-row-detail-link{transition:color .15s}}.fpv-line{content-visibility:auto;contain-intrinsic-size:auto 21.25px}.fpv-retry{color:var(--danger);cursor:pointer;background:0 0;border:none;min-height:24px;margin-left:12px;padding:2px 6px;font-size:12px;text-decoration:underline}.fpv-retry:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:4px}.figma-snapshot-link-error{color:var(--danger);margin:0;font-size:12px}.figma-snapshot-consent-required{font-weight:600}.figma-snapshot-trigger-btn[aria-disabled=true]{opacity:.5;cursor:default}.figma-snapshot-trigger-btn[aria-disabled=true]:hover{background:var(--accent)}.figma-snapshot-codegen-btn[aria-disabled=true]{opacity:.5;cursor:default}.figma-snapshot-codegen-btn[aria-disabled=true]:hover{background:var(--accent);border-color:var(--accent)}.figma-snapshot-load-btn[aria-disabled=true]{opacity:.5;cursor:default}.figma-snapshot-load-btn[aria-disabled=true]:hover{background:var(--card);border-color:var(--line)}.figma-snapshot-input[readonly]{opacity:.6}.figma-snapshot-empty{border-radius:var(--radius-sm);border:1px dashed var(--line);background:var(--card);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.figma-snapshot-empty-title{color:var(--fg);margin:0;font-size:13px;font-weight:600}.figma-snapshot-empty-steps{color:var(--fg-muted);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:12px;display:flex}.figma-snapshot-empty-note{color:var(--fg-dim);margin:0;font-size:12px}.ws-connect-hint{z-index:8000;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);color:var(--fg);white-space:nowrap;pointer-events:none;border-radius:9px;padding:6px 12px;font-size:12px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}[data-theme=light] .lk-badge[data-state=indexing]{color:#27231e;color:lab(14.1738% 1.1639 4.53491)}.lk-capsule-info .lk-badge{margin-top:3px}.mc-dialog-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}[data-theme=light] .mc-dialog-backdrop{background:#2a2f2c57;background:lab(18.9354% -3.21262 1.27611/.34)}.lkd-tools{flex-direction:column;flex-shrink:0;align-items:flex-start;gap:12px;display:flex}.lkd-connect-form{flex-direction:column;gap:8px;width:min(420px,100%);display:flex}.lkd-connect-label{color:var(--fg-muted);font-size:12px;font-weight:600}.lkd-connect-row{flex-direction:column;gap:8px;display:flex}.lkd-connect-input{width:100%}.lkd-connect-path-group{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.lkd-index-row{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.lkd-source-picker{width:min(680px,100vw - 40px)}.lkd-source-picker-body{flex-direction:column;gap:12px;min-height:360px;display:flex}.lkd-picker-projects{flex-wrap:wrap;gap:6px;display:flex}.lkd-picker-root{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.lkd-picker-root .dlg-label{grid-column:1/-1}.lkd-picker-current{color:var(--fg-muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;font-size:12px;display:grid}.lkd-picker-current .mono{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lkd-picker-list{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--inset);flex-direction:column;gap:4px;min-height:0;max-height:280px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.lkd-picker-entry{min-width:0}.lkd-picker-row{width:100%;min-height:30px;color:var(--fg);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px;display:flex}.lkd-picker-row:hover:not(:disabled){background:var(--card-2)}.lkd-picker-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.lkd-picker-row input{flex:none}.lkd-picker-empty{color:var(--fg-muted);padding:10px;font-size:12.5px}.arun-btn[aria-pressed=true],.arun-btn[aria-pressed=true]:hover:not(:disabled){background:var(--accent);color:var(--ink-inverse);border-color:var(--accent)}.arun-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.arun-btn[aria-disabled=true]:hover{color:var(--fg-muted);background:var(--card)}.tm-action[aria-disabled=true]{opacity:.45;cursor:not-allowed}.tm-action[aria-disabled=true]:hover{background:var(--card);color:var(--fg-muted);border-color:var(--line)}.tm-action[data-primary=true][aria-disabled=true]:hover{background:var(--accent);color:var(--ink-inverse);border-color:var(--accent);filter:none}.bw-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.bw-btn[aria-disabled=true]:hover{border-color:var(--line);filter:none}.bw-btn-danger[aria-disabled=true]:hover{border-color:color-mix(in oklch, var(--danger) 55%, var(--line-soft));background:color-mix(in oklch, var(--danger) 18%, var(--inset))}.bw-btn-primary[aria-disabled=true]:hover{border-color:var(--accent)}.arun-status .dot{background:var(--line-strong)}.arun-status .dot[data-status=failed],.arun-status .dot[data-status=rejected]{background:var(--danger)}.arun-status .dot[data-status=completed],.arun-status .dot[data-status=fix-applied]{background:var(--ok)}.arun-perm{min-width:0;max-width:100%}.arun-perm-path{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.err-code{color:var(--fg-muted);font-size:.9em}.rv-empty-form{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.rv-empty-label{color:var(--fg-muted);font-size:12px}.rv-runid-input{background:var(--inset);border:1px solid var(--line);border-radius:var(--radius-sm);min-height:28px;color:var(--fg);width:220px;max-width:100%;padding:6px 9px;font-size:12px}.rv-runid-input::placeholder{color:var(--fg-muted)}.rv-runid-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.hd-tool-kbd{width:auto;padding:0 5px}@media (max-width:680px){.hd-tool-kbd{display:none}}.app-boot{flex:1;place-items:center;display:grid}.app-boot-logo{opacity:.6;width:48px;height:48px;animation:none}@media (prefers-reduced-motion:no-preference){.app-boot-logo{animation:1.8s ease-in-out infinite app-boot-pulse}}@keyframes app-boot-pulse{0%,to{opacity:.35}50%{opacity:.75}}.qi-hub-runs{min-height:160px}.qi-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.qi-runs-truncated{color:var(--fg-muted);margin:8px 0 0;padding:0 16px;font-size:11px}[data-theme=light] .qi-btn-approve:not([aria-pressed=true]){color:var(--accent-text);border-color:color-mix(in oklch, var(--accent-text) 50%, var(--line))}[data-theme=light] .qi-btn-reject:not([aria-pressed=true]){color:var(--danger);border-color:color-mix(in oklch, var(--danger) 45%, var(--line))}.qi-cand-actions-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;display:flex}.qi-cand-actions-row .qi-cand-actions{margin-top:0}.qi-edit-discard-note{color:var(--warn);margin:0;font-size:12px}.lk-alert-retry:hover{text-decoration-thickness:2px}.lk-node-tick{color:var(--accent-text);margin-left:4px;font-size:11px}.rel-row{cursor:pointer;text-align:left;width:100%;min-height:32px;font:inherit;color:inherit;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:4px 6px;transition:background .15s,border-color .15s;display:flex}.rel-row:hover{background:var(--card-2)}.rel-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.rel-row[aria-pressed=true]{background:var(--accent-dim);border-color:var(--accent-line)}.cmp-send-status{color:var(--fg-muted);align-items:center;gap:8px;padding:8px 2px;font-size:12.5px;display:flex}.cmp-send-status:empty{padding:0}.chat-scope-header{flex-wrap:nowrap;flex:none;align-items:center;gap:12px;padding:6px 16px 4px;display:flex}.scope-grounding{flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:inline-flex}.scope-grounding-label{color:var(--fg-dim);transition:color .18s,text-shadow .18s}.scope-grounding[data-connected=true] .scope-grounding-label{color:var(--accent-text);text-shadow:0 0 10px color-mix(in oklch, var(--accent) 30%, transparent)}@media (prefers-reduced-motion:no-preference){.scope-grounding[data-connected=true] .scope-grounding-label{animation:2.4s ease-in-out infinite grounding-label-pulse}}@keyframes grounding-label-pulse{0%,to{opacity:1;text-shadow:0 0 7px color-mix(in oklch, var(--accent) 20%, transparent)}50%{opacity:.82;text-shadow:0 0 13px color-mix(in oklch, var(--accent) 44%, transparent)}}.scope-grounding-select{background:var(--card);color:var(--fg);border:1px solid var(--line-soft);cursor:pointer;border-radius:9px;max-width:260px;padding:4px 8px;font-family:inherit;font-size:12px;transition:border-color .15s}.scope-grounding-select:hover:not(:disabled){border-color:var(--line)}.scope-grounding-select:disabled{opacity:.55;cursor:not-allowed}.scope-grounding-select:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.scope-grounding-select option{color:var(--fg);background:var(--surface)}.qi-export-preview:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.qi-run-title{color:var(--fg);font-size:13px;font-weight:500}.qi-run-item .qi-run-id{color:var(--fg-muted);font-size:11px}.figma-snapshot-consent-checkbox[aria-invalid=true]{outline:2px solid var(--danger);outline-offset:1px}.attach-drop-zone[data-active=false]{display:none}.attach-chip-icon{background:var(--inset);width:40px;height:40px;color:var(--fg-muted);border-radius:5px;flex:none;place-items:center;display:grid}.sent-docs-note{color:var(--fg-muted);margin:0 0 14px;font-size:12px}.sent-docs-note-list{flex-direction:column;gap:2px;margin:4px 0 0;padding:0;list-style:none;display:flex}.sent-docs-note-item{font-family:var(--font-mono);font-size:11.5px}.sent-docs-note-trunc,.sent-docs-note-hint{color:var(--fg-muted);font-size:11px}.sent-docs-note-hint{margin-top:4px;display:block}@media (prefers-reduced-motion:no-preference){.perm-sw{transition:background .15s}.perm-sw span,.brg-tg span{transition:left .15s,background .15s}.ws-fab{transition:transform .12s}.rail-btn[data-tip]:after,.rail-new[data-tip]:after,.rail-avatar[data-tip]:after{transition:opacity .12s,transform .12s}}@supports ((-moz-appearance:none)){*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}}.mc-id-link{font-family:var(--font-mono);color:var(--accent-text);text-underline-offset:2px;word-break:break-all;font-size:12px;text-decoration:underline}.mc-id-link:hover{color:var(--fg)}.mc-id-link:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:no-preference){.mc-id-link{transition:color .15s}}[data-theme=light] .conn-path{stroke:var(--accent-text)}[data-theme=light] .conn-dot,[data-theme=light] .conn-particle{fill:var(--accent-text)}[data-theme=light] .win-port{border-color:var(--accent-text)}[data-relationship-focus=true] .rel-row[data-incident=true]{background:var(--accent-dim);border-color:var(--accent)}.lk-compose-member-label input[type=checkbox]{accent-color:var(--accent);flex-shrink:0;width:16px;height:16px}.figma-snapshot-captured-at{color:var(--fg-muted);margin:0;font-size:.75rem}.figma-snapshot-screen-placeholder{flex-direction:column;gap:1px}.figma-snapshot-screen-frame-icon{width:12px;height:12px;color:var(--fg-muted)}.evl-run:hover,.ws-empty-btn:hover{filter:brightness(1.06)}.chat-msg-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.chat-msg-copy{min-width:58px;min-height:24px;font-size:11px;font-family:var(--font-ui);color:var(--fg-muted);border:1px solid var(--line-soft);cursor:pointer;opacity:0;background:0 0;border-radius:4px;margin-top:6px;padding:2px 8px;transition:opacity .15s,color .1s,border-color .1s}.chat-msg-bubble:hover .chat-msg-copy,.chat-msg-bubble:focus-within .chat-msg-copy,.chat-msg-copy[data-copied=true]{opacity:1}.chat-msg-copy:hover{color:var(--fg);border-color:var(--line-strong)}.chat-msg-copy:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat-msg-copy[data-copied=true]{color:var(--ok);border-color:var(--ok)}.cmp-send.cmp-send-cancel[data-on]{background:var(--card-2);color:var(--fg);border:1px solid var(--line-strong)}.cmp-send.cmp-send-cancel[data-on]:hover{color:var(--danger);background:color-mix(in oklab, var(--danger) 12%, var(--card-2));border-color:color-mix(in oklab, var(--danger) 60%, var(--line-strong))}@media (prefers-reduced-motion:no-preference){.palette{animation:.18s cubic-bezier(.2,.7,.2,1) fadePop}}.qi-hub-runs .lk-empty{margin:0 12px}.hd-tool,.tb-btn,.rail-btn,.edm-item{transition:background .12s,color .12s}.hd-tool-cta{transition:background .12s,color .12s,border-color .12s}[data-theme=light] .ws-fab{box-shadow:0 10px 30px -8px var(--accent-glow), 0 6px 16px #141e1938}.chat-history{height:100%;min-height:0;color:var(--fg);flex-direction:column;gap:12px;padding:14px;display:flex}.chat-history-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.chat-history-head h2{margin:0;font-size:16px;font-weight:700;line-height:1.2}.chat-history-kicker{color:var(--fg-faint);letter-spacing:0;text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:700}.chat-history-search{border:1px solid var(--line);background:var(--inset);min-height:34px;color:var(--fg-muted);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.chat-history-search input{min-width:0;color:var(--fg);font:inherit;background:0 0;border:0;outline:none;flex:1;font-size:13px}.chat-history-tabs{border:1px solid var(--line-soft);background:var(--inset);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:3px;display:grid}.chat-history-tab{min-width:0;min-height:28px;color:var(--fg-muted);border-radius:6px;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.chat-history-tab span{color:var(--fg-faint);font-size:11px;font-weight:700}.chat-history-tab[aria-selected=true]{background:var(--card);color:var(--fg);box-shadow:inset 0 0 0 1px var(--line-soft)}.chat-history-tab[aria-selected=true] span{color:var(--accent-text)}.chat-history-list{flex-direction:column;flex:1;gap:8px;min-height:0;padding-right:2px;display:flex;overflow:auto}.chat-history-row{border:1px solid var(--line-soft);background:color-mix(in oklch, var(--card) 88%, transparent);border-radius:8px;grid-template-columns:minmax(0,1fr);gap:8px;padding:10px;display:grid}.chat-history-row:focus-within,.chat-history-row:hover{border-color:var(--line-strong);background:var(--card)}.chat-history-row-main{min-width:0}.chat-history-open{text-align:left;border-radius:7px;flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-width:0;display:flex}.chat-history-open:disabled{cursor:default}.chat-history-open:focus-visible,.chat-history-title-input:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}.chat-history-title{width:100%;color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;line-height:1.3;overflow:hidden}.chat-history-meta{width:100%;color:var(--fg-faint);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;line-height:1.25;overflow:hidden}.chat-history-title-input{border:1px solid var(--accent-line);background:var(--inset);width:100%;min-height:32px;color:var(--fg);font:inherit;border-radius:8px;padding:0 9px;font-size:13px}.chat-history-actions{flex-wrap:wrap;gap:6px;display:flex}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/0iq1i69206cyl.js","static/chunks/27jktro2p5rq9.js","static/chunks/082obv3v03b-9.js","static/chunks/3peubv2924kx4.js"],runtimeModuleIds:[94553]}]),(()=>{let e;if(!Array.isArray(globalThis.TURBOPACK))return;let t="/_next/",r=function(){if(null!=self.TURBOPACK_ASSET_SUFFIX)return self.TURBOPACK_ASSET_SUFFIX;let e=document?.currentScript?.getAttribute?.("src")??"",t=e.indexOf("?");return t>=0?e.slice(t):""}(),n=["NEXT_DEPLOYMENT_ID","NEXT_CLIENT_ASSET_SUFFIX"];var o,i=((o=i||{})[o.Runtime=0]="Runtime",o[o.Parent=1]="Parent",o[o.Update=2]="Update",o);let l=new WeakMap;function s(e,t){this.m=e,this.e=t}let u=s.prototype,a=Object.prototype.hasOwnProperty,c="u">typeof Symbol&&Symbol.toStringTag;function f(e,t,r){a.call(e,t)||Object.defineProperty(e,t,r)}function p(e,t){let r=e[t];return r||(r=h(t),e[t]=r),r}function h(e){return{exports:{},error:void 0,id:e,namespaceObject:void 0}}function d(e,t){f(e,"__esModule",{value:!0}),c&&f(e,c,{value:"Module"});let r=0;for(;r<t.length;){let n=t[r++],o=t[r++];if("number"==typeof o)if(0===o)f(e,n,{value:t[r++],enumerable:!0,writable:!1});else throw Error(`unexpected tag: ${o}`);else"function"==typeof t[r]?f(e,n,{get:o,set:t[r++],enumerable:!0}):f(e,n,{get:o,enumerable:!0})}Object.seal(e)}function m(e,t){(null!=t?p(this.c,t):this.m).exports=e}u.s=function(e,t){let r,n;null!=t?n=(r=p(this.c,t)).exports:(r=this.m,n=this.e),r.namespaceObject=n,d(n,e)},u.j=function(e,t){var r,n;let o,i,s;null!=t?i=(o=p(this.c,t)).exports:(o=this.m,i=this.e);let u=(r=o,n=i,(s=l.get(r))||(l.set(r,s=[]),r.exports=r.namespaceObject=new Proxy(n,{get(e,t){if(a.call(e,t)||"default"===t||"__esModule"===t)return Reflect.get(e,t);for(let e of s){let r=Reflect.get(e,t);if(void 0!==r)return r}},ownKeys(e){let t=Reflect.ownKeys(e);for(let e of s)for(let r of Reflect.ownKeys(e))"default"===r||t.includes(r)||t.push(r);return t}})),s);"object"==typeof e&&null!==e&&u.push(e)},u.v=m,u.n=function(e,t){let r;(r=null!=t?p(this.c,t):this.m).exports=r.namespaceObject=e};let b=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,y=[null,b({}),b([]),b(b)];function g(e,t,r){let n=[],o=-1;for(let t=e;("object"==typeof t||"function"==typeof t)&&!y.includes(t);t=b(t))for(let r of Object.getOwnPropertyNames(t))n.push(r,function(e,t){return()=>e[t]}(e,r)),-1===o&&"default"===r&&(o=n.length-1);return r&&o>=0||(o>=0?n.splice(o,1,0,e):n.push("default",0,e)),d(t,n),t}function O(e){let t=B(e,this.m);if(t.namespaceObject)return t.namespaceObject;let r=t.exports;return t.namespaceObject=g(r,"function"==typeof r?function(...e){return r.apply(this,e)}:Object.create(null),r&&r.__esModule)}function w(e){let t=e.indexOf("#");-1!==t&&(e=e.substring(0,t));let r=e.indexOf("?");return -1!==r&&(e=e.substring(0,r)),e}function k(){let e,t;return{promise:new Promise((r,n)=>{t=n,e=r}),resolve:e,reject:t}}u.i=O,u.A=function(e){return this.r(e)(O.bind(this))},u.t="function"==typeof require?require:function(){throw Error("Unexpected use of runtime require")},u.r=function(e){return B(e,this.m).exports},u.f=function(e){function t(t){if(t=w(t),a.call(e,t))return e[t].module();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r}return t.keys=()=>Object.keys(e),t.resolve=t=>{if(t=w(t),a.call(e,t))return e[t].id();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r},t.import=async e=>await t(e),t};let j=Symbol("turbopack queues"),v=Symbol("turbopack exports"),U=Symbol("turbopack error");function C(e){e&&1!==e.status&&(e.status=1,e.forEach(e=>e.queueCount--),e.forEach(e=>e.queueCount--?e.queueCount++:e()))}u.a=function(e,t){let r=this.m,n=t?Object.assign([],{status:-1}):void 0,o=new Set,{resolve:i,reject:l,promise:s}=k(),u=Object.assign(s,{[v]:r.exports,[j]:e=>{n&&e(n),o.forEach(e),u.catch(()=>{})}}),a={get:()=>u,set(e){e!==u&&(u[v]=e)}};Object.defineProperty(r,"exports",a),Object.defineProperty(r,"namespaceObject",a),e(function(e){let t=e.map(e=>{if(null!==e&&"object"==typeof e){if(j in e)return e;if(null!=e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then){let t=Object.assign([],{status:0}),r={[v]:{},[j]:e=>e(t)};return e.then(e=>{r[v]=e,C(t)},e=>{r[U]=e,C(t)}),r}}return{[v]:e,[j]:()=>{}}}),r=()=>t.map(e=>{if(e[U])throw e[U];return e[v]}),{promise:i,resolve:l}=k(),s=Object.assign(()=>l(r),{queueCount:0});function u(e){e!==n&&!o.has(e)&&(o.add(e),e&&0===e.status&&(s.queueCount++,e.push(s)))}return t.map(e=>e[j](u)),s.queueCount?i:r()},function(e){e?l(u[U]=e):i(u[v]),C(n)}),n&&-1===n.status&&(n.status=0)};let P=function(e){let t=new URL(e,"x:/"),r={};for(let e in t)r[e]=t[e];for(let t in r.href=e,r.pathname=e.replace(/[?#].*/,""),r.origin=r.protocol="",r.toString=r.toJSON=(...t)=>e,r)Object.defineProperty(this,t,{enumerable:!0,configurable:!0,value:r[t]})};function R(e,t){throw Error(`Invariant: ${t(e)}`)}P.prototype=URL.prototype,u.U=P,u.z=function(e){throw Error("dynamic usage of require is not supported")},u.g=globalThis;let S=s.prototype,$=new Map;u.M=$;let E=new Map,_=new Map;async function T(e,t,r){let n;if("string"==typeof r)return M(e,t,q(r));let o=r.included||[],i=o.map(e=>!!$.has(e)||E.get(e));if(i.length>0&&i.every(e=>e))return void await Promise.all(i);let l=r.moduleChunks||[],s=l.map(e=>_.get(e)).filter(e=>e);if(s.length>0){if(s.length===l.length)return void await Promise.all(s);let r=new Set;for(let e of l)_.has(e)||r.add(e);for(let n of r){let r=M(e,t,q(n));_.set(n,r),s.push(r)}n=Promise.all(s)}else{for(let o of(n=M(e,t,q(r.path)),l))_.has(o)||_.set(o,n)}for(let e of o)E.has(e)||E.set(e,n);await n}S.l=function(e){return T(i.Parent,this.m.id,e)};let A=Promise.resolve(void 0),x=new WeakMap;function M(t,r,n){let o=e.loadChunkCached(t,n),l=x.get(o);if(void 0===l){let e=x.set.bind(x,o,A);l=o.then(e).catch(e=>{let o;switch(t){case i.Runtime:o=`as a runtime dependency of chunk ${r}`;break;case i.Parent:o=`from module ${r}`;break;case i.Update:o="from an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}let l=Error(`Failed to load chunk ${n} ${o}${e?`: ${e}`:""}`,e?{cause:e}:void 0);throw l.name="ChunkLoadError",l}),x.set(o,l)}return l}function q(e){return`${t}${e.split("/").map(e=>encodeURIComponent(e)).join("/")}${r}`}S.L=function(e){return M(i.Parent,this.m.id,e)},S.R=function(e){let t=this.r(e);return t?.default??t},S.P=function(e){return`/ROOT/${e??""}`},S.q=function(e,t){m.call(this,`${e}${r}`,t)},S.b=function(e,t,o,i){let l="SharedWorker"===e.name,s=[o.map(e=>q(e)).reverse(),r];for(let e of n)s.push(globalThis[e]);let u=new URL(q(t),location.origin),a=JSON.stringify(s);return l?u.searchParams.set("params",a):u.hash="#params="+encodeURIComponent(a),new e(u,i?{...i,type:void 0}:void 0)};let N=/\.js(?:\?[^#]*)?(?:#.*)?$/,K=/\.css(?:\?[^#]*)?(?:#.*)?$/;function L(e){return K.test(e)}u.w=function(t,r,n){return e.loadWebAssembly(i.Parent,this.m.id,t,r,n)},u.u=function(t,r){return e.loadWebAssemblyModule(i.Parent,this.m.id,t,r)};let I={};u.c=I;let B=(e,t)=>{let r=I[e];if(r){if(r.error)throw r.error;return r}return W(e,i.Parent,t.id)};function W(e,t,r){let n=$.get(e);if("function"!=typeof n)throw Error(function(e,t,r){let n;switch(t){case 0:n=`as a runtime entry of chunk ${r}`;break;case 1:n=`because it was required from module ${r}`;break;case 2:n="because of an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}return`Module ${e} was instantiated ${n}, but the module factory is not available.`}(e,t,r));let o=h(e),i=o.exports;I[e]=o;let l=new s(o,i);try{n(l,o,i)}catch(e){throw o.error=e,e}return o.namespaceObject&&o.exports!==o.namespaceObject&&g(o.exports,o.namespaceObject),o}function F(t){let r,n=function(e){if("string"==typeof e)return e;if(e)return{src:e.getAttribute("src")};if("u">typeof TURBOPACK_NEXT_CHUNK_URLS)return{src:TURBOPACK_NEXT_CHUNK_URLS.pop()};throw Error("chunk path empty but not in a worker")}(t[0]);return 2===t.length?r=t[1]:(r=void 0,!function(e,t){let r=1;for(;r<e.length;){let n,o=r+1;for(;o<e.length&&"function"!=typeof e[o];)o++;if(o===e.length)throw Error("malformed chunk format, expected a factory function");let i=e[o];for(let i=r;i<o;i++){let r=e[i],o=t.get(r);if(o){n=o;break}}let l=n??i,s=!1;for(let n=r;n<o;n++){let r=e[n];t.has(r)||(s||(l===i&&Object.defineProperty(i,"name",{value:"module evaluation"}),s=!0),t.set(r,l))}r=o+1}}(t,$)),e.registerChunk(n,r)}let X=new Map;function D(e){let t=X.get(e);if(!t){let r,n;t={resolved:!1,loadingStarted:!1,promise:new Promise((e,t)=>{r=e,n=t}),resolve:()=>{t.resolved=!0,r()},reject:n},X.set(e,t)}return t}e={async registerChunk(e,r){let n=function(e){if("string"==typeof e)return e;let r=decodeURIComponent(e.src.replace(/[?#].*$/,""));return r.startsWith(t)?r.slice(t.length):r}(e);if(D("string"==typeof e?q(e):e.src).resolve(),null!=r){for(let e of r.otherChunks)D(q("string"==typeof e?e:e.path));if(await Promise.all(r.otherChunks.map(e=>T(i.Runtime,n,e))),r.runtimeModuleIds.length>0)for(let e of r.runtimeModuleIds)!function(e,t){let r=I[t];if(r){if(r.error)throw r.error;return}W(t,i.Runtime,e)}(n,e)}},loadChunkCached:(e,t)=>(function(e,t){let r=D(t);if(r.loadingStarted)return r.promise;if(e===i.Runtime)return r.loadingStarted=!0,L(t)&&r.resolve(),r.promise;if("function"==typeof importScripts)if(L(t));else if(N.test(t))self.TURBOPACK_NEXT_CHUNK_URLS.push(t),importScripts(t);else throw Error(`can't infer type of chunk from URL ${t} in worker`);else{let e=decodeURI(t);if(L(t))if(document.querySelectorAll(`link[rel=stylesheet][href="${t}"],link[rel=stylesheet][href^="${t}?"],link[rel=stylesheet][href="${e}"],link[rel=stylesheet][href^="${e}?"]`).length>0)r.resolve();else{let e=document.createElement("link");e.rel="stylesheet",e.href=t,e.onerror=()=>{r.reject()},e.onload=()=>{r.resolve()},document.head.appendChild(e)}else if(N.test(t)){let n=document.querySelectorAll(`script[src="${t}"],script[src^="${t}?"],script[src="${e}"],script[src^="${e}?"]`);if(n.length>0)for(let e of Array.from(n))e.addEventListener("error",()=>{r.reject()});else{let e=document.createElement("script");e.src=t,e.onerror=()=>{r.reject()},document.head.appendChild(e)}}else throw Error(`can't infer type of chunk from URL ${t}`)}return r.loadingStarted=!0,r.promise})(e,t),async loadWebAssembly(e,t,r,n,o){let i=fetch(q(r)),{instance:l}=await WebAssembly.instantiateStreaming(i,o);return l.exports},async loadWebAssemblyModule(e,t,r,n){let o=fetch(q(r));return await WebAssembly.compileStreaming(o)}};let H=globalThis.TURBOPACK;globalThis.TURBOPACK={push:F},H.forEach(F)})();
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { AnswerGenerator, AnswerGeneratorInput } from "./types.js";
|
|
2
|
-
export declare class ScriptedAnswerGenerator implements AnswerGenerator {
|
|
3
|
-
generate(input: AnswerGeneratorInput): Promise<string>;
|
|
4
|
-
}
|
|
5
|
-
export declare function buildScriptedAnswer(input: AnswerGeneratorInput): string;
|
|
6
|
-
//# sourceMappingURL=scripted-answer-generator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripted-answer-generator.d.ts","sourceRoot":"","sources":["../../src/conversation/scripted-answer-generator.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAExE,qBAAa,uBAAwB,YAAW,eAAe;IAChD,QAAQ,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;CAGpE;AAID,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,CAWvE"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
// Deterministic scripted `AnswerGenerator` (Epic #189, Issue #200). Test-only fixture
|
|
2
|
-
// that turns a `LocalKnowledgeGroundedContextPack` into a stable answer string. The
|
|
3
|
-
// production path uses `ModelGatewayAnswerGenerator`; this implementation exists so the
|
|
4
|
-
// runner's composition can be tested without a live model gateway.
|
|
5
|
-
//
|
|
6
|
-
// Determinism rules (load-bearing for the audit ledger's "byte-identical replay"):
|
|
7
|
-
// * NO `Date.now()`, `Math.random()`, `randomUUID()`, environment reads, or any other
|
|
8
|
-
// non-input-derived state. The output is a pure function of `pack.counts` and
|
|
9
|
-
// `pack.scope.capsuleIds`.
|
|
10
|
-
// * Capsule ids are surfaced in the order the pack assembler already sorted them
|
|
11
|
-
// (lexicographic, de-duplicated) so two calls with identically-shaped packs produce
|
|
12
|
-
// byte-identical strings.
|
|
13
|
-
// * Inline `[n]` citation markers are emitted for every reference in the pack, in
|
|
14
|
-
// order. The runner's citation-attacher matches these markers back against the
|
|
15
|
-
// reference array — keeping the marker emission in this generator means the round-
|
|
16
|
-
// trip (generate → attach) is provable without consulting a real model.
|
|
17
|
-
export class ScriptedAnswerGenerator {
|
|
18
|
-
async generate(input) {
|
|
19
|
-
return Promise.resolve(buildScriptedAnswer(input));
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
// Exported for direct testing — keeps the determinism contract pinnable without
|
|
23
|
-
// instantiating the class. Pure: no IO, no allocation beyond the returned string.
|
|
24
|
-
export function buildScriptedAnswer(input) {
|
|
25
|
-
const { pack } = input;
|
|
26
|
-
const n = pack.counts.totalReferences;
|
|
27
|
-
if (n === 0) {
|
|
28
|
-
// The runner does not call the generator on no-evidence paths, but a defensive empty
|
|
29
|
-
// string keeps the function total in case a future caller forgets that contract.
|
|
30
|
-
return "";
|
|
31
|
-
}
|
|
32
|
-
const capsuleList = formatCapsuleList(pack.scope.capsuleIds);
|
|
33
|
-
const markers = renderMarkerList(n);
|
|
34
|
-
return `Found ${String(n)} references in ${capsuleList}. ${markers}`;
|
|
35
|
-
}
|
|
36
|
-
function formatCapsuleList(capsuleIds) {
|
|
37
|
-
if (capsuleIds.length === 0)
|
|
38
|
-
return "capsule(s) (unknown)";
|
|
39
|
-
if (capsuleIds.length === 1)
|
|
40
|
-
return `capsule(s) ${String(capsuleIds[0])}`;
|
|
41
|
-
return `capsule(s) ${capsuleIds.map((id) => String(id)).join(", ")}`;
|
|
42
|
-
}
|
|
43
|
-
function renderMarkerList(count) {
|
|
44
|
-
const parts = [];
|
|
45
|
-
for (let i = 1; i <= count; i += 1) {
|
|
46
|
-
parts.push(`[${String(i)}]`);
|
|
47
|
-
}
|
|
48
|
-
return parts.join(" ");
|
|
49
|
-
}
|
|
File without changes
|
|
File without changes
|
/package/dist/ui/static/_next/static/{Hb6brrvZY2nZtizQlYhVt → fQMXe8UmV01bh25WOoIt3}/_ssgManifest.js
RENAMED
|
File without changes
|