dsh-data-domain-knowledge 0.1.1-alpha.2 → 0.1.1-alpha.3
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 +23 -16
- package/lib/client.js +596 -841
- package/lib/contract-refs.d.ts +0 -1
- package/lib/doc-page.js +7 -7
- package/lib/pages.js +928 -1145
- package/lib/types/agent-behavior-rules.d.ts.map +1 -1
- package/lib/types/agent-behavior-rules.js +1 -2
- package/lib/types/agent-behavior-rules.js.map +1 -1
- package/lib/types/axis-contract.js +1 -1
- package/lib/types/axis-contract.js.map +1 -1
- package/lib/types/card-organize.d.ts +2 -1
- package/lib/types/card-organize.d.ts.map +1 -1
- package/lib/types/card-organize.js +5 -3
- package/lib/types/card-organize.js.map +1 -1
- package/lib/types/config-schema.d.ts +1 -1
- package/lib/types/config-schema.js +1 -1
- package/lib/types/convert/host.d.ts +2 -3
- package/lib/types/convert/host.d.ts.map +1 -1
- package/lib/types/convert/host.js +5 -2
- package/lib/types/convert/host.js.map +1 -1
- package/lib/types/convert/ingest.d.ts +2 -0
- package/lib/types/convert/ingest.d.ts.map +1 -1
- package/lib/types/convert/ingest.js +1 -0
- package/lib/types/convert/ingest.js.map +1 -1
- package/lib/types/diagnosis/types.d.ts +1 -1
- package/lib/types/diagnosis/types.js +1 -1
- package/lib/types/images.js +1 -1
- package/lib/types/index.d.ts +0 -4
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +30 -41
- package/lib/types/index.js.map +1 -1
- package/lib/types/knowledge-contract.d.ts +6 -0
- package/lib/types/knowledge-contract.d.ts.map +1 -1
- package/lib/types/knowledge-contract.js +6 -2
- package/lib/types/knowledge-contract.js.map +1 -1
- package/lib/types/layout.d.ts +9 -26
- package/lib/types/layout.d.ts.map +1 -1
- package/lib/types/layout.js +10 -28
- package/lib/types/layout.js.map +1 -1
- package/lib/types/materialize-snapshot.d.ts +5 -0
- package/lib/types/materialize-snapshot.d.ts.map +1 -1
- package/lib/types/migrate.d.ts +3 -1
- package/lib/types/migrate.d.ts.map +1 -1
- package/lib/types/migrate.js +3 -1
- package/lib/types/migrate.js.map +1 -1
- package/lib/types/organize-contract.d.ts.map +1 -1
- package/lib/types/organize-contract.js +2 -1
- package/lib/types/organize-contract.js.map +1 -1
- package/lib/types/pipeline/engine.d.ts +1 -0
- package/lib/types/pipeline/engine.d.ts.map +1 -1
- package/lib/types/pipeline/engine.js +9 -3
- package/lib/types/pipeline/engine.js.map +1 -1
- package/lib/types/pipeline/types.d.ts +6 -0
- package/lib/types/pipeline/types.d.ts.map +1 -1
- package/lib/types/pipeline/types.js.map +1 -1
- package/lib/types/present.d.ts +1 -1
- package/lib/types/present.js +1 -1
- package/lib/types/preset-ids.d.ts +0 -1
- package/lib/types/preset-ids.d.ts.map +1 -1
- package/lib/types/preset-ids.js +0 -3
- package/lib/types/preset-ids.js.map +1 -1
- package/lib/types/query-analysis.d.ts +0 -5
- package/lib/types/query-analysis.d.ts.map +1 -1
- package/lib/types/query-analysis.js +0 -16
- package/lib/types/query-analysis.js.map +1 -1
- package/lib/types/recall-delivery.d.ts +36 -0
- package/lib/types/recall-delivery.d.ts.map +1 -0
- package/lib/types/recall-delivery.js +16 -0
- package/lib/types/recall-delivery.js.map +1 -0
- package/lib/types/runtime.d.ts +26 -12
- package/lib/types/runtime.d.ts.map +1 -1
- package/lib/types/runtime.js +231 -106
- package/lib/types/runtime.js.map +1 -1
- package/lib/types/settings-volatile.d.ts +0 -7
- package/lib/types/settings-volatile.d.ts.map +1 -1
- package/lib/types/settings-volatile.js +0 -7
- package/lib/types/settings-volatile.js.map +1 -1
- package/lib/types/source-identity.d.ts +3 -0
- package/lib/types/source-identity.d.ts.map +1 -0
- package/lib/types/source-identity.js +5 -0
- package/lib/types/source-identity.js.map +1 -0
- package/lib/types/store/axis-references.d.ts.map +1 -1
- package/lib/types/store/axis-references.js +5 -3
- package/lib/types/store/axis-references.js.map +1 -1
- package/lib/types/store/knowledge-db.d.ts +1 -1
- package/lib/types/store/knowledge-db.d.ts.map +1 -1
- package/lib/types/store/knowledge-db.js +16 -2
- package/lib/types/store/knowledge-db.js.map +1 -1
- package/lib/types/types.d.ts +5 -4
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/types.js +6 -3
- package/lib/types/types.js.map +1 -1
- package/lib/types/wiki-availability.d.ts +11 -0
- package/lib/types/wiki-availability.d.ts.map +1 -0
- package/lib/types/wiki-availability.js +39 -0
- package/lib/types/wiki-availability.js.map +1 -0
- package/lib/types/wiki-finalize.d.ts +4 -2
- package/lib/types/wiki-finalize.d.ts.map +1 -1
- package/lib/types/wiki-finalize.js +9 -27
- package/lib/types/wiki-finalize.js.map +1 -1
- package/lib/types/wiki-links.d.ts +35 -0
- package/lib/types/wiki-links.d.ts.map +1 -0
- package/lib/types/wiki-links.js +129 -0
- package/lib/types/wiki-links.js.map +1 -0
- package/package.json +16 -16
- package/scripts/doctor.mjs +0 -7
- package/scripts/setup-embedding.sh +0 -0
- package/src/agent-behavior-rules.ts +1 -2
- package/src/axis-contract.ts +1 -1
- package/src/card-organize.ts +5 -3
- package/src/client/AttributionEventGuide.tsx +3 -3
- package/src/client/AxisMatrix.tsx +86 -19
- package/src/client/DirectoryPicker.tsx +0 -2
- package/src/client/GuideArchitectureCanvas.tsx +5 -12
- package/src/client/ImportFilesDialog.tsx +1 -0
- package/src/client/InfoHint.tsx +1 -1
- package/src/client/KnowledgeBaseTab.tsx +113 -39
- package/src/client/KnowledgePanel.tsx +16 -9
- package/src/client/OperationLogTab.tsx +1 -1
- package/src/client/RecallPanel.tsx +5 -16
- package/src/client/TabGuide.tsx +3 -7
- package/src/client/WikiFlowPanel.tsx +10 -11
- package/src/client/arch/NodeLogicPanel.tsx +3 -3
- package/src/client/arch/model.ts +5 -113
- package/src/client/architecture.css +1 -1
- package/src/client/architecture.tsx +13 -27
- package/src/client/attribution/AttributionTab.tsx +141 -10
- package/src/client/pages.css +2 -2
- package/src/client/pages.tsx +4 -11
- package/src/client/styles.css +15 -96
- package/src/config-schema.ts +1 -1
- package/src/convert/host.ts +7 -5
- package/src/convert/ingest.ts +3 -0
- package/src/diagnosis/types.ts +1 -1
- package/src/images.ts +1 -1
- package/src/index.ts +27 -49
- package/src/knowledge-contract.ts +7 -2
- package/src/layout.ts +10 -32
- package/src/materialize-snapshot.ts +1 -0
- package/src/migrate.ts +3 -1
- package/src/organize-contract.ts +2 -1
- package/src/pipeline/engine.ts +9 -3
- package/src/pipeline/types.ts +2 -0
- package/src/present.ts +1 -1
- package/src/preset-ids.ts +0 -4
- package/src/query-analysis.ts +0 -20
- package/src/recall-delivery.ts +19 -0
- package/src/runtime.ts +220 -102
- package/src/settings-volatile.ts +0 -7
- package/src/source-identity.ts +4 -0
- package/src/store/axis-references.ts +5 -3
- package/src/store/knowledge-db.ts +14 -2
- package/src/types.ts +6 -4
- package/src/wiki-availability.ts +37 -0
- package/src/wiki-finalize.ts +9 -25
- package/src/wiki-links.ts +120 -0
- package/lib/types/intent/engine.d.ts +0 -122
- package/lib/types/intent/engine.d.ts.map +0 -1
- package/lib/types/intent/engine.js +0 -488
- package/lib/types/intent/engine.js.map +0 -1
- package/lib/types/intent/host.d.ts +0 -68
- package/lib/types/intent/host.d.ts.map +0 -1
- package/lib/types/intent/host.js +0 -249
- package/lib/types/intent/host.js.map +0 -1
- package/lib/types/intent/scope.d.ts +0 -25
- package/lib/types/intent/scope.d.ts.map +0 -1
- package/lib/types/intent/scope.js +0 -116
- package/lib/types/intent/scope.js.map +0 -1
- package/lib/types/intent/store.d.ts +0 -33
- package/lib/types/intent/store.d.ts.map +0 -1
- package/lib/types/intent/store.js +0 -239
- package/lib/types/intent/store.js.map +0 -1
- package/lib/types/intent/tools.d.ts +0 -62
- package/lib/types/intent/tools.d.ts.map +0 -1
- package/lib/types/intent/tools.js +0 -130
- package/lib/types/intent/tools.js.map +0 -1
- package/lib/types/intent/types.d.ts +0 -170
- package/lib/types/intent/types.d.ts.map +0 -1
- package/lib/types/intent/types.js +0 -56
- package/lib/types/intent/types.js.map +0 -1
- package/src/client/IntentLogic.tsx +0 -192
- package/src/client/IntentTab.tsx +0 -343
- package/src/intent/README.md +0 -42
- package/src/intent/engine.ts +0 -515
- package/src/intent/host.ts +0 -315
- package/src/intent/scope.ts +0 -125
- package/src/intent/store.ts +0 -218
- package/src/intent/tools.ts +0 -154
- package/src/intent/types.ts +0 -229
package/lib/client.js
CHANGED
|
@@ -8367,10 +8367,10 @@ __export(index_exports, {
|
|
|
8367
8367
|
});
|
|
8368
8368
|
module.exports = __toCommonJS(index_exports);
|
|
8369
8369
|
var import_dsh_client_ui_primitives2 = require("@deepseek-ai/dsh-client-ui-primitives");
|
|
8370
|
-
var
|
|
8370
|
+
var import_react32 = require("react");
|
|
8371
8371
|
|
|
8372
8372
|
// src/client/KnowledgePanel.tsx
|
|
8373
|
-
var
|
|
8373
|
+
var import_react30 = require("react");
|
|
8374
8374
|
|
|
8375
8375
|
// ../../node_modules/.pnpm/lucide-react@0.468.0_react@18.2.0/node_modules/lucide-react/dist/esm/createLucideIcon.js
|
|
8376
8376
|
var import_react2 = require("react");
|
|
@@ -9023,13 +9023,6 @@ var UserRound = createLucideIcon("UserRound", [
|
|
|
9023
9023
|
["path", { d: "M20 21a8 8 0 0 0-16 0", key: "rfgkzh" }]
|
|
9024
9024
|
]);
|
|
9025
9025
|
|
|
9026
|
-
// ../../node_modules/.pnpm/lucide-react@0.468.0_react@18.2.0/node_modules/lucide-react/dist/esm/icons/workflow.js
|
|
9027
|
-
var Workflow = createLucideIcon("Workflow", [
|
|
9028
|
-
["rect", { width: "8", height: "8", x: "3", y: "3", rx: "2", key: "by2w9f" }],
|
|
9029
|
-
["path", { d: "M7 11v4a2 2 0 0 0 2 2h4", key: "xkn7yn" }],
|
|
9030
|
-
["rect", { width: "8", height: "8", x: "13", y: "13", rx: "2", key: "1cgmvn" }]
|
|
9031
|
-
]);
|
|
9032
|
-
|
|
9033
9026
|
// ../../node_modules/.pnpm/lucide-react@0.468.0_react@18.2.0/node_modules/lucide-react/dist/esm/icons/wrench.js
|
|
9034
9027
|
var Wrench = createLucideIcon("Wrench", [
|
|
9035
9028
|
[
|
|
@@ -21111,7 +21104,6 @@ var STANDARD_PRESET_ID = "standard";
|
|
|
21111
21104
|
|
|
21112
21105
|
// src/agent-behavior-rules.ts
|
|
21113
21106
|
var STANDARD_RULES = [
|
|
21114
|
-
"\u6570\u636E\u6216\u77E5\u8BC6\u4EFB\u52A1\u5F00\u59CB\u65F6\u8C03\u7528 `intent_record`\uFF1B\u5BD2\u6684\u3001\u95F2\u804A\u3001\u7EAF\u5199\u4F5C\u3001\u4EE3\u7801\u548C\u4E00\u822C\u8FD0\u7EF4\u4EFB\u52A1\u4E0D\u8BB0\u5F55\u3002",
|
|
21115
21107
|
"\u7EC4\u7EC7\u5185\u90E8\u7684\u5B9A\u4E49\u3001\u6307\u6807\u53E3\u5F84\u3001\u89C4\u5219\u3001\u6D41\u7A0B\u548C\u5386\u53F2\u4F18\u5148\u67E5\u5185\u90E8\u77E5\u8BC6\uFF1B\u7528\u6237\u63D0\u4F9B\u7684\u6750\u6599\u76F4\u63A5\u8BFB\u53D6\u3002\u6765\u6E90\u51B2\u7A81\u6216\u9700\u8981\u539F\u6587\u65F6\u67E5\u6E90\u6587\u6863\u3002",
|
|
21116
21108
|
"\u4E0D\u8981\u7F16\u9020\u4E8B\u5B9E\u6216\u6570\u5B57\u3002\u7ED3\u8BBA\u4F7F\u7528\u53EF\u8FFD\u6EAF\u4E14\u4ECD\u9002\u7528\u7684\u5DE5\u5177\u7ED3\u679C\u6216\u7528\u6237\u6750\u6599\uFF1B\u5173\u952E\u6307\u6807\u8BF4\u660E\u8BA1\u7B97\u53E3\u5F84\uFF0C\u5F71\u54CD\u7ED3\u8BBA\u7684\u4E0D\u786E\u5B9A\u6027\u5FC5\u987B\u8BF4\u660E\u3002\u6570\u636E\u8FC7\u671F\u3001\u8303\u56F4\u6539\u53D8\u6216\u8BC1\u636E\u4E0D\u8DB3\u65F6\uFF0C\u5148\u8865\u67E5\u518D\u4E0B\u7ED3\u8BBA\u3002",
|
|
21117
21109
|
"\u590D\u7528\u5DF2\u786E\u8BA4\u7684 ID\uFF1B\u76EE\u6807\u6216 ID \u672A\u77E5\u65F6\u5148\u67E5\u76EE\u5F55\u6216\u6570\u636E\u5B57\u5178\u3002\u4F18\u5148\u7528\u5DE5\u5177\u67E5\u660E\u77E5\u8BC6\u548C\u6570\u636E\uFF1B\u53EA\u6709\u76EE\u6807\u3001\u9009\u62E9\u6216\u6388\u6743\u786E\u5B9E\u65E0\u6CD5\u67E5\u660E\u65F6\u624D\u5411\u7528\u6237\u786E\u8BA4\u3002\u53EA\u8C03\u7528\u4E0E\u5F53\u524D\u4EFB\u52A1\u6709\u5173\u7684\u5DE5\u5177\u3002",
|
|
@@ -21120,7 +21112,7 @@ var STANDARD_RULES = [
|
|
|
21120
21112
|
"\u786E\u8BA4\u64CD\u4F5C\u6210\u529F\u540E\u518D\u62A5\u544A\u5B8C\u6210\uFF1B\u540E\u53F0\u4EFB\u52A1\u5DF2\u63D0\u4EA4\u4E0D\u4EE3\u8868\u5DF2\u5B8C\u6210\u3002",
|
|
21121
21113
|
"\u4F7F\u7528\u7528\u6237\u7684\u8BED\u8A00\uFF0C\u9ED8\u8BA4\u4E2D\u6587\uFF1B\u5148\u8BF4\u7ED3\u8BBA\uFF0C\u518D\u7ED9\u5FC5\u8981\u4F9D\u636E\u548C\u6765\u6E90\u3002\u7528\u5E38\u89C1\u8BCD\u548C\u77ED\u53E5\uFF0C\u89E3\u91CA\u5FC5\u8981\u672F\u8BED\uFF0C\u5220\u6389\u5957\u8BDD\u548C\u91CD\u590D\u3002\u53EA\u5728\u6709\u52A9\u7406\u89E3\u65F6\u4F7F\u7528\u6807\u9898\u3001\u5217\u8868\u6216\u8868\u683C\u3002",
|
|
21122
21114
|
"\u77E5\u8BC6\u5E93\u53EA\u901A\u8FC7\u77E5\u8BC6\u5DE5\u5177\u8BFB\u5199\uFF0C\u4E14\u53EA\u6267\u884C\u7528\u6237\u5DF2\u8981\u6C42\u6216\u5DF2\u6388\u6743\u7684\u5199\u5165\u3002\u8F6C\u6362\u3001\u5165\u5E93\u548C\u7F16\u8BD1\u662F\u72EC\u7ACB\u6B65\u9AA4\uFF1B\u9ED8\u8BA4\u5BFC\u5165\u53EA\u4FDD\u5B58\u6765\u6E90\uFF0C\u7F16\u8BD1\u9700\u660E\u786E\u8981\u6C42\u3002",
|
|
21123
|
-
"Wiki Fact \u4E0E Wiki Way \u7531\u7F16\u8BD1\u5668\u7EF4\u62A4\uFF1B\u5148\u660E\u786E\u5F53\u524D\u5B50\u95EE\u9898\uFF0C\u518D\u68C0\u7D22\u53EF\u7528 Procedure\u3002\u547D\u4E2D\u7AE0\u8282\u7528\u4E8E\u5B9A\u4F4D\uFF0C\u91C7\u7528\u65F6\u8BFB\u53D6\u5B8C\u6574 Wiki \u7684\u6761\u4EF6\u4E0E\u8FB9\u754C\u3002\u5386\u53F2 Case \u53EA\u8BC1\u660E\u5F53\u65F6\u7684\u8FC7\u7A0B\u548C\u7ED3\u679C\uFF0C\u4E0D\u80FD\u76F4\u63A5\u4F5C\u4E3A\u5F53\u524D\u6839\u56E0\uFF1B\u5BA1\u6838\u7531\u4EBA\u5B8C\u6210\u3002"
|
|
21115
|
+
"Wiki Fact \u4E0E Wiki Way \u7531\u7F16\u8BD1\u5668\u7EF4\u62A4\uFF1B\u5148\u660E\u786E\u5F53\u524D\u5B50\u95EE\u9898\uFF0C\u518D\u68C0\u7D22\u53EF\u7528 Procedure\u3002\u547D\u4E2D\u7AE0\u8282\u7528\u4E8E\u5B9A\u4F4D\uFF0C\u91C7\u7528\u65F6\u8BFB\u53D6\u5B8C\u6574 Wiki \u7684\u6761\u4EF6\u4E0E\u8FB9\u754C\u3002\u901A\u8FC7 `read_knowledge_wiki` \u6309\u5B8C\u6574\u5750\u6807\u6216 Object \u67E5\u76EE\u5F55\uFF0C\u5E76\u6CBF\u53CC\u94FE\u6309\u9700\u8BFB\u53D6\u76EE\u6807 Wiki\uFF1B\u4E0D\u8981\u81EA\u52A8\u5C55\u5F00\u6240\u6709\u90BB\u5C45\u6216\u628A\u5176\u4ED6\u6587\u4EF6\u5168\u6587\u5408\u8FDB\u5F53\u524D Wiki\u3002\u5386\u53F2 Case \u53EA\u8BC1\u660E\u5F53\u65F6\u7684\u8FC7\u7A0B\u548C\u7ED3\u679C\uFF0C\u4E0D\u80FD\u76F4\u63A5\u4F5C\u4E3A\u5F53\u524D\u6839\u56E0\uFF1B\u5BA1\u6838\u7531\u4EBA\u5B8C\u6210\u3002"
|
|
21124
21116
|
];
|
|
21125
21117
|
var AGENT_BEHAVIOR_RULE_SETS = [
|
|
21126
21118
|
{ id: STANDARD_PRESET_ID, label: "\u6807\u51C6\u6A21\u5F0F", rules: STANDARD_RULES }
|
|
@@ -21529,11 +21521,11 @@ function KnowledgeSettingsDrawer({ target, onClose, settings, environment, layou
|
|
|
21529
21521
|
// src/client/architecture.tsx
|
|
21530
21522
|
var KNOWLEDGE_TABS = [
|
|
21531
21523
|
{ id: "source-raw", label: "SourceRaw", step: "\u6536\u5F55", icon: Database },
|
|
21532
|
-
/*
|
|
21533
|
-
{ id: "knowledge", label: "Knowledge
|
|
21534
|
-
/*
|
|
21524
|
+
/* Fact、Procedure 与 Case 都是 Knowledge 层内容,在同一栏用二级切换区分。 */
|
|
21525
|
+
{ id: "knowledge", label: "Knowledge", step: "\u62BD\u53D6 \xB7 \u5F52\u4E00", icon: Quote },
|
|
21526
|
+
/* Wiki 这一栏现在只回答一件事:**这些知识被组织成了哪些页**(Materialize)。
|
|
21535
21527
|
构建(向量 + 图谱)没有自己的栏,它的参数 chip 挂在这一栏的卡片头上。 */
|
|
21536
|
-
{ id: "wiki", label: "
|
|
21528
|
+
{ id: "wiki", label: "Wiki", step: "\u7269\u5316", icon: Layers },
|
|
21537
21529
|
{ id: "recall", label: "\u53EC\u56DE\u91CD\u6392", step: "\u68C0\u7D22 \xB7 \u7CBE\u6392", icon: Search }
|
|
21538
21530
|
];
|
|
21539
21531
|
var NODE_LANES = [
|
|
@@ -21567,31 +21559,12 @@ var NODE_META = {
|
|
|
21567
21559
|
icon: MessageCircle,
|
|
21568
21560
|
lane: "interaction"
|
|
21569
21561
|
},
|
|
21570
|
-
intent: {
|
|
21571
|
-
title: "\u610F\u56FE\u4E0E\u4E0A\u4E0B\u6587",
|
|
21572
|
-
subtitle: "\u4F1A\u8BDD\u610F\u56FE\u5BA1\u8BA1 + \u53EC\u56DE\u67E5\u8BE2\u610F\u56FE / OAS",
|
|
21573
|
-
detail: "\u4F1A\u8BDD\u5C42\u8BB0\u5F55 category\u3001act \u4E0E\u4EFB\u52A1\u94FE\u8DEF\uFF1B\u77E5\u8BC6\u53EC\u56DE\u5C42\u5BF9\u5F53\u524D Query \u89E3\u6790 Intent\u3001Object\u3001Action\u3001Scene\uFF0C\u4E8C\u8005\u5206\u522B\u670D\u52A1\u5BA1\u8BA1\u548C\u5019\u9009\u751F\u6210\u3002",
|
|
21574
|
-
input: "\u7528\u6237\u539F\u6587 + \u4F1A\u8BDD + \u5F53\u524D Query",
|
|
21575
|
-
output: "intent \u8BB0\u5F55 + Query Analysis\uFF08Intent / OAS\uFF09",
|
|
21576
|
-
steps: [
|
|
21577
|
-
{ label: "\u56FA\u5B9A\u5BA1\u8BA1\u5951\u7EA6", detail: "\u6309\u5185\u7F6E\u5206\u7C7B\u3001act \u4E0E relation \u89C4\u5219\u8BB0\u5F55\u4F1A\u8BDD\u4E8B\u5B9E", state: "done" },
|
|
21578
|
-
{ label: "\u6570\u636E\u57DF\u95E8\u63A7", detail: "\u53EA\u6709\u6807\u51C6\u6A21\u5F0F\u7684\u6570\u636E\u8F6E\u6B21\u8FDB\u5165\u610F\u56FE\u94FE\u8DEF\uFF0C\u666E\u901A\u804A\u5929\u4E0D\u751F\u6210\u8BB0\u5F55", state: "done" },
|
|
21579
|
-
{ label: "\u8BB0\u5F55\u4E0D\u62E6\u622A\u6267\u884C", detail: "\u6A21\u578B\u65E0\u6CD5\u5224\u5B9A\u65F6\u8BB0\u5F55 unknown\uFF0C\u4E0D\u963B\u585E\u540E\u7EED\u8BF7\u6C42\uFF1B\u975E\u6570\u636E\u8F6E\u6B21\u4E0D\u8865\u8BB0\u5F55", state: "done" },
|
|
21580
|
-
{ label: "\u7F6E\u4FE1\u5EA6\u4E0E\u515C\u5E95", detail: "\u4F4E\u4E8E\u9608\u503C\u7684\u8BB0\u5F55\u6807 lowConfidence\uFF1B\u6570\u636E\u8F6E\u6B21\u6F0F\u8C03\u7531 Host \u8865\u4E00\u6761 fallback", state: "done" },
|
|
21581
|
-
{ label: "\u53EC\u56DE\u4FA7\u89E3\u6790", detail: "\u5F53\u524D Query \u89E3\u6790 Intent + Object / Action / Scene\uFF0C\u4EA4\u7ED9 Coordinate \u8DEF", state: "done" }
|
|
21582
|
-
],
|
|
21583
|
-
status: "live",
|
|
21584
|
-
statusNote: "\u4F1A\u8BDD\u610F\u56FE\u8BB0\u5F55\u5DF2\u843D\u76D8\uFF1B\u53EC\u56DE\u4FA7 Query Analysis \u5728\u77E5\u8BC6\u5E93 \u2192 \u53EC\u56DE\u91CD\u6392\u4E2D\u5B9E\u65F6\u5C55\u793A\u3002",
|
|
21585
|
-
icon: BrainCircuit,
|
|
21586
|
-
lane: "interaction",
|
|
21587
|
-
tab: "intent"
|
|
21588
|
-
},
|
|
21589
21562
|
runtime: {
|
|
21590
21563
|
title: "Tita Agent Runtime",
|
|
21591
21564
|
shortTitle: "Agent Runtime",
|
|
21592
21565
|
subtitle: "\u89C4\u5212\u3001\u8C03\u7528\u5DE5\u5177\u3001\u6267\u884C\u5206\u6790",
|
|
21593
21566
|
detail: "Agent \u6838\u5FC3\u8FD0\u884C\u65F6\uFF1A\u7F16\u6392\u77E5\u8BC6\u53EC\u56DE\u3001\u6570\u636E\u8868\u683C\u548C\u81EA\u8FDB\u5316\u8BB0\u5FC6\uFF0C\u7EC4\u7EC7\u7ED3\u679C\u5E76\u8FD4\u56DE\u7ED9\u7528\u6237\u3002",
|
|
21594
|
-
input: "\
|
|
21567
|
+
input: "\u4F1A\u8BDD\u4E0A\u4E0B\u6587 + \u53EC\u56DE\u5F97\u5230\u7684\u77E5\u8BC6",
|
|
21595
21568
|
output: "\u56DE\u7B54\u3001\u5F15\u7528\u3001\u7ED3\u6784\u5316\u6570\u636E",
|
|
21596
21569
|
steps: [
|
|
21597
21570
|
{ label: "\u63A5\u6536 Agent Context", detail: "\u91CD\u6392\u540E\u7684 Section \u5F52\u5E76\u4E3A\u5B8C\u6574 WikiCard\uFF0C\u8FDE\u540C Knowledge \u4E0E Source provenance \u8FD4\u56DE", state: "done" },
|
|
@@ -21703,7 +21676,7 @@ var NODE_META = {
|
|
|
21703
21676
|
recall: {
|
|
21704
21677
|
title: "\u53EC\u56DE",
|
|
21705
21678
|
subtitle: "\u4E09\u8DEF Section \u5019\u9009\uFF08Coordinate / FTS / Vector\uFF09",
|
|
21706
|
-
detail: "\
|
|
21679
|
+
detail: "\u89E3\u6790 Query \u4E2D\u7684 Object / Action / Scene\uFF0C\u518D\u7531 Coordinate\u3001FTS\u3001Vector \u4E09\u8DEF\u751F\u6210 Section \u5019\u9009\uFF1B\u56FE\u8C31\u4E0D\u53C2\u4E0E\u5019\u9009\u751F\u6210\u3002",
|
|
21707
21680
|
input: "User Query + topK + \u8DEF\u7EBF",
|
|
21708
21681
|
output: "\u7EDF\u4E00 Section \u5019\u9009\u6C60",
|
|
21709
21682
|
steps: [
|
|
@@ -21712,7 +21685,7 @@ var NODE_META = {
|
|
|
21712
21685
|
{ label: "\u4EA4\u7ED9\u7EDF\u4E00\u91CD\u6392", detail: "\u540C\u4E00\u5957 Section \u6392\u5E8F\u903B\u8F91\uFF0C\u4E0D\u5728\u53EC\u56DE\u9636\u6BB5\u63D0\u524D\u5408\u5E76 Card", state: "done" }
|
|
21713
21686
|
],
|
|
21714
21687
|
status: "live",
|
|
21715
|
-
statusNote: "\
|
|
21688
|
+
statusNote: "\u5750\u6807\u89E3\u6790\u3001\u4E09\u8DEF\u5019\u9009\u548C\u8DEF\u7EBF\u8D26\u672C\u90FD\u5728\u77E5\u8BC6\u5E93 \u2192 \u53EC\u56DE\u91CD\u6392\u91CC\u53EF\u8DD1\u3002",
|
|
21716
21689
|
icon: Search,
|
|
21717
21690
|
lane: "knowledge",
|
|
21718
21691
|
tab: "knowledge",
|
|
@@ -21741,14 +21714,14 @@ var NODE_META = {
|
|
|
21741
21714
|
shortTitle: "\u7528\u6237\u4EA4\u4E92",
|
|
21742
21715
|
subtitle: "\u5BF9\u8BDD\u3001\u5206\u6790\u3001\u4F7F\u7528\u529F\u80FD\u7684\u5168\u8FC7\u7A0B",
|
|
21743
21716
|
detail: "\u8BB0\u5F55\u7528\u6237\u505A\u4E86\u4EC0\u4E48\u3001\u91C7\u7528\u4E86\u4EC0\u4E48\u7ED3\u679C\uFF0C\u4EE5\u53CA\u5BF9\u5206\u6790\u7ED3\u679C\u7684\u53CD\u9988\uFF0C\u4E3A\u81EA\u8FDB\u5316\u95ED\u73AF\u63D0\u4F9B\u8F93\u5165\u3002",
|
|
21744
|
-
input: "\
|
|
21717
|
+
input: "\u7528\u6237\u5BF9\u8BDD\u4E0E\u5DE5\u5177\u8C03\u7528",
|
|
21745
21718
|
output: "\u53EF\u56DE\u6EAF\u7684\u4EA4\u4E92\u5BA1\u8BA1\u6D41",
|
|
21746
21719
|
steps: [
|
|
21747
|
-
{ label: "\
|
|
21720
|
+
{ label: "\u5DE5\u5177\u64CD\u4F5C\u65E5\u5FD7", detail: "\u8BB0\u5F55\u771F\u5B9E\u7684\u6570\u636E\u8BFB\u53D6\u3001\u4FEE\u6539\u4E0E\u4EA4\u4ED8\u7ED3\u679C", state: "done" },
|
|
21748
21721
|
{ label: "\u7ED3\u679C\u91C7\u7EB3\u4E0E\u53CD\u9988", detail: "\u7528\u6237\u662F\u5426\u91C7\u7528\u4E86\u7ED3\u679C\u3001\u4E8B\u540E\u8BC4\u4EF7\u8FD8\u6CA1\u91C7\u96C6", state: "todo" }
|
|
21749
21722
|
],
|
|
21750
21723
|
status: "partial",
|
|
21751
|
-
statusNote: "\
|
|
21724
|
+
statusNote: "\u5DE5\u5177\u64CD\u4F5C\u65E5\u5FD7\u5DF2\u7ECF\u843D\u76D8\uFF1B\u300C\u7ED3\u679C\u662F\u5426\u88AB\u91C7\u7528\u300D\u8FD9\u7C7B\u53CD\u9988\u8FD8\u6CA1\u6709\u91C7\u96C6\u5165\u53E3\u3002",
|
|
21752
21725
|
icon: UserRound,
|
|
21753
21726
|
lane: "evolution",
|
|
21754
21727
|
tab: "memory"
|
|
@@ -21879,7 +21852,6 @@ function nodeMetrics(id3, stats, version3) {
|
|
|
21879
21852
|
}
|
|
21880
21853
|
var NODE_ORDER = [
|
|
21881
21854
|
"conversation",
|
|
21882
|
-
"intent",
|
|
21883
21855
|
"runtime",
|
|
21884
21856
|
"answer",
|
|
21885
21857
|
"data-sheet",
|
|
@@ -104016,15 +103988,8 @@ function laneTop(index3) {
|
|
|
104016
103988
|
function laneCenter(index3) {
|
|
104017
103989
|
return laneTop(index3) + LANE_HEAD_H + LANE_PAD + CONTENT_H / 2;
|
|
104018
103990
|
}
|
|
104019
|
-
function columnGapX(col) {
|
|
104020
|
-
return columnX(col) + NODE_W / 2 + COL_GAP / 2;
|
|
104021
|
-
}
|
|
104022
|
-
function laneGapY(lane) {
|
|
104023
|
-
return laneTop(lane) + BAND_H + BAND_GAP / 2;
|
|
104024
|
-
}
|
|
104025
103991
|
var ARCH_SLOTS = {
|
|
104026
103992
|
conversation: { lane: 0, col: 0 },
|
|
104027
|
-
intent: { lane: 0, col: 1 },
|
|
104028
103993
|
runtime: { lane: 0, col: 2 },
|
|
104029
103994
|
answer: { lane: 0, col: 3 },
|
|
104030
103995
|
"data-sheet": { lane: 0, col: 4, stack: 0 },
|
|
@@ -104056,8 +104021,7 @@ function boxOf(id3) {
|
|
|
104056
104021
|
}
|
|
104057
104022
|
var ARCH_EDGES = [
|
|
104058
104023
|
// A · 用户操作链路
|
|
104059
|
-
{ id: "a1", source: "conversation", target: "
|
|
104060
|
-
{ id: "a2", source: "intent", target: "runtime", kind: "flow" },
|
|
104024
|
+
{ id: "a1", source: "conversation", target: "runtime", kind: "flow" },
|
|
104061
104025
|
{ id: "a3", source: "runtime", target: "answer", kind: "flow" },
|
|
104062
104026
|
{ id: "a4", source: "answer", target: "data-sheet", kind: "branch" },
|
|
104063
104027
|
// 画布与 Table 是同一格的两种可编辑输出产物。
|
|
@@ -104086,7 +104050,6 @@ var ARCH_EDGES = [
|
|
|
104086
104050
|
* 「记忆自己就能变成卡片」,那正是它不该说的话。
|
|
104087
104051
|
*/
|
|
104088
104052
|
{ id: "x2", source: "daily-update", target: "source-raw", kind: "feedback", label: "\u6C89\u6DC0\u8FDB\u77E5\u8BC6\u5E93" },
|
|
104089
|
-
{ id: "x3", source: "memory-quality", target: "intent", kind: "feedback", label: "\u53CD\u9988\u5230\u610F\u56FE\u7406\u89E3" },
|
|
104090
104053
|
{ id: "x4", source: "context", target: "runtime", kind: "inject", label: "Agent Context \u8FD4\u56DE" }
|
|
104091
104054
|
];
|
|
104092
104055
|
var BUS_EDGE_IDS = (() => {
|
|
@@ -104114,51 +104077,6 @@ function busControlPoints(edge) {
|
|
|
104114
104077
|
const trunkX = (startX + endX) / 2;
|
|
104115
104078
|
return [[trunkX, from.y], [trunkX, to.y]];
|
|
104116
104079
|
}
|
|
104117
|
-
var CROSS_ROUTES = {
|
|
104118
|
-
x3: {
|
|
104119
|
-
controlPoints: [
|
|
104120
|
-
/* 1. 出「记忆质量检查」的左边,落到 1/2 列缝上(与源节点同高 → 出口在左边中点)。 */
|
|
104121
|
-
[columnGapX(1), laneCenter(2)],
|
|
104122
|
-
/* 2. 沿列缝升到 A/B 带之间的通道。 */
|
|
104123
|
-
[columnGapX(1), laneGapY(0)],
|
|
104124
|
-
/* 3. 在通道里横着走到「意图与上下文」正下方(与目标同 x → 箭头落在下边中点)。 */
|
|
104125
|
-
[columnX(1), laneGapY(0)]
|
|
104126
|
-
],
|
|
104127
|
-
/* 通道那一段(第 2 段)没有卡片,标签放它中点。 */
|
|
104128
|
-
labelSegment: 2
|
|
104129
|
-
}
|
|
104130
|
-
};
|
|
104131
|
-
function boundaryOf(id3, toward) {
|
|
104132
|
-
const box2 = boxOf(id3);
|
|
104133
|
-
const dx = toward[0] - box2.x;
|
|
104134
|
-
const dy = toward[1] - box2.y;
|
|
104135
|
-
const scale10 = Math.min(
|
|
104136
|
-
dx === 0 ? Number.POSITIVE_INFINITY : box2.width / 2 / Math.abs(dx),
|
|
104137
|
-
dy === 0 ? Number.POSITIVE_INFINITY : box2.height / 2 / Math.abs(dy)
|
|
104138
|
-
);
|
|
104139
|
-
return [box2.x + dx * scale10, box2.y + dy * scale10];
|
|
104140
|
-
}
|
|
104141
|
-
function routePoints(edge, controlPoints) {
|
|
104142
|
-
return [
|
|
104143
|
-
boundaryOf(edge.source, controlPoints[0]),
|
|
104144
|
-
...controlPoints,
|
|
104145
|
-
boundaryOf(edge.target, controlPoints[controlPoints.length - 1])
|
|
104146
|
-
];
|
|
104147
|
-
}
|
|
104148
|
-
function labelRatioOf(points, segment) {
|
|
104149
|
-
const lengths = points.slice(1).map((point4, index3) => Math.hypot(point4[0] - points[index3][0], point4[1] - points[index3][1]));
|
|
104150
|
-
const total = lengths.reduce((sum, value) => sum + value, 0);
|
|
104151
|
-
const before = lengths.slice(0, segment).reduce((sum, value) => sum + value, 0);
|
|
104152
|
-
return (before + lengths[segment] / 2) / total;
|
|
104153
|
-
}
|
|
104154
|
-
function crossRouteOf(edge) {
|
|
104155
|
-
const route = CROSS_ROUTES[edge.id];
|
|
104156
|
-
if (!route) return null;
|
|
104157
|
-
return {
|
|
104158
|
-
controlPoints: route.controlPoints,
|
|
104159
|
-
labelPlacement: labelRatioOf(routePoints(edge, route.controlPoints), route.labelSegment)
|
|
104160
|
-
};
|
|
104161
|
-
}
|
|
104162
104080
|
var EDGE_STYLE = {
|
|
104163
104081
|
flow: { stroke: "#7d8b9e", lineWidth: 1.4 },
|
|
104164
104082
|
branch: { stroke: "#7d8b9e", lineWidth: 1.4 },
|
|
@@ -104356,14 +104274,8 @@ function toGraphData(stats, version3, selected = null, selectedDomain = null) {
|
|
|
104356
104274
|
endArrowSize: 8
|
|
104357
104275
|
};
|
|
104358
104276
|
if (CROSS_LANE.includes(edge.kind)) {
|
|
104359
|
-
const route = crossRouteOf(edge);
|
|
104360
104277
|
style.radius = 10;
|
|
104361
|
-
|
|
104362
|
-
style.controlPoints = route.controlPoints;
|
|
104363
|
-
if (route.labelPlacement !== void 0) style.labelPlacement = route.labelPlacement;
|
|
104364
|
-
} else {
|
|
104365
|
-
style.router = { type: "shortest-path", enableObstacleAvoidance: true, offset: 14, gridSize: 8 };
|
|
104366
|
-
}
|
|
104278
|
+
style.router = { type: "shortest-path", enableObstacleAvoidance: true, offset: 14, gridSize: 8 };
|
|
104367
104279
|
} else if (busControlPoints(edge) !== null) {
|
|
104368
104280
|
style.radius = 8;
|
|
104369
104281
|
style.controlPoints = busControlPoints(edge);
|
|
@@ -104447,7 +104359,7 @@ function recordRows(id3, stats, version3) {
|
|
|
104447
104359
|
rows.push(["\u6A21\u578B / \u8BBE\u5907", `${stats.embeddingModel ?? "\u672C\u5730 embedding"} \xB7 ${stats.embeddingDevice ?? "auto"}`]);
|
|
104448
104360
|
break;
|
|
104449
104361
|
case "interaction":
|
|
104450
|
-
rows.push(["\
|
|
104362
|
+
rows.push(["\u4EA4\u4E92\u91C7\u96C6", "\u5F85\u5B9E\u73B0"]);
|
|
104451
104363
|
rows.push(["memory/ \u843D\u76D8", `${memoryCountOf(stats)} \u4E2A\u6587\u4EF6`]);
|
|
104452
104364
|
break;
|
|
104453
104365
|
case "episodic-memory":
|
|
@@ -104493,9 +104405,9 @@ function toneSuffix(tone) {
|
|
|
104493
104405
|
return `${tone[0].toUpperCase()}${tone.slice(1)}`;
|
|
104494
104406
|
}
|
|
104495
104407
|
|
|
104496
|
-
// data-domain-knowledge-css:/
|
|
104497
|
-
var css = "/* =====================================================================\n Agent \u6982\u89C8\uFF1A\u4E00\u5F20 AntV \u67B6\u6784\u56FE + \u753B\u5E03\u5185\u7684\u8BE6\u60C5\u6D6E\u5C42\n ---------------------------------------------------------------------\n 0025 \u4E4B\u524D\u8FD9\u91CC\u4F4F\u7684\u662F\u56DE\u5B57\u5F62 / \u9636\u6BB5\u5E26\u90A3\u5957 DOM \u56FE\uFF0C\u7C7B\u540D\u5DF2\u5168\u90E8\u5220\u9664\u3002\n 0026 \u4E4B\u524D\u753B\u5E03\u4E0A\u65B9\u6709\u4E00\u6761 flex \u5DE5\u5177\u6761\uFF08\u56FE\u4F8B + \u63D0\u793A + \u7EDF\u8BA1 + \u5168\u5C4F\uFF09\uFF0C\u680F\u5BBD\u4E00\u7A84\n `flex-wrap` \u5C31\u628A\u5168\u5C4F\u6309\u94AE\u7529\u5230\u7B2C\u4E8C\u884C \u2014\u2014 \u90A3\u6B63\u662F\u300C\u5168\u5C4F\u4E0D\u5728\u53F3\u4E0A\u89D2\u300D\u7684\u6765\u6E90\u3002\n 0027 \u4E4B\u524D\u8282\u70B9\u8BE6\u60C5\u662F\u753B\u5E03**\u53F3\u8FB9\u7684\u4E00\u5217**\uFF08\u65E7\u4FA7\u680F\u7C7B\u540D\u5DF2\u5168\u90E8\u5220\u9664\uFF09\uFF1A\u5B83\u628A\u753B\u5E03\u6324\u7A84\u5230\n 494px\uFF08\u7F29\u653E 0.42\uFF0C\u5361\u7247\u4E0A\u7684\u5B57\u7F29\u5230\u8BFB\u4E0D\u51FA\uFF09\uFF0C\u800C\u4E14\u300C\u56FE\u300D\u4E0E\u300C\u8FD9\u5F20\u56FE\u4E0A\u7684\u4E1C\u897F\u300D\n \u5206\u6210\u4E24\u5757\u8868\u9762\u3002\u73B0\u5728\u5B83\u662F\u753B\u5E03\u5185\u7684\u6D6E\u5C42\uFF0C\u4FA7\u680F\u90A3\u5957\u7C7B\u540D\u968F\u4E4B\u5220\u9664\u3002\n 0029 \u4E4B\u524D\u753B\u5E03\u5DE6\u4E0A\u89D2\u8FD8\u538B\u7740\u4E24\u884C\u56FE\u4F8B\uFF08\u8FB9\u8BED\u4E49 + \u5168\u56FE\u72B6\u6001\u5206\u5E03\uFF09\uFF0C\u73B0\u5728\u4E5F\u64A4\u4E86\uFF1A\n \u8BFB\u6CD5\u5728\u5E26\u540D\u3001\u5361\u7247\u72B6\u6001\u5B57\u4E0E\u6D6E\u5C42\u6B63\u6587\u91CC\uFF0C\u753B\u5E03\u4E0A\u4E0D\u7559\u8BF4\u660E\u677F\u3002\n\n \u8FD9\u4E2A\u6587\u4EF6\u8DDF\u7740\u67B6\u6784\u89C6\u56FE\u8D70\uFF0C\u4E0D\u5E76\u8FDB\u63D2\u4EF6\u901A\u7528 styles.css\uFF1A\u5B83\u662F\u300C\u4E00\u5F20\u56FE + \u4E00\u4E2A\n \u6D6E\u5C42\u300D\u7684\u7248\u5F0F\uFF0C\u548C\u77E5\u8BC6\u5E93 / \u610F\u56FE / \u8BB0\u5FC6\u90A3\u4E9B\u5361\u7247\u9875\u6CA1\u6709\u5171\u540C\u8BCD\u6C47\u3002\n ===================================================================== */\n\n/* ---------------------------------------------------------------- \u7248\u5F0F */\n\n/* **\u4E00\u5757\u753B\u5E03\uFF0C\u5E26\u4E00\u5708\u53D1\u4E1D\u7EBF\u3002**\n 0042 \u64A4\u8FC7\u8FD9\u5708\u8FB9\u6846\uFF08\u90A3\u65F6\u5B83\u540C\u65F6\u63A5\u7BA1\u89C6\u53E3\u4E0E\u6EDA\u52A8\u6761\uFF0C\u4E24\u79CD\u8BED\u6C47\u7F1D\u5728\u4E00\u8D77\uFF0C\u4E24\u5934\u90FD\u4E0D\u50CF\uFF09\u3002\n 0050 \u53C8\u628A\u5B83\u52A0\u56DE\u6765\uFF1A\u73B0\u5728\u8FD9\u4E00\u680F\u65E2\u4E0D\u62D6\u4E5F\u4E0D\u6EDA\uFF0C\u300C\u56FE\u5728\u54EA\u300D\u4E0D\u518D\u6709\u6B67\u4E49\uFF0C\u4E00\u5708\u8FB9\u6846\u6B63\u597D\n \u56DE\u7B54\u300C\u8FD9\u5F20\u56FE\u753B\u5728\u54EA\u4E00\u5757\u91CC\u300D\u2014\u2014 \u6CA1\u6709\u5B83\uFF0C\u56FE\u4E0E\u9762\u677F\u5E95\u8272\u4E4B\u95F4\u8FDE\u8FB9\u754C\u90FD\u6CA1\u6709\u3002\n \u9AD8\u5EA6\u7531\u9762\u677F\u7ED9\uFF08`flex: 1 1 auto`\uFF09\uFF0C\u5E95\u8272\u663E\u5F0F\u7ED9\u4E00\u4E2A\uFF1A\u5168\u5C4F\u65F6\u8FD9\u4E00\u5757\u8981\u81EA\u5DF1\u4E0D\u900F\u660E\uFF0C\n \u5426\u5219\u80CC\u540E\u662F\u6D4F\u89C8\u5668\u7684\u9ED1\u5E95\u3002\u5168\u5C4F\u662F\u72EC\u5360\u4E00\u5C4F\uFF0C\u90A3\u4E00\u6863\u4E0D\u8981\u5706\u89D2\uFF08\u8D34\u8FB9\u66F4\u50CF\u5168\u5C4F\uFF09\u3002 */\n.tita-archStage {\n position: relative;\n display: flex;\n min-width: 0;\n min-height: 0;\n flex: 1 1 auto;\n flex-direction: column;\n border: 1px solid var(--tita-line);\n border-radius: 10px;\n background: var(--tita-canvas);\n overflow: hidden;\n}\n.tita-archStage:fullscreen { border: 0; border-radius: 0; }\n\n.tita-archStage:fullscreen .tita-archPane { flex: 1 1 auto; min-height: 0; }\n\n/* \u753B\u5E03\u90A3\u4E00\u5217\u3002**\u6D6E\u5C42\u7684\u5B9A\u4F4D\u4E0A\u4E0B\u6587\u662F\u5B83**\uFF0C\u4E0D\u662F\u6574\u5757\u8868\u9762 \u2014\u2014 \u5426\u5219\u53F3\u4E0A\u89D2\u90A3\u6392\u64CD\u4F5C\n \u4F1A\u6D6E\u5230\u8BE6\u60C5\u6D6E\u5C42\u5934\u4E0A\u3002 */\n.tita-archPane { position: relative; display: flex; flex: 1 1 auto; min-width: 0; flex-direction: column; }\n\n/* ---------------------------------------------------------------- \u753B\u5E03 */\n\n/* \u6D6E\u5C42\uFF1A\u53EA\u5269\u53F3\u4E0A\u89D2\u7684\u64CD\u4F5C\uFF08\u7F29\u653E\u6863 + \u5168\u5C4F\uFF09\u30020029 \u64A4\u6389\u4E86\u5DE6\u4E0A\u89D2\u90A3\u4E24\u884C\u56FE\u4F8B \u2014\u2014\n \u753B\u5E03\u4E0A\u4E0D\u518D\u538B\u4E00\u5757\u534A\u900F\u660E\u8BF4\u660E\u677F\uFF0C\u8BFB\u6CD5\u6539\u7531\u5E26\u540D\u3001\u5361\u7247\u72B6\u6001\u5B57\u4E0E\u6D6E\u5C42\u6B63\u6587\u627F\u62C5\u3002\n `nowrap` \u4ECD\u7136\u4FDD\u7559\uFF1A\u5C06\u6765\u518D\u6709\u4E1C\u897F\u6D6E\u4E0A\u6765\uFF0C\u4E5F\u4E0D\u8BB8\u628A\u64CD\u4F5C\u6324\u5230\u7B2C\u4E8C\u884C\u53BB\u3002 */\n.tita-archOverlay {\n position: absolute;\n z-index: 2;\n top: 10px;\n right: 10px;\n left: 10px;\n display: flex;\n align-items: flex-start;\n justify-content: flex-end;\n gap: 10px;\n flex-wrap: nowrap;\n pointer-events: none;\n}\n\n.tita-archOverlayActions { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; padding: 3px 0; pointer-events: auto; }\n/* \u7F29\u653E\u6863\uFF1A\u4E24\u6BB5\u7684\u5206\u6BB5\u63A7\u4EF6\u3002\u4E24\u6BB5\u90FD\u5728\uFF0C\u662F\u56E0\u4E3A\u4E00\u4E2A\u6765\u56DE\u7FFB\u8F6C\u7684\u6309\u94AE\u8BF4\u4E0D\u6E05\u300C\u73B0\u5728\u662F\u54EA\u4E00\u6863\u300D\u3002 */\n.tita-archZoom { display: inline-flex; overflow: hidden; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface); }\n.tita-archZoomOption { border: 0; background: transparent; padding: 4px 9px; color: var(--tita-ink-muted); font: inherit; font-size: 11px; cursor: pointer; }\n.tita-archZoomOption + .tita-archZoomOption { border-left: 1px solid var(--tita-line); }\n.tita-archZoomOption:hover { background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-archZoomOn { background: var(--tita-surface-muted); color: var(--tita-ink); font-weight: 600; }\n\n/* \u753B\u5E03\u5BB9\u5668\uFF1A**\u753B\u5E03\u6C38\u8FDC\u662F\u8BBE\u8BA1\u5C3A\u5BF8\uFF0C\u7F29\u653E\u7531\u677F\u4E0A\u7684 transform \u627F\u62C5**\u3002\n \u8FD9\u5F20\u753B\u5E03\u8BBE\u8BA1\u5BBD 1172px\u3001\u9AD8 1132px\uFF08\u4E09\u6761\u94FE\u8DEF + \u4E00\u6761\u95EE\u9898\u57DF\u5E26\uFF09\uFF0C\u5BBF\u4E3B\u53F3\u4FA7\u680F\u53EA\u6709\n 380\u2013840px\u3002\u6240\u4EE5\u5916\u5C42\u4E0D\u53BB\u300C\u9002\u914D\u300D\u753B\u5E03\uFF0C\u800C\u662F\u6309\u7F29\u653E\u6BD4\u628A\u6574\u5757\u677F\u7F29\u4E0B\u6765\u3002\n \u7F29\u653E\u6BD4\u7531\u7EC4\u4EF6\u6309\u8BBE\u8BA1\u5E38\u91CF\u7B97\u51FA\uFF08`CANVAS_WIDTH/HEIGHT`\uFF09\uFF0C\u4E0D\u5199\u8FDB CSS\uFF0C\u907F\u514D\u4E24\u5904\u5404\u5199\u4E00\u4EFD\u3002 */\n.tita-archScroll { width: 100%; min-width: 0; overflow: auto; background: var(--tita-canvas); }\n/* \u821E\u53F0\u6A21\u5F0F\uFF1A**\u6574\u56FE\u5C45\u4E2D\u6446\u597D**\uFF080050\uFF09\u3002\n `fit: 'both'` \u4E4B\u4E0B\u56FE\u6C38\u8FDC\u5B8C\u6574\u843D\u5728\u6846\u91CC\uFF0C\u6240\u4EE5\u300C\u9002\u5E94\u300D\u6863\u65E2\u6CA1\u6709\u53EF\u6EDA\u4F59\u91CF\u3001\u4E5F\u4E0D\u9700\u8981\u62D6\u62FD\uFF1B\n `safe center` \u800C\u4E0D\u662F `center`\uFF1A1:1 \u6863\u653E\u4E0D\u4E0B\u65F6\uFF0C\u666E\u901A\u5C45\u4E2D\u4F1A\u628A\u5DE6\u4E0A\u89D2\u63A8\u5230\u89C6\u53E3\u5916\n \u4E14\u6EDA\u4E0D\u56DE\u53BB\uFF0C`safe` \u8BA9\u5B83\u9000\u56DE\u4ECE\u5DE6\u4E0A\u89D2\u5F00\u59CB\u3001\u7531\u6EDA\u52A8\u6761\u8D1F\u8D23\u5176\u4F59\u90E8\u5206\u3002\n `overflow: auto` \u4FDD\u7559 \u2014\u2014 1:1 \u6863\u7684\u51FA\u8DEF\u5C31\u662F\u5B83\u3002 */\n.tita-archScrollStage {\n display: flex;\n flex: 1 1 auto;\n min-height: 0;\n align-items: safe center;\n justify-content: safe center;\n}\n/* **\u6309\u6BD4\u4F8B\u5B9A\u5C3A\u5BF8\u7684\u6846\u3002** `transform` \u4E0D\u6539\u5E03\u5C40\u5C3A\u5BF8\uFF0C\u53EA\u5199 transform \u7684\u8BDD\u6EDA\u52A8\u533A\u6C38\u8FDC\u662F\n 1172\xD71132 \u2014\u2014 \u300C\u9002\u5E94\u300D\u6863\u7F29\u5230 0.32 \u4E5F\u7167\u6837\u80FD\u5F80\u865A\u7A7A\u91CC\u62D6\u51FA 770px\u3002\u6846\u7684\u5C3A\u5BF8\u7B49\u4E8E\u7F29\u5B8C\u7684\n \u5C3A\u5BF8\uFF0C\u4E8E\u662F\u53EF\u5E73\u79FB\u7684\u8303\u56F4\u6B63\u597D\u662F\u56FE\u7684\u8FB9\u754C\uFF1A\u9002\u5E94\u6863\u53EA\u6709\u7EB5\u5411\uFF0C1:1 \u6863\u4E24\u4E2A\u65B9\u5411\u3002 */\n.tita-archFrame { position: relative; flex: 0 0 auto; overflow: hidden; }\n/* \u5168\u5C4F\uFF1A\u540C\u4E00\u5957\u5C45\u4E2D\u89C4\u5219\uFF08\u5C45\u4E2D\u5DF2\u7ECF\u5199\u5728 `.tita-archScrollStage` \u4E0A\uFF09\uFF0C\u8FD9\u91CC\u53EA\u628A\u9AD8\u5EA6\u4EA4\u56DE\u9762\u677F\u3002 */\n.tita-archStage:fullscreen .tita-archScroll { flex: 1 1 auto; min-height: 0; }\n.tita-archBoard { min-width: 0; flex: 0 0 auto; }\n.tita-archCanvas { width: 100%; height: 100%; min-width: 0; }\n\n/* \u753B\u5E03\u91CC\u7684\u5361\u7247\u4E0E\u95EE\u9898\u57DF\u724C\u5B50\u90FD\u662F G6 \u7684 HTML \u8282\u70B9\uFF1B\u9009\u4E2D\u6001\u7531 updateNodeData \u6362\n innerHTML\uFF0C\u8FD9\u91CC\u53EA\u8865 hover \u53CD\u9988\uFF0C\u5426\u5219\u9F20\u6807\u79FB\u5230\u5361\u7247\u4E0A\u770B\u4E0D\u51FA\u5B83\u53EF\u70B9\u3002 */\n.tita-archStage .tita-archCard { cursor: pointer; }\n.tita-archStage .tita-archCard:hover { border-color: var(--tita-primary) !important; box-shadow: 0 0 0 3px var(--tita-primary-soft) !important; }\n.tita-archStage .tita-archCardOn { cursor: default; }\n.tita-archStage .tita-archPlate { cursor: pointer; }\n.tita-archStage .tita-archPlate:hover { border-color: var(--tita-primary) !important; box-shadow: 0 0 0 3px var(--tita-primary-soft) !important; }\n.tita-archStage .tita-archPlateOn { cursor: default; }\n\n/* ---------------------------------------------------------------- \u8BE6\u60C5\u6D6E\u5C42 */\n\n/* \u6D6E\u5C42\u7684\u9AD8\u5EA6\u53D6\u300C\u677F\u9AD8 - \u9876\u90E8\u7559\u767D\u300D\u4E0E\u300C\u89C6\u53E3\u4E0A\u9650\u300D\u7684\u8F83\u5C0F\u503C\uFF1A`1:1` \u6863\u4E0B\u677F\u9AD8\u6709 1132px\uFF0C\n \u5982\u679C\u6D6E\u5C42\u8DDF\u7740\u677F\u9AD8\u957F\uFF0C\u5B83\u7684\u4E0B\u534A\u622A\u4F1A\u843D\u5230\u5BBF\u4E3B\u53EF\u89C6\u533A\u5916\u9762\u53BB\u3002 */\n.tita-archInspector {\n position: absolute;\n z-index: 3;\n top: 58px;\n right: 10px;\n display: flex;\n width: min(360px, calc(100% - 20px));\n height: min(calc(var(--arch-board-h, 600px) - 68px), 76vh);\n flex-direction: column;\n border: 1px solid var(--tita-line);\n border-radius: 9px;\n background: color-mix(in srgb, var(--tita-surface) 97%, transparent);\n box-shadow: 0 12px 28px rgba(16, 24, 40, .13);\n backdrop-filter: blur(3px);\n overflow: hidden;\n}\n\n/* \u7A84\u5230\u653E\u4E0D\u4E0B\u4E24\u5217\u65F6\uFF0C\u6D6E\u5C42\u6539\u6210\u5E95\u90E8\u62BD\u5C49\uFF1A\u5B83\u4E0D\u518D\u76D6\u4F4F\u5DE6\u4E0A\u89D2\u7684\u56FE\u4F8B\u4E0E\u53F3\u4E0A\u89D2\u7684\n \u7F29\u653E / \u5168\u5C4F \u2014\u2014 \u90A3\u4E24\u4E2A\u63A7\u4EF6\u662F\u300C\u600E\u4E48\u770B\u8FD9\u5F20\u56FE\u300D\u7684\u5168\u90E8\u5165\u53E3\uFF0C\u76D6\u4F4F\u5B83\u4EEC\u5C31\u7B49\u4E8E\u628A\u4EBA\u9501\u5728\u6D6E\u5C42\u91CC\u3002 */\n@container (max-width: 620px) {\n .tita-archInspector {\n top: auto;\n right: 10px;\n left: 10px;\n width: auto;\n height: min(52%, 420px);\n }\n}\n\n/* ---------------------------------------------------------------- \u8282\u70B9 / \u95EE\u9898\u57DF\u9762\u677F */\n\n.tita-archPanel {\n display: flex;\n min-width: 0;\n flex-direction: column;\n background: var(--tita-surface);\n overflow: hidden;\n}\n\n.tita-archPanelHead { display: flex; flex: 0 0 auto; align-items: flex-start; gap: 9px; border-bottom: 1px solid var(--tita-line); padding: 11px 12px 10px; }\n.tita-archPanelIcon { display: inline-flex; flex: 0 0 auto; width: 30px; height: 30px; align-items: center; justify-content: center; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-archPanelHeadCopy { display: grid; flex: 1 1 auto; gap: 3px; min-width: 0; }\n.tita-archPanelTitleRow { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }\n.tita-archPanelTitleRow h3 { margin: 0; color: var(--tita-ink); font-size: 13.5px; font-weight: 650; }\n.tita-archPanelHeadCopy p { margin: 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.5; }\n/* \u94FE\u8DEF\u5F52\u5C5E\uFF1A\u4E00\u679A\u5C0F\u5706\u70B9 + \u94FE\u8DEF\u540D\u3002\u989C\u8272\u7531\u884C\u5185 style \u7ED9\uFF08\u94FE\u8DEF\u8EAB\u4EFD\u8272\u5728 model.ts \u91CC\uFF09\u3002 */\n.tita-archPanelLane { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 10px; }\n.tita-archPanelLane > i { width: 6px; height: 6px; border-radius: 999px; }\n\n.tita-archPanelBody { display: grid; min-width: 0; overflow-y: auto; }\n.tita-archPanelSection { display: grid; gap: 8px; border-top: 1px solid var(--tita-line); padding: 12px; }\n.tita-archPanelSection:first-child { border-top: 0; }\n.tita-archPanelSectionHead { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }\n.tita-archPanelSectionHead h4 { margin: 0; color: var(--tita-ink); font-size: 11.5px; font-weight: 650; }\n.tita-archPanelEyebrow { color: var(--tita-ink-faint); font-size: 9.5px; font-weight: 650; font-variant-numeric: tabular-nums; }\n.tita-archPanelText { margin: 0; color: var(--tita-ink-muted); font-size: 11.5px; line-height: 1.72; }\n/* \u72B6\u6001\u8BF4\u660E\u5757\uFF1A\u7528\u300C\u6574\u5708\u7EC6\u8FB9\u6846 + \u6D45\u5E95\u300D\u800C\u4E0D\u662F\u5DE6\u4FA7\u7C97\u8272\u6761\u3002\u5DE6\u4FA7\u7C97\u8272\u6761\u662F\n AI \u751F\u6210\u754C\u9762\u7684\u5178\u578B\u6307\u7EB9\uFF0C\u800C\u4E14\u5B83\u5E76\u4E0D\u6BD4\u4E00\u5708\u7EC6\u8FB9\u6846\u591A\u4F20\u9012\u4EFB\u4F55\u4FE1\u606F\u3002 */\n.tita-archPanelNote { margin: 0; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface-muted); padding: 7px 9px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.65; }\n\n.tita-archPanelFlow { display: grid; gap: 4px; border: 1px solid var(--tita-line); border-radius: 8px; background: var(--tita-surface); padding: 8px 9px; color: var(--tita-ink); }\n.tita-archPanelFlow > span { display: grid; gap: 1px; font-size: 11px; }\n.tita-archPanelFlow small { color: var(--tita-ink-faint); font-size: 9.5px; font-weight: 650; letter-spacing: .06em; }\n.tita-archPanelFlow > svg { color: var(--tita-ink-faint); }\n\n.tita-archPanelSteps { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }\n.tita-archPanelStep { display: grid; grid-template-columns: 14px minmax(0, 1fr); gap: 7px; align-items: start; }\n.tita-archPanelStep > svg { margin-top: 2px; color: var(--tita-tone-green); }\n.tita-archPanelStep > span { display: grid; gap: 1px; min-width: 0; }\n.tita-archPanelStep b { color: var(--tita-ink); font-size: 11.5px; font-weight: 600; }\n.tita-archPanelStep small { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.55; }\n.tita-archPanelStepTodo > svg { color: var(--tita-ink-faint); }\n.tita-archPanelStepTodo b { color: var(--tita-ink-muted); }\n\n.tita-archPanelMetrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }\n.tita-archPanelMetric { display: grid; gap: 2px; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface); padding: 7px 9px; }\n.tita-archPanelMetric small { color: var(--tita-ink-faint); font-size: 9.5px; font-weight: 600; letter-spacing: .03em; }\n.tita-archPanelMetric b { color: var(--tita-ink); font-size: 14px; font-weight: 650; font-variant-numeric: tabular-nums; }\n\n.tita-archPanelRecords { display: grid; gap: 0; margin: 0; }\n.tita-archPanelRecords > div { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; border-bottom: 1px solid var(--tita-line); padding: 6px 0; }\n.tita-archPanelRecords > div:last-child { border-bottom: 0; }\n.tita-archPanelRecords dt { color: var(--tita-ink-muted); font-size: 10.5px; }\n.tita-archPanelRecords dd { margin: 0; color: var(--tita-ink); font-size: 11px; font-weight: 600; text-align: right; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }\n\n.tita-archPanelHint { display: flex; align-items: flex-start; gap: 6px; margin: 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; }\n.tita-archPanelHint > svg { flex: 0 0 auto; margin-top: 2px; }\n.tita-archPanelActions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }\n\n/* \u673A\u5236\u6807\u7B7E\uFF1A\u53EF\u70B9\u7684\u8DF3\u5230\u5BF9\u5E94\u8282\u70B9\uFF0C\u6CA1\u6709\u843D\u5730\u7684\u5C31\u662F\u4E00\u679A\u9759\u6001\u6807\u7B7E + \u300C\u672A\u843D\u5730\u300D\u5FBD\u6807\u3002\n \u4E24\u79CD\u90FD\u5728\uFF0C\u56E0\u4E3A\u300C\u8FD9\u4E2A\u57DF\u73B0\u5728\u9760\u4EC0\u4E48\u8DD1\u300D\u548C\u300C\u5B83\u8FD8\u60F3\u9760\u4EC0\u4E48\u300D\u662F\u4E24\u4EF6\u4E8B\u3002 */\n.tita-archPanelChips { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }\n.tita-archPanelChip { display: inline-flex; align-items: center; gap: 2px; border: 1px solid var(--tita-line); border-radius: 999px; background: var(--tita-surface); color: var(--tita-ink-muted); padding: 2px 4px 2px 9px; font: inherit; font-size: 10.5px; font-weight: 600; cursor: pointer; transition: border-color 140ms ease, color 140ms ease, background 140ms ease; }\n.tita-archPanelChip:hover { border-color: var(--tita-primary-line); background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-archPanelChip:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-archPanelChipOff { display: inline-flex; align-items: center; gap: 5px; border: 1px dashed var(--tita-line); border-radius: 999px; color: var(--tita-ink-faint); padding: 2px 8px; font-size: 10.5px; }\n";
|
|
104498
|
-
var tagId = "dsh-data-domain-knowledge//
|
|
104408
|
+
// data-domain-knowledge-css:/private/tmp/dsh-knowledge-alpha-release/plugins/dsh-data-domain-knowledge/src/client/architecture.css
|
|
104409
|
+
var css = "/* =====================================================================\n Agent \u6982\u89C8\uFF1A\u4E00\u5F20 AntV \u67B6\u6784\u56FE + \u753B\u5E03\u5185\u7684\u8BE6\u60C5\u6D6E\u5C42\n ---------------------------------------------------------------------\n 0025 \u4E4B\u524D\u8FD9\u91CC\u4F4F\u7684\u662F\u56DE\u5B57\u5F62 / \u9636\u6BB5\u5E26\u90A3\u5957 DOM \u56FE\uFF0C\u7C7B\u540D\u5DF2\u5168\u90E8\u5220\u9664\u3002\n 0026 \u4E4B\u524D\u753B\u5E03\u4E0A\u65B9\u6709\u4E00\u6761 flex \u5DE5\u5177\u6761\uFF08\u56FE\u4F8B + \u63D0\u793A + \u7EDF\u8BA1 + \u5168\u5C4F\uFF09\uFF0C\u680F\u5BBD\u4E00\u7A84\n `flex-wrap` \u5C31\u628A\u5168\u5C4F\u6309\u94AE\u7529\u5230\u7B2C\u4E8C\u884C \u2014\u2014 \u90A3\u6B63\u662F\u300C\u5168\u5C4F\u4E0D\u5728\u53F3\u4E0A\u89D2\u300D\u7684\u6765\u6E90\u3002\n 0027 \u4E4B\u524D\u8282\u70B9\u8BE6\u60C5\u662F\u753B\u5E03**\u53F3\u8FB9\u7684\u4E00\u5217**\uFF08\u65E7\u4FA7\u680F\u7C7B\u540D\u5DF2\u5168\u90E8\u5220\u9664\uFF09\uFF1A\u5B83\u628A\u753B\u5E03\u6324\u7A84\u5230\n 494px\uFF08\u7F29\u653E 0.42\uFF0C\u5361\u7247\u4E0A\u7684\u5B57\u7F29\u5230\u8BFB\u4E0D\u51FA\uFF09\uFF0C\u800C\u4E14\u300C\u56FE\u300D\u4E0E\u300C\u8FD9\u5F20\u56FE\u4E0A\u7684\u4E1C\u897F\u300D\n \u5206\u6210\u4E24\u5757\u8868\u9762\u3002\u73B0\u5728\u5B83\u662F\u753B\u5E03\u5185\u7684\u6D6E\u5C42\uFF0C\u4FA7\u680F\u90A3\u5957\u7C7B\u540D\u968F\u4E4B\u5220\u9664\u3002\n 0029 \u4E4B\u524D\u753B\u5E03\u5DE6\u4E0A\u89D2\u8FD8\u538B\u7740\u4E24\u884C\u56FE\u4F8B\uFF08\u8FB9\u8BED\u4E49 + \u5168\u56FE\u72B6\u6001\u5206\u5E03\uFF09\uFF0C\u73B0\u5728\u4E5F\u64A4\u4E86\uFF1A\n \u8BFB\u6CD5\u5728\u5E26\u540D\u3001\u5361\u7247\u72B6\u6001\u5B57\u4E0E\u6D6E\u5C42\u6B63\u6587\u91CC\uFF0C\u753B\u5E03\u4E0A\u4E0D\u7559\u8BF4\u660E\u677F\u3002\n\n \u8FD9\u4E2A\u6587\u4EF6\u8DDF\u7740\u67B6\u6784\u89C6\u56FE\u8D70\uFF0C\u4E0D\u5E76\u8FDB\u63D2\u4EF6\u901A\u7528 styles.css\uFF1A\u5B83\u662F\u300C\u4E00\u5F20\u56FE + \u4E00\u4E2A\n \u6D6E\u5C42\u300D\u7684\u7248\u5F0F\uFF0C\u548C\u77E5\u8BC6\u5E93 / \u8BB0\u5FC6\u90A3\u4E9B\u5361\u7247\u9875\u6CA1\u6709\u5171\u540C\u8BCD\u6C47\u3002\n ===================================================================== */\n\n/* ---------------------------------------------------------------- \u7248\u5F0F */\n\n/* **\u4E00\u5757\u753B\u5E03\uFF0C\u5E26\u4E00\u5708\u53D1\u4E1D\u7EBF\u3002**\n 0042 \u64A4\u8FC7\u8FD9\u5708\u8FB9\u6846\uFF08\u90A3\u65F6\u5B83\u540C\u65F6\u63A5\u7BA1\u89C6\u53E3\u4E0E\u6EDA\u52A8\u6761\uFF0C\u4E24\u79CD\u8BED\u6C47\u7F1D\u5728\u4E00\u8D77\uFF0C\u4E24\u5934\u90FD\u4E0D\u50CF\uFF09\u3002\n 0050 \u53C8\u628A\u5B83\u52A0\u56DE\u6765\uFF1A\u73B0\u5728\u8FD9\u4E00\u680F\u65E2\u4E0D\u62D6\u4E5F\u4E0D\u6EDA\uFF0C\u300C\u56FE\u5728\u54EA\u300D\u4E0D\u518D\u6709\u6B67\u4E49\uFF0C\u4E00\u5708\u8FB9\u6846\u6B63\u597D\n \u56DE\u7B54\u300C\u8FD9\u5F20\u56FE\u753B\u5728\u54EA\u4E00\u5757\u91CC\u300D\u2014\u2014 \u6CA1\u6709\u5B83\uFF0C\u56FE\u4E0E\u9762\u677F\u5E95\u8272\u4E4B\u95F4\u8FDE\u8FB9\u754C\u90FD\u6CA1\u6709\u3002\n \u9AD8\u5EA6\u7531\u9762\u677F\u7ED9\uFF08`flex: 1 1 auto`\uFF09\uFF0C\u5E95\u8272\u663E\u5F0F\u7ED9\u4E00\u4E2A\uFF1A\u5168\u5C4F\u65F6\u8FD9\u4E00\u5757\u8981\u81EA\u5DF1\u4E0D\u900F\u660E\uFF0C\n \u5426\u5219\u80CC\u540E\u662F\u6D4F\u89C8\u5668\u7684\u9ED1\u5E95\u3002\u5168\u5C4F\u662F\u72EC\u5360\u4E00\u5C4F\uFF0C\u90A3\u4E00\u6863\u4E0D\u8981\u5706\u89D2\uFF08\u8D34\u8FB9\u66F4\u50CF\u5168\u5C4F\uFF09\u3002 */\n.tita-archStage {\n position: relative;\n display: flex;\n min-width: 0;\n min-height: 0;\n flex: 1 1 auto;\n flex-direction: column;\n border: 1px solid var(--tita-line);\n border-radius: 10px;\n background: var(--tita-canvas);\n overflow: hidden;\n}\n.tita-archStage:fullscreen { border: 0; border-radius: 0; }\n\n.tita-archStage:fullscreen .tita-archPane { flex: 1 1 auto; min-height: 0; }\n\n/* \u753B\u5E03\u90A3\u4E00\u5217\u3002**\u6D6E\u5C42\u7684\u5B9A\u4F4D\u4E0A\u4E0B\u6587\u662F\u5B83**\uFF0C\u4E0D\u662F\u6574\u5757\u8868\u9762 \u2014\u2014 \u5426\u5219\u53F3\u4E0A\u89D2\u90A3\u6392\u64CD\u4F5C\n \u4F1A\u6D6E\u5230\u8BE6\u60C5\u6D6E\u5C42\u5934\u4E0A\u3002 */\n.tita-archPane { position: relative; display: flex; flex: 1 1 auto; min-width: 0; flex-direction: column; }\n\n/* ---------------------------------------------------------------- \u753B\u5E03 */\n\n/* \u6D6E\u5C42\uFF1A\u53EA\u5269\u53F3\u4E0A\u89D2\u7684\u64CD\u4F5C\uFF08\u7F29\u653E\u6863 + \u5168\u5C4F\uFF09\u30020029 \u64A4\u6389\u4E86\u5DE6\u4E0A\u89D2\u90A3\u4E24\u884C\u56FE\u4F8B \u2014\u2014\n \u753B\u5E03\u4E0A\u4E0D\u518D\u538B\u4E00\u5757\u534A\u900F\u660E\u8BF4\u660E\u677F\uFF0C\u8BFB\u6CD5\u6539\u7531\u5E26\u540D\u3001\u5361\u7247\u72B6\u6001\u5B57\u4E0E\u6D6E\u5C42\u6B63\u6587\u627F\u62C5\u3002\n `nowrap` \u4ECD\u7136\u4FDD\u7559\uFF1A\u5C06\u6765\u518D\u6709\u4E1C\u897F\u6D6E\u4E0A\u6765\uFF0C\u4E5F\u4E0D\u8BB8\u628A\u64CD\u4F5C\u6324\u5230\u7B2C\u4E8C\u884C\u53BB\u3002 */\n.tita-archOverlay {\n position: absolute;\n z-index: 2;\n top: 10px;\n right: 10px;\n left: 10px;\n display: flex;\n align-items: flex-start;\n justify-content: flex-end;\n gap: 10px;\n flex-wrap: nowrap;\n pointer-events: none;\n}\n\n.tita-archOverlayActions { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; padding: 3px 0; pointer-events: auto; }\n/* \u7F29\u653E\u6863\uFF1A\u4E24\u6BB5\u7684\u5206\u6BB5\u63A7\u4EF6\u3002\u4E24\u6BB5\u90FD\u5728\uFF0C\u662F\u56E0\u4E3A\u4E00\u4E2A\u6765\u56DE\u7FFB\u8F6C\u7684\u6309\u94AE\u8BF4\u4E0D\u6E05\u300C\u73B0\u5728\u662F\u54EA\u4E00\u6863\u300D\u3002 */\n.tita-archZoom { display: inline-flex; overflow: hidden; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface); }\n.tita-archZoomOption { border: 0; background: transparent; padding: 4px 9px; color: var(--tita-ink-muted); font: inherit; font-size: 11px; cursor: pointer; }\n.tita-archZoomOption + .tita-archZoomOption { border-left: 1px solid var(--tita-line); }\n.tita-archZoomOption:hover { background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-archZoomOn { background: var(--tita-surface-muted); color: var(--tita-ink); font-weight: 600; }\n\n/* \u753B\u5E03\u5BB9\u5668\uFF1A**\u753B\u5E03\u6C38\u8FDC\u662F\u8BBE\u8BA1\u5C3A\u5BF8\uFF0C\u7F29\u653E\u7531\u677F\u4E0A\u7684 transform \u627F\u62C5**\u3002\n \u8FD9\u5F20\u753B\u5E03\u8BBE\u8BA1\u5BBD 1172px\u3001\u9AD8 1132px\uFF08\u4E09\u6761\u94FE\u8DEF + \u4E00\u6761\u95EE\u9898\u57DF\u5E26\uFF09\uFF0C\u5BBF\u4E3B\u53F3\u4FA7\u680F\u53EA\u6709\n 380\u2013840px\u3002\u6240\u4EE5\u5916\u5C42\u4E0D\u53BB\u300C\u9002\u914D\u300D\u753B\u5E03\uFF0C\u800C\u662F\u6309\u7F29\u653E\u6BD4\u628A\u6574\u5757\u677F\u7F29\u4E0B\u6765\u3002\n \u7F29\u653E\u6BD4\u7531\u7EC4\u4EF6\u6309\u8BBE\u8BA1\u5E38\u91CF\u7B97\u51FA\uFF08`CANVAS_WIDTH/HEIGHT`\uFF09\uFF0C\u4E0D\u5199\u8FDB CSS\uFF0C\u907F\u514D\u4E24\u5904\u5404\u5199\u4E00\u4EFD\u3002 */\n.tita-archScroll { width: 100%; min-width: 0; overflow: auto; background: var(--tita-canvas); }\n/* \u821E\u53F0\u6A21\u5F0F\uFF1A**\u6574\u56FE\u5C45\u4E2D\u6446\u597D**\uFF080050\uFF09\u3002\n `fit: 'both'` \u4E4B\u4E0B\u56FE\u6C38\u8FDC\u5B8C\u6574\u843D\u5728\u6846\u91CC\uFF0C\u6240\u4EE5\u300C\u9002\u5E94\u300D\u6863\u65E2\u6CA1\u6709\u53EF\u6EDA\u4F59\u91CF\u3001\u4E5F\u4E0D\u9700\u8981\u62D6\u62FD\uFF1B\n `safe center` \u800C\u4E0D\u662F `center`\uFF1A1:1 \u6863\u653E\u4E0D\u4E0B\u65F6\uFF0C\u666E\u901A\u5C45\u4E2D\u4F1A\u628A\u5DE6\u4E0A\u89D2\u63A8\u5230\u89C6\u53E3\u5916\n \u4E14\u6EDA\u4E0D\u56DE\u53BB\uFF0C`safe` \u8BA9\u5B83\u9000\u56DE\u4ECE\u5DE6\u4E0A\u89D2\u5F00\u59CB\u3001\u7531\u6EDA\u52A8\u6761\u8D1F\u8D23\u5176\u4F59\u90E8\u5206\u3002\n `overflow: auto` \u4FDD\u7559 \u2014\u2014 1:1 \u6863\u7684\u51FA\u8DEF\u5C31\u662F\u5B83\u3002 */\n.tita-archScrollStage {\n display: flex;\n flex: 1 1 auto;\n min-height: 0;\n align-items: safe center;\n justify-content: safe center;\n}\n/* **\u6309\u6BD4\u4F8B\u5B9A\u5C3A\u5BF8\u7684\u6846\u3002** `transform` \u4E0D\u6539\u5E03\u5C40\u5C3A\u5BF8\uFF0C\u53EA\u5199 transform \u7684\u8BDD\u6EDA\u52A8\u533A\u6C38\u8FDC\u662F\n 1172\xD71132 \u2014\u2014 \u300C\u9002\u5E94\u300D\u6863\u7F29\u5230 0.32 \u4E5F\u7167\u6837\u80FD\u5F80\u865A\u7A7A\u91CC\u62D6\u51FA 770px\u3002\u6846\u7684\u5C3A\u5BF8\u7B49\u4E8E\u7F29\u5B8C\u7684\n \u5C3A\u5BF8\uFF0C\u4E8E\u662F\u53EF\u5E73\u79FB\u7684\u8303\u56F4\u6B63\u597D\u662F\u56FE\u7684\u8FB9\u754C\uFF1A\u9002\u5E94\u6863\u53EA\u6709\u7EB5\u5411\uFF0C1:1 \u6863\u4E24\u4E2A\u65B9\u5411\u3002 */\n.tita-archFrame { position: relative; flex: 0 0 auto; overflow: hidden; }\n/* \u5168\u5C4F\uFF1A\u540C\u4E00\u5957\u5C45\u4E2D\u89C4\u5219\uFF08\u5C45\u4E2D\u5DF2\u7ECF\u5199\u5728 `.tita-archScrollStage` \u4E0A\uFF09\uFF0C\u8FD9\u91CC\u53EA\u628A\u9AD8\u5EA6\u4EA4\u56DE\u9762\u677F\u3002 */\n.tita-archStage:fullscreen .tita-archScroll { flex: 1 1 auto; min-height: 0; }\n.tita-archBoard { min-width: 0; flex: 0 0 auto; }\n.tita-archCanvas { width: 100%; height: 100%; min-width: 0; }\n\n/* \u753B\u5E03\u91CC\u7684\u5361\u7247\u4E0E\u95EE\u9898\u57DF\u724C\u5B50\u90FD\u662F G6 \u7684 HTML \u8282\u70B9\uFF1B\u9009\u4E2D\u6001\u7531 updateNodeData \u6362\n innerHTML\uFF0C\u8FD9\u91CC\u53EA\u8865 hover \u53CD\u9988\uFF0C\u5426\u5219\u9F20\u6807\u79FB\u5230\u5361\u7247\u4E0A\u770B\u4E0D\u51FA\u5B83\u53EF\u70B9\u3002 */\n.tita-archStage .tita-archCard { cursor: pointer; }\n.tita-archStage .tita-archCard:hover { border-color: var(--tita-primary) !important; box-shadow: 0 0 0 3px var(--tita-primary-soft) !important; }\n.tita-archStage .tita-archCardOn { cursor: default; }\n.tita-archStage .tita-archPlate { cursor: pointer; }\n.tita-archStage .tita-archPlate:hover { border-color: var(--tita-primary) !important; box-shadow: 0 0 0 3px var(--tita-primary-soft) !important; }\n.tita-archStage .tita-archPlateOn { cursor: default; }\n\n/* ---------------------------------------------------------------- \u8BE6\u60C5\u6D6E\u5C42 */\n\n/* \u6D6E\u5C42\u7684\u9AD8\u5EA6\u53D6\u300C\u677F\u9AD8 - \u9876\u90E8\u7559\u767D\u300D\u4E0E\u300C\u89C6\u53E3\u4E0A\u9650\u300D\u7684\u8F83\u5C0F\u503C\uFF1A`1:1` \u6863\u4E0B\u677F\u9AD8\u6709 1132px\uFF0C\n \u5982\u679C\u6D6E\u5C42\u8DDF\u7740\u677F\u9AD8\u957F\uFF0C\u5B83\u7684\u4E0B\u534A\u622A\u4F1A\u843D\u5230\u5BBF\u4E3B\u53EF\u89C6\u533A\u5916\u9762\u53BB\u3002 */\n.tita-archInspector {\n position: absolute;\n z-index: 3;\n top: 58px;\n right: 10px;\n display: flex;\n width: min(360px, calc(100% - 20px));\n height: min(calc(var(--arch-board-h, 600px) - 68px), 76vh);\n flex-direction: column;\n border: 1px solid var(--tita-line);\n border-radius: 9px;\n background: color-mix(in srgb, var(--tita-surface) 97%, transparent);\n box-shadow: 0 12px 28px rgba(16, 24, 40, .13);\n backdrop-filter: blur(3px);\n overflow: hidden;\n}\n\n/* \u7A84\u5230\u653E\u4E0D\u4E0B\u4E24\u5217\u65F6\uFF0C\u6D6E\u5C42\u6539\u6210\u5E95\u90E8\u62BD\u5C49\uFF1A\u5B83\u4E0D\u518D\u76D6\u4F4F\u5DE6\u4E0A\u89D2\u7684\u56FE\u4F8B\u4E0E\u53F3\u4E0A\u89D2\u7684\n \u7F29\u653E / \u5168\u5C4F \u2014\u2014 \u90A3\u4E24\u4E2A\u63A7\u4EF6\u662F\u300C\u600E\u4E48\u770B\u8FD9\u5F20\u56FE\u300D\u7684\u5168\u90E8\u5165\u53E3\uFF0C\u76D6\u4F4F\u5B83\u4EEC\u5C31\u7B49\u4E8E\u628A\u4EBA\u9501\u5728\u6D6E\u5C42\u91CC\u3002 */\n@container (max-width: 620px) {\n .tita-archInspector {\n top: auto;\n right: 10px;\n left: 10px;\n width: auto;\n height: min(52%, 420px);\n }\n}\n\n/* ---------------------------------------------------------------- \u8282\u70B9 / \u95EE\u9898\u57DF\u9762\u677F */\n\n.tita-archPanel {\n display: flex;\n min-width: 0;\n flex-direction: column;\n background: var(--tita-surface);\n overflow: hidden;\n}\n\n.tita-archPanelHead { display: flex; flex: 0 0 auto; align-items: flex-start; gap: 9px; border-bottom: 1px solid var(--tita-line); padding: 11px 12px 10px; }\n.tita-archPanelIcon { display: inline-flex; flex: 0 0 auto; width: 30px; height: 30px; align-items: center; justify-content: center; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-archPanelHeadCopy { display: grid; flex: 1 1 auto; gap: 3px; min-width: 0; }\n.tita-archPanelTitleRow { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }\n.tita-archPanelTitleRow h3 { margin: 0; color: var(--tita-ink); font-size: 13.5px; font-weight: 650; }\n.tita-archPanelHeadCopy p { margin: 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.5; }\n/* \u94FE\u8DEF\u5F52\u5C5E\uFF1A\u4E00\u679A\u5C0F\u5706\u70B9 + \u94FE\u8DEF\u540D\u3002\u989C\u8272\u7531\u884C\u5185 style \u7ED9\uFF08\u94FE\u8DEF\u8EAB\u4EFD\u8272\u5728 model.ts \u91CC\uFF09\u3002 */\n.tita-archPanelLane { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 10px; }\n.tita-archPanelLane > i { width: 6px; height: 6px; border-radius: 999px; }\n\n.tita-archPanelBody { display: grid; min-width: 0; overflow-y: auto; }\n.tita-archPanelSection { display: grid; gap: 8px; border-top: 1px solid var(--tita-line); padding: 12px; }\n.tita-archPanelSection:first-child { border-top: 0; }\n.tita-archPanelSectionHead { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }\n.tita-archPanelSectionHead h4 { margin: 0; color: var(--tita-ink); font-size: 11.5px; font-weight: 650; }\n.tita-archPanelEyebrow { color: var(--tita-ink-faint); font-size: 9.5px; font-weight: 650; font-variant-numeric: tabular-nums; }\n.tita-archPanelText { margin: 0; color: var(--tita-ink-muted); font-size: 11.5px; line-height: 1.72; }\n/* \u72B6\u6001\u8BF4\u660E\u5757\uFF1A\u7528\u300C\u6574\u5708\u7EC6\u8FB9\u6846 + \u6D45\u5E95\u300D\u800C\u4E0D\u662F\u5DE6\u4FA7\u7C97\u8272\u6761\u3002\u5DE6\u4FA7\u7C97\u8272\u6761\u662F\n AI \u751F\u6210\u754C\u9762\u7684\u5178\u578B\u6307\u7EB9\uFF0C\u800C\u4E14\u5B83\u5E76\u4E0D\u6BD4\u4E00\u5708\u7EC6\u8FB9\u6846\u591A\u4F20\u9012\u4EFB\u4F55\u4FE1\u606F\u3002 */\n.tita-archPanelNote { margin: 0; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface-muted); padding: 7px 9px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.65; }\n\n.tita-archPanelFlow { display: grid; gap: 4px; border: 1px solid var(--tita-line); border-radius: 8px; background: var(--tita-surface); padding: 8px 9px; color: var(--tita-ink); }\n.tita-archPanelFlow > span { display: grid; gap: 1px; font-size: 11px; }\n.tita-archPanelFlow small { color: var(--tita-ink-faint); font-size: 9.5px; font-weight: 650; letter-spacing: .06em; }\n.tita-archPanelFlow > svg { color: var(--tita-ink-faint); }\n\n.tita-archPanelSteps { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }\n.tita-archPanelStep { display: grid; grid-template-columns: 14px minmax(0, 1fr); gap: 7px; align-items: start; }\n.tita-archPanelStep > svg { margin-top: 2px; color: var(--tita-tone-green); }\n.tita-archPanelStep > span { display: grid; gap: 1px; min-width: 0; }\n.tita-archPanelStep b { color: var(--tita-ink); font-size: 11.5px; font-weight: 600; }\n.tita-archPanelStep small { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.55; }\n.tita-archPanelStepTodo > svg { color: var(--tita-ink-faint); }\n.tita-archPanelStepTodo b { color: var(--tita-ink-muted); }\n\n.tita-archPanelMetrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }\n.tita-archPanelMetric { display: grid; gap: 2px; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface); padding: 7px 9px; }\n.tita-archPanelMetric small { color: var(--tita-ink-faint); font-size: 9.5px; font-weight: 600; letter-spacing: .03em; }\n.tita-archPanelMetric b { color: var(--tita-ink); font-size: 14px; font-weight: 650; font-variant-numeric: tabular-nums; }\n\n.tita-archPanelRecords { display: grid; gap: 0; margin: 0; }\n.tita-archPanelRecords > div { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; border-bottom: 1px solid var(--tita-line); padding: 6px 0; }\n.tita-archPanelRecords > div:last-child { border-bottom: 0; }\n.tita-archPanelRecords dt { color: var(--tita-ink-muted); font-size: 10.5px; }\n.tita-archPanelRecords dd { margin: 0; color: var(--tita-ink); font-size: 11px; font-weight: 600; text-align: right; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }\n\n.tita-archPanelHint { display: flex; align-items: flex-start; gap: 6px; margin: 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; }\n.tita-archPanelHint > svg { flex: 0 0 auto; margin-top: 2px; }\n.tita-archPanelActions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }\n\n/* \u673A\u5236\u6807\u7B7E\uFF1A\u53EF\u70B9\u7684\u8DF3\u5230\u5BF9\u5E94\u8282\u70B9\uFF0C\u6CA1\u6709\u843D\u5730\u7684\u5C31\u662F\u4E00\u679A\u9759\u6001\u6807\u7B7E + \u300C\u672A\u843D\u5730\u300D\u5FBD\u6807\u3002\n \u4E24\u79CD\u90FD\u5728\uFF0C\u56E0\u4E3A\u300C\u8FD9\u4E2A\u57DF\u73B0\u5728\u9760\u4EC0\u4E48\u8DD1\u300D\u548C\u300C\u5B83\u8FD8\u60F3\u9760\u4EC0\u4E48\u300D\u662F\u4E24\u4EF6\u4E8B\u3002 */\n.tita-archPanelChips { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }\n.tita-archPanelChip { display: inline-flex; align-items: center; gap: 2px; border: 1px solid var(--tita-line); border-radius: 999px; background: var(--tita-surface); color: var(--tita-ink-muted); padding: 2px 4px 2px 9px; font: inherit; font-size: 10.5px; font-weight: 600; cursor: pointer; transition: border-color 140ms ease, color 140ms ease, background 140ms ease; }\n.tita-archPanelChip:hover { border-color: var(--tita-primary-line); background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-archPanelChip:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-archPanelChipOff { display: inline-flex; align-items: center; gap: 5px; border: 1px dashed var(--tita-line); border-radius: 999px; color: var(--tita-ink-faint); padding: 2px 8px; font-size: 10.5px; }\n";
|
|
104410
|
+
var tagId = "dsh-data-domain-knowledge//private/tmp/dsh-knowledge-alpha-release/plugins/dsh-data-domain-knowledge/src/client/architecture.css";
|
|
104499
104411
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
|
|
104500
104412
|
const tag = document.createElement("style");
|
|
104501
104413
|
tag.dataset.plugin = "dsh-data-domain-knowledge";
|
|
@@ -104759,7 +104671,7 @@ function NodeLogicPanel({ selected, stats, version: version3, onJump, onOpenTab,
|
|
|
104759
104671
|
] }) : /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("p", { className: styles.archPanelHint, children: [
|
|
104760
104672
|
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(CircleHelp, { size: 13 }),
|
|
104761
104673
|
"\u8FD9\u4E2A\u8282\u70B9\u6CA1\u6709\u53EF\u914D\u7F6E\u9875\uFF1A",
|
|
104762
|
-
meta.status === "host" ? "\u5B83\u7531\u5BBF\u4E3B\u63D0\u4F9B" : meta.status === "planned" ? "\u5B83\u8FD8\u6CA1\u5B9E\u73B0\uFF0C\
|
|
104674
|
+
meta.status === "host" ? "\u5B83\u7531\u5BBF\u4E3B\u63D0\u4F9B" : meta.status === "planned" ? "\u5B83\u8FD8\u6CA1\u5B9E\u73B0\uFF0C\u5F53\u524D\u53EA\u8BB0\u5F55\u8BBE\u8BA1\u65B9\u6848" : "\u5B83\u7684\u884C\u4E3A\u7531\u4EE3\u7801\u51B3\u5B9A\uFF0C\u6CA1\u6709\u53EF\u8C03\u53C2\u6570",
|
|
104763
104675
|
"\u3002"
|
|
104764
104676
|
] }),
|
|
104765
104677
|
(selected === "answer" || selected === "data-sheet" || selected === "data-canvas") && onOpenTab && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: styles.archPanelActions, children: [
|
|
@@ -104840,6 +104752,25 @@ function ProblemDetailPanel({ domainId, stats, version: version3, onSelect, onCl
|
|
|
104840
104752
|
// src/client/attribution/AttributionTab.tsx
|
|
104841
104753
|
var import_react15 = require("react");
|
|
104842
104754
|
|
|
104755
|
+
// src/client/request.ts
|
|
104756
|
+
async function requestJson(url, init) {
|
|
104757
|
+
const response = await fetch(url, init);
|
|
104758
|
+
const text = await response.text();
|
|
104759
|
+
if (!text.trim()) throw new Error(`\u670D\u52A1\u7AEF\u8FD4\u56DE\u7A7A\u54CD\u5E94\uFF08HTTP ${response.status}\uFF09`);
|
|
104760
|
+
let payload;
|
|
104761
|
+
try {
|
|
104762
|
+
payload = JSON.parse(text);
|
|
104763
|
+
} catch {
|
|
104764
|
+
throw new Error(`\u670D\u52A1\u7AEF\u8FD4\u56DE\u4E86\u65E0\u6548\u54CD\u5E94\uFF08HTTP ${response.status}\uFF09`);
|
|
104765
|
+
}
|
|
104766
|
+
const error2 = payload.error;
|
|
104767
|
+
if (!response.ok || payload.ok === false) {
|
|
104768
|
+
const detail = [error2?.code, error2?.message].filter(Boolean).join(" \xB7 ") || `\u8BF7\u6C42\u5931\u8D25\uFF08${response.status}\uFF09`;
|
|
104769
|
+
throw new Error(error2?.suggestion ? `${detail} \u2014 ${error2.suggestion}` : detail);
|
|
104770
|
+
}
|
|
104771
|
+
return payload;
|
|
104772
|
+
}
|
|
104773
|
+
|
|
104843
104774
|
// src/client/attribution/AttributionGraph.tsx
|
|
104844
104775
|
var import_react12 = require("react");
|
|
104845
104776
|
|
|
@@ -107288,7 +107219,7 @@ function symptomMatchOf(question, symptoms) {
|
|
|
107288
107219
|
});
|
|
107289
107220
|
return matches.length === 1 ? matches[0] : void 0;
|
|
107290
107221
|
}
|
|
107291
|
-
function AttributionTab({ visible, activeQuestion, onOpenKnowledge }) {
|
|
107222
|
+
function AttributionTab({ visible, activeQuestion, kbId, onOpenKnowledge, onOpenWiki }) {
|
|
107292
107223
|
const [subView, setSubView] = (0, import_react15.useState)("graph");
|
|
107293
107224
|
const [layout2, setLayout] = (0, import_react15.useState)("force");
|
|
107294
107225
|
const [overview, setOverview] = (0, import_react15.useState)(true);
|
|
@@ -107354,7 +107285,8 @@ function AttributionTab({ visible, activeQuestion, onOpenKnowledge }) {
|
|
|
107354
107285
|
setPhase("loading");
|
|
107355
107286
|
void (async () => {
|
|
107356
107287
|
try {
|
|
107357
|
-
const
|
|
107288
|
+
const query2 = kbId ? `?kb=${encodeURIComponent(kbId)}` : "";
|
|
107289
|
+
const response = await fetch(`/diagnosis/graph${query2}`);
|
|
107358
107290
|
if (!response.ok) throw new Error(`HTTP ${response.status}`);
|
|
107359
107291
|
const body = await response.json();
|
|
107360
107292
|
if (cancelled) return;
|
|
@@ -107367,12 +107299,13 @@ function AttributionTab({ visible, activeQuestion, onOpenKnowledge }) {
|
|
|
107367
107299
|
return () => {
|
|
107368
107300
|
cancelled = true;
|
|
107369
107301
|
};
|
|
107370
|
-
}, [visible, reloadToken, applyPayload]);
|
|
107302
|
+
}, [visible, reloadToken, applyPayload, kbId]);
|
|
107371
107303
|
const loadSample = async () => {
|
|
107372
107304
|
setSampleBusy(true);
|
|
107373
107305
|
setSampleError(null);
|
|
107374
107306
|
try {
|
|
107375
|
-
const
|
|
107307
|
+
const query2 = kbId ? `?kb=${encodeURIComponent(kbId)}` : "";
|
|
107308
|
+
const response = await fetch(`/diagnosis/sample${query2}`, { method: "POST" });
|
|
107376
107309
|
const body = await response.json();
|
|
107377
107310
|
if (!response.ok || body.ok === false) throw new Error(body.error?.message ?? `HTTP ${response.status}`);
|
|
107378
107311
|
applyPayload(body.data ?? {});
|
|
@@ -107410,6 +107343,8 @@ function AttributionTab({ visible, activeQuestion, onOpenKnowledge }) {
|
|
|
107410
107343
|
const symptomCounts = (0, import_react15.useMemo)(() => symptomCountByProblemClass(data2.nodes), [data2]);
|
|
107411
107344
|
const symptoms = (0, import_react15.useMemo)(() => data2.nodes.filter((node) => node.kind === "symptom"), [data2]);
|
|
107412
107345
|
const matchedSymptom = (0, import_react15.useMemo)(() => symptomMatchOf(activeQuestion, symptoms), [activeQuestion, symptoms]);
|
|
107346
|
+
const selectedSymptom = selectedId ? symptoms.find((node) => node.id === selectedId) : void 0;
|
|
107347
|
+
const evidenceQuery = activeQuestion?.trim() || selectedSymptom?.title || matchedSymptom?.title || "";
|
|
107413
107348
|
(0, import_react15.useEffect)(() => {
|
|
107414
107349
|
setSelectedId(matchedSymptom?.id);
|
|
107415
107350
|
setFocusId(matchedSymptom?.id);
|
|
@@ -107533,6 +107468,12 @@ function AttributionTab({ visible, activeQuestion, onOpenKnowledge }) {
|
|
|
107533
107468
|
icon: Stethoscope,
|
|
107534
107469
|
hint: "\u526A\u679D\uFF1A\u6309\u4F18\u5148\u5206\u6392\u51FA\u4E0B\u4E00\u6B65\u8BE5\u67E5\u4EC0\u4E48\uFF0C\u6BCF\u4E2A\u68C0\u67E5\u70B9\u90FD\u6709\u4E3B\u64CD\u4F5C\u3002",
|
|
107535
107470
|
meta: String(candidateCount)
|
|
107471
|
+
},
|
|
107472
|
+
{
|
|
107473
|
+
id: "knowledge",
|
|
107474
|
+
label: "\u77E5\u8BC6",
|
|
107475
|
+
icon: Library,
|
|
107476
|
+
hint: "\u4F9D\u636E\uFF1A\u6309\u5F53\u524D\u95EE\u9898\u53EC\u56DE Wiki Fact / Wiki Way\uFF1B\u53EF\u6253\u5F00\u539F Wiki \u6838\u5BF9\u3002"
|
|
107536
107477
|
}
|
|
107537
107478
|
];
|
|
107538
107479
|
const layoutHint = layout2 === "line" ? `\u52A8\u7EBF\uFF1A\u4E94\u6BB5\u6CF3\u9053\uFF0C\u6BB5\u5185\u5404\u6709\u6392\u5E8F\uFF1B\u70B9\u4E00\u4E2A\u73B0\u8C61\u6216\u5047\u8BBE\u4F1A\u70B9\u4EAE\u5B83\u90A3\u6761\u94FE\u3002${instanceOpen ? "\u2464 \u6BB5\u5DF2\u5C55\u5F00\u3002" : "\u2464 \u6BB5\uFF08\u5B9E\u9645\u67E5\u8BE2\u4E0E\u7ED3\u679C\uFF09\u9ED8\u8BA4\u6298\u53E0\uFF0C\u70B9\u5B83\u53EF\u5C55\u5F00\u3002"}` : "\u5173\u7CFB\uFF1A\u663E\u793A\u5168\u91CF\u6709\u5411\u5173\u7CFB\u3002\u7BAD\u5934\u8868\u793A\u65B9\u5411\uFF0C\u56FE\u4F8B\u8BF4\u660E\u5173\u7CFB\u7C7B\u578B\uFF1B\u70B9\u8282\u70B9\u53EF\u770B\u5173\u8054\u68C0\u67E5\u4E0E\u4F9D\u636E\u3002";
|
|
@@ -107623,6 +107564,7 @@ function AttributionTab({ visible, activeQuestion, onOpenKnowledge }) {
|
|
|
107623
107564
|
),
|
|
107624
107565
|
...subView === "case" ? { layer: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(CaseView, { cases, activeId: activeCase, onActiveChange: setActiveCase }) } : {},
|
|
107625
107566
|
...subView === "event" ? { layer: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(EventView, { events }) } : {},
|
|
107567
|
+
...subView === "knowledge" ? { layer: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(KnowledgeEvidenceView, { query: evidenceQuery, kbId, onOpenWiki }) } : {},
|
|
107626
107568
|
...subView === "run" ? {
|
|
107627
107569
|
layer: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
107628
107570
|
RunView,
|
|
@@ -107725,8 +107667,11 @@ function AttributionTab({ visible, activeQuestion, onOpenKnowledge }) {
|
|
|
107725
107667
|
if (phase !== "ready" || data2.nodes.length === 0 && events.length === 0) {
|
|
107726
107668
|
return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex min-h-0 flex-1 flex-col gap-1.5", children: [
|
|
107727
107669
|
helpError && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(AttributionHelpNotice, { message: helpError, onDismiss: () => setHelpError(null) }),
|
|
107728
|
-
/* @__PURE__ */ (0, import_jsx_runtime42.
|
|
107729
|
-
|
|
107670
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex min-w-0 flex-wrap items-center justify-between gap-1.5", children: [
|
|
107671
|
+
switcher,
|
|
107672
|
+
helpHint
|
|
107673
|
+
] }),
|
|
107674
|
+
subView === "knowledge" ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "min-h-0 flex-1 overflow-y-auto px-2", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(KnowledgeEvidenceView, { query: evidenceQuery, kbId, onOpenWiki }) }) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
107730
107675
|
AttributionEmpty,
|
|
107731
107676
|
{
|
|
107732
107677
|
phase,
|
|
@@ -107829,6 +107774,81 @@ function AttributionHelpNotice({ message, onDismiss }) {
|
|
|
107829
107774
|
}
|
|
107830
107775
|
);
|
|
107831
107776
|
}
|
|
107777
|
+
function KnowledgeEvidenceView({ query, kbId, onOpenWiki }) {
|
|
107778
|
+
const [items, setItems] = (0, import_react15.useState)([]);
|
|
107779
|
+
const [phase, setPhase] = (0, import_react15.useState)("idle");
|
|
107780
|
+
const [error2, setError] = (0, import_react15.useState)("");
|
|
107781
|
+
const [retry, setRetry] = (0, import_react15.useState)(0);
|
|
107782
|
+
const [expanded, setExpanded] = (0, import_react15.useState)(/* @__PURE__ */ new Set());
|
|
107783
|
+
(0, import_react15.useEffect)(() => {
|
|
107784
|
+
const trimmed = query.trim();
|
|
107785
|
+
if (!trimmed) {
|
|
107786
|
+
setItems([]);
|
|
107787
|
+
setPhase("idle");
|
|
107788
|
+
setError("");
|
|
107789
|
+
return void 0;
|
|
107790
|
+
}
|
|
107791
|
+
let cancelled = false;
|
|
107792
|
+
setPhase("loading");
|
|
107793
|
+
setItems([]);
|
|
107794
|
+
setExpanded(/* @__PURE__ */ new Set());
|
|
107795
|
+
setError("");
|
|
107796
|
+
const params = new URLSearchParams({ query: trimmed, top_k: "30", top_n: "20" });
|
|
107797
|
+
if (kbId) params.set("kb", kbId);
|
|
107798
|
+
void requestJson(`/knowledge/search?${params.toString()}`).then((payload) => {
|
|
107799
|
+
if (cancelled) return;
|
|
107800
|
+
setItems((payload.data?.wiki ?? []).filter((card) => card.metadata?.wiki_kind === "fact" || card.metadata?.wiki_kind === "way"));
|
|
107801
|
+
setPhase("ready");
|
|
107802
|
+
}).catch((cause) => {
|
|
107803
|
+
if (cancelled) return;
|
|
107804
|
+
setItems([]);
|
|
107805
|
+
setError(cause instanceof Error ? cause.message : String(cause));
|
|
107806
|
+
setPhase("error");
|
|
107807
|
+
});
|
|
107808
|
+
return () => {
|
|
107809
|
+
cancelled = true;
|
|
107810
|
+
};
|
|
107811
|
+
}, [query, kbId, retry]);
|
|
107812
|
+
const toggleExpanded = (id3) => setExpanded((current2) => {
|
|
107813
|
+
const next = new Set(current2);
|
|
107814
|
+
if (next.has(id3)) next.delete(id3);
|
|
107815
|
+
else next.add(id3);
|
|
107816
|
+
return next;
|
|
107817
|
+
});
|
|
107818
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("section", { className: "mx-auto flex w-full max-w-3xl flex-col gap-2 py-1", "aria-label": "\u77E5\u8BC6\u5E93\u53EC\u56DE\u4F9D\u636E", children: [
|
|
107819
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("header", { className: "border-b border-tita-line pb-2", children: [
|
|
107820
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("h3", { className: "text-[13px] font-semibold text-tita-ink", children: "\u95EE\u9898\u5B9A\u4F4D\u76F8\u5173 Wiki" }),
|
|
107821
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "mt-1 text-[10.5px] leading-relaxed text-tita-ink-muted", children: "\u6309\u5F53\u524D\u95EE\u9898\u53EC\u56DE\u5DF2\u6709 Wiki Fact / Wiki Way\u3002\u8FD9\u91CC\u53EA\u8BFB\u5C55\u793A\uFF0C\u4E0D\u4F1A\u521B\u5EFA\u6216\u4FEE\u6539\u77E5\u8BC6\u3002" }),
|
|
107822
|
+
query.trim() && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "mt-1 line-clamp-2 break-words text-[10.5px] leading-relaxed text-tita-ink", title: query, children: query })
|
|
107823
|
+
] }),
|
|
107824
|
+
phase === "idle" && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "py-5 text-center text-[11px] text-tita-ink-muted", children: "\u5F53\u524D\u6CA1\u6709\u53EF\u7528\u4E8E\u53EC\u56DE\u7684\u95EE\u9898\u3002\u8BF7\u5728\u4F1A\u8BDD\u4E2D\u63D0\u51FA\u95EE\u9898\uFF0C\u6216\u5148\u5728\u56FE\u8C31\u91CC\u9009\u62E9\u4E00\u4E2A\u95EE\u9898\u73B0\u8C61\u3002" }),
|
|
107825
|
+
phase === "loading" && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { role: "status", className: "py-5 text-center text-[11px] text-tita-ink-muted", children: "\u6B63\u5728\u53EC\u56DE Wiki Fact / Wiki Way\u2026" }),
|
|
107826
|
+
phase === "error" && /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex flex-col items-start gap-2 py-3", children: [
|
|
107827
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("p", { role: "alert", className: "text-[10.5px] leading-relaxed text-tita-danger", children: [
|
|
107828
|
+
"\u77E5\u8BC6\u53EC\u56DE\u5931\u8D25\uFF1A",
|
|
107829
|
+
error2
|
|
107830
|
+
] }),
|
|
107831
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Button, { size: "sm", variant: "outline", className: "h-[26px] min-h-[26px] px-2 text-[10.5px]", onClick: () => setRetry((value) => value + 1), children: "\u91CD\u8BD5\u53EC\u56DE" })
|
|
107832
|
+
] }),
|
|
107833
|
+
phase === "ready" && items.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "py-5 text-center text-[11px] leading-relaxed text-tita-ink-muted", children: "\u5F53\u524D\u95EE\u9898\u6CA1\u6709\u53EC\u56DE\u5230 Wiki Fact \u6216 Wiki Way\u3002\u53EF\u4EE5\u8865\u5145\u95EE\u9898\u73B0\u8C61\uFF0C\u6216\u5230\u77E5\u8BC6\u5E93\u68C0\u67E5\u76F8\u5173 Wiki \u662F\u5426\u5DF2\u7F16\u8BD1\u3002" }),
|
|
107834
|
+
items.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("ol", { className: "divide-y divide-tita-line", children: items.map((card) => {
|
|
107835
|
+
const wikiKind = card.metadata?.wiki_kind === "way" ? "way" : "fact";
|
|
107836
|
+
const open = expanded.has(card.entityId);
|
|
107837
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("li", { className: "py-2.5 first:pt-1", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("article", { className: "flex min-w-0 flex-col gap-1.5", children: [
|
|
107838
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("header", { className: "flex min-w-0 items-start gap-1.5", children: [
|
|
107839
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Badge, { tone: wikiKind === "way" ? "success" : "neutral", className: "mt-0.5 shrink-0", children: wikiKind === "way" ? "Wiki Way" : "Wiki Fact" }),
|
|
107840
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("h4", { className: "min-w-0 break-words text-[11.5px] font-semibold leading-snug text-tita-ink", children: card.title })
|
|
107841
|
+
] }),
|
|
107842
|
+
card.summary && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "break-words text-[10.5px] leading-relaxed text-tita-ink-muted", children: card.summary }),
|
|
107843
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex flex-wrap items-center gap-1", children: [
|
|
107844
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Button, { size: "sm", variant: "ghost", className: "h-[25px] min-h-[25px] px-1.5 text-[10px]", onClick: () => toggleExpanded(card.entityId), children: open ? "\u6536\u8D77 Wiki \u6B63\u6587" : "\u5C55\u5F00 Wiki \u6B63\u6587" }),
|
|
107845
|
+
onOpenWiki && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Button, { size: "sm", variant: "outline", className: "h-[25px] min-h-[25px] px-1.5 text-[10px]", onClick: () => onOpenWiki(card), children: "\u6253\u5F00\u539F Wiki" })
|
|
107846
|
+
] }),
|
|
107847
|
+
open && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("pre", { className: "max-h-[36vh] overflow-auto overscroll-contain whitespace-pre-wrap break-words rounded-md bg-tita-surface-muted p-2 text-[10px] leading-relaxed text-tita-ink", children: card.content })
|
|
107848
|
+
] }) }, `${card.entityType}:${card.entityId}`);
|
|
107849
|
+
}) })
|
|
107850
|
+
] });
|
|
107851
|
+
}
|
|
107832
107852
|
var PROBLEM_CLASS_IDS_TO_SUBCLASSES = Object.fromEntries(
|
|
107833
107853
|
PROBLEM_CLASSES.map((item) => [item.id, item.subclasses.map((sub7) => sub7.id)])
|
|
107834
107854
|
);
|
|
@@ -108185,6 +108205,7 @@ function AxisMatrix({
|
|
|
108185
108205
|
selection,
|
|
108186
108206
|
onPickGroup,
|
|
108187
108207
|
onPickCell,
|
|
108208
|
+
onPickBreakdown,
|
|
108188
108209
|
onPickAxis,
|
|
108189
108210
|
onExpand,
|
|
108190
108211
|
title,
|
|
@@ -108235,11 +108256,11 @@ function AxisMatrix({
|
|
|
108235
108256
|
const cellSummary = (groups, object, action) => {
|
|
108236
108257
|
const count3 = totalOf(groups);
|
|
108237
108258
|
if (count3 === 0) return null;
|
|
108259
|
+
const cell = cellOf(object, action);
|
|
108260
|
+
const breakdown = cell?.breakdown?.filter((item) => item.count > 0) ?? [];
|
|
108238
108261
|
const title2 = (object ?? "\u65E0\u5BF9\u8C61") + " \xD7 " + (action ?? "\u65E0\u52A8\u4F5C") + "\uFF1A" + count3 + " \u6761" + unitLabel + " \xB7 " + groups.length + " \u4E2A\u573A\u666F";
|
|
108239
|
-
const body = /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: styles.trialMatrixCellValue, children: count3 });
|
|
108240
|
-
if (!onPickCell) return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: styles.trialMatrixCellStatic, title: title2, children: body });
|
|
108241
108262
|
const on = cellOn(object, action);
|
|
108242
|
-
|
|
108263
|
+
const total = onPickCell ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
108243
108264
|
"button",
|
|
108244
108265
|
{
|
|
108245
108266
|
type: "button",
|
|
@@ -108248,9 +108269,38 @@ function AxisMatrix({
|
|
|
108248
108269
|
"aria-label": title2,
|
|
108249
108270
|
"aria-pressed": on,
|
|
108250
108271
|
onClick: () => onPickCell({ object, action }),
|
|
108251
|
-
children:
|
|
108272
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: styles.trialMatrixCellValue, children: count3 })
|
|
108252
108273
|
}
|
|
108253
|
-
);
|
|
108274
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: styles.trialMatrixCellStatic, title: title2, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: styles.trialMatrixCellValue, children: count3 }) });
|
|
108275
|
+
if (breakdown.length === 0) return total;
|
|
108276
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("span", { className: styles.trialMatrixCellStack, children: [
|
|
108277
|
+
total,
|
|
108278
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: styles.trialMatrixBreakdown, role: "group", "aria-label": `${object ?? "\u65E0\u5BF9\u8C61"} \xD7 ${action ?? "\u65E0\u52A8\u4F5C"} \u7C7B\u578B\u6570\u91CF`, children: breakdown.map((item) => {
|
|
108279
|
+
const selected = on && selection?.cell?.breakdownId === item.id;
|
|
108280
|
+
const itemTitle = `${title2} \xB7 ${item.title} ${item.count} \u5F20 Wiki`;
|
|
108281
|
+
return onPickBreakdown ? /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
108282
|
+
"button",
|
|
108283
|
+
{
|
|
108284
|
+
type: "button",
|
|
108285
|
+
className: cn(styles.trialMatrixBreakdownItem, styles.trialMatrixBreakdownPick, selected && styles.trialMatrixBreakdownOn),
|
|
108286
|
+
title: selected ? `${itemTitle} \u2014\u2014 \u518D\u70B9\u4E00\u6B21\u53D6\u6D88` : `${itemTitle} \u2014\u2014 \u70B9\u5B83\u53EA\u770B\u6B64\u7C7B Wiki`,
|
|
108287
|
+
"aria-label": `${object ?? "\u65E0\u5BF9\u8C61"} \xD7 ${action ?? "\u65E0\u52A8\u4F5C"} \xB7 ${item.title}\uFF1A${item.count} \u5F20 Wiki`,
|
|
108288
|
+
"aria-pressed": selected,
|
|
108289
|
+
onClick: () => onPickBreakdown({ object, action }, item.id),
|
|
108290
|
+
children: [
|
|
108291
|
+
item.label,
|
|
108292
|
+
" ",
|
|
108293
|
+
item.count
|
|
108294
|
+
]
|
|
108295
|
+
},
|
|
108296
|
+
item.id
|
|
108297
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("span", { className: styles.trialMatrixBreakdownItem, title: `${item.title}\uFF1A${item.count} \u5F20 Wiki`, children: [
|
|
108298
|
+
item.label,
|
|
108299
|
+
" ",
|
|
108300
|
+
item.count
|
|
108301
|
+
] }, item.id);
|
|
108302
|
+
}) })
|
|
108303
|
+
] });
|
|
108254
108304
|
};
|
|
108255
108305
|
const looseStats = (bucket, label, object, action) => {
|
|
108256
108306
|
const count3 = bucket ? totalOf(bucket.groups) : 0;
|
|
@@ -108259,8 +108309,7 @@ function AxisMatrix({
|
|
|
108259
108309
|
const detail = bucket.groups.map((group2) => `${sceneLabel(group2.scene)} ${group2.count} \u6761`).join("\uFF0C");
|
|
108260
108310
|
const full2 = `${label}\uFF1A${count3} \u6761${unitLabel}\uFF08${detail}\uFF09`;
|
|
108261
108311
|
const on = cellOn(object, action);
|
|
108262
|
-
|
|
108263
|
-
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
108312
|
+
const total = onPickCell ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
108264
108313
|
"button",
|
|
108265
108314
|
{
|
|
108266
108315
|
type: "button",
|
|
@@ -108270,7 +108319,37 @@ function AxisMatrix({
|
|
|
108270
108319
|
onClick: () => onPickCell({ object, action }),
|
|
108271
108320
|
children: text
|
|
108272
108321
|
}
|
|
108273
|
-
);
|
|
108322
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: styles.trialMatrixLoose, title: full2, children: text });
|
|
108323
|
+
const breakdown = bucket.breakdown?.filter((item) => item.count > 0) ?? [];
|
|
108324
|
+
if (breakdown.length === 0) return total;
|
|
108325
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("span", { className: styles.trialMatrixLooseStack, children: [
|
|
108326
|
+
total,
|
|
108327
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: styles.trialMatrixBreakdown, role: "group", "aria-label": `${label} \u7C7B\u578B\u6570\u91CF`, children: breakdown.map((item) => {
|
|
108328
|
+
const selected = on && selection?.cell?.breakdownId === item.id;
|
|
108329
|
+
const itemTitle = `${label}\uFF1A${item.title} ${item.count} \u5F20 Wiki`;
|
|
108330
|
+
return onPickBreakdown ? /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
108331
|
+
"button",
|
|
108332
|
+
{
|
|
108333
|
+
type: "button",
|
|
108334
|
+
className: cn(styles.trialMatrixBreakdownItem, styles.trialMatrixBreakdownPick, selected && styles.trialMatrixBreakdownOn),
|
|
108335
|
+
title: selected ? `${itemTitle} \u2014\u2014 \u518D\u70B9\u4E00\u6B21\u53D6\u6D88` : `${itemTitle} \u2014\u2014 \u70B9\u5B83\u53EA\u770B\u6B64\u7C7B Wiki`,
|
|
108336
|
+
"aria-label": itemTitle,
|
|
108337
|
+
"aria-pressed": selected,
|
|
108338
|
+
onClick: () => onPickBreakdown({ object, action }, item.id),
|
|
108339
|
+
children: [
|
|
108340
|
+
item.label,
|
|
108341
|
+
" ",
|
|
108342
|
+
item.count
|
|
108343
|
+
]
|
|
108344
|
+
},
|
|
108345
|
+
item.id
|
|
108346
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("span", { className: styles.trialMatrixBreakdownItem, title: `${item.title}\uFF1A${item.count} \u5F20 Wiki`, children: [
|
|
108347
|
+
item.label,
|
|
108348
|
+
" ",
|
|
108349
|
+
item.count
|
|
108350
|
+
] }, item.id);
|
|
108351
|
+
}) })
|
|
108352
|
+
] });
|
|
108274
108353
|
};
|
|
108275
108354
|
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("section", { className: cn(styles.trialMatrix, !frame2 && styles.trialMatrixPlain), children: [
|
|
108276
108355
|
/* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: styles.blockHead, children: [
|
|
@@ -108297,7 +108376,9 @@ function AxisMatrix({
|
|
|
108297
108376
|
ariaLabel,
|
|
108298
108377
|
"\u3002\u884C\u662F\u5BF9\u8C61\uFF0C\u5217\u662F\u52A8\u4F5C\uFF0C\u683C\u5B50\u91CC\u662F",
|
|
108299
108378
|
unitLabel,
|
|
108300
|
-
"\u603B\u6570\uFF1B\u9009\u4E2D\u683C\u5B50\u540E\u6309\u573A\u666F\u5C55\u5F00\u3002
|
|
108379
|
+
"\u603B\u6570\uFF1B\u9009\u4E2D\u683C\u5B50\u540E\u6309\u573A\u666F\u5C55\u5F00\u3002",
|
|
108380
|
+
view.cells.some((cell) => cell.breakdown?.length) ? "\u683C\u5B50\u8FD8\u663E\u793A\u5B50\u7C7B\u8BA1\u6570\uFF1B\u70B9\u51FB\u5B50\u7C7B\u8BA1\u6570\u53EF\u7B5B\u9009\u5BF9\u5E94\u7C7B\u578B\u3002" : "",
|
|
108381
|
+
"\u884C\u5934\u4E0E\u5217\u5934\u7684\u7B2C\u4E8C\u884C\uFF0C\u662F\u8FD9\u6839\u8F74\u4E0A\u6CA1\u6709\u53E6\u4E00\u6839\u8F74\u5750\u6807\u7684",
|
|
108301
108382
|
unitLabel,
|
|
108302
108383
|
"\u3002"
|
|
108303
108384
|
] }),
|
|
@@ -108980,25 +109061,6 @@ var import_react19 = require("react");
|
|
|
108980
109061
|
var import_react18 = require("react");
|
|
108981
109062
|
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
108982
109063
|
|
|
108983
|
-
// src/client/request.ts
|
|
108984
|
-
async function requestJson(url, init) {
|
|
108985
|
-
const response = await fetch(url, init);
|
|
108986
|
-
const text = await response.text();
|
|
108987
|
-
if (!text.trim()) throw new Error(`\u670D\u52A1\u7AEF\u8FD4\u56DE\u7A7A\u54CD\u5E94\uFF08HTTP ${response.status}\uFF09`);
|
|
108988
|
-
let payload;
|
|
108989
|
-
try {
|
|
108990
|
-
payload = JSON.parse(text);
|
|
108991
|
-
} catch {
|
|
108992
|
-
throw new Error(`\u670D\u52A1\u7AEF\u8FD4\u56DE\u4E86\u65E0\u6548\u54CD\u5E94\uFF08HTTP ${response.status}\uFF09`);
|
|
108993
|
-
}
|
|
108994
|
-
const error2 = payload.error;
|
|
108995
|
-
if (!response.ok || payload.ok === false) {
|
|
108996
|
-
const detail = [error2?.code, error2?.message].filter(Boolean).join(" \xB7 ") || `\u8BF7\u6C42\u5931\u8D25\uFF08${response.status}\uFF09`;
|
|
108997
|
-
throw new Error(error2?.suggestion ? `${detail} \u2014 ${error2.suggestion}` : detail);
|
|
108998
|
-
}
|
|
108999
|
-
return payload;
|
|
109000
|
-
}
|
|
109001
|
-
|
|
109002
109064
|
// src/client/RecallPanel.tsx
|
|
109003
109065
|
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
109004
109066
|
function LedgerList({ rows, scoreLabel, droppedLabel, emptyLabel }) {
|
|
@@ -109016,32 +109078,18 @@ function LedgerList({ rows, scoreLabel, droppedLabel, emptyLabel }) {
|
|
|
109016
109078
|
] }) }, row2.unitId);
|
|
109017
109079
|
}) });
|
|
109018
109080
|
}
|
|
109019
|
-
var QUERY_INTENT_LABEL = {
|
|
109020
|
-
lookup: "\u67E5\u4E8B\u5B9E",
|
|
109021
|
-
explain: "\u89E3\u91CA\u6982\u5FF5",
|
|
109022
|
-
procedure: "\u6267\u884C\u6B65\u9AA4",
|
|
109023
|
-
troubleshoot: "\u6392\u67E5\u95EE\u9898",
|
|
109024
|
-
compare: "\u6BD4\u8F83\u5DEE\u5F02",
|
|
109025
|
-
unknown: "\u672A\u8BC6\u522B"
|
|
109026
|
-
};
|
|
109027
109081
|
var QUERY_AXIS_LABEL = { object: "Object", action: "Action", scene: "Scene" };
|
|
109028
109082
|
function QueryAnalysisSummary({ analysis }) {
|
|
109029
109083
|
const axisKinds = ["object", "action", "scene"];
|
|
109030
109084
|
const matchedCount = axisKinds.reduce((total, kind) => total + analysis.axes[kind].length, 0);
|
|
109031
|
-
return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("section", { className: styles.recallAnalysis, "aria-label": "\u672C\u6B21\u67E5\u8BE2\
|
|
109032
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.
|
|
109033
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.
|
|
109034
|
-
|
|
109035
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.
|
|
109036
|
-
|
|
109037
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { children: "Query \u2192 Intent + Object / Action / Scene" })
|
|
109038
|
-
] })
|
|
109039
|
-
] }),
|
|
109040
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("span", { className: styles.recallAnalysisIntent, children: [
|
|
109041
|
-
QUERY_INTENT_LABEL[analysis.intent.id] ?? analysis.intent.id,
|
|
109042
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("b", { children: analysis.intent.confidence.toFixed(2) })
|
|
109085
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("section", { className: styles.recallAnalysis, "aria-label": "\u672C\u6B21\u67E5\u8BE2\u5750\u6807\u89E3\u6790", children: [
|
|
109086
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: styles.recallAnalysisHead, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: styles.recallAnalysisTitle, children: [
|
|
109087
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(GitBranch, { size: 13 }),
|
|
109088
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { children: [
|
|
109089
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("h4", { children: "\u5750\u6807\u89E3\u6790" }),
|
|
109090
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { children: "Query \u2192 Object / Action / Scene" })
|
|
109043
109091
|
] })
|
|
109044
|
-
] }),
|
|
109092
|
+
] }) }),
|
|
109045
109093
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: styles.recallAnalysisAxes, children: axisKinds.map((kind) => {
|
|
109046
109094
|
const matches = analysis.axes[kind];
|
|
109047
109095
|
return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: styles.recallAnalysisAxis, children: [
|
|
@@ -109245,10 +109293,6 @@ function RecallPanel({ kbId, kbName, visible, variant = "recall", defaults, rese
|
|
|
109245
109293
|
const data2 = payload.data ?? {};
|
|
109246
109294
|
const queryAnalysis = data2.queryAnalysis === void 0 ? void 0 : {
|
|
109247
109295
|
query: data2.queryAnalysis.query ?? trimmed,
|
|
109248
|
-
intent: {
|
|
109249
|
-
id: data2.queryAnalysis.intent?.id ?? "unknown",
|
|
109250
|
-
confidence: Number(data2.queryAnalysis.intent?.confidence ?? 0)
|
|
109251
|
-
},
|
|
109252
109296
|
axes: {
|
|
109253
109297
|
object: data2.queryAnalysis.axes?.object ?? [],
|
|
109254
109298
|
action: data2.queryAnalysis.axes?.action ?? [],
|
|
@@ -111230,6 +111274,11 @@ function CompileStage({ title, note, children }) {
|
|
|
111230
111274
|
] });
|
|
111231
111275
|
}
|
|
111232
111276
|
|
|
111277
|
+
// src/source-identity.ts
|
|
111278
|
+
function newSourceId() {
|
|
111279
|
+
return `src_${globalThis.crypto.randomUUID()}`;
|
|
111280
|
+
}
|
|
111281
|
+
|
|
111233
111282
|
// src/client/TypeDefinitionDrawer.tsx
|
|
111234
111283
|
var import_react26 = require("react");
|
|
111235
111284
|
|
|
@@ -112258,13 +112307,30 @@ function cardMatrixOf(cards, lookup) {
|
|
|
112258
112307
|
const buckets = /* @__PURE__ */ new Map();
|
|
112259
112308
|
let noCoordinate = 0;
|
|
112260
112309
|
let sceneOnly = 0;
|
|
112261
|
-
|
|
112310
|
+
let factCount = 0;
|
|
112311
|
+
let wayCount = 0;
|
|
112312
|
+
let unclassifiedCount = 0;
|
|
112313
|
+
const add10 = (coordinate, wikiKind) => {
|
|
112262
112314
|
const key = JSON.stringify([coordinate.object, coordinate.action, coordinate.scene]);
|
|
112263
112315
|
const previous = buckets.get(key);
|
|
112264
|
-
if (previous)
|
|
112265
|
-
|
|
112316
|
+
if (previous) {
|
|
112317
|
+
previous.count += 1;
|
|
112318
|
+
if (wikiKind === "fact") previous.factCount += 1;
|
|
112319
|
+
else if (wikiKind === "way") previous.wayCount += 1;
|
|
112320
|
+
else previous.unclassifiedCount += 1;
|
|
112321
|
+
} else buckets.set(key, {
|
|
112322
|
+
...coordinate,
|
|
112323
|
+
count: 1,
|
|
112324
|
+
factCount: wikiKind === "fact" ? 1 : 0,
|
|
112325
|
+
wayCount: wikiKind === "way" ? 1 : 0,
|
|
112326
|
+
unclassifiedCount: wikiKind === "unclassified" ? 1 : 0
|
|
112327
|
+
});
|
|
112266
112328
|
};
|
|
112267
112329
|
for (const card of cards) {
|
|
112330
|
+
const wikiKind = card.metadata?.wiki_kind === "fact" || card.metadata?.wiki_kind === "way" ? card.metadata.wiki_kind : "unclassified";
|
|
112331
|
+
if (wikiKind === "fact") factCount += 1;
|
|
112332
|
+
else if (wikiKind === "way") wayCount += 1;
|
|
112333
|
+
else unclassifiedCount += 1;
|
|
112268
112334
|
const coordinate = card.coordinate;
|
|
112269
112335
|
if (coordinate === void 0) {
|
|
112270
112336
|
noCoordinate += 1;
|
|
@@ -112281,7 +112347,7 @@ function cardMatrixOf(cards, lookup) {
|
|
|
112281
112347
|
sceneOnly += 1;
|
|
112282
112348
|
continue;
|
|
112283
112349
|
}
|
|
112284
|
-
add10({ object, action, scene,
|
|
112350
|
+
add10({ object, action, scene }, wikiKind);
|
|
112285
112351
|
}
|
|
112286
112352
|
const totals = (pick3) => {
|
|
112287
112353
|
const result = /* @__PURE__ */ new Map();
|
|
@@ -112294,18 +112360,27 @@ function cardMatrixOf(cards, lookup) {
|
|
|
112294
112360
|
const rank2 = (values) => [...values.entries()].sort((left, right) => right[1] - left[1] || left[0].localeCompare(right[0])).map(([name]) => name);
|
|
112295
112361
|
const objects = rank2(totals((bucket) => bucket.object));
|
|
112296
112362
|
const actions = rank2(totals((bucket) => bucket.action));
|
|
112363
|
+
const breakdownFor = (selected) => [
|
|
112364
|
+
{ id: "fact", label: "F", title: "Wiki Fact", count: selected.reduce((sum, bucket) => sum + bucket.factCount, 0) },
|
|
112365
|
+
{ id: "way", label: "W", title: "Wiki Way", count: selected.reduce((sum, bucket) => sum + bucket.wayCount, 0) },
|
|
112366
|
+
{ id: "unclassified", label: "\u672A", title: "\u672A\u5F52\u7C7B Wiki", count: selected.reduce((sum, bucket) => sum + bucket.unclassifiedCount, 0) }
|
|
112367
|
+
].filter((item) => item.count > 0);
|
|
112297
112368
|
const groupsFor = (object, action) => [...buckets.values()].filter((bucket) => bucket.object === object && bucket.action === action).sort((left, right) => (left.scene === null ? -1 : right.scene === null ? 1 : 0) || (left.scene ?? "").localeCompare(right.scene ?? "")).map((bucket) => ({ scene: bucket.scene ?? "", count: bucket.count }));
|
|
112298
112369
|
const cells = objects.flatMap((object) => actions.flatMap((action) => {
|
|
112299
112370
|
const groups = groupsFor(object, action);
|
|
112300
|
-
|
|
112371
|
+
if (groups.length === 0) return [];
|
|
112372
|
+
const cellBuckets = [...buckets.values()].filter((bucket) => bucket.object === object && bucket.action === action);
|
|
112373
|
+
return [{ object, action, groups, breakdown: breakdownFor(cellBuckets) }];
|
|
112301
112374
|
}));
|
|
112302
112375
|
const noAction = objects.flatMap((object) => {
|
|
112303
112376
|
const groups = groupsFor(object, null);
|
|
112304
|
-
|
|
112377
|
+
const looseBuckets = [...buckets.values()].filter((bucket) => bucket.object === object && bucket.action === null);
|
|
112378
|
+
return groups.length > 0 ? [{ name: object, groups, breakdown: breakdownFor(looseBuckets) }] : [];
|
|
112305
112379
|
});
|
|
112306
112380
|
const noObject = actions.flatMap((action) => {
|
|
112307
112381
|
const groups = groupsFor(null, action);
|
|
112308
|
-
|
|
112382
|
+
const looseBuckets = [...buckets.values()].filter((bucket) => bucket.object === null && bucket.action === action);
|
|
112383
|
+
return groups.length > 0 ? [{ name: action, groups, breakdown: breakdownFor(looseBuckets) }] : [];
|
|
112309
112384
|
});
|
|
112310
112385
|
return {
|
|
112311
112386
|
view: {
|
|
@@ -112319,7 +112394,10 @@ function cardMatrixOf(cards, lookup) {
|
|
|
112319
112394
|
withKnowledge: cells.length,
|
|
112320
112395
|
unitLabel: "\u5361\u7247"
|
|
112321
112396
|
},
|
|
112322
|
-
sceneOnly
|
|
112397
|
+
sceneOnly,
|
|
112398
|
+
factCount,
|
|
112399
|
+
wayCount,
|
|
112400
|
+
unclassifiedCount
|
|
112323
112401
|
};
|
|
112324
112402
|
}
|
|
112325
112403
|
var DIRECT_READ_EXT = /* @__PURE__ */ new Set([".md", ".markdown", ".txt", ".json", ".tsv", ".csv", ".html"]);
|
|
@@ -112335,6 +112413,7 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
112335
112413
|
const [bases, setBases] = (0, import_react28.useState)([]);
|
|
112336
112414
|
const [activeId, setActiveId] = (0, import_react28.useState)("");
|
|
112337
112415
|
const [documents, setDocuments] = (0, import_react28.useState)([]);
|
|
112416
|
+
const [cardsBaseId, setCardsBaseId] = (0, import_react28.useState)("");
|
|
112338
112417
|
const [docRunCounts, setDocRunCounts] = (0, import_react28.useState)({});
|
|
112339
112418
|
const [docExtCounts, setDocExtCounts] = (0, import_react28.useState)({});
|
|
112340
112419
|
const [docQuery, setDocQuery] = (0, import_react28.useState)("");
|
|
@@ -112474,8 +112553,10 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
112474
112553
|
try {
|
|
112475
112554
|
const payload = await requestJson(`/knowledge/cards?kb=${encodeURIComponent(baseId)}`);
|
|
112476
112555
|
setCards(payload.data?.cards ?? []);
|
|
112556
|
+
setCardsBaseId(baseId);
|
|
112477
112557
|
} catch {
|
|
112478
112558
|
setCards([]);
|
|
112559
|
+
setCardsBaseId(baseId);
|
|
112479
112560
|
}
|
|
112480
112561
|
}, []);
|
|
112481
112562
|
const loadKnowledge = (0, import_react28.useCallback)(async (baseId) => {
|
|
@@ -112604,18 +112685,18 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
112604
112685
|
setBusy(null);
|
|
112605
112686
|
}
|
|
112606
112687
|
};
|
|
112607
|
-
const writeSource = async (title, content,
|
|
112688
|
+
const writeSource = async (title, content, sourceId) => {
|
|
112608
112689
|
const base2 = active;
|
|
112609
112690
|
if (!base2) throw new Error("\u8BF7\u5148\u9009\u62E9\u4E00\u4E2A\u77E5\u8BC6\u5E93");
|
|
112610
112691
|
const payload = await requestJson("/knowledge/sources", {
|
|
112611
112692
|
method: "POST",
|
|
112612
112693
|
headers: { "content-type": "application/json" },
|
|
112613
|
-
body: JSON.stringify({ kb: base2.id, title, external_id:
|
|
112694
|
+
body: JSON.stringify({ kb: base2.id, source_id: sourceId, title, external_id: `upload:${sourceId}`, content, allow_duplicate_title: true, metadata: { original_filename: title } })
|
|
112614
112695
|
});
|
|
112615
112696
|
const assets = payload.data?.assets;
|
|
112616
|
-
return assets !== void 0 && assets.missing > 0 && assets.missing === assets.refs ? [`\u6B63\u6587\u5F15\u7528\u7684 ${assets.refs} \u5F20\u56FE\u7247\u4E00\u5F20\u90FD\u6CA1\u8FDB\u5E93`] : [];
|
|
112697
|
+
return [...payload.warnings ?? [], ...assets !== void 0 && assets.missing > 0 && assets.missing === assets.refs ? [`\u6B63\u6587\u5F15\u7528\u7684 ${assets.refs} \u5F20\u56FE\u7247\u4E00\u5F20\u90FD\u6CA1\u8FDB\u5E93`] : []];
|
|
112617
112698
|
};
|
|
112618
|
-
const convertAndIngest = async (file, onNote) => {
|
|
112699
|
+
const convertAndIngest = async (file, sourceId, onNote) => {
|
|
112619
112700
|
const base2 = active;
|
|
112620
112701
|
if (!base2) throw new Error("\u8BF7\u5148\u9009\u62E9\u4E00\u4E2A\u77E5\u8BC6\u5E93");
|
|
112621
112702
|
const form = new FormData();
|
|
@@ -112639,7 +112720,7 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
112639
112720
|
const ingested = await requestJson("/convert/api/ingest", {
|
|
112640
112721
|
method: "POST",
|
|
112641
112722
|
headers: { "content-type": "application/json" },
|
|
112642
|
-
body: JSON.stringify({ task_id: taskId, kb: base2.id, title: file.name })
|
|
112723
|
+
body: JSON.stringify({ task_id: taskId, kb: base2.id, title: file.name, source_id: sourceId, allow_duplicate_title: true })
|
|
112643
112724
|
});
|
|
112644
112725
|
return ingested.warnings ?? [];
|
|
112645
112726
|
};
|
|
@@ -112689,6 +112770,7 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
112689
112770
|
if (files.length === 0 || importRunning || busy === "compile") return;
|
|
112690
112771
|
setImportItems((current2) => [...current2, ...files.map((file) => ({
|
|
112691
112772
|
id: `import-${importSeq.current++}`,
|
|
112773
|
+
sourceId: newSourceId(),
|
|
112692
112774
|
file,
|
|
112693
112775
|
name: file.name,
|
|
112694
112776
|
ext: (file.name.slice(file.name.lastIndexOf(".") + 1) || "").toLowerCase(),
|
|
@@ -112719,9 +112801,9 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
112719
112801
|
let notes = [];
|
|
112720
112802
|
if (DIRECT_READ_EXT.has(ext)) {
|
|
112721
112803
|
const content = await directReadText(item.file);
|
|
112722
|
-
notes = await writeSource(item.name, content,
|
|
112804
|
+
notes = await writeSource(item.name, content, item.sourceId);
|
|
112723
112805
|
} else {
|
|
112724
|
-
notes = await convertAndIngest(item.file, (note2) => patchImportItem(item.id, { note: note2 }));
|
|
112806
|
+
notes = await convertAndIngest(item.file, item.sourceId, (note2) => patchImportItem(item.id, { note: note2 }));
|
|
112725
112807
|
}
|
|
112726
112808
|
const note = notes.length === 0 ? void 0 : notes.join("\uFF1B");
|
|
112727
112809
|
patchImportItem(item.id, { stage: "ingested", ...note === void 0 ? { note: void 0 } : { note } });
|
|
@@ -112996,6 +113078,16 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
112996
113078
|
if (previewRequestRef.current === requestId) setCardLoading(false);
|
|
112997
113079
|
}
|
|
112998
113080
|
};
|
|
113081
|
+
const openedWikiFocusRef = (0, import_react28.useRef)(null);
|
|
113082
|
+
(0, import_react28.useEffect)(() => {
|
|
113083
|
+
if (!visible || focus3?.tab !== "wiki" || !focus3.wikiEntityId || !activeId || cardsBaseId !== activeId) return;
|
|
113084
|
+
const focusKey = `${focus3.nonce}:${activeId}:${focus3.wikiEntityId}`;
|
|
113085
|
+
if (openedWikiFocusRef.current === focusKey) return;
|
|
113086
|
+
const card = cards.find((item) => item.entityId === focus3.wikiEntityId && (focus3.wikiEntityType === void 0 || item.entityType === focus3.wikiEntityType));
|
|
113087
|
+
if (!card) return;
|
|
113088
|
+
openedWikiFocusRef.current = focusKey;
|
|
113089
|
+
void openCard(card);
|
|
113090
|
+
}, [visible, focus3?.tab, focus3?.nonce, focus3?.wikiEntityId, focus3?.wikiEntityType, activeId, cardsBaseId, cards]);
|
|
112999
113091
|
const compareCardVersion = async (entry) => {
|
|
113000
113092
|
const baseId = activeIdRef.current;
|
|
113001
113093
|
const current2 = cardDetail;
|
|
@@ -113199,7 +113291,8 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
113199
113291
|
if (hasObject && hasAction) {
|
|
113200
113292
|
const cell = {
|
|
113201
113293
|
object: cardMatrixFilter.objectId === "" ? null : axisLookup.nameOf("object", cardMatrixFilter.objectId),
|
|
113202
|
-
action: cardMatrixFilter.actionId === "" ? null : axisLookup.nameOf("action", cardMatrixFilter.actionId)
|
|
113294
|
+
action: cardMatrixFilter.actionId === "" ? null : axisLookup.nameOf("action", cardMatrixFilter.actionId),
|
|
113295
|
+
...cardMatrixFilter.wikiKind ? { breakdownId: cardMatrixFilter.wikiKind } : {}
|
|
113203
113296
|
};
|
|
113204
113297
|
return hasScene ? { cell, group: { ...cell, scene: cardMatrixFilter.sceneId === "" ? "" : axisLookup.nameOf("scene", cardMatrixFilter.sceneId) } } : { cell };
|
|
113205
113298
|
}
|
|
@@ -113217,7 +113310,17 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
113217
113310
|
};
|
|
113218
113311
|
const pickCardCell = (pick3) => {
|
|
113219
113312
|
const next = { objectId: cardAxisId("object", pick3.object), actionId: cardAxisId("action", pick3.action) };
|
|
113220
|
-
const same = cardMatrixFilter.objectId === next.objectId && cardMatrixFilter.actionId === next.actionId && cardMatrixFilter.sceneId === void 0;
|
|
113313
|
+
const same = cardMatrixFilter.objectId === next.objectId && cardMatrixFilter.actionId === next.actionId && cardMatrixFilter.sceneId === void 0 && cardMatrixFilter.wikiKind === void 0;
|
|
113314
|
+
setCardMatrixFilter(same ? {} : next);
|
|
113315
|
+
};
|
|
113316
|
+
const pickCardBreakdown = (pick3, breakdownId) => {
|
|
113317
|
+
if (breakdownId !== "fact" && breakdownId !== "way" && breakdownId !== "unclassified") return;
|
|
113318
|
+
const next = {
|
|
113319
|
+
objectId: cardAxisId("object", pick3.object),
|
|
113320
|
+
actionId: cardAxisId("action", pick3.action),
|
|
113321
|
+
wikiKind: breakdownId
|
|
113322
|
+
};
|
|
113323
|
+
const same = cardMatrixFilter.objectId === next.objectId && cardMatrixFilter.actionId === next.actionId && cardMatrixFilter.sceneId === void 0 && cardMatrixFilter.wikiKind === next.wikiKind;
|
|
113221
113324
|
setCardMatrixFilter(same ? {} : next);
|
|
113222
113325
|
};
|
|
113223
113326
|
const pickCardGroup = (pick3) => {
|
|
@@ -113226,18 +113329,18 @@ function KnowledgeBaseTab({ visible, onChanged, onActiveBaseChange, knowledge, f
|
|
|
113226
113329
|
actionId: cardAxisId("action", pick3.action),
|
|
113227
113330
|
sceneId: cardAxisId("scene", pick3.scene)
|
|
113228
113331
|
};
|
|
113229
|
-
const same = cardMatrixFilter.objectId === next.objectId && cardMatrixFilter.actionId === next.actionId && cardMatrixFilter.sceneId === next.sceneId;
|
|
113332
|
+
const same = cardMatrixFilter.objectId === next.objectId && cardMatrixFilter.actionId === next.actionId && cardMatrixFilter.sceneId === next.sceneId && cardMatrixFilter.wikiKind === void 0;
|
|
113230
113333
|
setCardMatrixFilter(same ? {} : next);
|
|
113231
113334
|
};
|
|
113232
113335
|
const pickCardAxis = (pick3) => {
|
|
113233
113336
|
const id3 = cardAxisId(pick3.axis, pick3.name);
|
|
113234
|
-
const same = pick3.axis === "object" ? cardMatrixFilter.objectId === id3 && cardMatrixFilter.actionId === void 0 && cardMatrixFilter.sceneId === void 0 : cardMatrixFilter.actionId === id3 && cardMatrixFilter.objectId === void 0 && cardMatrixFilter.sceneId === void 0;
|
|
113337
|
+
const same = pick3.axis === "object" ? cardMatrixFilter.objectId === id3 && cardMatrixFilter.actionId === void 0 && cardMatrixFilter.sceneId === void 0 && cardMatrixFilter.wikiKind === void 0 : cardMatrixFilter.actionId === id3 && cardMatrixFilter.objectId === void 0 && cardMatrixFilter.sceneId === void 0 && cardMatrixFilter.wikiKind === void 0;
|
|
113235
113338
|
setCardMatrixFilter(same ? {} : pick3.axis === "object" ? { objectId: id3 } : { actionId: id3 });
|
|
113236
113339
|
};
|
|
113237
113340
|
const cardStatuses = (0, import_react28.useMemo)(() => [...new Set(cards.map((card) => card.status))].sort(), [cards]);
|
|
113238
113341
|
const visibleCards = (0, import_react28.useMemo)(() => {
|
|
113239
113342
|
const needle = cardQuery.trim().toLocaleLowerCase();
|
|
113240
|
-
return cards.filter((card) => (!cardStatus || card.status === cardStatus) && (cardMatrixFilter.objectId === void 0 || (card.coordinate?.objectId ?? "") === cardMatrixFilter.objectId) && (cardMatrixFilter.actionId === void 0 || (card.coordinate?.actionId ?? "") === cardMatrixFilter.actionId) && (cardMatrixFilter.sceneId === void 0 || (card.coordinate?.sceneId ?? "") === cardMatrixFilter.sceneId) && (!needle || `${card.title}
|
|
113343
|
+
return cards.filter((card) => (!cardStatus || card.status === cardStatus) && (cardMatrixFilter.objectId === void 0 || (card.coordinate?.objectId ?? "") === cardMatrixFilter.objectId) && (cardMatrixFilter.actionId === void 0 || (card.coordinate?.actionId ?? "") === cardMatrixFilter.actionId) && (cardMatrixFilter.sceneId === void 0 || (card.coordinate?.sceneId ?? "") === cardMatrixFilter.sceneId) && (cardMatrixFilter.wikiKind === void 0 || (cardMatrixFilter.wikiKind === "unclassified" ? card.metadata?.wiki_kind !== "fact" && card.metadata?.wiki_kind !== "way" : card.metadata?.wiki_kind === cardMatrixFilter.wikiKind)) && (!needle || `${card.title}
|
|
113241
113344
|
${card.entityId}
|
|
113242
113345
|
${card.summary ?? ""}`.toLocaleLowerCase().includes(needle)));
|
|
113243
113346
|
}, [cards, cardMatrixFilter, cardQuery, cardStatus]);
|
|
@@ -113359,23 +113462,24 @@ ${card.summary ?? ""}`.toLocaleLowerCase().includes(needle)));
|
|
|
113359
113462
|
{
|
|
113360
113463
|
view: cardMatrixView,
|
|
113361
113464
|
selection: cardMatrixSelection,
|
|
113362
|
-
ariaLabel: "
|
|
113465
|
+
ariaLabel: "Wiki \u77E9\u9635\uFF1A\u5BF9\u8C61 \xD7 \u52A8\u4F5C\uFF0C\u663E\u793A Wiki Fact \u4E0E Wiki Way \u6570\u91CF",
|
|
113363
113466
|
frame: false,
|
|
113364
113467
|
bounded: true,
|
|
113365
113468
|
onPickCell: pickCardCell,
|
|
113469
|
+
onPickBreakdown: pickCardBreakdown,
|
|
113366
113470
|
onPickGroup: pickCardGroup,
|
|
113367
113471
|
onPickAxis: pickCardAxis,
|
|
113368
113472
|
onExpand: () => setCardMatrixFull(true),
|
|
113369
113473
|
title: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
|
|
113370
|
-
"\
|
|
113474
|
+
"Wiki \u77E9\u9635",
|
|
113371
113475
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: styles.blockSub, children: "(\u5BF9\u8C61 \xD7 \u52A8\u4F5C \xD7 \u573A\u666F)" })
|
|
113372
113476
|
] }),
|
|
113373
|
-
note: "\
|
|
113477
|
+
note: "\u603B\u6570 + \u7C7B\u578B\u6570\uFF1AF = Wiki Fact \xB7 W = Wiki Way\uFF1B\u70B9\u7C7B\u578B\u6570\u7B5B\u9009",
|
|
113374
113478
|
meta: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
|
|
113375
|
-
|
|
113376
|
-
|
|
113377
|
-
|
|
113378
|
-
|
|
113479
|
+
"Fact ",
|
|
113480
|
+
cardMatrix.factCount,
|
|
113481
|
+
" \xB7 Way ",
|
|
113482
|
+
cardMatrix.wayCount
|
|
113379
113483
|
] }),
|
|
113380
113484
|
footer: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
|
|
113381
113485
|
cardMatrix.sceneOnly > 0 && /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("p", { className: styles.trialMore, children: [
|
|
@@ -113387,6 +113491,11 @@ ${card.summary ?? ""}`.toLocaleLowerCase().includes(needle)));
|
|
|
113387
113491
|
"\u53E6\u6709 ",
|
|
113388
113492
|
cardMatrixView.noCoordinate,
|
|
113389
113493
|
" \u5F20\u5361\u7247\u6CA1\u6709\u5750\u6807\u3002"
|
|
113494
|
+
] }),
|
|
113495
|
+
cardMatrix.unclassifiedCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("p", { className: styles.trialMore, children: [
|
|
113496
|
+
"\u5176\u4E2D\u6709 ",
|
|
113497
|
+
cardMatrix.unclassifiedCount,
|
|
113498
|
+
" \u5F20 Wiki \u5C1A\u672A\u5F52\u7C7B\u4E3A Fact \u6216 Way\uFF1B\u70B9\u51FB\u683C\u5185\u201C\u672A\u201D\u53EF\u7B5B\u9009\u6709\u5750\u6807\u7684\u672A\u5F52\u7C7B Wiki\u3002"
|
|
113390
113499
|
] })
|
|
113391
113500
|
] })
|
|
113392
113501
|
}
|
|
@@ -113395,10 +113504,10 @@ ${card.summary ?? ""}`.toLocaleLowerCase().includes(needle)));
|
|
|
113395
113504
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: styles.kbCardHead, children: [
|
|
113396
113505
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("h3", { children: [
|
|
113397
113506
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(FileText, { size: 13 }),
|
|
113398
|
-
"
|
|
113507
|
+
"Wiki"
|
|
113399
113508
|
] }) }),
|
|
113400
113509
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("span", { className: styles.kbCardActions, children: [
|
|
113401
|
-
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: styles.kbCount, children: visibleCards.length === cards.length ? `${cards.length} \u5F20` : `\u7B5B\u51FA ${visibleCards.length} / ${cards.length} \u5F20` }),
|
|
113510
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: styles.kbCount, children: visibleCards.length === cards.length ? `${cards.length} \u5F20 Wiki` : `\u7B5B\u51FA ${visibleCards.length} / ${cards.length} \u5F20 Wiki` }),
|
|
113402
113511
|
onOpenSettings && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(SettingsChip, { target: "build", onOpen: onOpenSettings })
|
|
113403
113512
|
] })
|
|
113404
113513
|
] }),
|
|
@@ -113430,7 +113539,7 @@ ${card.summary ?? ""}`.toLocaleLowerCase().includes(needle)));
|
|
|
113430
113539
|
] }),
|
|
113431
113540
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Dialog2, { open: cardMatrixFull, onOpenChange: setCardMatrixFull, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(DialogContent3, { className: styles.matrixDialog, children: [
|
|
113432
113541
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(DialogHeader2, { children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(DialogTitle4, { className: styles.matrixDialogTitle, children: [
|
|
113433
|
-
"\
|
|
113542
|
+
"Wiki \u77E9\u9635",
|
|
113434
113543
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: styles.blockSub, children: "(\u5BF9\u8C61 \xD7 \u52A8\u4F5C \xD7 \u573A\u666F)" })
|
|
113435
113544
|
] }) }),
|
|
113436
113545
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: styles.matrixDialogBody, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
@@ -113438,21 +113547,22 @@ ${card.summary ?? ""}`.toLocaleLowerCase().includes(needle)));
|
|
|
113438
113547
|
{
|
|
113439
113548
|
view: cardMatrixView,
|
|
113440
113549
|
selection: cardMatrixSelection,
|
|
113441
|
-
ariaLabel: "
|
|
113550
|
+
ariaLabel: "Wiki \u77E9\u9635\uFF1A\u5BF9\u8C61 \xD7 \u52A8\u4F5C\uFF0C\u663E\u793A Wiki Fact \u4E0E Wiki Way \u6570\u91CF\uFF08\u5168\u5C4F\uFF09",
|
|
113442
113551
|
frame: false,
|
|
113443
113552
|
onPickCell: pickCardCell,
|
|
113553
|
+
onPickBreakdown: pickCardBreakdown,
|
|
113444
113554
|
onPickGroup: pickCardGroup,
|
|
113445
113555
|
onPickAxis: pickCardAxis,
|
|
113446
113556
|
title: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
|
|
113447
|
-
"\
|
|
113557
|
+
"Wiki \u77E9\u9635",
|
|
113448
113558
|
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: styles.blockSub, children: "(\u5BF9\u8C61 \xD7 \u52A8\u4F5C \xD7 \u573A\u666F)" })
|
|
113449
113559
|
] }),
|
|
113450
|
-
note: "\
|
|
113560
|
+
note: "\u603B\u6570 + \u7C7B\u578B\u6570\uFF1AF = Wiki Fact \xB7 W = Wiki Way\uFF1B\u70B9\u7C7B\u578B\u6570\u7B5B\u9009",
|
|
113451
113561
|
meta: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
|
|
113452
|
-
|
|
113453
|
-
|
|
113454
|
-
|
|
113455
|
-
|
|
113562
|
+
"Fact ",
|
|
113563
|
+
cardMatrix.factCount,
|
|
113564
|
+
" \xB7 Way ",
|
|
113565
|
+
cardMatrix.wayCount
|
|
113456
113566
|
] })
|
|
113457
113567
|
}
|
|
113458
113568
|
) })
|
|
@@ -114195,361 +114305,10 @@ function Names({ label, names }) {
|
|
|
114195
114305
|
] });
|
|
114196
114306
|
}
|
|
114197
114307
|
|
|
114198
|
-
//
|
|
114199
|
-
var import_react30 = require("react");
|
|
114200
|
-
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
114201
|
-
async function getJson(url) {
|
|
114202
|
-
const response = await fetch(url);
|
|
114203
|
-
const text = await response.text();
|
|
114204
|
-
if (!text.trim()) throw new Error(`\u670D\u52A1\u7AEF\u8FD4\u56DE\u7A7A\u54CD\u5E94\uFF08HTTP ${response.status}\uFF09`);
|
|
114205
|
-
const payload = JSON.parse(text);
|
|
114206
|
-
if (!response.ok || payload.ok === false) throw new Error(payload.error?.message ?? `\u8BF7\u6C42\u5931\u8D25\uFF08${response.status}\uFF09`);
|
|
114207
|
-
if (payload.data === void 0) throw new Error("\u54CD\u5E94\u7F3A\u5C11 data");
|
|
114208
|
-
return payload.data;
|
|
114209
|
-
}
|
|
114210
|
-
function formatTime3(value) {
|
|
114211
|
-
if (!value) return "\u2014";
|
|
114212
|
-
const date = new Date(value);
|
|
114213
|
-
if (Number.isNaN(date.getTime())) return "\u2014";
|
|
114214
|
-
return date.toLocaleTimeString("zh-CN", { hour: "2-digit", minute: "2-digit", second: "2-digit" });
|
|
114215
|
-
}
|
|
114216
|
-
var ACT_LABEL = {
|
|
114217
|
-
query: "\u67E5\u8BE2",
|
|
114218
|
-
request: "\u6267\u884C\u8BF7\u6C42",
|
|
114219
|
-
inform: "\u8865\u5145\u4FE1\u606F",
|
|
114220
|
-
confirm: "\u786E\u8BA4",
|
|
114221
|
-
select: "\u9009\u62E9",
|
|
114222
|
-
correct: "\u7EA0\u6B63",
|
|
114223
|
-
cancel: "\u53D6\u6D88",
|
|
114224
|
-
review: "\u5BA1\u9605",
|
|
114225
|
-
explain: "\u89E3\u91CA",
|
|
114226
|
-
compare: "\u5BF9\u6BD4",
|
|
114227
|
-
recommend: "\u63A8\u8350",
|
|
114228
|
-
resume: "\u7EE7\u7EED",
|
|
114229
|
-
reject: "\u62D2\u7EDD",
|
|
114230
|
-
greet: "\u95EE\u5019",
|
|
114231
|
-
chat: "\u95F2\u804A",
|
|
114232
|
-
unknown: "\u672A\u5224\u5B9A"
|
|
114233
|
-
};
|
|
114234
|
-
var CATEGORY_LABEL = {
|
|
114235
|
-
data_analysis: "\u6570\u636E\u5206\u6790",
|
|
114236
|
-
metadata_exploration: "\u5143\u6570\u636E\u63A2\u7D22",
|
|
114237
|
-
data_validation: "\u6570\u636E\u6821\u9A8C",
|
|
114238
|
-
knowledge_consultation: "\u77E5\u8BC6\u54A8\u8BE2",
|
|
114239
|
-
knowledge_building: "\u77E5\u8BC6\u6784\u5EFA",
|
|
114240
|
-
document_research: "\u6587\u6863\u7814\u7A76",
|
|
114241
|
-
message_collaboration: "\u6D88\u606F\u534F\u4F5C",
|
|
114242
|
-
artifact_delivery: "\u4EA7\u7269\u4EA4\u4ED8",
|
|
114243
|
-
agent_engineering: "Agent \u5DE5\u7A0B",
|
|
114244
|
-
tooling_operations: "\u5DE5\u5177\u8FD0\u7EF4",
|
|
114245
|
-
personal_assistant: "\u4E2A\u4EBA\u52A9\u7406",
|
|
114246
|
-
conversation: "\u666E\u901A\u5BF9\u8BDD"
|
|
114247
|
-
};
|
|
114248
|
-
function humanize(value, labels) {
|
|
114249
|
-
if (!value) return void 0;
|
|
114250
|
-
return labels[value] ?? value.replaceAll("_", " ");
|
|
114251
|
-
}
|
|
114252
|
-
function relationLabel(value) {
|
|
114253
|
-
if (value === "subtask_of") return "\u7EE7\u7EED\u5F53\u524D\u4EFB\u52A1";
|
|
114254
|
-
if (value === "new_task") return "\u5F00\u542F\u65B0\u4EFB\u52A1";
|
|
114255
|
-
return "\u4EFB\u52A1\u5173\u7CFB\u672A\u5224\u5B9A";
|
|
114256
|
-
}
|
|
114257
|
-
function intentTitle(record) {
|
|
114258
|
-
const act = humanize(record.act, ACT_LABEL) ?? "\u672A\u5224\u5B9A";
|
|
114259
|
-
const category = humanize(record.category, CATEGORY_LABEL);
|
|
114260
|
-
return category ? `${act} \xB7 ${category}` : act;
|
|
114261
|
-
}
|
|
114262
|
-
var SOURCE_LABEL = { model: "\u6A21\u578B\u5224\u65AD", fallback: "\u7CFB\u7EDF\u515C\u5E95" };
|
|
114263
|
-
function filterOptions(records, field, labels, allLabel) {
|
|
114264
|
-
const values = new Set(records.flatMap((record) => {
|
|
114265
|
-
const value = record[field];
|
|
114266
|
-
return value ? [value] : [];
|
|
114267
|
-
}));
|
|
114268
|
-
const known = Object.keys(labels).filter((value) => values.has(value));
|
|
114269
|
-
const unknown = [...values].filter((value) => !(value in labels)).sort();
|
|
114270
|
-
return [
|
|
114271
|
-
{ value: "", label: allLabel },
|
|
114272
|
-
...[...known, ...unknown].map((value) => ({ value, label: humanize(value, labels) ?? value }))
|
|
114273
|
-
];
|
|
114274
|
-
}
|
|
114275
|
-
function DiagnosticDetails({ record }) {
|
|
114276
|
-
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("details", { className: styles.intentDiagnostics, children: [
|
|
114277
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("summary", { children: "\u67E5\u770B\u8BCA\u65AD\u4FE1\u606F" }),
|
|
114278
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentDiagnosticsBody, children: [
|
|
114279
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114280
|
-
"\u5185\u90E8\u5206\u7C7B\uFF1A",
|
|
114281
|
-
record.act,
|
|
114282
|
-
record.category ? ` \xB7 ${record.category}` : ""
|
|
114283
|
-
] }),
|
|
114284
|
-
record.predicate && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114285
|
-
"\u8DEF\u7531\u8C13\u8BCD\uFF1A",
|
|
114286
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("code", { children: record.predicate })
|
|
114287
|
-
] }),
|
|
114288
|
-
record.confidence !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114289
|
-
"\u7F6E\u4FE1\u5EA6\uFF1A",
|
|
114290
|
-
record.confidence.toFixed(2),
|
|
114291
|
-
record.lowConfidence ? "\uFF08\u4F4E\u4E8E\u9608\u503C\uFF09" : ""
|
|
114292
|
-
] }),
|
|
114293
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114294
|
-
"\u6765\u6E90\uFF1A",
|
|
114295
|
-
SOURCE_LABEL[record.source]
|
|
114296
|
-
] }),
|
|
114297
|
-
record.lineage.taskId && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114298
|
-
"\u4EFB\u52A1 ID\uFF1A",
|
|
114299
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("code", { children: record.lineage.taskId })
|
|
114300
|
-
] }),
|
|
114301
|
-
record.lineage.subtaskId && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114302
|
-
"\u5B50\u4EFB\u52A1 ID\uFF1A",
|
|
114303
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("code", { children: record.lineage.subtaskId })
|
|
114304
|
-
] })
|
|
114305
|
-
] })
|
|
114306
|
-
] });
|
|
114307
|
-
}
|
|
114308
|
-
function Interpretation({ record }) {
|
|
114309
|
-
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Card, { className: styles.intentInterpretation, children: [
|
|
114310
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentSectionHead, children: [
|
|
114311
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { children: [
|
|
114312
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("h3", { children: "Agent \u662F\u8FD9\u6837\u7406\u89E3\u7684" }),
|
|
114313
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: styles.intentSectionSubhead, children: "\u6700\u65B0\u4E00\u6761\u5224\u65AD \xB7 \u6309\u65F6\u95F4\u5012\u5E8F" })
|
|
114314
|
-
] }),
|
|
114315
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("time", { dateTime: record.updatedAt, children: formatTime3(record.updatedAt) })
|
|
114316
|
-
] }),
|
|
114317
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentUserBlock, children: [
|
|
114318
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: styles.intentStepLabel, children: "\u7528\u6237\u539F\u8BDD" }),
|
|
114319
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: styles.intentUserInput, children: record.userInput.slice(0, 320) || "\uFF08\u65E0\u7528\u6237\u539F\u6587\uFF09" })
|
|
114320
|
-
] }),
|
|
114321
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentVerdict, children: [
|
|
114322
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentVerdictHead, children: [
|
|
114323
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: styles.intentStepLabel, children: "Agent \u5224\u65AD" }),
|
|
114324
|
-
record.lowConfidence && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: styles.intentLowConfidence, children: "\u9700\u8981\u590D\u6838" })
|
|
114325
|
-
] }),
|
|
114326
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("h4", { className: styles.intentResultTitle, children: intentTitle(record) }),
|
|
114327
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("p", { className: styles.intentResultText, children: [
|
|
114328
|
-
relationLabel(record.relation),
|
|
114329
|
-
"\u3002\u8FD9\u6761\u5224\u65AD",
|
|
114330
|
-
record.lowConfidence ? "\u7684\u628A\u63E1\u8F83\u4F4E\uFF0C\u5EFA\u8BAE\u590D\u6838\u3002" : "\u7528\u4E8E\u8BB0\u5F55\u672C\u8F6E\u5BF9\u8BDD\u8D70\u5411\u3002"
|
|
114331
|
-
] }),
|
|
114332
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentResultTags, children: [
|
|
114333
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Badge, { tone: record.lowConfidence ? "warning" : "blue", children: humanize(record.act, ACT_LABEL) ?? "\u672A\u5224\u5B9A" }),
|
|
114334
|
-
record.category && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Badge, { tone: "violet", children: humanize(record.category, CATEGORY_LABEL) })
|
|
114335
|
-
] })
|
|
114336
|
-
] }),
|
|
114337
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentMetaGrid, children: [
|
|
114338
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentMetaCell, children: [
|
|
114339
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u4EFB\u52A1\u5173\u7CFB" }),
|
|
114340
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: relationLabel(record.relation) })
|
|
114341
|
-
] }),
|
|
114342
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentMetaCell, children: [
|
|
114343
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u8BB0\u5F55\u6765\u6E90" }),
|
|
114344
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: SOURCE_LABEL[record.source] })
|
|
114345
|
-
] })
|
|
114346
|
-
] }),
|
|
114347
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(DiagnosticDetails, { record })
|
|
114348
|
-
] });
|
|
114349
|
-
}
|
|
114350
|
-
function HistoryItem({ record }) {
|
|
114351
|
-
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("li", { className: styles.intentHistoryItem, children: [
|
|
114352
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentHistoryPrimary, children: [
|
|
114353
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: intentTitle(record) }),
|
|
114354
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("time", { dateTime: record.updatedAt, children: [
|
|
114355
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Clock3, { size: 11 }),
|
|
114356
|
-
formatTime3(record.updatedAt)
|
|
114357
|
-
] })
|
|
114358
|
-
] }),
|
|
114359
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { children: record.userInput.slice(0, 180) || "\uFF08\u65E0\u7528\u6237\u539F\u6587\uFF09" }),
|
|
114360
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentHistoryMeta, children: [
|
|
114361
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: relationLabel(record.relation) }),
|
|
114362
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: SOURCE_LABEL[record.source] }),
|
|
114363
|
-
record.lowConfidence && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: styles.intentHistoryWarning, children: "\u9700\u590D\u6838" })
|
|
114364
|
-
] })
|
|
114365
|
-
] });
|
|
114366
|
-
}
|
|
114367
|
-
function IntentTab({ visible }) {
|
|
114368
|
-
const [sessions, setSessions] = (0, import_react30.useState)([]);
|
|
114369
|
-
const [sessionKey, setSessionKey] = (0, import_react30.useState)("");
|
|
114370
|
-
const [categoryFilter, setCategoryFilter] = (0, import_react30.useState)("");
|
|
114371
|
-
const [actFilter, setActFilter] = (0, import_react30.useState)("");
|
|
114372
|
-
const [store, setStore] = (0, import_react30.useState)(null);
|
|
114373
|
-
const [loading, setLoading] = (0, import_react30.useState)(false);
|
|
114374
|
-
const [error2, setError] = (0, import_react30.useState)(null);
|
|
114375
|
-
const [pageNotice, setPageNotice] = (0, import_react30.useState)(null);
|
|
114376
|
-
const load = (0, import_react30.useCallback)(async (preferred) => {
|
|
114377
|
-
setLoading(true);
|
|
114378
|
-
try {
|
|
114379
|
-
const overview = await getJson("/intent/overview");
|
|
114380
|
-
const list2 = overview.sessions ?? [];
|
|
114381
|
-
setSessions(list2);
|
|
114382
|
-
const key = preferred && list2.some((item) => item.sessionKey === preferred) ? preferred : list2[0]?.sessionKey ?? "";
|
|
114383
|
-
setSessionKey(key);
|
|
114384
|
-
setStore(key ? await getJson(`/intent/store?session_key=${encodeURIComponent(key)}`).then((payload) => payload.store) : null);
|
|
114385
|
-
setError(null);
|
|
114386
|
-
} catch (cause) {
|
|
114387
|
-
setError(cause instanceof Error ? cause.message : String(cause));
|
|
114388
|
-
} finally {
|
|
114389
|
-
setLoading(false);
|
|
114390
|
-
}
|
|
114391
|
-
}, []);
|
|
114392
|
-
(0, import_react30.useEffect)(() => {
|
|
114393
|
-
if (visible) void load(sessionKey || void 0);
|
|
114394
|
-
}, [visible]);
|
|
114395
|
-
const selectSession = async (key) => {
|
|
114396
|
-
setSessionKey(key);
|
|
114397
|
-
setCategoryFilter("");
|
|
114398
|
-
setActFilter("");
|
|
114399
|
-
setLoading(true);
|
|
114400
|
-
try {
|
|
114401
|
-
setStore((await getJson(`/intent/store?session_key=${encodeURIComponent(key)}`)).store);
|
|
114402
|
-
setError(null);
|
|
114403
|
-
} catch (cause) {
|
|
114404
|
-
setError(cause instanceof Error ? cause.message : String(cause));
|
|
114405
|
-
} finally {
|
|
114406
|
-
setLoading(false);
|
|
114407
|
-
}
|
|
114408
|
-
};
|
|
114409
|
-
const recent = store?.recent ?? [];
|
|
114410
|
-
const categoryOptions = (0, import_react30.useMemo)(() => filterOptions(recent, "category", CATEGORY_LABEL, "\u5168\u90E8\u610F\u56FE"), [recent]);
|
|
114411
|
-
const actOptions = (0, import_react30.useMemo)(() => filterOptions(recent, "act", ACT_LABEL, "\u5168\u90E8\u52A8\u4F5C"), [recent]);
|
|
114412
|
-
const filteredRecent = (0, import_react30.useMemo)(() => recent.filter((record) => (!categoryFilter || record.category === categoryFilter) && (!actFilter || record.act === actFilter)), [actFilter, categoryFilter, recent]);
|
|
114413
|
-
const latest = filteredRecent[0];
|
|
114414
|
-
const history = filteredRecent.slice(1);
|
|
114415
|
-
const hasFilter = Boolean(categoryFilter || actFilter);
|
|
114416
|
-
const auditStats = (0, import_react30.useMemo)(() => ({
|
|
114417
|
-
lowConfidence: filteredRecent.filter((record) => record.lowConfidence).length,
|
|
114418
|
-
fallback: filteredRecent.filter((record) => record.source === "fallback").length
|
|
114419
|
-
}), [filteredRecent]);
|
|
114420
|
-
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.viewStack, children: [
|
|
114421
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentTop, children: [
|
|
114422
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { children: [
|
|
114423
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("h2", { children: "\u610F\u56FE\u8BB0\u5F55" }),
|
|
114424
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { children: "\u5148\u770B\u610F\u56FE\u7ED3\u8BBA\uFF0C\u518D\u6838\u5BF9\u7528\u6237\u539F\u8BDD\u548C\u4EFB\u52A1\u5173\u7CFB\u3002\u8FD9\u91CC\u53EA\u505A\u5BA1\u8BA1\uFF0C\u4E0D\u53C2\u4E0E\u53EC\u56DE\u6216\u6267\u884C\u3002" })
|
|
114425
|
-
] }),
|
|
114426
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114427
|
-
InfoHint,
|
|
114428
|
-
{
|
|
114429
|
-
className: styles.kbToolbarHint,
|
|
114430
|
-
href: "/knowledge/pages/help/overview?node=intent",
|
|
114431
|
-
text: "\u67E5\u770B\u4F1A\u8BDD\u610F\u56FE\u4E0E\u53EC\u56DE\u67E5\u8BE2\u610F\u56FE\u7684\u8FB9\u754C",
|
|
114432
|
-
onOpenFailed: (message) => setPageNotice(message)
|
|
114433
|
-
}
|
|
114434
|
-
)
|
|
114435
|
-
] }),
|
|
114436
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentControls, children: [
|
|
114437
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentPrimaryFilter, children: [
|
|
114438
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentFilterHeading, children: [
|
|
114439
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: styles.intentControlLabel, children: "\u610F\u56FE" }),
|
|
114440
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("small", { children: "\u4F18\u5148\u7B5B\u9009" })
|
|
114441
|
-
] }),
|
|
114442
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114443
|
-
SelectMenu,
|
|
114444
|
-
{
|
|
114445
|
-
value: categoryFilter,
|
|
114446
|
-
onValueChange: setCategoryFilter,
|
|
114447
|
-
disabled: recent.length === 0,
|
|
114448
|
-
"aria-label": "\u6309\u610F\u56FE\u7B5B\u9009",
|
|
114449
|
-
options: categoryOptions
|
|
114450
|
-
}
|
|
114451
|
-
),
|
|
114452
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { className: styles.intentFilterCount, children: [
|
|
114453
|
-
filteredRecent.length,
|
|
114454
|
-
" \u6761"
|
|
114455
|
-
] })
|
|
114456
|
-
] }),
|
|
114457
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentSecondaryFilters, children: [
|
|
114458
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: styles.intentControlLabel, children: "\u52A8\u4F5C" }),
|
|
114459
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114460
|
-
SelectMenu,
|
|
114461
|
-
{
|
|
114462
|
-
value: actFilter,
|
|
114463
|
-
onValueChange: setActFilter,
|
|
114464
|
-
className: "w-full min-w-0",
|
|
114465
|
-
size: "sm",
|
|
114466
|
-
disabled: recent.length === 0,
|
|
114467
|
-
"aria-label": "\u6309\u52A8\u4F5C\u7B5B\u9009",
|
|
114468
|
-
options: actOptions
|
|
114469
|
-
}
|
|
114470
|
-
),
|
|
114471
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: styles.intentControlLabel, children: "\u4F1A\u8BDD" }),
|
|
114472
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114473
|
-
SelectMenu,
|
|
114474
|
-
{
|
|
114475
|
-
value: sessionKey,
|
|
114476
|
-
onValueChange: (next) => void selectSession(next),
|
|
114477
|
-
className: "w-full min-w-0",
|
|
114478
|
-
size: "sm",
|
|
114479
|
-
disabled: sessions.length === 0,
|
|
114480
|
-
"aria-label": "\u9009\u62E9\u610F\u56FE\u8BB0\u5F55\u4F1A\u8BDD",
|
|
114481
|
-
placeholder: sessions.length === 0 ? "\u8FD8\u6CA1\u6709\u4F1A\u8BDD\u8BB0\u5F55" : "\u9009\u62E9\u4F1A\u8BDD",
|
|
114482
|
-
options: sessions.map((item) => ({ value: item.sessionKey, label: `${item.sessionKey.slice(0, 18)} \xB7 ${item.recordCount} \u6761 \xB7 ${formatTime3(item.lastAt)}` }))
|
|
114483
|
-
}
|
|
114484
|
-
),
|
|
114485
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { variant: "ghost", size: "icon", title: "\u5237\u65B0", "aria-label": "\u5237\u65B0\u610F\u56FE\u8BB0\u5F55", onClick: () => void load(sessionKey), disabled: loading, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(RefreshCw, { size: 14 }) })
|
|
114486
|
-
] }),
|
|
114487
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentFilterSummary, "aria-live": "polite", children: [
|
|
114488
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114489
|
-
"\u5F53\u524D\u4F1A\u8BDD\u663E\u793A ",
|
|
114490
|
-
filteredRecent.length,
|
|
114491
|
-
" / ",
|
|
114492
|
-
recent.length,
|
|
114493
|
-
" \u6761"
|
|
114494
|
-
] }),
|
|
114495
|
-
categoryFilter && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Badge, { tone: "blue", children: humanize(categoryFilter, CATEGORY_LABEL) ?? categoryFilter }),
|
|
114496
|
-
actFilter && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Badge, { tone: "violet", children: humanize(actFilter, ACT_LABEL) ?? actFilter })
|
|
114497
|
-
] })
|
|
114498
|
-
] }),
|
|
114499
|
-
pageNotice !== null && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("p", { className: styles.kbNotice, role: "alert", children: [
|
|
114500
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(CircleAlert, { size: 13 }),
|
|
114501
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: pageNotice }),
|
|
114502
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { className: styles.kbNoticeClose, variant: "ghost", size: "icon", "aria-label": "\u5173\u95ED\u63D0\u793A", title: "\u5173\u95ED\u63D0\u793A", onClick: () => setPageNotice(null), children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(X, { size: 13 }) })
|
|
114503
|
-
] }),
|
|
114504
|
-
error2 && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("p", { className: styles.kbNotice, children: [
|
|
114505
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(CircleAlert, { size: 13 }),
|
|
114506
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: error2 })
|
|
114507
|
-
] }),
|
|
114508
|
-
latest ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Interpretation, { record: latest }) : /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Card, { className: styles.intentEmptyCard, children: [
|
|
114509
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(BrainCircuit, { size: 18 }),
|
|
114510
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: hasFilter ? "\u5F53\u524D\u7B5B\u9009\u4E0B\u6CA1\u6709\u5224\u65AD" : "\u8FD8\u6CA1\u6709\u53EF\u5C55\u793A\u7684\u5224\u65AD" }),
|
|
114511
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { children: hasFilter ? "\u8C03\u6574\u201C\u610F\u56FE\u201D\u6216\u201C\u52A8\u4F5C\u201D\u7B5B\u9009\u540E\u518D\u770B\u3002" : "\u9009\u62E9\u4E00\u4E2A\u6709\u8BB0\u5F55\u7684\u4F1A\u8BDD\u540E\uFF0C\u8FD9\u91CC\u4F1A\u663E\u793A\u7528\u6237\u539F\u8BDD\u548C Agent \u5224\u65AD\u3002" })
|
|
114512
|
-
] }),
|
|
114513
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("section", { className: styles.intentHistory, children: [
|
|
114514
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentSectionHead, children: [
|
|
114515
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { children: [
|
|
114516
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("h3", { children: "\u5386\u53F2\u5224\u65AD" }),
|
|
114517
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: styles.intentSectionSubhead, children: "\u5F53\u524D\u4F1A\u8BDD\u4E2D\u66F4\u65E9\u7684\u8BB0\u5F55" })
|
|
114518
|
-
] }),
|
|
114519
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { className: styles.intentSectionCount, children: [
|
|
114520
|
-
history.length,
|
|
114521
|
-
" \u6761"
|
|
114522
|
-
] })
|
|
114523
|
-
] }),
|
|
114524
|
-
history.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: styles.intentEmpty, children: hasFilter ? "\u5F53\u524D\u7B5B\u9009\u4E0B\u6CA1\u6709\u66F4\u65E9\u7684\u5224\u65AD\u3002" : latest ? "\u8FD9\u662F\u5F53\u524D\u4F1A\u8BDD\u7684\u7B2C\u4E00\u6761\u5224\u65AD\u3002" : "\u6682\u65E0\u5386\u53F2\u8BB0\u5F55\u3002" }) : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("ol", { className: styles.intentHistoryList, children: history.map((record) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(HistoryItem, { record }, record.id)) })
|
|
114525
|
-
] }),
|
|
114526
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.intentFooter, children: [
|
|
114527
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114528
|
-
"\u5171 ",
|
|
114529
|
-
filteredRecent.length,
|
|
114530
|
-
" \u6761\u5224\u65AD",
|
|
114531
|
-
hasFilter ? `\uFF08\u5F53\u524D\u4F1A\u8BDD ${recent.length} \u6761\uFF09` : ""
|
|
114532
|
-
] }),
|
|
114533
|
-
auditStats.lowConfidence > 0 && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114534
|
-
auditStats.lowConfidence,
|
|
114535
|
-
" \u6761\u9700\u8981\u590D\u6838"
|
|
114536
|
-
] }),
|
|
114537
|
-
auditStats.fallback > 0 && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114538
|
-
auditStats.fallback,
|
|
114539
|
-
" \u6761\u7CFB\u7EDF\u515C\u5E95"
|
|
114540
|
-
] }),
|
|
114541
|
-
store?.expiresAt && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
|
|
114542
|
-
"\u4FDD\u7559\u81F3 ",
|
|
114543
|
-
formatTime3(store.expiresAt)
|
|
114544
|
-
] })
|
|
114545
|
-
] })
|
|
114546
|
-
] });
|
|
114547
|
-
}
|
|
114548
|
-
|
|
114549
|
-
// data-domain-knowledge-css:/Users/fuzz/Documents/github/dsh-personal/packages/ui/lib/styles.css
|
|
114308
|
+
// data-domain-knowledge-css:/private/tmp/dsh-knowledge-alpha-release/packages/ui/lib/styles.css
|
|
114550
114309
|
var css2 = `/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
|
|
114551
|
-
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-leading:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer base{:where([class^=tita-],[class*=\\ tita-],[class^=docPage-],[class*=\\ docPage-]) :where(button,input,select,textarea,[role=button]){box-sizing:border-box;font:inherit;color:inherit;background-color:#0000;border:0 solid;margin:0;padding:0}}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid transparent;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:.5;--rdp-outside-opacity:.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:white;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50%);--rdp-range_end-color:white;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid transparent;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:.75;--rdp-weekday-padding:.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:.3s;--rdp-animation_timing:cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{box-sizing:border-box;position:relative}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{cursor:pointer;font:inherit;color:inherit;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);background:0 0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;white-space:nowrap;border:0;align-items:center;display:inline-flex;position:relative}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{cursor:pointer;font:inherit;color:inherit;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:relative}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform-origin:50%;transform:rotate(180deg)}.rdp-dropdowns{align-items:center;gap:var(--rdp-dropdown-gap);display:inline-flex;position:relative}.rdp-dropdown{z-index:2;opacity:0;appearance:none;width:100%;cursor:inherit;line-height:inherit;border:none;margin:0;padding:0;position:absolute;inset-block:0;inset-inline-start:0}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{height:var(--rdp-nav-height);align-content:center;font-size:large;font-weight:700;display:flex}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{height:var(--rdp-nav-height);inset-inline-start:0;display:inline-flex;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{height:var(--rdp-nav-height);inset-inline-end:0;justify-content:center;display:inline-flex;position:absolute;top:0}.rdp-months{gap:var(--rdp-months-gap);flex-wrap:wrap;max-width:fit-content;display:flex;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{height:var(--rdp-nav-height);align-items:center;display:flex;position:absolute;inset-block-start:0;inset-inline-end:0}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform);font-size:smaller;font-weight:500}.rdp-week_number{opacity:var(--rdp-week_number-opacity);height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align);font-size:small;font-weight:400}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}:root,body{--tita-ui-background:var(--tita-surface);--tita-ui-foreground:var(--tita-ink);--tita-ui-muted:var(--tita-ink-muted);--tita-ui-muted-background:var(--tita-surface-muted);--tita-ui-border:var(--tita-line);--tita-ui-border-strong:var(--tita-line-strong);--tita-ui-primary:var(--tita-primary);--tita-ui-primary-foreground:var(--tita-primary-foreground);--tita-ui-danger:var(--tita-danger)}.tita-topbar{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--tita-line);background-color:var(--tita-surface);min-height:30px;color:var(--tita-ink);-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding-inline:8px;display:flex}.tita-topbar input,.tita-topbar textarea,.tita-topbar .tita-objectPickerOption strong,.tita-topbar .tita-objectPickerOption small{-webkit-user-select:text;user-select:text}.tita-topbar .tita-uiButton-sm,.tita-versionInspect .tita-uiButton-sm{min-height:23px;padding-inline:7px;font-size:11px}.tita-versionInspect .tita-uiBadge{min-height:21px;padding-inline:7px;font-size:10.5px}.tita-topbarAnchor{min-width:0;display:inline-flex;position:relative}.tita-topbarGroup{align-items:center;gap:4px;min-width:0;display:inline-flex}.tita-topbarDivider{background-color:var(--tita-line);flex:none;width:1px;height:13px;margin-inline:2px}.tita-uiTabsList--segmented{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--tita-surface-muted);scrollbar-width:none;border-radius:7px;align-items:center;gap:2px;width:fit-content;max-width:100%;padding:2px;display:inline-flex;overflow-x:auto}.tita-uiTabsList--segmented::-webkit-scrollbar{display:none}.tita-uiTabsList--segmented .tita-uiTabsTrigger{--tw-font-weight:600;white-space:nowrap;min-height:28px;color:var(--tita-ink-faint);border-radius:5px;gap:5px;padding-block:4px;padding-inline:9px;font-size:11px;font-weight:600}.tita-uiTabsList--segmented .tita-uiTabsTrigger:hover{color:var(--tita-ink);background-color:#0000}.tita-uiTabsList--segmented .tita-uiTabsTrigger[data-state=active]{background-color:var(--tita-surface);color:var(--tita-ink);border-bottom-color:#0000;box-shadow:0 1px 2px #10182812}.tita-objectPicker{border-color:var(--tita-line-strong);text-align:left;background-color:#0000;align-items:center;gap:6px;min-width:0;max-width:240px;height:24px;display:inline-flex}.tita-objectPicker:hover:not(:disabled),.tita-objectPicker[aria-expanded=true]{border-color:var(--tita-line-strong);background-color:var(--tita-surface-muted)}.tita-objectPickerLabel{--tw-font-weight:var(--font-weight-semibold);font-size:11px;font-weight:var(--font-weight-semibold);color:var(--tita-ink-muted);flex:none}.tita-objectPicker strong{--tw-font-weight:var(--font-weight-bold);min-width:0;font-size:12px;font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap;color:#344054;overflow:hidden}.tita-objectPickerChevron{color:var(--tita-ink-muted);flex:none}.tita-filePickerCrumbs{align-items:center;gap:2px;min-height:22px;margin-top:12px;margin-bottom:6px;display:flex}.tita-filePickerCrumb{color:var(--tita-ink-muted);padding-inline:6px;font-size:11.5px}.tita-filePickerCrumb:disabled{cursor:default;color:var(--tita-ink);opacity:1}.tita-filePickerCrumbArrow{color:var(--tita-ink-faint);flex-shrink:0}.tita-filePickerHead,.tita-filePickerRow{grid-template-columns:minmax(0,1fr) 132px 132px 68px}.tita-filePickerHead{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--tita-line);color:var(--tita-ink-muted);padding-inline:8px;align-items:center;gap:10px;padding-bottom:4px;font-size:10.5px;display:grid}.tita-filePickerHeadSize{text-align:right}.tita-filePickerList{flex-direction:column;max-height:46vh;padding-block:4px;display:flex;overflow-y:auto}.tita-filePickerRow{cursor:pointer;border-style:var(--tw-border-style);text-align:left;background-color:#0000;border-width:0;border-radius:6px;align-items:center;gap:10px;width:100%;padding-block:5px;padding-inline:8px;display:grid}.tita-filePickerRow:hover:not(:disabled){background-color:var(--tita-surface-muted)}.tita-filePickerRow:disabled{cursor:not-allowed;opacity:.55}.tita-filePickerRowActive{background-color:var(--tita-primary-soft)}.tita-filePickerName{min-width:0;color:var(--tita-ink);align-items:center;gap:6px;font-size:12px;display:flex}.tita-filePickerNameText{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tita-filePickerWhen{color:var(--tita-ink-muted);font-variant-numeric:tabular-nums;font-size:11px}.tita-filePickerSize{text-align:right;color:var(--tita-ink-muted);font-variant-numeric:tabular-nums;font-size:11px}.tita-filePickerNote{color:var(--tita-ink-muted);align-items:center;gap:6px;margin:0;padding-block:10px;padding-inline:8px;font-size:11.5px;display:flex}.tita-filePickerNoteError{color:var(--tita-danger)}.tita-filePickerSpin{animation:.9s linear infinite tita-filePickerSpin}.tita-filePickerSpacer{flex:1}@keyframes tita-filePickerSpin{to{transform:rotate(360deg)}}.tita-objectPickerMenu{z-index:1003;border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line-strong);background-color:var(--color-white);width:min(355px,100vw - 32px);color:var(--tita-ink);--tw-shadow:0 12px 30px var(--tw-shadow-color,#10182821), 0 2px 7px var(--tw-shadow-color,#1018280f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-radius:10px;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.tita-objectPickerSearch{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--tita-line);color:var(--tita-ink-muted);align-items:center;gap:7px;padding-block:9px;padding-inline:12px;display:flex}.tita-objectPickerSearch .tita-uiInput{background-color:#0000;border-color:#0000;min-height:28px;padding:0}.tita-objectPickerSearch .tita-uiInput:focus-visible{--tw-outline-style:none;border-color:#0000;outline-style:none}.tita-objectPickerList{max-height:min(320px,46vh);padding:5px;overflow:auto}.tita-objectPickerEmpty{color:var(--tita-ink-muted);padding-block:14px;padding-inline:12px;font-size:12px}.tita-objectPickerRow{border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px;min-height:39px;display:flex}.tita-objectPickerRow:hover{background-color:var(--tita-surface-muted)}.tita-objectPickerRow-current{background-color:var(--tita-primary-soft)}.tita-objectPickerOption{cursor:pointer;border-style:var(--tw-border-style);text-align:left;--tw-leading:inherit;min-width:0;font-family:inherit;line-height:inherit;color:#475467;background-color:#0000;border-width:0;border-radius:8px;flex:1;align-items:center;gap:9px;padding-block:7px;padding-inline:9px;display:flex}.tita-objectPickerRow-current .tita-objectPickerOption{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--tita-primary-hover)}.tita-objectPickerOptionMain{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.tita-objectPickerOptionMain strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.tita-objectPickerOptionMain small{--tw-font-weight:var(--font-weight-medium);font-size:10px;font-weight:var(--font-weight-medium);color:var(--tita-ink-muted)}.tita-objectPickerCurrent{--tw-font-weight:var(--font-weight-bold);font-size:10px;font-weight:var(--font-weight-bold);color:var(--tita-primary-hover);flex:none}.tita-objectPickerMore{width:26px;min-width:26px;height:26px;color:var(--tita-ink-muted);flex:none;margin-right:4px}.tita-objectPickerActions{flex:100%;gap:5px;padding:0 5px 7px 9px;display:flex}.tita-objectPickerActions button{cursor:pointer;border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line-strong);background-color:var(--color-white);--tw-leading:inherit;height:26px;font-family:inherit;font-size:11px;line-height:inherit;--tw-font-weight:650;color:#344054;border-radius:6px;align-items:center;gap:5px;padding-inline:9px;font-weight:650;display:inline-flex}.tita-objectPickerActions button:hover:not(:disabled){border-color:var(--tita-primary-line);background-color:var(--tita-primary-soft);color:var(--tita-primary)}.tita-objectPickerActions button:disabled{cursor:not-allowed;opacity:.5}.tita-objectPickerActionsDanger{color:var(--tita-danger)!important}.tita-objectPickerActionsDanger:hover:not(:disabled){border-color:var(--tita-danger)!important;color:var(--tita-danger)!important;background-color:#fef3f2!important}.tita-objectPickerFooter{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--tita-line);padding-block:9px;padding-inline:12px;display:flex}.tita-objectPickerCreate{flex:1;justify-content:center}.tita-saveStatus{white-space:nowrap;align-items:center;gap:7px;margin-left:auto;padding-left:8px;display:inline-flex}.tita-saveStatusText{color:var(--tita-ink-muted);align-items:center;gap:6px;font-size:11px;display:inline-flex}.tita-saveStatusText i{background-color:var(--tita-ink-muted);border-radius:3.40282e38px;width:7px;height:7px}.tita-saveStatusText[data-state=saved] i{background-color:#12b76a}.tita-saveStatusText[data-state=loading] i,.tita-saveStatusText[data-state=saving] i{background-color:#f79009}.tita-saveStatusText[data-state=error],.tita-saveStatusText[data-state=conflict]{color:#b42318}.tita-saveStatusText[data-state=error] i,.tita-saveStatusText[data-state=conflict] i{background-color:#d92d20}.tita-saveStatusText[data-state=loading],.tita-saveStatusText[data-state=saving]{color:#b54708}.tita-uiDrawerOverlay{z-index:1000;background-color:var(--tita-scrim);--tw-backdrop-blur:blur(1px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);position:fixed;inset:0}.tita-uiDrawerContent{z-index:1001;border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--tita-line-strong);background-color:var(--color-white);width:min(400px,100vw);color:var(--tita-ink);--tw-shadow:-18px 0 44px var(--tw-shadow-color,#0f172a29);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;animation:.16s ease-out tita-uiDrawerIn;display:flex;position:fixed;top:0;bottom:0;right:0}.tita-uiDrawerContent:focus{--tw-outline-style:none;outline-style:none}@keyframes tita-uiDrawerIn{0%{opacity:.4;transform:translate(14px)}to{opacity:1;transform:translate(0)}}.tita-uiDrawerHeader{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--tita-line);justify-content:space-between;align-items:flex-start;gap:10px;padding:15px 44px 13px 18px;display:flex}.tita-uiDrawerClose{cursor:pointer;border-style:var(--tw-border-style);width:28px;height:28px;color:var(--tita-ink-muted);background-color:#0000;border-width:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:12px;right:12px}.tita-uiDrawerClose:hover{background-color:var(--tita-surface-muted);color:var(--tita-ink)}.tita-uiDrawerTitle{--tw-font-weight:var(--font-weight-bold);font-size:15px;font-weight:var(--font-weight-bold);color:var(--tita-ink);margin:0}.tita-uiDrawerDescription{color:var(--tita-ink-muted);margin-inline:0;margin-top:2px;margin-bottom:0;font-size:11px}.tita-uiDrawerBody{box-sizing:border-box;flex:1;width:100%;min-width:0;max-width:100%;min-height:0;padding-block:15px;padding-inline:18px;overflow:auto}.tita-uiDrawerFooter{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--tita-line);justify-content:flex-end;gap:7px;padding-block:12px;padding-inline:18px;display:flex}.tita-uiOpenNotice{z-index:1005;--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);max-width:min(560px,100vw - 32px);translate:var(--tw-translate-x) var(--tw-translate-y);border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-tone-amber-line);background-color:var(--tita-tone-amber-tint);--tw-leading:1.6;color:var(--tita-tone-amber);border-radius:10px;align-items:flex-start;gap:9px;padding-block:10px;padding-inline:12px;font-size:11.5px;line-height:1.6;animation:.14s ease-out tita-uiOpenNoticeIn;display:flex;position:fixed;bottom:18px;left:50%}@keyframes tita-uiOpenNoticeIn{0%{opacity:.4;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.tita-uiOpenNotice{animation:none}}.tita-uiOpenNotice>svg{flex:none;margin-top:2px}.tita-uiOpenNotice>span{flex:1;min-width:0}.tita-uiOpenNotice>span b{--tw-font-weight:700;font-weight:700}.tita-uiOpenNotice>span code{font-family:var(--font-mono);word-break:break-all;background:currentColor;border-radius:6px;margin-top:3px;padding-block:3px;padding-inline:6px;font-size:10.5px;display:block}@supports (color:color-mix(in lab, red, red)){.tita-uiOpenNotice>span code{background:color-mix(in srgb, currentColor 10%, transparent)}}.tita-uiOpenNoticeClose{border-style:var(--tw-border-style);color:inherit;opacity:.7;cursor:pointer;background-color:#0000;border-width:0;border-radius:6px;flex:none;padding:3px}.tita-uiOpenNoticeClose:hover{opacity:1}.tita-versionTimelineHead{--tw-font-weight:750;--tw-tracking:.04em;letter-spacing:.04em;color:var(--tita-ink-muted);margin-inline:0;margin-top:18px;margin-bottom:10px;font-size:11px;font-weight:750}.tita-versionList{margin:0;padding:0;list-style-type:none}.tita-versionItem{grid-template-columns:15px minmax(0,1fr);gap:8px;padding-bottom:9px;display:grid;position:relative}.tita-versionItem:last-child{padding-bottom:0}.tita-versionItem:before{background-color:var(--tita-line-strong);content:"";width:1px;position:absolute;top:13px;bottom:0;left:6px}.tita-versionItem:last-child:before{display:none}.tita-versionDot{z-index:1;border-style:var(--tw-border-style);background-color:#98a2b3;border-width:3px;border-color:#eaecf0;border-radius:3.40282e38px;width:13px;height:13px;margin-top:3px;position:relative}.tita-versionItem-current .tita-versionDot{border-color:var(--tita-primary-wash);background-color:var(--tita-primary)}.tita-versionItem-previewing .tita-versionDot{background-color:#d9880a;border-color:#fde3b3}.tita-versionItem-previewing:after{content:"";z-index:0;pointer-events:none;background-color:#fffaef;border-radius:7px;position:absolute;inset:-3px -7px 4px 23px;box-shadow:inset 0 0 0 1px #f2dfbc}.tita-versionItem-previewing .tita-versionBody{z-index:1;position:relative}.tita-versionBody{min-width:0}.tita-versionBody strong{color:#344054;font-size:12px;display:block}.tita-versionBody p{--tw-leading:1.55;color:#475467;margin-inline:0;margin-top:2px;margin-bottom:0;font-size:11px;line-height:1.55}.tita-versionBody small{color:var(--tita-ink-muted);font-size:10px}.tita-versionActions{flex-wrap:wrap;gap:2px;margin-top:3px;display:flex}.tita-versionEmpty{color:var(--tita-ink-muted);padding-block:16px;padding-inline:0;font-size:12px}.tita-versionGroup{display:block}.tita-versionGroupHead small{--tw-font-weight:500;color:var(--tita-ink-muted);font-size:10px;font-weight:500}.tita-versionGroupCount{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);margin-left:auto}.tita-versionGroupLabel{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--tita-surface-muted);--tw-font-weight:750;color:var(--tita-ink-muted);margin-inline:0;border-radius:7px;align-items:center;gap:6px;margin-top:16px;margin-bottom:10px;padding-block:7px;padding-inline:9px;font-size:11px;font-weight:750;display:flex}.tita-versionGroupLabel small{--tw-font-weight:500;font-size:10px;font-weight:500}.tita-versionDay{z-index:2;background-color:var(--color-white);--tw-font-weight:750;--tw-tracking:.04em;letter-spacing:.04em;color:var(--tita-ink-muted);margin-inline:0;margin-top:9px;margin-bottom:6px;padding-block:3px;font-size:10px;font-weight:750;position:sticky;top:-15px}.tita-versionRowHit-static{cursor:default}.tita-versionSummary{--tw-leading:1.5;color:#475467;margin-top:1px;font-size:11px;line-height:1.5;display:block}.tita-versionDetailHead{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.tita-versionDetailHead strong{--tw-font-weight:750;color:#344054;font-size:12px;font-weight:750}.tita-versionDetailHead small{color:var(--tita-ink-muted);font-size:10px}.tita-versionLinkButton{cursor:pointer;border-style:var(--tw-border-style);--tw-font-weight:650;color:var(--tita-primary);text-underline-offset:2px;background-color:#0000;border-width:0;align-items:center;gap:3px;margin:0;padding:0;font-size:11px;font-weight:650;display:inline-flex}.tita-versionLinkButton:hover:not(:disabled){text-decoration-line:underline}.tita-versionLinkButton:disabled{cursor:not-allowed;color:var(--tita-ink-muted);text-decoration-line:none}.tita-versionReplay{align-items:center;gap:10px;margin-top:8px;display:flex}.tita-versionReplayCount{color:var(--tita-ink-muted);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);font-size:10px}.tita-versionInspect{border-radius:var(--radius-tita-block);border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--tita-surface);flex-direction:column;gap:4px;padding-block:6px;padding-inline:10px;display:flex}.tita-versionInspectControls{align-items:center;gap:8px;display:flex}.tita-versionInspectDetail{align-items:center;min-width:0;display:flex}.tita-versionInspectVersus{--tw-font-weight:500;color:var(--tita-ink-muted);flex:none;font-size:12px;font-weight:500}.tita-versionInspectSpacer{flex:1}.tita-versionInspectSummary{--tw-leading:1;color:var(--tita-ink-muted);flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:12px;line-height:1;display:flex}.tita-versionPreviewBar{border-style:var(--tw-border-style);background-color:#fff8eb;border-width:1px;border-color:#f0d29e;border-radius:8px;flex-direction:column;gap:6px;padding-block:8px;padding-inline:12px;display:flex}.tita-versionPreviewHead{align-items:center;gap:9px;display:flex}.tita-versionPreviewTools{border-top-style:var(--tw-border-style);border-color:#f3e2c4;border-top-width:1px;flex-wrap:wrap;align-items:center;gap:6px 14px;padding-top:6px;display:flex}.tita-versionPreviewTools .tita-versionReplay{margin-top:0}.tita-versionPreviewMark{color:#a86412;background-color:#fdf0d5;border-radius:3.40282e38px;flex:none;place-items:center;width:22px;height:22px;display:grid}.tita-versionPreviewText{flex:1;min-width:0}.tita-versionPreviewText strong{color:#8a5210;font-size:12px;display:block}.tita-versionPreviewText small{color:var(--tita-ink-muted);margin-top:1px;font-size:10px;display:block}.tita-versionPreviewSwitch{white-space:nowrap;color:var(--tita-ink-muted);align-items:center;gap:6px;font-size:10px;display:flex}.tita-versionPreviewLegend{color:var(--tita-ink-muted);align-items:center;gap:10px;font-size:10px;display:flex}.tita-versionPreviewLegend span{align-items:center;gap:4px;display:inline-flex}.tita-versionPreviewLegend i{border-style:var(--tw-border-style);border-width:1px;border-radius:2px;width:9px;height:9px}.tita-versionPreviewLegend i.is-add{background-color:#e6f7ee;border-color:#a8dcc0}.tita-versionPreviewLegend i.is-modify{background-color:#fff5e0;border-color:#f0d29e}.tita-versionPreviewLegend i.is-remove{background-color:#fdeceb;border-color:#f0c9c4}.tita-versionPreviewChanges{color:#8a5210;font-size:11px}.tita-versionHead{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.tita-versionHead strong{--tw-font-weight:750;color:#344054;font-size:12px;font-weight:750}.tita-versionRevision{color:var(--tita-ink-muted);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);font-size:10px}.tita-versionMeta,.tita-versionIntent{color:var(--tita-ink-muted);margin-top:1px;font-size:10px;display:block}.tita-versionCompressed{color:#a86412;margin-top:1px;font-size:10px;display:block}.tita-versionItem-superseded .tita-versionSummary{color:var(--tita-ink-muted)}.tita-versionDot-user{background-color:#98a2b3;border-color:#eaecf0}.tita-versionDot-agent{border-color:var(--tita-primary-wash);background-color:var(--tita-primary)}.tita-versionBadge{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);--tw-font-weight:var(--font-weight-bold);min-height:18px;font-size:10px;font-weight:var(--font-weight-bold);white-space:nowrap;border-radius:3.40282e38px;align-items:center;padding-inline:6px;display:inline-flex}.tita-versionBadge-open{color:#a86412;background-color:#fff8eb;border-color:#f0d29e}.tita-versionBadge-committed{color:#137d59;background-color:#effaf4;border-color:#bfe8d5}.tita-versionBadge-restored{color:#2d64be;background-color:#f1f6ff;border-color:#c8dcff}.tita-versionBadge-superseded{border-color:var(--tita-line);background-color:var(--tita-surface-muted);color:var(--tita-ink-muted)}.tita-versionSteps{flex-direction:column;gap:2px;margin-top:4px;padding-left:1px;display:flex}.tita-versionStepHint{color:var(--tita-ink-muted);font-size:10px}.tita-versionStep span{--tw-leading:1.35;--tw-font-weight:650;font-size:10.5px;font-weight:650;line-height:1.35}.tita-versionStep small{--tw-leading:1.35;color:var(--tita-ink-faint);font-size:10px;line-height:1.35}.tita-uiDrawerContent-wide{width:min(820px,100vw)}.tita-uiDrawerResize{z-index:20;cursor:col-resize;touch-action:none;width:10px;position:absolute;top:0;bottom:0;left:0}.tita-uiDrawerResize:after{content:"";--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);width:2px;height:38px;translate:var(--tw-translate-x) var(--tw-translate-y);background-color:var(--tita-line-strong);opacity:0;border-radius:3.40282e38px;transition:opacity .15s;position:absolute;top:50%;left:4px}.tita-uiDrawerResize:hover:after,.tita-uiDrawerResize:focus-visible:after{opacity:1}.tita-uiDrawerResize:focus-visible{--tw-outline-style:none;outline-style:none}.tita-versionDiff{margin-top:12px}.tita-versionDiffBar{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.tita-versionDiffHead{--tw-font-weight:var(--font-weight-bold);font-size:11px;font-weight:var(--font-weight-bold);color:var(--tita-ink-muted);flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.tita-versionDiffStat{--tw-font-weight:650;border-radius:4px;padding-block:1px;padding-inline:5px;font-size:10px;font-weight:650}.tita-versionDiffStat-add{color:#137d59;background-color:#effaf4}.tita-versionDiffStat-remove{color:#b42318;background-color:#fef3f2}.tita-versionDiffStat-modify{color:#2d64be;background-color:#f1f6ff}.tita-versionDiffStat-structure{color:#a86412;background-color:#fff8eb}.tita-versionDiffSegmented{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);border-radius:6px;flex:none;display:inline-flex;overflow:hidden}.tita-versionDiffSegmented button{cursor:pointer;border-style:var(--tw-border-style);border-width:0;border-right-style:var(--tw-border-style);border-right-width:1px;border-color:var(--tita-line);background-color:var(--color-white);color:var(--tita-ink-muted);margin:0;padding-block:4px;padding-inline:9px;font-size:11px}.tita-versionDiffSegmented button:last-child{border-right-style:var(--tw-border-style);border-right-width:0}.tita-versionDiffSegmented button[aria-pressed=true],.tita-versionDiffSegmented button[aria-selected=true]{background-color:var(--tita-primary-soft);--tw-font-weight:650;color:var(--tita-primary-hover);font-weight:650}.tita-versionDiffSegmented small{color:var(--tita-ink-muted);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);margin-left:2px}.tita-versionDiffTabs{flex-wrap:wrap;margin-bottom:8px}.tita-versionDiff{flex-direction:column;gap:8px;display:flex}.tita-versionDiffItem{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--color-white);border-radius:7px;padding-block:8px;padding-inline:10px}.tita-versionDiffHunk,.tita-versionDiffTextSplit{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--color-white);border-radius:7px;overflow:hidden}.tita-versionDiff-fullText .tita-versionDiffTextSplit{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:min(65vh,680px);overflow:hidden auto}.tita-versionDiffTextSplitHead,.tita-versionDiffTextSplitRow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;display:grid}.tita-versionDiffTextSplitHead{--tw-font-weight:650;color:var(--tita-ink-muted);background-color:#f4f7fc;padding-block:5px;padding-inline:9px;font-size:10px;font-weight:650}.tita-versionDiff-fullText .tita-versionDiffTextSplitHead{z-index:1;position:sticky;top:0}.tita-versionDiffTextSplitRow{padding-block:1px;padding-inline:1px}.tita-versionDiffTextCell{--tw-leading:1.45;overflow-wrap:break-word;white-space:pre-wrap;min-width:0;min-height:24px;font-size:11px;line-height:1.45;font-family:var(--tita-mono,ui-monospace, Menlo, monospace);border-radius:3px;padding-block:4px;padding-inline:8px}.tita-versionDiffTextCell-before{color:#b42318;background-color:#fef3f2}.tita-versionDiffTextCell-after{color:#137d59;background-color:#effaf4}.tita-versionDiffTextCell-same{background-color:var(--color-white);color:var(--tita-ink-muted)}.tita-versionDiffTextCell-empty{background-color:#fbfcfd}.tita-versionDiffTextSkip{border-block-style:var(--tw-border-style);border-block-width:1px;border-color:var(--tita-line);color:var(--tita-ink-faint);background-color:#fbfcfd;grid-column:span 2/span 2;padding-block:4px;padding-inline:9px;font-size:10px}.tita-versionDiffHunkHead{color:#5b6b8c;font-size:10px;font-family:var(--tita-mono,ui-monospace, SFMono-Regular, Menlo, monospace);background-color:#f4f7fc;padding-block:3px;padding-inline:9px}.tita-versionDiffSkip{border-block-style:var(--tw-border-style);border-block-width:1px;border-color:var(--tita-line);color:var(--tita-ink-faint);background-color:#fbfcfd;padding-block:3px;padding-inline:9px;font-size:10px}.tita-versionDiffPair{grid-template-columns:64px minmax(0,1fr);align-items:flex-start;gap:6px;padding-block:2px;padding-inline:9px;display:grid}.tita-versionDiffCoord{color:var(--tita-ink-faint);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);font-size:10px;font-family:var(--tita-mono,ui-monospace, Menlo, monospace);padding-top:1px}.tita-versionDiffHunkLines{flex-direction:column;gap:1px;min-width:0;display:flex}.tita-versionDiffHunkLines .tita-versionDiffLine{overflow-wrap:break-word;white-space:pre-wrap;font-family:var(--tita-mono,ui-monospace, Menlo, monospace);border-radius:3px;padding-inline:5px}.tita-versionDiffSplit{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--color-white);border-radius:7px;overflow:hidden}.tita-versionDiffSplitHead,.tita-versionDiffSplitRow{grid-template-columns:62px minmax(0,1fr) minmax(0,1fr);gap:1px;display:grid}.tita-versionDiffSplitHead{color:var(--tita-ink-muted);background-color:#f4f7fc;padding-block:3px;padding-inline:9px;font-size:10px}.tita-versionDiffSplitRow{padding-block:2px;padding-inline:9px}.tita-versionDiffCell{overflow-wrap:break-word;white-space:pre-wrap;border-radius:3px;min-width:0;padding-block:1px;padding-inline:5px;font-size:11px}.tita-versionDiffCell-before{color:#b42318;background-color:#fef3f2}.tita-versionDiffCell-after{color:#137d59;background-color:#effaf4}.tita-versionDiffCell-empty{background-color:#0000}.tita-versionDiffTitle{align-items:center;gap:6px;display:flex}.tita-versionDiffTitle strong{word-break:break-all;color:#344054;font-size:11px}.tita-versionDiffKind{--tw-font-weight:750;text-transform:uppercase;border-radius:4px;padding-block:1px;padding-inline:5px;font-size:9px;font-weight:750}.tita-versionDiffKind-cell{color:#2d64be;background-color:#f1f6ff}.tita-versionDiffKind-variable{color:#634cc2;background-color:#f7f4ff}.tita-versionDiffKind-structure{color:#a86412;background-color:#fff8eb}.tita-versionDiffKind-metadata{background-color:var(--tita-surface-muted);color:var(--tita-ink-muted)}.tita-versionDiffKind-sheet{color:#137d59;background-color:#effaf4}.tita-versionDiffItem p{--tw-leading:1.55;color:#475467;margin-inline:0;margin-top:4px;margin-bottom:0;font-size:11px;line-height:1.55}.tita-versionDiffLines{background-color:var(--tita-surface-muted);font-family:var(--font-mono);--tw-leading:1.6;white-space:pre;margin-inline:0;border-radius:6px;margin-top:6px;margin-bottom:0;padding-block:7px;padding-inline:9px;font-size:10px;line-height:1.6;overflow:auto}.tita-versionDiffLine{display:block}.tita-versionDiffLine-add{color:#137d59;background-color:#effaf4}.tita-versionDiffLine-remove{color:#b42318;background-color:#fef3f2}.tita-versionDiffLine-same{color:var(--tita-ink-muted)}.tita-versionRestoreSummary{background-color:var(--tita-surface-muted);color:#475467;margin-inline:0;border-radius:7px;margin-top:12px;margin-bottom:0;padding-block:9px;padding-inline:11px;font-size:12px}.tita-versionSaveField{color:var(--tita-ink-muted);flex-direction:column;gap:6px;margin-top:14px;font-size:12px;display:flex}.tita-versionCompare{color:var(--tita-ink-muted);align-items:center;gap:8px;margin-top:12px;font-size:11px;display:flex}.tita-uiCalendar .rdp-root{--rdp-accent-color:var(--tita-primary);--rdp-accent-background-color:var(--tita-primary-soft);--rdp-day-height:34px;--rdp-day-width:34px;--rdp-day_button-border-radius:6px;--rdp-day_button-border:1px solid transparent;--rdp-day_button-height:32px;--rdp-day_button-width:32px;--rdp-selected-border:1px solid transparent;--rdp-nav-height:36px;--rdp-nav_button-height:28px;--rdp-nav_button-width:28px;--rdp-months-gap:14px;--rdp-range_middle-background-color:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){.tita-uiCalendar .rdp-root{--rdp-range_middle-background-color:color-mix(in srgb, var(--tita-primary) 12%, var(--tita-surface))}}.tita-uiCalendar .rdp-root{--rdp-range_start-date-background-color:var(--tita-primary);--rdp-range_end-date-background-color:var(--tita-primary);--rdp-today-color:var(--tita-primary);width:max-content;max-width:100%;color:var(--tita-ink);font-family:var(--tita-font);font-size:12px}.tita-uiCalendar .rdp-months{gap:var(--rdp-months-gap);flex-wrap:nowrap}.tita-uiCalendar .rdp-month_caption{height:var(--rdp-nav-height);align-items:center;font-size:12px;font-weight:650}.tita-uiCalendar .rdp-nav{height:var(--rdp-nav-height)}.tita-uiCalendar .rdp-button_previous,.tita-uiCalendar .rdp-button_next{color:var(--tita-ink-muted);border-radius:6px}.tita-uiCalendar .rdp-button_previous:hover,.tita-uiCalendar .rdp-button_next:hover{background:var(--tita-surface-muted);color:var(--tita-ink)}.tita-uiCalendar .rdp-button_previous:focus-visible,.tita-uiCalendar .rdp-button_next:focus-visible,.tita-uiCalendar .rdp-day_button:focus-visible{outline:2px solid var(--tita-focus-ring);outline-offset:1px}.tita-uiCalendar .rdp-chevron{fill:currentColor;color:var(--tita-ink-faint)}.tita-uiCalendar .rdp-weekday{color:var(--tita-ink-faint);padding:5px 0;font-size:10px;font-weight:550}.tita-uiCalendar .rdp-day_button{color:var(--tita-ink);font-size:11px}.tita-uiCalendar .rdp-day_button:hover:not(:disabled){background:var(--tita-surface-muted)}.tita-uiCalendar .rdp-today:not(.rdp-outside){color:var(--rdp-today-color);font-weight:700}.tita-uiCalendar .rdp-selected{font-size:12px;font-weight:650}.tita-uiCalendar .rdp-selected .rdp-day_button{color:var(--tita-primary-foreground);background-color:var(--tita-primary)}.tita-uiCalendar .rdp-selected .rdp-day_button:hover:not(:disabled){color:var(--tita-primary-foreground);background-color:var(--tita-primary-hover)}.tita-uiCalendar .rdp-today:not(.rdp-outside):not(.rdp-selected) .rdp-day_button{box-shadow:inset 0 0 0 1px var(--tita-primary)}.tita-uiCalendar .rdp-range_start .rdp-day_button,.tita-uiCalendar .rdp-range_end .rdp-day_button{color:var(--tita-primary-foreground)}.tita-uiCalendar .rdp-range_start .rdp-day_button:hover,.tita-uiCalendar .rdp-range_end .rdp-day_button:hover{background:var(--tita-primary-hover);color:var(--tita-primary-foreground)}.tita-uiCalendar .rdp-range_middle .rdp-day_button{color:var(--tita-ink);background-color:var(--rdp-range_middle-background-color)}.tita-uiCalendar .tl-calendar-range-preview-start{background:var(--rdp-range_start-background)}.tita-uiCalendar .tl-calendar-range-preview-middle{background:var(--rdp-range_middle-background-color)}.tita-uiCalendar .tl-calendar-range-preview-end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.tita-uiCalendar .tl-calendar-range-preview-start .rdp-day_button,.tita-uiCalendar .tl-calendar-range-preview-end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_start-date-background-color)}.tita-uiCalendar .tl-calendar-range-preview-middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}@media (prefers-reduced-motion:reduce){.tita-sortable-row{transition:none!important}}.tita-sortable-row .tita-sortable-handle.is-hover-reveal{opacity:0;transition:opacity .12s}.tita-sortable-row:hover .tita-sortable-handle.is-hover-reveal,.tita-sortable-row:focus-within .tita-sortable-handle.is-hover-reveal,.tita-sortable-row .tita-sortable-handle.is-hover-reveal:focus-visible{opacity:1}.tita-sortable-row .tita-sortable-handle.is-keyboard-only{z-index:1;opacity:0;clip-path:inset(50%);white-space:nowrap;flex-basis:1px;width:1px;min-width:1px;max-width:1px;height:1px;min-height:1px;max-height:1px;padding:0;position:absolute;inset-inline-start:0;overflow:hidden}.tita-sortable-row .tita-sortable-handle.is-keyboard-only:focus-visible{opacity:1;clip-path:none;flex-basis:20px;width:20px;min-width:20px;max-width:20px;height:28px;min-height:28px;max-height:28px;position:relative;overflow:visible}@media (hover:none){.tita-sortable-row .tita-sortable-handle.is-hover-reveal{opacity:1}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--animate-spin:spin 1s linear infinite;--blur-xs:4px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--font-tita:var(--tita-font);--radius-tita-block:8px;--radius-tita-control:7px;--radius-tita-overlay:10px}}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.top-0{top:0}.top-1\\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-\\[3px\\]{top:3px}.top-\\[12px\\]{top:12px}.right-2{right:calc(var(--spacing) * 2)}.right-\\[12px\\]{right:12px}.bottom-\\[3px\\]{bottom:3px}.left-0{left:0}.left-1\\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-\\[3px\\]{left:3px}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-1001{z-index:1001}.z-\\[900\\]{z-index:900}.z-\\[1000\\]{z-index:1000}.z-\\[1001\\]{z-index:1001}.z-\\[1002\\]{z-index:1002}.z-\\[1004\\]{z-index:1004}.row-0{grid-row:0}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mx-0{margin-inline:0}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-\\[2px\\]{margin-inline:2px}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing)}.my-3{margin-block:calc(var(--spacing) * 3)}.my-\\[5px\\]{margin-block:5px}.ms-7{margin-inline-start:calc(var(--spacing) * 7)}.mt-0{margin-top:0}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mt-\\[1px\\]{margin-top:1px}.mt-\\[2px\\]{margin-top:2px}.mt-\\[3px\\]{margin-top:3px}.mt-\\[5px\\]{margin-top:5px}.mt-\\[6px\\]{margin-top:6px}.mt-\\[7px\\]{margin-top:7px}.mt-\\[16px\\]{margin-top:16px}.mt-\\[18px\\]{margin-top:18px}.mt-auto{margin-top:auto}.mr-1{margin-right:var(--spacing)}.mr-3{margin-right:calc(var(--spacing) * 3)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-0{margin-bottom:0}.mb-0\\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-\\[10px\\]{margin-bottom:10px}.-ml-2{margin-left:calc(var(--spacing) * -2)}.ml-0\\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:var(--spacing)}.ml-1\\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-\\[22px\\]{margin-left:22px}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.table{display:table}.aspect-\\[4\\/3\\]{aspect-ratio:4/3}.size-2\\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-\\[7px\\]{width:7px;height:7px}.size-\\[12px\\]{width:12px;height:12px}.size-\\[13px\\]{width:13px;height:13px}.size-\\[14px\\]{width:14px;height:14px}.size-\\[15px\\]{width:15px;height:15px}.size-\\[17px\\]{width:17px;height:17px}.size-\\[18px\\]{width:18px;height:18px}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-\\[3px\\]{height:3px}.h-\\[12px\\]{height:12px}.h-\\[16px\\]{height:16px}.h-\\[18px\\]{height:18px}.h-\\[20px\\]{height:20px}.h-\\[24px\\]{height:24px}.h-\\[26px\\]{height:26px}.h-\\[28px\\]{height:28px}.h-\\[30px\\]{height:30px}.h-\\[calc\\(100\\%-1px\\)\\]{height:calc(100% - 1px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\\(--radix-context-menu-content-available-height\\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\\(--radix-dropdown-menu-content-available-height\\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\\(--radix-select-content-available-height\\){max-height:var(--radix-select-content-available-height)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-72{max-height:calc(var(--spacing) * 72)}.max-h-\\[52\\%\\]{max-height:52%}.max-h-\\[62\\%\\]{max-height:62%}.max-h-\\[240px\\]{max-height:240px}.max-h-\\[420px\\]{max-height:420px}.max-h-\\[calc\\(100vh-32px\\)\\]{max-height:calc(100vh - 32px)}.max-h-none{max-height:none}.min-h-0{min-height:0}.min-h-\\[16px\\]{min-height:16px}.min-h-\\[23px\\]{min-height:23px}.min-h-\\[24px\\]{min-height:24px}.min-h-\\[26px\\]{min-height:26px}.min-h-\\[28px\\]{min-height:28px}.min-h-\\[30px\\]{min-height:30px}.min-h-\\[34px\\]{min-height:34px}.min-h-\\[36px\\]{min-height:36px}.min-h-\\[38px\\]{min-height:38px}.min-h-\\[64px\\]{min-height:64px}.min-h-dvh{min-height:100dvh}.w-\\(--radix-dropdown-menu-trigger-width\\){width:var(--radix-dropdown-menu-trigger-width)}.w-2{width:calc(var(--spacing) * 2)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-72{width:calc(var(--spacing) * 72)}.w-96{width:calc(var(--spacing) * 96)}.w-96\\!{width:calc(var(--spacing) * 96)!important}.w-\\[12px\\]{width:12px}.w-\\[20px\\]{width:20px}.w-\\[22px\\]{width:22px}.w-\\[24px\\]{width:24px}.w-\\[26px\\]{width:26px}.w-\\[28px\\]{width:28px}.w-\\[30px\\]{width:30px}.w-\\[52px\\]{width:52px}.w-\\[92px\\]{width:92px}.w-\\[104px\\]{width:104px}.w-\\[160px\\]{width:160px}.w-\\[200px\\]{width:200px}.w-\\[268px\\]{width:268px}.w-\\[min\\(200px\\,100\\%\\)\\]{width:min(200px,100%)}.w-\\[min\\(238px\\,76\\%\\)\\]{width:min(238px,76%)}.w-\\[min\\(240px\\,100\\%\\)\\]{width:min(240px,100%)}.w-\\[min\\(355px\\,calc\\(100vw-32px\\)\\)\\]{width:min(355px,100vw - 32px)}.w-\\[min\\(360px\\,62\\%\\)\\]{width:min(360px,62%)}.w-\\[min\\(420px\\,calc\\(100vw-32px\\)\\)\\]{width:min(420px,100vw - 32px)}.w-\\[min\\(520px\\,100\\%\\)\\]{width:min(520px,100%)}.w-\\[min\\(540px\\,calc\\(100vw-24px\\)\\)\\]{width:min(540px,100vw - 24px)}.w-\\[min\\(720px\\,calc\\(100vw-32px\\)\\)\\]{width:min(720px,100vw - 32px)}.w-\\[min\\(900px\\,calc\\(100vw-32px\\)\\)\\]{width:min(900px,100vw - 32px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\\[46ch\\]{max-width:46ch}.max-w-\\[70ch\\]{max-width:70ch}.max-w-\\[72ch\\]{max-width:72ch}.max-w-\\[200px\\]{max-width:200px}.max-w-\\[220px\\]{max-width:220px}.max-w-\\[260px\\]{max-width:260px}.max-w-\\[280px\\]{max-width:280px}.max-w-\\[300px\\]{max-width:300px}.max-w-\\[320px\\]{max-width:320px}.max-w-\\[1040px\\]{max-width:1040px}.max-w-\\[calc\\(100\\%-2rem\\)\\]{max-width:calc(100% - 2rem)}.max-w-\\[calc\\(100\\%-128px\\)\\]{max-width:calc(100% - 128px)}.max-w-\\[min\\(900px\\,calc\\(100vw-32px\\)\\)\\]{max-width:min(900px,100vw - 32px)}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-36{min-width:calc(var(--spacing) * 36)}.min-w-\\[16rem\\]{min-width:16rem}.min-w-\\[24px\\]{min-width:24px}.min-w-\\[26px\\]{min-width:26px}.min-w-\\[30px\\]{min-width:30px}.min-w-\\[42px\\]{min-width:42px}.min-w-\\[82px\\]{min-width:82px}.min-w-\\[96px\\]{min-width:96px}.min-w-\\[150px\\]{min-width:150px}.min-w-\\[184px\\]{min-width:184px}.min-w-\\[200px\\]{min-width:200px}.min-w-\\[236px\\]{min-width:236px}.min-w-\\[680px\\]{min-width:680px}.min-w-max{min-width:max-content}.flex-1{flex:1}.flex-none{flex:none}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.origin-\\(--radix-context-menu-content-transform-origin\\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\\(--radix-dropdown-menu-content-transform-origin\\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\\(--radix-popover-content-transform-origin\\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\\(--radix-select-content-transform-origin\\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\\(--radix-tooltip-content-transform-origin\\){transform-origin:var(--radix-tooltip-content-transform-origin)}.origin-left{transform-origin:0}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\\[calc\\(-50\\%_-_2px\\)\\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-y{resize:vertical}.scroll-my-1{scroll-margin-block:var(--spacing)}.list-decimal{list-style-type:decimal}.list-none{list-style-type:none}.auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.grid-flow-col{grid-auto-flow:column}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0{gap:0}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-\\[3px\\]{gap:3px}.gap-\\[5px\\]{gap:5px}.gap-\\[6px\\]{gap:6px}.gap-\\[7px\\]{gap:7px}.gap-\\[8px\\]{gap:8px}.gap-px{gap:1px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-1\\.5{column-gap:calc(var(--spacing) * 1.5)}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-0\\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:var(--spacing)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.gap-y-\\[6px\\]{row-gap:6px}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-\\[2px\\]{border-radius:2px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[5px\\]{border-radius:5px}.rounded-\\[6px\\]{border-radius:6px}.rounded-\\[7px\\]{border-radius:7px}.rounded-\\[9px\\]{border-radius:9px}.rounded-\\[10px\\]{border-radius:10px}.rounded-\\[11px\\]{border-radius:11px}.rounded-\\[inherit\\]{border-radius:inherit}.rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\]{border-radius:min(var(--radius-md), 10px)}.rounded-\\[min\\(var\\(--radius-md\\)\\,12px\\)\\]{border-radius:min(var(--radius-md), 12px)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-tita-block{border-radius:var(--radius-tita-block)}.rounded-tita-control{border-radius:var(--radius-tita-control)}.rounded-tita-overlay{border-radius:var(--radius-tita-overlay)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\\[\\#a8dcc0\\]{border-color:#a8dcc0}.border-\\[\\#bfe8d5\\]{border-color:#bfe8d5}.border-\\[\\#c8dcff\\]{border-color:#c8dcff}.border-\\[\\#d9ceff\\]{border-color:#d9ceff}.border-\\[\\#efb8b3\\]{border-color:#efb8b3}.border-\\[\\#f0c9c4\\]{border-color:#f0c9c4}.border-\\[\\#f0d29e\\]{border-color:#f0d29e}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-tita-line{border-color:var(--tita-line)}.border-tita-line-strong{border-color:var(--tita-line-strong)}.border-tita-primary{border-color:var(--tita-primary)}.border-tita-primary-line{border-color:var(--tita-primary-line)}.border-tita-tone-amber-line{border-color:var(--tita-tone-amber-line)}.border-tita-tone-green-line{border-color:var(--tita-tone-green-line)}.border-transparent{border-color:#0000}.border-b-transparent{border-bottom-color:#0000}.bg-\\[\\#e6f7ee\\]{background-color:#e6f7ee}.bg-\\[\\#effaf4\\]{background-color:#effaf4}.bg-\\[\\#f1f6ff\\]{background-color:#f1f6ff}.bg-\\[\\#f7f4ff\\]{background-color:#f7f4ff}.bg-\\[\\#fdeceb\\]{background-color:#fdeceb}.bg-\\[\\#fff5e0\\]{background-color:#fff5e0}.bg-\\[\\#fff8eb\\]{background-color:#fff8eb}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.bg-black\\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-border{background-color:var(--border)}.bg-destructive\\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-foreground{background-color:var(--foreground)}.bg-muted,.bg-muted\\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-tita-canvas{background-color:var(--tita-canvas)}.bg-tita-line{background-color:var(--tita-line)}.bg-tita-line-strong{background-color:var(--tita-line-strong)}.bg-tita-primary{background-color:var(--tita-primary)}.bg-tita-primary-soft{background-color:var(--tita-primary-soft)}.bg-tita-scrim{background-color:var(--tita-scrim)}.bg-tita-success{background-color:var(--tita-success)}.bg-tita-surface{background-color:var(--tita-surface)}.bg-tita-surface-muted{background-color:var(--tita-surface-muted)}.bg-tita-surface\\/95{background-color:var(--tita-surface)}@supports (color:color-mix(in lab, red, red)){.bg-tita-surface\\/95{background-color:color-mix(in oklab, var(--tita-surface) 95%, transparent)}}.bg-tita-tone-amber-tint{background-color:var(--tita-tone-amber-tint)}.bg-tita-tone-green-tint{background-color:var(--tita-tone-green-tint)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-clip-padding{background-clip:padding-box}.fill-foreground{fill:var(--foreground)}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\\[1px\\]{padding:1px}.p-\\[3px\\]{padding:3px}.p-\\[5px\\]{padding:5px}.p-\\[18px\\]{padding:18px}.px-0{padding-inline:0}.px-1{padding-inline:var(--spacing)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-\\[3px\\]{padding-inline:3px}.px-\\[5px\\]{padding-inline:5px}.px-\\[6px\\]{padding-inline:6px}.px-\\[7px\\]{padding-inline:7px}.px-\\[8px\\]{padding-inline:8px}.px-\\[9px\\]{padding-inline:9px}.px-\\[10px\\]{padding-inline:10px}.px-\\[14px\\]{padding-inline:14px}.px-\\[18px\\]{padding-inline:18px}.py-0{padding-block:0}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-14{padding-block:calc(var(--spacing) * 14)}.py-\\[1px\\]{padding-block:1px}.py-\\[3px\\]{padding-block:3px}.py-\\[4px\\]{padding-block:4px}.py-\\[5px\\]{padding-block:5px}.py-\\[6px\\]{padding-block:6px}.py-\\[7px\\]{padding-block:7px}.py-\\[9px\\]{padding-block:9px}.py-\\[10px\\]{padding-block:10px}.py-\\[13px\\]{padding-block:13px}.py-\\[14px\\]{padding-block:14px}.ps-5{padding-inline-start:calc(var(--spacing) * 5)}.pt-0{padding-top:0}.pt-0\\.5{padding-top:calc(var(--spacing) * .5)}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-\\[7px\\]{padding-top:7px}.pt-\\[8px\\]{padding-top:8px}.pr-8{padding-right:calc(var(--spacing) * 8)}.pr-\\[8px\\]{padding-right:8px}.pr-\\[28px\\]{padding-right:28px}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-2\\.5{padding-bottom:calc(var(--spacing) * 2.5)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pb-\\[3px\\]{padding-bottom:3px}.pl-1{padding-left:var(--spacing)}.pl-1\\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.pl-\\[8px\\]{padding-left:8px}.pl-\\[13px\\]{padding-left:13px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-\\[-1px\\]{vertical-align:-1px}.align-top{vertical-align:top}.font-\\[inherit\\]{font-family:inherit}.font-mono{font-family:var(--font-mono)}.font-tita{font-family:var(--tita-font)}.font-tita-mono{font-family:var(--tita-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[0\\.8rem\\]{font-size:.8rem}.text-\\[9\\.5px\\]{font-size:9.5px}.text-\\[9px\\]{font-size:9px}.text-\\[10\\.5px\\]{font-size:10.5px}.text-\\[10px\\]{font-size:10px}.text-\\[11\\.5px\\]{font-size:11.5px}.text-\\[11px\\]{font-size:11px}.text-\\[12\\.5px\\]{font-size:12.5px}.text-\\[12px\\]{font-size:12px}.text-\\[13\\.5px\\]{font-size:13.5px}.text-\\[13px\\]{font-size:13px}.text-\\[14px\\]{font-size:14px}.text-\\[15px\\]{font-size:15px}.text-\\[16px\\]{font-size:16px}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-\\[1\\.6\\]{--tw-leading:1.6;line-height:1.6}.leading-\\[1\\.7\\]{--tw-leading:1.7;line-height:1.7}.leading-\\[14px\\]{--tw-leading:14px;line-height:14px}.leading-\\[15px\\]{--tw-leading:15px;line-height:15px}.leading-\\[inherit\\]{--tw-leading:inherit;line-height:inherit}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-\\[600\\]{--tw-font-weight:600;font-weight:600}.font-\\[650\\]{--tw-font-weight:650;font-weight:650}.font-\\[700\\]{--tw-font-weight:700;font-weight:700}.font-\\[750\\]{--tw-font-weight:750;font-weight:750}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\\[-0\\.01em\\]{--tw-tracking:-.01em;letter-spacing:-.01em}.tracking-\\[-0\\.02em\\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-\\[\\.06em\\]{--tw-tracking:.06em;letter-spacing:.06em}.tracking-\\[0\\.02em\\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\\[0\\.05em\\]{--tw-tracking:.05em;letter-spacing:.05em}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.\\[overflow-wrap\\:anywhere\\]{overflow-wrap:anywhere}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[\\#2d64be\\]{color:#2d64be}.text-\\[\\#137d59\\]{color:#137d59}.text-\\[\\#634cc2\\]{color:#634cc2}.text-\\[\\#475467\\]{color:#475467}.text-\\[\\#a86412\\]{color:#a86412}.text-\\[\\#b42318\\]{color:#b42318}.text-background{color:var(--background)}.text-destructive{color:var(--destructive)}.text-foreground\\/60{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\\/60{color:color-mix(in oklab, var(--foreground) 60%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-tita-danger{color:var(--tita-danger)}.text-tita-ink{color:var(--tita-ink)}.text-tita-ink-faint{color:var(--tita-ink-faint)}.text-tita-ink-muted{color:var(--tita-ink-muted)}.text-tita-primary{color:var(--tita-primary)}.text-tita-primary-foreground{color:var(--tita-primary-foreground)}.text-tita-success{color:var(--tita-success)}.text-tita-tone-green{color:var(--tita-tone-green)}.text-tita-warning{color:var(--tita-warning)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.accent-\\[var\\(--tita-primary\\)\\]{accent-color:var(--tita-primary)}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_2px_rgb\\(15_23_42_\\/_0\\.03\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0f172a08);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_2px_rgb\\(15_23_42_\\/_0\\.05\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0f172a0d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_2px_var\\(--tita-primary-shadow\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,var(--tita-primary-shadow));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_3px_rgb\\(15_23_42_\\/_0\\.16\\)\\,inset_0_0_0_1px_var\\(--tita-primary-shadow\\)\\]{--tw-shadow:0 1px 3px var(--tw-shadow-color,#0f172a29), inset 0 0 0 1px var(--tw-shadow-color,var(--tita-primary-shadow));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_2px_10px_rgb\\(15_23_42_\\/_0\\.08\\)\\]{--tw-shadow:0 2px 10px var(--tw-shadow-color,#0f172a14);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_16px_36px_rgb\\(15_23_42_\\/_0\\.16\\)\\,0_2px_7px_rgb\\(15_23_42_\\/_0\\.06\\)\\]{--tw-shadow:0 16px 36px var(--tw-shadow-color,#0f172a29), 0 2px 7px var(--tw-shadow-color,#0f172a0f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_24px_60px_rgb\\(15_23_42_\\/_0\\.2\\)\\,0_4px_12px_rgb\\(15_23_42_\\/_0\\.08\\)\\]{--tw-shadow:0 24px 60px var(--tw-shadow-color,#0f172a33), 0 4px 12px var(--tw-shadow-color,#0f172a14);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground\\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.ring-ring{--tw-ring-color:var(--ring)}.ring-tita-primary{--tw-ring-color:var(--tita-primary)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-tita-surface{--tw-ring-offset-color:var(--tita-surface)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\\[2px\\]{--tw-backdrop-blur:blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-\\[background\\,border-color\\]{transition-property:background,border-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[background\\,color\\,box-shadow\\]{transition-property:background,color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[background\\,color\\]{transition-property:background,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[border-color\\,background\\,box-shadow\\]{transition-property:border-color,background,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[color\\,background\\,border-color\\,box-shadow\\]{transition-property:color,background,border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[color\\,background\\,border-color\\]{transition-property:color,background,border-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\,opacity\\]{transition-property:grid-template-rows,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-\\[120ms\\]{--tw-duration:.12s;transition-duration:.12s}.duration-\\[140ms\\]{--tw-duration:.14s;transition-duration:.14s}.ease-\\[cubic-bezier\\(0\\.16\\,1\\,0\\.3\\,1\\)\\]{--tw-ease:cubic-bezier(.16,1,.3,1);transition-timing-function:cubic-bezier(.16,1,.3,1)}.ease-\\[cubic-bezier\\(0\\.22\\,0\\.61\\,0\\.36\\,1\\)\\]{--tw-ease:cubic-bezier(.22,.61,.36,1);transition-timing-function:cubic-bezier(.22,.61,.36,1)}.ease-\\[ease\\]{--tw-ease:ease;transition-timing-function:ease}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.paused{animation-play-state:paused}.running{animation-play-state:running}@media (hover:hover){.group-hover\\:scale-\\[1\\.03\\]:is(:where(.group):hover *){scale:1.03}}.group-focus\\/context-menu-item\\:text-accent-foreground:is(:where(.group\\/context-menu-item):focus *),.group-focus\\/dropdown-menu-item\\:text-accent-foreground:is(:where(.group\\/dropdown-menu-item):focus *){color:var(--accent-foreground)}.group-has-\\[\\:focus-visible\\]\\/field-label\\:border-transparent:is(:where(.group\\/field-label):has(:focus-visible) *){border-color:#0000}.group-has-\\[\\:focus-visible\\]\\/field-label\\:ring-0:is(:where(.group\\/field-label):has(:focus-visible) *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\\[size\\=default\\]\\/switch\\:size-4:is(:where(.group\\/switch)[data-size=default] *){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.group-data-\\[size\\=sm\\]\\/switch\\:size-3:is(:where(.group\\/switch)[data-size=sm] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.group-data-\\[variant\\=line\\]\\/tabs-list\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *){background-color:#0000}.group-data-horizontal\\/tabs\\:h-8:is(:where(.group\\/tabs):where([data-orientation=horizontal]) *){height:calc(var(--spacing) * 8)}.group-data-vertical\\/tabs\\:h-fit:is(:where(.group\\/tabs):where([data-orientation=vertical]) *){height:fit-content}.group-data-vertical\\/tabs\\:w-full:is(:where(.group\\/tabs):where([data-orientation=vertical]) *){width:100%}.group-data-vertical\\/tabs\\:flex-col:is(:where(.group\\/tabs):where([data-orientation=vertical]) *){flex-direction:column}.group-data-vertical\\/tabs\\:justify-start:is(:where(.group\\/tabs):where([data-orientation=vertical]) *){justify-content:flex-start}.marker\\:text-tita-ink-faint ::marker{color:var(--tita-ink-faint)}.marker\\:text-tita-ink-faint::marker{color:var(--tita-ink-faint)}.marker\\:text-tita-ink-faint ::-webkit-details-marker{color:var(--tita-ink-faint)}.marker\\:text-tita-ink-faint::-webkit-details-marker{color:var(--tita-ink-faint)}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:-inset-x-3:after{content:var(--tw-content);inset-inline:calc(var(--spacing) * -3)}.after\\:-inset-y-2:after{content:var(--tw-content);inset-block:calc(var(--spacing) * -2)}.after\\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\\:opacity-0:after{content:var(--tw-content);opacity:0}.after\\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-horizontal\\/tabs\\:after\\:inset-x-0:is(:where(.group\\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);inset-inline:0}.group-data-horizontal\\/tabs\\:after\\:bottom-\\[-5px\\]:is(:where(.group\\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\\/tabs\\:after\\:h-0\\.5:is(:where(.group\\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-vertical\\/tabs\\:after\\:inset-y-0:is(:where(.group\\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);inset-block:0}.group-data-vertical\\/tabs\\:after\\:-right-1:is(:where(.group\\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-vertical\\/tabs\\:after\\:w-0\\.5:is(:where(.group\\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}.first\\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.focus-within\\:border-tita-primary:focus-within{border-color:var(--tita-primary)}.focus-within\\:outline-\\[3px\\]:focus-within{outline-style:var(--tw-outline-style);outline-width:3px}.focus-within\\:outline-offset-1:focus-within{outline-offset:1px}.focus-within\\:outline-tita-focus-ring:focus-within{outline-color:var(--tita-focus-ring)}@media (hover:hover){.hover\\:border-tita-line-strong:hover{border-color:var(--tita-line-strong)}.hover\\:bg-\\[color-mix\\(in_oklch\\,var\\(--secondary\\)\\,var\\(--foreground\\)_5\\%\\)\\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-\\[color-mix\\(in_oklch\\,var\\(--secondary\\)\\,var\\(--foreground\\)_5\\%\\)\\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\\:bg-destructive\\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-destructive\\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\\:bg-muted:hover{background-color:var(--muted)}.hover\\:bg-primary\\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-primary\\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\\:bg-tita-surface-muted:hover{background-color:var(--tita-surface-muted)}.hover\\:text-foreground:hover{color:var(--foreground)}.hover\\:text-tita-ink:hover{color:var(--tita-ink)}.hover\\:text-tita-ink-muted:hover{color:var(--tita-ink-muted)}.hover\\:underline:hover{text-decoration-line:underline}}.focus\\:bg-accent:focus{background-color:var(--accent)}.focus\\:text-accent-foreground:focus,:is(.focus\\:\\*\\*\\:text-accent-foreground:focus *),:is(.not-data-\\[variant\\=destructive\\]\\:focus\\:\\*\\*\\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--accent-foreground)}.focus-visible\\:border-destructive\\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:border-destructive\\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\\:border-tita-primary:focus-visible{border-color:var(--tita-primary)}.focus-visible\\:opacity-100:focus-visible{opacity:1}.focus-visible\\:ring-3:focus-visible,.focus-visible\\:ring-\\[3px\\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\\:outline-\\[3px\\]:focus-visible{outline-style:var(--tw-outline-style);outline-width:3px}.focus-visible\\:outline-offset-1:focus-visible{outline-offset:1px}.focus-visible\\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\\:outline-offset-\\[-2px\\]:focus-visible{outline-offset:-2px}.focus-visible\\:outline-ring:focus-visible{outline-color:var(--ring)}.focus-visible\\:outline-tita-focus-ring:focus-visible{outline-color:var(--tita-focus-ring)}.active\\:cursor-grabbing:active{cursor:grabbing}.active\\:not-aria-\\[haspopup\\]\\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}@media (hover:hover){.enabled\\:hover\\:border-tita-danger:enabled:hover{border-color:var(--tita-danger)}.enabled\\:hover\\:border-tita-line:enabled:hover{border-color:var(--tita-line)}.enabled\\:hover\\:border-tita-line-strong:enabled:hover{border-color:var(--tita-line-strong)}.enabled\\:hover\\:border-tita-primary-hover:enabled:hover{border-color:var(--tita-primary-hover)}.enabled\\:hover\\:border-tita-primary-line:enabled:hover{border-color:var(--tita-primary-line)}.enabled\\:hover\\:border-transparent:enabled:hover{border-color:#0000}.enabled\\:hover\\:bg-\\[\\#fff5f5\\]:enabled:hover{background-color:#fff5f5}.enabled\\:hover\\:bg-tita-primary-hover:enabled:hover{background-color:var(--tita-primary-hover)}.enabled\\:hover\\:bg-tita-primary-soft:enabled:hover{background-color:var(--tita-primary-soft)}.enabled\\:hover\\:bg-tita-surface:enabled:hover{background-color:var(--tita-surface)}.enabled\\:hover\\:bg-tita-surface-muted:enabled:hover{background-color:var(--tita-surface-muted)}.enabled\\:hover\\:text-\\[\\#991b1b\\]:enabled:hover{color:#991b1b}.enabled\\:hover\\:text-tita-danger:enabled:hover{color:var(--tita-danger)}.enabled\\:hover\\:text-tita-ink:enabled:hover{color:var(--tita-ink)}.enabled\\:hover\\:text-tita-ink-muted:enabled:hover{color:var(--tita-ink-muted)}.enabled\\:hover\\:text-tita-primary:enabled:hover{color:var(--tita-primary)}.enabled\\:hover\\:text-white:enabled:hover{color:var(--color-white)}}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\\[slot\\=button-group\\]\\:rounded-lg{border-radius:var(--radius-lg)}.has-data-\\[icon\\=inline-end\\]\\:pr-1:has([data-icon=inline-end]){padding-right:var(--spacing)}.has-data-\\[icon\\=inline-end\\]\\:pr-1\\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\\[icon\\=inline-end\\]\\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\\[icon\\=inline-start\\]\\:pl-1:has([data-icon=inline-start]){padding-left:var(--spacing)}.has-data-\\[icon\\=inline-start\\]\\:pl-1\\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\\[icon\\=inline-start\\]\\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.has-data-\\[slot\\=kbd\\]\\:pr-1\\.5:has([data-slot=kbd]){padding-right:calc(var(--spacing) * 1.5)}.aria-expanded\\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-invalid\\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.aria-invalid\\:outline-\\[3px\\][aria-invalid=true]{outline-style:var(--tw-outline-style);outline-width:3px}.aria-invalid\\:outline-destructive\\/20[aria-invalid=true]{outline-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\\:outline-destructive\\/20[aria-invalid=true]{outline-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-inset\\:pl-7[data-inset]{padding-left:calc(var(--spacing) * 7)}.data-placeholder\\:text-tita-ink-faint[data-placeholder]{color:var(--tita-ink-faint)}.data-\\[align-trigger\\=true\\]\\:animate-none[data-align-trigger=true]{animation:none}.data-\\[position\\=popper\\]\\:h-\\(--radix-select-trigger-height\\)[data-position=popper]{height:var(--radix-select-trigger-height)}.data-\\[position\\=popper\\]\\:w-full[data-position=popper]{width:100%}.data-\\[position\\=popper\\]\\:min-w-\\(--radix-select-trigger-width\\)[data-position=popper]{min-width:var(--radix-select-trigger-width)}.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\\[size\\=default\\]\\:h-8[data-size=default]{height:calc(var(--spacing) * 8)}.data-\\[size\\=default\\]\\:h-\\[18\\.4px\\][data-size=default]{height:18.4px}.data-\\[size\\=default\\]\\:h-auto[data-size=default]{height:auto}.data-\\[size\\=default\\]\\:w-\\[32px\\][data-size=default]{width:32px}.data-\\[size\\=sm\\]\\:h-7[data-size=sm]{height:calc(var(--spacing) * 7)}.data-\\[size\\=sm\\]\\:h-\\[14px\\][data-size=sm]{height:14px}.data-\\[size\\=sm\\]\\:w-\\[24px\\][data-size=sm]{width:24px}:is(.\\*\\*\\:data-\\[slot\\=kbd\\]\\:relative *)[data-slot=kbd]{position:relative}:is(.\\*\\*\\:data-\\[slot\\=kbd\\]\\:isolate *)[data-slot=kbd]{isolation:isolate}:is(.\\*\\*\\:data-\\[slot\\=kbd\\]\\:z-50 *)[data-slot=kbd]{z-index:50}:is(.\\*\\*\\:data-\\[slot\\=kbd\\]\\:rounded-sm *)[data-slot=kbd]{border-radius:var(--radius-sm)}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex>*)[data-slot=select-value]{display:flex}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-\\[7px\\]>*)[data-slot=select-value]{gap:7px}.data-\\[state\\=active\\]\\:border-b-tita-primary[data-state=active]{border-bottom-color:var(--tita-primary)}.data-\\[state\\=active\\]\\:text-tita-primary[data-state=active]{color:var(--tita-primary)}.data-\\[state\\=closed\\]\\:overflow-hidden[data-state=closed]{overflow:hidden}.data-\\[state\\=delayed-open\\]\\:animate-in[data-state=delayed-open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\\[state\\=delayed-open\\]\\:fade-in-0[data-state=delayed-open]{--tw-enter-opacity:0}.data-\\[state\\=delayed-open\\]\\:zoom-in-95[data-state=delayed-open]{--tw-enter-scale:.95}.data-\\[state\\=inactive\\]\\:hidden[data-state=inactive]{display:none}.data-\\[state\\=open\\]\\:border-tita-primary-line[data-state=open]{border-color:var(--tita-primary-line)}.data-\\[state\\=open\\]\\:bg-tita-primary-soft[data-state=open]{background-color:var(--tita-primary-soft)}.data-\\[variant\\=destructive\\]\\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.data-\\[variant\\=destructive\\]\\:focus\\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}.data-\\[variant\\=line\\]\\:rounded-none[data-variant=line]{border-radius:0}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media not all and (min-width:40rem){.max-sm\\:ms-4{margin-inline-start:calc(var(--spacing) * 4)}.max-sm\\:ps-2{padding-inline-start:calc(var(--spacing) * 2)}}@media (min-width:40rem){.sm\\:w-\\[150px\\]{width:150px}.sm\\:max-w-sm{max-width:var(--container-sm)}.sm\\:grid-cols-\\[140px_1fr\\]{grid-template-columns:140px 1fr}.sm\\:flex-row{flex-direction:row}.sm\\:items-baseline{align-items:baseline}.sm\\:justify-end{justify-content:flex-end}.sm\\:gap-3{gap:calc(var(--spacing) * 3)}}@media (min-width:64rem){.lg\\:w-\\[300px\\]{width:300px}.lg\\:flex-row{flex-direction:row}}.dark\\:border-input:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){border-color:var(--input)}.dark\\:bg-destructive\\/20:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-destructive\\/20:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:text-muted-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){color:var(--muted-foreground)}@media (hover:hover){.dark\\:hover\\:bg-destructive\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-destructive\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\\:hover\\:bg-input\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-input\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\\:hover\\:bg-muted\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-muted\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.dark\\:hover\\:text-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{color:var(--foreground)}}.dark\\:focus-visible\\:ring-destructive\\/40:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:focus-visible\\:ring-destructive\\/40:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:aria-invalid\\:border-destructive\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:border-destructive\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\\:aria-invalid\\:ring-destructive\\/40:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:ring-destructive\\/40:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-open\\:animate-in:where([data-state=open]),.data-open\\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\\:bg-accent:where([data-state=open]),.data-open\\:bg-accent:where([data-open]:not([data-open=false])){background-color:var(--accent)}.data-open\\:text-accent-foreground:where([data-state=open]),.data-open\\:text-accent-foreground:where([data-open]:not([data-open=false])){color:var(--accent-foreground)}.data-open\\:fade-in-0:where([data-state=open]),.data-open\\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\\:zoom-in-95:where([data-state=open]),.data-open\\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}.data-closed\\:animate-out:where([data-state=closed]),.data-closed\\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\\:fade-out-0:where([data-state=closed]),.data-closed\\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\\:zoom-out-95:where([data-state=closed]),.data-closed\\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.data-checked\\:bg-primary:where([data-state=checked]),.data-checked\\:bg-primary:where([data-checked]:not([data-checked=false])){background-color:var(--primary)}.group-data-\\[size\\=default\\]\\/switch\\:data-checked\\:translate-x-\\[calc\\(100\\%-2px\\)\\]:is(:where(.group\\/switch)[data-size=default] *):where([data-state=checked]),.group-data-\\[size\\=default\\]\\/switch\\:data-checked\\:translate-x-\\[calc\\(100\\%-2px\\)\\]:is(:where(.group\\/switch)[data-size=default] *):where([data-checked]:not([data-checked=false])),.group-data-\\[size\\=sm\\]\\/switch\\:data-checked\\:translate-x-\\[calc\\(100\\%-2px\\)\\]:is(:where(.group\\/switch)[data-size=sm] *):where([data-state=checked]),.group-data-\\[size\\=sm\\]\\/switch\\:data-checked\\:translate-x-\\[calc\\(100\\%-2px\\)\\]:is(:where(.group\\/switch)[data-size=sm] *):where([data-checked]:not([data-checked=false])){--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\\:data-checked\\:bg-primary-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=checked]),.dark\\:data-checked\\:bg-primary-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-checked]:not([data-checked=false])){background-color:var(--primary-foreground)}.data-unchecked\\:bg-input:where([data-state=unchecked]),.data-unchecked\\:bg-input:where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}.group-data-\\[size\\=default\\]\\/switch\\:data-unchecked\\:translate-x-0:is(:where(.group\\/switch)[data-size=default] *):where([data-state=unchecked]),.group-data-\\[size\\=default\\]\\/switch\\:data-unchecked\\:translate-x-0:is(:where(.group\\/switch)[data-size=default] *):where([data-unchecked]:not([data-unchecked=false])),.group-data-\\[size\\=sm\\]\\/switch\\:data-unchecked\\:translate-x-0:is(:where(.group\\/switch)[data-size=sm] *):where([data-state=unchecked]),.group-data-\\[size\\=sm\\]\\/switch\\:data-unchecked\\:translate-x-0:is(:where(.group\\/switch)[data-size=sm] *):where([data-unchecked]:not([data-unchecked=false])){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\\:data-unchecked\\:bg-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=unchecked]),.dark\\:data-unchecked\\:bg-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--foreground)}.dark\\:data-unchecked\\:bg-input\\/80:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=unchecked]),.dark\\:data-unchecked\\:bg-input\\/80:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-unchecked\\:bg-input\\/80:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=unchecked]),.dark\\:data-unchecked\\:bg-input\\/80:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-unchecked]:not([data-unchecked=false])){background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.data-disabled\\:pointer-events-none:where([data-disabled=true]),.data-disabled\\:pointer-events-none:where([data-disabled]:not([data-disabled=false])){pointer-events:none}.data-disabled\\:cursor-not-allowed:where([data-disabled=true]),.data-disabled\\:cursor-not-allowed:where([data-disabled]:not([data-disabled=false])){cursor:not-allowed}.data-disabled\\:opacity-50:where([data-disabled=true]),.data-disabled\\:opacity-50:where([data-disabled]:not([data-disabled=false])){opacity:.5}.data-active\\:bg-background:where([data-state=active]),.data-active\\:bg-background:where([data-active]:not([data-active=false])){background-color:var(--background)}.data-active\\:text-foreground:where([data-state=active]),.data-active\\:text-foreground:where([data-active]:not([data-active=false])){color:var(--foreground)}.group-data-\\[variant\\=default\\]\\/tabs-list\\:data-active\\:shadow-sm:is(:where(.group\\/tabs-list)[data-variant=default] *):where([data-state=active]),.group-data-\\[variant\\=default\\]\\/tabs-list\\:data-active\\:shadow-sm:is(:where(.group\\/tabs-list)[data-variant=default] *):where([data-active]:not([data-active=false])){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:shadow-none:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:shadow-none:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:is(.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:after\\:opacity-100:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:after\\:opacity-100:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false]))):after{content:var(--tw-content);opacity:1}.dark\\:data-active\\:border-input:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=active]),.dark\\:data-active\\:border-input:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-active]:not([data-active=false])){border-color:var(--input)}.dark\\:data-active\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=active]),.dark\\:data-active\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-active]:not([data-active=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-active\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=active]),.dark\\:data-active\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-active]:not([data-active=false])){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:data-active\\:text-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=active]),.dark\\:data-active\\:text-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-active]:not([data-active=false])){color:var(--foreground)}.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:border-transparent:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:border-transparent:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){border-color:#0000}.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.data-horizontal\\:flex-col:where([data-orientation=horizontal]){flex-direction:column}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_svg\\]\\:text-tita-ink-faint svg{color:var(--tita-ink-faint)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3\\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-\\[14px\\] svg:not([class*=size-]){width:14px;height:14px}:is(.\\*\\:\\[a\\]\\:underline>*):is(a){text-decoration-line:underline}:is(.\\*\\:\\[a\\]\\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){:is(.\\*\\:\\[a\\]\\:hover\\:text-foreground>*):is(a):hover{color:var(--foreground)}}:is(.\\*\\:\\[span\\]\\:last\\:flex>*):is(span):last-child{display:flex}:is(.\\*\\:\\[span\\]\\:last\\:items-center>*):is(span):last-child{align-items:center}:is(.\\*\\:\\[span\\]\\:last\\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.focus\\:\\*\\:\\[svg\\]\\:text-accent-foreground:focus>*):is(svg){color:var(--accent-foreground)}:is(.data-\\[variant\\=destructive\\]\\:\\*\\:\\[svg\\]\\:text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)}.\\[\\&\\[readonly\\]\\]\\:cursor-text[readonly]{cursor:text}.\\[\\&\\[readonly\\]\\]\\:border-tita-line[readonly]{border-color:var(--tita-line)}.\\[\\&\\[readonly\\]\\]\\:bg-tita-surface-muted[readonly]{background-color:var(--tita-surface-muted)}.\\[\\&\\[readonly\\]\\]\\:text-tita-ink[readonly]{color:var(--tita-ink)}:root,body{--tita-canvas:var(--dsw-alias-bg-base,#f7f8fa);--tita-surface:var(--dsw-alias-bg-layer-1,#fff);--tita-surface-muted:var(--dsw-alias-interactive-bg-hover-solid,#f2f4f7);--tita-line:var(--dsw-alias-border-l2,#e4e7ec);--tita-line-strong:var(--dsw-alias-border-l4,#d0d5dd);--tita-scrim:var(--dsw-alias-bg-mask-1,#0f172a47);--tita-ink:var(--dsw-alias-label-primary,#101828);--tita-ink-muted:var(--dsw-alias-label-secondary,#475467);--tita-ink-faint:var(--dsw-alias-label-tertiary,#667085);--tita-primary:var(--dsw-static-deepseek-600,#4868b2);--tita-primary-foreground:#fff;--tita-primary-soft:var(--dsw-static-deepseek-50,#edf3fe);--tita-primary-hover:var(--dsw-static-deepseek-800,#34415b);--tita-primary-line:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-primary-line:color-mix(in srgb, var(--tita-primary) 45%, var(--tita-surface))}}:root,body{--tita-primary-wash:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-primary-wash:color-mix(in srgb, var(--tita-primary) 30%, var(--tita-surface))}}:root,body{--tita-primary-shadow:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-primary-shadow:color-mix(in srgb, var(--tita-primary) 14%, transparent)}}:root,body{--tita-success:#067647;--tita-warning:#b54708;--tita-danger:#b42318;--tita-danger-foreground:#fff;--tita-danger-hover:var(--dsw-static-red-500,#ef4444);--tita-tone-blue:#2d64be;--tita-tone-violet:#634cc2;--tita-tone-green:#137d59;--tita-tone-amber:#a86412;--tita-tone-blue-tint:var(--tita-tone-blue)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-blue-tint:color-mix(in srgb, var(--tita-tone-blue) 10%, var(--tita-surface))}}:root,body{--tita-tone-violet-tint:var(--tita-tone-violet)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-violet-tint:color-mix(in srgb, var(--tita-tone-violet) 10%, var(--tita-surface))}}:root,body{--tita-tone-green-tint:var(--tita-tone-green)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-green-tint:color-mix(in srgb, var(--tita-tone-green) 10%, var(--tita-surface))}}:root,body{--tita-tone-amber-tint:var(--tita-tone-amber)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-amber-tint:color-mix(in srgb, var(--tita-tone-amber) 10%, var(--tita-surface))}}:root,body{--tita-tone-blue-line:var(--tita-tone-blue)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-blue-line:color-mix(in srgb, var(--tita-tone-blue) 32%, var(--tita-surface))}}:root,body{--tita-tone-violet-line:var(--tita-tone-violet)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-violet-line:color-mix(in srgb, var(--tita-tone-violet) 32%, var(--tita-surface))}}:root,body{--tita-tone-green-line:var(--tita-tone-green)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-green-line:color-mix(in srgb, var(--tita-tone-green) 32%, var(--tita-surface))}}:root,body{--tita-tone-amber-line:var(--tita-tone-amber)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-amber-line:color-mix(in srgb, var(--tita-tone-amber) 32%, var(--tita-surface))}}:root,body{--tita-focus-ring:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-focus-ring:color-mix(in srgb, var(--tita-primary) 22%, transparent)}}:root,body{--radius-tita-block:8px;--radius-tita-control:7px;--radius-tita-overlay:10px;--tita-font:var(--dsw-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif);--tita-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--color-tita-canvas:var(--tita-canvas);--color-tita-paper:var(--tita-canvas);--color-tita-surface:var(--tita-surface);--color-tita-surface-muted:var(--tita-surface-muted);--color-tita-line:var(--tita-line);--color-tita-line-strong:var(--tita-line-strong);--color-tita-ink:var(--tita-ink);--color-tita-ink-muted:var(--tita-ink-muted);--color-tita-ink-faint:var(--tita-ink-faint);--color-tita-primary:var(--tita-primary);--color-tita-primary-foreground:var(--tita-primary-foreground);--color-tita-primary-soft:var(--tita-primary-soft);--color-tita-primary-hover:var(--tita-primary-hover);--color-tita-primary-line:var(--tita-primary-line);--color-tita-primary-wash:var(--tita-primary-wash);--color-tita-primary-shadow:var(--tita-primary-shadow);--color-tita-focus-ring:var(--tita-focus-ring);--color-tita-scrim:var(--tita-scrim);--color-tita-success:var(--tita-success);--color-tita-warning:var(--tita-warning);--color-tita-danger:var(--tita-danger);--color-tita-danger-foreground:var(--tita-danger-foreground);--color-tita-danger-hover:var(--tita-danger-hover);--color-tita-tone-blue:var(--tita-tone-blue);--color-tita-tone-blue-tint:var(--tita-tone-blue-tint);--color-tita-tone-blue-line:var(--tita-tone-blue-line);--color-tita-tone-violet:var(--tita-tone-violet);--color-tita-tone-violet-tint:var(--tita-tone-violet-tint);--color-tita-tone-violet-line:var(--tita-tone-violet-line);--color-tita-tone-green:var(--tita-tone-green);--color-tita-tone-green-tint:var(--tita-tone-green-tint);--color-tita-tone-green-line:var(--tita-tone-green-line);--color-tita-tone-amber:var(--tita-tone-amber);--color-tita-tone-amber-tint:var(--tita-tone-amber-tint);--color-tita-tone-amber-line:var(--tita-tone-amber-line);--font-tita:var(--tita-font);--font-tita-mono:var(--tita-mono)}body[data-ds-dark-theme]{--tita-primary:var(--dsw-static-deepseek-400,#7aaaff);--tita-primary-foreground:var(--dsw-static-neutral-bluish-1000,#0f1115);--tita-primary-soft:var(--dsw-static-deepseek-900,#283142);--tita-primary-hover:var(--dsw-static-deepseek-300,#b7c8fe);--tita-tone-blue:var(--dsw-static-deepseek-400,#7aaaff);--tita-tone-violet:#b9a8ff;--tita-tone-green:var(--dsw-static-green-400,#4ed17e);--tita-tone-amber:var(--dsw-static-amber-400,#f7ad31);--tita-success:var(--dsw-static-green-400,#4ed17e);--tita-warning:var(--dsw-static-amber-400,#f7ad31);--tita-danger:var(--dsw-static-red-400,#f25a5a);--tita-danger-foreground:var(--dsw-static-neutral-bluish-1000,#0f1115);--tita-danger-hover:var(--dsw-static-red-400,#f25a5a)}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root,body{--background:var(--tita-canvas);--foreground:var(--tita-ink);--card:var(--tita-surface);--card-foreground:var(--tita-ink);--popover:var(--tita-surface);--popover-foreground:var(--tita-ink);--primary:var(--tita-primary);--primary-foreground:var(--tita-primary-foreground);--secondary:var(--tita-surface-muted);--secondary-foreground:var(--tita-ink);--muted:var(--tita-surface-muted);--muted-foreground:var(--tita-ink-muted);--accent:var(--tita-primary-soft);--accent-foreground:var(--tita-primary);--destructive:var(--tita-danger);--destructive-foreground:#fff;--border:var(--tita-line);--input:var(--tita-line-strong);--ring:var(--tita-primary);--sidebar:var(--tita-surface);--sidebar-foreground:var(--tita-ink);--sidebar-primary:var(--tita-primary);--sidebar-primary-foreground:var(--tita-primary-foreground);--sidebar-accent:var(--tita-primary-soft);--sidebar-accent-foreground:var(--tita-primary);--sidebar-border:var(--tita-line);--sidebar-ring:var(--tita-primary);--chart-1:var(--tita-primary);--chart-2:var(--tita-success);--chart-3:var(--tita-warning);--chart-4:var(--tita-danger);--chart-5:var(--tita-ink-faint);--radius:var(--radius-tita-control)}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-leading{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}`;
|
|
114552
|
-
var tagId2 = "dsh-data-domain-knowledge//
|
|
114310
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-leading:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer base{:where([class^=tita-],[class*=\\ tita-],[class^=docPage-],[class*=\\ docPage-]) :where(button,input,select,textarea,[role=button]){box-sizing:border-box;font:inherit;color:inherit;background-color:#0000;border:0 solid;margin:0;padding:0}}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid transparent;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:.5;--rdp-outside-opacity:.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:white;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50%);--rdp-range_end-color:white;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid transparent;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:.75;--rdp-weekday-padding:.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:.3s;--rdp-animation_timing:cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{box-sizing:border-box;position:relative}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{cursor:pointer;font:inherit;color:inherit;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);background:0 0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;white-space:nowrap;border:0;align-items:center;display:inline-flex;position:relative}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{cursor:pointer;font:inherit;color:inherit;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:relative}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform-origin:50%;transform:rotate(180deg)}.rdp-dropdowns{align-items:center;gap:var(--rdp-dropdown-gap);display:inline-flex;position:relative}.rdp-dropdown{z-index:2;opacity:0;appearance:none;width:100%;cursor:inherit;line-height:inherit;border:none;margin:0;padding:0;position:absolute;inset-block:0;inset-inline-start:0}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{height:var(--rdp-nav-height);align-content:center;font-size:large;font-weight:700;display:flex}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{height:var(--rdp-nav-height);inset-inline-start:0;display:inline-flex;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{height:var(--rdp-nav-height);inset-inline-end:0;justify-content:center;display:inline-flex;position:absolute;top:0}.rdp-months{gap:var(--rdp-months-gap);flex-wrap:wrap;max-width:fit-content;display:flex;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{height:var(--rdp-nav-height);align-items:center;display:flex;position:absolute;inset-block-start:0;inset-inline-end:0}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform);font-size:smaller;font-weight:500}.rdp-week_number{opacity:var(--rdp-week_number-opacity);height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align);font-size:small;font-weight:400}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}:root,body{--tita-ui-background:var(--tita-surface);--tita-ui-foreground:var(--tita-ink);--tita-ui-muted:var(--tita-ink-muted);--tita-ui-muted-background:var(--tita-surface-muted);--tita-ui-border:var(--tita-line);--tita-ui-border-strong:var(--tita-line-strong);--tita-ui-primary:var(--tita-primary);--tita-ui-primary-foreground:var(--tita-primary-foreground);--tita-ui-danger:var(--tita-danger)}.tita-topbar{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--tita-line);background-color:var(--tita-surface);min-height:30px;color:var(--tita-ink);-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding-inline:8px;display:flex}.tita-topbar input,.tita-topbar textarea,.tita-topbar .tita-objectPickerOption strong,.tita-topbar .tita-objectPickerOption small{-webkit-user-select:text;user-select:text}.tita-topbar .tita-uiButton-sm,.tita-versionInspect .tita-uiButton-sm{min-height:23px;padding-inline:7px;font-size:11px}.tita-versionInspect .tita-uiBadge{min-height:21px;padding-inline:7px;font-size:10.5px}.tita-topbarAnchor{min-width:0;display:inline-flex;position:relative}.tita-topbarGroup{align-items:center;gap:4px;min-width:0;display:inline-flex}.tita-topbarDivider{background-color:var(--tita-line);flex:none;width:1px;height:13px;margin-inline:2px}.tita-uiTabsList--segmented{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--tita-surface-muted);scrollbar-width:none;border-radius:7px;align-items:center;gap:2px;width:fit-content;max-width:100%;padding:2px;display:inline-flex;overflow-x:auto}.tita-uiTabsList--segmented::-webkit-scrollbar{display:none}.tita-uiTabsList--segmented .tita-uiTabsTrigger{--tw-font-weight:600;white-space:nowrap;min-height:28px;color:var(--tita-ink-faint);border-radius:5px;gap:5px;padding-block:4px;padding-inline:9px;font-size:11px;font-weight:600}.tita-uiTabsList--segmented .tita-uiTabsTrigger:hover{color:var(--tita-ink);background-color:#0000}.tita-uiTabsList--segmented .tita-uiTabsTrigger[data-state=active]{background-color:var(--tita-surface);color:var(--tita-ink);border-bottom-color:#0000;box-shadow:0 1px 2px #10182812}.tita-objectPicker{border-color:var(--tita-line-strong);text-align:left;background-color:#0000;align-items:center;gap:6px;min-width:0;max-width:240px;height:24px;display:inline-flex}.tita-objectPicker:hover:not(:disabled),.tita-objectPicker[aria-expanded=true]{border-color:var(--tita-line-strong);background-color:var(--tita-surface-muted)}.tita-objectPickerLabel{--tw-font-weight:var(--font-weight-semibold);font-size:11px;font-weight:var(--font-weight-semibold);color:var(--tita-ink-muted);flex:none}.tita-objectPicker strong{--tw-font-weight:var(--font-weight-bold);min-width:0;font-size:12px;font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap;color:#344054;overflow:hidden}.tita-objectPickerChevron{color:var(--tita-ink-muted);flex:none}.tita-filePickerCrumbs{align-items:center;gap:2px;min-height:22px;margin-top:12px;margin-bottom:6px;display:flex}.tita-filePickerCrumb{color:var(--tita-ink-muted);padding-inline:6px;font-size:11.5px}.tita-filePickerCrumb:disabled{cursor:default;color:var(--tita-ink);opacity:1}.tita-filePickerCrumbArrow{color:var(--tita-ink-faint);flex-shrink:0}.tita-filePickerHead,.tita-filePickerRow{grid-template-columns:minmax(0,1fr) 132px 132px 68px}.tita-filePickerHead{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--tita-line);color:var(--tita-ink-muted);padding-inline:8px;align-items:center;gap:10px;padding-bottom:4px;font-size:10.5px;display:grid}.tita-filePickerHeadSize{text-align:right}.tita-filePickerList{flex-direction:column;max-height:46vh;padding-block:4px;display:flex;overflow-y:auto}.tita-filePickerRow{cursor:pointer;border-style:var(--tw-border-style);text-align:left;background-color:#0000;border-width:0;border-radius:6px;align-items:center;gap:10px;width:100%;padding-block:5px;padding-inline:8px;display:grid}.tita-filePickerRow:hover:not(:disabled){background-color:var(--tita-surface-muted)}.tita-filePickerRow:disabled{cursor:not-allowed;opacity:.55}.tita-filePickerRowActive{background-color:var(--tita-primary-soft)}.tita-filePickerName{min-width:0;color:var(--tita-ink);align-items:center;gap:6px;font-size:12px;display:flex}.tita-filePickerNameText{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tita-filePickerWhen{color:var(--tita-ink-muted);font-variant-numeric:tabular-nums;font-size:11px}.tita-filePickerSize{text-align:right;color:var(--tita-ink-muted);font-variant-numeric:tabular-nums;font-size:11px}.tita-filePickerNote{color:var(--tita-ink-muted);align-items:center;gap:6px;margin:0;padding-block:10px;padding-inline:8px;font-size:11.5px;display:flex}.tita-filePickerNoteError{color:var(--tita-danger)}.tita-filePickerSpin{animation:.9s linear infinite tita-filePickerSpin}.tita-filePickerSpacer{flex:1}@keyframes tita-filePickerSpin{to{transform:rotate(360deg)}}.tita-objectPickerMenu{z-index:1003;border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line-strong);background-color:var(--color-white);width:min(355px,100vw - 32px);color:var(--tita-ink);--tw-shadow:0 12px 30px var(--tw-shadow-color,#10182821), 0 2px 7px var(--tw-shadow-color,#1018280f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-radius:10px;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.tita-objectPickerSearch{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--tita-line);color:var(--tita-ink-muted);align-items:center;gap:7px;padding-block:9px;padding-inline:12px;display:flex}.tita-objectPickerSearch .tita-uiInput{background-color:#0000;border-color:#0000;min-height:28px;padding:0}.tita-objectPickerSearch .tita-uiInput:focus-visible{--tw-outline-style:none;border-color:#0000;outline-style:none}.tita-objectPickerList{max-height:min(320px,46vh);padding:5px;overflow:auto}.tita-objectPickerEmpty{color:var(--tita-ink-muted);padding-block:14px;padding-inline:12px;font-size:12px}.tita-objectPickerRow{border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px;min-height:39px;display:flex}.tita-objectPickerRow:hover{background-color:var(--tita-surface-muted)}.tita-objectPickerRow-current{background-color:var(--tita-primary-soft)}.tita-objectPickerOption{cursor:pointer;border-style:var(--tw-border-style);text-align:left;--tw-leading:inherit;min-width:0;font-family:inherit;line-height:inherit;color:#475467;background-color:#0000;border-width:0;border-radius:8px;flex:1;align-items:center;gap:9px;padding-block:7px;padding-inline:9px;display:flex}.tita-objectPickerRow-current .tita-objectPickerOption{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--tita-primary-hover)}.tita-objectPickerOptionMain{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.tita-objectPickerOptionMain strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.tita-objectPickerOptionMain small{--tw-font-weight:var(--font-weight-medium);font-size:10px;font-weight:var(--font-weight-medium);color:var(--tita-ink-muted)}.tita-objectPickerCurrent{--tw-font-weight:var(--font-weight-bold);font-size:10px;font-weight:var(--font-weight-bold);color:var(--tita-primary-hover);flex:none}.tita-objectPickerMore{width:26px;min-width:26px;height:26px;color:var(--tita-ink-muted);flex:none;margin-right:4px}.tita-objectPickerActions{flex:100%;gap:5px;padding:0 5px 7px 9px;display:flex}.tita-objectPickerActions button{cursor:pointer;border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line-strong);background-color:var(--color-white);--tw-leading:inherit;height:26px;font-family:inherit;font-size:11px;line-height:inherit;--tw-font-weight:650;color:#344054;border-radius:6px;align-items:center;gap:5px;padding-inline:9px;font-weight:650;display:inline-flex}.tita-objectPickerActions button:hover:not(:disabled){border-color:var(--tita-primary-line);background-color:var(--tita-primary-soft);color:var(--tita-primary)}.tita-objectPickerActions button:disabled{cursor:not-allowed;opacity:.5}.tita-objectPickerActionsDanger{color:var(--tita-danger)!important}.tita-objectPickerActionsDanger:hover:not(:disabled){border-color:var(--tita-danger)!important;color:var(--tita-danger)!important;background-color:#fef3f2!important}.tita-objectPickerFooter{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--tita-line);padding-block:9px;padding-inline:12px;display:flex}.tita-objectPickerCreate{flex:1;justify-content:center}.tita-saveStatus{white-space:nowrap;align-items:center;gap:7px;margin-left:auto;padding-left:8px;display:inline-flex}.tita-saveStatusText{color:var(--tita-ink-muted);align-items:center;gap:6px;font-size:11px;display:inline-flex}.tita-saveStatusText i{background-color:var(--tita-ink-muted);border-radius:3.40282e38px;width:7px;height:7px}.tita-saveStatusText[data-state=saved] i{background-color:#12b76a}.tita-saveStatusText[data-state=loading] i,.tita-saveStatusText[data-state=saving] i{background-color:#f79009}.tita-saveStatusText[data-state=error],.tita-saveStatusText[data-state=conflict]{color:#b42318}.tita-saveStatusText[data-state=error] i,.tita-saveStatusText[data-state=conflict] i{background-color:#d92d20}.tita-saveStatusText[data-state=loading],.tita-saveStatusText[data-state=saving]{color:#b54708}.tita-uiDrawerOverlay{z-index:1000;background-color:var(--tita-scrim);--tw-backdrop-blur:blur(1px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);position:fixed;inset:0}.tita-uiDrawerContent{z-index:1001;border-left-style:var(--tw-border-style);border-left-width:1px;border-color:var(--tita-line-strong);background-color:var(--color-white);width:min(400px,100vw);color:var(--tita-ink);--tw-shadow:-18px 0 44px var(--tw-shadow-color,#0f172a29);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-direction:column;animation:.16s ease-out tita-uiDrawerIn;display:flex;position:fixed;top:0;bottom:0;right:0}.tita-uiDrawerContent:focus{--tw-outline-style:none;outline-style:none}@keyframes tita-uiDrawerIn{0%{opacity:.4;transform:translate(14px)}to{opacity:1;transform:translate(0)}}.tita-uiDrawerHeader{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--tita-line);justify-content:space-between;align-items:flex-start;gap:10px;padding:15px 44px 13px 18px;display:flex}.tita-uiDrawerClose{cursor:pointer;border-style:var(--tw-border-style);width:28px;height:28px;color:var(--tita-ink-muted);background-color:#0000;border-width:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:12px;right:12px}.tita-uiDrawerClose:hover{background-color:var(--tita-surface-muted);color:var(--tita-ink)}.tita-uiDrawerTitle{--tw-font-weight:var(--font-weight-bold);font-size:15px;font-weight:var(--font-weight-bold);color:var(--tita-ink);margin:0}.tita-uiDrawerDescription{color:var(--tita-ink-muted);margin-inline:0;margin-top:2px;margin-bottom:0;font-size:11px}.tita-uiDrawerBody{box-sizing:border-box;flex:1;width:100%;min-width:0;max-width:100%;min-height:0;padding-block:15px;padding-inline:18px;overflow:auto}.tita-uiDrawerFooter{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--tita-line);justify-content:flex-end;gap:7px;padding-block:12px;padding-inline:18px;display:flex}.tita-uiOpenNotice{z-index:1005;--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);max-width:min(560px,100vw - 32px);translate:var(--tw-translate-x) var(--tw-translate-y);border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-tone-amber-line);background-color:var(--tita-tone-amber-tint);--tw-leading:1.6;color:var(--tita-tone-amber);border-radius:10px;align-items:flex-start;gap:9px;padding-block:10px;padding-inline:12px;font-size:11.5px;line-height:1.6;animation:.14s ease-out tita-uiOpenNoticeIn;display:flex;position:fixed;bottom:18px;left:50%}@keyframes tita-uiOpenNoticeIn{0%{opacity:.4;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.tita-uiOpenNotice{animation:none}}.tita-uiOpenNotice>svg{flex:none;margin-top:2px}.tita-uiOpenNotice>span{flex:1;min-width:0}.tita-uiOpenNotice>span b{--tw-font-weight:700;font-weight:700}.tita-uiOpenNotice>span code{font-family:var(--font-mono);word-break:break-all;background:currentColor;border-radius:6px;margin-top:3px;padding-block:3px;padding-inline:6px;font-size:10.5px;display:block}@supports (color:color-mix(in lab, red, red)){.tita-uiOpenNotice>span code{background:color-mix(in srgb, currentColor 10%, transparent)}}.tita-uiOpenNoticeClose{border-style:var(--tw-border-style);color:inherit;opacity:.7;cursor:pointer;background-color:#0000;border-width:0;border-radius:6px;flex:none;padding:3px}.tita-uiOpenNoticeClose:hover{opacity:1}.tita-versionTimelineHead{--tw-font-weight:750;--tw-tracking:.04em;letter-spacing:.04em;color:var(--tita-ink-muted);margin-inline:0;margin-top:18px;margin-bottom:10px;font-size:11px;font-weight:750}.tita-versionList{margin:0;padding:0;list-style-type:none}.tita-versionItem{grid-template-columns:15px minmax(0,1fr);gap:8px;padding-bottom:9px;display:grid;position:relative}.tita-versionItem:last-child{padding-bottom:0}.tita-versionItem:before{background-color:var(--tita-line-strong);content:"";width:1px;position:absolute;top:13px;bottom:0;left:6px}.tita-versionItem:last-child:before{display:none}.tita-versionDot{z-index:1;border-style:var(--tw-border-style);background-color:#98a2b3;border-width:3px;border-color:#eaecf0;border-radius:3.40282e38px;width:13px;height:13px;margin-top:3px;position:relative}.tita-versionItem-current .tita-versionDot{border-color:var(--tita-primary-wash);background-color:var(--tita-primary)}.tita-versionItem-previewing .tita-versionDot{background-color:#d9880a;border-color:#fde3b3}.tita-versionItem-previewing:after{content:"";z-index:0;pointer-events:none;background-color:#fffaef;border-radius:7px;position:absolute;inset:-3px -7px 4px 23px;box-shadow:inset 0 0 0 1px #f2dfbc}.tita-versionItem-previewing .tita-versionBody{z-index:1;position:relative}.tita-versionBody{min-width:0}.tita-versionBody strong{color:#344054;font-size:12px;display:block}.tita-versionBody p{--tw-leading:1.55;color:#475467;margin-inline:0;margin-top:2px;margin-bottom:0;font-size:11px;line-height:1.55}.tita-versionBody small{color:var(--tita-ink-muted);font-size:10px}.tita-versionActions{flex-wrap:wrap;gap:2px;margin-top:3px;display:flex}.tita-versionEmpty{color:var(--tita-ink-muted);padding-block:16px;padding-inline:0;font-size:12px}.tita-versionGroup{display:block}.tita-versionGroupHead small{--tw-font-weight:500;color:var(--tita-ink-muted);font-size:10px;font-weight:500}.tita-versionGroupCount{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);margin-left:auto}.tita-versionGroupLabel{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--tita-surface-muted);--tw-font-weight:750;color:var(--tita-ink-muted);margin-inline:0;border-radius:7px;align-items:center;gap:6px;margin-top:16px;margin-bottom:10px;padding-block:7px;padding-inline:9px;font-size:11px;font-weight:750;display:flex}.tita-versionGroupLabel small{--tw-font-weight:500;font-size:10px;font-weight:500}.tita-versionDay{z-index:2;background-color:var(--color-white);--tw-font-weight:750;--tw-tracking:.04em;letter-spacing:.04em;color:var(--tita-ink-muted);margin-inline:0;margin-top:9px;margin-bottom:6px;padding-block:3px;font-size:10px;font-weight:750;position:sticky;top:-15px}.tita-versionRowHit-static{cursor:default}.tita-versionSummary{--tw-leading:1.5;color:#475467;margin-top:1px;font-size:11px;line-height:1.5;display:block}.tita-versionDetailHead{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.tita-versionDetailHead strong{--tw-font-weight:750;color:#344054;font-size:12px;font-weight:750}.tita-versionDetailHead small{color:var(--tita-ink-muted);font-size:10px}.tita-versionLinkButton{cursor:pointer;border-style:var(--tw-border-style);--tw-font-weight:650;color:var(--tita-primary);text-underline-offset:2px;background-color:#0000;border-width:0;align-items:center;gap:3px;margin:0;padding:0;font-size:11px;font-weight:650;display:inline-flex}.tita-versionLinkButton:hover:not(:disabled){text-decoration-line:underline}.tita-versionLinkButton:disabled{cursor:not-allowed;color:var(--tita-ink-muted);text-decoration-line:none}.tita-versionReplay{align-items:center;gap:10px;margin-top:8px;display:flex}.tita-versionReplayCount{color:var(--tita-ink-muted);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);font-size:10px}.tita-versionInspect{border-radius:var(--radius-tita-block);border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--tita-surface);flex-direction:column;gap:4px;padding-block:6px;padding-inline:10px;display:flex}.tita-versionInspectControls{align-items:center;gap:8px;display:flex}.tita-versionInspectDetail{align-items:center;min-width:0;display:flex}.tita-versionInspectVersus{--tw-font-weight:500;color:var(--tita-ink-muted);flex:none;font-size:12px;font-weight:500}.tita-versionInspectSpacer{flex:1}.tita-versionInspectSummary{--tw-leading:1;color:var(--tita-ink-muted);flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:12px;line-height:1;display:flex}.tita-versionPreviewBar{border-style:var(--tw-border-style);background-color:#fff8eb;border-width:1px;border-color:#f0d29e;border-radius:8px;flex-direction:column;gap:6px;padding-block:8px;padding-inline:12px;display:flex}.tita-versionPreviewHead{align-items:center;gap:9px;display:flex}.tita-versionPreviewTools{border-top-style:var(--tw-border-style);border-color:#f3e2c4;border-top-width:1px;flex-wrap:wrap;align-items:center;gap:6px 14px;padding-top:6px;display:flex}.tita-versionPreviewTools .tita-versionReplay{margin-top:0}.tita-versionPreviewMark{color:#a86412;background-color:#fdf0d5;border-radius:3.40282e38px;flex:none;place-items:center;width:22px;height:22px;display:grid}.tita-versionPreviewText{flex:1;min-width:0}.tita-versionPreviewText strong{color:#8a5210;font-size:12px;display:block}.tita-versionPreviewText small{color:var(--tita-ink-muted);margin-top:1px;font-size:10px;display:block}.tita-versionPreviewSwitch{white-space:nowrap;color:var(--tita-ink-muted);align-items:center;gap:6px;font-size:10px;display:flex}.tita-versionPreviewLegend{color:var(--tita-ink-muted);align-items:center;gap:10px;font-size:10px;display:flex}.tita-versionPreviewLegend span{align-items:center;gap:4px;display:inline-flex}.tita-versionPreviewLegend i{border-style:var(--tw-border-style);border-width:1px;border-radius:2px;width:9px;height:9px}.tita-versionPreviewLegend i.is-add{background-color:#e6f7ee;border-color:#a8dcc0}.tita-versionPreviewLegend i.is-modify{background-color:#fff5e0;border-color:#f0d29e}.tita-versionPreviewLegend i.is-remove{background-color:#fdeceb;border-color:#f0c9c4}.tita-versionPreviewChanges{color:#8a5210;font-size:11px}.tita-versionHead{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.tita-versionHead strong{--tw-font-weight:750;color:#344054;font-size:12px;font-weight:750}.tita-versionRevision{color:var(--tita-ink-muted);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);font-size:10px}.tita-versionMeta,.tita-versionIntent{color:var(--tita-ink-muted);margin-top:1px;font-size:10px;display:block}.tita-versionCompressed{color:#a86412;margin-top:1px;font-size:10px;display:block}.tita-versionItem-superseded .tita-versionSummary{color:var(--tita-ink-muted)}.tita-versionDot-user{background-color:#98a2b3;border-color:#eaecf0}.tita-versionDot-agent{border-color:var(--tita-primary-wash);background-color:var(--tita-primary)}.tita-versionBadge{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);--tw-font-weight:var(--font-weight-bold);min-height:18px;font-size:10px;font-weight:var(--font-weight-bold);white-space:nowrap;border-radius:3.40282e38px;align-items:center;padding-inline:6px;display:inline-flex}.tita-versionBadge-open{color:#a86412;background-color:#fff8eb;border-color:#f0d29e}.tita-versionBadge-committed{color:#137d59;background-color:#effaf4;border-color:#bfe8d5}.tita-versionBadge-restored{color:#2d64be;background-color:#f1f6ff;border-color:#c8dcff}.tita-versionBadge-superseded{border-color:var(--tita-line);background-color:var(--tita-surface-muted);color:var(--tita-ink-muted)}.tita-versionSteps{flex-direction:column;gap:2px;margin-top:4px;padding-left:1px;display:flex}.tita-versionStepHint{color:var(--tita-ink-muted);font-size:10px}.tita-versionStep span{--tw-leading:1.35;--tw-font-weight:650;font-size:10.5px;font-weight:650;line-height:1.35}.tita-versionStep small{--tw-leading:1.35;color:var(--tita-ink-faint);font-size:10px;line-height:1.35}.tita-uiDrawerContent-wide{width:min(820px,100vw)}.tita-uiDrawerResize{z-index:20;cursor:col-resize;touch-action:none;width:10px;position:absolute;top:0;bottom:0;left:0}.tita-uiDrawerResize:after{content:"";--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);width:2px;height:38px;translate:var(--tw-translate-x) var(--tw-translate-y);background-color:var(--tita-line-strong);opacity:0;border-radius:3.40282e38px;transition:opacity .15s;position:absolute;top:50%;left:4px}.tita-uiDrawerResize:hover:after,.tita-uiDrawerResize:focus-visible:after{opacity:1}.tita-uiDrawerResize:focus-visible{--tw-outline-style:none;outline-style:none}.tita-versionDiff{margin-top:12px}.tita-versionDiffBar{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.tita-versionDiffHead{--tw-font-weight:var(--font-weight-bold);font-size:11px;font-weight:var(--font-weight-bold);color:var(--tita-ink-muted);flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.tita-versionDiffStat{--tw-font-weight:650;border-radius:4px;padding-block:1px;padding-inline:5px;font-size:10px;font-weight:650}.tita-versionDiffStat-add{color:#137d59;background-color:#effaf4}.tita-versionDiffStat-remove{color:#b42318;background-color:#fef3f2}.tita-versionDiffStat-modify{color:#2d64be;background-color:#f1f6ff}.tita-versionDiffStat-structure{color:#a86412;background-color:#fff8eb}.tita-versionDiffSegmented{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);border-radius:6px;flex:none;display:inline-flex;overflow:hidden}.tita-versionDiffSegmented button{cursor:pointer;border-style:var(--tw-border-style);border-width:0;border-right-style:var(--tw-border-style);border-right-width:1px;border-color:var(--tita-line);background-color:var(--color-white);color:var(--tita-ink-muted);margin:0;padding-block:4px;padding-inline:9px;font-size:11px}.tita-versionDiffSegmented button:last-child{border-right-style:var(--tw-border-style);border-right-width:0}.tita-versionDiffSegmented button[aria-pressed=true],.tita-versionDiffSegmented button[aria-selected=true]{background-color:var(--tita-primary-soft);--tw-font-weight:650;color:var(--tita-primary-hover);font-weight:650}.tita-versionDiffSegmented small{color:var(--tita-ink-muted);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);margin-left:2px}.tita-versionDiffTabs{flex-wrap:wrap;margin-bottom:8px}.tita-versionDiff{flex-direction:column;gap:8px;display:flex}.tita-versionDiffItem{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--color-white);border-radius:7px;padding-block:8px;padding-inline:10px}.tita-versionDiffHunk,.tita-versionDiffTextSplit{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--color-white);border-radius:7px;overflow:hidden}.tita-versionDiff-fullText .tita-versionDiffTextSplit{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:min(65vh,680px);overflow:hidden auto}.tita-versionDiffTextSplitHead,.tita-versionDiffTextSplitRow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;display:grid}.tita-versionDiffTextSplitHead{--tw-font-weight:650;color:var(--tita-ink-muted);background-color:#f4f7fc;padding-block:5px;padding-inline:9px;font-size:10px;font-weight:650}.tita-versionDiff-fullText .tita-versionDiffTextSplitHead{z-index:1;position:sticky;top:0}.tita-versionDiffTextSplitRow{padding-block:1px;padding-inline:1px}.tita-versionDiffTextCell{--tw-leading:1.45;overflow-wrap:break-word;white-space:pre-wrap;min-width:0;min-height:24px;font-size:11px;line-height:1.45;font-family:var(--tita-mono,ui-monospace, Menlo, monospace);border-radius:3px;padding-block:4px;padding-inline:8px}.tita-versionDiffTextCell-before{color:#b42318;background-color:#fef3f2}.tita-versionDiffTextCell-after{color:#137d59;background-color:#effaf4}.tita-versionDiffTextCell-same{background-color:var(--color-white);color:var(--tita-ink-muted)}.tita-versionDiffTextCell-empty{background-color:#fbfcfd}.tita-versionDiffTextSkip{border-block-style:var(--tw-border-style);border-block-width:1px;border-color:var(--tita-line);color:var(--tita-ink-faint);background-color:#fbfcfd;grid-column:span 2/span 2;padding-block:4px;padding-inline:9px;font-size:10px}.tita-versionDiffHunkHead{color:#5b6b8c;font-size:10px;font-family:var(--tita-mono,ui-monospace, SFMono-Regular, Menlo, monospace);background-color:#f4f7fc;padding-block:3px;padding-inline:9px}.tita-versionDiffSkip{border-block-style:var(--tw-border-style);border-block-width:1px;border-color:var(--tita-line);color:var(--tita-ink-faint);background-color:#fbfcfd;padding-block:3px;padding-inline:9px;font-size:10px}.tita-versionDiffPair{grid-template-columns:64px minmax(0,1fr);align-items:flex-start;gap:6px;padding-block:2px;padding-inline:9px;display:grid}.tita-versionDiffCoord{color:var(--tita-ink-faint);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);font-size:10px;font-family:var(--tita-mono,ui-monospace, Menlo, monospace);padding-top:1px}.tita-versionDiffHunkLines{flex-direction:column;gap:1px;min-width:0;display:flex}.tita-versionDiffHunkLines .tita-versionDiffLine{overflow-wrap:break-word;white-space:pre-wrap;font-family:var(--tita-mono,ui-monospace, Menlo, monospace);border-radius:3px;padding-inline:5px}.tita-versionDiffSplit{border-style:var(--tw-border-style);border-width:1px;border-color:var(--tita-line);background-color:var(--color-white);border-radius:7px;overflow:hidden}.tita-versionDiffSplitHead,.tita-versionDiffSplitRow{grid-template-columns:62px minmax(0,1fr) minmax(0,1fr);gap:1px;display:grid}.tita-versionDiffSplitHead{color:var(--tita-ink-muted);background-color:#f4f7fc;padding-block:3px;padding-inline:9px;font-size:10px}.tita-versionDiffSplitRow{padding-block:2px;padding-inline:9px}.tita-versionDiffCell{overflow-wrap:break-word;white-space:pre-wrap;border-radius:3px;min-width:0;padding-block:1px;padding-inline:5px;font-size:11px}.tita-versionDiffCell-before{color:#b42318;background-color:#fef3f2}.tita-versionDiffCell-after{color:#137d59;background-color:#effaf4}.tita-versionDiffCell-empty{background-color:#0000}.tita-versionDiffTitle{align-items:center;gap:6px;display:flex}.tita-versionDiffTitle strong{word-break:break-all;color:#344054;font-size:11px}.tita-versionDiffKind{--tw-font-weight:750;text-transform:uppercase;border-radius:4px;padding-block:1px;padding-inline:5px;font-size:9px;font-weight:750}.tita-versionDiffKind-cell{color:#2d64be;background-color:#f1f6ff}.tita-versionDiffKind-variable{color:#634cc2;background-color:#f7f4ff}.tita-versionDiffKind-structure{color:#a86412;background-color:#fff8eb}.tita-versionDiffKind-metadata{background-color:var(--tita-surface-muted);color:var(--tita-ink-muted)}.tita-versionDiffKind-sheet{color:#137d59;background-color:#effaf4}.tita-versionDiffItem p{--tw-leading:1.55;color:#475467;margin-inline:0;margin-top:4px;margin-bottom:0;font-size:11px;line-height:1.55}.tita-versionDiffLines{background-color:var(--tita-surface-muted);font-family:var(--font-mono);--tw-leading:1.6;white-space:pre;margin-inline:0;border-radius:6px;margin-top:6px;margin-bottom:0;padding-block:7px;padding-inline:9px;font-size:10px;line-height:1.6;overflow:auto}.tita-versionDiffLine{display:block}.tita-versionDiffLine-add{color:#137d59;background-color:#effaf4}.tita-versionDiffLine-remove{color:#b42318;background-color:#fef3f2}.tita-versionDiffLine-same{color:var(--tita-ink-muted)}.tita-versionRestoreSummary{background-color:var(--tita-surface-muted);color:#475467;margin-inline:0;border-radius:7px;margin-top:12px;margin-bottom:0;padding-block:9px;padding-inline:11px;font-size:12px}.tita-versionSaveField{color:var(--tita-ink-muted);flex-direction:column;gap:6px;margin-top:14px;font-size:12px;display:flex}.tita-versionCompare{color:var(--tita-ink-muted);align-items:center;gap:8px;margin-top:12px;font-size:11px;display:flex}.tita-uiCalendar .rdp-root{--rdp-accent-color:var(--tita-primary);--rdp-accent-background-color:var(--tita-primary-soft);--rdp-day-height:34px;--rdp-day-width:34px;--rdp-day_button-border-radius:6px;--rdp-day_button-border:1px solid transparent;--rdp-day_button-height:32px;--rdp-day_button-width:32px;--rdp-selected-border:1px solid transparent;--rdp-nav-height:36px;--rdp-nav_button-height:28px;--rdp-nav_button-width:28px;--rdp-months-gap:14px;--rdp-range_middle-background-color:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){.tita-uiCalendar .rdp-root{--rdp-range_middle-background-color:color-mix(in srgb, var(--tita-primary) 12%, var(--tita-surface))}}.tita-uiCalendar .rdp-root{--rdp-range_start-date-background-color:var(--tita-primary);--rdp-range_end-date-background-color:var(--tita-primary);--rdp-today-color:var(--tita-primary);width:max-content;max-width:100%;color:var(--tita-ink);font-family:var(--tita-font);font-size:12px}.tita-uiCalendar .rdp-months{gap:var(--rdp-months-gap);flex-wrap:nowrap}.tita-uiCalendar .rdp-month_caption{height:var(--rdp-nav-height);align-items:center;font-size:12px;font-weight:650}.tita-uiCalendar .rdp-nav{height:var(--rdp-nav-height)}.tita-uiCalendar .rdp-button_previous,.tita-uiCalendar .rdp-button_next{color:var(--tita-ink-muted);border-radius:6px}.tita-uiCalendar .rdp-button_previous:hover,.tita-uiCalendar .rdp-button_next:hover{background:var(--tita-surface-muted);color:var(--tita-ink)}.tita-uiCalendar .rdp-button_previous:focus-visible,.tita-uiCalendar .rdp-button_next:focus-visible,.tita-uiCalendar .rdp-day_button:focus-visible{outline:2px solid var(--tita-focus-ring);outline-offset:1px}.tita-uiCalendar .rdp-chevron{fill:currentColor;color:var(--tita-ink-faint)}.tita-uiCalendar .rdp-weekday{color:var(--tita-ink-faint);padding:5px 0;font-size:10px;font-weight:550}.tita-uiCalendar .rdp-day_button{color:var(--tita-ink);font-size:11px}.tita-uiCalendar .rdp-day_button:hover:not(:disabled){background:var(--tita-surface-muted)}.tita-uiCalendar .rdp-today:not(.rdp-outside){color:var(--rdp-today-color);font-weight:700}.tita-uiCalendar .rdp-selected{font-size:12px;font-weight:650}.tita-uiCalendar .rdp-selected .rdp-day_button{color:var(--tita-primary-foreground);background-color:var(--tita-primary)}.tita-uiCalendar .rdp-selected .rdp-day_button:hover:not(:disabled){color:var(--tita-primary-foreground);background-color:var(--tita-primary-hover)}.tita-uiCalendar .rdp-today:not(.rdp-outside):not(.rdp-selected) .rdp-day_button{box-shadow:inset 0 0 0 1px var(--tita-primary)}.tita-uiCalendar .rdp-range_start .rdp-day_button,.tita-uiCalendar .rdp-range_end .rdp-day_button{color:var(--tita-primary-foreground)}.tita-uiCalendar .rdp-range_start .rdp-day_button:hover,.tita-uiCalendar .rdp-range_end .rdp-day_button:hover{background:var(--tita-primary-hover);color:var(--tita-primary-foreground)}.tita-uiCalendar .rdp-range_middle .rdp-day_button{color:var(--tita-ink);background-color:var(--rdp-range_middle-background-color)}.tita-uiCalendar .tl-calendar-range-preview-start{background:var(--rdp-range_start-background)}.tita-uiCalendar .tl-calendar-range-preview-middle{background:var(--rdp-range_middle-background-color)}.tita-uiCalendar .tl-calendar-range-preview-end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.tita-uiCalendar .tl-calendar-range-preview-start .rdp-day_button,.tita-uiCalendar .tl-calendar-range-preview-end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_start-date-background-color)}.tita-uiCalendar .tl-calendar-range-preview-middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}@media (prefers-reduced-motion:reduce){.tita-sortable-row{transition:none!important}}.tita-sortable-row .tita-sortable-handle.is-hover-reveal{opacity:0;transition:opacity .12s}.tita-sortable-row:hover .tita-sortable-handle.is-hover-reveal,.tita-sortable-row:focus-within .tita-sortable-handle.is-hover-reveal,.tita-sortable-row .tita-sortable-handle.is-hover-reveal:focus-visible{opacity:1}.tita-sortable-row .tita-sortable-handle.is-keyboard-only{z-index:1;opacity:0;clip-path:inset(50%);white-space:nowrap;flex-basis:1px;width:1px;min-width:1px;max-width:1px;height:1px;min-height:1px;max-height:1px;padding:0;position:absolute;inset-inline-start:0;overflow:hidden}.tita-sortable-row .tita-sortable-handle.is-keyboard-only:focus-visible{opacity:1;clip-path:none;flex-basis:20px;width:20px;min-width:20px;max-width:20px;height:28px;min-height:28px;max-height:28px;position:relative;overflow:visible}@media (hover:none){.tita-sortable-row .tita-sortable-handle.is-hover-reveal{opacity:1}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--animate-spin:spin 1s linear infinite;--blur-xs:4px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--font-tita:var(--tita-font);--radius-tita-block:8px;--radius-tita-control:7px;--radius-tita-overlay:10px}}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.top-0{top:0}.top-1\\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-\\[3px\\]{top:3px}.top-\\[12px\\]{top:12px}.right-2{right:calc(var(--spacing) * 2)}.right-\\[12px\\]{right:12px}.bottom-\\[3px\\]{bottom:3px}.left-0{left:0}.left-1\\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-\\[3px\\]{left:3px}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-1001{z-index:1001}.z-\\[900\\]{z-index:900}.z-\\[1000\\]{z-index:1000}.z-\\[1001\\]{z-index:1001}.z-\\[1002\\]{z-index:1002}.z-\\[1004\\]{z-index:1004}.row-0{grid-row:0}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mx-0{margin-inline:0}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-\\[2px\\]{margin-inline:2px}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing)}.my-3{margin-block:calc(var(--spacing) * 3)}.my-\\[5px\\]{margin-block:5px}.ms-7{margin-inline-start:calc(var(--spacing) * 7)}.mt-0{margin-top:0}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mt-\\[1px\\]{margin-top:1px}.mt-\\[2px\\]{margin-top:2px}.mt-\\[3px\\]{margin-top:3px}.mt-\\[5px\\]{margin-top:5px}.mt-\\[6px\\]{margin-top:6px}.mt-\\[7px\\]{margin-top:7px}.mt-\\[16px\\]{margin-top:16px}.mt-\\[18px\\]{margin-top:18px}.mt-auto{margin-top:auto}.mr-1{margin-right:var(--spacing)}.mr-3{margin-right:calc(var(--spacing) * 3)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-0{margin-bottom:0}.mb-0\\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-\\[10px\\]{margin-bottom:10px}.-ml-2{margin-left:calc(var(--spacing) * -2)}.ml-0\\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:var(--spacing)}.ml-1\\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-\\[22px\\]{margin-left:22px}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.table{display:table}.aspect-\\[4\\/3\\]{aspect-ratio:4/3}.size-2\\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-\\[7px\\]{width:7px;height:7px}.size-\\[12px\\]{width:12px;height:12px}.size-\\[13px\\]{width:13px;height:13px}.size-\\[14px\\]{width:14px;height:14px}.size-\\[15px\\]{width:15px;height:15px}.size-\\[17px\\]{width:17px;height:17px}.size-\\[18px\\]{width:18px;height:18px}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-\\[3px\\]{height:3px}.h-\\[12px\\]{height:12px}.h-\\[16px\\]{height:16px}.h-\\[18px\\]{height:18px}.h-\\[20px\\]{height:20px}.h-\\[24px\\]{height:24px}.h-\\[25px\\]{height:25px}.h-\\[26px\\]{height:26px}.h-\\[28px\\]{height:28px}.h-\\[30px\\]{height:30px}.h-\\[calc\\(100\\%-1px\\)\\]{height:calc(100% - 1px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\\(--radix-context-menu-content-available-height\\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\\(--radix-dropdown-menu-content-available-height\\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\\(--radix-select-content-available-height\\){max-height:var(--radix-select-content-available-height)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-72{max-height:calc(var(--spacing) * 72)}.max-h-\\[36vh\\]{max-height:36vh}.max-h-\\[52\\%\\]{max-height:52%}.max-h-\\[62\\%\\]{max-height:62%}.max-h-\\[240px\\]{max-height:240px}.max-h-\\[420px\\]{max-height:420px}.max-h-\\[calc\\(100vh-32px\\)\\]{max-height:calc(100vh - 32px)}.max-h-none{max-height:none}.min-h-0{min-height:0}.min-h-\\[16px\\]{min-height:16px}.min-h-\\[23px\\]{min-height:23px}.min-h-\\[24px\\]{min-height:24px}.min-h-\\[25px\\]{min-height:25px}.min-h-\\[26px\\]{min-height:26px}.min-h-\\[28px\\]{min-height:28px}.min-h-\\[30px\\]{min-height:30px}.min-h-\\[34px\\]{min-height:34px}.min-h-\\[36px\\]{min-height:36px}.min-h-\\[38px\\]{min-height:38px}.min-h-\\[64px\\]{min-height:64px}.min-h-dvh{min-height:100dvh}.w-\\(--radix-dropdown-menu-trigger-width\\){width:var(--radix-dropdown-menu-trigger-width)}.w-2{width:calc(var(--spacing) * 2)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-72{width:calc(var(--spacing) * 72)}.w-96{width:calc(var(--spacing) * 96)}.w-96\\!{width:calc(var(--spacing) * 96)!important}.w-\\[12px\\]{width:12px}.w-\\[20px\\]{width:20px}.w-\\[22px\\]{width:22px}.w-\\[24px\\]{width:24px}.w-\\[26px\\]{width:26px}.w-\\[28px\\]{width:28px}.w-\\[30px\\]{width:30px}.w-\\[52px\\]{width:52px}.w-\\[92px\\]{width:92px}.w-\\[104px\\]{width:104px}.w-\\[160px\\]{width:160px}.w-\\[200px\\]{width:200px}.w-\\[268px\\]{width:268px}.w-\\[min\\(200px\\,100\\%\\)\\]{width:min(200px,100%)}.w-\\[min\\(238px\\,76\\%\\)\\]{width:min(238px,76%)}.w-\\[min\\(240px\\,100\\%\\)\\]{width:min(240px,100%)}.w-\\[min\\(355px\\,calc\\(100vw-32px\\)\\)\\]{width:min(355px,100vw - 32px)}.w-\\[min\\(360px\\,62\\%\\)\\]{width:min(360px,62%)}.w-\\[min\\(420px\\,calc\\(100vw-32px\\)\\)\\]{width:min(420px,100vw - 32px)}.w-\\[min\\(520px\\,100\\%\\)\\]{width:min(520px,100%)}.w-\\[min\\(540px\\,calc\\(100vw-24px\\)\\)\\]{width:min(540px,100vw - 24px)}.w-\\[min\\(720px\\,calc\\(100vw-32px\\)\\)\\]{width:min(720px,100vw - 32px)}.w-\\[min\\(900px\\,calc\\(100vw-32px\\)\\)\\]{width:min(900px,100vw - 32px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-3xl{max-width:var(--container-3xl)}.max-w-\\[46ch\\]{max-width:46ch}.max-w-\\[70ch\\]{max-width:70ch}.max-w-\\[72ch\\]{max-width:72ch}.max-w-\\[200px\\]{max-width:200px}.max-w-\\[220px\\]{max-width:220px}.max-w-\\[260px\\]{max-width:260px}.max-w-\\[280px\\]{max-width:280px}.max-w-\\[300px\\]{max-width:300px}.max-w-\\[320px\\]{max-width:320px}.max-w-\\[1040px\\]{max-width:1040px}.max-w-\\[calc\\(100\\%-2rem\\)\\]{max-width:calc(100% - 2rem)}.max-w-\\[calc\\(100\\%-128px\\)\\]{max-width:calc(100% - 128px)}.max-w-\\[min\\(900px\\,calc\\(100vw-32px\\)\\)\\]{max-width:min(900px,100vw - 32px)}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-36{min-width:calc(var(--spacing) * 36)}.min-w-\\[16rem\\]{min-width:16rem}.min-w-\\[24px\\]{min-width:24px}.min-w-\\[26px\\]{min-width:26px}.min-w-\\[30px\\]{min-width:30px}.min-w-\\[42px\\]{min-width:42px}.min-w-\\[82px\\]{min-width:82px}.min-w-\\[96px\\]{min-width:96px}.min-w-\\[150px\\]{min-width:150px}.min-w-\\[184px\\]{min-width:184px}.min-w-\\[200px\\]{min-width:200px}.min-w-\\[236px\\]{min-width:236px}.min-w-\\[680px\\]{min-width:680px}.min-w-max{min-width:max-content}.flex-1{flex:1}.flex-none{flex:none}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.origin-\\(--radix-context-menu-content-transform-origin\\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\\(--radix-dropdown-menu-content-transform-origin\\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\\(--radix-popover-content-transform-origin\\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\\(--radix-select-content-transform-origin\\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\\(--radix-tooltip-content-transform-origin\\){transform-origin:var(--radix-tooltip-content-transform-origin)}.origin-left{transform-origin:0}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\\[calc\\(-50\\%_-_2px\\)\\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-y{resize:vertical}.scroll-my-1{scroll-margin-block:var(--spacing)}.list-decimal{list-style-type:decimal}.list-none{list-style-type:none}.auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.grid-flow-col{grid-auto-flow:column}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0{gap:0}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-\\[3px\\]{gap:3px}.gap-\\[5px\\]{gap:5px}.gap-\\[6px\\]{gap:6px}.gap-\\[7px\\]{gap:7px}.gap-\\[8px\\]{gap:8px}.gap-px{gap:1px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-1\\.5{column-gap:calc(var(--spacing) * 1.5)}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-0\\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:var(--spacing)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.gap-y-\\[6px\\]{row-gap:6px}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-tita-line>:not(:last-child)){border-color:var(--tita-line)}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-\\[2px\\]{border-radius:2px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[5px\\]{border-radius:5px}.rounded-\\[6px\\]{border-radius:6px}.rounded-\\[7px\\]{border-radius:7px}.rounded-\\[9px\\]{border-radius:9px}.rounded-\\[10px\\]{border-radius:10px}.rounded-\\[11px\\]{border-radius:11px}.rounded-\\[inherit\\]{border-radius:inherit}.rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\]{border-radius:min(var(--radius-md), 10px)}.rounded-\\[min\\(var\\(--radius-md\\)\\,12px\\)\\]{border-radius:min(var(--radius-md), 12px)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-tita-block{border-radius:var(--radius-tita-block)}.rounded-tita-control{border-radius:var(--radius-tita-control)}.rounded-tita-overlay{border-radius:var(--radius-tita-overlay)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\\[\\#a8dcc0\\]{border-color:#a8dcc0}.border-\\[\\#bfe8d5\\]{border-color:#bfe8d5}.border-\\[\\#c8dcff\\]{border-color:#c8dcff}.border-\\[\\#d9ceff\\]{border-color:#d9ceff}.border-\\[\\#efb8b3\\]{border-color:#efb8b3}.border-\\[\\#f0c9c4\\]{border-color:#f0c9c4}.border-\\[\\#f0d29e\\]{border-color:#f0d29e}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-tita-line{border-color:var(--tita-line)}.border-tita-line-strong{border-color:var(--tita-line-strong)}.border-tita-primary{border-color:var(--tita-primary)}.border-tita-primary-line{border-color:var(--tita-primary-line)}.border-tita-tone-amber-line{border-color:var(--tita-tone-amber-line)}.border-tita-tone-green-line{border-color:var(--tita-tone-green-line)}.border-transparent{border-color:#0000}.border-b-transparent{border-bottom-color:#0000}.bg-\\[\\#e6f7ee\\]{background-color:#e6f7ee}.bg-\\[\\#effaf4\\]{background-color:#effaf4}.bg-\\[\\#f1f6ff\\]{background-color:#f1f6ff}.bg-\\[\\#f7f4ff\\]{background-color:#f7f4ff}.bg-\\[\\#fdeceb\\]{background-color:#fdeceb}.bg-\\[\\#fff5e0\\]{background-color:#fff5e0}.bg-\\[\\#fff8eb\\]{background-color:#fff8eb}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.bg-black\\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-border{background-color:var(--border)}.bg-destructive\\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-foreground{background-color:var(--foreground)}.bg-muted,.bg-muted\\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-tita-canvas{background-color:var(--tita-canvas)}.bg-tita-line{background-color:var(--tita-line)}.bg-tita-line-strong{background-color:var(--tita-line-strong)}.bg-tita-primary{background-color:var(--tita-primary)}.bg-tita-primary-soft{background-color:var(--tita-primary-soft)}.bg-tita-scrim{background-color:var(--tita-scrim)}.bg-tita-success{background-color:var(--tita-success)}.bg-tita-surface{background-color:var(--tita-surface)}.bg-tita-surface-muted{background-color:var(--tita-surface-muted)}.bg-tita-surface\\/95{background-color:var(--tita-surface)}@supports (color:color-mix(in lab, red, red)){.bg-tita-surface\\/95{background-color:color-mix(in oklab, var(--tita-surface) 95%, transparent)}}.bg-tita-tone-amber-tint{background-color:var(--tita-tone-amber-tint)}.bg-tita-tone-green-tint{background-color:var(--tita-tone-green-tint)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-clip-padding{background-clip:padding-box}.fill-foreground{fill:var(--foreground)}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\\[1px\\]{padding:1px}.p-\\[3px\\]{padding:3px}.p-\\[5px\\]{padding:5px}.p-\\[18px\\]{padding:18px}.px-0{padding-inline:0}.px-1{padding-inline:var(--spacing)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-\\[3px\\]{padding-inline:3px}.px-\\[5px\\]{padding-inline:5px}.px-\\[6px\\]{padding-inline:6px}.px-\\[7px\\]{padding-inline:7px}.px-\\[8px\\]{padding-inline:8px}.px-\\[9px\\]{padding-inline:9px}.px-\\[10px\\]{padding-inline:10px}.px-\\[14px\\]{padding-inline:14px}.px-\\[18px\\]{padding-inline:18px}.py-0{padding-block:0}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-14{padding-block:calc(var(--spacing) * 14)}.py-\\[1px\\]{padding-block:1px}.py-\\[3px\\]{padding-block:3px}.py-\\[4px\\]{padding-block:4px}.py-\\[5px\\]{padding-block:5px}.py-\\[6px\\]{padding-block:6px}.py-\\[7px\\]{padding-block:7px}.py-\\[9px\\]{padding-block:9px}.py-\\[10px\\]{padding-block:10px}.py-\\[13px\\]{padding-block:13px}.py-\\[14px\\]{padding-block:14px}.ps-5{padding-inline-start:calc(var(--spacing) * 5)}.pt-0{padding-top:0}.pt-0\\.5{padding-top:calc(var(--spacing) * .5)}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-\\[7px\\]{padding-top:7px}.pt-\\[8px\\]{padding-top:8px}.pr-8{padding-right:calc(var(--spacing) * 8)}.pr-\\[8px\\]{padding-right:8px}.pr-\\[28px\\]{padding-right:28px}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-2\\.5{padding-bottom:calc(var(--spacing) * 2.5)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pb-\\[3px\\]{padding-bottom:3px}.pl-1{padding-left:var(--spacing)}.pl-1\\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.pl-\\[8px\\]{padding-left:8px}.pl-\\[13px\\]{padding-left:13px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-\\[-1px\\]{vertical-align:-1px}.align-top{vertical-align:top}.font-\\[inherit\\]{font-family:inherit}.font-mono{font-family:var(--font-mono)}.font-tita{font-family:var(--tita-font)}.font-tita-mono{font-family:var(--tita-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[0\\.8rem\\]{font-size:.8rem}.text-\\[9\\.5px\\]{font-size:9.5px}.text-\\[9px\\]{font-size:9px}.text-\\[10\\.5px\\]{font-size:10.5px}.text-\\[10px\\]{font-size:10px}.text-\\[11\\.5px\\]{font-size:11.5px}.text-\\[11px\\]{font-size:11px}.text-\\[12\\.5px\\]{font-size:12.5px}.text-\\[12px\\]{font-size:12px}.text-\\[13\\.5px\\]{font-size:13.5px}.text-\\[13px\\]{font-size:13px}.text-\\[14px\\]{font-size:14px}.text-\\[15px\\]{font-size:15px}.text-\\[16px\\]{font-size:16px}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-\\[1\\.6\\]{--tw-leading:1.6;line-height:1.6}.leading-\\[1\\.7\\]{--tw-leading:1.7;line-height:1.7}.leading-\\[14px\\]{--tw-leading:14px;line-height:14px}.leading-\\[15px\\]{--tw-leading:15px;line-height:15px}.leading-\\[inherit\\]{--tw-leading:inherit;line-height:inherit}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-\\[600\\]{--tw-font-weight:600;font-weight:600}.font-\\[650\\]{--tw-font-weight:650;font-weight:650}.font-\\[700\\]{--tw-font-weight:700;font-weight:700}.font-\\[750\\]{--tw-font-weight:750;font-weight:750}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\\[-0\\.01em\\]{--tw-tracking:-.01em;letter-spacing:-.01em}.tracking-\\[-0\\.02em\\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-\\[\\.06em\\]{--tw-tracking:.06em;letter-spacing:.06em}.tracking-\\[0\\.02em\\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\\[0\\.05em\\]{--tw-tracking:.05em;letter-spacing:.05em}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.\\[overflow-wrap\\:anywhere\\]{overflow-wrap:anywhere}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[\\#2d64be\\]{color:#2d64be}.text-\\[\\#137d59\\]{color:#137d59}.text-\\[\\#634cc2\\]{color:#634cc2}.text-\\[\\#475467\\]{color:#475467}.text-\\[\\#a86412\\]{color:#a86412}.text-\\[\\#b42318\\]{color:#b42318}.text-background{color:var(--background)}.text-destructive{color:var(--destructive)}.text-foreground\\/60{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\\/60{color:color-mix(in oklab, var(--foreground) 60%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-tita-danger{color:var(--tita-danger)}.text-tita-ink{color:var(--tita-ink)}.text-tita-ink-faint{color:var(--tita-ink-faint)}.text-tita-ink-muted{color:var(--tita-ink-muted)}.text-tita-primary{color:var(--tita-primary)}.text-tita-primary-foreground{color:var(--tita-primary-foreground)}.text-tita-success{color:var(--tita-success)}.text-tita-tone-green{color:var(--tita-tone-green)}.text-tita-warning{color:var(--tita-warning)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.accent-\\[var\\(--tita-primary\\)\\]{accent-color:var(--tita-primary)}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_2px_rgb\\(15_23_42_\\/_0\\.03\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0f172a08);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_2px_rgb\\(15_23_42_\\/_0\\.05\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0f172a0d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_2px_var\\(--tita-primary-shadow\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,var(--tita-primary-shadow));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_3px_rgb\\(15_23_42_\\/_0\\.16\\)\\,inset_0_0_0_1px_var\\(--tita-primary-shadow\\)\\]{--tw-shadow:0 1px 3px var(--tw-shadow-color,#0f172a29), inset 0 0 0 1px var(--tw-shadow-color,var(--tita-primary-shadow));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_2px_10px_rgb\\(15_23_42_\\/_0\\.08\\)\\]{--tw-shadow:0 2px 10px var(--tw-shadow-color,#0f172a14);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_16px_36px_rgb\\(15_23_42_\\/_0\\.16\\)\\,0_2px_7px_rgb\\(15_23_42_\\/_0\\.06\\)\\]{--tw-shadow:0 16px 36px var(--tw-shadow-color,#0f172a29), 0 2px 7px var(--tw-shadow-color,#0f172a0f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_24px_60px_rgb\\(15_23_42_\\/_0\\.2\\)\\,0_4px_12px_rgb\\(15_23_42_\\/_0\\.08\\)\\]{--tw-shadow:0 24px 60px var(--tw-shadow-color,#0f172a33), 0 4px 12px var(--tw-shadow-color,#0f172a14);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground\\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.ring-ring{--tw-ring-color:var(--ring)}.ring-tita-primary{--tw-ring-color:var(--tita-primary)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-tita-surface{--tw-ring-offset-color:var(--tita-surface)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\\[2px\\]{--tw-backdrop-blur:blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-\\[background\\,border-color\\]{transition-property:background,border-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[background\\,color\\,box-shadow\\]{transition-property:background,color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[background\\,color\\]{transition-property:background,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[border-color\\,background\\,box-shadow\\]{transition-property:border-color,background,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[color\\,background\\,border-color\\,box-shadow\\]{transition-property:color,background,border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[color\\,background\\,border-color\\]{transition-property:color,background,border-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\,opacity\\]{transition-property:grid-template-rows,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-\\[120ms\\]{--tw-duration:.12s;transition-duration:.12s}.duration-\\[140ms\\]{--tw-duration:.14s;transition-duration:.14s}.ease-\\[cubic-bezier\\(0\\.16\\,1\\,0\\.3\\,1\\)\\]{--tw-ease:cubic-bezier(.16,1,.3,1);transition-timing-function:cubic-bezier(.16,1,.3,1)}.ease-\\[cubic-bezier\\(0\\.22\\,0\\.61\\,0\\.36\\,1\\)\\]{--tw-ease:cubic-bezier(.22,.61,.36,1);transition-timing-function:cubic-bezier(.22,.61,.36,1)}.ease-\\[ease\\]{--tw-ease:ease;transition-timing-function:ease}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.paused{animation-play-state:paused}.running{animation-play-state:running}@media (hover:hover){.group-hover\\:scale-\\[1\\.03\\]:is(:where(.group):hover *){scale:1.03}}.group-focus\\/context-menu-item\\:text-accent-foreground:is(:where(.group\\/context-menu-item):focus *),.group-focus\\/dropdown-menu-item\\:text-accent-foreground:is(:where(.group\\/dropdown-menu-item):focus *){color:var(--accent-foreground)}.group-has-\\[\\:focus-visible\\]\\/field-label\\:border-transparent:is(:where(.group\\/field-label):has(:focus-visible) *){border-color:#0000}.group-has-\\[\\:focus-visible\\]\\/field-label\\:ring-0:is(:where(.group\\/field-label):has(:focus-visible) *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\\[size\\=default\\]\\/switch\\:size-4:is(:where(.group\\/switch)[data-size=default] *){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.group-data-\\[size\\=sm\\]\\/switch\\:size-3:is(:where(.group\\/switch)[data-size=sm] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.group-data-\\[variant\\=line\\]\\/tabs-list\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *){background-color:#0000}.group-data-horizontal\\/tabs\\:h-8:is(:where(.group\\/tabs):where([data-orientation=horizontal]) *){height:calc(var(--spacing) * 8)}.group-data-vertical\\/tabs\\:h-fit:is(:where(.group\\/tabs):where([data-orientation=vertical]) *){height:fit-content}.group-data-vertical\\/tabs\\:w-full:is(:where(.group\\/tabs):where([data-orientation=vertical]) *){width:100%}.group-data-vertical\\/tabs\\:flex-col:is(:where(.group\\/tabs):where([data-orientation=vertical]) *){flex-direction:column}.group-data-vertical\\/tabs\\:justify-start:is(:where(.group\\/tabs):where([data-orientation=vertical]) *){justify-content:flex-start}.marker\\:text-tita-ink-faint ::marker{color:var(--tita-ink-faint)}.marker\\:text-tita-ink-faint::marker{color:var(--tita-ink-faint)}.marker\\:text-tita-ink-faint ::-webkit-details-marker{color:var(--tita-ink-faint)}.marker\\:text-tita-ink-faint::-webkit-details-marker{color:var(--tita-ink-faint)}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:-inset-x-3:after{content:var(--tw-content);inset-inline:calc(var(--spacing) * -3)}.after\\:-inset-y-2:after{content:var(--tw-content);inset-block:calc(var(--spacing) * -2)}.after\\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\\:opacity-0:after{content:var(--tw-content);opacity:0}.after\\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-horizontal\\/tabs\\:after\\:inset-x-0:is(:where(.group\\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);inset-inline:0}.group-data-horizontal\\/tabs\\:after\\:bottom-\\[-5px\\]:is(:where(.group\\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\\/tabs\\:after\\:h-0\\.5:is(:where(.group\\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-vertical\\/tabs\\:after\\:inset-y-0:is(:where(.group\\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);inset-block:0}.group-data-vertical\\/tabs\\:after\\:-right-1:is(:where(.group\\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-vertical\\/tabs\\:after\\:w-0\\.5:is(:where(.group\\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}.first\\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.first\\:pt-1:first-child{padding-top:var(--spacing)}.focus-within\\:border-tita-primary:focus-within{border-color:var(--tita-primary)}.focus-within\\:outline-\\[3px\\]:focus-within{outline-style:var(--tw-outline-style);outline-width:3px}.focus-within\\:outline-offset-1:focus-within{outline-offset:1px}.focus-within\\:outline-tita-focus-ring:focus-within{outline-color:var(--tita-focus-ring)}@media (hover:hover){.hover\\:border-tita-line-strong:hover{border-color:var(--tita-line-strong)}.hover\\:bg-\\[color-mix\\(in_oklch\\,var\\(--secondary\\)\\,var\\(--foreground\\)_5\\%\\)\\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-\\[color-mix\\(in_oklch\\,var\\(--secondary\\)\\,var\\(--foreground\\)_5\\%\\)\\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\\:bg-destructive\\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-destructive\\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\\:bg-muted:hover{background-color:var(--muted)}.hover\\:bg-primary\\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-primary\\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\\:bg-tita-surface-muted:hover{background-color:var(--tita-surface-muted)}.hover\\:text-foreground:hover{color:var(--foreground)}.hover\\:text-tita-ink:hover{color:var(--tita-ink)}.hover\\:text-tita-ink-muted:hover{color:var(--tita-ink-muted)}.hover\\:underline:hover{text-decoration-line:underline}}.focus\\:bg-accent:focus{background-color:var(--accent)}.focus\\:text-accent-foreground:focus,:is(.focus\\:\\*\\*\\:text-accent-foreground:focus *),:is(.not-data-\\[variant\\=destructive\\]\\:focus\\:\\*\\*\\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--accent-foreground)}.focus-visible\\:border-destructive\\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:border-destructive\\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\\:border-tita-primary:focus-visible{border-color:var(--tita-primary)}.focus-visible\\:opacity-100:focus-visible{opacity:1}.focus-visible\\:ring-3:focus-visible,.focus-visible\\:ring-\\[3px\\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\\:outline-\\[3px\\]:focus-visible{outline-style:var(--tw-outline-style);outline-width:3px}.focus-visible\\:outline-offset-1:focus-visible{outline-offset:1px}.focus-visible\\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\\:outline-offset-\\[-2px\\]:focus-visible{outline-offset:-2px}.focus-visible\\:outline-ring:focus-visible{outline-color:var(--ring)}.focus-visible\\:outline-tita-focus-ring:focus-visible{outline-color:var(--tita-focus-ring)}.active\\:cursor-grabbing:active{cursor:grabbing}.active\\:not-aria-\\[haspopup\\]\\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}@media (hover:hover){.enabled\\:hover\\:border-tita-danger:enabled:hover{border-color:var(--tita-danger)}.enabled\\:hover\\:border-tita-line:enabled:hover{border-color:var(--tita-line)}.enabled\\:hover\\:border-tita-line-strong:enabled:hover{border-color:var(--tita-line-strong)}.enabled\\:hover\\:border-tita-primary-hover:enabled:hover{border-color:var(--tita-primary-hover)}.enabled\\:hover\\:border-tita-primary-line:enabled:hover{border-color:var(--tita-primary-line)}.enabled\\:hover\\:border-transparent:enabled:hover{border-color:#0000}.enabled\\:hover\\:bg-\\[\\#fff5f5\\]:enabled:hover{background-color:#fff5f5}.enabled\\:hover\\:bg-tita-primary-hover:enabled:hover{background-color:var(--tita-primary-hover)}.enabled\\:hover\\:bg-tita-primary-soft:enabled:hover{background-color:var(--tita-primary-soft)}.enabled\\:hover\\:bg-tita-surface:enabled:hover{background-color:var(--tita-surface)}.enabled\\:hover\\:bg-tita-surface-muted:enabled:hover{background-color:var(--tita-surface-muted)}.enabled\\:hover\\:text-\\[\\#991b1b\\]:enabled:hover{color:#991b1b}.enabled\\:hover\\:text-tita-danger:enabled:hover{color:var(--tita-danger)}.enabled\\:hover\\:text-tita-ink:enabled:hover{color:var(--tita-ink)}.enabled\\:hover\\:text-tita-ink-muted:enabled:hover{color:var(--tita-ink-muted)}.enabled\\:hover\\:text-tita-primary:enabled:hover{color:var(--tita-primary)}.enabled\\:hover\\:text-white:enabled:hover{color:var(--color-white)}}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\\[slot\\=button-group\\]\\:rounded-lg{border-radius:var(--radius-lg)}.has-data-\\[icon\\=inline-end\\]\\:pr-1:has([data-icon=inline-end]){padding-right:var(--spacing)}.has-data-\\[icon\\=inline-end\\]\\:pr-1\\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\\[icon\\=inline-end\\]\\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\\[icon\\=inline-start\\]\\:pl-1:has([data-icon=inline-start]){padding-left:var(--spacing)}.has-data-\\[icon\\=inline-start\\]\\:pl-1\\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\\[icon\\=inline-start\\]\\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.has-data-\\[slot\\=kbd\\]\\:pr-1\\.5:has([data-slot=kbd]){padding-right:calc(var(--spacing) * 1.5)}.aria-expanded\\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-invalid\\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.aria-invalid\\:outline-\\[3px\\][aria-invalid=true]{outline-style:var(--tw-outline-style);outline-width:3px}.aria-invalid\\:outline-destructive\\/20[aria-invalid=true]{outline-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\\:outline-destructive\\/20[aria-invalid=true]{outline-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-inset\\:pl-7[data-inset]{padding-left:calc(var(--spacing) * 7)}.data-placeholder\\:text-tita-ink-faint[data-placeholder]{color:var(--tita-ink-faint)}.data-\\[align-trigger\\=true\\]\\:animate-none[data-align-trigger=true]{animation:none}.data-\\[position\\=popper\\]\\:h-\\(--radix-select-trigger-height\\)[data-position=popper]{height:var(--radix-select-trigger-height)}.data-\\[position\\=popper\\]\\:w-full[data-position=popper]{width:100%}.data-\\[position\\=popper\\]\\:min-w-\\(--radix-select-trigger-width\\)[data-position=popper]{min-width:var(--radix-select-trigger-width)}.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\\[size\\=default\\]\\:h-8[data-size=default]{height:calc(var(--spacing) * 8)}.data-\\[size\\=default\\]\\:h-\\[18\\.4px\\][data-size=default]{height:18.4px}.data-\\[size\\=default\\]\\:h-auto[data-size=default]{height:auto}.data-\\[size\\=default\\]\\:w-\\[32px\\][data-size=default]{width:32px}.data-\\[size\\=sm\\]\\:h-7[data-size=sm]{height:calc(var(--spacing) * 7)}.data-\\[size\\=sm\\]\\:h-\\[14px\\][data-size=sm]{height:14px}.data-\\[size\\=sm\\]\\:w-\\[24px\\][data-size=sm]{width:24px}:is(.\\*\\*\\:data-\\[slot\\=kbd\\]\\:relative *)[data-slot=kbd]{position:relative}:is(.\\*\\*\\:data-\\[slot\\=kbd\\]\\:isolate *)[data-slot=kbd]{isolation:isolate}:is(.\\*\\*\\:data-\\[slot\\=kbd\\]\\:z-50 *)[data-slot=kbd]{z-index:50}:is(.\\*\\*\\:data-\\[slot\\=kbd\\]\\:rounded-sm *)[data-slot=kbd]{border-radius:var(--radius-sm)}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex>*)[data-slot=select-value]{display:flex}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-\\[7px\\]>*)[data-slot=select-value]{gap:7px}.data-\\[state\\=active\\]\\:border-b-tita-primary[data-state=active]{border-bottom-color:var(--tita-primary)}.data-\\[state\\=active\\]\\:text-tita-primary[data-state=active]{color:var(--tita-primary)}.data-\\[state\\=closed\\]\\:overflow-hidden[data-state=closed]{overflow:hidden}.data-\\[state\\=delayed-open\\]\\:animate-in[data-state=delayed-open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\\[state\\=delayed-open\\]\\:fade-in-0[data-state=delayed-open]{--tw-enter-opacity:0}.data-\\[state\\=delayed-open\\]\\:zoom-in-95[data-state=delayed-open]{--tw-enter-scale:.95}.data-\\[state\\=inactive\\]\\:hidden[data-state=inactive]{display:none}.data-\\[state\\=open\\]\\:border-tita-primary-line[data-state=open]{border-color:var(--tita-primary-line)}.data-\\[state\\=open\\]\\:bg-tita-primary-soft[data-state=open]{background-color:var(--tita-primary-soft)}.data-\\[variant\\=destructive\\]\\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.data-\\[variant\\=destructive\\]\\:focus\\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}.data-\\[variant\\=line\\]\\:rounded-none[data-variant=line]{border-radius:0}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media not all and (min-width:40rem){.max-sm\\:ms-4{margin-inline-start:calc(var(--spacing) * 4)}.max-sm\\:ps-2{padding-inline-start:calc(var(--spacing) * 2)}}@media (min-width:40rem){.sm\\:w-\\[150px\\]{width:150px}.sm\\:max-w-sm{max-width:var(--container-sm)}.sm\\:grid-cols-\\[140px_1fr\\]{grid-template-columns:140px 1fr}.sm\\:flex-row{flex-direction:row}.sm\\:items-baseline{align-items:baseline}.sm\\:justify-end{justify-content:flex-end}.sm\\:gap-3{gap:calc(var(--spacing) * 3)}}@media (min-width:64rem){.lg\\:w-\\[300px\\]{width:300px}.lg\\:flex-row{flex-direction:row}}.dark\\:border-input:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){border-color:var(--input)}.dark\\:bg-destructive\\/20:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-destructive\\/20:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:text-muted-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]){color:var(--muted-foreground)}@media (hover:hover){.dark\\:hover\\:bg-destructive\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-destructive\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\\:hover\\:bg-input\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-input\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\\:hover\\:bg-muted\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-muted\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.dark\\:hover\\:text-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):hover{color:var(--foreground)}}.dark\\:focus-visible\\:ring-destructive\\/40:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:focus-visible\\:ring-destructive\\/40:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:aria-invalid\\:border-destructive\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:border-destructive\\/50:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\\:aria-invalid\\:ring-destructive\\/40:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:ring-destructive\\/40:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme])[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-open\\:animate-in:where([data-state=open]),.data-open\\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\\:bg-accent:where([data-state=open]),.data-open\\:bg-accent:where([data-open]:not([data-open=false])){background-color:var(--accent)}.data-open\\:text-accent-foreground:where([data-state=open]),.data-open\\:text-accent-foreground:where([data-open]:not([data-open=false])){color:var(--accent-foreground)}.data-open\\:fade-in-0:where([data-state=open]),.data-open\\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\\:zoom-in-95:where([data-state=open]),.data-open\\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}.data-closed\\:animate-out:where([data-state=closed]),.data-closed\\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\\:fade-out-0:where([data-state=closed]),.data-closed\\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\\:zoom-out-95:where([data-state=closed]),.data-closed\\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.data-checked\\:bg-primary:where([data-state=checked]),.data-checked\\:bg-primary:where([data-checked]:not([data-checked=false])){background-color:var(--primary)}.group-data-\\[size\\=default\\]\\/switch\\:data-checked\\:translate-x-\\[calc\\(100\\%-2px\\)\\]:is(:where(.group\\/switch)[data-size=default] *):where([data-state=checked]),.group-data-\\[size\\=default\\]\\/switch\\:data-checked\\:translate-x-\\[calc\\(100\\%-2px\\)\\]:is(:where(.group\\/switch)[data-size=default] *):where([data-checked]:not([data-checked=false])),.group-data-\\[size\\=sm\\]\\/switch\\:data-checked\\:translate-x-\\[calc\\(100\\%-2px\\)\\]:is(:where(.group\\/switch)[data-size=sm] *):where([data-state=checked]),.group-data-\\[size\\=sm\\]\\/switch\\:data-checked\\:translate-x-\\[calc\\(100\\%-2px\\)\\]:is(:where(.group\\/switch)[data-size=sm] *):where([data-checked]:not([data-checked=false])){--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\\:data-checked\\:bg-primary-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=checked]),.dark\\:data-checked\\:bg-primary-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-checked]:not([data-checked=false])){background-color:var(--primary-foreground)}.data-unchecked\\:bg-input:where([data-state=unchecked]),.data-unchecked\\:bg-input:where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}.group-data-\\[size\\=default\\]\\/switch\\:data-unchecked\\:translate-x-0:is(:where(.group\\/switch)[data-size=default] *):where([data-state=unchecked]),.group-data-\\[size\\=default\\]\\/switch\\:data-unchecked\\:translate-x-0:is(:where(.group\\/switch)[data-size=default] *):where([data-unchecked]:not([data-unchecked=false])),.group-data-\\[size\\=sm\\]\\/switch\\:data-unchecked\\:translate-x-0:is(:where(.group\\/switch)[data-size=sm] *):where([data-state=unchecked]),.group-data-\\[size\\=sm\\]\\/switch\\:data-unchecked\\:translate-x-0:is(:where(.group\\/switch)[data-size=sm] *):where([data-unchecked]:not([data-unchecked=false])){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\\:data-unchecked\\:bg-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=unchecked]),.dark\\:data-unchecked\\:bg-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--foreground)}.dark\\:data-unchecked\\:bg-input\\/80:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=unchecked]),.dark\\:data-unchecked\\:bg-input\\/80:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-unchecked\\:bg-input\\/80:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=unchecked]),.dark\\:data-unchecked\\:bg-input\\/80:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-unchecked]:not([data-unchecked=false])){background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.data-disabled\\:pointer-events-none:where([data-disabled=true]),.data-disabled\\:pointer-events-none:where([data-disabled]:not([data-disabled=false])){pointer-events:none}.data-disabled\\:cursor-not-allowed:where([data-disabled=true]),.data-disabled\\:cursor-not-allowed:where([data-disabled]:not([data-disabled=false])){cursor:not-allowed}.data-disabled\\:opacity-50:where([data-disabled=true]),.data-disabled\\:opacity-50:where([data-disabled]:not([data-disabled=false])){opacity:.5}.data-active\\:bg-background:where([data-state=active]),.data-active\\:bg-background:where([data-active]:not([data-active=false])){background-color:var(--background)}.data-active\\:text-foreground:where([data-state=active]),.data-active\\:text-foreground:where([data-active]:not([data-active=false])){color:var(--foreground)}.group-data-\\[variant\\=default\\]\\/tabs-list\\:data-active\\:shadow-sm:is(:where(.group\\/tabs-list)[data-variant=default] *):where([data-state=active]),.group-data-\\[variant\\=default\\]\\/tabs-list\\:data-active\\:shadow-sm:is(:where(.group\\/tabs-list)[data-variant=default] *):where([data-active]:not([data-active=false])){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:shadow-none:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:shadow-none:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:is(.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:after\\:opacity-100:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:after\\:opacity-100:is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false]))):after{content:var(--tw-content);opacity:1}.dark\\:data-active\\:border-input:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=active]),.dark\\:data-active\\:border-input:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-active]:not([data-active=false])){border-color:var(--input)}.dark\\:data-active\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=active]),.dark\\:data-active\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-active]:not([data-active=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-active\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=active]),.dark\\:data-active\\:bg-input\\/30:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-active]:not([data-active=false])){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:data-active\\:text-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-state=active]),.dark\\:data-active\\:text-foreground:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):where([data-active]:not([data-active=false])){color:var(--foreground)}.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:border-transparent:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:border-transparent:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){border-color:#0000}.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent:is(body[data-ds-dark-theme] *,body[data-ds-dark-theme]):is(:where(.group\\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.data-horizontal\\:flex-col:where([data-orientation=horizontal]){flex-direction:column}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_svg\\]\\:text-tita-ink-faint svg{color:var(--tita-ink-faint)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3\\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-\\[14px\\] svg:not([class*=size-]){width:14px;height:14px}:is(.\\*\\:\\[a\\]\\:underline>*):is(a){text-decoration-line:underline}:is(.\\*\\:\\[a\\]\\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){:is(.\\*\\:\\[a\\]\\:hover\\:text-foreground>*):is(a):hover{color:var(--foreground)}}:is(.\\*\\:\\[span\\]\\:last\\:flex>*):is(span):last-child{display:flex}:is(.\\*\\:\\[span\\]\\:last\\:items-center>*):is(span):last-child{align-items:center}:is(.\\*\\:\\[span\\]\\:last\\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.focus\\:\\*\\:\\[svg\\]\\:text-accent-foreground:focus>*):is(svg){color:var(--accent-foreground)}:is(.data-\\[variant\\=destructive\\]\\:\\*\\:\\[svg\\]\\:text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)}.\\[\\&\\[readonly\\]\\]\\:cursor-text[readonly]{cursor:text}.\\[\\&\\[readonly\\]\\]\\:border-tita-line[readonly]{border-color:var(--tita-line)}.\\[\\&\\[readonly\\]\\]\\:bg-tita-surface-muted[readonly]{background-color:var(--tita-surface-muted)}.\\[\\&\\[readonly\\]\\]\\:text-tita-ink[readonly]{color:var(--tita-ink)}:root,body{--tita-canvas:var(--dsw-alias-bg-base,#f7f8fa);--tita-surface:var(--dsw-alias-bg-layer-1,#fff);--tita-surface-muted:var(--dsw-alias-interactive-bg-hover-solid,#f2f4f7);--tita-line:var(--dsw-alias-border-l2,#e4e7ec);--tita-line-strong:var(--dsw-alias-border-l4,#d0d5dd);--tita-scrim:var(--dsw-alias-bg-mask-1,#0f172a47);--tita-ink:var(--dsw-alias-label-primary,#101828);--tita-ink-muted:var(--dsw-alias-label-secondary,#475467);--tita-ink-faint:var(--dsw-alias-label-tertiary,#667085);--tita-primary:var(--dsw-static-deepseek-600,#4868b2);--tita-primary-foreground:#fff;--tita-primary-soft:var(--dsw-static-deepseek-50,#edf3fe);--tita-primary-hover:var(--dsw-static-deepseek-800,#34415b);--tita-primary-line:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-primary-line:color-mix(in srgb, var(--tita-primary) 45%, var(--tita-surface))}}:root,body{--tita-primary-wash:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-primary-wash:color-mix(in srgb, var(--tita-primary) 30%, var(--tita-surface))}}:root,body{--tita-primary-shadow:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-primary-shadow:color-mix(in srgb, var(--tita-primary) 14%, transparent)}}:root,body{--tita-success:#067647;--tita-warning:#b54708;--tita-danger:#b42318;--tita-danger-foreground:#fff;--tita-danger-hover:var(--dsw-static-red-500,#ef4444);--tita-tone-blue:#2d64be;--tita-tone-violet:#634cc2;--tita-tone-green:#137d59;--tita-tone-amber:#a86412;--tita-tone-blue-tint:var(--tita-tone-blue)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-blue-tint:color-mix(in srgb, var(--tita-tone-blue) 10%, var(--tita-surface))}}:root,body{--tita-tone-violet-tint:var(--tita-tone-violet)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-violet-tint:color-mix(in srgb, var(--tita-tone-violet) 10%, var(--tita-surface))}}:root,body{--tita-tone-green-tint:var(--tita-tone-green)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-green-tint:color-mix(in srgb, var(--tita-tone-green) 10%, var(--tita-surface))}}:root,body{--tita-tone-amber-tint:var(--tita-tone-amber)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-amber-tint:color-mix(in srgb, var(--tita-tone-amber) 10%, var(--tita-surface))}}:root,body{--tita-tone-blue-line:var(--tita-tone-blue)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-blue-line:color-mix(in srgb, var(--tita-tone-blue) 32%, var(--tita-surface))}}:root,body{--tita-tone-violet-line:var(--tita-tone-violet)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-violet-line:color-mix(in srgb, var(--tita-tone-violet) 32%, var(--tita-surface))}}:root,body{--tita-tone-green-line:var(--tita-tone-green)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-green-line:color-mix(in srgb, var(--tita-tone-green) 32%, var(--tita-surface))}}:root,body{--tita-tone-amber-line:var(--tita-tone-amber)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-tone-amber-line:color-mix(in srgb, var(--tita-tone-amber) 32%, var(--tita-surface))}}:root,body{--tita-focus-ring:var(--tita-primary)}@supports (color:color-mix(in lab, red, red)){:root,body{--tita-focus-ring:color-mix(in srgb, var(--tita-primary) 22%, transparent)}}:root,body{--radius-tita-block:8px;--radius-tita-control:7px;--radius-tita-overlay:10px;--tita-font:var(--dsw-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif);--tita-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--color-tita-canvas:var(--tita-canvas);--color-tita-paper:var(--tita-canvas);--color-tita-surface:var(--tita-surface);--color-tita-surface-muted:var(--tita-surface-muted);--color-tita-line:var(--tita-line);--color-tita-line-strong:var(--tita-line-strong);--color-tita-ink:var(--tita-ink);--color-tita-ink-muted:var(--tita-ink-muted);--color-tita-ink-faint:var(--tita-ink-faint);--color-tita-primary:var(--tita-primary);--color-tita-primary-foreground:var(--tita-primary-foreground);--color-tita-primary-soft:var(--tita-primary-soft);--color-tita-primary-hover:var(--tita-primary-hover);--color-tita-primary-line:var(--tita-primary-line);--color-tita-primary-wash:var(--tita-primary-wash);--color-tita-primary-shadow:var(--tita-primary-shadow);--color-tita-focus-ring:var(--tita-focus-ring);--color-tita-scrim:var(--tita-scrim);--color-tita-success:var(--tita-success);--color-tita-warning:var(--tita-warning);--color-tita-danger:var(--tita-danger);--color-tita-danger-foreground:var(--tita-danger-foreground);--color-tita-danger-hover:var(--tita-danger-hover);--color-tita-tone-blue:var(--tita-tone-blue);--color-tita-tone-blue-tint:var(--tita-tone-blue-tint);--color-tita-tone-blue-line:var(--tita-tone-blue-line);--color-tita-tone-violet:var(--tita-tone-violet);--color-tita-tone-violet-tint:var(--tita-tone-violet-tint);--color-tita-tone-violet-line:var(--tita-tone-violet-line);--color-tita-tone-green:var(--tita-tone-green);--color-tita-tone-green-tint:var(--tita-tone-green-tint);--color-tita-tone-green-line:var(--tita-tone-green-line);--color-tita-tone-amber:var(--tita-tone-amber);--color-tita-tone-amber-tint:var(--tita-tone-amber-tint);--color-tita-tone-amber-line:var(--tita-tone-amber-line);--font-tita:var(--tita-font);--font-tita-mono:var(--tita-mono)}body[data-ds-dark-theme]{--tita-primary:var(--dsw-static-deepseek-400,#7aaaff);--tita-primary-foreground:var(--dsw-static-neutral-bluish-1000,#0f1115);--tita-primary-soft:var(--dsw-static-deepseek-900,#283142);--tita-primary-hover:var(--dsw-static-deepseek-300,#b7c8fe);--tita-tone-blue:var(--dsw-static-deepseek-400,#7aaaff);--tita-tone-violet:#b9a8ff;--tita-tone-green:var(--dsw-static-green-400,#4ed17e);--tita-tone-amber:var(--dsw-static-amber-400,#f7ad31);--tita-success:var(--dsw-static-green-400,#4ed17e);--tita-warning:var(--dsw-static-amber-400,#f7ad31);--tita-danger:var(--dsw-static-red-400,#f25a5a);--tita-danger-foreground:var(--dsw-static-neutral-bluish-1000,#0f1115);--tita-danger-hover:var(--dsw-static-red-400,#f25a5a)}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root,body{--background:var(--tita-canvas);--foreground:var(--tita-ink);--card:var(--tita-surface);--card-foreground:var(--tita-ink);--popover:var(--tita-surface);--popover-foreground:var(--tita-ink);--primary:var(--tita-primary);--primary-foreground:var(--tita-primary-foreground);--secondary:var(--tita-surface-muted);--secondary-foreground:var(--tita-ink);--muted:var(--tita-surface-muted);--muted-foreground:var(--tita-ink-muted);--accent:var(--tita-primary-soft);--accent-foreground:var(--tita-primary);--destructive:var(--tita-danger);--destructive-foreground:#fff;--border:var(--tita-line);--input:var(--tita-line-strong);--ring:var(--tita-primary);--sidebar:var(--tita-surface);--sidebar-foreground:var(--tita-ink);--sidebar-primary:var(--tita-primary);--sidebar-primary-foreground:var(--tita-primary-foreground);--sidebar-accent:var(--tita-primary-soft);--sidebar-accent-foreground:var(--tita-primary);--sidebar-border:var(--tita-line);--sidebar-ring:var(--tita-primary);--chart-1:var(--tita-primary);--chart-2:var(--tita-success);--chart-3:var(--tita-warning);--chart-4:var(--tita-danger);--chart-5:var(--tita-ink-faint);--radius:var(--radius-tita-control)}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-leading{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}`;
|
|
114311
|
+
var tagId2 = "dsh-data-domain-knowledge//private/tmp/dsh-knowledge-alpha-release/packages/ui/lib/styles.css";
|
|
114553
114312
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId2) + "]") === null) {
|
|
114554
114313
|
const tag = document.createElement("style");
|
|
114555
114314
|
tag.dataset.plugin = "dsh-data-domain-knowledge";
|
|
@@ -114558,9 +114317,9 @@ if (typeof document !== "undefined" && document.querySelector("style[data-plugin
|
|
|
114558
114317
|
document.head.appendChild(tag);
|
|
114559
114318
|
}
|
|
114560
114319
|
|
|
114561
|
-
// data-domain-knowledge-css:/
|
|
114562
|
-
var css3 = '/* ---------------------------------------------------------------- tokens\n *\n * **\u672C\u6587\u4EF6\u4E0D\u518D\u58F0\u660E\u4EFB\u4F55 `--tita-*` \u540D\u5B57\u3002** \u8BFB\u6CD5\u56E0\u6B64\u53EA\u6709\u4E00\u6761\uFF1A`--tita-*` \u4E00\u5F8B\u6307\n * `packages/ui/src/theme.css` \u7684\u5171\u4EAB\u4EE4\u724C\uFF08\u58F0\u660E\u5728 `:root, body` \u4E0A\uFF0C\u8DDF\u7740\u5BBF\u4E3B\u7684\n * `data-ds-dark-theme` \u4E00\u8D77\u7FFB\uFF09\uFF0C\u63D2\u4EF6\u81EA\u5DF1\u6D3E\u751F\u7684\u989C\u8272\u4E00\u5F8B\u6302 `--ddk-` \u524D\u7F00\u3002\n *\n * \u65E7\u7248\u5728\u8FD9\u91CC\u91CD\u5B9A\u4E49\u4E86 `--tita-blue` / `--tita-violet` / `--tita-green` / `--tita-amber`\n * \u56DB\u4E2A\u540C\u540D\u4E0D\u540C\u4E49\u7684\u69FD\u4F4D\uFF08amber \u6307\u5411\u7684\u5176\u5B9E\u662F\u4E3B\u8272\uFF0C`--tita-green` \u662F\u4E00\u4E2A\u4E0D\u53C2\u4E0E\u4E3B\u9898\u7684\n * \u56FA\u5B9A\u503C\uFF09\uFF0C\u540D\u5B57\u4E0E\u5171\u4EAB\u8BCD\u8868\u649E\u8F66\uFF1B\u540C\u65F6 `--tita-ink` \u8FD9\u7C7B\u53C8\u53CD\u8FC7\u6765\u6307\u5411 `--color-tita-ink`\uFF0C\n * \u800C\u540E\u8005\u53C8\u6307\u56DE `--tita-ink` \u2014\u2014 \u5728 `:root` \u4E0A\u6784\u6210\u4E00\u4E2A\u81EA\u5B9A\u4E49\u5C5E\u6027\u73AF\u3002\u73B0\u5728\u4E24\u4EF6\u4E8B\u90FD\u6D88\u5931\u4E86\uFF1A\n * \u5171\u4EAB\u4EE4\u724C\u76F4\u63A5\u8BFB\uFF0C\u63D2\u4EF6\u6D3E\u751F\u8272\u53EA\u6709\u4E00\u4E2A\u6765\u6E90\u3002\n *\n * \u5171\u4EAB\u8BCD\u8868\u91CC\u6CA1\u6709\u300C\u7EA2\u8272\u5E95 / \u7EA2\u8272\u8FB9\u300D\u8FD9\u4E24\u6863\uFF08danger \u53EA\u662F\u4E00\u4E2A\u5BF9\u6BD4\u5EA6\u8FBE\u6807\u7684\u58A8\u8272\uFF09\uFF0C\u6240\u4EE5\u6309\n * \u5171\u4EAB tone \u7684\u540C\u4E00\u5957\u6BD4\u4F8B\u6D3E\u751F\uFF1A10% \u4F5C\u5E95\u300132% \u4F5C\u8FB9\u3002\u6DF7\u7684\u662F surface \u800C\u4E0D\u662F transparent\n * \u2014\u2014 \u900F\u660E\u6DF7\u8272\u5728\u6DF1\u8272\u5E95\u4E0A\u7B49\u4E8E\u770B\u4E0D\u89C1\uFF0C\u800C surface \u4F1A\u8DDF\u7740\u4E3B\u9898\u8D70\u3002\u58F0\u660E\u5728 `:root, body`\n * \u800C\u4E0D\u662F\u53EA\u5728 `:root`\uFF1A\u81EA\u5B9A\u4E49\u5C5E\u6027\u7684 `var()` \u662F\u5728**\u58F0\u660E\u5B83\u7684\u90A3\u4E2A\u5143\u7D20**\u4E0A\u6C42\u503C\u7684\uFF0C\u53EA\u5199\u5728\n * `:root` \u4F1A\u628A\u6D45\u8272\u503C\u51BB\u5728 <html> \u4E0A\u518D\u5206\u53D1\u7ED9\u6240\u6709\u5B50\u8282\u70B9\uFF08\u89C1 theme.css \u6587\u4EF6\u5934\uFF09\u3002\n */\n:root,\nbody {\n --ddk-danger-tint: color-mix(in srgb, var(--tita-danger) 10%, var(--tita-surface));\n --ddk-danger-line: color-mix(in srgb, var(--tita-danger) 32%, var(--tita-surface));\n}\n\n.tita-panel {\n box-sizing: border-box;\n display: flex;\n container-type: inline-size;\n width: 100%;\n min-width: 0;\n /* `position: relative` \u662F\u8FD9\u6761\u300C\u53EA\u5141\u8BB8\u4E00\u4E2A\u6EDA\u52A8\u6761\u300D\u89C4\u5219\u7684\u4E00\u534A\uFF1A\u63D2\u4EF6\u6839\u8282\u70B9\u5FC5\u987B\u540C\u65F6\n \u662F\u5B9A\u4F4D\u4E0A\u4E0B\u6587\u3002\u5426\u5219\u63D2\u4EF6\u5185 position:absolute \u7684\u88C5\u9970/\u65E0\u969C\u788D\u8282\u70B9\uFF08.tita-srOnly\u3001\n \u89C6\u89C9\u9690\u85CF\u7684\u8282\u70B9\u5217\u8868\uFF09\u4F1A\u5411\u4E0A\u627E\u5230\u5BBF\u4E3B\u7684 pane body \u4F5C\u4E3A\u5305\u542B\u5757\uFF0C\u5B83\u4EEC\u7684\u9759\u6001\u4F4D\u7F6E\n \u2014\u2014\u4E5F\u5C31\u662F\u957F\u5185\u5BB9\u7684\u672B\u5C3E\u2014\u2014\u4F1A\u628A\u5BBF\u4E3B\u9762\u677F\u6491\u51FA\u7B2C\u4E8C\u6761\u7A7A\u6EDA\u52A8\u6761\u3002 */\n position: relative;\n /* One scroller only: the panel is capped at the host pane height and\n `.tita-content` owns the vertical scroll, so the host pane never grows a\n second scrollbar beside it. */\n min-height: 0;\n height: 100%;\n max-height: 100%;\n flex-direction: column;\n overflow: hidden;\n background: var(--tita-canvas);\n color: var(--tita-ink);\n /* \u4E4B\u524D\u8FD9\u91CC\u5199\u7684\u662F `Inter, ui-sans-serif, \u2026`\uFF1AInter \u4ECE\u6765\u6CA1\u6709\u88AB\u52A0\u8F7D\u8FC7\uFF08\u6CA1\u6709 @font-face\u3001\n \u6CA1\u6709 font link\uFF09\uFF0C\u6240\u4EE5\u5B83\u4E00\u76F4\u53EA\u662F\u300C\u58F0\u660E\u4E86\u4E00\u4E2A\u4E0D\u5B58\u5728\u7684\u5B57\u4F53\u300D\uFF0C\u5B9E\u9645\u6E32\u67D3\u843D\u5230 ui-sans-serif\u3002\n \u73B0\u5728\u76F4\u63A5\u8BFB\u5171\u4EAB\u7684\u5B57\u4F53 token\uFF0C\u5E76\u4E14\u628A\u4E2D\u6587\u4E5F\u70B9\u540D\u2014\u2014\u4E2D\u6587\u6587\u6848\u4E0D\u8BE5\u4EA4\u7ED9\u6D4F\u89C8\u5668\u7684\u515C\u5E95\u53BB\u51B3\u5B9A\u3002 */\n font-family: var(--font-tita);\n font-size: 13px;\n line-height: 1.45;\n}\n\n.tita-panel *, .tita-panel *::before, .tita-panel *::after { box-sizing: border-box; }\n/* \u9762\u677F\u5206\u4E24\u5C42\uFF1A.tita-tabBar \u662F\u5916\u58F3\uFF08\u6C38\u8FDC\u53EF\u89C1\uFF09\uFF0C.tita-content \u662F\u552F\u4E00\u7684\u6EDA\u52A8\u533A\u3002\n Tab \u653E\u5728\u5916\u58F3\u91CC\u800C\u4E0D\u662F\u9760 position: sticky \u2014\u2014 \u7F6E\u9876\u5C31\u8BE5\u662F\u7ED3\u6784\uFF0C\u4E0D\u662F\u8865\u4E01\u3002\n 0029\uFF1A\u64A4\u6389 tab \u680F\u5E95\u8FB9\u90A3\u6761\u5206\u9694\u7EBF\u3002\u5206\u6BB5\u63A7\u4EF6\u81EA\u5DF1\u5C31\u6709\u8FB9\u6846\u548C\u5E95\u677F\uFF0C\u6A2A\u7EBF\u662F\u7B2C\u4E8C\u9053\n \u533A\u9694\uFF1B\u4E24\u6761\u6328\u7740\u753B\uFF0C\u8BFB\u8D77\u6765\u50CF\u300C\u4E24\u4E2A\u5DE5\u5177\u6761\u53E0\u5728\u4E00\u8D77\u300D\u3002 */\n.tita-panelTabs { display: flex; min-height: 0; flex: 1 1 auto; flex-direction: column; }\n/* \u5E95\u8FB9\u53EA\u7559 4px\uFF1Atab \u81EA\u5DF1\u7684\u4E0B\u8FB9\u6846\u5C31\u662F\u5185\u5BB9\u7684\u5206\u754C\uFF0C\u4E0B\u9762\u518D\u57AB 7px \u53EA\u662F\u628A\u4E24\u8005\u63A8\u5F00\n \uFF08GUI \u53CD\u9988 2026-09-21\u300C\u6BCF\u4E2A tab \u4E0B\u7684\u5185\u5BB9\u8DDD\u79BB tab \u592A\u8FDC\u300D\uFF09\u30028px \u7684\u5185\u5BB9\u4E0A\u8FB9\u8DDD\n \u7531 `TabsContent` \u7ED9\uFF0C\u4E24\u8005\u76F8\u52A0\u624D\u662F\u4ECE\u5206\u754C\u7EBF\u5230\u7B2C\u4E00\u5757\u5185\u5BB9\u7684\u8DDD\u79BB\u3002 */\n.tita-tabBar { display: flex; flex: 0 0 auto; align-items: center; background: var(--tita-surface); padding: 7px 12px 4px; }\n.tita-tabBarTabsViewport { min-width: 0; flex: 1 1 auto; overflow-x: auto; overflow-y: hidden; scrollbar-color: var(--tita-line-strong) transparent; scrollbar-width: thin; }\n.tita-tabBarTabsViewport::-webkit-scrollbar { height: 8px; }\n.tita-tabBarTabsViewport::-webkit-scrollbar-track { background: transparent; }\n.tita-tabBarTabsViewport::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 999px; background-clip: content-box; background-color: var(--tita-line-strong); }\n.tita-tabBarTabsViewport::-webkit-scrollbar-thumb:hover { background-color: var(--tita-ink-faint); }\n.tita-panel .tita-tabBar .tita-tabsList { display: flex; width: max-content; min-width: max-content; max-width: none; overflow: visible; }\n.tita-tabBarSettings { flex: 0 0 auto; margin-left: 8px; }\n/* \u89C6\u56FE\u7EA7\u72B6\u6001\u884C\uFF1A\u53EA\u5728\u771F\u7684\u8BFB\u53D6\u5931\u8D25 / \u8BFB\u53D6\u4E2D\u65F6\u624D\u51FA\u73B0\u3002\u6807\u9898\u884C\u64A4\u6389\u4E4B\u540E\uFF0C\n \u8FD9\u662F\u5185\u5BB9\u9876\u90E8\u552F\u4E00\u5141\u8BB8\u51FA\u73B0\u7684\u4E00\u884C\u300C\u5173\u4E8E\u8FD9\u4E00\u9875\u672C\u8EAB\u300D\u7684\u6587\u5B57\u3002 */\n.tita-viewStatus { display: flex; align-items: center; gap: 6px; margin: 0 0 10px; color: var(--tita-ink-muted); font-size: 11.5px; }\n.tita-viewStatus > svg { flex: 0 0 auto; color: var(--tita-warning); }\n\n.tita-content { flex: 1 1 auto; width: 100%; max-width: none; min-width: 0; min-height: 0; margin: 0; padding: 0 12px 28px; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; scrollbar-gutter: stable; }\n.tita-hiddenInput { display: none; }\n\n/* DSH marks the conversation header as a draggable window region on macOS.\n Its built-in drag exclusions omit the view tabs, so clicks on Chat / Trajectory\n can be swallowed as window drags. Keep the tab strip and its buttons interactive. */\nhtml[data-platform=\'darwin\'] [data-window-drag] [data-conversation-tabs],\nhtml[data-platform=\'darwin\'] [data-window-drag] [data-conversation-tabs] > [role=\'tab\'] {\n -webkit-app-region: no-drag;\n}\n\n/* ------------------------------------------------- \u753B\u5E03\u4F18\u5148\u7684\u89C6\u56FE\uFF08\u667A\u80FD\u5F52\u56E0\uFF09 */\n/* \u4E3A\u4EC0\u4E48\u8981\u6709\u8FD9\u4E00\u6863\uFF1A`.tita-content` \u7684\u9ED8\u8BA4\u5951\u7EA6\u662F\u300C\u552F\u4E00\u7684\u7EB5\u5411\u6EDA\u52A8\u533A\u300D\uFF0C\u5B83\u7ED9\u6240\u6709\n \u89C6\u56FE\u90FD\u7559\u4E86\u56DB\u5468\u5185\u8FB9\u8DDD\u3002\u800C\u667A\u80FD\u5F52\u56E0\u7684\u4E3B\u5185\u5BB9\u662F\u4E00\u5757\u753B\u5E03 \u2014\u2014 \u753B\u5E03\u65E2\u4E0D\u8BE5\u8DDF\u7740\u9875\u9762\u6EDA\uFF0C\n \u4E5F\u4E0D\u8BE5\u88AB\u5185\u8FB9\u8DDD\u524A\u6389\u4E00\u5708\u3002\u6240\u4EE5\u8FD9\u91CC\u7ED9\u5B83\u4E00\u4E2A\u663E\u5F0F\u7684**\u7B2C\u4E8C\u6863\u5951\u7EA6**\uFF1A\u5185\u5BB9\u533A\u672C\u8EAB\u53D8\u6210\n \u4E0D\u6EDA\u52A8\u7684\u7EB5\u5411 flex \u5BB9\u5668\uFF0C\u6EDA\u52A8\u6743\u4E0B\u653E\u7ED9\u5757\u5185\u5404\u81EA\u9700\u8981\u7684\u533A\u57DF\uFF08\u6848\u4F8B/\u6392\u67E5\u6B63\u6587\uFF09\u3002\n \u8FD9\u4E0D\u662F\u7ED9\u4E00\u4E2A\u89C6\u56FE\u5F00\u540E\u95E8\uFF1A\u5B83\u662F\u300C\u4E3B\u5185\u5BB9\u662F\u753B\u5E03\u300D\u8FD9\u4E00\u7C7B\u89C6\u56FE\u7684\u901A\u7528\u5F62\u6001\uFF0C\u5C06\u6765\u518D\u6709\n \u753B\u5E03\u578B\u89C6\u56FE\uFF08\u6BD4\u5982\u8840\u7F18\u56FE\uFF09\u76F4\u63A5\u590D\u7528\u8FD9\u4E00\u6863\uFF0C\u800C\u4E0D\u662F\u5404\u81EA\u5199\u4E00\u5957\u8D1F\u8FB9\u8DDD\u3002 */\n.tita-contentStage { display: flex; flex-direction: column; overflow: hidden; padding: 0 12px 12px; }\n.tita-contentStage .tita-pageHeader { flex: 0 0 auto; padding-bottom: 6px; }\n.tita-stageContent { display: flex; min-width: 0; min-height: 0; flex: 1 1 auto; flex-direction: column; padding-top: 0; }\n\n/* ------------------------------------------------------------------ tabs */\n/* \u5206\u6BB5\u63A7\u4EF6\uFF08segmented\uFF09\u843D\u5728\u767D\u8272\u5DE5\u5177\u6761\u4E0A\uFF1A\u8F68\u9053\u662F\u4E00\u5757\u6D45\u7070\u5706\u89D2\u5E95\u677F\uFF0C\u9009\u4E2D\u9879\u662F\u6D6E\u8D77\u7684\n \u767D\u8272\u80F6\u56CA + \u4E3B\u8272\u6587\u5B57\u3002\u4E0D\u7528\u4E0B\u5212\u7EBF \u2014\u2014 \u4E0B\u5212\u7EBF\u4F1A\u548C\u4E0B\u65B9\u5361\u7247\u8FB9\u6846\u5728\u89C6\u89C9\u4E0A\u6253\u67B6\u3002\n 0035\uFF1A\u9884\u89C8\u62BD\u5C49\u91CC\u300C\u5185\u5BB9\u300D\u90A3\u4E00\u884C\u7684 Markdown / \u6587\u672C\u5207\u6362\u662F**\u540C\u4E00\u5957\u63A7\u4EF6**\uFF0C\u6240\u4EE5\u9009\u62E9\u5668\n \u5E26\u4E0A `.tita-kbViewTabs`\u3002\u62BD\u5C49\u8D70 Portal\u3001\u4E0D\u5728 `.tita-panel` \u91CC\uFF0C\u8FD9\u6761\u5BB9\u5668\u89C4\u5219\u5FC5\u987B\u663E\u5F0F\n \u70B9\u540D\u5B83\uFF1B\u89E6\u53D1\u5668\u90A3\u51E0\u6761\u89C4\u5219\u6CA1\u6709 `.tita-panel` \u524D\u7F00\uFF0C\u6240\u4EE5\u81EA\u52A8\u751F\u6548 \u2014\u2014 \u4E24\u5904\u4E00\u4EFD\u5B9A\u4E49\uFF0C\n \u4E0D\u5404\u9020\u4E00\u5957\u3002 */\n.tita-panel .tita-tabsList,\n.tita-kbViewTabs {\n display: inline-flex;\n max-width: 100%;\n align-items: center;\n gap: 2px;\n overflow-x: auto;\n border: 1px solid var(--tita-line);\n border-radius: 9px;\n background: var(--tita-surface-muted);\n padding: 2px;\n scrollbar-width: none;\n}\n.tita-tabsList::-webkit-scrollbar { display: none; }\n.tita-tabsList .tita-uiTabsTrigger {\n display: inline-flex;\n min-height: 28px;\n align-items: center;\n gap: 5px;\n border: 0;\n border-radius: 7px;\n background: transparent;\n padding: 0 11px;\n color: var(--tita-ink-muted);\n font-size: 12px;\n font-weight: 600;\n letter-spacing: -.01em;\n}\n.tita-tabsList .tita-uiTabsTrigger svg { flex: 0 0 auto; opacity: .85; }\n.tita-tabsList .tita-uiTabsTrigger:hover { background: color-mix(in srgb, var(--tita-surface) 70%, transparent); color: var(--tita-ink); }\n.tita-tabsList .tita-uiTabsTrigger[data-state=\'active\'] {\n border-bottom-color: transparent;\n background: var(--tita-surface);\n color: var(--tita-primary);\n font-weight: 680;\n box-shadow: 0 1px 2px rgb(15 23 42 / .12), inset 0 0 0 1px var(--tita-primary-shadow);\n}\n.tita-tabsList .tita-uiTabsTrigger[data-state=\'active\'] svg { opacity: 1; }\n.tita-viewGuideBar { display: flex; flex: 0 0 auto; min-height: 28px; align-items: center; justify-content: flex-end; padding: 1px 2px 0; }\n.tita-viewGuideBar .tita-infoHint { width: 24px; height: 24px; }\n/* \u62BD\u5C49\u91CC\u90A3\u4E00\u679A\u662F**\u884C\u5185\u6B21\u7EA7\u63A7\u4EF6**\uFF1A\u5B83\u7AD9\u5728\u6B63\u6587\u5757\u81EA\u5DF1\u7684\u300C\u8BFB\u6CD5\u5DE5\u5177\u680F\u300D\u4E0A\uFF080042 \u4E4B\u524D\u6324\u5728\n \u300C\u5185\u5BB9\u300D\u5C0F\u8282\u6807\u9898\u90A3\u4E00\u884C\u91CC\uFF09\uFF0C\u6240\u4EE5\u6BD4\u9876\u680F\u90A3\u679A\u5C0F\u4E00\u53F7\uFF08\u9876\u680F\u662F\u9762\u677F\u7EA7\u5BFC\u822A\uFF0C\u8FD9\u91CC\u662F\u540C\u4E00\u4E2A\n \u5206\u5757\u91CC\u7684\u4E24\u79CD\u8BFB\u6CD5\uFF09\u3002\u653E\u5728\u57FA\u7840\u89C4\u5219\u4E4B\u540E\u8986\u76D6 \u2014\u2014 \u9009\u62E9\u5668\u6743\u91CD\u76F8\u540C\uFF0C\u9760\u987A\u5E8F\u53D6\u80DC\u3002 */\n.tita-kbViewTabs { min-height: 24px; }\n.tita-kbViewTabs .tita-uiTabsTrigger { min-height: 22px; padding: 0 9px; font-size: 11px; }\n/*\n * wiki \u680F\u5185\u90E8\u7684\u4E8C\u7EA7 tab\uFF080042\uFF09\uFF1A**\u8981\u6BD4\u9762\u677F\u4E00\u7EA7 tab \u660E\u663E\u4F4E\u4E00\u5C42**\u3002\n * \u4E24\u6392 tab \u540C\u65F6\u51FA\u73B0\u5728\u4E00\u5C4F\u91CC\u65F6\uFF0C\u5C42\u7EA7\u5DEE\u4E0D\u662F\u597D\u4E0D\u597D\u770B\u7684\u95EE\u9898\uFF0C\u662F\u4F1A\u4E0D\u4F1A\u70B9\u9519\u7684\u95EE\u9898 \u2014\u2014\n * \u6240\u4EE5\u8FD9\u91CC\u7528\u66F4\u5C0F\u7684\u5B57\u3001\u66F4\u77EE\u7684\u6309\u94AE\u3001\u66F4\u8F7B\u7684\u5E95\u8272\uFF0C\u4E14\u5DE6\u5BF9\u9F50\uFF08\u4E00\u7EA7 tab \u4E5F\u662F\u5DE6\u5BF9\u9F50\uFF09\u3002\n */\n.tita-kbSubTabs { display: grid; gap: 10px; }\n.tita-kbSubTabsList { justify-self: start; min-height: 28px; }\n.tita-kbSubTabsList .tita-uiTabsTrigger { min-height: 24px; padding: 0 12px; font-size: 11.5px; }\n/* \u300C\u65B0\u9875\u9762\u6253\u5F00\u300D\u662F\u62BD\u5C49\u5934\u4E0A\u7684**\u51FA\u53E3**\uFF0C\u4E0D\u662F\u4E3B\u64CD\u4F5C\uFF1A\u5B83\u548C\u6807\u9898\u540C\u4E00\u884C\u3001\u6BD4\u9762\u677F\u7EA7\u6309\u94AE\u5C0F\u4E00\u53F7\uFF0C\n \u4E0D\u53BB\u62A2\u6807\u9898\u30020042 \u4E4B\u524D\u5B83\u957F\u5728\u300C\u5185\u5BB9\u300D\u5C0F\u8282\u91CC\uFF0C\u4E14**\u53EA\u5728\u6B63\u6587\u88AB\u622A\u65AD\u65F6**\u624D\u6E32\u67D3 \u2014\u2014\n \u4E8E\u662F\u77ED\u6587\u6863\u4E0A\u5B83\u6839\u672C\u4E0D\u5B58\u5728\uFF08\u7528\u6237\u62A5\u544A\u7684\u539F\u8BDD\u662F\u300C\u90A3\u4E2A\u6309\u94AE\u6211\u4E5F\u6CA1\u770B\u5230\u300D\uFF09\u3002\n \u5165\u53E3\u7684\u663E\u9690\u4E0D\u80FD\u4F9D\u8D56\u5185\u5BB9\u957F\u5EA6\uFF1A\u4F4D\u7F6E\u4E0E\u53EF\u89C1\u6027\u7A33\u5B9A\uFF0C\u4EBA\u624D\u5B66\u5F97\u5230\u300C\u5168\u6587\u5728\u90A3\u4E2A\u6574\u9875\u91CC\u300D\u3002 */\n.tita-drawerHeadAction { height: 20px; min-height: 20px; flex: 0 0 auto; gap: 4px; padding: 0 6px; font-size: 10.5px; }\n/*\n * **\u76F4\u63A5\u6302\u5728\u5206\u5757\u91CC\u7684\u6309\u94AE\u4E0D\u8BB8\u88AB\u7F51\u683C\u62C9\u6EE1**\uFF082026-10-06\uFF0C\u7528\u6237\u70B9\u540D\u300C\u6309\u94AE\u8C03\u5C0F\uFF0C\u8DDF\u5185\u5BB9\u5DE6\u5BF9\u9F50\u300D\uFF09\u3002\n *\n * `.tita-drawerSection` \u662F `display: grid`\uFF0C\u800C grid item \u9ED8\u8BA4 `stretch`\uFF1BButton \u81EA\u5DF1\u7684\n * \u57FA\u7840\u7C7B\u91CC\u53C8\u6709\u4E00\u6761 `justify-center`\u3002\u4E24\u4EF6\u4E8B\u53E0\u8D77\u6765\uFF0C\u4E00\u679A\u300C\u539F\u59CB\u8F93\u5165\u300D\u6309\u94AE\u5C31\u53D8\u6210**\u6A2A\u8D2F\u62BD\u5C49\u7684\n * \u4E00\u6761\u7A7A\u6846\u3001\u6587\u5B57\u5C45\u4E2D** \u2014\u2014 \u770B\u7740\u50CF\u4E00\u5757\u9762\u677F\uFF0C\u70B9\u4E0B\u53BB\u624D\u77E5\u9053\u662F\u6309\u94AE\uFF08\u5939\u5177\u622A\u56FE\u6838\u8FC7\uFF09\u3002\n *\n * `justify-self: start` \u8BA9\u5B83\u56DE\u5230\u300C\u8D34\u7740\u6807\u7B7E\u7684\u4E00\u679A\u6309\u94AE\u300D\uFF0C\u5DE6\u8FB9\u7F18\u4E0E\u8FD9\u4E00\u5757\u7684\u6B63\u6587\u5BF9\u9F50\u3002\n * \u53EA\u9488\u5BF9**\u76F4\u63A5\u5B50\u5143\u7D20**\uFF1A\u5206\u5757\u91CC\u90A3\u4E9B\u6210\u6392\u7684\u6309\u94AE\uFF08`flex` \u5BB9\u5668\u91CC\u7684\uFF09\u672C\u6765\u5C31\u4E0D\u53D7\u7F51\u683C\u62C9\u4F38\u3002\n */\n.tita-drawerSection > .tita-uiButton { justify-self: start; }\n\n/* ---------------------------------------------------------------- header */\n/* \u6807\u9898\u884C\u53EA\u5360\u4E00\u884C\uFF1A\u56FE\u6807 + \u6807\u9898 + \u4E00\u53E5\u8BF4\u660E\u3002\u72B6\u6001\u5FBD\u6807\u4E0E \u22EF \u83DC\u5355\u5DF2\u64A4\uFF080022\uFF09\u3002 */\n.tita-pageHeader { display: flex; align-items: center; padding: 8px 2px 10px; }\n.tita-headingGroup { display: flex; min-width: 0; flex: 1 1 auto; flex-wrap: wrap; align-items: center; gap: 4px 8px; }\n.tita-headingGroup h1 { margin: 0; color: var(--tita-ink); font-size: 15px; font-weight: 750; letter-spacing: -.02em; line-height: 1.2; }\n.tita-headingGroup > p { min-width: 0; margin: 0; overflow: hidden; color: var(--tita-ink-muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-brandMark { display: inline-flex; width: 24px; height: 24px; flex: 0 0 auto; align-items: center; justify-content: center; border: 1px solid var(--tita-primary-line); border-radius: 8px; background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-brandMarkBlue { border-color: var(--tita-primary-line); background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-brandMarkViolet { border-color: var(--tita-tone-violet-line); background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-brandMarkAmber { border-color: var(--tita-tone-amber-line); background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-brandMarkGreen { border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n\n.tita-notice { display: flex; min-height: 42px; align-items: center; gap: 9px; margin: 0 0 14px; padding: 8px 8px 8px 13px; box-shadow: none; }\n.tita-notice > span { flex: 1; min-width: 0; }\n.tita-noticeError { border-color: var(--ddk-danger-line); background: var(--ddk-danger-tint); color: var(--tita-danger); }\n.tita-noticeSuccess { border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); color: var(--tita-success); }\n\n/* ------------------------------------------------------------- overview */\n/* \u6982\u89C8\u662F\u5355\u5217\u5806\u53E0\uFF1A\u95EE\u9898\u57DF \u2192 \u56DE\u5B57\u5F62\u67B6\u6784\u56FE\u3002\u53F3\u4FA7\u680F\uFF08\u81EA\u8FDB\u5316\u72B6\u6001/\u56FE\u4F8B\uFF09\u968F 0022 \u4E00\u5E76\u64A4\u6389\uFF0C\n 248px \u7684\u7B2C\u4E8C\u5217\u7559\u7740\u53EA\u4F1A\u8BA9\u56DE\u5B57\u5F62\u88AB\u6324\u7A84\u3002 */\n.tita-architecture { display: grid; gap: 10px; min-width: 0; }\n\n/* \u8F66\u9053\u8EAB\u4EFD\u9760\u300C\u5F69\u8272\u6807\u9898\u6761 + \u5E95\u8272\u300D\uFF0C\u4E0D\u518D\u9760\u5DE6\u4FA7\u90A3\u6761 3px \u7AD6\u7EBF\uFF080022\uFF1A\u7AD6\u7EBF\u4E0D\u627F\u8F7D\u4FE1\u606F\uFF0C\n \u4E09\u6761\u8F66\u9053\u5374\u5404\u81EA\u90FD\u6709\u4E00\u6761\uFF0C\u53CD\u800C\u663E\u5F97\u662F\u540C\u4E00\u5957\u88C5\u9970\uFF09\u3002 */\n\n\n\n/* B \u8F66\u9053\u7684\u56DB\u6BB5\uFF1A\u4E0A\u4F20 \u2192 \u7F16\u8BD1 \u2192 \u53EC\u56DE \u2192 \u91CD\u6392\u3002 */\n.tita-stageStack { display: grid; flex: 1 1 100%; min-width: 0; gap: 8px; }\n.tita-stageRow { display: grid; min-width: 0; gap: 6px; }\n.tita-stageLabel { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 700; letter-spacing: .01em; }\n.tita-stageLabel b { display: inline-flex; width: 17px; height: 17px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 6px; font-size: 10px; font-weight: 800; }\n.tita-stageLabelViolet { color: var(--tita-tone-violet); }\n.tita-stageLabelViolet b { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-stageLabelGreen { color: var(--tita-tone-green); }\n.tita-stageLabelGreen b { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-stageTrack { display: flex; min-width: 0; flex-wrap: wrap; align-items: stretch; gap: 8px; }\n.tita-stageConnector { display: flex; padding-left: 4px; }\n.tita-flowFork { display: grid; min-width: 158px; flex: 1 1 176px; gap: 8px; align-content: stretch; }\n\n.tita-flowNode { display: flex; min-width: 152px; max-width: 268px; flex: 1 1 176px; align-items: flex-start; gap: 9px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 11px; color: var(--tita-ink); font: inherit; text-align: left; cursor: pointer; box-shadow: 0 1px 2px rgba(15, 23, 42, .04); transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease; }\n.tita-flowNode:hover { transform: translateY(-1px); border-color: var(--tita-line-strong); box-shadow: 0 7px 16px rgba(30, 43, 67, .08); }\n.tita-flowNode:focus-visible { outline: 3px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-flowNodeCompact { min-width: 146px; padding: 8px 10px; }\n.tita-flowNodeSelected { border-color: currentColor; box-shadow: 0 0 0 3px var(--tita-primary-wash); }\n.tita-flowNodeIcon { display: inline-flex; width: 30px; height: 30px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 9px; }\n.tita-flowNodeCompact .tita-flowNodeIcon { width: 26px; height: 26px; border-radius: 8px; }\n.tita-flowNodeCopy { display: grid; min-width: 0; gap: 3px; }\n.tita-flowNodeCopy strong { color: var(--tita-ink); font-size: 12px; font-weight: 700; line-height: 1.35; }\n.tita-flowNodeCompact .tita-flowNodeCopy strong { font-size: 11.5px; }\n.tita-flowNodeCopy small { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.45; }\n.tita-flowNodeBadges { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 4px; }\n.tita-flowNodeBadges .tita-uiBadge { min-height: 19px; padding: 0 6px; font-size: 10px; }\n\n.tita-flowNodeBlue { color: var(--tita-primary); }\n.tita-flowNodeBlue .tita-flowNodeIcon { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-flowNodeViolet { color: var(--tita-tone-violet); }\n.tita-flowNodeViolet .tita-flowNodeIcon { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-flowNodeGreen { color: var(--tita-tone-green); }\n.tita-flowNodeGreen .tita-flowNodeIcon { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-flowNodeAmber { color: var(--tita-tone-amber); }\n.tita-flowNodeAmber .tita-flowNodeIcon { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-flowNodeNeutral { color: var(--tita-ink-muted); }\n.tita-flowNodeNeutral .tita-flowNodeIcon { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n\n.tita-flowArrow { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; color: var(--tita-ink-faint); }\n.tita-flowArrowBlue { color: var(--tita-primary); }\n.tita-flowArrowViolet { color: var(--tita-tone-violet); }\n.tita-flowArrowGreen { color: var(--tita-success); }\n.tita-flowArrowAmber { color: var(--tita-warning); }\n\n.tita-archBridge { display: flex; align-items: center; gap: 9px; padding: 0 6px; color: var(--tita-success); }\n.tita-archBridgeUp { display: inline-flex; flex: 0 0 auto; color: currentColor; }\n.tita-archBridgeLine { height: 1px; min-width: 12px; flex: 1 1 auto; background: currentColor; opacity: .45; }\n.tita-archBridgeLabel { flex: 0 0 auto; color: var(--tita-tone-green); font-size: 11px; font-weight: 650; }\n\n/* ------------------------------------------------------------ right rail */\n.tita-rail { display: grid; min-width: 0; align-content: start; gap: 12px; }\n.tita-railCard { min-width: 0; padding: 14px; }\n.tita-railCardHeader { display: flex; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-railCardHeader h3 { margin: 0; color: var(--tita-ink); font-size: 13px; font-weight: 750; }\n.tita-donut { position: relative; width: 132px; height: 132px; margin: 14px auto 12px; }\n.tita-donut svg { display: block; width: 100%; height: 100%; }\n.tita-donut strong { position: absolute; inset: 0; display: grid; place-items: center; color: var(--tita-ink); font-size: 22px; font-weight: 750; letter-spacing: -.02em; }\n.tita-railRows { display: grid; margin: 0; padding: 0; list-style: none; }\n.tita-railRows li { display: flex; align-items: center; gap: 8px; border-top: 1px solid var(--tita-surface-muted); padding: 8px 2px; color: var(--tita-ink-muted); font-size: 11.5px; }\n.tita-railRows li:first-child { border-top: 0; }\n.tita-railRowIcon { display: inline-flex; flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-railRowLabel { flex: 1 1 auto; min-width: 0; }\n.tita-railRows strong { color: var(--tita-ink); font-size: 11.5px; white-space: nowrap; }\n.tita-railRowDanger strong { color: var(--tita-danger); }\n.tita-railRowDanger .tita-railRowIcon { color: var(--tita-danger); }\n.tita-railActions { display: grid; gap: 7px; margin-top: 12px; }\n.tita-railCta { width: 100%; }\n.tita-legendList { display: grid; margin: 12px 0 0; padding: 0; list-style: none; gap: 12px; }\n.tita-legendList li { display: flex; align-items: center; gap: 11px; }\n.tita-legendList strong { display: block; color: var(--tita-ink); font-size: 11.5px; }\n.tita-legendList small { display: block; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-legendArrow { position: relative; width: 34px; height: 0; flex: 0 0 auto; border-top: 2px solid currentColor; }\n.tita-legendArrow::after { content: \'\'; position: absolute; top: -4px; right: -2px; border-left: 7px solid currentColor; border-top: 4px solid transparent; border-bottom: 4px solid transparent; }\n.tita-legendArrowBlue { color: var(--tita-primary); }\n.tita-legendArrowViolet { color: var(--tita-tone-violet); }\n.tita-legendArrowGreen { color: var(--tita-tone-green); }\n.tita-railQuote { margin: 2px 2px 0; color: var(--tita-ink-faint); font-size: 11px; line-height: 1.65; text-align: center; }\n.tita-railQuote small { display: block; margin-top: 6px; color: var(--tita-ink-faint); }\n\n/* -------------------------------------------------------- shared metrics */\n.tita-viewStack { display: grid; gap: 14px; }\n.tita-statsRow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }\n.tita-metricCard { display: flex; min-width: 0; align-items: center; gap: 11px; padding: 13px 14px; }\n.tita-metricIcon { display: inline-flex; width: 34px; height: 34px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 9px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-metricToneViolet .tita-metricIcon { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-metricToneBlue .tita-metricIcon { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-metricToneGreen .tita-metricIcon { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-metricToneAmber .tita-metricIcon { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-metricCopy { display: flex; min-width: 0; flex-direction: column; gap: 2px; }\n.tita-metricCopy small { color: var(--tita-ink-muted); font-size: 11px; }\n.tita-metricCopy strong { overflow: hidden; color: var(--tita-ink); font-size: 18px; font-weight: 750; letter-spacing: -.02em; text-overflow: ellipsis; white-space: nowrap; }\n.tita-metricCopy em { overflow: hidden; color: var(--tita-ink-faint); font-size: 10px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }\n\n.tita-workspaceCard { min-width: 0; padding: 16px; }\n.tita-cardHeader { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 13px; }\n/* \u5361\u5934\u53F3\u4FA7\u90A3\u4E00\u7EC4\uFF1A\u72B6\u6001\u5FBD\u6807 + \u300C\u53C2\u6570\u300Dchip\uFF080034\uFF09\u3002\u5B83\u4EEC\u662F\u4E00\u7EC4\uFF0C\u6240\u4EE5 gap \u6BD4\u5916\u5C42\u5C0F\u3002 */\n.tita-cardHeaderActions { display: flex; flex: 0 0 auto; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 7px; }\n.tita-workspaceCard h3, .tita-memoryCard h3, .tita-skillCard h3, .tita-skillHero h3, .tita-evalRunner h3, .tita-evalPlan h3 { margin: 4px 0 0; color: var(--tita-ink); font-size: 15px; font-weight: 750; }\n.tita-sectionEyebrow { display: inline-flex; align-items: center; gap: 6px; color: var(--tita-ink-faint); font-size: 10px; font-weight: 750; letter-spacing: .1em; }\n.tita-headerMetaText { padding-top: 16px; color: var(--tita-ink-faint); font-size: 11px; }\n.tita-cardDescription { margin: 5px 0 13px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.6; }\n.tita-actionRow { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }\n.tita-resultBadge { margin-top: 10px; }\n.tita-inputRow { display: flex; align-items: center; gap: 8px; }\n.tita-inputRow .tita-uiInput { flex: 1; min-width: 0; }\n.tita-infoList { display: grid; gap: 8px; margin-top: 14px; }\n.tita-infoList > div { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; border-bottom: 1px solid var(--tita-line); padding: 7px 0; }\n.tita-infoList span { color: var(--tita-ink-muted); font-size: 11px; }\n.tita-infoList strong { color: var(--tita-ink); font-size: 11px; text-align: right; }\n\n.tita-buildTrace { display: flex; min-width: 0; align-items: stretch; flex-wrap: wrap; gap: 9px; margin: 4px 0 2px; }\n.tita-buildTraceItem { display: flex; min-width: 0; flex: 1 1 190px; align-items: center; gap: 9px; }\n.tita-buildTraceNode { display: flex; width: 100%; min-width: 0; min-height: 58px; flex: 1 1 0; align-items: center; gap: 9px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 9px 10px; color: var(--tita-ink); font: inherit; text-align: left; cursor: pointer; transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease; }\n.tita-buildTraceNode:hover { transform: translateY(-1px); border-color: var(--tita-line-strong); box-shadow: 0 6px 14px rgba(30, 43, 67, .06); }\n.tita-buildTraceNode:focus-visible { outline: 3px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-buildTraceNodeSelected { border-color: currentColor; }\n.tita-buildTraceIcon { display: inline-flex; width: 29px; height: 29px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 8px; }\n.tita-buildTraceNode > span:last-child { display: grid; min-width: 0; gap: 2px; }\n.tita-buildTraceNode strong, .tita-buildTraceNode small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.tita-buildTraceNode strong { color: var(--tita-ink); font-size: 12px; line-height: 1.3; }\n.tita-buildTraceNode small { color: var(--tita-ink-muted); font-size: 10px; }\n.tita-buildTraceBlue .tita-buildTraceIcon { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-buildTraceViolet .tita-buildTraceIcon { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-buildTraceGreen .tita-buildTraceIcon { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-buildTraceAmber .tita-buildTraceIcon { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n\n.tita-memoryGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }\n.tita-memoryCard { min-width: 0; padding: 16px; }\n.tita-memoryCardWide { grid-column: 1 / -1; }\n.tita-memoryCard p { min-height: 42px; margin: 10px 0 15px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.7; }\n.tita-timeline { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 14px 0; color: var(--tita-ink-muted); font-size: 12px; }\n.tita-timeline span { border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface-muted); padding: 6px 9px; }\n.tita-timeline i { color: var(--tita-ink-faint); font-style: normal; }\n\n.tita-skillHero { display: flex; align-items: center; gap: 12px; padding: 15px 16px; }\n.tita-skillHero > div:nth-child(2) { flex: 1; min-width: 0; }\n.tita-skillHero p { margin: 5px 0 0; color: var(--tita-ink-muted); font-size: 12px; }\n.tita-skillHeroIcon, .tita-skillIcon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 10px; background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-skillHeroIcon { width: 40px; height: 40px; }\n.tita-skillGrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }\n.tita-skillCard { min-width: 0; padding: 14px; }\n.tita-skillCardTop { display: flex; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-skillIcon { width: 30px; height: 30px; background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-skillCard p { min-height: 36px; margin: 8px 0 16px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.6; }\n.tita-skillMeta { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--tita-line); padding-top: 9px; color: var(--tita-ink-faint); font-size: 10px; }\n\n.tita-evalGrid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 14px; }\n.tita-evalRunner, .tita-evalPlan { min-width: 0; padding: 16px; }\n.tita-evalInput { display: flex; align-items: center; gap: 8px; margin-top: 13px; }\n.tita-evalInput .tita-uiInput { flex: 1; min-width: 0; }\n.tita-evalResult { display: flex; align-items: center; gap: 7px; margin-top: 12px; border: 1px solid var(--tita-tone-green-line); border-radius: 9px; background: var(--tita-tone-green-tint); color: var(--tita-success); padding: 9px 10px; font-size: 11px; }\n.tita-evalResult span { margin-left: auto; color: var(--tita-success); }\n.tita-emptyState { display: flex; align-items: center; gap: 7px; border: 1px dashed var(--tita-line); border-radius: 9px; color: var(--tita-ink-faint); padding: 10px; font-size: 11px; }\n.tita-evalRows { display: grid; margin: 8px 0 14px; }\n.tita-evalRows > div { display: flex; justify-content: space-between; border-bottom: 1px solid var(--tita-line); padding: 9px 0; color: var(--tita-ink-muted); font-size: 11px; }\n.tita-evalRows strong { color: var(--tita-ink-faint); font-weight: 600; }\n\n/* --------------------------------------------------------------- drawer */\n/*\n * \u62BD\u5C49\u5BBD\u5EA6\u3002\u5185\u8FB9\u8DDD\u7531 UI \u5305\u7684 `.tita-uiDrawerBody`\uFF08\u5DE6\u53F3 18px\u3001\u4E0A\u4E0B 15px\uFF09\u63D0\u4F9B\u3002\n *\n * \u8FD9\u91CC\u539F\u6765\u8FD8\u6709\u4E00\u6574\u5957 `tita-drawerHeader` / `drawerBody` / `drawerDescription` /\n * `drawerIcon` / `drawerActions` / `drawerSubtitle`\uFF0C\u662F\u5E73\u53F0\u62BD\u5C49\u6362\u6210\u5171\u4EAB\u7EC4\u4EF6\u4E4B\u524D\u7559\u4E0B\u7684\uFF1A\n * \u73B0\u5728\u4E00\u4E2A\u5F15\u7528\u90FD\u6CA1\u6709\uFF08`styles.drawerHeader` \u4E4B\u7C7B\u5728\u5BA2\u6237\u7AEF\u6E90\u7801\u91CC 0 \u547D\u4E2D\uFF09\uFF0C\u7559\u7740\u53EA\u4F1A\u8BA9\u4EBA\n * \u4EE5\u4E3A\u62BD\u5C49\u7684\u95F4\u8DDD\u7531\u5B83\u4EEC\u51B3\u5B9A\uFF0C\u6539\u9519\u5730\u65B9\u3002\u5DF2\u5220\u3002\n *\n * \u7559\u4E0B\u7684\u662F**\u771F\u6B63\u51B3\u5B9A\u9884\u89C8\u62BD\u5C49\u7248\u5F0F**\u7684\u4E09\u6761\uFF1A\n */\n.tita-drawer { width: min(440px, 100vw); box-sizing: border-box; }\n/* SourceRaw \u9884\u89C8\u9700\u8981\u7ED9\u6807\u9898\u3001\u5143\u4FE1\u606F\u548C Markdown / \u6587\u672C\u5207\u6362\u5668\u7559\u51FA\u53EF\u8BFB\u7A7A\u95F4\u3002\n \u53EA\u9650\u5236\u62BD\u5C49\u672C\u8EAB\uFF1B\u6B63\u6587\u4ECD\u7136 `min-width: 0`\uFF0C\u6240\u4EE5\u4E0D\u4F1A\u628A\u5185\u5BB9\u518D\u9501\u6210\u53E6\u4E00\u79CD\u5BBD\u5EA6\u3002 */\n.tita-sourcePreviewDrawer { min-width: min(320px, 100vw); }\n/*\n * SourceRaw \u9884\u89C8\u53EA\u5141\u8BB8\u6CBF\u6B63\u6587\u5411\u4E0B\u9605\u8BFB\u3002\n *\n * \u5171\u4EAB DrawerBody \u9ED8\u8BA4\u662F `overflow: auto`\uFF0C\u4F1A\u628A\u6B63\u6587\u91CC\u5076\u5C14\u51FA\u73B0\u7684\u957F URL\u3001\u4EE3\u7801\u6216\u8868\u683C\n * \u4EA4\u7ED9\u5916\u5C42\u518D\u5F00\u4E00\u6761\u6A2A\u5411\u6EDA\u52A8\u6761\u3002\u6B63\u6587\u5757\u81EA\u8EAB\u5DF2\u7ECF\u8D1F\u8D23\u65AD\u884C\u4E0E\u6536\u7F29\uFF0C\u5916\u5C42\u53EA\u4FDD\u7559\u7EB5\u5411\u6EDA\u52A8\uFF0C\n * \u907F\u514D\u5F39\u5C42\u6574\u4F53\u88AB\u5DE6\u53F3\u62D6\u52A8\u3002\n */\n.tita-sourcePreviewDrawer .tita-uiDrawerBody {\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior-x: none;\n}\n/*\n * \u62BD\u5C49\u5934\uFF1A\u5DE6\u8FB9\u662F\u300C\u8FD9\u662F\u4EC0\u4E48\u300D\uFF08\u6807\u9898 + \u8DEF\u5F84\uFF09\uFF0C\u53F3\u8FB9\u662F**\u51FA\u53E3**\uFF08\u65B0\u9875\u9762\u6253\u5F00\uFF09\u3002\n * `min-width: 0` \u662F\u5FC5\u9700\u7684\uFF1A\u8DEF\u5F84\u53EF\u4EE5\u5F88\u957F\uFF0C\u6CA1\u6709\u5B83\u8FD9\u4E00\u884C\u4F1A\u88AB\u6491\u7834\u800C\u4E0D\u662F\u7701\u7565\u3002\n */\n.tita-drawerHead { display: flex; min-width: 0; flex: 1 1 auto; align-items: flex-start; justify-content: space-between; gap: 10px; }\n.tita-drawerHeadCopy { min-width: 0; flex: 1 1 auto; }\n/* 0042 \u90A3\u679A\u300C\u7F16\u8BD1 \u2304\u300D\u7684\u83DC\u5355\u5BBD\u5EA6\u89C4\u5219\u968F\u4E0B\u62C9\u4E00\u8D77\u64A4\u4E86\uFF082026-10-01\uFF09\uFF1A\u4E24\u6863\u6536\u6210\u4E00\u6863\u4E4B\u540E\n \u7F16\u8BD1\u53EA\u5269\u4E00\u679A\u6309\u94AE + \u4E24\u4E2A\u5BF9\u8BDD\u6846\uFF0C\u83DC\u5355\u4E0D\u5B58\u5728\u4E86\uFF0C\u6837\u5F0F\u7559\u7740\u5C31\u4F1A\u53D8\u6210\u4E00\u4EFD\u6CA1\u4EBA\u8BFB\u7684\u65E7\u7EA6\u675F\u3002 */\n/*\n * \u6B63\u6587\u5206\u5757\uFF1A\u5757\u4E0E\u5757\u4E4B\u95F4 14px\uFF0C\u5757\u4E0E\u5757\u4E4B\u95F4**\u753B\u4E00\u6761\u5206\u9694\u7EBF**\uFF080042\uFF09\u3002\n *\n * \u5B83\u5FC5\u987B\u6302\u5728\u62BD\u5C49\u6B63\u6587\u4E0A\u3001\u800C**\u5206\u5757\u5BB9\u5668**\u6302\u5728\u6BCF\u4E00\u5757\u4E0A \u2014\u2014 \u56E0\u4E3A\u4E00\u5757\uFF08\u6BD4\u5982\u300C\u5143\u4FE1\u606F\u300D\uFF09\u662F\n * \u300C\u5C0F\u6807\u9898 + \u5B83\u81EA\u5DF1\u7684\u8868\u300D\u4E24\u4E2A\u540C\u7EA7\u8282\u70B9\uFF0C\u53EA\u5728\u5916\u5C42\u7ED9\u7EDF\u4E00 gap \u4F1A\u628A\u6807\u9898\u548C\u5B83\u81EA\u5DF1\u7684\u5185\u5BB9\u4E5F\n * \u62C9\u5F00 14px\uFF0C\u8BFB\u8D77\u6765\u6807\u9898\u5C31\u4E0D\u518D\u7BA1\u7740\u4E0B\u9762\u90A3\u5757\u4E86\u3002\n *\n * 0042 \u8865\u4E0A\u5206\u9694\u7EBF\uFF1A\u4E09\u5757\u7684\u5206\u754C\u539F\u6765\u53EA\u9760 14px \u7684\u95F4\u8DDD\uFF0C\u800C\u5C0F\u8282\u5934\u4E0E\u6B63\u6587\u53C8\u662F\u540C\u5B57\u53F7\uFF0C\n * \u4E8E\u662F\u4E00\u6761\u957F\u62BD\u5C49\u8BFB\u8D77\u6765\u662F\u4E00\u6574\u6BB5\u6587\u5B57\u3002\u5206\u9694\u7EBF\u662F\u300C\u8FD9\u4E09\u5757\u662F\u4E09\u4EF6\u4E8B\u300D\u6700\u7701\u5B57\u7684\u8868\u8FBE\u3002\n */\n.tita-drawerStack { display: grid; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; gap: 14px; align-content: start; }\n/* \u4E00\u5757\u5185\u90E8\uFF1A\u6807\u9898\u4E0E\u81EA\u5DF1\u7684\u5185\u5BB9\u8D34\u7D27\u3002\u4E0A\u5206\u9694\u7EBF\u753B\u5728\u5757\u4E0A\uFF0C\u7B2C\u4E00\u5757\u4E0D\u753B\uFF08\u5B83\u9876\u7740\u62BD\u5C49\u5934\uFF09\u3002 */\n.tita-drawerSection { display: grid; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; gap: 6px; align-content: start; border-top: 1px solid var(--tita-line); padding-top: 12px; }\n.tita-drawerSection > * { width: 100%; min-width: 0; max-width: 100%; }\n.tita-drawerSection:first-child { border-top: 0; padding-top: 0; }\n/* \u5206\u5757\u4E4B\u540E\uFF0C\u6807\u9898\u7684\u4E0A\u8FB9\u8DDD\u4EA4\u7ED9\u5757\u95F4\u8DDD \u2014\u2014 \u5426\u5219 14 + 16 \u4F1A\u5728\u4E24\u5904\u53E0\u51FA\u4E00\u4E2A\u7A7A\u6D1E\u3002 */\n.tita-drawerSection > .tita-kbSubHead { margin: 0; }\n\n/*\n * \u5C0F\u8282\u5934\uFF1A**\u4E09\u79CD\u5C42\u7EA7\u91CC\u7684\u4E2D\u95F4\u90A3\u5C42**\u3002\u6807\u9898 15px\uFF08UI \u5305\u7684 `uiDrawerTitle`\uFF09/\n * \u5C0F\u8282\u5934 13px / \u6B63\u6587 12px\u3002\n *\n * 0042 \u4E4B\u524D\u8FD9\u91CC\u662F 12px/700 \u2014\u2014 \u4E0E\u6B63\u6587**\u540C\u5B57\u53F7**\uFF0C\u53EA\u5DEE\u4E00\u4E2A\u5B57\u91CD\uFF0C\u4E2D\u95F4\u4E5F\u6CA1\u6709\u5206\u9694\u7EBF\uFF0C\n * \u6240\u4EE5\u300C\u5185\u5BB9\u300D\u4E24\u4E2A\u5B57\u8BFB\u8D77\u6765\u662F\u6B63\u6587\u7684\u7B2C 0 \u884C\u3002\u5B57\u53F7\u5DEE 1px \u662F\u523B\u610F\u7684\uFF1A\u518D\u5927\u5C31\u548C\u5C0F\u8282\u91CC\u7684\n * \u6B63\u6587\u62A2\uFF0C\u518D\u5C0F\u5C31\u56DE\u5230\u539F\u6765\u90A3\u4E2A\u95EE\u9898\u3002\n *\n * `align-items` 2026-10-06 \u4ECE `baseline` \u6362\u6210 `center`\uFF1A\u57FA\u7EBF\u5BF9\u9F50\u5BF9**\u6587\u5B57**\u662F\u5BF9\u7684\uFF0C\n * \u4F46\u8FD9\u4E00\u884C\u53F3\u8FB9\u653E\u7684\u662F\u6309\u94AE\uFF08\u300C\u65B0\u9875\u9762\u6253\u5F00\u300D\uFF09\u4E0E\u4E24\u679A tab \u2014\u2014 \u6309\u94AE\u7684\u57FA\u7EBF\u662F\u5B83\u81EA\u5DF1\u5185\u5BB9\u7684\n * \u57FA\u7EBF\uFF0C\u5BF9\u9F50\u5230 13px \u6807\u9898\u7684\u57FA\u7EBF\u4E4B\u540E\uFF0C\u6309\u94AE\u6574\u4F53\u504F\u4E0B 1\u20132px\uFF0C\u770B\u4E0A\u53BB\u5C31\u662F\u300C\u6CA1\u5BF9\u9F50\u300D\u3002\n * \u8FD9\u4E00\u884C\u91CC\u9AD8\u5EA6\u5404\u4E0D\u76F8\u540C\u7684\u4E1C\u897F\u53EA\u6709\u6309\u5782\u76F4\u5C45\u4E2D\u624D\u4E92\u76F8\u5BF9\u5F97\u4E0A\u3002\n */\n.tita-drawerSubHead { display: flex; width: 100%; min-width: 0; max-width: 100%; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-drawerSubHead h4 { display: inline-flex; min-width: 0; max-width: 100%; flex: 1 1 auto; align-items: center; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 13px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-drawerSubHead h4 svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n/* \u5C0F\u8282\u53F3\u4FA7\u7684**\u4E00\u7EC4**\u4E1C\u897F\uFF08\u4E8B\u5B9E + \u52A8\u4F5C\uFF09\u3002\u6210\u7EC4\u662F\u4E3A\u4E86\u8BA9 `space-between` \u53EA\u5206\u4E00\u6B21\uFF1A\n \u4E09\u4E2A\u5E73\u7EA7\u5B50\u8282\u70B9\u4F1A\u628A\u4E2D\u95F4\u90A3\u4E2A\u6446\u5230\u884C\u6B63\u4E2D\uFF0C\u770B\u8D77\u6765\u50CF\u53E6\u4E00\u680F\u3002 */\n.tita-drawerHeadAside { display: inline-flex; width: auto; min-width: 0; max-width: 100%; flex: 1 1 auto; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }\n\n/* \u5C0F\u8282\u53F3\u4FA7\u7684\u4E8B\u5B9E\uFF08\u5B57\u7B26\u6570 / \u6761\u76EE\u6570\uFF09\uFF1A\u4E0E\u6807\u9898\u540C\u4E00\u884C\u3001\u6BD4\u6807\u9898\u8F7B\u3002 */\n.tita-drawerHeadFact { flex: 0 0 auto; color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n\n/* \u8BFB\u6CD5\u5DE5\u5177\u680F\uFF1A\u6B63\u6587\u5757\u81EA\u5DF1\u7684\u4E24\u79CD\u8BFB\u6CD5\uFF08Markdown / \u6587\u672C\uFF09+ \u672C\u5730\u5C55\u5F00\u3002 */\n.tita-drawerToolbar { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-drawerMore { height: 22px; min-height: 22px; flex: 0 0 auto; gap: 4px; padding: 0 7px; font-size: 10.5px; }\n.tita-cardRecompileNotice { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 6px; border-radius: 8px; padding: 7px 9px; font-size: 10.5px; line-height: 1.55; }\n.tita-cardRecompileNotice > svg { margin-top: 2px; }\n.tita-cardRecompileNoticeSuccess { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-cardRecompileNoticeSuccess > svg { color: var(--tita-tone-green); }\n.tita-cardRecompileNoticeError { background: var(--ddk-danger-tint); color: var(--tita-danger); }\n\n/* ---------------------------------------------------------------- review */\n/*\n * Review \u662F\u4E00\u4E2A\u5224\u65AD\u533A\uFF0C\u4E0D\u662F\u6B63\u6587\u7684\u9644\u5F55\uFF1A\u5148\u7ED9\u72B6\u6001\u4E00\u4E2A\u7A33\u5B9A\u843D\u70B9\uFF0C\u518D\u653E\u52A8\u4F5C\uFF0C\u6700\u540E\u653E\u4EBA\u7684\u8BB0\u5F55\u3002\n * \u4E4B\u524D\u72B6\u6001\u6324\u5728\u5C0F\u8282\u6807\u9898\u53F3\u4FA7\uFF0C\u52A8\u4F5C\u548C\u5907\u6CE8\u53C8\u662F\u65E0\u5C42\u7EA7\u7684\u51E0\u884C\u6309\u94AE / \u6587\u672C\uFF0C\u6253\u5F00\u62BD\u5C49\u540E\u5F88\u96BE\u77E5\u9053\n * \u300C\u73B0\u5728\u662F\u4EC0\u4E48\u72B6\u6001\u300D\u548C\u300C\u4E0B\u4E00\u6B65\u8981\u505A\u4EC0\u4E48\u300D\u5206\u522B\u5728\u54EA\u91CC\u3002\n */\n.tita-reviewPanel { display: grid; gap: 8px; }\n.tita-reviewStatus { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 9px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 9px 10px; }\n.tita-reviewStatusDone { border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); }\n.tita-reviewStatusIcon { display: inline-flex; width: 24px; height: 24px; align-items: center; justify-content: center; border-radius: 7px; background: var(--tita-surface); color: var(--tita-ink-faint); }\n.tita-reviewStatusDone .tita-reviewStatusIcon { color: var(--tita-tone-green); }\n.tita-reviewStatusCopy { display: grid; min-width: 0; gap: 2px; }\n.tita-reviewStatusCopy b { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; }\n.tita-reviewStatusCopy small { color: var(--tita-ink-muted); font-size: 10px; line-height: 1.4; overflow-wrap: anywhere; }\n.tita-reviewScore { display: grid; justify-items: end; gap: 1px; border-left: 1px solid var(--tita-line); padding-left: 10px; }\n.tita-reviewScore small { color: var(--tita-ink-faint); font-size: 9.5px; }\n.tita-reviewScore b { color: var(--tita-ink); font-size: 15px; font-variant-numeric: tabular-nums; line-height: 1.1; }\n.tita-reviewActions { display: flex; min-width: 0; flex-wrap: wrap; gap: 6px; }\n.tita-reviewAction { min-height: 28px; gap: 5px; padding-inline: 10px; font-size: 11.5px; }\n.tita-reviewNotice { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 6px; border-radius: 8px; padding: 7px 9px; font-size: 10.5px; line-height: 1.55; }\n.tita-reviewNotice > svg { margin-top: 2px; }\n.tita-reviewNoticeSuccess { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-reviewNoticeSuccess > svg { color: var(--tita-tone-green); }\n.tita-reviewNoticeError { background: var(--ddk-danger-tint); color: var(--tita-danger); }\n.tita-reviewNotes { display: grid; gap: 6px; }\n.tita-reviewNotesHead { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; color: var(--tita-ink-muted); font-size: 10.5px; font-weight: 650; }\n.tita-reviewNotesHead small { color: var(--tita-ink-faint); font-size: 10px; font-variant-numeric: tabular-nums; font-weight: 500; }\n.tita-reviewNoteList { display: grid; margin: 0; padding: 0; list-style: none; gap: 6px; }\n.tita-reviewNoteItem { display: grid; gap: 5px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); padding: 8px 9px; }\n.tita-reviewNoteAnomaly { border-color: var(--tita-tone-amber-line); background: var(--tita-tone-amber-tint); }\n.tita-reviewNoteTop { display: flex; min-width: 0; align-items: center; gap: 6px; }\n.tita-reviewNoteKind { display: inline-flex; align-items: center; gap: 4px; color: var(--tita-ink-muted); font-size: 10px; font-weight: 700; }\n.tita-reviewNoteAnomaly .tita-reviewNoteKind { color: var(--tita-tone-amber); }\n.tita-reviewNoteMeta { min-width: 0; overflow: hidden; color: var(--tita-ink-faint); font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-reviewNoteRemove { width: 21px; min-width: 21px; height: 21px; margin-left: auto; color: var(--tita-ink-faint); }\n.tita-reviewNoteText { margin: 0; color: var(--tita-ink); font-size: 11px; line-height: 1.65; overflow-wrap: anywhere; }\n.tita-reviewComposer { display: grid; gap: 8px; border: 1px solid var(--tita-primary-line); border-radius: 10px; background: var(--tita-primary-soft); padding: 9px; }\n.tita-reviewKindSwitch { display: flex; flex-wrap: wrap; gap: 5px; }\n.tita-reviewKindButton { min-height: 26px; gap: 4px; padding-inline: 8px; font-size: 10.5px; }\n.tita-reviewTextarea { min-height: 66px; border-color: var(--tita-line-strong); background: var(--tita-surface); font-size: 11.5px; line-height: 1.6; }\n.tita-reviewComposerFooter { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }\n\n/*\n * \u6B63\u6587\u5757\uFF1A**\u9501\u9AD8\u5185\u6EDA + \u9605\u8BFB\u680F\u4E0A\u9650\u3002**\n *\n * 0042 \u4E4B\u524D\u6B63\u6587\u6CA1\u6709\u9AD8\u5EA6\u4E0A\u9650\uFF0C\u6574\u6761\u62BD\u5C49\u4F53\uFF08`.tita-uiDrawerBody`\uFF09\u662F\u4E00\u6839\u957F\u6EDA\u52A8\u6761 \u2014\u2014\n * \u6B63\u6587\u6709\u591A\u957F\uFF0C\u300C\u7248\u672C\u300D\u5C31\u88AB\u63A8\u5230\u591A\u8FDC\uFF0C\u800C\u7248\u672C\u6B63\u662F\u8981\u52A8\u624B\u7684\u5730\u65B9\uFF08\u56DE\u6EDA\uFF09\u3002\n * \u73B0\u5728\u6B63\u6587\u81EA\u5DF1\u6EDA\uFF0C\u4E0B\u9762\u7684\u5206\u5757\u4F4D\u7F6E\u4E0D\u518D\u968F\u6B63\u6587\u957F\u5EA6\u6F02\u79FB\u3002\n * `min(45vh, 460px)`\uFF1A\u77EE\u7A97\u53E3\u4E0B\u6309\u89C6\u53E3\u8D70\uFF0C\u9AD8\u7A97\u53E3\u4E0B\u4E0D\u5360\u6EE1\u6574\u5C4F\u3002\n *\n * `max-width: 68ch` \u662F\u53E6\u4E00\u534A\uFF1A\u62BD\u5C49\u58F3**\u53EF\u4EE5\u62D6\u5BBD**\uFF08\u5BBD\u8868\u683C\u9700\u8981\u5BBD\u5EA6\uFF0C\u90A3\u662F\u58F3\u7684\u5C5E\u6027\uFF09\uFF0C\n * \u4F46\u6B63\u6587\u7684\u884C\u5BBD\u4E0D\u8BE5\u8DDF\u7740\u957F \u2014\u2014 12px \u4E0B\u4E00\u884C 68 \u4E2A\u5B57\u7B26\uFF0C\u662F\u80FD\u4E00\u773C\u8BFB\u5B8C\u7684\u957F\u5EA6\u3002\n * \u8FD9\u4E2A\u4E0A\u9650\u53EA\u5728\u628A\u62BD\u5C49\u62D6\u5BBD\u4E4B\u540E\u624D\u54AC\u5F97\u4F4F\uFF0C\u9ED8\u8BA4 440px \u4E0B\u6B63\u6587\u672C\u6765\u5C31\u66F4\u7A84\u3002\n */\n/*\n * \u6B63\u6587\u5757\u7684\u9762\uFF082026-10-05\uFF09\u3002\n *\n * \u5B83\u6B64\u524D**\u53EA\u6709\u4E00\u6761\u6EDA\u52A8\u6761**\uFF1A\u767D\u5E95\u4E0A\u7684 12px \u6587\u5B57\uFF0C\u4E0E\u4E0A\u9762\u90A3\u4E9B\u5143\u4FE1\u606F\u884C\u3001\u4E0B\u9762\u90A3\u4E9B\u5C0F\u8282\u5934\n * \u5904\u5728\u540C\u4E00\u7247\u767D\u91CC\uFF0C\u8BFB\u8D77\u6765\u50CF\u300C\u62BD\u5C49\u6B63\u6587\u7684\u5EF6\u7EED\u300D\uFF0C\u800C\u4E0D\u50CF\u300C\u4E00\u4EFD\u5185\u5BB9\u300D\u3002\u7528\u6237\u7684\u539F\u8BDD\u662F\n * \u300C\u628A\u8FD9\u5757\u5185\u5BB9\u72EC\u7ACB\u51FA\u6765\uFF0C\u8BA9\u7528\u6237\u77E5\u9053\u8FD9\u662F\u4E00\u4E2A\u5B8C\u6574\u7684\u5185\u5BB9\u5757\u300D\u3002\n *\n * \u4E09\u4EF6\u4E8B\u4E00\u8D77\u505A\u624D\u6210\u7ACB\uFF0C\u7F3A\u4E00\u4EF6\u90FD\u53EA\u662F\u88C5\u9970\uFF1A\n *\n * 1. **\u4E00\u7247\u81EA\u5DF1\u7684\u5E95**\uFF08`--tita-surface-muted`\uFF09\u2014\u2014 \u767D\u5E95\u767D\u6846\u7684\u8FB9\u754C\u53EA\u80FD\u9760\u7EBF\uFF0C\u800C\u7EBF\u5728\u8FD9\u91CC\n * \u548C\u5206\u8282\u7EBF\u662F\u540C\u4E00\u4E2A\u8BB0\u53F7\uFF1B\n * 2. **\u4E00\u6761\u5185\u51F9\u7684\u5F71**\uFF08`inset` + \u8F6F\u6A21\u7CCA\uFF09\u2014\u2014 \u5B83\u8BF4\u7684\u662F\u300C\u5185\u5BB9\u9677\u5728\u8FD9\u5757\u677F\u91CC\u300D\uFF0C\u4E0E\u5361\u7247\u90A3\u79CD\n * \u300C\u6D6E\u5728\u4E0A\u9762\u300D\u7684\u5F71\u65B9\u5411\u76F8\u53CD\uFF0C\u6240\u4EE5\u4E0D\u4F1A\u8BFB\u6210\u53C8\u4E00\u5F20\u5361\uFF1B\n * 3. **\u5185\u8FB9\u8DDD**\uFF0814px\uFF09\u2014\u2014 \u6587\u5B57\u4E0D\u8D34\u7740\u8FB9\u6846\uFF0C\u5757\u624D\u6709\u539A\u5EA6\u3002\n *\n * \u987A\u5E26\u628A\u4E24\u79CD\u8BFB\u6CD5\uFF08Markdown / \u6587\u672C\uFF09\u5408\u6210\u540C\u4E00\u4E2A\u5F62\u72B6\uFF1A\u5B83\u672C\u6765\u5C31\u662F**\u540C\u4E00\u4EFD\u5185\u5BB9**\u7684\u4E24\u79CD\u8BFB\u6CD5\n * \uFF08\u89C1 `PreviewContent`\uFF09\uFF0C\u6B64\u524D\u53EA\u6709\u6587\u672C\u90A3\u4E00\u7248\u81EA\u5E26\u8FB9\u6846\uFF0C\u4E8E\u662F\u5207\u4E00\u4E0B\u8BFB\u6CD5\uFF0C\u7248\u5F0F\u4E5F\u8DDF\u7740\u53D8\u3002\n */\n.tita-drawerBody {\n max-height: min(45vh, 460px);\n overflow-y: auto;\n /*\n * **\u6A2A\u5411\u4E0D\u6EDA**\uFF082026-10-06\uFF0C\u7528\u6237\u70B9\u540D\uFF1A\u300C\u5185\u5BB9\u5BBD\u5EA6\u8981\u8DDF\u7740\u5F39\u5C42\u7684\u5BBD\u5EA6\u8D70\uFF0C\u7981\u6B62\u5E95\u90E8\u518D\u6765\u4E00\u4E2A\n * \u5DE6\u53F3\u6ED1\u52A8\u7684\u6761\u300D\uFF09\u3002\n *\n * \u6B64\u524D\u8FD9\u91CC\u662F `overflow: auto` + `max-width: 68ch`\uFF1A\u5BBD\u8868\u683C / \u957F\u4EE3\u7801\u884C\u4E00\u8D85\u51FA\u5C31\u957F\u51FA\u6A2A\u5411\n * \u6EDA\u52A8\u6761\uFF0C\u800C 68ch \u53C8\u628A\u6B63\u6587\u9489\u5728\u4E00\u4E2A\u6BD4\u62BD\u5C49\u7A84\u7684\u5BBD\u5EA6\u4E0A \u2014\u2014 \u628A\u62BD\u5C49\u62D6\u5BBD\uFF0C\u6B63\u6587\u4E0D\u52A8\uFF0C\u4E8E\u662F\u90A3\u6839\n * \u6A2A\u6761\u6210\u4E86\u552F\u4E00\u7684\u300C\u5BBD\u5EA6\u53CD\u9988\u300D\u3002\u4E24\u4EF6\u4E8B\u4E00\u8D77\u6539\uFF1A\n *\n * - \u5BBD\u5EA6**\u8DDF\u7740\u62BD\u5C49**\uFF08`max-width` \u53BB\u6389\uFF09\uFF0C\u62BD\u5C49\u62D6\u591A\u5BBD\uFF0C\u6B63\u6587\u5C31\u591A\u5BBD\uFF1B\n * - \u6A2A\u5411**\u4E0D\u51FA\u6761**\uFF08`overflow-x: hidden`\uFF09\u3002\u5BBD\u5185\u5BB9\u5404\u81EA\u5728\u81EA\u5DF1\u7684\u5C42\u91CC\u89E3\u51B3\uFF1A\u56FE\u7247\u4E0E\u8868\u683C\n * `max-width: 100%`\uFF0C`<pre>` \u672C\u6765\u5C31 `pre-wrap`\uFF0C\u884C\u5185\u957F\u4E32\u7531 `overflow-wrap: anywhere`\n * \u65AD\u884C\u3002**\u4E0D\u8BB8\u628A\u6574\u5757\u5185\u5BB9\u63A8\u51FA\u53BB**\uFF0C\u90A3\u6B63\u662F\u8981\u6D88\u6389\u7684\u90A3\u6839\u6761\u3002\n */\n overflow-x: hidden;\n overscroll-behavior: contain;\n border: 1px solid var(--tita-line);\n border-radius: 10px;\n background: var(--tita-surface-muted);\n box-shadow: inset 0 1px 2px rgb(16 24 40 / 6%);\n padding: 12px 14px;\n}\n/*\n * **\u5185\u5BB9\u8DDF\u7740\u62BD\u5C49\u7684\u5BBD\u5EA6\u8D70**\uFF082026-10-06\uFF0C\u7528\u6237\u7B2C\u4E8C\u6B21\u70B9\u8FD9\u4EF6\u4E8B\uFF1A\u300C\u5185\u5BB9\u8981\u8DDF\u7740\u4FA7\u8FB9\u680F\u7684\u5BBD\u5EA6\u8D70\uFF0C\n * \u800C\u4E0D\u662F\u53CD\u8FC7\u6765\u300D\uFF09\u3002\n *\n * \u4E0A\u4E00\u7248\u53EA\u5199\u4E86 `overflow-x: hidden`\uFF1A\u6A2A\u6761\u662F\u6CA1\u6709\u4E86\uFF0C\u4F46\u5BBD\u5185\u5BB9**\u5E76\u6CA1\u6709\u53D8\u7A84** \u2014\u2014 \u5B83\u88AB\u88C1\u6389\u4E86\uFF0C\n * \u53F3\u534A\u8FB9\u76F4\u63A5\u770B\u4E0D\u89C1\u3002\u90A3\u662F\u628A\u75C7\u72B6\u85CF\u8D77\u6765\uFF0C\u4E0D\u662F\u628A\u95EE\u9898\u89E3\u51B3\u3002\u771F\u6B63\u8981\u505A\u7684\u662F\u8BA9\u5BBD\u5185\u5BB9**\u91CD\u65B0\u6392\u7248\u5230\n * \u62BD\u5C49\u7684\u5BBD\u5EA6\u91CC**\uFF1A\n *\n * - **\u8868\u683C**\uFF1A`width: 100%` + \u5355\u5143\u683C `overflow-wrap: anywhere`\u3002\u5217\u5BBD\u7531\u5185\u5BB9\u7B97\uFF0C\u4F46\u5185\u5BB9\n * \u5141\u8BB8\u65AD\u884C\uFF0C\u6240\u4EE5\u6574\u5F20\u8868\u6536\u8FDB\u62BD\u5C49\u5BBD\u5EA6\uFF0C\u4E0D\u6A2A\u6EDA\u4E5F\u4E0D\u88AB\u88C1\u3002\u5217\u591A\u7684\u8868\u4F1A\u53D8\u9AD8\uFF0C\u90A3\u6BD4\u770B\u4E0D\u5168\u597D\u3002\n * - **\u4EE3\u7801\u5757**\uFF1A`pre-wrap` + `anywhere`\u3002\u4E00\u884C SQL \u5728 380px \u91CC\u5FC5\u7136\u6298\u884C\uFF1B\u4E0D\u6298\u5C31\u53EA\u6709\u6A2A\u6761\n * \u6216\u8005\u88C1\u6389\u3002\u6587\u672C\u89C6\u56FE\u90A3\u4E00\u7248\uFF08`.tita-kbPre`\uFF09\u672C\u6765\u5C31\u662F `pre-wrap`\uFF0C\u8FD9\u91CC\u4E0E\u5B83\u4E00\u81F4\u3002\n * - **\u884C\u5185\u957F\u4E32**\uFF08URL\u3001hash\uFF09\uFF1A\u540C\u6837 `anywhere`\u3002\n *\n * \u5171\u4EAB\u7684 markdown \u6E32\u67D3\u5668\uFF08`packages/ui/src/markdown.css`\uFF09\u5BF9\u6574\u9875\u7528\u7684\u662F\u300C\u8868\u683C\u81EA\u5DF1\u6A2A\u6EDA\u300D\n * \uFF08`tableWrap`\uFF09\u2014\u2014 \u90A3\u6761\u5BF9**\u6574\u9875**\u6210\u7ACB\uFF0C\u56E0\u4E3A\u6574\u9875\u5BBD\u5EA6\u4E0D\u8BE5\u88AB\u4E00\u5F20 12 \u5217\u7684\u8868\u51B3\u5B9A\u3002\u62BD\u5C49\u91CC\u4E0D\n * \u9002\u7528\uFF1A\u8FD9\u91CC\u5BBD\u5EA6\u672C\u6765\u5C31\u7A84\uFF0C\u6A2A\u6EDA\u7B49\u4E8E\u8BA9\u8BFB\u8005\u5DE6\u53F3\u62C9\uFF0C\u800C\u7528\u6237\u8981\u7684\u662F**\u5185\u5BB9\u9002\u914D\u5BBD\u5EA6**\u3002\n */\n.tita-drawerBody {\n box-sizing: border-box;\n width: 100%;\n min-width: 0;\n max-width: 100%;\n}\n.tita-drawerBody > * { min-width: 0; }\n.tita-drawerBody table { width: 100%; max-width: 100%; }\n.tita-drawerBody th, .tita-drawerBody td { overflow-wrap: anywhere; }\n/*\n * \u9996\u5217\u5728\u8FD9\u7C7B\u6587\u6863\u91CC\u662F**\u884C\u6807**\uFF08\u6765\u6E90 / \u5177\u4F53\u903B\u8F91 / \u95EE\u9898\uFF09\u3002`anywhere` \u4F1A\u628A\u5B83\u4EEC\u538B\u6210\u4E24\u4E09\u4E2A\u5B57\n * \u4E00\u884C \u2014\u2014 \u300C\u5177\u4F53\u903B\u8F91\u300D\u7AD6\u6210\u56DB\u884C\uFF0C\u8BFB\u8D77\u6765\u6BD4\u8868\u683C\u6A2A\u6EDA\u8FD8\u7CDF\u3002\u7ED9\u9996\u5217\u4E00\u4E2A\u4E0B\u9650\uFF0C\u5269\u4E0B\u7684\u5BBD\u5EA6\u7531\u6570\u636E\u5217\u5206\u3002\n */\n.tita-drawerBody th:first-child, .tita-drawerBody td:first-child { min-width: 4.5em; }\n.tita-drawerBody pre, .tita-drawerBody code {\n max-width: 100%;\n white-space: pre-wrap;\n overflow-wrap: anywhere;\n}\n.tita-toneBlue { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-toneViolet { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-toneGreen { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-toneAmber { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-toneNeutral { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-actionPanel { border: 1px solid var(--tita-line); border-radius: 12px; background: var(--tita-surface); padding: 14px; }\n.tita-actionPanel h3 { margin: 0; color: var(--tita-ink); font-size: 13px; }\n.tita-actionPanel p { margin: 6px 0 12px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.6; }\n.tita-actionPanel > .tita-uiBadge { margin-top: 10px; }\n.tita-inlineHint { display: flex; align-items: center; gap: 6px; margin: 10px 0 0; color: var(--tita-ink-faint); font-size: 11px; }\n.tita-evolutionDetail > div:first-child { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }\n.tita-evolutionDetail > p { margin: 0 0 14px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.7; }\n\n/* ---------------------------------------------------- settings drawer UI */\n/* \u89C4\u5219\u6B63\u6587\u4E0E\u8868\u5355\u5171\u7528 560px \u7684\u9605\u8BFB\u5BBD\u5EA6\uFF1B\u7A84\u5C4F\u65F6\u968F\u89C6\u53E3\u6536\u7F29\uFF0C\u5185\u5BB9\u4FDD\u6301\u4E00\u5217\u3002 */\n.tita-settingsDrawer { width: min(560px, 100vw); min-width: min(480px, 90vw); }\n.tita-knowledgeSettings .tita-settingsSection { border-radius: 0; padding: 0; }\n.tita-knowledgeSettings .tita-settingsSectionHeader { align-items: center; margin-bottom: 16px; padding-bottom: 12px; }\n.tita-knowledgeSettings .tita-settingsSectionHeader > div:first-child { min-width: 0; }\n.tita-knowledgeSettings .tita-settingsGrid { gap: 16px; }\n.tita-settingsError { border: 1px solid var(--ddk-danger-line); border-radius: 9px; background: var(--ddk-danger-tint); color: var(--tita-danger); padding: 9px 11px; font-size: 12px; }\n/* \u4E00\u4E2A\u6570\u5B57\u5B57\u6BB5\u7684\u8349\u7A3F\u4E0D\u5408\u6CD5\uFF1A**\u4E0D\u662F\u9519\u8BEF\u6846\uFF0C\u662F\u4E00\u53E5\u65C1\u6CE8**\u3002\u5B83\u8BF4\u7684\u662F\u300C\u8FD9\u4E00\u7B14\u73B0\u5728\u8FD8\u5199\u4E0D\u4E86\u300D\uFF0C\n \u800C\u4EBA\u6B63\u505C\u5728\u8F93\u5165\u6846\u91CC\u6539\u5B83 \u2014\u2014 \u5957\u4E00\u5C42\u5E26\u8FB9\u6846\u7684\u7EA2\u5757\u4F1A\u628A\u4E00\u4E2A\u4E2D\u95F4\u6253\u5B57\u72B6\u6001\u8BF4\u6210\u4E00\u6B21\u6545\u969C\u3002 */\n.tita-settingInvalid { color: var(--tita-danger); font-size: 11px; line-height: 1.5; }\n/* \u300C\u8BFB\u4E0D\u5230\uFF0C\u91CD\u8BD5\u300D\u90A3\u4E00\u884C\u3002\u5B83\u957F\u5728**\u5B57\u6BB5\u81EA\u5DF1\u8EAB\u4E0A**\uFF08\u5C31\u5728\u8DEF\u5F84\u8F93\u5165\u6846\u4E0B\u9762\uFF09\uFF0C\u56E0\u4E3A\u5931\u8D25\u7684\u662F\n \u8FD9\u4E00\u6B21\u8BFB\u53D6\uFF0C\u800C\u4E0D\u662F\u6574\u4E2A\u8BBE\u7F6E\u5206\u533A \u2014\u2014 \u62A5\u5728\u5206\u533A\u5934\u4E0A\u4F1A\u8BA9\u4EBA\u4EE5\u4E3A\u6240\u6709\u8BBE\u7F6E\u90FD\u8BFB\u4E0D\u5230\u3002 */\n.tita-settingsRetry { display: flex; align-items: center; gap: 6px; margin: 6px 0 0; color: var(--tita-danger); font-size: 11.5px; line-height: 1.5; }\n.tita-settingsRetry > svg { flex: 0 0 auto; }\n.tita-settingsRetry > span { min-width: 0; flex: 1 1 auto; }\n/*\n * \u5206\u7EC4**\u4E0D\u662F\u4E00\u4E2A\u5361\u7247**\u3002\n *\n * \u8FD9\u91CC\u539F\u6765\u662F\u300Cborder + radius 12 + padding 15\u300D\uFF0C\u4E8E\u662F\u62BD\u5C49\u91CC\u51FA\u73B0\u4E09\u5C42\u76D2\u5B50\uFF1A\u62BD\u5C49\u9762\u677F \u2192\n * \u5206\u7EC4\u5361\u7247 \u2192 \u884C\uFF08`.tita-kbSourceRow` \u81EA\u5DF1\u4E5F\u5E26\u4E00\u5708\u63CF\u8FB9\uFF09\u3002\u7528\u6237\u7684\u539F\u8BDD\u662F\u300C\u4E00\u773C\u770B\u8FC7\u53BB\u662F\n * \u4E09\u4E2A\u5757\u5C42\u5C42\u5305\u88F9\u300D\u2014\u2014 \u800C\u8FD9\u4E09\u5C42\u91CC\u53EA\u6709\u4E00\u5C42\u5728\u8868\u8FBE\u771F\u4FE1\u606F\uFF08\u54EA\u51E0\u884C\u5C5E\u4E8E\u540C\u4E00\u8282\uFF09\uFF0C\u53E6\u5916\u4E24\u5C42\n * \u53EA\u662F\u628A\u540C\u4E00\u4EF6\u4E8B\u53C8\u8BF4\u4E86\u4E00\u904D\u3002\n *\n * \u73B0\u5728\u5206\u7EC4 = \u6807\u9898 + \u4E00\u6761\u5206\u9694\u7EBF + \u5185\u5BB9\uFF0C\u9760\u95F4\u8DDD\u5206\u7EC4\u3002`padding` \u4E0E `.tita-settingsStack`\n * \u91CC\u7684\u8D1F\u8FB9\u8DDD\u6210\u5BF9\u51FA\u73B0\uFF1A\u8BA9\u300C\u5B9A\u4F4D\u5230\u8FD9\u4E00\u8282\u300D\u65F6\u7684\u5E95\u8272\u63D0\u793A\u80FD\u5411\u5916\u6EA2\u4E00\u70B9\uFF0C\u4E0D\u81F3\u4E8E\u8D34\u7740\u6587\u5B57\uFF0C\n * \u540C\u65F6\u4E0D\u6539\u53D8\u5185\u5BB9\u672C\u8EAB\u7684\u5DE6\u53F3\u5BF9\u9F50\u3002\n */\n.tita-settingsSection { border: 0; border-radius: 10px; background: transparent; padding: 8px 12px 4px; }\n/* \u5361\u7247\u5934\u7684\u300C\u53C2\u6570\u300Dchip \u5B9A\u4F4D\u8FC7\u6765\u7684\u90A3\u4E00\u5757\uFF1A**\u4E00\u6B21\u6027**\u5F3A\u8C03\uFF0C1.6 \u79D2\u540E\u81EA\u5DF1\u56DE\u5230\u5E38\u6001\u3002\n \u5B83\u4E0D\u662F\u300C\u9009\u4E2D\u6001\u300D\uFF08\u62BD\u5C49\u91CC\u6CA1\u6709\u9009\u4E2D\u8FD9\u4E00\u56DE\u4E8B\uFF09\uFF0C\u6240\u4EE5\u4E0D\u590D\u7528 `.tita-kbStepOn` \u7684\u63CF\u8FB9\uFF1A\n \u8FB9\u6846\u4E0E\u5E95\u8272\u4ECE\u5F3A\u8C03\u84DD\u6DE1\u56DE\u9ED8\u8BA4\uFF0C\u52A8\u753B\u7684 `both` \u8BA9\u7EC8\u6001\u5C31\u662F\u9ED8\u8BA4\u503C \u2014\u2014 \u4E0D\u9700\u8981 JS \u8BA1\u65F6\u5668\n \u53BB\u6E05\u8FD9\u4E2A\u7C7B\u3002`scroll-margin-block-start` \u7ED9 `scrollIntoView` \u7559\u4E00\u53E3\u6C14\uFF0C\u522B\u8BA9\u8FB9\u6846\u8D34\u9876\u3002 */\n.tita-settingsSection { scroll-margin-block-start: 10px; }\n.tita-settingsSection:focus-visible { outline: 2px solid var(--tita-primary); outline-offset: 2px; }\n/* \u6CA1\u6709\u63CF\u8FB9\u53EF\u6DE1\u4E86\uFF0C\u5F3A\u8C03\u6539\u6210\u4E00\u5C42**\u5E95\u8272**\uFF1A\u4ECE\u5F3A\u8C03\u84DD\u7684\u6D45\u5E95\u6DE1\u56DE\u900F\u660E\u3002\n \u8FD9\u662F\u300C\u5B9A\u4F4D\u5230\u8FD9\u4E00\u8282\u300D\u7684\u4E00\u6B21\u6027\u63D0\u793A\uFF0C\u4E0D\u662F\u9009\u4E2D\u6001 \u2014\u2014 \u6240\u4EE5\u5B83\u6DE1\u51FA\u4E4B\u540E\u4EC0\u4E48\u90FD\u4E0D\u7559\u3002 */\n@keyframes tita-settings-settle {\n from { background: var(--tita-primary-soft); }\n to { background: transparent; }\n}\n.tita-settingsSectionOn { animation: tita-settings-settle 1.6s ease-out both; }\n@media (prefers-reduced-motion: reduce) { .tita-settingsSectionOn { animation: none; } }\n/* \u5206\u9694\u7EBF\u753B\u5728\u6807\u9898\u4E0B\u9762\uFF1A\u5B83\u662F\u66FF\u6389\u90A3\u5708\u63CF\u8FB9\u7684\u4E1C\u897F \u2014\u2014 \u6709\u5B83\uFF0C\u6807\u9898\u4E0E\u5185\u5BB9\u624D\u5206\u6210\u4E24\u6BB5\uFF1B\n \u6CA1\u6709\u5B83\uFF0C\u53BB\u6389\u8FB9\u6846\u5C31\u53EA\u5269\u300C\u4E00\u884C\u6807\u9898\u8DDF\u7740\u4E00\u5806\u5B57\u6BB5\u300D\u3002\n `padding-bottom` \u8BA9\u7EBF\u4E0B\u7559\u4E00\u53E3\u6C14\uFF0C`margin-bottom` \u518D\u628A\u5185\u5BB9\u63A8\u8FDC\u4E00\u70B9\u3002 */\n.tita-settingsSectionHeader {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n gap: 10px;\n /* \u9AD8\u5EA6\u538B\u7F29\uFF082026-10-06 \u7528\u6237\u8981\u6C42\uFF09\uFF1A\u6807\u9898\u5230\u7B2C\u4E00\u884C\u5B57\u6BB5\u4E4B\u95F4\u4ECE 14+9 \u6536\u5230 10+7 \u2014\u2014\n \u5206\u9694\u7EBF\u4ECD\u7136\u5728\uFF0C\u6807\u9898\u4E0E\u5185\u5BB9\u4ECD\u7136\u5206\u6210\u4E24\u6BB5\uFF0C\u53EA\u662F\u4E2D\u95F4\u90A3\u53E3\u6C14\u5C0F\u4E00\u6863\u3002 */\n margin-bottom: 10px;\n border-bottom: 1px solid var(--tita-line);\n padding-bottom: 7px;\n}\n.tita-settingsSectionHeaderTitle { display: inline-flex; min-width: 0; align-items: baseline; gap: 8px; }\n.tita-settingsSectionHeader h3 { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 14px; }\n.tita-settingsSectionActions { display: flex; justify-content: flex-end; margin-top: 8px; }\n/*\n * tooltip \u9762\u677F\uFF1A\u8FD9\u91CC\u7684\u8BF4\u660E\u662F\u6574\u53E5\uFF0C\u8981\u5DE6\u5BF9\u9F50\u3001\u53EF\u6362\u884C\u3001\u9650\u5BBD\u3002\n *\n * \u9009\u62E9\u5668**\u53CC\u5199\u540C\u540D\u7C7B**\u662F\u4E3A\u4E86\u62FF\u5230 (0,2,0) \u7684\u7279\u5F02\u6027\u3002UI \u5305\u7684 tooltip \u81EA\u5E26 `max-w-xs`\n * \u548C `inline-flex`\uFF08320px \u5BBD\u3001\u4E0D\u6362\u884C\uFF09\uFF0C\u800C\u63D2\u4EF6**\u6CA1\u6709\u81EA\u5DF1\u7684 Tailwind \u6784\u5EFA** \u2014\u2014 \u7528\u5DE5\u5177\u7C7B\n * \u8986\u76D6\u8FD9\u6761\u8DEF\u662F\u8D70\u4E0D\u901A\u7684\uFF1A`max-w-[260px]` \u5728\u63D2\u4EF6\u91CC\u6CA1\u6709\u5BF9\u5E94\u89C4\u5219\uFF0C\u800C `cn` \u7684 twMerge \u4F1A\u5148\n * \u628A `max-w-xs` \u5220\u6389\uFF0C\u9650\u5BBD\u4E8E\u662F\u5F7B\u5E95\u5931\u6548\uFF08\u5B9E\u6D4B\u5BBD\u5EA6\u4ECE 320px \u53D8\u6210 996px\uFF09\u3002\u53CC\u5199\u662F\u8FD9\u91CC\u552F\u4E00\n * \u4E0E\u6837\u5F0F\u8868\u987A\u5E8F\u65E0\u5173\u7684\u5199\u6CD5\u3002\n *\n * \u9650\u5BBD**\u4E0D\u5F80\u7A84\u4E86\u538B**\uFF08\u8FD9\u91CC 320px\uFF0C\u548C UI \u5305\u9ED8\u8BA4\u540C\u503C\uFF09\uFF1A\u8BF4\u660E\u662F\u6574\u53E5\u4E2D\u6587\uFF0C\u7A84\u4E00\u6863\u5C31\u591A\u4E00\u884C\uFF0C\n * \u800C\u591A\u51FA\u6765\u7684\u90A3\u884C\u4F1A\u628A\u5B83\u63A8\u5411\u89C6\u53E3\u8FB9\u7F18\u3002\u4F4D\u7F6E\u672C\u8EAB\u73B0\u5728\u7531 radix \u51B3\u5B9A\uFF08\u4E0A\u65B9\u653E\u4E0D\u4E0B\u5C31\u7FFB\u5230\u4E0B\u65B9\uFF0C\n * \u89C1 `InfoHint`\uFF09\uFF0C\u6240\u4EE5\u8FD9\u91CC\u53EA\u9700\u8981\u7BA1\u300C\u4E00\u884C\u591A\u957F\u300D\u8FD9\u4E00\u4EF6\u4E8B\u3002\n */\n.tita-infoHintPanel.tita-infoHintPanel { display: block; max-width: 320px; padding: 8px 12px; line-height: 1.65; text-align: left; white-space: normal; }\n/* \u5C0F\u8282\u6807\u9898\u65C1\u7684\u8BF4\u660E\u5165\u53E3\uFF1A\u56FE\u6807\u5E38\u9A7B\u3001\u8BF4\u660E\u60AC\u505C\u624D\u51FA\u73B0\uFF08\u89C1 `InfoHint`\uFF09\u3002\n \u4E09\u4E2A\u989C\u8272\u539F\u6765\u6307\u7740 `--tita-subtle` / `--tita-blue` / `--tita-accent*` \u2014\u2014 \u8FD9\u56DB\u4E2A\u540D\u5B57\n \u5728 `packages/ui` \u4E0E\u672C\u63D2\u4EF6\u91CC**\u90FD\u6CA1\u6709\u5B9A\u4E49**\u3002\u672A\u5B9A\u4E49\u7684 `var()` \u8BA9\u6574\u6761\u58F0\u660E\u5728\u8BA1\u7B97\u503C\u9636\u6BB5\n \u5931\u6548\uFF1A\u5165\u53E3\u7684\u5E38\u9A7B\u8272\u56DE\u9000\u6210\u7EE7\u627F\u8272\u3001\u7126\u70B9\u5708\u56DE\u9000\u6210 `currentColor`\u3002\u73B0\u5728\u6307\u5411\u771F\u5B9E token\u3002 */\n.tita-infoHint { display: inline-flex; width: 16px; height: 16px; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--tita-ink-faint); cursor: help; }\n.tita-infoHint:hover { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-infoHint:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n/* \u53EF\u70B9\u51FB\u7684\u90A3\u4E00\u679A\uFF08\u4F20\u4E86 `href`\uFF09\uFF1A\u5B83\u4ECE\u300C\u8BF4\u660E\u300D\u53D8\u6210\u300C\u5165\u53E3\u300D\uFF0C\u6240\u4EE5\u5149\u6807\u4ECE help \u6362\u6210 pointer \u2014\u2014\n \u540C\u4E00\u4E2A\u56FE\u6807\u6709\u4E24\u79CD\u542B\u4E49\u65F6\uFF0C\u5149\u6807\u662F\u96F6\u6210\u672C\u7684\u90A3\u6761\u7EBF\u7D22\u3002 */\n.tita-infoHintAction { cursor: pointer; }\n.tita-infoHintAction:hover { color: var(--tita-ink); }\n/* \u8BF4\u660E\u9760\u53F3\uFF082026-10-05\uFF09\uFF1A\u77E5\u8BC6\u5E93\u4E0E\u610F\u56FE\u4E24\u6761\u5DE5\u5177\u680F\u540C\u4E00\u6761\u89C4\u77E9 \u2014\u2014 \u52A8\u4F5C\u4E00\u7EC4\u9760\u5DE6\uFF0C\n `?` \u81EA\u5DF1\u7AD9\u5728\u6700\u53F3\u7AEF\u3002`margin-left: auto` \u5728\u6362\u884C\u65F6\u4E5F\u6210\u7ACB\uFF1A\u5B83\u843D\u5230\u7B2C\u4E8C\u884C\uFF0C\u4ECD\u7136\u53F3\u5BF9\u9F50\u3002 */\n.tita-kbToolbarHint { flex: 0 0 auto; margin-left: auto; }\n/* \u6807\u9898\u91CC\u7684\u8BF4\u660E\u5165\u53E3\uFF08\u8BBE\u7F6E\u5C0F\u8282\u540C\u7406\uFF09\uFF1A\u4E0E\u6807\u9898\u6587\u5B57\u7559\u4E00\u683C\u6C14\uFF0C\n \u5E76\u5BF9\u9F50\u6587\u5B57\u7684\u5149\u5B66\u4E2D\u7EBF \u2014\u2014 \u5B83\u4E0E\u6807\u9898\u540C\u5728\u4E00\u884C\uFF0C\u4E0D\u662F\u72EC\u7ACB\u4E00\u884C\u3002 */\n.tita-settingsSectionHeader h3 > .tita-infoHint,\n.tita-settingsSectionHeader h4 > .tita-infoHint { margin-left: 6px; vertical-align: -2px; }\n.tita-settingsSectionHeader p { margin: 4px 0 0; color: var(--tita-ink-muted); font-size: 11px; }\n.tita-settingMeta { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 4px; color: var(--tita-ink-faint); font-size: 10px; text-align: right; }\n/* \u5199\u5931\u8D25\u65F6\u90A3\u4E00\u884C\u4E0D\u662F\u300C\u72B6\u6001\u300D\uFF0C\u662F**\u5F85\u5904\u7406\u7684\u4E8B**\uFF0C\u6240\u4EE5\u7ED9\u5B83\u8B66\u793A\u8272\u800C\u4E0D\u662F\u7070\u3002 */\n.tita-settingMetaBad { color: var(--tita-warning); font-weight: 600; }\n/*\n * \u8BBE\u7F6E\u9879**\u4E00\u5217**\u6392\u3002\n *\n * \u539F\u6765\u662F\u4E24\u5217\u7F51\u683C\uFF0C\u4F46\u62BD\u5C49\u53EA\u6709 380\u2013440px \u5BBD\uFF0C\u4E24\u5217\u610F\u5473\u7740\u6BCF\u4E2A\u63A7\u4EF6\u7EA6 200px\uFF1B\u800C\u6807\u7B7E\u548C\u8BF4\u660E\n * \u90FD\u662F\u6574\u53E5\u4E2D\u6587\uFF0C\u6362\u884C\u884C\u6570\u4E0D\u4E00\u81F4\uFF0C\u4E8E\u662F\u540C\u4E00\u884C\u7684\u4E24\u4E2A\u5B57\u6BB5\u9AD8\u5EA6\u4E0D\u540C\u3001\u63D0\u793A\u6587\u5B57\u9519\u4F4D\uFF0C\u300C\u6784\u5EFA\u8BBE\u7F6E\u300D\n * \u548C\u300C\u77E5\u8BC6\u5E93\u53EC\u56DE\u8BBE\u7F6E\u300D\u91CC\u8FD8\u6DF7\u7740\u5360\u4E24\u5217\u7684\u5B57\u6BB5\uFF08\u6A21\u578B\u8DEF\u5F84\u3001Python\uFF09\uFF0C\u6700\u540E\u4E00\u5217\u7ECF\u5E38\u7A7A\u534A\u683C \u2014\u2014\n * \u770B\u8D77\u6765\u5C31\u662F\u6CA1\u5BF9\u9F50\u3002\n *\n * \u4E00\u5217\u4E4B\u540E\u6BCF\u9879\u7684\u5BBD\u5EA6\u3001\u6807\u7B7E\u57FA\u7EBF\u3001\u63A7\u4EF6\u5DE6\u8FB9\u7F18\u90FD\u4E00\u81F4\uFF0C\u5360\u4E24\u5217\u90A3\u4E2A\u53D8\u4F53\u4E5F\u5C31\u6CA1\u6709\u610F\u4E49\u4E86\u3002\n */\n.tita-settingsGrid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }\n/*\n * \u9AD8\u5EA6\u538B\u7F29\uFF082026-10-06 \u7528\u6237\u8981\u6C42\u300C\u5176\u4ED6\u8BBE\u7F6E\u9700\u8981\u538B\u7F29\u4E0B\u9AD8\u5EA6\u300D\uFF09\u3002\n *\n * \u53EA\u6536**\u95F4\u8DDD**\uFF0C\u4E0D\u52A8\u5B57\u53F7\u4E0E\u63A7\u4EF6\u5C3A\u5BF8\uFF1A\u5B57\u6BB5\u4E09\u6BB5\uFF08\u6807\u7B7E / \u63A7\u4EF6 / \u8BF4\u660E\uFF09\u4E4B\u95F4\u7684 5px \u6536\u5230 4px\uFF0C\n * \u8BF4\u660E\u884C\u7684\u884C\u9AD8\u4ECE 1.6 \u6536\u5230 1.45 \u2014\u2014 \u6784\u5EFA\u90A3\u4E00\u7EC4 8 \u4E2A\u5B57\u6BB5\uFF0C\u6BCF\u9879\u7701 2\u20133px \u5C31\u662F\u4E00\u5C4F\u7684\u5DEE\u522B\u3002\n * \u4E24\u6761\u90FD\u9650\u5B9A\u5728\u62BD\u5C49\u91CC\uFF1A`Field` \u662F\u5168\u4EA7\u54C1\u5171\u7528\u7684\uFF0C\u522B\u5904\u7684 5px / 1.6 \u4E0D\u53D7\u5F71\u54CD\u3002\n */\n.tita-settingsSection .tita-uiField { gap: 4px; }\n.tita-settingsSection .tita-uiFieldHint { line-height: 1.45; }\n/*\n * \u5B57\u6BB5\u672C\u8EAB\uFF08\u6807\u9898 / \u63A7\u4EF6 / \u8BF4\u660E\uFF09\u64A4\u6389\u4E86\uFF0C\u6539\u7528 `packages/ui` \u7684 `Field`\u3002\n *\n * \u8FD9\u91CC\u66FE\u7ECF\u6709\u8FC7\u4E00\u6574\u5957 `.tita-settingField` + `.tita-settingHint`\uFF1A\u6807\u9898 11px/600\u3001\n * \u8BF4\u660E 10px\u3001\u8F93\u5165\u6846\u5706\u89D2 8px / \u5E95\u8272 `--tita-surface`\u3002\u800C\u5F39\u5C42\u91CC\u7684 `.tita-kbField` \u662F\n * 12px/400 \u7684\u6807\u9898\u300111px \u7684\u8BF4\u660E\uFF0C`Input` \u81EA\u5DF1\u662F 7px \u5706\u89D2 / \u767D\u5E95 \u2014\u2014 **\u540C\u4E00\u4E2A `Input`\n * \u7EC4\u4EF6\uFF0C\u653E\u8FDB\u8BBE\u7F6E\u884C\u548C\u653E\u8FDB\u5F39\u5C42\u5C31\u957F\u4E24\u4E2A\u6837**\uFF0C\u800C\u90A3\u4E2A\u5206\u53C9\u5B8C\u5168\u7531\u300C\u5B83\u5957\u5728\u54EA\u4E2A\u5BB9\u5668\u91CC\u300D\u51B3\u5B9A\u3002\n * `.tita-settingField input` \u90A3\u6761\u8FD8\u4EE5 (0,1,1) \u538B\u8FC7 `Input` \u81EA\u5DF1\u7684\u5DE5\u5177\u7C7B\uFF0C\u6240\u4EE5\u8BBE\u7F6E\u62BD\u5C49\n * \u91CC\u7684\u8F93\u5165\u6846\u5B9E\u9645\u6E32\u67D3\u7684\u662F 8px \u5706\u89D2\uFF0C\u4E0D\u662F\u5171\u4EAB\u63A7\u4EF6\u58F0\u660E\u7684 7px\u3002\n *\n * \u73B0\u5728\u53EA\u6709\u4E00\u5904\u5B9A\u4E49\uFF08`Field`\uFF09\uFF0C\u8FB9\u6846\u3001\u5706\u89D2\u3001\u5B57\u53F7\u3001\u53EA\u8BFB\u6001\u90FD\u4ECE\u5171\u4EAB\u63A7\u4EF6\u6765\u3002\n */\n\n/* --------------------------------------------------- \u6839\u8DEF\u5F84\uFF1A\u9009\u62E9 */\n.tita-pickerRow { display: flex; min-width: 0; align-items: center; gap: 8px; }\n.tita-pickerRow input { flex: 1 1 auto; min-width: 0; font-variant-numeric: tabular-nums; }\n.tita-pickerRow button { flex: 0 0 auto; white-space: nowrap; }\n.tita-spin { animation: tita-spin 900ms linear infinite; }\n@keyframes tita-spin { to { transform: rotate(360deg); } }\n@media (prefers-reduced-motion: reduce) { .tita-spin { animation-duration: 3s; } }\n\n/* \u5E03\u5C40\u9884\u89C8\u7684\u6837\u5F0F\uFF08`.tita-layoutPreview` / `Segments` / `Migration` / `Assets` / `Error`\uFF09\n \u968F 2026-10-06 \u7684\u300C\u5B58\u50A8\u53EA\u7559\u6839\u8DEF\u5F84\u300D\u4E00\u5E76\u5220\u6389 \u2014\u2014 \u7EC4\u4EF6\u5DF2\u5220\uFF0C\u8FD9\u4E9B\u6CA1\u6709\u7B2C\u4E8C\u4E2A\u4F7F\u7528\u8005\u3002 */\n\n/* --------------------------------------------------- \u9875\u9762\u5185\u76EE\u5F55\u6D4F\u89C8\uFF08\u515C\u5E95\uFF09 */\n.tita-browseDialog { display: flex; width: min(680px, calc(100vw - 32px)); max-height: min(560px, calc(100vh - 64px)); flex-direction: column; gap: 10px; }\n.tita-browseCrumbs { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 1px; }\n.tita-browseCrumbWrap { display: inline-flex; align-items: center; gap: 1px; color: var(--tita-ink-faint); }\n.tita-browseCrumb { max-width: 160px; overflow: hidden; border: 0; border-radius: 6px; background: transparent; padding: 3px 6px; color: var(--tita-ink-muted); font: inherit; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }\n.tita-browseCrumb:hover { background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-browseCrumbOn { color: var(--tita-ink); font-weight: 650; }\n.tita-browsePath { overflow: hidden; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface-muted); padding: 6px 9px; color: var(--tita-ink); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }\n.tita-browseError { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-warning); font-size: 11px; }\n.tita-browseList { flex: 1 1 auto; min-height: 180px; margin: 0; overflow-y: auto; border: 1px solid var(--tita-line); border-radius: 9px; padding: 4px; list-style: none; }\n.tita-browseRow { display: flex; width: 100%; align-items: center; gap: 7px; border: 0; border-radius: 7px; background: transparent; padding: 6px 8px; color: var(--tita-ink); font: inherit; font-size: 12px; text-align: left; cursor: pointer; }\n.tita-browseRow:hover { background: var(--tita-surface-muted); }\n.tita-browseRow > svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-browseEmpty { padding: 16px 10px; color: var(--tita-ink-faint); font-size: 11.5px; text-align: center; }\n.tita-browseNote { margin: 0; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-browseCreate { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }\n.tita-browseCreate input { flex: 1 1 160px; min-width: 0; }\n.tita-browseHidden { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 11px; }\n\n/* Visually hidden, still focusable: the non-pointer entry point (PRD \xA712.3). */\n.tita-srOnly { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }\n.tita-srOnly:focus-within { position: static; width: auto; height: auto; clip: auto; clip-path: none; white-space: normal; }\n.tita-srOnly ul { margin: 0; padding: 0; list-style: none; }\n\n/* ------------------------------- responsive: react to the host pane width */\n@container (max-width: 1080px) {\n .tita-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n .tita-railQuote { grid-column: 1 / -1; }\n .tita-statsRow { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n .tita-evalGrid, .tita-memoryGrid { grid-template-columns: minmax(0, 1fr); }\n .tita-skillGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n .tita-memoryCardWide { grid-column: auto; }\n}\n\n@container (max-width: 700px) {\n .tita-rail { grid-template-columns: minmax(0, 1fr); }\n .tita-statsRow { grid-template-columns: minmax(0, 1fr); }\n .tita-skillGrid { grid-template-columns: minmax(0, 1fr); }\n .tita-skillHero { align-items: flex-start; flex-wrap: wrap; }\n .tita-skillHero > .tita-uiButton { width: 100%; }\n .tita-inputRow { align-items: stretch; flex-direction: column; }\n .tita-inputRow .tita-uiButton { width: 100%; }\n}\n\n/* Vertical flow once a single lane can no longer hold two nodes per row. */\n@container (max-width: 560px) {\n .tita-laneTrack, .tita-stageTrack { flex-direction: column; align-items: stretch; }\n .tita-flowNode, .tita-flowFork { width: 100%; max-width: none; flex: 0 0 auto; }\n .tita-flowArrow { align-self: center; transform: rotate(90deg); }\n .tita-archBridge { padding: 0; }\n}\n\n/* ------------------------------------------- knowledge bases (issue 0019) */\n/* \u77E5\u8BC6\u5E93 Tab\uFF1A\u591A\u77E5\u8BC6\u5E93 + \u6587\u4EF6\u7C7B\u578B + \u6587\u4EF6\u5217\u8868 + \u6587\u6863\u8BE6\u60C5\u4E0E\u7248\u672C\u3002 */\n.tita-kbLayout { display: grid; gap: 12px; min-width: 0; }\n.tita-kbToolbar { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 8px 12px; }\n.tita-kbToolbar > :first-child { flex: 0 1 auto; min-width: 0; }\n/* \u53EA\u6709\u4E00\u4E2A\u77E5\u8BC6\u5E93\u65F6\uFF0C\u8FD9\u4E00\u884C\u4E0D\u518D\u653E\u9009\u62E9\u5668\uFF0C\u800C\u662F\u4E00\u884C\u7EAF\u6587\u672C\uFF08\u56FE\u6807 + \u5E93\u540D\uFF09\u3002\n \u5B83**\u4E0D\u662F**\u4E00\u4E2A\u88AB\u7981\u7528\u7684\u6309\u94AE\uFF1A\u6CA1\u6709\u8FB9\u6846\u3001\u6CA1\u6709 hover\u3001\u6CA1\u6709\u4E0B\u62C9\u7BAD\u5934 \u2014\u2014\n \u4E00\u4E2A\u957F\u5F97\u50CF\u63A7\u4EF6\u4F46\u70B9\u4E0D\u52A8\u7684\u4E1C\u897F\uFF0C\u6BD4\u4E00\u884C\u5B57\u66F4\u8BA9\u4EBA\u56F0\u60D1\u3002\n \u5E93\u540D\u7528 `<b>` \u800C\u4E0D\u662F\u7B49\u5BBD\u6216\u5927\u5B57\uFF1A\u8FD9\u4E00\u884C\u7684\u4E3B\u8BED\u662F\u5B83\uFF0C\u4F46\u5B83\u4E0D\u9700\u8981\u6BD4\u6309\u94AE\u66F4\u54CD\u3002 */\n.tita-kbStaticName {\n display: inline-flex;\n min-width: 0;\n align-items: center;\n gap: 7px;\n padding: 0 2px;\n color: var(--tita-ink);\n font-size: 12px;\n}\n.tita-kbStaticName > svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-kbStaticName > b { min-width: 0; overflow: hidden; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }\n/* \u52A8\u4F5C\u8DDF\u7740\u9009\u62E9\u5668\u5F80\u5DE6\u6392\uFF080035\uFF09\uFF1A\u8FD9\u4E00\u884C\u53EA\u6709\u4E00\u4E2A\u4E3B\u8BED\uFF08\u5F53\u524D\u77E5\u8BC6\u5E93\uFF09\u548C\u5B83\u7684\u52A8\u4F5C\u3002\u628A\u52A8\u4F5C\u63A8\u5230\n \u6700\u53F3\u8FB9\uFF0C\u4E2D\u95F4\u4F1A\u7559\u4E00\u6BB5**\u6CA1\u6709\u610F\u4E49\u7684\u7A7A\u767D**\uFF0C\u800C\u5728\u7A84\u680F\u91CC\u90A3\u6BB5\u7A7A\u767D\u672C\u6765\u80FD\u653E\u4E0B\u7B2C\u4E09\u4E2A\u6309\u94AE\u3002\n 0035 \u4E5F\u628A\u8BA1\u6570\u64A4\u51FA\u4E86\u8FD9\u4E00\u884C \u2014\u2014 \u5B83\u4EEC\u6CA1\u6709\u4E22\uFF0C\u6B65\u9AA4\u8F68\u6BCF\u4E00\u6B65\u7B2C\u4E8C\u884C\u5199\u7684\u5C31\u662F\u540C\u4E00\u6279\u6570\u5B57\u3002 */\n/*\n * \u52A8\u4F5C\u90A3\u4E00\u7EC4\u3002**\u5B83\u5FC5\u987B\u80FD\u6362\u884C\uFF0C\u4E5F\u5FC5\u987B\u80FD\u88AB\u538B\u7F29\u3002**\n *\n * \u539F\u6765\u53EA\u6709\u4E09\u4E2A\u52A8\u4F5C\uFF08\u7C7B\u578B\u5B9A\u4E49 / \u91CD\u65B0\u7F16\u8BD1 / \u89E3\u6790\u5185\u6838\uFF09\uFF0C`flex: 0 0 auto` \u591F\u7528 \u2014\u2014\n * \u4E09\u4E2A\u6309\u94AE\u52A0\u95F4\u8DDD\u7EA6 330px\uFF0C380px \u7684\u4FA7\u680F\u521A\u597D\u653E\u5F97\u4E0B\u30022026-10-05 \u53D8\u6210\u56DB\u4E2A\u52A8\u4F5C\u52A0\u4E00\u679A `?`\n * \uFF08\u7C7B\u578B\u5B9A\u4E49 / \u91CD\u65B0\u7F16\u8BD1 / \u62BD\u53D6\u8BD5\u8DD1 / \u8BF4\u660E / \u89E3\u6790\u5185\u6838\uFF09\uFF0C\u90A3\u4E00\u7EC4\u7EA6 520px\uFF1A\n * `flex: 0 0 auto` \u4E0D\u7F29\uFF0C\u6574\u884C\u4E8E\u662F\u6A2A\u5411\u6EA2\u51FA\u4FA7\u680F\uFF0C\u53F3\u4FA7\u90A3\u4E00\u679A\u6309\u94AE\u76F4\u63A5\u88AB\u88C1\u6389\n * \uFF08\u800C\u4E14\u6CA1\u6709\u6EDA\u52A8\u6761 \u2014\u2014 \u770B\u8D77\u6765\u50CF\u300C\u6309\u94AE\u4E0D\u89C1\u4E86\u300D\uFF09\u3002\n *\n * 2026-10-05 \u7684\u62C6\u5206\u4E3A\u4F55\u6CA1\u8BA9\u5B83\u66F4\u957F\uFF1A\u300C\u7F16\u8BD1\u6D41\u7A0B\u300D\u662F 4 \u4E2A\u5B57\u3001\u300C\u62BD\u53D6\u8BD5\u8DD1\u300D\u4E5F\u662F 4 \u4E2A\u5B57\uFF0C\n * \u800C\u90A3\u679A `?` \u53EA\u6709 16px \u5BBD \u2014\u2014 \u6362\u884C\u7167\u6837\u4F1A\u53D1\u751F\u5728\u7A84\u680F\u91CC\uFF0C\u6240\u4EE5\u4E0B\u9762\u4E24\u6761\u4ECD\u7136\u662F\u5FC5\u987B\u7684\u3002\n *\n * `flex: 0 1 auto` + `min-width: 0` \u8BA9\u5B83\u53EF\u4EE5\u88AB\u538B\uFF0C`flex-wrap: wrap` \u8BA9\u538B\u4E0D\u4E0B\u65F6\u6362\u884C\u3002\n * \u4E24\u8005\u7F3A\u4E00\u4E0D\u53EF\uFF1A\u53EA\u52A0 wrap \u4E0D\u89E3\u9664 `flex-basis: auto` \u7684\u8BDD\uFF0C\u5BB9\u5668\u4ECD\u7136\u6309 max-content \u6491\u5F00\u3002\n */\n.tita-kbToolbarActions { display: flex; min-width: 0; flex: 0 1 auto; flex-wrap: wrap; align-items: center; gap: 8px; }\n.tita-kbCompileAction { display: inline-flex; align-items: center; }\n.tita-kbCompileActionMain { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; }\n.tita-kbCompileActionMenu { min-width: 29px !important; padding-inline: 7px !important; border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important; margin-left: -1px; }\n\n.tita-kbNotice { display: flex; align-items: center; gap: 8px; margin: 0; border: 1px solid var(--tita-tone-green-line); border-radius: 9px; background: var(--tita-tone-green-tint); color: var(--tita-success); padding: 8px 10px; font-size: 11.5px; }\n.tita-kbNotice > span, .tita-kbNotice > div { flex: 1; min-width: 0; }\n/*\n * \u8FC1\u79FB\u90A3\u4E00\u5757\u662F**\u6E05\u5355**\uFF08\u4E00\u6761\u4E00\u6761\u8BFB\u3001\u6761\u6570\u8FD8\u6709\u610F\u4E49\uFF09\uFF0C\u4E0D\u662F\u4E00\u53E5\u8BDD\u3002\n * \u56FE\u6807\u56E0\u6B64\u5BF9\u9F50\u7B2C\u4E00\u884C\u800C\u4E0D\u662F\u5782\u76F4\u5C45\u4E2D\uFF0C\u6761\u76EE\u5404\u81EA\u6210\u884C\u3001\u5404\u81EA\u53EF\u626B\u3002\n */\n.tita-kbNoticeStack { align-items: flex-start; }\n.tita-kbNoticeStack > svg { margin-top: 2px; }\n.tita-kbNoticeList { display: grid; gap: 3px; margin: 4px 0 0; padding-left: 15px; list-style: disc; }\n.tita-kbNoticeError { border-color: var(--ddk-danger-line); background: var(--ddk-danger-tint); color: var(--tita-danger); }\n/* \u7425\u73C0\uFF1A**\u662F\u8D26\uFF0C\u4E0D\u662F\u6545\u969C** \u2014\u2014 \u771F\u6E90\u4E0E\u6765\u6E90\u5BF9\u4E0D\u4E0A\uFF0C\u800C\u5B83\u662F\u53EF\u4EE5\u6E05\u6389\u7684\uFF08\u5224\u636E\u786E\u5B9A\u3001\u53EF\u91CD\u5EFA\uFF09\u3002 */\n.tita-kbNoticeWarn { border-color: var(--tita-tone-amber-line); background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-kbNoticeWarn > span b { color: var(--tita-tone-amber); }\n/* \u63D0\u793A\u6761\u53F3\u7AEF\u7684\u5173\u95ED\u52A8\u4F5C\u3002\u9762\u677F\u91CC\u7684\u5173\u95ED\u6309\u94AE\u73B0\u5728\u662F\u5171\u4EAB\u7684 `Button variant="ghost" size="icon"`\uFF0C\n \u6240\u4EE5\u8FD9\u91CC\u53EA\u5269**\u8FD9\u4E00\u6761\u63D0\u793A\u81EA\u5DF1\u7684**\u8BED\u6C14\uFF1A\u6BD4\u6B63\u6587\u6DE1\u4E00\u70B9\uFF0C\u60AC\u505C\u624D\u56DE\u5230\u6EE1\u503C\u3002\n `border`/`background`/`padding` \u7684\u590D\u4F4D\u64A4\u6389 \u2014\u2014 \u90A3\u662F\u6309\u94AE\u81EA\u5DF1\u5E26\u7684\u4E86\u3002 */\n.tita-kbNoticeClose { flex: 0 0 auto; color: inherit; opacity: .7; }\n.tita-kbNoticeClose:hover { opacity: 1; }\n\n.tita-kbRoot { overflow: hidden; max-width: 100%; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }\n\n.tita-kbCard { min-width: 0; padding: 15px; }\n.tita-kbCardHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }\n.tita-kbCardActions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 7px; }\n.tita-kbEyebrow { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-faint); font-size: 9.5px; font-weight: 700; letter-spacing: .09em; }\n.tita-kbCardHead h3 { margin: 3px 0 0; color: var(--tita-ink); font-size: 14px; font-weight: 750; letter-spacing: -.01em; }\n.tita-kbCount { flex: 0 0 auto; color: var(--tita-ink-faint); font-size: 11px; }\n/*\n * \u884C\u53F3\u4FA7\u7684\u6B21\u8981\u4E8B\u5B9E\uFF08\u7C7B\u578B \xB7 \u65F6\u95F4 / N \u4E2A\u6765\u6E90 / N \u5F20\uFF09\u3002\n *\n * 0042 \u8865\u7684\u5B9A\u4E49\uFF1A\u8FD9\u4E2A\u7C7B\u540D\u88AB\u4E94\u5904\u7528\u7740\uFF08\u5361\u7247\u884C\u3001\u539F\u6587\u62BD\u5C49\u7684\u7F16\u8BD1\u4EA7\u7269\u3001\u610F\u56FE\u4EFB\u52A1\u3001\n * \u7C7B\u578B\u5B9A\u4E49\u3001\u5361\u7247\u7C7B\u578B\u7F16\u8F91\u5668\uFF09\u5374**\u4E00\u76F4\u6CA1\u6709\u6837\u5F0F** \u2014\u2014 \u4E8E\u662F\u5B83\u53EA\u4F20\u9012\u4E86\u4E00\u4E2A\u540D\u5B57\uFF0C\n * \u53F3\u5BF9\u9F50\u4E0E\u300C\u6BD4\u4E3B\u6587\u5B57\u8F7B\u300D\u5168\u9760\u7236\u7EA7\u7684 flex \u78B0\u8FD0\u6C14\u3002\u4E00\u6B21\u5B9A\u4E49\u5230\u4F4D\u3002\n */\n.tita-kbTypeCount { flex: 0 0 auto; margin-left: auto; color: var(--tita-ink-faint); font-size: 10.5px; white-space: nowrap; font-variant-numeric: tabular-nums; }\n.tita-kbHint { margin: 8px 0 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.65; }\n.tita-kbHint b { color: var(--tita-ink-muted); }\n.tita-kbEmpty { margin: 12px 0 0; border: 1px dashed var(--tita-line); border-radius: 9px; color: var(--tita-ink-faint); padding: 12px; font-size: 11.5px; text-align: center; }\n.tita-kbSubHead { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 16px 0 6px; }\n.tita-kbSubHead h4 { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 700; }\n.tita-kbSubHead > span { color: var(--tita-ink-faint); font-size: 10.5px; }\n\n\n/* \u6765\u6E90\u4E1A\u52A1\u5206\u7C7B\u6CE8\u518C\u8868\uFF08issue 0013\uFF09\uFF1A\u4E0E\u300C\u6587\u4EF6\u7C7B\u578B\u300D\u540C\u6784\uFF0C\u989D\u5916\u5E26\u4E00\u6BB5\u5185\u7F6E\u53EA\u8BFB\u5224\u5B9A\u89C4\u5219\u3002 */\n.tita-kbSourceList { display: grid; margin: 4px 0 0; padding: 0; list-style: none; gap: 0; }\n/* \u4E00\u884C\u5206\u7C7B\u662F**\u5217\u8868\u884C**\uFF0C\u4E0D\u662F\u4E00\u5F20\u5C0F\u5361\u7247\uFF1A\u6CA1\u6709\u63CF\u8FB9\u3001\u6CA1\u6709\u5706\u89D2\uFF0C\u53EA\u6709\u4E00\u6761\u5E95\u90E8\u5206\u9694\u7EBF\u3002\n \u6700\u540E\u4E00\u884C\u4E0D\u753B\u7EBF\uFF08\u5217\u8868\u672B\u5C3E\u90A3\u6761\u7EBF\u53EA\u662F\u628A\u7A7A\u767D\u5207\u5F00\uFF09\u3002\n \u9AD8\u5EA6\u4ECE 34px \u6536\u5230 32px\uFF1A\u5341\u4E00\u884C\u7701\u4E0B\u4E8C\u5341\u6765\u50CF\u7D20\uFF0C\u6B63\u597D\u662F\u300C\u5217\u8868\u80FD\u4E0D\u80FD\u4E00\u773C\u770B\u5B8C\u300D\u7684\u5DEE\u503C\u3002 */\n.tita-kbSourceRow {\n display: grid;\n grid-template-columns: minmax(0, 1fr) 66px auto auto auto;\n align-items: center;\n gap: 8px;\n border-bottom: 1px solid var(--tita-line);\n padding: 4px 6px;\n min-height: 32px;\n}\n.tita-kbSourceRow:last-child { border-bottom: 0; }\n.tita-kbSourceRow:hover { background: var(--tita-surface-muted); }\n.tita-kbSourceName { display: flex; min-width: 0; align-items: baseline; gap: 6px; overflow: hidden; }\n.tita-kbSourceLabel { overflow: hidden; color: var(--tita-ink); font-size: 12px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbSourceId { flex: 0 0 auto; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n.tita-kbSourceTag { flex: 0 0 auto; border-radius: 4px; background: var(--tita-primary-soft); color: var(--tita-primary); padding: 1px 5px; font-size: 9.5px; }\n.tita-kbSourceTagLock { background: var(--tita-surface-muted); color: var(--tita-ink-faint); }\n.tita-kbPrompt { margin-top: 10px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); padding: 10px 12px; }\n.tita-kbPrompt > summary { cursor: pointer; color: var(--tita-ink-muted); font-size: 11.5px; font-weight: 650; }\n.tita-kbPromptNote { margin: 8px 0 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.7; }\n.tita-kbPromptSteps { margin: 8px 0 0; padding-left: 18px; color: var(--tita-ink); font-size: 11px; line-height: 1.85; }\n.tita-kbPromptSteps code { border-radius: 4px; background: var(--tita-surface-muted); padding: 0 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n.tita-kbPromptOff { color: var(--tita-danger); text-decoration: line-through; }\n.tita-kbSourcePick { display: inline-flex; align-items: center; gap: 6px; color: var(--tita-ink-muted); font-size: 11px; }\n.tita-kbSourcePick select { min-width: 150px; }\n/* \u300C\u65B0\u589E\u7C7B\u578B\u300D\u73B0\u5728\u72EC\u5360\u8FD9\u4E00\u884C\uFF1A\u5B83\u65C1\u8FB9\u90A3\u6BB5\u5E38\u9A7B\u8BF4\u660E\u642C\u8FDB\u4E86\u8282\u6807\u9898\u7684\u8BF4\u660E\u56FE\u6807\uFF0C\n \u6240\u4EE5\u8FD9\u91CC\u53EA\u8D1F\u8D23\u628A\u6309\u94AE\u653E\u5230\u53F3\u4FA7\uFF08\u539F\u6765\u662F `space-between` \u628A\u8BF4\u660E\u548C\u6309\u94AE\u5206\u5230\u4E24\u5934\uFF09\u3002 */\n.tita-kbSourceAdd { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 10px; }\n\n/* \u7B5B\u9009\u884C\uFF1A\u641C\u7D22 \xB7 \u6587\u4EF6\u7C7B\u578B \xB7 \u5237\u65B0 \xB7 \u6DFB\u52A0\u6587\u4EF6\u3002 */\n.tita-kbFilterRow { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; }\n/* \u641C\u7D22\u6846\u7ED9\u4E0A\u9650\uFF1A\u5B83\u4F1A grow\uFF0C\u4E0D\u8BBE\u4E0A\u9650\u5C31\u4F1A\u628A\u4E24\u4E2A\u4E0B\u62C9\u548C\u5237\u65B0\u6324\u5230\u7B2C\u4E8C\u884C\u53BB\u3002\n \u4E24\u4E2A\u4E0B\u62C9\u81EA\u5DF1\u7684\u5BBD\u5EA6\uFF08`w-auto max-w-[220px]`\uFF09\u5728\u8C03\u7528\u5904\u7ED9 \u2014\u2014 \u76D2\u5B50\u5F52\u5171\u4EAB\u7EC4\u4EF6\uFF0C\n \u8FD9\u91CC\u4E0D\u518D\u7528\u5143\u7D20\u9009\u62E9\u5668\u6539 `select` \u7684\u957F\u76F8\u3002 */\n.tita-kbFilterRow .tita-kbFilterSearch { flex: 1 1 180px; min-width: 0; max-width: 340px; }\n/* \u7B5B\u9009\u884C\u4E0B\u9762\u90A3\u884C\u8BF4\u660E\uFF1A\u5B83\u5FC5\u987B\u8DDF\u7740\u7B5B\u9009\u7ED3\u679C\u8D70\uFF0C\u6240\u4EE5\u4E0D\u80FD\u5199\u6210\u5361\u7247\u5E95\u90E8\u7684\u9759\u6001\u63D0\u793A\u3002 */\n.tita-kbFilterHint { margin: 8px 0 0; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-kbFilterHint b { color: var(--tita-ink-muted); font-weight: 650; }\n\n.tita-kbDocList { display: grid; margin: 10px 0 0; padding: 0; list-style: none; gap: 4px; }\n/*\n * \u5206\u9875\u5668\uFF08\u6587\u4EF6\u5217\u8868\u4E0E\u5361\u7247\u5217\u8868\u5171\u7528\uFF0C\u89C1 `ListPager.tsx`\uFF09\u3002\n *\n * \u8D34\u5728\u5217\u8868**\u53F3\u4E0B\u89D2**\uFF1A\u5DE6\u8FB9\u90A3\u534A\u7559\u7ED9\u300C\u5171 N \u6761\u300D\u8FD9\u79CD\u8BFB\u6570\uFF0C\u7FFB\u9875\u6309\u94AE\u843D\u5728\u62C7\u6307/\u5149\u6807\u4E60\u60EF\u7684\u4F4D\u7F6E\u3002\n * \u5B83\u4E0D\u753B\u4E0A\u8FB9\u6846 \u2014\u2014 \u5217\u8868\u6700\u540E\u4E00\u884C\u4E0E\u5B83\u4E4B\u95F4\u5DF2\u7ECF\u6709\u5361\u7247\u81EA\u5DF1\u7684\u7559\u767D\uFF0C\u518D\u52A0\u4E00\u6761\u7EBF\u5C31\u662F\u7B2C\u4E09\u4E2A\u5206\u9694\u7B26\u3002\n */\n.tita-pager { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 10px; }\n.tita-pagerCount { color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n.tita-pagerCount b { color: var(--tita-ink-muted); font-weight: 650; }\n.tita-kbDocRow { display: flex; min-width: 0; align-items: center; gap: 6px; border: 1px solid transparent; border-radius: 9px; padding: 2px 4px 2px 0; }\n.tita-kbDocRow:hover { border-color: var(--tita-line); background: var(--tita-surface-muted); }\n.tita-kbDocMain { display: grid; flex: 1 1 auto; min-width: 0; gap: 3px; border: 0; background: transparent; padding: 7px 8px; color: inherit; font: inherit; text-align: left; cursor: pointer; }\n.tita-kbDocTitle { display: flex; min-width: 0; align-items: center; gap: 6px; overflow: hidden; color: var(--tita-ink); font-size: 12px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbDocMeta { overflow: hidden; color: var(--tita-ink-faint); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbDocActions { display: flex; flex: 0 0 auto; align-items: center; gap: 2px; }\n\n/* \u5F39\u5C42\u91CC\u7684\u5B57\u6BB5**\u4E00\u683C\u4E00\u884C**\u3002\u5B57\u6BB5\u672C\u8EAB\uFF08\u6807\u9898 / \u63A7\u4EF6 / \u8BF4\u660E\uFF09\u7531 `packages/ui` \u7684\n `Field` \u63D0\u4F9B\uFF0C\u8FD9\u91CC\u53EA\u5269\u300C\u4E00\u7EC4\u5B57\u6BB5\u4E4B\u95F4\u7684\u95F4\u8DDD\u300D\u2014\u2014 `.tita-kbField` \u64A4\u6389\u4E86\uFF0C\n \u5B83\u548C `Field` \u662F\u540C\u4E00\u4EF6\u4E8B\u7684\u4E24\u4EFD\u5199\u6CD5\u3002 */\n.tita-kbForm { display: grid; gap: 10px; }\n/* \u5143\u6570\u636E\u5B57\u6BB5\u58F0\u660E\uFF080048\uFF09\uFF1A\u4E00\u884C = \u952E / \u663E\u793A\u540D / \u5FC5\u586B / \u5220\u9664\u3002\n \u952E\u90A3\u4E00\u5217\u7ED9\u5F97\u6BD4\u663E\u793A\u540D\u5BBD \u2014\u2014 \u5B83\u8981\u88C5 `sources[0].last_modified` \u8FD9\u79CD\u8DEF\u5F84\u3002 */\n.tita-kbFieldRows { display: grid; gap: 6px; justify-items: start; }\n/* \u5217\u5BBD\u5B9A\u4E49\u5728**\u4E00\u5904**\uFF1A\u5217\u5934\u4E0E\u6570\u636E\u884C\u5171\u7528\u540C\u4E00\u7EC4\u8F68\u9053\uFF0C\u6240\u4EE5\u4E24\u8005\u6C38\u8FDC\u5BF9\u9F50\u3002\n \u6B64\u524D\u6BCF\u884C\u9760 `placeholder` + `aria-label` \u5404\u81EA\u8BF4\u660E\u81EA\u5DF1\u662F\u4EC0\u4E48\uFF0C\u540C\u4E00\u53E5\u300C\u8FD9\u4E00\u683C\u586B\u4EC0\u4E48\u300D\n \u5728\u4E00\u884C\u91CC\u51FA\u73B0\u56DB\u6B21 \u2014\u2014 \u7528\u6237\u7684\u539F\u8BDD\u662F\u300C\u70B9\u51FB\u4F4D\u592A\u591A\u4E86\u300D\u3002 */\n.tita-kbFieldRow,\n.tita-kbFieldHead { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) auto auto; align-items: center; gap: 6px; width: 100%; }\n.tita-kbFieldHead { color: var(--tita-ink-faint); font-size: 10px; letter-spacing: .02em; }\n.tita-kbFieldHead > span:nth-child(3) { justify-self: center; }\n/* \u5220\u9664\u6309\u94AE**\u4E0D\u5E38\u9A7B**\uFF1A\u4E00\u6392\u56DB\u683C\u91CC\u4E09\u683C\u8981\u586B\u3001\u4E00\u683C\u53EA\u7528\u6765\u5220\uFF0C\u90A3\u4E00\u683C\u5E73\u65F6\u662F\u7EAF\u566A\u97F3\uFF0C\n \u800C\u5B83\u53C8\u7D27\u6328\u7740\u300C\u5FC5\u586B\u300D\u5F00\u5173 \u2014\u2014 \u8BEF\u70B9\u7684\u4EE3\u4EF7\u662F\u5220\u6389\u4E00\u884C\u5DF2\u7ECF\u586B\u597D\u7684\u5B57\u6BB5\u3002\n \u60AC\u505C\u6216\u952E\u76D8\u805A\u7126\u65F6\u624D\u663E\u5F62\uFF1B`opacity` \u4E0D\u6539\u53D8\u53EF\u805A\u7126\u6027\uFF0C\u6240\u4EE5\u952E\u76D8\u7528\u6237\u7167\u6837 Tab \u5F97\u5230\u3002 */\n.tita-kbFieldRow > .tita-uiButton:last-child { opacity: 0; transition: opacity 120ms ease-out; }\n.tita-kbFieldRow:hover > .tita-uiButton:last-child,\n.tita-kbFieldRow:focus-within > .tita-uiButton:last-child { opacity: 1; }\n@media (prefers-reduced-motion: reduce) { .tita-kbFieldRow > .tita-uiButton:last-child { transition: none; } }\n.tita-kbKv { display: grid; width: 100%; min-width: 0; max-width: 100%; margin: 0; gap: 4px; }\n.tita-kbKv > div { display: grid; width: 100%; min-width: 0; grid-template-columns: minmax(0, 92px) minmax(0, 1fr); gap: 8px; }\n.tita-kbKv dt { min-width: 0; color: var(--tita-ink-faint); font-size: 11px; overflow-wrap: anywhere; }\n.tita-kbKv dd { min-width: 0; margin: 0; overflow-wrap: anywhere; color: var(--tita-ink); font-size: 11.5px; }\n/* \u4E00\u884C\u653E\u4E0D\u4E0B\u5C31\u7701\u7565\uFF08\u60AC\u505C\u7ED9\u5168\u6587\uFF09\u3002`nowrap` \u662F\u5FC5\u9700\u7684\uFF1A\u5141\u8BB8\u6298\u884C\u65F6\u300C\u7701\u7565\u300D\u6839\u672C\u4E0D\u4F1A\u53D1\u751F\uFF0C\n \u90A3\u4E00\u884C\u4F1A\u81EA\u5DF1\u957F\u6210\u4E09\u884C \u2014\u2014 \u800C\u4E09\u884C\u7684\u51FA\u5904\u4F1A\u628A\u5143\u4FE1\u606F\u8FD9\u5F20\u8868\u6491\u5F97\u6BD4\u6B63\u6587\u8FD8\u9AD8\u3002 */\n.tita-kbKv dd.tita-kbKvEllipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbCode { border-radius: 4px; background: var(--tita-surface-muted); padding: 1px 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; overflow-wrap: anywhere; }\n.tita-kbAssetsNote { margin: 12px 0 0; color: var(--tita-ink-muted); font-size: 10.5px; }\n.tita-kbAssets { display: grid; width: 100%; min-width: 0; max-width: 100%; grid-template-columns: repeat(auto-fill, minmax(min(84px, 100%), 1fr)); gap: 8px; margin-top: 12px; max-height: 260px; overflow: auto; }\n.tita-kbAsset { margin: 0; border: 1px solid var(--tita-line); border-radius: 8px; padding: 4px; }\n.tita-kbAsset img { display: block; width: 100%; height: 62px; object-fit: contain; }\n.tita-kbAsset figcaption { margin-top: 3px; color: var(--tita-ink-faint); font-size: 10px; text-align: center; }\n/* \u539F\u6587\u4E0E\u5361\u7247\u6B63\u6587\u7684\u9605\u8BFB\u6001\u5BB9\u5668\uFF080030\uFF09\uFF1A\u5185\u5BB9\u7531\u5E73\u53F0 Markdown \u539F\u5B50\u6E32\u67D3\uFF0C\u6240\u4EE5\u8FD9\u91CC\u53EA\n \u4EA4\u4EE3\u300C\u5B83\u5728\u4E00\u4E2A\u7A84\u680F\u91CC\u4E5F\u8981\u80FD\u8BFB\u300D\u2014\u2014\u884C\u9AD8\u3001\u53EF\u65AD\u884C\u3001\u9996\u5C3E\u5916\u8FB9\u8DDD\u5F52\u96F6\uFF08\u4E0A\u4E0B\u90FD\u6709\u81EA\u5DF1\u7684\n \u5C0F\u8282\u6807\u9898\uFF0C\u7559\u7740\u90A3\u6BB5\u7A7A\u767D\u53EA\u4F1A\u8BA9\u62BD\u5C49\u770B\u8D77\u6765\u50CF\u6F0F\u4E86\u4E00\u683C\uFF09\u3002\u5185\u90E8\u6392\u7248\u4EA4\u7ED9\u6E32\u67D3\u5668\uFF0C\u4E0D\u5728\n \u63D2\u4EF6\u91CC\u53E6\u7ACB\u4E00\u5957 Markdown \u6837\u5F0F\uFF0C\u5426\u5219\u540C\u4E00\u4E2A\u539F\u5B50\u5728\u4E24\u5904\u4F1A\u957F\u5F97\u4E0D\u4E00\u6837\u3002 */\n.tita-kbSectionBlock { width: 100%; min-width: 0; max-width: 100%; }\n.tita-kbSectionBlock + .tita-kbSectionBlock { margin-top: 14px; }\n/* \u4E00\u8282\u7684\u77E5\u8BC6\uFF1A\u6302\u5728**\u5B83\u6240\u5C5E\u7684\u90A3\u4E00\u8282\u4E0B\u9762**\uFF0C\u4E0E\u4E0A\u9762\u7684\u6B63\u6587\u6709\u53EF\u89C1\u7684\u5206\u754C\uFF0C\u4F46\u4E0D\u53E6\u8D77\u4E00\u5757\n \uFF08\u540C\u4E00\u4E2A\u5C0F\u8282\u6A21\u5F0F\u91CC\uFF0C\u5B83\u662F\u6B63\u6587\u7684\u6CE8\u89E3\uFF0C\u4E0D\u662F\u7B2C\u4E8C\u4E2A\u5185\u5BB9\u533A\uFF09\u3002\u5DE6\u8FB9\u90A3\u9053\u7EBF\u662F\u300C\u8FD9\u51E0\u884C\u5C5E\u4E8E\n \u4E0A\u9762\u90A3\u4E00\u8282\u300D\u3002 */\n.tita-kbSectionBlock .tita-knowledgeList {\n margin-top: 8px;\n border-left: 2px solid var(--tita-line);\n padding-left: 10px;\n}\n.tita-kbSectionBlock .tita-knowledgeRow { padding: 6px 0; }\n.tita-kbSectionBlock .tita-knowledgeRow:first-child { padding-top: 0; }\n.tita-kbSectionBlock .tita-knowledgeRow:last-child { padding-bottom: 0; }\n.tita-kbMarkdown { width: 100%; min-width: 0; max-width: 100%; margin-top: 0; color: var(--tita-ink); font-size: 11.5px; line-height: 1.75; overflow-wrap: anywhere; }\n/*\n * \u6B63\u6587\u6BD4**\u5C0F\u8282\u6807\u9898**\u5C0F\u4E00\u53F7\uFF0813px \u2192 12px\uFF09\u3002\n *\n * \u4E0D\u80FD\u6309\u7C7B\u540D\u53BB\u76D6\uFF1A\u6B63\u6587\u7531**\u5BBF\u4E3B**\u7684 Markdown \u539F\u5B50\u6E32\u67D3\uFF08`@deepseek-ai/dsh-client-ui-primitives`\uFF09\uFF0C\n * \u5B83\u7684\u6839\u8282\u70B9\u7C7B\u540D\u662F CSS Modules \u54C8\u5E0C\u8FC7\u7684\uFF0C\u5199\u6B7B\u4F1A\u968F\u5BBF\u4E3B\u7248\u672C\u5931\u6548\uFF1B\u800C `packages/ui` \u91CC\u90A3\u4E2A\n * `.tita-markdownLocal` \u662F**\u53E6\u4E00\u4E2A**\u5B9E\u73B0 \u2014\u2014 \u5BBF\u4E3B\u8FD9\u4EFD\u6839\u672C\u4E0D\u7528\u5B83\uFF08\u7B2C\u4E00\u7248\u6B63\u662F\u7167\u5B83\u5199\u7684\uFF0C\n * \u6240\u4EE5\u5728\u754C\u9762\u4E0A\u4EC0\u4E48\u4E5F\u6CA1\u53D1\u751F\uFF09\u3002\n *\n * \u5BBF\u4E3B\u628A\u5B57\u53F7\u5199\u5728\u6839\u8282\u70B9\u7684\u4E00\u6761 `font` \u7B80\u5199\u4E0A\uFF08`font: var(--dsw-font-markdown-base)`\uFF09\uFF0C\n * \u6BB5\u843D\u4E0E\u5217\u8868\u90FD\u4ECE\u5B83\u7EE7\u627F\u3002\u6240\u4EE5\u8FD9\u91CC\u7528\u300C\u5BB9\u5668 + \u76F4\u63A5\u5B50\u5143\u7D20\u300D\u628A\u5B83\u538B\u4E0B\u53BB\uFF1A\u90A3\u4E2A\u5B50\u5143\u7D20\u5C31\u662F\u539F\u5B50\u7684\n * \u6839\uFF0C\u9009\u62E9\u5668\u6743\u91CD\uFF080,1,1\uFF09\u9AD8\u8FC7\u5BBF\u4E3B\u90A3\u6761\u7C7B\u9009\u62E9\u5668\uFF080,1,0\uFF09\uFF0C\u4E5F\u4E0D\u4F9D\u8D56\u54C8\u5E0C\u540D\u3002\n * \u6807\u9898 / \u8868\u683C / \u4EE3\u7801\u5757\u5404\u6709\u81EA\u5DF1\u7684\u5B57\u53F7 token\uFF0C\u4E0D\u53D7\u5F71\u54CD\u3002\n */\n.tita-kbMarkdown > :first-child { font-size: 11.5px; }\n.tita-kbMarkdown > :first-child { margin-top: 0; }\n/*\n * \u6B63\u6587\u91CC\u7684\u7AE0\u8282\u6807\u9898**\u4E0D\u8BB8\u5927\u8FC7\u62BD\u5C49\u81EA\u5DF1\u7684\u5C0F\u8282\u5934**\uFF0813px / 076\uFF09\u3002\n *\n * \u5BBF\u4E3B\u90A3\u5957\u6807\u9898 token \u662F\u7ED9**\u6574\u9875\u6587\u6863**\u6392\u7684\uFF08h1 24 / h2 17 / h3 15\uFF09\u3002\u642C\u8FDB 380\u2013420px \u7684\n * \u62BD\u5C49\u91CC\uFF0C\u5361\u7247\u6B63\u6587\u7684 `## \u53E3\u5F84\u5B9A\u4E49` \u4F1A\u4EE5 17px \u51FA\u73B0 \u2014\u2014 \u6BD4\u5B83\u4E0A\u9762\u90A3\u884C\u5C0F\u8282\u5934\u300C\u5185\u5BB9\u300D\u8FD8\u5927\uFF0C\n * \u5C42\u7EA7\u662F\u5012\u7684\uFF1A\u8BFB\u8005\u5148\u770B\u5230\u7AE0\u8282\uFF0C\u518D\u770B\u5230\u8FD9\u4E00\u5757\u53EB\u4EC0\u4E48\u3002\u800C\u5361\u7247\u672C\u6765\u5C31\u53EB\u300C\u7AE0\u8282 + \u5185\u5BB9\u300D\uFF0C\n * \u7AE0\u8282\u5FC5\u987B\u5728\u300C\u5185\u5BB9\u300D\u4E4B\u4E0B\u3002\n *\n * \u9009\u62E9\u5668\u4E0E\u4E0A\u9762\u90A3\u6761\u540C\u7406\uFF08\u4E0D\u80FD\u6309\u54C8\u5E0C\u7C7B\u540D\u53BB\u76D6\uFF09\uFF1A\u539F\u5B50\u628A\u7C7B\u540D\u5199\u5728\u6839\u8282\u70B9\u4E0A\uFF0C`> :first-child`\n * \u5C31\u662F\u90A3\u4E2A\u6839\uFF0C\u6807\u9898\u662F\u5B83\u7684\u540E\u4EE3 \u2014\u2014 \u6743\u91CD (0,2,1) \u9AD8\u8FC7\u5BBF\u4E3B\u90A3\u6761\u7C7B\u9009\u62E9\u5668 (0,1,0)\u3002\n */\n.tita-kbMarkdown > :first-child h1 { font-size: 13.5px; }\n.tita-kbMarkdown > :first-child h2 { font-size: 12.5px; }\n.tita-kbMarkdown > :first-child h3 { font-size: 12px; }\n.tita-kbMarkdown > :first-child h4,\n.tita-kbMarkdown > :first-child h5,\n.tita-kbMarkdown > :first-child h6 { font-size: 11.5px; }\n.tita-kbMarkdown > :last-child { margin-bottom: 0; }\n.tita-kbMarkdown img { max-width: 100%; border-radius: 6px; }\n.tita-kbInlineImage { margin: 10px 0; text-align: center; }\n.tita-kbInlineImage img { display: block; width: auto; max-width: 100%; max-height: 360px; margin: 0 auto; object-fit: contain; }\n.tita-kbPre { max-height: 320px; margin: 0; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface); color: var(--tita-ink); padding: 10px; overflow: auto; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10.5px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }\n/* \u6587\u672C\u89C6\u56FE\u7684 `<pre>` \u81EA\u5E26 max-height\uFF08\u5B83\u540C\u65F6\u88AB\u610F\u56FE / \u7C7B\u578B\u5B9A\u4E49\u4E24\u5904\u7528\uFF09\uFF0C\u8FDB\u4E86\u6B63\u6587\u5757\u4E4B\u540E\n \u7531\u5916\u5C42\u90A3\u4E00\u5C42\u8D1F\u8D23\u6EDA \u2014\u2014 \u540C\u4E00\u4EF6\u4E8B\u4E0D\u753B\u4E24\u6761\u6EDA\u52A8\u6761\u3002 */\n.tita-drawerBody .tita-kbPre { max-height: none; border: 0; border-radius: 0; background: transparent; padding: 0; }\n\n/* ------------------------------------------------------ intent (session audit) */\n.tita-intentTop { display: flex; min-width: 0; align-items: flex-start; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--tita-line); padding-bottom: 12px; }\n.tita-intentTop h2 { margin: 0; color: var(--tita-ink); font-size: 17px; font-weight: 780; letter-spacing: -.025em; line-height: 1.3; }\n.tita-intentTop p { max-width: 320px; margin: 5px 0 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; }\n.tita-intentControls { display: grid; gap: 8px; border-bottom: 1px solid var(--tita-line); padding-bottom: 12px; }\n.tita-intentPrimaryFilter { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; min-width: 0; align-items: center; gap: 7px; }\n.tita-intentFilterHeading { display: grid; min-width: 42px; gap: 1px; }\n.tita-intentFilterHeading small { color: var(--tita-primary); font-size: 9px; font-weight: 700; white-space: nowrap; }\n.tita-intentFilterCount { color: var(--tita-ink-faint); font-size: 10px; font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-intentSecondaryFilters { display: grid; grid-template-columns: auto minmax(0, .7fr) auto minmax(0, 1.3fr) auto; min-width: 0; align-items: center; gap: 7px; }\n.tita-intentControlLabel { color: var(--tita-ink-muted); font-size: 11px; white-space: nowrap; }\n.tita-intentFilterSummary { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 5px 7px; border-radius: 8px; background: var(--tita-surface-muted); padding: 6px 8px; color: var(--tita-ink-faint); font-size: 10px; line-height: 1.4; }\n.tita-intentFilterSummary > span { color: var(--tita-ink-muted); font-weight: 650; }\n.tita-intentSectionHead { display: flex; min-width: 0; align-items: flex-start; justify-content: space-between; gap: 12px; }\n.tita-intentSectionHead h3 { margin: 0; color: var(--tita-ink); font-size: 13.5px; font-weight: 760; }\n.tita-intentSectionSubhead { margin: 3px 0 0; color: var(--tita-ink-faint); font-size: 10px; line-height: 1.45; }\n.tita-intentSectionHead > time, .tita-intentSectionCount { flex: 0 0 auto; color: var(--tita-ink-faint); font-size: 10px; font-variant-numeric: tabular-nums; }\n.tita-intentEyebrow { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-faint); font-size: 9.5px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }\n.tita-intentInterpretation { display: grid; gap: 11px; border-color: var(--tita-line-strong); padding: 14px 15px; }\n.tita-intentUserBlock { min-width: 0; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); padding: 10px 11px; }\n.tita-intentStepLabel { display: block; color: var(--tita-ink-faint); font-size: 10px; font-weight: 700; }\n.tita-intentUserInput { margin: 5px 0 0; color: var(--tita-ink); font-size: 12px; line-height: 1.65; overflow-wrap: anywhere; }\n.tita-intentVerdict { min-width: 0; border: 1px solid var(--tita-primary); border-radius: 9px; background: var(--tita-primary-soft); padding: 11px; }\n.tita-intentVerdictHead { display: flex; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-intentResultTitle { margin: 5px 0 0; color: var(--tita-ink); font-size: 15px; font-weight: 780; letter-spacing: -.02em; line-height: 1.35; overflow-wrap: anywhere; }\n.tita-intentResultText { margin: 4px 0 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; }\n.tita-intentResultTags { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 5px; margin-top: 8px; }\n.tita-intentLowConfidence { color: var(--tita-tone-amber); font-size: 10px; font-weight: 650; }\n.tita-intentMetaGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }\n.tita-intentMetaCell { display: grid; min-width: 0; gap: 3px; border-top: 1px solid var(--tita-line); padding-top: 8px; }\n.tita-intentMetaCell span { color: var(--tita-ink-faint); font-size: 9.5px; }\n.tita-intentMetaCell strong { color: var(--tita-ink-muted); font-size: 10.5px; font-weight: 650; overflow-wrap: anywhere; }\n.tita-intentDiagnostics { border-top: 1px solid var(--tita-line); padding-top: 9px; }\n.tita-intentDiagnostics summary { color: var(--tita-ink-faint); font-size: 10px; cursor: pointer; list-style-position: inside; }\n.tita-intentDiagnostics summary:hover { color: var(--tita-ink-muted); }\n.tita-intentDiagnosticsBody { display: grid; gap: 5px; margin: 8px 0 0 15px; color: var(--tita-ink-faint); font-size: 10px; line-height: 1.5; }\n.tita-intentDiagnosticsBody code { border-radius: 4px; background: var(--tita-surface-muted); padding: 1px 4px; color: var(--tita-tone-violet); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9.5px; }\n.tita-intentEmptyCard { display: grid; justify-items: center; gap: 6px; padding: 25px 15px; text-align: center; }\n.tita-intentEmptyCard > svg { color: var(--tita-ink-faint); }\n.tita-intentEmptyCard strong { color: var(--tita-ink); font-size: 12px; }\n.tita-intentEmptyCard p, .tita-intentEmpty { margin: 0; color: var(--tita-ink-faint); font-size: 11px; line-height: 1.6; }\n.tita-intentHistory { border-top: 1px solid var(--tita-line); padding-top: 13px; }\n.tita-intentHistoryList { display: grid; margin: 10px 0 0; padding: 0; list-style: none; }\n.tita-intentHistoryItem { display: grid; min-width: 0; gap: 4px; border-bottom: 1px solid var(--tita-line); padding: 10px 0 11px; }\n.tita-intentHistoryItem:first-child { padding-top: 0; }\n.tita-intentHistoryItem:last-child { border-bottom: 0; }\n.tita-intentHistoryPrimary { display: flex; min-width: 0; align-items: baseline; justify-content: space-between; gap: 9px; }\n.tita-intentHistoryPrimary strong { min-width: 0; color: var(--tita-ink); font-size: 12px; font-weight: 720; overflow-wrap: anywhere; }\n.tita-intentHistoryPrimary time { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 4px; color: var(--tita-ink-muted); font-size: 10px; font-variant-numeric: tabular-nums; }\n.tita-intentHistoryMeta { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 4px 9px; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-intentHistoryMeta span + span::before { content: \'\xB7\'; margin-right: 9px; color: var(--tita-line-strong); }\n.tita-intentHistoryWarning { color: var(--tita-tone-amber); }\n.tita-intentHistoryItem p { margin: 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.55; overflow-wrap: anywhere; }\n.tita-intentFooter { display: flex; flex-wrap: wrap; gap: 5px 12px; border-top: 1px solid var(--tita-line); padding-top: 10px; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-intentFooter span + span::before { content: \'\xB7\'; margin-right: 12px; color: var(--tita-line-strong); }\n\n/* \u300C\u610F\u56FE\u7684\u903B\u8F91\u300D\uFF1A\u8BF4\u660E\u6027\u5185\u5BB9\uFF0C\u8BFB\u7684\u662F\u6392\u7248\u800C\u4E0D\u662F\u63A7\u4EF6\u3002\u5B83\u73B0\u5728\u662F\u4E00\u4EFD\u6574\u9875\n \uFF08`/knowledge/pages/help/intent`\uFF09\uFF0C\u6240\u4EE5\u8FD9\u51E0\u6761\u89C4\u5219\u540C\u65F6\u670D\u52A1\u9762\u677F\u4E0E\u90A3\u4E00\u9875\u3002 */\n.tita-intentDocList { display: grid; margin: 3px 0 0; padding-left: 18px; gap: 5px; color: var(--tita-ink); font-size: 11.5px; line-height: 1.75; }\n.tita-intentDocList b { color: var(--tita-ink); }\n.tita-intentDocList code, .tita-kbHint code { border-radius: 4px; background: var(--tita-surface-muted); padding: 0 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10.5px; }\n.tita-intentDocGrid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 8px; margin-top: 10px; }\n.tita-intentDocGrid > div { display: grid; gap: 3px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface); padding: 9px 11px; }\n.tita-intentDocGrid strong { color: var(--tita-ink); font-size: 11.5px; }\n.tita-intentDocGrid span { color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-intentDocTableWrap { overflow-x: auto; margin-top: 8px; }\n.tita-intentDocTable { width: 100%; border-collapse: collapse; font-size: 11px; }\n.tita-intentDocTable th { border-bottom: 1px solid var(--tita-line); color: var(--tita-ink-muted); padding: 6px 8px; font-weight: 700; text-align: left; white-space: nowrap; }\n.tita-intentDocTable td { border-bottom: 1px solid var(--tita-surface-muted); color: var(--tita-ink); padding: 6px 8px; line-height: 1.65; vertical-align: top; }\n.tita-intentDocTable td:first-child code { border-radius: 4px; background: var(--tita-surface-muted); padding: 1px 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10.5px; }\n.tita-intentDocTable td:nth-child(2) { color: var(--tita-tone-green); text-align: center; }\n.tita-intentPaperList { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 10px; }\n.tita-intentPaperList > li { border: 1px solid var(--tita-line); border-radius: 8px; background: var(--tita-surface); padding: 9px 11px; }\n.tita-intentPaperList a { color: var(--tita-primary); font-size: 12px; font-weight: 640; text-decoration: none; }\n.tita-intentPaperList a:hover { text-decoration: underline; }\n.tita-intentPaperMeta { display: block; margin-top: 2px; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-intentPaperList p { margin: 6px 0 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.75; }\n.tita-intentPaperNote { color: var(--tita-ink-faint) !important; font-size: 10.5px !important; }\n.tita-intentOasLegend { display: flex; flex-wrap: wrap; align-items: center; gap: 5px 12px; margin-top: 9px; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-intentOasLegend span { display: inline-flex; align-items: center; gap: 4px; }\n.tita-intentOasLegend svg { color: var(--tita-primary); }\n\n/* Wiki \u7F16\u8BD1\u4E0E\u53EC\u56DE\u6D41\u7A0B\uFF1A\u603B\u89C8\u56FE + \u5F53\u524D\u9009\u4E2D\u8282\u70B9\u8BF4\u660E\u3002 */\n.tita-wikiFlowSection + .tita-wikiFlowSection { margin-top: 30px; border-top: 1px solid var(--tita-line); padding-top: 24px; }\n.tita-wikiFlowSectionHead { margin-bottom: 10px; }\n.tita-wikiFlowKicker { color: var(--tita-primary); font-size: 10px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }\n.tita-wikiFlowSectionHead h2 { margin: 3px 0 5px; color: var(--tita-ink); font-size: 16px; font-weight: 750; line-height: 1.35; }\n.tita-wikiFlowSectionHead p { margin: 0; color: var(--tita-ink-muted); font-size: 11.5px; line-height: 1.7; }\n.tita-wikiFlowMap { margin-top: 12px; overflow-x: auto; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 10px; }\n.tita-wikiFlowMapPath { display: grid; grid-template-columns: minmax(92px, 1fr) auto repeat(4, minmax(116px, 1.1fr)) auto minmax(105px, 1fr); align-items: stretch; gap: 6px; min-width: 740px; }\n.tita-wikiFlowMapEndpoint, .tita-wikiFlowMapNode { display: grid; min-width: 0; align-content: center; gap: 4px; border: 1px solid var(--tita-line); border-radius: 8px; background: var(--tita-surface); padding: 8px; }\n.tita-wikiFlowMapEndpoint { display: flex; align-items: center; gap: 7px; }\n.tita-wikiFlowMapEndpoint > svg { flex: 0 0 auto; color: var(--tita-ink-muted); }\n.tita-wikiFlowMapEndpoint strong, .tita-wikiFlowMapNode strong { display: block; color: var(--tita-ink); font-size: 10.5px; line-height: 1.4; overflow-wrap: anywhere; }\n.tita-wikiFlowMapEndpoint small, .tita-wikiFlowMapNode small { display: block; color: var(--tita-ink-faint); font-size: 9.5px; line-height: 1.45; overflow-wrap: anywhere; }\n.tita-wikiFlowMapNodeHead { display: flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); }\n.tita-wikiFlowMapIndex { display: inline-flex; width: 18px; height: 18px; align-items: center; justify-content: center; border-radius: 5px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); font-size: 9px; font-weight: 800; }\n.tita-wikiFlowMapArrow { display: flex; align-items: center; justify-content: center; color: var(--tita-ink-faint); }\n.tita-wikiFlowMapHint { margin: 7px 0 0; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-wikiFlow { display: grid; gap: 0; margin-top: 12px; }\n.tita-wikiFlowSource, .tita-wikiFlowSink { display: flex; align-items: center; gap: 9px; border: 1px dashed var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 9px 11px; color: var(--tita-ink-muted); }\n.tita-wikiFlowSink { border-style: solid; border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); color: var(--tita-success); }\n.tita-wikiFlowSource strong, .tita-wikiFlowSink strong { display: block; color: var(--tita-ink); font-size: 11.5px; }\n.tita-wikiFlowSource small, .tita-wikiFlowSink small { display: block; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-wikiFlowStageWrap { display: grid; }\n.tita-wikiFlowArrow { display: flex; align-items: center; justify-content: center; color: var(--tita-ink-faint); padding: 3px 0; }\n/* \u9636\u6BB5\u5361\uFF1A\u6574\u5708\u53D1\u4E1D\u7EBF\uFF0C\u4E0D\u7528\u5DE6\u4FA7\u7C97\u8272\u6761\u3002\u9636\u6BB5\u8EAB\u4EFD\u7531\u5361\u7247\u81EA\u5DF1\u7684\u72B6\u6001\u70B9\u4E0E\u6807\u9898\u627F\u62C5\uFF1B\n \u5DE6\u8272\u6761\u65E2\u4E0D\u6BD4\u4E00\u5708\u7EC6\u8FB9\u591A\u7ED9\u4FE1\u606F\uFF0C\u53C8\u662F AI \u751F\u6210\u754C\u9762\u7684\u5178\u578B\u6307\u7EB9\u3002 */\n.tita-wikiFlowStage { border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 12px; }\n.tita-wikiFlowStageHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-wikiFlowStageHead strong { color: var(--tita-ink); font-size: 12px; font-weight: 700; }\n.tita-wikiFlowPass { display: inline-flex; align-items: center; gap: 5px; border-radius: 999px; background: var(--tita-surface-muted); padding: 2px 8px; font-size: 10px; font-weight: 700; letter-spacing: .02em; }\n.tita-wikiFlowLlm { margin-left: auto; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-wikiFlowIo { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px; margin: 6px 0 0; color: var(--tita-ink-muted); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-wikiFlowIoLabel { flex: 0 0 auto; color: var(--tita-ink-faint); font-family: inherit; font-size: 9.5px; font-weight: 700; }\n.tita-wikiFlowBody { display: grid; margin: 6px 0 0; padding-left: 16px; gap: 3px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.7; }\n.tita-wikiFlowBody code, .tita-wikiFlowRule code { border-radius: 4px; background: var(--tita-surface-muted); padding: 0 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n/* \u8FD9\u4E00\u6BB5\u5410\u51FA\u54EA\u4E00\u5C42\uFF0C\u4EE5\u53CA\u90A3\u4E00\u5C42\u56DE\u7B54\u4EC0\u4E48\u95EE\u9898\u3002\u56DB\u6BB5\u4E32\u8D77\u6765\u662F\u4E94\u5C42 \u2014\u2014 \u6BB5\u540D\u8BF4\u300C\u505A\u4E86\u4EC0\u4E48\u300D\uFF0C\n \u8FD9\u4E00\u884C\u8BF4\u300C\u957F\u51FA\u4E86\u4EC0\u4E48\u3001\u56DE\u7B54\u4EC0\u4E48\u300D\u3002\u4E0A\u8FB9\u7EBF\u628A\u5B83\u548C\u4E0A\u9762\u4E09\u6761\u505A\u6CD5\u5206\u5F00\uFF1A\u5B83\u662F\u7ED3\u8BBA\uFF0C\u4E0D\u662F\u53C8\u4E00\u6761\u505A\u6CD5\u3002 */\n.tita-wikiFlowProduces { display: flex; align-items: flex-start; gap: 5px; margin: 8px 0 0; border-top: 1px dashed var(--tita-line); padding-top: 7px; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; }\n.tita-wikiFlowProduces svg { flex: 0 0 auto; margin-top: 2px; }\n.tita-wikiFlowProduces b { color: var(--tita-ink); }\n/* \u300C\u56DE\u7B54\u300E\u5728\u54EA\u91CC\u300F\u300D\u8FD9\u4E00\u53E5\u8981\u8DF3\u51FA\u6765\u3002\u5B83\u662F 0063 \xA7\u4E00 \u90A3\u4E09\u53E5\u91CC\u7684\u4E00\u4E2A \u2014\u2014 \u5C42\u540D\u662F\u5B9E\u4F53\u540D\uFF0C\n \u95EE\u9898\u662F\u4EBA\u771F\u6B63\u8BB0\u4F4F\u7684\u4E1C\u897F\u3002\u5C42\u7EA7\u9760\u5B57\u91CD\uFF08\u4E0D\u7ED9\u5B83\u4E0A\u8272\uFF1A\u989C\u8272\u5728\u8FD9\u5F20\u56FE\u4E0A\u5DF2\u7ECF\u8868\u793A\u6BB5\u522B\uFF09\u3002 */\n.tita-wikiFlowAsk { color: var(--tita-ink); font-weight: 600; }\n\n/* \u7BA1\u8FD9\u4E00\u6BB5\u7684\u90A3\u6761\u5224\u5B9A\u89C4\u5219\u3002**\u5B83\u8DDF\u7740\u5B83\u7BA1\u7684\u90A3\u4E00\u6BB5\u8D70**\uFF0C\u6240\u4EE5\u5B83\u662F\u4E00\u5757\u5185\u5D4C\u7684\u5C0F\u6761\uFF0C\n \u4E0D\u662F\u9875\u5C3E\u7684\u7B2C\u4E09\u6761\u6E05\u5355\uFF1A\u8BFB\u8005\u8BFB\u5230\u7B2C 3 \u6BB5\u7684\u6807\u9898\u7EC4\u7EC7\u89C4\u5219\u65F6\uFF0C\u89C4\u5219\u5C31\u5728\u540C\u4E00\u5F20\u5361\u91CC\u3002\n \u5E95\u8272\u7528 muted \u2014\u2014 \u5B83\u662F\u8FD9\u6BB5\u7684\u65C1\u6CE8\uFF0C\u4E0D\u662F\u53C8\u4E00\u6761\u505A\u6CD5\u3002 */\n.tita-wikiFlowRule { display: flex; align-items: flex-start; gap: 7px; margin: 8px 0 0; border-radius: 8px; background: var(--tita-surface-muted); padding: 8px 10px; }\n.tita-wikiFlowRule > svg { flex: 0 0 auto; margin-top: 2px; color: var(--tita-primary); }\n.tita-wikiFlowRule > span { display: grid; gap: 2px; }\n.tita-wikiFlowRule strong { color: var(--tita-ink); font-size: 11px; }\n.tita-wikiFlowRule small { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.65; }\n\n.tita-wikiFlowBlue { border-left-color: var(--tita-primary); }\n.tita-wikiFlowBlue .tita-wikiFlowPass { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-wikiFlowViolet { border-left-color: var(--tita-tone-violet); }\n.tita-wikiFlowViolet .tita-wikiFlowPass { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-wikiFlowGreen { border-left-color: var(--tita-success); }\n.tita-wikiFlowGreen .tita-wikiFlowPass { background: var(--tita-tone-green-tint); color: var(--tita-success); }\n.tita-wikiFlowAmber { border-left-color: var(--tita-warning); }\n.tita-wikiFlowAmber .tita-wikiFlowPass { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-wikiFlowDiagram { margin-top: 0; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 10px; overflow-x: auto; }\n.tita-wikiFlowSvg { display: block; width: 100%; min-width: 680px; height: auto; overflow: visible; }\n.tita-wikiFlowSvgLaneLabel { fill: var(--tita-ink); font-family: var(--tita-font); font-size: 10px; font-weight: 750; }\n.tita-wikiFlowSvgLaneNote { fill: var(--tita-ink-faint); font-family: var(--tita-font); font-size: 9px; }\n.tita-wikiFlowSvgEdge { fill: none; stroke: var(--tita-line-strong); stroke-width: 1.4; }\n.tita-wikiFlowSvgArrow { fill: var(--tita-ink-faint); }\n.tita-wikiFlowSvgEndpointGroup { pointer-events: none; }\n.tita-wikiFlowSvgEndpoint { fill: var(--tita-surface); stroke: var(--tita-line-strong); stroke-width: 1; }\n.tita-wikiFlowSvgEndpointText { fill: var(--tita-ink); font-family: var(--tita-font); font-size: 11px; font-weight: 700; }\n.tita-wikiFlowSvgEndpointSub { fill: var(--tita-ink-faint); font-size: 9px; font-weight: 400; }\n.tita-wikiFlowSvgNode { cursor: pointer; outline: none; }\n.tita-wikiFlowSvgNode > rect { fill: var(--tita-surface); stroke: var(--tita-line); stroke-width: 1; }\n.tita-wikiFlowSvgNode.tita-wikiFlowBlue > rect { stroke: color-mix(in srgb, var(--tita-primary) 55%, var(--tita-line)); }\n.tita-wikiFlowSvgNode.tita-wikiFlowViolet > rect { stroke: color-mix(in srgb, var(--tita-tone-violet) 55%, var(--tita-line)); }\n.tita-wikiFlowSvgNode.tita-wikiFlowGreen > rect { stroke: color-mix(in srgb, var(--tita-success) 55%, var(--tita-line)); }\n.tita-wikiFlowSvgNode.tita-wikiFlowAmber > rect { stroke: color-mix(in srgb, var(--tita-warning) 55%, var(--tita-line)); }\n.tita-wikiFlowSvgNode.tita-wikiFlowSvgNodeSelected > rect,\n.tita-wikiFlowSvgNode:focus-visible > rect { fill: var(--tita-primary-soft); stroke: var(--tita-primary); stroke-width: 2; }\n.tita-wikiFlowSvgTitle { fill: var(--tita-ink); font-family: var(--tita-font); font-size: 11px; font-weight: 750; }\n.tita-wikiFlowSvgIo { fill: var(--tita-ink-muted); font-family: var(--tita-mono); font-size: 8.8px; }\n.tita-wikiFlowDetail { margin-top: 6px; border-top: 1px solid var(--tita-line); }\n.tita-wikiFlowDetailHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 12px; padding: 8px 0 6px; }\n.tita-wikiFlowDetailHead h3 { margin: 0; color: var(--tita-ink); font-size: 14px; font-weight: 750; line-height: 1.35; }\n.tita-wikiFlowDetailHead > span { color: var(--tita-ink-muted); font-family: var(--tita-mono); font-size: 10px; overflow-wrap: anywhere; }\n.tita-wikiFlowDetailStage { border-top: 1px dashed var(--tita-line); padding: 10px 0 2px; }\n.tita-wikiFlowDetailStageHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 10px; }\n.tita-wikiFlowDetailStageHead h3 { display: inline-flex; align-items: center; gap: 5px; margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 750; }\n.tita-wikiFlowDetailStageHead h3 svg { flex: 0 0 auto; color: var(--tita-ink-muted); }\n.tita-wikiFlowDetailStageHead .tita-wikiRecallIo { margin-left: auto; }\n.tita-wikiRecallFlow { display: grid; gap: 8px; margin-top: 12px; }\n.tita-wikiRecallStep { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 10px; min-width: 0; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 12px; }\n.tita-wikiRecallIndex { display: flex; width: 22px; height: 22px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 7px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); font-size: 10px; font-weight: 800; }\n.tita-wikiRecallBody { min-width: 0; }\n.tita-wikiRecallHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 5px 10px; }\n.tita-wikiRecallHead h3 { display: inline-flex; min-width: 0; align-items: center; gap: 5px; margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 750; }\n.tita-wikiRecallHead h3 svg { flex: 0 0 auto; color: currentColor; }\n.tita-wikiRecallIo { max-width: 100%; border-radius: 4px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 2px 5px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; line-height: 1.5; overflow-wrap: anywhere; }\n.tita-wikiRecallBody ul { display: grid; gap: 3px; margin: 6px 0 0; padding-left: 16px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.7; }\n.tita-wikiRecallBody li { min-width: 0; overflow-wrap: anywhere; }\n.tita-wikiRecallBoundary { margin: 7px 0 0; border-top: 1px dashed var(--tita-line); padding-top: 6px; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.65; }\n.tita-wikiRecallBoundary b { margin-right: 5px; color: var(--tita-ink-muted); font-weight: 700; }\n\n@media (max-width: 740px) {\n .tita-wikiFlowMap { overflow-x: visible; }\n .tita-wikiFlowMapPath { grid-template-columns: minmax(0, 1fr); min-width: 0; }\n .tita-wikiFlowMapArrow { min-height: 18px; transform: rotate(90deg); }\n}\n\n@media (max-width: 560px) {\n .tita-wikiRecallStep { grid-template-columns: 20px minmax(0, 1fr); padding: 9px 10px; }\n .tita-wikiRecallIndex { width: 20px; height: 20px; }\n .tita-wikiRecallIo { flex-basis: 100%; }\n}\n\n/* Wiki \u62BD\u53D6\u8BD5\u8DD1\uFF080063\uFF09\uFF1A\u56DB\u4E2A\u9636\u6BB5\u4E03\u4E2A\u52A8\u4F5C\u7684\u89C4\u5219\u5C42\u6A21\u62DF\u3002\u53EA\u8BFB\u3001\u4E0D\u843D\u76D8\u3002\n \u6587\u5B57\u5C42\u7EA7\u9760\u5B57\u53F7\u4E0E\u5B57\u91CD\uFF0C\u4E0D\u9760\u964D\u4F4E\u5BF9\u6BD4\u5EA6 \u2014\u2014 \u73B0\u6709\u754C\u9762\u7684 --tita-ink-muted \u53EA\u6709 4.01:1\uFF0C\n \u65B0\u52A0\u7684\u6B63\u6587\u4E0D\u8BE5\u628A\u8FD9\u4E2A\u503A\u518D\u6B20\u4E00\u904D\u3002\u72B6\u6001\u4E00\u5F8B\u6709\u6587\u5B57\u966A\u540C\uFF0C\u4E0D\u9760\u989C\u8272\u5355\u72EC\u4F20\u8FBE\u3002 */\n.tita-trialPick { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 10px; }\n.tita-trialClear { display: inline-flex; align-items: center; gap: 4px; border: 1px solid transparent; border-radius: 999px; background: transparent; color: var(--tita-ink); padding: 3px 8px; font-size: 10.5px; font-weight: 600; cursor: pointer; }\n.tita-trialClear:hover { border-color: var(--tita-line); background: var(--tita-surface-muted); }\n.tita-trialClear:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-trialError { display: flex; align-items: flex-start; gap: 6px; margin: 8px 0 0; border: 1px solid var(--tita-tone-amber-line); border-radius: 9px; background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); padding: 8px 10px; font-size: 11px; line-height: 1.6; }\n.tita-trialEmpty { margin: 10px 0 0; border: 1px dashed var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); color: var(--tita-ink); padding: 12px; font-size: 11px; line-height: 1.7; text-align: center; }\n.tita-trialSummary { display: grid; gap: 3px; margin-top: 12px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 9px 11px; }\n.tita-trialSummary strong { color: var(--tita-ink); font-size: 11.5px; overflow-wrap: anywhere; }\n.tita-trialSubjectLine { color: var(--tita-ink); font-size: 10.5px; font-weight: 600; }\n/*\n * \u8FD9\u6B21\u8F68\u8FF9\u843D\u6CA1\u843D\u5E93\u3002**\u8BF4"\u5DF2\u4FDD\u5B58"\u800C\u5176\u5B9E\u6CA1\u5B58\u4E0B\u6765\uFF0C\u6BD4\u4E0D\u8BF4\u66F4\u574F** \u2014\u2014 \u4EBA\u4E0B\u6B21\u5728 SourceRaw\n * \u91CC\u627E\u4E0D\u5230\u5B83\uFF0C\u53EA\u4F1A\u4EE5\u4E3A\u662F\u81EA\u5DF1\u8BB0\u9519\u4E86\u3002\u6240\u4EE5\u4E24\u79CD\u72B6\u6001\u5404\u6709\u5404\u7684\u989C\u8272\u4E0E\u63AA\u8F9E\u3002\n */\n.tita-trialRunNote { color: var(--tita-ink-muted); font-size: 10px; line-height: 1.6; }\n.tita-trialRunNote[data-saved="true"] { color: var(--tita-success); }\n.tita-trialLoading { display: flex; align-items: center; gap: 7px; margin: 10px 0 0; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); color: var(--tita-ink); padding: 10px 11px; font-size: 11px; line-height: 1.6; }\n.tita-trialSpin { flex: 0 0 auto; animation: tita-trial-spin .9s linear infinite; }\n@keyframes tita-trial-spin { to { transform: rotate(360deg); } }\n@media (prefers-reduced-motion: reduce) { .tita-trialSpin { animation: none; } }\n.tita-trialSummary span { color: var(--tita-ink); font-size: 10.5px; }\n.tita-trialSubject { margin-top: 10px; }\n.tita-trialLegend { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; }\n.tita-trialSteps { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 6px; }\n/* \u4E00\u4E2A\u9636\u6BB5\u7684\u5934 + \u5B83\u4E0B\u9762\u7684\u52A8\u4F5C\u3002**\u9636\u6BB5\u5934\u53EA\u5728\u9636\u6BB5\u53D8\u5316\u65F6\u51FA\u73B0** \u2014\u2014\n \u4E03\u4E2A\u52A8\u4F5C\u662F\u56DB\u6BB5\u91CC\u7684\uFF0C\u4E0D\u662F\u5E76\u5217\u7684\u4E03\u4EF6\u4E8B\u3002 */\n.tita-trialStepWrap { display: grid; gap: 5px; }\n.tita-trialPhaseHead { margin: 8px 0 0; color: var(--tita-ink); font-size: 10px; font-weight: 700; letter-spacing: .02em; }\n.tita-trialStepWrap:first-child .tita-trialPhaseHead { margin-top: 0; }\n.tita-trialStep { border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); overflow: hidden; }\n.tita-trialStepWarn { border-color: var(--tita-tone-amber-line); }\n.tita-trialStepHead { display: flex; width: 100%; flex-wrap: wrap; align-items: center; gap: 7px; border: 0; background: transparent; padding: 9px 11px; text-align: left; cursor: pointer; }\n.tita-trialStepHead:hover { background: var(--tita-surface-muted); }\n.tita-trialStepHead:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: -2px; }\n.tita-trialStepOrder { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 17px; height: 17px; border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink); font-size: 10px; font-weight: 700; }\n.tita-trialStepName { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; }\n.tita-trialActor { display: inline-flex; align-items: center; gap: 3px; border-radius: 999px; padding: 2px 7px; font-size: 9.5px; font-weight: 700; }\n.tita-trialActor[data-actor="\u7CFB\u7EDF"] { background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-trialActor[data-actor="\u6A21\u578B"] { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialActor[data-actor="\u4EBA"] { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-trialChevron { flex: 0 0 auto; color: var(--tita-ink); transition: transform .16s ease; }\n.tita-trialChevronOpen { transform: rotate(180deg); }\n.tita-trialStepSum { flex: 1 1 100%; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialStepBody { display: grid; margin: 0; border-top: 1px solid var(--tita-line); background: var(--tita-surface-muted); padding: 8px 11px; gap: 5px; }\n.tita-trialRow { display: grid; grid-template-columns: 92px 1fr; gap: 8px; }\n.tita-trialRow dt { color: var(--tita-ink); font-size: 10.5px; font-weight: 600; }\n.tita-trialRow dd { margin: 0; color: var(--tita-ink); font-size: 10.5px; line-height: 1.65; overflow-wrap: anywhere; }\n.tita-trialProduce { display: grid; gap: 2px; }\n.tita-trialProduceHead { margin: 0; color: var(--tita-ink); font-size: 10px; font-weight: 700; }\n.tita-trialItemsNone { margin: 2px 0 0; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialItems { display: grid; margin: 0; padding: 0; list-style: none; }\n.tita-trialItem { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px; border-top: 1px dashed var(--tita-line); padding: 5px 0; }\n.tita-trialItem:first-child { border-top: 0; padding-top: 1px; }\n.tita-trialItemRef { color: var(--tita-ink); font-size: 10px; overflow-wrap: anywhere; }\n.tita-trialItemArrow { color: var(--tita-ink); font-size: 10px; }\n.tita-trialItemValue { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-trialItemNote { color: var(--tita-ink); font-size: 10px; line-height: 1.55; overflow-wrap: anywhere; }\n.tita-trialItemWarn .tita-trialItemValue { text-decoration: underline wavy var(--tita-tone-amber); text-underline-offset: 3px; }\n.tita-trialItemsMore { margin: 4px 0 0; color: var(--tita-ink); font-size: 10px; }\n.tita-trialRows { display: grid; margin: 0; border-top: 1px solid var(--tita-line); padding-top: 6px; gap: 5px; }\n/*\n * \u5BF9\u8C61 \xD7 \u52A8\u4F5C\u77E9\u9635\uFF080063 \xA75.7\uFF09\u3002**\u4E00\u4E2A\u5F62\u72B6\uFF0C\u4E24\u4E2A\u751F\u4EA7\u8005\u3002**\n *\n * \u8BFB\u6CD5\u7531\u5DE6\u4E0A\u89D2\u90A3\u4E00\u683C\u8BF4\u6E05\u695A\uFF1A\u4E00\u9053 `\\` \u7EBF\u5206\u5F00\u884C\u4E0E\u5217\uFF0C\u53F3\u4E0A\u5199\u5217\u8F74\uFF08\u52A8\u4F5C\uFF09\uFF0C\u5DE6\u4E0B\u5199\u884C\u8F74\n * \uFF08\u5BF9\u8C61\uFF09\uFF0C\u7EBF\u4E0A\u538B\u7740\u7B2C\u4E09\u4E2A\u5206\u91CF\uFF08\u573A\u666F\uFF09\u3002\u5750\u6807\u662F\u4E09\u7EF4\u7684\uFF0C\u77E9\u9635\u53EA\u662F\u5B83\u7684\u4E8C\u7EF4\u6295\u5F71 \u2014\u2014\n * \u4E09\u6839\u8F74\u7684\u540D\u5B57\u90FD\u51FA\u73B0\u5728\u8FD9\u4E00\u683C\u91CC\uFF0C\u683C\u5185\u90A3\u4E24\u884C\uFF08\u573A\u666F\u540D + \u6570\u5B57\uFF09\u624D\u8BFB\u5F97\u61C2\u3002\n */\n.tita-trialMatrix { display: grid; gap: 8px; margin-top: 12px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 11px; }\n/*\n * \u6CA1\u6709\u81EA\u5DF1\u90A3\u4E00\u5708\u7684\u77E9\u9635\uFF08\u77E5\u8BC6\u90A3\u4E00\u680F\uFF09\u3002\u5B83\u5DF2\u7ECF\u5728 `Card` \u91CC \u2014\u2014 \u4E24\u4E2A\u6846\u5957\u5728\u4E00\u8D77\u5C31\u662F\u5361\u7247\n * \u5957\u5361\u7247\uFF0C\u800C\u5B83\u4EEC\u56DE\u7B54\u7684\u662F\u540C\u4E00\u4E2A\u95EE\u9898\u3002\u53BB\u6389\u6846\u4E0E\u5185\u8FB9\u8DDD\u4E4B\u540E\uFF0C\u6807\u9898\u548C\u8868\u90FD\u662F\u8FD9\u4E00\u5757\u91CC\u7684\u4E00\u7B49\u516C\u6C11\u3002\n */\n.tita-trialMatrixPlain { margin-top: 0; border: 0; border-radius: 0; padding: 0; background: none; }\n.tita-blockHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-blockHead h4 { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 12.5px; font-weight: 700; }\n.tita-blockHead h4 svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-blockHead > span { margin-left: auto; color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }\n/* \u8BFB\u6CD5\u90A3\u4E00\u53E5\u8DDF\u5728\u6807\u9898\u540E\u9762\uFF0C**\u4E0D\u63A8\u5230\u53F3\u8FB9** \u2014\u2014 \u5B83\u662F\u6807\u9898\u7684\u89E3\u91CA\uFF0C\u4E0D\u662F\u8FD9\u4E00\u680F\u7684\u8BA1\u6570\u3002 */\n.tita-blockHead > .tita-blockNote { margin-left: 0; font-size: 10px; }\n/* \u8BA1\u6570\u5728\u6700\u53F3\uFF08`margin-left: auto` \u6765\u81EA\u4E0A\u4E00\u6761\uFF09\uFF0C\u5168\u5C4F\u6309\u94AE\u518D\u5F80\u53F3\u4E00\u4E2A\u8EAB\u4F4D\u3002 */\n.tita-blockMeta { margin-left: auto; color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-blockExpand { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 22px; height: 22px; border: 1px solid var(--tita-line); border-radius: 6px; background: var(--tita-surface); color: var(--tita-ink-muted); padding: 0; cursor: pointer; }\n.tita-blockExpand:hover { border-color: var(--tita-line-strong); color: var(--tita-ink); }\n.tita-blockExpand:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n/* \u6807\u9898\u91CC\u7684\u5750\u6807\u5F0F\u5B50\uFF1A`(\u5BF9\u8C61 \xD7 \u52A8\u4F5C \xD7 \u573A\u666F)` \u662F**\u526F\u9898**\uFF0C\u4E0D\u662F\u540D\u5B57\u7684\u4E00\u90E8\u5206\u3002 */\n.tita-blockSub { color: var(--tita-ink-faint); font-size: 11px; font-weight: 500; }\n.tita-trialMatrixScroll { overflow-x: auto; overscroll-behavior-x: contain; }\n.tita-trialMatrixScroll:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n/*\n * \u6709\u4E0A\u9650\u7684\u77E9\u9635\uFF08\u77E5\u8BC6\u90A3\u4E00\u680F\u7528\uFF09\u3002\n *\n * \u62BD\u53D6\u8BD5\u8DD1\u7684\u77E9\u9635\u53EA\u88C5**\u4E00\u4EFD\u6587\u6863**\u62BD\u51FA\u6765\u7684\u5BF9\u8C61\uFF0C\u4E2A\u4F4D\u6570\uFF1B\u6574\u4E2A\u5E93\u7684\u77E9\u9635\u4F1A\u957F\u5230\u51E0\u5341\u884C\n * \uFF08\u771F\u5B9E\u6570\u636E\u91CC 38 \u4E2A\u5BF9\u8C61 \xD7 4 \u4E2A\u52A8\u4F5C\uFF09\uFF0C\u4E0D\u9650\u9AD8\u7684\u8BDD\u5B83\u4F1A\u628A\u4E0B\u9762\u7684\u5217\u8868\u6574\u6BB5\u63A8\u51FA\u5C4F\u5E55\u3002\n *\n * \u4E24\u5904\u7EC6\u8282\u662F\u4E3A\u4E86\u8BA9\u5B83\u80FD\u6EDA\u800C\u4E0D\u96BE\u53D7\uFF1A\n *\n * - **\u8868\u5934\u5438\u9876\uFF0C\u884C\u5934\u5438\u5DE6\u3002** \u6EDA\u5230\u7B2C 20 \u884C\u65F6\uFF0C\u4E0D\u5438\u9876\u5C31\u4E0D\u77E5\u9053\u81EA\u5DF1\u5728\u54EA\u4E00\u5217\uFF1B\u6A2A\u5411\u6EDA\u51FA\n * \u7B2C\u4E00\u4E2A\u52A8\u4F5C\u4E4B\u540E\uFF0C\u4E0D\u5438\u5DE6\u5C31\u4E0D\u77E5\u9053\u81EA\u5DF1\u5728\u54EA\u4E00\u884C\u3002\u5DE6\u4E0A\u89D2\u90A3\u4E00\u683C\u4E24\u4E2A\u65B9\u5411\u90FD\u5438\u4F4F\uFF0C\u800C\u4E14\u8981\n * \u538B\u5728\u53E6\u5916\u4E24\u8005\u4E4B\u4E0A \u2014\u2014 \u5426\u5219\u5B83\u4F1A\u88AB\u6EDA\u8FC7\u6765\u7684\u8868\u5934\u76D6\u4F4F\u3002\n * - **\u7EB5\u5411\u4E0D\u8BBE `overscroll-behavior: contain`\u3002** \u8BBE\u4E86\u7684\u8BDD\u6EDA\u5230\u5E95\u4F1A\u300C\u5361\u4F4F\u300D\uFF0C\u6EDA\u8F6E\u4E0D\u518D\u4F20\u7ED9\n * \u5916\u9762\u90A3\u4E00\u5C42\u6EDA\u52A8\u5BB9\u5668 \u2014\u2014 \u90A3\u6B63\u662F\u5D4C\u5957\u6EDA\u52A8\u6700\u8BA8\u4EBA\u538C\u7684\u5730\u65B9\u3002\u6A2A\u5411\u4ECD\u7136 contain\uFF1A\n * \u90A3\u4E00\u5C42\u662F\u6211\u4EEC\u81EA\u5DF1\u7684\u5BBD\u8868\u683C\uFF0C\u4E0D\u8BE5\u628A\u6A2A\u5411\u6EDA\u52A8\u6F0F\u7ED9\u6574\u9875\u3002\n */\n.tita-trialMatrixScrollBounded { max-height: 300px; overflow-y: auto; }\n.tita-trialMatrixScrollBounded thead th,\n.tita-trialMatrixScrollBounded thead td { position: sticky; top: 0; z-index: 2; background-color: var(--tita-surface); }\n/*\n * `separate` \u800C\u4E0D\u662F `collapse`\uFF1A\u584C\u9677\u7684\u8FB9\u6846\u5728\u5438\u9876\u5355\u5143\u683C\u4E0A\u4F1A\u88AB\u6D4F\u89C8\u5668\u4E22\u6389\u3002\n *\n * \u5438\u9876 / \u5438\u5DE6\u7684\u5355\u5143\u683C\u53EA\u80FD\u5199 `background-color`\uFF0C**\u4E0D\u80FD\u5199 `background` \u7B80\u5199**\uFF1A\u7B80\u5199\u4F1A\u628A\n * `background-image` \u4E00\u8D77\u91CD\u7F6E\u6210 `none`\uFF0C\u800C\u5DE6\u4E0A\u89D2\u90A3\u4E00\u683C\u7684\u5BF9\u89D2\u7EBF\u6B63\u662F\u4E00\u6761 background-image\n * \uFF08\u5B83\u7684\u9009\u62E9\u5668\u6743\u91CD\u8FD8\u6BD4\u8FD9\u91CC\u4F4E\uFF0C\u4E8E\u662F\u7EBF\u4F1A\u88AB\u9759\u9ED8\u5403\u6389 \u2014\u2014 \u754C\u9762\u4E0A\u770B\u5C31\u662F\u300C\u5C11\u4E86\u4E00\u9053\u7EBF\u300D\uFF0C\u5F88\u96BE\u67E5\uFF09\u3002\n */\n.tita-trialMatrixGrid { border-collapse: separate; border-spacing: 0; }\n/*\n * \u5361\u7247\u91CC\u7684\u90A3\u4E00\u4EFD**\u94FA\u6EE1\u5BB9\u5668\u3001\u5217\u7B49\u5BBD**\u3002\n *\n * `table-layout: fixed` \u662F\u4E3A\u4E86\u8BA9\u300C\u5F62\u72B6\u300D\u771F\u7684\u8BFB\u5F97\u51FA\u6765\uFF1A\u81EA\u52A8\u5E03\u5C40\u4F1A\u6309\u6700\u957F\u7684\u90A3\u6761\u573A\u666F\u540D\u6491\u5F00\n * \u90A3\u4E00\u5217\uFF08\u771F\u5B9E\u6570\u636E\u91CC `\u65B0\u5EFA\u8BA2\u5355\u6D41\u7A0B` \u80FD\u6BD4\u522B\u7684\u5217\u5BBD\u4E00\u500D\uFF09\uFF0C\u4E8E\u662F\u56DB\u5217\u5BBD\u7A84\u4E0D\u4E00\uFF0C380px \u7684\u4FA7\u680F\n * \u8FD8\u4F1A\u88AB\u6324\u51FA\u6A2A\u5411\u6EDA\u52A8 \u2014\u2014 \u6700\u53F3\u8FB9\u90A3\u4E00\u5217\u88AB\u63A8\u5230\u89C6\u91CE\u5916\uFF0C\u77E9\u9635\u5C31\u4E0D\u518D\u662F\u300C\u4E00\u773C\u770B\u5F62\u72B6\u300D\u7684\u4E1C\u897F\u3002\n * \u5B9A\u5BBD\u4E4B\u540E\u6BCF\u5217\u7B49\u5BBD\uFF0C\u653E\u4E0D\u4E0B\u7684\u573A\u666F\u540D\u622A\u65AD\uFF08\u5B8C\u6574\u540D\u5B57\u5728 `title` \u91CC\uFF09\u3002\n */\n.tita-trialMatrixPlain .tita-trialMatrixGrid { width: 100%; table-layout: fixed; }\n/*\n * \u7F51\u683C\u7EBF\u53EA\u6709\u4E09\u79CD\uFF0C\u800C\u4E14\u5404\u6709\u5404\u7684\u610F\u601D\uFF1A\n *\n * - \u8868\u5934\u884C\u4E0B\u9762\u3001\u884C\u5934\u5217\u53F3\u8FB9\u662F**\u5B9E\u7EBF**\uFF08`--tita-line-strong`\uFF09\uFF1A\u90A3\u662F\u300C\u6807\u7B7E\u300D\u4E0E\u300C\u6570\u636E\u300D\u7684\n * \u5206\u754C\uFF0C\u4E0D\u662F\u666E\u901A\u7F51\u683C\u7EBF\uFF0C\u6240\u4EE5\u5B83\u8981\u6BD4\u522B\u7684\u7EBF\u91CD\u4E00\u6863\u3002\n * - \u884C\u4E0E\u884C\u3001\u5217\u4E0E\u5217\u4E4B\u95F4\u662F**\u6781\u6D45\u7684\u7EBF**\uFF08`--tita-line`\uFF09\uFF1A\u77E9\u9635\u672C\u6765\u5C31\u8BE5\u770B\u5F97\u89C1\u683C\u5B50\uFF0C\n * \u4F46\u7EBF\u4E0D\u8BE5\u6BD4\u683C\u91CC\u7684\u5185\u5BB9\u8FD8\u62A2\u773C\u3002\n * - \u522B\u7684\u8FB9\u4E00\u5F8B\u4E0D\u753B\u3002\u65E7\u7248\u7ED9\u6BCF\u4E00\u683C\u90FD\u63CF\u4E86\u4E00\u5708\u8FB9\uFF0C\u800C\u683C\u91CC\u7684\u6807\u7B7E\u81EA\u5DF1\u4E5F\u5E26\u8FB9\u6846 \u2014\u2014 \u8BFB\u8D77\u6765\u662F\n * \u300C\u76D2\u5B50\u5957\u76D2\u5B50\u300D\uFF0C\u76D2\u5B50\u91CC\u5374\u53EA\u6709\u4E09\u4E2A\u5B57\u3002\n */\n.tita-trialMatrixGrid th, .tita-trialMatrixGrid td { border: 0; padding: 4px 5px; }\n.tita-trialMatrixGrid thead th, .tita-trialMatrixGrid thead .tita-trialMatrixCorner { border-bottom: 1px solid var(--tita-line-strong); }\n.tita-trialMatrixGrid tbody th { border-right: 1px solid var(--tita-line-strong); }\n.tita-trialMatrixGrid tbody td + td { border-left: 1px solid var(--tita-line); }\n.tita-trialMatrixGrid tbody tr + tr th, .tita-trialMatrixGrid tbody tr + tr td { border-top: 1px solid var(--tita-line); }\n/*\n * \u5DE6\u4E0A\u89D2\uFF1A\u4E09\u6839\u8F74\u7684\u4EA4\u70B9\u3002\n *\n * \u90A3\u9053 `\\` \u7EBF\u662F\u4E00\u6761 `linear-gradient`\uFF0C\u4E0D\u662F\u4F2A\u5143\u7D20\u52A0\u65CB\u8F6C \u2014\u2014 \u8FD9\u4E00\u683C\u8FD8\u8981\u5438\u9876 + \u5438\u5DE6\uFF0C\n * \u4F2A\u5143\u7D20\u5728\u5438\u9876\u5355\u5143\u683C\u91CC\u5BB9\u6613\u8DDF\u5185\u5BB9\u5404\u6EDA\u5404\u7684\uFF0C\u800C\u80CC\u666F\u8DDF\u7740\u5355\u5143\u683C\u8D70\u3002\n *\n * \u7EBF\u4E0A\u7684\u300C\u573A\u666F\u300D\u5E26\u4E00\u5C42 surface \u5E95\uFF1A\u5B83\u628A\u7EBF**\u538B\u65AD**\uFF0C\u8BFB\u6210\u300C\u8FD9\u6761\u7EBF\u5C31\u662F\u7B2C\u4E09\u6839\u8F74\u300D\uFF0C\n * \u800C\u4E0D\u662F\u4E09\u4E2A\u5B57\u6D6E\u5728\u4E00\u6761\u659C\u7EBF\u4E0A\u3002\n */\n.tita-trialMatrixCorner { position: sticky; top: 0; left: 0; z-index: 3; width: 68px; min-height: 36px; background-color: var(--tita-surface); background-image: linear-gradient(to bottom right, transparent calc(50% - .5px), var(--tita-line-strong) calc(50% - .5px), var(--tita-line-strong) calc(50% + .5px), transparent calc(50% + .5px)); }\n.tita-trialMatrixCornerCol, .tita-trialMatrixCornerRow, .tita-trialMatrixCornerScene { position: absolute; line-height: 1; }\n.tita-trialMatrixCornerCol, .tita-trialMatrixCornerRow { color: var(--tita-ink-muted); font-size: 10px; font-weight: 700; }\n.tita-trialMatrixCornerCol { top: 4px; right: 5px; }\n.tita-trialMatrixCornerRow { bottom: 4px; left: 5px; }\n.tita-trialMatrixCornerScene { top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 3px; background: var(--tita-surface); color: var(--tita-ink-faint); padding: 1px 3px; font-size: 9px; font-weight: 700; }\n/*\n * \u5217\u5BBD\u7684\u4E0B\u9650\u3002**\u4E24\u4E2A\u65B9\u5411\u7684\u8868\u5934\u90FD\u8981\u7ED9** \u2014\u2014 \u884C\u5934\uFF08\u5BF9\u8C61\u540D\uFF09\u4E0D\u7ED9\u4E0B\u9650\u65F6\u5B83\u4F1A\u7F29\u5230\n * min-content\uFF0C\u800C\u6302\u5728\u5B83\u4E0A\u9762\u7684\u90A3\u7EC4\u6807\u7B7E\u5C31\u88AB\u62C6\u6210\u300C\u65E0 / \u573A / \u666F\u300D\u4E09\u884C\u3002\n */\n.tita-trialMatrixGrid thead th, .tita-trialMatrixGrid tbody th { min-width: 64px; }\n.tita-trialMatrixGrid thead th { color: var(--tita-ink); font-size: 10px; font-weight: 700; line-height: 1.35; text-align: center; vertical-align: middle; overflow-wrap: anywhere; }\n/* \u884C\u5934\u5438\u5DE6\uFF1A\u6A2A\u5411\u6EDA\u51FA\u7B2C\u4E00\u4E2A\u52A8\u4F5C\u4E4B\u540E\uFF0C\u4ECD\u8981\u77E5\u9053\u81EA\u5DF1\u5728\u54EA\u4E00\u884C\u3002 */\n.tita-trialMatrixGrid tbody th { position: sticky; left: 0; z-index: 1; background-color: var(--tita-surface); color: var(--tita-ink); font-size: 10px; font-weight: 600; line-height: 1.4; text-align: center; vertical-align: middle; overflow-wrap: anywhere; }\n/*\n * \u8F74\u540D\u4E0E\u6302\u5728\u5B83\u4E0A\u9762\u7684\u300C\u6CA1\u6709\u53E6\u4E00\u8FB9\u300D\u7684\u90A3\u4E9B\u7EC4\u3002\n *\n * **\u4E24\u4E2A\u8F74\u90FD\u4E0D\u5355\u5F00\u4E00\u683C**\uFF1A\u6709\u5BF9\u8C61\u6CA1\u52A8\u4F5C\u7684\u77E5\u8BC6\u6302\u5728\u884C\u5934\u4E0A\uFF0C\u6709\u52A8\u4F5C\u6CA1\u5BF9\u8C61\u7684\u6302\u5728\u5217\u5934\u4E0A\u3002\n * \u7ED9\u77E9\u9635\u591A\u7559\u4E00\u884C\u4E00\u5217\u7684\u4EE3\u4EF7\u662F\u6BCF\u4E2A\u5BF9\u8C61\u591A\u4E00\u683C\u3001\u6BCF\u4E2A\u52A8\u4F5C\u591A\u4E00\u683C\uFF0C\u800C\u7EDD\u5927\u591A\u6570\u662F\u7A7A\u7684 \u2014\u2014\n * \u7A7A\u7684\u5F62\u72B6\u672C\u8EAB\u6CA1\u6709\u4FE1\u606F\uFF0C\u6709\u4FE1\u606F\u7684\u662F\u300C\u8FD9\u4E2A\u5BF9\u8C61\u8FD8\u6709\u51E0\u6761\u77E5\u8BC6\u6CA1\u914D\u52A8\u4F5C\u300D\u3002\n */\n.tita-trialMatrixAxis { display: block; color: var(--tita-ink); font-weight: 700; }\n/*\n * \u8F74\u540D\u505A\u6210\u6309\u94AE\u7684\u7248\u672C \u2014\u2014 Knowledge \u90A3\u4E00\u680F\u7528\u5B83\u3002\n *\n * \u90A3\u8FB9\u70B9\u4E00\u4E2A\u5BF9\u8C61\u540D\u5C31\u662F\u300C\u53EA\u770B\u8FD9\u4E2A\u5BF9\u8C61\u300D\uFF0C\u6240\u4EE5\u884C\u5934 / \u5217\u5934\u662F\u7B5B\u9009\u5668\u7684\u4E00\u90E8\u5206\uFF0C\u4E0D\u662F\u6807\u9898\u3002\n * \u62BD\u53D6\u8BD5\u8DD1\u90A3\u8FB9\u4E0D\u9700\u8981\u8FD9\u4E2A\u52A8\u4F5C\uFF0C\u8F74\u540D\u5C31\u8FD8\u662F\u7EAF\u6587\u672C\uFF1A**\u4E00\u4E2A\u4E1C\u897F\u53EF\u4E0D\u53EF\u70B9\uFF0C\u957F\u4EC0\u4E48\u6837\u5FC5\u987B\u8BF4\u6E05**\uFF0C\n * \u6240\u4EE5\u8FD9\u91CC\u662F\u4E24\u4E2A\u7C7B\uFF0C\u4E0D\u662F\u540C\u4E00\u4E2A\u7C7B\u52A0\u4E00\u4E2A onClick\u3002\n */\n.tita-trialMatrixAxisPick { display: flex; width: 100%; max-width: 100%; align-items: center; justify-content: center; margin: 0; border: 0; border-radius: 4px; background: none; color: inherit; padding: 0; font: inherit; font-weight: 700; text-align: center; overflow-wrap: anywhere; cursor: pointer; }\n.tita-trialMatrixAxisPick:hover { color: var(--tita-primary); text-decoration: underline; text-underline-offset: 2px; }\n.tita-trialMatrixAxisPick:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-trialMatrixAxisPickOn { background: var(--tita-primary-soft); box-shadow: 0 0 0 2px var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialMatrixAxisPickOn:hover { color: var(--tita-primary); text-decoration: none; }\n.tita-trialMatrixAxisHeadOn, .tita-trialMatrixObjectHeadOn { background-color: var(--tita-primary-soft) !important; color: var(--tita-primary); }\n.tita-trialMatrixAxisHeadOn .tita-trialMatrixAxisPickOn, .tita-trialMatrixObjectHeadOn .tita-trialMatrixAxisPickOn { background: transparent; box-shadow: none; }\n/*\n * \u8F74\u5934\uFF1A**\u56FA\u5B9A\u4E24\u884C\uFF0C\u5DE6\u5BF9\u9F50**\u3002\n *\n * \u7B2C\u4E00\u884C\u8F74\u540D\uFF0C\u7B2C\u4E8C\u884C\u6302\u5728\u5B83\u4E0A\u9762\u7684\u7EDF\u8BA1\uFF08`\u65E0\u52A8\u4F5C:3` / `\u65E0\u5BF9\u8C61:5`\uFF09\u3002\u5217\u5934\u5199\u6B7B\u4E24\u884C\u7684\u9AD8\u5EA6\uFF1A\n * \u4E00\u884C\u6CA1\u6709\u7EDF\u8BA1\u7684\u5217\u4E5F\u5360\u540C\u6837\u7684\u9AD8\u5EA6\uFF0C\u7F51\u683C\u624D\u4E0D\u4F1A\u56E0\u4E3A\u67D0\u4E00\u5217\u591A\u4E00\u884C\u800C\u53C2\u5DEE\u3002\u884C\u5934\u7684\u9AD8\u5EA6\u8DDF\u7740\n * \u884C\u9AD8\u8D70\uFF08\u683C\u91CC\u6709\u51E0\u4E2A\u573A\u666F\u5B83\u5C31\u51E0\u884C\uFF09\uFF0C\u6240\u4EE5\u90A3\u91CC\u4E0D\u5199\u6B7B\u9AD8\u5EA6\uFF0C\u53EA\u4FDD\u8BC1**\u987A\u5E8F\u662F\u540D\u5B57\u3001\u7EDF\u8BA1**\u3002\n */\n.tita-trialMatrixColHead { height: 42px; vertical-align: middle; text-align: center; }\n/* \u884C\u5934\u5217\u7684\u90A3\u6761\u7AD6\u7EBF\uFF1A\u8F74\u540D\u4E0E\u7EDF\u8BA1\u90FD\u5728\u5BF9\u8C61\u5355\u5143\u683C\u4E2D\u5C45\u4E2D\u3002 */\n.tita-trialMatrixGrid tbody th { padding-left: 0; }\n.tita-trialMatrixGrid tbody th > .tita-trialMatrixAxis,\n.tita-trialMatrixGrid tbody th > .tita-trialMatrixAxisPick { margin-bottom: 3px; }\n.tita-trialMatrixObjectHead { text-align: center; }\n.tita-trialMatrixLoose { display: block; width: 100%; max-width: 100%; margin: 0; border: 1px solid transparent; border-radius: 5px; color: var(--tita-ink-faint); padding: 0 3px; font: inherit; font-size: 9px; font-weight: 500; line-height: 1.5; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.tita-trialMatrixLooseEmpty { display: block; height: 14px; }\n.tita-trialMatrixLoosePick { border-color: var(--tita-line); background: none; cursor: pointer; }\n.tita-trialMatrixLoosePick:hover { border-color: var(--tita-line-strong); color: var(--tita-ink-muted); }\n.tita-trialMatrixLoosePick:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-trialMatrixLooseOn { border-color: var(--tita-primary); background: var(--tita-primary-soft); color: var(--tita-primary); }\n/*\n * \u683C\u5B50\u91CC\u7684\u4E00\u884C\uFF1A`\u573A\u666F:\u6761\u6570`\u3002**\u4E00\u884C\u4E00\u4E2A\u573A\u666F\uFF0C\u5DE6\u5BF9\u9F50\u3002**\n *\n * \u4E0D\u628A\u51E0\u4E2A\u573A\u666F\u6324\u8FDB\u4E00\u884C\uFF1A\u8FD9\u4E00\u680F\u53EA\u6709 380px\uFF0C\u6BCF\u4E2A\u573A\u666F\u90FD\u8981\u80FD\u5355\u72EC\u70B9\u4E2D\uFF1B\u6324\u6210\u4E00\u884C\u5C31\u5F97\u9760\u622A\u65AD\uFF0C\n * \u800C\u622A\u65AD\u6389\u7684\u662F\u300C\u8FD9\u4E00\u683C\u6709\u54EA\u51E0\u4E2A\u573A\u666F\u300D\u8FD9\u4E2A\u7B54\u6848\u672C\u8EAB\u3002\n *\n * \u573A\u666F\u540D\u4E0D\u8BB8\u65AD\u5B57\uFF08CJK \u9ED8\u8BA4\u4F1A\u5728\u4EFB\u610F\u4E24\u4E2A\u5B57\u4E4B\u95F4\u65AD\u884C\uFF0C`\u65E0\u573A\u666F` \u4F1A\u53D8\u6210\u300C\u65E0\u573A / \u666F\u300D\uFF09\uFF1A\n * \u653E\u4E0D\u4E0B\u65F6\u622A\u65AD\uFF0C\u5B8C\u6574\u540D\u5B57\u5728 `title` \u91CC\u3002\n */\n.tita-trialMatrixCell { min-width: 56px; height: 34px; padding: 2px 3px; vertical-align: middle; }\n.tita-trialMatrixCellOn { background: var(--tita-primary-soft); }\n.tita-trialMatrixCellStatic,\n.tita-trialMatrixCellPick {\n display: flex;\n width: 100%;\n min-height: 28px;\n align-items: center;\n justify-content: center;\n border: 1px solid transparent;\n border-radius: 5px;\n background: transparent;\n color: var(--tita-ink);\n padding: 0 3px;\n font: inherit;\n text-align: center;\n}\n.tita-trialMatrixCellPick { cursor: pointer; }\n.tita-trialMatrixCellPick:hover { background: var(--tita-primary-soft); }\n.tita-trialMatrixCellPick:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 0; }\n.tita-trialMatrixCellPickOn { border-color: var(--tita-primary); background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialMatrixCellValue { font-size: 11px; font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-trialMatrixGroups { display: grid; gap: 0; }\n.tita-trialMatrixGroupLine { display: block; min-width: 0; }\n.tita-trialMatrixGroupLine + .tita-trialMatrixGroupLine { border-top: 1px dashed var(--tita-line); }\n.tita-trialMatrixGroup { display: flex; width: 100%; min-width: 0; align-items: baseline; gap: 1px; margin: 0; border: 0; border-radius: 4px; background: none; color: var(--tita-ink); padding: 2px 3px; font: inherit; font-size: 10px; line-height: 1.45; text-align: left; }\nbutton.tita-trialMatrixGroup { cursor: pointer; }\nbutton.tita-trialMatrixGroup:hover { background: var(--tita-primary-soft); }\nbutton.tita-trialMatrixGroup:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 0; }\n/* \u88AB\u70B9\u5F00\u7684\u90A3\u4E00\u7EC4\u3002\u5B83\u4E0E\u4E0B\u9762\u90A3\u5757\u660E\u7EC6\u662F\u540C\u4E00\u4EF6\u4E8B\u7684\u4E24\u79CD\u5448\u73B0\uFF0C\u6240\u4EE5\u989C\u8272\u5FC5\u987B\u4E00\u81F4\u3002 */\n.tita-trialMatrixGroupOn { background: var(--tita-primary-soft); box-shadow: inset 2px 0 0 var(--tita-primary); color: var(--tita-primary); }\n.tita-trialMatrixGroupScene { min-width: 0; overflow: hidden; color: var(--tita-ink-muted); text-overflow: ellipsis; white-space: nowrap; }\n.tita-trialMatrixGroupScene::after { content: \':\'; }\n.tita-trialMatrixGroupNum { flex: 0 0 auto; color: var(--tita-ink); font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-trialMatrixGroupOn .tita-trialMatrixGroupScene { color: inherit; }\n.tita-trialMatrixGroupOn .tita-trialMatrixGroupNum { color: var(--tita-primary); }\n/* \u8868\u4E0B\u65B9\u7684\u8BFB\u6CD5\u4E00\u884C\u3002\u5B83\u4E0E\u8868\u7684\u95F4\u8DDD\u7531 `.tita-trialMatrix` \u7684 `gap` \u7ED9\uFF0C\u6240\u4EE5\u81EA\u5DF1\u53EA\u8865\u4E00\u70B9\u3002 */\n.tita-trialMatrixHint { margin: 4px 0 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; }\n.tita-trialMatrixHint b { color: var(--tita-ink-muted); }\n/*\n * \u70B9\u5F00\u7684\u90A3\u4E00\u7EC4\u3002\u5B83\u6392\u5728\u77E9\u9635**\u6B63\u4E0B\u65B9**\u800C\u4E0D\u662F\u585E\u8FDB\u683C\u5B50\u91CC\uFF1A\u683C\u5B50\u53EA\u6709\u51E0\u5341\u50CF\u7D20\u5BBD\uFF0C\n * \u800C\u300C\u8FD9\u4E00\u7EC4\u5230\u5E95\u662F\u54EA\u51E0\u6761\u77E5\u8BC6\u300D\u8981\u8BFB\u5230\u6BCF\u6761\u77E5\u8BC6\u7684\u6B63\u6587\u548C\u51FA\u5904\u3002\n */\n.tita-trialMatrixPick { display: grid; gap: 5px; border: 1px solid var(--tita-primary); border-radius: 9px; background: var(--tita-primary-soft); padding: 8px 10px; }\n.tita-trialMatrixPickHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-trialMatrixPickWhere { color: var(--tita-ink); font-size: 11px; font-weight: 700; }\n.tita-trialMatrixPickMeta { margin-left: auto; color: var(--tita-ink); font-size: 10px; }\n.tita-trialMatrixPickGroup { display: grid; gap: 4px; }\n.tita-trialMatrixPickGroup + .tita-trialMatrixPickGroup { border-top: 1px dashed var(--tita-line); padding-top: 6px; }\n.tita-trialMatrixPickScene { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; }\n.tita-trialMatrixPickList { display: grid; margin: 0; padding: 0; list-style: none; gap: 5px; }\n.tita-trialMatrixPickList > li { display: grid; gap: 1px; border-top: 1px dashed var(--tita-line); padding-top: 5px; }\n.tita-trialMatrixPickList > li:first-child { border-top: 0; padding-top: 0; }\n.tita-trialMatrixPickText { color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-trialMatrixPickId { color: var(--tita-ink-muted); font-size: 9.5px; }\n/*\n * \u56DB\u6761\u672C\u5730\u6838\u9A8C\u3002\u5B83\u6392\u5728\u77E9\u9635\u6B63\u4E0B\u65B9\uFF1A\u5728\u7EC6\u770B\u6BCF\u4E00\u6761\u77E5\u8BC6\u4E4B\u524D\uFF0C\u5148\u56DE\u7B54\u300C\u8FD9\u6279\u77E5\u8BC6\u6574\u4F53\u53EF\u4E0D\u53EF\u4FE1\u300D\u3002\n * \u62A5\u51FA\u6765\u3001\u4E0D\u963B\u585E \u2014\u2014 \u547D\u4E2D\u4E0D\u7B49\u4E8E\u5931\u8D25\uFF0C\u662F"\u8FD9\u91CC\u8981\u4EBA\u770B\u4E00\u773C"\u3002\n */\n.tita-trialChecks { display: grid; gap: 7px; margin-top: 12px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 11px; }\n.tita-trialChecks h4 { display: flex; align-items: center; gap: 5px; margin: 0; color: var(--tita-ink); font-size: 11.5px; }\n.tita-trialChecks ul { display: grid; margin: 0; padding: 0; list-style: none; gap: 6px; }\n.tita-trialCheck { display: grid; grid-template-columns: auto auto 1fr; align-items: baseline; gap: 2px 8px; border-top: 1px dashed var(--tita-line); padding-top: 6px; }\n.tita-trialCheck:first-child { border-top: 0; padding-top: 0; }\n.tita-trialCheckName { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; }\n.tita-trialCheckHits { border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink); padding: 1px 7px; font-size: 9.5px; font-weight: 700; }\n.tita-trialCheckHit .tita-trialCheckHits { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-trialCheckWhat { color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialCheckNote { grid-column: 3; color: var(--tita-ink-muted); font-size: 10px; line-height: 1.6; }\n/* \u533A\u5757\u5BFC\u822A\uFF082026-10-18\uFF09\u3002\u62A5\u544A\u53EF\u4EE5\u957F\u5230\u51E0\u767E KB\uFF0C\u6253\u5F00\u5B83\u7684\u4EBA\u7B2C\u4E00\u4EF6\u4E8B\u662F\u300C\u8DF3\u5230\u8981\u770B\u7684\u90A3\u4E00\u6BB5\u300D\u3002\n **\u4E0D\u5438\u9876**\uFF1A\u4E0A\u9762\u90A3\u6761\u5E38\u9A7B\u6807\u9898\u6761\u662F `sticky; z-index: 2`\uFF0C\u800C\u5B83\u7684\u9AD8\u5EA6\u968F\u6807\u9898\u6362\u884C\u53D8\u5316\n \uFF08\u7A84\u5C4F\u4E0A meta \u4F1A\u6298\u6210\u4E24\u884C\uFF09\u3002\u5BFC\u822A\u6761\u5438\u5728 `top: 0` \u4F1A\u6B63\u597D\u94BB\u5230\u5B83\u4E0B\u9762 \u2014\u2014 \u770B\u8D77\u6765\u662F\u300C\u4E00\u6EDA\u5C31\u6CA1\u4E86\u300D\u3002\n \u8BA9\u5F00\u5B83\u9700\u8981\u4E00\u4E2A\u5199\u4E0D\u6B7B\u7684\u9AD8\u5EA6\uFF0C\u800C\u5199\u6B7B\u7684\u9AD8\u5EA6\u5728\u7A84\u5C4F\u4E0A\u4F1A\u9519\u4F4D\u3002\u6240\u4EE5\u5B83\u5C31\u5728\u6B63\u6587\u9876\u90E8\uFF0C\n \u52A0\u4E0A\u6BCF\u4E2A\u533A\u5757\u7684 `scroll-margin`\uFF0C\u70B9\u4E00\u4E0B\u7167\u6837\u843D\u5230\u8BE5\u770B\u7684\u4F4D\u7F6E\u3002 */\n.tita-trialNav {\n display: flex;\n flex-wrap: wrap;\n gap: 2px 14px;\n border-bottom: 1px solid var(--tita-line);\n padding: 0 0 7px;\n}\n.tita-trialNav a {\n color: var(--tita-ink-muted);\n font-size: 11.5px;\n font-weight: 650;\n text-decoration: none;\n}\n.tita-trialNav a:hover { color: var(--tita-primary); text-decoration: underline; text-underline-offset: 3px; }\n.tita-trialNav a:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; border-radius: 4px; }\n/* \u4E00\u6BB5\u8BF4\u660E\uFF08\u4E0D\u662F\u8B66\u544A\uFF09\u3002\u8B66\u544A\u7528 amber\uFF0C\u8FD9\u6761\u662F\u300C\u62A5\u544A\u7684\u8303\u56F4\u8FB9\u754C\u300D\uFF0C\u7528\u4E2D\u6027\u5E95\u8272\u3002 */\n.tita-trialNote {\n margin: 0 0 10px;\n border-radius: 8px;\n background: var(--tita-surface-muted);\n padding: 8px 10px;\n color: var(--tita-ink-muted);\n font-size: 11px;\n line-height: 1.6;\n}\n.tita-trialNote b { color: var(--tita-ink); }\n/* \u951A\u70B9\u843D\u70B9\u7559\u4E00\u53E3\u6C14\uFF1A`scroll-margin` \u8BA9\u6807\u9898\u4E0D\u8D34\u4F4F\u5438\u9876\u7684\u5BFC\u822A\u6761\u3002 */\n.tita-trialSection, .tita-trialOverview { scroll-margin-block-start: 44px; }\n\n.tita-trialReport { display: grid; gap: 22px; }\n.tita-trialOverview { display: grid; gap: 9px; border-bottom: 1px solid var(--tita-line-strong); padding-bottom: 13px; }\n.tita-trialSection { display: grid; min-width: 0; gap: 10px; border-top: 1px solid var(--tita-line); padding-top: 14px; }\n.tita-trialReport > .tita-trialOverview + .tita-trialError { margin-top: -13px; }\n.tita-trialSectionHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 12px; }\n.tita-trialSectionHead h2 { margin: 0; color: var(--tita-ink); font-size: 15px; font-weight: 720; letter-spacing: -.02em; }\n.tita-trialSectionHead > span { color: var(--tita-ink-muted); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n.tita-trialOverviewStats { display: grid; grid-template-columns: 1fr 1fr 1.45fr 1fr 1.5fr; margin: 0; border-block: 1px solid var(--tita-line); }\n.tita-trialOverviewStats > div { display: grid; min-width: 0; align-content: start; gap: 2px; border-right: 1px solid var(--tita-line); padding: 8px 12px; }\n.tita-trialOverviewStats > div:first-child { padding-left: 0; }\n.tita-trialOverviewStats > div:last-child { border-right: 0; }\n.tita-trialOverviewStats dt { color: var(--tita-ink-muted); font-size: 10px; font-weight: 600; }\n.tita-trialOverviewStats dd { margin: 0; color: var(--tita-ink); font-size: 13px; font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-trialOverviewStats dd small { display: block; color: var(--tita-ink-muted); font-size: 9.5px; font-weight: 500; }\n.tita-trialOverviewTitle { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin: 0; }\n.tita-trialOverviewTitle strong { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-trialOverviewTitle span { color: var(--tita-ink-muted); font-size: 10px; font-variant-numeric: tabular-nums; }\n.tita-trialOverviewEmpty { margin: 2px 0 0; color: var(--tita-ink-muted); font-size: 11.5px; line-height: 1.6; }\n.tita-trialOverviewSubject { margin: 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; }\n.tita-trialOutputTabs { display: grid; min-width: 0; gap: 10px; }\n.tita-trialOutputTabs > [data-slot=\'tabs-list\'] { max-width: 100%; overflow-x: auto; }\n.tita-trialOutputTabs > [data-slot=\'tabs-content\'] { min-width: 0; }\n.tita-trialOutputList { display: grid; margin: 8px 0 0; padding: 0; list-style: none; }\n.tita-trialOutputItem { display: grid; min-width: 0; gap: 5px; border-bottom: 1px solid var(--tita-line); padding: 11px 0; }\n.tita-trialOutputItem:first-child { padding-top: 2px; }\n.tita-trialOutputItem:last-child { border-bottom: 0; }\n.tita-trialOutputMeta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; color: var(--tita-ink-muted); font-size: 10px; line-height: 1.5; }\n.tita-trialOutputMeta strong { border-radius: 4px; background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); padding: 1px 5px; font-size: 9px; }\n.tita-trialOutputText { margin: 0; color: var(--tita-ink); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-trialDetailToggle { display: inline-flex; width: fit-content; max-width: 100%; align-items: center; gap: 4px; margin: 0; border: 0; border-radius: 4px; background: transparent; color: var(--tita-primary); padding: 2px 3px; font: inherit; font-size: 10px; font-weight: 650; text-align: left; cursor: pointer; }\n.tita-trialDetailToggle:hover { background: var(--tita-primary-soft); }\n.tita-trialDetailToggle:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-trialDetailBody { display: grid; min-width: 0; gap: 7px; padding: 4px 0 2px 14px; }\n.tita-trialEventTimeline { display: grid; margin: 0; padding: 0; list-style: none; gap: 8px; }\n.tita-trialEventTimeline > li { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 4px 8px; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialEventTimeline > li > span { color: var(--tita-ink-muted); font-size: 9.5px; font-weight: 700; }\n.tita-trialEventTimeline > li > ul { grid-column: 2; }\n.tita-trialCardEvents { display: grid; margin: 0; padding-left: 17px; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; gap: 3px; }\n.tita-trialCheckList { display: grid; margin: 0; padding: 0; list-style: none; }\n.tita-trialCheckList > li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 4px 12px; border-bottom: 1px solid var(--tita-line); padding: 7px 0; }\n.tita-trialCheckList > li:first-child { border-top: 1px solid var(--tita-line); }\n.tita-trialCheckList > li > div { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 9px; }\n.tita-trialCheckList strong { color: var(--tita-ink); font-size: 10.5px; }\n.tita-trialCheckList span, .tita-trialCheckList small { color: var(--tita-ink-muted); font-size: 10px; }\n.tita-trialCheckList > li > b { color: var(--tita-success); font-size: 10px; white-space: nowrap; }\n.tita-trialCheckList > li > b[data-hit=\'true\'] { color: var(--tita-tone-amber); }\n.tita-trialCheckList small { grid-column: 1 / -1; }\n.tita-trialReviewIssues { display: grid; gap: 6px; border: 1px solid var(--tita-tone-amber-line); border-radius: 8px; background: var(--tita-tone-amber-tint); padding: 9px 11px; }\n.tita-trialReviewIssues h3 { display: flex; align-items: center; gap: 5px; margin: 0; color: var(--tita-tone-amber); font-size: 11px; }\n.tita-trialReviewIssues ul { display: grid; margin: 0; padding: 0; list-style: none; gap: 5px; }\n.tita-trialReviewIssues li { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: baseline; gap: 4px 8px; color: var(--tita-ink); font-size: 10.5px; line-height: 1.55; }\n.tita-trialReviewIssues li > span { color: var(--tita-tone-amber); font-size: 9.5px; font-weight: 700; }\n.tita-trialReviewIssues p { margin: 0; overflow-wrap: anywhere; }\n@media (max-width: 700px) {\n .tita-trialOverviewStats { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n .tita-trialOverviewStats > div { border-bottom: 1px solid var(--tita-line); padding: 8px; }\n .tita-trialOverviewStats > div:nth-child(2n) { border-right: 0; }\n .tita-trialOverviewStats > div:nth-last-child(-n + 2) { border-bottom: 0; }\n .tita-trialOverviewStats > div:first-child { padding-left: 8px; }\n .tita-trialCheckList > li { grid-template-columns: minmax(0, 1fr) auto; }\n}\n.tita-trialPrompt { display: grid; gap: 6px; margin-top: 8px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 9px 11px; }\n.tita-trialPromptHead { display: flex; align-items: center; gap: 8px; }\n.tita-trialPromptHead > span { color: var(--tita-ink); font-size: 10px; font-weight: 700; }\n.tita-trialCopy { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 4px; margin-left: auto; border: 1px solid var(--tita-line); border-radius: 999px; background: var(--tita-surface); color: var(--tita-ink); padding: 3px 8px; font-size: 10px; font-weight: 600; cursor: pointer; }\n.tita-trialCopy:hover { background: var(--tita-surface-muted); }\n.tita-trialCopy:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-trialPromptText { margin: 0; max-height: 220px; overflow: auto; overscroll-behavior: contain; border: 1px solid var(--tita-line); border-radius: 8px; background: var(--tita-surface-muted); padding: 7px 9px; color: var(--tita-ink); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }\n.tita-trialPromptText:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-trialExceptions { display: grid; gap: 7px; margin-top: 12px; border: 1px solid var(--tita-tone-amber-line); border-radius: 10px; background: var(--tita-tone-amber-tint); padding: 10px 11px; }\n.tita-trialExceptions h4 { display: flex; align-items: center; gap: 5px; margin: 0; color: var(--tita-tone-amber); font-size: 11px; }\n.tita-trialExceptions ul { display: grid; margin: 0; padding: 0; list-style: none; gap: 5px; }\n.tita-trialExceptions li { display: flex; align-items: flex-start; gap: 6px; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialExcStep { flex: 0 0 auto; border-radius: 4px; background: var(--tita-surface); color: var(--tita-ink); padding: 1px 5px; font-size: 9.5px; font-weight: 700; }\n.tita-trialMore { margin: 0; color: var(--tita-ink); font-size: 10px; }\n.tita-trialToggle { display: flex; width: 100%; align-items: center; justify-content: center; gap: 5px; margin-top: 10px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface); color: var(--tita-ink); padding: 7px 10px; font-size: 10.5px; font-weight: 600; cursor: pointer; }\n.tita-trialRequestToggle { justify-content: space-between; gap: 10px; text-align: left; }\n.tita-trialRequestTitle { display: inline-flex; min-width: 0; align-items: center; gap: 5px; }\n.tita-trialRequestTitle strong { font-size: 10.5px; }\n.tita-trialRequestTitle > span { color: var(--tita-ink-muted); font-size: 9.5px; font-weight: 500; }\n.tita-trialRequestUsage { color: var(--tita-ink-muted); font-size: 9.5px; font-weight: 600; text-align: right; }\n.tita-trialToggle:hover { background: var(--tita-surface-muted); }\n.tita-trialToggle:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n@media (max-width: 620px) { .tita-trialRequestToggle { align-items: flex-start; flex-direction: column; } .tita-trialRequestUsage { padding-left: 17px; text-align: left; } }\n.tita-trialCandidates { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 6px; }\n.tita-trialCandidates > li { display: grid; gap: 3px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface); padding: 8px 10px; }\n.tita-trialCandHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-trialCandName { color: var(--tita-ink); font-size: 11px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-trialCandBad { text-decoration: underline wavy var(--tita-tone-amber); text-underline-offset: 3px; }\n.tita-trialCandMeta { margin-left: auto; color: var(--tita-ink); font-size: 9.5px; }\n.tita-trialCandFix { color: var(--tita-tone-amber); font-size: 10.5px; font-weight: 600; }\n.tita-trialCandWhy { color: var(--tita-ink); font-size: 10px; line-height: 1.6; }\n/*\n * \u4E00\u6761\u77E5\u8BC6\u7684\u51FA\u5904\u3002**\u51FA\u5904\u662F\u77E5\u8BC6\u7684\u4E00\u90E8\u5206** \u2014\u2014 \u6CA1\u6709\u5B83\uFF0C\u8FD9\u6761\u5224\u65AD\u4E0D\u53EF\u4FE1\u3002\n * \u6240\u4EE5\u5B83\u8D34\u5728\u77E5\u8BC6\u4E0B\u9762\uFF0C\u4E0D\u6536\u8FDB\u53E6\u4E00\u4E2A\u9762\u677F\uFF1A\u5206\u5F00\u4E4B\u540E"\u8FD9\u6761\u77E5\u8BC6\u6709\u6CA1\u6709\u4F9D\u636E"\u5C31\u5F97\u8DE8\u4E24\u5904\u770B\u3002\n * \u5DE6\u8FB9\u90A3\u9053\u7AD6\u7EBF\u662F\u5F15\u6587\u7684\u5F15\u7528\u8BB0\u53F7\uFF0C\u4E0D\u662F\u88C5\u9970\u3002\n */\n.tita-trialSources { display: grid; margin: 2px 0 0; padding: 0; list-style: none; gap: 4px; }\n.tita-trialSource { display: grid; gap: 1px; border-left: 2px solid var(--tita-line); padding-left: 7px; }\n.tita-trialSourceBad { border-left-color: var(--tita-tone-amber); }\n.tita-trialSourceQuote { color: var(--tita-ink); font-size: 10px; line-height: 1.55; overflow-wrap: anywhere; }\n.tita-trialSourceWhere { color: var(--tita-ink-muted); font-size: 9.5px; line-height: 1.5; overflow-wrap: anywhere; }\n\n/*\n * \u62BD\u53D6\u8F68\u8FF9\u6E05\u5355\uFF080063\uFF09\uFF1ASourceRaw \u8BE6\u60C5\u91CC\u7684\u300C\u8FD9\u4EFD\u6587\u6863\u5F53\u65F6\u62BD\u51FA\u4E86\u4EC0\u4E48\u300D\u3002\n *\n * \u4E00\u884C\u4E00\u6B21\uFF0C\u65F6\u95F4\u662F\u4E3B\u952E \u2014\u2014 \u540C\u4E00\u6761\u8F68\u8FF9\u518D\u8DD1\u4E00\u6B21\u7ED3\u679C\u4E0D\u540C\uFF0C\u6240\u4EE5\u300C\u54EA\u4E00\u6B21\u300D\u53EA\u80FD\u9760\u65F6\u95F4\u8BA4\u3002\n * 2026-10-06 \u8D77**\u70B9\u4E00\u884C = \u5728\u6D4F\u89C8\u5668\u7A97\u53E3\u91CC\u6253\u5F00\u90A3\u6B21\u7684\u5B8C\u6574\u62A5\u544A**\uFF08`/knowledge/pages/run`\uFF09\u3002\n * \u5C31\u5730\u5C55\u5F00\u64A4\u6389\u4E86\uFF1A\u62A5\u544A\u662F\u51E0\u5341 KB \u7684\u8868\u683C\uFF0C400px \u7684\u62BD\u5C49\u91CC\u8BFB\u4E0D\u4E86\u5B83\u3002\u884C\u5C3E\u90A3\u679A\u5916\u94FE\u56FE\u6807\n * \u662F\u8FD9\u4E2A\u53BB\u5904\u7684\u8BB0\u53F7 \u2014\u2014 \u5B83\u540C\u65F6\u662F\u300C\u70B9\u8FD9\u4E00\u884C\u4F1A\u53D1\u751F\u4EC0\u4E48\u300D\u7684\u63D0\u793A\u3002\n */\n.tita-trialRunList { display: grid; margin: 6px 0 0; padding: 0; list-style: none; gap: 4px; }\n.tita-trialRunRow { display: flex; width: 100%; flex-wrap: wrap; align-items: baseline; gap: 6px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface); padding: 7px 9px; text-align: left; cursor: pointer; }\n.tita-trialRunRow:hover { background: var(--tita-surface-muted); }\n.tita-trialRunRow:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-trialRunTime { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; }\n.tita-trialRunSummary { flex: 1 1 100%; color: var(--tita-ink); font-size: 10px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-trialRunFlags { display: flex; flex: 1 1 auto; flex-wrap: wrap; align-items: center; gap: 4px; }\n.tita-trialRunFlag { border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink); padding: 1px 6px; font-size: 9.5px; font-weight: 700; }\n.tita-trialRunFlag[data-ok="false"] { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n/* \u9636\u6BB5\u5FBD\u6807\uFF082026-10-18\uFF09\u3002\u540C\u4E00\u6761\u5217\u8868\u91CC\u73B0\u5728\u6DF7\u7740\u62BD\u53D6\u4E0E\u5F52\u4E00\uFF0C\u4E24\u4E2A\u90FD\u662F\u300C\u8FD9\u4E00\u4EFD\u6587\u6863\u7684\u4E00\u6B21\u8FD0\u884C\u300D\uFF0C\n \u6240\u4EE5\u5B83\u4EEC\u5FC5\u987B\u662F\u540C\u4E00\u679A\u5C0F\u5FBD\u6807\u3001\u53EA\u6362\u989C\u8272 \u2014\u2014 \u6362\u6210\u4E24\u79CD\u5F62\u72B6\u4F1A\u8BFB\u6210\u4E24\u7C7B\u4E1C\u897F\u3002 */\n.tita-trialRunFlag[data-stage="normalize"] { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialRunFlag[data-stage="materialize"] { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n/* \u884C\u5C3E\u7684\u5916\u94FE\u56FE\u6807\uFF1A\u63A8\u5230\u8FD9\u4E00\u884C\u6700\u53F3\uFF0C\u5B83\u662F\u300C\u70B9\u8FD9\u91CC\u53BB\u6D4F\u89C8\u5668\u300D\u7684\u8BB0\u53F7\u3002 */\n.tita-trialRunOpen { display: inline-flex; margin-left: auto; color: var(--tita-ink-faint); }\n.tita-trialRunRow:hover .tita-trialRunOpen { color: var(--tita-ink); }\n.tita-trialRunProgress { display: grid; gap: 7px; margin-top: 6px; border: 1px solid var(--tita-primary); border-radius: 9px; background: var(--tita-primary-soft); padding: 8px 9px; }\n.tita-trialRunProgressHead { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--tita-primary); font-size: 10.5px; font-weight: 700; }\n.tita-trialRunProgressHead span { display: inline-flex; align-items: center; gap: 5px; }\n.tita-trialRunProgressHead b { color: var(--tita-ink); font-variant-numeric: tabular-nums; }\n.tita-trialRunProgress .tita-compileBar { margin-top: 0; }\n.tita-trialRunProgress .tita-importTrack { gap: 5px 8px; }\n.tita-trialRunProgressNote { margin: 0; color: var(--tita-ink-muted); font-size: 9.5px; line-height: 1.5; }\n\n/*\n * \u8F74\u5B9E\u4F53\uFF080063 \xA73\uFF09\uFF1AObject / Action / Scene \u7684 canonical \u8EAB\u4EFD\u3002\n *\n * \u4E00\u4E2A\u8F74\u4E00\u7EC4\uFF0C\u7EC4\u5185\u4E00\u884C\u4E00\u4E2A\u5B9E\u4F53\u3002\u884C\u662F**\u5217\u8868\u884C + \u4E00\u6761\u5206\u9694\u7EBF**\uFF0C\u4E0D\u662F\u4E00\u5F20\u5C0F\u5361\u7247 \u2014\u2014\n * \u4E0E\u5361\u7247\u9AA8\u67B6\u540C\u4E00\u5957\u7248\u5F0F\uFF1A\u8FD9\u4E2A\u62BD\u5C49\u91CC\u7684\u5B9A\u4E49\u90FD\u662F\u672C\u5E93\u7684\u8BCD\u6C47\u8868\uFF0C\n * \u957F\u5F97\u4E0D\u4E00\u6837\u4F1A\u8BA9\u4EBA\u4EE5\u4E3A\u5B83\u4EEC\u7684\u89C4\u5219\u4E5F\u4E0D\u4E00\u6837\u3002\n */\n.tita-axisFilters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(125px, .55fr) auto; align-items: end; gap: 8px; padding: 10px 0 4px; }\n.tita-axisSearchControl { position: relative; display: flex; min-width: 0; align-items: center; }\n.tita-axisSearchControl > svg { position: absolute; left: 10px; z-index: 1; color: var(--tita-ink-muted); pointer-events: none; }\n.tita-axisSearchControl input { min-width: 0; padding-inline-start: 30px; }\n.tita-axisFilterCount { padding-bottom: 8px; color: var(--tita-ink-muted); font-size: 10px; font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-axisList { display: grid; margin: 0; padding: 0; list-style: none; }\n.tita-axisRow { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; border-bottom: 1px solid var(--tita-line); padding: 6px 8px; }\n.tita-axisName { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-axisLabel { color: var(--tita-ink); font-size: 12px; font-weight: 650; }\n/* \u4F5C\u7528\u57DF\u6807\u8BB0\uFF1A\u53EA\u5199\u300C\u6709\u4F5C\u7528\u57DF\u300D\uFF0C\u5177\u4F53\u8DEF\u5F84\u5728 title \u91CC \u2014\u2014 \u5168\u9650\u5B9A\u540D\u5DF2\u7ECF\u628A\u8DEF\u5F84\u8BF4\u4E86\u4E00\u904D\uFF0C\n \u884C\u4E0A\u518D\u94FA\u4E00\u904D\u53EA\u4F1A\u8BA9\u540D\u5B57\u8BFB\u4E0D\u6210\u4E00\u884C\u3002 */\n.tita-axisScope { border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 1px 6px; font-size: 9.5px; font-weight: 650; }\n.tita-axisAliases { flex: 1 1 100%; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-axisActions { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; margin-left: auto; }\n.tita-axisEditorDialog { display: grid; width: min(660px, calc(100vw - 32px)); max-height: min(88vh, 780px); grid-template-rows: auto minmax(0, 1fr) auto; gap: 12px; overflow: hidden; }\n.tita-axisEditorBody { display: grid; min-height: 0; align-content: start; gap: 12px; overflow-y: auto; overscroll-behavior: contain; padding-inline-end: 4px; }\n.tita-axisEditorCore { display: grid; gap: 11px; }\n.tita-axisEditorCore textarea { min-height: 64px; resize: vertical; }\n.tita-axisEditorToggle { width: 100%; justify-content: flex-start; gap: 6px; border-top: 1px solid var(--tita-line); border-radius: 0; padding: 10px 0 0; color: var(--tita-ink-muted); }\n.tita-axisEditorTools { display: grid; gap: 14px; border-top: 1px solid var(--tita-line); padding-top: 12px; }\n.tita-axisEditorTools[hidden] { display: none; }\n.tita-axisEditorGuidanceList { max-height: 148px; overflow-y: auto; }\n.tita-axisEditorGuidanceComposer { display: grid; grid-template-columns: minmax(120px, .65fr) minmax(0, 1.5fr) auto; align-items: center; gap: 6px; }\n.tita-axisEditorRelationList { max-height: 148px; overflow-y: auto; }\n.tita-axisEditorRelationComposer { display: grid; grid-template-columns: minmax(120px, .8fr) minmax(0, 1.2fr) auto; align-items: center; gap: 6px; }\n.tita-axisEditorFooter { margin-top: 0; }\n@media (max-width: 540px) {\n .tita-axisEditorGuidanceComposer { grid-template-columns: minmax(0, 1fr) auto; }\n .tita-axisEditorGuidanceComposer > :nth-child(2) { grid-column: 1 / -1; grid-row: 2; }\n .tita-axisEditorRelationComposer { grid-template-columns: minmax(0, 1fr) auto; }\n .tita-axisEditorRelationComposer > :nth-child(2) { grid-column: 1 / -1; grid-row: 2; }\n}\n@media (max-width: 460px) {\n .tita-axisFilters { grid-template-columns: minmax(0, 1fr) auto; }\n .tita-axisFilters > .tita-axisSearchControl { grid-column: 1 / -1; }\n}\n\n/*\n * \u300C\u77E5\u8BC6\u300D\u90A3\u4E00\u680F\u7684\u4E24\u5757\uFF080063 \xA72\uFF09\u3002\n *\n * 0063 \u628A\u8FD9\u4E00\u5C42\u62C6\u6210\u4E24\u4EF6\u4E8B\uFF1A**\u77E9\u9635**\u56DE\u7B54\u300C\u5B83\u77E5\u9053\u7684\u662F\u54EA\u51E0\u5757\u300D\uFF0C**\u5361\u7247**\u56DE\u7B54\u300C\u5177\u4F53\u662F\u4EC0\u4E48\u300D\u3002\n * \u6240\u4EE5\u5B83\u6392\u6210\u4E24\u5757\uFF0C\u800C\u4E0D\u662F\u4E00\u6BB5\u957F\u6587\u91CC\u63D2\u4E00\u5F20\u8868\u3002\n *\n * \u4E24\u5757\u4E4B\u95F4\u53EA\u7528**\u4E00\u6761\u7EBF + \u4E00\u6BB5\u7A7A\u767D**\u5206\u5F00\uFF0C\u4E0D\u5404\u5957\u4E00\u5F20\u5361\uFF1A\u5916\u9762\u5DF2\u7ECF\u662F\u4E00\u5F20\u5361\uFF08`.tita-kbCard`\uFF09\uFF0C\n * \u5757\u91CC\u518D\u5957\u5361\u5C31\u662F\u5361\u7247\u5957\u5361\u7247\uFF0C\u800C\u5B83\u4EEC\u56DE\u7B54\u7684\u5176\u5B9E\u662F\u540C\u4E00\u4E2A\u95EE\u9898\u7684\u4E24\u534A\u3002\n * \u77E9\u9635\u4E0D\u5728\u65F6\uFF08\u5E93\u91CC\u4E00\u4E2A\u5BF9\u8C61\u90FD\u6CA1\u6709\uFF09\u8FD9\u6761\u7EBF\u81EA\u7136\u4E0D\u51FA\u73B0 \u2014\u2014 \u9009\u62E9\u5668\u770B\u7684\u662F\u76F8\u90BB\uFF0C\u4E0D\u662F\u72B6\u6001\u3002\n */\n.tita-knowledgeBlock { display: grid; min-width: 0; }\n.tita-knowledgeBlock + .tita-knowledgeBlock { margin-top: 18px; border-top: 1px solid var(--tita-line); padding-top: 14px; }\n/*\n * \u5206\u8282\u5934 `.tita-blockHead` / `.tita-blockSub` \u5B9A\u4E49\u5728\u77E9\u9635\u90A3\u4E00\u6BB5\u91CC \u2014\u2014 \u5B83\u539F\u6765\u53EB\n * `.tita-trialMatrixHead`\uFF0C\u5361\u7247\u90A3\u4E00\u5757\u4E5F\u8981\u540C\u4E00\u4E2A\u5934\uFF0C\u4E8E\u662F\u540D\u5B57\u91CC\u7684\u300C\u77E9\u9635\u300D\u88AB\u53BB\u6389\u4E86\u3002\n * \u4E24\u5904\u5171\u7528\u4E00\u4E2A\u7C7B\u4E0D\u662F\u4E3A\u4E86\u7701\u51E0\u884C\uFF1A**\u4E24\u4E2A\u5757\u770B\u8D77\u6765\u5FC5\u987B\u662F\u540C\u4E00\u5957\u7248\u5F0F**\u3002\n */\n/*\n * \u90A3\u4E00\u53E5\u8FB9\u754C\u8BF4\u660E\u3002\u5B83\u5FC5\u987B\u7559\u7740\uFF08\u4E0D\u5199\u7684\u8BDD\u4EBA\u4F1A\u4EE5\u4E3A\u8FD9\u91CC\u770B\u5230\u7684\u5C31\u662F\u4F1A\u88AB\u53EC\u56DE\u7684\u4E1C\u897F\uFF09\uFF0C\n * \u4F46\u5B83\u53EA\u662F**\u4E00\u884C\u9650\u5B9A**\uFF0C\u4E0D\u662F\u8FD9\u4E00\u5C4F\u7684\u5185\u5BB9 \u2014\u2014 \u6240\u4EE5\u7ED9\u6700\u5C0F\u7684\u5B57\u53F7\uFF0C\u653E\u5728\u6700\u540E\u3002\n */\n.tita-matrixSceneDetail {\n display: grid;\n gap: 7px;\n margin: 10px 0 14px;\n border-top: 1px solid var(--tita-line-strong);\n border-bottom: 1px solid var(--tita-line);\n padding: 10px 2px 4px;\n}\n.tita-matrixSceneDetailHead { display: flex; align-items: center; justify-content: space-between; gap: 10px; }\n.tita-matrixSceneDetailHead h4 { min-width: 0; margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-matrixSceneDetailTotal { flex: 0 0 auto; color: var(--tita-primary); font-size: 10px; font-variant-numeric: tabular-nums; }\n.tita-matrixSceneDetailLabel { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; border-bottom: 1px solid var(--tita-line); padding: 0 7px 4px; color: var(--tita-ink-faint); font-size: 9.5px; }\n.tita-matrixSceneDetailList { display: grid; }\n.tita-matrixSceneDetailRow {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto;\n width: 100%;\n align-items: center;\n gap: 8px;\n border: 0;\n border-top: 1px solid color-mix(in srgb, var(--tita-primary) 12%, transparent);\n background: transparent;\n padding: 7px;\n color: var(--tita-ink);\n font: inherit;\n font-size: 10.5px;\n text-align: left;\n}\n.tita-matrixSceneDetailRow:first-child { border-top: 0; }\n.tita-matrixSceneDetailCount { color: inherit; font-variant-numeric: tabular-nums; }\n.tita-knowledgeFootnote { margin: 12px 0 0; color: var(--tita-ink-faint); font-size: 10px; line-height: 1.6; }\n.tita-knowledgeFootnote b { color: var(--tita-ink-muted); }\n\n/*\n * \u884C\u662F**\u5217\u8868\u884C + \u4E00\u6761\u5206\u9694\u7EBF**\uFF0C\u4E0D\u662F\u4E00\u5F20\u5C0F\u5361\u7247 \u2014\u2014 \u4E0E\u8F74\u5B9E\u4F53\u540C\u4E00\u5957\u7248\u5F0F\u3002\n * \u51FA\u5904\u8D34\u5728\u77E5\u8BC6\u4E0B\u9762\uFF08\u590D\u7528 `.tita-trialSource*`\uFF09\uFF1A\u5206\u5F00\u4E4B\u540E\u300C\u8FD9\u6761\u77E5\u8BC6\u6709\u6CA1\u6709\u4F9D\u636E\u300D\n * \u5C31\u5F97\u8DE8\u4E24\u5904\u770B\u3002\n */\n.tita-knowledgeList { display: grid; margin: 6px 0 0; padding: 0; list-style: none; gap: 8px; }\n.tita-knowledgeRow { display: grid; gap: 3px; border-bottom: 1px solid var(--tita-line); padding: 8px 2px; }\n.tita-knowledgeRow:last-child { border-bottom: 0; }\n/* \u884C\u5C3E\u4E00\u884C\uFF1A\u5224\u65AD\u5728\u5DE6\uFF0C\u52A8\u4F5C\u5728\u53F3\u3002**\u5224\u65AD\u8D34\u7740\u6B63\u6587\u8BFB\u5B8C\u7684\u4F4D\u7F6E**\uFF0C\u52A8\u4F5C\u5728\u4EBA\u51B3\u5B9A\u52A8\u624B\u7684\u4F4D\u7F6E\u3002 */\n.tita-knowledgeFoot { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 2px; }\n.tita-knowledgeConfirm { margin-left: auto; }\n.tita-knowledgeText { flex: 1 1 200px; color: var(--tita-ink); font-size: 11.5px; font-weight: 600; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-knowledgeMeta { color: var(--tita-ink-muted); font-size: 10px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-drawerSectionCount { color: var(--tita-ink-muted); font-size: 10px; font-variant-numeric: tabular-nums; }\n/*\n * \u5F15\u7528\u6E05\u5355\u91CC\u90A3\u4E00\u884C\u7684\u8DF3\u8F6C\uFF08\u5361\u7247 \u2192 \u77E5\u8BC6\uFF09\u3002\n *\n * \u5B83\u6392\u5728\u90A3\u4E00\u884C**\u6700\u53F3**\uFF1A\u5DE6\u4FA7\u90A3\u4E00\u5217\u662F\u5224\u65AD\uFF08\u72B6\u6001\u3001\u6B63\u6587\u3001\u51FA\u5904\uFF09\uFF0C\u8BFB\u5B8C\u4E4B\u540E\u624D\u8F6E\u5230\u52A8\u4F5C \u2014\u2014\n * \u4E0E `.tita-knowledgeConfirm` \u540C\u4E00\u6761\u7406\u7531\u3002\u505A\u6210\u65E0\u8FB9\u6846\u5C0F\u5B57\u800C\u4E0D\u662F\u6309\u94AE\uFF1A\u8FD9\u4E00\u884C\u91CC\u4E09\u767E\u6765\u4E2A\n * \u50CF\u7D20\u90FD\u5F52\u6B63\u6587\uFF0C\u52A8\u4F5C\u662F**\u6CE8\u811A**\uFF0C\u4E0D\u8BE5\u6446\u4E00\u4E2A\u8DDF\u6B63\u6587\u62A2\u773C\u7684\u4E1C\u897F\u3002\n */\n.tita-knowledgeOpen { justify-self: end; margin-top: 2px; border: 0; background: none; padding: 0; color: var(--tita-primary); font: inherit; font-size: 10px; cursor: pointer; text-decoration: underline; text-underline-offset: 2px; }\n/* \u60AC\u505C\u539F\u6765\u6307\u7740\u4E00\u5BF9**\u6CA1\u6709\u5B9A\u4E49**\u7684\u53D8\u91CF\uFF0C\u800C `var()` \u5931\u6548\u65F6\u6574\u6761 `color` \u58F0\u660E\u4F5C\u5E9F \u2014\u2014\n \u8FD9\u5C31\u662F\u300C\u60AC\u505C\u5B8C\u5168\u6CA1\u6709\u53CD\u9988\u300D\u7684\u539F\u56E0\u3002\u73B0\u5728\u4E24\u6863\u90FD\u662F\u771F token\uFF1A\u4E3B\u8272 \u2192 \u5B83\u7684\u6DF1\u8272\u6863\u3002 */\n.tita-knowledgeOpen:hover { color: var(--tita-primary-hover); }\n.tita-knowledgeSources { display: grid; margin: 2px 0 0; padding: 0; list-style: none; gap: 4px; }\n.tita-knowledgeNote { margin-top: 8px; border-top: 1px dashed var(--tita-line); padding-top: 8px; }\n/*\n * \u751F\u6548\u4E2D\u7684\u7B5B\u9009\u3002\u77E9\u9635\u91CC\u4E5F\u9AD8\u4EAE\u4E86\uFF0C\u4F46**\u8FD9\u4E00\u6392\u624D\u662F\u80FD\u9010\u4E2A\u53BB\u6389\u7684\u5730\u65B9** \u2014\u2014\n * \u70B9\u4E00\u683C\u4F1A\u540C\u65F6\u5B9A\u4F4F\u4E09\u6761\u8F74\uFF0C\u800C\u4EBA\u5F80\u5F80\u53EA\u60F3\u53BB\u6389\u5176\u4E2D\u4E00\u6761\u3002\n *\n * \u5B83\u4E0E\u72B6\u6001 chip \u90A3\u4E00\u6761\u540C\u4E00\u5957 chip\uFF08`.tita-filterChip*`\uFF09\uFF0C\u53EA\u662F\u6362\u4E86\u4E00\u884C\uFF1A\n * \u4E0A\u9762\u90A3\u6392\u662F**\u53EF\u4EE5\u9009\u7684\u6863\u4F4D**\uFF08\u90FD\u5E26\u7740\u8BA1\u6570\uFF09\uFF0C\u8FD9\u4E00\u6392\u662F**\u5DF2\u7ECF\u9009\u4E2D\u7684\u4E1C\u897F**\uFF08\u90FD\u5E26\u4E00\u4E2A \xD7\uFF09\u3002\n */\n.tita-knowledgeActive { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin-top: 8px; }\n.tita-knowledgeClear { border: 0; background: none; color: var(--tita-ink-muted); padding: 2px 4px; font: inherit; font-size: 10.5px; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }\n.tita-knowledgeClear:hover { color: var(--tita-ink); }\n.tita-knowledgeClear:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n\n/* \u5361\u7247\u7C7B\u578B\u6CE8\u518C\u8868\uFF08issue 0024\uFF09\uFF1A\u8FD9\u5F20\u754C\u9762\u5C31\u662F"SourceRaw \u2192 Wiki"\u7684\u7EA6\u675F\u5165\u53E3\u3002 */\n.tita-wikiTypeBar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 10px; }\n.tita-wikiTypeIssueCount { border: 1px solid var(--tita-tone-amber-line); border-radius: 999px; background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); padding: 2px 9px; font-size: 10.5px; }\n.tita-wikiTypeList { display: grid; margin: 4px 0 0; padding: 0; list-style: none; gap: 0; }\n/*\n * \u4E00\u884C\u4E00\u4E2A\u7C7B\u578B\u3002**\u4E00\u884C\u5C31\u662F\u4E00\u884C**\uFF1A\u540D\u5B57 + id + \u5C42\u7EA7 / \u81EA\u5B9A\u4E49\u6807\u7B7E + \u8BF4\u660E\u56FE\u6807\uFF0C\n * \u53F3\u8FB9\u662F\u5F20\u6570\u3001\u5F00\u5173\u3001\u7F16\u8F91\u3001\u5220\u9664\u3002\n *\n * \u8FD9\u4E2A\u683C\u5B50\u6362\u8FC7\u4E24\u6B21\u5F62\uFF0C\u4E24\u6B21\u90FD\u662F\u4E3A\u4E86\u540C\u4E00\u4EF6\u4E8B \u2014\u2014 \u7A84\u680F\uFF08380\u2013420px\uFF09\u91CC\u653E\u4E0D\u4E0B\u7B2C\u56DB\u4E2A\u4E1C\u897F\uFF1A\n * 1. \u6700\u65E9\u662F 6 \u5217 grid\uFF0C\u6700\u5C0F\u5BBD\u5EA6\u7EA6 398px\uFF0C\u4E2D\u95F4\u90A3\u5217\u8BF4\u660E\u88AB\u538B\u6210 0 \u5BBD\u3001\u6574\u5757\u770B\u8D77\u6765\u50CF\u300C\u95F4\u8DDD\u5F02\u5E38\u300D\u3002\n * 2. \u6539\u6210 flex \u4E24\u884C\uFF1A\u7B2C\u4E00\u884C\u8EAB\u4EFD + \u64CD\u4F5C\uFF0C\u8BF4\u660E\u7528 `order: 1` \u6362\u5230\u7B2C\u4E8C\u884C\u5360\u6EE1\u6574\u5BBD\u3002\n * 3. \u73B0\u5728\uFF082026-09-26\uFF09\u8BF4\u660E\u4E5F\u642C\u8FDB\u884C\u9996\u90A3\u679A\u56FE\u6807\uFF1A\u5341\u4E00\u4E2A\u7C7B\u578B\u672C\u6765\u8981\u8BFB\u4E09\u5341\u591A\u884C\u5C0F\u5B57\uFF0C\n * \u800C\u8FD9\u4E00\u9875\u95EE\u7684\u662F\u300C\u6709\u54EA\u4E9B\u7C7B\u578B\u3001\u54EA\u4E2A\u6CA1\u542F\u7528\u300D\u3002\u8981\u770B\u5B9A\u4E49\u3001\u5EFA\u8BAE\u5C0F\u8282\u4E0E\u5EFA\u8BAE\u5B57\u6BB5\u65F6\uFF0C\n * \u60AC\u505C\u6216\u805A\u7126\u90A3\u679A\u56FE\u6807\u5C31\u6709 \u2014\u2014 \u5185\u5BB9\u6CA1\u5220\uFF0C\u53EA\u662F\u4E0D\u518D\u5E38\u9A7B\u3002\n *\n * `align-items: baseline` \u4FDD\u7559\uFF1A\u540D\u5B57\u3001id\u3001\u5C42\u7EA7\u6807\u7B7E\u4E09\u6837\u8981\u5750\u5728\u540C\u4E00\u6761\u57FA\u7EBF\u4E0A\u624D\u8BFB\u5F97\u6210\u4E00\u884C\u3002\n * \u8BF4\u660E\u56FE\u6807\u81EA\u5DF1 `align-self: center`\uFF0C\u56E0\u4E3A\u4E00\u4E2A\u53EA\u6709 svg \u7684\u6309\u94AE\u6CA1\u6709\u53EF\u7528\u7684\u6587\u5B57\u57FA\u7EBF\u3002\n */\n/* \u4E0E `.tita-kbSourceRow` \u540C\u4E00\u5957\uFF1A\u5217\u8868\u884C + \u4E00\u6761\u5206\u9694\u7EBF\uFF0C\u4E0D\u662F\u4E00\u5F20\u5C0F\u5361\u7247\u3002\n \u7F29\u8FDB\u8868\u8FBE\u4ECE\u5C5E\uFF08\u89C1\u4E0B\u9762 `.tita-wikiTypeGroupList`\uFF09\uFF0C\u6240\u4EE5\u884C\u4E0D\u9700\u8981\u518D\u81EA\u5DF1\u753B\u4E00\u5708\u6846\u3002 */\n.tita-wikiTypeRow {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 6px 8px;\n border-bottom: 1px solid var(--tita-line);\n padding: 5px 8px;\n min-height: 32px;\n}\n.tita-wikiTypeRow:last-child { border-bottom: 0; }\n.tita-wikiTypeRow:hover { background: var(--tita-surface-muted); }\n.tita-wikiTypeName { display: flex; flex: 1 1 auto; min-width: 0; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-wikiTypeLabel { color: var(--tita-ink); font-size: 12px; font-weight: 620; }\n.tita-wikiTypeTag { flex: 0 0 auto; border-radius: 4px; background: var(--tita-primary-soft); color: var(--tita-primary); padding: 1px 5px; font-size: 9.5px; }\n/* \u884C\u9996\u90A3\u679A\u8BF4\u660E\u56FE\u6807\uFF1A\u957F\u540D\u5B57\u4E0D\u628A\u5B83\u6324\u6241\uFF08\u5B83\u8DDF\u7740\u7684\u662F\u300C\u8FD9\u4E00\u884C\u662F\u4EC0\u4E48\u300D\uFF09\uFF0C\n \u4E5F\u4E0D\u4E0E\u6587\u5B57\u6BD4\u57FA\u7EBF \u2014\u2014 \u4E00\u4E2A\u53EA\u88C5 svg \u7684\u6309\u94AE\u6CA1\u6709\u53EF\u7528\u7684\u57FA\u7EBF\u3002 */\n.tita-kbSourceName > .tita-infoHint,\n.tita-wikiTypeName > .tita-infoHint { flex: 0 0 auto; align-self: center; }\n.tita-wikiTypeIssues { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 5px; }\n.tita-wikiTypeIssues li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; }\n.tita-wikiTypeIssues code { border-radius: 4px; background: var(--tita-surface-muted); padding: 1px 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n.tita-wikiTypeIssueLevel { border-radius: 4px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 0 5px; font-size: 9.5px; }\n\n/*\n * \u6309 id \u524D\u7F00\u6298\u6210\u7684\u4E00\u7EC4\uFF080040 \xA74.3\uFF09\u3002\n *\n * \u5206\u7EC4\u53EA\u505A\u4E00\u4EF6\u4E8B\uFF1A\u8BA9\u300C\u8FD9\u4E94\u4E2A\u662F\u540C\u4E00\u5957 schema\u300D\u5728\u5217\u8868\u91CC\u770B\u5F97\u51FA\u6765\u3002\u6240\u4EE5\u7EC4**\u4E0D\u662F\u4E00\u4E2A\n * \u76D2\u5B50**\uFF1A\u5B83\u6CA1\u6709\u8FB9\u6846\u3001\u6CA1\u6709\u5E95\u8272\uFF0C\u53EA\u6709\u4E00\u6761\u5DE6\u7F29\u8FDB\u4E0E\u4E00\u679A\u53EF\u70B9\u7684\u7EC4\u540D\u884C\u3002\u771F\u6B63\u627F\u8F7D\u5185\u5BB9\u7684\n * \u8FD8\u662F\u91CC\u9762\u90A3\u4E9B `.tita-wikiTypeRow` \u2014\u2014 \u7ED9\u7EC4\u518D\u52A0\u4E00\u5C42\u63CF\u8FB9\uFF0C\u4E00\u7EC4\u4E94\u4E2A\u4EBA\u5C31\u4F1A\u770B\u8D77\u6765\u50CF\n * \u5361\u7247\u5957\u5361\u7247\uFF0C\u800C\u8FD9\u4E00\u5C4F\u672C\u6765\u5C31\u5DF2\u7ECF\u662F\u5217\u8868\u5957\u5217\u8868\u3002\n *\n * \u7F29\u8FDB\u662F\u552F\u4E00\u7684\u7ED3\u6784\u4FE1\u53F7\u3002\u7EC4\u7684 `<details>` \u9ED8\u8BA4\u5C55\u5F00\uFF08`open`\uFF09\uFF1A\u6298\u53E0\u662F\u7ED9"\u592A\u957F"\u7528\u7684\uFF0C\n * \u800C\u8FD9\u91CC\u6298\u53E0\u662F**\u9ED8\u8BA4\u7684\u9605\u8BFB\u987A\u5E8F**\uFF0C\u4E0D\u662F\u9690\u85CF\u5185\u5BB9\u3002\n *\n * 2026-10-01 \u4FEE\u6B63\uFF1A**\u53EA\u6709\u7F29\u8FDB\u4E0D\u591F**\u3002\u4E0A\u4E00\u7248\u628A\u7EC4\u5934\u5199\u6210\u4E00\u884C\u666E\u901A\u6587\u672C\uFF0C\u7ED3\u679C\u5B83\u4E0E\u6210\u5458\u884C\u3001\u4E0E\n * \u4E00\u7EA7\u7C7B\u578B\u4E09\u8005\u957F\u5F97\u4E00\u6837\uFF0C\u7528\u6237\u8BFB\u4E0D\u51FA\u300C\u8FD9\u4E94\u4E2A\u662F\u4E00\u7EC4\u300D\u3002\u73B0\u5728\u7EC4\u5934\u6709\u4E00\u6761\u6D45\u5E95\u8272\u5E26\n * \uFF08`--tita-surface-muted`\uFF0C\u4ECD\u662F**\u6CA1\u6709\u63CF\u8FB9\u3001\u6CA1\u6709\u5706\u89D2\u5361\u7247**\uFF0C\u6240\u4EE5\u4E0A\u9762\u90A3\u6761\u7406\u7531\u4ECD\u7136\u6210\u7ACB\uFF09\uFF0C\n * \u6210\u5458\u884C\u5219\u9760\u7F29\u8FDB 30px + \u4E00\u6761\u7AD6\u76F4\u5BFC\u8F68\u8868\u8FBE\u4ECE\u5C5E\u3002\n * \u6CE8\u610F\u8FD9\u91CC\u6CA1\u6709\u7528\u300C\u5F69\u8272\u5DE6\u8FB9\u6761\u300D\u90A3\u79CD\u505A\u6CD5\uFF1A\u5B83\u53EA\u662F\u5728\u6BCF\u884C\u65C1\u8FB9\u518D\u653E\u4E00\u4E2A\u8272\u5757\uFF0C\u4E0D\u589E\u52A0\u4FE1\u606F\u3002\n */\n.tita-wikiTypeGroup { margin: 0; }\n.tita-wikiTypeGroupBox { display: grid; gap: 0; }\n.tita-wikiTypeGroupHead {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 7px;\n border-radius: 8px;\n background: var(--tita-surface-muted);\n padding: 5px 8px;\n cursor: pointer;\n list-style: none;\n}\n.tita-wikiTypeGroupHead::-webkit-details-marker { display: none; }\n/* \u5C55\u5F00\u6001\u628A\u7BAD\u5934\u8F6C 90\xB0\uFF08`\u25B8` \u2192 `\u25BE`\uFF09\uFF1A\u56FE\u5F62\u53EA\u6709\u4E00\u4E2A\uFF0C\u65B9\u5411\u7531\u72B6\u6001\u51B3\u5B9A\u3002\n `transition` \u4E0E\u6309\u94AE\u90A3\u5957\u65F6\u957F\u4E00\u81F4\uFF0C\u8F6C\u8D77\u6765\u4E0D\u62A2\u6CE8\u610F\u529B\u3002 */\n.tita-wikiTypeGroupCaret { flex: 0 0 auto; color: var(--tita-ink-faint); transition: transform 150ms cubic-bezier(0.22, 0.61, 0.36, 1); }\n.tita-wikiTypeGroupBox[open] > .tita-wikiTypeGroupHead .tita-wikiTypeGroupCaret { transform: rotate(90deg); }\n@media (prefers-reduced-motion: reduce) { .tita-wikiTypeGroupCaret { transition: none; } }\n.tita-wikiTypeGroupHead:hover { background: var(--tita-line); }\n/* \u7EC4\u540D\u6BD4\u6210\u5458\u66F4\u91CD\u3001\u6BD4\u6574\u4E2A\u62BD\u5C49\u7684\u8282\u6807\u9898\u66F4\u8F7B\uFF1A\u5B83\u5728"\u6709\u54EA\u4E9B\u7C7B\u578B"\u8FD9\u4E00\u5C42\u91CC\u662F\u4E00\u4E2A\u4E2D\u95F4\u5C42\u7EA7\u3002 */\n.tita-wikiTypeGroupLabel { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; letter-spacing: .01em; }\n.tita-wikiTypeGroupCount { margin-left: auto; color: var(--tita-ink-faint); font-size: 10px; }\n/*\n * \u6210\u5458\u884C\u9760**\u7F29\u8FDB + \u4E00\u6761\u7AD6\u76F4\u5BFC\u8F68**\u8868\u8FBE\u4ECE\u5C5E\u3002\n *\n * 12px \u7684\u7EAF\u7F29\u8FDB\u4E0D\u591F\uFF08\u7528\u6237\u7684\u539F\u8BDD\u662F\u300C\u5C42\u7EA7\u5173\u7CFB\u4E0D\u591F\u660E\u663E\u300D\uFF09\uFF1A\u7EC4\u540D\u90A3\u884C\u53EA\u6709 11px \u7070\u5B57\uFF0C\n * \u6210\u5458\u884C\u53C8\u4E0E\u4E00\u7EA7\u7C7B\u578B\u957F\u5F97\u4E00\u6A21\u4E00\u6837\uFF0C\u7F29\u8FDB\u7684\u90A3\u4E00\u70B9\u5728\u89C6\u89C9\u4E0A\u88AB\u884C\u81EA\u8EAB\u7684\u63CF\u8FB9\u5403\u6389\u4E86\u3002\n * \u73B0\u5728\u7F29\u8FDB\u52A0\u5230 30px\uFF0C\u5E76\u5728\u5DE6\u4FA7\u753B\u4E00\u6761\u8FDE\u7EED\u7684\u7EC6\u7EBF \u2014\u2014 \u7EBF\u662F**\u7ED3\u6784**\uFF08\u5B83\u628A\u540C\u7EC4\u7684\u884C\u4E32\u6210\u4E00\u6BB5\uFF09\uFF0C\n * \u4E0D\u662F\u88C5\u9970\uFF0C\u6240\u4EE5\u5B83\u662F\u7070\u8272\u7684\uFF0C\u989C\u8272\u4E0E\u5206\u9694\u7EBF\u540C\u6E90\u3002\n */\n.tita-wikiTypeGroupList { position: relative; display: grid; margin: 0; padding: 0 0 0 30px; list-style: none; gap: 0; }\n.tita-wikiTypeGroupList::before {\n content: \'\';\n position: absolute;\n inset-block: 6px 8px;\n inset-inline-start: 16px;\n width: 1.5px;\n border-radius: 1px;\n background: var(--tita-line-strong);\n}\n\n/*\n * \u6A21\u677F\u5361\u9884\u89C8\uFF080040 \xA74.4 \u7B2C 3\u30014 \u6761\uFF09\u3002\u5B83\u662F**\u53EA\u8BFB\u5757**\uFF0C\u4E0D\u662F\u63A7\u4EF6\uFF1A\n * \u6C89\u5E95\uFF08`--tita-surface-muted`\uFF09+ \u865A\u7EBF\u63CF\u8FB9 + \u7B49\u5BBD\u5185\u5BB9\uFF0C\u4E0E\u65C1\u8FB9\u90A3\u51E0\u4E2A\u767D\u5E95\u5B9E\u8FB9\u6846\u7684\n * `Input` / `Textarea` \u4E00\u773C\u53EF\u5206\u3002\u865A\u7EBF\u800C\u4E0D\u662F\u5B9E\u7EBF\uFF0C\u662F\u56E0\u4E3A\u5B9E\u7EBF\u5728\u8FD9\u4E2A\u9762\u677F\u91CC\u5DF2\u7ECF\n * \u4E13\u95E8\u8868\u793A"\u53EF\u7F16\u8F91\u7684\u8F93\u5165\u6846"\u3002\n *\n * \u4E24\u5757\uFF08front matter / \u6B63\u6587\uFF09\u5171\u7528\u540C\u4E00\u5957\u6392\u7248\uFF0C\u53EA\u6709\u6807\u9898\u4E0E\u8BF4\u660E\u4E0D\u540C \u2014\u2014 \u5B83\u4EEC\u7684\u5206\u5DE5\n * \u9760**\u6807\u9898**\u8BF4\u6E05\uFF0C\u4E0D\u9760\u4E24\u5957\u957F\u76F8\u3002\n */\n.tita-wikiPreview { display: grid; gap: 8px; }\n.tita-wikiPreviewHead { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }\n.tita-wikiPreviewHead h4 { margin: 0; color: var(--tita-ink); font-size: 12px; }\n.tita-wikiPreviewOrigin { color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-wikiPreviewBlock { display: grid; gap: 5px; border: 1px dashed var(--tita-line-strong); border-radius: 9px; background: var(--tita-surface-muted); padding: 9px 10px; }\n.tita-wikiPreviewBlockTitle { margin: 0; color: var(--tita-ink-muted); font-size: 11px; font-weight: 700; }\n.tita-wikiPreviewBlockNote { margin: 0; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-wikiPreviewFields { display: grid; margin: 2px 0 0; gap: 3px; }\n.tita-wikiPreviewField { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-wikiPreviewField dt { flex: 0 0 auto; margin: 0; color: var(--tita-ink); font-family: var(--font-tita-mono); font-size: 10.5px; }\n.tita-wikiPreviewField dd { margin: 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-wikiPreviewSections { display: grid; margin: 2px 0 0; padding: 0; list-style: none; gap: 3px; }\n.tita-wikiPreviewSections li { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-wikiPreviewSections code { color: var(--tita-ink); font-family: var(--font-tita-mono); font-size: 10.5px; }\n.tita-wikiPreviewPlaceholder { color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-wikiPreviewEmpty { margin: 2px 0 0; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n\n/*\n * \u53EA\u8BFB\u5B57\u6BB5\u7684\u5F62\u6001\uFF080040 \xA74.4 \u7B2C 1 \u6761\uFF09\u3002\n *\n * `Input` \u7684 `readonly` \u6837\u5F0F\uFF08`packages/ui`\uFF09\u5DF2\u7ECF\u7ED9\u4E86\u6C89\u5E95 + \u6D45\u63CF\u8FB9 + \u6587\u672C\u5149\u6807\uFF0C\n * \u8FD9\u91CC\u8865\u7684\u662F"\u8FD9\u4E0D\u80FD\u6539"\u90A3\u4E00\u70B9\uFF1A\u6587\u5B57\u6536\u5230 `--tita-ink-muted`\u3002**\u4E0D\u7528 opacity** \u2014\u2014\n * \u9760\u900F\u660E\u5EA6\u53D8\u7070\u4F1A\u628A\u5BF9\u6BD4\u5EA6\u4E00\u8D77\u538B\u4E0B\u53BB\uFF0C\u800C 4.5:1 \u662F\u786C\u7EBF\uFF1B`--tita-ink-muted` \u5728\n * `--tita-surface-muted` \u4E0A\u662F 6.98:1\uFF08\u6309\u4E3B\u9898\u771F\u503C\u5B9E\u7B97\uFF09\uFF0C\u7070\u5F97\u660E\u786E\u53C8\u8BFB\u5F97\u6E05\u3002\n *\n * \u9009\u62E9\u5668\u5199 `[data-tita-readonly=\'true\']` \u800C\u4E0D\u662F `input[readonly]`\uFF1A\u8FD9\u6761\u89C4\u7EA6\u53EA\u4F5C\u7528\u4E8E\n * **\u58F0\u660E\u4E86\u5B83**\u7684\u5B57\u6BB5\uFF0C\u4E0D\u80FD\u987A\u624B\u628A\u522B\u5904\uFF08\u76EE\u5F55\u9009\u62E9\u5668\u90A3\u79CD"\u5F53\u524D\u503C"\u6846\uFF09\u7684\u53EA\u8BFB\u8F93\u5165\u6846\u4E5F\u6539\u6389\u3002\n * \u5BF9\u8BDD\u6846\u8D70 Portal\uFF0C\u4E0D\u5728 `.tita-panel` \u91CC\uFF0C\u6240\u4EE5\u4E24\u5904\u90FD\u5199\u4E0A\u3002\n */\n.tita-panel input[data-tita-readonly=\'true\'],\n.tita-uiPortal input[data-tita-readonly=\'true\'] { border-color: var(--tita-line); background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n\n/* \u7EC4\u540D\u884C\u662F `<summary>`\uFF0C\u4E5F\u5C31\u662F\u4E00\u4E2A\u53EF\u805A\u7126\u7684\u6309\u94AE\uFF1A\u7126\u70B9\u73AF\u8D70\u5168\u5C40\u9762\u677F\u89C4\u5219\uFF0C\n \u4F46\u5B83\u7684\u5706\u89D2\u53EA\u6709 6px\uFF0C\u504F\u79FB 2px \u4F1A\u9876\u5230\u76F8\u90BB\u884C\uFF0C\u6240\u4EE5\u8FD9\u4E00\u5904\u6536\u4E00\u70B9\u3002 */\n.tita-wikiTypeGroupHead:focus-visible { outline-offset: 1px; }\n\n/* ------------------------------------------------- filter chip (shared shape)\n *\n * \u4E00\u679A\u53EF\u70B9\u7684\u7B5B\u9009 chip\u3002\u4E09\u5904\u7528\u5B83\uFF1A\u53EC\u56DE\u7684\u4E09\u8DEF\u3001Knowledge \u90A3\u4E00\u680F\u7684\u72B6\u6001\u6863\u3001\u4EE5\u53CA\u77E9\u9635\u70B9\u51FA\u6765\u7684\n * \u5750\u6807\u8F74\u3002\u539F\u6765\u5B83\u53EB `routeChip` \u2014\u2014 \u90A3\u65F6\u53EA\u6709\u53EC\u56DE\u5728\u7528\uFF0C\u540D\u5B57\u8DDF\u7740\u7B2C\u4E00\u4E2A\u4F7F\u7528\u8005\u8D70\uFF1B\u73B0\u5728\n * \u4E09\u4E2A\u5730\u65B9\u5171\u7528\u540C\u4E00\u4E2A\u5F62\u72B6\uFF0C\u540D\u5B57\u5C31\u8BE5\u8BF4\u7684\u662F**\u5B83\u662F\u4EC0\u4E48**\uFF0C\u4E0D\u662F**\u8C01\u5148\u7528**\u3002\n *\n * \u865A\u7EBF = \u6CA1\u9009\u4E2D\uFF0C\u5B9E\u7EBF + \u7EFF = \u9009\u4E2D\u3002\u964D\u7EA7\uFF08\u53EC\u56DE\u90A3\u4E00\u8DEF\u6CA1\u8DD1\u8D77\u6765\uFF09\u7528\u7425\u73C0\uFF0C\n * \u5B83\u4E0E\u300C\u9009\u4E2D\u300D\u662F\u4E24\u4EF6\u4E8B\uFF0C\u6240\u4EE5\u662F\u4E24\u4E2A\u7C7B\u800C\u4E0D\u662F\u4E00\u4E2A\u7C7B\u52A0\u4E00\u4E2A\u4FEE\u9970\u7B26\u3002\n */\n.tita-filterChip { display: inline-flex; align-items: center; gap: 5px; border: 1px dashed var(--tita-line); border-radius: 999px; background: var(--tita-surface); color: var(--tita-ink-faint); padding: 3px 9px; font-size: 10.5px; cursor: pointer; font-family: inherit; }\n.tita-filterChip:hover { border-color: var(--tita-line-strong); color: var(--tita-ink); }\n.tita-filterChip:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-filterChipOn { border-style: solid; border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); color: var(--tita-tone-green); font-weight: 620; }\n.tita-filterChipOn:hover { border-color: var(--tita-tone-green-line); color: var(--tita-tone-green); }\n/* \u964D\u7EA7\u4E0D\u662F\u300C\u6CA1\u8DD1\u300D\uFF0C\u4E5F\u4E0D\u662F\u300C\u8DD1\u4E86\u300D\uFF1A\u5B83\u8981\u80FD\u88AB\u770B\u89C1\uFF0C\u5E76\u4E14\u5E26\u4E0A\u539F\u56E0\uFF08\u82AF\u7247\u7684 title\uFF09\u3002 */\n.tita-filterChipWarn { border-style: solid; border-color: var(--tita-tone-amber-line); background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); font-weight: 620; }\n\n/* -------------------------------------------------- \u7B5B\u9009 chip\uFF08\u65B9\u89D2\u7248\uFF09\n *\n * \u4E0E\u4E0A\u9762\u7684 `filterChip` \u662F**\u4E24\u79CD\u5F62\u72B6**\uFF0C\u4E0D\u662F\u4E00\u5957\u7684\u4E24\u4E2A\u72B6\u6001\uFF1A\u90A3\u679A\u662F\u80F6\u56CA + \u865A\u7EBF\u8FB9\n * \uFF08\u9009\u4E2D\u624D\u53D8\u5B9E\u7EBF\uFF09\uFF0C\u8FD9\u4E00\u679A\u662F\u65B9\u89D2 + \u5B9E\u7EBF\u8FB9\uFF08\u9009\u4E2D\u53EA\u662F\u52A0\u6DF1\uFF09\u3002\u64CD\u4F5C\u65E5\u5FD7\u7684\u7C7B\u578B\u7B5B\u9009\u7528\u5B83\n * \uFF08\u5168\u90E8 / \u5BFC\u5165 / \u7F16\u8BD1\uFF09\u3002\n *\n * \u5B83\u539F\u5148\u662F\u77E5\u8BC6\u56FE\u8C31\u90A3\u4E00\u9875\u7684 `.tita-kgChip`\uFF0C\u4F4F\u5728 `graph.css` \u91CC \u2014\u2014 2026-10-05 \u90A3\u4E00\u680F\n * \u64A4\u6389\u540E\uFF0C\u8FD9\u91CC\u662F\u5B83\u552F\u4E00\u7684\u4F7F\u7528\u8005\uFF0C\u6240\u4EE5\u6837\u5F0F\u642C\u8FDB\u4E3B\u6837\u5F0F\u8868\u3001\u540D\u5B57\u8DDF\u7740\u73B0\u5728\u7528\u5B83\u7684\u5730\u65B9\u8D70\u3002\n * \u642C\u5BB6\u53EA\u6539\u540D\u4E0D\u6539\u503C\uFF1A\u8272\u70B9\u3001\u7B49\u5BBD id\u3001\u8BA1\u6570\u90A3\u51E0\u6761\u5B50\u89C4\u5219\u662F\u56FE\u8C31\u9875\u4E13\u7528\u7684\uFF0C\u6CA1\u6709\u4E00\u8D77\u642C\u3002\n */\n.tita-logChips { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }\n.tita-logChip {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n border: 1px solid var(--tita-line);\n border-radius: 6px;\n background: var(--tita-surface);\n padding: 2px 7px;\n color: var(--tita-ink-muted);\n font: inherit;\n font-size: 10.5px;\n cursor: pointer;\n}\n.tita-logChip:hover { background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-logChip b { color: var(--tita-ink); font-weight: 600; font-variant-numeric: tabular-nums; }\n.tita-logChipOn { border-color: var(--tita-ink); background: var(--tita-surface-muted); color: var(--tita-ink); font-weight: 600; }\n\n\n/* \u8282\u70B9\u6307\u6807\uFF1A\u9876\u90E8\u94FE\u8DEF\u8BA1\u6570\u6761\u4E0B\u6C89\u5230\u8282\u70B9\u540E\u7684\u843D\u70B9\uFF080022\uFF09\u3002\u6570\u5B57\u8DDF\u7740\u5B83\u63CF\u8FF0\u7684\u90A3\u4E2A\u8282\u70B9\u8D70\u3002 */\n.tita-nodeMetrics { display: flex; min-width: 0; flex-wrap: wrap; gap: 4px; }\n.tita-nodeMetric { display: inline-flex; min-width: 0; align-items: baseline; gap: 4px; border: 1px solid var(--tita-line); border-radius: 6px; background: var(--tita-surface); padding: 1px 6px; }\n.tita-nodeMetric small { color: var(--tita-ink-faint); font-size: 9.5px; }\n.tita-nodeMetric b { color: var(--tita-ink); font-size: 11px; font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-flowNodeBadges + .tita-nodeMetrics { margin-top: 1px; }\n\n/* \u53EC\u56DE\u6D4B\u8BD5\uFF1A\u4F5C\u7528\u8303\u56F4 + \u8DEF\u7EBF/\u53C2\u6570 + \u547D\u4E2D\u5217\u8868\u3002 */\n.tita-recallTop { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-recallScope { display: inline-flex; align-items: center; gap: 6px; color: var(--tita-ink-muted); font-size: 11px; }\n.tita-recallScope b { color: var(--tita-ink); font-weight: 650; }\n/* \u53C2\u6570\u6458\u8981\uFF1A\u4E00\u884C\u53EA\u8BFB\u7684\u503C + \u4E00\u4E2A\u300C\u6539\u53C2\u6570\u300D\u6587\u672C\u6309\u94AE\u3002\n \u5B83\u4E0D\u662F\u4E00\u6761\u63A7\u4EF6\u6A2A\u5E26\uFF08\u90A3\u6837\u53C8\u8981\u5360 44px \u4E14\u6C38\u8FDC\u5728\u573A\uFF09\uFF0C\u662F\u67E5\u8BE2\u6846\u4E0B\u9762\u7684\u4E00\u884C\u6CE8\u811A\u3002 */\n/*\n * \u53EC\u56DE\u8FD9\u4E00\u680F\u7684\u6A2A\u5E26\u8282\u594F\u3002**\u95F4\u8DDD\u7531\u5BB9\u5668\u7EDF\u4E00\u7ED9**\uFF0C\u6BCF\u4E00\u5757\u90FD\u662F\u5B83\u7684\u76F4\u63A5\u5B50\u8282\u70B9\uFF0C\u6CA1\u6709\u4F8B\u5916\u3002\n *\n * \u5B9E\u673A\u53CD\u9988\u8D70\u4E86\u4E24\u8F6E\uFF0C\u6839\u56E0\u662F\u540C\u4E00\u4E2A\uFF1A\u95F4\u8DDD\u7531\u5404\u5757\u81EA\u5DF1\u5199\u3002\n * \u7B2C\u4E00\u8F6E\u300C\u8FD8\u662F\u6324\u5230\u4E86\u4E00\u8D77\u300D\uFF1A\u53C2\u6570\u6458\u8981 8px\u3001\u9519\u8BEF\u63D0\u793A **0px**\u3001\u6B65\u9AA4\u8F68 0px\u3001\u8DEF\u7EBF chips 4px\uFF0C\n * \u4E8E\u662F\u9519\u8BEF\u63D0\u793A\u4E0A\u4E0B\u4E24\u8FB9\u4E00\u70B9\u7F1D\u90FD\u6CA1\u6709\u3002\n * \u7B2C\u4E8C\u8F6E\u300C\u4E0A\u4E0B\u95F4\u8DDD\u4E5F\u4E0D\u7EDF\u4E00\u300D\uFF1A\u8F68\u4E0E\u8DEF\u7EBF chips \u88AB\u5305\u6210\u4E00\u7EC4\u7ED9 6px\uFF0C\u7ED3\u679C chips \u4E0A\u9762 6px\u3001\n * \u4E0B\u9762 14px \u2014\u2014 \u300C\u4ECE\u5C5E\u5173\u7CFB\u7528\u95F4\u8DDD\u5DEE\u8868\u8FBE\u300D\u8FD9\u4E2A\u624B\u6CD5\u672C\u8EAB\u6CA1\u9519\uFF0C\u4F46\u5B83\u5728\u8FD9\u91CC\u628A\u7EDF\u4E00\u6253\u7834\u4E86\u3002\n *\n * \u73B0\u5728\u53EA\u6709\u4E00\u6761\u89C4\u5219\uFF1A**\u5757\u4E0E\u5757\u4E4B\u95F4 14px**\uFF0C\u4E0E `viewStack` \u540C\u503C\u3002\u63D2\u4EF6\u91CC\u53EA\u6709\u4E00\u5957\u7AD6\u6392\u8282\u594F\u3002\n */\n.tita-recallPanel { display: grid; gap: 14px; align-content: start; }\n/* \u5361\u5934\u81EA\u5E26 `margin-bottom: 13px`\uFF0C\u5728\u7F51\u683C\u91CC\u4F1A\u548C gap \u76F8\u52A0\u53D8\u6210 27px\u3002\u8FD9\u91CC\u8BA9\u4F4D\u7ED9 gap\u3002 */\n.tita-recallPanel > .tita-cardHeader { margin-bottom: 0; }\n/*\n * \u5C0F\u8282\u6807\u9898\uFF08\u300C\u88AB\u91CD\u6392\u4E22\u5F03\u7684\u5019\u9009\u300D\u8FD9\u7C7B\uFF09\u5728\u7F51\u683C\u91CC\u4E5F\u8981\u8BA9\u4F4D\u7ED9 gap\u3002\n *\n * `.tita-kbSubHead` \u81EA\u5E26 `margin: 16px 0 6px` \u2014\u2014 \u5B83\u662F\u7ED9**\u5757\u72B6\u6D41**\u91CC\u7684\u5206\u8282\u7528\u7684\uFF1B\n * \u653E\u8FDB\u4E00\u4E2A\u5DF2\u7ECF\u7ED9\u4E86 14px \u7684\u7F51\u683C\u91CC\uFF0C\u4E0A\u9762\u4F1A\u53D8\u6210 30px\u3001\u4E0B\u9762\u53D8\u6210 20px\u3002\n * \u62BD\u5C49\u91CC\u90A3\u6761 `> .tita-kbSubHead { margin: 0 }` \u662F\u540C\u4E00\u4E2A\u5751\u7684\u7B2C\u4E00\u6B21\u8E29\u4E2D\u3002\n */\n.tita-recallPanel .tita-kbSubHead { margin: 0; }\n.tita-recallParamLine { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin: 0; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-recallParamLine > span { display: inline-flex; align-items: baseline; gap: 4px; }\n.tita-recallParamLine b { color: var(--tita-ink-muted); font-weight: 650; }\n/* \u300C\u975E\u9ED8\u8BA4\u300D\u662F**\u63D0\u793A**\u4E0D\u662F\u8B66\u544A\uFF1A\u503C\u4E0D\u540C\u4E0D\u662F\u9519\u8BEF\uFF0C\u662F\u300C\u4F60\u8FD9\u6B21\u6539\u8FC7\u300D\u3002\u6240\u4EE5\u8D70\u4E2D\u6027\u8272\u8C03\uFF0C\n \u4E0D\u8D70\u8B66\u793A\u8272 \u2014\u2014 \u8B66\u793A\u8272\u4F1A\u8BA9\u6BCF\u4E00\u6B21\u4E34\u65F6\u8C03\u6574\u90FD\u770B\u8D77\u6765\u50CF\u51FA\u4E86\u4E8B\u3002 */\n.tita-recallParamOver { border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 1px 7px; font-size: 9.5px; font-weight: 650; cursor: help; }\n.tita-recallParamLine > .tita-hitToggle { margin-left: auto; }\n.tita-recallControls { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }\n.tita-recallControls > label, .tita-recallControls > .tita-recallControl { display: inline-flex; align-items: center; gap: 6px; color: var(--tita-ink-muted); font-size: 11px; white-space: nowrap; }\n/* \u76D2\u5B50\u5F52\u5171\u4EAB\u7EC4\u4EF6\uFF1AInput \u4E0E SelectMenu \u90FD\u6309 34px \u7684\u5B57\u6BB5\u5C3A\u5EA6\u6E32\u67D3\uFF0C\u6240\u4EE5\u8FD9\u91CC\u53EA\u7EA6\u675F\u6570\u5B57\u6846\u7684\n \u5BBD\u5EA6\uFF0C\u4E0D\u518D\u5404\u5199\u4E00\u5957\u8FB9\u6846 / \u5706\u89D2 / \u5B57\u53F7 \u2014\u2014 \u90A3\u6B63\u662F\u300C\u540C\u4E00\u4E2A\u63A7\u4EF6\u4E24\u79CD\u957F\u76F8\u300D\u7684\u6765\u6E90\u3002 */\n.tita-recallControls input { width: 68px; }\n.tita-recallAnalysis { display: grid; gap: 9px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 10px 12px; }\n.tita-recallAnalysisHead { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 10px; }\n.tita-recallAnalysisTitle { display: inline-flex; min-width: 0; align-items: center; gap: 7px; color: var(--tita-ink-muted); }\n.tita-recallAnalysisTitle > svg { flex: 0 0 auto; color: var(--tita-tone-violet); }\n.tita-recallAnalysisTitle h4 { margin: 0; color: var(--tita-ink); font-size: 11.5px; font-weight: 720; }\n.tita-recallAnalysisTitle span { display: block; margin-top: 1px; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9.5px; }\n.tita-recallAnalysisIntent { display: inline-flex; flex: 0 0 auto; align-items: baseline; gap: 5px; border-radius: 999px; background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); padding: 3px 8px; font-size: 10.5px; font-weight: 700; }\n.tita-recallAnalysisIntent b { color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9px; font-weight: 600; }\n.tita-recallAnalysisAxes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }\n.tita-recallAnalysisAxis { display: grid; min-width: 0; gap: 5px; border: 1px solid var(--tita-line); border-radius: 8px; background: var(--tita-surface); padding: 7px 8px; }\n.tita-recallAnalysisAxisHead { display: flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 10px; }\n.tita-recallAnalysisAxisHead > svg { color: var(--tita-primary); }\n.tita-recallAnalysisAxisHead b { color: var(--tita-ink); font-weight: 700; }\n.tita-recallAnalysisAxisHead span { margin-left: auto; color: var(--tita-ink-faint); font-size: 9px; }\n.tita-recallAnalysisChips { display: flex; min-width: 0; flex-wrap: wrap; gap: 4px; }\n.tita-recallAnalysisChip { display: inline-flex; min-width: 0; max-width: 100%; align-items: baseline; gap: 4px; border-radius: 5px; background: var(--tita-surface-muted); padding: 2px 5px; color: var(--tita-ink-muted); font-size: 10px; }\n.tita-recallAnalysisChip b { overflow: hidden; color: var(--tita-ink); font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }\n.tita-recallAnalysisChip small { color: var(--tita-ink-faint); font-size: 8.5px; }\n.tita-recallAnalysisEmpty { color: var(--tita-ink-faint); font-size: 10px; }\n.tita-recallAnalysisFoot { display: flex; flex-wrap: wrap; gap: 5px 12px; margin: 0; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-recallAnalysisFoot span + span::before { content: \'\xB7\'; margin-right: 12px; color: var(--tita-line-strong); }\n@container (max-width: 560px) {\n .tita-recallAnalysisAxes { grid-template-columns: 1fr; }\n .tita-recallAnalysisHead { align-items: flex-start; flex-direction: column; }\n}\n.tita-hitList { display: grid; margin: 0; padding: 0; list-style: none; gap: 8px; }\n/* \u4E00\u884C\u547D\u4E2D\u538B\u5230\u4E24\u884C\u6B63\u6587\u7684\u9AD8\u5EA6\uFF1A\u6807\u9898\u884C\uFF08\u8DEF\u7EBF / \u6807\u9898 / \u5206\u6570 / \u5C55\u5F00\uFF09+ \u4E00\u884C\u7247\u6BB5\u3002\n \u539F\u6765\u7247\u6BB5\u5360\u4E24\u884C\u3001\u811A\u6CE8\u518D\u5360\u4E00\u884C\uFF0C\u4E09\u6761\u547D\u4E2D\u5C31\u8981 228px\uFF1B\u73B0\u5728\u540C\u6837\u7684\u4E09\u6761\u5360 150px \u51FA\u5934\u3002 */\n.tita-hitRow { display: grid; min-width: 0; gap: 4px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 7px 10px; }\n.tita-hitRow:hover { border-color: var(--tita-line); background: var(--tita-surface); }\n.tita-hitHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 6px; }\n.tita-hitTitle { min-width: 0; overflow: hidden; color: var(--tita-ink); font-size: 11.5px; font-weight: 640; text-overflow: ellipsis; white-space: nowrap; }\n.tita-hitRoute { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 3px; border-radius: 999px; padding: 1px 7px; font-size: 9.5px; font-weight: 700; letter-spacing: .04em; }\n.tita-hitRouteFts { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-hitRouteVector { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-hitRouteGraph { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-hitRouteHybrid { background: var(--tita-tone-amber-tint); color: var(--tita-warning); }\n.tita-hitScore { flex: 0 0 auto; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n/* \u5206\u6570\u63A8\u5230\u6700\u53F3\uFF1A\u5B83\u8981\u548C\u4E0A\u9762\u90A3\u6761\u6B65\u9AA4\u8F68\u91CC\u7684\u6570\u5B57\u5BF9\u9F50\u6210\u4E00\u6761\u7AD6\u7EBF\u3002\n \u6807\u9898\u56E0\u6B64\u62FF\u5230 `margin-right: auto` \u2014\u2014 \u5B83\u662F\u8FD9\u4E00\u884C\u91CC\u552F\u4E00\u53EF\u4EE5\u4F38\u7F29\u7684\u4E1C\u897F\u3002 */\n.tita-hitHead .tita-hitTitle { margin-right: auto; }\n/* \u8D26\u672C\u884C\uFF080050\uFF09\uFF1A\u540D\u6B21\u3001\u4EE5\u53CA**\u88AB\u4E22\u5F03**\u7684\u6807\u8BB0\u3002\n \u4E22\u5F03\u4E0D\u9760\u964D\u900F\u660E\u5EA6\u8868\u8FBE \u2014\u2014 \u90A3\u662F\u300C\u4E0D\u53EF\u7528\u300D\uFF0C\u800C\u8FD9\u91CC\u8981\u8868\u8FBE\u7684\u662F\u300C\u7B97\u8FC7\u3001\u6CA1\u8FC7\u7EBF\u300D\uFF1A\n \u865A\u7EBF\u8FB9\u6846 + \u6DE1\u8272\u6807\u9898 + \u4E00\u53E5\u539F\u56E0\uFF0C\u4FE1\u606F\u8FD8\u5728\uFF0C\u53EA\u662F\u9000\u5230\u540E\u9762\u3002 */\n.tita-hitRank { flex: 0 0 auto; min-width: 16px; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; text-align: right; }\n.tita-hitDropped { flex: 0 0 auto; border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink-faint); padding: 1px 7px; font-size: 9.5px; }\n.tita-hitRowDropped { border-style: dashed; background: transparent; }\n.tita-hitRowDropped .tita-hitTitle { color: var(--tita-ink-muted); font-weight: 560; }\n\n/* \u53EC\u56DE\u680F\u7684\u6B65\u9AA4\u8F68\u6BD4\u77E5\u8BC6\u5E93\u90A3\u6761\u66F4\u7D27\u51D1\uFF080050 \u7B2C\u4E8C\u7248\uFF09\uFF1A\u4E09\u6B65\u5E73\u5206\u6574\u884C\uFF0C\u4E0D\u9700\u8981 132px \u7684\n \u57FA\u51C6\u5BBD\uFF0C\u4E5F\u8981\u628A\u7EB5\u5411\u9AD8\u5EA6\u8BA9\u7ED9\u4E0B\u9762\u7684\u5217\u8868\u3002\u53EA\u8986\u76D6\u5E03\u5C40\u4E0E\u5C3A\u5BF8\uFF0C\u914D\u8272\u4ECD\u6765\u81EA `.tita-kbStep`\u3002 */\n.tita-recallSteps .tita-kbStep { flex: 1 1 96px; gap: 1px; padding: 5px 8px; }\n.tita-recallSteps .tita-kbStepTop { gap: 4px; }\n.tita-recallSteps .tita-kbStepTop b { font-size: 11.5px; }\n.tita-recallSteps .tita-kbStepVerb { font-size: 9px; padding: 0 3px; }\n.tita-recallSteps .tita-kbStepFacts { gap: 4px; }\n.tita-recallSteps .tita-kbStepValue { font-size: 9.5px; }\n.tita-recallSteps .tita-kbStepNote { font-size: 9px; }\n/* \u6BCF\u4E00\u6B65\u7684\u8017\u65F6\uFF1A\u53F3\u5BF9\u9F50\u3001\u7B49\u5BBD\u6570\u5B57\u3002\u5B83\u4E0E\u8BA1\u6570\u540C\u8272\u4F46\u66F4\u8F7B \u2014\u2014 \u5B83\u662F\u8BFB\u6570\uFF0C\u4E0D\u662F\u7ED3\u8BBA\u3002 */\n.tita-kbStepCost { margin-left: auto; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9px; font-style: normal; white-space: nowrap; }\n.tita-recallTiming { margin-left: auto; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n\n/*\n * 1 \u8DF3\u6269\u5C55\u7684\u56FE\uFF082026-10-02\uFF09\uFF1A\u5B83\u6B64\u524D\u662F\u4E24\u4EFD\u5217\u8868\uFF0C\u800C\u5217\u8868\u8BFB\u4E0D\u51FA\u300C\u4ECE\u54EA\u5F20\u5361\u7247\u3001\u6CBF\u54EA\u6761\u8FB9\u3001\n * \u8D70\u5230\u8C01\u300D\u3002\u753B\u5E03\u662F canvas\uFF0C\u6240\u4EE5\u5E95\u8272\u3001\u865A\u7EBF\u3001\u5706\u70B9\u90FD\u5728\u4E0A\u5C42\u7528 DOM \u753B\uFF08canvas \u8BA4\u4E0D\u51FA CSS \u53D8\u91CF\uFF09\u3002\n */\n.tita-expansionGraphBox { position: relative; overflow: hidden; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); }\n/* \u9AD8\u5EA6\u5199\u5728\u7EC4\u4EF6\u91CC\uFF08`CANVAS_H`\uFF09\u4E0E\u8FD9\u91CC\u5FC5\u987B\u4E00\u81F4\uFF1Acanvas \u7684\u50CF\u7D20\u5C3A\u5BF8\u7531 G6 \u62FF\u5230\u7684\u9AD8\u5EA6\u51B3\u5B9A\uFF0C\n \u800C\u5BB9\u5668\u9AD8\u5EA6\u5C0F\u4E00\u70B9\u5C31\u4F1A\u51FA\u73B0\u4E00\u6761\u753B\u4E0D\u51FA\u6765\u7684\u7A7A\u767D\u3002 */\n.tita-expansionGraphCanvas { height: 300px; }\n.tita-expansionGraphEmpty { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: var(--tita-ink-faint); font-size: 11px; }\n/* \u56FE\u4F8B\u3002\u4E09\u679A\u8272\u5757\u5C31\u662F\u753B\u5E03\u4E0A\u90A3\u4E09\u79CD\u72B6\u6001\uFF0C\u6240\u4EE5\u5B83\u4EEC\u5FC5\u987B\u4E0E `ExpansionGraph.tsx` \u91CC\u7684\u5E38\u91CF\u540C\u8272\u3002 */\n.tita-expansionLegend { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-expansionLegend > i { width: 11px; height: 11px; flex: 0 0 auto; border-radius: 999px; background: var(--tita-primary); }\n.tita-expansionLegendHollow { background: var(--tita-surface) !important; border: 1.6px solid var(--tita-primary); }\n.tita-expansionLegendDashed { background: var(--tita-surface) !important; border: 1.6px dashed var(--tita-line-strong); }\n/* \u9009\u4E2D\u4E00\u4E2A\u5706\u70B9\u540E\u7684\u90A3\u4E00\u884C\uFF1A\u5B83\u662F\u753B\u5E03\u7684\u8BFB\u6570\u6761\uFF0C\u4E0D\u5360\u4E00\u6574\u5757\u3002 */\n.tita-expansionStrip { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 9px; margin: 0; border-radius: 9px; background: var(--tita-surface-muted); padding: 7px 9px; font-size: 11px; color: var(--tita-ink-muted); }\n.tita-expansionStrip b { color: var(--tita-ink); font-weight: 650; }\n.tita-expansionStrip .tita-hitToggle { display: inline-flex; align-items: center; gap: 3px; margin-left: auto; }\n\n/* \u547D\u4E2D\u884C\u7684\u6B63\u6587\u9ED8\u8BA4\u4E24\u884C\uFF1A\u4E00\u6761\u7B14\u8BB0\u7684\u7247\u6BB5\u5E38\u6709\u51E0\u767E\u5B57\uFF0C\u5168\u644A\u5F00\u4E00\u5C4F\u53EA\u80FD\u770B\u4E24\u6761\u3002\n `-webkit-line-clamp` \u662F\u622A**\u663E\u793A**\u4E0D\u662F\u622A\u6570\u636E\uFF0C\u5C55\u5F00\u540E\u662F\u540C\u4E00\u6BB5\u6587\u5B57\u3002 */\n.tita-hitSnippetClamp { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; }\n.tita-hitToggle { border: 0; background: none; color: var(--tita-primary); padding: 0; font: inherit; font-size: 10px; cursor: pointer; }\n/*\n * \u5355\u72EC\u6210\u884C\u7684\u300C\u53E6\u6709 N \u6761\u88AB\u91CD\u6392\u4E22\u5F03\u2026\u300D\u3002\n *\n * `<button>` \u9ED8\u8BA4 `text-align: center`\uFF0C\u800C\u4E14\u4F5C\u4E3A\u7F51\u683C\u9879\u4F1A\u88AB\u62C9\u6EE1\u6574\u884C\u5BBD \u2014\u2014 \u4E8E\u662F\u8FD9\u4E00\u884C\n * \u65E2\u5C45\u4E2D\u3001\u53C8\u628A\u6574\u884C\u53D8\u6210\u70B9\u51FB\u533A\uFF08\u70B9\u5217\u8868\u53F3\u8FB9\u7684\u7A7A\u767D\u4E5F\u4F1A\u5C55\u5F00\uFF09\u3002\u5B83\u672C\u8D28\u662F\u4E00\u6761\u5217\u8868\u811A\u6CE8\uFF0C\n * \u6240\u4EE5\u6309\u5185\u5BB9\u5BBD\u5EA6\u3001\u5DE6\u5BF9\u9F50\u3002\u9009\u62E9\u5668\u53EA\u70B9\u8FD9\u4E00\u680F\u7684**\u76F4\u63A5\u5B50\u8282\u70B9**\uFF1A\u884C\u5185\u90A3\u679A\u300C\u5C55\u5F00\u300D\u5728\n * `.tita-hitHead` \u91CC\uFF0C\u4E0D\u53D7\u5F71\u54CD\u3002\n */\n.tita-recallPanel > .tita-hitToggle { justify-self: start; text-align: left; }\n.tita-hitToggle:hover { text-decoration: underline; text-underline-offset: 2px; }\n.tita-hitToggle:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; border-radius: 3px; }\n/* \u5361\u7247\u6807\u9898\u5728\u300C\u6269\u5C55\u300D\u90A3\u4E00\u680F\u662F\u53EF\u4EE5\u70B9\u5F00\u7684\uFF1A\u505A\u6210\u94FE\u63A5\u7684\u6837\u5B50\uFF0C\u4F46\u7528\u6309\u94AE\u7684\u8BED\u4E49\u3002 */\n.tita-cardLink { min-width: 0; overflow: hidden; border: 0; background: none; padding: 0; color: var(--tita-primary); font: inherit; font-size: 11.5px; font-weight: 640; text-align: left; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }\n.tita-cardLink:hover { text-decoration: underline; text-underline-offset: 2px; }\n.tita-cardLink:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; border-radius: 3px; }\n\n/* \u53EC\u56DE\u680F\u7684\u4E09\u4E2A tab\uFF1A\u53EC\u56DE / \u91CD\u6392 / \u4EA4\u4ED8\u3002\u5206\u6BB5\u63A7\u4EF6\u4E0E\u5DE5\u5177\u680F\u540C\u4E00\u5957\u6837\u5F0F\u3002 */\n.tita-recallTabs { margin-top: 12px; }\n/*\n * \u8DEF\u7EBF chips\uFF08\u300C\u878D\u5408\u540E N \u6761 / \u5173\u952E\u8BCD 17/17 / \u5411\u91CF 2/50\u300D\uFF09\u3002\n *\n * \u5B83\u4EEC\u662F**\u53EC\u56DE\u8FD9\u4E00\u6B65\u7684\u7EC6\u8282**\uFF0C\u4E5F\u662F\u4E0B\u9762\u90A3\u4EFD\u540D\u5355\u7684\u5F00\u5173\u3002\u4F4D\u7F6E\u4E0A\u6709\u8FC7\u4E24\u7248\u90FD\u4E0D\u5BF9\uFF1A\n * \u4E00\u7248\u4E0E\u6B65\u9AA4\u8F68\u5E73\u7EA7\u5404\u5360\u4E00\u6761\u6A2A\u5E26\uFF08\u8BFB\u8D77\u6765\u50CF\u7B2C\u56DB\u4E2A\u6B65\u9AA4\uFF09\uFF0C\u4E00\u7248\u7F29\u8FDB 12px \u8D34\u5230\u8F68\u4E0B\u9762\n * \uFF08\u4E8E\u662F\u4E0E\u4E0A\u9762\u7684\u63D0\u793A\u3001\u4E0B\u9762\u7684\u5217\u8868\u90FD\u4E0D\u5171\u4E00\u6761\u5DE6\u57FA\u7EBF\uFF0C\u7528\u6237\u7684\u539F\u8BDD\u662F\u300C\u90A3\u51E0\u4E2A\u6807\u7B7E\u6CA1\u6709\u5DE6\u5BF9\u9F50\u300D\uFF09\u3002\n *\n * \u73B0\u5728\uFF1A\u4E0D\u7F29\u8FDB\u3001\u4E0D\u8D34\u8F68\uFF0C\u4E0E\u5176\u5B83\u5757\u4E00\u6837 14px \u2014\u2014 \u5DE6\u57FA\u7EBF\u7EDF\u4E00\uFF0C\u4E0A\u4E0B\u95F4\u8DDD\u7EDF\u4E00\u3002\n */\n.tita-recallRoutes { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 0; }\n.tita-recallRoutes .tita-filterChip { cursor: pointer; font: inherit; font-size: 10.5px; }\n.tita-recallRoutes .tita-filterChip:hover { border-color: var(--tita-line-strong); color: var(--tita-ink); }\n.tita-hitSnippet { margin: 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-hitFoot { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: var(--tita-ink-faint); font-size: 10px; }\n\n/* \u610F\u56FE\uFF1A\u4ECE\u6700\u8FD1\u8BB0\u5F55\u91CC\u5F52\u7EB3\u51FA\u7684\u5206\u5E03\uFF08act / \u5206\u7C7B / \u4F4E\u7F6E\u4FE1\u5EA6\uFF09\u3002 */\n.tita-distList { display: grid; gap: 7px; margin: 10px 0 0; }\n.tita-distRow { display: grid; grid-template-columns: minmax(56px, 96px) minmax(0, 1fr) 34px; align-items: center; gap: 8px; }\n.tita-distRow > span { overflow: hidden; color: var(--tita-ink-muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-distBar { height: 7px; overflow: hidden; border-radius: 999px; background: var(--tita-surface-muted); }\n.tita-distBar > i { display: block; height: 100%; border-radius: 999px; background: var(--tita-tone-violet); }\n.tita-distBarFts > i { background: var(--tita-primary); }\n.tita-distBarGraph > i { background: var(--tita-tone-green); }\n.tita-distCount { color: var(--tita-ink-faint); font-size: 10.5px; text-align: right; }\n\n/* \u8BB0\u5FC6\uFF1A\u771F\u5B9E\u843D\u76D8\u8BA1\u6570\uFF0804_memory\uFF09\u4E0E\u300C\u793A\u610F\u300D\u5361\u7247\u5206\u5F00\u6446\uFF0C\u907F\u514D\u628A\u5360\u4F4D\u6570\u5B57\u8BFB\u6210\u771F\u5B9E\u6570\u636E\u3002 */\n.tita-memoryReal { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 14px; }\n\n/*\n * \u76F8\u5173\u5361\u7247\uFF080049\uFF09\uFF1A\u5361\u7247\u62BD\u5C49\u91CC\u90A3\u4E00\u4EFD\u53EF\u70B9\u7684\u51FA\u94FE / \u5165\u94FE\u3002\n *\n * \u4E00\u884C\u4E00\u4E2A**\u6309\u94AE**\uFF0C\u5E38\u6001\u6CA1\u6709\u8FB9\u6846 \u2014\u2014 \u4E0E `.tita-cardRow` \u540C\u4E00\u4E2A\u7406\u7531\uFF1A\u4E00\u5C4F\u91CC\u5341\u6765\u4E2A\n * \u63CF\u8FB9\u76D2\u5B50\u4F1A\u53D8\u6210\u300C\u6846\u5957\u6846\u300D\uFF0C\u800C\u8FD9\u91CC\u95EE\u7684\u662F\u300C\u5B83\u8DDF\u8C01\u6709\u5173\u300D\u3002hover / \u805A\u7126\u624D\u663E\u8FB9\u6846\u4E0E\u6D45\u5E95\uFF0C\n * \u6240\u4EE5\u5B83\u8BFB\u8D77\u6765\u662F\u4E00\u4EFD\u5217\u8868\uFF0C\u4E0D\u662F\u4E00\u5806\u5361\u7247\u3002\n *\n * \u5206\u7EC4\u6807\u7B7E\uFF08\u300C\u5B83\u5F15\u7528\u300D/\u300C\u5F15\u7528\u5B83\u300D\uFF09\u6BD4\u526F\u6807\u9898\u66F4\u8F7B\uFF1A\u5B83\u4EEC\u53EA\u56DE\u7B54\u65B9\u5411\uFF0C\u4E0D\u662F\u5185\u5BB9\u3002\n */\n/*\n * \u6765\u6E90\u53BB\u5411\u56FE\uFF082026-10-01 \u63D0\u51FA\uFF0C2026-10-02 \u843D\u5730\u6210 AntV G6 \u753B\u5E03\uFF09\u3002\n *\n * \u4E09\u5217**\u4ECE\u5DE6\u5F80\u53F3**\u8BFB\uFF1A\u6765\u6E90 \xB7 \u5F15\u7528\u5B83 \u2192 \u672C\u5361 \u2192 \u53BB\u5411 \xB7 \u5B83\u5F15\u7528\uFF1B\u7A7A\u6389\u7684\u90A3\u4E00\u5217\u4F1A\u88AB\u6536\u6389\uFF0C\n * \u6574\u5757\u5185\u5BB9\u5728\u753B\u5E03\u4E2D\u95F4\uFF08`layoutRelated`\uFF09\u3002canvas \u7684\u5E95\u8272\u3001\u8FDE\u7EBF\u3001\u5706\u70B9\u3001\u8FB9\u4E0A\u7684\u5B57\u90FD\u5728\u7EC4\u4EF6\u91CC\n * \uFF08canvas \u8BA4\u4E0D\u51FA CSS \u53D8\u91CF\uFF09\uFF0C\u8FD9\u91CC\u53EA\u7BA1\u753B\u5E03\u8FD9\u4E2A\u6846\u3002\u753B\u5E03\u9AD8\u5EA6\u7531\u5E03\u5C40\u7B97\u51FA\u6765\uFF0C\u5199\u5728\u884C\u5185\u6837\u5F0F\u4E0A\u3002\n *\n * \u4E0B\u9762\u90A3\u6BB5\u56FE\u4F8B\u7684\u6837\u5F0F**\u5DF2\u64A4\u6389**\uFF082026-10-02\uFF09\uFF1A\u5173\u7CFB\u5199\u5728\u8FB9\u4E0A\u4E4B\u540E\uFF0C\u56FE\u4F8B\u662F\u540C\u4E00\u4EF6\u4E8B\u8BF4\u7B2C\u4E8C\u904D\u3002\n */\n.tita-relatedGraphBox { position: relative; overflow: auto; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); }\n.tita-relatedGraphCanvas { min-width: 100%; }\n\n/* \u77E5\u8BC6\u5E93\u6587\u6863\u8BE6\u60C5\uFF1A\u8BE5\u6587\u6863\u7F16\u8BD1\u51FA\u7684 wiki \u5361\u7247\uFF08\u5BF9\u5E94 WeKnora \u7684\u300C\u5206\u5757\u300D\u5217\u8868\uFF09\u3002\n \u4E24\u5904\u7528\u540C\u4E00\u5957\u7C7B\u540D\uFF1Awiki \u680F\u7684\u5361\u7247\u5217\u8868\uFF0C\u4EE5\u53CA\u539F\u6587\u62BD\u5C49\u91CC\u7684\u300C\u7F16\u8BD1\u4EA7\u7269\u300D\u5217\u8868\u3002 */\n.tita-cardList { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 4px; }\n/*\n * **\u4E00\u6761\u5217\u8868\uFF0C\u4E0D\u662F\u4E00\u5806\u5361\u7247**\uFF080042\uFF09\u3002\n *\n * 0042 \u4E4B\u524D\u6BCF\u4E00\u884C\u90FD\u6709\u4E00\u5708\u5E38\u9A7B\u8FB9\u6846 + \u5706\u89D2\uFF0C\u5916\u9762\u8FD8\u5957\u7740\u4E00\u5C42 `Card`\uFF08`.tita-kbCard` \u4E5F\u6709\n * \u8FB9\u6846\uFF09\u2014\u2014 3 \u5F20\u5361\u7247\u5C31\u662F 3 \u4E2A\u6846\u3001\u884C\u4E0E\u884C\u4E4B\u95F4\u53C8\u5404\u753B\u4E00\u5708\uFF0C\u770B\u5230\u7684\u662F\u300C\u6846\u5957\u6846\u300D\u3002\n * \u73B0\u5728\u7167 `.tita-kbDocRow` \u7684\u505A\u6CD5\uFF1A**\u5E38\u6001\u8FB9\u6846\u900F\u660E**\uFF0Chover \u624D\u663E\u8FB9\u6846 + \u6D45\u5E95\u3002\n * \u987A\u5E26\u4FEE\u6389\u539F\u6765\u7684\u7A7A\u8F6C\u89C4\u5219\uFF1A`\uFF1Ahover` \u7ED9\u7684\u53D6\u503C\u4E0E\u5E38\u6001\u5B8C\u5168\u76F8\u540C\uFF0C\u7B49\u4E8E\u6CA1\u6709\u53CD\u9988\u3002\n */\n.tita-cardRow { display: grid; min-width: 0; gap: 4px; border: 1px solid transparent; border-radius: 8px; padding: 6px 8px; }\n.tita-cardRowHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 6px; }\n.tita-cardRowTitle { min-width: 0; overflow: hidden; color: var(--tita-ink); font-size: 11.5px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }\n.tita-cardRowCoordinate { min-width: 0; overflow: hidden; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }\n/* \u6458\u8981\u53EA\u51FA\u73B0\u5728**\u62BD\u5C49\u91CC**\u90A3\u4EFD\u5217\u8868\uFF08\u90A3\u4E00\u5C4F\u662F\u9010\u6761\u6838\u5BF9\u7684\uFF0C\u4E0D\u662F\u626B\u7684\uFF09\u3002 */\n.tita-cardRowText { margin: 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n/* 0025\uFF1A\u5361\u7247\u884C\u53D8\u6210\u53EF\u70B9\u5165\u53E3\uFF08\u70B9\u5F00\u770B\u5185\u5BB9\u4E0E\u7248\u672C\uFF09\u3002\u6309\u94AE\u8981\u62B9\u6389\u6D4F\u89C8\u5668\u9ED8\u8BA4\u5916\u89C2\uFF0C\n \u540C\u65F6\u4FDD\u7559 `.tita-cardRow` \u7684\u7F51\u683C\u6392\u7248 \u2014\u2014 \u5426\u5219\u6587\u5B57\u4F1A\u6389\u5230\u6309\u94AE\u9ED8\u8BA4\u7684\u5C45\u4E2D\u6837\u5F0F\u91CC\u3002 */\n.tita-cardRowMain { display: grid; width: 100%; gap: 3px; border: 0; background: none; padding: 0; color: inherit; font: inherit; text-align: left; cursor: pointer; }\n/*\n * \u5361\u7247\u884C\u662F**\u4E09\u884C\uFF0C\u5206\u5DE5\u5199\u6B7B**\uFF1A\n * \u7B2C\u4E00\u884C\u662F\u6807\u9898 \u2014\u2014 \u56DE\u7B54\u300C\u8FD9\u662F\u54EA\u4E00\u5F20\u300D\uFF1B\n * \u7B2C\u4E8C\u884C\u662F\u5750\u6807 \u2014\u2014 \u56DE\u7B54\u300C\u5C5E\u4E8E\u54EA\u4E2A\u5BF9\u8C61 / \u573A\u666F / \u52A8\u4F5C\u300D\uFF1B\n * \u7B2C\u4E09\u884C\u662F\u8FD9\u5F20\u5361\u7247\u7684\u4E8B\u5B9E \u2014\u2014 \u72B6\u6001 / review / \u95EE\u9898\u70B9 / \u66F4\u65B0\u65F6\u95F4\u3002\n *\n * \u4E3A\u4EC0\u4E48\u4E0D\u662F\u4E00\u884C\uFF1A\u90A3\u4E00\u884C\u539F\u6765\u585E\u4E86\u4E03\u6837\u4E1C\u897F\uFF08\u72B6\u6001\u3001\u6807\u9898\u3001\u4E09\u679A\u5FBD\u6807\u3001\u65F6\u95F4\uFF09\uFF0C\u9760\n * `flex-wrap` \u6536\u5C3E\u3002\u7A84\u680F\uFF08380\u2013420px\uFF09\u4E0B\u5B83\u4F1A\u6298\u6210\u4E09\u884C\uFF0C\u800C\u6298\u5728\u54EA\u91CC\u53D6\u51B3\u4E8E\u6807\u9898\u6709\u591A\u957F \u2014\u2014\n * \u540C\u4E00\u4EFD\u5217\u8868\u91CC\u6BCF\u5F20\u5361\u7247\u7684\u9AD8\u5EA6\u90FD\u4E0D\u4E00\u6837\uFF0C\u626B\u7684\u65F6\u5019\u773C\u775B\u6CA1\u6709\u843D\u70B9\u3002\u5206\u6210\u4E09\u884C\u4E4B\u540E\uFF0C\u6807\u9898\u3001\u5750\u6807\n * \u548C\u72B6\u6001\u4E8B\u5B9E\u5404\u6709\u81EA\u5DF1\u7684\u9605\u8BFB\u4F4D\u7F6E\u3002\n *\n * \u7B2C\u4E09\u884C**\u53EA\u6709\u4E00\u4E2A\u9605\u8BFB\u65B9\u5411**\uFF1A\u6240\u6709\u5B57\u6BB5\u5DE6\u5BF9\u9F50\uFF0C\u65E5\u671F\u4E5F\u8DDF\u7740\u8D70\u3002\n */\n.tita-cardRowMeta { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 10.5px; }\n/* \u5B57\u6BB5\u4E4B\u95F4\u7684\u5206\u9694\u70B9\u3002\u5B83\u662F\u6392\u7248\uFF0C\u4E0D\u662F\u5185\u5BB9\u3002 */\n.tita-cardRowSep { color: var(--tita-line-strong); }\n/*\n * \u72B6\u6001\uFF1A\u4E00\u4E2A\u5706\u70B9 + \u4E24\u4E2A\u5B57\u3002\n *\n * \u6B64\u524D\u5B83\u662F\u4E00\u679A 23px \u9AD8\u300111px/650 \u7684\u82F1\u6587\u80F6\u56CA\uFF08`unreviewed`\uFF09\u2014\u2014 \u6BD4 11.5px \u7684\u6807\u9898\u8FD8\u91CD\uFF0C\n * \u800C\u300C\u6CA1\u4EBA\u770B\u8FC7\u300D\u5176\u5B9E\u662F\u8FD9\u4E00\u884C\u91CC\u6700\u4E0D\u9700\u8981\u7ACB\u523B\u8BFB\u7684\u4E8B\u5B9E\u3002\u73B0\u5728\u5706\u70B9\u627F\u62C5\u989C\u8272\u3001\u6587\u5B57\u627F\u62C5\u542B\u4E49\uFF0C\n * \u91CD\u91CF\u4EA4\u8FD8\u7ED9\u6807\u9898\u3002\u72B6\u6001\u503C\u672C\u8EAB\u662F schema \u91CC\u7684\u82F1\u6587 id\uFF0C\u4EBA\u8BDD\u6620\u5C04\u5728 `WikiCardRow.tsx`\u3002\n */\n/* \u72B6\u6001\u7684**\u6807\u7B7E**\uFF08\u4E00\u4E2A\u5706\u70B9 + \u4E00\u884C\u5C0F\u5B57\uFF09\u3002\u5361\u7247\u5217\u8868\u4E0E\u77E5\u8BC6\u5217\u8868\u5171\u7528\u4E00\u4EFD\u5B9A\u4E49\uFF1A\u4E24\u5904\u95EE\u7684\u662F\u540C\u4E00\u4EF6\u4E8B\n \uFF08\u8FD9\u4E1C\u897F\u73B0\u5728\u7B97\u4E0D\u7B97\u6570\uFF09\uFF0C\u5916\u89C2\u5C31\u4E0D\u8BE5\u6709\u4E24\u5957\u3002 */\n.tita-statusTag { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.5; white-space: nowrap; }\n.tita-statusDot { display: block; width: 5px; height: 5px; flex: 0 0 auto; border-radius: 999px; background: var(--tita-ink-faint); }\n.tita-statusTag[data-tone="ok"] { color: var(--tita-tone-green); }\n.tita-statusTag[data-tone="ok"] .tita-statusDot { background: var(--tita-tone-green); }\n.tita-statusTag[data-tone="warn"] { color: var(--tita-tone-amber); }\n.tita-statusTag[data-tone="warn"] .tita-statusDot { background: var(--tita-tone-amber); }\n.tita-statusTag[data-tone="off"] { color: var(--tita-ink-faint); }\n.tita-statusTag[data-tone="off"] .tita-statusDot { background: var(--tita-line-strong); }\n/*\n * \u300C\u8981\u4F60\u52A8\u624B\u300D\u7684\u4E24\u6837\uFF1A\u672A\u590D\u6838\u72B6\u6001\u4E0E\u88AB\u6807\u51FA\u6765\u7684\u5F02\u5E38\u70B9\u3002\n * \u5B83\u4EEC\u662F\u8FD9\u4E00\u884C\u91CC\u552F\u4E00\u503C\u5F97\u7528\u989C\u8272\u558A\u4E00\u58F0\u7684\u4FE1\u606F\uFF0C\u5176\u4F59\u90FD\u662F\u80CC\u666F\u4E8B\u5B9E\u3002\n */\n.tita-cardRowSignal { color: var(--tita-tone-amber); font-weight: 650; white-space: nowrap; }\n/* \u65E5\u671F\u8DDF\u7740 meta \u5DE6\u5BF9\u9F50\uFF08\u4E0D\u518D `margin-left: auto`\uFF09\uFF1B\u7B49\u5BBD\u6570\u5B57\uFF0C\u626B\u7684\u65F6\u5019\u4E0D\u4F1A\u8DF3\u3002 */\n.tita-cardRowTime { color: var(--tita-ink-faint); font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-cardRow:hover { border-color: var(--tita-line); background: var(--tita-surface-muted); }\n.tita-cardRow:focus-within { border-color: var(--tita-primary-line); background: var(--tita-surface-muted); }\n\n/* \u77E5\u8BC6\u5E93\u7684\u6B65\u9AA4\u8F68\uFF1A**\u4E00\u6761\u6D41\u6C34\u7EBF\uFF0C\u4E0D\u662F\u4E00\u6392\u5E76\u5217\u7684 tab**\u3002\n \u6536\u5F55 \u2192 \u7F16\u8BD1 \u2192 \u5173\u8054 \u2192 \u68C0\u7D22 \u2192 \u7CBE\u6392\uFF0C\u6B65\u4E0E\u6B65\u4E4B\u95F4\u7528\u7BAD\u5934\u8FDE\u8D77\u6765 \u2014\u2014 \u65B9\u5411\u672C\u8EAB\u5C31\u662F\u4FE1\u606F\n \uFF08\u5199\u5165\u4FA7\u5728\u5DE6\u3001\u8BFB\u53D6\u4FA7\u5728\u53F3\uFF09\uFF0C\u800C\u4E00\u6392\u7B49\u5BBD\u6309\u94AE\u628A\u5B83\u62B9\u6389\u4E86\u3002\n \u7A84\u680F\u4E0B\u6362\u884C\u800C\u4E0D\u662F\u6A2A\u5411\u6EDA\u52A8\uFF1A\u85CF\u8D77\u6765\u7684\u90A3\u4E24\u6B65\u7B49\u4E8E\u4E0D\u5B58\u5728\u3002 */\n.tita-kbSteps { display: flex; min-width: 0; flex-wrap: wrap; align-items: stretch; gap: 4px; }\n.tita-kbStepGroup { display: flex; min-width: 0; flex: 1 1 122px; align-items: stretch; gap: 4px; }\n.tita-kbStepGroup .tita-kbStep { flex: 1 1 122px; }\n/* \u6B65\u9AA4\u8F68\u4E0A\u7684\u7BAD\u5934\u3002**\u5B83\u662F\u65B9\u5411\uFF0C\u4E0D\u662F\u88C5\u9970** \u2014\u2014 \u8FD9\u6761\u8F68\u8981\u56DE\u7B54\u7684\u662F\u300C\u8C01\u63A5\u8C01\u300D\uFF0C\u6240\u4EE5\u7BAD\u5934\u5F97\u770B\u5F97\u89C1\u3002\n \u6B64\u524D\u662F 13px \u7684 `ChevronRight` + `--tita-line-strong`\uFF08#d0d5dd\uFF09\uFF1A\u6BD4\u5361\u7247\u81EA\u5DF1\u7684\u63CF\u8FB9\n \uFF08`--tita-line`\uFF0C#e4e7ec\uFF09\u6DF1\u4E0D\u4E86\u591A\u5C11\uFF0C\u53C8\u6CA1\u6709\u7BAD\u6746\uFF0C\u5728\u4E24\u4E2A\u72EC\u7ACB\u65B9\u5757\u4E4B\u95F4\u8BFB\u8D77\u6765\u50CF\u4E00\u679A\u5206\u9694\u7B26\u3002\n \u73B0\u5728\u6362\u6210 `ArrowRight` 16px + `--tita-ink-faint`\uFF08#667085\uFF09\uFF1A\u4E0E\u6B65\u9AA4\u7684\u56FE\u6807\u540C\u4E00\u7EA7\n \uFF08\u540D\u5B57\u662F `--tita-ink`\uFF0C\u56FE\u6807\u662F `--tita-ink-faint`\uFF09\uFF0C\u65B9\u5411\u4E00\u773C\u770B\u5F97\u51FA\uFF0C\u4ECD\u4E0D\u62A2\u6B65\u9AA4\u672C\u8EAB\u7684\u6CE8\u610F\u529B\u3002\n \u77E5\u8BC6\u5E93\u90A3\u6761\u8F68\u4E0E\u53EC\u56DE\u90A3\u6761\u8F68\u5171\u7528\u8FD9\u4E2A\u7C7B\uFF1B\u5B83\u662F\u6309\u94AE\u4E4B\u95F4\u7684\u72EC\u7ACB flex item\uFF0C\u4E0D\u5C5E\u4E8E\u4EFB\u4F55\u8282\u70B9\u3002 */\n.tita-kbStepArrow { display: inline-flex; flex: 0 0 auto; align-items: center; align-self: center; color: var(--tita-ink-faint); }\n.tita-kbStep {\n display: grid;\n /* `box-sizing` \u663E\u5F0F\u5199\u6B7B\uFF1A\u8FD9\u4E00\u6B65\u7684\u57FA\u51C6\u5BBD\u662F 132px\uFF0C\u800C padding + border \u6709 20px\u3002\n content-box \u4E0B\u5916\u5C42\u53D8\u5BBD\uFF0C\u6B65\u9AA4\u8F68\u4F1A\u8FC7\u65E9\u6362\u884C\uFF1B\u8FDE\u63A5\u7BAD\u5934\u5355\u72EC\u5360\u4F4D\uFF0C\u4E0D\u80FD\u88AB\u8282\u70B9\u5185\u5BB9\u541E\u6389\u3002 */\n box-sizing: border-box;\n min-width: 0;\n /* \u57FA\u51C6\u5BBD 122px\u3002**\u5B83\u53EA\u662F\u4E0B\u9650\uFF0C\u4E0D\u662F\u300C\u4E00\u884C\u653E\u51E0\u4E2A\u300D\u7684\u627F\u8BFA** \u2014\u2014 \u5BBF\u4E3B\u4FA7\u680F\u53EA\u6709\n 380\u2013420px\uFF0C\u800C\u56DB\u4E2A\u6B65\u9AA4\u6BCF\u4E2A\u90FD\u8981\u88C5\u4E0B\u300C\u540D\u5B57 + \u52A8\u4F5C + \u8BA1\u6570\u300D\uFF0C\u4E24\u884C\u662F\u5E38\u6001\u3002\n 122px \u8BA9\u5B83\u5728\u80FD\u6392\u4E0B\u4E09\u4E2A\u65F6\u6392\u4E09\u4E2A\uFF0C\u6392\u4E0D\u4E0B\u5C31\u4E24\u4E2A\u4E00\u884C\uFF1B`flex-grow: 1` \u518D\u628A\n \u6BCF\u884C\u7684\u5269\u4F59\u5BBD\u5EA6\u644A\u7ED9\u8FD9\u4E00\u884C\u7684\u683C\u5B50\u3002\n \u6362\u884C\u672C\u8EAB\u4E0D\u6784\u6210\u7F3A\u9677\uFF1B\u8FDE\u63A5\u7BAD\u5934\u662F\u72EC\u7ACB\u5143\u7D20\uFF0C\u59CB\u7EC8\u4F4D\u4E8E\u76F8\u90BB\u8282\u70B9\u4E4B\u95F4\u3002 */\n flex: 1 1 122px;\n gap: 2px;\n border: 1px solid var(--tita-line);\n border-radius: 9px;\n background: var(--tita-surface);\n padding: 7px 9px;\n color: inherit;\n font: inherit;\n text-align: left;\n cursor: pointer;\n transition: border-color 140ms ease, background 140ms ease;\n}\n.tita-kbStep:hover { border-color: var(--tita-line-strong); background: var(--tita-surface-muted); }\n.tita-kbStep:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n/* \u5F53\u524D\u6B65\uFF1A\u4E0D\u662F\u300C\u5DF2\u9009\u4E2D\u300D\u7684\u9AD8\u4EAE\uFF0C\u800C\u662F\u300C\u4F60\u73B0\u5728\u7AD9\u5728\u8FD9\u4E00\u6BB5\u7684\u54EA\u4E00\u683C\u300D\u3002\n \u7528\u5DE6\u4FA7 3px \u5F3A\u8C03\u6761\u4E4B\u5916\u7684\u6574\u5708\u63CF\u8FB9 + \u6D45\u5E95\u6765\u8868\u8FBE\uFF0C\u907F\u514D\u548C\u5361\u7247\u5957\u5361\u7247\u6DF7\u5728\u4E00\u8D77\u3002 */\n.tita-kbStepOn { border-color: var(--tita-primary); background: var(--tita-primary-soft); box-shadow: inset 0 0 0 1px var(--tita-primary); }\n.tita-kbStepTop { display: flex; min-width: 0; align-items: center; gap: 5px; color: var(--tita-ink); }\n.tita-kbStepTop svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-kbStepOn .tita-kbStepTop svg { color: var(--tita-primary); }\n.tita-kbStepTop b { min-width: 0; overflow: hidden; font-size: 12px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }\n/* \u52A8\u4F5C\u8BCD\uFF1A**\u7B2C\u4E8C\u884C\u7B2C\u4E00\u4E2A**\uFF0C\u4E0E\u8BA1\u6570\u540C\u4E00\u884C\u3002\u5B83\u4E0D\u7F29\uFF08`0 0 auto`\uFF09\u2014\u2014 \u300C\u62BD\u53D6 \xB7 \u5F52\u4E00\u300D\n \u7F29\u6210\u4E00\u4E2A\u5B57\u5C31\u6CA1\u6709\u610F\u4E49\u4E86\uFF1B\u8BA9\u4F4D\u7684\u662F\u53F3\u8FB9\u90A3\u53E5\u8BF4\u660E\u3002 */\n.tita-kbStepVerb { flex: 0 0 auto; border-radius: 4px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 0 4px; font-size: 9.5px; font-style: normal; font-weight: 650; white-space: nowrap; }\n.tita-kbStepOn .tita-kbStepVerb { background: var(--tita-primary-soft); color: var(--tita-primary); }\n/* \u7B2C\u4E8C\u884C\uFF1A\u8FD9\u4E00\u6BB5\u7684\u771F\u5B9E\u8BA1\u6570\uFF08\u9192\u76EE\uFF09+ \u5B83\u505A\u4EC0\u4E48\uFF08\u6B21\u8981\uFF0C\u653E\u4E0D\u4E0B\u5C31\u7701\u7565\uFF09\u3002 */\n.tita-kbStepFacts { display: flex; min-width: 0; align-items: baseline; gap: 5px; overflow: hidden; }\n.tita-kbStepValue { flex: 0 0 auto; color: var(--tita-ink); font-size: 10px; font-weight: 650; white-space: nowrap; font-variant-numeric: tabular-nums; }\n/* \u8BF4\u660E\u524D\u9762\u52A0\u4E00\u679A\u5206\u9694\u70B9\uFF1A`topK 10` \u548C `hybrid \u4E09\u8DEF\u878D\u5408` \u76F4\u63A5\u76F8\u90BB\u4F1A\u8BFB\u6210 `10hybrid`\u3002 */\n.tita-kbStepNote { flex: 1 1 0; min-width: 0; overflow: hidden; color: var(--tita-ink-faint); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbStepNote::before { content: \'\xB7\'; margin-right: 5px; color: var(--tita-line-strong); }\n\n/* \u77E5\u8BC6\u56FE\u8C31\u5206\u680F\u7684\u8282\u70B9\u6E05\u5355\u6837\u5F0F\uFF08`.tita-graphList` \u7B49\u56DB\u6761\uFF09\u968F\u90A3\u4E00\u680F\u64A4\u6389\uFF082026-10-05\uFF09\uFF1A\n \u5B83\u81EA 0027 \u8D77\u5C31\u6CA1\u6709\u4F7F\u7528\u8005\u4E86 \u2014\u2014 \u6E05\u5355\u65E9\u5C31\u6362\u6210\u4E86\u753B\u5E03\uFF0C\u800C\u753B\u5E03\u8FD9\u4E00\u7248\u4E5F\u4E00\u8D77\u5220\u4E86\u3002 */\n\n/* \u91CD\u6392\u5206\u680F\uFF1A\u4EA4\u4ED8\u7ED9 Agent Context \u7684 topN\u3002\u5E8F\u53F7\u662F\u5B83\u7684\u9605\u8BFB\u987A\u5E8F\uFF0C\u6240\u4EE5\u7528\u7B49\u5BBD\u6570\u5B57\u5217\u3002 */\n\n/* ======================================================================\n \u53F0\u8D26\u4E16\u754C\u7684\u57FA\u7EBF\uFF08docs/issue/0026\uFF09\n ----------------------------------------------------------------------\n \u8FD9\u4E00\u6BB5\u7BA1\u7684\u662F\u300C\u6211\u4EEC\u6CA1\u6709\u753B\u3001\u4F46\u5B83\u7167\u6837\u5728\u4EA4\u4ED8\u8BBE\u8BA1\u300D\u7684\u90A3\u4E9B\u90E8\u5206\uFF1A\u9009\u533A\u3001\u5149\u6807\u3001\n \u6EDA\u52A8\u6761\u3001\u7126\u70B9\u73AF\u3001\u4E0B\u5212\u7EBF\u504F\u79FB\u3001\u6570\u5B57\u7684\u5B57\u5F62\u3002\u5B83\u4EEC\u5168\u90E8\u6765\u81EA\u6D4F\u89C8\u5668\u9ED8\u8BA4\u503C\uFF0C\u5C5E\u4E8E\u4EFB\u4F55\n \u8BBE\u8BA1\u7CFB\u7EDF\u4E4B\u5916\u2014\u2014\u4E5F\u6B63\u56E0\u5982\u6B64\uFF0C\u5B83\u4EEC\u662F\u300C\u8FD9\u4E2A\u754C\u9762\u88AB\u5EFA\u9020\u8FC7\u300D\u6700\u4FBF\u5B9C\u7684\u8BC1\u636E\u3002\n ====================================================================== */\n\n/* \u6807\u9898\u4E0E\u6B63\u6587\u540C\u4E00\u4E2A\u65E0\u886C\u7EBF\u65CF\uFF0C\u5C42\u7EA7\u53EA\u9760\u5B57\u91CD\u4E0E\u5B57\u53F7 \u2014\u2014 \u4E13\u4E1A\u5DE5\u5177\u754C\u9762\u91CC\u6CA1\u6709\u7B2C\u4E8C\u79CD\u5B57\u4F53\u3002\n \uFF080026 \u66FE\u7ECF\u5728\u8FD9\u91CC\u4E0A\u5B8B\u4F53\uFF0C\u90A3\u662F\u628A\u300C\u53F0\u8D26\u300D\u505A\u6210\u4E86\u300C\u6587\u5B66\u300D\u3002\uFF09 */\n.tita-panel h1,\n.tita-panel h2,\n.tita-panel h3,\n.tita-panel h4 { font-family: var(--font-tita); font-weight: 700; letter-spacing: 0; }\n\n/* \u6807\u9898\u91CC\u7684\u56FE\u6807\uFF1Aicon \u76F4\u63A5\u8FDB\u6807\u9898\uFF0C\u4E0D\u518D\u5728\u6807\u9898\u4E0A\u65B9\u53E6\u8D77\u4E00\u4E2A\u82F1\u6587\u5C0F\u6807\u7B7E\u3002\n kicker \u4E0D\u589E\u52A0\u4FE1\u606F\uFF0C\u53EA\u589E\u52A0\u4E00\u5C42\u8981\u8BFB\u7684\u4E1C\u897F \u2014\u2014 \u4E00\u4E2A\u4E2D\u6587\u6807\u9898\u4E0A\u9762\u9876\u4E00\u884C\n \u300CSOURCE RAW\u300D\u300CINGEST SETTINGS\u300D\uFF0C\u8BFB\u8005\u5F97\u5148\u8DF3\u8FC7\u5B83\u624D\u77E5\u9053\u81EA\u5DF1\u5728\u770B\u4EC0\u4E48\u3002 */\n.tita-panel h2 > svg,\n.tita-panel h3 > svg { margin-right: 6px; vertical-align: -2px; color: var(--tita-ink-faint); }\n\n/* \u6570\u5B57\u3001id\u3001\u7248\u672C\u53F7\uFF1A\u7B49\u5BBD + tabular\u3002\u5B83\u4EEC\u662F**\u6D4B\u91CF\u503C**\uFF0C\u4E0D\u662F"\u6280\u672F\u611F"\u7684\u88C5\u9970\uFF0C\n \u6240\u4EE5\u5217\u4E0E\u5217\u4E4B\u95F4\u7684\u6570\u5B57\u5FC5\u987B\u5BF9\u9F50\u3002 */\n.tita-kbCode,\n.tita-panel code,\n.tita-hitScore,\n.tita-archPanelRecords dd,\n.tita-infoList strong,\n.tita-metricCopy strong,\n.tita-archPanelMetric b,\n.tita-archBarCounts { font-variant-numeric: tabular-nums; }\n.tita-panel code, .tita-kbCode { font-family: var(--font-tita-mono); }\n\n/* \u9009\u533A\uFF1A\u7EB8\u4E0A\u7684\u58A8\u3002\u9ED8\u8BA4\u7684\u6D4F\u89C8\u5668\u84DD\u4F1A\u628A\u53F0\u8D26\u7684\u6696\u5E95\u6253\u7A7F\u3002 */\n.tita-panel ::selection { background: var(--tita-primary-soft); color: var(--tita-ink); }\n\n/* \u5149\u6807\u7528\u58A8\u8272\uFF0C\u4E0D\u7528\u6731\u7EA2\u2014\u2014\u6731\u7EA2\u5728\u8FD9\u4E2A\u4E16\u754C\u91CC\u53EA\u6709\u4E00\u4E2A\u542B\u4E49\uFF08\u6539\u52A8 / \u5F02\u5E38 / \u5F85\u5B9E\u73B0\uFF09\uFF0C\n \u5149\u6807\u4E0D\u662F"\u6539\u52A8"\u3002 */\n.tita-panel input,\n.tita-panel textarea { caret-color: var(--tita-ink); }\n\n/* \u7126\u70B9\u73AF\uFF1A\u58A8\u8272\u5B9E\u7EBF + \u504F\u79FB\uFF0C\u50CF\u5728\u7EB8\u4E0A\u6846\u51FA\u8FD9\u4E00\u680F\u3002\u4E0D\u9760\u8272\u76F8\uFF0C\u4E5F\u5C31\u4E0D\u548C\u6731\u7EA2\u7684\u8BED\u4E49\u6253\u67B6\u3002\n 0035\uFF1A\u62BD\u5C49\u8D70 Portal\uFF0C**\u4E0D\u5728 `.tita-panel` \u91CC** \u2014\u2014 \u53EA\u5199 `.tita-panel :focus-visible`\n \u4F1A\u8BA9\u6D6E\u5C42\u9000\u56DE\u6D4F\u89C8\u5668\u9ED8\u8BA4\u7684\u7126\u70B9\u73AF\uFF08\u4E00\u6761\u4E0D\u5C5E\u4E8E\u8FD9\u5957\u914D\u8272\u7684\u84DD\u8272 `auto` \u63CF\u8FB9\uFF09\uFF0C\u800C\u5B83\u6070\u597D\n \u662F\u6253\u5F00\u9884\u89C8\u62BD\u5C49\u65F6\u7B2C\u4E00\u4E2A\u88AB\u81EA\u52A8\u805A\u7126\u7684\u5730\u65B9\uFF08\u9884\u89C8\u5185\u5BB9\u7684 `<summary>`\uFF09\u3002\u6240\u4EE5\u6D6E\u5C42\n \u663E\u5F0F\u5171\u7528\u540C\u4E00\u6761\u89C4\u5219\u3002\n\n 2026-10-02\uFF1A\u7956\u5148\u90A3\u4E00\u8282\u6539\u6210 `:where()`\u3002\u8FD9\u6761\u89C4\u5219\u662F**\u515C\u5E95**\uFF08\u7ED9\u6CA1\u6709\u81EA\u5DF1\u58F0\u660E\u7126\u70B9\u6001\u7684\n \u5143\u7D20\u4E00\u4E2A\u73AF\uFF09\uFF0C\u800C\u5B83\u7684\u7279\u5F02\u6027\u4E00\u76F4\u662F (0,2,0)\uFF0C\u4E0E\u8BBE\u8BA1\u7CFB\u7EDF\u91CC\u63A7\u4EF6\u81EA\u5DF1\u7684\n `.focus-visible\\:outline-\u2026:focus-visible` **\u6253\u6210\u5E73\u624B** \u2014\u2014 \u6253\u6210\u5E73\u624B\u5C31\u7531\u987A\u5E8F\u51B3\u5B9A\uFF0C\n \u800C\u63D2\u4EF6\u7684\u6837\u5F0F\u8868\u5728\u5171\u4EAB\u6837\u5F0F\u8868**\u4E4B\u540E**\u52A0\u8F7D\uFF0C\u4E8E\u662F\u515C\u5E95\u53CD\u800C\u8D62\uFF1A\n\n - \u8F93\u5165\u6846\u7684\u7126\u70B9\u73AF\u4ECE\u300C3px \u4E3B\u8272\u6D45\u6655\u300D\u53D8\u6210\u300C2px \u58A8\u8272\u5B9E\u7EBF\u300D\uFF0C\u548C\u5B83\u81EA\u5DF1\u7684\n `border-tita-primary` \u53E0\u6210**\u4E24\u9053\u4E0D\u540C\u989C\u8272\u7684\u6846**\uFF08\u5B9E\u673A\u53CD\u9988\u7684\u539F\u8BDD\u662F\u300C\u592A\u4E11\u300D\uFF09\uFF1B\n - \u8FDE\u5706\u89D2\u90FD\u88AB\u8FD9\u6761\u89C4\u5219\u6309 4px \u6539\u6389\uFF0C\u800C\u8F93\u5165\u6846\u81EA\u5DF1\u662F 7px \u2014\u2014 \u805A\u7126\u7684\u4E00\u77AC\u95F4\u6846\u89D2\u4F1A\u7F29\u4E00\u4E0B\u3002\n\n `:where()` \u7684\u6743\u91CD\u662F 0\uFF0C\u4E8E\u662F\u8FD9\u6761\u89C4\u5219\u9000\u56DE\u5B83\u8BE5\u6709\u7684\u4F4D\u7F6E\uFF1A\u63A7\u4EF6\u58F0\u660E\u4E86\u5C31\u7528\u63A7\u4EF6\u7684\uFF0C\n \u6CA1\u58F0\u660E\u5C31\u7528\u8FD9\u6761\u58A8\u8272\u73AF\u3002 */\n:where(.tita-panel) :focus-visible,\n:where(.tita-drawer) :focus-visible,\n:where(.tita-settingsDrawer) :focus-visible { outline: 2px solid var(--tita-ink); outline-offset: 2px; border-radius: 4px; }\n\n/* \u94FE\u63A5\uFF1A\u4E0B\u5212\u7EBF\u504F\u79FB\u4E0E\u7C97\u7EC6\u4E5F\u5C5E\u4E8E\u8BBE\u8BA1\u7CFB\u7EDF\u7684\u4E00\u90E8\u5206\u3002 */\n.tita-panel a { text-underline-offset: 2px; text-decoration-thickness: 1px; }\n\n/* \u6EDA\u52A8\u6761\uFF1A\u63D2\u4EF6\u81EA\u5DF1\u62E5\u6709\u6EDA\u52A8\u533A\uFF08`.tita-content` \u662F\u552F\u4E00\u7EB5\u5411\u6EDA\u52A8\u6761\uFF09\uFF0C\n \u6240\u4EE5\u5B83\u5FC5\u987B\u4ECE\u8C03\u8272\u677F\u4E0A\u8272\uFF0C\u5426\u5219\u6574\u5757\u7EB8\u5E95\u4F1A\u8D34\u7740\u4E00\u6839\u7CFB\u7EDF\u7070\u6761\u3002 */\n.tita-panel * { scrollbar-width: thin; scrollbar-color: var(--tita-line-strong) transparent; }\n.tita-panel ::-webkit-scrollbar { width: 10px; height: 10px; }\n.tita-panel ::-webkit-scrollbar-track { background: transparent; }\n.tita-panel ::-webkit-scrollbar-thumb { border: 3px solid transparent; border-radius: 999px; background-clip: content-box; background-color: var(--tita-line-strong); }\n.tita-panel ::-webkit-scrollbar-thumb:hover { background-color: var(--tita-ink-faint); }\n.tita-panel ::-webkit-scrollbar-corner { background: transparent; }\n\n/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n \u667A\u80FD\u5F52\u56E0\u56FE\u8C31 \xB7 \u52A8\u7EBF\u89C6\u89D2\u7684\u6CF3\u9053\u5E26\uFF080021 \xA77.7\uFF09\n\n \u5B83\u53E0\u5728 G6 \u753B\u5E03\u4E0A\uFF0C\u53EA\u8D1F\u8D23\u300C\u8FD9\u4E00\u6BB5\u662F\u4EC0\u4E48\u3001\u8FD9\u4E00\u6BB5\u6709\u51E0\u4E2A\u3001\u54EA\u4E00\u6BB5\u65AD\u5728\u8FD9\u91CC\u300D\u3002\n \u4E24\u6761\u7EA6\u675F\u51B3\u5B9A\u5B83\u5FC5\u987B\u8FD9\u4E48\u5199\uFF1A\n\n 1. **\u6574\u5C42\u4E0D\u5403\u4E8B\u4EF6**\uFF08`pointer-events: none`\uFF0C\xA77.4 \u7B2C 10 \u6761\uFF09\uFF1A\u5E26\u5B50\u53EA\u8D1F\u8D23\u8BFB\uFF0C\n \u547D\u4E2D\u4E00\u5F8B\u843D\u5230\u753B\u5E03\u4E0A\uFF0C\u5426\u5219\u70B9\u8282\u70B9\u3001\u62D6\u753B\u5E03\u90FD\u4F1A\u88AB\u8FD9\u5C42\u541E\u6389\u3002\n 2. **\u5750\u6807\u7531 TS \u7B97**\uFF08`laneLayoutOf` \u7684 `top/left/width/height` \u8D70\u884C\u5185 style\uFF09\uFF1A\n \u8FD9\u91CC\u53EA\u63CF\u8FF0\u300C\u957F\u4EC0\u4E48\u6837\u300D\uFF0C\u4E0D\u63CF\u8FF0\u300C\u6446\u5728\u54EA\u300D\u3002\u540C\u4E00\u4EFD\u51E0\u4F55\u540C\u65F6\u5582\u753B\u5E03\u4E0E\u8FD9\u4E00\u5C42\uFF0C\n \u4E24\u5904\u4E0D\u53EF\u80FD\u5BF9\u4E0D\u4E0A\u3002\n\n \u989C\u8272\u5168\u90E8\u662F `color-mix()` \u6DF7\u51FA\u6765\u7684\uFF0C\u57FA\u5E95\u53D6\u5171\u4EAB\u4EE4\u724C \u2014\u2014 \u4E3B\u9898\u4E00\u6362\uFF0C\u5E26\u5B50\u8DDF\u7740\u8D70\uFF0C\n \u4E0D\u9700\u8981\u7B2C\u4E8C\u4EFD\u989C\u8272\u3002`--tita-band-tint` \u7531 React \u6309\u6BB5\u7ED9\uFF08\u5B9E\u4F8B\u5C42\u504F\u7425\u73C0\uFF0C\u5176\u4F59\u504F\u84DD\uFF09\u3002\n \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 */\n.tita-attrBand {\n position: absolute;\n /* 5% \u662F\u300C\u770B\u5F97\u51FA\u6709\u5206\u533A\u3001\u4F46\u7EDD\u4E0D\u548C\u8282\u70B9\u62A2\u6CE8\u610F\u529B\u300D\u7684\u90A3\u4E00\u6863\uFF1B\u6BB5\u5934\u5E26\u7A0D\u91CD\u4E00\u70B9\uFF089%\uFF09\uFF0C\n \u56E0\u4E3A\u5B83\u662F\u8FD9\u4E00\u6BB5\u552F\u4E00\u7684\u6587\u5B57\u951A\u70B9\u3002 */\n background: color-mix(in srgb, var(--tita-band-tint, var(--tita-tone-blue)) 5%, var(--tita-surface));\n border-radius: 8px;\n}\n.tita-attrBandHeader {\n display: flex;\n width: 100%;\n min-width: 0;\n align-items: center;\n /* \u4E0D\u6362\u884C\uFF1A\u6BB5\u5934\u9AD8 20px\uFF0C\u4E00\u6362\u884C\u5C31\u628A\u6BB5\u540D\u9876\u51FA\u5E26\u5B50\u3002\u653E\u4E0D\u4E0B\u7684\u90E8\u5206\u7531\u5404\u6BB5\u81EA\u5DF1\u7701\u7565\u3002 */\n flex-wrap: nowrap;\n gap: 6px;\n padding: 0 8px;\n background: color-mix(in srgb, var(--tita-band-tint, var(--tita-tone-blue)) 9%, var(--tita-surface));\n border-radius: 8px 8px 0 0;\n}\n/* \u6BB5\u5934\u5DE6\u4FA7\u90A3\u4E00\u5757\uFF08\u6BB5\u540D + \u8BA1\u6570 + \u8BFB\u6CD5\uFF09\u662F\u4E00\u4E2A\u6309\u94AE\uFF1A\u70B9\u5B83\u6536\u8D77 / \u5C55\u5F00\u8FD9\u4E00\u6BB5\u3002\n \u6309\u94AE\u7684\u9ED8\u8BA4\u5916\u89C2\u5FC5\u987B\u663E\u5F0F\u62B9\u6389 \u2014\u2014 \u6CA1\u6709 preflight \u65F6\u5B83\u7684\u5B57\u4F53\u3001\u5B57\u53F7\u3001\u5BF9\u9F50\u3001\u8FB9\u6846\u3001\n \u80CC\u666F\u90FD\u4F1A\u9000\u56DE\u6D4F\u89C8\u5668\u9ED8\u8BA4\u503C\uFF0C\u8868\u73B0\u51FA\u6765\u5C31\u662F\u300C\u6BB5\u5934\u7684\u5B57\u6BD4\u522B\u5904\u5927\u4E00\u53F7\u3001\u8FD8\u5E26\u4E00\u5708\u8FD1\u9ED1\u63CF\u8FB9\u300D\u3002 */\n.tita-attrBandHeadMain {\n display: flex;\n min-width: 0;\n flex: 1 1 auto;\n align-items: center;\n gap: 6px;\n padding: 0;\n border: 0;\n background: transparent;\n font: inherit;\n color: inherit;\n text-align: left;\n cursor: pointer;\n}\n/* \u4E0D\u80FD\u6536\u8D77 / \u5C55\u5F00\u7684\u6BB5\u5934\uFF08\u7A7A\u6BB5\u3001\u88AB\u5207\u9762\u5173\u6389\u7684\u6BB5\u3001\u53EA\u5269\u4E00\u4E2A\u8282\u70B9\u7684\u6BB5\uFF09\uFF1A\u7EAF\u8BFB\u6570\uFF0C\u4E0D\u8BE5\u770B\u8D77\u6765\u80FD\u70B9\u3002 */\n.tita-attrBandHeadMain:disabled { cursor: default; }\n.tita-attrBandHeadMain:not(:disabled):hover .tita-attrBandName { color: var(--tita-primary); }\n.tita-attrBandHeadMain:focus-visible { outline: 2px solid var(--tita-primary); outline-offset: 1px; border-radius: 4px; }\n/* \u2460 \u6BB5\u7684\u300C\u6362\u4E00\u4E2A\u73B0\u8C61\u300D\u5165\u53E3\u3002\u5B83\u662F**\u6362\u4E00\u6761\u52A8\u7EBF**\uFF0C\u4E0D\u662F\u7B5B\u9009 \u2014\u2014 \u6240\u4EE5\u505A\u6210\u6BB5\u5934\u4E0A\u7684\u5C0F\u6309\u94AE\uFF0C\n \u4E0D\u8FDB\u5DE6\u680F\u7684\u7B5B\u9009\u7EC4\uFF08\u90A3\u4F1A\u8BA9\u4EBA\u4EE5\u4E3A\u56FE\u88AB\u88C1\u6389\u4E86\uFF09\u3002 */\n.tita-attrBandPicks { display: flex; flex: 0 0 auto; align-items: center; gap: 4px; white-space: nowrap; }\n.tita-attrBandPicksLabel { color: var(--tita-ink-faint); font-size: 10px; }\n.tita-attrBandPick {\n padding: 1px 5px;\n border: 1px solid var(--tita-line-strong);\n border-radius: 5px;\n background: var(--tita-surface);\n color: var(--tita-ink-muted);\n font-family: var(--tita-mono);\n font-size: 10px;\n line-height: 14px;\n cursor: pointer;\n}\n.tita-attrBandPick:hover { border-color: var(--tita-primary); color: var(--tita-primary); }\n.tita-attrBandPick:focus-visible { outline: 2px solid var(--tita-primary); outline-offset: 1px; }\n/* \u88AB\u6536\u8D77 / \u88AB\u5173\u6389\u7684\u6BB5\uFF1A\u5E26\u5B50\u6C89\u4E0B\u53BB\uFF0C\u4E0E\u300C\u8FD9\u4E00\u6BB5\u662F\u7A7A\u7684\u300D\u533A\u5206\u5F00 \u2014\u2014\n \u7A7A\u6BB5\u4ECD\u7136\u662F\u6B63\u5E38\u5E95\u8272\uFF08\u5B83\u662F\u4E00\u6761\u5F85\u529E\uFF09\uFF0C\u800C\u6536\u8D77\u662F\u7528\u6237\u7684\u9009\u62E9\uFF0C\u89C6\u89C9\u4E0A\u8981\u9000\u5230\u540E\u9762\u3002 */\n.tita-attrBand[data-tita-lane-state=\'collapsed\'],\n.tita-attrBand[data-tita-lane-state=\'off\'] { opacity: .72; }\n/* \u6BB5\u540D\uFF1A\u8FD9\u4E00\u6BB5\u552F\u4E00\u5FC5\u987B\u8BFB\u5230\u7684\u5B57\u300211px / 650 \u8BA9\u5B83\u538B\u5F97\u4F4F\u8282\u70B9\u6807\u9898\uFF0810.5px / 600\uFF09\u3002 */\n.tita-attrBandName { flex: 0 0 auto; white-space: nowrap; color: var(--tita-ink); font-size: 11px; font-weight: 650; letter-spacing: -.01em; }\n/* \u8BA1\u6570\uFF1A\u7B49\u5BBD + \u8868\u683C\u6570\u5B57\uFF0C\u6BB5\u4E0E\u6BB5\u4E4B\u95F4\u626B\u4E00\u773C\u5C31\u80FD\u6BD4\u5927\u5C0F\u3002 */\n.tita-attrBandCount { flex: 0 0 auto; color: var(--tita-ink); font-family: var(--tita-mono); font-size: 11px; font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-attrBandCountDim { color: var(--tita-ink-faint); font-weight: 500; }\n/* \u6392\u5E8F\u4F9D\u636E\uFF08\u6216\u7A7A\u6BB5\u8BF4\u660E\uFF09\uFF1A\u6BB5\u5934\u53F3\u4FA7\u7684\u5F31\u5316\u6587\u5B57\u3002\u5B83\u662F\u300C\u8FD9\u4E00\u6BB5\u600E\u4E48\u8BFB\u300D\u7684\u8BFB\u6CD5\uFF0C\n \u4E0D\u662F\u6807\u9898\uFF0C\u6240\u4EE5\u4E0D\u62A2\u58A8\u8272\uFF1B\u4F46\u4ECD\u7136\u662F 10px \u7684\u6B63\u6587\u7EA7\u5BF9\u6BD4\u5EA6\uFF0C\u4E0D\u7528 ad-hoc \u7070\u3002 */\n.tita-attrBandHint {\n min-width: 0;\n flex: 1 1 auto;\n overflow: hidden;\n color: var(--tita-ink-faint);\n font-size: 10px;\n line-height: 1.3;\n text-align: right;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n/* \u5185\u5BB9\u5DE6\u6CBF\u7684\u4E00\u6761\u7AD6\u7EBF\uFF1A\u6BB5\u5934\u6587\u5B57\u4E0E\u8282\u70B9\u5DE6\u5BF9\u9F50\u5230\u540C\u4E00\u5217\uFF0C\u8FD9\u4E00\u6BB5\u624D\u8BFB\u8D77\u6765\u50CF\u4E00\u6BB5\u3002\n 1px \u4E14\u53EA\u6709\u6BB5\u9AD8\u7684\u4E00\u534A \u2014\u2014 \u5B83\u662F\u5BF9\u9F50\u63D0\u793A\uFF0C\u4E0D\u662F\u5206\u9694\u7EBF\u3002 */\n.tita-attrBandRule {\n position: absolute;\n top: 100%;\n bottom: 0;\n width: 1px;\n background: color-mix(in srgb, var(--tita-band-tint, var(--tita-tone-blue)) 26%, transparent);\n}\n\n/* ======================================================================\n \u7F16\u8BD1\uFF1A\u786E\u8BA4\u6D6E\u5C42\u4E0E\u8FDB\u5EA6\u5BF9\u8BDD\u6846\uFF082026-10-01\uFF09\n ----------------------------------------------------------------------\n \u56DB\u6BB5\u7684\u6BB5\u540D\u4E0E `WikiFlowCard` \u90A3\u5F20\u56FE**\u9010\u5B57\u76F8\u540C**\uFF1A\u540C\u4E00\u4E2A\u4E1C\u897F\u5728\u754C\u9762\u4E0A\u7684\u4E09\u5904\n \uFF08\u6D41\u7A0B\u56FE / \u8FDB\u5EA6 / \u7F16\u8BD1\u62A5\u544A\uFF09\u5FC5\u987B\u662F\u540C\u4E00\u5957\u8BCD\u3002\n ====================================================================== */\n.tita-compileConfirm { max-width: 440px; }\n.tita-compileConfirmBody { margin: 0; color: var(--tita-ink-muted); font-size: 12.5px; line-height: 1.7; }\n/* \u4EE3\u4EF7\u9010\u6761\u5217\uFF1A\u6A21\u7CCA\u7684\u786E\u8BA4\u6846\u7B49\u4E8E\u6CA1\u6709\u786E\u8BA4\u6846\uFF0C\u6240\u4EE5\u300C\u8981\u91CD\u5207\u591A\u5C11\u4E1C\u897F\u300D\u5FC5\u987B\u5199\u6210\u6570\u5F97\u51FA\u6765\u7684\u8BDD\u3002 */\n.tita-compileConfirmFacts { display: grid; margin: 10px 0 0; padding: 0; list-style: none; gap: 6px; }\n.tita-compileConfirmFacts > li { position: relative; padding-left: 14px; color: var(--tita-ink-faint); font-size: 11px; line-height: 1.7; }\n.tita-compileConfirmFacts > li::before { content: \'\'; position: absolute; inset-inline-start: 3px; inset-block-start: 7px; width: 4px; height: 4px; border-radius: 50%; background: var(--tita-line-strong); }\n\n/*\n * \u5BBD\u5EA6\u3002\n *\n * **\u5199 `width`\uFF0C\u4E0D\u5199 `max-width`\u3002** `DialogContent` \u4E0A\u5E26\u7684\u662F\n * `w-[min(420px,calc(100vw-32px))]` \u2014\u2014 \u4E00\u4E2A**\u56FA\u5B9A\u5BBD\u5EA6**\u3002\u56FA\u5B9A\u5BBD\u5EA6\u52A0\u4E00\u6761 `max-width`\n * \u7684\u7ED3\u679C\u662F `min(420, \u4F60\u5199\u7684\u90A3\u4E2A)`\uFF1A\u56DB\u4E2A\u5BF9\u8BDD\u6846\u91CC\u5199\u8FC7\u7684 `max-width: 560 / 620 / 760 / 980px`\n * \u56E0\u6B64**\u5168\u90E8\u662F\u7A7A\u64CD\u4F5C**\uFF0C\u5B83\u4EEC\u5B9E\u9645\u4E00\u76F4\u662F 420px \u5BBD\u3002\u8FD9\u6761\u6CE8\u91CA\u7559\u7740\uFF0C\u662F\u56E0\u4E3A\u8FD9\u4E2A\u9519\u770B\u8D77\u6765\n * \u5B8C\u5168\u6B63\u786E\uFF08\u300C\u9650\u5236\u6700\u5927\u5BBD\u5EA6\u300D\uFF09\uFF0C\u800C\u75C7\u72B6\u53EA\u662F\u300C\u7A84\u4E86\u4E00\u70B9\u300D\uFF0C\u6CA1\u6709\u4EBA\u4F1A\u53BB\u67E5\u3002\n *\n * `calc(100vw - 32px)` \u662F `DialogContent` \u81EA\u5DF1\u90A3\u4E00\u6863\u7684\u7A84\u5C4F\u515C\u5E95\uFF0C\u7167\u6284\u8FC7\u6765\u3002\n */\n.tita-compileDialog { width: min(560px, calc(100vw - 32px)); }\n.tita-compileHead { display: flex; align-items: center; justify-content: space-between; gap: 12px; }\n.tita-compileClock { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11.5px; font-variant-numeric: tabular-nums; }\n.tita-compileSub { margin: 2px 0 0; color: var(--tita-ink-faint); font-size: 11px; }\n.tita-compileBar { height: 6px; margin-top: 14px; border-radius: 3px; background: var(--tita-surface-muted); overflow: hidden; }\n.tita-compileBar > span { display: block; block-size: 100%; background: var(--tita-primary); transition: inline-size 400ms cubic-bezier(0.22, 0.61, 0.36, 1); }\n.tita-compileBarDone > span { background: var(--tita-tone-green); }\n.tita-compileRatio { margin: 7px 0 0; color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n.tita-compileSteps { display: grid; margin: 16px 0 0; padding: 0; list-style: none; gap: 2px; }\n.tita-compileStep { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; align-items: start; gap: 10px; border-radius: 9px; padding: 8px 10px; }\n.tita-compileStepDone { background: transparent; }\n.tita-compileDot { display: inline-flex; width: 20px; height: 20px; align-items: center; justify-content: center; border-radius: 50%; background: var(--tita-surface-muted); color: var(--tita-ink-faint); font-size: 10px; font-weight: 700; margin-top: 1px; }\n.tita-compileDotRunning { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-compileDotDone { background: var(--tita-tone-green); color: #ffffff; }\n/* \u8F6C\u5708\u53EA\u7ED9\u300C\u6B63\u5728\u8DD1\u300D\u7684\u90A3\u4E00\u6BB5\uFF0C\u800C\u4E14\u53EA\u5728 prefers-reduced-motion \u5141\u8BB8\u65F6\u8F6C\u3002\n \u5B83\u662F\u8FD9\u4E00\u5C4F\u552F\u4E00\u52A8\u7684\u4E1C\u897F \u2014\u2014 \u52A8\u6548\u5728\u8FD9\u91CC\u7684\u4F5C\u7528\u662F\u56DE\u7B54\u300C\u5B83\u8FD8\u5728\u8DD1\u5417\u300D\uFF0C\u4E0D\u662F\u88C5\u9970\u3002 */\n.tita-compileSpin { animation: tita-compile-spin 1.1s linear infinite; }\n@keyframes tita-compile-spin { to { transform: rotate(360deg); } }\n@media (prefers-reduced-motion: reduce) { .tita-compileSpin { animation: none; } .tita-compileBar > span { transition: none; } }\n.tita-compileStepBody { display: grid; gap: 3px; min-width: 0; }\n.tita-compileStepTitle { color: var(--tita-ink); font-size: 12.5px; font-weight: 650; }\n.tita-compileFacts { display: grid; gap: 1px; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-compileState { color: var(--tita-ink-faint); font-size: 10.5px; font-weight: 600; white-space: nowrap; margin-top: 3px; }\n.tita-compileOutcome { margin: 12px 0 0; border-radius: 9px; background: var(--tita-tone-green-tint); color: var(--tita-tone-green); padding: 9px 11px; font-size: 11.5px; line-height: 1.7; }\n.tita-compileOutcomeBad { background: var(--ddk-danger-tint); color: var(--tita-danger); }\n.tita-compileFooter { align-items: center; justify-content: space-between; gap: 12px; }\n.tita-compileHint { color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n\n/* ======================================================================\n \u7F16\u8BD1\u94FE\u8DEF\u4E0E\u62BD\u53D6\u8BD5\u8DD1\uFF082026-10-05 \u62C6\u5F00\uFF09\n ----------------------------------------------------------------------\n \u4E24\u5757\u5185\u5BB9\u642C\u51FA\u4E86 Wiki \u90A3\u4E00\u680F\uFF08\u5B83\u4EEC\u56DE\u7B54\u7684\u4E0D\u662F\u300C\u7EC4\u7EC7\u6210\u4E86\u54EA\u4E9B\u9875\u300D\uFF0C\u800C\u662F\u300C\u8FD9\u4E2A\u5E93\u600E\u4E48\u5DE5\u4F5C\u300D\uFF09\uFF0C\n 2026-10-05 \u53C8\u4ECE\u540C\u4E00\u4E2A\u5BF9\u8BDD\u6846\u91CC**\u62C6\u6210\u4E24\u5904**\uFF1A\n\n - **\u56DB\u6BB5\u94FE\u8DEF**\uFF08\u5951\u7EA6\uFF09\u8BFB\u4E00\u904D\u5C31\u591F \u2192 \u8BF4\u660E\uFF0C\u8FDB\u901A\u7528\u6574\u9875\uFF08`/knowledge/pages/help/compile`\uFF09\u3002\n - **\u62BD\u53D6\u8BD5\u8DD1**\u8981\u53CD\u590D\u8DD1\u3001\u8981\u644A\u5F00\u51E0\u767E KB \u62A5\u544A\u3001\u8FD8\u8981\u548C\u9762\u677F\u91CC\u7684 Wiki \u680F\u5BF9\u7167 \u2192 \u6574\u9875\n \uFF08`/knowledge/pages/trial`\uFF09\u3002\n\n \u6240\u4EE5\u8FD9\u91CC\u53EA\u5269\u5185\u5BB9\u672C\u8EAB\u9700\u8981\u7684\u51E0\u4F55\uFF1A\u94FE\u8DEF\u9650\u5BBD\uFF08\u8BFB\u7684\u4E1C\u897F\u4E00\u884C\u522B\u8D85\u8FC7 760px\uFF09\u3001\u8BD5\u8DD1\u9762\u677F\u7684\n \u6807\u9898\u884C\u3002**\u9875\u9762\u5916\u58F3\u7684\u6837\u5F0F\u5728 `pages.css`** \u2014\u2014 \u90A3\u662F\u53E6\u4E00\u4EFD\u6587\u6863\uFF0C\u4E0D\u8DDF\u9762\u677F\u5171\u7528\u4E00\u5957\u58F3\u3002\n ====================================================================== */\n\n/* \u56DB\u6BB5\u94FE\u8DEF\u7684\u5185\u5BB9\u5217\u3002**\u8BFB\u7684\u4E1C\u897F\u9650\u5BBD**\uFF1A\u94FA\u6EE1\u65F6\u4E00\u884C\u7EA6 180 \u4E2A\u5B57\u7B26\uFF0C\u56DE\u884C\u627E\u4E0D\u5230\u4E0A\u4E00\u884C\u7684\u5F00\u5934\u3002 */\n.tita-flowPanel { display: grid; max-width: 760px; margin-inline: auto; gap: 12px; }\n\n/* \u8BD5\u8DD1\u9762\u677F\u7684\u6807\u9898\u884C\u3002\u5B83\u539F\u6765\u9760\u4E00\u5F20 Card \u6491\u5916\u6846\uFF0C\u73B0\u5728\u5916\u6846\u662F\u6574\u9875 \u2014\u2014 \u53EA\u7559\u8FD9\u4E00\u884C\u3002 */\n.tita-flowTrial { display: grid; gap: 9px; }\n.tita-flowTrialHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-flowTrialTitle { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink); font-size: 12.5px; font-weight: 650; }\n/* \u94FE\u8DEF\u5185\u90E8\u7684\u52A8\u4F5C\u540D\uFF08Extract / Resolve / Materialize / Index\uFF09\u3002\u6BB5\u540D\u662F\u7ED9\u4EBA\u770B\u7684\uFF0C\u8FD9\u4E00\u884C\u662F\u5BF9\u4EE3\u7801\u7684\u3002 */\n.tita-wikiFlowPassName { margin: 0; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9.5px; letter-spacing: .04em; }\n\n/* ======================================================================\n \u5220\u9664 SourceRaw \u7684\u786E\u8BA4\u6846\uFF080063 \xA75.2.2\uFF09\n ----------------------------------------------------------------------\n \u5B83\u4E0D\u662F\u300C\u4F60\u786E\u5B9A\u5417\u300D\uFF0C\u662F\u4E00\u5F20**\u8D26\u5355**\uFF1A\u8FD9\u4E00\u4E0B\u4F1A\u5E26\u8D70\u54EA\u51E0\u6761\u77E5\u8BC6\u3001\u54EA\u51E0\u5F20\u5361\u7247\u3002\n \u4E24\u6863\u7528\u989C\u8272\u5206\u5F00\uFF1A**\u7EA2\u7684\u662F\u4F1A\u88AB\u5220\u6389\u7684\uFF0C\u7EFF\u7684\u662F\u4F1A\u7559\u7740\u7684** \u2014\u2014 \u5408\u6210\u4E00\u4E2A\u6570\u4F1A\u8BA9\u4EBA\u4EE5\u4E3A\n \u5168\u90FD\u8981\u6CA1\uFF0C\u4E8E\u662F\u4E0D\u6562\u5220\uFF1B\u5206\u5F00\u8BF4\uFF0C\u4ED6\u624D\u80FD\u5224\u65AD\u8FD9\u4E00\u4E0B\u5230\u5E95\u6BC1\u6389\u4EC0\u4E48\u3002\n ====================================================================== */\n/*\n * 620px \u5BBD\u3001\u8D26\u5355\u533A\u9650\u9AD8\u3002\n *\n * \u9650\u9AD8\u4E0D\u662F\u4E3A\u4E86\u597D\u770B\uFF1A`DialogContent` \u662F `fixed top-1/2 -translate-y-1/2` \u5C45\u4E2D\u7684\uFF0C\n * \u5185\u5BB9\u6BD4\u89C6\u53E3\u9AD8\u65F6\u5B83\u4F1A**\u4E0A\u4E0B\u540C\u65F6\u6EA2\u51FA**\uFF0C\u9875\u811A\u90A3\u4E24\u4E2A\u6309\u94AE\u5C31\u518D\u4E5F\u70B9\u4E0D\u5230\u4E86\u3002\n * \u6240\u4EE5\u6EDA\u7684\u662F\u8D26\u5355\u533A\uFF0C\u9875\u811A\u7559\u5728\u5916\u9762\u3002\n */\n.tita-delDialog { width: min(620px, calc(100vw - 32px)); }\n.tita-delScroll { min-height: 0; max-height: min(58vh, 560px); overflow-y: auto; overscroll-behavior: contain; padding-right: 2px; }\n.tita-delTitle { display: flex; align-items: center; gap: 6px; }\n/* \u56FE\u6807 + \u6587\u5B57\u4E24\u5217\u3002**\u6B63\u6587\u5FC5\u987B\u5305\u5728\u4E00\u4E2A\u5143\u7D20\u91CC** \u2014\u2014 flex \u4F1A\u628A\u6BCF\u4E2A\u6587\u672C\u8282\u70B9\u4E0E\u6BCF\u4E2A `<b>`\n \u5F53\u6210\u72EC\u7ACB\u7684\u9879\u76EE\uFF0C\u6B63\u6587\u4E8E\u662F\u88AB\u62C6\u6210\u51E0\u5757\u5404\u5360\u4E00\u884C\uFF08\u8FD9\u4E00\u6761\u8E29\u8FC7\u4E00\u6B21\uFF09\u3002 */\n.tita-delLoading { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 6px; margin: 0; color: var(--tita-ink-muted); font-size: 11.5px; }\n.tita-delWarning { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 9px; border: 1px solid var(--ddk-danger-line); border-radius: 10px; background: var(--ddk-danger-tint); padding: 10px 11px; }\n.tita-delWarning > svg { margin-top: 2px; color: var(--tita-danger); }\n.tita-delWarningBody { display: grid; min-width: 0; gap: 3px; }\n.tita-delWarningBody > b { color: var(--tita-danger); font-size: 11.5px; font-weight: 700; }\n.tita-delWarningBody > span { color: var(--tita-ink); font-size: 11.5px; line-height: 1.6; }\n.tita-delWarningBody > small { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.5; }\n.tita-delNote b { color: var(--tita-ink); font-weight: 650; }\n.tita-delNothing { margin: 0; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); padding: 9px 11px; color: var(--tita-ink-muted); font-size: 11.5px; line-height: 1.7; }\n.tita-delSection { display: grid; margin-top: 12px; gap: 7px; }\n.tita-delSectionHead { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0; color: var(--tita-ink); font-size: 11.5px; }\n.tita-delSectionHead > span { display: inline-flex; align-items: center; gap: 5px; }\n.tita-delSectionTotal { color: var(--tita-ink-faint); font-size: 10.5px; font-weight: 500; }\n.tita-delEmpty { margin: 0; color: var(--tita-ink-faint); font-size: 11px; }\n/*\n * \u4E00\u6863\u3002\u5148\u8BFB\u6570\u5B57\uFF0C\u518D\u8BFB\u300C\u4F1A\u5220\u9664 / \u4FDD\u7559\u300D\uFF0C\u6700\u540E\u624D\u770B\u5177\u4F53\u6761\u76EE\u3002\u957F\u89E3\u91CA\u88AB\u79FB\u5230\u7B2C\u4E8C\u884C\uFF0C\n * \u907F\u514D\u628A\u4E00\u6574\u6BB5\u540E\u679C\u585E\u8FDB\u6570\u5B57\u53F3\u4FA7\uFF0C\u626B\u8BFB\u65F6\u4E0D\u4F1A\u649E\u6210\u4E00\u56E2\u3002\n */\n.tita-delTierDanger, .tita-delTierKeep { display: grid; gap: 8px; border: 1px solid; border-radius: 9px; padding: 9px 10px; }\n.tita-delTierDanger { border-color: var(--ddk-danger-line); background: var(--ddk-danger-tint); }\n.tita-delTierKeep { border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); }\n.tita-delTierHead { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: start; gap: 9px; min-width: 0; }\n.tita-delTierMetric { display: inline-flex; min-width: 35px; align-items: baseline; gap: 3px; }\n.tita-delTierMetric small { color: var(--tita-ink-muted); font-size: 10px; }\n.tita-delTierCount { color: var(--tita-ink); font-size: 17px; font-weight: 700; line-height: 1.1; font-variant-numeric: tabular-nums; }\n.tita-delTierDanger .tita-delTierCount { color: var(--tita-danger); }\n.tita-delTierKeep .tita-delTierCount { color: var(--tita-tone-green); }\n.tita-delTierCopy { display: grid; min-width: 0; gap: 2px; }\n.tita-delTierLabel { color: var(--tita-ink); font-size: 11px; line-height: 1.4; }\n.tita-delTierDescription { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.5; overflow-wrap: anywhere; }\n.tita-delTierAction { align-self: start; border: 1px solid currentColor; border-radius: 999px; padding: 2px 6px; font-size: 9.5px; font-weight: 700; line-height: 1.3; white-space: nowrap; }\n.tita-delTierDanger .tita-delTierAction { color: var(--tita-danger); }\n.tita-delTierKeep .tita-delTierAction { color: var(--tita-tone-green); }\n.tita-delItems { display: grid; grid-column: 1 / -1; margin: 3px 0 0; padding: 0; list-style: none; gap: 4px; }\n.tita-delItems > li { position: relative; border-top: 1px dashed var(--tita-line); padding: 4px 0 0 10px; color: var(--tita-ink); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-delItems > li::before { position: absolute; top: .9em; left: 0; width: 4px; height: 4px; border-radius: 50%; background: var(--tita-ink-faint); content: \'\'; }\n.tita-delItems > li:first-child { border-top: 0; padding-top: 0; }\n.tita-delItems > li:first-child::before { top: .65em; }\n.tita-delItemMeta { display: block; color: var(--tita-ink-faint); font-size: 9.5px; }\n.tita-delMore { color: var(--tita-ink-faint) !important; }\n.tita-delNote { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 5px; margin: 0; border-top: 1px dashed var(--tita-line); padding-top: 8px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.7; }\n.tita-delNote svg { margin-top: 3px; }\n\n/* ======================================================================\n \u6DFB\u52A0\u6587\u4EF6\u5BF9\u8BDD\u6846\uFF082026-10-01\uFF09\n ----------------------------------------------------------------------\n \u4E0A\u534A\u56DE\u7B54\u300C\u8FD9\u4E9B\u6587\u4EF6\u5C06\u4EE5\u4EC0\u4E48\u8EAB\u4EFD\u8FDB\u6765\u300D\uFF0C\u4E0B\u534A\u56DE\u7B54\u300C\u5B83\u4EEC\u73B0\u5728\u5230\u54EA\u4E00\u6B65\u4E86\u300D\u3002\n \u4E24\u5757\u7528\u540C\u4E00\u6761\u5206\u9694\u7EBF\u5207\u5F00 \u2014\u2014 \u5B83\u4EEC\u662F\u540C\u4E00\u4EF6\u4E8B\u7684\u4E24\u534A\uFF08\u6536\u4E4B\u524D / \u6536\u4E4B\u540E\uFF09\uFF0C\u4E0D\u662F\u4E24\u4E2A\u529F\u80FD\u3002\n ====================================================================== */\n.tita-importDialog { width: min(760px, calc(100vw - 32px)); }\n.tita-importSub { margin: 4px 0 0; color: var(--tita-ink-faint); font-size: 11px; }\n.tita-importSection { display: grid; gap: 10px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--tita-line); }\n.tita-importSectionHead { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }\n.tita-importSectionHead h4 { margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 700; }\n.tita-importSectionHead > span { color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n\n/*\n * \u5904\u7406\u6458\u8981\uFF082026-10-02\uFF09\uFF1A\u4E00\u6279\u8DD1\u5B8C\u4E4B\u540E\uFF0C\u300C\u521A\u624D\u5230\u5E95\u53D1\u751F\u4E86\u4EC0\u4E48\u300D\u7684\u4E00\u9875\u8D26\u3002\n *\n * \u4E24\u5217\u3001\u6807\u7B7E\u56FA\u5B9A\u5BBD\u3001\u503C\u4E0E\u6807\u7B7E\u540C\u4E3A\u4E00\u884C \u2014\u2014 \u4E0E\u5143\u4FE1\u606F\uFF08`.tita-kbKv`\uFF09\u540C\u4E00\u5957\u8BFB\u6CD5\uFF0C\u56E0\u4E3A\u5B83\u4EEC\n * \u56DE\u7B54\u7684\u662F\u540C\u4E00\u7C7B\u95EE\u9898\uFF08\u300C\u8FD9\u51E0\u9879\u5404\u662F\u4EC0\u4E48\u300D\uFF09\u3002\u533A\u522B\u53EA\u5728\u8FD9\u91CC\u7684\u884C\u66F4\u5C11\u3001\u66F4\u504F\u7ED3\u8BBA\u3002\n */\n.tita-importSummary { display: grid; margin: 0; gap: 5px; }\n.tita-importSummary > div { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 10px; }\n.tita-importSummary dt { color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-importSummary dd { margin: 0; min-width: 0; color: var(--tita-ink); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }\n/*\n * \u7F16\u8BD1\u7ED3\u679C\u7684\u4E94\u8282\uFF082026-10-06 \u8D77\uFF09\uFF1A\u62BD\u53D6 Knowledge / \u5F52\u4E00\u5750\u6807 / \u7269\u5316 WikiCard /\n * \u5EFA\u7D22\u5F15 / \u6784\u5EFA\uFF08\u5411\u91CF + \u56FE\u8C31\uFF09\u3002\n *\n * **\u5B83\u4EEC\u4E0D\u662F\u5361\u7247**\uFF0C\u662F\u540C\u4E00\u4EFD\u6458\u8981\u91CC\u7684\u5206\u6BB5\uFF1A\u4E00\u6761\u4E0A\u8FB9\u7EBF + \u4E00\u4E2A\u6807\u9898\u884C\uFF0C\u4E0E\n * `.tita-importSummary` \u90A3\u5957\u300C\u6807\u7B7E + \u503C\u300D\u7684\u5BC6\u5EA6\u4E00\u81F4\u3002\u505A\u6210\u5361\u7247\u4F1A\u8BA9\u8FD9\u4E00\u5C4F\n * \u6BD4\u5B83\u88C5\u7684\u5185\u5BB9\u91CD\u5F97\u591A \u2014\u2014 \u800C\u8FD9\u91CC\u8981\u8BFB\u7684\u53EA\u662F\u51E0\u4E2A\u6570\u3002\n *\n * \u6807\u9898\u884C\u91CC\u5E26\u4E00\u53E5\u300C\u5B83\u56DE\u7B54\u4EC0\u4E48\u300D\uFF08\u6587\u6863\u91CC\u8BF4\u4E86\u4EC0\u4E48 / \u662F\u4E0D\u662F\u5DF2\u6709\u7684\u4E1C\u897F / \u2026\uFF09\uFF1A\n * \u53EA\u7ED9\u540D\u5B57\u7684\u8BDD\uFF0C\u4EBA\u5F97\u5148\u77E5\u9053\u8FD9\u5957\u94FE\u8DEF\u624D\u770B\u5F97\u61C2\u300C\u5F52\u4E00\u5750\u6807\u300D\u662F\u5728\u8BF4\u4EC0\u4E48\u3002\n */\n.tita-importStage { display: grid; gap: 2px; border-top: 1px solid var(--tita-line); padding-top: 7px; margin-top: 7px; }\n.tita-importStage:first-of-type { border-top: 0; margin-top: 0; padding-top: 0; }\n.tita-importStageHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-importStageHead b { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; }\n.tita-importStageHead small { color: var(--tita-ink-muted); font-size: 10px; }\n.tita-importStageBody { margin: 0; color: var(--tita-ink); font-size: 11px; line-height: 1.65; overflow-wrap: anywhere; }\n.tita-importStageBody b { font-variant-numeric: tabular-nums; font-weight: 700; }\n.tita-importStageBody code { border-radius: 4px; background: var(--tita-surface-muted); padding: 0 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n.tita-importStageList { display: grid; gap: 3px; margin-top: 2px; }\n.tita-importStageListLabel { color: var(--tita-ink-faint); font-size: 10.5px; }\n\n/* \u6E05\u5355\uFF08\u65B0\u5EFA / \u5E76\u5165\u7684\u5B9E\u4F53\u540D\uFF09\uFF1A\u4E00\u884C\u4E00\u4E2A pill\uFF0C\u8BFB\u7684\u65F6\u5019\u4E0D\u5FC5\u5728\u9017\u53F7\u91CC\u6570\u6570\u3002 */\n.tita-importSummaryList { display: flex; flex-wrap: wrap; gap: 4px; }\n.tita-importSummaryList > span { border: 1px solid var(--tita-line); border-radius: 999px; background: var(--tita-surface-muted); padding: 1px 7px; color: var(--tita-ink-muted); font-size: 10.5px; }\n\n/* \u62D6\u62FD\u533A\u540C\u65F6\u662F\u300C\u518D\u9009\u51E0\u4E2A\u300D\u7684\u5165\u53E3\uFF1A\u52A0\u6587\u4EF6\u662F\u8FD9\u4E2A\u5BF9\u8BDD\u6846\u91CC\u6700\u9891\u7E41\u7684\u52A8\u4F5C\u3002 */\n.tita-importDrop { display: flex; align-items: center; gap: 12px; border: 1px dashed var(--tita-line-strong); border-radius: 10px; background: var(--tita-surface-muted); padding: 14px 16px; cursor: pointer; }\n.tita-importDrop:hover { border-color: var(--tita-primary-line); background: var(--tita-primary-soft); }\n.tita-importDropDisabled { cursor: not-allowed; opacity: .62; }\n.tita-importDropDisabled:hover { border-color: var(--tita-line-strong); background: var(--tita-surface-muted); }\n.tita-importDrop:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-importDrop > svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-importDropText { display: grid; gap: 2px; min-width: 0; }\n.tita-importDropText > b { color: var(--tita-ink); font-size: 12px; font-weight: 600; }\n.tita-importDropText > small { color: var(--tita-ink-faint); font-size: 10.5px; }\n\n.tita-importList { display: grid; margin: 0; padding: 0; list-style: none; gap: 0; }\n.tita-importRow { display: grid; grid-template-columns: 46px minmax(0, 1fr) auto auto; align-items: center; gap: 10px; border-bottom: 1px solid var(--tita-line); padding: 7px 6px; min-height: 46px; }\n.tita-importRow:last-child { border-bottom: 0; }\n.tita-importRowBad { background: var(--ddk-danger-tint); }\n/* \u683C\u5F0F\u5FBD\u6807\uFF1A\u4E00\u4E2A\u6587\u4EF6\u6700\u5BB9\u6613\u88AB\u8BA4\u51FA\u6765\u7684\u5C5E\u6027\u662F\u5B83\u7684\u683C\u5F0F\uFF0C\u6240\u4EE5\u5B83\u6392\u5728\u6587\u4EF6\u540D\u524D\u9762\u3002 */\n.tita-importExt { display: inline-flex; height: 20px; align-items: center; justify-content: center; border-radius: 5px; font-size: 9.5px; font-weight: 700; letter-spacing: .02em; }\n.tita-importExtPdf { background: var(--ddk-danger-tint); color: var(--tita-danger); }\n.tita-importExtOffice { background: var(--tita-tone-blue-tint); color: var(--tita-tone-blue); }\n.tita-importExtText { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-importExtOther { background: var(--tita-surface-muted); color: var(--tita-ink-faint); }\n.tita-importName { display: grid; gap: 2px; min-width: 0; }\n.tita-importName > b { overflow: hidden; color: var(--tita-ink); font-size: 11.5px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }\n.tita-importName > small { color: var(--tita-ink-faint); font-size: 10px; overflow-wrap: anywhere; }\n.tita-importType { display: inline-flex; align-items: center; gap: 7px; }\n.tita-importTypeLabel { color: var(--tita-ink-faint); font-size: 10.5px; white-space: nowrap; }\n\n.tita-importBar { margin-top: 0; }\n/* \u56DB\u6BB5\u5199\u6210\u4E00\u884C\u7D27\u51D1\u8F68\u8FF9\uFF1A\u7EC6\u8282\u5728\u7F16\u8BD1\u5BF9\u8BDD\u6846\u91CC\u7ED9\u5168\u4E86\uFF0C\u8FD9\u91CC\u53EA\u56DE\u7B54\u300C\u6574\u6279\u5230\u54EA\u4E86\u300D\u3002 */\n.tita-importTrack { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }\n.tita-importTrackStep { display: grid; grid-template-columns: 16px minmax(0, 1fr) auto; align-items: start; gap: 7px; border-radius: 7px; padding: 5px 6px; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-importTrackDot { display: inline-flex; width: 16px; height: 16px; align-items: center; justify-content: center; border-radius: 50%; background: var(--tita-surface-muted); font-size: 9px; font-weight: 700; }\n.tita-importTrackDone { color: var(--tita-ink-muted); }\n.tita-importTrackDone .tita-importTrackDot { background: var(--tita-tone-green); color: #ffffff; }\n.tita-importTrackRunning { color: var(--tita-primary); }\n.tita-importTrackRunning .tita-importTrackDot { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-importTrackBody { display: grid; min-width: 0; gap: 1px; }\n.tita-importTrackBody b { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; }\n.tita-importTrackBody > span { color: var(--tita-ink-faint); font-size: 9.5px; line-height: 1.5; overflow-wrap: anywhere; }\n.tita-importTrackState { margin-top: 1px; color: var(--tita-ink-faint); font-size: 9.5px; white-space: nowrap; }\n.tita-importTrackRunning .tita-importTrackState { color: var(--tita-primary); font-weight: 700; }\n.tita-importTrackDone .tita-importTrackState { color: var(--tita-tone-green); }\n.tita-importNote { margin: 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.7; }\n/* \u5931\u8D25\u9010\u6761\u6446\u51FA\u6765\uFF0C\u5E76\u7ED9\u300C\u91CD\u8BD5\u5931\u8D25\u9879\u300D\u2014\u2014\u5341\u4EFD\u91CC\u574F\u4E00\u4EFD\u65F6\u8BA9\u4EBA\u91CD\u9009\u5341\u4EFD\u662F\u6D6A\u8D39\u3002 */\n.tita-importFailed { display: grid; gap: 5px; border-radius: 9px; background: var(--ddk-danger-tint); padding: 9px 11px; }\n.tita-importFailed > p { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-danger); font-size: 11px; font-weight: 600; }\n.tita-importFailed > ul { display: grid; margin: 0; padding-inline-start: 16px; gap: 2px; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; }\n.tita-importFooter { align-items: center; justify-content: space-between; gap: 12px; }\n.tita-importHint { color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-importActions { display: inline-flex; align-items: center; gap: 8px; }\n\n/* ======================================================================\n \u62BD\u5C49\u91CC\u7684\u4E00\u5C42\uFF082026-10-01\uFF09\n ----------------------------------------------------------------------\n \u7528\u4E8E\u300C\u5728 SourceRaw \u9884\u89C8\u4E4B\u4E0A\u8986\u76D6\u4E00\u5C42 wiki \u5361\u7247\u9884\u89C8\u300D\uFF1A\u5173\u6389\u5B83\u5C31\u80FD\u770B\u5230\u4E0B\u5C42\uFF0C\n \u56E0\u4E3A\u4E0B\u5C42\u4ECE\u6765\u6CA1\u6709\u88AB\u5173\u8FC7\u3002\u5B83\u4E0D\u662F\u7B2C\u4E8C\u4E2A Radix \u6A21\u6001 \u2014\u2014 \u4E00\u4E2A\u906E\u7F69\u3001\u4E00\u5957 Esc \u76D1\u542C\u3002\n ====================================================================== */\n.tita-drawerLayer {\n position: absolute;\n inset: 0;\n z-index: 3;\n display: flex;\n flex-direction: column;\n background: var(--tita-surface);\n animation: tita-drawer-layer-in 180ms cubic-bezier(0.22, 0.61, 0.36, 1);\n}\n@keyframes tita-drawer-layer-in {\n from { transform: translateX(18px); opacity: .55; }\n to { transform: none; opacity: 1; }\n}\n@media (prefers-reduced-motion: reduce) { .tita-drawerLayer { animation: none; } }\n/* \u5934\u90E8\u7684\u5DE6\u5185\u8FB9\u8DDD\u4E0E\u62BD\u5C49\u81EA\u5DF1\u7684\u5934\u5BF9\u9F50\uFF0818px\uFF09\uFF0C\u53F3\u5185\u8FB9\u8DDD\u8BA9\u5F00\u62BD\u5C49\u90A3\u4E2A\u5173\u95ED\u6309\u94AE\u7684\u4F4D\u7F6E \u2014\u2014\n \u8FD9\u4E00\u5C42\u867D\u7136\u76D6\u4F4F\u4E86\u5B83\uFF0C\u4F46\u4E24\u5C42\u7684\u6807\u9898\u4E0D\u8BE5\u56E0\u6B64\u9519\u4F4D\u3002 */\n.tita-drawerLayerHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; padding: 15px 44px 13px 18px; border-bottom: 1px solid var(--tita-line); }\n.tita-drawerLayerCopy { min-width: 0; }\n.tita-drawerLayerCopy h3 { margin: 0; color: var(--tita-ink); font-size: 15px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-drawerLayerCopy p { margin: 4px 0 0; color: var(--tita-ink-faint); font-size: 11px; overflow-wrap: anywhere; }\n\n/* ======================================================================\n \u5BF9\u8BDD\u6D41\u91CC\u7684\u8D26\u672C\u56FE\uFF08PRD 20261001-\u5BF9\u8BDD\u6D41\u91CC\u53EF\u89C6\u5316\u77E5\u8BC6\u5E93\u7F16\u8BD1\u4E0E\u53EC\u56DE\uFF09\n ----------------------------------------------------------------------\n \u8FD9\u4E9B\u7C7B\u53EA\u670D\u52A1 `ledger.tsx`\u3002\u5B83\u4EEC\u4F4F\u5728\u63D2\u4EF6\u5168\u5C40\u6837\u5F0F\u91CC\u800C\u4E0D\u662F\u67D0\u5F20\u5361\u7247\u7684\u5C40\u90E8\uFF0C\n \u56E0\u4E3A\u8FD9\u6BB5\u5361\u7247\u957F\u5728**\u5BBF\u4E3B\u7684\u5BF9\u8BDD\u533A**\uFF0C\u4E0D\u5728 `.tita-panel` \u91CC \u2014\u2014 \u9762\u677F\u90A3\u5957 11px \u5C0F\u5B57\n \u548C\u5BB9\u5668\u67E5\u8BE2\u90FD\u591F\u4E0D\u7740\u5B83\u3002\n\n \u4E00\u6761\u89C4\u77E9\uFF1A**SVG \u7684\u989C\u8272\u53EA\u5728\u8FD9\u91CC\u7ED9**\u3002`fill="var(--tita-primary)"` \u8FD9\u79CD\u5199\u6CD5\u5728\n presentation attribute \u4E0A\u4E0D\u751F\u6548\uFF08\u90A3\u4E9B attribute \u4E0D\u8BA4 `var()`\uFF09\uFF0C\u6240\u4EE5\u989C\u8272\u7EDF\u4E00\u8D70\u7C7B\uFF0C\n \u6DF1\u6D45\u8272\u8DDF\u7740 `data-ds-dark-theme` \u81EA\u52A8\u7FFB \u2014\u2014 \u8FD9\u91CC\u6CA1\u6709\u4E00\u5904\u5199\u6B7B\u7684\u8272\u503C\u3002\n ====================================================================== */\n\n/* \u6298\u53E0\u6001\uFF1A\u4E00\u679A\u6761 + \u4E00\u4E32 HTML \u6587\u5B57\u3002\u6587\u5B57\u8D70 HTML\uFF0C\u6240\u4EE5\u80FD\u622A\u65AD\u3001\u80FD\u9009\u4E2D\u3001\u8BFB\u5C4F\u80FD\u8BFB\u3002 */\n.tita-kbLedger { display: inline-flex; flex: none; align-items: center; gap: 10px; min-width: 0; }\n\n/* \u8FD9\u4E00\u884C\u957F\u5728**\u5BBF\u4E3B\u7684\u5BF9\u8BDD\u533A**\u91CC\uFF0C\u4E0D\u5728 `.tita-panel` \u91CC \u2014\u2014 ui \u5305\u90A3\u6761\u6309\u94AE\u91CD\u7F6E\n \uFF08`:where([class^=tita-] \u2026) :where(button,input,\u2026)`\uFF09\u662F**\u540E\u4EE3\u9009\u62E9\u5668**\uFF0C\u591F\u4E0D\u5230\u8FD9\u91CC\u3002\n \u4E8E\u662F UA \u7684 button \u9ED8\u8BA4\u6837\u5F0F\u4F1A\u539F\u6837\u6F0F\u8FDB\u6765\uFF1A\u6D45\u8272\u4E0B\u662F\u4E00\u5757\u6BD4\u753B\u5E03\u7565\u767D\u7684\u5E95\u677F\uFF08\u51E0\u4E4E\u770B\u4E0D\u51FA\uFF0C\n \u6240\u4EE5\u4E00\u76F4\u6CA1\u4EBA\u53D1\u73B0\uFF09\uFF0C\u6DF1\u8272\u4E0B\u90A3\u5757\u5E95\u677F**\u4ECD\u7136\u662F\u767D\u7684**\uFF0C\u800C\u6587\u5B57\u7FFB\u6210\u4E86\u6D45\u8272 \u2014\u2014 \u76F4\u63A5\u770B\u4E0D\u89C1\u3002\n \u6240\u4EE5\u8FD9\u91CC\u9010\u6761\u62B9\u6389\uFF1A\u80CC\u666F\u3001\u8FB9\u6846\u3001\u5185\u8FB9\u8DDD\u3001\u5B57\u4F53\u3001\u989C\u8272\u3002 */\n.tita-kbRow {\n display: flex;\n width: 100%;\n min-width: 0;\n align-items: center;\n gap: 6px;\n padding: 2px 0;\n border: 0;\n background: transparent;\n font: inherit;\n color: inherit;\n text-align: left;\n}\n.tita-kbRow .tita-kbBar { display: block; }\n/* \u56FE\u4F8B\u662F\u300C\u8272\u5757 + \u4E2D\u6027\u6587\u5B57\u300D\uFF0C\u4E0D\u662F\u5F69\u8272\u6587\u5B57\u300211px \u7684\u5F69\u8272\u6587\u5B57\u8981\u540C\u65F6\u6EE1\u8DB3 4.5:1 \u548C\n \u300C\u548C\u6761\u4E0A\u90A3\u4E00\u6BB5\u770B\u8D77\u6765\u662F\u540C\u4E00\u4E2A\u989C\u8272\u300D\uFF0C\u4E24\u4EF6\u4E8B\u5728\u6D45\u5E95\u4E0A\u4E92\u76F8\u62C6\u53F0\uFF1B\u8272\u5757\u628A\u300C\u54EA\u4E2A\u662F\u54EA\u4E2A\u300D\n \u4EA4\u7ED9\u5F62\u72B6\uFF0C\u6587\u5B57\u56E0\u6B64\u53EF\u4EE5\u8001\u5B9E\u5F85\u5728\u4E2D\u6027\u8272\u4E0A\u3002 */\n.tita-kbLegend { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 11px; line-height: 20px; white-space: nowrap; font-variant-numeric: tabular-nums; }\n.tita-kbSwatch { flex: none; width: 7px; height: 7px; border-radius: 1.5px; }\n.tita-kbSwatch-new { background: var(--tita-primary); }\n.tita-kbSwatch-merged { background: color-mix(in srgb, var(--tita-primary) 48%, var(--tita-surface)); }\n.tita-kbSwatch-reused { background: var(--tita-line-strong); }\n.tita-kbSwatch-failed { background: var(--tita-danger); }\n.tita-kbLedgerNote { color: var(--tita-ink-faint); font-size: 11px; line-height: 20px; white-space: nowrap; font-variant-numeric: tabular-nums; }\n/* \u5931\u8D25\u5355\u72EC\u6302\u4E00\u4E2A\u7EA2\u70B9 + \u8BA1\u6570\uFF0C\u4E0D\u6324\u8FDB\u6761\u91CC\uFF1A\u6765\u6E90\u6570\u548C\u5361\u7247\u6570\u4E0D\u662F\u4E00\u4E2A\u5355\u4F4D\uFF0C\u6DF7\u5728\u4E00\u6839\u6761\u4E0A\u4F1A\u9A97\u4EBA\u3002 */\n.tita-kbLedgerFail { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-danger); font-size: 11px; line-height: 20px; white-space: nowrap; }\n.tita-kbLedgerFail::before { content: \'\'; flex: none; width: 5px; height: 5px; border-radius: 50%; background: var(--tita-danger); }\n\n/* \u5C55\u5F00\u6001\uFF1A\u4E00\u6574\u5F20\u56FE + \u4E00\u5217\u660E\u7EC6\u3002\u5DE6\u7F29\u8FDB 22px \u4E0E\u6807\u9898\u5BF9\u9F50\uFF08\u56FE\u6807 16 + \u95F4\u9694 6\uFF09\u3002 */\n.tita-kbPanel { display: grid; gap: 10px; margin: 6px 0 8px 22px; }\n.tita-kbDiagram { display: block; width: 100%; height: auto; }\n.tita-kbSources { display: grid; gap: 3px; margin: 0; padding: 0; list-style: none; }\n.tita-kbSources li { display: flex; align-items: baseline; gap: 8px; font-size: 12px; line-height: 17px; }\n.tita-kbSources .tita-kbRank { flex: none; width: 15px; text-align: right; color: var(--tita-ink-faint); font-variant-numeric: tabular-nums; }\n.tita-kbSources .tita-kbName { flex: 1 1 auto; min-width: 0; overflow: hidden; color: var(--tita-ink); text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbSources .tita-kbMeasure { flex: none; color: var(--tita-ink-faint); font-variant-numeric: tabular-nums; }\n.tita-kbSources .tita-kbCode { flex: none; font-family: var(--tita-mono); font-size: 10.5px; color: var(--tita-ink-faint); }\n.tita-kbSources li[data-failed] { color: var(--tita-danger); }\n.tita-kbSources li[data-failed] .tita-kbName { color: var(--tita-danger); }\n.tita-kbPanelNote { margin: 0; color: var(--tita-ink-faint); font-size: 11px; line-height: 1.7; }\n.tita-kbPanelNote code { font-family: var(--tita-mono); font-size: 10.5px; }\n\n/* \u2500\u2500 SVG \u91CC\u7684\u8BED\u4E49\u8272 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.tita-kbSeg-new { fill: var(--tita-primary); }\n/* \u300C\u5E76\u5165\u300D\u4E0E\u300C\u65B0\u5EFA\u300D\u662F\u540C\u4E00\u4E2A\u6574\u4F53\u7684\u4E24\u5757\uFF0C\u7528\u900F\u660E\u5EA6\u5206\u6863\uFF0C\u4E0D\u53E6\u8D77\u4E00\u4E2A\u8272\u76F8\u3002 */\n.tita-kbSeg-merged { fill: var(--tita-primary); fill-opacity: .48; }\n/* \u300C\u590D\u7528\u300D= \u4EC0\u4E48\u90FD\u6CA1\u53D1\u751F\uFF0C\u7070\u8272\u662F\u8BED\u4E49\u76F4\u7ED9\u3002 */\n.tita-kbSeg-reused { fill: var(--tita-line-strong); }\n.tita-kbSeg-failed { fill: var(--tita-danger); }\n.tita-kbTrack { fill: var(--tita-line-strong); fill-opacity: .28; }\n/* \u6765\u6E90\u753B\u6210\u7A7A\u5FC3\u6587\u6863\u3001\u4EA7\u51FA\u753B\u6210\u5B9E\u5FC3\u6761\uFF1A\u7A7A\u5FC3 vs \u5B9E\u5FC3\u533A\u5206\u300C\u8F93\u5165\u300D\u4E0E\u300C\u4EA7\u51FA\u300D\uFF0C\n \u4E0D\u9760\u518D\u5360\u4E00\u4E2A\u8272\u76F8\uFF0C\u4E5F\u5C31\u4E0D\u4F1A\u548C\u300C\u590D\u7528\u300D\u90A3\u4E2A\u7070\u5B9E\u5FC3\u649E\u8BED\u4E49\u3002 */\n.tita-kbSrcDoc { fill: var(--tita-surface-muted); stroke: var(--tita-line-strong); stroke-width: 1; }\n.tita-kbSrcFail { fill: var(--tita-danger); fill-opacity: .14; stroke: var(--tita-danger); stroke-width: 1; }\n.tita-kbRule { stroke: var(--tita-line); fill: none; }\n.tita-kbConnector { stroke: var(--tita-line-strong); fill: none; }\n.tita-kbArrow { fill: var(--tita-line-strong); }\n.tita-kbInk { fill: var(--tita-ink); }\n.tita-kbMuted { fill: var(--tita-ink-muted); }\n.tita-kbFaint { fill: var(--tita-ink-faint); }\n.tita-kbDanger { fill: var(--tita-danger); }\n.tita-kbMono { font-family: var(--tita-mono); }\n.tita-kbDiagram text { font-family: var(--tita-font); font-variant-numeric: tabular-nums; }\n\n/* \u8FD0\u884C\u4E2D\u7684\u5E7D\u7075\u6761\uFF1A\u660E\u786E\u8BF4\u300C\u8FD9\u91CC\u5C06\u4F1A\u6709\u4E00\u6761\u300D\uFF0C\u800C\u4E0D\u662F\u5148\u753B\u4E00\u6839\u96F6\u957F\u7684\u6761\u5192\u5145\u7ED3\u679C\u3002 */\n.tita-kbGhost { fill: var(--tita-line-strong); }\n.tita-kbPulse { animation: tita-kb-ghost 1.5s ease-in-out infinite; }\n.tita-kbPulse:nth-of-type(2) { animation-delay: .12s; }\n.tita-kbPulse:nth-of-type(3) { animation-delay: .24s; }\n.tita-kbPulse:nth-of-type(4) { animation-delay: .36s; }\n.tita-kbPulse:nth-of-type(5) { animation-delay: .48s; }\n.tita-kbPulse:nth-of-type(6) { animation-delay: .60s; }\n.tita-kbPulse:nth-of-type(7) { animation-delay: .72s; }\n.tita-kbPulse:nth-of-type(8) { animation-delay: .84s; }\n@keyframes tita-kb-ghost { 0%, 100% { opacity: .25; } 50% { opacity: .8; } }\n@media (prefers-reduced-motion: reduce) {\n .tita-kbPulse { animation: none; opacity: .45; }\n}\n\n/* ======================================================================\n \u64CD\u4F5C\u65E5\u5FD7\uFF082026-10-02 \u7684\u4E00\u7EA7\u89C6\u56FE\uFF09\n ----------------------------------------------------------------------\n \u4E00\u6761\u8BB0\u5F55\u4E00\u884C\uFF1A**\u65F6\u95F4 \xB7 \u7C7B\u578B \xB7 \u5E72\u4E86\u4EC0\u4E48 \xB7 \u54EA\u4E2A\u5E93 \xB7 \u6210\u6CA1\u6210**\u3002\u5C55\u5F00\u624D\u662F\u660E\u7EC6\u3002\n \u4E0E\u5361\u7247\u5217\u8868\u540C\u4E00\u6761\u7EAA\u5F8B\uFF1A\u5E38\u6001\u6CA1\u6709\u8FB9\u6846\uFF08\u4E00\u5C4F\u5341\u51E0\u6761\u63CF\u8FB9\u76D2\u5B50\u4F1A\u53D8\u6210\u300C\u6846\u5957\u6846\u300D\uFF09\uFF0C\n \u53EA\u5728 hover / \u805A\u7126 / \u5C55\u5F00\u65F6\u663E\u51FA\u6765\u3002\n ====================================================================== */\n.tita-opList { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 2px; }\n.tita-opRow { min-width: 0; border: 1px solid transparent; border-radius: 8px; }\n.tita-opRow:hover { border-color: var(--tita-line); background: var(--tita-surface-muted); }\n.tita-opRowBad { border-color: color-mix(in srgb, var(--tita-tone-amber) 30%, transparent); }\n.tita-opMain {\n display: grid; width: 100%; min-width: 0; align-items: center; gap: 8px;\n grid-template-columns: 92px 40px minmax(0, 1fr) auto auto 14px;\n border: 0; background: none; padding: 7px 8px; color: inherit; font: inherit; text-align: left; cursor: pointer;\n}\n.tita-opMain:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: -2px; border-radius: 8px; }\n/* \u65F6\u95F4\u662F**\u626B\u63CF\u7684\u843D\u70B9**\uFF1A\u7B49\u5BBD\u6570\u5B57\u8BA9\u5B83\u4E00\u5217\u5BF9\u9F50\uFF0C\u4E0D\u7528\u9010\u884C\u627E\u3002 */\n.tita-opWhen { color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-opKind { border-radius: 4px; background: var(--tita-primary-soft); padding: 1px 5px; color: var(--tita-primary); font-size: 10px; font-weight: 620; text-align: center; }\n.tita-opKindCompile { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-opTitle { display: grid; min-width: 0; gap: 1px; }\n.tita-opTitle > b { overflow: hidden; color: var(--tita-ink); font-size: 11.5px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }\n.tita-opTitle > small { overflow: hidden; color: var(--tita-ink-muted); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-opKb { color: var(--tita-ink-faint); font-size: 10.5px; white-space: nowrap; }\n.tita-opStatus { border-radius: 999px; padding: 1px 7px; font-size: 10px; white-space: nowrap; }\n.tita-opStatusOk { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-opStatusWarn { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-opStatusBad { background: color-mix(in srgb, var(--tita-danger) 12%, transparent); color: var(--tita-danger); }\n.tita-opMain > svg { color: var(--tita-ink-faint); }\n\n/* \u660E\u7EC6\uFF1A\u5C55\u5F00\u624D\u51FA\u73B0\uFF0C\u5DE6\u7F29\u8FDB\u5BF9\u9F50\u5230\u6807\u9898\u90A3\u4E00\u5217\u3002 */\n.tita-opDetail { border-top: 1px dashed var(--tita-line); padding: 8px 10px 10px 100px; }\n.tita-opDetailBody { display: grid; gap: 10px; }\n.tita-opBlock { display: grid; gap: 4px; }\n.tita-opBlock h5 { display: flex; align-items: baseline; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 11px; font-weight: 650; }\n.tita-opBlock h5 > span { color: var(--tita-ink-faint); font-size: 10.5px; font-weight: 400; }\n.tita-opLine { margin: 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.65; }\n.tita-opFiles { display: grid; margin: 0; padding: 0; list-style: none; gap: 2px; }\n.tita-opFiles > li { display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 2px 0; }\n.tita-opFiles > li > b { overflow: hidden; color: var(--tita-ink); font-size: 11px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }\n.tita-opFiles > li > em { color: var(--tita-ink-faint); font-size: 10px; font-style: normal; }\n.tita-opFileBad > em { color: var(--tita-tone-amber); }\n.tita-opNames { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; margin: 0; }\n.tita-opNames > span { color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-opNames > i { border: 1px solid var(--tita-line); border-radius: 999px; background: var(--tita-surface); padding: 1px 7px; color: var(--tita-ink-muted); font-size: 10.5px; font-style: normal; }\n.tita-opFoot { margin: 0; color: var(--tita-ink-faint); font-size: 10px; }\n\n/*\n * \u77E9\u9635\u7684\u5168\u5C4F\u5BF9\u8BDD\u6846\u3002\n *\n * \u9762\u677F\u672C\u4F53\u53EA\u6709 380\u2013420px\uFF0C\u51E0\u5341\u4E2A\u5BF9\u8C61\u7684\u77E9\u9635\u5728\u90A3\u91CC\u53EA\u80FD\u6324\u7740\u770B\u3002\u8FD9\u4E2A\u5BF9\u8BDD\u6846**\u4E0D\u6539\u6570\u636E**\uFF1A\n * \u540C\u4E00\u4EFD `matrixView`\u3001\u540C\u4E00\u4E2A\u9009\u4E2D\u72B6\u6001\u3001\u540C\u4E00\u4E2A `AxisMatrix` \u2014\u2014 \u5DEE\u522B\u53EA\u6709\u5BBD\u5EA6\u4E0E\u4E0D\u518D\u9650\u9AD8\u3002\n * \u6240\u4EE5\u5BBD\u5EA6\u6309\u5185\u5BB9\u7ED9\uFF08\u6700\u591A 1100px\uFF09\uFF0C\u9AD8\u5EA6\u6309\u89C6\u53E3\u7ED9\uFF08\u6700\u591A 86vh\uFF09\uFF0C\u8D85\u51FA\u7684\u90E8\u5206\u81EA\u5DF1\u6EDA\u3002\n */\n.tita-matrixDialog { width: min(96vw, 1100px); max-width: min(96vw, 1100px); max-height: 86vh; overflow: hidden; }\n.tita-matrixDialogTitle { display: inline-flex; align-items: baseline; gap: 6px; }\n.tita-matrixDialogBody { max-height: 74vh; overflow: auto; padding: 4px 2px 8px; }\n/* \u5168\u5C4F\u90A3\u4E00\u4EFD\u8868\u683C\u94FA\u6EE1\u5BBD\u5EA6\uFF1A**\u5217\u7B49\u5BBD**\uFF0C\u4E00\u884C 40 \u6765\u4E2A\u52A8\u4F5C\u4E5F\u8BFB\u5F97\u6210\u3002 */\n.tita-matrixDialogBody .tita-trialMatrixGrid { width: 100%; table-layout: fixed; }\n\n/* \u8BD5\u7EC4\u7EC7\u90A3\u4E00\u5757\u7684\u4E09\u6761\u6837\u5F0F\uFF08`.tita-drawerFacts` / `.tita-drawerHint` / `.tita-promptBox`\uFF09\n \u968F 2026-10-06 \u7684\u6574\u5757\u64A4\u9500\u4E00\u8D77\u5220\u6389 \u2014\u2014 \u5B83\u4EEC\u6CA1\u6709\u7B2C\u4E8C\u4E2A\u4F7F\u7528\u8005\u3002 */\n\n/* --------------------------------------------------------------- \u4EFB\u52A1\u8DEF\u5F84 */\n';
|
|
114563
|
-
var tagId3 = "dsh-data-domain-knowledge//
|
|
114320
|
+
// data-domain-knowledge-css:/private/tmp/dsh-knowledge-alpha-release/plugins/dsh-data-domain-knowledge/src/client/styles.css
|
|
114321
|
+
var css3 = '/* ---------------------------------------------------------------- tokens\n *\n * **\u672C\u6587\u4EF6\u4E0D\u518D\u58F0\u660E\u4EFB\u4F55 `--tita-*` \u540D\u5B57\u3002** \u8BFB\u6CD5\u56E0\u6B64\u53EA\u6709\u4E00\u6761\uFF1A`--tita-*` \u4E00\u5F8B\u6307\n * `packages/ui/src/theme.css` \u7684\u5171\u4EAB\u4EE4\u724C\uFF08\u58F0\u660E\u5728 `:root, body` \u4E0A\uFF0C\u8DDF\u7740\u5BBF\u4E3B\u7684\n * `data-ds-dark-theme` \u4E00\u8D77\u7FFB\uFF09\uFF0C\u63D2\u4EF6\u81EA\u5DF1\u6D3E\u751F\u7684\u989C\u8272\u4E00\u5F8B\u6302 `--ddk-` \u524D\u7F00\u3002\n *\n * \u65E7\u7248\u5728\u8FD9\u91CC\u91CD\u5B9A\u4E49\u4E86 `--tita-blue` / `--tita-violet` / `--tita-green` / `--tita-amber`\n * \u56DB\u4E2A\u540C\u540D\u4E0D\u540C\u4E49\u7684\u69FD\u4F4D\uFF08amber \u6307\u5411\u7684\u5176\u5B9E\u662F\u4E3B\u8272\uFF0C`--tita-green` \u662F\u4E00\u4E2A\u4E0D\u53C2\u4E0E\u4E3B\u9898\u7684\n * \u56FA\u5B9A\u503C\uFF09\uFF0C\u540D\u5B57\u4E0E\u5171\u4EAB\u8BCD\u8868\u649E\u8F66\uFF1B\u540C\u65F6 `--tita-ink` \u8FD9\u7C7B\u53C8\u53CD\u8FC7\u6765\u6307\u5411 `--color-tita-ink`\uFF0C\n * \u800C\u540E\u8005\u53C8\u6307\u56DE `--tita-ink` \u2014\u2014 \u5728 `:root` \u4E0A\u6784\u6210\u4E00\u4E2A\u81EA\u5B9A\u4E49\u5C5E\u6027\u73AF\u3002\u73B0\u5728\u4E24\u4EF6\u4E8B\u90FD\u6D88\u5931\u4E86\uFF1A\n * \u5171\u4EAB\u4EE4\u724C\u76F4\u63A5\u8BFB\uFF0C\u63D2\u4EF6\u6D3E\u751F\u8272\u53EA\u6709\u4E00\u4E2A\u6765\u6E90\u3002\n *\n * \u5171\u4EAB\u8BCD\u8868\u91CC\u6CA1\u6709\u300C\u7EA2\u8272\u5E95 / \u7EA2\u8272\u8FB9\u300D\u8FD9\u4E24\u6863\uFF08danger \u53EA\u662F\u4E00\u4E2A\u5BF9\u6BD4\u5EA6\u8FBE\u6807\u7684\u58A8\u8272\uFF09\uFF0C\u6240\u4EE5\u6309\n * \u5171\u4EAB tone \u7684\u540C\u4E00\u5957\u6BD4\u4F8B\u6D3E\u751F\uFF1A10% \u4F5C\u5E95\u300132% \u4F5C\u8FB9\u3002\u6DF7\u7684\u662F surface \u800C\u4E0D\u662F transparent\n * \u2014\u2014 \u900F\u660E\u6DF7\u8272\u5728\u6DF1\u8272\u5E95\u4E0A\u7B49\u4E8E\u770B\u4E0D\u89C1\uFF0C\u800C surface \u4F1A\u8DDF\u7740\u4E3B\u9898\u8D70\u3002\u58F0\u660E\u5728 `:root, body`\n * \u800C\u4E0D\u662F\u53EA\u5728 `:root`\uFF1A\u81EA\u5B9A\u4E49\u5C5E\u6027\u7684 `var()` \u662F\u5728**\u58F0\u660E\u5B83\u7684\u90A3\u4E2A\u5143\u7D20**\u4E0A\u6C42\u503C\u7684\uFF0C\u53EA\u5199\u5728\n * `:root` \u4F1A\u628A\u6D45\u8272\u503C\u51BB\u5728 <html> \u4E0A\u518D\u5206\u53D1\u7ED9\u6240\u6709\u5B50\u8282\u70B9\uFF08\u89C1 theme.css \u6587\u4EF6\u5934\uFF09\u3002\n */\n:root,\nbody {\n --ddk-danger-tint: color-mix(in srgb, var(--tita-danger) 10%, var(--tita-surface));\n --ddk-danger-line: color-mix(in srgb, var(--tita-danger) 32%, var(--tita-surface));\n}\n\n.tita-panel {\n box-sizing: border-box;\n display: flex;\n container-type: inline-size;\n width: 100%;\n min-width: 0;\n /* `position: relative` \u662F\u8FD9\u6761\u300C\u53EA\u5141\u8BB8\u4E00\u4E2A\u6EDA\u52A8\u6761\u300D\u89C4\u5219\u7684\u4E00\u534A\uFF1A\u63D2\u4EF6\u6839\u8282\u70B9\u5FC5\u987B\u540C\u65F6\n \u662F\u5B9A\u4F4D\u4E0A\u4E0B\u6587\u3002\u5426\u5219\u63D2\u4EF6\u5185 position:absolute \u7684\u88C5\u9970/\u65E0\u969C\u788D\u8282\u70B9\uFF08.tita-srOnly\u3001\n \u89C6\u89C9\u9690\u85CF\u7684\u8282\u70B9\u5217\u8868\uFF09\u4F1A\u5411\u4E0A\u627E\u5230\u5BBF\u4E3B\u7684 pane body \u4F5C\u4E3A\u5305\u542B\u5757\uFF0C\u5B83\u4EEC\u7684\u9759\u6001\u4F4D\u7F6E\n \u2014\u2014\u4E5F\u5C31\u662F\u957F\u5185\u5BB9\u7684\u672B\u5C3E\u2014\u2014\u4F1A\u628A\u5BBF\u4E3B\u9762\u677F\u6491\u51FA\u7B2C\u4E8C\u6761\u7A7A\u6EDA\u52A8\u6761\u3002 */\n position: relative;\n /* One scroller only: the panel is capped at the host pane height and\n `.tita-content` owns the vertical scroll, so the host pane never grows a\n second scrollbar beside it. */\n min-height: 0;\n height: 100%;\n max-height: 100%;\n flex-direction: column;\n overflow: hidden;\n background: var(--tita-canvas);\n color: var(--tita-ink);\n /* \u4E4B\u524D\u8FD9\u91CC\u5199\u7684\u662F `Inter, ui-sans-serif, \u2026`\uFF1AInter \u4ECE\u6765\u6CA1\u6709\u88AB\u52A0\u8F7D\u8FC7\uFF08\u6CA1\u6709 @font-face\u3001\n \u6CA1\u6709 font link\uFF09\uFF0C\u6240\u4EE5\u5B83\u4E00\u76F4\u53EA\u662F\u300C\u58F0\u660E\u4E86\u4E00\u4E2A\u4E0D\u5B58\u5728\u7684\u5B57\u4F53\u300D\uFF0C\u5B9E\u9645\u6E32\u67D3\u843D\u5230 ui-sans-serif\u3002\n \u73B0\u5728\u76F4\u63A5\u8BFB\u5171\u4EAB\u7684\u5B57\u4F53 token\uFF0C\u5E76\u4E14\u628A\u4E2D\u6587\u4E5F\u70B9\u540D\u2014\u2014\u4E2D\u6587\u6587\u6848\u4E0D\u8BE5\u4EA4\u7ED9\u6D4F\u89C8\u5668\u7684\u515C\u5E95\u53BB\u51B3\u5B9A\u3002 */\n font-family: var(--font-tita);\n font-size: 13px;\n line-height: 1.45;\n}\n\n.tita-panel *, .tita-panel *::before, .tita-panel *::after { box-sizing: border-box; }\n/* \u9762\u677F\u5206\u4E24\u5C42\uFF1A.tita-tabBar \u662F\u5916\u58F3\uFF08\u6C38\u8FDC\u53EF\u89C1\uFF09\uFF0C.tita-content \u662F\u552F\u4E00\u7684\u6EDA\u52A8\u533A\u3002\n Tab \u653E\u5728\u5916\u58F3\u91CC\u800C\u4E0D\u662F\u9760 position: sticky \u2014\u2014 \u7F6E\u9876\u5C31\u8BE5\u662F\u7ED3\u6784\uFF0C\u4E0D\u662F\u8865\u4E01\u3002\n 0029\uFF1A\u64A4\u6389 tab \u680F\u5E95\u8FB9\u90A3\u6761\u5206\u9694\u7EBF\u3002\u5206\u6BB5\u63A7\u4EF6\u81EA\u5DF1\u5C31\u6709\u8FB9\u6846\u548C\u5E95\u677F\uFF0C\u6A2A\u7EBF\u662F\u7B2C\u4E8C\u9053\n \u533A\u9694\uFF1B\u4E24\u6761\u6328\u7740\u753B\uFF0C\u8BFB\u8D77\u6765\u50CF\u300C\u4E24\u4E2A\u5DE5\u5177\u6761\u53E0\u5728\u4E00\u8D77\u300D\u3002 */\n.tita-panelTabs { display: flex; min-height: 0; flex: 1 1 auto; flex-direction: column; }\n/* \u5E95\u8FB9\u53EA\u7559 4px\uFF1Atab \u81EA\u5DF1\u7684\u4E0B\u8FB9\u6846\u5C31\u662F\u5185\u5BB9\u7684\u5206\u754C\uFF0C\u4E0B\u9762\u518D\u57AB 7px \u53EA\u662F\u628A\u4E24\u8005\u63A8\u5F00\n \uFF08GUI \u53CD\u9988 2026-09-21\u300C\u6BCF\u4E2A tab \u4E0B\u7684\u5185\u5BB9\u8DDD\u79BB tab \u592A\u8FDC\u300D\uFF09\u30028px \u7684\u5185\u5BB9\u4E0A\u8FB9\u8DDD\n \u7531 `TabsContent` \u7ED9\uFF0C\u4E24\u8005\u76F8\u52A0\u624D\u662F\u4ECE\u5206\u754C\u7EBF\u5230\u7B2C\u4E00\u5757\u5185\u5BB9\u7684\u8DDD\u79BB\u3002 */\n.tita-tabBar { display: flex; flex: 0 0 auto; align-items: center; background: var(--tita-surface); padding: 7px 12px 4px; }\n.tita-tabBarTabsViewport { min-width: 0; flex: 1 1 auto; overflow-x: auto; overflow-y: hidden; scrollbar-color: var(--tita-line-strong) transparent; scrollbar-width: thin; }\n.tita-tabBarTabsViewport::-webkit-scrollbar { height: 8px; }\n.tita-tabBarTabsViewport::-webkit-scrollbar-track { background: transparent; }\n.tita-tabBarTabsViewport::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 999px; background-clip: content-box; background-color: var(--tita-line-strong); }\n.tita-tabBarTabsViewport::-webkit-scrollbar-thumb:hover { background-color: var(--tita-ink-faint); }\n.tita-panel .tita-tabBar .tita-tabsList { display: flex; width: max-content; min-width: max-content; max-width: none; overflow: visible; }\n.tita-tabBarSettings { flex: 0 0 auto; margin-left: 8px; }\n/* \u89C6\u56FE\u7EA7\u72B6\u6001\u884C\uFF1A\u53EA\u5728\u771F\u7684\u8BFB\u53D6\u5931\u8D25 / \u8BFB\u53D6\u4E2D\u65F6\u624D\u51FA\u73B0\u3002\u6807\u9898\u884C\u64A4\u6389\u4E4B\u540E\uFF0C\n \u8FD9\u662F\u5185\u5BB9\u9876\u90E8\u552F\u4E00\u5141\u8BB8\u51FA\u73B0\u7684\u4E00\u884C\u300C\u5173\u4E8E\u8FD9\u4E00\u9875\u672C\u8EAB\u300D\u7684\u6587\u5B57\u3002 */\n.tita-viewStatus { display: flex; align-items: center; gap: 6px; margin: 0 0 10px; color: var(--tita-ink-muted); font-size: 11.5px; }\n.tita-viewStatus > svg { flex: 0 0 auto; color: var(--tita-warning); }\n\n.tita-content { flex: 1 1 auto; width: 100%; max-width: none; min-width: 0; min-height: 0; margin: 0; padding: 0 12px 28px; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; scrollbar-gutter: stable; }\n.tita-hiddenInput { display: none; }\n\n/* DSH marks the conversation header as a draggable window region on macOS.\n Its built-in drag exclusions omit the view tabs, so clicks on Chat / Trajectory\n can be swallowed as window drags. Keep the tab strip and its buttons interactive. */\nhtml[data-platform=\'darwin\'] [data-window-drag] [data-conversation-tabs],\nhtml[data-platform=\'darwin\'] [data-window-drag] [data-conversation-tabs] > [role=\'tab\'] {\n -webkit-app-region: no-drag;\n}\n\n/* ------------------------------------------------- \u753B\u5E03\u4F18\u5148\u7684\u89C6\u56FE\uFF08\u667A\u80FD\u5F52\u56E0\uFF09 */\n/* \u4E3A\u4EC0\u4E48\u8981\u6709\u8FD9\u4E00\u6863\uFF1A`.tita-content` \u7684\u9ED8\u8BA4\u5951\u7EA6\u662F\u300C\u552F\u4E00\u7684\u7EB5\u5411\u6EDA\u52A8\u533A\u300D\uFF0C\u5B83\u7ED9\u6240\u6709\n \u89C6\u56FE\u90FD\u7559\u4E86\u56DB\u5468\u5185\u8FB9\u8DDD\u3002\u800C\u667A\u80FD\u5F52\u56E0\u7684\u4E3B\u5185\u5BB9\u662F\u4E00\u5757\u753B\u5E03 \u2014\u2014 \u753B\u5E03\u65E2\u4E0D\u8BE5\u8DDF\u7740\u9875\u9762\u6EDA\uFF0C\n \u4E5F\u4E0D\u8BE5\u88AB\u5185\u8FB9\u8DDD\u524A\u6389\u4E00\u5708\u3002\u6240\u4EE5\u8FD9\u91CC\u7ED9\u5B83\u4E00\u4E2A\u663E\u5F0F\u7684**\u7B2C\u4E8C\u6863\u5951\u7EA6**\uFF1A\u5185\u5BB9\u533A\u672C\u8EAB\u53D8\u6210\n \u4E0D\u6EDA\u52A8\u7684\u7EB5\u5411 flex \u5BB9\u5668\uFF0C\u6EDA\u52A8\u6743\u4E0B\u653E\u7ED9\u5757\u5185\u5404\u81EA\u9700\u8981\u7684\u533A\u57DF\uFF08\u6848\u4F8B/\u6392\u67E5\u6B63\u6587\uFF09\u3002\n \u8FD9\u4E0D\u662F\u7ED9\u4E00\u4E2A\u89C6\u56FE\u5F00\u540E\u95E8\uFF1A\u5B83\u662F\u300C\u4E3B\u5185\u5BB9\u662F\u753B\u5E03\u300D\u8FD9\u4E00\u7C7B\u89C6\u56FE\u7684\u901A\u7528\u5F62\u6001\uFF0C\u5C06\u6765\u518D\u6709\n \u753B\u5E03\u578B\u89C6\u56FE\uFF08\u6BD4\u5982\u8840\u7F18\u56FE\uFF09\u76F4\u63A5\u590D\u7528\u8FD9\u4E00\u6863\uFF0C\u800C\u4E0D\u662F\u5404\u81EA\u5199\u4E00\u5957\u8D1F\u8FB9\u8DDD\u3002 */\n.tita-contentStage { display: flex; flex-direction: column; overflow: hidden; padding: 0 12px 12px; }\n.tita-contentStage .tita-pageHeader { flex: 0 0 auto; padding-bottom: 6px; }\n.tita-stageContent { display: flex; min-width: 0; min-height: 0; flex: 1 1 auto; flex-direction: column; padding-top: 0; }\n\n/* ------------------------------------------------------------------ tabs */\n/* \u5206\u6BB5\u63A7\u4EF6\uFF08segmented\uFF09\u843D\u5728\u767D\u8272\u5DE5\u5177\u6761\u4E0A\uFF1A\u8F68\u9053\u662F\u4E00\u5757\u6D45\u7070\u5706\u89D2\u5E95\u677F\uFF0C\u9009\u4E2D\u9879\u662F\u6D6E\u8D77\u7684\n \u767D\u8272\u80F6\u56CA + \u4E3B\u8272\u6587\u5B57\u3002\u4E0D\u7528\u4E0B\u5212\u7EBF \u2014\u2014 \u4E0B\u5212\u7EBF\u4F1A\u548C\u4E0B\u65B9\u5361\u7247\u8FB9\u6846\u5728\u89C6\u89C9\u4E0A\u6253\u67B6\u3002\n 0035\uFF1A\u9884\u89C8\u62BD\u5C49\u91CC\u300C\u5185\u5BB9\u300D\u90A3\u4E00\u884C\u7684 Markdown / \u6587\u672C\u5207\u6362\u662F**\u540C\u4E00\u5957\u63A7\u4EF6**\uFF0C\u6240\u4EE5\u9009\u62E9\u5668\n \u5E26\u4E0A `.tita-kbViewTabs`\u3002\u62BD\u5C49\u8D70 Portal\u3001\u4E0D\u5728 `.tita-panel` \u91CC\uFF0C\u8FD9\u6761\u5BB9\u5668\u89C4\u5219\u5FC5\u987B\u663E\u5F0F\n \u70B9\u540D\u5B83\uFF1B\u89E6\u53D1\u5668\u90A3\u51E0\u6761\u89C4\u5219\u6CA1\u6709 `.tita-panel` \u524D\u7F00\uFF0C\u6240\u4EE5\u81EA\u52A8\u751F\u6548 \u2014\u2014 \u4E24\u5904\u4E00\u4EFD\u5B9A\u4E49\uFF0C\n \u4E0D\u5404\u9020\u4E00\u5957\u3002 */\n.tita-panel .tita-tabsList,\n.tita-kbViewTabs {\n display: inline-flex;\n max-width: 100%;\n align-items: center;\n gap: 2px;\n overflow-x: auto;\n border: 1px solid var(--tita-line);\n border-radius: 9px;\n background: var(--tita-surface-muted);\n padding: 2px;\n scrollbar-width: none;\n}\n.tita-tabsList::-webkit-scrollbar { display: none; }\n.tita-tabsList .tita-uiTabsTrigger {\n display: inline-flex;\n min-height: 28px;\n align-items: center;\n gap: 5px;\n border: 0;\n border-radius: 7px;\n background: transparent;\n padding: 0 11px;\n color: var(--tita-ink-muted);\n font-size: 12px;\n font-weight: 600;\n letter-spacing: -.01em;\n}\n.tita-tabsList .tita-uiTabsTrigger svg { flex: 0 0 auto; opacity: .85; }\n.tita-tabsList .tita-uiTabsTrigger:hover { background: color-mix(in srgb, var(--tita-surface) 70%, transparent); color: var(--tita-ink); }\n.tita-tabsList .tita-uiTabsTrigger[data-state=\'active\'] {\n border-bottom-color: transparent;\n background: var(--tita-surface);\n color: var(--tita-primary);\n font-weight: 680;\n box-shadow: 0 1px 2px rgb(15 23 42 / .12), inset 0 0 0 1px var(--tita-primary-shadow);\n}\n.tita-tabsList .tita-uiTabsTrigger[data-state=\'active\'] svg { opacity: 1; }\n.tita-viewGuideBar { display: flex; flex: 0 0 auto; min-height: 28px; align-items: center; justify-content: flex-end; padding: 1px 2px 0; }\n.tita-viewGuideBar .tita-infoHint { width: 24px; height: 24px; }\n/* \u62BD\u5C49\u91CC\u90A3\u4E00\u679A\u662F**\u884C\u5185\u6B21\u7EA7\u63A7\u4EF6**\uFF1A\u5B83\u7AD9\u5728\u6B63\u6587\u5757\u81EA\u5DF1\u7684\u300C\u8BFB\u6CD5\u5DE5\u5177\u680F\u300D\u4E0A\uFF080042 \u4E4B\u524D\u6324\u5728\n \u300C\u5185\u5BB9\u300D\u5C0F\u8282\u6807\u9898\u90A3\u4E00\u884C\u91CC\uFF09\uFF0C\u6240\u4EE5\u6BD4\u9876\u680F\u90A3\u679A\u5C0F\u4E00\u53F7\uFF08\u9876\u680F\u662F\u9762\u677F\u7EA7\u5BFC\u822A\uFF0C\u8FD9\u91CC\u662F\u540C\u4E00\u4E2A\n \u5206\u5757\u91CC\u7684\u4E24\u79CD\u8BFB\u6CD5\uFF09\u3002\u653E\u5728\u57FA\u7840\u89C4\u5219\u4E4B\u540E\u8986\u76D6 \u2014\u2014 \u9009\u62E9\u5668\u6743\u91CD\u76F8\u540C\uFF0C\u9760\u987A\u5E8F\u53D6\u80DC\u3002 */\n.tita-kbViewTabs { min-height: 24px; }\n.tita-kbViewTabs .tita-uiTabsTrigger { min-height: 22px; padding: 0 9px; font-size: 11px; }\n/*\n * wiki \u680F\u5185\u90E8\u7684\u4E8C\u7EA7 tab\uFF080042\uFF09\uFF1A**\u8981\u6BD4\u9762\u677F\u4E00\u7EA7 tab \u660E\u663E\u4F4E\u4E00\u5C42**\u3002\n * \u4E24\u6392 tab \u540C\u65F6\u51FA\u73B0\u5728\u4E00\u5C4F\u91CC\u65F6\uFF0C\u5C42\u7EA7\u5DEE\u4E0D\u662F\u597D\u4E0D\u597D\u770B\u7684\u95EE\u9898\uFF0C\u662F\u4F1A\u4E0D\u4F1A\u70B9\u9519\u7684\u95EE\u9898 \u2014\u2014\n * \u6240\u4EE5\u8FD9\u91CC\u7528\u66F4\u5C0F\u7684\u5B57\u3001\u66F4\u77EE\u7684\u6309\u94AE\u3001\u66F4\u8F7B\u7684\u5E95\u8272\uFF0C\u4E14\u5DE6\u5BF9\u9F50\uFF08\u4E00\u7EA7 tab \u4E5F\u662F\u5DE6\u5BF9\u9F50\uFF09\u3002\n */\n.tita-kbSubTabs { display: grid; gap: 10px; }\n.tita-kbSubTabsList { justify-self: start; min-height: 28px; }\n.tita-kbSubTabsList .tita-uiTabsTrigger { min-height: 24px; padding: 0 12px; font-size: 11.5px; }\n/* \u300C\u65B0\u9875\u9762\u6253\u5F00\u300D\u662F\u62BD\u5C49\u5934\u4E0A\u7684**\u51FA\u53E3**\uFF0C\u4E0D\u662F\u4E3B\u64CD\u4F5C\uFF1A\u5B83\u548C\u6807\u9898\u540C\u4E00\u884C\u3001\u6BD4\u9762\u677F\u7EA7\u6309\u94AE\u5C0F\u4E00\u53F7\uFF0C\n \u4E0D\u53BB\u62A2\u6807\u9898\u30020042 \u4E4B\u524D\u5B83\u957F\u5728\u300C\u5185\u5BB9\u300D\u5C0F\u8282\u91CC\uFF0C\u4E14**\u53EA\u5728\u6B63\u6587\u88AB\u622A\u65AD\u65F6**\u624D\u6E32\u67D3 \u2014\u2014\n \u4E8E\u662F\u77ED\u6587\u6863\u4E0A\u5B83\u6839\u672C\u4E0D\u5B58\u5728\uFF08\u7528\u6237\u62A5\u544A\u7684\u539F\u8BDD\u662F\u300C\u90A3\u4E2A\u6309\u94AE\u6211\u4E5F\u6CA1\u770B\u5230\u300D\uFF09\u3002\n \u5165\u53E3\u7684\u663E\u9690\u4E0D\u80FD\u4F9D\u8D56\u5185\u5BB9\u957F\u5EA6\uFF1A\u4F4D\u7F6E\u4E0E\u53EF\u89C1\u6027\u7A33\u5B9A\uFF0C\u4EBA\u624D\u5B66\u5F97\u5230\u300C\u5168\u6587\u5728\u90A3\u4E2A\u6574\u9875\u91CC\u300D\u3002 */\n.tita-drawerHeadAction { height: 20px; min-height: 20px; flex: 0 0 auto; gap: 4px; padding: 0 6px; font-size: 10.5px; }\n/*\n * **\u76F4\u63A5\u6302\u5728\u5206\u5757\u91CC\u7684\u6309\u94AE\u4E0D\u8BB8\u88AB\u7F51\u683C\u62C9\u6EE1**\uFF082026-10-06\uFF0C\u7528\u6237\u70B9\u540D\u300C\u6309\u94AE\u8C03\u5C0F\uFF0C\u8DDF\u5185\u5BB9\u5DE6\u5BF9\u9F50\u300D\uFF09\u3002\n *\n * `.tita-drawerSection` \u662F `display: grid`\uFF0C\u800C grid item \u9ED8\u8BA4 `stretch`\uFF1BButton \u81EA\u5DF1\u7684\n * \u57FA\u7840\u7C7B\u91CC\u53C8\u6709\u4E00\u6761 `justify-center`\u3002\u4E24\u4EF6\u4E8B\u53E0\u8D77\u6765\uFF0C\u4E00\u679A\u300C\u539F\u59CB\u8F93\u5165\u300D\u6309\u94AE\u5C31\u53D8\u6210**\u6A2A\u8D2F\u62BD\u5C49\u7684\n * \u4E00\u6761\u7A7A\u6846\u3001\u6587\u5B57\u5C45\u4E2D** \u2014\u2014 \u770B\u7740\u50CF\u4E00\u5757\u9762\u677F\uFF0C\u70B9\u4E0B\u53BB\u624D\u77E5\u9053\u662F\u6309\u94AE\uFF08\u5939\u5177\u622A\u56FE\u6838\u8FC7\uFF09\u3002\n *\n * `justify-self: start` \u8BA9\u5B83\u56DE\u5230\u300C\u8D34\u7740\u6807\u7B7E\u7684\u4E00\u679A\u6309\u94AE\u300D\uFF0C\u5DE6\u8FB9\u7F18\u4E0E\u8FD9\u4E00\u5757\u7684\u6B63\u6587\u5BF9\u9F50\u3002\n * \u53EA\u9488\u5BF9**\u76F4\u63A5\u5B50\u5143\u7D20**\uFF1A\u5206\u5757\u91CC\u90A3\u4E9B\u6210\u6392\u7684\u6309\u94AE\uFF08`flex` \u5BB9\u5668\u91CC\u7684\uFF09\u672C\u6765\u5C31\u4E0D\u53D7\u7F51\u683C\u62C9\u4F38\u3002\n */\n.tita-drawerSection > .tita-uiButton { justify-self: start; }\n\n/* ---------------------------------------------------------------- header */\n/* \u6807\u9898\u884C\u53EA\u5360\u4E00\u884C\uFF1A\u56FE\u6807 + \u6807\u9898 + \u4E00\u53E5\u8BF4\u660E\u3002\u72B6\u6001\u5FBD\u6807\u4E0E \u22EF \u83DC\u5355\u5DF2\u64A4\uFF080022\uFF09\u3002 */\n.tita-pageHeader { display: flex; align-items: center; padding: 8px 2px 10px; }\n.tita-headingGroup { display: flex; min-width: 0; flex: 1 1 auto; flex-wrap: wrap; align-items: center; gap: 4px 8px; }\n.tita-headingGroup h1 { margin: 0; color: var(--tita-ink); font-size: 15px; font-weight: 750; letter-spacing: -.02em; line-height: 1.2; }\n.tita-headingGroup > p { min-width: 0; margin: 0; overflow: hidden; color: var(--tita-ink-muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-brandMark { display: inline-flex; width: 24px; height: 24px; flex: 0 0 auto; align-items: center; justify-content: center; border: 1px solid var(--tita-primary-line); border-radius: 8px; background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-brandMarkBlue { border-color: var(--tita-primary-line); background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-brandMarkViolet { border-color: var(--tita-tone-violet-line); background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-brandMarkAmber { border-color: var(--tita-tone-amber-line); background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-brandMarkGreen { border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n\n.tita-notice { display: flex; min-height: 42px; align-items: center; gap: 9px; margin: 0 0 14px; padding: 8px 8px 8px 13px; box-shadow: none; }\n.tita-notice > span { flex: 1; min-width: 0; }\n.tita-noticeError { border-color: var(--ddk-danger-line); background: var(--ddk-danger-tint); color: var(--tita-danger); }\n.tita-noticeSuccess { border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); color: var(--tita-success); }\n\n/* ------------------------------------------------------------- overview */\n/* \u6982\u89C8\u662F\u5355\u5217\u5806\u53E0\uFF1A\u95EE\u9898\u57DF \u2192 \u56DE\u5B57\u5F62\u67B6\u6784\u56FE\u3002\u53F3\u4FA7\u680F\uFF08\u81EA\u8FDB\u5316\u72B6\u6001/\u56FE\u4F8B\uFF09\u968F 0022 \u4E00\u5E76\u64A4\u6389\uFF0C\n 248px \u7684\u7B2C\u4E8C\u5217\u7559\u7740\u53EA\u4F1A\u8BA9\u56DE\u5B57\u5F62\u88AB\u6324\u7A84\u3002 */\n.tita-architecture { display: grid; gap: 10px; min-width: 0; }\n\n/* \u8F66\u9053\u8EAB\u4EFD\u9760\u300C\u5F69\u8272\u6807\u9898\u6761 + \u5E95\u8272\u300D\uFF0C\u4E0D\u518D\u9760\u5DE6\u4FA7\u90A3\u6761 3px \u7AD6\u7EBF\uFF080022\uFF1A\u7AD6\u7EBF\u4E0D\u627F\u8F7D\u4FE1\u606F\uFF0C\n \u4E09\u6761\u8F66\u9053\u5374\u5404\u81EA\u90FD\u6709\u4E00\u6761\uFF0C\u53CD\u800C\u663E\u5F97\u662F\u540C\u4E00\u5957\u88C5\u9970\uFF09\u3002 */\n\n\n\n/* B \u8F66\u9053\u7684\u56DB\u6BB5\uFF1A\u4E0A\u4F20 \u2192 \u7F16\u8BD1 \u2192 \u53EC\u56DE \u2192 \u91CD\u6392\u3002 */\n.tita-stageStack { display: grid; flex: 1 1 100%; min-width: 0; gap: 8px; }\n.tita-stageRow { display: grid; min-width: 0; gap: 6px; }\n.tita-stageLabel { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 700; letter-spacing: .01em; }\n.tita-stageLabel b { display: inline-flex; width: 17px; height: 17px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 6px; font-size: 10px; font-weight: 800; }\n.tita-stageLabelViolet { color: var(--tita-tone-violet); }\n.tita-stageLabelViolet b { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-stageLabelGreen { color: var(--tita-tone-green); }\n.tita-stageLabelGreen b { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-stageTrack { display: flex; min-width: 0; flex-wrap: wrap; align-items: stretch; gap: 8px; }\n.tita-stageConnector { display: flex; padding-left: 4px; }\n.tita-flowFork { display: grid; min-width: 158px; flex: 1 1 176px; gap: 8px; align-content: stretch; }\n\n.tita-flowNode { display: flex; min-width: 152px; max-width: 268px; flex: 1 1 176px; align-items: flex-start; gap: 9px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 11px; color: var(--tita-ink); font: inherit; text-align: left; cursor: pointer; box-shadow: 0 1px 2px rgba(15, 23, 42, .04); transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease; }\n.tita-flowNode:hover { transform: translateY(-1px); border-color: var(--tita-line-strong); box-shadow: 0 7px 16px rgba(30, 43, 67, .08); }\n.tita-flowNode:focus-visible { outline: 3px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-flowNodeCompact { min-width: 146px; padding: 8px 10px; }\n.tita-flowNodeSelected { border-color: currentColor; box-shadow: 0 0 0 3px var(--tita-primary-wash); }\n.tita-flowNodeIcon { display: inline-flex; width: 30px; height: 30px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 9px; }\n.tita-flowNodeCompact .tita-flowNodeIcon { width: 26px; height: 26px; border-radius: 8px; }\n.tita-flowNodeCopy { display: grid; min-width: 0; gap: 3px; }\n.tita-flowNodeCopy strong { color: var(--tita-ink); font-size: 12px; font-weight: 700; line-height: 1.35; }\n.tita-flowNodeCompact .tita-flowNodeCopy strong { font-size: 11.5px; }\n.tita-flowNodeCopy small { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.45; }\n.tita-flowNodeBadges { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 4px; }\n.tita-flowNodeBadges .tita-uiBadge { min-height: 19px; padding: 0 6px; font-size: 10px; }\n\n.tita-flowNodeBlue { color: var(--tita-primary); }\n.tita-flowNodeBlue .tita-flowNodeIcon { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-flowNodeViolet { color: var(--tita-tone-violet); }\n.tita-flowNodeViolet .tita-flowNodeIcon { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-flowNodeGreen { color: var(--tita-tone-green); }\n.tita-flowNodeGreen .tita-flowNodeIcon { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-flowNodeAmber { color: var(--tita-tone-amber); }\n.tita-flowNodeAmber .tita-flowNodeIcon { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-flowNodeNeutral { color: var(--tita-ink-muted); }\n.tita-flowNodeNeutral .tita-flowNodeIcon { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n\n.tita-flowArrow { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; color: var(--tita-ink-faint); }\n.tita-flowArrowBlue { color: var(--tita-primary); }\n.tita-flowArrowViolet { color: var(--tita-tone-violet); }\n.tita-flowArrowGreen { color: var(--tita-success); }\n.tita-flowArrowAmber { color: var(--tita-warning); }\n\n.tita-archBridge { display: flex; align-items: center; gap: 9px; padding: 0 6px; color: var(--tita-success); }\n.tita-archBridgeUp { display: inline-flex; flex: 0 0 auto; color: currentColor; }\n.tita-archBridgeLine { height: 1px; min-width: 12px; flex: 1 1 auto; background: currentColor; opacity: .45; }\n.tita-archBridgeLabel { flex: 0 0 auto; color: var(--tita-tone-green); font-size: 11px; font-weight: 650; }\n\n/* ------------------------------------------------------------ right rail */\n.tita-rail { display: grid; min-width: 0; align-content: start; gap: 12px; }\n.tita-railCard { min-width: 0; padding: 14px; }\n.tita-railCardHeader { display: flex; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-railCardHeader h3 { margin: 0; color: var(--tita-ink); font-size: 13px; font-weight: 750; }\n.tita-donut { position: relative; width: 132px; height: 132px; margin: 14px auto 12px; }\n.tita-donut svg { display: block; width: 100%; height: 100%; }\n.tita-donut strong { position: absolute; inset: 0; display: grid; place-items: center; color: var(--tita-ink); font-size: 22px; font-weight: 750; letter-spacing: -.02em; }\n.tita-railRows { display: grid; margin: 0; padding: 0; list-style: none; }\n.tita-railRows li { display: flex; align-items: center; gap: 8px; border-top: 1px solid var(--tita-surface-muted); padding: 8px 2px; color: var(--tita-ink-muted); font-size: 11.5px; }\n.tita-railRows li:first-child { border-top: 0; }\n.tita-railRowIcon { display: inline-flex; flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-railRowLabel { flex: 1 1 auto; min-width: 0; }\n.tita-railRows strong { color: var(--tita-ink); font-size: 11.5px; white-space: nowrap; }\n.tita-railRowDanger strong { color: var(--tita-danger); }\n.tita-railRowDanger .tita-railRowIcon { color: var(--tita-danger); }\n.tita-railActions { display: grid; gap: 7px; margin-top: 12px; }\n.tita-railCta { width: 100%; }\n.tita-legendList { display: grid; margin: 12px 0 0; padding: 0; list-style: none; gap: 12px; }\n.tita-legendList li { display: flex; align-items: center; gap: 11px; }\n.tita-legendList strong { display: block; color: var(--tita-ink); font-size: 11.5px; }\n.tita-legendList small { display: block; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-legendArrow { position: relative; width: 34px; height: 0; flex: 0 0 auto; border-top: 2px solid currentColor; }\n.tita-legendArrow::after { content: \'\'; position: absolute; top: -4px; right: -2px; border-left: 7px solid currentColor; border-top: 4px solid transparent; border-bottom: 4px solid transparent; }\n.tita-legendArrowBlue { color: var(--tita-primary); }\n.tita-legendArrowViolet { color: var(--tita-tone-violet); }\n.tita-legendArrowGreen { color: var(--tita-tone-green); }\n.tita-railQuote { margin: 2px 2px 0; color: var(--tita-ink-faint); font-size: 11px; line-height: 1.65; text-align: center; }\n.tita-railQuote small { display: block; margin-top: 6px; color: var(--tita-ink-faint); }\n\n/* -------------------------------------------------------- shared metrics */\n.tita-viewStack { display: grid; gap: 14px; }\n.tita-statsRow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }\n.tita-metricCard { display: flex; min-width: 0; align-items: center; gap: 11px; padding: 13px 14px; }\n.tita-metricIcon { display: inline-flex; width: 34px; height: 34px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 9px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-metricToneViolet .tita-metricIcon { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-metricToneBlue .tita-metricIcon { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-metricToneGreen .tita-metricIcon { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-metricToneAmber .tita-metricIcon { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-metricCopy { display: flex; min-width: 0; flex-direction: column; gap: 2px; }\n.tita-metricCopy small { color: var(--tita-ink-muted); font-size: 11px; }\n.tita-metricCopy strong { overflow: hidden; color: var(--tita-ink); font-size: 18px; font-weight: 750; letter-spacing: -.02em; text-overflow: ellipsis; white-space: nowrap; }\n.tita-metricCopy em { overflow: hidden; color: var(--tita-ink-faint); font-size: 10px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }\n\n.tita-workspaceCard { min-width: 0; padding: 16px; }\n.tita-cardHeader { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 13px; }\n/* \u5361\u5934\u53F3\u4FA7\u90A3\u4E00\u7EC4\uFF1A\u72B6\u6001\u5FBD\u6807 + \u300C\u53C2\u6570\u300Dchip\uFF080034\uFF09\u3002\u5B83\u4EEC\u662F\u4E00\u7EC4\uFF0C\u6240\u4EE5 gap \u6BD4\u5916\u5C42\u5C0F\u3002 */\n.tita-cardHeaderActions { display: flex; flex: 0 0 auto; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 7px; }\n.tita-workspaceCard h3, .tita-memoryCard h3, .tita-skillCard h3, .tita-skillHero h3, .tita-evalRunner h3, .tita-evalPlan h3 { margin: 4px 0 0; color: var(--tita-ink); font-size: 15px; font-weight: 750; }\n.tita-sectionEyebrow { display: inline-flex; align-items: center; gap: 6px; color: var(--tita-ink-faint); font-size: 10px; font-weight: 750; letter-spacing: .1em; }\n.tita-headerMetaText { padding-top: 16px; color: var(--tita-ink-faint); font-size: 11px; }\n.tita-cardDescription { margin: 5px 0 13px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.6; }\n.tita-actionRow { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }\n.tita-resultBadge { margin-top: 10px; }\n.tita-inputRow { display: flex; align-items: center; gap: 8px; }\n.tita-inputRow .tita-uiInput { flex: 1; min-width: 0; }\n.tita-infoList { display: grid; gap: 8px; margin-top: 14px; }\n.tita-infoList > div { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; border-bottom: 1px solid var(--tita-line); padding: 7px 0; }\n.tita-infoList span { color: var(--tita-ink-muted); font-size: 11px; }\n.tita-infoList strong { color: var(--tita-ink); font-size: 11px; text-align: right; }\n\n.tita-buildTrace { display: flex; min-width: 0; align-items: stretch; flex-wrap: wrap; gap: 9px; margin: 4px 0 2px; }\n.tita-buildTraceItem { display: flex; min-width: 0; flex: 1 1 190px; align-items: center; gap: 9px; }\n.tita-buildTraceNode { display: flex; width: 100%; min-width: 0; min-height: 58px; flex: 1 1 0; align-items: center; gap: 9px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 9px 10px; color: var(--tita-ink); font: inherit; text-align: left; cursor: pointer; transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease; }\n.tita-buildTraceNode:hover { transform: translateY(-1px); border-color: var(--tita-line-strong); box-shadow: 0 6px 14px rgba(30, 43, 67, .06); }\n.tita-buildTraceNode:focus-visible { outline: 3px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-buildTraceNodeSelected { border-color: currentColor; }\n.tita-buildTraceIcon { display: inline-flex; width: 29px; height: 29px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 8px; }\n.tita-buildTraceNode > span:last-child { display: grid; min-width: 0; gap: 2px; }\n.tita-buildTraceNode strong, .tita-buildTraceNode small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.tita-buildTraceNode strong { color: var(--tita-ink); font-size: 12px; line-height: 1.3; }\n.tita-buildTraceNode small { color: var(--tita-ink-muted); font-size: 10px; }\n.tita-buildTraceBlue .tita-buildTraceIcon { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-buildTraceViolet .tita-buildTraceIcon { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-buildTraceGreen .tita-buildTraceIcon { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-buildTraceAmber .tita-buildTraceIcon { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n\n.tita-memoryGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }\n.tita-memoryCard { min-width: 0; padding: 16px; }\n.tita-memoryCardWide { grid-column: 1 / -1; }\n.tita-memoryCard p { min-height: 42px; margin: 10px 0 15px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.7; }\n.tita-timeline { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 14px 0; color: var(--tita-ink-muted); font-size: 12px; }\n.tita-timeline span { border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface-muted); padding: 6px 9px; }\n.tita-timeline i { color: var(--tita-ink-faint); font-style: normal; }\n\n.tita-skillHero { display: flex; align-items: center; gap: 12px; padding: 15px 16px; }\n.tita-skillHero > div:nth-child(2) { flex: 1; min-width: 0; }\n.tita-skillHero p { margin: 5px 0 0; color: var(--tita-ink-muted); font-size: 12px; }\n.tita-skillHeroIcon, .tita-skillIcon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 10px; background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-skillHeroIcon { width: 40px; height: 40px; }\n.tita-skillGrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }\n.tita-skillCard { min-width: 0; padding: 14px; }\n.tita-skillCardTop { display: flex; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-skillIcon { width: 30px; height: 30px; background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-skillCard p { min-height: 36px; margin: 8px 0 16px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.6; }\n.tita-skillMeta { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--tita-line); padding-top: 9px; color: var(--tita-ink-faint); font-size: 10px; }\n\n.tita-evalGrid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 14px; }\n.tita-evalRunner, .tita-evalPlan { min-width: 0; padding: 16px; }\n.tita-evalInput { display: flex; align-items: center; gap: 8px; margin-top: 13px; }\n.tita-evalInput .tita-uiInput { flex: 1; min-width: 0; }\n.tita-evalResult { display: flex; align-items: center; gap: 7px; margin-top: 12px; border: 1px solid var(--tita-tone-green-line); border-radius: 9px; background: var(--tita-tone-green-tint); color: var(--tita-success); padding: 9px 10px; font-size: 11px; }\n.tita-evalResult span { margin-left: auto; color: var(--tita-success); }\n.tita-emptyState { display: flex; align-items: center; gap: 7px; border: 1px dashed var(--tita-line); border-radius: 9px; color: var(--tita-ink-faint); padding: 10px; font-size: 11px; }\n.tita-evalRows { display: grid; margin: 8px 0 14px; }\n.tita-evalRows > div { display: flex; justify-content: space-between; border-bottom: 1px solid var(--tita-line); padding: 9px 0; color: var(--tita-ink-muted); font-size: 11px; }\n.tita-evalRows strong { color: var(--tita-ink-faint); font-weight: 600; }\n\n/* --------------------------------------------------------------- drawer */\n/*\n * \u62BD\u5C49\u5BBD\u5EA6\u3002\u5185\u8FB9\u8DDD\u7531 UI \u5305\u7684 `.tita-uiDrawerBody`\uFF08\u5DE6\u53F3 18px\u3001\u4E0A\u4E0B 15px\uFF09\u63D0\u4F9B\u3002\n *\n * \u8FD9\u91CC\u539F\u6765\u8FD8\u6709\u4E00\u6574\u5957 `tita-drawerHeader` / `drawerBody` / `drawerDescription` /\n * `drawerIcon` / `drawerActions` / `drawerSubtitle`\uFF0C\u662F\u5E73\u53F0\u62BD\u5C49\u6362\u6210\u5171\u4EAB\u7EC4\u4EF6\u4E4B\u524D\u7559\u4E0B\u7684\uFF1A\n * \u73B0\u5728\u4E00\u4E2A\u5F15\u7528\u90FD\u6CA1\u6709\uFF08`styles.drawerHeader` \u4E4B\u7C7B\u5728\u5BA2\u6237\u7AEF\u6E90\u7801\u91CC 0 \u547D\u4E2D\uFF09\uFF0C\u7559\u7740\u53EA\u4F1A\u8BA9\u4EBA\n * \u4EE5\u4E3A\u62BD\u5C49\u7684\u95F4\u8DDD\u7531\u5B83\u4EEC\u51B3\u5B9A\uFF0C\u6539\u9519\u5730\u65B9\u3002\u5DF2\u5220\u3002\n *\n * \u7559\u4E0B\u7684\u662F**\u771F\u6B63\u51B3\u5B9A\u9884\u89C8\u62BD\u5C49\u7248\u5F0F**\u7684\u4E09\u6761\uFF1A\n */\n.tita-drawer { width: min(440px, 100vw); box-sizing: border-box; }\n/* SourceRaw \u9884\u89C8\u9700\u8981\u7ED9\u6807\u9898\u3001\u5143\u4FE1\u606F\u548C Markdown / \u6587\u672C\u5207\u6362\u5668\u7559\u51FA\u53EF\u8BFB\u7A7A\u95F4\u3002\n \u53EA\u9650\u5236\u62BD\u5C49\u672C\u8EAB\uFF1B\u6B63\u6587\u4ECD\u7136 `min-width: 0`\uFF0C\u6240\u4EE5\u4E0D\u4F1A\u628A\u5185\u5BB9\u518D\u9501\u6210\u53E6\u4E00\u79CD\u5BBD\u5EA6\u3002 */\n.tita-sourcePreviewDrawer { min-width: min(320px, 100vw); }\n/*\n * SourceRaw \u9884\u89C8\u53EA\u5141\u8BB8\u6CBF\u6B63\u6587\u5411\u4E0B\u9605\u8BFB\u3002\n *\n * \u5171\u4EAB DrawerBody \u9ED8\u8BA4\u662F `overflow: auto`\uFF0C\u4F1A\u628A\u6B63\u6587\u91CC\u5076\u5C14\u51FA\u73B0\u7684\u957F URL\u3001\u4EE3\u7801\u6216\u8868\u683C\n * \u4EA4\u7ED9\u5916\u5C42\u518D\u5F00\u4E00\u6761\u6A2A\u5411\u6EDA\u52A8\u6761\u3002\u6B63\u6587\u5757\u81EA\u8EAB\u5DF2\u7ECF\u8D1F\u8D23\u65AD\u884C\u4E0E\u6536\u7F29\uFF0C\u5916\u5C42\u53EA\u4FDD\u7559\u7EB5\u5411\u6EDA\u52A8\uFF0C\n * \u907F\u514D\u5F39\u5C42\u6574\u4F53\u88AB\u5DE6\u53F3\u62D6\u52A8\u3002\n */\n.tita-sourcePreviewDrawer .tita-uiDrawerBody {\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior-x: none;\n}\n/*\n * \u62BD\u5C49\u5934\uFF1A\u5DE6\u8FB9\u662F\u300C\u8FD9\u662F\u4EC0\u4E48\u300D\uFF08\u6807\u9898 + \u8DEF\u5F84\uFF09\uFF0C\u53F3\u8FB9\u662F**\u51FA\u53E3**\uFF08\u65B0\u9875\u9762\u6253\u5F00\uFF09\u3002\n * `min-width: 0` \u662F\u5FC5\u9700\u7684\uFF1A\u8DEF\u5F84\u53EF\u4EE5\u5F88\u957F\uFF0C\u6CA1\u6709\u5B83\u8FD9\u4E00\u884C\u4F1A\u88AB\u6491\u7834\u800C\u4E0D\u662F\u7701\u7565\u3002\n */\n.tita-drawerHead { display: flex; min-width: 0; flex: 1 1 auto; align-items: flex-start; justify-content: space-between; gap: 10px; }\n.tita-drawerHeadCopy { min-width: 0; flex: 1 1 auto; }\n/* 0042 \u90A3\u679A\u300C\u7F16\u8BD1 \u2304\u300D\u7684\u83DC\u5355\u5BBD\u5EA6\u89C4\u5219\u968F\u4E0B\u62C9\u4E00\u8D77\u64A4\u4E86\uFF082026-10-01\uFF09\uFF1A\u4E24\u6863\u6536\u6210\u4E00\u6863\u4E4B\u540E\n \u7F16\u8BD1\u53EA\u5269\u4E00\u679A\u6309\u94AE + \u4E24\u4E2A\u5BF9\u8BDD\u6846\uFF0C\u83DC\u5355\u4E0D\u5B58\u5728\u4E86\uFF0C\u6837\u5F0F\u7559\u7740\u5C31\u4F1A\u53D8\u6210\u4E00\u4EFD\u6CA1\u4EBA\u8BFB\u7684\u65E7\u7EA6\u675F\u3002 */\n/*\n * \u6B63\u6587\u5206\u5757\uFF1A\u5757\u4E0E\u5757\u4E4B\u95F4 14px\uFF0C\u5757\u4E0E\u5757\u4E4B\u95F4**\u753B\u4E00\u6761\u5206\u9694\u7EBF**\uFF080042\uFF09\u3002\n *\n * \u5B83\u5FC5\u987B\u6302\u5728\u62BD\u5C49\u6B63\u6587\u4E0A\u3001\u800C**\u5206\u5757\u5BB9\u5668**\u6302\u5728\u6BCF\u4E00\u5757\u4E0A \u2014\u2014 \u56E0\u4E3A\u4E00\u5757\uFF08\u6BD4\u5982\u300C\u5143\u4FE1\u606F\u300D\uFF09\u662F\n * \u300C\u5C0F\u6807\u9898 + \u5B83\u81EA\u5DF1\u7684\u8868\u300D\u4E24\u4E2A\u540C\u7EA7\u8282\u70B9\uFF0C\u53EA\u5728\u5916\u5C42\u7ED9\u7EDF\u4E00 gap \u4F1A\u628A\u6807\u9898\u548C\u5B83\u81EA\u5DF1\u7684\u5185\u5BB9\u4E5F\n * \u62C9\u5F00 14px\uFF0C\u8BFB\u8D77\u6765\u6807\u9898\u5C31\u4E0D\u518D\u7BA1\u7740\u4E0B\u9762\u90A3\u5757\u4E86\u3002\n *\n * 0042 \u8865\u4E0A\u5206\u9694\u7EBF\uFF1A\u4E09\u5757\u7684\u5206\u754C\u539F\u6765\u53EA\u9760 14px \u7684\u95F4\u8DDD\uFF0C\u800C\u5C0F\u8282\u5934\u4E0E\u6B63\u6587\u53C8\u662F\u540C\u5B57\u53F7\uFF0C\n * \u4E8E\u662F\u4E00\u6761\u957F\u62BD\u5C49\u8BFB\u8D77\u6765\u662F\u4E00\u6574\u6BB5\u6587\u5B57\u3002\u5206\u9694\u7EBF\u662F\u300C\u8FD9\u4E09\u5757\u662F\u4E09\u4EF6\u4E8B\u300D\u6700\u7701\u5B57\u7684\u8868\u8FBE\u3002\n */\n.tita-drawerStack { display: grid; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; gap: 14px; align-content: start; }\n/* \u4E00\u5757\u5185\u90E8\uFF1A\u6807\u9898\u4E0E\u81EA\u5DF1\u7684\u5185\u5BB9\u8D34\u7D27\u3002\u4E0A\u5206\u9694\u7EBF\u753B\u5728\u5757\u4E0A\uFF0C\u7B2C\u4E00\u5757\u4E0D\u753B\uFF08\u5B83\u9876\u7740\u62BD\u5C49\u5934\uFF09\u3002 */\n.tita-drawerSection { display: grid; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; gap: 6px; align-content: start; border-top: 1px solid var(--tita-line); padding-top: 12px; }\n.tita-drawerSection > * { width: 100%; min-width: 0; max-width: 100%; }\n.tita-drawerSection:first-child { border-top: 0; padding-top: 0; }\n/* \u5206\u5757\u4E4B\u540E\uFF0C\u6807\u9898\u7684\u4E0A\u8FB9\u8DDD\u4EA4\u7ED9\u5757\u95F4\u8DDD \u2014\u2014 \u5426\u5219 14 + 16 \u4F1A\u5728\u4E24\u5904\u53E0\u51FA\u4E00\u4E2A\u7A7A\u6D1E\u3002 */\n.tita-drawerSection > .tita-kbSubHead { margin: 0; }\n\n/*\n * \u5C0F\u8282\u5934\uFF1A**\u4E09\u79CD\u5C42\u7EA7\u91CC\u7684\u4E2D\u95F4\u90A3\u5C42**\u3002\u6807\u9898 15px\uFF08UI \u5305\u7684 `uiDrawerTitle`\uFF09/\n * \u5C0F\u8282\u5934 13px / \u6B63\u6587 12px\u3002\n *\n * 0042 \u4E4B\u524D\u8FD9\u91CC\u662F 12px/700 \u2014\u2014 \u4E0E\u6B63\u6587**\u540C\u5B57\u53F7**\uFF0C\u53EA\u5DEE\u4E00\u4E2A\u5B57\u91CD\uFF0C\u4E2D\u95F4\u4E5F\u6CA1\u6709\u5206\u9694\u7EBF\uFF0C\n * \u6240\u4EE5\u300C\u5185\u5BB9\u300D\u4E24\u4E2A\u5B57\u8BFB\u8D77\u6765\u662F\u6B63\u6587\u7684\u7B2C 0 \u884C\u3002\u5B57\u53F7\u5DEE 1px \u662F\u523B\u610F\u7684\uFF1A\u518D\u5927\u5C31\u548C\u5C0F\u8282\u91CC\u7684\n * \u6B63\u6587\u62A2\uFF0C\u518D\u5C0F\u5C31\u56DE\u5230\u539F\u6765\u90A3\u4E2A\u95EE\u9898\u3002\n *\n * `align-items` 2026-10-06 \u4ECE `baseline` \u6362\u6210 `center`\uFF1A\u57FA\u7EBF\u5BF9\u9F50\u5BF9**\u6587\u5B57**\u662F\u5BF9\u7684\uFF0C\n * \u4F46\u8FD9\u4E00\u884C\u53F3\u8FB9\u653E\u7684\u662F\u6309\u94AE\uFF08\u300C\u65B0\u9875\u9762\u6253\u5F00\u300D\uFF09\u4E0E\u4E24\u679A tab \u2014\u2014 \u6309\u94AE\u7684\u57FA\u7EBF\u662F\u5B83\u81EA\u5DF1\u5185\u5BB9\u7684\n * \u57FA\u7EBF\uFF0C\u5BF9\u9F50\u5230 13px \u6807\u9898\u7684\u57FA\u7EBF\u4E4B\u540E\uFF0C\u6309\u94AE\u6574\u4F53\u504F\u4E0B 1\u20132px\uFF0C\u770B\u4E0A\u53BB\u5C31\u662F\u300C\u6CA1\u5BF9\u9F50\u300D\u3002\n * \u8FD9\u4E00\u884C\u91CC\u9AD8\u5EA6\u5404\u4E0D\u76F8\u540C\u7684\u4E1C\u897F\u53EA\u6709\u6309\u5782\u76F4\u5C45\u4E2D\u624D\u4E92\u76F8\u5BF9\u5F97\u4E0A\u3002\n */\n.tita-drawerSubHead { display: flex; width: 100%; min-width: 0; max-width: 100%; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-drawerSubHead h4 { display: inline-flex; min-width: 0; max-width: 100%; flex: 1 1 auto; align-items: center; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 13px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-drawerSubHead h4 svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n/* \u5C0F\u8282\u53F3\u4FA7\u7684**\u4E00\u7EC4**\u4E1C\u897F\uFF08\u4E8B\u5B9E + \u52A8\u4F5C\uFF09\u3002\u6210\u7EC4\u662F\u4E3A\u4E86\u8BA9 `space-between` \u53EA\u5206\u4E00\u6B21\uFF1A\n \u4E09\u4E2A\u5E73\u7EA7\u5B50\u8282\u70B9\u4F1A\u628A\u4E2D\u95F4\u90A3\u4E2A\u6446\u5230\u884C\u6B63\u4E2D\uFF0C\u770B\u8D77\u6765\u50CF\u53E6\u4E00\u680F\u3002 */\n.tita-drawerHeadAside { display: inline-flex; width: auto; min-width: 0; max-width: 100%; flex: 1 1 auto; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }\n\n/* \u5C0F\u8282\u53F3\u4FA7\u7684\u4E8B\u5B9E\uFF08\u5B57\u7B26\u6570 / \u6761\u76EE\u6570\uFF09\uFF1A\u4E0E\u6807\u9898\u540C\u4E00\u884C\u3001\u6BD4\u6807\u9898\u8F7B\u3002 */\n.tita-drawerHeadFact { flex: 0 0 auto; color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n\n/* \u8BFB\u6CD5\u5DE5\u5177\u680F\uFF1A\u6B63\u6587\u5757\u81EA\u5DF1\u7684\u4E24\u79CD\u8BFB\u6CD5\uFF08Markdown / \u6587\u672C\uFF09+ \u672C\u5730\u5C55\u5F00\u3002 */\n.tita-drawerToolbar { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-drawerMore { height: 22px; min-height: 22px; flex: 0 0 auto; gap: 4px; padding: 0 7px; font-size: 10.5px; }\n.tita-cardRecompileNotice { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 6px; border-radius: 8px; padding: 7px 9px; font-size: 10.5px; line-height: 1.55; }\n.tita-cardRecompileNotice > svg { margin-top: 2px; }\n.tita-cardRecompileNoticeSuccess { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-cardRecompileNoticeSuccess > svg { color: var(--tita-tone-green); }\n.tita-cardRecompileNoticeError { background: var(--ddk-danger-tint); color: var(--tita-danger); }\n\n/* ---------------------------------------------------------------- review */\n/*\n * Review \u662F\u4E00\u4E2A\u5224\u65AD\u533A\uFF0C\u4E0D\u662F\u6B63\u6587\u7684\u9644\u5F55\uFF1A\u5148\u7ED9\u72B6\u6001\u4E00\u4E2A\u7A33\u5B9A\u843D\u70B9\uFF0C\u518D\u653E\u52A8\u4F5C\uFF0C\u6700\u540E\u653E\u4EBA\u7684\u8BB0\u5F55\u3002\n * \u4E4B\u524D\u72B6\u6001\u6324\u5728\u5C0F\u8282\u6807\u9898\u53F3\u4FA7\uFF0C\u52A8\u4F5C\u548C\u5907\u6CE8\u53C8\u662F\u65E0\u5C42\u7EA7\u7684\u51E0\u884C\u6309\u94AE / \u6587\u672C\uFF0C\u6253\u5F00\u62BD\u5C49\u540E\u5F88\u96BE\u77E5\u9053\n * \u300C\u73B0\u5728\u662F\u4EC0\u4E48\u72B6\u6001\u300D\u548C\u300C\u4E0B\u4E00\u6B65\u8981\u505A\u4EC0\u4E48\u300D\u5206\u522B\u5728\u54EA\u91CC\u3002\n */\n.tita-reviewPanel { display: grid; gap: 8px; }\n.tita-reviewStatus { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 9px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 9px 10px; }\n.tita-reviewStatusDone { border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); }\n.tita-reviewStatusIcon { display: inline-flex; width: 24px; height: 24px; align-items: center; justify-content: center; border-radius: 7px; background: var(--tita-surface); color: var(--tita-ink-faint); }\n.tita-reviewStatusDone .tita-reviewStatusIcon { color: var(--tita-tone-green); }\n.tita-reviewStatusCopy { display: grid; min-width: 0; gap: 2px; }\n.tita-reviewStatusCopy b { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; }\n.tita-reviewStatusCopy small { color: var(--tita-ink-muted); font-size: 10px; line-height: 1.4; overflow-wrap: anywhere; }\n.tita-reviewScore { display: grid; justify-items: end; gap: 1px; border-left: 1px solid var(--tita-line); padding-left: 10px; }\n.tita-reviewScore small { color: var(--tita-ink-faint); font-size: 9.5px; }\n.tita-reviewScore b { color: var(--tita-ink); font-size: 15px; font-variant-numeric: tabular-nums; line-height: 1.1; }\n.tita-reviewActions { display: flex; min-width: 0; flex-wrap: wrap; gap: 6px; }\n.tita-reviewAction { min-height: 28px; gap: 5px; padding-inline: 10px; font-size: 11.5px; }\n.tita-reviewNotice { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 6px; border-radius: 8px; padding: 7px 9px; font-size: 10.5px; line-height: 1.55; }\n.tita-reviewNotice > svg { margin-top: 2px; }\n.tita-reviewNoticeSuccess { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-reviewNoticeSuccess > svg { color: var(--tita-tone-green); }\n.tita-reviewNoticeError { background: var(--ddk-danger-tint); color: var(--tita-danger); }\n.tita-reviewNotes { display: grid; gap: 6px; }\n.tita-reviewNotesHead { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; color: var(--tita-ink-muted); font-size: 10.5px; font-weight: 650; }\n.tita-reviewNotesHead small { color: var(--tita-ink-faint); font-size: 10px; font-variant-numeric: tabular-nums; font-weight: 500; }\n.tita-reviewNoteList { display: grid; margin: 0; padding: 0; list-style: none; gap: 6px; }\n.tita-reviewNoteItem { display: grid; gap: 5px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); padding: 8px 9px; }\n.tita-reviewNoteAnomaly { border-color: var(--tita-tone-amber-line); background: var(--tita-tone-amber-tint); }\n.tita-reviewNoteTop { display: flex; min-width: 0; align-items: center; gap: 6px; }\n.tita-reviewNoteKind { display: inline-flex; align-items: center; gap: 4px; color: var(--tita-ink-muted); font-size: 10px; font-weight: 700; }\n.tita-reviewNoteAnomaly .tita-reviewNoteKind { color: var(--tita-tone-amber); }\n.tita-reviewNoteMeta { min-width: 0; overflow: hidden; color: var(--tita-ink-faint); font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-reviewNoteRemove { width: 21px; min-width: 21px; height: 21px; margin-left: auto; color: var(--tita-ink-faint); }\n.tita-reviewNoteText { margin: 0; color: var(--tita-ink); font-size: 11px; line-height: 1.65; overflow-wrap: anywhere; }\n.tita-reviewComposer { display: grid; gap: 8px; border: 1px solid var(--tita-primary-line); border-radius: 10px; background: var(--tita-primary-soft); padding: 9px; }\n.tita-reviewKindSwitch { display: flex; flex-wrap: wrap; gap: 5px; }\n.tita-reviewKindButton { min-height: 26px; gap: 4px; padding-inline: 8px; font-size: 10.5px; }\n.tita-reviewTextarea { min-height: 66px; border-color: var(--tita-line-strong); background: var(--tita-surface); font-size: 11.5px; line-height: 1.6; }\n.tita-reviewComposerFooter { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }\n\n/*\n * \u6B63\u6587\u5757\uFF1A**\u9501\u9AD8\u5185\u6EDA + \u9605\u8BFB\u680F\u4E0A\u9650\u3002**\n *\n * 0042 \u4E4B\u524D\u6B63\u6587\u6CA1\u6709\u9AD8\u5EA6\u4E0A\u9650\uFF0C\u6574\u6761\u62BD\u5C49\u4F53\uFF08`.tita-uiDrawerBody`\uFF09\u662F\u4E00\u6839\u957F\u6EDA\u52A8\u6761 \u2014\u2014\n * \u6B63\u6587\u6709\u591A\u957F\uFF0C\u300C\u7248\u672C\u300D\u5C31\u88AB\u63A8\u5230\u591A\u8FDC\uFF0C\u800C\u7248\u672C\u6B63\u662F\u8981\u52A8\u624B\u7684\u5730\u65B9\uFF08\u56DE\u6EDA\uFF09\u3002\n * \u73B0\u5728\u6B63\u6587\u81EA\u5DF1\u6EDA\uFF0C\u4E0B\u9762\u7684\u5206\u5757\u4F4D\u7F6E\u4E0D\u518D\u968F\u6B63\u6587\u957F\u5EA6\u6F02\u79FB\u3002\n * `min(45vh, 460px)`\uFF1A\u77EE\u7A97\u53E3\u4E0B\u6309\u89C6\u53E3\u8D70\uFF0C\u9AD8\u7A97\u53E3\u4E0B\u4E0D\u5360\u6EE1\u6574\u5C4F\u3002\n *\n * `max-width: 68ch` \u662F\u53E6\u4E00\u534A\uFF1A\u62BD\u5C49\u58F3**\u53EF\u4EE5\u62D6\u5BBD**\uFF08\u5BBD\u8868\u683C\u9700\u8981\u5BBD\u5EA6\uFF0C\u90A3\u662F\u58F3\u7684\u5C5E\u6027\uFF09\uFF0C\n * \u4F46\u6B63\u6587\u7684\u884C\u5BBD\u4E0D\u8BE5\u8DDF\u7740\u957F \u2014\u2014 12px \u4E0B\u4E00\u884C 68 \u4E2A\u5B57\u7B26\uFF0C\u662F\u80FD\u4E00\u773C\u8BFB\u5B8C\u7684\u957F\u5EA6\u3002\n * \u8FD9\u4E2A\u4E0A\u9650\u53EA\u5728\u628A\u62BD\u5C49\u62D6\u5BBD\u4E4B\u540E\u624D\u54AC\u5F97\u4F4F\uFF0C\u9ED8\u8BA4 440px \u4E0B\u6B63\u6587\u672C\u6765\u5C31\u66F4\u7A84\u3002\n */\n/*\n * \u6B63\u6587\u5757\u7684\u9762\uFF082026-10-05\uFF09\u3002\n *\n * \u5B83\u6B64\u524D**\u53EA\u6709\u4E00\u6761\u6EDA\u52A8\u6761**\uFF1A\u767D\u5E95\u4E0A\u7684 12px \u6587\u5B57\uFF0C\u4E0E\u4E0A\u9762\u90A3\u4E9B\u5143\u4FE1\u606F\u884C\u3001\u4E0B\u9762\u90A3\u4E9B\u5C0F\u8282\u5934\n * \u5904\u5728\u540C\u4E00\u7247\u767D\u91CC\uFF0C\u8BFB\u8D77\u6765\u50CF\u300C\u62BD\u5C49\u6B63\u6587\u7684\u5EF6\u7EED\u300D\uFF0C\u800C\u4E0D\u50CF\u300C\u4E00\u4EFD\u5185\u5BB9\u300D\u3002\u7528\u6237\u7684\u539F\u8BDD\u662F\n * \u300C\u628A\u8FD9\u5757\u5185\u5BB9\u72EC\u7ACB\u51FA\u6765\uFF0C\u8BA9\u7528\u6237\u77E5\u9053\u8FD9\u662F\u4E00\u4E2A\u5B8C\u6574\u7684\u5185\u5BB9\u5757\u300D\u3002\n *\n * \u4E09\u4EF6\u4E8B\u4E00\u8D77\u505A\u624D\u6210\u7ACB\uFF0C\u7F3A\u4E00\u4EF6\u90FD\u53EA\u662F\u88C5\u9970\uFF1A\n *\n * 1. **\u4E00\u7247\u81EA\u5DF1\u7684\u5E95**\uFF08`--tita-surface-muted`\uFF09\u2014\u2014 \u767D\u5E95\u767D\u6846\u7684\u8FB9\u754C\u53EA\u80FD\u9760\u7EBF\uFF0C\u800C\u7EBF\u5728\u8FD9\u91CC\n * \u548C\u5206\u8282\u7EBF\u662F\u540C\u4E00\u4E2A\u8BB0\u53F7\uFF1B\n * 2. **\u4E00\u6761\u5185\u51F9\u7684\u5F71**\uFF08`inset` + \u8F6F\u6A21\u7CCA\uFF09\u2014\u2014 \u5B83\u8BF4\u7684\u662F\u300C\u5185\u5BB9\u9677\u5728\u8FD9\u5757\u677F\u91CC\u300D\uFF0C\u4E0E\u5361\u7247\u90A3\u79CD\n * \u300C\u6D6E\u5728\u4E0A\u9762\u300D\u7684\u5F71\u65B9\u5411\u76F8\u53CD\uFF0C\u6240\u4EE5\u4E0D\u4F1A\u8BFB\u6210\u53C8\u4E00\u5F20\u5361\uFF1B\n * 3. **\u5185\u8FB9\u8DDD**\uFF0814px\uFF09\u2014\u2014 \u6587\u5B57\u4E0D\u8D34\u7740\u8FB9\u6846\uFF0C\u5757\u624D\u6709\u539A\u5EA6\u3002\n *\n * \u987A\u5E26\u628A\u4E24\u79CD\u8BFB\u6CD5\uFF08Markdown / \u6587\u672C\uFF09\u5408\u6210\u540C\u4E00\u4E2A\u5F62\u72B6\uFF1A\u5B83\u672C\u6765\u5C31\u662F**\u540C\u4E00\u4EFD\u5185\u5BB9**\u7684\u4E24\u79CD\u8BFB\u6CD5\n * \uFF08\u89C1 `PreviewContent`\uFF09\uFF0C\u6B64\u524D\u53EA\u6709\u6587\u672C\u90A3\u4E00\u7248\u81EA\u5E26\u8FB9\u6846\uFF0C\u4E8E\u662F\u5207\u4E00\u4E0B\u8BFB\u6CD5\uFF0C\u7248\u5F0F\u4E5F\u8DDF\u7740\u53D8\u3002\n */\n.tita-drawerBody {\n max-height: min(45vh, 460px);\n overflow-y: auto;\n /*\n * **\u6A2A\u5411\u4E0D\u6EDA**\uFF082026-10-06\uFF0C\u7528\u6237\u70B9\u540D\uFF1A\u300C\u5185\u5BB9\u5BBD\u5EA6\u8981\u8DDF\u7740\u5F39\u5C42\u7684\u5BBD\u5EA6\u8D70\uFF0C\u7981\u6B62\u5E95\u90E8\u518D\u6765\u4E00\u4E2A\n * \u5DE6\u53F3\u6ED1\u52A8\u7684\u6761\u300D\uFF09\u3002\n *\n * \u6B64\u524D\u8FD9\u91CC\u662F `overflow: auto` + `max-width: 68ch`\uFF1A\u5BBD\u8868\u683C / \u957F\u4EE3\u7801\u884C\u4E00\u8D85\u51FA\u5C31\u957F\u51FA\u6A2A\u5411\n * \u6EDA\u52A8\u6761\uFF0C\u800C 68ch \u53C8\u628A\u6B63\u6587\u9489\u5728\u4E00\u4E2A\u6BD4\u62BD\u5C49\u7A84\u7684\u5BBD\u5EA6\u4E0A \u2014\u2014 \u628A\u62BD\u5C49\u62D6\u5BBD\uFF0C\u6B63\u6587\u4E0D\u52A8\uFF0C\u4E8E\u662F\u90A3\u6839\n * \u6A2A\u6761\u6210\u4E86\u552F\u4E00\u7684\u300C\u5BBD\u5EA6\u53CD\u9988\u300D\u3002\u4E24\u4EF6\u4E8B\u4E00\u8D77\u6539\uFF1A\n *\n * - \u5BBD\u5EA6**\u8DDF\u7740\u62BD\u5C49**\uFF08`max-width` \u53BB\u6389\uFF09\uFF0C\u62BD\u5C49\u62D6\u591A\u5BBD\uFF0C\u6B63\u6587\u5C31\u591A\u5BBD\uFF1B\n * - \u6A2A\u5411**\u4E0D\u51FA\u6761**\uFF08`overflow-x: hidden`\uFF09\u3002\u5BBD\u5185\u5BB9\u5404\u81EA\u5728\u81EA\u5DF1\u7684\u5C42\u91CC\u89E3\u51B3\uFF1A\u56FE\u7247\u4E0E\u8868\u683C\n * `max-width: 100%`\uFF0C`<pre>` \u672C\u6765\u5C31 `pre-wrap`\uFF0C\u884C\u5185\u957F\u4E32\u7531 `overflow-wrap: anywhere`\n * \u65AD\u884C\u3002**\u4E0D\u8BB8\u628A\u6574\u5757\u5185\u5BB9\u63A8\u51FA\u53BB**\uFF0C\u90A3\u6B63\u662F\u8981\u6D88\u6389\u7684\u90A3\u6839\u6761\u3002\n */\n overflow-x: hidden;\n overscroll-behavior: contain;\n border: 1px solid var(--tita-line);\n border-radius: 10px;\n background: var(--tita-surface-muted);\n box-shadow: inset 0 1px 2px rgb(16 24 40 / 6%);\n padding: 12px 14px;\n}\n/*\n * **\u5185\u5BB9\u8DDF\u7740\u62BD\u5C49\u7684\u5BBD\u5EA6\u8D70**\uFF082026-10-06\uFF0C\u7528\u6237\u7B2C\u4E8C\u6B21\u70B9\u8FD9\u4EF6\u4E8B\uFF1A\u300C\u5185\u5BB9\u8981\u8DDF\u7740\u4FA7\u8FB9\u680F\u7684\u5BBD\u5EA6\u8D70\uFF0C\n * \u800C\u4E0D\u662F\u53CD\u8FC7\u6765\u300D\uFF09\u3002\n *\n * \u4E0A\u4E00\u7248\u53EA\u5199\u4E86 `overflow-x: hidden`\uFF1A\u6A2A\u6761\u662F\u6CA1\u6709\u4E86\uFF0C\u4F46\u5BBD\u5185\u5BB9**\u5E76\u6CA1\u6709\u53D8\u7A84** \u2014\u2014 \u5B83\u88AB\u88C1\u6389\u4E86\uFF0C\n * \u53F3\u534A\u8FB9\u76F4\u63A5\u770B\u4E0D\u89C1\u3002\u90A3\u662F\u628A\u75C7\u72B6\u85CF\u8D77\u6765\uFF0C\u4E0D\u662F\u628A\u95EE\u9898\u89E3\u51B3\u3002\u771F\u6B63\u8981\u505A\u7684\u662F\u8BA9\u5BBD\u5185\u5BB9**\u91CD\u65B0\u6392\u7248\u5230\n * \u62BD\u5C49\u7684\u5BBD\u5EA6\u91CC**\uFF1A\n *\n * - **\u8868\u683C**\uFF1A`width: 100%` + \u5355\u5143\u683C `overflow-wrap: anywhere`\u3002\u5217\u5BBD\u7531\u5185\u5BB9\u7B97\uFF0C\u4F46\u5185\u5BB9\n * \u5141\u8BB8\u65AD\u884C\uFF0C\u6240\u4EE5\u6574\u5F20\u8868\u6536\u8FDB\u62BD\u5C49\u5BBD\u5EA6\uFF0C\u4E0D\u6A2A\u6EDA\u4E5F\u4E0D\u88AB\u88C1\u3002\u5217\u591A\u7684\u8868\u4F1A\u53D8\u9AD8\uFF0C\u90A3\u6BD4\u770B\u4E0D\u5168\u597D\u3002\n * - **\u4EE3\u7801\u5757**\uFF1A`pre-wrap` + `anywhere`\u3002\u4E00\u884C SQL \u5728 380px \u91CC\u5FC5\u7136\u6298\u884C\uFF1B\u4E0D\u6298\u5C31\u53EA\u6709\u6A2A\u6761\n * \u6216\u8005\u88C1\u6389\u3002\u6587\u672C\u89C6\u56FE\u90A3\u4E00\u7248\uFF08`.tita-kbPre`\uFF09\u672C\u6765\u5C31\u662F `pre-wrap`\uFF0C\u8FD9\u91CC\u4E0E\u5B83\u4E00\u81F4\u3002\n * - **\u884C\u5185\u957F\u4E32**\uFF08URL\u3001hash\uFF09\uFF1A\u540C\u6837 `anywhere`\u3002\n *\n * \u5171\u4EAB\u7684 markdown \u6E32\u67D3\u5668\uFF08`packages/ui/src/markdown.css`\uFF09\u5BF9\u6574\u9875\u7528\u7684\u662F\u300C\u8868\u683C\u81EA\u5DF1\u6A2A\u6EDA\u300D\n * \uFF08`tableWrap`\uFF09\u2014\u2014 \u90A3\u6761\u5BF9**\u6574\u9875**\u6210\u7ACB\uFF0C\u56E0\u4E3A\u6574\u9875\u5BBD\u5EA6\u4E0D\u8BE5\u88AB\u4E00\u5F20 12 \u5217\u7684\u8868\u51B3\u5B9A\u3002\u62BD\u5C49\u91CC\u4E0D\n * \u9002\u7528\uFF1A\u8FD9\u91CC\u5BBD\u5EA6\u672C\u6765\u5C31\u7A84\uFF0C\u6A2A\u6EDA\u7B49\u4E8E\u8BA9\u8BFB\u8005\u5DE6\u53F3\u62C9\uFF0C\u800C\u7528\u6237\u8981\u7684\u662F**\u5185\u5BB9\u9002\u914D\u5BBD\u5EA6**\u3002\n */\n.tita-drawerBody {\n box-sizing: border-box;\n width: 100%;\n min-width: 0;\n max-width: 100%;\n}\n.tita-drawerBody > * { min-width: 0; }\n.tita-drawerBody table { width: 100%; max-width: 100%; }\n.tita-drawerBody th, .tita-drawerBody td { overflow-wrap: anywhere; }\n/*\n * \u9996\u5217\u5728\u8FD9\u7C7B\u6587\u6863\u91CC\u662F**\u884C\u6807**\uFF08\u6765\u6E90 / \u5177\u4F53\u903B\u8F91 / \u95EE\u9898\uFF09\u3002`anywhere` \u4F1A\u628A\u5B83\u4EEC\u538B\u6210\u4E24\u4E09\u4E2A\u5B57\n * \u4E00\u884C \u2014\u2014 \u300C\u5177\u4F53\u903B\u8F91\u300D\u7AD6\u6210\u56DB\u884C\uFF0C\u8BFB\u8D77\u6765\u6BD4\u8868\u683C\u6A2A\u6EDA\u8FD8\u7CDF\u3002\u7ED9\u9996\u5217\u4E00\u4E2A\u4E0B\u9650\uFF0C\u5269\u4E0B\u7684\u5BBD\u5EA6\u7531\u6570\u636E\u5217\u5206\u3002\n */\n.tita-drawerBody th:first-child, .tita-drawerBody td:first-child { min-width: 4.5em; }\n.tita-drawerBody pre, .tita-drawerBody code {\n max-width: 100%;\n white-space: pre-wrap;\n overflow-wrap: anywhere;\n}\n.tita-toneBlue { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-toneViolet { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-toneGreen { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-toneAmber { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-toneNeutral { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-actionPanel { border: 1px solid var(--tita-line); border-radius: 12px; background: var(--tita-surface); padding: 14px; }\n.tita-actionPanel h3 { margin: 0; color: var(--tita-ink); font-size: 13px; }\n.tita-actionPanel p { margin: 6px 0 12px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.6; }\n.tita-actionPanel > .tita-uiBadge { margin-top: 10px; }\n.tita-inlineHint { display: flex; align-items: center; gap: 6px; margin: 10px 0 0; color: var(--tita-ink-faint); font-size: 11px; }\n.tita-evolutionDetail > div:first-child { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }\n.tita-evolutionDetail > p { margin: 0 0 14px; color: var(--tita-ink-muted); font-size: 12px; line-height: 1.7; }\n\n/* ---------------------------------------------------- settings drawer UI */\n/* \u89C4\u5219\u6B63\u6587\u4E0E\u8868\u5355\u5171\u7528 560px \u7684\u9605\u8BFB\u5BBD\u5EA6\uFF1B\u7A84\u5C4F\u65F6\u968F\u89C6\u53E3\u6536\u7F29\uFF0C\u5185\u5BB9\u4FDD\u6301\u4E00\u5217\u3002 */\n.tita-settingsDrawer { width: min(560px, 100vw); min-width: min(480px, 90vw); }\n.tita-knowledgeSettings .tita-settingsSection { border-radius: 0; padding: 0; }\n.tita-knowledgeSettings .tita-settingsSectionHeader { align-items: center; margin-bottom: 16px; padding-bottom: 12px; }\n.tita-knowledgeSettings .tita-settingsSectionHeader > div:first-child { min-width: 0; }\n.tita-knowledgeSettings .tita-settingsGrid { gap: 16px; }\n.tita-settingsError { border: 1px solid var(--ddk-danger-line); border-radius: 9px; background: var(--ddk-danger-tint); color: var(--tita-danger); padding: 9px 11px; font-size: 12px; }\n/* \u4E00\u4E2A\u6570\u5B57\u5B57\u6BB5\u7684\u8349\u7A3F\u4E0D\u5408\u6CD5\uFF1A**\u4E0D\u662F\u9519\u8BEF\u6846\uFF0C\u662F\u4E00\u53E5\u65C1\u6CE8**\u3002\u5B83\u8BF4\u7684\u662F\u300C\u8FD9\u4E00\u7B14\u73B0\u5728\u8FD8\u5199\u4E0D\u4E86\u300D\uFF0C\n \u800C\u4EBA\u6B63\u505C\u5728\u8F93\u5165\u6846\u91CC\u6539\u5B83 \u2014\u2014 \u5957\u4E00\u5C42\u5E26\u8FB9\u6846\u7684\u7EA2\u5757\u4F1A\u628A\u4E00\u4E2A\u4E2D\u95F4\u6253\u5B57\u72B6\u6001\u8BF4\u6210\u4E00\u6B21\u6545\u969C\u3002 */\n.tita-settingInvalid { color: var(--tita-danger); font-size: 11px; line-height: 1.5; }\n/* \u300C\u8BFB\u4E0D\u5230\uFF0C\u91CD\u8BD5\u300D\u90A3\u4E00\u884C\u3002\u5B83\u957F\u5728**\u5B57\u6BB5\u81EA\u5DF1\u8EAB\u4E0A**\uFF08\u5C31\u5728\u8DEF\u5F84\u8F93\u5165\u6846\u4E0B\u9762\uFF09\uFF0C\u56E0\u4E3A\u5931\u8D25\u7684\u662F\n \u8FD9\u4E00\u6B21\u8BFB\u53D6\uFF0C\u800C\u4E0D\u662F\u6574\u4E2A\u8BBE\u7F6E\u5206\u533A \u2014\u2014 \u62A5\u5728\u5206\u533A\u5934\u4E0A\u4F1A\u8BA9\u4EBA\u4EE5\u4E3A\u6240\u6709\u8BBE\u7F6E\u90FD\u8BFB\u4E0D\u5230\u3002 */\n.tita-settingsRetry { display: flex; align-items: center; gap: 6px; margin: 6px 0 0; color: var(--tita-danger); font-size: 11.5px; line-height: 1.5; }\n.tita-settingsRetry > svg { flex: 0 0 auto; }\n.tita-settingsRetry > span { min-width: 0; flex: 1 1 auto; }\n/*\n * \u5206\u7EC4**\u4E0D\u662F\u4E00\u4E2A\u5361\u7247**\u3002\n *\n * \u8FD9\u91CC\u539F\u6765\u662F\u300Cborder + radius 12 + padding 15\u300D\uFF0C\u4E8E\u662F\u62BD\u5C49\u91CC\u51FA\u73B0\u4E09\u5C42\u76D2\u5B50\uFF1A\u62BD\u5C49\u9762\u677F \u2192\n * \u5206\u7EC4\u5361\u7247 \u2192 \u884C\uFF08`.tita-kbSourceRow` \u81EA\u5DF1\u4E5F\u5E26\u4E00\u5708\u63CF\u8FB9\uFF09\u3002\u7528\u6237\u7684\u539F\u8BDD\u662F\u300C\u4E00\u773C\u770B\u8FC7\u53BB\u662F\n * \u4E09\u4E2A\u5757\u5C42\u5C42\u5305\u88F9\u300D\u2014\u2014 \u800C\u8FD9\u4E09\u5C42\u91CC\u53EA\u6709\u4E00\u5C42\u5728\u8868\u8FBE\u771F\u4FE1\u606F\uFF08\u54EA\u51E0\u884C\u5C5E\u4E8E\u540C\u4E00\u8282\uFF09\uFF0C\u53E6\u5916\u4E24\u5C42\n * \u53EA\u662F\u628A\u540C\u4E00\u4EF6\u4E8B\u53C8\u8BF4\u4E86\u4E00\u904D\u3002\n *\n * \u73B0\u5728\u5206\u7EC4 = \u6807\u9898 + \u4E00\u6761\u5206\u9694\u7EBF + \u5185\u5BB9\uFF0C\u9760\u95F4\u8DDD\u5206\u7EC4\u3002`padding` \u4E0E `.tita-settingsStack`\n * \u91CC\u7684\u8D1F\u8FB9\u8DDD\u6210\u5BF9\u51FA\u73B0\uFF1A\u8BA9\u300C\u5B9A\u4F4D\u5230\u8FD9\u4E00\u8282\u300D\u65F6\u7684\u5E95\u8272\u63D0\u793A\u80FD\u5411\u5916\u6EA2\u4E00\u70B9\uFF0C\u4E0D\u81F3\u4E8E\u8D34\u7740\u6587\u5B57\uFF0C\n * \u540C\u65F6\u4E0D\u6539\u53D8\u5185\u5BB9\u672C\u8EAB\u7684\u5DE6\u53F3\u5BF9\u9F50\u3002\n */\n.tita-settingsSection { border: 0; border-radius: 10px; background: transparent; padding: 8px 12px 4px; }\n/* \u5361\u7247\u5934\u7684\u300C\u53C2\u6570\u300Dchip \u5B9A\u4F4D\u8FC7\u6765\u7684\u90A3\u4E00\u5757\uFF1A**\u4E00\u6B21\u6027**\u5F3A\u8C03\uFF0C1.6 \u79D2\u540E\u81EA\u5DF1\u56DE\u5230\u5E38\u6001\u3002\n \u5B83\u4E0D\u662F\u300C\u9009\u4E2D\u6001\u300D\uFF08\u62BD\u5C49\u91CC\u6CA1\u6709\u9009\u4E2D\u8FD9\u4E00\u56DE\u4E8B\uFF09\uFF0C\u6240\u4EE5\u4E0D\u590D\u7528 `.tita-kbStepOn` \u7684\u63CF\u8FB9\uFF1A\n \u8FB9\u6846\u4E0E\u5E95\u8272\u4ECE\u5F3A\u8C03\u84DD\u6DE1\u56DE\u9ED8\u8BA4\uFF0C\u52A8\u753B\u7684 `both` \u8BA9\u7EC8\u6001\u5C31\u662F\u9ED8\u8BA4\u503C \u2014\u2014 \u4E0D\u9700\u8981 JS \u8BA1\u65F6\u5668\n \u53BB\u6E05\u8FD9\u4E2A\u7C7B\u3002`scroll-margin-block-start` \u7ED9 `scrollIntoView` \u7559\u4E00\u53E3\u6C14\uFF0C\u522B\u8BA9\u8FB9\u6846\u8D34\u9876\u3002 */\n.tita-settingsSection { scroll-margin-block-start: 10px; }\n.tita-settingsSection:focus-visible { outline: 2px solid var(--tita-primary); outline-offset: 2px; }\n/* \u6CA1\u6709\u63CF\u8FB9\u53EF\u6DE1\u4E86\uFF0C\u5F3A\u8C03\u6539\u6210\u4E00\u5C42**\u5E95\u8272**\uFF1A\u4ECE\u5F3A\u8C03\u84DD\u7684\u6D45\u5E95\u6DE1\u56DE\u900F\u660E\u3002\n \u8FD9\u662F\u300C\u5B9A\u4F4D\u5230\u8FD9\u4E00\u8282\u300D\u7684\u4E00\u6B21\u6027\u63D0\u793A\uFF0C\u4E0D\u662F\u9009\u4E2D\u6001 \u2014\u2014 \u6240\u4EE5\u5B83\u6DE1\u51FA\u4E4B\u540E\u4EC0\u4E48\u90FD\u4E0D\u7559\u3002 */\n@keyframes tita-settings-settle {\n from { background: var(--tita-primary-soft); }\n to { background: transparent; }\n}\n.tita-settingsSectionOn { animation: tita-settings-settle 1.6s ease-out both; }\n@media (prefers-reduced-motion: reduce) { .tita-settingsSectionOn { animation: none; } }\n/* \u5206\u9694\u7EBF\u753B\u5728\u6807\u9898\u4E0B\u9762\uFF1A\u5B83\u662F\u66FF\u6389\u90A3\u5708\u63CF\u8FB9\u7684\u4E1C\u897F \u2014\u2014 \u6709\u5B83\uFF0C\u6807\u9898\u4E0E\u5185\u5BB9\u624D\u5206\u6210\u4E24\u6BB5\uFF1B\n \u6CA1\u6709\u5B83\uFF0C\u53BB\u6389\u8FB9\u6846\u5C31\u53EA\u5269\u300C\u4E00\u884C\u6807\u9898\u8DDF\u7740\u4E00\u5806\u5B57\u6BB5\u300D\u3002\n `padding-bottom` \u8BA9\u7EBF\u4E0B\u7559\u4E00\u53E3\u6C14\uFF0C`margin-bottom` \u518D\u628A\u5185\u5BB9\u63A8\u8FDC\u4E00\u70B9\u3002 */\n.tita-settingsSectionHeader {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n gap: 10px;\n /* \u9AD8\u5EA6\u538B\u7F29\uFF082026-10-06 \u7528\u6237\u8981\u6C42\uFF09\uFF1A\u6807\u9898\u5230\u7B2C\u4E00\u884C\u5B57\u6BB5\u4E4B\u95F4\u4ECE 14+9 \u6536\u5230 10+7 \u2014\u2014\n \u5206\u9694\u7EBF\u4ECD\u7136\u5728\uFF0C\u6807\u9898\u4E0E\u5185\u5BB9\u4ECD\u7136\u5206\u6210\u4E24\u6BB5\uFF0C\u53EA\u662F\u4E2D\u95F4\u90A3\u53E3\u6C14\u5C0F\u4E00\u6863\u3002 */\n margin-bottom: 10px;\n border-bottom: 1px solid var(--tita-line);\n padding-bottom: 7px;\n}\n.tita-settingsSectionHeaderTitle { display: inline-flex; min-width: 0; align-items: baseline; gap: 8px; }\n.tita-settingsSectionHeader h3 { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 14px; }\n.tita-settingsSectionActions { display: flex; justify-content: flex-end; margin-top: 8px; }\n/*\n * tooltip \u9762\u677F\uFF1A\u8FD9\u91CC\u7684\u8BF4\u660E\u662F\u6574\u53E5\uFF0C\u8981\u5DE6\u5BF9\u9F50\u3001\u53EF\u6362\u884C\u3001\u9650\u5BBD\u3002\n *\n * \u9009\u62E9\u5668**\u53CC\u5199\u540C\u540D\u7C7B**\u662F\u4E3A\u4E86\u62FF\u5230 (0,2,0) \u7684\u7279\u5F02\u6027\u3002UI \u5305\u7684 tooltip \u81EA\u5E26 `max-w-xs`\n * \u548C `inline-flex`\uFF08320px \u5BBD\u3001\u4E0D\u6362\u884C\uFF09\uFF0C\u800C\u63D2\u4EF6**\u6CA1\u6709\u81EA\u5DF1\u7684 Tailwind \u6784\u5EFA** \u2014\u2014 \u7528\u5DE5\u5177\u7C7B\n * \u8986\u76D6\u8FD9\u6761\u8DEF\u662F\u8D70\u4E0D\u901A\u7684\uFF1A`max-w-[260px]` \u5728\u63D2\u4EF6\u91CC\u6CA1\u6709\u5BF9\u5E94\u89C4\u5219\uFF0C\u800C `cn` \u7684 twMerge \u4F1A\u5148\n * \u628A `max-w-xs` \u5220\u6389\uFF0C\u9650\u5BBD\u4E8E\u662F\u5F7B\u5E95\u5931\u6548\uFF08\u5B9E\u6D4B\u5BBD\u5EA6\u4ECE 320px \u53D8\u6210 996px\uFF09\u3002\u53CC\u5199\u662F\u8FD9\u91CC\u552F\u4E00\n * \u4E0E\u6837\u5F0F\u8868\u987A\u5E8F\u65E0\u5173\u7684\u5199\u6CD5\u3002\n *\n * \u9650\u5BBD**\u4E0D\u5F80\u7A84\u4E86\u538B**\uFF08\u8FD9\u91CC 320px\uFF0C\u548C UI \u5305\u9ED8\u8BA4\u540C\u503C\uFF09\uFF1A\u8BF4\u660E\u662F\u6574\u53E5\u4E2D\u6587\uFF0C\u7A84\u4E00\u6863\u5C31\u591A\u4E00\u884C\uFF0C\n * \u800C\u591A\u51FA\u6765\u7684\u90A3\u884C\u4F1A\u628A\u5B83\u63A8\u5411\u89C6\u53E3\u8FB9\u7F18\u3002\u4F4D\u7F6E\u672C\u8EAB\u73B0\u5728\u7531 radix \u51B3\u5B9A\uFF08\u4E0A\u65B9\u653E\u4E0D\u4E0B\u5C31\u7FFB\u5230\u4E0B\u65B9\uFF0C\n * \u89C1 `InfoHint`\uFF09\uFF0C\u6240\u4EE5\u8FD9\u91CC\u53EA\u9700\u8981\u7BA1\u300C\u4E00\u884C\u591A\u957F\u300D\u8FD9\u4E00\u4EF6\u4E8B\u3002\n */\n.tita-infoHintPanel.tita-infoHintPanel { display: block; max-width: 320px; padding: 8px 12px; line-height: 1.65; text-align: left; white-space: normal; }\n/* \u5C0F\u8282\u6807\u9898\u65C1\u7684\u8BF4\u660E\u5165\u53E3\uFF1A\u56FE\u6807\u5E38\u9A7B\u3001\u8BF4\u660E\u60AC\u505C\u624D\u51FA\u73B0\uFF08\u89C1 `InfoHint`\uFF09\u3002\n \u4E09\u4E2A\u989C\u8272\u539F\u6765\u6307\u7740 `--tita-subtle` / `--tita-blue` / `--tita-accent*` \u2014\u2014 \u8FD9\u56DB\u4E2A\u540D\u5B57\n \u5728 `packages/ui` \u4E0E\u672C\u63D2\u4EF6\u91CC**\u90FD\u6CA1\u6709\u5B9A\u4E49**\u3002\u672A\u5B9A\u4E49\u7684 `var()` \u8BA9\u6574\u6761\u58F0\u660E\u5728\u8BA1\u7B97\u503C\u9636\u6BB5\n \u5931\u6548\uFF1A\u5165\u53E3\u7684\u5E38\u9A7B\u8272\u56DE\u9000\u6210\u7EE7\u627F\u8272\u3001\u7126\u70B9\u5708\u56DE\u9000\u6210 `currentColor`\u3002\u73B0\u5728\u6307\u5411\u771F\u5B9E token\u3002 */\n.tita-infoHint { display: inline-flex; width: 16px; height: 16px; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--tita-ink-faint); cursor: help; }\n.tita-infoHint:hover { background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n.tita-infoHint:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n/* \u53EF\u70B9\u51FB\u7684\u90A3\u4E00\u679A\uFF08\u4F20\u4E86 `href`\uFF09\uFF1A\u5B83\u4ECE\u300C\u8BF4\u660E\u300D\u53D8\u6210\u300C\u5165\u53E3\u300D\uFF0C\u6240\u4EE5\u5149\u6807\u4ECE help \u6362\u6210 pointer \u2014\u2014\n \u540C\u4E00\u4E2A\u56FE\u6807\u6709\u4E24\u79CD\u542B\u4E49\u65F6\uFF0C\u5149\u6807\u662F\u96F6\u6210\u672C\u7684\u90A3\u6761\u7EBF\u7D22\u3002 */\n.tita-infoHintAction { cursor: pointer; }\n.tita-infoHintAction:hover { color: var(--tita-ink); }\n/* \u8BF4\u660E\u9760\u53F3\uFF082026-10-05\uFF09\uFF1A\u77E5\u8BC6\u5E93\u5DE5\u5177\u680F\u7684\u6392\u7248\u89C4\u77E9 \u2014\u2014 \u52A8\u4F5C\u4E00\u7EC4\u9760\u5DE6\uFF0C\n `?` \u81EA\u5DF1\u7AD9\u5728\u6700\u53F3\u7AEF\u3002`margin-left: auto` \u5728\u6362\u884C\u65F6\u4E5F\u6210\u7ACB\uFF1A\u5B83\u843D\u5230\u7B2C\u4E8C\u884C\uFF0C\u4ECD\u7136\u53F3\u5BF9\u9F50\u3002 */\n.tita-kbToolbarHint { flex: 0 0 auto; margin-left: auto; }\n/* \u6807\u9898\u91CC\u7684\u8BF4\u660E\u5165\u53E3\uFF08\u8BBE\u7F6E\u5C0F\u8282\u540C\u7406\uFF09\uFF1A\u4E0E\u6807\u9898\u6587\u5B57\u7559\u4E00\u683C\u6C14\uFF0C\n \u5E76\u5BF9\u9F50\u6587\u5B57\u7684\u5149\u5B66\u4E2D\u7EBF \u2014\u2014 \u5B83\u4E0E\u6807\u9898\u540C\u5728\u4E00\u884C\uFF0C\u4E0D\u662F\u72EC\u7ACB\u4E00\u884C\u3002 */\n.tita-settingsSectionHeader h3 > .tita-infoHint,\n.tita-settingsSectionHeader h4 > .tita-infoHint { margin-left: 6px; vertical-align: -2px; }\n.tita-settingsSectionHeader p { margin: 4px 0 0; color: var(--tita-ink-muted); font-size: 11px; }\n.tita-settingMeta { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 4px; color: var(--tita-ink-faint); font-size: 10px; text-align: right; }\n/* \u5199\u5931\u8D25\u65F6\u90A3\u4E00\u884C\u4E0D\u662F\u300C\u72B6\u6001\u300D\uFF0C\u662F**\u5F85\u5904\u7406\u7684\u4E8B**\uFF0C\u6240\u4EE5\u7ED9\u5B83\u8B66\u793A\u8272\u800C\u4E0D\u662F\u7070\u3002 */\n.tita-settingMetaBad { color: var(--tita-warning); font-weight: 600; }\n/*\n * \u8BBE\u7F6E\u9879**\u4E00\u5217**\u6392\u3002\n *\n * \u539F\u6765\u662F\u4E24\u5217\u7F51\u683C\uFF0C\u4F46\u62BD\u5C49\u53EA\u6709 380\u2013440px \u5BBD\uFF0C\u4E24\u5217\u610F\u5473\u7740\u6BCF\u4E2A\u63A7\u4EF6\u7EA6 200px\uFF1B\u800C\u6807\u7B7E\u548C\u8BF4\u660E\n * \u90FD\u662F\u6574\u53E5\u4E2D\u6587\uFF0C\u6362\u884C\u884C\u6570\u4E0D\u4E00\u81F4\uFF0C\u4E8E\u662F\u540C\u4E00\u884C\u7684\u4E24\u4E2A\u5B57\u6BB5\u9AD8\u5EA6\u4E0D\u540C\u3001\u63D0\u793A\u6587\u5B57\u9519\u4F4D\uFF0C\u300C\u6784\u5EFA\u8BBE\u7F6E\u300D\n * \u548C\u300C\u77E5\u8BC6\u5E93\u53EC\u56DE\u8BBE\u7F6E\u300D\u91CC\u8FD8\u6DF7\u7740\u5360\u4E24\u5217\u7684\u5B57\u6BB5\uFF08\u6A21\u578B\u8DEF\u5F84\u3001Python\uFF09\uFF0C\u6700\u540E\u4E00\u5217\u7ECF\u5E38\u7A7A\u534A\u683C \u2014\u2014\n * \u770B\u8D77\u6765\u5C31\u662F\u6CA1\u5BF9\u9F50\u3002\n *\n * \u4E00\u5217\u4E4B\u540E\u6BCF\u9879\u7684\u5BBD\u5EA6\u3001\u6807\u7B7E\u57FA\u7EBF\u3001\u63A7\u4EF6\u5DE6\u8FB9\u7F18\u90FD\u4E00\u81F4\uFF0C\u5360\u4E24\u5217\u90A3\u4E2A\u53D8\u4F53\u4E5F\u5C31\u6CA1\u6709\u610F\u4E49\u4E86\u3002\n */\n.tita-settingsGrid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }\n/*\n * \u9AD8\u5EA6\u538B\u7F29\uFF082026-10-06 \u7528\u6237\u8981\u6C42\u300C\u5176\u4ED6\u8BBE\u7F6E\u9700\u8981\u538B\u7F29\u4E0B\u9AD8\u5EA6\u300D\uFF09\u3002\n *\n * \u53EA\u6536**\u95F4\u8DDD**\uFF0C\u4E0D\u52A8\u5B57\u53F7\u4E0E\u63A7\u4EF6\u5C3A\u5BF8\uFF1A\u5B57\u6BB5\u4E09\u6BB5\uFF08\u6807\u7B7E / \u63A7\u4EF6 / \u8BF4\u660E\uFF09\u4E4B\u95F4\u7684 5px \u6536\u5230 4px\uFF0C\n * \u8BF4\u660E\u884C\u7684\u884C\u9AD8\u4ECE 1.6 \u6536\u5230 1.45 \u2014\u2014 \u6784\u5EFA\u90A3\u4E00\u7EC4 8 \u4E2A\u5B57\u6BB5\uFF0C\u6BCF\u9879\u7701 2\u20133px \u5C31\u662F\u4E00\u5C4F\u7684\u5DEE\u522B\u3002\n * \u4E24\u6761\u90FD\u9650\u5B9A\u5728\u62BD\u5C49\u91CC\uFF1A`Field` \u662F\u5168\u4EA7\u54C1\u5171\u7528\u7684\uFF0C\u522B\u5904\u7684 5px / 1.6 \u4E0D\u53D7\u5F71\u54CD\u3002\n */\n.tita-settingsSection .tita-uiField { gap: 4px; }\n.tita-settingsSection .tita-uiFieldHint { line-height: 1.45; }\n/*\n * \u5B57\u6BB5\u672C\u8EAB\uFF08\u6807\u9898 / \u63A7\u4EF6 / \u8BF4\u660E\uFF09\u64A4\u6389\u4E86\uFF0C\u6539\u7528 `packages/ui` \u7684 `Field`\u3002\n *\n * \u8FD9\u91CC\u66FE\u7ECF\u6709\u8FC7\u4E00\u6574\u5957 `.tita-settingField` + `.tita-settingHint`\uFF1A\u6807\u9898 11px/600\u3001\n * \u8BF4\u660E 10px\u3001\u8F93\u5165\u6846\u5706\u89D2 8px / \u5E95\u8272 `--tita-surface`\u3002\u800C\u5F39\u5C42\u91CC\u7684 `.tita-kbField` \u662F\n * 12px/400 \u7684\u6807\u9898\u300111px \u7684\u8BF4\u660E\uFF0C`Input` \u81EA\u5DF1\u662F 7px \u5706\u89D2 / \u767D\u5E95 \u2014\u2014 **\u540C\u4E00\u4E2A `Input`\n * \u7EC4\u4EF6\uFF0C\u653E\u8FDB\u8BBE\u7F6E\u884C\u548C\u653E\u8FDB\u5F39\u5C42\u5C31\u957F\u4E24\u4E2A\u6837**\uFF0C\u800C\u90A3\u4E2A\u5206\u53C9\u5B8C\u5168\u7531\u300C\u5B83\u5957\u5728\u54EA\u4E2A\u5BB9\u5668\u91CC\u300D\u51B3\u5B9A\u3002\n * `.tita-settingField input` \u90A3\u6761\u8FD8\u4EE5 (0,1,1) \u538B\u8FC7 `Input` \u81EA\u5DF1\u7684\u5DE5\u5177\u7C7B\uFF0C\u6240\u4EE5\u8BBE\u7F6E\u62BD\u5C49\n * \u91CC\u7684\u8F93\u5165\u6846\u5B9E\u9645\u6E32\u67D3\u7684\u662F 8px \u5706\u89D2\uFF0C\u4E0D\u662F\u5171\u4EAB\u63A7\u4EF6\u58F0\u660E\u7684 7px\u3002\n *\n * \u73B0\u5728\u53EA\u6709\u4E00\u5904\u5B9A\u4E49\uFF08`Field`\uFF09\uFF0C\u8FB9\u6846\u3001\u5706\u89D2\u3001\u5B57\u53F7\u3001\u53EA\u8BFB\u6001\u90FD\u4ECE\u5171\u4EAB\u63A7\u4EF6\u6765\u3002\n */\n\n/* --------------------------------------------------- \u6839\u8DEF\u5F84\uFF1A\u9009\u62E9 */\n.tita-pickerRow { display: flex; min-width: 0; align-items: center; gap: 8px; }\n.tita-pickerRow input { flex: 1 1 auto; min-width: 0; font-variant-numeric: tabular-nums; }\n.tita-pickerRow button { flex: 0 0 auto; white-space: nowrap; }\n.tita-spin { animation: tita-spin 900ms linear infinite; }\n@keyframes tita-spin { to { transform: rotate(360deg); } }\n@media (prefers-reduced-motion: reduce) { .tita-spin { animation-duration: 3s; } }\n\n/* \u5E03\u5C40\u9884\u89C8\u7684\u6837\u5F0F\uFF08`.tita-layoutPreview` / `Segments` / `Migration` / `Assets` / `Error`\uFF09\n \u968F 2026-10-06 \u7684\u300C\u5B58\u50A8\u53EA\u7559\u6839\u8DEF\u5F84\u300D\u4E00\u5E76\u5220\u6389 \u2014\u2014 \u7EC4\u4EF6\u5DF2\u5220\uFF0C\u8FD9\u4E9B\u6CA1\u6709\u7B2C\u4E8C\u4E2A\u4F7F\u7528\u8005\u3002 */\n\n/* --------------------------------------------------- \u9875\u9762\u5185\u76EE\u5F55\u6D4F\u89C8\uFF08\u515C\u5E95\uFF09 */\n.tita-browseDialog { display: flex; width: min(680px, calc(100vw - 32px)); max-height: min(560px, calc(100vh - 64px)); flex-direction: column; gap: 10px; }\n.tita-browseCrumbs { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 1px; }\n.tita-browseCrumbWrap { display: inline-flex; align-items: center; gap: 1px; color: var(--tita-ink-faint); }\n.tita-browseCrumb { max-width: 160px; overflow: hidden; border: 0; border-radius: 6px; background: transparent; padding: 3px 6px; color: var(--tita-ink-muted); font: inherit; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }\n.tita-browseCrumb:hover { background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-browseCrumbOn { color: var(--tita-ink); font-weight: 650; }\n.tita-browsePath { overflow: hidden; border: 1px solid var(--tita-line); border-radius: 7px; background: var(--tita-surface-muted); padding: 6px 9px; color: var(--tita-ink); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }\n.tita-browseError { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-warning); font-size: 11px; }\n.tita-browseList { flex: 1 1 auto; min-height: 180px; margin: 0; overflow-y: auto; border: 1px solid var(--tita-line); border-radius: 9px; padding: 4px; list-style: none; }\n.tita-browseRow { display: flex; width: 100%; align-items: center; gap: 7px; border: 0; border-radius: 7px; background: transparent; padding: 6px 8px; color: var(--tita-ink); font: inherit; font-size: 12px; text-align: left; cursor: pointer; }\n.tita-browseRow:hover { background: var(--tita-surface-muted); }\n.tita-browseRow > svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-browseEmpty { padding: 16px 10px; color: var(--tita-ink-faint); font-size: 11.5px; text-align: center; }\n.tita-browseNote { margin: 0; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-browseCreate { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }\n.tita-browseCreate input { flex: 1 1 160px; min-width: 0; }\n.tita-browseHidden { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 11px; }\n\n/* Visually hidden, still focusable: the non-pointer entry point (PRD \xA712.3). */\n.tita-srOnly { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }\n.tita-srOnly:focus-within { position: static; width: auto; height: auto; clip: auto; clip-path: none; white-space: normal; }\n.tita-srOnly ul { margin: 0; padding: 0; list-style: none; }\n\n/* ------------------------------- responsive: react to the host pane width */\n@container (max-width: 1080px) {\n .tita-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n .tita-railQuote { grid-column: 1 / -1; }\n .tita-statsRow { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n .tita-evalGrid, .tita-memoryGrid { grid-template-columns: minmax(0, 1fr); }\n .tita-skillGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n .tita-memoryCardWide { grid-column: auto; }\n}\n\n@container (max-width: 700px) {\n .tita-rail { grid-template-columns: minmax(0, 1fr); }\n .tita-statsRow { grid-template-columns: minmax(0, 1fr); }\n .tita-skillGrid { grid-template-columns: minmax(0, 1fr); }\n .tita-skillHero { align-items: flex-start; flex-wrap: wrap; }\n .tita-skillHero > .tita-uiButton { width: 100%; }\n .tita-inputRow { align-items: stretch; flex-direction: column; }\n .tita-inputRow .tita-uiButton { width: 100%; }\n}\n\n/* Vertical flow once a single lane can no longer hold two nodes per row. */\n@container (max-width: 560px) {\n .tita-laneTrack, .tita-stageTrack { flex-direction: column; align-items: stretch; }\n .tita-flowNode, .tita-flowFork { width: 100%; max-width: none; flex: 0 0 auto; }\n .tita-flowArrow { align-self: center; transform: rotate(90deg); }\n .tita-archBridge { padding: 0; }\n}\n\n/* ------------------------------------------- knowledge bases (issue 0019) */\n/* \u77E5\u8BC6\u5E93 Tab\uFF1A\u591A\u77E5\u8BC6\u5E93 + \u6587\u4EF6\u7C7B\u578B + \u6587\u4EF6\u5217\u8868 + \u6587\u6863\u8BE6\u60C5\u4E0E\u7248\u672C\u3002 */\n.tita-kbLayout { display: grid; gap: 12px; min-width: 0; }\n.tita-kbToolbar { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 8px 12px; }\n.tita-kbToolbar > :first-child { flex: 0 1 auto; min-width: 0; }\n/* \u53EA\u6709\u4E00\u4E2A\u77E5\u8BC6\u5E93\u65F6\uFF0C\u8FD9\u4E00\u884C\u4E0D\u518D\u653E\u9009\u62E9\u5668\uFF0C\u800C\u662F\u4E00\u884C\u7EAF\u6587\u672C\uFF08\u56FE\u6807 + \u5E93\u540D\uFF09\u3002\n \u5B83**\u4E0D\u662F**\u4E00\u4E2A\u88AB\u7981\u7528\u7684\u6309\u94AE\uFF1A\u6CA1\u6709\u8FB9\u6846\u3001\u6CA1\u6709 hover\u3001\u6CA1\u6709\u4E0B\u62C9\u7BAD\u5934 \u2014\u2014\n \u4E00\u4E2A\u957F\u5F97\u50CF\u63A7\u4EF6\u4F46\u70B9\u4E0D\u52A8\u7684\u4E1C\u897F\uFF0C\u6BD4\u4E00\u884C\u5B57\u66F4\u8BA9\u4EBA\u56F0\u60D1\u3002\n \u5E93\u540D\u7528 `<b>` \u800C\u4E0D\u662F\u7B49\u5BBD\u6216\u5927\u5B57\uFF1A\u8FD9\u4E00\u884C\u7684\u4E3B\u8BED\u662F\u5B83\uFF0C\u4F46\u5B83\u4E0D\u9700\u8981\u6BD4\u6309\u94AE\u66F4\u54CD\u3002 */\n.tita-kbStaticName {\n display: inline-flex;\n min-width: 0;\n align-items: center;\n gap: 7px;\n padding: 0 2px;\n color: var(--tita-ink);\n font-size: 12px;\n}\n.tita-kbStaticName > svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-kbStaticName > b { min-width: 0; overflow: hidden; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }\n/* \u52A8\u4F5C\u8DDF\u7740\u9009\u62E9\u5668\u5F80\u5DE6\u6392\uFF080035\uFF09\uFF1A\u8FD9\u4E00\u884C\u53EA\u6709\u4E00\u4E2A\u4E3B\u8BED\uFF08\u5F53\u524D\u77E5\u8BC6\u5E93\uFF09\u548C\u5B83\u7684\u52A8\u4F5C\u3002\u628A\u52A8\u4F5C\u63A8\u5230\n \u6700\u53F3\u8FB9\uFF0C\u4E2D\u95F4\u4F1A\u7559\u4E00\u6BB5**\u6CA1\u6709\u610F\u4E49\u7684\u7A7A\u767D**\uFF0C\u800C\u5728\u7A84\u680F\u91CC\u90A3\u6BB5\u7A7A\u767D\u672C\u6765\u80FD\u653E\u4E0B\u7B2C\u4E09\u4E2A\u6309\u94AE\u3002\n 0035 \u4E5F\u628A\u8BA1\u6570\u64A4\u51FA\u4E86\u8FD9\u4E00\u884C \u2014\u2014 \u5B83\u4EEC\u6CA1\u6709\u4E22\uFF0C\u6B65\u9AA4\u8F68\u6BCF\u4E00\u6B65\u7B2C\u4E8C\u884C\u5199\u7684\u5C31\u662F\u540C\u4E00\u6279\u6570\u5B57\u3002 */\n/*\n * \u52A8\u4F5C\u90A3\u4E00\u7EC4\u3002**\u5B83\u5FC5\u987B\u80FD\u6362\u884C\uFF0C\u4E5F\u5FC5\u987B\u80FD\u88AB\u538B\u7F29\u3002**\n *\n * \u539F\u6765\u53EA\u6709\u4E09\u4E2A\u52A8\u4F5C\uFF08\u7C7B\u578B\u5B9A\u4E49 / \u91CD\u65B0\u7F16\u8BD1 / \u89E3\u6790\u5185\u6838\uFF09\uFF0C`flex: 0 0 auto` \u591F\u7528 \u2014\u2014\n * \u4E09\u4E2A\u6309\u94AE\u52A0\u95F4\u8DDD\u7EA6 330px\uFF0C380px \u7684\u4FA7\u680F\u521A\u597D\u653E\u5F97\u4E0B\u30022026-10-05 \u53D8\u6210\u56DB\u4E2A\u52A8\u4F5C\u52A0\u4E00\u679A `?`\n * \uFF08\u7C7B\u578B\u5B9A\u4E49 / \u91CD\u65B0\u7F16\u8BD1 / \u62BD\u53D6\u8BD5\u8DD1 / \u8BF4\u660E / \u89E3\u6790\u5185\u6838\uFF09\uFF0C\u90A3\u4E00\u7EC4\u7EA6 520px\uFF1A\n * `flex: 0 0 auto` \u4E0D\u7F29\uFF0C\u6574\u884C\u4E8E\u662F\u6A2A\u5411\u6EA2\u51FA\u4FA7\u680F\uFF0C\u53F3\u4FA7\u90A3\u4E00\u679A\u6309\u94AE\u76F4\u63A5\u88AB\u88C1\u6389\n * \uFF08\u800C\u4E14\u6CA1\u6709\u6EDA\u52A8\u6761 \u2014\u2014 \u770B\u8D77\u6765\u50CF\u300C\u6309\u94AE\u4E0D\u89C1\u4E86\u300D\uFF09\u3002\n *\n * 2026-10-05 \u7684\u62C6\u5206\u4E3A\u4F55\u6CA1\u8BA9\u5B83\u66F4\u957F\uFF1A\u300C\u7F16\u8BD1\u6D41\u7A0B\u300D\u662F 4 \u4E2A\u5B57\u3001\u300C\u62BD\u53D6\u8BD5\u8DD1\u300D\u4E5F\u662F 4 \u4E2A\u5B57\uFF0C\n * \u800C\u90A3\u679A `?` \u53EA\u6709 16px \u5BBD \u2014\u2014 \u6362\u884C\u7167\u6837\u4F1A\u53D1\u751F\u5728\u7A84\u680F\u91CC\uFF0C\u6240\u4EE5\u4E0B\u9762\u4E24\u6761\u4ECD\u7136\u662F\u5FC5\u987B\u7684\u3002\n *\n * `flex: 0 1 auto` + `min-width: 0` \u8BA9\u5B83\u53EF\u4EE5\u88AB\u538B\uFF0C`flex-wrap: wrap` \u8BA9\u538B\u4E0D\u4E0B\u65F6\u6362\u884C\u3002\n * \u4E24\u8005\u7F3A\u4E00\u4E0D\u53EF\uFF1A\u53EA\u52A0 wrap \u4E0D\u89E3\u9664 `flex-basis: auto` \u7684\u8BDD\uFF0C\u5BB9\u5668\u4ECD\u7136\u6309 max-content \u6491\u5F00\u3002\n */\n.tita-kbToolbarActions { display: flex; min-width: 0; flex: 0 1 auto; flex-wrap: wrap; align-items: center; gap: 8px; }\n.tita-kbCompileAction { display: inline-flex; align-items: center; }\n.tita-kbCompileActionMain { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; }\n.tita-kbCompileActionMenu { min-width: 29px !important; padding-inline: 7px !important; border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important; margin-left: -1px; }\n\n.tita-kbNotice { display: flex; align-items: center; gap: 8px; margin: 0; border: 1px solid var(--tita-tone-green-line); border-radius: 9px; background: var(--tita-tone-green-tint); color: var(--tita-success); padding: 8px 10px; font-size: 11.5px; }\n.tita-kbNotice > span, .tita-kbNotice > div { flex: 1; min-width: 0; }\n/*\n * \u8FC1\u79FB\u90A3\u4E00\u5757\u662F**\u6E05\u5355**\uFF08\u4E00\u6761\u4E00\u6761\u8BFB\u3001\u6761\u6570\u8FD8\u6709\u610F\u4E49\uFF09\uFF0C\u4E0D\u662F\u4E00\u53E5\u8BDD\u3002\n * \u56FE\u6807\u56E0\u6B64\u5BF9\u9F50\u7B2C\u4E00\u884C\u800C\u4E0D\u662F\u5782\u76F4\u5C45\u4E2D\uFF0C\u6761\u76EE\u5404\u81EA\u6210\u884C\u3001\u5404\u81EA\u53EF\u626B\u3002\n */\n.tita-kbNoticeStack { align-items: flex-start; }\n.tita-kbNoticeStack > svg { margin-top: 2px; }\n.tita-kbNoticeList { display: grid; gap: 3px; margin: 4px 0 0; padding-left: 15px; list-style: disc; }\n.tita-kbNoticeError { border-color: var(--ddk-danger-line); background: var(--ddk-danger-tint); color: var(--tita-danger); }\n/* \u7425\u73C0\uFF1A**\u662F\u8D26\uFF0C\u4E0D\u662F\u6545\u969C** \u2014\u2014 \u771F\u6E90\u4E0E\u6765\u6E90\u5BF9\u4E0D\u4E0A\uFF0C\u800C\u5B83\u662F\u53EF\u4EE5\u6E05\u6389\u7684\uFF08\u5224\u636E\u786E\u5B9A\u3001\u53EF\u91CD\u5EFA\uFF09\u3002 */\n.tita-kbNoticeWarn { border-color: var(--tita-tone-amber-line); background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-kbNoticeWarn > span b { color: var(--tita-tone-amber); }\n/* \u63D0\u793A\u6761\u53F3\u7AEF\u7684\u5173\u95ED\u52A8\u4F5C\u3002\u9762\u677F\u91CC\u7684\u5173\u95ED\u6309\u94AE\u73B0\u5728\u662F\u5171\u4EAB\u7684 `Button variant="ghost" size="icon"`\uFF0C\n \u6240\u4EE5\u8FD9\u91CC\u53EA\u5269**\u8FD9\u4E00\u6761\u63D0\u793A\u81EA\u5DF1\u7684**\u8BED\u6C14\uFF1A\u6BD4\u6B63\u6587\u6DE1\u4E00\u70B9\uFF0C\u60AC\u505C\u624D\u56DE\u5230\u6EE1\u503C\u3002\n `border`/`background`/`padding` \u7684\u590D\u4F4D\u64A4\u6389 \u2014\u2014 \u90A3\u662F\u6309\u94AE\u81EA\u5DF1\u5E26\u7684\u4E86\u3002 */\n.tita-kbNoticeClose { flex: 0 0 auto; color: inherit; opacity: .7; }\n.tita-kbNoticeClose:hover { opacity: 1; }\n\n.tita-kbRoot { overflow: hidden; max-width: 100%; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }\n\n.tita-kbCard { min-width: 0; padding: 15px; }\n.tita-kbCardHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }\n.tita-kbCardActions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 7px; }\n.tita-kbEyebrow { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-faint); font-size: 9.5px; font-weight: 700; letter-spacing: .09em; }\n.tita-kbCardHead h3 { margin: 3px 0 0; color: var(--tita-ink); font-size: 14px; font-weight: 750; letter-spacing: -.01em; }\n.tita-kbCount { flex: 0 0 auto; color: var(--tita-ink-faint); font-size: 11px; }\n/*\n * \u884C\u53F3\u4FA7\u7684\u6B21\u8981\u4E8B\u5B9E\uFF08\u7C7B\u578B \xB7 \u65F6\u95F4 / N \u4E2A\u6765\u6E90 / N \u5F20\uFF09\u3002\n *\n * 0042 \u8865\u7684\u5B9A\u4E49\uFF1A\u8FD9\u4E2A\u7C7B\u540D\u88AB\u4E94\u5904\u7528\u7740\uFF08\u5361\u7247\u884C\u3001\u539F\u6587\u62BD\u5C49\u7684\u7F16\u8BD1\u4EA7\u7269\u3001\n * \u7C7B\u578B\u5B9A\u4E49\u3001\u5361\u7247\u7C7B\u578B\u7F16\u8F91\u5668\uFF09\u5374**\u4E00\u76F4\u6CA1\u6709\u6837\u5F0F** \u2014\u2014 \u4E8E\u662F\u5B83\u53EA\u4F20\u9012\u4E86\u4E00\u4E2A\u540D\u5B57\uFF0C\n * \u53F3\u5BF9\u9F50\u4E0E\u300C\u6BD4\u4E3B\u6587\u5B57\u8F7B\u300D\u5168\u9760\u7236\u7EA7\u7684 flex \u78B0\u8FD0\u6C14\u3002\u4E00\u6B21\u5B9A\u4E49\u5230\u4F4D\u3002\n */\n.tita-kbTypeCount { flex: 0 0 auto; margin-left: auto; color: var(--tita-ink-faint); font-size: 10.5px; white-space: nowrap; font-variant-numeric: tabular-nums; }\n.tita-kbHint { margin: 8px 0 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.65; }\n.tita-kbHint b { color: var(--tita-ink-muted); }\n.tita-kbEmpty { margin: 12px 0 0; border: 1px dashed var(--tita-line); border-radius: 9px; color: var(--tita-ink-faint); padding: 12px; font-size: 11.5px; text-align: center; }\n.tita-kbSubHead { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 16px 0 6px; }\n.tita-kbSubHead h4 { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 700; }\n.tita-kbSubHead > span { color: var(--tita-ink-faint); font-size: 10.5px; }\n\n\n/* \u6765\u6E90\u4E1A\u52A1\u5206\u7C7B\u6CE8\u518C\u8868\uFF08issue 0013\uFF09\uFF1A\u4E0E\u300C\u6587\u4EF6\u7C7B\u578B\u300D\u540C\u6784\uFF0C\u989D\u5916\u5E26\u4E00\u6BB5\u5185\u7F6E\u53EA\u8BFB\u5224\u5B9A\u89C4\u5219\u3002 */\n.tita-kbSourceList { display: grid; margin: 4px 0 0; padding: 0; list-style: none; gap: 0; }\n/* \u4E00\u884C\u5206\u7C7B\u662F**\u5217\u8868\u884C**\uFF0C\u4E0D\u662F\u4E00\u5F20\u5C0F\u5361\u7247\uFF1A\u6CA1\u6709\u63CF\u8FB9\u3001\u6CA1\u6709\u5706\u89D2\uFF0C\u53EA\u6709\u4E00\u6761\u5E95\u90E8\u5206\u9694\u7EBF\u3002\n \u6700\u540E\u4E00\u884C\u4E0D\u753B\u7EBF\uFF08\u5217\u8868\u672B\u5C3E\u90A3\u6761\u7EBF\u53EA\u662F\u628A\u7A7A\u767D\u5207\u5F00\uFF09\u3002\n \u9AD8\u5EA6\u4ECE 34px \u6536\u5230 32px\uFF1A\u5341\u4E00\u884C\u7701\u4E0B\u4E8C\u5341\u6765\u50CF\u7D20\uFF0C\u6B63\u597D\u662F\u300C\u5217\u8868\u80FD\u4E0D\u80FD\u4E00\u773C\u770B\u5B8C\u300D\u7684\u5DEE\u503C\u3002 */\n.tita-kbSourceRow {\n display: grid;\n grid-template-columns: minmax(0, 1fr) 66px auto auto auto;\n align-items: center;\n gap: 8px;\n border-bottom: 1px solid var(--tita-line);\n padding: 4px 6px;\n min-height: 32px;\n}\n.tita-kbSourceRow:last-child { border-bottom: 0; }\n.tita-kbSourceRow:hover { background: var(--tita-surface-muted); }\n.tita-kbSourceName { display: flex; min-width: 0; align-items: baseline; gap: 6px; overflow: hidden; }\n.tita-kbSourceLabel { overflow: hidden; color: var(--tita-ink); font-size: 12px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbSourceId { flex: 0 0 auto; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n.tita-kbSourceTag { flex: 0 0 auto; border-radius: 4px; background: var(--tita-primary-soft); color: var(--tita-primary); padding: 1px 5px; font-size: 9.5px; }\n.tita-kbSourceTagLock { background: var(--tita-surface-muted); color: var(--tita-ink-faint); }\n.tita-kbPrompt { margin-top: 10px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); padding: 10px 12px; }\n.tita-kbPrompt > summary { cursor: pointer; color: var(--tita-ink-muted); font-size: 11.5px; font-weight: 650; }\n.tita-kbPromptNote { margin: 8px 0 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.7; }\n.tita-kbPromptSteps { margin: 8px 0 0; padding-left: 18px; color: var(--tita-ink); font-size: 11px; line-height: 1.85; }\n.tita-kbPromptSteps code { border-radius: 4px; background: var(--tita-surface-muted); padding: 0 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n.tita-kbPromptOff { color: var(--tita-danger); text-decoration: line-through; }\n.tita-kbSourcePick { display: inline-flex; align-items: center; gap: 6px; color: var(--tita-ink-muted); font-size: 11px; }\n.tita-kbSourcePick select { min-width: 150px; }\n/* \u300C\u65B0\u589E\u7C7B\u578B\u300D\u73B0\u5728\u72EC\u5360\u8FD9\u4E00\u884C\uFF1A\u5B83\u65C1\u8FB9\u90A3\u6BB5\u5E38\u9A7B\u8BF4\u660E\u642C\u8FDB\u4E86\u8282\u6807\u9898\u7684\u8BF4\u660E\u56FE\u6807\uFF0C\n \u6240\u4EE5\u8FD9\u91CC\u53EA\u8D1F\u8D23\u628A\u6309\u94AE\u653E\u5230\u53F3\u4FA7\uFF08\u539F\u6765\u662F `space-between` \u628A\u8BF4\u660E\u548C\u6309\u94AE\u5206\u5230\u4E24\u5934\uFF09\u3002 */\n.tita-kbSourceAdd { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 10px; }\n\n/* \u7B5B\u9009\u884C\uFF1A\u641C\u7D22 \xB7 \u6587\u4EF6\u7C7B\u578B \xB7 \u5237\u65B0 \xB7 \u6DFB\u52A0\u6587\u4EF6\u3002 */\n.tita-kbFilterRow { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; }\n/* \u641C\u7D22\u6846\u7ED9\u4E0A\u9650\uFF1A\u5B83\u4F1A grow\uFF0C\u4E0D\u8BBE\u4E0A\u9650\u5C31\u4F1A\u628A\u4E24\u4E2A\u4E0B\u62C9\u548C\u5237\u65B0\u6324\u5230\u7B2C\u4E8C\u884C\u53BB\u3002\n \u4E24\u4E2A\u4E0B\u62C9\u81EA\u5DF1\u7684\u5BBD\u5EA6\uFF08`w-auto max-w-[220px]`\uFF09\u5728\u8C03\u7528\u5904\u7ED9 \u2014\u2014 \u76D2\u5B50\u5F52\u5171\u4EAB\u7EC4\u4EF6\uFF0C\n \u8FD9\u91CC\u4E0D\u518D\u7528\u5143\u7D20\u9009\u62E9\u5668\u6539 `select` \u7684\u957F\u76F8\u3002 */\n.tita-kbFilterRow .tita-kbFilterSearch { flex: 1 1 180px; min-width: 0; max-width: 340px; }\n/* \u7B5B\u9009\u884C\u4E0B\u9762\u90A3\u884C\u8BF4\u660E\uFF1A\u5B83\u5FC5\u987B\u8DDF\u7740\u7B5B\u9009\u7ED3\u679C\u8D70\uFF0C\u6240\u4EE5\u4E0D\u80FD\u5199\u6210\u5361\u7247\u5E95\u90E8\u7684\u9759\u6001\u63D0\u793A\u3002 */\n.tita-kbFilterHint { margin: 8px 0 0; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-kbFilterHint b { color: var(--tita-ink-muted); font-weight: 650; }\n\n.tita-kbDocList { display: grid; margin: 10px 0 0; padding: 0; list-style: none; gap: 4px; }\n/*\n * \u5206\u9875\u5668\uFF08\u6587\u4EF6\u5217\u8868\u4E0E\u5361\u7247\u5217\u8868\u5171\u7528\uFF0C\u89C1 `ListPager.tsx`\uFF09\u3002\n *\n * \u8D34\u5728\u5217\u8868**\u53F3\u4E0B\u89D2**\uFF1A\u5DE6\u8FB9\u90A3\u534A\u7559\u7ED9\u300C\u5171 N \u6761\u300D\u8FD9\u79CD\u8BFB\u6570\uFF0C\u7FFB\u9875\u6309\u94AE\u843D\u5728\u62C7\u6307/\u5149\u6807\u4E60\u60EF\u7684\u4F4D\u7F6E\u3002\n * \u5B83\u4E0D\u753B\u4E0A\u8FB9\u6846 \u2014\u2014 \u5217\u8868\u6700\u540E\u4E00\u884C\u4E0E\u5B83\u4E4B\u95F4\u5DF2\u7ECF\u6709\u5361\u7247\u81EA\u5DF1\u7684\u7559\u767D\uFF0C\u518D\u52A0\u4E00\u6761\u7EBF\u5C31\u662F\u7B2C\u4E09\u4E2A\u5206\u9694\u7B26\u3002\n */\n.tita-pager { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 10px; }\n.tita-pagerCount { color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n.tita-pagerCount b { color: var(--tita-ink-muted); font-weight: 650; }\n.tita-kbDocRow { display: flex; min-width: 0; align-items: center; gap: 6px; border: 1px solid transparent; border-radius: 9px; padding: 2px 4px 2px 0; }\n.tita-kbDocRow:hover { border-color: var(--tita-line); background: var(--tita-surface-muted); }\n.tita-kbDocMain { display: grid; flex: 1 1 auto; min-width: 0; gap: 3px; border: 0; background: transparent; padding: 7px 8px; color: inherit; font: inherit; text-align: left; cursor: pointer; }\n.tita-kbDocTitle { display: flex; min-width: 0; align-items: center; gap: 6px; overflow: hidden; color: var(--tita-ink); font-size: 12px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbDocMeta { overflow: hidden; color: var(--tita-ink-faint); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbDocActions { display: flex; flex: 0 0 auto; align-items: center; gap: 2px; }\n\n/* \u5F39\u5C42\u91CC\u7684\u5B57\u6BB5**\u4E00\u683C\u4E00\u884C**\u3002\u5B57\u6BB5\u672C\u8EAB\uFF08\u6807\u9898 / \u63A7\u4EF6 / \u8BF4\u660E\uFF09\u7531 `packages/ui` \u7684\n `Field` \u63D0\u4F9B\uFF0C\u8FD9\u91CC\u53EA\u5269\u300C\u4E00\u7EC4\u5B57\u6BB5\u4E4B\u95F4\u7684\u95F4\u8DDD\u300D\u2014\u2014 `.tita-kbField` \u64A4\u6389\u4E86\uFF0C\n \u5B83\u548C `Field` \u662F\u540C\u4E00\u4EF6\u4E8B\u7684\u4E24\u4EFD\u5199\u6CD5\u3002 */\n.tita-kbForm { display: grid; gap: 10px; }\n/* \u5143\u6570\u636E\u5B57\u6BB5\u58F0\u660E\uFF080048\uFF09\uFF1A\u4E00\u884C = \u952E / \u663E\u793A\u540D / \u5FC5\u586B / \u5220\u9664\u3002\n \u952E\u90A3\u4E00\u5217\u7ED9\u5F97\u6BD4\u663E\u793A\u540D\u5BBD \u2014\u2014 \u5B83\u8981\u88C5 `sources[0].last_modified` \u8FD9\u79CD\u8DEF\u5F84\u3002 */\n.tita-kbFieldRows { display: grid; gap: 6px; justify-items: start; }\n/* \u5217\u5BBD\u5B9A\u4E49\u5728**\u4E00\u5904**\uFF1A\u5217\u5934\u4E0E\u6570\u636E\u884C\u5171\u7528\u540C\u4E00\u7EC4\u8F68\u9053\uFF0C\u6240\u4EE5\u4E24\u8005\u6C38\u8FDC\u5BF9\u9F50\u3002\n \u6B64\u524D\u6BCF\u884C\u9760 `placeholder` + `aria-label` \u5404\u81EA\u8BF4\u660E\u81EA\u5DF1\u662F\u4EC0\u4E48\uFF0C\u540C\u4E00\u53E5\u300C\u8FD9\u4E00\u683C\u586B\u4EC0\u4E48\u300D\n \u5728\u4E00\u884C\u91CC\u51FA\u73B0\u56DB\u6B21 \u2014\u2014 \u7528\u6237\u7684\u539F\u8BDD\u662F\u300C\u70B9\u51FB\u4F4D\u592A\u591A\u4E86\u300D\u3002 */\n.tita-kbFieldRow,\n.tita-kbFieldHead { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) auto auto; align-items: center; gap: 6px; width: 100%; }\n.tita-kbFieldHead { color: var(--tita-ink-faint); font-size: 10px; letter-spacing: .02em; }\n.tita-kbFieldHead > span:nth-child(3) { justify-self: center; }\n/* \u5220\u9664\u6309\u94AE**\u4E0D\u5E38\u9A7B**\uFF1A\u4E00\u6392\u56DB\u683C\u91CC\u4E09\u683C\u8981\u586B\u3001\u4E00\u683C\u53EA\u7528\u6765\u5220\uFF0C\u90A3\u4E00\u683C\u5E73\u65F6\u662F\u7EAF\u566A\u97F3\uFF0C\n \u800C\u5B83\u53C8\u7D27\u6328\u7740\u300C\u5FC5\u586B\u300D\u5F00\u5173 \u2014\u2014 \u8BEF\u70B9\u7684\u4EE3\u4EF7\u662F\u5220\u6389\u4E00\u884C\u5DF2\u7ECF\u586B\u597D\u7684\u5B57\u6BB5\u3002\n \u60AC\u505C\u6216\u952E\u76D8\u805A\u7126\u65F6\u624D\u663E\u5F62\uFF1B`opacity` \u4E0D\u6539\u53D8\u53EF\u805A\u7126\u6027\uFF0C\u6240\u4EE5\u952E\u76D8\u7528\u6237\u7167\u6837 Tab \u5F97\u5230\u3002 */\n.tita-kbFieldRow > .tita-uiButton:last-child { opacity: 0; transition: opacity 120ms ease-out; }\n.tita-kbFieldRow:hover > .tita-uiButton:last-child,\n.tita-kbFieldRow:focus-within > .tita-uiButton:last-child { opacity: 1; }\n@media (prefers-reduced-motion: reduce) { .tita-kbFieldRow > .tita-uiButton:last-child { transition: none; } }\n.tita-kbKv { display: grid; width: 100%; min-width: 0; max-width: 100%; margin: 0; gap: 4px; }\n.tita-kbKv > div { display: grid; width: 100%; min-width: 0; grid-template-columns: minmax(0, 92px) minmax(0, 1fr); gap: 8px; }\n.tita-kbKv dt { min-width: 0; color: var(--tita-ink-faint); font-size: 11px; overflow-wrap: anywhere; }\n.tita-kbKv dd { min-width: 0; margin: 0; overflow-wrap: anywhere; color: var(--tita-ink); font-size: 11.5px; }\n/* \u4E00\u884C\u653E\u4E0D\u4E0B\u5C31\u7701\u7565\uFF08\u60AC\u505C\u7ED9\u5168\u6587\uFF09\u3002`nowrap` \u662F\u5FC5\u9700\u7684\uFF1A\u5141\u8BB8\u6298\u884C\u65F6\u300C\u7701\u7565\u300D\u6839\u672C\u4E0D\u4F1A\u53D1\u751F\uFF0C\n \u90A3\u4E00\u884C\u4F1A\u81EA\u5DF1\u957F\u6210\u4E09\u884C \u2014\u2014 \u800C\u4E09\u884C\u7684\u51FA\u5904\u4F1A\u628A\u5143\u4FE1\u606F\u8FD9\u5F20\u8868\u6491\u5F97\u6BD4\u6B63\u6587\u8FD8\u9AD8\u3002 */\n.tita-kbKv dd.tita-kbKvEllipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbCode { border-radius: 4px; background: var(--tita-surface-muted); padding: 1px 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; overflow-wrap: anywhere; }\n.tita-kbAssetsNote { margin: 12px 0 0; color: var(--tita-ink-muted); font-size: 10.5px; }\n.tita-kbAssets { display: grid; width: 100%; min-width: 0; max-width: 100%; grid-template-columns: repeat(auto-fill, minmax(min(84px, 100%), 1fr)); gap: 8px; margin-top: 12px; max-height: 260px; overflow: auto; }\n.tita-kbAsset { margin: 0; border: 1px solid var(--tita-line); border-radius: 8px; padding: 4px; }\n.tita-kbAsset img { display: block; width: 100%; height: 62px; object-fit: contain; }\n.tita-kbAsset figcaption { margin-top: 3px; color: var(--tita-ink-faint); font-size: 10px; text-align: center; }\n/* \u539F\u6587\u4E0E\u5361\u7247\u6B63\u6587\u7684\u9605\u8BFB\u6001\u5BB9\u5668\uFF080030\uFF09\uFF1A\u5185\u5BB9\u7531\u5E73\u53F0 Markdown \u539F\u5B50\u6E32\u67D3\uFF0C\u6240\u4EE5\u8FD9\u91CC\u53EA\n \u4EA4\u4EE3\u300C\u5B83\u5728\u4E00\u4E2A\u7A84\u680F\u91CC\u4E5F\u8981\u80FD\u8BFB\u300D\u2014\u2014\u884C\u9AD8\u3001\u53EF\u65AD\u884C\u3001\u9996\u5C3E\u5916\u8FB9\u8DDD\u5F52\u96F6\uFF08\u4E0A\u4E0B\u90FD\u6709\u81EA\u5DF1\u7684\n \u5C0F\u8282\u6807\u9898\uFF0C\u7559\u7740\u90A3\u6BB5\u7A7A\u767D\u53EA\u4F1A\u8BA9\u62BD\u5C49\u770B\u8D77\u6765\u50CF\u6F0F\u4E86\u4E00\u683C\uFF09\u3002\u5185\u90E8\u6392\u7248\u4EA4\u7ED9\u6E32\u67D3\u5668\uFF0C\u4E0D\u5728\n \u63D2\u4EF6\u91CC\u53E6\u7ACB\u4E00\u5957 Markdown \u6837\u5F0F\uFF0C\u5426\u5219\u540C\u4E00\u4E2A\u539F\u5B50\u5728\u4E24\u5904\u4F1A\u957F\u5F97\u4E0D\u4E00\u6837\u3002 */\n.tita-kbSectionBlock { width: 100%; min-width: 0; max-width: 100%; }\n.tita-kbSectionBlock + .tita-kbSectionBlock { margin-top: 14px; }\n/* \u4E00\u8282\u7684\u77E5\u8BC6\uFF1A\u6302\u5728**\u5B83\u6240\u5C5E\u7684\u90A3\u4E00\u8282\u4E0B\u9762**\uFF0C\u4E0E\u4E0A\u9762\u7684\u6B63\u6587\u6709\u53EF\u89C1\u7684\u5206\u754C\uFF0C\u4F46\u4E0D\u53E6\u8D77\u4E00\u5757\n \uFF08\u540C\u4E00\u4E2A\u5C0F\u8282\u6A21\u5F0F\u91CC\uFF0C\u5B83\u662F\u6B63\u6587\u7684\u6CE8\u89E3\uFF0C\u4E0D\u662F\u7B2C\u4E8C\u4E2A\u5185\u5BB9\u533A\uFF09\u3002\u5DE6\u8FB9\u90A3\u9053\u7EBF\u662F\u300C\u8FD9\u51E0\u884C\u5C5E\u4E8E\n \u4E0A\u9762\u90A3\u4E00\u8282\u300D\u3002 */\n.tita-kbSectionBlock .tita-knowledgeList {\n margin-top: 8px;\n border-left: 2px solid var(--tita-line);\n padding-left: 10px;\n}\n.tita-kbSectionBlock .tita-knowledgeRow { padding: 6px 0; }\n.tita-kbSectionBlock .tita-knowledgeRow:first-child { padding-top: 0; }\n.tita-kbSectionBlock .tita-knowledgeRow:last-child { padding-bottom: 0; }\n.tita-kbMarkdown { width: 100%; min-width: 0; max-width: 100%; margin-top: 0; color: var(--tita-ink); font-size: 11.5px; line-height: 1.75; overflow-wrap: anywhere; }\n/*\n * \u6B63\u6587\u6BD4**\u5C0F\u8282\u6807\u9898**\u5C0F\u4E00\u53F7\uFF0813px \u2192 12px\uFF09\u3002\n *\n * \u4E0D\u80FD\u6309\u7C7B\u540D\u53BB\u76D6\uFF1A\u6B63\u6587\u7531**\u5BBF\u4E3B**\u7684 Markdown \u539F\u5B50\u6E32\u67D3\uFF08`@deepseek-ai/dsh-client-ui-primitives`\uFF09\uFF0C\n * \u5B83\u7684\u6839\u8282\u70B9\u7C7B\u540D\u662F CSS Modules \u54C8\u5E0C\u8FC7\u7684\uFF0C\u5199\u6B7B\u4F1A\u968F\u5BBF\u4E3B\u7248\u672C\u5931\u6548\uFF1B\u800C `packages/ui` \u91CC\u90A3\u4E2A\n * `.tita-markdownLocal` \u662F**\u53E6\u4E00\u4E2A**\u5B9E\u73B0 \u2014\u2014 \u5BBF\u4E3B\u8FD9\u4EFD\u6839\u672C\u4E0D\u7528\u5B83\uFF08\u7B2C\u4E00\u7248\u6B63\u662F\u7167\u5B83\u5199\u7684\uFF0C\n * \u6240\u4EE5\u5728\u754C\u9762\u4E0A\u4EC0\u4E48\u4E5F\u6CA1\u53D1\u751F\uFF09\u3002\n *\n * \u5BBF\u4E3B\u628A\u5B57\u53F7\u5199\u5728\u6839\u8282\u70B9\u7684\u4E00\u6761 `font` \u7B80\u5199\u4E0A\uFF08`font: var(--dsw-font-markdown-base)`\uFF09\uFF0C\n * \u6BB5\u843D\u4E0E\u5217\u8868\u90FD\u4ECE\u5B83\u7EE7\u627F\u3002\u6240\u4EE5\u8FD9\u91CC\u7528\u300C\u5BB9\u5668 + \u76F4\u63A5\u5B50\u5143\u7D20\u300D\u628A\u5B83\u538B\u4E0B\u53BB\uFF1A\u90A3\u4E2A\u5B50\u5143\u7D20\u5C31\u662F\u539F\u5B50\u7684\n * \u6839\uFF0C\u9009\u62E9\u5668\u6743\u91CD\uFF080,1,1\uFF09\u9AD8\u8FC7\u5BBF\u4E3B\u90A3\u6761\u7C7B\u9009\u62E9\u5668\uFF080,1,0\uFF09\uFF0C\u4E5F\u4E0D\u4F9D\u8D56\u54C8\u5E0C\u540D\u3002\n * \u6807\u9898 / \u8868\u683C / \u4EE3\u7801\u5757\u5404\u6709\u81EA\u5DF1\u7684\u5B57\u53F7 token\uFF0C\u4E0D\u53D7\u5F71\u54CD\u3002\n */\n.tita-kbMarkdown > :first-child { font-size: 11.5px; }\n.tita-kbMarkdown > :first-child { margin-top: 0; }\n/*\n * \u6B63\u6587\u91CC\u7684\u7AE0\u8282\u6807\u9898**\u4E0D\u8BB8\u5927\u8FC7\u62BD\u5C49\u81EA\u5DF1\u7684\u5C0F\u8282\u5934**\uFF0813px / 076\uFF09\u3002\n *\n * \u5BBF\u4E3B\u90A3\u5957\u6807\u9898 token \u662F\u7ED9**\u6574\u9875\u6587\u6863**\u6392\u7684\uFF08h1 24 / h2 17 / h3 15\uFF09\u3002\u642C\u8FDB 380\u2013420px \u7684\n * \u62BD\u5C49\u91CC\uFF0C\u5361\u7247\u6B63\u6587\u7684 `## \u53E3\u5F84\u5B9A\u4E49` \u4F1A\u4EE5 17px \u51FA\u73B0 \u2014\u2014 \u6BD4\u5B83\u4E0A\u9762\u90A3\u884C\u5C0F\u8282\u5934\u300C\u5185\u5BB9\u300D\u8FD8\u5927\uFF0C\n * \u5C42\u7EA7\u662F\u5012\u7684\uFF1A\u8BFB\u8005\u5148\u770B\u5230\u7AE0\u8282\uFF0C\u518D\u770B\u5230\u8FD9\u4E00\u5757\u53EB\u4EC0\u4E48\u3002\u800C\u5361\u7247\u672C\u6765\u5C31\u53EB\u300C\u7AE0\u8282 + \u5185\u5BB9\u300D\uFF0C\n * \u7AE0\u8282\u5FC5\u987B\u5728\u300C\u5185\u5BB9\u300D\u4E4B\u4E0B\u3002\n *\n * \u9009\u62E9\u5668\u4E0E\u4E0A\u9762\u90A3\u6761\u540C\u7406\uFF08\u4E0D\u80FD\u6309\u54C8\u5E0C\u7C7B\u540D\u53BB\u76D6\uFF09\uFF1A\u539F\u5B50\u628A\u7C7B\u540D\u5199\u5728\u6839\u8282\u70B9\u4E0A\uFF0C`> :first-child`\n * \u5C31\u662F\u90A3\u4E2A\u6839\uFF0C\u6807\u9898\u662F\u5B83\u7684\u540E\u4EE3 \u2014\u2014 \u6743\u91CD (0,2,1) \u9AD8\u8FC7\u5BBF\u4E3B\u90A3\u6761\u7C7B\u9009\u62E9\u5668 (0,1,0)\u3002\n */\n.tita-kbMarkdown > :first-child h1 { font-size: 13.5px; }\n.tita-kbMarkdown > :first-child h2 { font-size: 12.5px; }\n.tita-kbMarkdown > :first-child h3 { font-size: 12px; }\n.tita-kbMarkdown > :first-child h4,\n.tita-kbMarkdown > :first-child h5,\n.tita-kbMarkdown > :first-child h6 { font-size: 11.5px; }\n.tita-kbMarkdown > :last-child { margin-bottom: 0; }\n.tita-kbMarkdown img { max-width: 100%; border-radius: 6px; }\n.tita-kbInlineImage { margin: 10px 0; text-align: center; }\n.tita-kbInlineImage img { display: block; width: auto; max-width: 100%; max-height: 360px; margin: 0 auto; object-fit: contain; }\n.tita-kbPre { max-height: 320px; margin: 0; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface); color: var(--tita-ink); padding: 10px; overflow: auto; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10.5px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }\n/* \u6587\u672C\u89C6\u56FE\u7684 `<pre>` \u81EA\u5E26 max-height\uFF08\u7C7B\u578B\u5B9A\u4E49\u89C6\u56FE\u4E5F\u4F1A\u7528\uFF09\uFF0C\u8FDB\u4E86\u6B63\u6587\u5757\u4E4B\u540E\n \u7531\u5916\u5C42\u90A3\u4E00\u5C42\u8D1F\u8D23\u6EDA \u2014\u2014 \u540C\u4E00\u4EF6\u4E8B\u4E0D\u753B\u4E24\u6761\u6EDA\u52A8\u6761\u3002 */\n.tita-drawerBody .tita-kbPre { max-height: none; border: 0; border-radius: 0; background: transparent; padding: 0; }\n\n.tita-kbHint code { border-radius: 4px; background: var(--tita-surface-muted); padding: 0 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10.5px; }\n\n/* Wiki \u7F16\u8BD1\u4E0E\u53EC\u56DE\u6D41\u7A0B\uFF1A\u603B\u89C8\u56FE + \u5F53\u524D\u9009\u4E2D\u8282\u70B9\u8BF4\u660E\u3002 */\n.tita-wikiFlowSection + .tita-wikiFlowSection { margin-top: 30px; border-top: 1px solid var(--tita-line); padding-top: 24px; }\n.tita-wikiFlowSectionHead { margin-bottom: 10px; }\n.tita-wikiFlowKicker { color: var(--tita-primary); font-size: 10px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }\n.tita-wikiFlowSectionHead h2 { margin: 3px 0 5px; color: var(--tita-ink); font-size: 16px; font-weight: 750; line-height: 1.35; }\n.tita-wikiFlowSectionHead p { margin: 0; color: var(--tita-ink-muted); font-size: 11.5px; line-height: 1.7; }\n.tita-wikiFlowMap { margin-top: 12px; overflow-x: auto; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 10px; }\n.tita-wikiFlowMapPath { display: grid; grid-template-columns: minmax(92px, 1fr) auto repeat(4, minmax(116px, 1.1fr)) auto minmax(105px, 1fr); align-items: stretch; gap: 6px; min-width: 740px; }\n.tita-wikiFlowMapEndpoint, .tita-wikiFlowMapNode { display: grid; min-width: 0; align-content: center; gap: 4px; border: 1px solid var(--tita-line); border-radius: 8px; background: var(--tita-surface); padding: 8px; }\n.tita-wikiFlowMapEndpoint { display: flex; align-items: center; gap: 7px; }\n.tita-wikiFlowMapEndpoint > svg { flex: 0 0 auto; color: var(--tita-ink-muted); }\n.tita-wikiFlowMapEndpoint strong, .tita-wikiFlowMapNode strong { display: block; color: var(--tita-ink); font-size: 10.5px; line-height: 1.4; overflow-wrap: anywhere; }\n.tita-wikiFlowMapEndpoint small, .tita-wikiFlowMapNode small { display: block; color: var(--tita-ink-faint); font-size: 9.5px; line-height: 1.45; overflow-wrap: anywhere; }\n.tita-wikiFlowMapNodeHead { display: flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); }\n.tita-wikiFlowMapIndex { display: inline-flex; width: 18px; height: 18px; align-items: center; justify-content: center; border-radius: 5px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); font-size: 9px; font-weight: 800; }\n.tita-wikiFlowMapArrow { display: flex; align-items: center; justify-content: center; color: var(--tita-ink-faint); }\n.tita-wikiFlowMapHint { margin: 7px 0 0; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-wikiFlow { display: grid; gap: 0; margin-top: 12px; }\n.tita-wikiFlowSource, .tita-wikiFlowSink { display: flex; align-items: center; gap: 9px; border: 1px dashed var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 9px 11px; color: var(--tita-ink-muted); }\n.tita-wikiFlowSink { border-style: solid; border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); color: var(--tita-success); }\n.tita-wikiFlowSource strong, .tita-wikiFlowSink strong { display: block; color: var(--tita-ink); font-size: 11.5px; }\n.tita-wikiFlowSource small, .tita-wikiFlowSink small { display: block; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-wikiFlowStageWrap { display: grid; }\n.tita-wikiFlowArrow { display: flex; align-items: center; justify-content: center; color: var(--tita-ink-faint); padding: 3px 0; }\n/* \u9636\u6BB5\u5361\uFF1A\u6574\u5708\u53D1\u4E1D\u7EBF\uFF0C\u4E0D\u7528\u5DE6\u4FA7\u7C97\u8272\u6761\u3002\u9636\u6BB5\u8EAB\u4EFD\u7531\u5361\u7247\u81EA\u5DF1\u7684\u72B6\u6001\u70B9\u4E0E\u6807\u9898\u627F\u62C5\uFF1B\n \u5DE6\u8272\u6761\u65E2\u4E0D\u6BD4\u4E00\u5708\u7EC6\u8FB9\u591A\u7ED9\u4FE1\u606F\uFF0C\u53C8\u662F AI \u751F\u6210\u754C\u9762\u7684\u5178\u578B\u6307\u7EB9\u3002 */\n.tita-wikiFlowStage { border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 12px; }\n.tita-wikiFlowStageHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-wikiFlowStageHead strong { color: var(--tita-ink); font-size: 12px; font-weight: 700; }\n.tita-wikiFlowPass { display: inline-flex; align-items: center; gap: 5px; border-radius: 999px; background: var(--tita-surface-muted); padding: 2px 8px; font-size: 10px; font-weight: 700; letter-spacing: .02em; }\n.tita-wikiFlowLlm { margin-left: auto; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-wikiFlowIo { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px; margin: 6px 0 0; color: var(--tita-ink-muted); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-wikiFlowIoLabel { flex: 0 0 auto; color: var(--tita-ink-faint); font-family: inherit; font-size: 9.5px; font-weight: 700; }\n.tita-wikiFlowBody { display: grid; margin: 6px 0 0; padding-left: 16px; gap: 3px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.7; }\n.tita-wikiFlowBody code, .tita-wikiFlowRule code { border-radius: 4px; background: var(--tita-surface-muted); padding: 0 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n/* \u8FD9\u4E00\u6BB5\u5410\u51FA\u54EA\u4E00\u5C42\uFF0C\u4EE5\u53CA\u90A3\u4E00\u5C42\u56DE\u7B54\u4EC0\u4E48\u95EE\u9898\u3002\u56DB\u6BB5\u4E32\u8D77\u6765\u662F\u4E94\u5C42 \u2014\u2014 \u6BB5\u540D\u8BF4\u300C\u505A\u4E86\u4EC0\u4E48\u300D\uFF0C\n \u8FD9\u4E00\u884C\u8BF4\u300C\u957F\u51FA\u4E86\u4EC0\u4E48\u3001\u56DE\u7B54\u4EC0\u4E48\u300D\u3002\u4E0A\u8FB9\u7EBF\u628A\u5B83\u548C\u4E0A\u9762\u4E09\u6761\u505A\u6CD5\u5206\u5F00\uFF1A\u5B83\u662F\u7ED3\u8BBA\uFF0C\u4E0D\u662F\u53C8\u4E00\u6761\u505A\u6CD5\u3002 */\n.tita-wikiFlowProduces { display: flex; align-items: flex-start; gap: 5px; margin: 8px 0 0; border-top: 1px dashed var(--tita-line); padding-top: 7px; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; }\n.tita-wikiFlowProduces svg { flex: 0 0 auto; margin-top: 2px; }\n.tita-wikiFlowProduces b { color: var(--tita-ink); }\n/* \u300C\u56DE\u7B54\u300E\u5728\u54EA\u91CC\u300F\u300D\u8FD9\u4E00\u53E5\u8981\u8DF3\u51FA\u6765\u3002\u5B83\u662F 0063 \xA7\u4E00 \u90A3\u4E09\u53E5\u91CC\u7684\u4E00\u4E2A \u2014\u2014 \u5C42\u540D\u662F\u5B9E\u4F53\u540D\uFF0C\n \u95EE\u9898\u662F\u4EBA\u771F\u6B63\u8BB0\u4F4F\u7684\u4E1C\u897F\u3002\u5C42\u7EA7\u9760\u5B57\u91CD\uFF08\u4E0D\u7ED9\u5B83\u4E0A\u8272\uFF1A\u989C\u8272\u5728\u8FD9\u5F20\u56FE\u4E0A\u5DF2\u7ECF\u8868\u793A\u6BB5\u522B\uFF09\u3002 */\n.tita-wikiFlowAsk { color: var(--tita-ink); font-weight: 600; }\n\n/* \u7BA1\u8FD9\u4E00\u6BB5\u7684\u90A3\u6761\u5224\u5B9A\u89C4\u5219\u3002**\u5B83\u8DDF\u7740\u5B83\u7BA1\u7684\u90A3\u4E00\u6BB5\u8D70**\uFF0C\u6240\u4EE5\u5B83\u662F\u4E00\u5757\u5185\u5D4C\u7684\u5C0F\u6761\uFF0C\n \u4E0D\u662F\u9875\u5C3E\u7684\u7B2C\u4E09\u6761\u6E05\u5355\uFF1A\u8BFB\u8005\u8BFB\u5230\u7B2C 3 \u6BB5\u7684\u6807\u9898\u7EC4\u7EC7\u89C4\u5219\u65F6\uFF0C\u89C4\u5219\u5C31\u5728\u540C\u4E00\u5F20\u5361\u91CC\u3002\n \u5E95\u8272\u7528 muted \u2014\u2014 \u5B83\u662F\u8FD9\u6BB5\u7684\u65C1\u6CE8\uFF0C\u4E0D\u662F\u53C8\u4E00\u6761\u505A\u6CD5\u3002 */\n.tita-wikiFlowRule { display: flex; align-items: flex-start; gap: 7px; margin: 8px 0 0; border-radius: 8px; background: var(--tita-surface-muted); padding: 8px 10px; }\n.tita-wikiFlowRule > svg { flex: 0 0 auto; margin-top: 2px; color: var(--tita-primary); }\n.tita-wikiFlowRule > span { display: grid; gap: 2px; }\n.tita-wikiFlowRule strong { color: var(--tita-ink); font-size: 11px; }\n.tita-wikiFlowRule small { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.65; }\n\n.tita-wikiFlowBlue { border-left-color: var(--tita-primary); }\n.tita-wikiFlowBlue .tita-wikiFlowPass { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-wikiFlowViolet { border-left-color: var(--tita-tone-violet); }\n.tita-wikiFlowViolet .tita-wikiFlowPass { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-wikiFlowGreen { border-left-color: var(--tita-success); }\n.tita-wikiFlowGreen .tita-wikiFlowPass { background: var(--tita-tone-green-tint); color: var(--tita-success); }\n.tita-wikiFlowAmber { border-left-color: var(--tita-warning); }\n.tita-wikiFlowAmber .tita-wikiFlowPass { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-wikiFlowDiagram { margin-top: 0; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 10px; overflow-x: auto; }\n.tita-wikiFlowSvg { display: block; width: 100%; min-width: 680px; height: auto; overflow: visible; }\n.tita-wikiFlowSvgLaneLabel { fill: var(--tita-ink); font-family: var(--tita-font); font-size: 10px; font-weight: 750; }\n.tita-wikiFlowSvgLaneNote { fill: var(--tita-ink-faint); font-family: var(--tita-font); font-size: 9px; }\n.tita-wikiFlowSvgEdge { fill: none; stroke: var(--tita-line-strong); stroke-width: 1.4; }\n.tita-wikiFlowSvgArrow { fill: var(--tita-ink-faint); }\n.tita-wikiFlowSvgEndpointGroup { pointer-events: none; }\n.tita-wikiFlowSvgEndpoint { fill: var(--tita-surface); stroke: var(--tita-line-strong); stroke-width: 1; }\n.tita-wikiFlowSvgEndpointText { fill: var(--tita-ink); font-family: var(--tita-font); font-size: 11px; font-weight: 700; }\n.tita-wikiFlowSvgEndpointSub { fill: var(--tita-ink-faint); font-size: 9px; font-weight: 400; }\n.tita-wikiFlowSvgNode { cursor: pointer; outline: none; }\n.tita-wikiFlowSvgNode > rect { fill: var(--tita-surface); stroke: var(--tita-line); stroke-width: 1; }\n.tita-wikiFlowSvgNode.tita-wikiFlowBlue > rect { stroke: color-mix(in srgb, var(--tita-primary) 55%, var(--tita-line)); }\n.tita-wikiFlowSvgNode.tita-wikiFlowViolet > rect { stroke: color-mix(in srgb, var(--tita-tone-violet) 55%, var(--tita-line)); }\n.tita-wikiFlowSvgNode.tita-wikiFlowGreen > rect { stroke: color-mix(in srgb, var(--tita-success) 55%, var(--tita-line)); }\n.tita-wikiFlowSvgNode.tita-wikiFlowAmber > rect { stroke: color-mix(in srgb, var(--tita-warning) 55%, var(--tita-line)); }\n.tita-wikiFlowSvgNode.tita-wikiFlowSvgNodeSelected > rect,\n.tita-wikiFlowSvgNode:focus-visible > rect { fill: var(--tita-primary-soft); stroke: var(--tita-primary); stroke-width: 2; }\n.tita-wikiFlowSvgTitle { fill: var(--tita-ink); font-family: var(--tita-font); font-size: 11px; font-weight: 750; }\n.tita-wikiFlowSvgIo { fill: var(--tita-ink-muted); font-family: var(--tita-mono); font-size: 8.8px; }\n.tita-wikiFlowDetail { margin-top: 6px; border-top: 1px solid var(--tita-line); }\n.tita-wikiFlowDetailHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 12px; padding: 8px 0 6px; }\n.tita-wikiFlowDetailHead h3 { margin: 0; color: var(--tita-ink); font-size: 14px; font-weight: 750; line-height: 1.35; }\n.tita-wikiFlowDetailHead > span { color: var(--tita-ink-muted); font-family: var(--tita-mono); font-size: 10px; overflow-wrap: anywhere; }\n.tita-wikiFlowDetailStage { border-top: 1px dashed var(--tita-line); padding: 10px 0 2px; }\n.tita-wikiFlowDetailStageHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 10px; }\n.tita-wikiFlowDetailStageHead h3 { display: inline-flex; align-items: center; gap: 5px; margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 750; }\n.tita-wikiFlowDetailStageHead h3 svg { flex: 0 0 auto; color: var(--tita-ink-muted); }\n.tita-wikiFlowDetailStageHead .tita-wikiRecallIo { margin-left: auto; }\n.tita-wikiRecallFlow { display: grid; gap: 8px; margin-top: 12px; }\n.tita-wikiRecallStep { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 10px; min-width: 0; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 12px; }\n.tita-wikiRecallIndex { display: flex; width: 22px; height: 22px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 7px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); font-size: 10px; font-weight: 800; }\n.tita-wikiRecallBody { min-width: 0; }\n.tita-wikiRecallHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 5px 10px; }\n.tita-wikiRecallHead h3 { display: inline-flex; min-width: 0; align-items: center; gap: 5px; margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 750; }\n.tita-wikiRecallHead h3 svg { flex: 0 0 auto; color: currentColor; }\n.tita-wikiRecallIo { max-width: 100%; border-radius: 4px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 2px 5px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; line-height: 1.5; overflow-wrap: anywhere; }\n.tita-wikiRecallBody ul { display: grid; gap: 3px; margin: 6px 0 0; padding-left: 16px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.7; }\n.tita-wikiRecallBody li { min-width: 0; overflow-wrap: anywhere; }\n.tita-wikiRecallBoundary { margin: 7px 0 0; border-top: 1px dashed var(--tita-line); padding-top: 6px; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.65; }\n.tita-wikiRecallBoundary b { margin-right: 5px; color: var(--tita-ink-muted); font-weight: 700; }\n\n@media (max-width: 740px) {\n .tita-wikiFlowMap { overflow-x: visible; }\n .tita-wikiFlowMapPath { grid-template-columns: minmax(0, 1fr); min-width: 0; }\n .tita-wikiFlowMapArrow { min-height: 18px; transform: rotate(90deg); }\n}\n\n@media (max-width: 560px) {\n .tita-wikiRecallStep { grid-template-columns: 20px minmax(0, 1fr); padding: 9px 10px; }\n .tita-wikiRecallIndex { width: 20px; height: 20px; }\n .tita-wikiRecallIo { flex-basis: 100%; }\n}\n\n/* Wiki \u62BD\u53D6\u8BD5\u8DD1\uFF080063\uFF09\uFF1A\u56DB\u4E2A\u9636\u6BB5\u4E03\u4E2A\u52A8\u4F5C\u7684\u89C4\u5219\u5C42\u6A21\u62DF\u3002\u53EA\u8BFB\u3001\u4E0D\u843D\u76D8\u3002\n \u6587\u5B57\u5C42\u7EA7\u9760\u5B57\u53F7\u4E0E\u5B57\u91CD\uFF0C\u4E0D\u9760\u964D\u4F4E\u5BF9\u6BD4\u5EA6 \u2014\u2014 \u73B0\u6709\u754C\u9762\u7684 --tita-ink-muted \u53EA\u6709 4.01:1\uFF0C\n \u65B0\u52A0\u7684\u6B63\u6587\u4E0D\u8BE5\u628A\u8FD9\u4E2A\u503A\u518D\u6B20\u4E00\u904D\u3002\u72B6\u6001\u4E00\u5F8B\u6709\u6587\u5B57\u966A\u540C\uFF0C\u4E0D\u9760\u989C\u8272\u5355\u72EC\u4F20\u8FBE\u3002 */\n.tita-trialPick { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 10px; }\n.tita-trialClear { display: inline-flex; align-items: center; gap: 4px; border: 1px solid transparent; border-radius: 999px; background: transparent; color: var(--tita-ink); padding: 3px 8px; font-size: 10.5px; font-weight: 600; cursor: pointer; }\n.tita-trialClear:hover { border-color: var(--tita-line); background: var(--tita-surface-muted); }\n.tita-trialClear:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-trialError { display: flex; align-items: flex-start; gap: 6px; margin: 8px 0 0; border: 1px solid var(--tita-tone-amber-line); border-radius: 9px; background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); padding: 8px 10px; font-size: 11px; line-height: 1.6; }\n.tita-trialEmpty { margin: 10px 0 0; border: 1px dashed var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); color: var(--tita-ink); padding: 12px; font-size: 11px; line-height: 1.7; text-align: center; }\n.tita-trialSummary { display: grid; gap: 3px; margin-top: 12px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 9px 11px; }\n.tita-trialSummary strong { color: var(--tita-ink); font-size: 11.5px; overflow-wrap: anywhere; }\n.tita-trialSubjectLine { color: var(--tita-ink); font-size: 10.5px; font-weight: 600; }\n/*\n * \u8FD9\u6B21\u8F68\u8FF9\u843D\u6CA1\u843D\u5E93\u3002**\u8BF4"\u5DF2\u4FDD\u5B58"\u800C\u5176\u5B9E\u6CA1\u5B58\u4E0B\u6765\uFF0C\u6BD4\u4E0D\u8BF4\u66F4\u574F** \u2014\u2014 \u4EBA\u4E0B\u6B21\u5728 SourceRaw\n * \u91CC\u627E\u4E0D\u5230\u5B83\uFF0C\u53EA\u4F1A\u4EE5\u4E3A\u662F\u81EA\u5DF1\u8BB0\u9519\u4E86\u3002\u6240\u4EE5\u4E24\u79CD\u72B6\u6001\u5404\u6709\u5404\u7684\u989C\u8272\u4E0E\u63AA\u8F9E\u3002\n */\n.tita-trialRunNote { color: var(--tita-ink-muted); font-size: 10px; line-height: 1.6; }\n.tita-trialRunNote[data-saved="true"] { color: var(--tita-success); }\n.tita-trialLoading { display: flex; align-items: center; gap: 7px; margin: 10px 0 0; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); color: var(--tita-ink); padding: 10px 11px; font-size: 11px; line-height: 1.6; }\n.tita-trialSpin { flex: 0 0 auto; animation: tita-trial-spin .9s linear infinite; }\n@keyframes tita-trial-spin { to { transform: rotate(360deg); } }\n@media (prefers-reduced-motion: reduce) { .tita-trialSpin { animation: none; } }\n.tita-trialSummary span { color: var(--tita-ink); font-size: 10.5px; }\n.tita-trialSubject { margin-top: 10px; }\n.tita-trialLegend { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; }\n.tita-trialSteps { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 6px; }\n/* \u4E00\u4E2A\u9636\u6BB5\u7684\u5934 + \u5B83\u4E0B\u9762\u7684\u52A8\u4F5C\u3002**\u9636\u6BB5\u5934\u53EA\u5728\u9636\u6BB5\u53D8\u5316\u65F6\u51FA\u73B0** \u2014\u2014\n \u4E03\u4E2A\u52A8\u4F5C\u662F\u56DB\u6BB5\u91CC\u7684\uFF0C\u4E0D\u662F\u5E76\u5217\u7684\u4E03\u4EF6\u4E8B\u3002 */\n.tita-trialStepWrap { display: grid; gap: 5px; }\n.tita-trialPhaseHead { margin: 8px 0 0; color: var(--tita-ink); font-size: 10px; font-weight: 700; letter-spacing: .02em; }\n.tita-trialStepWrap:first-child .tita-trialPhaseHead { margin-top: 0; }\n.tita-trialStep { border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); overflow: hidden; }\n.tita-trialStepWarn { border-color: var(--tita-tone-amber-line); }\n.tita-trialStepHead { display: flex; width: 100%; flex-wrap: wrap; align-items: center; gap: 7px; border: 0; background: transparent; padding: 9px 11px; text-align: left; cursor: pointer; }\n.tita-trialStepHead:hover { background: var(--tita-surface-muted); }\n.tita-trialStepHead:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: -2px; }\n.tita-trialStepOrder { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 17px; height: 17px; border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink); font-size: 10px; font-weight: 700; }\n.tita-trialStepName { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; }\n.tita-trialActor { display: inline-flex; align-items: center; gap: 3px; border-radius: 999px; padding: 2px 7px; font-size: 9.5px; font-weight: 700; }\n.tita-trialActor[data-actor="\u7CFB\u7EDF"] { background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-trialActor[data-actor="\u6A21\u578B"] { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialActor[data-actor="\u4EBA"] { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-trialChevron { flex: 0 0 auto; color: var(--tita-ink); transition: transform .16s ease; }\n.tita-trialChevronOpen { transform: rotate(180deg); }\n.tita-trialStepSum { flex: 1 1 100%; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialStepBody { display: grid; margin: 0; border-top: 1px solid var(--tita-line); background: var(--tita-surface-muted); padding: 8px 11px; gap: 5px; }\n.tita-trialRow { display: grid; grid-template-columns: 92px 1fr; gap: 8px; }\n.tita-trialRow dt { color: var(--tita-ink); font-size: 10.5px; font-weight: 600; }\n.tita-trialRow dd { margin: 0; color: var(--tita-ink); font-size: 10.5px; line-height: 1.65; overflow-wrap: anywhere; }\n.tita-trialProduce { display: grid; gap: 2px; }\n.tita-trialProduceHead { margin: 0; color: var(--tita-ink); font-size: 10px; font-weight: 700; }\n.tita-trialItemsNone { margin: 2px 0 0; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialItems { display: grid; margin: 0; padding: 0; list-style: none; }\n.tita-trialItem { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px; border-top: 1px dashed var(--tita-line); padding: 5px 0; }\n.tita-trialItem:first-child { border-top: 0; padding-top: 1px; }\n.tita-trialItemRef { color: var(--tita-ink); font-size: 10px; overflow-wrap: anywhere; }\n.tita-trialItemArrow { color: var(--tita-ink); font-size: 10px; }\n.tita-trialItemValue { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-trialItemNote { color: var(--tita-ink); font-size: 10px; line-height: 1.55; overflow-wrap: anywhere; }\n.tita-trialItemWarn .tita-trialItemValue { text-decoration: underline wavy var(--tita-tone-amber); text-underline-offset: 3px; }\n.tita-trialItemsMore { margin: 4px 0 0; color: var(--tita-ink); font-size: 10px; }\n.tita-trialRows { display: grid; margin: 0; border-top: 1px solid var(--tita-line); padding-top: 6px; gap: 5px; }\n/*\n * \u5BF9\u8C61 \xD7 \u52A8\u4F5C\u77E9\u9635\uFF080063 \xA75.7\uFF09\u3002**\u4E00\u4E2A\u5F62\u72B6\uFF0C\u4E24\u4E2A\u751F\u4EA7\u8005\u3002**\n *\n * \u8BFB\u6CD5\u7531\u5DE6\u4E0A\u89D2\u90A3\u4E00\u683C\u8BF4\u6E05\u695A\uFF1A\u4E00\u9053 `\\` \u7EBF\u5206\u5F00\u884C\u4E0E\u5217\uFF0C\u53F3\u4E0A\u5199\u5217\u8F74\uFF08\u52A8\u4F5C\uFF09\uFF0C\u5DE6\u4E0B\u5199\u884C\u8F74\n * \uFF08\u5BF9\u8C61\uFF09\uFF0C\u7EBF\u4E0A\u538B\u7740\u7B2C\u4E09\u4E2A\u5206\u91CF\uFF08\u573A\u666F\uFF09\u3002\u5750\u6807\u662F\u4E09\u7EF4\u7684\uFF0C\u77E9\u9635\u53EA\u662F\u5B83\u7684\u4E8C\u7EF4\u6295\u5F71 \u2014\u2014\n * \u4E09\u6839\u8F74\u7684\u540D\u5B57\u90FD\u51FA\u73B0\u5728\u8FD9\u4E00\u683C\u91CC\uFF0C\u683C\u5185\u90A3\u4E24\u884C\uFF08\u573A\u666F\u540D + \u6570\u5B57\uFF09\u624D\u8BFB\u5F97\u61C2\u3002\n */\n.tita-trialMatrix { display: grid; gap: 8px; margin-top: 12px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 11px; }\n/*\n * \u6CA1\u6709\u81EA\u5DF1\u90A3\u4E00\u5708\u7684\u77E9\u9635\uFF08\u77E5\u8BC6\u90A3\u4E00\u680F\uFF09\u3002\u5B83\u5DF2\u7ECF\u5728 `Card` \u91CC \u2014\u2014 \u4E24\u4E2A\u6846\u5957\u5728\u4E00\u8D77\u5C31\u662F\u5361\u7247\n * \u5957\u5361\u7247\uFF0C\u800C\u5B83\u4EEC\u56DE\u7B54\u7684\u662F\u540C\u4E00\u4E2A\u95EE\u9898\u3002\u53BB\u6389\u6846\u4E0E\u5185\u8FB9\u8DDD\u4E4B\u540E\uFF0C\u6807\u9898\u548C\u8868\u90FD\u662F\u8FD9\u4E00\u5757\u91CC\u7684\u4E00\u7B49\u516C\u6C11\u3002\n */\n.tita-trialMatrixPlain { margin-top: 0; border: 0; border-radius: 0; padding: 0; background: none; }\n.tita-blockHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-blockHead h4 { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 12.5px; font-weight: 700; }\n.tita-blockHead h4 svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-blockHead > span { margin-left: auto; color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }\n/* \u8BFB\u6CD5\u90A3\u4E00\u53E5\u8DDF\u5728\u6807\u9898\u540E\u9762\uFF0C**\u4E0D\u63A8\u5230\u53F3\u8FB9** \u2014\u2014 \u5B83\u662F\u6807\u9898\u7684\u89E3\u91CA\uFF0C\u4E0D\u662F\u8FD9\u4E00\u680F\u7684\u8BA1\u6570\u3002 */\n.tita-blockHead > .tita-blockNote { margin-left: 0; font-size: 10px; }\n/* \u8BA1\u6570\u5728\u6700\u53F3\uFF08`margin-left: auto` \u6765\u81EA\u4E0A\u4E00\u6761\uFF09\uFF0C\u5168\u5C4F\u6309\u94AE\u518D\u5F80\u53F3\u4E00\u4E2A\u8EAB\u4F4D\u3002 */\n.tita-blockMeta { margin-left: auto; color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-blockExpand { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 22px; height: 22px; border: 1px solid var(--tita-line); border-radius: 6px; background: var(--tita-surface); color: var(--tita-ink-muted); padding: 0; cursor: pointer; }\n.tita-blockExpand:hover { border-color: var(--tita-line-strong); color: var(--tita-ink); }\n.tita-blockExpand:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n/* \u6807\u9898\u91CC\u7684\u5750\u6807\u5F0F\u5B50\uFF1A`(\u5BF9\u8C61 \xD7 \u52A8\u4F5C \xD7 \u573A\u666F)` \u662F**\u526F\u9898**\uFF0C\u4E0D\u662F\u540D\u5B57\u7684\u4E00\u90E8\u5206\u3002 */\n.tita-blockSub { color: var(--tita-ink-faint); font-size: 11px; font-weight: 500; }\n.tita-trialMatrixScroll { overflow-x: auto; overscroll-behavior-x: contain; }\n.tita-trialMatrixScroll:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n/*\n * \u6709\u4E0A\u9650\u7684\u77E9\u9635\uFF08\u77E5\u8BC6\u90A3\u4E00\u680F\u7528\uFF09\u3002\n *\n * \u62BD\u53D6\u8BD5\u8DD1\u7684\u77E9\u9635\u53EA\u88C5**\u4E00\u4EFD\u6587\u6863**\u62BD\u51FA\u6765\u7684\u5BF9\u8C61\uFF0C\u4E2A\u4F4D\u6570\uFF1B\u6574\u4E2A\u5E93\u7684\u77E9\u9635\u4F1A\u957F\u5230\u51E0\u5341\u884C\n * \uFF08\u771F\u5B9E\u6570\u636E\u91CC 38 \u4E2A\u5BF9\u8C61 \xD7 4 \u4E2A\u52A8\u4F5C\uFF09\uFF0C\u4E0D\u9650\u9AD8\u7684\u8BDD\u5B83\u4F1A\u628A\u4E0B\u9762\u7684\u5217\u8868\u6574\u6BB5\u63A8\u51FA\u5C4F\u5E55\u3002\n *\n * \u4E24\u5904\u7EC6\u8282\u662F\u4E3A\u4E86\u8BA9\u5B83\u80FD\u6EDA\u800C\u4E0D\u96BE\u53D7\uFF1A\n *\n * - **\u8868\u5934\u5438\u9876\uFF0C\u884C\u5934\u5438\u5DE6\u3002** \u6EDA\u5230\u7B2C 20 \u884C\u65F6\uFF0C\u4E0D\u5438\u9876\u5C31\u4E0D\u77E5\u9053\u81EA\u5DF1\u5728\u54EA\u4E00\u5217\uFF1B\u6A2A\u5411\u6EDA\u51FA\n * \u7B2C\u4E00\u4E2A\u52A8\u4F5C\u4E4B\u540E\uFF0C\u4E0D\u5438\u5DE6\u5C31\u4E0D\u77E5\u9053\u81EA\u5DF1\u5728\u54EA\u4E00\u884C\u3002\u5DE6\u4E0A\u89D2\u90A3\u4E00\u683C\u4E24\u4E2A\u65B9\u5411\u90FD\u5438\u4F4F\uFF0C\u800C\u4E14\u8981\n * \u538B\u5728\u53E6\u5916\u4E24\u8005\u4E4B\u4E0A \u2014\u2014 \u5426\u5219\u5B83\u4F1A\u88AB\u6EDA\u8FC7\u6765\u7684\u8868\u5934\u76D6\u4F4F\u3002\n * - **\u7EB5\u5411\u4E0D\u8BBE `overscroll-behavior: contain`\u3002** \u8BBE\u4E86\u7684\u8BDD\u6EDA\u5230\u5E95\u4F1A\u300C\u5361\u4F4F\u300D\uFF0C\u6EDA\u8F6E\u4E0D\u518D\u4F20\u7ED9\n * \u5916\u9762\u90A3\u4E00\u5C42\u6EDA\u52A8\u5BB9\u5668 \u2014\u2014 \u90A3\u6B63\u662F\u5D4C\u5957\u6EDA\u52A8\u6700\u8BA8\u4EBA\u538C\u7684\u5730\u65B9\u3002\u6A2A\u5411\u4ECD\u7136 contain\uFF1A\n * \u90A3\u4E00\u5C42\u662F\u6211\u4EEC\u81EA\u5DF1\u7684\u5BBD\u8868\u683C\uFF0C\u4E0D\u8BE5\u628A\u6A2A\u5411\u6EDA\u52A8\u6F0F\u7ED9\u6574\u9875\u3002\n */\n.tita-trialMatrixScrollBounded { max-height: 300px; overflow-y: auto; }\n.tita-trialMatrixScrollBounded thead th,\n.tita-trialMatrixScrollBounded thead td { position: sticky; top: 0; z-index: 2; background-color: var(--tita-surface); }\n/*\n * `separate` \u800C\u4E0D\u662F `collapse`\uFF1A\u584C\u9677\u7684\u8FB9\u6846\u5728\u5438\u9876\u5355\u5143\u683C\u4E0A\u4F1A\u88AB\u6D4F\u89C8\u5668\u4E22\u6389\u3002\n *\n * \u5438\u9876 / \u5438\u5DE6\u7684\u5355\u5143\u683C\u53EA\u80FD\u5199 `background-color`\uFF0C**\u4E0D\u80FD\u5199 `background` \u7B80\u5199**\uFF1A\u7B80\u5199\u4F1A\u628A\n * `background-image` \u4E00\u8D77\u91CD\u7F6E\u6210 `none`\uFF0C\u800C\u5DE6\u4E0A\u89D2\u90A3\u4E00\u683C\u7684\u5BF9\u89D2\u7EBF\u6B63\u662F\u4E00\u6761 background-image\n * \uFF08\u5B83\u7684\u9009\u62E9\u5668\u6743\u91CD\u8FD8\u6BD4\u8FD9\u91CC\u4F4E\uFF0C\u4E8E\u662F\u7EBF\u4F1A\u88AB\u9759\u9ED8\u5403\u6389 \u2014\u2014 \u754C\u9762\u4E0A\u770B\u5C31\u662F\u300C\u5C11\u4E86\u4E00\u9053\u7EBF\u300D\uFF0C\u5F88\u96BE\u67E5\uFF09\u3002\n */\n.tita-trialMatrixGrid { border-collapse: separate; border-spacing: 0; }\n/*\n * \u5361\u7247\u91CC\u7684\u90A3\u4E00\u4EFD**\u94FA\u6EE1\u5BB9\u5668\u3001\u5217\u7B49\u5BBD**\u3002\n *\n * `table-layout: fixed` \u662F\u4E3A\u4E86\u8BA9\u300C\u5F62\u72B6\u300D\u771F\u7684\u8BFB\u5F97\u51FA\u6765\uFF1A\u81EA\u52A8\u5E03\u5C40\u4F1A\u6309\u6700\u957F\u7684\u90A3\u6761\u573A\u666F\u540D\u6491\u5F00\n * \u90A3\u4E00\u5217\uFF08\u771F\u5B9E\u6570\u636E\u91CC `\u65B0\u5EFA\u8BA2\u5355\u6D41\u7A0B` \u80FD\u6BD4\u522B\u7684\u5217\u5BBD\u4E00\u500D\uFF09\uFF0C\u4E8E\u662F\u56DB\u5217\u5BBD\u7A84\u4E0D\u4E00\uFF0C380px \u7684\u4FA7\u680F\n * \u8FD8\u4F1A\u88AB\u6324\u51FA\u6A2A\u5411\u6EDA\u52A8 \u2014\u2014 \u6700\u53F3\u8FB9\u90A3\u4E00\u5217\u88AB\u63A8\u5230\u89C6\u91CE\u5916\uFF0C\u77E9\u9635\u5C31\u4E0D\u518D\u662F\u300C\u4E00\u773C\u770B\u5F62\u72B6\u300D\u7684\u4E1C\u897F\u3002\n * \u5B9A\u5BBD\u4E4B\u540E\u6BCF\u5217\u7B49\u5BBD\uFF0C\u653E\u4E0D\u4E0B\u7684\u573A\u666F\u540D\u622A\u65AD\uFF08\u5B8C\u6574\u540D\u5B57\u5728 `title` \u91CC\uFF09\u3002\n */\n.tita-trialMatrixPlain .tita-trialMatrixGrid { width: 100%; table-layout: fixed; }\n/*\n * \u7F51\u683C\u7EBF\u53EA\u6709\u4E09\u79CD\uFF0C\u800C\u4E14\u5404\u6709\u5404\u7684\u610F\u601D\uFF1A\n *\n * - \u8868\u5934\u884C\u4E0B\u9762\u3001\u884C\u5934\u5217\u53F3\u8FB9\u662F**\u5B9E\u7EBF**\uFF08`--tita-line-strong`\uFF09\uFF1A\u90A3\u662F\u300C\u6807\u7B7E\u300D\u4E0E\u300C\u6570\u636E\u300D\u7684\n * \u5206\u754C\uFF0C\u4E0D\u662F\u666E\u901A\u7F51\u683C\u7EBF\uFF0C\u6240\u4EE5\u5B83\u8981\u6BD4\u522B\u7684\u7EBF\u91CD\u4E00\u6863\u3002\n * - \u884C\u4E0E\u884C\u3001\u5217\u4E0E\u5217\u4E4B\u95F4\u662F**\u6781\u6D45\u7684\u7EBF**\uFF08`--tita-line`\uFF09\uFF1A\u77E9\u9635\u672C\u6765\u5C31\u8BE5\u770B\u5F97\u89C1\u683C\u5B50\uFF0C\n * \u4F46\u7EBF\u4E0D\u8BE5\u6BD4\u683C\u91CC\u7684\u5185\u5BB9\u8FD8\u62A2\u773C\u3002\n * - \u522B\u7684\u8FB9\u4E00\u5F8B\u4E0D\u753B\u3002\u65E7\u7248\u7ED9\u6BCF\u4E00\u683C\u90FD\u63CF\u4E86\u4E00\u5708\u8FB9\uFF0C\u800C\u683C\u91CC\u7684\u6807\u7B7E\u81EA\u5DF1\u4E5F\u5E26\u8FB9\u6846 \u2014\u2014 \u8BFB\u8D77\u6765\u662F\n * \u300C\u76D2\u5B50\u5957\u76D2\u5B50\u300D\uFF0C\u76D2\u5B50\u91CC\u5374\u53EA\u6709\u4E09\u4E2A\u5B57\u3002\n */\n.tita-trialMatrixGrid th, .tita-trialMatrixGrid td { border: 0; padding: 4px 5px; }\n.tita-trialMatrixGrid thead th, .tita-trialMatrixGrid thead .tita-trialMatrixCorner { border-bottom: 1px solid var(--tita-line-strong); }\n.tita-trialMatrixGrid tbody th { border-right: 1px solid var(--tita-line-strong); }\n.tita-trialMatrixGrid tbody td + td { border-left: 1px solid var(--tita-line); }\n.tita-trialMatrixGrid tbody tr + tr th, .tita-trialMatrixGrid tbody tr + tr td { border-top: 1px solid var(--tita-line); }\n/*\n * \u5DE6\u4E0A\u89D2\uFF1A\u4E09\u6839\u8F74\u7684\u4EA4\u70B9\u3002\n *\n * \u90A3\u9053 `\\` \u7EBF\u662F\u4E00\u6761 `linear-gradient`\uFF0C\u4E0D\u662F\u4F2A\u5143\u7D20\u52A0\u65CB\u8F6C \u2014\u2014 \u8FD9\u4E00\u683C\u8FD8\u8981\u5438\u9876 + \u5438\u5DE6\uFF0C\n * \u4F2A\u5143\u7D20\u5728\u5438\u9876\u5355\u5143\u683C\u91CC\u5BB9\u6613\u8DDF\u5185\u5BB9\u5404\u6EDA\u5404\u7684\uFF0C\u800C\u80CC\u666F\u8DDF\u7740\u5355\u5143\u683C\u8D70\u3002\n *\n * \u7EBF\u4E0A\u7684\u300C\u573A\u666F\u300D\u5E26\u4E00\u5C42 surface \u5E95\uFF1A\u5B83\u628A\u7EBF**\u538B\u65AD**\uFF0C\u8BFB\u6210\u300C\u8FD9\u6761\u7EBF\u5C31\u662F\u7B2C\u4E09\u6839\u8F74\u300D\uFF0C\n * \u800C\u4E0D\u662F\u4E09\u4E2A\u5B57\u6D6E\u5728\u4E00\u6761\u659C\u7EBF\u4E0A\u3002\n */\n.tita-trialMatrixCorner { position: sticky; top: 0; left: 0; z-index: 3; width: 68px; min-height: 36px; background-color: var(--tita-surface); background-image: linear-gradient(to bottom right, transparent calc(50% - .5px), var(--tita-line-strong) calc(50% - .5px), var(--tita-line-strong) calc(50% + .5px), transparent calc(50% + .5px)); }\n.tita-trialMatrixCornerCol, .tita-trialMatrixCornerRow, .tita-trialMatrixCornerScene { position: absolute; line-height: 1; }\n.tita-trialMatrixCornerCol, .tita-trialMatrixCornerRow { color: var(--tita-ink-muted); font-size: 10px; font-weight: 700; }\n.tita-trialMatrixCornerCol { top: 4px; right: 5px; }\n.tita-trialMatrixCornerRow { bottom: 4px; left: 5px; }\n.tita-trialMatrixCornerScene { top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 3px; background: var(--tita-surface); color: var(--tita-ink-faint); padding: 1px 3px; font-size: 9px; font-weight: 700; }\n/*\n * \u5217\u5BBD\u7684\u4E0B\u9650\u3002**\u4E24\u4E2A\u65B9\u5411\u7684\u8868\u5934\u90FD\u8981\u7ED9** \u2014\u2014 \u884C\u5934\uFF08\u5BF9\u8C61\u540D\uFF09\u4E0D\u7ED9\u4E0B\u9650\u65F6\u5B83\u4F1A\u7F29\u5230\n * min-content\uFF0C\u800C\u6302\u5728\u5B83\u4E0A\u9762\u7684\u90A3\u7EC4\u6807\u7B7E\u5C31\u88AB\u62C6\u6210\u300C\u65E0 / \u573A / \u666F\u300D\u4E09\u884C\u3002\n */\n.tita-trialMatrixGrid thead th, .tita-trialMatrixGrid tbody th { min-width: 64px; }\n.tita-trialMatrixGrid thead th { color: var(--tita-ink); font-size: 10px; font-weight: 700; line-height: 1.35; text-align: center; vertical-align: middle; overflow-wrap: anywhere; }\n/* \u884C\u5934\u5438\u5DE6\uFF1A\u6A2A\u5411\u6EDA\u51FA\u7B2C\u4E00\u4E2A\u52A8\u4F5C\u4E4B\u540E\uFF0C\u4ECD\u8981\u77E5\u9053\u81EA\u5DF1\u5728\u54EA\u4E00\u884C\u3002 */\n.tita-trialMatrixGrid tbody th { position: sticky; left: 0; z-index: 1; background-color: var(--tita-surface); color: var(--tita-ink); font-size: 10px; font-weight: 600; line-height: 1.4; text-align: center; vertical-align: middle; overflow-wrap: anywhere; }\n/*\n * \u8F74\u540D\u4E0E\u6302\u5728\u5B83\u4E0A\u9762\u7684\u300C\u6CA1\u6709\u53E6\u4E00\u8FB9\u300D\u7684\u90A3\u4E9B\u7EC4\u3002\n *\n * **\u4E24\u4E2A\u8F74\u90FD\u4E0D\u5355\u5F00\u4E00\u683C**\uFF1A\u6709\u5BF9\u8C61\u6CA1\u52A8\u4F5C\u7684\u77E5\u8BC6\u6302\u5728\u884C\u5934\u4E0A\uFF0C\u6709\u52A8\u4F5C\u6CA1\u5BF9\u8C61\u7684\u6302\u5728\u5217\u5934\u4E0A\u3002\n * \u7ED9\u77E9\u9635\u591A\u7559\u4E00\u884C\u4E00\u5217\u7684\u4EE3\u4EF7\u662F\u6BCF\u4E2A\u5BF9\u8C61\u591A\u4E00\u683C\u3001\u6BCF\u4E2A\u52A8\u4F5C\u591A\u4E00\u683C\uFF0C\u800C\u7EDD\u5927\u591A\u6570\u662F\u7A7A\u7684 \u2014\u2014\n * \u7A7A\u7684\u5F62\u72B6\u672C\u8EAB\u6CA1\u6709\u4FE1\u606F\uFF0C\u6709\u4FE1\u606F\u7684\u662F\u300C\u8FD9\u4E2A\u5BF9\u8C61\u8FD8\u6709\u51E0\u6761\u77E5\u8BC6\u6CA1\u914D\u52A8\u4F5C\u300D\u3002\n */\n.tita-trialMatrixAxis { display: block; color: var(--tita-ink); font-weight: 700; }\n/*\n * \u8F74\u540D\u505A\u6210\u6309\u94AE\u7684\u7248\u672C \u2014\u2014 Knowledge \u90A3\u4E00\u680F\u7528\u5B83\u3002\n *\n * \u90A3\u8FB9\u70B9\u4E00\u4E2A\u5BF9\u8C61\u540D\u5C31\u662F\u300C\u53EA\u770B\u8FD9\u4E2A\u5BF9\u8C61\u300D\uFF0C\u6240\u4EE5\u884C\u5934 / \u5217\u5934\u662F\u7B5B\u9009\u5668\u7684\u4E00\u90E8\u5206\uFF0C\u4E0D\u662F\u6807\u9898\u3002\n * \u62BD\u53D6\u8BD5\u8DD1\u90A3\u8FB9\u4E0D\u9700\u8981\u8FD9\u4E2A\u52A8\u4F5C\uFF0C\u8F74\u540D\u5C31\u8FD8\u662F\u7EAF\u6587\u672C\uFF1A**\u4E00\u4E2A\u4E1C\u897F\u53EF\u4E0D\u53EF\u70B9\uFF0C\u957F\u4EC0\u4E48\u6837\u5FC5\u987B\u8BF4\u6E05**\uFF0C\n * \u6240\u4EE5\u8FD9\u91CC\u662F\u4E24\u4E2A\u7C7B\uFF0C\u4E0D\u662F\u540C\u4E00\u4E2A\u7C7B\u52A0\u4E00\u4E2A onClick\u3002\n */\n.tita-trialMatrixAxisPick { display: flex; width: 100%; max-width: 100%; align-items: center; justify-content: center; margin: 0; border: 0; border-radius: 4px; background: none; color: inherit; padding: 0; font: inherit; font-weight: 700; text-align: center; overflow-wrap: anywhere; cursor: pointer; }\n.tita-trialMatrixAxisPick:hover { color: var(--tita-primary); text-decoration: underline; text-underline-offset: 2px; }\n.tita-trialMatrixAxisPick:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-trialMatrixAxisPickOn { background: var(--tita-primary-soft); box-shadow: 0 0 0 2px var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialMatrixAxisPickOn:hover { color: var(--tita-primary); text-decoration: none; }\n.tita-trialMatrixAxisHeadOn, .tita-trialMatrixObjectHeadOn { background-color: var(--tita-primary-soft) !important; color: var(--tita-primary); }\n.tita-trialMatrixAxisHeadOn .tita-trialMatrixAxisPickOn, .tita-trialMatrixObjectHeadOn .tita-trialMatrixAxisPickOn { background: transparent; box-shadow: none; }\n/*\n * \u8F74\u5934\uFF1A**\u56FA\u5B9A\u4E24\u884C\uFF0C\u5DE6\u5BF9\u9F50**\u3002\n *\n * \u7B2C\u4E00\u884C\u8F74\u540D\uFF0C\u7B2C\u4E8C\u884C\u6302\u5728\u5B83\u4E0A\u9762\u7684\u7EDF\u8BA1\uFF08`\u65E0\u52A8\u4F5C:3` / `\u65E0\u5BF9\u8C61:5`\uFF09\u3002\u5217\u5934\u5199\u6B7B\u4E24\u884C\u7684\u9AD8\u5EA6\uFF1A\n * \u4E00\u884C\u6CA1\u6709\u7EDF\u8BA1\u7684\u5217\u4E5F\u5360\u540C\u6837\u7684\u9AD8\u5EA6\uFF0C\u7F51\u683C\u624D\u4E0D\u4F1A\u56E0\u4E3A\u67D0\u4E00\u5217\u591A\u4E00\u884C\u800C\u53C2\u5DEE\u3002\u884C\u5934\u7684\u9AD8\u5EA6\u8DDF\u7740\n * \u884C\u9AD8\u8D70\uFF08\u683C\u91CC\u6709\u51E0\u4E2A\u573A\u666F\u5B83\u5C31\u51E0\u884C\uFF09\uFF0C\u6240\u4EE5\u90A3\u91CC\u4E0D\u5199\u6B7B\u9AD8\u5EA6\uFF0C\u53EA\u4FDD\u8BC1**\u987A\u5E8F\u662F\u540D\u5B57\u3001\u7EDF\u8BA1**\u3002\n */\n.tita-trialMatrixColHead { height: 42px; vertical-align: middle; text-align: center; }\n/* \u884C\u5934\u5217\u7684\u90A3\u6761\u7AD6\u7EBF\uFF1A\u8F74\u540D\u4E0E\u7EDF\u8BA1\u90FD\u5728\u5BF9\u8C61\u5355\u5143\u683C\u4E2D\u5C45\u4E2D\u3002 */\n.tita-trialMatrixGrid tbody th { padding-left: 0; }\n.tita-trialMatrixGrid tbody th > .tita-trialMatrixAxis,\n.tita-trialMatrixGrid tbody th > .tita-trialMatrixAxisPick { margin-bottom: 3px; }\n.tita-trialMatrixObjectHead { text-align: center; }\n.tita-trialMatrixLoose { display: block; width: 100%; max-width: 100%; margin: 0; border: 1px solid transparent; border-radius: 5px; color: var(--tita-ink-faint); padding: 0 3px; font: inherit; font-size: 9px; font-weight: 500; line-height: 1.5; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.tita-trialMatrixLooseStack { display: grid; min-width: 0; justify-items: center; gap: 1px; }\n.tita-trialMatrixLooseEmpty { display: block; height: 14px; }\n.tita-trialMatrixLoosePick { border-color: var(--tita-line); background: none; cursor: pointer; }\n.tita-trialMatrixLoosePick:hover { border-color: var(--tita-line-strong); color: var(--tita-ink-muted); }\n.tita-trialMatrixLoosePick:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-trialMatrixLooseOn { border-color: var(--tita-primary); background: var(--tita-primary-soft); color: var(--tita-primary); }\n/*\n * \u683C\u5B50\u91CC\u7684\u4E00\u884C\uFF1A`\u573A\u666F:\u6761\u6570`\u3002**\u4E00\u884C\u4E00\u4E2A\u573A\u666F\uFF0C\u5DE6\u5BF9\u9F50\u3002**\n *\n * \u4E0D\u628A\u51E0\u4E2A\u573A\u666F\u6324\u8FDB\u4E00\u884C\uFF1A\u8FD9\u4E00\u680F\u53EA\u6709 380px\uFF0C\u6BCF\u4E2A\u573A\u666F\u90FD\u8981\u80FD\u5355\u72EC\u70B9\u4E2D\uFF1B\u6324\u6210\u4E00\u884C\u5C31\u5F97\u9760\u622A\u65AD\uFF0C\n * \u800C\u622A\u65AD\u6389\u7684\u662F\u300C\u8FD9\u4E00\u683C\u6709\u54EA\u51E0\u4E2A\u573A\u666F\u300D\u8FD9\u4E2A\u7B54\u6848\u672C\u8EAB\u3002\n *\n * \u573A\u666F\u540D\u4E0D\u8BB8\u65AD\u5B57\uFF08CJK \u9ED8\u8BA4\u4F1A\u5728\u4EFB\u610F\u4E24\u4E2A\u5B57\u4E4B\u95F4\u65AD\u884C\uFF0C`\u65E0\u573A\u666F` \u4F1A\u53D8\u6210\u300C\u65E0\u573A / \u666F\u300D\uFF09\uFF1A\n * \u653E\u4E0D\u4E0B\u65F6\u622A\u65AD\uFF0C\u5B8C\u6574\u540D\u5B57\u5728 `title` \u91CC\u3002\n */\n.tita-trialMatrixCell { min-width: 56px; height: 34px; padding: 2px 3px; vertical-align: middle; }\n.tita-trialMatrixCellOn { background: var(--tita-primary-soft); }\n.tita-trialMatrixCellStatic,\n.tita-trialMatrixCellPick {\n display: flex;\n width: 100%;\n min-height: 28px;\n align-items: center;\n justify-content: center;\n border: 1px solid transparent;\n border-radius: 5px;\n background: transparent;\n color: var(--tita-ink);\n padding: 0 3px;\n font: inherit;\n text-align: center;\n}\n.tita-trialMatrixCellPick { cursor: pointer; }\n.tita-trialMatrixCellPick:hover { background: var(--tita-primary-soft); }\n.tita-trialMatrixCellPick:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 0; }\n.tita-trialMatrixCellPickOn { border-color: var(--tita-primary); background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialMatrixCellValue { font-size: 11px; font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-trialMatrixCellStack { display: grid; min-width: 0; justify-items: center; gap: 1px; }\n.tita-trialMatrixCellStack .tita-trialMatrixCellPick,\n.tita-trialMatrixCellStack .tita-trialMatrixCellStatic { min-height: 20px; }\n.tita-trialMatrixBreakdown { display: flex; min-width: 0; flex-wrap: wrap; justify-content: center; gap: 2px; }\n.tita-trialMatrixBreakdownItem { display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 4px; color: var(--tita-ink-muted); padding: 0 2px; font-size: 8px; font-weight: 650; line-height: 1.35; font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-trialMatrixBreakdownPick { background: transparent; cursor: pointer; }\n.tita-trialMatrixBreakdownPick:hover { border-color: var(--tita-line-strong); background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-trialMatrixBreakdownPick:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-trialMatrixBreakdownOn { border-color: var(--tita-primary); background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialMatrixBreakdownOn:hover { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialMatrixGroups { display: grid; gap: 0; }\n.tita-trialMatrixGroupLine { display: block; min-width: 0; }\n.tita-trialMatrixGroupLine + .tita-trialMatrixGroupLine { border-top: 1px dashed var(--tita-line); }\n.tita-trialMatrixGroup { display: flex; width: 100%; min-width: 0; align-items: baseline; gap: 1px; margin: 0; border: 0; border-radius: 4px; background: none; color: var(--tita-ink); padding: 2px 3px; font: inherit; font-size: 10px; line-height: 1.45; text-align: left; }\nbutton.tita-trialMatrixGroup { cursor: pointer; }\nbutton.tita-trialMatrixGroup:hover { background: var(--tita-primary-soft); }\nbutton.tita-trialMatrixGroup:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 0; }\n/* \u88AB\u70B9\u5F00\u7684\u90A3\u4E00\u7EC4\u3002\u5B83\u4E0E\u4E0B\u9762\u90A3\u5757\u660E\u7EC6\u662F\u540C\u4E00\u4EF6\u4E8B\u7684\u4E24\u79CD\u5448\u73B0\uFF0C\u6240\u4EE5\u989C\u8272\u5FC5\u987B\u4E00\u81F4\u3002 */\n.tita-trialMatrixGroupOn { background: var(--tita-primary-soft); box-shadow: inset 2px 0 0 var(--tita-primary); color: var(--tita-primary); }\n.tita-trialMatrixGroupScene { min-width: 0; overflow: hidden; color: var(--tita-ink-muted); text-overflow: ellipsis; white-space: nowrap; }\n.tita-trialMatrixGroupScene::after { content: \':\'; }\n.tita-trialMatrixGroupNum { flex: 0 0 auto; color: var(--tita-ink); font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-trialMatrixGroupOn .tita-trialMatrixGroupScene { color: inherit; }\n.tita-trialMatrixGroupOn .tita-trialMatrixGroupNum { color: var(--tita-primary); }\n/* \u8868\u4E0B\u65B9\u7684\u8BFB\u6CD5\u4E00\u884C\u3002\u5B83\u4E0E\u8868\u7684\u95F4\u8DDD\u7531 `.tita-trialMatrix` \u7684 `gap` \u7ED9\uFF0C\u6240\u4EE5\u81EA\u5DF1\u53EA\u8865\u4E00\u70B9\u3002 */\n.tita-trialMatrixHint { margin: 4px 0 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; }\n.tita-trialMatrixHint b { color: var(--tita-ink-muted); }\n/*\n * \u70B9\u5F00\u7684\u90A3\u4E00\u7EC4\u3002\u5B83\u6392\u5728\u77E9\u9635**\u6B63\u4E0B\u65B9**\u800C\u4E0D\u662F\u585E\u8FDB\u683C\u5B50\u91CC\uFF1A\u683C\u5B50\u53EA\u6709\u51E0\u5341\u50CF\u7D20\u5BBD\uFF0C\n * \u800C\u300C\u8FD9\u4E00\u7EC4\u5230\u5E95\u662F\u54EA\u51E0\u6761\u77E5\u8BC6\u300D\u8981\u8BFB\u5230\u6BCF\u6761\u77E5\u8BC6\u7684\u6B63\u6587\u548C\u51FA\u5904\u3002\n */\n.tita-trialMatrixPick { display: grid; gap: 5px; border: 1px solid var(--tita-primary); border-radius: 9px; background: var(--tita-primary-soft); padding: 8px 10px; }\n.tita-trialMatrixPickHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-trialMatrixPickWhere { color: var(--tita-ink); font-size: 11px; font-weight: 700; }\n.tita-trialMatrixPickMeta { margin-left: auto; color: var(--tita-ink); font-size: 10px; }\n.tita-trialMatrixPickGroup { display: grid; gap: 4px; }\n.tita-trialMatrixPickGroup + .tita-trialMatrixPickGroup { border-top: 1px dashed var(--tita-line); padding-top: 6px; }\n.tita-trialMatrixPickScene { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; }\n.tita-trialMatrixPickList { display: grid; margin: 0; padding: 0; list-style: none; gap: 5px; }\n.tita-trialMatrixPickList > li { display: grid; gap: 1px; border-top: 1px dashed var(--tita-line); padding-top: 5px; }\n.tita-trialMatrixPickList > li:first-child { border-top: 0; padding-top: 0; }\n.tita-trialMatrixPickText { color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-trialMatrixPickId { color: var(--tita-ink-muted); font-size: 9.5px; }\n/*\n * \u56DB\u6761\u672C\u5730\u6838\u9A8C\u3002\u5B83\u6392\u5728\u77E9\u9635\u6B63\u4E0B\u65B9\uFF1A\u5728\u7EC6\u770B\u6BCF\u4E00\u6761\u77E5\u8BC6\u4E4B\u524D\uFF0C\u5148\u56DE\u7B54\u300C\u8FD9\u6279\u77E5\u8BC6\u6574\u4F53\u53EF\u4E0D\u53EF\u4FE1\u300D\u3002\n * \u62A5\u51FA\u6765\u3001\u4E0D\u963B\u585E \u2014\u2014 \u547D\u4E2D\u4E0D\u7B49\u4E8E\u5931\u8D25\uFF0C\u662F"\u8FD9\u91CC\u8981\u4EBA\u770B\u4E00\u773C"\u3002\n */\n.tita-trialChecks { display: grid; gap: 7px; margin-top: 12px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 10px 11px; }\n.tita-trialChecks h4 { display: flex; align-items: center; gap: 5px; margin: 0; color: var(--tita-ink); font-size: 11.5px; }\n.tita-trialChecks ul { display: grid; margin: 0; padding: 0; list-style: none; gap: 6px; }\n.tita-trialCheck { display: grid; grid-template-columns: auto auto 1fr; align-items: baseline; gap: 2px 8px; border-top: 1px dashed var(--tita-line); padding-top: 6px; }\n.tita-trialCheck:first-child { border-top: 0; padding-top: 0; }\n.tita-trialCheckName { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; }\n.tita-trialCheckHits { border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink); padding: 1px 7px; font-size: 9.5px; font-weight: 700; }\n.tita-trialCheckHit .tita-trialCheckHits { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-trialCheckWhat { color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialCheckNote { grid-column: 3; color: var(--tita-ink-muted); font-size: 10px; line-height: 1.6; }\n/* \u533A\u5757\u5BFC\u822A\uFF082026-10-18\uFF09\u3002\u62A5\u544A\u53EF\u4EE5\u957F\u5230\u51E0\u767E KB\uFF0C\u6253\u5F00\u5B83\u7684\u4EBA\u7B2C\u4E00\u4EF6\u4E8B\u662F\u300C\u8DF3\u5230\u8981\u770B\u7684\u90A3\u4E00\u6BB5\u300D\u3002\n **\u4E0D\u5438\u9876**\uFF1A\u4E0A\u9762\u90A3\u6761\u5E38\u9A7B\u6807\u9898\u6761\u662F `sticky; z-index: 2`\uFF0C\u800C\u5B83\u7684\u9AD8\u5EA6\u968F\u6807\u9898\u6362\u884C\u53D8\u5316\n \uFF08\u7A84\u5C4F\u4E0A meta \u4F1A\u6298\u6210\u4E24\u884C\uFF09\u3002\u5BFC\u822A\u6761\u5438\u5728 `top: 0` \u4F1A\u6B63\u597D\u94BB\u5230\u5B83\u4E0B\u9762 \u2014\u2014 \u770B\u8D77\u6765\u662F\u300C\u4E00\u6EDA\u5C31\u6CA1\u4E86\u300D\u3002\n \u8BA9\u5F00\u5B83\u9700\u8981\u4E00\u4E2A\u5199\u4E0D\u6B7B\u7684\u9AD8\u5EA6\uFF0C\u800C\u5199\u6B7B\u7684\u9AD8\u5EA6\u5728\u7A84\u5C4F\u4E0A\u4F1A\u9519\u4F4D\u3002\u6240\u4EE5\u5B83\u5C31\u5728\u6B63\u6587\u9876\u90E8\uFF0C\n \u52A0\u4E0A\u6BCF\u4E2A\u533A\u5757\u7684 `scroll-margin`\uFF0C\u70B9\u4E00\u4E0B\u7167\u6837\u843D\u5230\u8BE5\u770B\u7684\u4F4D\u7F6E\u3002 */\n.tita-trialNav {\n display: flex;\n flex-wrap: wrap;\n gap: 2px 14px;\n border-bottom: 1px solid var(--tita-line);\n padding: 0 0 7px;\n}\n.tita-trialNav a {\n color: var(--tita-ink-muted);\n font-size: 11.5px;\n font-weight: 650;\n text-decoration: none;\n}\n.tita-trialNav a:hover { color: var(--tita-primary); text-decoration: underline; text-underline-offset: 3px; }\n.tita-trialNav a:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; border-radius: 4px; }\n/* \u4E00\u6BB5\u8BF4\u660E\uFF08\u4E0D\u662F\u8B66\u544A\uFF09\u3002\u8B66\u544A\u7528 amber\uFF0C\u8FD9\u6761\u662F\u300C\u62A5\u544A\u7684\u8303\u56F4\u8FB9\u754C\u300D\uFF0C\u7528\u4E2D\u6027\u5E95\u8272\u3002 */\n.tita-trialNote {\n margin: 0 0 10px;\n border-radius: 8px;\n background: var(--tita-surface-muted);\n padding: 8px 10px;\n color: var(--tita-ink-muted);\n font-size: 11px;\n line-height: 1.6;\n}\n.tita-trialNote b { color: var(--tita-ink); }\n/* \u951A\u70B9\u843D\u70B9\u7559\u4E00\u53E3\u6C14\uFF1A`scroll-margin` \u8BA9\u6807\u9898\u4E0D\u8D34\u4F4F\u5438\u9876\u7684\u5BFC\u822A\u6761\u3002 */\n.tita-trialSection, .tita-trialOverview { scroll-margin-block-start: 44px; }\n\n.tita-trialReport { display: grid; gap: 22px; }\n.tita-trialOverview { display: grid; gap: 9px; border-bottom: 1px solid var(--tita-line-strong); padding-bottom: 13px; }\n.tita-trialSection { display: grid; min-width: 0; gap: 10px; border-top: 1px solid var(--tita-line); padding-top: 14px; }\n.tita-trialReport > .tita-trialOverview + .tita-trialError { margin-top: -13px; }\n.tita-trialSectionHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 12px; }\n.tita-trialSectionHead h2 { margin: 0; color: var(--tita-ink); font-size: 15px; font-weight: 720; letter-spacing: -.02em; }\n.tita-trialSectionHead > span { color: var(--tita-ink-muted); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n.tita-trialOverviewStats { display: grid; grid-template-columns: 1fr 1fr 1.45fr 1fr 1.5fr; margin: 0; border-block: 1px solid var(--tita-line); }\n.tita-trialOverviewStats > div { display: grid; min-width: 0; align-content: start; gap: 2px; border-right: 1px solid var(--tita-line); padding: 8px 12px; }\n.tita-trialOverviewStats > div:first-child { padding-left: 0; }\n.tita-trialOverviewStats > div:last-child { border-right: 0; }\n.tita-trialOverviewStats dt { color: var(--tita-ink-muted); font-size: 10px; font-weight: 600; }\n.tita-trialOverviewStats dd { margin: 0; color: var(--tita-ink); font-size: 13px; font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-trialOverviewStats dd small { display: block; color: var(--tita-ink-muted); font-size: 9.5px; font-weight: 500; }\n.tita-trialOverviewTitle { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin: 0; }\n.tita-trialOverviewTitle strong { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-trialOverviewTitle span { color: var(--tita-ink-muted); font-size: 10px; font-variant-numeric: tabular-nums; }\n.tita-trialOverviewEmpty { margin: 2px 0 0; color: var(--tita-ink-muted); font-size: 11.5px; line-height: 1.6; }\n.tita-trialOverviewSubject { margin: 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; }\n.tita-trialOutputTabs { display: grid; min-width: 0; gap: 10px; }\n.tita-trialOutputTabs > [data-slot=\'tabs-list\'] { max-width: 100%; overflow-x: auto; }\n.tita-trialOutputTabs > [data-slot=\'tabs-content\'] { min-width: 0; }\n.tita-trialOutputList { display: grid; margin: 8px 0 0; padding: 0; list-style: none; }\n.tita-trialOutputItem { display: grid; min-width: 0; gap: 5px; border-bottom: 1px solid var(--tita-line); padding: 11px 0; }\n.tita-trialOutputItem:first-child { padding-top: 2px; }\n.tita-trialOutputItem:last-child { border-bottom: 0; }\n.tita-trialOutputMeta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; color: var(--tita-ink-muted); font-size: 10px; line-height: 1.5; }\n.tita-trialOutputMeta strong { border-radius: 4px; background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); padding: 1px 5px; font-size: 9px; }\n.tita-trialOutputText { margin: 0; color: var(--tita-ink); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-trialDetailToggle { display: inline-flex; width: fit-content; max-width: 100%; align-items: center; gap: 4px; margin: 0; border: 0; border-radius: 4px; background: transparent; color: var(--tita-primary); padding: 2px 3px; font: inherit; font-size: 10px; font-weight: 650; text-align: left; cursor: pointer; }\n.tita-trialDetailToggle:hover { background: var(--tita-primary-soft); }\n.tita-trialDetailToggle:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-trialDetailBody { display: grid; min-width: 0; gap: 7px; padding: 4px 0 2px 14px; }\n.tita-trialEventTimeline { display: grid; margin: 0; padding: 0; list-style: none; gap: 8px; }\n.tita-trialEventTimeline > li { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 4px 8px; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialEventTimeline > li > span { color: var(--tita-ink-muted); font-size: 9.5px; font-weight: 700; }\n.tita-trialEventTimeline > li > ul { grid-column: 2; }\n.tita-trialCardEvents { display: grid; margin: 0; padding-left: 17px; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; gap: 3px; }\n.tita-trialCheckList { display: grid; margin: 0; padding: 0; list-style: none; }\n.tita-trialCheckList > li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 4px 12px; border-bottom: 1px solid var(--tita-line); padding: 7px 0; }\n.tita-trialCheckList > li:first-child { border-top: 1px solid var(--tita-line); }\n.tita-trialCheckList > li > div { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 9px; }\n.tita-trialCheckList strong { color: var(--tita-ink); font-size: 10.5px; }\n.tita-trialCheckList span, .tita-trialCheckList small { color: var(--tita-ink-muted); font-size: 10px; }\n.tita-trialCheckList > li > b { color: var(--tita-success); font-size: 10px; white-space: nowrap; }\n.tita-trialCheckList > li > b[data-hit=\'true\'] { color: var(--tita-tone-amber); }\n.tita-trialCheckList small { grid-column: 1 / -1; }\n.tita-trialReviewIssues { display: grid; gap: 6px; border: 1px solid var(--tita-tone-amber-line); border-radius: 8px; background: var(--tita-tone-amber-tint); padding: 9px 11px; }\n.tita-trialReviewIssues h3 { display: flex; align-items: center; gap: 5px; margin: 0; color: var(--tita-tone-amber); font-size: 11px; }\n.tita-trialReviewIssues ul { display: grid; margin: 0; padding: 0; list-style: none; gap: 5px; }\n.tita-trialReviewIssues li { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: baseline; gap: 4px 8px; color: var(--tita-ink); font-size: 10.5px; line-height: 1.55; }\n.tita-trialReviewIssues li > span { color: var(--tita-tone-amber); font-size: 9.5px; font-weight: 700; }\n.tita-trialReviewIssues p { margin: 0; overflow-wrap: anywhere; }\n@media (max-width: 700px) {\n .tita-trialOverviewStats { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n .tita-trialOverviewStats > div { border-bottom: 1px solid var(--tita-line); padding: 8px; }\n .tita-trialOverviewStats > div:nth-child(2n) { border-right: 0; }\n .tita-trialOverviewStats > div:nth-last-child(-n + 2) { border-bottom: 0; }\n .tita-trialOverviewStats > div:first-child { padding-left: 8px; }\n .tita-trialCheckList > li { grid-template-columns: minmax(0, 1fr) auto; }\n}\n.tita-trialPrompt { display: grid; gap: 6px; margin-top: 8px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 9px 11px; }\n.tita-trialPromptHead { display: flex; align-items: center; gap: 8px; }\n.tita-trialPromptHead > span { color: var(--tita-ink); font-size: 10px; font-weight: 700; }\n.tita-trialCopy { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 4px; margin-left: auto; border: 1px solid var(--tita-line); border-radius: 999px; background: var(--tita-surface); color: var(--tita-ink); padding: 3px 8px; font-size: 10px; font-weight: 600; cursor: pointer; }\n.tita-trialCopy:hover { background: var(--tita-surface-muted); }\n.tita-trialCopy:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-trialPromptText { margin: 0; max-height: 220px; overflow: auto; overscroll-behavior: contain; border: 1px solid var(--tita-line); border-radius: 8px; background: var(--tita-surface-muted); padding: 7px 9px; color: var(--tita-ink); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }\n.tita-trialPromptText:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n.tita-trialExceptions { display: grid; gap: 7px; margin-top: 12px; border: 1px solid var(--tita-tone-amber-line); border-radius: 10px; background: var(--tita-tone-amber-tint); padding: 10px 11px; }\n.tita-trialExceptions h4 { display: flex; align-items: center; gap: 5px; margin: 0; color: var(--tita-tone-amber); font-size: 11px; }\n.tita-trialExceptions ul { display: grid; margin: 0; padding: 0; list-style: none; gap: 5px; }\n.tita-trialExceptions li { display: flex; align-items: flex-start; gap: 6px; color: var(--tita-ink); font-size: 10.5px; line-height: 1.6; }\n.tita-trialExcStep { flex: 0 0 auto; border-radius: 4px; background: var(--tita-surface); color: var(--tita-ink); padding: 1px 5px; font-size: 9.5px; font-weight: 700; }\n.tita-trialMore { margin: 0; color: var(--tita-ink); font-size: 10px; }\n.tita-trialToggle { display: flex; width: 100%; align-items: center; justify-content: center; gap: 5px; margin-top: 10px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface); color: var(--tita-ink); padding: 7px 10px; font-size: 10.5px; font-weight: 600; cursor: pointer; }\n.tita-trialRequestToggle { justify-content: space-between; gap: 10px; text-align: left; }\n.tita-trialRequestTitle { display: inline-flex; min-width: 0; align-items: center; gap: 5px; }\n.tita-trialRequestTitle strong { font-size: 10.5px; }\n.tita-trialRequestTitle > span { color: var(--tita-ink-muted); font-size: 9.5px; font-weight: 500; }\n.tita-trialRequestUsage { color: var(--tita-ink-muted); font-size: 9.5px; font-weight: 600; text-align: right; }\n.tita-trialToggle:hover { background: var(--tita-surface-muted); }\n.tita-trialToggle:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 2px; }\n@media (max-width: 620px) { .tita-trialRequestToggle { align-items: flex-start; flex-direction: column; } .tita-trialRequestUsage { padding-left: 17px; text-align: left; } }\n.tita-trialCandidates { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 6px; }\n.tita-trialCandidates > li { display: grid; gap: 3px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface); padding: 8px 10px; }\n.tita-trialCandHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-trialCandName { color: var(--tita-ink); font-size: 11px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-trialCandBad { text-decoration: underline wavy var(--tita-tone-amber); text-underline-offset: 3px; }\n.tita-trialCandMeta { margin-left: auto; color: var(--tita-ink); font-size: 9.5px; }\n.tita-trialCandFix { color: var(--tita-tone-amber); font-size: 10.5px; font-weight: 600; }\n.tita-trialCandWhy { color: var(--tita-ink); font-size: 10px; line-height: 1.6; }\n/*\n * \u4E00\u6761\u77E5\u8BC6\u7684\u51FA\u5904\u3002**\u51FA\u5904\u662F\u77E5\u8BC6\u7684\u4E00\u90E8\u5206** \u2014\u2014 \u6CA1\u6709\u5B83\uFF0C\u8FD9\u6761\u5224\u65AD\u4E0D\u53EF\u4FE1\u3002\n * \u6240\u4EE5\u5B83\u8D34\u5728\u77E5\u8BC6\u4E0B\u9762\uFF0C\u4E0D\u6536\u8FDB\u53E6\u4E00\u4E2A\u9762\u677F\uFF1A\u5206\u5F00\u4E4B\u540E"\u8FD9\u6761\u77E5\u8BC6\u6709\u6CA1\u6709\u4F9D\u636E"\u5C31\u5F97\u8DE8\u4E24\u5904\u770B\u3002\n * \u5DE6\u8FB9\u90A3\u9053\u7AD6\u7EBF\u662F\u5F15\u6587\u7684\u5F15\u7528\u8BB0\u53F7\uFF0C\u4E0D\u662F\u88C5\u9970\u3002\n */\n.tita-trialSources { display: grid; margin: 2px 0 0; padding: 0; list-style: none; gap: 4px; }\n.tita-trialSource { display: grid; gap: 1px; border-left: 2px solid var(--tita-line); padding-left: 7px; }\n.tita-trialSourceBad { border-left-color: var(--tita-tone-amber); }\n.tita-trialSourceQuote { color: var(--tita-ink); font-size: 10px; line-height: 1.55; overflow-wrap: anywhere; }\n.tita-trialSourceWhere { color: var(--tita-ink-muted); font-size: 9.5px; line-height: 1.5; overflow-wrap: anywhere; }\n\n/*\n * \u62BD\u53D6\u8F68\u8FF9\u6E05\u5355\uFF080063\uFF09\uFF1ASourceRaw \u8BE6\u60C5\u91CC\u7684\u300C\u8FD9\u4EFD\u6587\u6863\u5F53\u65F6\u62BD\u51FA\u4E86\u4EC0\u4E48\u300D\u3002\n *\n * \u4E00\u884C\u4E00\u6B21\uFF0C\u65F6\u95F4\u662F\u4E3B\u952E \u2014\u2014 \u540C\u4E00\u6761\u8F68\u8FF9\u518D\u8DD1\u4E00\u6B21\u7ED3\u679C\u4E0D\u540C\uFF0C\u6240\u4EE5\u300C\u54EA\u4E00\u6B21\u300D\u53EA\u80FD\u9760\u65F6\u95F4\u8BA4\u3002\n * 2026-10-06 \u8D77**\u70B9\u4E00\u884C = \u5728\u6D4F\u89C8\u5668\u7A97\u53E3\u91CC\u6253\u5F00\u90A3\u6B21\u7684\u5B8C\u6574\u62A5\u544A**\uFF08`/knowledge/pages/run`\uFF09\u3002\n * \u5C31\u5730\u5C55\u5F00\u64A4\u6389\u4E86\uFF1A\u62A5\u544A\u662F\u51E0\u5341 KB \u7684\u8868\u683C\uFF0C400px \u7684\u62BD\u5C49\u91CC\u8BFB\u4E0D\u4E86\u5B83\u3002\u884C\u5C3E\u90A3\u679A\u5916\u94FE\u56FE\u6807\n * \u662F\u8FD9\u4E2A\u53BB\u5904\u7684\u8BB0\u53F7 \u2014\u2014 \u5B83\u540C\u65F6\u662F\u300C\u70B9\u8FD9\u4E00\u884C\u4F1A\u53D1\u751F\u4EC0\u4E48\u300D\u7684\u63D0\u793A\u3002\n */\n.tita-trialRunList { display: grid; margin: 6px 0 0; padding: 0; list-style: none; gap: 4px; }\n.tita-trialRunRow { display: flex; width: 100%; flex-wrap: wrap; align-items: baseline; gap: 6px; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface); padding: 7px 9px; text-align: left; cursor: pointer; }\n.tita-trialRunRow:hover { background: var(--tita-surface-muted); }\n.tita-trialRunRow:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-trialRunTime { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; }\n.tita-trialRunSummary { flex: 1 1 100%; color: var(--tita-ink); font-size: 10px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-trialRunFlags { display: flex; flex: 1 1 auto; flex-wrap: wrap; align-items: center; gap: 4px; }\n.tita-trialRunFlag { border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink); padding: 1px 6px; font-size: 9.5px; font-weight: 700; }\n.tita-trialRunFlag[data-ok="false"] { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n/* \u9636\u6BB5\u5FBD\u6807\uFF082026-10-18\uFF09\u3002\u540C\u4E00\u6761\u5217\u8868\u91CC\u73B0\u5728\u6DF7\u7740\u62BD\u53D6\u4E0E\u5F52\u4E00\uFF0C\u4E24\u4E2A\u90FD\u662F\u300C\u8FD9\u4E00\u4EFD\u6587\u6863\u7684\u4E00\u6B21\u8FD0\u884C\u300D\uFF0C\n \u6240\u4EE5\u5B83\u4EEC\u5FC5\u987B\u662F\u540C\u4E00\u679A\u5C0F\u5FBD\u6807\u3001\u53EA\u6362\u989C\u8272 \u2014\u2014 \u6362\u6210\u4E24\u79CD\u5F62\u72B6\u4F1A\u8BFB\u6210\u4E24\u7C7B\u4E1C\u897F\u3002 */\n.tita-trialRunFlag[data-stage="normalize"] { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-trialRunFlag[data-stage="materialize"] { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n/* \u884C\u5C3E\u7684\u5916\u94FE\u56FE\u6807\uFF1A\u63A8\u5230\u8FD9\u4E00\u884C\u6700\u53F3\uFF0C\u5B83\u662F\u300C\u70B9\u8FD9\u91CC\u53BB\u6D4F\u89C8\u5668\u300D\u7684\u8BB0\u53F7\u3002 */\n.tita-trialRunOpen { display: inline-flex; margin-left: auto; color: var(--tita-ink-faint); }\n.tita-trialRunRow:hover .tita-trialRunOpen { color: var(--tita-ink); }\n.tita-trialRunProgress { display: grid; gap: 7px; margin-top: 6px; border: 1px solid var(--tita-primary); border-radius: 9px; background: var(--tita-primary-soft); padding: 8px 9px; }\n.tita-trialRunProgressHead { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--tita-primary); font-size: 10.5px; font-weight: 700; }\n.tita-trialRunProgressHead span { display: inline-flex; align-items: center; gap: 5px; }\n.tita-trialRunProgressHead b { color: var(--tita-ink); font-variant-numeric: tabular-nums; }\n.tita-trialRunProgress .tita-compileBar { margin-top: 0; }\n.tita-trialRunProgress .tita-importTrack { gap: 5px 8px; }\n.tita-trialRunProgressNote { margin: 0; color: var(--tita-ink-muted); font-size: 9.5px; line-height: 1.5; }\n\n/*\n * \u8F74\u5B9E\u4F53\uFF080063 \xA73\uFF09\uFF1AObject / Action / Scene \u7684 canonical \u8EAB\u4EFD\u3002\n *\n * \u4E00\u4E2A\u8F74\u4E00\u7EC4\uFF0C\u7EC4\u5185\u4E00\u884C\u4E00\u4E2A\u5B9E\u4F53\u3002\u884C\u662F**\u5217\u8868\u884C + \u4E00\u6761\u5206\u9694\u7EBF**\uFF0C\u4E0D\u662F\u4E00\u5F20\u5C0F\u5361\u7247 \u2014\u2014\n * \u4E0E\u5361\u7247\u9AA8\u67B6\u540C\u4E00\u5957\u7248\u5F0F\uFF1A\u8FD9\u4E2A\u62BD\u5C49\u91CC\u7684\u5B9A\u4E49\u90FD\u662F\u672C\u5E93\u7684\u8BCD\u6C47\u8868\uFF0C\n * \u957F\u5F97\u4E0D\u4E00\u6837\u4F1A\u8BA9\u4EBA\u4EE5\u4E3A\u5B83\u4EEC\u7684\u89C4\u5219\u4E5F\u4E0D\u4E00\u6837\u3002\n */\n.tita-axisFilters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(125px, .55fr) auto; align-items: end; gap: 8px; padding: 10px 0 4px; }\n.tita-axisSearchControl { position: relative; display: flex; min-width: 0; align-items: center; }\n.tita-axisSearchControl > svg { position: absolute; left: 10px; z-index: 1; color: var(--tita-ink-muted); pointer-events: none; }\n.tita-axisSearchControl input { min-width: 0; padding-inline-start: 30px; }\n.tita-axisFilterCount { padding-bottom: 8px; color: var(--tita-ink-muted); font-size: 10px; font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-axisList { display: grid; margin: 0; padding: 0; list-style: none; }\n.tita-axisRow { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; border-bottom: 1px solid var(--tita-line); padding: 6px 8px; }\n.tita-axisName { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-axisLabel { color: var(--tita-ink); font-size: 12px; font-weight: 650; }\n/* \u4F5C\u7528\u57DF\u6807\u8BB0\uFF1A\u53EA\u5199\u300C\u6709\u4F5C\u7528\u57DF\u300D\uFF0C\u5177\u4F53\u8DEF\u5F84\u5728 title \u91CC \u2014\u2014 \u5168\u9650\u5B9A\u540D\u5DF2\u7ECF\u628A\u8DEF\u5F84\u8BF4\u4E86\u4E00\u904D\uFF0C\n \u884C\u4E0A\u518D\u94FA\u4E00\u904D\u53EA\u4F1A\u8BA9\u540D\u5B57\u8BFB\u4E0D\u6210\u4E00\u884C\u3002 */\n.tita-axisScope { border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 1px 6px; font-size: 9.5px; font-weight: 650; }\n.tita-axisAliases { flex: 1 1 100%; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-axisActions { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; margin-left: auto; }\n.tita-axisEditorDialog { display: grid; width: min(660px, calc(100vw - 32px)); max-height: min(88vh, 780px); grid-template-rows: auto minmax(0, 1fr) auto; gap: 12px; overflow: hidden; }\n.tita-axisEditorBody { display: grid; min-height: 0; align-content: start; gap: 12px; overflow-y: auto; overscroll-behavior: contain; padding-inline-end: 4px; }\n.tita-axisEditorCore { display: grid; gap: 11px; }\n.tita-axisEditorCore textarea { min-height: 64px; resize: vertical; }\n.tita-axisEditorToggle { width: 100%; justify-content: flex-start; gap: 6px; border-top: 1px solid var(--tita-line); border-radius: 0; padding: 10px 0 0; color: var(--tita-ink-muted); }\n.tita-axisEditorTools { display: grid; gap: 14px; border-top: 1px solid var(--tita-line); padding-top: 12px; }\n.tita-axisEditorTools[hidden] { display: none; }\n.tita-axisEditorGuidanceList { max-height: 148px; overflow-y: auto; }\n.tita-axisEditorGuidanceComposer { display: grid; grid-template-columns: minmax(120px, .65fr) minmax(0, 1.5fr) auto; align-items: center; gap: 6px; }\n.tita-axisEditorRelationList { max-height: 148px; overflow-y: auto; }\n.tita-axisEditorRelationComposer { display: grid; grid-template-columns: minmax(120px, .8fr) minmax(0, 1.2fr) auto; align-items: center; gap: 6px; }\n.tita-axisEditorFooter { margin-top: 0; }\n@media (max-width: 540px) {\n .tita-axisEditorGuidanceComposer { grid-template-columns: minmax(0, 1fr) auto; }\n .tita-axisEditorGuidanceComposer > :nth-child(2) { grid-column: 1 / -1; grid-row: 2; }\n .tita-axisEditorRelationComposer { grid-template-columns: minmax(0, 1fr) auto; }\n .tita-axisEditorRelationComposer > :nth-child(2) { grid-column: 1 / -1; grid-row: 2; }\n}\n@media (max-width: 460px) {\n .tita-axisFilters { grid-template-columns: minmax(0, 1fr) auto; }\n .tita-axisFilters > .tita-axisSearchControl { grid-column: 1 / -1; }\n}\n\n/*\n * \u300C\u77E5\u8BC6\u300D\u90A3\u4E00\u680F\u7684\u4E24\u5757\uFF080063 \xA72\uFF09\u3002\n *\n * 0063 \u628A\u8FD9\u4E00\u5C42\u62C6\u6210\u4E24\u4EF6\u4E8B\uFF1A**\u77E9\u9635**\u56DE\u7B54\u300C\u5B83\u77E5\u9053\u7684\u662F\u54EA\u51E0\u5757\u300D\uFF0C**\u5361\u7247**\u56DE\u7B54\u300C\u5177\u4F53\u662F\u4EC0\u4E48\u300D\u3002\n * \u6240\u4EE5\u5B83\u6392\u6210\u4E24\u5757\uFF0C\u800C\u4E0D\u662F\u4E00\u6BB5\u957F\u6587\u91CC\u63D2\u4E00\u5F20\u8868\u3002\n *\n * \u4E24\u5757\u4E4B\u95F4\u53EA\u7528**\u4E00\u6761\u7EBF + \u4E00\u6BB5\u7A7A\u767D**\u5206\u5F00\uFF0C\u4E0D\u5404\u5957\u4E00\u5F20\u5361\uFF1A\u5916\u9762\u5DF2\u7ECF\u662F\u4E00\u5F20\u5361\uFF08`.tita-kbCard`\uFF09\uFF0C\n * \u5757\u91CC\u518D\u5957\u5361\u5C31\u662F\u5361\u7247\u5957\u5361\u7247\uFF0C\u800C\u5B83\u4EEC\u56DE\u7B54\u7684\u5176\u5B9E\u662F\u540C\u4E00\u4E2A\u95EE\u9898\u7684\u4E24\u534A\u3002\n * \u77E9\u9635\u4E0D\u5728\u65F6\uFF08\u5E93\u91CC\u4E00\u4E2A\u5BF9\u8C61\u90FD\u6CA1\u6709\uFF09\u8FD9\u6761\u7EBF\u81EA\u7136\u4E0D\u51FA\u73B0 \u2014\u2014 \u9009\u62E9\u5668\u770B\u7684\u662F\u76F8\u90BB\uFF0C\u4E0D\u662F\u72B6\u6001\u3002\n */\n.tita-knowledgeBlock { display: grid; min-width: 0; }\n.tita-knowledgeBlock + .tita-knowledgeBlock { margin-top: 18px; border-top: 1px solid var(--tita-line); padding-top: 14px; }\n/*\n * \u5206\u8282\u5934 `.tita-blockHead` / `.tita-blockSub` \u5B9A\u4E49\u5728\u77E9\u9635\u90A3\u4E00\u6BB5\u91CC \u2014\u2014 \u5B83\u539F\u6765\u53EB\n * `.tita-trialMatrixHead`\uFF0C\u5361\u7247\u90A3\u4E00\u5757\u4E5F\u8981\u540C\u4E00\u4E2A\u5934\uFF0C\u4E8E\u662F\u540D\u5B57\u91CC\u7684\u300C\u77E9\u9635\u300D\u88AB\u53BB\u6389\u4E86\u3002\n * \u4E24\u5904\u5171\u7528\u4E00\u4E2A\u7C7B\u4E0D\u662F\u4E3A\u4E86\u7701\u51E0\u884C\uFF1A**\u4E24\u4E2A\u5757\u770B\u8D77\u6765\u5FC5\u987B\u662F\u540C\u4E00\u5957\u7248\u5F0F**\u3002\n */\n/*\n * \u90A3\u4E00\u53E5\u8FB9\u754C\u8BF4\u660E\u3002\u5B83\u5FC5\u987B\u7559\u7740\uFF08\u4E0D\u5199\u7684\u8BDD\u4EBA\u4F1A\u4EE5\u4E3A\u8FD9\u91CC\u770B\u5230\u7684\u5C31\u662F\u4F1A\u88AB\u53EC\u56DE\u7684\u4E1C\u897F\uFF09\uFF0C\n * \u4F46\u5B83\u53EA\u662F**\u4E00\u884C\u9650\u5B9A**\uFF0C\u4E0D\u662F\u8FD9\u4E00\u5C4F\u7684\u5185\u5BB9 \u2014\u2014 \u6240\u4EE5\u7ED9\u6700\u5C0F\u7684\u5B57\u53F7\uFF0C\u653E\u5728\u6700\u540E\u3002\n */\n.tita-matrixSceneDetail {\n display: grid;\n gap: 7px;\n margin: 10px 0 14px;\n border-top: 1px solid var(--tita-line-strong);\n border-bottom: 1px solid var(--tita-line);\n padding: 10px 2px 4px;\n}\n.tita-matrixSceneDetailHead { display: flex; align-items: center; justify-content: space-between; gap: 10px; }\n.tita-matrixSceneDetailHead h4 { min-width: 0; margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-matrixSceneDetailTotal { flex: 0 0 auto; color: var(--tita-primary); font-size: 10px; font-variant-numeric: tabular-nums; }\n.tita-matrixSceneDetailLabel { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; border-bottom: 1px solid var(--tita-line); padding: 0 7px 4px; color: var(--tita-ink-faint); font-size: 9.5px; }\n.tita-matrixSceneDetailList { display: grid; }\n.tita-matrixSceneDetailRow {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto;\n width: 100%;\n align-items: center;\n gap: 8px;\n border: 0;\n border-top: 1px solid color-mix(in srgb, var(--tita-primary) 12%, transparent);\n background: transparent;\n padding: 7px;\n color: var(--tita-ink);\n font: inherit;\n font-size: 10.5px;\n text-align: left;\n}\n.tita-matrixSceneDetailRow:first-child { border-top: 0; }\n.tita-matrixSceneDetailCount { color: inherit; font-variant-numeric: tabular-nums; }\n.tita-knowledgeFootnote { margin: 12px 0 0; color: var(--tita-ink-faint); font-size: 10px; line-height: 1.6; }\n.tita-knowledgeFootnote b { color: var(--tita-ink-muted); }\n\n/*\n * \u884C\u662F**\u5217\u8868\u884C + \u4E00\u6761\u5206\u9694\u7EBF**\uFF0C\u4E0D\u662F\u4E00\u5F20\u5C0F\u5361\u7247 \u2014\u2014 \u4E0E\u8F74\u5B9E\u4F53\u540C\u4E00\u5957\u7248\u5F0F\u3002\n * \u51FA\u5904\u8D34\u5728\u77E5\u8BC6\u4E0B\u9762\uFF08\u590D\u7528 `.tita-trialSource*`\uFF09\uFF1A\u5206\u5F00\u4E4B\u540E\u300C\u8FD9\u6761\u77E5\u8BC6\u6709\u6CA1\u6709\u4F9D\u636E\u300D\n * \u5C31\u5F97\u8DE8\u4E24\u5904\u770B\u3002\n */\n.tita-knowledgeList { display: grid; margin: 6px 0 0; padding: 0; list-style: none; gap: 8px; }\n.tita-knowledgeRow { display: grid; gap: 3px; border-bottom: 1px solid var(--tita-line); padding: 8px 2px; }\n.tita-knowledgeRow:last-child { border-bottom: 0; }\n/* \u884C\u5C3E\u4E00\u884C\uFF1A\u5224\u65AD\u5728\u5DE6\uFF0C\u52A8\u4F5C\u5728\u53F3\u3002**\u5224\u65AD\u8D34\u7740\u6B63\u6587\u8BFB\u5B8C\u7684\u4F4D\u7F6E**\uFF0C\u52A8\u4F5C\u5728\u4EBA\u51B3\u5B9A\u52A8\u624B\u7684\u4F4D\u7F6E\u3002 */\n.tita-knowledgeFoot { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 2px; }\n.tita-knowledgeConfirm { margin-left: auto; }\n.tita-knowledgeText { flex: 1 1 200px; color: var(--tita-ink); font-size: 11.5px; font-weight: 600; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-knowledgeMeta { color: var(--tita-ink-muted); font-size: 10px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-drawerSectionCount { color: var(--tita-ink-muted); font-size: 10px; font-variant-numeric: tabular-nums; }\n/*\n * \u5F15\u7528\u6E05\u5355\u91CC\u90A3\u4E00\u884C\u7684\u8DF3\u8F6C\uFF08\u5361\u7247 \u2192 \u77E5\u8BC6\uFF09\u3002\n *\n * \u5B83\u6392\u5728\u90A3\u4E00\u884C**\u6700\u53F3**\uFF1A\u5DE6\u4FA7\u90A3\u4E00\u5217\u662F\u5224\u65AD\uFF08\u72B6\u6001\u3001\u6B63\u6587\u3001\u51FA\u5904\uFF09\uFF0C\u8BFB\u5B8C\u4E4B\u540E\u624D\u8F6E\u5230\u52A8\u4F5C \u2014\u2014\n * \u4E0E `.tita-knowledgeConfirm` \u540C\u4E00\u6761\u7406\u7531\u3002\u505A\u6210\u65E0\u8FB9\u6846\u5C0F\u5B57\u800C\u4E0D\u662F\u6309\u94AE\uFF1A\u8FD9\u4E00\u884C\u91CC\u4E09\u767E\u6765\u4E2A\n * \u50CF\u7D20\u90FD\u5F52\u6B63\u6587\uFF0C\u52A8\u4F5C\u662F**\u6CE8\u811A**\uFF0C\u4E0D\u8BE5\u6446\u4E00\u4E2A\u8DDF\u6B63\u6587\u62A2\u773C\u7684\u4E1C\u897F\u3002\n */\n.tita-knowledgeOpen { justify-self: end; margin-top: 2px; border: 0; background: none; padding: 0; color: var(--tita-primary); font: inherit; font-size: 10px; cursor: pointer; text-decoration: underline; text-underline-offset: 2px; }\n/* \u60AC\u505C\u539F\u6765\u6307\u7740\u4E00\u5BF9**\u6CA1\u6709\u5B9A\u4E49**\u7684\u53D8\u91CF\uFF0C\u800C `var()` \u5931\u6548\u65F6\u6574\u6761 `color` \u58F0\u660E\u4F5C\u5E9F \u2014\u2014\n \u8FD9\u5C31\u662F\u300C\u60AC\u505C\u5B8C\u5168\u6CA1\u6709\u53CD\u9988\u300D\u7684\u539F\u56E0\u3002\u73B0\u5728\u4E24\u6863\u90FD\u662F\u771F token\uFF1A\u4E3B\u8272 \u2192 \u5B83\u7684\u6DF1\u8272\u6863\u3002 */\n.tita-knowledgeOpen:hover { color: var(--tita-primary-hover); }\n.tita-knowledgeSources { display: grid; margin: 2px 0 0; padding: 0; list-style: none; gap: 4px; }\n.tita-knowledgeNote { margin-top: 8px; border-top: 1px dashed var(--tita-line); padding-top: 8px; }\n/*\n * \u751F\u6548\u4E2D\u7684\u7B5B\u9009\u3002\u77E9\u9635\u91CC\u4E5F\u9AD8\u4EAE\u4E86\uFF0C\u4F46**\u8FD9\u4E00\u6392\u624D\u662F\u80FD\u9010\u4E2A\u53BB\u6389\u7684\u5730\u65B9** \u2014\u2014\n * \u70B9\u4E00\u683C\u4F1A\u540C\u65F6\u5B9A\u4F4F\u4E09\u6761\u8F74\uFF0C\u800C\u4EBA\u5F80\u5F80\u53EA\u60F3\u53BB\u6389\u5176\u4E2D\u4E00\u6761\u3002\n *\n * \u5B83\u4E0E\u72B6\u6001 chip \u90A3\u4E00\u6761\u540C\u4E00\u5957 chip\uFF08`.tita-filterChip*`\uFF09\uFF0C\u53EA\u662F\u6362\u4E86\u4E00\u884C\uFF1A\n * \u4E0A\u9762\u90A3\u6392\u662F**\u53EF\u4EE5\u9009\u7684\u6863\u4F4D**\uFF08\u90FD\u5E26\u7740\u8BA1\u6570\uFF09\uFF0C\u8FD9\u4E00\u6392\u662F**\u5DF2\u7ECF\u9009\u4E2D\u7684\u4E1C\u897F**\uFF08\u90FD\u5E26\u4E00\u4E2A \xD7\uFF09\u3002\n */\n.tita-knowledgeActive { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin-top: 8px; }\n.tita-knowledgeClear { border: 0; background: none; color: var(--tita-ink-muted); padding: 2px 4px; font: inherit; font-size: 10.5px; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }\n.tita-knowledgeClear:hover { color: var(--tita-ink); }\n.tita-knowledgeClear:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n\n/* \u5361\u7247\u7C7B\u578B\u6CE8\u518C\u8868\uFF08issue 0024\uFF09\uFF1A\u8FD9\u5F20\u754C\u9762\u5C31\u662F"SourceRaw \u2192 Wiki"\u7684\u7EA6\u675F\u5165\u53E3\u3002 */\n.tita-wikiTypeBar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 10px; }\n.tita-wikiTypeIssueCount { border: 1px solid var(--tita-tone-amber-line); border-radius: 999px; background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); padding: 2px 9px; font-size: 10.5px; }\n.tita-wikiTypeList { display: grid; margin: 4px 0 0; padding: 0; list-style: none; gap: 0; }\n/*\n * \u4E00\u884C\u4E00\u4E2A\u7C7B\u578B\u3002**\u4E00\u884C\u5C31\u662F\u4E00\u884C**\uFF1A\u540D\u5B57 + id + \u5C42\u7EA7 / \u81EA\u5B9A\u4E49\u6807\u7B7E + \u8BF4\u660E\u56FE\u6807\uFF0C\n * \u53F3\u8FB9\u662F\u5F20\u6570\u3001\u5F00\u5173\u3001\u7F16\u8F91\u3001\u5220\u9664\u3002\n *\n * \u8FD9\u4E2A\u683C\u5B50\u6362\u8FC7\u4E24\u6B21\u5F62\uFF0C\u4E24\u6B21\u90FD\u662F\u4E3A\u4E86\u540C\u4E00\u4EF6\u4E8B \u2014\u2014 \u7A84\u680F\uFF08380\u2013420px\uFF09\u91CC\u653E\u4E0D\u4E0B\u7B2C\u56DB\u4E2A\u4E1C\u897F\uFF1A\n * 1. \u6700\u65E9\u662F 6 \u5217 grid\uFF0C\u6700\u5C0F\u5BBD\u5EA6\u7EA6 398px\uFF0C\u4E2D\u95F4\u90A3\u5217\u8BF4\u660E\u88AB\u538B\u6210 0 \u5BBD\u3001\u6574\u5757\u770B\u8D77\u6765\u50CF\u300C\u95F4\u8DDD\u5F02\u5E38\u300D\u3002\n * 2. \u6539\u6210 flex \u4E24\u884C\uFF1A\u7B2C\u4E00\u884C\u8EAB\u4EFD + \u64CD\u4F5C\uFF0C\u8BF4\u660E\u7528 `order: 1` \u6362\u5230\u7B2C\u4E8C\u884C\u5360\u6EE1\u6574\u5BBD\u3002\n * 3. \u73B0\u5728\uFF082026-09-26\uFF09\u8BF4\u660E\u4E5F\u642C\u8FDB\u884C\u9996\u90A3\u679A\u56FE\u6807\uFF1A\u5341\u4E00\u4E2A\u7C7B\u578B\u672C\u6765\u8981\u8BFB\u4E09\u5341\u591A\u884C\u5C0F\u5B57\uFF0C\n * \u800C\u8FD9\u4E00\u9875\u95EE\u7684\u662F\u300C\u6709\u54EA\u4E9B\u7C7B\u578B\u3001\u54EA\u4E2A\u6CA1\u542F\u7528\u300D\u3002\u8981\u770B\u5B9A\u4E49\u3001\u5EFA\u8BAE\u5C0F\u8282\u4E0E\u5EFA\u8BAE\u5B57\u6BB5\u65F6\uFF0C\n * \u60AC\u505C\u6216\u805A\u7126\u90A3\u679A\u56FE\u6807\u5C31\u6709 \u2014\u2014 \u5185\u5BB9\u6CA1\u5220\uFF0C\u53EA\u662F\u4E0D\u518D\u5E38\u9A7B\u3002\n *\n * `align-items: baseline` \u4FDD\u7559\uFF1A\u540D\u5B57\u3001id\u3001\u5C42\u7EA7\u6807\u7B7E\u4E09\u6837\u8981\u5750\u5728\u540C\u4E00\u6761\u57FA\u7EBF\u4E0A\u624D\u8BFB\u5F97\u6210\u4E00\u884C\u3002\n * \u8BF4\u660E\u56FE\u6807\u81EA\u5DF1 `align-self: center`\uFF0C\u56E0\u4E3A\u4E00\u4E2A\u53EA\u6709 svg \u7684\u6309\u94AE\u6CA1\u6709\u53EF\u7528\u7684\u6587\u5B57\u57FA\u7EBF\u3002\n */\n/* \u4E0E `.tita-kbSourceRow` \u540C\u4E00\u5957\uFF1A\u5217\u8868\u884C + \u4E00\u6761\u5206\u9694\u7EBF\uFF0C\u4E0D\u662F\u4E00\u5F20\u5C0F\u5361\u7247\u3002\n \u7F29\u8FDB\u8868\u8FBE\u4ECE\u5C5E\uFF08\u89C1\u4E0B\u9762 `.tita-wikiTypeGroupList`\uFF09\uFF0C\u6240\u4EE5\u884C\u4E0D\u9700\u8981\u518D\u81EA\u5DF1\u753B\u4E00\u5708\u6846\u3002 */\n.tita-wikiTypeRow {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 6px 8px;\n border-bottom: 1px solid var(--tita-line);\n padding: 5px 8px;\n min-height: 32px;\n}\n.tita-wikiTypeRow:last-child { border-bottom: 0; }\n.tita-wikiTypeRow:hover { background: var(--tita-surface-muted); }\n.tita-wikiTypeName { display: flex; flex: 1 1 auto; min-width: 0; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-wikiTypeLabel { color: var(--tita-ink); font-size: 12px; font-weight: 620; }\n.tita-wikiTypeTag { flex: 0 0 auto; border-radius: 4px; background: var(--tita-primary-soft); color: var(--tita-primary); padding: 1px 5px; font-size: 9.5px; }\n/* \u884C\u9996\u90A3\u679A\u8BF4\u660E\u56FE\u6807\uFF1A\u957F\u540D\u5B57\u4E0D\u628A\u5B83\u6324\u6241\uFF08\u5B83\u8DDF\u7740\u7684\u662F\u300C\u8FD9\u4E00\u884C\u662F\u4EC0\u4E48\u300D\uFF09\uFF0C\n \u4E5F\u4E0D\u4E0E\u6587\u5B57\u6BD4\u57FA\u7EBF \u2014\u2014 \u4E00\u4E2A\u53EA\u88C5 svg \u7684\u6309\u94AE\u6CA1\u6709\u53EF\u7528\u7684\u57FA\u7EBF\u3002 */\n.tita-kbSourceName > .tita-infoHint,\n.tita-wikiTypeName > .tita-infoHint { flex: 0 0 auto; align-self: center; }\n.tita-wikiTypeIssues { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 5px; }\n.tita-wikiTypeIssues li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; }\n.tita-wikiTypeIssues code { border-radius: 4px; background: var(--tita-surface-muted); padding: 1px 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n.tita-wikiTypeIssueLevel { border-radius: 4px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 0 5px; font-size: 9.5px; }\n\n/*\n * \u6309 id \u524D\u7F00\u6298\u6210\u7684\u4E00\u7EC4\uFF080040 \xA74.3\uFF09\u3002\n *\n * \u5206\u7EC4\u53EA\u505A\u4E00\u4EF6\u4E8B\uFF1A\u8BA9\u300C\u8FD9\u4E94\u4E2A\u662F\u540C\u4E00\u5957 schema\u300D\u5728\u5217\u8868\u91CC\u770B\u5F97\u51FA\u6765\u3002\u6240\u4EE5\u7EC4**\u4E0D\u662F\u4E00\u4E2A\n * \u76D2\u5B50**\uFF1A\u5B83\u6CA1\u6709\u8FB9\u6846\u3001\u6CA1\u6709\u5E95\u8272\uFF0C\u53EA\u6709\u4E00\u6761\u5DE6\u7F29\u8FDB\u4E0E\u4E00\u679A\u53EF\u70B9\u7684\u7EC4\u540D\u884C\u3002\u771F\u6B63\u627F\u8F7D\u5185\u5BB9\u7684\n * \u8FD8\u662F\u91CC\u9762\u90A3\u4E9B `.tita-wikiTypeRow` \u2014\u2014 \u7ED9\u7EC4\u518D\u52A0\u4E00\u5C42\u63CF\u8FB9\uFF0C\u4E00\u7EC4\u4E94\u4E2A\u4EBA\u5C31\u4F1A\u770B\u8D77\u6765\u50CF\n * \u5361\u7247\u5957\u5361\u7247\uFF0C\u800C\u8FD9\u4E00\u5C4F\u672C\u6765\u5C31\u5DF2\u7ECF\u662F\u5217\u8868\u5957\u5217\u8868\u3002\n *\n * \u7F29\u8FDB\u662F\u552F\u4E00\u7684\u7ED3\u6784\u4FE1\u53F7\u3002\u7EC4\u7684 `<details>` \u9ED8\u8BA4\u5C55\u5F00\uFF08`open`\uFF09\uFF1A\u6298\u53E0\u662F\u7ED9"\u592A\u957F"\u7528\u7684\uFF0C\n * \u800C\u8FD9\u91CC\u6298\u53E0\u662F**\u9ED8\u8BA4\u7684\u9605\u8BFB\u987A\u5E8F**\uFF0C\u4E0D\u662F\u9690\u85CF\u5185\u5BB9\u3002\n *\n * 2026-10-01 \u4FEE\u6B63\uFF1A**\u53EA\u6709\u7F29\u8FDB\u4E0D\u591F**\u3002\u4E0A\u4E00\u7248\u628A\u7EC4\u5934\u5199\u6210\u4E00\u884C\u666E\u901A\u6587\u672C\uFF0C\u7ED3\u679C\u5B83\u4E0E\u6210\u5458\u884C\u3001\u4E0E\n * \u4E00\u7EA7\u7C7B\u578B\u4E09\u8005\u957F\u5F97\u4E00\u6837\uFF0C\u7528\u6237\u8BFB\u4E0D\u51FA\u300C\u8FD9\u4E94\u4E2A\u662F\u4E00\u7EC4\u300D\u3002\u73B0\u5728\u7EC4\u5934\u6709\u4E00\u6761\u6D45\u5E95\u8272\u5E26\n * \uFF08`--tita-surface-muted`\uFF0C\u4ECD\u662F**\u6CA1\u6709\u63CF\u8FB9\u3001\u6CA1\u6709\u5706\u89D2\u5361\u7247**\uFF0C\u6240\u4EE5\u4E0A\u9762\u90A3\u6761\u7406\u7531\u4ECD\u7136\u6210\u7ACB\uFF09\uFF0C\n * \u6210\u5458\u884C\u5219\u9760\u7F29\u8FDB 30px + \u4E00\u6761\u7AD6\u76F4\u5BFC\u8F68\u8868\u8FBE\u4ECE\u5C5E\u3002\n * \u6CE8\u610F\u8FD9\u91CC\u6CA1\u6709\u7528\u300C\u5F69\u8272\u5DE6\u8FB9\u6761\u300D\u90A3\u79CD\u505A\u6CD5\uFF1A\u5B83\u53EA\u662F\u5728\u6BCF\u884C\u65C1\u8FB9\u518D\u653E\u4E00\u4E2A\u8272\u5757\uFF0C\u4E0D\u589E\u52A0\u4FE1\u606F\u3002\n */\n.tita-wikiTypeGroup { margin: 0; }\n.tita-wikiTypeGroupBox { display: grid; gap: 0; }\n.tita-wikiTypeGroupHead {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 7px;\n border-radius: 8px;\n background: var(--tita-surface-muted);\n padding: 5px 8px;\n cursor: pointer;\n list-style: none;\n}\n.tita-wikiTypeGroupHead::-webkit-details-marker { display: none; }\n/* \u5C55\u5F00\u6001\u628A\u7BAD\u5934\u8F6C 90\xB0\uFF08`\u25B8` \u2192 `\u25BE`\uFF09\uFF1A\u56FE\u5F62\u53EA\u6709\u4E00\u4E2A\uFF0C\u65B9\u5411\u7531\u72B6\u6001\u51B3\u5B9A\u3002\n `transition` \u4E0E\u6309\u94AE\u90A3\u5957\u65F6\u957F\u4E00\u81F4\uFF0C\u8F6C\u8D77\u6765\u4E0D\u62A2\u6CE8\u610F\u529B\u3002 */\n.tita-wikiTypeGroupCaret { flex: 0 0 auto; color: var(--tita-ink-faint); transition: transform 150ms cubic-bezier(0.22, 0.61, 0.36, 1); }\n.tita-wikiTypeGroupBox[open] > .tita-wikiTypeGroupHead .tita-wikiTypeGroupCaret { transform: rotate(90deg); }\n@media (prefers-reduced-motion: reduce) { .tita-wikiTypeGroupCaret { transition: none; } }\n.tita-wikiTypeGroupHead:hover { background: var(--tita-line); }\n/* \u7EC4\u540D\u6BD4\u6210\u5458\u66F4\u91CD\u3001\u6BD4\u6574\u4E2A\u62BD\u5C49\u7684\u8282\u6807\u9898\u66F4\u8F7B\uFF1A\u5B83\u5728"\u6709\u54EA\u4E9B\u7C7B\u578B"\u8FD9\u4E00\u5C42\u91CC\u662F\u4E00\u4E2A\u4E2D\u95F4\u5C42\u7EA7\u3002 */\n.tita-wikiTypeGroupLabel { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; letter-spacing: .01em; }\n.tita-wikiTypeGroupCount { margin-left: auto; color: var(--tita-ink-faint); font-size: 10px; }\n/*\n * \u6210\u5458\u884C\u9760**\u7F29\u8FDB + \u4E00\u6761\u7AD6\u76F4\u5BFC\u8F68**\u8868\u8FBE\u4ECE\u5C5E\u3002\n *\n * 12px \u7684\u7EAF\u7F29\u8FDB\u4E0D\u591F\uFF08\u7528\u6237\u7684\u539F\u8BDD\u662F\u300C\u5C42\u7EA7\u5173\u7CFB\u4E0D\u591F\u660E\u663E\u300D\uFF09\uFF1A\u7EC4\u540D\u90A3\u884C\u53EA\u6709 11px \u7070\u5B57\uFF0C\n * \u6210\u5458\u884C\u53C8\u4E0E\u4E00\u7EA7\u7C7B\u578B\u957F\u5F97\u4E00\u6A21\u4E00\u6837\uFF0C\u7F29\u8FDB\u7684\u90A3\u4E00\u70B9\u5728\u89C6\u89C9\u4E0A\u88AB\u884C\u81EA\u8EAB\u7684\u63CF\u8FB9\u5403\u6389\u4E86\u3002\n * \u73B0\u5728\u7F29\u8FDB\u52A0\u5230 30px\uFF0C\u5E76\u5728\u5DE6\u4FA7\u753B\u4E00\u6761\u8FDE\u7EED\u7684\u7EC6\u7EBF \u2014\u2014 \u7EBF\u662F**\u7ED3\u6784**\uFF08\u5B83\u628A\u540C\u7EC4\u7684\u884C\u4E32\u6210\u4E00\u6BB5\uFF09\uFF0C\n * \u4E0D\u662F\u88C5\u9970\uFF0C\u6240\u4EE5\u5B83\u662F\u7070\u8272\u7684\uFF0C\u989C\u8272\u4E0E\u5206\u9694\u7EBF\u540C\u6E90\u3002\n */\n.tita-wikiTypeGroupList { position: relative; display: grid; margin: 0; padding: 0 0 0 30px; list-style: none; gap: 0; }\n.tita-wikiTypeGroupList::before {\n content: \'\';\n position: absolute;\n inset-block: 6px 8px;\n inset-inline-start: 16px;\n width: 1.5px;\n border-radius: 1px;\n background: var(--tita-line-strong);\n}\n\n/*\n * \u6A21\u677F\u5361\u9884\u89C8\uFF080040 \xA74.4 \u7B2C 3\u30014 \u6761\uFF09\u3002\u5B83\u662F**\u53EA\u8BFB\u5757**\uFF0C\u4E0D\u662F\u63A7\u4EF6\uFF1A\n * \u6C89\u5E95\uFF08`--tita-surface-muted`\uFF09+ \u865A\u7EBF\u63CF\u8FB9 + \u7B49\u5BBD\u5185\u5BB9\uFF0C\u4E0E\u65C1\u8FB9\u90A3\u51E0\u4E2A\u767D\u5E95\u5B9E\u8FB9\u6846\u7684\n * `Input` / `Textarea` \u4E00\u773C\u53EF\u5206\u3002\u865A\u7EBF\u800C\u4E0D\u662F\u5B9E\u7EBF\uFF0C\u662F\u56E0\u4E3A\u5B9E\u7EBF\u5728\u8FD9\u4E2A\u9762\u677F\u91CC\u5DF2\u7ECF\n * \u4E13\u95E8\u8868\u793A"\u53EF\u7F16\u8F91\u7684\u8F93\u5165\u6846"\u3002\n *\n * \u4E24\u5757\uFF08front matter / \u6B63\u6587\uFF09\u5171\u7528\u540C\u4E00\u5957\u6392\u7248\uFF0C\u53EA\u6709\u6807\u9898\u4E0E\u8BF4\u660E\u4E0D\u540C \u2014\u2014 \u5B83\u4EEC\u7684\u5206\u5DE5\n * \u9760**\u6807\u9898**\u8BF4\u6E05\uFF0C\u4E0D\u9760\u4E24\u5957\u957F\u76F8\u3002\n */\n.tita-wikiPreview { display: grid; gap: 8px; }\n.tita-wikiPreviewHead { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }\n.tita-wikiPreviewHead h4 { margin: 0; color: var(--tita-ink); font-size: 12px; }\n.tita-wikiPreviewOrigin { color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-wikiPreviewBlock { display: grid; gap: 5px; border: 1px dashed var(--tita-line-strong); border-radius: 9px; background: var(--tita-surface-muted); padding: 9px 10px; }\n.tita-wikiPreviewBlockTitle { margin: 0; color: var(--tita-ink-muted); font-size: 11px; font-weight: 700; }\n.tita-wikiPreviewBlockNote { margin: 0; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-wikiPreviewFields { display: grid; margin: 2px 0 0; gap: 3px; }\n.tita-wikiPreviewField { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-wikiPreviewField dt { flex: 0 0 auto; margin: 0; color: var(--tita-ink); font-family: var(--font-tita-mono); font-size: 10.5px; }\n.tita-wikiPreviewField dd { margin: 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-wikiPreviewSections { display: grid; margin: 2px 0 0; padding: 0; list-style: none; gap: 3px; }\n.tita-wikiPreviewSections li { display: flex; min-width: 0; flex-wrap: wrap; align-items: baseline; gap: 6px; }\n.tita-wikiPreviewSections code { color: var(--tita-ink); font-family: var(--font-tita-mono); font-size: 10.5px; }\n.tita-wikiPreviewPlaceholder { color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-wikiPreviewEmpty { margin: 2px 0 0; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n\n/*\n * \u53EA\u8BFB\u5B57\u6BB5\u7684\u5F62\u6001\uFF080040 \xA74.4 \u7B2C 1 \u6761\uFF09\u3002\n *\n * `Input` \u7684 `readonly` \u6837\u5F0F\uFF08`packages/ui`\uFF09\u5DF2\u7ECF\u7ED9\u4E86\u6C89\u5E95 + \u6D45\u63CF\u8FB9 + \u6587\u672C\u5149\u6807\uFF0C\n * \u8FD9\u91CC\u8865\u7684\u662F"\u8FD9\u4E0D\u80FD\u6539"\u90A3\u4E00\u70B9\uFF1A\u6587\u5B57\u6536\u5230 `--tita-ink-muted`\u3002**\u4E0D\u7528 opacity** \u2014\u2014\n * \u9760\u900F\u660E\u5EA6\u53D8\u7070\u4F1A\u628A\u5BF9\u6BD4\u5EA6\u4E00\u8D77\u538B\u4E0B\u53BB\uFF0C\u800C 4.5:1 \u662F\u786C\u7EBF\uFF1B`--tita-ink-muted` \u5728\n * `--tita-surface-muted` \u4E0A\u662F 6.98:1\uFF08\u6309\u4E3B\u9898\u771F\u503C\u5B9E\u7B97\uFF09\uFF0C\u7070\u5F97\u660E\u786E\u53C8\u8BFB\u5F97\u6E05\u3002\n *\n * \u9009\u62E9\u5668\u5199 `[data-tita-readonly=\'true\']` \u800C\u4E0D\u662F `input[readonly]`\uFF1A\u8FD9\u6761\u89C4\u7EA6\u53EA\u4F5C\u7528\u4E8E\n * **\u58F0\u660E\u4E86\u5B83**\u7684\u5B57\u6BB5\uFF0C\u4E0D\u80FD\u987A\u624B\u628A\u522B\u5904\uFF08\u76EE\u5F55\u9009\u62E9\u5668\u90A3\u79CD"\u5F53\u524D\u503C"\u6846\uFF09\u7684\u53EA\u8BFB\u8F93\u5165\u6846\u4E5F\u6539\u6389\u3002\n * \u5BF9\u8BDD\u6846\u8D70 Portal\uFF0C\u4E0D\u5728 `.tita-panel` \u91CC\uFF0C\u6240\u4EE5\u4E24\u5904\u90FD\u5199\u4E0A\u3002\n */\n.tita-panel input[data-tita-readonly=\'true\'],\n.tita-uiPortal input[data-tita-readonly=\'true\'] { border-color: var(--tita-line); background: var(--tita-surface-muted); color: var(--tita-ink-muted); }\n\n/* \u7EC4\u540D\u884C\u662F `<summary>`\uFF0C\u4E5F\u5C31\u662F\u4E00\u4E2A\u53EF\u805A\u7126\u7684\u6309\u94AE\uFF1A\u7126\u70B9\u73AF\u8D70\u5168\u5C40\u9762\u677F\u89C4\u5219\uFF0C\n \u4F46\u5B83\u7684\u5706\u89D2\u53EA\u6709 6px\uFF0C\u504F\u79FB 2px \u4F1A\u9876\u5230\u76F8\u90BB\u884C\uFF0C\u6240\u4EE5\u8FD9\u4E00\u5904\u6536\u4E00\u70B9\u3002 */\n.tita-wikiTypeGroupHead:focus-visible { outline-offset: 1px; }\n\n/* ------------------------------------------------- filter chip (shared shape)\n *\n * \u4E00\u679A\u53EF\u70B9\u7684\u7B5B\u9009 chip\u3002\u4E09\u5904\u7528\u5B83\uFF1A\u53EC\u56DE\u7684\u4E09\u8DEF\u3001Knowledge \u90A3\u4E00\u680F\u7684\u72B6\u6001\u6863\u3001\u4EE5\u53CA\u77E9\u9635\u70B9\u51FA\u6765\u7684\n * \u5750\u6807\u8F74\u3002\u539F\u6765\u5B83\u53EB `routeChip` \u2014\u2014 \u90A3\u65F6\u53EA\u6709\u53EC\u56DE\u5728\u7528\uFF0C\u540D\u5B57\u8DDF\u7740\u7B2C\u4E00\u4E2A\u4F7F\u7528\u8005\u8D70\uFF1B\u73B0\u5728\n * \u4E09\u4E2A\u5730\u65B9\u5171\u7528\u540C\u4E00\u4E2A\u5F62\u72B6\uFF0C\u540D\u5B57\u5C31\u8BE5\u8BF4\u7684\u662F**\u5B83\u662F\u4EC0\u4E48**\uFF0C\u4E0D\u662F**\u8C01\u5148\u7528**\u3002\n *\n * \u865A\u7EBF = \u6CA1\u9009\u4E2D\uFF0C\u5B9E\u7EBF + \u7EFF = \u9009\u4E2D\u3002\u964D\u7EA7\uFF08\u53EC\u56DE\u90A3\u4E00\u8DEF\u6CA1\u8DD1\u8D77\u6765\uFF09\u7528\u7425\u73C0\uFF0C\n * \u5B83\u4E0E\u300C\u9009\u4E2D\u300D\u662F\u4E24\u4EF6\u4E8B\uFF0C\u6240\u4EE5\u662F\u4E24\u4E2A\u7C7B\u800C\u4E0D\u662F\u4E00\u4E2A\u7C7B\u52A0\u4E00\u4E2A\u4FEE\u9970\u7B26\u3002\n */\n.tita-filterChip { display: inline-flex; align-items: center; gap: 5px; border: 1px dashed var(--tita-line); border-radius: 999px; background: var(--tita-surface); color: var(--tita-ink-faint); padding: 3px 9px; font-size: 10.5px; cursor: pointer; font-family: inherit; }\n.tita-filterChip:hover { border-color: var(--tita-line-strong); color: var(--tita-ink); }\n.tita-filterChip:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-filterChipOn { border-style: solid; border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); color: var(--tita-tone-green); font-weight: 620; }\n.tita-filterChipOn:hover { border-color: var(--tita-tone-green-line); color: var(--tita-tone-green); }\n/* \u964D\u7EA7\u4E0D\u662F\u300C\u6CA1\u8DD1\u300D\uFF0C\u4E5F\u4E0D\u662F\u300C\u8DD1\u4E86\u300D\uFF1A\u5B83\u8981\u80FD\u88AB\u770B\u89C1\uFF0C\u5E76\u4E14\u5E26\u4E0A\u539F\u56E0\uFF08\u82AF\u7247\u7684 title\uFF09\u3002 */\n.tita-filterChipWarn { border-style: solid; border-color: var(--tita-tone-amber-line); background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); font-weight: 620; }\n\n/* -------------------------------------------------- \u7B5B\u9009 chip\uFF08\u65B9\u89D2\u7248\uFF09\n *\n * \u4E0E\u4E0A\u9762\u7684 `filterChip` \u662F**\u4E24\u79CD\u5F62\u72B6**\uFF0C\u4E0D\u662F\u4E00\u5957\u7684\u4E24\u4E2A\u72B6\u6001\uFF1A\u90A3\u679A\u662F\u80F6\u56CA + \u865A\u7EBF\u8FB9\n * \uFF08\u9009\u4E2D\u624D\u53D8\u5B9E\u7EBF\uFF09\uFF0C\u8FD9\u4E00\u679A\u662F\u65B9\u89D2 + \u5B9E\u7EBF\u8FB9\uFF08\u9009\u4E2D\u53EA\u662F\u52A0\u6DF1\uFF09\u3002\u64CD\u4F5C\u65E5\u5FD7\u7684\u7C7B\u578B\u7B5B\u9009\u7528\u5B83\n * \uFF08\u5168\u90E8 / \u5BFC\u5165 / \u7F16\u8BD1\uFF09\u3002\n *\n * \u5B83\u539F\u5148\u662F\u77E5\u8BC6\u56FE\u8C31\u90A3\u4E00\u9875\u7684 `.tita-kgChip`\uFF0C\u4F4F\u5728 `graph.css` \u91CC \u2014\u2014 2026-10-05 \u90A3\u4E00\u680F\n * \u64A4\u6389\u540E\uFF0C\u8FD9\u91CC\u662F\u5B83\u552F\u4E00\u7684\u4F7F\u7528\u8005\uFF0C\u6240\u4EE5\u6837\u5F0F\u642C\u8FDB\u4E3B\u6837\u5F0F\u8868\u3001\u540D\u5B57\u8DDF\u7740\u73B0\u5728\u7528\u5B83\u7684\u5730\u65B9\u8D70\u3002\n * \u642C\u5BB6\u53EA\u6539\u540D\u4E0D\u6539\u503C\uFF1A\u8272\u70B9\u3001\u7B49\u5BBD id\u3001\u8BA1\u6570\u90A3\u51E0\u6761\u5B50\u89C4\u5219\u662F\u56FE\u8C31\u9875\u4E13\u7528\u7684\uFF0C\u6CA1\u6709\u4E00\u8D77\u642C\u3002\n */\n.tita-logChips { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }\n.tita-logChip {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n border: 1px solid var(--tita-line);\n border-radius: 6px;\n background: var(--tita-surface);\n padding: 2px 7px;\n color: var(--tita-ink-muted);\n font: inherit;\n font-size: 10.5px;\n cursor: pointer;\n}\n.tita-logChip:hover { background: var(--tita-surface-muted); color: var(--tita-ink); }\n.tita-logChip b { color: var(--tita-ink); font-weight: 600; font-variant-numeric: tabular-nums; }\n.tita-logChipOn { border-color: var(--tita-ink); background: var(--tita-surface-muted); color: var(--tita-ink); font-weight: 600; }\n\n\n/* \u8282\u70B9\u6307\u6807\uFF1A\u9876\u90E8\u94FE\u8DEF\u8BA1\u6570\u6761\u4E0B\u6C89\u5230\u8282\u70B9\u540E\u7684\u843D\u70B9\uFF080022\uFF09\u3002\u6570\u5B57\u8DDF\u7740\u5B83\u63CF\u8FF0\u7684\u90A3\u4E2A\u8282\u70B9\u8D70\u3002 */\n.tita-nodeMetrics { display: flex; min-width: 0; flex-wrap: wrap; gap: 4px; }\n.tita-nodeMetric { display: inline-flex; min-width: 0; align-items: baseline; gap: 4px; border: 1px solid var(--tita-line); border-radius: 6px; background: var(--tita-surface); padding: 1px 6px; }\n.tita-nodeMetric small { color: var(--tita-ink-faint); font-size: 9.5px; }\n.tita-nodeMetric b { color: var(--tita-ink); font-size: 11px; font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-flowNodeBadges + .tita-nodeMetrics { margin-top: 1px; }\n\n/* \u53EC\u56DE\u6D4B\u8BD5\uFF1A\u4F5C\u7528\u8303\u56F4 + \u8DEF\u7EBF/\u53C2\u6570 + \u547D\u4E2D\u5217\u8868\u3002 */\n.tita-recallTop { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }\n.tita-recallScope { display: inline-flex; align-items: center; gap: 6px; color: var(--tita-ink-muted); font-size: 11px; }\n.tita-recallScope b { color: var(--tita-ink); font-weight: 650; }\n/* \u53C2\u6570\u6458\u8981\uFF1A\u4E00\u884C\u53EA\u8BFB\u7684\u503C + \u4E00\u4E2A\u300C\u6539\u53C2\u6570\u300D\u6587\u672C\u6309\u94AE\u3002\n \u5B83\u4E0D\u662F\u4E00\u6761\u63A7\u4EF6\u6A2A\u5E26\uFF08\u90A3\u6837\u53C8\u8981\u5360 44px \u4E14\u6C38\u8FDC\u5728\u573A\uFF09\uFF0C\u662F\u67E5\u8BE2\u6846\u4E0B\u9762\u7684\u4E00\u884C\u6CE8\u811A\u3002 */\n/*\n * \u53EC\u56DE\u8FD9\u4E00\u680F\u7684\u6A2A\u5E26\u8282\u594F\u3002**\u95F4\u8DDD\u7531\u5BB9\u5668\u7EDF\u4E00\u7ED9**\uFF0C\u6BCF\u4E00\u5757\u90FD\u662F\u5B83\u7684\u76F4\u63A5\u5B50\u8282\u70B9\uFF0C\u6CA1\u6709\u4F8B\u5916\u3002\n *\n * \u5B9E\u673A\u53CD\u9988\u8D70\u4E86\u4E24\u8F6E\uFF0C\u6839\u56E0\u662F\u540C\u4E00\u4E2A\uFF1A\u95F4\u8DDD\u7531\u5404\u5757\u81EA\u5DF1\u5199\u3002\n * \u7B2C\u4E00\u8F6E\u300C\u8FD8\u662F\u6324\u5230\u4E86\u4E00\u8D77\u300D\uFF1A\u53C2\u6570\u6458\u8981 8px\u3001\u9519\u8BEF\u63D0\u793A **0px**\u3001\u6B65\u9AA4\u8F68 0px\u3001\u8DEF\u7EBF chips 4px\uFF0C\n * \u4E8E\u662F\u9519\u8BEF\u63D0\u793A\u4E0A\u4E0B\u4E24\u8FB9\u4E00\u70B9\u7F1D\u90FD\u6CA1\u6709\u3002\n * \u7B2C\u4E8C\u8F6E\u300C\u4E0A\u4E0B\u95F4\u8DDD\u4E5F\u4E0D\u7EDF\u4E00\u300D\uFF1A\u8F68\u4E0E\u8DEF\u7EBF chips \u88AB\u5305\u6210\u4E00\u7EC4\u7ED9 6px\uFF0C\u7ED3\u679C chips \u4E0A\u9762 6px\u3001\n * \u4E0B\u9762 14px \u2014\u2014 \u300C\u4ECE\u5C5E\u5173\u7CFB\u7528\u95F4\u8DDD\u5DEE\u8868\u8FBE\u300D\u8FD9\u4E2A\u624B\u6CD5\u672C\u8EAB\u6CA1\u9519\uFF0C\u4F46\u5B83\u5728\u8FD9\u91CC\u628A\u7EDF\u4E00\u6253\u7834\u4E86\u3002\n *\n * \u73B0\u5728\u53EA\u6709\u4E00\u6761\u89C4\u5219\uFF1A**\u5757\u4E0E\u5757\u4E4B\u95F4 14px**\uFF0C\u4E0E `viewStack` \u540C\u503C\u3002\u63D2\u4EF6\u91CC\u53EA\u6709\u4E00\u5957\u7AD6\u6392\u8282\u594F\u3002\n */\n.tita-recallPanel { display: grid; gap: 14px; align-content: start; }\n/* \u5361\u5934\u81EA\u5E26 `margin-bottom: 13px`\uFF0C\u5728\u7F51\u683C\u91CC\u4F1A\u548C gap \u76F8\u52A0\u53D8\u6210 27px\u3002\u8FD9\u91CC\u8BA9\u4F4D\u7ED9 gap\u3002 */\n.tita-recallPanel > .tita-cardHeader { margin-bottom: 0; }\n/*\n * \u5C0F\u8282\u6807\u9898\uFF08\u300C\u88AB\u91CD\u6392\u4E22\u5F03\u7684\u5019\u9009\u300D\u8FD9\u7C7B\uFF09\u5728\u7F51\u683C\u91CC\u4E5F\u8981\u8BA9\u4F4D\u7ED9 gap\u3002\n *\n * `.tita-kbSubHead` \u81EA\u5E26 `margin: 16px 0 6px` \u2014\u2014 \u5B83\u662F\u7ED9**\u5757\u72B6\u6D41**\u91CC\u7684\u5206\u8282\u7528\u7684\uFF1B\n * \u653E\u8FDB\u4E00\u4E2A\u5DF2\u7ECF\u7ED9\u4E86 14px \u7684\u7F51\u683C\u91CC\uFF0C\u4E0A\u9762\u4F1A\u53D8\u6210 30px\u3001\u4E0B\u9762\u53D8\u6210 20px\u3002\n * \u62BD\u5C49\u91CC\u90A3\u6761 `> .tita-kbSubHead { margin: 0 }` \u662F\u540C\u4E00\u4E2A\u5751\u7684\u7B2C\u4E00\u6B21\u8E29\u4E2D\u3002\n */\n.tita-recallPanel .tita-kbSubHead { margin: 0; }\n.tita-recallParamLine { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin: 0; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-recallParamLine > span { display: inline-flex; align-items: baseline; gap: 4px; }\n.tita-recallParamLine b { color: var(--tita-ink-muted); font-weight: 650; }\n/* \u300C\u975E\u9ED8\u8BA4\u300D\u662F**\u63D0\u793A**\u4E0D\u662F\u8B66\u544A\uFF1A\u503C\u4E0D\u540C\u4E0D\u662F\u9519\u8BEF\uFF0C\u662F\u300C\u4F60\u8FD9\u6B21\u6539\u8FC7\u300D\u3002\u6240\u4EE5\u8D70\u4E2D\u6027\u8272\u8C03\uFF0C\n \u4E0D\u8D70\u8B66\u793A\u8272 \u2014\u2014 \u8B66\u793A\u8272\u4F1A\u8BA9\u6BCF\u4E00\u6B21\u4E34\u65F6\u8C03\u6574\u90FD\u770B\u8D77\u6765\u50CF\u51FA\u4E86\u4E8B\u3002 */\n.tita-recallParamOver { border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 1px 7px; font-size: 9.5px; font-weight: 650; cursor: help; }\n.tita-recallParamLine > .tita-hitToggle { margin-left: auto; }\n.tita-recallControls { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }\n.tita-recallControls > label, .tita-recallControls > .tita-recallControl { display: inline-flex; align-items: center; gap: 6px; color: var(--tita-ink-muted); font-size: 11px; white-space: nowrap; }\n/* \u76D2\u5B50\u5F52\u5171\u4EAB\u7EC4\u4EF6\uFF1AInput \u4E0E SelectMenu \u90FD\u6309 34px \u7684\u5B57\u6BB5\u5C3A\u5EA6\u6E32\u67D3\uFF0C\u6240\u4EE5\u8FD9\u91CC\u53EA\u7EA6\u675F\u6570\u5B57\u6846\u7684\n \u5BBD\u5EA6\uFF0C\u4E0D\u518D\u5404\u5199\u4E00\u5957\u8FB9\u6846 / \u5706\u89D2 / \u5B57\u53F7 \u2014\u2014 \u90A3\u6B63\u662F\u300C\u540C\u4E00\u4E2A\u63A7\u4EF6\u4E24\u79CD\u957F\u76F8\u300D\u7684\u6765\u6E90\u3002 */\n.tita-recallControls input { width: 68px; }\n.tita-recallAnalysis { display: grid; gap: 9px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface-muted); padding: 10px 12px; }\n.tita-recallAnalysisHead { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 10px; }\n.tita-recallAnalysisTitle { display: inline-flex; min-width: 0; align-items: center; gap: 7px; color: var(--tita-ink-muted); }\n.tita-recallAnalysisTitle > svg { flex: 0 0 auto; color: var(--tita-tone-violet); }\n.tita-recallAnalysisTitle h4 { margin: 0; color: var(--tita-ink); font-size: 11.5px; font-weight: 720; }\n.tita-recallAnalysisTitle span { display: block; margin-top: 1px; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9.5px; }\n.tita-recallAnalysisAxes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }\n.tita-recallAnalysisAxis { display: grid; min-width: 0; gap: 5px; border: 1px solid var(--tita-line); border-radius: 8px; background: var(--tita-surface); padding: 7px 8px; }\n.tita-recallAnalysisAxisHead { display: flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 10px; }\n.tita-recallAnalysisAxisHead > svg { color: var(--tita-primary); }\n.tita-recallAnalysisAxisHead b { color: var(--tita-ink); font-weight: 700; }\n.tita-recallAnalysisAxisHead span { margin-left: auto; color: var(--tita-ink-faint); font-size: 9px; }\n.tita-recallAnalysisChips { display: flex; min-width: 0; flex-wrap: wrap; gap: 4px; }\n.tita-recallAnalysisChip { display: inline-flex; min-width: 0; max-width: 100%; align-items: baseline; gap: 4px; border-radius: 5px; background: var(--tita-surface-muted); padding: 2px 5px; color: var(--tita-ink-muted); font-size: 10px; }\n.tita-recallAnalysisChip b { overflow: hidden; color: var(--tita-ink); font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }\n.tita-recallAnalysisChip small { color: var(--tita-ink-faint); font-size: 8.5px; }\n.tita-recallAnalysisEmpty { color: var(--tita-ink-faint); font-size: 10px; }\n.tita-recallAnalysisFoot { display: flex; flex-wrap: wrap; gap: 5px 12px; margin: 0; color: var(--tita-ink-faint); font-size: 10px; }\n.tita-recallAnalysisFoot span + span::before { content: \'\xB7\'; margin-right: 12px; color: var(--tita-line-strong); }\n@container (max-width: 560px) {\n .tita-recallAnalysisAxes { grid-template-columns: 1fr; }\n .tita-recallAnalysisHead { align-items: flex-start; flex-direction: column; }\n}\n.tita-hitList { display: grid; margin: 0; padding: 0; list-style: none; gap: 8px; }\n/* \u4E00\u884C\u547D\u4E2D\u538B\u5230\u4E24\u884C\u6B63\u6587\u7684\u9AD8\u5EA6\uFF1A\u6807\u9898\u884C\uFF08\u8DEF\u7EBF / \u6807\u9898 / \u5206\u6570 / \u5C55\u5F00\uFF09+ \u4E00\u884C\u7247\u6BB5\u3002\n \u539F\u6765\u7247\u6BB5\u5360\u4E24\u884C\u3001\u811A\u6CE8\u518D\u5360\u4E00\u884C\uFF0C\u4E09\u6761\u547D\u4E2D\u5C31\u8981 228px\uFF1B\u73B0\u5728\u540C\u6837\u7684\u4E09\u6761\u5360 150px \u51FA\u5934\u3002 */\n.tita-hitRow { display: grid; min-width: 0; gap: 4px; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); padding: 7px 10px; }\n.tita-hitRow:hover { border-color: var(--tita-line); background: var(--tita-surface); }\n.tita-hitHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 6px; }\n.tita-hitTitle { min-width: 0; overflow: hidden; color: var(--tita-ink); font-size: 11.5px; font-weight: 640; text-overflow: ellipsis; white-space: nowrap; }\n.tita-hitRoute { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 3px; border-radius: 999px; padding: 1px 7px; font-size: 9.5px; font-weight: 700; letter-spacing: .04em; }\n.tita-hitRouteFts { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-hitRouteVector { background: var(--tita-tone-violet-tint); color: var(--tita-tone-violet); }\n.tita-hitRouteGraph { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-hitRouteHybrid { background: var(--tita-tone-amber-tint); color: var(--tita-warning); }\n.tita-hitScore { flex: 0 0 auto; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n/* \u5206\u6570\u63A8\u5230\u6700\u53F3\uFF1A\u5B83\u8981\u548C\u4E0A\u9762\u90A3\u6761\u6B65\u9AA4\u8F68\u91CC\u7684\u6570\u5B57\u5BF9\u9F50\u6210\u4E00\u6761\u7AD6\u7EBF\u3002\n \u6807\u9898\u56E0\u6B64\u62FF\u5230 `margin-right: auto` \u2014\u2014 \u5B83\u662F\u8FD9\u4E00\u884C\u91CC\u552F\u4E00\u53EF\u4EE5\u4F38\u7F29\u7684\u4E1C\u897F\u3002 */\n.tita-hitHead .tita-hitTitle { margin-right: auto; }\n/* \u8D26\u672C\u884C\uFF080050\uFF09\uFF1A\u540D\u6B21\u3001\u4EE5\u53CA**\u88AB\u4E22\u5F03**\u7684\u6807\u8BB0\u3002\n \u4E22\u5F03\u4E0D\u9760\u964D\u900F\u660E\u5EA6\u8868\u8FBE \u2014\u2014 \u90A3\u662F\u300C\u4E0D\u53EF\u7528\u300D\uFF0C\u800C\u8FD9\u91CC\u8981\u8868\u8FBE\u7684\u662F\u300C\u7B97\u8FC7\u3001\u6CA1\u8FC7\u7EBF\u300D\uFF1A\n \u865A\u7EBF\u8FB9\u6846 + \u6DE1\u8272\u6807\u9898 + \u4E00\u53E5\u539F\u56E0\uFF0C\u4FE1\u606F\u8FD8\u5728\uFF0C\u53EA\u662F\u9000\u5230\u540E\u9762\u3002 */\n.tita-hitRank { flex: 0 0 auto; min-width: 16px; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; text-align: right; }\n.tita-hitDropped { flex: 0 0 auto; border-radius: 999px; background: var(--tita-surface-muted); color: var(--tita-ink-faint); padding: 1px 7px; font-size: 9.5px; }\n.tita-hitRowDropped { border-style: dashed; background: transparent; }\n.tita-hitRowDropped .tita-hitTitle { color: var(--tita-ink-muted); font-weight: 560; }\n\n/* \u53EC\u56DE\u680F\u7684\u6B65\u9AA4\u8F68\u6BD4\u77E5\u8BC6\u5E93\u90A3\u6761\u66F4\u7D27\u51D1\uFF080050 \u7B2C\u4E8C\u7248\uFF09\uFF1A\u4E09\u6B65\u5E73\u5206\u6574\u884C\uFF0C\u4E0D\u9700\u8981 132px \u7684\n \u57FA\u51C6\u5BBD\uFF0C\u4E5F\u8981\u628A\u7EB5\u5411\u9AD8\u5EA6\u8BA9\u7ED9\u4E0B\u9762\u7684\u5217\u8868\u3002\u53EA\u8986\u76D6\u5E03\u5C40\u4E0E\u5C3A\u5BF8\uFF0C\u914D\u8272\u4ECD\u6765\u81EA `.tita-kbStep`\u3002 */\n.tita-recallSteps .tita-kbStep { flex: 1 1 96px; gap: 1px; padding: 5px 8px; }\n.tita-recallSteps .tita-kbStepTop { gap: 4px; }\n.tita-recallSteps .tita-kbStepTop b { font-size: 11.5px; }\n.tita-recallSteps .tita-kbStepVerb { font-size: 9px; padding: 0 3px; }\n.tita-recallSteps .tita-kbStepFacts { gap: 4px; }\n.tita-recallSteps .tita-kbStepValue { font-size: 9.5px; }\n.tita-recallSteps .tita-kbStepNote { font-size: 9px; }\n/* \u6BCF\u4E00\u6B65\u7684\u8017\u65F6\uFF1A\u53F3\u5BF9\u9F50\u3001\u7B49\u5BBD\u6570\u5B57\u3002\u5B83\u4E0E\u8BA1\u6570\u540C\u8272\u4F46\u66F4\u8F7B \u2014\u2014 \u5B83\u662F\u8BFB\u6570\uFF0C\u4E0D\u662F\u7ED3\u8BBA\u3002 */\n.tita-kbStepCost { margin-left: auto; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9px; font-style: normal; white-space: nowrap; }\n.tita-recallTiming { margin-left: auto; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n\n/*\n * 1 \u8DF3\u6269\u5C55\u7684\u56FE\uFF082026-10-02\uFF09\uFF1A\u5B83\u6B64\u524D\u662F\u4E24\u4EFD\u5217\u8868\uFF0C\u800C\u5217\u8868\u8BFB\u4E0D\u51FA\u300C\u4ECE\u54EA\u5F20\u5361\u7247\u3001\u6CBF\u54EA\u6761\u8FB9\u3001\n * \u8D70\u5230\u8C01\u300D\u3002\u753B\u5E03\u662F canvas\uFF0C\u6240\u4EE5\u5E95\u8272\u3001\u865A\u7EBF\u3001\u5706\u70B9\u90FD\u5728\u4E0A\u5C42\u7528 DOM \u753B\uFF08canvas \u8BA4\u4E0D\u51FA CSS \u53D8\u91CF\uFF09\u3002\n */\n.tita-expansionGraphBox { position: relative; overflow: hidden; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); }\n/* \u9AD8\u5EA6\u5199\u5728\u7EC4\u4EF6\u91CC\uFF08`CANVAS_H`\uFF09\u4E0E\u8FD9\u91CC\u5FC5\u987B\u4E00\u81F4\uFF1Acanvas \u7684\u50CF\u7D20\u5C3A\u5BF8\u7531 G6 \u62FF\u5230\u7684\u9AD8\u5EA6\u51B3\u5B9A\uFF0C\n \u800C\u5BB9\u5668\u9AD8\u5EA6\u5C0F\u4E00\u70B9\u5C31\u4F1A\u51FA\u73B0\u4E00\u6761\u753B\u4E0D\u51FA\u6765\u7684\u7A7A\u767D\u3002 */\n.tita-expansionGraphCanvas { height: 300px; }\n.tita-expansionGraphEmpty { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: var(--tita-ink-faint); font-size: 11px; }\n/* \u56FE\u4F8B\u3002\u4E09\u679A\u8272\u5757\u5C31\u662F\u753B\u5E03\u4E0A\u90A3\u4E09\u79CD\u72B6\u6001\uFF0C\u6240\u4EE5\u5B83\u4EEC\u5FC5\u987B\u4E0E `ExpansionGraph.tsx` \u91CC\u7684\u5E38\u91CF\u540C\u8272\u3002 */\n.tita-expansionLegend { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-expansionLegend > i { width: 11px; height: 11px; flex: 0 0 auto; border-radius: 999px; background: var(--tita-primary); }\n.tita-expansionLegendHollow { background: var(--tita-surface) !important; border: 1.6px solid var(--tita-primary); }\n.tita-expansionLegendDashed { background: var(--tita-surface) !important; border: 1.6px dashed var(--tita-line-strong); }\n/* \u9009\u4E2D\u4E00\u4E2A\u5706\u70B9\u540E\u7684\u90A3\u4E00\u884C\uFF1A\u5B83\u662F\u753B\u5E03\u7684\u8BFB\u6570\u6761\uFF0C\u4E0D\u5360\u4E00\u6574\u5757\u3002 */\n.tita-expansionStrip { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 9px; margin: 0; border-radius: 9px; background: var(--tita-surface-muted); padding: 7px 9px; font-size: 11px; color: var(--tita-ink-muted); }\n.tita-expansionStrip b { color: var(--tita-ink); font-weight: 650; }\n.tita-expansionStrip .tita-hitToggle { display: inline-flex; align-items: center; gap: 3px; margin-left: auto; }\n\n/* \u547D\u4E2D\u884C\u7684\u6B63\u6587\u9ED8\u8BA4\u4E24\u884C\uFF1A\u4E00\u6761\u7B14\u8BB0\u7684\u7247\u6BB5\u5E38\u6709\u51E0\u767E\u5B57\uFF0C\u5168\u644A\u5F00\u4E00\u5C4F\u53EA\u80FD\u770B\u4E24\u6761\u3002\n `-webkit-line-clamp` \u662F\u622A**\u663E\u793A**\u4E0D\u662F\u622A\u6570\u636E\uFF0C\u5C55\u5F00\u540E\u662F\u540C\u4E00\u6BB5\u6587\u5B57\u3002 */\n.tita-hitSnippetClamp { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; }\n.tita-hitToggle { border: 0; background: none; color: var(--tita-primary); padding: 0; font: inherit; font-size: 10px; cursor: pointer; }\n/*\n * \u5355\u72EC\u6210\u884C\u7684\u300C\u53E6\u6709 N \u6761\u88AB\u91CD\u6392\u4E22\u5F03\u2026\u300D\u3002\n *\n * `<button>` \u9ED8\u8BA4 `text-align: center`\uFF0C\u800C\u4E14\u4F5C\u4E3A\u7F51\u683C\u9879\u4F1A\u88AB\u62C9\u6EE1\u6574\u884C\u5BBD \u2014\u2014 \u4E8E\u662F\u8FD9\u4E00\u884C\n * \u65E2\u5C45\u4E2D\u3001\u53C8\u628A\u6574\u884C\u53D8\u6210\u70B9\u51FB\u533A\uFF08\u70B9\u5217\u8868\u53F3\u8FB9\u7684\u7A7A\u767D\u4E5F\u4F1A\u5C55\u5F00\uFF09\u3002\u5B83\u672C\u8D28\u662F\u4E00\u6761\u5217\u8868\u811A\u6CE8\uFF0C\n * \u6240\u4EE5\u6309\u5185\u5BB9\u5BBD\u5EA6\u3001\u5DE6\u5BF9\u9F50\u3002\u9009\u62E9\u5668\u53EA\u70B9\u8FD9\u4E00\u680F\u7684**\u76F4\u63A5\u5B50\u8282\u70B9**\uFF1A\u884C\u5185\u90A3\u679A\u300C\u5C55\u5F00\u300D\u5728\n * `.tita-hitHead` \u91CC\uFF0C\u4E0D\u53D7\u5F71\u54CD\u3002\n */\n.tita-recallPanel > .tita-hitToggle { justify-self: start; text-align: left; }\n.tita-hitToggle:hover { text-decoration: underline; text-underline-offset: 2px; }\n.tita-hitToggle:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; border-radius: 3px; }\n/* \u5361\u7247\u6807\u9898\u5728\u300C\u6269\u5C55\u300D\u90A3\u4E00\u680F\u662F\u53EF\u4EE5\u70B9\u5F00\u7684\uFF1A\u505A\u6210\u94FE\u63A5\u7684\u6837\u5B50\uFF0C\u4F46\u7528\u6309\u94AE\u7684\u8BED\u4E49\u3002 */\n.tita-cardLink { min-width: 0; overflow: hidden; border: 0; background: none; padding: 0; color: var(--tita-primary); font: inherit; font-size: 11.5px; font-weight: 640; text-align: left; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }\n.tita-cardLink:hover { text-decoration: underline; text-underline-offset: 2px; }\n.tita-cardLink:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; border-radius: 3px; }\n\n/* \u53EC\u56DE\u680F\u7684\u4E09\u4E2A tab\uFF1A\u53EC\u56DE / \u91CD\u6392 / \u4EA4\u4ED8\u3002\u5206\u6BB5\u63A7\u4EF6\u4E0E\u5DE5\u5177\u680F\u540C\u4E00\u5957\u6837\u5F0F\u3002 */\n.tita-recallTabs { margin-top: 12px; }\n/*\n * \u8DEF\u7EBF chips\uFF08\u300C\u878D\u5408\u540E N \u6761 / \u5173\u952E\u8BCD 17/17 / \u5411\u91CF 2/50\u300D\uFF09\u3002\n *\n * \u5B83\u4EEC\u662F**\u53EC\u56DE\u8FD9\u4E00\u6B65\u7684\u7EC6\u8282**\uFF0C\u4E5F\u662F\u4E0B\u9762\u90A3\u4EFD\u540D\u5355\u7684\u5F00\u5173\u3002\u4F4D\u7F6E\u4E0A\u6709\u8FC7\u4E24\u7248\u90FD\u4E0D\u5BF9\uFF1A\n * \u4E00\u7248\u4E0E\u6B65\u9AA4\u8F68\u5E73\u7EA7\u5404\u5360\u4E00\u6761\u6A2A\u5E26\uFF08\u8BFB\u8D77\u6765\u50CF\u7B2C\u56DB\u4E2A\u6B65\u9AA4\uFF09\uFF0C\u4E00\u7248\u7F29\u8FDB 12px \u8D34\u5230\u8F68\u4E0B\u9762\n * \uFF08\u4E8E\u662F\u4E0E\u4E0A\u9762\u7684\u63D0\u793A\u3001\u4E0B\u9762\u7684\u5217\u8868\u90FD\u4E0D\u5171\u4E00\u6761\u5DE6\u57FA\u7EBF\uFF0C\u7528\u6237\u7684\u539F\u8BDD\u662F\u300C\u90A3\u51E0\u4E2A\u6807\u7B7E\u6CA1\u6709\u5DE6\u5BF9\u9F50\u300D\uFF09\u3002\n *\n * \u73B0\u5728\uFF1A\u4E0D\u7F29\u8FDB\u3001\u4E0D\u8D34\u8F68\uFF0C\u4E0E\u5176\u5B83\u5757\u4E00\u6837 14px \u2014\u2014 \u5DE6\u57FA\u7EBF\u7EDF\u4E00\uFF0C\u4E0A\u4E0B\u95F4\u8DDD\u7EDF\u4E00\u3002\n */\n.tita-recallRoutes { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 0; }\n.tita-recallRoutes .tita-filterChip { cursor: pointer; font: inherit; font-size: 10.5px; }\n.tita-recallRoutes .tita-filterChip:hover { border-color: var(--tita-line-strong); color: var(--tita-ink); }\n.tita-hitSnippet { margin: 0; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-hitFoot { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: var(--tita-ink-faint); font-size: 10px; }\n\n/* \u8BB0\u5FC6\uFF1A\u771F\u5B9E\u843D\u76D8\u8BA1\u6570\uFF0804_memory\uFF09\u4E0E\u300C\u793A\u610F\u300D\u5361\u7247\u5206\u5F00\u6446\uFF0C\u907F\u514D\u628A\u5360\u4F4D\u6570\u5B57\u8BFB\u6210\u771F\u5B9E\u6570\u636E\u3002 */\n.tita-memoryReal { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 14px; }\n\n/*\n * \u76F8\u5173\u5361\u7247\uFF080049\uFF09\uFF1A\u5361\u7247\u62BD\u5C49\u91CC\u90A3\u4E00\u4EFD\u53EF\u70B9\u7684\u51FA\u94FE / \u5165\u94FE\u3002\n *\n * \u4E00\u884C\u4E00\u4E2A**\u6309\u94AE**\uFF0C\u5E38\u6001\u6CA1\u6709\u8FB9\u6846 \u2014\u2014 \u4E0E `.tita-cardRow` \u540C\u4E00\u4E2A\u7406\u7531\uFF1A\u4E00\u5C4F\u91CC\u5341\u6765\u4E2A\n * \u63CF\u8FB9\u76D2\u5B50\u4F1A\u53D8\u6210\u300C\u6846\u5957\u6846\u300D\uFF0C\u800C\u8FD9\u91CC\u95EE\u7684\u662F\u300C\u5B83\u8DDF\u8C01\u6709\u5173\u300D\u3002hover / \u805A\u7126\u624D\u663E\u8FB9\u6846\u4E0E\u6D45\u5E95\uFF0C\n * \u6240\u4EE5\u5B83\u8BFB\u8D77\u6765\u662F\u4E00\u4EFD\u5217\u8868\uFF0C\u4E0D\u662F\u4E00\u5806\u5361\u7247\u3002\n *\n * \u5206\u7EC4\u6807\u7B7E\uFF08\u300C\u5B83\u5F15\u7528\u300D/\u300C\u5F15\u7528\u5B83\u300D\uFF09\u6BD4\u526F\u6807\u9898\u66F4\u8F7B\uFF1A\u5B83\u4EEC\u53EA\u56DE\u7B54\u65B9\u5411\uFF0C\u4E0D\u662F\u5185\u5BB9\u3002\n */\n/*\n * \u6765\u6E90\u53BB\u5411\u56FE\uFF082026-10-01 \u63D0\u51FA\uFF0C2026-10-02 \u843D\u5730\u6210 AntV G6 \u753B\u5E03\uFF09\u3002\n *\n * \u4E09\u5217**\u4ECE\u5DE6\u5F80\u53F3**\u8BFB\uFF1A\u6765\u6E90 \xB7 \u5F15\u7528\u5B83 \u2192 \u672C\u5361 \u2192 \u53BB\u5411 \xB7 \u5B83\u5F15\u7528\uFF1B\u7A7A\u6389\u7684\u90A3\u4E00\u5217\u4F1A\u88AB\u6536\u6389\uFF0C\n * \u6574\u5757\u5185\u5BB9\u5728\u753B\u5E03\u4E2D\u95F4\uFF08`layoutRelated`\uFF09\u3002canvas \u7684\u5E95\u8272\u3001\u8FDE\u7EBF\u3001\u5706\u70B9\u3001\u8FB9\u4E0A\u7684\u5B57\u90FD\u5728\u7EC4\u4EF6\u91CC\n * \uFF08canvas \u8BA4\u4E0D\u51FA CSS \u53D8\u91CF\uFF09\uFF0C\u8FD9\u91CC\u53EA\u7BA1\u753B\u5E03\u8FD9\u4E2A\u6846\u3002\u753B\u5E03\u9AD8\u5EA6\u7531\u5E03\u5C40\u7B97\u51FA\u6765\uFF0C\u5199\u5728\u884C\u5185\u6837\u5F0F\u4E0A\u3002\n *\n * \u4E0B\u9762\u90A3\u6BB5\u56FE\u4F8B\u7684\u6837\u5F0F**\u5DF2\u64A4\u6389**\uFF082026-10-02\uFF09\uFF1A\u5173\u7CFB\u5199\u5728\u8FB9\u4E0A\u4E4B\u540E\uFF0C\u56FE\u4F8B\u662F\u540C\u4E00\u4EF6\u4E8B\u8BF4\u7B2C\u4E8C\u904D\u3002\n */\n.tita-relatedGraphBox { position: relative; overflow: auto; border: 1px solid var(--tita-line); border-radius: 10px; background: var(--tita-surface); }\n.tita-relatedGraphCanvas { min-width: 100%; }\n\n/* \u77E5\u8BC6\u5E93\u6587\u6863\u8BE6\u60C5\uFF1A\u8BE5\u6587\u6863\u7F16\u8BD1\u51FA\u7684 wiki \u5361\u7247\uFF08\u5BF9\u5E94 WeKnora \u7684\u300C\u5206\u5757\u300D\u5217\u8868\uFF09\u3002\n \u4E24\u5904\u7528\u540C\u4E00\u5957\u7C7B\u540D\uFF1Awiki \u680F\u7684\u5361\u7247\u5217\u8868\uFF0C\u4EE5\u53CA\u539F\u6587\u62BD\u5C49\u91CC\u7684\u300C\u7F16\u8BD1\u4EA7\u7269\u300D\u5217\u8868\u3002 */\n.tita-cardList { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 4px; }\n/*\n * **\u4E00\u6761\u5217\u8868\uFF0C\u4E0D\u662F\u4E00\u5806\u5361\u7247**\uFF080042\uFF09\u3002\n *\n * 0042 \u4E4B\u524D\u6BCF\u4E00\u884C\u90FD\u6709\u4E00\u5708\u5E38\u9A7B\u8FB9\u6846 + \u5706\u89D2\uFF0C\u5916\u9762\u8FD8\u5957\u7740\u4E00\u5C42 `Card`\uFF08`.tita-kbCard` \u4E5F\u6709\n * \u8FB9\u6846\uFF09\u2014\u2014 3 \u5F20\u5361\u7247\u5C31\u662F 3 \u4E2A\u6846\u3001\u884C\u4E0E\u884C\u4E4B\u95F4\u53C8\u5404\u753B\u4E00\u5708\uFF0C\u770B\u5230\u7684\u662F\u300C\u6846\u5957\u6846\u300D\u3002\n * \u73B0\u5728\u7167 `.tita-kbDocRow` \u7684\u505A\u6CD5\uFF1A**\u5E38\u6001\u8FB9\u6846\u900F\u660E**\uFF0Chover \u624D\u663E\u8FB9\u6846 + \u6D45\u5E95\u3002\n * \u987A\u5E26\u4FEE\u6389\u539F\u6765\u7684\u7A7A\u8F6C\u89C4\u5219\uFF1A`\uFF1Ahover` \u7ED9\u7684\u53D6\u503C\u4E0E\u5E38\u6001\u5B8C\u5168\u76F8\u540C\uFF0C\u7B49\u4E8E\u6CA1\u6709\u53CD\u9988\u3002\n */\n.tita-cardRow { display: grid; min-width: 0; gap: 4px; border: 1px solid transparent; border-radius: 8px; padding: 6px 8px; }\n.tita-cardRowHead { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 6px; }\n.tita-cardRowTitle { min-width: 0; overflow: hidden; color: var(--tita-ink); font-size: 11.5px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }\n.tita-cardRowCoordinate { min-width: 0; overflow: hidden; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }\n/* \u6458\u8981\u53EA\u51FA\u73B0\u5728**\u62BD\u5C49\u91CC**\u90A3\u4EFD\u5217\u8868\uFF08\u90A3\u4E00\u5C4F\u662F\u9010\u6761\u6838\u5BF9\u7684\uFF0C\u4E0D\u662F\u626B\u7684\uFF09\u3002 */\n.tita-cardRowText { margin: 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; overflow-wrap: anywhere; }\n/* 0025\uFF1A\u5361\u7247\u884C\u53D8\u6210\u53EF\u70B9\u5165\u53E3\uFF08\u70B9\u5F00\u770B\u5185\u5BB9\u4E0E\u7248\u672C\uFF09\u3002\u6309\u94AE\u8981\u62B9\u6389\u6D4F\u89C8\u5668\u9ED8\u8BA4\u5916\u89C2\uFF0C\n \u540C\u65F6\u4FDD\u7559 `.tita-cardRow` \u7684\u7F51\u683C\u6392\u7248 \u2014\u2014 \u5426\u5219\u6587\u5B57\u4F1A\u6389\u5230\u6309\u94AE\u9ED8\u8BA4\u7684\u5C45\u4E2D\u6837\u5F0F\u91CC\u3002 */\n.tita-cardRowMain { display: grid; width: 100%; gap: 3px; border: 0; background: none; padding: 0; color: inherit; font: inherit; text-align: left; cursor: pointer; }\n/*\n * \u5361\u7247\u884C\u662F**\u4E09\u884C\uFF0C\u5206\u5DE5\u5199\u6B7B**\uFF1A\n * \u7B2C\u4E00\u884C\u662F\u6807\u9898 \u2014\u2014 \u56DE\u7B54\u300C\u8FD9\u662F\u54EA\u4E00\u5F20\u300D\uFF1B\n * \u7B2C\u4E8C\u884C\u662F\u5750\u6807 \u2014\u2014 \u56DE\u7B54\u300C\u5C5E\u4E8E\u54EA\u4E2A\u5BF9\u8C61 / \u573A\u666F / \u52A8\u4F5C\u300D\uFF1B\n * \u7B2C\u4E09\u884C\u662F\u8FD9\u5F20\u5361\u7247\u7684\u4E8B\u5B9E \u2014\u2014 \u72B6\u6001 / review / \u95EE\u9898\u70B9 / \u66F4\u65B0\u65F6\u95F4\u3002\n *\n * \u4E3A\u4EC0\u4E48\u4E0D\u662F\u4E00\u884C\uFF1A\u90A3\u4E00\u884C\u539F\u6765\u585E\u4E86\u4E03\u6837\u4E1C\u897F\uFF08\u72B6\u6001\u3001\u6807\u9898\u3001\u4E09\u679A\u5FBD\u6807\u3001\u65F6\u95F4\uFF09\uFF0C\u9760\n * `flex-wrap` \u6536\u5C3E\u3002\u7A84\u680F\uFF08380\u2013420px\uFF09\u4E0B\u5B83\u4F1A\u6298\u6210\u4E09\u884C\uFF0C\u800C\u6298\u5728\u54EA\u91CC\u53D6\u51B3\u4E8E\u6807\u9898\u6709\u591A\u957F \u2014\u2014\n * \u540C\u4E00\u4EFD\u5217\u8868\u91CC\u6BCF\u5F20\u5361\u7247\u7684\u9AD8\u5EA6\u90FD\u4E0D\u4E00\u6837\uFF0C\u626B\u7684\u65F6\u5019\u773C\u775B\u6CA1\u6709\u843D\u70B9\u3002\u5206\u6210\u4E09\u884C\u4E4B\u540E\uFF0C\u6807\u9898\u3001\u5750\u6807\n * \u548C\u72B6\u6001\u4E8B\u5B9E\u5404\u6709\u81EA\u5DF1\u7684\u9605\u8BFB\u4F4D\u7F6E\u3002\n *\n * \u7B2C\u4E09\u884C**\u53EA\u6709\u4E00\u4E2A\u9605\u8BFB\u65B9\u5411**\uFF1A\u6240\u6709\u5B57\u6BB5\u5DE6\u5BF9\u9F50\uFF0C\u65E5\u671F\u4E5F\u8DDF\u7740\u8D70\u3002\n */\n.tita-cardRowMeta { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 10.5px; }\n/* \u5B57\u6BB5\u4E4B\u95F4\u7684\u5206\u9694\u70B9\u3002\u5B83\u662F\u6392\u7248\uFF0C\u4E0D\u662F\u5185\u5BB9\u3002 */\n.tita-cardRowSep { color: var(--tita-line-strong); }\n/*\n * \u72B6\u6001\uFF1A\u4E00\u4E2A\u5706\u70B9 + \u4E24\u4E2A\u5B57\u3002\n *\n * \u6B64\u524D\u5B83\u662F\u4E00\u679A 23px \u9AD8\u300111px/650 \u7684\u82F1\u6587\u80F6\u56CA\uFF08`unreviewed`\uFF09\u2014\u2014 \u6BD4 11.5px \u7684\u6807\u9898\u8FD8\u91CD\uFF0C\n * \u800C\u300C\u6CA1\u4EBA\u770B\u8FC7\u300D\u5176\u5B9E\u662F\u8FD9\u4E00\u884C\u91CC\u6700\u4E0D\u9700\u8981\u7ACB\u523B\u8BFB\u7684\u4E8B\u5B9E\u3002\u73B0\u5728\u5706\u70B9\u627F\u62C5\u989C\u8272\u3001\u6587\u5B57\u627F\u62C5\u542B\u4E49\uFF0C\n * \u91CD\u91CF\u4EA4\u8FD8\u7ED9\u6807\u9898\u3002\u72B6\u6001\u503C\u672C\u8EAB\u662F schema \u91CC\u7684\u82F1\u6587 id\uFF0C\u4EBA\u8BDD\u6620\u5C04\u5728 `WikiCardRow.tsx`\u3002\n */\n/* \u72B6\u6001\u7684**\u6807\u7B7E**\uFF08\u4E00\u4E2A\u5706\u70B9 + \u4E00\u884C\u5C0F\u5B57\uFF09\u3002\u5361\u7247\u5217\u8868\u4E0E\u77E5\u8BC6\u5217\u8868\u5171\u7528\u4E00\u4EFD\u5B9A\u4E49\uFF1A\u4E24\u5904\u95EE\u7684\u662F\u540C\u4E00\u4EF6\u4E8B\n \uFF08\u8FD9\u4E1C\u897F\u73B0\u5728\u7B97\u4E0D\u7B97\u6570\uFF09\uFF0C\u5916\u89C2\u5C31\u4E0D\u8BE5\u6709\u4E24\u5957\u3002 */\n.tita-statusTag { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.5; white-space: nowrap; }\n.tita-statusDot { display: block; width: 5px; height: 5px; flex: 0 0 auto; border-radius: 999px; background: var(--tita-ink-faint); }\n.tita-statusTag[data-tone="ok"] { color: var(--tita-tone-green); }\n.tita-statusTag[data-tone="ok"] .tita-statusDot { background: var(--tita-tone-green); }\n.tita-statusTag[data-tone="warn"] { color: var(--tita-tone-amber); }\n.tita-statusTag[data-tone="warn"] .tita-statusDot { background: var(--tita-tone-amber); }\n.tita-statusTag[data-tone="off"] { color: var(--tita-ink-faint); }\n.tita-statusTag[data-tone="off"] .tita-statusDot { background: var(--tita-line-strong); }\n/*\n * \u300C\u8981\u4F60\u52A8\u624B\u300D\u7684\u4E24\u6837\uFF1A\u672A\u590D\u6838\u72B6\u6001\u4E0E\u88AB\u6807\u51FA\u6765\u7684\u5F02\u5E38\u70B9\u3002\n * \u5B83\u4EEC\u662F\u8FD9\u4E00\u884C\u91CC\u552F\u4E00\u503C\u5F97\u7528\u989C\u8272\u558A\u4E00\u58F0\u7684\u4FE1\u606F\uFF0C\u5176\u4F59\u90FD\u662F\u80CC\u666F\u4E8B\u5B9E\u3002\n */\n.tita-cardRowSignal { color: var(--tita-tone-amber); font-weight: 650; white-space: nowrap; }\n/* \u65E5\u671F\u8DDF\u7740 meta \u5DE6\u5BF9\u9F50\uFF08\u4E0D\u518D `margin-left: auto`\uFF09\uFF1B\u7B49\u5BBD\u6570\u5B57\uFF0C\u626B\u7684\u65F6\u5019\u4E0D\u4F1A\u8DF3\u3002 */\n.tita-cardRowTime { color: var(--tita-ink-faint); font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-cardRow:hover { border-color: var(--tita-line); background: var(--tita-surface-muted); }\n.tita-cardRow:focus-within { border-color: var(--tita-primary-line); background: var(--tita-surface-muted); }\n\n/* \u77E5\u8BC6\u5E93\u7684\u6B65\u9AA4\u8F68\uFF1A**\u4E00\u6761\u6D41\u6C34\u7EBF\uFF0C\u4E0D\u662F\u4E00\u6392\u5E76\u5217\u7684 tab**\u3002\n \u6536\u5F55 \u2192 \u7F16\u8BD1 \u2192 \u5173\u8054 \u2192 \u68C0\u7D22 \u2192 \u7CBE\u6392\uFF0C\u6B65\u4E0E\u6B65\u4E4B\u95F4\u7528\u7BAD\u5934\u8FDE\u8D77\u6765 \u2014\u2014 \u65B9\u5411\u672C\u8EAB\u5C31\u662F\u4FE1\u606F\n \uFF08\u5199\u5165\u4FA7\u5728\u5DE6\u3001\u8BFB\u53D6\u4FA7\u5728\u53F3\uFF09\uFF0C\u800C\u4E00\u6392\u7B49\u5BBD\u6309\u94AE\u628A\u5B83\u62B9\u6389\u4E86\u3002\n \u7A84\u680F\u4E0B\u6362\u884C\u800C\u4E0D\u662F\u6A2A\u5411\u6EDA\u52A8\uFF1A\u85CF\u8D77\u6765\u7684\u90A3\u4E24\u6B65\u7B49\u4E8E\u4E0D\u5B58\u5728\u3002 */\n.tita-kbSteps { display: flex; min-width: 0; flex-wrap: wrap; align-items: stretch; gap: 4px; }\n.tita-kbStepGroup { display: flex; min-width: 0; flex: 1 1 122px; align-items: stretch; gap: 4px; }\n.tita-kbStepGroup .tita-kbStep { flex: 1 1 122px; }\n/* \u6B65\u9AA4\u8F68\u4E0A\u7684\u7BAD\u5934\u3002**\u5B83\u662F\u65B9\u5411\uFF0C\u4E0D\u662F\u88C5\u9970** \u2014\u2014 \u8FD9\u6761\u8F68\u8981\u56DE\u7B54\u7684\u662F\u300C\u8C01\u63A5\u8C01\u300D\uFF0C\u6240\u4EE5\u7BAD\u5934\u5F97\u770B\u5F97\u89C1\u3002\n \u6B64\u524D\u662F 13px \u7684 `ChevronRight` + `--tita-line-strong`\uFF08#d0d5dd\uFF09\uFF1A\u6BD4\u5361\u7247\u81EA\u5DF1\u7684\u63CF\u8FB9\n \uFF08`--tita-line`\uFF0C#e4e7ec\uFF09\u6DF1\u4E0D\u4E86\u591A\u5C11\uFF0C\u53C8\u6CA1\u6709\u7BAD\u6746\uFF0C\u5728\u4E24\u4E2A\u72EC\u7ACB\u65B9\u5757\u4E4B\u95F4\u8BFB\u8D77\u6765\u50CF\u4E00\u679A\u5206\u9694\u7B26\u3002\n \u73B0\u5728\u6362\u6210 `ArrowRight` 16px + `--tita-ink-faint`\uFF08#667085\uFF09\uFF1A\u4E0E\u6B65\u9AA4\u7684\u56FE\u6807\u540C\u4E00\u7EA7\n \uFF08\u540D\u5B57\u662F `--tita-ink`\uFF0C\u56FE\u6807\u662F `--tita-ink-faint`\uFF09\uFF0C\u65B9\u5411\u4E00\u773C\u770B\u5F97\u51FA\uFF0C\u4ECD\u4E0D\u62A2\u6B65\u9AA4\u672C\u8EAB\u7684\u6CE8\u610F\u529B\u3002\n \u77E5\u8BC6\u5E93\u90A3\u6761\u8F68\u4E0E\u53EC\u56DE\u90A3\u6761\u8F68\u5171\u7528\u8FD9\u4E2A\u7C7B\uFF1B\u5B83\u662F\u6309\u94AE\u4E4B\u95F4\u7684\u72EC\u7ACB flex item\uFF0C\u4E0D\u5C5E\u4E8E\u4EFB\u4F55\u8282\u70B9\u3002 */\n.tita-kbStepArrow { display: inline-flex; flex: 0 0 auto; align-items: center; align-self: center; color: var(--tita-ink-faint); }\n.tita-kbStep {\n display: grid;\n /* `box-sizing` \u663E\u5F0F\u5199\u6B7B\uFF1A\u8FD9\u4E00\u6B65\u7684\u57FA\u51C6\u5BBD\u662F 132px\uFF0C\u800C padding + border \u6709 20px\u3002\n content-box \u4E0B\u5916\u5C42\u53D8\u5BBD\uFF0C\u6B65\u9AA4\u8F68\u4F1A\u8FC7\u65E9\u6362\u884C\uFF1B\u8FDE\u63A5\u7BAD\u5934\u5355\u72EC\u5360\u4F4D\uFF0C\u4E0D\u80FD\u88AB\u8282\u70B9\u5185\u5BB9\u541E\u6389\u3002 */\n box-sizing: border-box;\n min-width: 0;\n /* \u57FA\u51C6\u5BBD 122px\u3002**\u5B83\u53EA\u662F\u4E0B\u9650\uFF0C\u4E0D\u662F\u300C\u4E00\u884C\u653E\u51E0\u4E2A\u300D\u7684\u627F\u8BFA** \u2014\u2014 \u5BBF\u4E3B\u4FA7\u680F\u53EA\u6709\n 380\u2013420px\uFF0C\u800C\u56DB\u4E2A\u6B65\u9AA4\u6BCF\u4E2A\u90FD\u8981\u88C5\u4E0B\u300C\u540D\u5B57 + \u52A8\u4F5C + \u8BA1\u6570\u300D\uFF0C\u4E24\u884C\u662F\u5E38\u6001\u3002\n 122px \u8BA9\u5B83\u5728\u80FD\u6392\u4E0B\u4E09\u4E2A\u65F6\u6392\u4E09\u4E2A\uFF0C\u6392\u4E0D\u4E0B\u5C31\u4E24\u4E2A\u4E00\u884C\uFF1B`flex-grow: 1` \u518D\u628A\n \u6BCF\u884C\u7684\u5269\u4F59\u5BBD\u5EA6\u644A\u7ED9\u8FD9\u4E00\u884C\u7684\u683C\u5B50\u3002\n \u6362\u884C\u672C\u8EAB\u4E0D\u6784\u6210\u7F3A\u9677\uFF1B\u8FDE\u63A5\u7BAD\u5934\u662F\u72EC\u7ACB\u5143\u7D20\uFF0C\u59CB\u7EC8\u4F4D\u4E8E\u76F8\u90BB\u8282\u70B9\u4E4B\u95F4\u3002 */\n flex: 1 1 122px;\n gap: 2px;\n border: 1px solid var(--tita-line);\n border-radius: 9px;\n background: var(--tita-surface);\n padding: 7px 9px;\n color: inherit;\n font: inherit;\n text-align: left;\n cursor: pointer;\n transition: border-color 140ms ease, background 140ms ease;\n}\n.tita-kbStep:hover { border-color: var(--tita-line-strong); background: var(--tita-surface-muted); }\n.tita-kbStep:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n/* \u5F53\u524D\u6B65\uFF1A\u4E0D\u662F\u300C\u5DF2\u9009\u4E2D\u300D\u7684\u9AD8\u4EAE\uFF0C\u800C\u662F\u300C\u4F60\u73B0\u5728\u7AD9\u5728\u8FD9\u4E00\u6BB5\u7684\u54EA\u4E00\u683C\u300D\u3002\n \u7528\u5DE6\u4FA7 3px \u5F3A\u8C03\u6761\u4E4B\u5916\u7684\u6574\u5708\u63CF\u8FB9 + \u6D45\u5E95\u6765\u8868\u8FBE\uFF0C\u907F\u514D\u548C\u5361\u7247\u5957\u5361\u7247\u6DF7\u5728\u4E00\u8D77\u3002 */\n.tita-kbStepOn { border-color: var(--tita-primary); background: var(--tita-primary-soft); box-shadow: inset 0 0 0 1px var(--tita-primary); }\n.tita-kbStepTop { display: flex; min-width: 0; align-items: center; gap: 5px; color: var(--tita-ink); }\n.tita-kbStepTop svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-kbStepOn .tita-kbStepTop svg { color: var(--tita-primary); }\n.tita-kbStepTop b { min-width: 0; overflow: hidden; font-size: 12px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }\n/* \u52A8\u4F5C\u8BCD\uFF1A**\u7B2C\u4E8C\u884C\u7B2C\u4E00\u4E2A**\uFF0C\u4E0E\u8BA1\u6570\u540C\u4E00\u884C\u3002\u5B83\u4E0D\u7F29\uFF08`0 0 auto`\uFF09\u2014\u2014 \u300C\u62BD\u53D6 \xB7 \u5F52\u4E00\u300D\n \u7F29\u6210\u4E00\u4E2A\u5B57\u5C31\u6CA1\u6709\u610F\u4E49\u4E86\uFF1B\u8BA9\u4F4D\u7684\u662F\u53F3\u8FB9\u90A3\u53E5\u8BF4\u660E\u3002 */\n.tita-kbStepVerb { flex: 0 0 auto; border-radius: 4px; background: var(--tita-surface-muted); color: var(--tita-ink-muted); padding: 0 4px; font-size: 9.5px; font-style: normal; font-weight: 650; white-space: nowrap; }\n.tita-kbStepOn .tita-kbStepVerb { background: var(--tita-primary-soft); color: var(--tita-primary); }\n/* \u7B2C\u4E8C\u884C\uFF1A\u8FD9\u4E00\u6BB5\u7684\u771F\u5B9E\u8BA1\u6570\uFF08\u9192\u76EE\uFF09+ \u5B83\u505A\u4EC0\u4E48\uFF08\u6B21\u8981\uFF0C\u653E\u4E0D\u4E0B\u5C31\u7701\u7565\uFF09\u3002 */\n.tita-kbStepFacts { display: flex; min-width: 0; align-items: baseline; gap: 5px; overflow: hidden; }\n.tita-kbStepValue { flex: 0 0 auto; color: var(--tita-ink); font-size: 10px; font-weight: 650; white-space: nowrap; font-variant-numeric: tabular-nums; }\n/* \u8BF4\u660E\u524D\u9762\u52A0\u4E00\u679A\u5206\u9694\u70B9\uFF1A`topK 10` \u548C `hybrid \u4E09\u8DEF\u878D\u5408` \u76F4\u63A5\u76F8\u90BB\u4F1A\u8BFB\u6210 `10hybrid`\u3002 */\n.tita-kbStepNote { flex: 1 1 0; min-width: 0; overflow: hidden; color: var(--tita-ink-faint); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbStepNote::before { content: \'\xB7\'; margin-right: 5px; color: var(--tita-line-strong); }\n\n/* \u77E5\u8BC6\u56FE\u8C31\u5206\u680F\u7684\u8282\u70B9\u6E05\u5355\u6837\u5F0F\uFF08`.tita-graphList` \u7B49\u56DB\u6761\uFF09\u968F\u90A3\u4E00\u680F\u64A4\u6389\uFF082026-10-05\uFF09\uFF1A\n \u5B83\u81EA 0027 \u8D77\u5C31\u6CA1\u6709\u4F7F\u7528\u8005\u4E86 \u2014\u2014 \u6E05\u5355\u65E9\u5C31\u6362\u6210\u4E86\u753B\u5E03\uFF0C\u800C\u753B\u5E03\u8FD9\u4E00\u7248\u4E5F\u4E00\u8D77\u5220\u4E86\u3002 */\n\n/* \u91CD\u6392\u5206\u680F\uFF1A\u4EA4\u4ED8\u7ED9 Agent Context \u7684 topN\u3002\u5E8F\u53F7\u662F\u5B83\u7684\u9605\u8BFB\u987A\u5E8F\uFF0C\u6240\u4EE5\u7528\u7B49\u5BBD\u6570\u5B57\u5217\u3002 */\n\n/* ======================================================================\n \u53F0\u8D26\u4E16\u754C\u7684\u57FA\u7EBF\uFF08docs/issue/0026\uFF09\n ----------------------------------------------------------------------\n \u8FD9\u4E00\u6BB5\u7BA1\u7684\u662F\u300C\u6211\u4EEC\u6CA1\u6709\u753B\u3001\u4F46\u5B83\u7167\u6837\u5728\u4EA4\u4ED8\u8BBE\u8BA1\u300D\u7684\u90A3\u4E9B\u90E8\u5206\uFF1A\u9009\u533A\u3001\u5149\u6807\u3001\n \u6EDA\u52A8\u6761\u3001\u7126\u70B9\u73AF\u3001\u4E0B\u5212\u7EBF\u504F\u79FB\u3001\u6570\u5B57\u7684\u5B57\u5F62\u3002\u5B83\u4EEC\u5168\u90E8\u6765\u81EA\u6D4F\u89C8\u5668\u9ED8\u8BA4\u503C\uFF0C\u5C5E\u4E8E\u4EFB\u4F55\n \u8BBE\u8BA1\u7CFB\u7EDF\u4E4B\u5916\u2014\u2014\u4E5F\u6B63\u56E0\u5982\u6B64\uFF0C\u5B83\u4EEC\u662F\u300C\u8FD9\u4E2A\u754C\u9762\u88AB\u5EFA\u9020\u8FC7\u300D\u6700\u4FBF\u5B9C\u7684\u8BC1\u636E\u3002\n ====================================================================== */\n\n/* \u6807\u9898\u4E0E\u6B63\u6587\u540C\u4E00\u4E2A\u65E0\u886C\u7EBF\u65CF\uFF0C\u5C42\u7EA7\u53EA\u9760\u5B57\u91CD\u4E0E\u5B57\u53F7 \u2014\u2014 \u4E13\u4E1A\u5DE5\u5177\u754C\u9762\u91CC\u6CA1\u6709\u7B2C\u4E8C\u79CD\u5B57\u4F53\u3002\n \uFF080026 \u66FE\u7ECF\u5728\u8FD9\u91CC\u4E0A\u5B8B\u4F53\uFF0C\u90A3\u662F\u628A\u300C\u53F0\u8D26\u300D\u505A\u6210\u4E86\u300C\u6587\u5B66\u300D\u3002\uFF09 */\n.tita-panel h1,\n.tita-panel h2,\n.tita-panel h3,\n.tita-panel h4 { font-family: var(--font-tita); font-weight: 700; letter-spacing: 0; }\n\n/* \u6807\u9898\u91CC\u7684\u56FE\u6807\uFF1Aicon \u76F4\u63A5\u8FDB\u6807\u9898\uFF0C\u4E0D\u518D\u5728\u6807\u9898\u4E0A\u65B9\u53E6\u8D77\u4E00\u4E2A\u82F1\u6587\u5C0F\u6807\u7B7E\u3002\n kicker \u4E0D\u589E\u52A0\u4FE1\u606F\uFF0C\u53EA\u589E\u52A0\u4E00\u5C42\u8981\u8BFB\u7684\u4E1C\u897F \u2014\u2014 \u4E00\u4E2A\u4E2D\u6587\u6807\u9898\u4E0A\u9762\u9876\u4E00\u884C\n \u300CSOURCE RAW\u300D\u300CINGEST SETTINGS\u300D\uFF0C\u8BFB\u8005\u5F97\u5148\u8DF3\u8FC7\u5B83\u624D\u77E5\u9053\u81EA\u5DF1\u5728\u770B\u4EC0\u4E48\u3002 */\n.tita-panel h2 > svg,\n.tita-panel h3 > svg { margin-right: 6px; vertical-align: -2px; color: var(--tita-ink-faint); }\n\n/* \u6570\u5B57\u3001id\u3001\u7248\u672C\u53F7\uFF1A\u7B49\u5BBD + tabular\u3002\u5B83\u4EEC\u662F**\u6D4B\u91CF\u503C**\uFF0C\u4E0D\u662F"\u6280\u672F\u611F"\u7684\u88C5\u9970\uFF0C\n \u6240\u4EE5\u5217\u4E0E\u5217\u4E4B\u95F4\u7684\u6570\u5B57\u5FC5\u987B\u5BF9\u9F50\u3002 */\n.tita-kbCode,\n.tita-panel code,\n.tita-hitScore,\n.tita-archPanelRecords dd,\n.tita-infoList strong,\n.tita-metricCopy strong,\n.tita-archPanelMetric b,\n.tita-archBarCounts { font-variant-numeric: tabular-nums; }\n.tita-panel code, .tita-kbCode { font-family: var(--font-tita-mono); }\n\n/* \u9009\u533A\uFF1A\u7EB8\u4E0A\u7684\u58A8\u3002\u9ED8\u8BA4\u7684\u6D4F\u89C8\u5668\u84DD\u4F1A\u628A\u53F0\u8D26\u7684\u6696\u5E95\u6253\u7A7F\u3002 */\n.tita-panel ::selection { background: var(--tita-primary-soft); color: var(--tita-ink); }\n\n/* \u5149\u6807\u7528\u58A8\u8272\uFF0C\u4E0D\u7528\u6731\u7EA2\u2014\u2014\u6731\u7EA2\u5728\u8FD9\u4E2A\u4E16\u754C\u91CC\u53EA\u6709\u4E00\u4E2A\u542B\u4E49\uFF08\u6539\u52A8 / \u5F02\u5E38 / \u5F85\u5B9E\u73B0\uFF09\uFF0C\n \u5149\u6807\u4E0D\u662F"\u6539\u52A8"\u3002 */\n.tita-panel input,\n.tita-panel textarea { caret-color: var(--tita-ink); }\n\n/* \u7126\u70B9\u73AF\uFF1A\u58A8\u8272\u5B9E\u7EBF + \u504F\u79FB\uFF0C\u50CF\u5728\u7EB8\u4E0A\u6846\u51FA\u8FD9\u4E00\u680F\u3002\u4E0D\u9760\u8272\u76F8\uFF0C\u4E5F\u5C31\u4E0D\u548C\u6731\u7EA2\u7684\u8BED\u4E49\u6253\u67B6\u3002\n 0035\uFF1A\u62BD\u5C49\u8D70 Portal\uFF0C**\u4E0D\u5728 `.tita-panel` \u91CC** \u2014\u2014 \u53EA\u5199 `.tita-panel :focus-visible`\n \u4F1A\u8BA9\u6D6E\u5C42\u9000\u56DE\u6D4F\u89C8\u5668\u9ED8\u8BA4\u7684\u7126\u70B9\u73AF\uFF08\u4E00\u6761\u4E0D\u5C5E\u4E8E\u8FD9\u5957\u914D\u8272\u7684\u84DD\u8272 `auto` \u63CF\u8FB9\uFF09\uFF0C\u800C\u5B83\u6070\u597D\n \u662F\u6253\u5F00\u9884\u89C8\u62BD\u5C49\u65F6\u7B2C\u4E00\u4E2A\u88AB\u81EA\u52A8\u805A\u7126\u7684\u5730\u65B9\uFF08\u9884\u89C8\u5185\u5BB9\u7684 `<summary>`\uFF09\u3002\u6240\u4EE5\u6D6E\u5C42\n \u663E\u5F0F\u5171\u7528\u540C\u4E00\u6761\u89C4\u5219\u3002\n\n 2026-10-02\uFF1A\u7956\u5148\u90A3\u4E00\u8282\u6539\u6210 `:where()`\u3002\u8FD9\u6761\u89C4\u5219\u662F**\u515C\u5E95**\uFF08\u7ED9\u6CA1\u6709\u81EA\u5DF1\u58F0\u660E\u7126\u70B9\u6001\u7684\n \u5143\u7D20\u4E00\u4E2A\u73AF\uFF09\uFF0C\u800C\u5B83\u7684\u7279\u5F02\u6027\u4E00\u76F4\u662F (0,2,0)\uFF0C\u4E0E\u8BBE\u8BA1\u7CFB\u7EDF\u91CC\u63A7\u4EF6\u81EA\u5DF1\u7684\n `.focus-visible\\:outline-\u2026:focus-visible` **\u6253\u6210\u5E73\u624B** \u2014\u2014 \u6253\u6210\u5E73\u624B\u5C31\u7531\u987A\u5E8F\u51B3\u5B9A\uFF0C\n \u800C\u63D2\u4EF6\u7684\u6837\u5F0F\u8868\u5728\u5171\u4EAB\u6837\u5F0F\u8868**\u4E4B\u540E**\u52A0\u8F7D\uFF0C\u4E8E\u662F\u515C\u5E95\u53CD\u800C\u8D62\uFF1A\n\n - \u8F93\u5165\u6846\u7684\u7126\u70B9\u73AF\u4ECE\u300C3px \u4E3B\u8272\u6D45\u6655\u300D\u53D8\u6210\u300C2px \u58A8\u8272\u5B9E\u7EBF\u300D\uFF0C\u548C\u5B83\u81EA\u5DF1\u7684\n `border-tita-primary` \u53E0\u6210**\u4E24\u9053\u4E0D\u540C\u989C\u8272\u7684\u6846**\uFF08\u5B9E\u673A\u53CD\u9988\u7684\u539F\u8BDD\u662F\u300C\u592A\u4E11\u300D\uFF09\uFF1B\n - \u8FDE\u5706\u89D2\u90FD\u88AB\u8FD9\u6761\u89C4\u5219\u6309 4px \u6539\u6389\uFF0C\u800C\u8F93\u5165\u6846\u81EA\u5DF1\u662F 7px \u2014\u2014 \u805A\u7126\u7684\u4E00\u77AC\u95F4\u6846\u89D2\u4F1A\u7F29\u4E00\u4E0B\u3002\n\n `:where()` \u7684\u6743\u91CD\u662F 0\uFF0C\u4E8E\u662F\u8FD9\u6761\u89C4\u5219\u9000\u56DE\u5B83\u8BE5\u6709\u7684\u4F4D\u7F6E\uFF1A\u63A7\u4EF6\u58F0\u660E\u4E86\u5C31\u7528\u63A7\u4EF6\u7684\uFF0C\n \u6CA1\u58F0\u660E\u5C31\u7528\u8FD9\u6761\u58A8\u8272\u73AF\u3002 */\n:where(.tita-panel) :focus-visible,\n:where(.tita-drawer) :focus-visible,\n:where(.tita-settingsDrawer) :focus-visible { outline: 2px solid var(--tita-ink); outline-offset: 2px; border-radius: 4px; }\n\n/* \u94FE\u63A5\uFF1A\u4E0B\u5212\u7EBF\u504F\u79FB\u4E0E\u7C97\u7EC6\u4E5F\u5C5E\u4E8E\u8BBE\u8BA1\u7CFB\u7EDF\u7684\u4E00\u90E8\u5206\u3002 */\n.tita-panel a { text-underline-offset: 2px; text-decoration-thickness: 1px; }\n\n/* \u6EDA\u52A8\u6761\uFF1A\u63D2\u4EF6\u81EA\u5DF1\u62E5\u6709\u6EDA\u52A8\u533A\uFF08`.tita-content` \u662F\u552F\u4E00\u7EB5\u5411\u6EDA\u52A8\u6761\uFF09\uFF0C\n \u6240\u4EE5\u5B83\u5FC5\u987B\u4ECE\u8C03\u8272\u677F\u4E0A\u8272\uFF0C\u5426\u5219\u6574\u5757\u7EB8\u5E95\u4F1A\u8D34\u7740\u4E00\u6839\u7CFB\u7EDF\u7070\u6761\u3002 */\n.tita-panel * { scrollbar-width: thin; scrollbar-color: var(--tita-line-strong) transparent; }\n.tita-panel ::-webkit-scrollbar { width: 10px; height: 10px; }\n.tita-panel ::-webkit-scrollbar-track { background: transparent; }\n.tita-panel ::-webkit-scrollbar-thumb { border: 3px solid transparent; border-radius: 999px; background-clip: content-box; background-color: var(--tita-line-strong); }\n.tita-panel ::-webkit-scrollbar-thumb:hover { background-color: var(--tita-ink-faint); }\n.tita-panel ::-webkit-scrollbar-corner { background: transparent; }\n\n/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n \u667A\u80FD\u5F52\u56E0\u56FE\u8C31 \xB7 \u52A8\u7EBF\u89C6\u89D2\u7684\u6CF3\u9053\u5E26\uFF080021 \xA77.7\uFF09\n\n \u5B83\u53E0\u5728 G6 \u753B\u5E03\u4E0A\uFF0C\u53EA\u8D1F\u8D23\u300C\u8FD9\u4E00\u6BB5\u662F\u4EC0\u4E48\u3001\u8FD9\u4E00\u6BB5\u6709\u51E0\u4E2A\u3001\u54EA\u4E00\u6BB5\u65AD\u5728\u8FD9\u91CC\u300D\u3002\n \u4E24\u6761\u7EA6\u675F\u51B3\u5B9A\u5B83\u5FC5\u987B\u8FD9\u4E48\u5199\uFF1A\n\n 1. **\u6574\u5C42\u4E0D\u5403\u4E8B\u4EF6**\uFF08`pointer-events: none`\uFF0C\xA77.4 \u7B2C 10 \u6761\uFF09\uFF1A\u5E26\u5B50\u53EA\u8D1F\u8D23\u8BFB\uFF0C\n \u547D\u4E2D\u4E00\u5F8B\u843D\u5230\u753B\u5E03\u4E0A\uFF0C\u5426\u5219\u70B9\u8282\u70B9\u3001\u62D6\u753B\u5E03\u90FD\u4F1A\u88AB\u8FD9\u5C42\u541E\u6389\u3002\n 2. **\u5750\u6807\u7531 TS \u7B97**\uFF08`laneLayoutOf` \u7684 `top/left/width/height` \u8D70\u884C\u5185 style\uFF09\uFF1A\n \u8FD9\u91CC\u53EA\u63CF\u8FF0\u300C\u957F\u4EC0\u4E48\u6837\u300D\uFF0C\u4E0D\u63CF\u8FF0\u300C\u6446\u5728\u54EA\u300D\u3002\u540C\u4E00\u4EFD\u51E0\u4F55\u540C\u65F6\u5582\u753B\u5E03\u4E0E\u8FD9\u4E00\u5C42\uFF0C\n \u4E24\u5904\u4E0D\u53EF\u80FD\u5BF9\u4E0D\u4E0A\u3002\n\n \u989C\u8272\u5168\u90E8\u662F `color-mix()` \u6DF7\u51FA\u6765\u7684\uFF0C\u57FA\u5E95\u53D6\u5171\u4EAB\u4EE4\u724C \u2014\u2014 \u4E3B\u9898\u4E00\u6362\uFF0C\u5E26\u5B50\u8DDF\u7740\u8D70\uFF0C\n \u4E0D\u9700\u8981\u7B2C\u4E8C\u4EFD\u989C\u8272\u3002`--tita-band-tint` \u7531 React \u6309\u6BB5\u7ED9\uFF08\u5B9E\u4F8B\u5C42\u504F\u7425\u73C0\uFF0C\u5176\u4F59\u504F\u84DD\uFF09\u3002\n \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 */\n.tita-attrBand {\n position: absolute;\n /* 5% \u662F\u300C\u770B\u5F97\u51FA\u6709\u5206\u533A\u3001\u4F46\u7EDD\u4E0D\u548C\u8282\u70B9\u62A2\u6CE8\u610F\u529B\u300D\u7684\u90A3\u4E00\u6863\uFF1B\u6BB5\u5934\u5E26\u7A0D\u91CD\u4E00\u70B9\uFF089%\uFF09\uFF0C\n \u56E0\u4E3A\u5B83\u662F\u8FD9\u4E00\u6BB5\u552F\u4E00\u7684\u6587\u5B57\u951A\u70B9\u3002 */\n background: color-mix(in srgb, var(--tita-band-tint, var(--tita-tone-blue)) 5%, var(--tita-surface));\n border-radius: 8px;\n}\n.tita-attrBandHeader {\n display: flex;\n width: 100%;\n min-width: 0;\n align-items: center;\n /* \u4E0D\u6362\u884C\uFF1A\u6BB5\u5934\u9AD8 20px\uFF0C\u4E00\u6362\u884C\u5C31\u628A\u6BB5\u540D\u9876\u51FA\u5E26\u5B50\u3002\u653E\u4E0D\u4E0B\u7684\u90E8\u5206\u7531\u5404\u6BB5\u81EA\u5DF1\u7701\u7565\u3002 */\n flex-wrap: nowrap;\n gap: 6px;\n padding: 0 8px;\n background: color-mix(in srgb, var(--tita-band-tint, var(--tita-tone-blue)) 9%, var(--tita-surface));\n border-radius: 8px 8px 0 0;\n}\n/* \u6BB5\u5934\u5DE6\u4FA7\u90A3\u4E00\u5757\uFF08\u6BB5\u540D + \u8BA1\u6570 + \u8BFB\u6CD5\uFF09\u662F\u4E00\u4E2A\u6309\u94AE\uFF1A\u70B9\u5B83\u6536\u8D77 / \u5C55\u5F00\u8FD9\u4E00\u6BB5\u3002\n \u6309\u94AE\u7684\u9ED8\u8BA4\u5916\u89C2\u5FC5\u987B\u663E\u5F0F\u62B9\u6389 \u2014\u2014 \u6CA1\u6709 preflight \u65F6\u5B83\u7684\u5B57\u4F53\u3001\u5B57\u53F7\u3001\u5BF9\u9F50\u3001\u8FB9\u6846\u3001\n \u80CC\u666F\u90FD\u4F1A\u9000\u56DE\u6D4F\u89C8\u5668\u9ED8\u8BA4\u503C\uFF0C\u8868\u73B0\u51FA\u6765\u5C31\u662F\u300C\u6BB5\u5934\u7684\u5B57\u6BD4\u522B\u5904\u5927\u4E00\u53F7\u3001\u8FD8\u5E26\u4E00\u5708\u8FD1\u9ED1\u63CF\u8FB9\u300D\u3002 */\n.tita-attrBandHeadMain {\n display: flex;\n min-width: 0;\n flex: 1 1 auto;\n align-items: center;\n gap: 6px;\n padding: 0;\n border: 0;\n background: transparent;\n font: inherit;\n color: inherit;\n text-align: left;\n cursor: pointer;\n}\n/* \u4E0D\u80FD\u6536\u8D77 / \u5C55\u5F00\u7684\u6BB5\u5934\uFF08\u7A7A\u6BB5\u3001\u88AB\u5207\u9762\u5173\u6389\u7684\u6BB5\u3001\u53EA\u5269\u4E00\u4E2A\u8282\u70B9\u7684\u6BB5\uFF09\uFF1A\u7EAF\u8BFB\u6570\uFF0C\u4E0D\u8BE5\u770B\u8D77\u6765\u80FD\u70B9\u3002 */\n.tita-attrBandHeadMain:disabled { cursor: default; }\n.tita-attrBandHeadMain:not(:disabled):hover .tita-attrBandName { color: var(--tita-primary); }\n.tita-attrBandHeadMain:focus-visible { outline: 2px solid var(--tita-primary); outline-offset: 1px; border-radius: 4px; }\n/* \u2460 \u6BB5\u7684\u300C\u6362\u4E00\u4E2A\u73B0\u8C61\u300D\u5165\u53E3\u3002\u5B83\u662F**\u6362\u4E00\u6761\u52A8\u7EBF**\uFF0C\u4E0D\u662F\u7B5B\u9009 \u2014\u2014 \u6240\u4EE5\u505A\u6210\u6BB5\u5934\u4E0A\u7684\u5C0F\u6309\u94AE\uFF0C\n \u4E0D\u8FDB\u5DE6\u680F\u7684\u7B5B\u9009\u7EC4\uFF08\u90A3\u4F1A\u8BA9\u4EBA\u4EE5\u4E3A\u56FE\u88AB\u88C1\u6389\u4E86\uFF09\u3002 */\n.tita-attrBandPicks { display: flex; flex: 0 0 auto; align-items: center; gap: 4px; white-space: nowrap; }\n.tita-attrBandPicksLabel { color: var(--tita-ink-faint); font-size: 10px; }\n.tita-attrBandPick {\n padding: 1px 5px;\n border: 1px solid var(--tita-line-strong);\n border-radius: 5px;\n background: var(--tita-surface);\n color: var(--tita-ink-muted);\n font-family: var(--tita-mono);\n font-size: 10px;\n line-height: 14px;\n cursor: pointer;\n}\n.tita-attrBandPick:hover { border-color: var(--tita-primary); color: var(--tita-primary); }\n.tita-attrBandPick:focus-visible { outline: 2px solid var(--tita-primary); outline-offset: 1px; }\n/* \u88AB\u6536\u8D77 / \u88AB\u5173\u6389\u7684\u6BB5\uFF1A\u5E26\u5B50\u6C89\u4E0B\u53BB\uFF0C\u4E0E\u300C\u8FD9\u4E00\u6BB5\u662F\u7A7A\u7684\u300D\u533A\u5206\u5F00 \u2014\u2014\n \u7A7A\u6BB5\u4ECD\u7136\u662F\u6B63\u5E38\u5E95\u8272\uFF08\u5B83\u662F\u4E00\u6761\u5F85\u529E\uFF09\uFF0C\u800C\u6536\u8D77\u662F\u7528\u6237\u7684\u9009\u62E9\uFF0C\u89C6\u89C9\u4E0A\u8981\u9000\u5230\u540E\u9762\u3002 */\n.tita-attrBand[data-tita-lane-state=\'collapsed\'],\n.tita-attrBand[data-tita-lane-state=\'off\'] { opacity: .72; }\n/* \u6BB5\u540D\uFF1A\u8FD9\u4E00\u6BB5\u552F\u4E00\u5FC5\u987B\u8BFB\u5230\u7684\u5B57\u300211px / 650 \u8BA9\u5B83\u538B\u5F97\u4F4F\u8282\u70B9\u6807\u9898\uFF0810.5px / 600\uFF09\u3002 */\n.tita-attrBandName { flex: 0 0 auto; white-space: nowrap; color: var(--tita-ink); font-size: 11px; font-weight: 650; letter-spacing: -.01em; }\n/* \u8BA1\u6570\uFF1A\u7B49\u5BBD + \u8868\u683C\u6570\u5B57\uFF0C\u6BB5\u4E0E\u6BB5\u4E4B\u95F4\u626B\u4E00\u773C\u5C31\u80FD\u6BD4\u5927\u5C0F\u3002 */\n.tita-attrBandCount { flex: 0 0 auto; color: var(--tita-ink); font-family: var(--tita-mono); font-size: 11px; font-weight: 700; font-variant-numeric: tabular-nums; }\n.tita-attrBandCountDim { color: var(--tita-ink-faint); font-weight: 500; }\n/* \u6392\u5E8F\u4F9D\u636E\uFF08\u6216\u7A7A\u6BB5\u8BF4\u660E\uFF09\uFF1A\u6BB5\u5934\u53F3\u4FA7\u7684\u5F31\u5316\u6587\u5B57\u3002\u5B83\u662F\u300C\u8FD9\u4E00\u6BB5\u600E\u4E48\u8BFB\u300D\u7684\u8BFB\u6CD5\uFF0C\n \u4E0D\u662F\u6807\u9898\uFF0C\u6240\u4EE5\u4E0D\u62A2\u58A8\u8272\uFF1B\u4F46\u4ECD\u7136\u662F 10px \u7684\u6B63\u6587\u7EA7\u5BF9\u6BD4\u5EA6\uFF0C\u4E0D\u7528 ad-hoc \u7070\u3002 */\n.tita-attrBandHint {\n min-width: 0;\n flex: 1 1 auto;\n overflow: hidden;\n color: var(--tita-ink-faint);\n font-size: 10px;\n line-height: 1.3;\n text-align: right;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n/* \u5185\u5BB9\u5DE6\u6CBF\u7684\u4E00\u6761\u7AD6\u7EBF\uFF1A\u6BB5\u5934\u6587\u5B57\u4E0E\u8282\u70B9\u5DE6\u5BF9\u9F50\u5230\u540C\u4E00\u5217\uFF0C\u8FD9\u4E00\u6BB5\u624D\u8BFB\u8D77\u6765\u50CF\u4E00\u6BB5\u3002\n 1px \u4E14\u53EA\u6709\u6BB5\u9AD8\u7684\u4E00\u534A \u2014\u2014 \u5B83\u662F\u5BF9\u9F50\u63D0\u793A\uFF0C\u4E0D\u662F\u5206\u9694\u7EBF\u3002 */\n.tita-attrBandRule {\n position: absolute;\n top: 100%;\n bottom: 0;\n width: 1px;\n background: color-mix(in srgb, var(--tita-band-tint, var(--tita-tone-blue)) 26%, transparent);\n}\n\n/* ======================================================================\n \u7F16\u8BD1\uFF1A\u786E\u8BA4\u6D6E\u5C42\u4E0E\u8FDB\u5EA6\u5BF9\u8BDD\u6846\uFF082026-10-01\uFF09\n ----------------------------------------------------------------------\n \u56DB\u6BB5\u7684\u6BB5\u540D\u4E0E `WikiFlowCard` \u90A3\u5F20\u56FE**\u9010\u5B57\u76F8\u540C**\uFF1A\u540C\u4E00\u4E2A\u4E1C\u897F\u5728\u754C\u9762\u4E0A\u7684\u4E09\u5904\n \uFF08\u6D41\u7A0B\u56FE / \u8FDB\u5EA6 / \u7F16\u8BD1\u62A5\u544A\uFF09\u5FC5\u987B\u662F\u540C\u4E00\u5957\u8BCD\u3002\n ====================================================================== */\n.tita-compileConfirm { max-width: 440px; }\n.tita-compileConfirmBody { margin: 0; color: var(--tita-ink-muted); font-size: 12.5px; line-height: 1.7; }\n/* \u4EE3\u4EF7\u9010\u6761\u5217\uFF1A\u6A21\u7CCA\u7684\u786E\u8BA4\u6846\u7B49\u4E8E\u6CA1\u6709\u786E\u8BA4\u6846\uFF0C\u6240\u4EE5\u300C\u8981\u91CD\u5207\u591A\u5C11\u4E1C\u897F\u300D\u5FC5\u987B\u5199\u6210\u6570\u5F97\u51FA\u6765\u7684\u8BDD\u3002 */\n.tita-compileConfirmFacts { display: grid; margin: 10px 0 0; padding: 0; list-style: none; gap: 6px; }\n.tita-compileConfirmFacts > li { position: relative; padding-left: 14px; color: var(--tita-ink-faint); font-size: 11px; line-height: 1.7; }\n.tita-compileConfirmFacts > li::before { content: \'\'; position: absolute; inset-inline-start: 3px; inset-block-start: 7px; width: 4px; height: 4px; border-radius: 50%; background: var(--tita-line-strong); }\n\n/*\n * \u5BBD\u5EA6\u3002\n *\n * **\u5199 `width`\uFF0C\u4E0D\u5199 `max-width`\u3002** `DialogContent` \u4E0A\u5E26\u7684\u662F\n * `w-[min(420px,calc(100vw-32px))]` \u2014\u2014 \u4E00\u4E2A**\u56FA\u5B9A\u5BBD\u5EA6**\u3002\u56FA\u5B9A\u5BBD\u5EA6\u52A0\u4E00\u6761 `max-width`\n * \u7684\u7ED3\u679C\u662F `min(420, \u4F60\u5199\u7684\u90A3\u4E2A)`\uFF1A\u56DB\u4E2A\u5BF9\u8BDD\u6846\u91CC\u5199\u8FC7\u7684 `max-width: 560 / 620 / 760 / 980px`\n * \u56E0\u6B64**\u5168\u90E8\u662F\u7A7A\u64CD\u4F5C**\uFF0C\u5B83\u4EEC\u5B9E\u9645\u4E00\u76F4\u662F 420px \u5BBD\u3002\u8FD9\u6761\u6CE8\u91CA\u7559\u7740\uFF0C\u662F\u56E0\u4E3A\u8FD9\u4E2A\u9519\u770B\u8D77\u6765\n * \u5B8C\u5168\u6B63\u786E\uFF08\u300C\u9650\u5236\u6700\u5927\u5BBD\u5EA6\u300D\uFF09\uFF0C\u800C\u75C7\u72B6\u53EA\u662F\u300C\u7A84\u4E86\u4E00\u70B9\u300D\uFF0C\u6CA1\u6709\u4EBA\u4F1A\u53BB\u67E5\u3002\n *\n * `calc(100vw - 32px)` \u662F `DialogContent` \u81EA\u5DF1\u90A3\u4E00\u6863\u7684\u7A84\u5C4F\u515C\u5E95\uFF0C\u7167\u6284\u8FC7\u6765\u3002\n */\n.tita-compileDialog { width: min(560px, calc(100vw - 32px)); }\n.tita-compileHead { display: flex; align-items: center; justify-content: space-between; gap: 12px; }\n.tita-compileClock { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11.5px; font-variant-numeric: tabular-nums; }\n.tita-compileSub { margin: 2px 0 0; color: var(--tita-ink-faint); font-size: 11px; }\n.tita-compileBar { height: 6px; margin-top: 14px; border-radius: 3px; background: var(--tita-surface-muted); overflow: hidden; }\n.tita-compileBar > span { display: block; block-size: 100%; background: var(--tita-primary); transition: inline-size 400ms cubic-bezier(0.22, 0.61, 0.36, 1); }\n.tita-compileBarDone > span { background: var(--tita-tone-green); }\n.tita-compileRatio { margin: 7px 0 0; color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n.tita-compileSteps { display: grid; margin: 16px 0 0; padding: 0; list-style: none; gap: 2px; }\n.tita-compileStep { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; align-items: start; gap: 10px; border-radius: 9px; padding: 8px 10px; }\n.tita-compileStepDone { background: transparent; }\n.tita-compileDot { display: inline-flex; width: 20px; height: 20px; align-items: center; justify-content: center; border-radius: 50%; background: var(--tita-surface-muted); color: var(--tita-ink-faint); font-size: 10px; font-weight: 700; margin-top: 1px; }\n.tita-compileDotRunning { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-compileDotDone { background: var(--tita-tone-green); color: #ffffff; }\n/* \u8F6C\u5708\u53EA\u7ED9\u300C\u6B63\u5728\u8DD1\u300D\u7684\u90A3\u4E00\u6BB5\uFF0C\u800C\u4E14\u53EA\u5728 prefers-reduced-motion \u5141\u8BB8\u65F6\u8F6C\u3002\n \u5B83\u662F\u8FD9\u4E00\u5C4F\u552F\u4E00\u52A8\u7684\u4E1C\u897F \u2014\u2014 \u52A8\u6548\u5728\u8FD9\u91CC\u7684\u4F5C\u7528\u662F\u56DE\u7B54\u300C\u5B83\u8FD8\u5728\u8DD1\u5417\u300D\uFF0C\u4E0D\u662F\u88C5\u9970\u3002 */\n.tita-compileSpin { animation: tita-compile-spin 1.1s linear infinite; }\n@keyframes tita-compile-spin { to { transform: rotate(360deg); } }\n@media (prefers-reduced-motion: reduce) { .tita-compileSpin { animation: none; } .tita-compileBar > span { transition: none; } }\n.tita-compileStepBody { display: grid; gap: 3px; min-width: 0; }\n.tita-compileStepTitle { color: var(--tita-ink); font-size: 12.5px; font-weight: 650; }\n.tita-compileFacts { display: grid; gap: 1px; color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-compileState { color: var(--tita-ink-faint); font-size: 10.5px; font-weight: 600; white-space: nowrap; margin-top: 3px; }\n.tita-compileOutcome { margin: 12px 0 0; border-radius: 9px; background: var(--tita-tone-green-tint); color: var(--tita-tone-green); padding: 9px 11px; font-size: 11.5px; line-height: 1.7; }\n.tita-compileOutcomeBad { background: var(--ddk-danger-tint); color: var(--tita-danger); }\n.tita-compileFooter { align-items: center; justify-content: space-between; gap: 12px; }\n.tita-compileHint { color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n\n/* ======================================================================\n \u7F16\u8BD1\u94FE\u8DEF\u4E0E\u62BD\u53D6\u8BD5\u8DD1\uFF082026-10-05 \u62C6\u5F00\uFF09\n ----------------------------------------------------------------------\n \u4E24\u5757\u5185\u5BB9\u642C\u51FA\u4E86 Wiki \u90A3\u4E00\u680F\uFF08\u5B83\u4EEC\u56DE\u7B54\u7684\u4E0D\u662F\u300C\u7EC4\u7EC7\u6210\u4E86\u54EA\u4E9B\u9875\u300D\uFF0C\u800C\u662F\u300C\u8FD9\u4E2A\u5E93\u600E\u4E48\u5DE5\u4F5C\u300D\uFF09\uFF0C\n 2026-10-05 \u53C8\u4ECE\u540C\u4E00\u4E2A\u5BF9\u8BDD\u6846\u91CC**\u62C6\u6210\u4E24\u5904**\uFF1A\n\n - **\u56DB\u6BB5\u94FE\u8DEF**\uFF08\u5951\u7EA6\uFF09\u8BFB\u4E00\u904D\u5C31\u591F \u2192 \u8BF4\u660E\uFF0C\u8FDB\u901A\u7528\u6574\u9875\uFF08`/knowledge/pages/help/compile`\uFF09\u3002\n - **\u62BD\u53D6\u8BD5\u8DD1**\u8981\u53CD\u590D\u8DD1\u3001\u8981\u644A\u5F00\u51E0\u767E KB \u62A5\u544A\u3001\u8FD8\u8981\u548C\u9762\u677F\u91CC\u7684 Wiki \u680F\u5BF9\u7167 \u2192 \u6574\u9875\n \uFF08`/knowledge/pages/trial`\uFF09\u3002\n\n \u6240\u4EE5\u8FD9\u91CC\u53EA\u5269\u5185\u5BB9\u672C\u8EAB\u9700\u8981\u7684\u51E0\u4F55\uFF1A\u94FE\u8DEF\u9650\u5BBD\uFF08\u8BFB\u7684\u4E1C\u897F\u4E00\u884C\u522B\u8D85\u8FC7 760px\uFF09\u3001\u8BD5\u8DD1\u9762\u677F\u7684\n \u6807\u9898\u884C\u3002**\u9875\u9762\u5916\u58F3\u7684\u6837\u5F0F\u5728 `pages.css`** \u2014\u2014 \u90A3\u662F\u53E6\u4E00\u4EFD\u6587\u6863\uFF0C\u4E0D\u8DDF\u9762\u677F\u5171\u7528\u4E00\u5957\u58F3\u3002\n ====================================================================== */\n\n/* \u56DB\u6BB5\u94FE\u8DEF\u7684\u5185\u5BB9\u5217\u3002**\u8BFB\u7684\u4E1C\u897F\u9650\u5BBD**\uFF1A\u94FA\u6EE1\u65F6\u4E00\u884C\u7EA6 180 \u4E2A\u5B57\u7B26\uFF0C\u56DE\u884C\u627E\u4E0D\u5230\u4E0A\u4E00\u884C\u7684\u5F00\u5934\u3002 */\n.tita-flowPanel { display: grid; max-width: 760px; margin-inline: auto; gap: 12px; }\n\n/* \u8BD5\u8DD1\u9762\u677F\u7684\u6807\u9898\u884C\u3002\u5B83\u539F\u6765\u9760\u4E00\u5F20 Card \u6491\u5916\u6846\uFF0C\u73B0\u5728\u5916\u6846\u662F\u6574\u9875 \u2014\u2014 \u53EA\u7559\u8FD9\u4E00\u884C\u3002 */\n.tita-flowTrial { display: grid; gap: 9px; }\n.tita-flowTrialHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-flowTrialTitle { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink); font-size: 12.5px; font-weight: 650; }\n/* \u94FE\u8DEF\u5185\u90E8\u7684\u52A8\u4F5C\u540D\uFF08Extract / Resolve / Materialize / Index\uFF09\u3002\u6BB5\u540D\u662F\u7ED9\u4EBA\u770B\u7684\uFF0C\u8FD9\u4E00\u884C\u662F\u5BF9\u4EE3\u7801\u7684\u3002 */\n.tita-wikiFlowPassName { margin: 0; color: var(--tita-ink-faint); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9.5px; letter-spacing: .04em; }\n\n/* ======================================================================\n \u5220\u9664 SourceRaw \u7684\u786E\u8BA4\u6846\uFF080063 \xA75.2.2\uFF09\n ----------------------------------------------------------------------\n \u5B83\u4E0D\u662F\u300C\u4F60\u786E\u5B9A\u5417\u300D\uFF0C\u662F\u4E00\u5F20**\u8D26\u5355**\uFF1A\u8FD9\u4E00\u4E0B\u4F1A\u5E26\u8D70\u54EA\u51E0\u6761\u77E5\u8BC6\u3001\u54EA\u51E0\u5F20\u5361\u7247\u3002\n \u4E24\u6863\u7528\u989C\u8272\u5206\u5F00\uFF1A**\u7EA2\u7684\u662F\u4F1A\u88AB\u5220\u6389\u7684\uFF0C\u7EFF\u7684\u662F\u4F1A\u7559\u7740\u7684** \u2014\u2014 \u5408\u6210\u4E00\u4E2A\u6570\u4F1A\u8BA9\u4EBA\u4EE5\u4E3A\n \u5168\u90FD\u8981\u6CA1\uFF0C\u4E8E\u662F\u4E0D\u6562\u5220\uFF1B\u5206\u5F00\u8BF4\uFF0C\u4ED6\u624D\u80FD\u5224\u65AD\u8FD9\u4E00\u4E0B\u5230\u5E95\u6BC1\u6389\u4EC0\u4E48\u3002\n ====================================================================== */\n/*\n * 620px \u5BBD\u3001\u8D26\u5355\u533A\u9650\u9AD8\u3002\n *\n * \u9650\u9AD8\u4E0D\u662F\u4E3A\u4E86\u597D\u770B\uFF1A`DialogContent` \u662F `fixed top-1/2 -translate-y-1/2` \u5C45\u4E2D\u7684\uFF0C\n * \u5185\u5BB9\u6BD4\u89C6\u53E3\u9AD8\u65F6\u5B83\u4F1A**\u4E0A\u4E0B\u540C\u65F6\u6EA2\u51FA**\uFF0C\u9875\u811A\u90A3\u4E24\u4E2A\u6309\u94AE\u5C31\u518D\u4E5F\u70B9\u4E0D\u5230\u4E86\u3002\n * \u6240\u4EE5\u6EDA\u7684\u662F\u8D26\u5355\u533A\uFF0C\u9875\u811A\u7559\u5728\u5916\u9762\u3002\n */\n.tita-delDialog { width: min(620px, calc(100vw - 32px)); }\n.tita-delScroll { min-height: 0; max-height: min(58vh, 560px); overflow-y: auto; overscroll-behavior: contain; padding-right: 2px; }\n.tita-delTitle { display: flex; align-items: center; gap: 6px; }\n/* \u56FE\u6807 + \u6587\u5B57\u4E24\u5217\u3002**\u6B63\u6587\u5FC5\u987B\u5305\u5728\u4E00\u4E2A\u5143\u7D20\u91CC** \u2014\u2014 flex \u4F1A\u628A\u6BCF\u4E2A\u6587\u672C\u8282\u70B9\u4E0E\u6BCF\u4E2A `<b>`\n \u5F53\u6210\u72EC\u7ACB\u7684\u9879\u76EE\uFF0C\u6B63\u6587\u4E8E\u662F\u88AB\u62C6\u6210\u51E0\u5757\u5404\u5360\u4E00\u884C\uFF08\u8FD9\u4E00\u6761\u8E29\u8FC7\u4E00\u6B21\uFF09\u3002 */\n.tita-delLoading { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 6px; margin: 0; color: var(--tita-ink-muted); font-size: 11.5px; }\n.tita-delWarning { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 9px; border: 1px solid var(--ddk-danger-line); border-radius: 10px; background: var(--ddk-danger-tint); padding: 10px 11px; }\n.tita-delWarning > svg { margin-top: 2px; color: var(--tita-danger); }\n.tita-delWarningBody { display: grid; min-width: 0; gap: 3px; }\n.tita-delWarningBody > b { color: var(--tita-danger); font-size: 11.5px; font-weight: 700; }\n.tita-delWarningBody > span { color: var(--tita-ink); font-size: 11.5px; line-height: 1.6; }\n.tita-delWarningBody > small { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.5; }\n.tita-delNote b { color: var(--tita-ink); font-weight: 650; }\n.tita-delNothing { margin: 0; border: 1px solid var(--tita-line); border-radius: 9px; background: var(--tita-surface-muted); padding: 9px 11px; color: var(--tita-ink-muted); font-size: 11.5px; line-height: 1.7; }\n.tita-delSection { display: grid; margin-top: 12px; gap: 7px; }\n.tita-delSectionHead { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0; color: var(--tita-ink); font-size: 11.5px; }\n.tita-delSectionHead > span { display: inline-flex; align-items: center; gap: 5px; }\n.tita-delSectionTotal { color: var(--tita-ink-faint); font-size: 10.5px; font-weight: 500; }\n.tita-delEmpty { margin: 0; color: var(--tita-ink-faint); font-size: 11px; }\n/*\n * \u4E00\u6863\u3002\u5148\u8BFB\u6570\u5B57\uFF0C\u518D\u8BFB\u300C\u4F1A\u5220\u9664 / \u4FDD\u7559\u300D\uFF0C\u6700\u540E\u624D\u770B\u5177\u4F53\u6761\u76EE\u3002\u957F\u89E3\u91CA\u88AB\u79FB\u5230\u7B2C\u4E8C\u884C\uFF0C\n * \u907F\u514D\u628A\u4E00\u6574\u6BB5\u540E\u679C\u585E\u8FDB\u6570\u5B57\u53F3\u4FA7\uFF0C\u626B\u8BFB\u65F6\u4E0D\u4F1A\u649E\u6210\u4E00\u56E2\u3002\n */\n.tita-delTierDanger, .tita-delTierKeep { display: grid; gap: 8px; border: 1px solid; border-radius: 9px; padding: 9px 10px; }\n.tita-delTierDanger { border-color: var(--ddk-danger-line); background: var(--ddk-danger-tint); }\n.tita-delTierKeep { border-color: var(--tita-tone-green-line); background: var(--tita-tone-green-tint); }\n.tita-delTierHead { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: start; gap: 9px; min-width: 0; }\n.tita-delTierMetric { display: inline-flex; min-width: 35px; align-items: baseline; gap: 3px; }\n.tita-delTierMetric small { color: var(--tita-ink-muted); font-size: 10px; }\n.tita-delTierCount { color: var(--tita-ink); font-size: 17px; font-weight: 700; line-height: 1.1; font-variant-numeric: tabular-nums; }\n.tita-delTierDanger .tita-delTierCount { color: var(--tita-danger); }\n.tita-delTierKeep .tita-delTierCount { color: var(--tita-tone-green); }\n.tita-delTierCopy { display: grid; min-width: 0; gap: 2px; }\n.tita-delTierLabel { color: var(--tita-ink); font-size: 11px; line-height: 1.4; }\n.tita-delTierDescription { color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.5; overflow-wrap: anywhere; }\n.tita-delTierAction { align-self: start; border: 1px solid currentColor; border-radius: 999px; padding: 2px 6px; font-size: 9.5px; font-weight: 700; line-height: 1.3; white-space: nowrap; }\n.tita-delTierDanger .tita-delTierAction { color: var(--tita-danger); }\n.tita-delTierKeep .tita-delTierAction { color: var(--tita-tone-green); }\n.tita-delItems { display: grid; grid-column: 1 / -1; margin: 3px 0 0; padding: 0; list-style: none; gap: 4px; }\n.tita-delItems > li { position: relative; border-top: 1px dashed var(--tita-line); padding: 4px 0 0 10px; color: var(--tita-ink); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }\n.tita-delItems > li::before { position: absolute; top: .9em; left: 0; width: 4px; height: 4px; border-radius: 50%; background: var(--tita-ink-faint); content: \'\'; }\n.tita-delItems > li:first-child { border-top: 0; padding-top: 0; }\n.tita-delItems > li:first-child::before { top: .65em; }\n.tita-delItemMeta { display: block; color: var(--tita-ink-faint); font-size: 9.5px; }\n.tita-delMore { color: var(--tita-ink-faint) !important; }\n.tita-delNote { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 5px; margin: 0; border-top: 1px dashed var(--tita-line); padding-top: 8px; color: var(--tita-ink-muted); font-size: 11px; line-height: 1.7; }\n.tita-delNote svg { margin-top: 3px; }\n\n/* ======================================================================\n \u6DFB\u52A0\u6587\u4EF6\u5BF9\u8BDD\u6846\uFF082026-10-01\uFF09\n ----------------------------------------------------------------------\n \u4E0A\u534A\u56DE\u7B54\u300C\u8FD9\u4E9B\u6587\u4EF6\u5C06\u4EE5\u4EC0\u4E48\u8EAB\u4EFD\u8FDB\u6765\u300D\uFF0C\u4E0B\u534A\u56DE\u7B54\u300C\u5B83\u4EEC\u73B0\u5728\u5230\u54EA\u4E00\u6B65\u4E86\u300D\u3002\n \u4E24\u5757\u7528\u540C\u4E00\u6761\u5206\u9694\u7EBF\u5207\u5F00 \u2014\u2014 \u5B83\u4EEC\u662F\u540C\u4E00\u4EF6\u4E8B\u7684\u4E24\u534A\uFF08\u6536\u4E4B\u524D / \u6536\u4E4B\u540E\uFF09\uFF0C\u4E0D\u662F\u4E24\u4E2A\u529F\u80FD\u3002\n ====================================================================== */\n.tita-importDialog { width: min(760px, calc(100vw - 32px)); }\n.tita-importSub { margin: 4px 0 0; color: var(--tita-ink-faint); font-size: 11px; }\n.tita-importSection { display: grid; gap: 10px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--tita-line); }\n.tita-importSectionHead { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }\n.tita-importSectionHead h4 { margin: 0; color: var(--tita-ink); font-size: 12px; font-weight: 700; }\n.tita-importSectionHead > span { color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; }\n\n/*\n * \u5904\u7406\u6458\u8981\uFF082026-10-02\uFF09\uFF1A\u4E00\u6279\u8DD1\u5B8C\u4E4B\u540E\uFF0C\u300C\u521A\u624D\u5230\u5E95\u53D1\u751F\u4E86\u4EC0\u4E48\u300D\u7684\u4E00\u9875\u8D26\u3002\n *\n * \u4E24\u5217\u3001\u6807\u7B7E\u56FA\u5B9A\u5BBD\u3001\u503C\u4E0E\u6807\u7B7E\u540C\u4E3A\u4E00\u884C \u2014\u2014 \u4E0E\u5143\u4FE1\u606F\uFF08`.tita-kbKv`\uFF09\u540C\u4E00\u5957\u8BFB\u6CD5\uFF0C\u56E0\u4E3A\u5B83\u4EEC\n * \u56DE\u7B54\u7684\u662F\u540C\u4E00\u7C7B\u95EE\u9898\uFF08\u300C\u8FD9\u51E0\u9879\u5404\u662F\u4EC0\u4E48\u300D\uFF09\u3002\u533A\u522B\u53EA\u5728\u8FD9\u91CC\u7684\u884C\u66F4\u5C11\u3001\u66F4\u504F\u7ED3\u8BBA\u3002\n */\n.tita-importSummary { display: grid; margin: 0; gap: 5px; }\n.tita-importSummary > div { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 10px; }\n.tita-importSummary dt { color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-importSummary dd { margin: 0; min-width: 0; color: var(--tita-ink); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }\n/*\n * \u7F16\u8BD1\u7ED3\u679C\u7684\u4E94\u8282\uFF082026-10-06 \u8D77\uFF09\uFF1A\u62BD\u53D6 Knowledge / \u5F52\u4E00\u5750\u6807 / \u7269\u5316 WikiCard /\n * \u5EFA\u7D22\u5F15 / \u6784\u5EFA\uFF08\u5411\u91CF + \u56FE\u8C31\uFF09\u3002\n *\n * **\u5B83\u4EEC\u4E0D\u662F\u5361\u7247**\uFF0C\u662F\u540C\u4E00\u4EFD\u6458\u8981\u91CC\u7684\u5206\u6BB5\uFF1A\u4E00\u6761\u4E0A\u8FB9\u7EBF + \u4E00\u4E2A\u6807\u9898\u884C\uFF0C\u4E0E\n * `.tita-importSummary` \u90A3\u5957\u300C\u6807\u7B7E + \u503C\u300D\u7684\u5BC6\u5EA6\u4E00\u81F4\u3002\u505A\u6210\u5361\u7247\u4F1A\u8BA9\u8FD9\u4E00\u5C4F\n * \u6BD4\u5B83\u88C5\u7684\u5185\u5BB9\u91CD\u5F97\u591A \u2014\u2014 \u800C\u8FD9\u91CC\u8981\u8BFB\u7684\u53EA\u662F\u51E0\u4E2A\u6570\u3002\n *\n * \u6807\u9898\u884C\u91CC\u5E26\u4E00\u53E5\u300C\u5B83\u56DE\u7B54\u4EC0\u4E48\u300D\uFF08\u6587\u6863\u91CC\u8BF4\u4E86\u4EC0\u4E48 / \u662F\u4E0D\u662F\u5DF2\u6709\u7684\u4E1C\u897F / \u2026\uFF09\uFF1A\n * \u53EA\u7ED9\u540D\u5B57\u7684\u8BDD\uFF0C\u4EBA\u5F97\u5148\u77E5\u9053\u8FD9\u5957\u94FE\u8DEF\u624D\u770B\u5F97\u61C2\u300C\u5F52\u4E00\u5750\u6807\u300D\u662F\u5728\u8BF4\u4EC0\u4E48\u3002\n */\n.tita-importStage { display: grid; gap: 2px; border-top: 1px solid var(--tita-line); padding-top: 7px; margin-top: 7px; }\n.tita-importStage:first-of-type { border-top: 0; margin-top: 0; padding-top: 0; }\n.tita-importStageHead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }\n.tita-importStageHead b { color: var(--tita-ink); font-size: 11.5px; font-weight: 700; }\n.tita-importStageHead small { color: var(--tita-ink-muted); font-size: 10px; }\n.tita-importStageBody { margin: 0; color: var(--tita-ink); font-size: 11px; line-height: 1.65; overflow-wrap: anywhere; }\n.tita-importStageBody b { font-variant-numeric: tabular-nums; font-weight: 700; }\n.tita-importStageBody code { border-radius: 4px; background: var(--tita-surface-muted); padding: 0 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }\n.tita-importStageList { display: grid; gap: 3px; margin-top: 2px; }\n.tita-importStageListLabel { color: var(--tita-ink-faint); font-size: 10.5px; }\n\n/* \u6E05\u5355\uFF08\u65B0\u5EFA / \u5E76\u5165\u7684\u5B9E\u4F53\u540D\uFF09\uFF1A\u4E00\u884C\u4E00\u4E2A pill\uFF0C\u8BFB\u7684\u65F6\u5019\u4E0D\u5FC5\u5728\u9017\u53F7\u91CC\u6570\u6570\u3002 */\n.tita-importSummaryList { display: flex; flex-wrap: wrap; gap: 4px; }\n.tita-importSummaryList > span { border: 1px solid var(--tita-line); border-radius: 999px; background: var(--tita-surface-muted); padding: 1px 7px; color: var(--tita-ink-muted); font-size: 10.5px; }\n\n/* \u62D6\u62FD\u533A\u540C\u65F6\u662F\u300C\u518D\u9009\u51E0\u4E2A\u300D\u7684\u5165\u53E3\uFF1A\u52A0\u6587\u4EF6\u662F\u8FD9\u4E2A\u5BF9\u8BDD\u6846\u91CC\u6700\u9891\u7E41\u7684\u52A8\u4F5C\u3002 */\n.tita-importDrop { display: flex; align-items: center; gap: 12px; border: 1px dashed var(--tita-line-strong); border-radius: 10px; background: var(--tita-surface-muted); padding: 14px 16px; cursor: pointer; }\n.tita-importDrop:hover { border-color: var(--tita-primary-line); background: var(--tita-primary-soft); }\n.tita-importDropDisabled { cursor: not-allowed; opacity: .62; }\n.tita-importDropDisabled:hover { border-color: var(--tita-line-strong); background: var(--tita-surface-muted); }\n.tita-importDrop:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: 1px; }\n.tita-importDrop > svg { flex: 0 0 auto; color: var(--tita-ink-faint); }\n.tita-importDropText { display: grid; gap: 2px; min-width: 0; }\n.tita-importDropText > b { color: var(--tita-ink); font-size: 12px; font-weight: 600; }\n.tita-importDropText > small { color: var(--tita-ink-faint); font-size: 10.5px; }\n\n.tita-importList { display: grid; margin: 0; padding: 0; list-style: none; gap: 0; }\n.tita-importRow { display: grid; grid-template-columns: 46px minmax(0, 1fr) auto auto; align-items: center; gap: 10px; border-bottom: 1px solid var(--tita-line); padding: 7px 6px; min-height: 46px; }\n.tita-importRow:last-child { border-bottom: 0; }\n.tita-importRowBad { background: var(--ddk-danger-tint); }\n/* \u683C\u5F0F\u5FBD\u6807\uFF1A\u4E00\u4E2A\u6587\u4EF6\u6700\u5BB9\u6613\u88AB\u8BA4\u51FA\u6765\u7684\u5C5E\u6027\u662F\u5B83\u7684\u683C\u5F0F\uFF0C\u6240\u4EE5\u5B83\u6392\u5728\u6587\u4EF6\u540D\u524D\u9762\u3002 */\n.tita-importExt { display: inline-flex; height: 20px; align-items: center; justify-content: center; border-radius: 5px; font-size: 9.5px; font-weight: 700; letter-spacing: .02em; }\n.tita-importExtPdf { background: var(--ddk-danger-tint); color: var(--tita-danger); }\n.tita-importExtOffice { background: var(--tita-tone-blue-tint); color: var(--tita-tone-blue); }\n.tita-importExtText { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-importExtOther { background: var(--tita-surface-muted); color: var(--tita-ink-faint); }\n.tita-importName { display: grid; gap: 2px; min-width: 0; }\n.tita-importName > b { overflow: hidden; color: var(--tita-ink); font-size: 11.5px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }\n.tita-importName > small { color: var(--tita-ink-faint); font-size: 10px; overflow-wrap: anywhere; }\n.tita-importType { display: inline-flex; align-items: center; gap: 7px; }\n.tita-importTypeLabel { color: var(--tita-ink-faint); font-size: 10.5px; white-space: nowrap; }\n\n.tita-importBar { margin-top: 0; }\n/* \u56DB\u6BB5\u5199\u6210\u4E00\u884C\u7D27\u51D1\u8F68\u8FF9\uFF1A\u7EC6\u8282\u5728\u7F16\u8BD1\u5BF9\u8BDD\u6846\u91CC\u7ED9\u5168\u4E86\uFF0C\u8FD9\u91CC\u53EA\u56DE\u7B54\u300C\u6574\u6279\u5230\u54EA\u4E86\u300D\u3002 */\n.tita-importTrack { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }\n.tita-importTrackStep { display: grid; grid-template-columns: 16px minmax(0, 1fr) auto; align-items: start; gap: 7px; border-radius: 7px; padding: 5px 6px; color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-importTrackDot { display: inline-flex; width: 16px; height: 16px; align-items: center; justify-content: center; border-radius: 50%; background: var(--tita-surface-muted); font-size: 9px; font-weight: 700; }\n.tita-importTrackDone { color: var(--tita-ink-muted); }\n.tita-importTrackDone .tita-importTrackDot { background: var(--tita-tone-green); color: #ffffff; }\n.tita-importTrackRunning { color: var(--tita-primary); }\n.tita-importTrackRunning .tita-importTrackDot { background: var(--tita-primary-soft); color: var(--tita-primary); }\n.tita-importTrackBody { display: grid; min-width: 0; gap: 1px; }\n.tita-importTrackBody b { color: var(--tita-ink); font-size: 10.5px; font-weight: 700; }\n.tita-importTrackBody > span { color: var(--tita-ink-faint); font-size: 9.5px; line-height: 1.5; overflow-wrap: anywhere; }\n.tita-importTrackState { margin-top: 1px; color: var(--tita-ink-faint); font-size: 9.5px; white-space: nowrap; }\n.tita-importTrackRunning .tita-importTrackState { color: var(--tita-primary); font-weight: 700; }\n.tita-importTrackDone .tita-importTrackState { color: var(--tita-tone-green); }\n.tita-importNote { margin: 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.7; }\n/* \u5931\u8D25\u9010\u6761\u6446\u51FA\u6765\uFF0C\u5E76\u7ED9\u300C\u91CD\u8BD5\u5931\u8D25\u9879\u300D\u2014\u2014\u5341\u4EFD\u91CC\u574F\u4E00\u4EFD\u65F6\u8BA9\u4EBA\u91CD\u9009\u5341\u4EFD\u662F\u6D6A\u8D39\u3002 */\n.tita-importFailed { display: grid; gap: 5px; border-radius: 9px; background: var(--ddk-danger-tint); padding: 9px 11px; }\n.tita-importFailed > p { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--tita-danger); font-size: 11px; font-weight: 600; }\n.tita-importFailed > ul { display: grid; margin: 0; padding-inline-start: 16px; gap: 2px; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.6; }\n.tita-importFooter { align-items: center; justify-content: space-between; gap: 12px; }\n.tita-importHint { color: var(--tita-ink-faint); font-size: 10.5px; line-height: 1.6; }\n.tita-importActions { display: inline-flex; align-items: center; gap: 8px; }\n\n/* ======================================================================\n \u62BD\u5C49\u91CC\u7684\u4E00\u5C42\uFF082026-10-01\uFF09\n ----------------------------------------------------------------------\n \u7528\u4E8E\u300C\u5728 SourceRaw \u9884\u89C8\u4E4B\u4E0A\u8986\u76D6\u4E00\u5C42 wiki \u5361\u7247\u9884\u89C8\u300D\uFF1A\u5173\u6389\u5B83\u5C31\u80FD\u770B\u5230\u4E0B\u5C42\uFF0C\n \u56E0\u4E3A\u4E0B\u5C42\u4ECE\u6765\u6CA1\u6709\u88AB\u5173\u8FC7\u3002\u5B83\u4E0D\u662F\u7B2C\u4E8C\u4E2A Radix \u6A21\u6001 \u2014\u2014 \u4E00\u4E2A\u906E\u7F69\u3001\u4E00\u5957 Esc \u76D1\u542C\u3002\n ====================================================================== */\n.tita-drawerLayer {\n position: absolute;\n inset: 0;\n z-index: 3;\n display: flex;\n flex-direction: column;\n background: var(--tita-surface);\n animation: tita-drawer-layer-in 180ms cubic-bezier(0.22, 0.61, 0.36, 1);\n}\n@keyframes tita-drawer-layer-in {\n from { transform: translateX(18px); opacity: .55; }\n to { transform: none; opacity: 1; }\n}\n@media (prefers-reduced-motion: reduce) { .tita-drawerLayer { animation: none; } }\n/* \u5934\u90E8\u7684\u5DE6\u5185\u8FB9\u8DDD\u4E0E\u62BD\u5C49\u81EA\u5DF1\u7684\u5934\u5BF9\u9F50\uFF0818px\uFF09\uFF0C\u53F3\u5185\u8FB9\u8DDD\u8BA9\u5F00\u62BD\u5C49\u90A3\u4E2A\u5173\u95ED\u6309\u94AE\u7684\u4F4D\u7F6E \u2014\u2014\n \u8FD9\u4E00\u5C42\u867D\u7136\u76D6\u4F4F\u4E86\u5B83\uFF0C\u4F46\u4E24\u5C42\u7684\u6807\u9898\u4E0D\u8BE5\u56E0\u6B64\u9519\u4F4D\u3002 */\n.tita-drawerLayerHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; padding: 15px 44px 13px 18px; border-bottom: 1px solid var(--tita-line); }\n.tita-drawerLayerCopy { min-width: 0; }\n.tita-drawerLayerCopy h3 { margin: 0; color: var(--tita-ink); font-size: 15px; font-weight: 700; overflow-wrap: anywhere; }\n.tita-drawerLayerCopy p { margin: 4px 0 0; color: var(--tita-ink-faint); font-size: 11px; overflow-wrap: anywhere; }\n\n/* ======================================================================\n \u5BF9\u8BDD\u6D41\u91CC\u7684\u8D26\u672C\u56FE\uFF08PRD 20261001-\u5BF9\u8BDD\u6D41\u91CC\u53EF\u89C6\u5316\u77E5\u8BC6\u5E93\u7F16\u8BD1\u4E0E\u53EC\u56DE\uFF09\n ----------------------------------------------------------------------\n \u8FD9\u4E9B\u7C7B\u53EA\u670D\u52A1 `ledger.tsx`\u3002\u5B83\u4EEC\u4F4F\u5728\u63D2\u4EF6\u5168\u5C40\u6837\u5F0F\u91CC\u800C\u4E0D\u662F\u67D0\u5F20\u5361\u7247\u7684\u5C40\u90E8\uFF0C\n \u56E0\u4E3A\u8FD9\u6BB5\u5361\u7247\u957F\u5728**\u5BBF\u4E3B\u7684\u5BF9\u8BDD\u533A**\uFF0C\u4E0D\u5728 `.tita-panel` \u91CC \u2014\u2014 \u9762\u677F\u90A3\u5957 11px \u5C0F\u5B57\n \u548C\u5BB9\u5668\u67E5\u8BE2\u90FD\u591F\u4E0D\u7740\u5B83\u3002\n\n \u4E00\u6761\u89C4\u77E9\uFF1A**SVG \u7684\u989C\u8272\u53EA\u5728\u8FD9\u91CC\u7ED9**\u3002`fill="var(--tita-primary)"` \u8FD9\u79CD\u5199\u6CD5\u5728\n presentation attribute \u4E0A\u4E0D\u751F\u6548\uFF08\u90A3\u4E9B attribute \u4E0D\u8BA4 `var()`\uFF09\uFF0C\u6240\u4EE5\u989C\u8272\u7EDF\u4E00\u8D70\u7C7B\uFF0C\n \u6DF1\u6D45\u8272\u8DDF\u7740 `data-ds-dark-theme` \u81EA\u52A8\u7FFB \u2014\u2014 \u8FD9\u91CC\u6CA1\u6709\u4E00\u5904\u5199\u6B7B\u7684\u8272\u503C\u3002\n ====================================================================== */\n\n/* \u6298\u53E0\u6001\uFF1A\u4E00\u679A\u6761 + \u4E00\u4E32 HTML \u6587\u5B57\u3002\u6587\u5B57\u8D70 HTML\uFF0C\u6240\u4EE5\u80FD\u622A\u65AD\u3001\u80FD\u9009\u4E2D\u3001\u8BFB\u5C4F\u80FD\u8BFB\u3002 */\n.tita-kbLedger { display: inline-flex; flex: none; align-items: center; gap: 10px; min-width: 0; }\n\n/* \u8FD9\u4E00\u884C\u957F\u5728**\u5BBF\u4E3B\u7684\u5BF9\u8BDD\u533A**\u91CC\uFF0C\u4E0D\u5728 `.tita-panel` \u91CC \u2014\u2014 ui \u5305\u90A3\u6761\u6309\u94AE\u91CD\u7F6E\n \uFF08`:where([class^=tita-] \u2026) :where(button,input,\u2026)`\uFF09\u662F**\u540E\u4EE3\u9009\u62E9\u5668**\uFF0C\u591F\u4E0D\u5230\u8FD9\u91CC\u3002\n \u4E8E\u662F UA \u7684 button \u9ED8\u8BA4\u6837\u5F0F\u4F1A\u539F\u6837\u6F0F\u8FDB\u6765\uFF1A\u6D45\u8272\u4E0B\u662F\u4E00\u5757\u6BD4\u753B\u5E03\u7565\u767D\u7684\u5E95\u677F\uFF08\u51E0\u4E4E\u770B\u4E0D\u51FA\uFF0C\n \u6240\u4EE5\u4E00\u76F4\u6CA1\u4EBA\u53D1\u73B0\uFF09\uFF0C\u6DF1\u8272\u4E0B\u90A3\u5757\u5E95\u677F**\u4ECD\u7136\u662F\u767D\u7684**\uFF0C\u800C\u6587\u5B57\u7FFB\u6210\u4E86\u6D45\u8272 \u2014\u2014 \u76F4\u63A5\u770B\u4E0D\u89C1\u3002\n \u6240\u4EE5\u8FD9\u91CC\u9010\u6761\u62B9\u6389\uFF1A\u80CC\u666F\u3001\u8FB9\u6846\u3001\u5185\u8FB9\u8DDD\u3001\u5B57\u4F53\u3001\u989C\u8272\u3002 */\n.tita-kbRow {\n display: flex;\n width: 100%;\n min-width: 0;\n align-items: center;\n gap: 6px;\n padding: 2px 0;\n border: 0;\n background: transparent;\n font: inherit;\n color: inherit;\n text-align: left;\n}\n.tita-kbRow .tita-kbBar { display: block; }\n/* \u56FE\u4F8B\u662F\u300C\u8272\u5757 + \u4E2D\u6027\u6587\u5B57\u300D\uFF0C\u4E0D\u662F\u5F69\u8272\u6587\u5B57\u300211px \u7684\u5F69\u8272\u6587\u5B57\u8981\u540C\u65F6\u6EE1\u8DB3 4.5:1 \u548C\n \u300C\u548C\u6761\u4E0A\u90A3\u4E00\u6BB5\u770B\u8D77\u6765\u662F\u540C\u4E00\u4E2A\u989C\u8272\u300D\uFF0C\u4E24\u4EF6\u4E8B\u5728\u6D45\u5E95\u4E0A\u4E92\u76F8\u62C6\u53F0\uFF1B\u8272\u5757\u628A\u300C\u54EA\u4E2A\u662F\u54EA\u4E2A\u300D\n \u4EA4\u7ED9\u5F62\u72B6\uFF0C\u6587\u5B57\u56E0\u6B64\u53EF\u4EE5\u8001\u5B9E\u5F85\u5728\u4E2D\u6027\u8272\u4E0A\u3002 */\n.tita-kbLegend { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-ink-muted); font-size: 11px; line-height: 20px; white-space: nowrap; font-variant-numeric: tabular-nums; }\n.tita-kbSwatch { flex: none; width: 7px; height: 7px; border-radius: 1.5px; }\n.tita-kbSwatch-new { background: var(--tita-primary); }\n.tita-kbSwatch-merged { background: color-mix(in srgb, var(--tita-primary) 48%, var(--tita-surface)); }\n.tita-kbSwatch-reused { background: var(--tita-line-strong); }\n.tita-kbSwatch-failed { background: var(--tita-danger); }\n.tita-kbLedgerNote { color: var(--tita-ink-faint); font-size: 11px; line-height: 20px; white-space: nowrap; font-variant-numeric: tabular-nums; }\n/* \u5931\u8D25\u5355\u72EC\u6302\u4E00\u4E2A\u7EA2\u70B9 + \u8BA1\u6570\uFF0C\u4E0D\u6324\u8FDB\u6761\u91CC\uFF1A\u6765\u6E90\u6570\u548C\u5361\u7247\u6570\u4E0D\u662F\u4E00\u4E2A\u5355\u4F4D\uFF0C\u6DF7\u5728\u4E00\u6839\u6761\u4E0A\u4F1A\u9A97\u4EBA\u3002 */\n.tita-kbLedgerFail { display: inline-flex; align-items: center; gap: 5px; color: var(--tita-danger); font-size: 11px; line-height: 20px; white-space: nowrap; }\n.tita-kbLedgerFail::before { content: \'\'; flex: none; width: 5px; height: 5px; border-radius: 50%; background: var(--tita-danger); }\n\n/* \u5C55\u5F00\u6001\uFF1A\u4E00\u6574\u5F20\u56FE + \u4E00\u5217\u660E\u7EC6\u3002\u5DE6\u7F29\u8FDB 22px \u4E0E\u6807\u9898\u5BF9\u9F50\uFF08\u56FE\u6807 16 + \u95F4\u9694 6\uFF09\u3002 */\n.tita-kbPanel { display: grid; gap: 10px; margin: 6px 0 8px 22px; }\n.tita-kbDiagram { display: block; width: 100%; height: auto; }\n.tita-kbSources { display: grid; gap: 3px; margin: 0; padding: 0; list-style: none; }\n.tita-kbSources li { display: flex; align-items: baseline; gap: 8px; font-size: 12px; line-height: 17px; }\n.tita-kbSources .tita-kbRank { flex: none; width: 15px; text-align: right; color: var(--tita-ink-faint); font-variant-numeric: tabular-nums; }\n.tita-kbSources .tita-kbName { flex: 1 1 auto; min-width: 0; overflow: hidden; color: var(--tita-ink); text-overflow: ellipsis; white-space: nowrap; }\n.tita-kbSources .tita-kbMeasure { flex: none; color: var(--tita-ink-faint); font-variant-numeric: tabular-nums; }\n.tita-kbSources .tita-kbCode { flex: none; font-family: var(--tita-mono); font-size: 10.5px; color: var(--tita-ink-faint); }\n.tita-kbSources li[data-failed] { color: var(--tita-danger); }\n.tita-kbSources li[data-failed] .tita-kbName { color: var(--tita-danger); }\n.tita-kbPanelNote { margin: 0; color: var(--tita-ink-faint); font-size: 11px; line-height: 1.7; }\n.tita-kbPanelNote code { font-family: var(--tita-mono); font-size: 10.5px; }\n\n/* \u2500\u2500 SVG \u91CC\u7684\u8BED\u4E49\u8272 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.tita-kbSeg-new { fill: var(--tita-primary); }\n/* \u300C\u5E76\u5165\u300D\u4E0E\u300C\u65B0\u5EFA\u300D\u662F\u540C\u4E00\u4E2A\u6574\u4F53\u7684\u4E24\u5757\uFF0C\u7528\u900F\u660E\u5EA6\u5206\u6863\uFF0C\u4E0D\u53E6\u8D77\u4E00\u4E2A\u8272\u76F8\u3002 */\n.tita-kbSeg-merged { fill: var(--tita-primary); fill-opacity: .48; }\n/* \u300C\u590D\u7528\u300D= \u4EC0\u4E48\u90FD\u6CA1\u53D1\u751F\uFF0C\u7070\u8272\u662F\u8BED\u4E49\u76F4\u7ED9\u3002 */\n.tita-kbSeg-reused { fill: var(--tita-line-strong); }\n.tita-kbSeg-failed { fill: var(--tita-danger); }\n.tita-kbTrack { fill: var(--tita-line-strong); fill-opacity: .28; }\n/* \u6765\u6E90\u753B\u6210\u7A7A\u5FC3\u6587\u6863\u3001\u4EA7\u51FA\u753B\u6210\u5B9E\u5FC3\u6761\uFF1A\u7A7A\u5FC3 vs \u5B9E\u5FC3\u533A\u5206\u300C\u8F93\u5165\u300D\u4E0E\u300C\u4EA7\u51FA\u300D\uFF0C\n \u4E0D\u9760\u518D\u5360\u4E00\u4E2A\u8272\u76F8\uFF0C\u4E5F\u5C31\u4E0D\u4F1A\u548C\u300C\u590D\u7528\u300D\u90A3\u4E2A\u7070\u5B9E\u5FC3\u649E\u8BED\u4E49\u3002 */\n.tita-kbSrcDoc { fill: var(--tita-surface-muted); stroke: var(--tita-line-strong); stroke-width: 1; }\n.tita-kbSrcFail { fill: var(--tita-danger); fill-opacity: .14; stroke: var(--tita-danger); stroke-width: 1; }\n.tita-kbRule { stroke: var(--tita-line); fill: none; }\n.tita-kbConnector { stroke: var(--tita-line-strong); fill: none; }\n.tita-kbArrow { fill: var(--tita-line-strong); }\n.tita-kbInk { fill: var(--tita-ink); }\n.tita-kbMuted { fill: var(--tita-ink-muted); }\n.tita-kbFaint { fill: var(--tita-ink-faint); }\n.tita-kbDanger { fill: var(--tita-danger); }\n.tita-kbMono { font-family: var(--tita-mono); }\n.tita-kbDiagram text { font-family: var(--tita-font); font-variant-numeric: tabular-nums; }\n\n/* \u8FD0\u884C\u4E2D\u7684\u5E7D\u7075\u6761\uFF1A\u660E\u786E\u8BF4\u300C\u8FD9\u91CC\u5C06\u4F1A\u6709\u4E00\u6761\u300D\uFF0C\u800C\u4E0D\u662F\u5148\u753B\u4E00\u6839\u96F6\u957F\u7684\u6761\u5192\u5145\u7ED3\u679C\u3002 */\n.tita-kbGhost { fill: var(--tita-line-strong); }\n.tita-kbPulse { animation: tita-kb-ghost 1.5s ease-in-out infinite; }\n.tita-kbPulse:nth-of-type(2) { animation-delay: .12s; }\n.tita-kbPulse:nth-of-type(3) { animation-delay: .24s; }\n.tita-kbPulse:nth-of-type(4) { animation-delay: .36s; }\n.tita-kbPulse:nth-of-type(5) { animation-delay: .48s; }\n.tita-kbPulse:nth-of-type(6) { animation-delay: .60s; }\n.tita-kbPulse:nth-of-type(7) { animation-delay: .72s; }\n.tita-kbPulse:nth-of-type(8) { animation-delay: .84s; }\n@keyframes tita-kb-ghost { 0%, 100% { opacity: .25; } 50% { opacity: .8; } }\n@media (prefers-reduced-motion: reduce) {\n .tita-kbPulse { animation: none; opacity: .45; }\n}\n\n/* ======================================================================\n \u64CD\u4F5C\u65E5\u5FD7\uFF082026-10-02 \u7684\u4E00\u7EA7\u89C6\u56FE\uFF09\n ----------------------------------------------------------------------\n \u4E00\u6761\u8BB0\u5F55\u4E00\u884C\uFF1A**\u65F6\u95F4 \xB7 \u7C7B\u578B \xB7 \u5E72\u4E86\u4EC0\u4E48 \xB7 \u54EA\u4E2A\u5E93 \xB7 \u6210\u6CA1\u6210**\u3002\u5C55\u5F00\u624D\u662F\u660E\u7EC6\u3002\n \u4E0E\u5361\u7247\u5217\u8868\u540C\u4E00\u6761\u7EAA\u5F8B\uFF1A\u5E38\u6001\u6CA1\u6709\u8FB9\u6846\uFF08\u4E00\u5C4F\u5341\u51E0\u6761\u63CF\u8FB9\u76D2\u5B50\u4F1A\u53D8\u6210\u300C\u6846\u5957\u6846\u300D\uFF09\uFF0C\n \u53EA\u5728 hover / \u805A\u7126 / \u5C55\u5F00\u65F6\u663E\u51FA\u6765\u3002\n ====================================================================== */\n.tita-opList { display: grid; margin: 8px 0 0; padding: 0; list-style: none; gap: 2px; }\n.tita-opRow { min-width: 0; border: 1px solid transparent; border-radius: 8px; }\n.tita-opRow:hover { border-color: var(--tita-line); background: var(--tita-surface-muted); }\n.tita-opRowBad { border-color: color-mix(in srgb, var(--tita-tone-amber) 30%, transparent); }\n.tita-opMain {\n display: grid; width: 100%; min-width: 0; align-items: center; gap: 8px;\n grid-template-columns: 92px 40px minmax(0, 1fr) auto auto 14px;\n border: 0; background: none; padding: 7px 8px; color: inherit; font: inherit; text-align: left; cursor: pointer;\n}\n.tita-opMain:focus-visible { outline: 2px solid var(--tita-focus-ring); outline-offset: -2px; border-radius: 8px; }\n/* \u65F6\u95F4\u662F**\u626B\u63CF\u7684\u843D\u70B9**\uFF1A\u7B49\u5BBD\u6570\u5B57\u8BA9\u5B83\u4E00\u5217\u5BF9\u9F50\uFF0C\u4E0D\u7528\u9010\u884C\u627E\u3002 */\n.tita-opWhen { color: var(--tita-ink-faint); font-size: 10.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }\n.tita-opKind { border-radius: 4px; background: var(--tita-primary-soft); padding: 1px 5px; color: var(--tita-primary); font-size: 10px; font-weight: 620; text-align: center; }\n.tita-opKindCompile { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-opTitle { display: grid; min-width: 0; gap: 1px; }\n.tita-opTitle > b { overflow: hidden; color: var(--tita-ink); font-size: 11.5px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }\n.tita-opTitle > small { overflow: hidden; color: var(--tita-ink-muted); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }\n.tita-opKb { color: var(--tita-ink-faint); font-size: 10.5px; white-space: nowrap; }\n.tita-opStatus { border-radius: 999px; padding: 1px 7px; font-size: 10px; white-space: nowrap; }\n.tita-opStatusOk { background: var(--tita-tone-green-tint); color: var(--tita-tone-green); }\n.tita-opStatusWarn { background: var(--tita-tone-amber-tint); color: var(--tita-tone-amber); }\n.tita-opStatusBad { background: color-mix(in srgb, var(--tita-danger) 12%, transparent); color: var(--tita-danger); }\n.tita-opMain > svg { color: var(--tita-ink-faint); }\n\n/* \u660E\u7EC6\uFF1A\u5C55\u5F00\u624D\u51FA\u73B0\uFF0C\u5DE6\u7F29\u8FDB\u5BF9\u9F50\u5230\u6807\u9898\u90A3\u4E00\u5217\u3002 */\n.tita-opDetail { border-top: 1px dashed var(--tita-line); padding: 8px 10px 10px 100px; }\n.tita-opDetailBody { display: grid; gap: 10px; }\n.tita-opBlock { display: grid; gap: 4px; }\n.tita-opBlock h5 { display: flex; align-items: baseline; gap: 6px; margin: 0; color: var(--tita-ink); font-size: 11px; font-weight: 650; }\n.tita-opBlock h5 > span { color: var(--tita-ink-faint); font-size: 10.5px; font-weight: 400; }\n.tita-opLine { margin: 0; color: var(--tita-ink-muted); font-size: 10.5px; line-height: 1.65; }\n.tita-opFiles { display: grid; margin: 0; padding: 0; list-style: none; gap: 2px; }\n.tita-opFiles > li { display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 2px 0; }\n.tita-opFiles > li > b { overflow: hidden; color: var(--tita-ink); font-size: 11px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }\n.tita-opFiles > li > em { color: var(--tita-ink-faint); font-size: 10px; font-style: normal; }\n.tita-opFileBad > em { color: var(--tita-tone-amber); }\n.tita-opNames { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; margin: 0; }\n.tita-opNames > span { color: var(--tita-ink-faint); font-size: 10.5px; }\n.tita-opNames > i { border: 1px solid var(--tita-line); border-radius: 999px; background: var(--tita-surface); padding: 1px 7px; color: var(--tita-ink-muted); font-size: 10.5px; font-style: normal; }\n.tita-opFoot { margin: 0; color: var(--tita-ink-faint); font-size: 10px; }\n\n/*\n * \u77E9\u9635\u7684\u5168\u5C4F\u5BF9\u8BDD\u6846\u3002\n *\n * \u9762\u677F\u672C\u4F53\u53EA\u6709 380\u2013420px\uFF0C\u51E0\u5341\u4E2A\u5BF9\u8C61\u7684\u77E9\u9635\u5728\u90A3\u91CC\u53EA\u80FD\u6324\u7740\u770B\u3002\u8FD9\u4E2A\u5BF9\u8BDD\u6846**\u4E0D\u6539\u6570\u636E**\uFF1A\n * \u540C\u4E00\u4EFD `matrixView`\u3001\u540C\u4E00\u4E2A\u9009\u4E2D\u72B6\u6001\u3001\u540C\u4E00\u4E2A `AxisMatrix` \u2014\u2014 \u5DEE\u522B\u53EA\u6709\u5BBD\u5EA6\u4E0E\u4E0D\u518D\u9650\u9AD8\u3002\n * \u6240\u4EE5\u5BBD\u5EA6\u6309\u5185\u5BB9\u7ED9\uFF08\u6700\u591A 1100px\uFF09\uFF0C\u9AD8\u5EA6\u6309\u89C6\u53E3\u7ED9\uFF08\u6700\u591A 86vh\uFF09\uFF0C\u8D85\u51FA\u7684\u90E8\u5206\u81EA\u5DF1\u6EDA\u3002\n */\n.tita-matrixDialog { width: min(96vw, 1100px); max-width: min(96vw, 1100px); max-height: 86vh; overflow: hidden; }\n.tita-matrixDialogTitle { display: inline-flex; align-items: baseline; gap: 6px; }\n.tita-matrixDialogBody { max-height: 74vh; overflow: auto; padding: 4px 2px 8px; }\n/* \u5168\u5C4F\u90A3\u4E00\u4EFD\u8868\u683C\u94FA\u6EE1\u5BBD\u5EA6\uFF1A**\u5217\u7B49\u5BBD**\uFF0C\u4E00\u884C 40 \u6765\u4E2A\u52A8\u4F5C\u4E5F\u8BFB\u5F97\u6210\u3002 */\n.tita-matrixDialogBody .tita-trialMatrixGrid { width: 100%; table-layout: fixed; }\n\n/* \u8BD5\u7EC4\u7EC7\u90A3\u4E00\u5757\u7684\u4E09\u6761\u6837\u5F0F\uFF08`.tita-drawerFacts` / `.tita-drawerHint` / `.tita-promptBox`\uFF09\n \u968F 2026-10-06 \u7684\u6574\u5757\u64A4\u9500\u4E00\u8D77\u5220\u6389 \u2014\u2014 \u5B83\u4EEC\u6CA1\u6709\u7B2C\u4E8C\u4E2A\u4F7F\u7528\u8005\u3002 */\n\n/* --------------------------------------------------------------- \u4EFB\u52A1\u8DEF\u5F84 */\n';
|
|
114322
|
+
var tagId3 = "dsh-data-domain-knowledge//private/tmp/dsh-knowledge-alpha-release/plugins/dsh-data-domain-knowledge/src/client/styles.css";
|
|
114564
114323
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId3) + "]") === null) {
|
|
114565
114324
|
const tag = document.createElement("style");
|
|
114566
114325
|
tag.dataset.plugin = "dsh-data-domain-knowledge";
|
|
@@ -114570,19 +114329,17 @@ if (typeof document !== "undefined" && document.querySelector("style[data-plugin
|
|
|
114570
114329
|
}
|
|
114571
114330
|
|
|
114572
114331
|
// src/client/KnowledgePanel.tsx
|
|
114573
|
-
var
|
|
114332
|
+
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
114574
114333
|
var VIEWS = {
|
|
114575
114334
|
overview: { label: "Agent \u6982\u89C8", icon: Layers },
|
|
114576
|
-
intent: { label: "\u610F\u56FE", icon: Workflow },
|
|
114577
114335
|
knowledge: { label: "\u77E5\u8BC6\u5E93", icon: Database },
|
|
114578
114336
|
attribution: { label: "\u667A\u80FD\u5F52\u56E0", icon: Stethoscope },
|
|
114579
114337
|
memory: { label: "\u8BB0\u5FC6", icon: BrainCircuit },
|
|
114580
114338
|
eval: { label: "\u8BC4\u6D4B", icon: ChartBar },
|
|
114581
114339
|
operations: { label: "\u64CD\u4F5C\u65E5\u5FD7", icon: History }
|
|
114582
114340
|
};
|
|
114583
|
-
var VIEW_ORDER = ["overview", "
|
|
114341
|
+
var VIEW_ORDER = ["overview", "knowledge", "attribution", "memory", "eval", "operations"];
|
|
114584
114342
|
var TAB_GUIDE = {
|
|
114585
|
-
intent: { label: "\u610F\u56FE", node: "intent" },
|
|
114586
114343
|
knowledge: { label: "\u77E5\u8BC6\u5E93", node: "knowledge" },
|
|
114587
114344
|
attribution: { label: "\u667A\u80FD\u5F52\u56E0", node: "attribution" },
|
|
114588
114345
|
memory: { label: "\u8BB0\u5FC6", node: "memory" },
|
|
@@ -114602,89 +114359,89 @@ async function requestJson3(url, init) {
|
|
|
114602
114359
|
return payload;
|
|
114603
114360
|
}
|
|
114604
114361
|
function MetricCard({ icon: Icon3, label, value, hint, tone = "neutral" }) {
|
|
114605
|
-
return /* @__PURE__ */ (0,
|
|
114606
|
-
/* @__PURE__ */ (0,
|
|
114607
|
-
/* @__PURE__ */ (0,
|
|
114608
|
-
/* @__PURE__ */ (0,
|
|
114609
|
-
/* @__PURE__ */ (0,
|
|
114610
|
-
hint && /* @__PURE__ */ (0,
|
|
114362
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Card, { className: cn(styles.metricCard, styles[`metricTone${toneSuffix(tone)}`]), children: [
|
|
114363
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: styles.metricIcon, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Icon3, { size: 16, strokeWidth: 1.8 }) }),
|
|
114364
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { className: styles.metricCopy, children: [
|
|
114365
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("small", { children: label }),
|
|
114366
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: value }),
|
|
114367
|
+
hint && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("em", { children: hint })
|
|
114611
114368
|
] })
|
|
114612
114369
|
] });
|
|
114613
114370
|
}
|
|
114614
114371
|
function MemoryTab({ onSelect, stats, version: version3 }) {
|
|
114615
114372
|
const memoryFiles = stats.memoryFiles ?? 0;
|
|
114616
114373
|
const builtAt = formatBuildTime(stats.builtAt);
|
|
114617
|
-
return /* @__PURE__ */ (0,
|
|
114618
|
-
/* @__PURE__ */ (0,
|
|
114619
|
-
/* @__PURE__ */ (0,
|
|
114620
|
-
/* @__PURE__ */ (0,
|
|
114621
|
-
/* @__PURE__ */ (0,
|
|
114374
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.viewStack, children: [
|
|
114375
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Card, { className: styles.workspaceCard, children: [
|
|
114376
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.cardHeader, children: [
|
|
114377
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("h3", { children: [
|
|
114378
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(HardDrive, { size: 14 }),
|
|
114622
114379
|
"\u771F\u5B9E\u8BB0\u5FC6\u843D\u76D8"
|
|
114623
114380
|
] }) }),
|
|
114624
|
-
/* @__PURE__ */ (0,
|
|
114381
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Badge, { tone: "success", children: "\u6765\u81EA /knowledge/stats" })
|
|
114625
114382
|
] }),
|
|
114626
|
-
/* @__PURE__ */ (0,
|
|
114383
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("p", { className: styles.cardDescription, children: [
|
|
114627
114384
|
"\u672C\u5730\u8BB0\u5FC6\u4E0D\u662F\u767D\u677F\uFF1A\u6587\u6863\u6BCF\u6B21\u5185\u5BB9\u53D8\u5316\u90FD\u4F1A\u5728 ",
|
|
114628
|
-
/* @__PURE__ */ (0,
|
|
114385
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("b", { children: "memory/" }),
|
|
114629
114386
|
" \u7559\u4E0B\u7248\u672C\u5FEB\u7167\uFF0CWikiCard \u4E5F\u6709\u81EA\u5DF1\u7684\u5FEB\u7167\uFF0C \u56DE\u6EDA\u672C\u8EAB\u4E5F\u53EF\u56DE\u6EDA\uFF1B\u4E0B\u9762\u8FD9\u6392\u6570\u5B57\u662F\u5F53\u524D\u771F\u5B9E\u843D\u76D8\u91CF\uFF0C\u800C\u4E0D\u662F\u4EA7\u54C1\u5360\u4F4D\u3002"
|
|
114630
114387
|
] }),
|
|
114631
|
-
stats.memoryRoot && /* @__PURE__ */ (0,
|
|
114632
|
-
/* @__PURE__ */ (0,
|
|
114633
|
-
/* @__PURE__ */ (0,
|
|
114634
|
-
/* @__PURE__ */ (0,
|
|
114635
|
-
/* @__PURE__ */ (0,
|
|
114636
|
-
/* @__PURE__ */ (0,
|
|
114388
|
+
stats.memoryRoot && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: styles.kbRoot, title: stats.memoryRoot, children: stats.memoryRoot }),
|
|
114389
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.memoryReal, children: [
|
|
114390
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(MetricCard, { icon: HardDrive, label: "memory/ \u6587\u4EF6", value: String(memoryFiles), hint: "\u6765\u6E90\u4E0E\u5361\u7247\u7248\u672C\u5FEB\u7167", tone: "amber" }),
|
|
114391
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(MetricCard, { icon: FileText, label: "\u6765\u6E90\u6587\u6863", value: String(stats.sourceCount ?? 0), hint: "\u53EF\u8FFD\u6EAF\u7684 SourceRaw", tone: "blue" }),
|
|
114392
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(MetricCard, { icon: Box, label: "\u53EC\u56DE\u7247\u6BB5", value: String(noteCountOf(stats)), hint: "\u5DF2\u7F16\u8BD1\u7684\u53EC\u56DE\u5355\u5143", tone: "green" }),
|
|
114393
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(MetricCard, { icon: Activity, label: "\u7D22\u5F15\u7248\u672C", value: version3 ? `v${version3}` : "\u2014", hint: builtAt, tone: "violet" })
|
|
114637
114394
|
] })
|
|
114638
114395
|
] }),
|
|
114639
|
-
/* @__PURE__ */ (0,
|
|
114640
|
-
/* @__PURE__ */ (0,
|
|
114641
|
-
/* @__PURE__ */ (0,
|
|
114642
|
-
/* @__PURE__ */ (0,
|
|
114643
|
-
/* @__PURE__ */ (0,
|
|
114396
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.memoryGrid, children: [
|
|
114397
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Card, { className: styles.memoryCard, children: [
|
|
114398
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.cardHeader, children: [
|
|
114399
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("h3", { children: [
|
|
114400
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(FileText, { size: 14 }),
|
|
114644
114401
|
"\u60C5\u8282\u8BB0\u5FC6"
|
|
114645
114402
|
] }) }),
|
|
114646
|
-
/* @__PURE__ */ (0,
|
|
114403
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Badge, { tone: "warning", children: "\u5F85\u5B9E\u73B0" })
|
|
114647
114404
|
] }),
|
|
114648
|
-
/* @__PURE__ */ (0,
|
|
114649
|
-
/* @__PURE__ */ (0,
|
|
114405
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { children: "\u8BB0\u5F55\u7528\u6237\u505A\u4E86\u4EC0\u4E48\u3001\u91C7\u7528\u4E86\u4EC0\u4E48\u7ED3\u679C\u4EE5\u53CA\u4E8B\u540E\u7684\u53CD\u9988\uFF1B\u4FDD\u7559\u65F6\u95F4\u3001\u4F1A\u8BDD\u4E0E\u6765\u6E90\uFF0C\u4E4B\u540E\u53EF\u4EE5\u6309\u4E0A\u4E0B\u6587\u56DE\u5FC6\u3002\u91C7\u96C6\u4E0E\u5F52\u7EB3\u7BA1\u7EBF\u8FD8\u6CA1\u5B9E\u73B0\u4E4B\u524D\uFF0C\u8FD9\u91CC\u53EA\u63CF\u8FF0\u7ED3\u6784\u4E0E\u7B56\u7565\uFF0C\u4E0D\u5C55\u793A\u7F16\u9020\u7684\u6570\u5B57\u3002" }),
|
|
114406
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Button, { variant: "outline", onClick: () => onSelect("episodic-memory"), children: [
|
|
114650
114407
|
"\u67E5\u770B\u8282\u70B9\u72B6\u6001",
|
|
114651
|
-
/* @__PURE__ */ (0,
|
|
114408
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Compass, { size: 14 })
|
|
114652
114409
|
] })
|
|
114653
114410
|
] }),
|
|
114654
|
-
/* @__PURE__ */ (0,
|
|
114655
|
-
/* @__PURE__ */ (0,
|
|
114656
|
-
/* @__PURE__ */ (0,
|
|
114657
|
-
/* @__PURE__ */ (0,
|
|
114411
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Card, { className: styles.memoryCard, children: [
|
|
114412
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.cardHeader, children: [
|
|
114413
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("h3", { children: [
|
|
114414
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Wrench, { size: 14 }),
|
|
114658
114415
|
"\u64CD\u4F5C\u8BB0\u5FC6 \u2192 Skill"
|
|
114659
114416
|
] }) }),
|
|
114660
|
-
/* @__PURE__ */ (0,
|
|
114417
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Badge, { tone: "warning", children: "\u5F85\u5B9E\u73B0" })
|
|
114661
114418
|
] }),
|
|
114662
|
-
/* @__PURE__ */ (0,
|
|
114663
|
-
/* @__PURE__ */ (0,
|
|
114419
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { children: "\u4ECE\u91CD\u590D\u64CD\u4F5C\u91CC\u5F52\u7EB3\u6B65\u9AA4\u3001\u53C2\u6570\u548C\u5DE5\u5177\u7EC4\u5408\uFF0C\u7ECF\u8FC7\u8D28\u91CF\u68C0\u67E5\u540E\u751F\u6210\u53EF\u590D\u7528 Skill\u3002\u63D0\u53D6\u7BA1\u7EBF\u4E0E Skill Registry \u5199\u5165\u90FD\u8FD8\u6CA1\u6709\u5B9E\u73B0\u3002" }),
|
|
114420
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Button, { variant: "outline", onClick: () => onSelect("procedural-memory"), children: [
|
|
114664
114421
|
"\u67E5\u770B\u8282\u70B9\u72B6\u6001",
|
|
114665
|
-
/* @__PURE__ */ (0,
|
|
114422
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Compass, { size: 14 })
|
|
114666
114423
|
] })
|
|
114667
114424
|
] }),
|
|
114668
|
-
/* @__PURE__ */ (0,
|
|
114669
|
-
/* @__PURE__ */ (0,
|
|
114670
|
-
/* @__PURE__ */ (0,
|
|
114671
|
-
/* @__PURE__ */ (0,
|
|
114425
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Card, { className: cn(styles.memoryCard, styles.memoryCardWide), children: [
|
|
114426
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.cardHeader, children: [
|
|
114427
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("h3", { children: [
|
|
114428
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Wrench, { size: 14 }),
|
|
114672
114429
|
"\u8D28\u91CF\u68C0\u67E5\u4E0E\u6BCF\u65E5\u66F4\u65B0"
|
|
114673
114430
|
] }) }),
|
|
114674
|
-
/* @__PURE__ */ (0,
|
|
114431
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Badge, { tone: "warning", children: "\u5F85\u5B9E\u73B0" })
|
|
114675
114432
|
] }),
|
|
114676
|
-
/* @__PURE__ */ (0,
|
|
114677
|
-
/* @__PURE__ */ (0,
|
|
114678
|
-
/* @__PURE__ */ (0,
|
|
114679
|
-
/* @__PURE__ */ (0,
|
|
114680
|
-
/* @__PURE__ */ (0,
|
|
114681
|
-
/* @__PURE__ */ (0,
|
|
114682
|
-
/* @__PURE__ */ (0,
|
|
114683
|
-
/* @__PURE__ */ (0,
|
|
114433
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.timeline, children: [
|
|
114434
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u4EA4\u4E92\u91C7\u96C6" }),
|
|
114435
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("i", { children: "\u2192" }),
|
|
114436
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u53BB\u91CD\u5F52\u7EB3" }),
|
|
114437
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("i", { children: "\u2192" }),
|
|
114438
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u4EBA\u5DE5\u5BA1\u6838" }),
|
|
114439
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("i", { children: "\u2192" }),
|
|
114440
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u77E5\u8BC6\u5E93 / Skill Registry" })
|
|
114684
114441
|
] }),
|
|
114685
|
-
/* @__PURE__ */ (0,
|
|
114686
|
-
/* @__PURE__ */ (0,
|
|
114687
|
-
/* @__PURE__ */ (0,
|
|
114442
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: styles.cardDescription, children: "\u76EE\u524D\u6CA1\u6709\u5355\u72EC\u7684 Wiki Card \u8D28\u91CF\u6821\u9A8C\uFF1B\u4EBA\u5DE5\u5224\u65AD\u901A\u8FC7\u5361\u7247\u9884\u89C8\u91CC\u7684 review \u4E0E\u5907\u6CE8\u8BB0\u5F55\u3002" }),
|
|
114443
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Button, { variant: "default", onClick: () => onSelect("daily-update"), children: [
|
|
114444
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Zap, { size: 14 }),
|
|
114688
114445
|
"\u67E5\u770B\u81EA\u8FDB\u5316\u94FE\u8DEF"
|
|
114689
114446
|
] })
|
|
114690
114447
|
] })
|
|
@@ -114694,8 +114451,8 @@ function MemoryTab({ onSelect, stats, version: version3 }) {
|
|
|
114694
114451
|
function EvalTab({ visible, settings, onSelect }) {
|
|
114695
114452
|
const snapshot = useScope(settings);
|
|
114696
114453
|
const value = snapshot.value ?? {};
|
|
114697
|
-
return /* @__PURE__ */ (0,
|
|
114698
|
-
/* @__PURE__ */ (0,
|
|
114454
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: styles.viewStack, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.evalGrid, children: [
|
|
114455
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114699
114456
|
RecallPanel,
|
|
114700
114457
|
{
|
|
114701
114458
|
visible,
|
|
@@ -114707,45 +114464,45 @@ function EvalTab({ visible, settings, onSelect }) {
|
|
|
114707
114464
|
}
|
|
114708
114465
|
}
|
|
114709
114466
|
),
|
|
114710
|
-
/* @__PURE__ */ (0,
|
|
114711
|
-
/* @__PURE__ */ (0,
|
|
114712
|
-
/* @__PURE__ */ (0,
|
|
114713
|
-
/* @__PURE__ */ (0,
|
|
114467
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Card, { className: styles.evalPlan, children: [
|
|
114468
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.cardHeader, children: [
|
|
114469
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("h3", { children: [
|
|
114470
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(ChartBar, { size: 14 }),
|
|
114714
114471
|
"\u8BC4\u6D4B\u8BA1\u5212"
|
|
114715
114472
|
] }) }),
|
|
114716
|
-
/* @__PURE__ */ (0,
|
|
114473
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Badge, { tone: "warning", children: "\u5360\u4F4D" })
|
|
114717
114474
|
] }),
|
|
114718
|
-
/* @__PURE__ */ (0,
|
|
114719
|
-
/* @__PURE__ */ (0,
|
|
114720
|
-
/* @__PURE__ */ (0,
|
|
114721
|
-
/* @__PURE__ */ (0,
|
|
114722
|
-
/* @__PURE__ */ (0,
|
|
114475
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: styles.cardDescription, children: "\u8BC4\u6D4B\u96C6\u63A5\u5165\u524D\uFF0C\u8FD9\u4E00\u680F\u53EA\u58F0\u660E\u8981\u8BC4\u4EC0\u4E48\uFF1B\u5DE6\u8FB9\u7684\u5355\u95EE\u9898\u68C0\u67E5\u5DF2\u7ECF\u662F\u771F\u5B9E\u94FE\u8DEF\u3002" }),
|
|
114476
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.evalRows, children: [
|
|
114477
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { children: [
|
|
114478
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u7F16\u8BD1\u6B63\u786E\u6027" }),
|
|
114479
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: "\u5F85\u8FD0\u884C" })
|
|
114723
114480
|
] }),
|
|
114724
|
-
/* @__PURE__ */ (0,
|
|
114725
|
-
/* @__PURE__ */ (0,
|
|
114726
|
-
/* @__PURE__ */ (0,
|
|
114481
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { children: [
|
|
114482
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "Hybrid Recall@10\uFF08Coordinate + \u5173\u952E\u8BCD + \u5411\u91CF\uFF09" }),
|
|
114483
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: "\u5F85\u8FD0\u884C" })
|
|
114727
114484
|
] }),
|
|
114728
|
-
/* @__PURE__ */ (0,
|
|
114729
|
-
/* @__PURE__ */ (0,
|
|
114730
|
-
/* @__PURE__ */ (0,
|
|
114485
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { children: [
|
|
114486
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u5F15\u7528\u53EF\u8FFD\u6EAF\u6027" }),
|
|
114487
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: "\u5F85\u8FD0\u884C" })
|
|
114731
114488
|
] }),
|
|
114732
|
-
/* @__PURE__ */ (0,
|
|
114733
|
-
/* @__PURE__ */ (0,
|
|
114734
|
-
/* @__PURE__ */ (0,
|
|
114489
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { children: [
|
|
114490
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u591A\u6A21\u6001 Markdown" }),
|
|
114491
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: "\u5F85\u8FD0\u884C" })
|
|
114735
114492
|
] }),
|
|
114736
|
-
/* @__PURE__ */ (0,
|
|
114737
|
-
/* @__PURE__ */ (0,
|
|
114738
|
-
/* @__PURE__ */ (0,
|
|
114493
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { children: [
|
|
114494
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "\u589E\u91CF\u7F16\u8BD1\u590D\u7528\u7387" }),
|
|
114495
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("strong", { children: "\u5F85\u8FD0\u884C" })
|
|
114739
114496
|
] })
|
|
114740
114497
|
] }),
|
|
114741
|
-
/* @__PURE__ */ (0,
|
|
114498
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { variant: "outline", onClick: () => onSelect("build"), children: "\u67E5\u770B\u6784\u5EFA\u8282\u70B9" })
|
|
114742
114499
|
] })
|
|
114743
114500
|
] }) });
|
|
114744
114501
|
}
|
|
114745
114502
|
function TabGuideAction({ id: id3, onOpenFailed }) {
|
|
114746
114503
|
const guide = TAB_GUIDE[id3];
|
|
114747
114504
|
if (!guide) return null;
|
|
114748
|
-
return /* @__PURE__ */ (0,
|
|
114505
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: styles.viewGuideBar, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114749
114506
|
InfoHint,
|
|
114750
114507
|
{
|
|
114751
114508
|
text: `\u67E5\u770B${guide.label}\u8BF4\u660E`,
|
|
@@ -114755,15 +114512,16 @@ function TabGuideAction({ id: id3, onOpenFailed }) {
|
|
|
114755
114512
|
) });
|
|
114756
114513
|
}
|
|
114757
114514
|
function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote }) {
|
|
114758
|
-
const [activeTab, setActiveTab] = (0,
|
|
114759
|
-
const [stats, setStats] = (0,
|
|
114760
|
-
const [statsLoading, setStatsLoading] = (0,
|
|
114761
|
-
const [statsError, setStatsError] = (0,
|
|
114762
|
-
const [selected, setSelected] = (0,
|
|
114763
|
-
const [selectedDomain, setSelectedDomain] = (0,
|
|
114764
|
-
const [notice, setNotice] = (0,
|
|
114765
|
-
const [knowledgeFocus, setKnowledgeFocus] = (0,
|
|
114766
|
-
const [
|
|
114515
|
+
const [activeTab, setActiveTab] = (0, import_react30.useState)(() => readRemembered("view", VIEW_ORDER) ?? "overview");
|
|
114516
|
+
const [stats, setStats] = (0, import_react30.useState)({});
|
|
114517
|
+
const [statsLoading, setStatsLoading] = (0, import_react30.useState)(false);
|
|
114518
|
+
const [statsError, setStatsError] = (0, import_react30.useState)(null);
|
|
114519
|
+
const [selected, setSelected] = (0, import_react30.useState)(null);
|
|
114520
|
+
const [selectedDomain, setSelectedDomain] = (0, import_react30.useState)(null);
|
|
114521
|
+
const [notice, setNotice] = (0, import_react30.useState)(null);
|
|
114522
|
+
const [knowledgeFocus, setKnowledgeFocus] = (0, import_react30.useState)(void 0);
|
|
114523
|
+
const [activeKnowledgeBase, setActiveKnowledgeBase] = (0, import_react30.useState)(null);
|
|
114524
|
+
const [settingsTarget, setSettingsTarget] = (0, import_react30.useState)(null);
|
|
114767
114525
|
const knowledgeSnapshot = useScope(settings?.knowledge);
|
|
114768
114526
|
const { layout: layout2, error: layoutError, reload: reloadLayout } = useAgentLayout(knowledgeSnapshot.revision ?? 0);
|
|
114769
114527
|
const environment = useKnowledgeEnvironment(visible, knowledgeSnapshot.revision ?? 0);
|
|
@@ -114778,10 +114536,10 @@ function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote
|
|
|
114778
114536
|
for (const [what, migration] of migrations) {
|
|
114779
114537
|
if (migration?.status === "failed") layoutFailures.push(`${what}\u642C\u8FC1\u672A\u5B8C\u6210\uFF1A${migration.reason}\u3002\u540C\u540D\u5185\u5BB9\u6CA1\u6709\u88AB\u8986\u76D6\uFF0C\u8BF7\u68C0\u67E5\u65B0\u65E7\u76EE\u5F55\u3002`);
|
|
114780
114538
|
}
|
|
114781
|
-
const openSettings = (0,
|
|
114539
|
+
const openSettings = (0, import_react30.useCallback)((target) => {
|
|
114782
114540
|
setSettingsTarget(target);
|
|
114783
114541
|
}, []);
|
|
114784
|
-
const refreshStats = (0,
|
|
114542
|
+
const refreshStats = (0, import_react30.useCallback)(async () => {
|
|
114785
114543
|
setStatsLoading(true);
|
|
114786
114544
|
setStatsError(null);
|
|
114787
114545
|
try {
|
|
@@ -114793,7 +114551,7 @@ function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote
|
|
|
114793
114551
|
setStatsLoading(false);
|
|
114794
114552
|
}
|
|
114795
114553
|
}, []);
|
|
114796
|
-
(0,
|
|
114554
|
+
(0, import_react30.useEffect)(() => {
|
|
114797
114555
|
if (visible) void refreshStats();
|
|
114798
114556
|
}, [visible, refreshStats]);
|
|
114799
114557
|
const sourceCount = sourceCountOf(stats);
|
|
@@ -114808,7 +114566,7 @@ function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote
|
|
|
114808
114566
|
setSelected(null);
|
|
114809
114567
|
setNotice(null);
|
|
114810
114568
|
};
|
|
114811
|
-
const changeTab = (0,
|
|
114569
|
+
const changeTab = (0, import_react30.useCallback)((tab) => {
|
|
114812
114570
|
setActiveTab(tab);
|
|
114813
114571
|
remember("view", tab);
|
|
114814
114572
|
}, []);
|
|
@@ -114817,7 +114575,7 @@ function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote
|
|
|
114817
114575
|
if (tab === "knowledge" && knowledgeTab) setKnowledgeFocus({ tab: knowledgeTab, nonce: Date.now() });
|
|
114818
114576
|
};
|
|
114819
114577
|
const jumpLabel = selected ? `<${NODE_META[selected].title}>\uFF1A${NODE_STATUS_LABEL[NODE_META[selected].status]}` : null;
|
|
114820
|
-
const inspector = selected ? /* @__PURE__ */ (0,
|
|
114578
|
+
const inspector = selected ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114821
114579
|
NodeLogicPanel,
|
|
114822
114580
|
{
|
|
114823
114581
|
selected,
|
|
@@ -114827,7 +114585,7 @@ function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote
|
|
|
114827
114585
|
...onOpenTab ? { onOpenTab } : {},
|
|
114828
114586
|
onClose: () => selectNode(null)
|
|
114829
114587
|
}
|
|
114830
|
-
) : selectedDomain ? /* @__PURE__ */ (0,
|
|
114588
|
+
) : selectedDomain ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114831
114589
|
ProblemDetailPanel,
|
|
114832
114590
|
{
|
|
114833
114591
|
domainId: selectedDomain,
|
|
@@ -114837,17 +114595,17 @@ function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote
|
|
|
114837
114595
|
onClose: () => selectDomain(null)
|
|
114838
114596
|
}
|
|
114839
114597
|
) : null;
|
|
114840
|
-
return /* @__PURE__ */ (0,
|
|
114841
|
-
/* @__PURE__ */ (0,
|
|
114842
|
-
/* @__PURE__ */ (0,
|
|
114843
|
-
/* @__PURE__ */ (0,
|
|
114598
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("section", { className: styles.panel, "aria-label": "Tita Data Agent", children: [
|
|
114599
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Tabs3, { className: styles.panelTabs, value: activeTab, onValueChange: (value) => changeTab(value), children: [
|
|
114600
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: styles.tabBar, children: [
|
|
114601
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "tita-tabBarTabsViewport", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(TabsList3, { className: cn(styles.tabsList, "w-max min-w-max"), children: VIEW_ORDER.map((id3) => {
|
|
114844
114602
|
const TabIcon = VIEWS[id3].icon;
|
|
114845
|
-
return /* @__PURE__ */ (0,
|
|
114846
|
-
/* @__PURE__ */ (0,
|
|
114603
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(TabsTrigger3, { className: "flex-none", value: id3, children: [
|
|
114604
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(TabIcon, { size: 13 }),
|
|
114847
114605
|
VIEWS[id3].label
|
|
114848
114606
|
] }, id3);
|
|
114849
114607
|
}) }) }),
|
|
114850
|
-
/* @__PURE__ */ (0,
|
|
114608
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114851
114609
|
Button,
|
|
114852
114610
|
{
|
|
114853
114611
|
variant: "ghost",
|
|
@@ -114856,25 +114614,25 @@ function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote
|
|
|
114856
114614
|
"aria-label": "\u8BBE\u7F6E",
|
|
114857
114615
|
title: "\u8BBE\u7F6E \xB7 \u672C\u65B9\u6848\u53C2\u6570",
|
|
114858
114616
|
onClick: () => openSettings("behavior"),
|
|
114859
|
-
children: /* @__PURE__ */ (0,
|
|
114617
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Settings2, { size: 15 })
|
|
114860
114618
|
}
|
|
114861
114619
|
)
|
|
114862
114620
|
] }),
|
|
114863
|
-
/* @__PURE__ */ (0,
|
|
114864
|
-
/* @__PURE__ */ (0,
|
|
114865
|
-
(statsError || statsLoading) && /* @__PURE__ */ (0,
|
|
114866
|
-
/* @__PURE__ */ (0,
|
|
114621
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(EnvironmentNotice, { controller: environment, onOpen: () => openSettings("environment") }),
|
|
114622
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: cn(styles.content, (activeTab === "attribution" || activeTab === "overview") && styles.contentStage), children: [
|
|
114623
|
+
(statsError || statsLoading) && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: styles.viewStatus, role: "status", children: statsError ? /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
|
|
114624
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(CircleAlert, { size: 13 }),
|
|
114867
114625
|
"\u6570\u636E\u8BFB\u53D6\u5931\u8D25\uFF1A",
|
|
114868
114626
|
statsError,
|
|
114869
|
-
/* @__PURE__ */ (0,
|
|
114627
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { variant: "ghost", size: "sm", disabled: statsLoading, onClick: () => void refreshStats(), children: "\u91CD\u65B0\u8BFB\u53D6" })
|
|
114870
114628
|
] }) : "\u6B63\u5728\u8BFB\u53D6\u77E5\u8BC6\u5E93\u7EDF\u8BA1\u2026" }),
|
|
114871
|
-
notice && /* @__PURE__ */ (0,
|
|
114872
|
-
/* @__PURE__ */ (0,
|
|
114873
|
-
/* @__PURE__ */ (0,
|
|
114874
|
-
/* @__PURE__ */ (0,
|
|
114629
|
+
notice && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Card, { className: cn(styles.notice, notice.tone === "error" ? styles.noticeError : styles.noticeSuccess), role: "status", children: [
|
|
114630
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(CircleAlert, { size: 16 }),
|
|
114631
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: notice.text }),
|
|
114632
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { variant: "ghost", size: "icon", "aria-label": "\u5173\u95ED\u63D0\u793A", title: "\u5173\u95ED\u63D0\u793A", onClick: () => setNotice(null), children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(X, { size: 14 }) })
|
|
114875
114633
|
] }),
|
|
114876
|
-
/* @__PURE__ */ (0,
|
|
114877
|
-
/* @__PURE__ */ (0,
|
|
114634
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(TabsContent3, { value: "overview", className: styles.stageContent, children: [
|
|
114635
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114878
114636
|
AgentArchitectureGraph,
|
|
114879
114637
|
{
|
|
114880
114638
|
stats,
|
|
@@ -114887,49 +114645,54 @@ function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote
|
|
|
114887
114645
|
...inspector ? { inspector } : {}
|
|
114888
114646
|
}
|
|
114889
114647
|
),
|
|
114890
|
-
/* @__PURE__ */ (0,
|
|
114648
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("nav", { className: styles.srOnly, "aria-label": "\u67B6\u6784\u8282\u70B9\u5217\u8868", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("ul", { children: NODE_ORDER.map((id3) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("button", { type: "button", onClick: () => selectNode(id3), children: [
|
|
114891
114649
|
NODE_META[id3].title,
|
|
114892
114650
|
"\uFF1A",
|
|
114893
114651
|
NODE_META[id3].detail
|
|
114894
114652
|
] }) }, id3)) }) }),
|
|
114895
|
-
/* @__PURE__ */ (0,
|
|
114653
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("nav", { className: styles.srOnly, "aria-label": "\u95EE\u9898\u57DF\u5217\u8868", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("ul", { children: PROBLEM_DOMAINS.map((domain) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("button", { type: "button", onClick: () => selectDomain(domain.id), children: [
|
|
114896
114654
|
domain.title,
|
|
114897
114655
|
"\uFF1A",
|
|
114898
114656
|
domain.question
|
|
114899
114657
|
] }) }, domain.id)) }) }),
|
|
114900
|
-
/* @__PURE__ */ (0,
|
|
114658
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: styles.srOnly, role: "status", "aria-live": "polite", children: jumpLabel ?? "" })
|
|
114901
114659
|
] }),
|
|
114902
|
-
/* @__PURE__ */ (0,
|
|
114903
|
-
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(TabsContent3, { value: "knowledge", forceMount: true, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
114660
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(TabsContent3, { value: "knowledge", forceMount: true, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114904
114661
|
KnowledgeBaseTab,
|
|
114905
114662
|
{
|
|
114906
114663
|
visible: visible && activeTab === "knowledge",
|
|
114907
114664
|
onChanged: () => void refreshStats(),
|
|
114665
|
+
onActiveBaseChange: setActiveKnowledgeBase,
|
|
114908
114666
|
...settings?.knowledge ? { knowledge: settings.knowledge } : {},
|
|
114909
114667
|
...knowledgeFocus ? { focus: knowledgeFocus } : {},
|
|
114910
114668
|
onOpenSettings: openSettings
|
|
114911
114669
|
}
|
|
114912
114670
|
) }),
|
|
114913
|
-
/* @__PURE__ */ (0,
|
|
114671
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(TabsContent3, { value: "attribution", className: styles.stageContent, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114914
114672
|
AttributionTab,
|
|
114915
114673
|
{
|
|
114916
114674
|
visible: visible && activeTab === "attribution",
|
|
114917
114675
|
...currentQuestion ? { activeQuestion: currentQuestion } : {},
|
|
114918
|
-
|
|
114676
|
+
...activeKnowledgeBase ? { kbId: activeKnowledgeBase.id } : {},
|
|
114677
|
+
onOpenKnowledge: () => changeTab("knowledge"),
|
|
114678
|
+
onOpenWiki: (card) => {
|
|
114679
|
+
changeTab("knowledge");
|
|
114680
|
+
setKnowledgeFocus({ tab: "wiki", nonce: Date.now(), wikiEntityId: card.entityId, wikiEntityType: card.entityType });
|
|
114681
|
+
}
|
|
114919
114682
|
}
|
|
114920
114683
|
) }),
|
|
114921
|
-
/* @__PURE__ */ (0,
|
|
114922
|
-
/* @__PURE__ */ (0,
|
|
114923
|
-
/* @__PURE__ */ (0,
|
|
114684
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(TabsContent3, { value: "memory", children: [
|
|
114685
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(TabGuideAction, { id: "memory", onOpenFailed: (message) => setNotice({ tone: "error", text: message }) }),
|
|
114686
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(MemoryTab, { onSelect: selectNode, stats, version: version3 })
|
|
114924
114687
|
] }),
|
|
114925
|
-
/* @__PURE__ */ (0,
|
|
114926
|
-
/* @__PURE__ */ (0,
|
|
114927
|
-
/* @__PURE__ */ (0,
|
|
114688
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(TabsContent3, { value: "eval", children: [
|
|
114689
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(TabGuideAction, { id: "eval", onOpenFailed: (message) => setNotice({ tone: "error", text: message }) }),
|
|
114690
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(EvalTab, { visible: visible && activeTab === "eval", ...settings?.knowledge ? { settings: settings.knowledge } : {}, onSelect: selectNode })
|
|
114928
114691
|
] }),
|
|
114929
|
-
/* @__PURE__ */ (0,
|
|
114692
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(TabsContent3, { value: "operations", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(OperationLogTab, { visible: visible && activeTab === "operations" }) })
|
|
114930
114693
|
] })
|
|
114931
114694
|
] }),
|
|
114932
|
-
settingsTarget !== null && /* @__PURE__ */ (0,
|
|
114695
|
+
settingsTarget !== null && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
114933
114696
|
KnowledgeSettingsDrawer,
|
|
114934
114697
|
{
|
|
114935
114698
|
target: settingsTarget,
|
|
@@ -114947,8 +114710,8 @@ function KnowledgePanel({ visible, currentQuestion, onOpenTab, settings, remote
|
|
|
114947
114710
|
}
|
|
114948
114711
|
|
|
114949
114712
|
// src/client/ledger.tsx
|
|
114950
|
-
var
|
|
114951
|
-
var
|
|
114713
|
+
var import_react31 = require("react");
|
|
114714
|
+
var import_jsx_runtime65 = require("react/jsx-runtime");
|
|
114952
114715
|
function estWidth(text, size5) {
|
|
114953
114716
|
let width2 = 0;
|
|
114954
114717
|
for (const ch of String(text)) {
|
|
@@ -114969,14 +114732,14 @@ function segmentWidths(values, usable, min7) {
|
|
|
114969
114732
|
return naive.map((w3, i3) => pinned.includes(i3) ? min7 : restUsable * values[i3] / restTotal);
|
|
114970
114733
|
}
|
|
114971
114734
|
function SegBar({ segments, width: width2, height, radius = 2 }) {
|
|
114972
|
-
const clipId = `tita-kb-bar-${(0,
|
|
114735
|
+
const clipId = `tita-kb-bar-${(0, import_react31.useId)().replace(/[^a-zA-Z0-9]/g, "")}`;
|
|
114973
114736
|
const live = segments.filter((segment) => segment.value > 0);
|
|
114974
114737
|
if (live.length === 0) return null;
|
|
114975
114738
|
const gap = live.length > 1 ? 2 : 0;
|
|
114976
114739
|
const widths = segmentWidths(live.map((s4) => s4.value), width2 - gap * (live.length - 1), 3);
|
|
114977
114740
|
let cursor = 0;
|
|
114978
114741
|
const rects = live.map((segment, index3) => {
|
|
114979
|
-
const rect2 = /* @__PURE__ */ (0,
|
|
114742
|
+
const rect2 = /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
114980
114743
|
"rect",
|
|
114981
114744
|
{
|
|
114982
114745
|
className: `tita-kbSeg tita-kbSeg-${segment.tone}`,
|
|
@@ -114990,18 +114753,18 @@ function SegBar({ segments, width: width2, height, radius = 2 }) {
|
|
|
114990
114753
|
cursor += widths[index3] + gap;
|
|
114991
114754
|
return rect2;
|
|
114992
114755
|
});
|
|
114993
|
-
return /* @__PURE__ */ (0,
|
|
114994
|
-
/* @__PURE__ */ (0,
|
|
114995
|
-
/* @__PURE__ */ (0,
|
|
114756
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("svg", { className: "tita-kbBar", width: width2, height, viewBox: `0 0 ${width2} ${height}`, "aria-hidden": "true", children: [
|
|
114757
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("clipPath", { id: clipId, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("rect", { x: 0, y: 0, width: width2, height, rx: radius }) }) }),
|
|
114758
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("g", { clipPath: `url(#${clipId})`, children: rects })
|
|
114996
114759
|
] });
|
|
114997
114760
|
}
|
|
114998
114761
|
function ScoreStrip({ scores, barWidth = 4, gap = 2, height = 15 }) {
|
|
114999
114762
|
const shown = scores.slice(0, 8);
|
|
115000
114763
|
if (shown.length === 0) return null;
|
|
115001
114764
|
const width2 = shown.length * barWidth + (shown.length - 1) * gap;
|
|
115002
|
-
return /* @__PURE__ */ (0,
|
|
114765
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("svg", { className: "tita-kbBar", width: width2, height, viewBox: `0 0 ${width2} ${height}`, "aria-hidden": "true", children: shown.map((score, index3) => {
|
|
115003
114766
|
const barHeight = Math.max(2.5, Math.min(height, score * height));
|
|
115004
|
-
return /* @__PURE__ */ (0,
|
|
114767
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
115005
114768
|
"rect",
|
|
115006
114769
|
{
|
|
115007
114770
|
className: "tita-kbSeg tita-kbSeg-new",
|
|
@@ -115018,7 +114781,7 @@ function ScoreStrip({ scores, barWidth = 4, gap = 2, height = 15 }) {
|
|
|
115018
114781
|
function GhostLedger({ kind }) {
|
|
115019
114782
|
if (kind === "recall") {
|
|
115020
114783
|
const width2 = 8 * 4 + 7 * 2;
|
|
115021
|
-
return /* @__PURE__ */ (0,
|
|
114784
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("svg", { className: "tita-kbBar", width: width2, height: 15, viewBox: `0 0 ${width2} 15`, "aria-hidden": "true", children: Array.from({ length: 8 }, (_2, index3) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
115022
114785
|
"rect",
|
|
115023
114786
|
{
|
|
115024
114787
|
className: "tita-kbGhost tita-kbPulse",
|
|
@@ -115031,9 +114794,9 @@ function GhostLedger({ kind }) {
|
|
|
115031
114794
|
index3
|
|
115032
114795
|
)) });
|
|
115033
114796
|
}
|
|
115034
|
-
return /* @__PURE__ */ (0,
|
|
115035
|
-
/* @__PURE__ */ (0,
|
|
115036
|
-
/* @__PURE__ */ (0,
|
|
114797
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("svg", { className: "tita-kbBar", width: 126, height: 8, viewBox: "0 0 126 8", "aria-hidden": "true", children: [
|
|
114798
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("rect", { className: "tita-kbGhost tita-kbPulse", x: 0, y: 0, width: 72, height: 8, rx: 2 }),
|
|
114799
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("rect", { className: "tita-kbGhost tita-kbPulse", x: 82, y: 0, width: 44, height: 8, rx: 2 })
|
|
115037
114800
|
] });
|
|
115038
114801
|
}
|
|
115039
114802
|
var W2 = 616;
|
|
@@ -115041,11 +114804,11 @@ function UnitStrip({ total, failed, x: x3, y: y3 }) {
|
|
|
115041
114804
|
const width2 = 10, height = 14, gap = 2.5;
|
|
115042
114805
|
const shown = Math.min(total, 14);
|
|
115043
114806
|
const failedShown = Math.min(failed, shown);
|
|
115044
|
-
return /* @__PURE__ */ (0,
|
|
114807
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
|
|
115045
114808
|
Array.from({ length: shown }, (_2, index3) => {
|
|
115046
114809
|
const isFailed = index3 >= shown - failedShown;
|
|
115047
114810
|
const cx2 = x3 + index3 * (width2 + gap);
|
|
115048
|
-
return /* @__PURE__ */ (0,
|
|
114811
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
115049
114812
|
"path",
|
|
115050
114813
|
{
|
|
115051
114814
|
className: isFailed ? "tita-kbSrcFail" : "tita-kbSrcDoc",
|
|
@@ -115054,7 +114817,7 @@ function UnitStrip({ total, failed, x: x3, y: y3 }) {
|
|
|
115054
114817
|
index3
|
|
115055
114818
|
);
|
|
115056
114819
|
}),
|
|
115057
|
-
total > shown && /* @__PURE__ */ (0,
|
|
114820
|
+
total > shown && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: x3 + shown * (width2 + gap) + 2, y: y3 + height - 2, fontSize: 10.5, children: `+${total - shown}` })
|
|
115058
114821
|
] });
|
|
115059
114822
|
}
|
|
115060
114823
|
function IngestDiagram({ input }) {
|
|
@@ -115067,23 +114830,23 @@ function IngestDiagram({ input }) {
|
|
|
115067
114830
|
source ? `\u5BFC\u5165 ${source.attempted} \u4EFD\u6765\u6E90\uFF1A${source.written} \u4EFD\u5199\u5165\u3001${source.failed} \u4EFD\u5931\u8D25\uFF1B` : `${scope}\uFF1A`,
|
|
115068
114831
|
`\u65B0\u5EFA ${compile.cardsCreated} \u5F20\u3001\u5E76\u5165 ${compile.cardsUpdated} \u5F20\u3001\u590D\u7528 ${compile.cardsReused} \u5F20\u5361\u7247`
|
|
115069
114832
|
].join("") : `${source ? `\u5BFC\u5165 ${source.attempted} \u4EFD\u6765\u6E90\uFF1A${source.written} \u4EFD\u5199\u5165\u3001${source.failed} \u4EFD\u5931\u8D25\uFF1B` : `${scope}\uFF1A`}\u672C\u6B21\u6CA1\u6709\u7F16\u8BD1`;
|
|
115070
|
-
return /* @__PURE__ */ (0,
|
|
115071
|
-
source ? /* @__PURE__ */ (0,
|
|
115072
|
-
/* @__PURE__ */ (0,
|
|
115073
|
-
/* @__PURE__ */ (0,
|
|
115074
|
-
/* @__PURE__ */ (0,
|
|
115075
|
-
/* @__PURE__ */ (0,
|
|
115076
|
-
/* @__PURE__ */ (0,
|
|
115077
|
-
] }) : /* @__PURE__ */ (0,
|
|
115078
|
-
source && /* @__PURE__ */ (0,
|
|
115079
|
-
/* @__PURE__ */ (0,
|
|
115080
|
-
/* @__PURE__ */ (0,
|
|
115081
|
-
/* @__PURE__ */ (0,
|
|
115082
|
-
compile && /* @__PURE__ */ (0,
|
|
114833
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("svg", { className: "tita-kbDiagram", viewBox: `0 0 ${W2} ${height}`, role: "img", "aria-label": label, preserveAspectRatio: "xMinYMin meet", children: [
|
|
114834
|
+
source ? /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
|
|
114835
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: 0, y: 12, fontSize: 10.5, letterSpacing: ".06em", children: "\u6765\u6E90" }),
|
|
114836
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbInk", x: 0, y: 40, fontSize: 19, fontWeight: 700, children: source.attempted }),
|
|
114837
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbMuted", x: estWidth(String(source.attempted), 19) + 6, y: 40, fontSize: 11.5, children: "\u4EFD\u6765\u6E90" }),
|
|
114838
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(UnitStrip, { total: source.attempted, failed: source.failed, x: 0, y: 50 }),
|
|
114839
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: source.failed > 0 ? "tita-kbDanger" : "tita-kbMuted", x: 0, y: 80, fontSize: 11, children: source.failed > 0 ? `${source.written} \u5199\u5165 \xB7 ${source.failed} \u5931\u8D25` : `${source.written} \u4EFD\u5168\u90E8\u5199\u5165` })
|
|
114840
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: 0, y: 12, fontSize: 10.5, letterSpacing: ".06em", children: `\u7F16\u8BD1 \xB7 ${scope}` }),
|
|
114841
|
+
source && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
|
|
114842
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("line", { className: "tita-kbConnector", x1: 196, y1: 57, x2: productX - 14, y2: 57, strokeWidth: 1 }),
|
|
114843
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("path", { className: "tita-kbArrow", d: `M${productX - 6} 57l-7 -4v8z` }),
|
|
114844
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbMuted", x: middle, y: 47, fontSize: 11, textAnchor: "middle", children: "\u7F16\u8BD1" }),
|
|
114845
|
+
compile && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: middle, y: 74, fontSize: 10.5, textAnchor: "middle", children: `\u91CD\u62BD ${compile.sourcesExtracted ?? 0} \xB7 \u8DF3\u8FC7 ${compile.sourcesSkipped ?? 0}` })
|
|
115083
114846
|
] }),
|
|
115084
|
-
compile ? /* @__PURE__ */ (0,
|
|
115085
|
-
/* @__PURE__ */ (0,
|
|
115086
|
-
/* @__PURE__ */ (0,
|
|
114847
|
+
compile ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(IngestProduct, { compile, x: productX, barWidth, showExtracted: !source }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
|
|
114848
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbMuted", x: productX, y: 40, fontSize: 13, children: "\u672A\u7F16\u8BD1" }),
|
|
114849
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: productX, y: 60, fontSize: 11, children: "\u8FD9\u6B21\u8C03\u7528\u5E26\u4E86 compile: false \u2014\u2014 \u5361\u7247\u8FD8\u6CA1\u751F\u6210\u3002" })
|
|
115087
114850
|
] })
|
|
115088
114851
|
] });
|
|
115089
114852
|
}
|
|
@@ -115102,9 +114865,9 @@ function IngestProduct({ compile, x: x3, barWidth, showExtracted }) {
|
|
|
115102
114865
|
const textX = cursor;
|
|
115103
114866
|
const content = `${text} ${value}`;
|
|
115104
114867
|
cursor += estWidth(content, 11) + 4;
|
|
115105
|
-
return /* @__PURE__ */ (0,
|
|
115106
|
-
/* @__PURE__ */ (0,
|
|
115107
|
-
/* @__PURE__ */ (0,
|
|
114868
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("g", { children: [
|
|
114869
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("rect", { className: `tita-kbSeg-${tone}`, x: swatchX, y: 70, width: 7, height: 7, rx: 1.5 }),
|
|
114870
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbMuted", x: textX, y: 77, fontSize: 11, children: content })
|
|
115108
114871
|
] }, tone);
|
|
115109
114872
|
});
|
|
115110
114873
|
const footer = [
|
|
@@ -115113,10 +114876,10 @@ function IngestProduct({ compile, x: x3, barWidth, showExtracted }) {
|
|
|
115113
114876
|
compile.embedding ? `\u5411\u91CF ${compile.embedding}` : "",
|
|
115114
114877
|
compile.notesRecompiled !== void 0 ? `\u53EC\u56DE\u7247\u6BB5\u590D\u7528 ${compile.notesReused ?? 0} / \u91CD\u7F16 ${compile.notesRecompiled}` : ""
|
|
115115
114878
|
].filter(Boolean).join(" \xB7 ");
|
|
115116
|
-
return /* @__PURE__ */ (0,
|
|
115117
|
-
/* @__PURE__ */ (0,
|
|
115118
|
-
/* @__PURE__ */ (0,
|
|
115119
|
-
/* @__PURE__ */ (0,
|
|
114879
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
|
|
114880
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbInk", x: x3, y: 40, fontSize: 19, fontWeight: 700, children: cards }),
|
|
114881
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbMuted", x: x3 + estWidth(String(cards), 19) + 6, y: 40, fontSize: 11.5, children: "\u5F20\u5361\u7247" }),
|
|
114882
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("g", { transform: `translate(${x3} 51)`, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
115120
114883
|
SegBar,
|
|
115121
114884
|
{
|
|
115122
114885
|
segments: legend.map(([, value, tone]) => ({ value, tone })),
|
|
@@ -115125,7 +114888,7 @@ function IngestProduct({ compile, x: x3, barWidth, showExtracted }) {
|
|
|
115125
114888
|
}
|
|
115126
114889
|
) }),
|
|
115127
114890
|
legendNodes,
|
|
115128
|
-
footer && /* @__PURE__ */ (0,
|
|
114891
|
+
footer && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: x3, y: 96, fontSize: 10.5, children: footer })
|
|
115129
114892
|
] });
|
|
115130
114893
|
}
|
|
115131
114894
|
var ROW = 26;
|
|
@@ -115134,7 +114897,7 @@ var BAR_W = 240;
|
|
|
115134
114897
|
function RecallDiagram({ input }) {
|
|
115135
114898
|
const hits = input.hits;
|
|
115136
114899
|
if (input.insufficientEvidence || hits.length === 0) {
|
|
115137
|
-
return /* @__PURE__ */ (0,
|
|
114900
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
115138
114901
|
"svg",
|
|
115139
114902
|
{
|
|
115140
114903
|
className: "tita-kbDiagram",
|
|
@@ -115143,10 +114906,10 @@ function RecallDiagram({ input }) {
|
|
|
115143
114906
|
"aria-label": `\u53EC\u56DE\u300C${input.query}\u300D\u6CA1\u6709\u547D\u4E2D\uFF1A\u5E93\u91CC\u6CA1\u6709\u4E00\u6761\u8D8A\u8FC7\u76F8\u5173\u6027\u9608\u503C`,
|
|
115144
114907
|
preserveAspectRatio: "xMinYMin meet",
|
|
115145
114908
|
children: [
|
|
115146
|
-
/* @__PURE__ */ (0,
|
|
115147
|
-
/* @__PURE__ */ (0,
|
|
115148
|
-
/* @__PURE__ */ (0,
|
|
115149
|
-
/* @__PURE__ */ (0,
|
|
114909
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbInk", x: 0, y: 14, fontSize: 12.5, children: `\u67E5\u8BE2\u300C${input.query}\u300D` }),
|
|
114910
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("line", { className: "tita-kbRule", x1: 0, y1: 46, x2: W2, y2: 46, strokeWidth: 1, strokeDasharray: "3 3" }),
|
|
114911
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbMuted", x: W2 / 2, y: 38, fontSize: 12, textAnchor: "middle", children: "\u5E93\u91CC\u6CA1\u6709\u4E00\u6761\u8D8A\u8FC7\u76F8\u5173\u6027\u9608\u503C" }),
|
|
114912
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: W2 / 2, y: 68, fontSize: 11, textAnchor: "middle", children: "\u8FD9\u662F\u7ED3\u8BBA\uFF0C\u4E0D\u662F\u9519\u8BEF\u3002\u628A\u6765\u6E90\u5BFC\u8FDB\u6765\u518D\u95EE\u4E00\u6B21\u3002" })
|
|
115150
114913
|
]
|
|
115151
114914
|
}
|
|
115152
114915
|
);
|
|
@@ -115167,10 +114930,10 @@ function RecallDiagram({ input }) {
|
|
|
115167
114930
|
const stepNodes = steps.map((text, index3) => {
|
|
115168
114931
|
const nodes = [];
|
|
115169
114932
|
if (index3 > 0) {
|
|
115170
|
-
nodes.push(/* @__PURE__ */ (0,
|
|
114933
|
+
nodes.push(/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("path", { className: "tita-kbArrow", d: `M${stepX} 26.5l5 3.5-5 3.5z` }, `a${index3}`));
|
|
115171
114934
|
stepX += 16;
|
|
115172
114935
|
}
|
|
115173
|
-
nodes.push(/* @__PURE__ */ (0,
|
|
114936
|
+
nodes.push(/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: index3 === 2 ? "tita-kbMuted" : "tita-kbFaint", x: stepX, y: 34, fontSize: 11, children: text }, `t${index3}`));
|
|
115174
114937
|
stepX += estWidth(text, 11);
|
|
115175
114938
|
return nodes;
|
|
115176
114939
|
});
|
|
@@ -115180,7 +114943,7 @@ function RecallDiagram({ input }) {
|
|
|
115180
114943
|
hits.some((hit) => typeof hit.reviewScore === "number") ? "\u865A\u7EBF = \u4EBA\u5DE5\u8BC4\u5206" : ""
|
|
115181
114944
|
].filter(Boolean).join(" \xB7 ");
|
|
115182
114945
|
const footerY = top + hits.length * ROW + 12;
|
|
115183
|
-
return /* @__PURE__ */ (0,
|
|
114946
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
115184
114947
|
"svg",
|
|
115185
114948
|
{
|
|
115186
114949
|
className: "tita-kbDiagram",
|
|
@@ -115189,21 +114952,21 @@ function RecallDiagram({ input }) {
|
|
|
115189
114952
|
"aria-label": `\u53EC\u56DE\u300C${input.query}\u300D\uFF1A\u547D\u4E2D ${hits.length} \u6761\uFF0C\u6700\u9AD8 ${Math.max(...scores).toFixed(3)}`,
|
|
115190
114953
|
preserveAspectRatio: "xMinYMin meet",
|
|
115191
114954
|
children: [
|
|
115192
|
-
/* @__PURE__ */ (0,
|
|
115193
|
-
head2 && /* @__PURE__ */ (0,
|
|
114955
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbInk", x: 0, y: 14, fontSize: 12.5, children: `\u67E5\u8BE2\u300C${input.query}\u300D` }),
|
|
114956
|
+
head2 && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: W2, y: 14, fontSize: 10.5, textAnchor: "end", children: head2 }),
|
|
115194
114957
|
stepNodes,
|
|
115195
|
-
/* @__PURE__ */ (0,
|
|
114958
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("line", { className: "tita-kbRule", x1: 0, y1: 46, x2: W2, y2: 46, strokeWidth: 1 }),
|
|
115196
114959
|
hits.map((hit, index3) => {
|
|
115197
114960
|
const y3 = top + index3 * ROW;
|
|
115198
114961
|
const score = typeof hit.rerankScore === "number" ? hit.rerankScore : hit.score;
|
|
115199
114962
|
const barWidth = Math.max(2, score / domain * BAR_W);
|
|
115200
114963
|
const review = hit.reviewScore;
|
|
115201
|
-
return /* @__PURE__ */ (0,
|
|
115202
|
-
/* @__PURE__ */ (0,
|
|
115203
|
-
/* @__PURE__ */ (0,
|
|
115204
|
-
/* @__PURE__ */ (0,
|
|
115205
|
-
/* @__PURE__ */ (0,
|
|
115206
|
-
typeof review === "number" && /* @__PURE__ */ (0,
|
|
114964
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("g", { children: [
|
|
114965
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("title", { children: `${hit.title} \u2014 ${hit.entityId} \xB7 ${score.toFixed(3)}` }),
|
|
114966
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: 14, y: y3 + 16, fontSize: 10.5, textAnchor: "end", children: index3 + 1 }),
|
|
114967
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("rect", { className: "tita-kbTrack", x: BAR_X, y: y3 + 8, width: BAR_W, height: 9, rx: 2 }),
|
|
114968
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("rect", { className: "tita-kbSeg tita-kbSeg-new", x: BAR_X, y: y3 + 8, width: barWidth.toFixed(2), height: 9, rx: 2 }),
|
|
114969
|
+
typeof review === "number" && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
115207
114970
|
"line",
|
|
115208
114971
|
{
|
|
115209
114972
|
className: "tita-kbRule",
|
|
@@ -115215,14 +114978,14 @@ function RecallDiagram({ input }) {
|
|
|
115215
114978
|
strokeDasharray: "2 1.5"
|
|
115216
114979
|
}
|
|
115217
114980
|
),
|
|
115218
|
-
/* @__PURE__ */ (0,
|
|
115219
|
-
/* @__PURE__ */ (0,
|
|
115220
|
-
/* @__PURE__ */ (0,
|
|
115221
|
-
typeof review === "number" && /* @__PURE__ */ (0,
|
|
114981
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbMuted", x: 308, y: y3 + 16, fontSize: 11, textAnchor: "end", children: score.toFixed(3) }),
|
|
114982
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbInk", x: 320, y: y3 + 12, fontSize: 12, children: truncate(hit.title || hit.entityId, 22) }),
|
|
114983
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint tita-kbMono", x: 320, y: y3 + 24, fontSize: 10.5, children: hit.entityId }),
|
|
114984
|
+
typeof review === "number" && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: W2, y: y3 + 24, fontSize: 10.5, textAnchor: "end", children: `\u4EBA\u5DE5 ${review.toFixed(2)}` })
|
|
115222
114985
|
] }, `${hit.entityType}:${hit.entityId}:${index3}`);
|
|
115223
114986
|
}),
|
|
115224
|
-
/* @__PURE__ */ (0,
|
|
115225
|
-
/* @__PURE__ */ (0,
|
|
114987
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("line", { className: "tita-kbRule", x1: 0, y1: footerY - 14, x2: W2, y2: footerY - 14, strokeWidth: 1 }),
|
|
114988
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("text", { className: "tita-kbFaint", x: 0, y: footerY + 4, fontSize: 10.5, children: footnote })
|
|
115226
114989
|
]
|
|
115227
114990
|
}
|
|
115228
114991
|
);
|
|
@@ -115233,7 +114996,7 @@ function truncate(text, limit) {
|
|
|
115233
114996
|
}
|
|
115234
114997
|
|
|
115235
114998
|
// src/client/KnowledgeToolRow.tsx
|
|
115236
|
-
var
|
|
114999
|
+
var import_jsx_runtime66 = require("react/jsx-runtime");
|
|
115237
115000
|
var KNOWLEDGE_TOOL_KEYS = ["import_sources", "recall_knowledge", "rebuild_knowledge", "add_source", "propose_wiki_cards"];
|
|
115238
115001
|
function argsOf(block) {
|
|
115239
115002
|
const raw = block?.argsRaw;
|
|
@@ -115258,15 +115021,15 @@ function headOf(toolName, args) {
|
|
|
115258
115021
|
const icon = (size5 = 14) => {
|
|
115259
115022
|
switch (toolName) {
|
|
115260
115023
|
case "recall_knowledge":
|
|
115261
|
-
return /* @__PURE__ */ (0,
|
|
115024
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Search, { size: size5 });
|
|
115262
115025
|
case "import_sources":
|
|
115263
|
-
return /* @__PURE__ */ (0,
|
|
115026
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Database, { size: size5 });
|
|
115264
115027
|
case "rebuild_knowledge":
|
|
115265
|
-
return /* @__PURE__ */ (0,
|
|
115028
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(RefreshCw, { size: size5 });
|
|
115266
115029
|
case "propose_wiki_cards":
|
|
115267
|
-
return /* @__PURE__ */ (0,
|
|
115030
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Layers, { size: size5 });
|
|
115268
115031
|
default:
|
|
115269
|
-
return /* @__PURE__ */ (0,
|
|
115032
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(FileText, { size: size5 });
|
|
115270
115033
|
}
|
|
115271
115034
|
};
|
|
115272
115035
|
if (toolName === "recall_knowledge") {
|
|
@@ -115289,28 +115052,28 @@ function headOf(toolName, args) {
|
|
|
115289
115052
|
return { icon: icon(), title: `\u5199\u5165\u6765\u6E90\u300C${args?.title ? short(String(args.title), 30) : "(\u672A\u547D\u540D)"}\u300D` };
|
|
115290
115053
|
}
|
|
115291
115054
|
function Legend2({ tone, label }) {
|
|
115292
|
-
return /* @__PURE__ */ (0,
|
|
115293
|
-
/* @__PURE__ */ (0,
|
|
115055
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("span", { className: "tita-kbLegend", children: [
|
|
115056
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: cn("tita-kbSwatch", `tita-kbSwatch-${tone}`), "aria-hidden": "true" }),
|
|
115294
115057
|
label
|
|
115295
115058
|
] });
|
|
115296
115059
|
}
|
|
115297
115060
|
function cardLegend(created, updated, reused) {
|
|
115298
|
-
const items = [["new", "\u65B0\u5EFA", created], ["merged", "\u5E76\u5165", updated], ["reused", "\u590D\u7528", reused]].filter(([, , value]) => value > 0).map(([tone, label, value]) => /* @__PURE__ */ (0,
|
|
115299
|
-
if (items.length === 0) return /* @__PURE__ */ (0,
|
|
115300
|
-
return /* @__PURE__ */ (0,
|
|
115061
|
+
const items = [["new", "\u65B0\u5EFA", created], ["merged", "\u5E76\u5165", updated], ["reused", "\u590D\u7528", reused]].filter(([, , value]) => value > 0).map(([tone, label, value]) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Legend2, { tone, label: `${label} ${value}` }, tone));
|
|
115062
|
+
if (items.length === 0) return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedgerNote", children: "\u6CA1\u6709\u5361\u7247\u4EA7\u51FA" });
|
|
115063
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_jsx_runtime66.Fragment, { children: items });
|
|
115301
115064
|
}
|
|
115302
115065
|
function CollapsedLedger({ toolName, meta, phase }) {
|
|
115303
115066
|
const isRecall = toolName === "recall_knowledge";
|
|
115304
115067
|
const isCompile = toolName === "import_sources" || toolName === "rebuild_knowledge";
|
|
115305
115068
|
if (phase === "preparing") return null;
|
|
115306
115069
|
if (phase !== "result") {
|
|
115307
|
-
if (isRecall) return /* @__PURE__ */ (0,
|
|
115308
|
-
/* @__PURE__ */ (0,
|
|
115309
|
-
/* @__PURE__ */ (0,
|
|
115070
|
+
if (isRecall) return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("span", { className: "tita-kbLedger", children: [
|
|
115071
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(GhostLedger, { kind: "recall" }),
|
|
115072
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedgerNote", children: "\u68C0\u7D22\u4E2D\u2026" })
|
|
115310
115073
|
] });
|
|
115311
|
-
if (isCompile) return /* @__PURE__ */ (0,
|
|
115312
|
-
/* @__PURE__ */ (0,
|
|
115313
|
-
/* @__PURE__ */ (0,
|
|
115074
|
+
if (isCompile) return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("span", { className: "tita-kbLedger", children: [
|
|
115075
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(GhostLedger, { kind: "ingest" }),
|
|
115076
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedgerNote", children: "\u7F16\u8BD1\u4E2D\u2026" })
|
|
115314
115077
|
] });
|
|
115315
115078
|
return null;
|
|
115316
115079
|
}
|
|
@@ -115319,11 +115082,11 @@ function CollapsedLedger({ toolName, meta, phase }) {
|
|
|
115319
115082
|
const hits = meta.hits ?? [];
|
|
115320
115083
|
const scores = hits.map((hit) => typeof hit.rerankScore === "number" ? hit.rerankScore : hit.score ?? 0);
|
|
115321
115084
|
if (scores.length === 0) {
|
|
115322
|
-
return /* @__PURE__ */ (0,
|
|
115085
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedger", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedgerNote", children: meta.insufficientEvidence ? "\u6CA1\u6709\u5185\u5BB9\u8D8A\u8FC7\u76F8\u5173\u6027\u9608\u503C" : "\u6682\u65E0\u547D\u4E2D" }) });
|
|
115323
115086
|
}
|
|
115324
|
-
return /* @__PURE__ */ (0,
|
|
115325
|
-
/* @__PURE__ */ (0,
|
|
115326
|
-
/* @__PURE__ */ (0,
|
|
115087
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("span", { className: "tita-kbLedger", children: [
|
|
115088
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ScoreStrip, { scores }),
|
|
115089
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("span", { className: "tita-kbLedgerNote", children: [
|
|
115327
115090
|
`\u547D\u4E2D ${hits.length} \u6761 \xB7 \u6700\u9AD8 ${Math.max(...scores).toFixed(2)}`,
|
|
115328
115091
|
meta.contextTopN ? ` \xB7 \u4E0A\u4E0B\u6587 ${meta.contextTopN} \u5F20` : ""
|
|
115329
115092
|
] })
|
|
@@ -115333,25 +115096,25 @@ function CollapsedLedger({ toolName, meta, phase }) {
|
|
|
115333
115096
|
const created = meta.compile?.cardsCreated ?? 0;
|
|
115334
115097
|
const updated = meta.compile?.cardsUpdated ?? 0;
|
|
115335
115098
|
const reused = meta.compile?.cardsReused ?? 0;
|
|
115336
|
-
return /* @__PURE__ */ (0,
|
|
115337
|
-
meta.compile ? /* @__PURE__ */ (0,
|
|
115338
|
-
/* @__PURE__ */ (0,
|
|
115099
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("span", { className: "tita-kbLedger", children: [
|
|
115100
|
+
meta.compile ? /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_jsx_runtime66.Fragment, { children: [
|
|
115101
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(SegBar, { width: 64, height: 8, segments: [
|
|
115339
115102
|
{ value: created, tone: "new" },
|
|
115340
115103
|
{ value: updated, tone: "merged" },
|
|
115341
115104
|
{ value: reused, tone: "reused" }
|
|
115342
115105
|
] }),
|
|
115343
115106
|
cardLegend(created, updated, reused)
|
|
115344
|
-
] }) : /* @__PURE__ */ (0,
|
|
115345
|
-
meta.failed && meta.failed.length > 0 && /* @__PURE__ */ (0,
|
|
115107
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedgerNote", children: "\u672A\u7F16\u8BD1" }),
|
|
115108
|
+
meta.failed && meta.failed.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedgerFail", children: `\u5931\u8D25 ${meta.failed.length}` })
|
|
115346
115109
|
] });
|
|
115347
115110
|
}
|
|
115348
115111
|
if (toolName === "rebuild_knowledge") {
|
|
115349
115112
|
const created = meta.cardsCreated ?? 0;
|
|
115350
115113
|
const updated = meta.cardsUpdated ?? 0;
|
|
115351
115114
|
const reused = meta.cardsReused ?? 0;
|
|
115352
|
-
if (meta.skipped) return /* @__PURE__ */ (0,
|
|
115353
|
-
return /* @__PURE__ */ (0,
|
|
115354
|
-
/* @__PURE__ */ (0,
|
|
115115
|
+
if (meta.skipped) return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedger", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedgerNote", children: "\u6CA1\u6709\u53D8\u5316\uFF0C\u5168\u90E8\u590D\u7528" }) });
|
|
115116
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("span", { className: "tita-kbLedger", children: [
|
|
115117
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(SegBar, { width: 64, height: 8, segments: [
|
|
115355
115118
|
{ value: created, tone: "new" },
|
|
115356
115119
|
{ value: updated, tone: "merged" },
|
|
115357
115120
|
{ value: reused, tone: "reused" }
|
|
@@ -115362,17 +115125,17 @@ function CollapsedLedger({ toolName, meta, phase }) {
|
|
|
115362
115125
|
if (toolName === "propose_wiki_cards") {
|
|
115363
115126
|
const written = meta.ids?.length ?? 0;
|
|
115364
115127
|
const rejected = meta.rejected?.length ?? 0;
|
|
115365
|
-
return /* @__PURE__ */ (0,
|
|
115366
|
-
/* @__PURE__ */ (0,
|
|
115128
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("span", { className: "tita-kbLedger", children: [
|
|
115129
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(SegBar, { width: 48, height: 8, segments: [
|
|
115367
115130
|
{ value: written, tone: "new" },
|
|
115368
115131
|
{ value: rejected, tone: "failed" }
|
|
115369
115132
|
] }),
|
|
115370
|
-
/* @__PURE__ */ (0,
|
|
115371
|
-
rejected > 0 && /* @__PURE__ */ (0,
|
|
115133
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Legend2, { tone: "new", label: `\u5165\u5E93 ${written}` }),
|
|
115134
|
+
rejected > 0 && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedgerFail", children: `\u88AB\u62D2 ${rejected}` })
|
|
115372
115135
|
] });
|
|
115373
115136
|
}
|
|
115374
115137
|
if (toolName === "add_source") {
|
|
115375
|
-
return /* @__PURE__ */ (0,
|
|
115138
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedger", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbLedgerNote", children: `${meta.bytes ?? 0} \u5B57\u7B26` }) });
|
|
115376
115139
|
}
|
|
115377
115140
|
return null;
|
|
115378
115141
|
}
|
|
@@ -115435,37 +115198,37 @@ function recallInputOf(meta) {
|
|
|
115435
115198
|
};
|
|
115436
115199
|
}
|
|
115437
115200
|
function DetailsOf({ meta, fallback }) {
|
|
115438
|
-
if (!meta) return /* @__PURE__ */ (0,
|
|
115439
|
-
if (meta.kind === "recall") return /* @__PURE__ */ (0,
|
|
115201
|
+
if (!meta) return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(FallbackText, { text: fallback });
|
|
115202
|
+
if (meta.kind === "recall") return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(RecallDiagram, { input: recallInputOf(meta) });
|
|
115440
115203
|
if (meta.kind === "import" || meta.kind === "rebuild") {
|
|
115441
115204
|
const input = ingestInputOf(meta);
|
|
115442
115205
|
const written = meta.written ?? [];
|
|
115443
115206
|
const failed = meta.failed ?? [];
|
|
115444
|
-
return /* @__PURE__ */ (0,
|
|
115445
|
-
/* @__PURE__ */ (0,
|
|
115446
|
-
written.length > 0 && /* @__PURE__ */ (0,
|
|
115447
|
-
written.map((item, index3) => /* @__PURE__ */ (0,
|
|
115448
|
-
/* @__PURE__ */ (0,
|
|
115449
|
-
/* @__PURE__ */ (0,
|
|
115450
|
-
/* @__PURE__ */ (0,
|
|
115207
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "tita-kbPanel", children: [
|
|
115208
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(IngestDiagram, { input }),
|
|
115209
|
+
written.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("ul", { className: "tita-kbSources", children: [
|
|
115210
|
+
written.map((item, index3) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("li", { children: [
|
|
115211
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbRank", children: index3 + 1 }),
|
|
115212
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbName", title: item.title, children: item.title || item.sourceId }),
|
|
115213
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("span", { className: "tita-kbMeasure", children: [
|
|
115451
115214
|
item.bytes ?? 0,
|
|
115452
115215
|
" \u5B57\u7B26"
|
|
115453
115216
|
] })
|
|
115454
115217
|
] }, item.sourceId ?? index3)),
|
|
115455
|
-
failed.map((item, index3) => /* @__PURE__ */ (0,
|
|
115456
|
-
/* @__PURE__ */ (0,
|
|
115457
|
-
/* @__PURE__ */ (0,
|
|
115458
|
-
/* @__PURE__ */ (0,
|
|
115218
|
+
failed.map((item, index3) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("li", { "data-failed": true, children: [
|
|
115219
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbRank", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(X, { size: 10 }) }),
|
|
115220
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbName", children: `\u7B2C ${(item.index ?? 0) + 1} \u4EFD${item.title ? `\u300C${short(item.title, 24)}\u300D` : ""}\uFF1A${item.message ?? "\u5199\u5165\u5931\u8D25"}` }),
|
|
115221
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbCode", children: item.code })
|
|
115459
115222
|
] }, `${item.index}-${item.code}-${index3}`))
|
|
115460
115223
|
] }),
|
|
115461
|
-
!meta.compile && meta.kind === "import" && /* @__PURE__ */ (0,
|
|
115224
|
+
!meta.compile && meta.kind === "import" && /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("p", { className: "tita-kbPanelNote", children: [
|
|
115462
115225
|
"\u8FD9\u6B21\u6CA1\u6709\u7F16\u8BD1\uFF08",
|
|
115463
|
-
/* @__PURE__ */ (0,
|
|
115226
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("code", { children: "compile: false" }),
|
|
115464
115227
|
"\uFF09\u2014\u2014 \u5361\u7247\u8FD8\u6CA1\u751F\u6210\uFF0C\u9700\u8981\u65F6\u518D\u8C03 ",
|
|
115465
|
-
/* @__PURE__ */ (0,
|
|
115228
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("code", { children: "rebuild_knowledge" }),
|
|
115466
115229
|
"\u3002"
|
|
115467
115230
|
] }),
|
|
115468
|
-
meta.skipped && /* @__PURE__ */ (0,
|
|
115231
|
+
meta.skipped && /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("p", { className: "tita-kbPanelNote", children: [
|
|
115469
115232
|
"\u77E5\u8BC6\u5E93\u6CA1\u6709\u53D8\u5316\uFF1A\u4EA7\u7269\u9010\u5B57\u590D\u7528\uFF0C\u6CA1\u6709\u751F\u6210\u65B0\u7684\u7D22\u5F15\u7248\u672C",
|
|
115470
115233
|
meta.version !== void 0 ? `\uFF08\u5F53\u524D v${meta.version}\uFF09` : "",
|
|
115471
115234
|
"\u3002"
|
|
@@ -115473,32 +115236,32 @@ function DetailsOf({ meta, fallback }) {
|
|
|
115473
115236
|
] });
|
|
115474
115237
|
}
|
|
115475
115238
|
if (meta.kind === "writeCards") {
|
|
115476
|
-
return /* @__PURE__ */ (0,
|
|
115477
|
-
(meta.ids ?? []).length > 0 && /* @__PURE__ */ (0,
|
|
115478
|
-
/* @__PURE__ */ (0,
|
|
115479
|
-
/* @__PURE__ */ (0,
|
|
115239
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "tita-kbPanel", children: [
|
|
115240
|
+
(meta.ids ?? []).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("ul", { className: "tita-kbSources", children: (meta.ids ?? []).map((id3, index3) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("li", { children: [
|
|
115241
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbRank", children: index3 + 1 }),
|
|
115242
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbCode", children: id3 })
|
|
115480
115243
|
] }, id3)) }),
|
|
115481
|
-
(meta.rejected ?? []).length > 0 && /* @__PURE__ */ (0,
|
|
115482
|
-
/* @__PURE__ */ (0,
|
|
115483
|
-
/* @__PURE__ */ (0,
|
|
115244
|
+
(meta.rejected ?? []).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("ul", { className: "tita-kbSources", children: (meta.rejected ?? []).map((item, index3) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("li", { "data-failed": true, children: [
|
|
115245
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbRank", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(X, { size: 10 }) }),
|
|
115246
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "tita-kbName", children: `${item.title ? `\u300C${short(item.title, 24)}\u300D` : "\u4E00\u6761"}\u88AB\u62D2\uFF1A${item.reason ?? item.code ?? "\u539F\u56E0\u672A\u77E5"}` })
|
|
115484
115247
|
] }, index3)) }),
|
|
115485
|
-
/* @__PURE__ */ (0,
|
|
115248
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("p", { className: "tita-kbPanelNote", children: "\u6B63\u6587\u53EA\u8BFB\uFF1B\u8981\u8865\u4FE1\u606F\u5C31\u52A0\u5907\u6CE8\uFF0C\u8981\u5426\u6389\u5C31\u6539\u72B6\u6001\u3002" })
|
|
115486
115249
|
] });
|
|
115487
115250
|
}
|
|
115488
115251
|
if (meta.kind === "addSource") {
|
|
115489
|
-
return /* @__PURE__ */ (0,
|
|
115252
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "tita-kbPanel", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("p", { className: "tita-kbPanelNote", children: [
|
|
115490
115253
|
"\u5DF2\u5199\u5165 ",
|
|
115491
|
-
/* @__PURE__ */ (0,
|
|
115254
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("code", { children: meta.sourceId }),
|
|
115492
115255
|
"\uFF08",
|
|
115493
115256
|
meta.bytes ?? 0,
|
|
115494
115257
|
" \u5B57\u7B26\uFF09\u3002\u4E0B\u4E00\u6B65\uFF1A\u7F16\u8BD1\u5B83\uFF0C\u624D\u4F1A\u751F\u6210 WikiCard\u3002"
|
|
115495
115258
|
] }) });
|
|
115496
115259
|
}
|
|
115497
|
-
return /* @__PURE__ */ (0,
|
|
115260
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(FallbackText, { text: fallback });
|
|
115498
115261
|
}
|
|
115499
115262
|
function FallbackText({ text }) {
|
|
115500
115263
|
if (!text) return null;
|
|
115501
|
-
return /* @__PURE__ */ (0,
|
|
115264
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("pre", { className: "m-0 max-h-[240px] overflow-auto whitespace-pre-wrap break-words rounded-lg border border-tita-line bg-tita-surface-muted p-2 font-mono text-[11px] leading-relaxed text-tita-ink-muted", children: text });
|
|
115502
115265
|
}
|
|
115503
115266
|
function KnowledgeToolRow(props) {
|
|
115504
115267
|
const { phase, toolName, block, useDisclosure } = props;
|
|
@@ -115509,8 +115272,8 @@ function KnowledgeToolRow(props) {
|
|
|
115509
115272
|
const head2 = headOf(toolName, args);
|
|
115510
115273
|
const fallback = phase === "result" ? textOf2(block) : "";
|
|
115511
115274
|
const details = phase === "result";
|
|
115512
|
-
return /* @__PURE__ */ (0,
|
|
115513
|
-
/* @__PURE__ */ (0,
|
|
115275
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex flex-col", "data-tool": toolName, "data-phase": phase, children: [
|
|
115276
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
|
|
115514
115277
|
"button",
|
|
115515
115278
|
{
|
|
115516
115279
|
type: "button",
|
|
@@ -115520,18 +115283,18 @@ function KnowledgeToolRow(props) {
|
|
|
115520
115283
|
if (details) toggle();
|
|
115521
115284
|
},
|
|
115522
115285
|
children: [
|
|
115523
|
-
/* @__PURE__ */ (0,
|
|
115524
|
-
/* @__PURE__ */ (0,
|
|
115525
|
-
!isError && /* @__PURE__ */ (0,
|
|
115526
|
-
isError && /* @__PURE__ */ (0,
|
|
115527
|
-
details && /* @__PURE__ */ (0,
|
|
115286
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: cn("flex size-4 shrink-0 items-center justify-center", isError ? "text-tita-danger" : "text-tita-ink-faint"), children: isError ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(TriangleAlert, { size: 14 }) : head2.icon }),
|
|
115287
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "min-w-0 shrink truncate text-[13px] leading-5 text-tita-ink", title: head2.title, children: head2.title }),
|
|
115288
|
+
!isError && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(CollapsedLedger, { toolName, meta, phase }),
|
|
115289
|
+
isError && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "min-w-0 shrink truncate text-[13px] leading-5 text-tita-danger", children: short(fallback || "\u8C03\u7528\u5931\u8D25", 120) }),
|
|
115290
|
+
details && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ChevronRight, { size: 12, className: cn("ml-auto shrink-0 text-tita-ink-faint transition-transform", expanded && "rotate-90") })
|
|
115528
115291
|
]
|
|
115529
115292
|
}
|
|
115530
115293
|
),
|
|
115531
|
-
expanded && details && /* @__PURE__ */ (0,
|
|
115532
|
-
/* @__PURE__ */ (0,
|
|
115533
|
-
/* @__PURE__ */ (0,
|
|
115534
|
-
] }) : /* @__PURE__ */ (0,
|
|
115294
|
+
expanded && details && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "mb-1 mt-1 ml-[22px]", children: isError ? /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("p", { className: "m-0 flex items-start gap-1.5 text-[12px] leading-relaxed text-tita-danger", children: [
|
|
115295
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(TriangleAlert, { size: 12, className: "mt-0.5 shrink-0" }),
|
|
115296
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "min-w-0 flex-1", children: short(fallback || "\u8C03\u7528\u5931\u8D25", 400) })
|
|
115297
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(DetailsOf, { meta, fallback }) })
|
|
115535
115298
|
] });
|
|
115536
115299
|
}
|
|
115537
115300
|
|
|
@@ -115582,7 +115345,7 @@ var ID = "dsh-data-domain-knowledge";
|
|
|
115582
115345
|
var KIND = "data-domain-knowledge";
|
|
115583
115346
|
var HOST_ENTRY_ID = "tita-data-domain-knowledge";
|
|
115584
115347
|
function GuideIcon({ size: size5 = 16, className }) {
|
|
115585
|
-
return (0,
|
|
115348
|
+
return (0, import_react32.createElement)(import_dsh_client_ui_primitives2.IconWorkspaceTreeOutlineRegular, { size: size5, className });
|
|
115586
115349
|
}
|
|
115587
115350
|
function definition() {
|
|
115588
115351
|
return { id: ID, kind: KIND, priority: "extension", title: () => "TitaAgent", guide: [{ id: `${ID}-guide`, order: 47, title: () => "TitaAgent", icon: GuideIcon }] };
|
|
@@ -115618,7 +115381,7 @@ function latestQuestionOf(conversation) {
|
|
|
115618
115381
|
function Tab(props, injected) {
|
|
115619
115382
|
const { tab } = props.useTabInfo();
|
|
115620
115383
|
const currentQuestion = latestQuestionOf(props.useConversation((snapshot) => snapshot));
|
|
115621
|
-
return (0,
|
|
115384
|
+
return (0, import_react32.createElement)(KnowledgePanel, {
|
|
115622
115385
|
visible: tab.visible,
|
|
115623
115386
|
...currentQuestion ? { currentQuestion } : {},
|
|
115624
115387
|
onOpenTab: (kind) => {
|
|
@@ -115647,7 +115410,7 @@ function apply2(ctx2) {
|
|
|
115647
115410
|
ctx2.effect(() => ctx2.slots.inject("sidebar.right.pane.tab", () => ctx2.slots.register({ name: "sidebar.right.pane.tab", key: ID }, (props) => Tab(props, injected))), "tita knowledge: tab body");
|
|
115648
115411
|
for (const key of KNOWLEDGE_TOOL_KEYS) {
|
|
115649
115412
|
ctx2.effect(
|
|
115650
|
-
() => ctx2.slots.inject("tool.call.toolview", () => ctx2.slots.register({ name: "tool.call.toolview", key }, (props) => (0,
|
|
115413
|
+
() => ctx2.slots.inject("tool.call.toolview", () => ctx2.slots.register({ name: "tool.call.toolview", key }, (props) => (0, import_react32.createElement)(KnowledgeToolRow, props))),
|
|
115651
115414
|
`tita knowledge: tool row ${key}`
|
|
115652
115415
|
);
|
|
115653
115416
|
}
|
|
@@ -116211,14 +115974,6 @@ lucide-react/dist/esm/icons/user-round.js:
|
|
|
116211
115974
|
* See the LICENSE file in the root directory of this source tree.
|
|
116212
115975
|
*)
|
|
116213
115976
|
|
|
116214
|
-
lucide-react/dist/esm/icons/workflow.js:
|
|
116215
|
-
(**
|
|
116216
|
-
* @license lucide-react v0.468.0 - ISC
|
|
116217
|
-
*
|
|
116218
|
-
* This source code is licensed under the ISC license.
|
|
116219
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
116220
|
-
*)
|
|
116221
|
-
|
|
116222
115977
|
lucide-react/dist/esm/icons/wrench.js:
|
|
116223
115978
|
(**
|
|
116224
115979
|
* @license lucide-react v0.468.0 - ISC
|