.ac-widget{position:fixed;bottom:28px;right:28px;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:12px;pointer-events:none}.ac-panel{width:380px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;box-shadow:0 24px 64px #00000073;display:flex;flex-direction:column;height:520px;opacity:0;transform:translateY(16px) scale(.97);pointer-events:none;transition:opacity .22s ease,transform .22s ease;transform-origin:bottom right}.ac-widget--open .ac-panel{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.ac-fab{pointer-events:auto}.ac-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.ac-panel-header-left{display:flex;align-items:center;gap:10px}.ac-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.ac-avatar svg{width:16px;height:16px}.ac-panel-title{font-size:13.5px;font-weight:600;color:var(--text);letter-spacing:-.01em}.ac-panel-sub{font-size:11px;color:var(--text-tertiary);margin-top:1px}.ac-panel-actions{display:flex;align-items:center;gap:6px}.ac-icon-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease,border-color .15s ease}.ac-icon-btn:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-hover)}.ac-icon-btn svg{width:14px;height:14px}.ac-body{flex:1;overflow-y:auto;padding:18px;scroll-behavior:smooth;background:var(--bg-elevated)}.ac-body::-webkit-scrollbar{width:5px}.ac-body::-webkit-scrollbar-track{background:transparent}.ac-body::-webkit-scrollbar-thumb{background:rgba(var(--overlay-rgb),.08);border-radius:5px}.ac-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 12px;min-height:260px}.ac-empty-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#0071e326,#30d15826);display:flex;align-items:center;justify-content:center;color:var(--accent);margin-bottom:14px}.ac-empty-icon svg{width:24px;height:24px}.ac-empty-text{font-size:14px;color:var(--text-secondary);line-height:1.6;max-width:300px;margin-bottom:20px}.ac-suggestions{display:flex;flex-wrap:wrap;gap:7px;justify-content:center}.ac-chip{padding:7px 13px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:12.5px;font-family:inherit;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.ac-chip:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-hover);transform:translateY(-1px)}.ac-msg{display:flex;gap:12px;padding:12px 0;animation:acMsgIn .22s ease}@keyframes acMsgIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.ac-msg+.ac-msg{border-top:1px solid rgba(var(--overlay-rgb),.04)}.ac-msg-avatar{width:28px;height:28px;border-radius:7px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff}.ac-msg-avatar svg{width:14px;height:14px}.ac-msg-avatar--user{background:var(--surface-active);color:var(--text)}.ac-msg-avatar--assistant{background:linear-gradient(135deg,#0071e3,#30d158)}.ac-msg-content{flex:1;min-width:0}.ac-msg-name{font-size:12.5px;font-weight:600;color:var(--text);margin-bottom:3px;letter-spacing:-.01em}.ac-msg-body{font-size:14px;line-height:1.65;color:var(--text);word-break:break-word}.ac-msg-body a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.ac-msg-body strong{font-weight:600}.ac-typing{display:flex;gap:5px;padding:6px 0}.ac-typing span{width:6px;height:6px;border-radius:50%;background:var(--text-tertiary);animation:acDot 1.2s ease infinite}.ac-typing span:nth-child(2){animation-delay:.2s}.ac-typing span:nth-child(3){animation-delay:.4s}@keyframes acDot{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}.ac-input-form{padding:12px 14px 16px;background:var(--bg-elevated);border-top:1px solid var(--border);flex-shrink:0}.ac-input-wrap{display:flex;align-items:flex-end;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:6px 6px 6px 12px;transition:border-color .15s ease,background .15s ease}.ac-input-wrap:focus-within{border-color:var(--border-hover);background:var(--surface-hover)}.ac-input{flex:1;border:none;background:transparent;color:var(--text);font-family:inherit;font-size:14px;line-height:1.5;outline:none;resize:none;padding:7px 0;max-height:120px}.ac-input::placeholder{color:var(--text-tertiary)}.ac-send{width:32px;height:32px;flex-shrink:0;border:none;border-radius:9px;background:var(--text);color:var(--bg);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,opacity .15s ease,transform .1s ease}.ac-send:hover:not(:disabled){opacity:.8}.ac-send:active:not(:disabled){transform:scale(.92)}.ac-send:disabled{background:var(--surface-active);color:var(--text-tertiary);cursor:not-allowed}.ac-send svg{width:14px;height:14px}.ac-fab{width:56px;height:56px;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #0071e359;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;flex-shrink:0}.ac-fab:hover{background:var(--accent-hover);transform:translateY(-3px) scale(1.05);box-shadow:0 12px 32px #0071e373}.ac-fab:active{transform:scale(.93);box-shadow:none}.ac-fab-icon{display:flex;align-items:center;justify-content:center;transition:opacity .15s ease,transform .15s ease}.ac-fab-icon svg{width:24px;height:24px}.ac-fab-icon--close,.ac-widget--open .ac-fab-icon--open{display:none}.ac-widget--open .ac-fab-icon--close{display:flex}.ac-fab-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width: 480px){.ac-widget{bottom:16px;right:16px}.ac-panel{width:calc(100vw - 32px);height:480px}}[dir=rtl] .ac-widget{right:auto;left:28px}[dir=rtl] .ac-panel{transform-origin:bottom left}[dir=rtl] .ac-msg{text-align:right}[dir=rtl] .ac-input-wrap{padding:6px 12px 6px 6px}@media (max-width: 480px){[dir=rtl] .ac-widget{left:16px;right:auto}}
