:root{--bg-base:#0a192f;--bg-card:#112240;--bg-card-lighter:#1d3461;--bg-bubble-user:#112240;--bg-subtle:#64ffda0a;--bg-hover-card:#11224099;--bg-hover-shadow:0 4px 24px #0003;--chat-bar-bg:linear-gradient(180deg, #0a192ff5 0%, #112240eb 100%);--chat-bar-border:#64ffda1a;--chat-bar-shadow:0 1px 0 #64ffda0f, 0 4px 24px #0003;--chat-footer-bg:linear-gradient(0deg, #0a192ffa 60%, #0a192f00 100%);--input-container-bg:#112240d9;--input-container-bg-focus:#112240f2;--input-focus-border:#64ffda73;--input-focus-ring:#64ffda0f;--input-disabled-btn:#3a4a63;--accent:#64ffda;--accent-strong:#64ffda;--accent-strong-hover:#7dffe3;--accent-border:#64ffda33;--ink:#64ffda;--ink-hover:#7dffe3;--text-bright:#e6f1ff;--text-1:#ccd6f6;--text-2:#8892b0;--text-3:#7a8cb0;--border:#233554;--border-strong:#64ffda59;--shadow-pop:0 10px 30px -15px #020c1bb3;--shadow-card:0 10px 30px -15px #020c1bb3;--radius-card:10px;--radius-pill:999px;--tool-query:#64b5f6;--tool-viz:#64ffda;--tool-rag:#ffb86c;--tool-explain:#c792ea;--error-bg:#ff50500f;--error-border:#ff505033;--error-text:#ff8080;--font-mono:"Fira Code", "SF Mono", "Cascadia Code", Consolas, monospace;--border-subtle:#8892b01a;--ai-banner-bg:linear-gradient(135deg, #64ffda12 0%, #64ffda05 50%, transparent 100%);--ai-banner-border:#64ffda29;--ai-banner-hover-border:#64ffda4d;--ai-banner-hover-shadow:0 0 40px #64ffda0f;--ai-badge-bg:#64ffda1a;--ai-badge-border:#64ffda26;--ai-btn-shadow-hover:#64ffda59;--chip-bg:#64ffda0f;--chip-border:#64ffda29;--chip-bg-hover:#64ffda24;--chip-border-hover:#64ffda59;--back-btn-hover-bg:#64ffda0f;--back-btn-hover-border:#64ffda26;--msg-assistant-bg:linear-gradient(135deg, #64ffda08 0%, transparent 100%);--msg-user-shadow:0 2px 12px #64ffda0f;--result-card-shadow:0 2px 12px #00000026;--scroll-to-bottom-bg:#112240e6;--scroll-to-bottom-border:#64ffda33;--scroll-to-bottom-hover-border:#64ffda66;--code-copy-btn-bg:#64ffda14;--code-copy-btn-hover-bg:#64ffda29}html{scroll-behavior:smooth}html,body,#app{background:var(--bg-base);height:100%;color:var(--text-1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,PingFang SC,Microsoft YaHei,Inter,sans-serif}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#8892b033;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#8892b073}::selection{color:var(--text-1);background:#64ffda40}:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;border-radius:4px}a{text-decoration:none;transition:-webkit-text-decoration .2s,text-decoration .2s}a:hover{text-decoration:underline}pre code.hljs{font-size:.84rem;line-height:1.55;font-family:var(--font-mono);border-radius:10px;padding:1rem 1.1rem}:not(pre)>code{color:var(--accent-strong);background:#64ffda14;border-radius:4px;padding:.12em .4em;font-size:.88em}.n-data-table,.status-text{font-variant-numeric:tabular-nums}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);transform:translateY(28px)}.reveal.revealed{opacity:1;transform:none}.stagger>.reveal:first-child{transition-delay:0s}.stagger>.reveal:nth-child(2){transition-delay:80ms}.stagger>.reveal:nth-child(3){transition-delay:.16s}.stagger>.reveal:nth-child(4){transition-delay:.24s}.stagger>.reveal:nth-child(5){transition-delay:.32s}.stagger>.reveal:nth-child(6){transition-delay:.4s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@keyframes flowDown{0%{background-position:0 -100%}to{background-position:0 100%}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes pulse-glow{0%,to{opacity:1;box-shadow:0 0 #64ffda66}50%{opacity:.6;box-shadow:0 0 0 5px #64ffda00}}@keyframes float-blob{0%,to{transform:translate(0)}33%{transform:translate(15px,-20px)}66%{transform:translate(-10px,15px)}}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:600px}}.chat-message-enter{animation:.35s ease-out fadeInUp}.fade-in{animation:.3s ease-out fadeIn}.slide-in{animation:.3s ease-out slideInRight}.streaming-cursor:after{content:"|";color:var(--accent-strong);transition:opacity .3s;animation:1s step-end infinite blink}.streaming-cursor.fade-out:after{opacity:0}.n-card{--n-border-color:var(--border)!important}.n-tabs .n-tabs-tab{transition:color .2s,background .2s}.n-button{transition:all .2s}.n-code{border-radius:8px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.pill{font-family:var(--font-mono);color:var(--accent-strong);white-space:nowrap;background:#64ffda14;border:1px solid #64ffda2e;border-radius:20px;align-items:center;padding:4px 14px;font-size:.75rem;line-height:1.4;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.pill:hover{background:#64ffda26;border-color:#64ffda59;transform:translateY(-1px)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}[data-theme=light]{--bg-base:#f6f8fa;--bg-card:#fff;--bg-card-lighter:#eef1f6;--bg-bubble-user:#dbeafe;--bg-subtle:#0969da0a;--bg-hover-card:#0969da0a;--bg-hover-shadow:0 2px 16px #1f23281a;--chat-bar-bg:linear-gradient(180deg, #f6f8faf7 0%, #fffffff0 100%);--chat-bar-border:#0969da1f;--chat-bar-shadow:0 1px 0 #0969da14, 0 4px 24px #1f232814;--chat-footer-bg:linear-gradient(0deg, #f6f8fafc 60%, #f6f8fa00 100%);--input-container-bg:#ffffffe6;--input-container-bg-focus:#fff;--input-focus-border:#0969da80;--input-focus-ring:#0969da14;--input-disabled-btn:#d0d7de;--accent:#0969da;--accent-strong:#0969da;--accent-strong-hover:#0550ae;--accent-border:#0969da40;--ink:#0969da;--ink-hover:#0550ae;--text-bright:#1a1a2e;--text-1:#24292f;--text-2:#57606a;--text-3:#8c959f;--border:#d0d7de;--border-strong:#0969da66;--shadow-pop:0 1px 3px #1f23281f, 0 8px 24px #424a531f;--shadow-card:0 1px 3px #1f23281f, 0 8px 24px #424a531f;--tool-query:#0969da;--tool-viz:#0d9488;--tool-rag:#b45309;--tool-explain:#7c3aed;--error-bg:#fff0f0;--error-border:#cf222e40;--error-text:#cf222e;--border-subtle:#1f23281a;--ai-banner-bg:linear-gradient(135deg, #0969da0d 0%, #0969da05 50%, transparent 100%);--ai-banner-border:#0969da2e;--ai-banner-hover-border:#0969da59;--ai-banner-hover-shadow:0 0 40px #0969da14;--ai-badge-bg:#0969da14;--ai-badge-border:#0969da2e;--ai-btn-shadow-hover:#0969da4d;--chip-bg:#0969da0f;--chip-border:#0969da2e;--chip-bg-hover:#0969da1f;--chip-border-hover:#0969da59;--back-btn-hover-bg:#0969da0f;--back-btn-hover-border:#0969da33;--msg-assistant-bg:linear-gradient(135deg, #0969da08 0%, transparent 100%);--msg-user-shadow:0 2px 12px #0969da0f;--result-card-shadow:0 1px 3px #1f23281f;--scroll-to-bottom-bg:#ffffffe6;--scroll-to-bottom-border:#0969da33;--scroll-to-bottom-hover-border:#0969da66;--code-copy-btn-bg:#0969da12;--code-copy-btn-hover-bg:#0969da24}[data-theme=light] html,[data-theme=light] body,[data-theme=light] #app{background:var(--bg-base);color:var(--text-1)}[data-theme=light] .pill{color:var(--accent-strong);background:#0969da12;border-color:#0969da33}[data-theme=light] .pill:hover{background:#0969da24;border-color:#0969da59}[data-theme=light] :not(pre)>code{color:#0550ae;background:#0969da12}[data-theme=light] ::selection{color:var(--text-1);background:#0969da33}[data-theme=light] ::-webkit-scrollbar-thumb{background:#39414a40}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#39414a66}[data-theme=light] .portfolio{background:radial-gradient(600px circle at var(--spotlight-x,50vw) var(--spotlight-y,50vh), #0969da14, transparent 80%), var(--bg-base);background-attachment:fixed,scroll}[data-theme=light] .streaming-cursor:after{color:var(--accent-strong);transition:opacity .3s}[data-theme=light] .streaming-cursor.fade-out:after{opacity:0}.code-block-wrapper{margin:.6em 0;position:relative}.code-block-wrapper .code-lang{font-size:.7rem;font-family:var(--font-mono);color:var(--text-3);pointer-events:none;background:#64ffda0f;border-radius:0 0 6px;padding:.2em .6em;position:absolute;top:0;left:0}.code-block-wrapper .code-copy-btn{background:var(--code-copy-btn-bg);width:28px;height:28px;color:var(--text-3);cursor:pointer;opacity:0;z-index:2;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:opacity .2s,background .2s,color .2s,border-color .2s;display:flex;position:absolute;top:6px;right:6px}.code-block-wrapper:hover .code-copy-btn{opacity:1}.code-block-wrapper .code-copy-btn:hover{background:var(--code-copy-btn-hover-bg);color:var(--accent-strong);border-color:var(--accent-border)}.code-block-wrapper .code-copy-btn.copied{color:var(--accent-strong);font-size:.85rem;font-weight:700}
