:root{--hub-c0:#31a394;--hub-c1:#4f7cf0;--hub-c2:#e8761a;--hub-c3:#c2417b;--hub-c4:#8a63d2;--hub-c5:#c99a06;}[data-theme="dark"]{--hub-c0:#46baab;--hub-c1:#7b9cf5;--hub-c2:#f0954a;--hub-c3:#e06a9f;--hub-c4:#a888e6;--hub-c5:#e3b52c;}.chathub-visual{margin:14px 0;padding:14px 14px 10px;border:1px solid var(--border);border-radius:12px;background:var(--bg-secondary);max-width:100%;}.chathub-visual-title{margin:0 0 8px;font-size:.9rem;font-weight:600;color:var(--text);}.chathub-visual-stage{overflow-x:auto;overflow-y:hidden;}.chathub-visual-chart .chathub-visual-stage svg{display:block;max-width:100%;height:auto;}.chathub-visual-diagram .chathub-visual-stage{max-height:520px;overflow:auto;}.chathub-visual-diagram .chathub-visual-stage svg{display:block;margin:0 auto;}.chathub-visual-source{margin-top:6px;font-size:.74rem;color:var(--text-secondary);}.chathub-visual-bar{display:flex;gap:8px;margin-top:8px;}.chathub-visual-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text-secondary);font:inherit;font-size:.76rem;font-weight:600;cursor:pointer;}.chathub-visual-btn:hover{color:var(--text);border-color:var(--accent);}.chathub-visual-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px;}.chathub-visual-note{margin:0 0 8px;font-size:.82rem;color:var(--text-secondary);}.chathub-table-wrap{overflow-x:auto;margin-top:8px;}.chathub-table-wrap[hidden]{display:none;}.chathub-data-table{border-collapse:collapse;font-size:.8rem;min-width:100%;font-variant-numeric:tabular-nums;}.chathub-data-table th,.chathub-data-table td{padding:6px 10px;border-bottom:1px solid var(--border);text-align:right;white-space:nowrap;}.chathub-data-table th:first-child,.chathub-data-table thead th{text-align:left;}.chathub-data-table thead th{color:var(--text-secondary);font-weight:600;}.chathub-c0{fill:var(--hub-c0);}.chathub-c1{fill:var(--hub-c1);}.chathub-c2{fill:var(--hub-c2);}.chathub-c3{fill:var(--hub-c3);}.chathub-c4{fill:var(--hub-c4);}.chathub-c5{fill:var(--hub-c5);}.chathub-line{stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round;}.chathub-s0{stroke:var(--hub-c0);}.chathub-s1{stroke:var(--hub-c1);}.chathub-s2{stroke:var(--hub-c2);}.chathub-s3{stroke:var(--hub-c3);}.chathub-s4{stroke:var(--hub-c4);}.chathub-s5{stroke:var(--hub-c5);}.chathub-grid{stroke:var(--border);stroke-width:1;stroke-dasharray:3 4;}.chathub-axis{stroke:var(--text-tertiary, var(--text-secondary));stroke-width:1;}.chathub-chart-tick{fill:var(--text-secondary);font-family:inherit;}.chathub-chart-label{fill:var(--text);font-family:inherit;}.chathub-node-box{fill:var(--bg);stroke:var(--accent);stroke-width:1.4;}.chathub-node-text{fill:var(--text);font-family:inherit;}.chathub-edge{fill:none;stroke:var(--text-tertiary, var(--text-secondary));stroke-width:1.5;}.chathub-edge.is-back{stroke-dasharray:5 4;}.chathub-arrow{fill:var(--text-tertiary, var(--text-secondary));}.chathub-edge-label-bg{fill:var(--bg-secondary);}.chathub-edge-label{fill:var(--text-secondary);font-family:inherit;}.chathub-visual-list{margin:0 0 6px;padding-left:1.3em;font-size:.84rem;color:var(--text);line-height:1.55;}.chathub-visual-links{margin:0;padding-left:1.1em;font-size:.8rem;color:var(--text-secondary);line-height:1.5;}.chathub-visual-text{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;}.chathub-visual-raw summary{cursor:pointer;font-size:.78rem;font-weight:600;color:var(--text-secondary);}.chathub-visual-raw pre{margin:8px 0 0;max-height:260px;overflow:auto;padding:8px 10px;border-radius:8px;background:var(--bg);font-size:.75rem;white-space:pre-wrap;overflow-wrap:anywhere;}.md-math[data-display="1"]{display:block;overflow-x:auto;overflow-y:hidden;text-align:center;margin:10px 0;}.answer-content .katex-display{overflow-x:auto;overflow-y:hidden;padding:4px 0;margin:0;}.code-block--streaming:has(code[class*="language-syniray-"]) pre{display:none;}.chathub-overlay{position:fixed;inset:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.55);}.chathub-overlay-box{display:flex;flex-direction:column;width:min(1200px,100%);max-height:100%;background:var(--bg);border-radius:14px;border:1px solid var(--border);overflow:hidden;}.chathub-overlay-head{display:flex;align-items:center;gap:12px;padding:12px 12px 12px 18px;border-bottom:1px solid var(--border);}.chathub-overlay-head h2{flex:1;margin:0;font-size:.95rem;font-weight:600;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.chathub-overlay-close{display:flex;width:36px;height:36px;align-items:center;justify-content:center;border:0;border-radius:10px;background:none;color:var(--text-secondary);cursor:pointer;}.chathub-overlay-close:hover{background:var(--bg-secondary);color:var(--text);}.chathub-overlay-stage{overflow:auto;padding:16px;}@media (max-width:768px){.chathub-visual{padding:12px 10px 8px;}}