:root{font-family:Segoe UI,Microsoft YaHei UI,Microsoft YaHei,system-ui,sans-serif;color:#e8eef5;background:#06101a;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #07111c;--surface: #0a1724;--surface-2: #0d1c2a;--surface-3: #112333;--line: rgba(139, 166, 190, .22);--line-strong: rgba(139, 171, 199, .38);--text: #e8eef5;--muted: #8193a5;--muted-2: #617487;--blue: #2e7df4;--blue-soft: #5ca3ff;--cyan: #53c5d3;--amber: #e4a844;--danger: #ff5a60;--success: #4ed28b}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;min-width:320px}body{overflow:hidden;background:var(--bg)}button,input,select,textarea{font:inherit}button,select{color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{width:100%;height:100%;display:grid;grid-template-columns:260px minmax(420px,1fr) 348px;grid-template-rows:64px minmax(0,1fr) 52px;grid-template-areas:"top top top" "left graph right" "status status status";background:radial-gradient(circle at 54% 42%,rgba(27,77,119,.12),transparent 40%),var(--bg)}.topbar{grid-area:top;display:grid;grid-template-columns:260px 1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);background:#050e18f5;z-index:20}.brand{height:100%;padding:0 24px;display:flex;align-items:center;gap:10px;border-right:1px solid var(--line);font-family:STKaiti,KaiTi,serif;font-size:27px;font-weight:700;letter-spacing:1px}.brand-spark{color:#5fa6ff;font-size:10px;transform:rotate(45deg)}.project-switcher{position:relative;justify-self:start;display:flex;align-items:center;gap:10px;padding:0 24px}.project-switcher select{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:145px;border:0;outline:0;background:transparent;font-weight:600;font-size:15px}.project-switcher>svg:last-child{pointer-events:none;color:var(--muted)}.analysis-state{justify-self:center;display:flex;align-items:center;gap:8px;color:var(--success);font-size:14px}.analysis-state.failed{color:var(--danger)}.top-actions{justify-self:end;display:flex;align-items:center;gap:8px;padding-right:18px}.top-button{height:36px;display:flex;align-items:center;gap:8px;padding:0 15px;color:#ced8e2;border:1px solid var(--line-strong);border-radius:5px;background:#0c1926;font-size:13px}.top-button:hover{color:#fff;border-color:#4275a4;background:#112538}.top-button.ghost{border-color:transparent;background:transparent}.export-wrap{position:relative}.export-menu{position:absolute;top:43px;right:0;z-index:60;min-width:140px;padding:6px;background:#0d1c2a;border:1px solid var(--line-strong);border-radius:7px;box-shadow:0 14px 35px #0006}.export-menu a,.export-menu button{display:block;width:100%;padding:9px 11px;border:0;border-radius:4px;color:var(--text);text-align:left;text-decoration:none;background:transparent;font-size:13px}.export-menu a:hover,.export-menu button:hover{background:#152b40}.left-sidebar,.right-inspector{min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#294157 transparent;background:#08131ee0}.left-sidebar{grid-area:left;padding:20px 18px;border-right:1px solid var(--line)}.right-inspector{grid-area:right;padding:0 24px 22px;border-left:1px solid var(--line)}.button{min-height:38px;border-radius:5px;border:1px solid transparent;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--text);font-size:13px;font-weight:600}.button.primary{background:linear-gradient(180deg,#347ff0,#2467d7);border-color:#478df5;box-shadow:inset 0 1px #ffffff1f}.button.primary:hover{background:linear-gradient(180deg,#438cf8,#2d72e2)}.button.secondary{background:#0d1b28;border-color:var(--line-strong)}.button.secondary:hover{background:#132638;border-color:#476887}.button.compact{min-height:34px;padding:0 12px}.button.danger-button{color:#ff777d;background:#ff5a6012;border-color:#ff5a604d}.import-button{width:100%;height:42px;font-size:14px}.sidebar-section{margin-top:23px}.sidebar-section h2{margin:0 0 10px;display:flex;align-items:center;justify-content:space-between;color:#8293a5;font-size:12px;font-weight:600;letter-spacing:.4px}.project-row,.filter-row{width:100%;min-height:40px;padding:0 12px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:5px;background:#0d1e2c9e;color:#bdc8d3;font-size:13px}.project-row.active{color:#dce7f0;border-color:#2e7df4b3;box-shadow:inset 3px 0 #2e7df4}.project-row span,.filter-row span:nth-child(2){flex:1;text-align:left}.filter-row{margin-bottom:6px;cursor:pointer}.filter-row>svg:first-child{color:#748da3}.filter-row.active{color:#fff;background:#112337;border-color:#345b7e}.filter-row.active>svg:first-child{color:#62a7ff;fill:#418ef038}.filter-row small{color:#5f768a;font-size:9px;font-weight:500}.filter-row.active small{color:#84a5c4}.relationship-depth-options{transition:opacity .18s}.relationship-depth-options.is-disabled{opacity:.36}.filter-row:disabled{cursor:not-allowed}.filter-help{margin:-1px 2px 8px;color:#607589;font-size:10px;line-height:1.5}.core-entity-select{margin:0 0 9px!important;display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:9px!important;color:#8093a5!important;font-size:11px!important}.core-entity-select select{width:100%;height:34px;padding:0 9px;color:#d9e6f1;border:1px solid var(--line);border-radius:5px;outline:none;background:#0c1c2a;font-size:12px}.core-entity-select select:focus{border-color:#3d7eba}.mini-switch{width:25px;height:14px;position:relative;border-radius:10px;background:#263c50;box-shadow:inset 0 0 0 1px #385066;transition:background .18s}.mini-switch:after{content:"";width:8px;height:8px;position:absolute;left:3px;top:3px;border-radius:50%;background:#8094a7;transition:transform .18s,background .18s}.filter-row.active .mini-switch{background:#2c7bea;box-shadow:inset 0 0 0 1px #4d94f2}.filter-row.active .mini-switch:after{transform:translate(11px);background:#fff}.range-selects{min-height:43px;padding:0 10px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:5px;background:#0d1e2c9e}.range-selects select{width:55px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;outline:0;text-align:center;background:transparent;color:#e0e7ee;font-size:13px}.range-selects span{color:#6f8396;font-size:12px}.scope-note{margin:8px 0 0;color:#607589;font-size:11px}.filter-list{border:1px solid var(--line);border-radius:5px;overflow:hidden;background:#091622a6}.filter-list label{height:29px;padding:0 10px;display:flex;align-items:center;gap:8px;font-size:12px;color:#b0bdc9}.filter-list label:hover{background:#375b7b29}.filter-list input{accent-color:#4b94f5}.filter-list span{flex:1}.filter-list i{width:24px;height:2px;border-radius:4px}.reset-button{margin-top:12px;width:100%;min-height:34px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:5px;background:transparent;color:#8496a8;font-size:12px}.reset-button:hover{color:#fff;border-color:#416586}.graph-main{grid-area:graph;position:relative;min-width:0;min-height:0;overflow:hidden}.canvas-heading{position:absolute;left:23px;top:19px;z-index:5;display:flex;align-items:baseline;gap:14px;pointer-events:none}.canvas-heading h1{margin:0;font-size:20px;letter-spacing:.5px}.canvas-heading span{color:#617589;font-size:11px}.canvas-heading button{min-height:25px;padding:0 8px;display:inline-flex;align-items:center;gap:5px;color:#7da7d3;border:1px solid rgba(74,125,175,.42);border-radius:4px;background:#0d1f2fc7;font-size:10px;pointer-events:auto}.canvas-heading button:hover{color:#cfe3f8;border-color:#4f8dca}.graph-host{width:100%;height:100%;position:relative;-webkit-user-select:none;user-select:none}.graph-host:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,rgba(32,83,124,.13),transparent 55%);pointer-events:none}.graph-svg{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none;cursor:grab}.graph-svg:active{cursor:grabbing}.graph-tools{position:absolute;top:19px;right:20px;z-index:6;display:flex;border:1px solid var(--line-strong);border-radius:5px;overflow:hidden;background:#0b1926}.graph-tools button{width:39px;height:34px;display:grid;place-items:center;color:#b9c8d5;border:0;border-right:1px solid var(--line);background:transparent}.graph-tools button:last-child{border-right:0}.graph-tools button:hover{color:#fff;background:#142b3e}.graph-link{cursor:pointer;transition:opacity .2s}.graph-link.is-muted{opacity:.26}.link-hit{stroke:transparent;stroke-width:18}.link-line{opacity:.78;transition:opacity .2s,stroke-width .2s;stroke-dasharray:7 4;animation:pathFlow 9s linear infinite}.graph-link:hover .link-line,.graph-link.is-selected .link-line{opacity:1;filter:drop-shadow(0 0 5px currentColor)}.graph-link.is-selected .link-line{stroke-width:3.6px}.edge-label-bg{fill:#07131f;stroke:#7693ad3d}.edge-label{font-size:12px;font-weight:600;letter-spacing:.5px}.graph-node{cursor:move;transition:opacity .22s;outline:none}.graph-node.is-muted{opacity:.34}.graph-node.is-focus{opacity:1}.graph-node.is-focus .node-segment-ring{stroke:#5da8ff;stroke-width:4;filter:drop-shadow(0 0 7px rgba(67,145,245,.45))}.graph-node.is-focus .node-body{stroke:#5da8ff;stroke-width:2.5}.node-segment-ring{fill:none;stroke:#70859a;stroke-width:3;stroke-dasharray:18 6 5 5;opacity:.85}.node-body{fill:#0b1927;stroke:#647a8e;stroke-width:2}.graph-node:hover .node-body,.graph-node.is-selected .node-body{stroke:#4e9cff;filter:url(#nodeGlow);fill:#0c2034}.graph-node.is-selected .node-segment-ring{stroke:#4e9cff;animation:ringRotate 18s linear infinite;transform-box:fill-box;transform-origin:center}.org-halo{fill:#41b3c20a;stroke:#507081;stroke-width:2}.org-body{fill:#0b2029;stroke:#43aab8;stroke-width:2}.graph-node.is-selected .org-halo{stroke:#56c4d1;filter:url(#nodeGlow)}.node-name{fill:#edf4fa;font-size:16px;font-weight:650;pointer-events:none}.important-dot{fill:#4f6073;stroke:#aebdcc;stroke-width:1}.important-star{fill:#e7edf3;font-size:10px}.empty-graph{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:#92a4b5}.empty-graph span{color:#617487;font-size:12px}.empty-orbit{width:100px;height:100px;margin-bottom:10px;border:1px dashed #29465f;border-radius:50%;box-shadow:0 0 0 22px #28507114}.inspector-title,.entity-inspector-header{min-height:72px;display:flex;align-items:center;border-bottom:1px solid var(--line)}.inspector-title h2{margin:0;font-size:19px}.inspector-title h2 span{margin:0 5px;color:#6f8396;font-weight:400}.inspector-block{padding:18px 0;border-bottom:1px solid var(--line)}.block-title{display:flex;align-items:center;gap:9px;color:#3f91ff}.block-title.amber{color:var(--amber)}.block-title h3{margin:0;flex:1;color:#dce5ed;font-size:14px;font-weight:650}.inspector-block p{margin:11px 0 0;color:#b3c0cb;font-size:12px;line-height:1.9}.category-tag{padding:4px 9px;border:1px solid;border-radius:4px;font-size:11px;font-weight:600;background:#2a6cb714}.relationship-timeline{margin-top:17px}.timeline-line{height:13px;margin:0 8px;display:flex;align-items:center;justify-content:space-between;position:relative;background:linear-gradient(90deg,#718194,#2e85ef,#ef5a61) center/100% 2px no-repeat}.timeline-line i{position:relative;width:10px;height:10px;border-radius:50%;background:#718194;border:1px solid #b0bdc8}.timeline-line i.active{background:#2e85ef;border-color:#64a4ff;box-shadow:0 0 9px #3d8eff80}.timeline-line i.danger{background:#ed5d63;border-color:#ff8589}.timeline-line i.muted{background:#384c5f;border-color:#52677a}.timeline-labels{margin-top:6px;display:flex;justify-content:space-between;color:#8999aa;font-size:11px}.timeline-labels strong{color:#5aa2ff;font-weight:600}.evidence-block blockquote{margin:13px 0 0;padding:12px 13px;color:#bcc8d2;background:#0d1b28;border:1px solid var(--line);border-radius:5px;font-family:Microsoft YaHei,sans-serif;font-size:12px;line-height:1.75}.evidence-block cite{display:block;margin-top:8px;color:#72869a;font-size:10px;font-style:normal}.inspector-actions{padding-top:18px;display:grid;gap:9px}.entity-inspector-header{gap:13px}.entity-symbol{width:43px;height:43px;display:grid;place-items:center;border:2px solid #498ede;border-radius:50%;background:#10263a;color:#fff;font-size:18px;font-weight:700}.entity-symbol.org{border-radius:11px;transform:rotate(45deg);border-color:#43aab8}.entity-symbol.org:first-letter{transform:rotate(-45deg)}.entity-inspector-header h2{margin:0 0 4px;font-size:18px}.entity-inspector-header span{color:#718597;font-size:11px}.alias-list{margin-top:10px;display:flex;flex-wrap:wrap;gap:7px}.alias-list span{padding:5px 8px;border:1px solid var(--line);border-radius:4px;color:#aebbc6;font-size:11px}.search-section{gap:8px}.search-box{display:grid;grid-template-columns:1fr auto;gap:7px}.search-box label{display:flex;align-items:center;gap:6px;margin:0;padding:0 8px;border:1px solid var(--line);border-radius:6px;background:#06111cb8}.search-box input{min-width:0;border:0;background:transparent;padding:8px 0}.search-message{margin:4px 0 0;color:var(--muted);font-size:11px}.search-results{display:grid;gap:6px}.search-results button{display:grid;gap:3px;width:100%;text-align:left;padding:8px;border:1px solid var(--line);border-radius:6px;background:#08141fbf;color:var(--text);cursor:pointer}.search-results button:hover{border-color:#78a8d273;background:#193348bf}.search-results strong{font-size:12px}.search-results span{color:var(--muted);font-size:10px}.alias-editor{display:grid;gap:9px;margin-top:10px}.alias-editor-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.alias-editor-head h3{margin:0;font-size:13px}.alias-editor-list{display:grid;gap:8px}.alias-editor-row{display:grid;grid-template-columns:minmax(120px,1.2fr) minmax(118px,1fr) minmax(118px,1fr) auto;gap:8px;align-items:end;padding:9px;border:1px solid var(--line);border-radius:6px;background:#07121d8a}.alias-editor-row label{margin:0}.alias-preserve-note{align-self:center;color:var(--muted);font-size:11px}.inspector-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#577087}.inspector-empty strong{margin-top:14px;color:#9eb0bf}.inspector-empty p{max-width:220px;color:#64788a;font-size:12px;line-height:1.7}.statusbar{grid-area:status;z-index:25;padding:0 26px;display:grid;grid-template-columns:200px 1fr auto;align-items:center;gap:18px;border-top:1px solid var(--line);background:#06101a}.status-copy{display:flex;flex-direction:column;gap:2px}.status-copy strong{font-size:12px}.status-copy span{color:#6c8092;font-size:9px}.progress-track{height:5px;border-radius:5px;background:#172737;overflow:hidden}.progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2672e5,#3b91f3);transition:width .35s ease}.status-action{height:32px;padding:0 13px;display:flex;align-items:center;gap:7px;border:1px solid var(--line-strong);border-radius:5px;background:#0e1d2a;color:#bdc9d4;font-size:11px}.status-action.primary-status{border-color:#397ccc;background:#12325a;color:#dbeaff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:24px;background:#02070cb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal{width:min(520px,100%);max-height:min(760px,calc(100vh - 48px));overflow-y:auto;border:1px solid var(--line-strong);border-radius:10px;background:#0b1825;box-shadow:0 28px 90px #0000009e}.modal.modal-large{width:min(760px,100%)}.modal-header{min-height:78px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font-size:19px}.modal-header p{margin:5px 0 0;color:#718598;font-size:11px}.modal form,.settings-layout{padding:21px 22px}.icon-button{width:32px;height:32px;display:grid;place-items:center;color:#8fa1b2;border:1px solid transparent;border-radius:5px;background:transparent}.icon-button:hover{color:#fff;background:#15283a;border-color:var(--line)}.icon-button.danger:hover{color:var(--danger);border-color:#ff5a604d}.icon-button.accept{color:var(--success)}.modal-tabs{display:flex;margin-bottom:19px;border-bottom:1px solid var(--line)}.modal-tabs button{padding:10px 17px;display:flex;align-items:center;gap:7px;border:0;border-bottom:2px solid transparent;background:transparent;color:#788da1;font-size:12px}.modal-tabs button.active{color:#64a6ff;border-color:#3d8cf3}.form-grid{display:grid;gap:14px}.form-grid.two-columns{grid-template-columns:1fr 1fr}.form-grid.three-columns{grid-template-columns:repeat(3,1fr)}.modal label,.settings-section label{display:grid;gap:7px;margin-bottom:14px;color:#9babb9;font-size:11px;font-weight:600}.modal input,.modal select,.modal textarea,.settings-content input,.settings-content select{width:100%;color:#e1e9f0;border:1px solid var(--line);border-radius:5px;outline:0;background:#091521}.modal input,.modal select,.settings-content input,.settings-content select{height:38px;padding:0 11px}.modal textarea{min-height:72px;padding:10px 11px;resize:vertical;line-height:1.6}.modal input:focus,.modal select:focus,.modal textarea:focus,.settings-content input:focus,.settings-content select:focus{border-color:#397fc8;box-shadow:0 0 0 3px #2a7ee21c}.modal .source-textarea{min-height:240px;font-family:Microsoft YaHei,sans-serif}.file-drop{min-height:240px;margin:4px 0 0;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#6d8296!important;border:1px dashed #355875;border-radius:7px;background:#1026386b;cursor:pointer}.file-drop:hover,.file-drop.has-file{color:#80b6f7!important;border-color:#4d8bc6;background:#18456740}.file-drop strong{color:#c8d4df;font-size:14px}.file-drop span{font-size:10px;font-weight:400}.file-drop input{display:none}.form-error{color:#ff7b80;font-size:11px}.modal-actions{padding-top:18px;display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line)}.modal-actions.split-actions{justify-content:space-between}.modal-actions.split-actions>div{display:flex;gap:9px}.settings-layout{min-height:430px;display:grid;grid-template-columns:150px 1fr;gap:24px}.settings-nav{display:flex;flex-direction:column;gap:5px;border-right:1px solid var(--line);padding-right:15px}.settings-nav button{min-height:38px;padding:0 10px;display:flex;align-items:center;gap:8px;color:#8295a7;border:0;border-radius:5px;background:transparent;font-size:12px;text-align:left}.settings-nav button.active{color:#dce8f3;background:#12273a}.settings-section h3,.entity-advanced h3{margin:0 0 7px;color:#dce5ed;font-size:14px}.settings-section>p{margin:0 0 20px;color:#6f8496;font-size:11px;line-height:1.6}.category-editor-list{display:grid;gap:6px}.category-editor-row{display:grid;grid-template-columns:31px 1fr 36px 32px 32px;align-items:center;gap:7px}.category-editor-row input[type=color],.category-add-row input[type=color]{width:31px;height:31px;padding:2px}.switch input{display:none}.switch span{width:30px;height:17px;padding:2px;display:block;border-radius:15px;background:#324557;transition:background .2s}.switch span:after{content:"";display:block;width:13px;height:13px;border-radius:50%;background:#a7b5c1;transition:transform .2s}.switch input:checked+span{background:#2c72cb}.switch input:checked+span:after{transform:translate(13px);background:#fff}.category-add-row{margin-top:12px;display:grid;grid-template-columns:31px 1fr auto;gap:7px}.settings-message{margin-top:16px;color:#73b1ff;font-size:11px}.alias-suggestion{padding:11px 12px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:6px;background:#0d1b28}.alias-suggestion>div:first-child{display:grid;grid-template-columns:auto auto auto;gap:5px 8px;align-items:center}.alias-suggestion span{color:#718699;font-size:10px}.alias-suggestion small{grid-column:1 / -1;color:#6d8295;font-size:9px}.alias-suggestion>div:last-child{display:flex}.simple-empty,.loading-line{padding:50px 0;color:#6e8396;text-align:center;font-size:12px}.range-value{float:right;color:#62a7ff}.entity-advanced{margin-top:19px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.entity-advanced section{padding:13px;border:1px solid var(--line);border-radius:6px;background:#0a1622}.entity-advanced h3{display:flex;align-items:center;gap:7px}.inline-form{display:flex;gap:7px}.inline-form select{min-width:0}.merge-mode-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:9px 0}.merge-mode-toggle button{min-height:34px;border:1px solid var(--line);border-radius:5px;color:#8fa6b8;background:#06111c9e;font-size:12px}.merge-mode-toggle button.active{color:#e4f0fb;border-color:#5399dd9e;background:#255c8f61}.soft-merge-preview{margin-top:12px;padding:12px;border:1px solid rgba(89,146,190,.28);border-radius:8px;background:#091826c7}.soft-merge-revert-preview{margin-top:12px;padding-top:10px;border-top:1px solid rgba(89,146,190,.22)}.soft-merge-source-list{display:flex;flex-direction:column;gap:10px}.soft-merge-preview h4{margin:0 0 10px;color:#d7e4ef;font-size:13px}.soft-merge-summary,.soft-merge-counts,.soft-merge-mapping{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0}.soft-merge-summary span,.soft-merge-counts span,.soft-merge-mapping span{padding:8px;border-radius:6px;background:#06111cb8;color:#91a8ba;font-size:10px;line-height:1.45}.soft-merge-summary b,.soft-merge-counts strong,.soft-merge-mapping b{display:block;margin-bottom:3px;color:#d4e3ee;font-size:12px}.merge-blockers,.merge-leak-warnings,.merge-upstream{margin:9px 0;padding:9px;border-radius:7px;font-size:11px;line-height:1.5}.merge-blockers{border:1px solid rgba(255,117,117,.35);background:#4f181f6b;color:#ffd5d5}.merge-leak-warnings{border:1px solid rgba(238,184,85,.38);background:#5039146b;color:#ffe2a8}.merge-blockers strong,.merge-leak-warnings strong,.merge-upstream strong{display:block;margin-bottom:4px}.merge-blockers p,.merge-leak-warnings p{margin:3px 0}.merge-upstream{display:flex;flex-wrap:wrap;gap:6px;border:1px solid rgba(89,146,190,.22);background:#06111c85;color:#bfd3e1}.merge-upstream strong{width:100%}.merge-upstream span{padding:4px 7px;border-radius:999px;background:#132e44e6}.safe-split-wizard{display:flex;flex-direction:column;gap:12px}.section-title-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.section-title-row span{color:#9fb5c6;font-size:12px}.safe-split-toolbar{margin-bottom:8px}.safe-split-scroll-list{max-height:260px;overflow:auto;display:flex;flex-direction:column;gap:8px;padding-right:4px}.safe-split-scroll-list.compact{max-height:170px}.safe-split-option{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:flex-start;padding:10px;border:1px solid rgba(89,146,190,.22);border-radius:8px;background:#06111c8a}.safe-split-option input{margin-top:3px}.safe-split-option span{display:flex;flex-direction:column;gap:3px}.safe-split-option strong{color:#dce9f4}.safe-split-option em{color:#9fc7e2;font-style:normal;font-size:12px}.safe-split-option small{color:#8da3b5;line-height:1.45}.safe-split-preview{padding:12px;border:1px solid rgba(89,146,190,.28);border-radius:8px;background:#091826c7}.safe-split-preview h3,.safe-split-preview h4{margin:0 0 10px;color:#d7e4ef}.safe-split-relation-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.safe-split-relation-card{padding:10px;border-radius:8px;background:#06111cb8;border:1px solid rgba(89,146,190,.18)}.safe-split-relation-card strong{display:block;color:#dce9f4;margin-bottom:4px}.safe-split-relation-card p{margin:4px 0;color:#b7c9d8}.safe-split-relation-card small{color:#8da3b5}.safe-split-issues{margin:10px 0;padding:10px;border-radius:8px}.safe-split-issues h4{display:flex;align-items:center;gap:6px;margin:0 0 6px}.safe-split-issues p{margin:4px 0;line-height:1.45}.safe-split-issues.blockers{border:1px solid rgba(255,117,117,.35);background:#4f181f6b;color:#ffd5d5}.safe-split-issues.warnings{border:1px solid rgba(238,184,85,.36);background:#5039146b;color:#ffe2a8}.alias-action-list{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.alias-action-list span{padding:6px 8px;border-radius:999px;background:#06111cb8;color:#bfd3e1;font-size:12px}.safe-split-confirm{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start;margin:10px 0;color:#dce9f4}.merge-warning{margin:8px 0;color:#d7a16e;font-size:10px;line-height:1.55}.merge-confirmation{margin:8px 0;color:#c5d6e4;font-size:11px;line-height:1.6}.alias-checks{margin:9px 0;display:flex;flex-wrap:wrap;gap:7px}.alias-checks label{display:flex;grid-template-columns:none;align-items:center;gap:5px;margin:0;padding:5px 7px;border:1px solid var(--line);border-radius:4px}.alias-checks input{width:auto;height:auto}.chapter-reader{max-height:540px;overflow-y:auto;margin:0;padding:24px 28px 32px;white-space:pre-wrap;color:#cbd5de;font-family:SimSun,Songti SC,serif;font-size:15px;line-height:2.05}.chapter-reader mark{padding:2px 0;color:#fff2c1;background:#e6a9444d}.toast{position:fixed;left:50%;bottom:72px;z-index:200;transform:translate(-50%);padding:10px 16px;color:#dce7f0;border:1px solid #3b5d79;border-radius:6px;background:#0c1d2cf5;box-shadow:0 12px 35px #0006;font-size:12px}.boot-screen{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;color:#71869a;background:#06101a}.boot-screen .brand-mark{color:#e8eef5;font-family:STKaiti,KaiTi,serif;font-size:34px;font-weight:700}.boot-screen span{font-size:12px}.spin{animation:spin 1.25s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ringRotate{to{transform:rotate(360deg)}}@keyframes pathFlow{to{stroke-dashoffset:-44}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}@media(max-width:1180px){.app-shell{grid-template-columns:220px minmax(380px,1fr) 310px}.topbar{grid-template-columns:220px 1fr auto 1fr}.brand{padding-left:19px}.left-sidebar{padding:17px 14px}.right-inspector{padding-left:19px;padding-right:19px}}@media(max-width:820px){body{overflow:auto}.app-shell{height:auto;min-height:100%;grid-template-columns:1fr;grid-template-rows:56px auto 520px auto 48px;grid-template-areas:"top" "left" "graph" "right" "status"}.topbar{position:sticky;top:0;grid-template-columns:auto 1fr auto;min-width:0}.brand{padding:0 14px;border-right:0;font-size:22px}.project-switcher{padding:0 6px;min-width:0}.project-switcher select{min-width:0;width:120px}.analysis-state{display:none}.top-actions{padding-right:6px}.top-button{width:36px;padding:0;justify-content:center}.top-button:not(.ghost){display:none}.top-button span,.top-button{font-size:0}.left-sidebar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:12px;overflow:visible;border-right:0;border-bottom:1px solid var(--line)}.left-sidebar>.sidebar-section{margin-top:0}.left-sidebar>.import-button{grid-column:1 / -1}.left-sidebar>.sidebar-section:nth-of-type(3),.left-sidebar>.sidebar-section:nth-of-type(4){grid-column:1 / -1}.search-box,.alias-editor-row{grid-template-columns:1fr}.relation-filters{min-width:0}.filter-list{display:grid;grid-template-columns:repeat(3,1fr)}.filter-list label{min-width:0}.right-inspector{min-height:310px;border-left:0;border-top:1px solid var(--line)}.statusbar{position:sticky;bottom:0;grid-template-columns:120px 1fr auto;padding:0 12px}.status-copy span{display:none}.canvas-heading{top:14px;left:14px}.graph-tools{top:12px;right:12px}.form-grid.two-columns,.form-grid.three-columns,.entity-advanced,.settings-layout{grid-template-columns:1fr}.settings-nav{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);padding:0 0 10px}}.analysis-state.running{color:var(--blue-soft)}.analysis-state.pending{color:var(--muted)}.analysis-state.completed{color:var(--success)}.range-selects select{width:88px;text-align:left;text-align-last:center}.chapter-live-state{min-height:36px;margin-top:10px;padding:8px 10px;display:flex;align-items:flex-start;gap:8px;color:var(--muted);border:1px solid var(--line);border-radius:5px;background:#091622b8;font-size:11px;line-height:1.5}.chapter-live-state svg{flex:0 0 auto;margin-top:1px}.chapter-live-state span{min-width:0;overflow-wrap:anywhere}.chapter-live-state.running{color:#72adf8;border-color:#3d85dc6b;background:#205b9d1f}.chapter-live-state.completed{color:var(--success);border-color:#4ed28b47;background:#2482531a}.chapter-live-state.failed{color:#ff7a80;border-color:#ff5a6057;background:#912a301c}.chapter-status-summary{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.chapter-status-summary>span{min-height:29px;padding:5px 7px;display:flex;align-items:center;gap:6px;color:#778b9e;border:1px solid var(--line);border-radius:4px;background:#09162294;font-size:9px}.chapter-status-summary strong{font-size:12px;font-weight:700}.chapter-status-summary .completed strong{color:var(--success)}.chapter-status-summary .running strong{color:var(--blue-soft)}.chapter-status-summary .failed strong{color:#ff7379}.chapter-status-summary .pending strong{color:#8a9bab}.chapter-status-details{margin-top:8px;overflow:hidden;border:1px solid var(--line);border-radius:5px;background:#08141fa3}.chapter-status-details summary{min-height:34px;padding:0 10px;display:flex;align-items:center;gap:8px;color:#899bac;cursor:pointer;list-style:none;font-size:10px}.chapter-status-details summary::-webkit-details-marker{display:none}.chapter-status-details summary:before{content:"›";color:#66819a;font-size:15px;transition:transform .18s}.chapter-status-details[open] summary:before{transform:rotate(90deg)}.chapter-status-details summary span{flex:1}.chapter-status-details summary small{color:#607589;font-size:9px}.chapter-status-details[open] summary{border-bottom:1px solid var(--line)}.chapter-status-list{max-height:220px;overflow-y:auto;padding:5px;scrollbar-width:thin;scrollbar-color:#294157 transparent}.chapter-status-row{min-height:31px;padding:6px 7px;display:grid;grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:7px;border-radius:4px;color:#9babb9;font-size:10px}.chapter-status-row:hover{background:#2c4c682e}.chapter-status-row>i{width:7px;height:7px;border-radius:50%;background:#53697d}.chapter-status-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-status-row>strong{color:#74899b;font-size:9px;font-weight:600}.chapter-status-row>small{grid-column:2 / 4;min-width:0;overflow:hidden;color:#a9696d;font-size:8px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.chapter-status-row.completed>i{background:var(--success);box-shadow:0 0 6px #4ed28b5c}.chapter-status-row.completed>strong{color:#63c996}.chapter-status-row.running>i{background:var(--blue-soft);box-shadow:0 0 7px #5ca3ff8c;animation:chapterPulse 1.1s ease-in-out infinite alternate}.chapter-status-row.running>strong{color:#72adf8}.chapter-status-row.failed>i{background:var(--danger);box-shadow:0 0 6px #ff5a6061}.chapter-status-row.failed>strong{color:#ff7379}.chapter-status-row.pending>i{background:#53697d}@keyframes chapterPulse{0%{opacity:.48;transform:scale(.82)}to{opacity:1;transform:scale(1.15)}}@media(max-width:1180px){.range-selects select{width:72px;font-size:11px}}@media(max-width:820px){.chapter-status-list{max-height:180px}}.depth-rings{pointer-events:none}.depth-ring>circle{fill:none;stroke:#507ca240;stroke-width:1.4;stroke-dasharray:8 9}.depth-ring:nth-of-type(2)>circle{stroke:#478cdc57}.depth-ring:nth-of-type(3)>circle{stroke:#4b9abf47}.depth-ring:nth-of-type(4)>circle{stroke:#8476bf45}.depth-ring.is-disconnected>circle{stroke:#97775947;stroke-dasharray:3 10}.core-orbit{fill:#2d7deb09;stroke:#4f9dff47;stroke-width:1.5;stroke-dasharray:4 7}.core-orbit-label{fill:#587d9f;font-size:10px;letter-spacing:1px}.depth-ring-label rect{fill:#06101aeb;stroke:#5684ab52;stroke-width:1}.depth-ring-label text{fill:#718ba2;font-size:10px;font-weight:600;letter-spacing:.4px}.depth-ring.is-disconnected .depth-ring-label rect{stroke:#97775957}.depth-ring.is-disconnected .depth-ring-label text{fill:#947a63}.graph-node.is-focus{cursor:default}.graph-node.is-focus .node-body,.graph-node.is-focus .org-body{fill:#0d2540}.graph-node.depth-1 .node-segment-ring{stroke:#5a88b1}.graph-node.depth-2 .node-segment-ring{stroke:#557f91}.graph-node.depth-3 .node-segment-ring{stroke:#756e9c}@media(prefers-reduced-motion:no-preference){.depth-ring>circle{animation:orbitDash 28s linear infinite}.depth-ring:nth-of-type(2n)>circle{animation-direction:reverse;animation-duration:34s}}@keyframes orbitDash{to{stroke-dashoffset:-68}}.category-editor-row.direction-row{grid-template-columns:31px minmax(100px,1fr) 88px 36px 32px 32px}.category-add-row.direction-add-row{grid-template-columns:31px minmax(100px,1fr) 88px auto}.direction-select{min-width:82px;height:31px!important;padding:0 7px!important;color:#b9c9d8!important;font-size:10px!important}.direction-help{margin:-5px 0 14px;color:#6f8496;font-size:10px;line-height:1.6}.graph-link.is-undirected .link-line{stroke-dasharray:none;animation:none}.graph-link.is-directed .link-line{stroke-dasharray:7 4}.relation-direction-tag{margin-left:6px;color:#71889c;font-size:10px;font-weight:500}@media(max-width:820px){.category-editor-row.direction-row{grid-template-columns:31px minmax(90px,1fr) 82px 36px 32px 32px}}.importance-panel{margin:16px 0;padding:16px;border:1px solid rgba(91,132,166,.22);border-radius:12px;background:#0918269e}.importance-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.importance-panel-head h3{margin:0 0 4px;color:#d3e0eb;font-size:13px}.importance-panel-head p,.importance-note{margin:0;color:#71869a;font-size:10px;line-height:1.6}.importance-mode{display:inline-flex;flex:0 0 auto;padding:2px;border:1px solid rgba(91,132,166,.24);border-radius:8px;background:#050f19b8}.importance-mode button{border:0;border-radius:6px;padding:7px 10px;background:transparent;color:#75899b;font-size:10px;cursor:pointer}.importance-mode button.active{background:#3784d633;color:#9ecfff}.importance-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:14px}.importance-summary span{min-width:0;padding:9px 7px;border:1px solid rgba(91,132,166,.16);border-radius:8px;background:#06121ea3;color:#75899b;font-size:9px;text-align:center}.importance-summary strong{display:block;margin-bottom:2px;color:#d0dfeb;font-size:15px}.importance-summary .activity strong{color:#8fc3ee}.importance-summary .activity-3 strong,.importance-summary .activity-4 strong{color:#70d6bd}.importance-breakdown{display:grid;gap:7px;margin-bottom:12px}.importance-breakdown span{position:relative;display:grid;grid-template-columns:1fr auto;overflow:hidden;padding:7px 9px;border-radius:7px;background:#07131fb8;color:#8295a6;font-size:10px}.importance-breakdown span:before{content:"";position:absolute;inset:0 auto 0 0;width:calc(var(--score, 0) * 100%);background:linear-gradient(90deg,#2d7fd230,#2d7fd20a);pointer-events:none}.importance-breakdown b{position:relative;color:#b8cad9;font-weight:600}.importance-note{margin-top:10px}.recent-activity-ring{fill:none;stroke:#4d9fe8;stroke-width:2;opacity:.04;pointer-events:none}.graph-node.activity-high .recent-activity-ring{stroke:#5fd6bd;stroke-width:2.5;stroke-dasharray:5 4;opacity:.78;animation:recentActivityPulse 2.8s ease-in-out infinite}.graph-node.activity-medium .recent-activity-ring{stroke:#5da8e7;stroke-dasharray:3 5;opacity:.5}.graph-node.activity-low .recent-activity-ring{stroke:#647f96;stroke-dasharray:2 7;opacity:.22}.graph-node.activity-dormant .recent-activity-ring{opacity:.03}.graph-node.activity-high .node-body,.graph-node.activity-high .org-body{filter:brightness(1.12)}.graph-node.activity-dormant:not(.is-selected) .node-body,.graph-node.activity-dormant:not(.is-selected) .org-body{filter:brightness(.82)}@keyframes recentActivityPulse{0%,to{opacity:.42}50%{opacity:.92}}@media(max-width:760px){.importance-panel-head{flex-direction:column}.importance-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}.review-count{margin-left:auto;color:#91c8f7;font-size:10px;font-style:normal}.alias-review-section{gap:14px}.alias-panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;color:#b9cad8;font-size:11px}.alias-panel-heading span{padding:2px 7px;border-radius:10px;background:#487fb226;color:#83b7e2}.review-heading{margin-top:18px}.confirmed-alias-panel{padding:13px;border:1px solid rgba(75,126,163,.2);border-radius:10px;background:#07141f8c}.confirmed-alias-list{display:flex;flex-wrap:wrap;gap:7px}.confirmed-alias-list>span{display:inline-flex;gap:5px;padding:6px 8px;border:1px solid rgba(76,147,194,.2);border-radius:7px;background:#10283a94}.confirmed-alias-list b{color:#c9d9e6;font-size:10px}.confirmed-alias-list small{color:#6f899e;font-size:9px}.compact-empty{padding:10px}.alias-review-card{margin-bottom:12px;padding:14px;border:1px solid rgba(78,128,164,.22);border-radius:12px;background:linear-gradient(145deg,#0b1c2ae0,#07121de0)}.alias-review-card.review-conflict{border-color:#e08f5347}.alias-review-card.review-contextual_title{border-color:#7d69be47}.alias-review-card.review-entity_merge{border-color:#54a17e47}.alias-review-card>header{display:flex;justify-content:space-between;gap:12px}.alias-review-card h4{margin:8px 0 0;color:#d7e3ec;font-size:14px}.alias-review-type,.alias-review-chapter{display:inline-flex;margin-right:6px;padding:3px 7px;border-radius:8px;background:#4584be26;color:#89bde7;font-size:9px}.alias-confidence{color:#7fb7e4;font-size:15px}.alias-review-reason{margin:10px 0;color:#8fa3b4;font-size:10px;line-height:1.65}.alias-review-card blockquote{margin:10px 0;padding:9px 11px;border-left:2px solid rgba(78,150,206,.5);background:#050f188c;color:#aebfcd;font-size:10px}.alias-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.alias-evidence-grid>div{padding:9px;border-radius:8px;background:#06111b94}.alias-evidence-grid b,.alias-evidence-grid span{display:block}.alias-evidence-grid b{margin-bottom:4px;font-size:9px}.alias-evidence-grid span{color:#8295a5;font-size:9px}.support-evidence b{color:#76c9a0}.opposing-evidence b{color:#d49a72}.alias-candidates{display:grid;gap:7px}.alias-candidate{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid rgba(72,119,154,.16);border-radius:8px;background:#07131e8c}.alias-candidate strong{color:#c8d8e5;font-size:11px}.alias-candidate small{margin-left:7px;color:#7390a6;font-size:9px}.alias-candidate p{margin:3px 0 0;color:#6f8393;font-size:9px}.alias-review-disabled{display:inline-flex;align-items:center;max-width:190px;color:#75899a;font-size:10px;line-height:1.35;text-align:right}.alias-review-card footer{display:flex;justify-content:space-between;align-items:flex-start;margin-top:10px;gap:10px}.alias-footer-actions{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.alias-reject-button{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(78,128,164,.25);border-radius:6px;padding:5px 10px;background:#4e80a414;color:#8596a4;font-size:10px;cursor:pointer}.alias-reject-button:hover{color:#d39a94;border-color:#d39a9459;background:#d39a9414}.alias-reject-button:disabled{opacity:.5;cursor:not-allowed}.alias-reject-hint{color:#607484;font-size:9px;line-height:1.4;max-width:260px}.alias-ignore-button{display:inline-flex;align-items:center;gap:5px;font-size:10px}.alias-ignore-button.danger{border:1px solid rgba(200,90,70,.25);border-radius:6px;padding:5px 10px;background:transparent;color:#b07a6e;cursor:pointer}.alias-ignore-button.danger:hover{color:#d48a78;border-color:#d48a7866;background:#d48a7814}.alias-ignore-button.danger:disabled{opacity:.5;cursor:not-allowed}@media(max-width:760px){.alias-evidence-grid{grid-template-columns:1fr}.alias-candidate{align-items:flex-start;flex-direction:column}.alias-review-disabled{text-align:left}}
