:root{--bg-primary:#080c14;--bg-secondary:#0d1525;--bg-card:#111927;--bg-card-hover:#16202e;--bg-card-subtle:#0f172aa6;--bg-input:#090e1880;--bg-input-box:#0d1525;--border:#63b3ed1f;--border-bright:#63b3ed47;--accent-blue:#4fa8ff;--accent-cyan:#00d4ff;--accent-purple:#a78bfa;--accent-green:#34d399;--accent-orange:#fb923c;--accent-red:#f87171;--accent-yellow:#fbbf24;--tier-junior:#34d399;--tier-medium:#4fa8ff;--tier-senior:#a78bfa;--tier-cache:#fbbf24;--text-primary:#e8f4ff;--text-secondary:#8baabf;--text-muted:#4d6a7e;--topbar-bg:#080c14d9;--topbar-border:#63b3ed1f;--preset-image-bg:#a78bfa26;--preset-image-border:#a78bfa59;--preset-image-color:#c4b5fd;--preset-pdf-bg:#f8717126;--preset-pdf-border:#f8717159;--preset-pdf-color:#fca5a5;--preset-csv-bg:#34d39926;--preset-csv-border:#34d39959;--preset-csv-color:#6ee7b7;--font-sans:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--shadow-glow-blue:0 0 24px #4fa8ff26;--shadow-glow-green:0 0 24px #34d39926;--shadow-card:0 4px 24px #0006;--btn-route-shadow:0 4px 16px #4fa8ff4d;--btn-route-hover-shadow:0 6px 24px #4fa8ff73}[data-theme=light],.light-theme{--bg-primary:#edf2f7;--bg-secondary:#f8fafc;--bg-card:#fff;--bg-card-hover:#f1f5f9;--bg-card-subtle:linear-gradient(135deg, #eff6ffd9 0%, #f5f3ffb3 100%);--bg-input:#f1f5f9;--bg-input-box:#f8fafc;--border:#e2e8f0;--border-bright:#cbd5e1;--accent-blue:#2563eb;--accent-cyan:#0284c7;--accent-purple:#7c3aed;--accent-green:#059669;--accent-orange:#d97706;--accent-red:#dc2626;--accent-yellow:#b45309;--tier-junior:#059669;--tier-medium:#2563eb;--tier-senior:#7c3aed;--tier-cache:#b45309;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#64748b;--topbar-bg:#f8fafce0;--topbar-border:#e2e8f0;--preset-image-bg:#ede9fe;--preset-image-border:#ddd6fe;--preset-image-color:#6d28d9;--preset-pdf-bg:#fee2e2;--preset-pdf-border:#fecaca;--preset-pdf-color:#b91c1c;--preset-csv-bg:#d1fae5;--preset-csv-border:#a7f3d0;--preset-csv-color:#047857;--shadow-glow-blue:0 4px 16px #2563eb1f;--shadow-glow-green:0 4px 16px #0596691f;--shadow-card:0 2px 8px #0f172a0a, 0 12px 24px #0f172a08;--btn-route-shadow:0 4px 14px #2563eb38;--btn-route-hover-shadow:0 6px 20px #2563eb52}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6;transition:background-color .25s,color .25s}.app-shell{grid-template-rows:64px 1fr;min-height:100vh;display:grid}.topbar{z-index:100;background:var(--topbar-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--topbar-border);justify-content:space-between;align-items:center;padding:0 2rem;transition:background-color .25s,border-color .25s;display:flex;position:sticky;top:0}.theme-toggle-btn{cursor:pointer;border-radius:20px;align-items:center;gap:7px;padding:6px 14px;font-size:.78rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.theme-toggle-btn.btn-light-mode{color:#0f172a!important;background:#fff!important;border:1px solid #fff9!important;box-shadow:0 2px 10px #00000059!important}.theme-toggle-btn.btn-light-mode:hover{transform:translateY(-1px);color:#020617!important;background:#f1f5f9!important;border-color:#fff!important;box-shadow:0 4px 14px #ffffff40!important}.theme-toggle-btn.btn-dark-mode{color:#f8fafc!important;background:#0f172a!important;border:1px solid #334155!important;box-shadow:0 2px 8px #0f172a40!important}.theme-toggle-btn.btn-dark-mode:hover{transform:translateY(-1px);color:#fff!important;background:#1e293b!important;border-color:#64748b!important;box-shadow:0 4px 12px #0f172a59!important}.theme-toggle-btn:active{transform:translateY(0)}.theme-toggle-icon{font-size:.95rem;line-height:1;transition:transform .3s;display:inline-block}.theme-toggle-btn:hover .theme-toggle-icon{transform:rotate(18deg)scale(1.15)}.theme-toggle-text{letter-spacing:-.01em}.topbar-logo{letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.1rem;font-weight:700;display:flex}.logo-icon{background:linear-gradient(135deg,#4fa8ff,#a78bfa);border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.topbar-badge{color:var(--accent-blue);letter-spacing:.05em;background:#4fa8ff26;border:1px solid #4fa8ff4d;border-radius:20px;padding:2px 8px;font-size:.7rem;font-weight:600}.topbar-status{color:var(--text-secondary);align-items:center;gap:6px;font-size:.78rem;display:flex}.status-dot{background:var(--accent-green);width:8px;height:8px;box-shadow:0 0 8px var(--accent-green);border-radius:50%;animation:2s infinite pulse}.status-dot.offline{background:var(--accent-red);box-shadow:0 0 8px var(--accent-red);animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.main-layout{grid-template-columns:260px 1fr;gap:0;height:calc(100vh - 64px);display:grid;overflow:hidden}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border);flex-direction:column;gap:4px;padding:1.5rem 1rem;display:flex;overflow-y:auto}.sidebar-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding:.75rem .75rem .25rem;font-size:.65rem;font-weight:700}.nav-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:10px;width:100%;padding:.6rem .75rem;font-size:.875rem;font-weight:500;transition:all .18s;display:flex}.nav-item:hover{color:var(--text-primary);background:#4fa8ff0f}.nav-item.active{color:var(--accent-blue);background:#4fa8ff1a;border-color:#4fa8ff33}.nav-item .nav-icon{text-align:center;width:20px;font-size:1rem}.content-area{flex-direction:column;gap:1.5rem;padding:2rem;display:flex;overflow-y:auto}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;transition:border-color .2s}.card:hover{border-color:var(--border-bright)}.card-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1rem;font-size:.8rem;font-weight:700}.query-panel{flex-direction:column;gap:1rem;display:flex}.query-header{align-items:center;gap:12px;margin-bottom:.5rem;display:flex}.query-header h2{letter-spacing:-.02em;font-size:1.4rem;font-weight:800}.query-header p{color:var(--text-secondary);font-size:.85rem}.input-group{flex-direction:column;gap:.5rem;display:flex}.input-label{color:var(--text-secondary);font-size:.78rem;font-weight:600}.query-textarea{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;min-height:90px;color:var(--text-primary);font-family:var(--font-sans);resize:vertical;outline:none;padding:.875rem 1rem;font-size:.9rem;line-height:1.6;transition:border-color .2s,box-shadow .2s}.query-textarea:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px #4fa8ff1f}.query-textarea::placeholder{color:var(--text-muted)}.query-controls{grid-template-columns:1fr auto;align-items:end;gap:1rem;display:grid}.quality-slider-wrap{flex-direction:column;gap:.4rem;display:flex}.slider-header{justify-content:space-between;align-items:center;display:flex}.slider-value{font-family:var(--font-mono);color:var(--accent-cyan);font-size:.8rem;font-weight:600}input[type=range]{width:100%;accent-color:var(--accent-blue);cursor:pointer;border-radius:2px;height:4px}.btn-route{border-radius:var(--radius-md);color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#4fa8ff,#a78bfa);border:none;align-items:center;gap:8px;padding:.75rem 1.75rem;font-size:.9rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 16px #4fa8ff4d}.btn-route:hover{transform:translateY(-1px);box-shadow:0 6px 24px #4fa8ff73}.btn-route:active{transform:translateY(0)}.btn-route:disabled{opacity:.5;cursor:not-allowed;transform:none}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.result-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;display:grid}.metric-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:4px;padding:1rem;transition:all .2s;display:flex}.metric-card:hover{border-color:var(--border-bright);transform:translateY(-2px)}.metric-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem;font-weight:600}.metric-value{letter-spacing:-.02em;font-size:1.5rem;font-weight:800;font-family:var(--font-mono)}.metric-sub{color:var(--text-secondary);font-size:.72rem}.tier-badge{letter-spacing:.05em;text-transform:uppercase;border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.tier-junior{color:var(--tier-junior);background:#34d3991f;border:1px solid #34d3994d}.tier-medium{color:var(--tier-medium);background:#4fa8ff1f;border:1px solid #4fa8ff4d}.tier-senior{color:var(--tier-senior);background:#a78bfa1f;border:1px solid #a78bfa4d}.tier-cache{color:var(--tier-cache);background:#fbbf241f;border:1px solid #fbbf244d}.response-box{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;line-height:1.7;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;max-height:200px;padding:1rem 1.25rem;overflow-y:auto}.quality-bar-wrap{flex-direction:column;gap:6px;display:flex}.quality-bar-track{background:#ffffff0f;border-radius:3px;height:6px;overflow:hidden}.quality-bar-fill{border-radius:3px;height:100%;transition:width .8s cubic-bezier(.34,1.56,.64,1)}.quality-row{justify-content:space-between;align-items:center;font-size:.78rem;display:flex}.quality-label{color:var(--text-secondary)}.quality-pct{font-family:var(--font-mono);font-weight:600}.benchmark-table-wrap{border-radius:var(--radius-md);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.8rem}thead tr{background:#4fa8ff0f}th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:.65rem .875rem;font-size:.68rem;font-weight:700}td{color:var(--text-secondary);font-family:var(--font-mono);white-space:nowrap;border-bottom:1px solid #63b3ed0f;padding:.65rem .875rem}tr:last-child td{border-bottom:none}tbody tr:hover{background:#4fa8ff0a}td:first-child{color:var(--text-primary);font-family:var(--font-sans);font-weight:500}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.kpi-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:4px;padding:1.25rem;display:flex}.kpi-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.7rem;font-weight:600}.kpi-value{font-size:1.8rem;font-weight:800;font-family:var(--font-mono);letter-spacing:-.03em}.kpi-sub{color:var(--text-secondary);font-size:.72rem}.cache-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.pill{letter-spacing:.04em;border-radius:20px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-block}.pill-hit{color:var(--accent-green);background:#34d3991f;border:1px solid #34d3994d}.pill-miss{color:var(--accent-red);background:#f871711a;border:1px solid #f8717133}.pill-pass{color:var(--accent-green);background:#34d3991f}.pill-flag{color:var(--accent-orange);background:#fb923c1f}.empty-state{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:3rem;display:flex}.empty-icon{opacity:.4;font-size:2.5rem}.empty-text{max-width:280px;font-size:.875rem;line-height:1.6}.delta-pos{color:var(--accent-green)}.delta-neg{color:var(--accent-red)}.delta-neu{color:var(--text-secondary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#63b3ed26;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#63b3ed4d}.fade-in{animation:.35s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.section-divider{border:none;border-top:1px solid var(--border);margin:.5rem 0}.self-fix-badge{border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:.72rem;display:inline-flex}.self-fix-triggered{color:var(--accent-yellow);background:#fbbf241a;border:1px solid #fbbf244d}.self-fix-none{color:var(--accent-green);background:#34d39914;border:1px solid #34d39933}.upload-card-wrapper{background:var(--bg-card-subtle);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:10px;padding:14px 16px;transition:all .2s;display:flex}.dropzone-box{border:1.5px dashed var(--border-bright);background:var(--bg-input);text-align:center;cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:6px;padding:16px 20px;transition:all .2s;display:flex}.dropzone-box:hover,.dropzone-box.dragging{border-color:var(--accent-cyan);background:#38bdf814}.dropzone-cloud-icon-wrapper{justify-content:center;align-items:center;margin-bottom:2px;display:flex}.dropzone-cloud-icon{color:#93c5fd;filter:drop-shadow(0 2px 6px #93c5fd59);width:32px;height:32px;transition:all .25s cubic-bezier(.4,0,.2,1)}.dropzone-box:hover .dropzone-cloud-icon{transform:translateY(-2px)scale(1.1)}.prompt-chip{color:var(--accent-blue);cursor:pointer;background:#4fa8ff12;border:1px solid #4fa8ff2e;border-radius:20px;padding:3px 10px;font-size:.72rem;transition:all .15s}.prompt-chip:hover{background:#4fa8ff24}.sidebar-security-badge{background:#34d39914;border:1px solid #34d39940;border-radius:8px;margin-bottom:6px;padding:.65rem .75rem}.sidebar-security-title{color:var(--accent-green);text-transform:uppercase;margin-bottom:4px;font-size:.72rem;font-weight:700}.sidebar-security-item{color:#a7f3d0;font-size:.7rem}.sidebar-tier-card{background:#ffffff05;border:1px solid #0000;border-radius:8px;margin:3px 0;padding:.5rem .75rem;transition:all .15s}.sidebar-tier-card:hover{border-color:var(--border);background:#ffffff0d}[data-theme=light] body,body.light-theme{background:#edf2f7}[data-theme=light] .main-layout{background:radial-gradient(1100px at 15% 10%,#dbeafe99 0%,#0000 70%),radial-gradient(900px at 85% 85%,#ede9fe80 0%,#0000 70%),#edf2f7}[data-theme=light] .sidebar{background:#f8fafc;border-right-color:#e2e8f0;box-shadow:2px 0 12px #0f172a08}[data-theme=light] .sidebar-section-label{color:#64748b}[data-theme=light] .sidebar-security-badge{background:linear-gradient(135deg,#ecfdf5 0%,#f0fdf4 100%);border:1px solid #a7f3d0;box-shadow:0 1px 3px #10b98114}[data-theme=light] .sidebar-security-title{color:#047857}[data-theme=light] .sidebar-security-item{color:#065f46;font-weight:500}[data-theme=light] .sidebar-tier-card{background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0f172a08}[data-theme=light] .sidebar-tier-card:hover{background:#fff;border-color:#cbd5e1;transform:translate(2px);box-shadow:0 3px 8px #0f172a0f}[data-theme=light] .nav-item{color:#475569}[data-theme=light] .nav-item:hover{color:#1d4ed8;background:#2563eb0f}[data-theme=light] .nav-item.active{color:#2563eb;background:linear-gradient(135deg,#eff6fff2 0%,#f5f3ffd9 100%);border-color:#bfdbfe;font-weight:600;box-shadow:0 1px 3px #2563eb1a}[data-theme=light] .card{background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0f172a0a,0 10px 25px #0f172a08}[data-theme=light] .card:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0f172a0f,0 14px 28px #0f172a0a}[data-theme=light] .upload-card-wrapper{background:linear-gradient(135deg,#eff6ffd9 0%,#f5f3ffb3 100%);border:1px solid #bfdbfecc;box-shadow:0 2px 8px #3b82f60a}[data-theme=light] .dropzone-box{background:#f1f5f9;border:1.5px dashed #cbd5e1;box-shadow:0 1px 3px #00000005}[data-theme=light] .dropzone-box:hover,[data-theme=light] .dropzone-box.dragging{border-color:var(--accent-blue);background:#e2e8f0;box-shadow:0 4px 14px #2563eb1a}[data-theme=light] .dropzone-cloud-icon,.light-theme .dropzone-cloud-icon{color:#1e293b;filter:drop-shadow(0 2px 5px #0f172a47)}[data-theme=light] .dropzone-box:hover .dropzone-cloud-icon,.light-theme .dropzone-box:hover .dropzone-cloud-icon{color:#0f172a;filter:drop-shadow(0 3px 8px #0f172a61);transform:translateY(-2px)scale(1.12)}.prompt-chip{color:#1d4ed8;background:#2563eb0f;border:1px solid #2563eb2e}[data-theme=light] .prompt-chip:hover{background:#2563eb1f;transform:translateY(-1px)}[data-theme=light] thead tr{background:#2563eb0d}[data-theme=light] tbody tr:hover{background:#2563eb08}[data-theme=light] th{color:#64748b;border-bottom-color:#e2e8f0}[data-theme=light] td{color:#334155;border-bottom-color:#f1f5f9}[data-theme=light] .quality-bar-track{background:#e2e8f0}[data-theme=light] .query-textarea{color:#0f172a;background:#f1f5f9;border:1.5px solid #cbd5e1}[data-theme=light] .query-textarea:focus{border-color:var(--accent-blue);background:#fff;box-shadow:0 0 0 3px #2563eb26}[data-theme=light] .response-box{color:#0f172a;background:#f1f5f9;border:1.5px solid #cbd5e1}.metrics-reveal-header{transition:all .2s cubic-bezier(.4,0,.2,1)}.metrics-reveal-header:hover{border-color:var(--accent-blue)!important;background:#4fa8ff1f!important}[data-theme=light] .metrics-reveal-header:hover{border-color:var(--accent-blue)!important;background:#2563eb14!important}[data-theme=light] .metric-card,[data-theme=light] .kpi-card{background:#f8fafc;border-color:#e2e8f0;box-shadow:0 1px 4px #0f172a08}[data-theme=light] .pill-hit{color:#047857;background:#d1fae5;border-color:#a7f3d0}[data-theme=light] .pill-miss{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}[data-theme=light] ::-webkit-scrollbar-thumb{background:#64748b33}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#64748b59}.md-output{font-family:var(--font-sans)}.md-output .md-p{color:var(--text-primary);margin:0 0 .7em;line-height:1.75}.md-output .md-p:last-child{margin-bottom:0}.md-output .md-h1{color:var(--text-primary);margin:1rem 0 .5rem;font-size:1.25rem;font-weight:700}.md-output .md-h2{color:var(--text-primary);margin:.85rem 0 .4rem;font-size:1.1rem;font-weight:700}.md-output .md-h3{color:var(--accent-cyan);margin:.75rem 0 .35rem;font-size:1rem;font-weight:600}.md-output .md-pre{background:var(--bg-tertiary,#00000040);border:1px solid var(--border);border-radius:8px;margin:.75rem 0;padding:.9rem 1rem;font-size:.84rem;line-height:1.6;overflow-x:auto}.md-output .md-code{color:var(--accent-cyan);white-space:pre;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace}.md-output .md-inline-code{color:var(--accent-cyan);background:#4fa8ff1f;border:1px solid #4fa8ff33;border-radius:4px;padding:1px 6px;font-family:JetBrains Mono,Fira Code,monospace;font-size:.87em}.md-output .md-ul,.md-output .md-ol{margin:.5rem 0 .5rem 1.2rem;padding:0}.md-output .md-li{color:var(--text-primary);margin:.2rem 0;line-height:1.65}.md-output .md-hr{border:none;border-top:1px solid var(--border);margin:1rem 0}[data-theme=light] .md-output .md-pre{background:#f1f5f9e6}.floating-circle-btn{z-index:9999;color:#fff;cursor:grab;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#2563eb 0%,#7c3aed 100%);border:2px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;padding:0;transition:box-shadow .2s,transform .15s;display:flex;position:fixed;box-shadow:0 4px 18px #2563eb73,0 2px 6px #00000026}.floating-circle-btn:hover{transform:scale(1.08);box-shadow:0 6px 24px #2563eb99,0 3px 10px #0003}.floating-circle-btn:active{cursor:grabbing;transform:scale(.96)}.floating-circle-icon{pointer-events:none;font-size:1.4rem;line-height:1}.floating-online-dot{pointer-events:none;background:#34d399;border:2px solid #fff;border-radius:50%;width:10px;height:10px;animation:2s ease-in-out infinite pulse-dot;position:absolute;bottom:2px;right:2px;box-shadow:0 0 6px #34d399cc}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.75;transform:scale(1.25)}}.floating-chat-window{background:var(--bg-card);border:1px solid var(--border-bright);z-index:10000;border-radius:18px;flex-direction:column;width:440px;max-width:calc(100vw - 32px);height:620px;max-height:calc(100vh - 48px);animation:.25s cubic-bezier(.16,1,.3,1) slideUpFloat;display:flex;position:fixed;overflow:hidden;box-shadow:0 20px 50px #00000059,0 4px 16px #0000001f}@keyframes slideUpFloat{0%{opacity:0;transform:scale(.96)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.floating-chat-header{background:var(--bg-secondary);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.floating-avatar{background:linear-gradient(135deg,#2563eb,#7c3aed);border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:1.1rem;display:flex;box-shadow:0 2px 8px #2563eb4d}.floating-header-action-btn{border:1px solid var(--border);cursor:pointer;width:30px;height:30px;color:var(--text-muted);background:0 0;border-radius:8px;justify-content:center;align-items:center;font-size:.85rem;transition:all .15s;display:flex}.floating-header-action-btn:hover{border-color:var(--accent-red);background:#f8717126}.floating-header-close-btn{border:1px solid var(--border);cursor:pointer;width:30px;height:30px;color:var(--text-secondary);background:0 0;border-radius:8px;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;transition:all .15s;display:flex}.floating-header-close-btn:hover{color:var(--text-primary);background:#ffffff1a}.floating-telemetry-bar{border-bottom:1px solid var(--border);background:#3b82f614;padding:8px 14px}.floating-telemetry-details{border-top:1px dashed var(--border);color:var(--text-secondary);flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;font-size:.72rem;display:flex}.floating-messages-area{flex-direction:column;flex:1;gap:12px;padding:14px;display:flex;overflow-y:auto}.floating-welcome-state{text-align:center;flex-direction:column;align-items:center;padding:1.5rem .5rem;display:flex}.floating-quick-prompts{flex-direction:column;gap:6px;width:100%;margin-top:14px;display:flex}.floating-chip{text-align:left;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:10px;padding:6px 12px;font-size:.75rem;transition:all .15s}.floating-chip:hover{border-color:var(--accent-blue);color:var(--text-primary);background:#2563eb14}.floating-message-row{align-items:flex-end;gap:8px;width:100%;display:flex}.floating-message-row.user-row{justify-content:flex-end}.floating-message-row.assistant-row{justify-content:flex-start}.msg-avatar{flex-shrink:0;margin-bottom:2px;font-size:.95rem}.user-avatar-icon{font-size:.85rem}.floating-bubble{word-break:break-word;border-radius:14px;padding:10px 14px;font-size:.86rem;line-height:1.55}.user-bubble{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:14px 14px 2px;max-width:82%;box-shadow:0 2px 8px #2563eb40}.assistant-bubble{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);border-radius:14px 14px 14px 2px;max-width:88%}.loading-bubble{color:var(--text-muted);align-items:center;gap:8px;font-size:.8rem;display:flex}.msg-model-tag{color:var(--accent-cyan);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;padding-bottom:4px;font-size:.68rem;font-weight:600;display:flex}.msg-tier-pill{text-transform:uppercase;color:var(--accent-blue);background:#3b82f626;border-radius:4px;padding:1px 5px;font-size:.62rem}.bubble-actions{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:6px;padding-top:6px;font-size:.7rem;display:flex}.bubble-copy-btn{color:var(--accent-blue);cursor:pointer;background:0 0;border:none;padding:0;font-size:.72rem}.bubble-copy-btn:hover{text-decoration:underline}.bubble-savings-tag{color:var(--accent-green);font-size:.68rem;font-weight:600}.floating-error-banner{border:1px solid var(--accent-red);color:var(--accent-red);background:#ef44441f;border-radius:8px;padding:8px 12px;font-size:.78rem}.floating-chat-footer{background:var(--bg-secondary);border-top:1px solid var(--border);flex-direction:column;gap:6px;padding:10px 14px 12px;display:flex}.floating-input-wrapper{align-items:flex-end;gap:8px;display:flex}.floating-input-textarea{background:var(--bg-input);border:1.5px solid var(--border);color:var(--text-primary);font-family:var(--font-sans);resize:none;border-radius:10px;outline:none;flex:1;min-height:52px;padding:8px 12px;font-size:.85rem;line-height:1.4;transition:border-color .2s,box-shadow .2s}.floating-input-textarea:focus{border-color:var(--accent-blue);box-shadow:0 0 0 2px #2563eb26}.floating-send-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb 0%,#7c3aed 100%);border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.1rem;transition:all .2s;display:flex;box-shadow:0 2px 8px #2563eb4d}.floating-send-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #2563eb73}.floating-send-btn:disabled{opacity:.5;cursor:not-allowed}.floating-input-tip{color:var(--text-muted);text-align:center;font-size:.65rem}
