.sb-root{position:fixed;right:20px;bottom:20px;z-index:2147483600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:#1c1f26;--sb-primary: #425ebd;--sb-primary-dark: #2f4699;--sb-primary-light: #5b78dc;--sb-bg: #f7f8fb;--sb-text: #1c1f26;--sb-muted: #5b6478;--sb-border: rgba(20, 24, 40, .08)}.sb-fab{width:60px;height:60px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--sb-primary) 0%,var(--sb-primary-light) 100%);color:#fff;cursor:pointer;box-shadow:0 14px 32px #425ebd6b,0 4px 10px #425ebd33,inset 0 1px #ffffff38;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s ease;display:grid;place-items:center;position:relative;isolation:isolate}.sb-fab:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:linear-gradient(135deg,var(--sb-primary) 0%,var(--sb-primary-light) 100%);z-index:-1;animation:sb-pulse 2.4s ease-out infinite}.sb-fab:hover{transform:scale(1.08) rotate(-4deg);box-shadow:0 18px 40px #425ebd80,0 6px 14px #425ebd47}.sb-fab:active{transform:scale(.96)}.sb-fab-open{background:linear-gradient(135deg,#2a2e3a,#1c1f26);box-shadow:0 8px 22px #00000052}.sb-fab-open:hover{transform:scale(1.04) rotate(90deg)}.sb-fab-open:before{display:none}.sb-fab svg{width:26px;height:26px}@keyframes sb-pulse{0%{transform:scale(1);opacity:.55}to{transform:scale(1.5);opacity:0}}.sb-panel{position:absolute;right:0;bottom:76px;width:400px;max-width:calc(100vw - 32px);height:600px;max-height:calc(100vh - 120px);background:#fff;border-radius:20px;box-shadow:0 30px 80px -20px #14182859,0 18px 36px -12px #1418282e,0 0 0 1px #1418280a;display:flex;flex-direction:column;overflow:hidden;animation:sb-pop-in .32s cubic-bezier(.16,1,.3,1);transform-origin:bottom right}@keyframes sb-pop-in{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.sb-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:radial-gradient(ellipse at 100% 0%,rgba(255,255,255,.18),transparent 55%),linear-gradient(135deg,var(--sb-primary-dark) 0%,var(--sb-primary) 55%,var(--sb-primary-light) 100%);color:#fff;position:relative;overflow:hidden}.sb-header:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 0% 100%,rgba(255,255,255,.1),transparent 50%);pointer-events:none}.sb-title{font-weight:600;font-size:15px;display:flex;align-items:center;gap:10px;letter-spacing:.1px;position:relative}.sb-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 3px #4ade804d;animation:sb-status 2s ease-in-out infinite}@keyframes sb-status{0%,to{box-shadow:0 0 0 3px #4ade804d}50%{box-shadow:0 0 0 6px #4ade801f}}.sb-icon-btn{background:#ffffff1a;color:#fff;border:none;font-size:20px;width:30px;height:30px;border-radius:50%;cursor:pointer;line-height:1;display:grid;place-items:center;transition:background .15s ease,transform .18s ease;position:relative}.sb-icon-btn:hover{background:#ffffff38;transform:rotate(90deg)}.sb-body{flex:1;padding:18px;overflow-y:auto;background:radial-gradient(circle at 50% 0%,rgba(91,120,220,.07) 0%,transparent 55%),var(--sb-bg);display:flex;flex-direction:column;gap:12px;scrollbar-width:thin;scrollbar-color:rgba(20,24,40,.18) transparent}.sb-body::-webkit-scrollbar{width:6px}.sb-body::-webkit-scrollbar-thumb{background:#1418282e;border-radius:3px}.sb-body::-webkit-scrollbar-track{background:transparent}.sb-msg{display:flex;flex-direction:column;max-width:88%;animation:sb-msg-in .3s cubic-bezier(.16,1,.3,1)}@keyframes sb-msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sb-msg-user{align-self:flex-end;align-items:flex-end}.sb-msg-assistant{align-self:flex-start;align-items:flex-start}.sb-bubble{padding:12px 15px;border-radius:16px;font-size:14px;line-height:1.5;word-wrap:break-word;overflow-wrap:anywhere}.sb-bubble>:first-child{margin-top:0}.sb-bubble>:last-child{margin-bottom:0}.sb-bubble p{margin:0 0 8px}.sb-bubble ul,.sb-bubble ol{margin:4px 0 8px;padding-left:20px}.sb-bubble li{margin:3px 0}.sb-bubble li>p{margin:0}.sb-bubble h1,.sb-bubble h2,.sb-bubble h3{margin:6px 0 4px;font-size:14px;font-weight:600}.sb-bubble strong{font-weight:600}.sb-bubble code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;background:#14182814;padding:1px 5px;border-radius:4px}.sb-bubble pre{margin:6px 0;padding:10px 12px;background:#141828e0;color:#f3f4f6;border-radius:10px;overflow-x:auto;font-size:12.5px;line-height:1.45}.sb-bubble pre code{background:transparent;padding:0;color:inherit}.sb-bubble a{color:inherit;text-decoration:underline;text-underline-offset:2px}.sb-bubble blockquote{margin:4px 0;padding-left:10px;border-left:3px solid rgba(20,24,40,.15);color:inherit}.sb-msg-user .sb-bubble code{background:#ffffff2e}.sb-msg-user .sb-bubble{background:linear-gradient(135deg,var(--sb-primary) 0%,var(--sb-primary-light) 100%);border-bottom-right-radius:4px;box-shadow:0 6px 16px #425ebd47}.sb-msg-user .sb-bubble,.sb-msg-user .sb-bubble p,.sb-msg-user .sb-bubble li,.sb-msg-user .sb-bubble strong,.sb-msg-user .sb-bubble em,.sb-msg-user .sb-bubble a,.sb-msg-user .sb-bubble h1,.sb-msg-user .sb-bubble h2,.sb-msg-user .sb-bubble h3,.sb-msg-user .sb-bubble blockquote{color:#fff}.sb-msg-assistant .sb-bubble{background:#fff;color:var(--sb-text);border:1px solid var(--sb-border);border-bottom-left-radius:4px;box-shadow:0 4px 14px #1418280d}.sb-sources{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.sb-source{font-size:11px;color:var(--sb-muted);background:#ecefff;padding:2px 8px;border-radius:999px}.sb-typing{display:inline-flex;gap:5px;padding:4px 2px}.sb-typing span{width:7px;height:7px;border-radius:50%;background:var(--sb-primary);opacity:.55;animation:sb-blink 1.2s infinite ease-in-out}.sb-typing span:nth-child(2){animation-delay:.2s}.sb-typing span:nth-child(3){animation-delay:.4s}@keyframes sb-blink{0%,80%,to{transform:scale(.85);opacity:.35}40%{transform:scale(1);opacity:1}}.sb-starters{display:flex;flex-direction:column;gap:8px;margin-top:10px}.sb-starter{text-align:left;background:#fff;border:1px solid rgba(66,94,189,.18);color:var(--sb-primary);padding:11px 14px;border-radius:12px;font:inherit;font-size:13px;font-weight:500;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;box-shadow:0 1px 2px #14182808;animation:sb-msg-in .35s cubic-bezier(.16,1,.3,1) backwards}.sb-starter:nth-child(1){animation-delay:.05s}.sb-starter:nth-child(2){animation-delay:.1s}.sb-starter:nth-child(3){animation-delay:.15s}.sb-starter:nth-child(4){animation-delay:.2s}.sb-starter:after{content:"→";opacity:0;transform:translate(-4px);transition:opacity .18s ease,transform .18s ease;color:var(--sb-primary);font-weight:600;flex-shrink:0}.sb-starter:hover{background:linear-gradient(135deg,#ecefff,#f5f7ff);border-color:#425ebd66;transform:translateY(-1px);box-shadow:0 8px 18px #425ebd26}.sb-starter:hover:after{opacity:1;transform:translate(0)}.sb-starter:active{transform:translateY(0)}.sb-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--sb-border);background:#fff;align-items:flex-end}.sb-input textarea{flex:1;resize:none;border:1px solid rgba(20,24,40,.12);border-radius:12px;padding:10px 14px;font:inherit;font-size:14px;outline:none;max-height:120px;background:#fafbfd;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.sb-input textarea::placeholder{color:#94a3b8}.sb-input textarea:focus{border-color:var(--sb-primary);box-shadow:0 0 0 3px #425ebd26;background:#fff}.sb-send{background:linear-gradient(135deg,var(--sb-primary) 0%,var(--sb-primary-light) 100%);color:#fff;border:none;border-radius:12px;padding:0 16px;height:42px;font-weight:600;font-size:13px;cursor:pointer;transition:transform .12s ease,box-shadow .18s ease,opacity .15s ease;box-shadow:0 4px 12px #425ebd47}.sb-send:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #425ebd61}.sb-send:active:not(:disabled){transform:translateY(0)}.sb-send:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}@media (prefers-reduced-motion: reduce){.sb-fab,.sb-fab:before,.sb-panel,.sb-msg,.sb-starter,.sb-typing span,.sb-dot{animation:none!important;transition:none!important}}
