.chat-widget-fab,.chat-widget-panel{--widget-accent:var(--aqua,#0093b2);--widget-accent-hover:var(--aqua-hover,#007a96);--widget-surface:var(--surface,#fff);--widget-bg:var(--bg,#f8fafc);--widget-bg-card:var(--bg-card,#fff);--widget-text:var(--text,#1e293b);--widget-text-secondary:var(--text-secondary,#64748b);--widget-text-muted:var(--text-muted,#94a3b8);--widget-border:var(--border,#e2e8f0);--widget-hover:var(--hover,#f1f5f9);--widget-grey-light:var(--grey-light,#f8fafc);--widget-navy:var(--navy,#1e293b);--widget-danger:var(--danger,#dc2626);--widget-primary:var(--primary,#0093b2)}.chat-widget-fab{background:var(--widget-accent);color:#fff;cursor:pointer;z-index:9998;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;padding:0;transition:transform .2s,box-shadow .2s,background .2s;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 4px 12px #0093b266,0 2px 4px #0000001a}.chat-widget-fab-bottom-left{left:1.5rem;right:auto}.chat-widget-fab:hover{background:var(--widget-accent-hover);transform:scale(1.08);box-shadow:0 6px 20px #0093b280,0 3px 8px #00000026}.chat-widget-fab svg{width:26px;height:26px}.chat-widget-panel{background:var(--widget-surface);z-index:9999;border-radius:16px;flex-direction:column;width:400px;height:600px;max-height:calc(100vh - 3rem);transition:width .3s,height .3s,bottom .3s,right .3s,border-radius .3s;animation:.25s ease-out chatWidgetSlideUp;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;overflow:hidden;box-shadow:0 12px 40px #2c3e5033,0 4px 12px #00000014}.chat-widget-panel.chat-widget-expanded{border-radius:12px;width:calc(100vw - 2rem);height:calc(100vh - 2rem);max-height:none;bottom:1rem;right:1rem}@keyframes chatWidgetSlideUp{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.chat-widget-header{background:var(--widget-navy);color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:.85rem 1rem;display:flex}.chat-widget-header-left{align-items:center;gap:.5rem;display:flex}.chat-widget-header-actions{align-items:center;gap:.25rem;display:flex}.chat-widget-back,.chat-widget-expand,.chat-widget-close{color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:.3rem;transition:color .12s,background .12s;display:flex}.chat-widget-back:hover,.chat-widget-expand:hover,.chat-widget-close:hover{color:#fff;background:#ffffff1a}.chat-widget-back svg,.chat-widget-expand svg,.chat-widget-close svg{width:18px;height:18px}.chat-widget-title{letter-spacing:.01em;font-size:1rem;font-weight:700}.chat-widget-subtitle{color:#ffffff8c;margin-top:.1rem;font-size:.72rem}.chat-widget-body{flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-widget-home{flex:1;padding:1.25rem;overflow-y:auto}.chat-widget-new-btn{background:var(--widget-accent);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:.75rem;width:100%;padding:.9rem 1rem;font-size:.88rem;font-weight:600;transition:background .15s,transform .1s;display:flex}.chat-widget-new-btn:hover{background:var(--widget-accent-hover);transform:translateY(-1px)}.chat-widget-new-btn svg{flex-shrink:0;width:20px;height:20px}.chat-widget-recent{margin-top:1.25rem}.chat-widget-recent-label{text-transform:uppercase;letter-spacing:.05em;color:var(--widget-text-secondary);margin-bottom:.5rem;font-size:.72rem;font-weight:600}.chat-widget-recent-item{border:1px solid var(--widget-border);cursor:pointer;text-align:left;background:0 0;border-radius:8px;justify-content:space-between;align-items:center;width:100%;margin-bottom:.4rem;padding:.6rem .75rem;transition:background .12s,border-color .12s;display:flex}.chat-widget-recent-item:hover{background:var(--widget-grey-light);border-color:var(--widget-accent)}.chat-widget-recent-title{color:var(--widget-text);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:.82rem;font-weight:500;overflow:hidden}.chat-widget-recent-date{color:var(--widget-text-secondary);white-space:nowrap;font-size:.7rem}.chat-widget-messages{flex-direction:column;flex:1;gap:.6rem;padding:1rem 1rem .5rem;display:flex;overflow-y:auto}.chat-widget-welcome{text-align:center;color:var(--widget-text-secondary);padding:2rem 1rem}.chat-widget-welcome p{color:var(--widget-text);margin-bottom:.3rem;font-size:.95rem;font-weight:500}.chat-widget-welcome span{font-size:.78rem}.chat-widget-msg{display:flex}.chat-widget-msg-user{justify-content:flex-end}.chat-widget-msg-assistant{justify-content:flex-start}.chat-widget-msg-bubble{word-break:break-word;border-radius:14px;max-width:85%;padding:.65rem .9rem;font-size:.85rem;line-height:1.55}.chat-widget-msg-user .chat-widget-msg-bubble{background:var(--widget-accent);color:#fff;border-bottom-right-radius:4px}.chat-widget-msg-assistant .chat-widget-msg-bubble{background:var(--widget-grey-light);color:var(--widget-text);border:1px solid var(--widget-border);border-bottom-left-radius:4px}.chat-widget-markdown p{margin:0 0 .4rem}.chat-widget-markdown p:last-child{margin-bottom:0}.chat-widget-markdown strong{font-weight:600}.chat-widget-markdown em{font-style:italic}.chat-widget-markdown code{background:#0000000f;border-radius:4px;padding:.15em .4em;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.82em}.chat-widget-markdown a{color:var(--widget-accent);text-decoration:underline}.chat-widget-markdown .chat-widget-h1{color:var(--widget-navy);border-bottom:1px solid var(--widget-border);margin:.8rem 0 .4rem;padding-bottom:.25rem;font-size:1.15rem;font-weight:700}.chat-widget-markdown .chat-widget-h2{color:var(--widget-navy);margin:.7rem 0 .3rem;font-size:1rem;font-weight:700}.chat-widget-markdown .chat-widget-h3{color:var(--widget-navy);margin:.5rem 0 .25rem;font-size:.9rem;font-weight:600}.chat-widget-markdown ul,.chat-widget-markdown ol{margin:.3rem 0 .5rem;padding-left:1.3rem}.chat-widget-markdown li{margin-bottom:.2rem;line-height:1.5}.chat-widget-code-block{border:1px solid var(--widget-border);background:#1e293b;border-radius:8px;margin:.6rem 0;overflow:hidden}.chat-widget-code-header{background:#334155;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:.35rem .75rem;display:flex}.chat-widget-code-lang{color:#ffffff80;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:500}.chat-widget-copy-btn{color:#ffffffb3;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:4px;padding:.2rem .55rem;font-size:.7rem;font-weight:500;transition:background .12s,color .12s}.chat-widget-copy-btn:hover{color:#fff;background:#ffffff26}.chat-widget-code-block pre{background:#1e293b;margin:0;padding:.75rem 1rem;overflow-x:auto}.chat-widget-code-block code{color:#e2e8f0;background:0 0;border-radius:0;padding:0;font-family:SF Mono,Fira Code,Consolas,Courier New,monospace;font-size:.78rem;line-height:1.55}.chat-widget-thinking{align-items:center;gap:8px;padding:.75rem 1rem;display:flex}.chat-widget-thinking-text{color:var(--widget-text-muted);font-size:.78rem;font-style:italic;animation:2.8s ease-in-out infinite chatThinkingFade}.chat-widget-thinking-dots{gap:3px;display:flex}.chat-widget-thinking-dots span{background:var(--widget-text-secondary);border-radius:50%;width:5px;height:5px;animation:1.4s ease-in-out infinite chatTypingDot}.chat-widget-thinking-dots span:nth-child(2){animation-delay:.2s}.chat-widget-thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes chatThinkingFade{0%,to{opacity:.6}50%{opacity:1}}@keyframes chatTypingDot{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chat-widget-error{color:#dc2626;background:#fef2f2;border-top:1px solid #fecaca;padding:.5rem 1rem;font-size:.78rem}.chat-widget-attachments{border-top:1px solid var(--widget-border);flex-wrap:wrap;gap:.35rem;padding:.5rem .75rem 0;display:flex}.chat-widget-attachment-chip{background:var(--widget-grey-light);border:1px solid var(--widget-border);border-radius:6px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.72rem;display:inline-flex}.chat-widget-attachment-icon{font-size:.8rem}.chat-widget-attachment-name{color:var(--widget-text);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-weight:500;overflow:hidden}.chat-widget-attachment-size{color:var(--widget-text-secondary)}.chat-widget-attachment-chip button{color:var(--widget-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:2px;padding:0 .15rem;font-size:1rem;line-height:1}.chat-widget-attachment-chip button:hover{color:var(--widget-danger)}.chat-widget-mode-bar{border-top:1px solid var(--widget-border);background:var(--widget-surface);align-items:center;padding:.25rem .75rem;display:flex}.chat-widget-mode-select{border:1px solid var(--widget-border);background:var(--widget-bg);color:var(--widget-text-muted);cursor:pointer;border-radius:4px;padding:.15rem .4rem;font-size:.7rem}.chat-widget-mode-select:focus{border-color:var(--widget-primary);outline:none}.tools-menu-container{align-items:center;display:flex;position:relative}.tools-menu-trigger{cursor:pointer;color:var(--widget-text-muted);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.3rem;transition:background .15s,color .15s;display:flex}.tools-menu-trigger:hover{background:var(--widget-hover);color:var(--widget-primary)}.tools-menu-trigger svg{width:18px;height:18px}.tools-menu-badges{gap:.2rem;margin-left:.15rem;display:flex}.tools-badge{background:var(--widget-primary);color:#fff;border-radius:3px;padding:.05rem .25rem;font-size:.55rem;font-weight:600;line-height:1.3}.tools-badge-search{background:#2563eb}.tools-badge-ga4{background:#ea8600}.tools-menu-panel{background:var(--widget-surface);border:1px solid var(--widget-border);z-index:1000;border-radius:8px;width:280px;position:absolute;bottom:calc(100% + 8px);left:0;overflow:hidden;box-shadow:0 8px 24px #00000026}.tools-menu-header{border-bottom:1px solid var(--widget-border);color:var(--widget-text);justify-content:space-between;align-items:center;padding:.6rem .75rem;font-size:.75rem;font-weight:600;display:flex}.tools-menu-google-status{color:var(--widget-text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.6rem;font-weight:400;overflow:hidden}.tools-menu-item{cursor:pointer;align-items:center;gap:.5rem;padding:.55rem .75rem;transition:background .12s;display:flex}.tools-menu-item:hover{background:var(--widget-hover)}.tools-menu-item-icon{text-align:center;width:24px;font-size:1.1rem}.tools-menu-item-info{flex:1;min-width:0}.tools-menu-item-name{color:var(--widget-text);font-size:.72rem;font-weight:500}.tools-menu-item-desc{color:var(--widget-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.6rem;overflow:hidden}.tools-menu-toggle{background:var(--widget-border);border-radius:8px;flex-shrink:0;width:28px;height:16px;transition:background .2s;position:relative}.tools-menu-toggle:after{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .2s;position:absolute;top:2px;left:2px}.tools-menu-toggle.active{background:var(--widget-primary)}.tools-menu-toggle.active:after{transform:translate(12px)}.tools-menu-footer{border-top:1px solid var(--widget-border);padding:.5rem .75rem}.tools-menu-disconnect{color:var(--widget-danger);cursor:pointer;background:0 0;border:none;padding:.2rem 0;font-size:.6rem}.tools-menu-disconnect:hover{text-decoration:underline}.tools-menu-error{color:#dc2626;background:#fef2f2;border-bottom:1px solid #fecaca;justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.6rem;display:flex}.tools-menu-error button{color:#dc2626;cursor:pointer;background:0 0;border:none;font-size:.8rem}.tools-menu-selector{max-height:320px;overflow-y:auto}.tools-menu-back{cursor:pointer;color:var(--widget-text-muted);background:0 0;border:none;padding:0 .3rem;font-size:1rem}.tools-menu-loading,.tools-menu-empty{text-align:center;color:var(--widget-text-muted);padding:1.2rem .75rem;font-size:.65rem}.tools-menu-search{border-bottom:1px solid var(--widget-border);padding:.4rem .5rem}.tools-menu-search input{border:1px solid var(--widget-border);background:var(--widget-bg);width:100%;color:var(--widget-text);box-sizing:border-box;border-radius:4px;outline:none;padding:.35rem .5rem;font-size:.8rem}.tools-menu-search input:focus{border-color:var(--widget-accent)}.tools-menu-list{max-height:260px;overflow-y:auto}.tools-menu-list-item{cursor:pointer;border-bottom:1px solid var(--widget-border);padding:.5rem .75rem;transition:background .12s}.tools-menu-list-item:last-child{border-bottom:none}.tools-menu-list-item:hover{background:var(--widget-hover)}.tools-menu-list-item-name{color:var(--widget-text);font-size:.7rem;font-weight:500}.tools-menu-list-item-meta{color:var(--widget-text-muted);margin-top:.1rem;font-size:.58rem}.chat-widget-input{border-top:1px solid var(--widget-border);background:var(--widget-surface);align-items:center;gap:.4rem;padding:.6rem .75rem;display:flex}.chat-widget-input input[type=text]{color:var(--widget-text);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:.4rem 0;font-family:inherit;font-size:.88rem}.chat-widget-input input[type=text]::placeholder{color:var(--widget-text-secondary)}.chat-widget-attach-btn{border:1px solid var(--widget-border);color:var(--widget-text-secondary);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:border-color .12s,color .12s,background .12s;display:flex}.chat-widget-attach-btn:hover:not(:disabled){border-color:var(--widget-accent);color:var(--widget-accent);background:#0093b20d}.chat-widget-attach-btn:disabled{opacity:.4;cursor:not-allowed}.chat-widget-attach-btn svg{width:16px;height:16px}.chat-widget-send-btn{background:var(--widget-accent);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;padding:0;transition:background .15s,opacity .15s;display:flex}.chat-widget-send-btn:hover:not(:disabled){background:var(--widget-accent-hover)}.chat-widget-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-widget-send-btn svg{width:16px;height:16px}.chat-widget-actions{text-align:center;border-top:1px solid var(--widget-border);padding:.35rem .75rem .5rem}.chat-widget-actions button{color:var(--widget-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;transition:color .15s}.chat-widget-actions button:hover{color:var(--widget-danger)}.chat-widget-rating{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:1.5rem;display:flex}.chat-widget-rating h4{color:var(--widget-navy);margin-bottom:.3rem;font-size:1rem;font-weight:600}.chat-widget-rating p{color:var(--widget-text-secondary);margin-bottom:1rem;font-size:.82rem}.chat-widget-stars{gap:.3rem;margin-bottom:1rem;display:flex}.chat-widget-stars button{cursor:pointer;color:#e2e8f0;background:0 0;border:none;padding:0;font-size:1.8rem;line-height:1;transition:color .12s,transform .1s}.chat-widget-stars button.active{color:#f59e0b;transform:scale(1.1)}.chat-widget-stars button:hover{color:#f59e0b}.chat-widget-rating textarea{border:1px solid var(--widget-border);resize:vertical;border-radius:8px;width:100%;min-height:60px;padding:.6rem .75rem;font-family:inherit;font-size:.82rem}.chat-widget-rating-actions{gap:.75rem;margin-top:1rem;display:flex}.chat-widget-rating-actions .skip{border:1px solid var(--widget-border);color:var(--widget-text-secondary);cursor:pointer;background:0 0;border-radius:8px;padding:.45rem 1rem;font-size:.82rem;font-weight:500}.chat-widget-rating-actions .skip:hover{border-color:var(--widget-text-secondary)}.chat-widget-rating-actions .submit{background:var(--widget-accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.45rem 1rem;font-size:.82rem;font-weight:600;transition:background .15s}.chat-widget-rating-actions .submit:hover:not(:disabled){background:var(--widget-accent-hover)}.chat-widget-rating-actions .submit:disabled,.chat-widget-rating-actions .skip:disabled{opacity:.5;cursor:not-allowed}.chat-widget-msg-actions{gap:2px;padding:4px 0 0 .5rem;display:flex}.chat-widget-action-btn{width:28px;height:28px;color:var(--widget-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.chat-widget-action-btn:hover{background:var(--widget-hover);color:var(--widget-text)}.chat-widget-action-btn:disabled{opacity:.4;cursor:not-allowed}.chat-widget-action-btn.active-positive{color:#16a34a}.chat-widget-action-btn.active-negative{color:#dc2626}.chat-widget-sources{border-top:1px solid var(--widget-border);margin-top:.5rem;padding-top:.4rem}.chat-widget-sources details{font-size:.72rem}.chat-widget-sources summary{cursor:pointer;color:var(--widget-text-muted);-webkit-user-select:none;user-select:none;font-weight:500}.chat-widget-sources summary:hover{color:var(--widget-text)}.chat-widget-sources ul{margin:.3rem 0 0;padding:0;list-style:none}.chat-widget-sources li{color:var(--widget-text-secondary);padding:.2rem 0;font-size:.68rem}.chat-widget-source-score{color:var(--widget-text-muted);margin-left:.4rem;font-size:.6rem}.chat-widget-downloads{border-top:1px solid var(--widget-border);flex-wrap:wrap;gap:.35rem;margin-top:.5rem;padding-top:.4rem;display:flex}.chat-widget-download-btn{background:var(--widget-grey-light);border:1px solid var(--widget-border);color:var(--widget-text-secondary);cursor:pointer;border-radius:5px;align-items:center;gap:.3rem;padding:.25rem .5rem;font-size:.68rem;transition:background .12s,border-color .12s;display:inline-flex}.chat-widget-download-btn:hover{background:var(--widget-hover);border-color:var(--widget-primary);color:var(--widget-primary)}.chat-widget-artifacts{flex-direction:column;gap:.75rem;margin-top:.75rem;display:flex}.chat-widget-artifact{border:1px solid var(--widget-border);background:var(--widget-bg);border-radius:8px;overflow:hidden}.chat-widget-artifact-summary{padding:.6rem .75rem;font-size:.8rem}.chat-widget-artifact-summary strong{margin-bottom:.3rem;display:block}.chat-widget-artifact-summary p{color:var(--widget-text-muted);margin:0;font-size:.75rem}.chat-widget-artifact-fallback{color:var(--widget-text-secondary);background:var(--widget-bg);padding:.5rem .75rem;font-size:.7rem;overflow-x:auto}@media (max-width:480px){.chat-widget-panel{border-radius:12px;width:calc(100vw - 1rem);height:calc(100vh - 1rem);max-height:none;bottom:.5rem;right:.5rem}.chat-widget-panel.chat-widget-expanded{border-radius:0;width:100vw;height:100vh;bottom:0;right:0}}.chat-widget-chart{padding:.75rem}.chat-widget-chart-header{flex-direction:column;gap:.15rem;margin-bottom:.5rem;display:flex}.chat-widget-chart-title{color:var(--widget-text);font-size:.8rem;font-weight:600}.chat-widget-chart-subtitle{color:var(--widget-text-muted);font-size:.7rem}.chat-widget-chart-svg{width:100%;height:auto;display:block}.chat-widget-chart-legend{flex-wrap:wrap;gap:.5rem;margin-top:.4rem;padding:0 .25rem;display:flex}.chat-widget-chart-legend-item{color:var(--widget-text-secondary);align-items:center;gap:.25rem;font-size:.7rem;display:flex}.chat-widget-chart-legend-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px}.chat-widget-table{padding:.5rem .75rem}.chat-widget-table-header{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.chat-widget-table-title{color:var(--widget-text);font-size:.8rem;font-weight:600}.chat-widget-table-count{color:var(--widget-text-muted);background:var(--widget-bg);border-radius:8px;padding:.15rem .4rem;font-size:.65rem}.chat-widget-table-scroll{border:1px solid var(--widget-border);border-radius:6px;max-height:260px;overflow:auto}.chat-widget-table-el{border-collapse:collapse;width:100%;font-size:.72rem}.chat-widget-table-el th{background:var(--widget-bg);text-align:left;color:var(--widget-text-secondary);border-bottom:1px solid var(--widget-border);white-space:nowrap;padding:.4rem .5rem;font-weight:600;position:sticky;top:0}.chat-widget-table-el td{border-bottom:1px solid var(--widget-border);color:var(--widget-text);white-space:nowrap;padding:.35rem .5rem}.chat-widget-table-el tr:last-child td{border-bottom:none}.chat-widget-table-el tr:hover td{background:var(--widget-bg)}.chat-widget-table-overflow{text-align:center;color:var(--widget-text-muted);margin-top:.25rem;padding:.4rem;font-size:.65rem}.chat-widget-table-footer{color:var(--widget-text-muted);margin-top:.3rem;padding:0 .25rem;font-size:.7rem}.chat-widget-artifact-actions{border-top:1px solid var(--widget-border);gap:.4rem;padding:.4rem .5rem .25rem;display:flex}.chat-widget-artifact-action-btn{border:1px solid var(--widget-border);background:var(--widget-bg);color:var(--widget-text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.68rem;transition:all .15s;display:flex}.chat-widget-artifact-action-btn:hover{background:var(--widget-accent,#4f46e5);color:#fff;border-color:var(--widget-accent,#4f46e5)}.chat-widget-artifact-action-btn svg{flex-shrink:0}
