:root{--bloxi-size:100px;--bloxi-primary:var(--primary-accent);--bloxi-primary-dark:var(--primary-accent-dark);--bloxi-radius:var(--radius-lg)}.bloxi-bubble{position:fixed;z-index:99999;right:24px;bottom:24px;pointer-events:none;transition:opacity .3s,visibility .3s,transform .3s}.bloxi-bubble.hidden-by-modal{opacity:0;visibility:hidden;transform:translateY(20px) scale(.9);pointer-events:none!important}.bloxi-bubble.is-dragging{transition:none!important}.bloxi-container{background:0 0!important}.bloxi-avatar-float{width:var(--bloxi-size);height:var(--bloxi-size);display:flex;align-items:center;justify-content:center;cursor:grab;position:relative;padding:0;pointer-events:auto;background:0 0!important;border:none!important;box-shadow:none!important;border-radius:0!important;touch-action:none;transition:transform .2s}.bloxi-avatar-float:active{cursor:grabbing;transform:scale(.95)}.bloxi-avatar-float::before{display:none}.bloxi-avatar-float::after{content:"";position:absolute;top:4px;right:4px;width:14px;height:14px;background:linear-gradient(135deg,#f43f5e,var(--color-danger));border-radius:50%;border:2.5px solid #fff;animation:1.5s ease-out infinite bloxi-ping;z-index:2;box-shadow:0 2px 6px rgba(239,68,68,.4)}.bloxi-bubble.visible .bloxi-avatar-float::after{display:none}.bloxi-avatar{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;cursor:grab;animation:3s ease-in-out infinite bloxi-float}.bloxi-avatar:active{cursor:grabbing}.bloxi-gif{width:var(--bloxi-size);height:var(--bloxi-size);object-fit:contain;filter:drop-shadow(0 4px 12px rgba(99, 102, 241, .25)) drop-shadow(0 2px 4px rgba(0, 0, 0, .1));pointer-events:auto;user-select:none;cursor:grab;transition:transform .25s,filter .3s}.bloxi-avatar-float:hover .bloxi-gif{transform:scale(1.06);filter:drop-shadow(0 6px 16px rgba(99, 102, 241, .35)) drop-shadow(0 2px 4px rgba(0, 0, 0, .1))}.bloxi-mini-bubble{position:absolute;top:-28px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#3b82f6 0,#60a5fa 100%);color:#fff;padding:5px 14px;border-radius:20px;font-size:.7rem;font-weight:700;letter-spacing:.02em;white-space:nowrap;box-shadow:0 4px 14px rgba(99,102,241,.35),0 2px 4px rgba(0,0,0,.08);z-index:10;animation:3s ease-in-out infinite bloxi-bubble-float;backdrop-filter:blur(4px)}.bloxi-mini-bubble::after{content:"";position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid #60a5fa}.bloxi-bubble.chat-active .bloxi-mini-bubble,.bloxi-bubble.visible .bloxi-mini-bubble{display:none}.bloxi-speech{display:none;width:300px;min-width:240px;background:rgba(255,255,255,.98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--bloxi-radius);box-shadow:0 8px 32px rgba(99,102,241,.12),0 2px 8px rgba(0,0,0,.06);border:1px solid rgba(99,102,241,.1);position:absolute;bottom:calc(var(--bloxi-size) + 10px);right:0;overflow:visible;pointer-events:auto}.bloxi-bubble.visible:not(.chat-active) .bloxi-speech{display:block;animation:.3s ease-out bloxi-card-in}.bloxi-speech::after{content:"";position:absolute;bottom:-8px;right:32px;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid rgba(255,255,255,.98)}.bloxi-speech-header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.06)}.bloxi-header-info{flex:1}.bloxi-speech-name{font-weight:700;font-size:.85rem;color:var(--bloxi-primary);display:flex;align-items:center;gap:4px}.bloxi-status{font-size:.7rem;color:#6b7280;margin-top:1px}.bloxi-status::before{content:"";display:inline-block;width:5px;height:5px;background:#60a5fa;border-radius:50%;margin-right:4px;animation:1.5s ease-in-out infinite bloxi-online}.bloxi-action-btn,.bloxi-close-btn{width:28px;height:28px;border-radius:6px;background:0 0;border:none;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px}.bloxi-action-btn:hover,.bloxi-close-btn:hover{background:rgba(0,0,0,.08);color:#374151}.bloxi-action-btn{color:var(--bloxi-primary)}.bloxi-action-btn svg{transition:transform .2s}.bloxi-action-btn:hover svg{transform:scale(1.1)}.bloxi-speech-body{padding:12px}.bloxi-speech-hint{font-size:.65rem;color:var(--text-muted,#9ca3af);text-align:center;opacity:.8;margin-top:8px;font-style:italic}.bloxi-speech-message{font-size:.85rem;line-height:1.5;color:#374151;margin:0 0 12px}.bloxi-speech-message strong{color:var(--bloxi-primary);font-weight:600}.bloxi-actions{display:flex;flex-direction:column;gap:6px}.bloxi-btn{width:100%;padding:10px 16px;border-radius:10px;font-size:.85rem;font-weight:600;cursor:pointer;border:none;display:flex;align-items:center;justify-content:center;gap:6px}.bloxi-btn-primary,.bloxi-btn-yes{background:linear-gradient(135deg,#3b82f6 0,#60a5fa 100%);color:#fff;box-shadow:0 2px 8px rgba(99,102,241,.3);transition:transform .2s,box-shadow .2s}.bloxi-btn-primary:hover,.bloxi-btn-yes:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(99,102,241,.4)}.bloxi-btn-no{background:#f3f4f6;color:#6b7280}.bloxi-btn-no:hover{background:#e5e7eb;color:#374151}.bloxi-ai-chat-panel{display:none;position:absolute;bottom:calc(var(--bloxi-size) + 10px);right:0;width:380px;height:500px;background:rgba(255,255,255,.98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--bloxi-radius);box-shadow:0 12px 40px rgba(99,102,241,.15),0 4px 12px rgba(0,0,0,.06);flex-direction:column;overflow:hidden;transform-origin:bottom right;z-index:100;border:1px solid rgba(99,102,241,.12);pointer-events:auto;transition:width .3s,height .3s,bottom .3s,border-radius .3s}.bloxi-ai-chat-panel.bloxi-expanded{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);bottom:auto;right:auto;width:min(900px,94vw);height:min(80vh,92vh);border-radius:16px;box-shadow:0 20px 60px rgba(99,102,241,.2),0 8px 24px rgba(0,0,0,.1);z-index:100001}.bloxi-bubble.chat-active .bloxi-ai-chat-panel.bloxi-expanded::before{content:"";position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:-1}.bloxi-bubble.chat-active .bloxi-ai-chat-panel{display:flex;animation:.3s ease-out bloxi-card-in}.bloxi-bubble.chat-active .bloxi-speech{display:none!important}.bloxi-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,#3b82f6 0,#60a5fa 100%);color:#fff;flex-shrink:0}.bloxi-chat-title{font-weight:700;font-size:.95rem;display:flex;align-items:center;gap:8px}.bloxi-chat-header-actions{display:flex;align-items:center;gap:4px}.bloxi-header-icon-btn{width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.12);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.bloxi-header-icon-btn:hover{background:rgba(255,255,255,.25)}.bloxi-chat-header .bloxi-close-btn{width:30px;height:30px;border-radius:8px;color:#fff;background:rgba(255,255,255,.12);border:none;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.bloxi-chat-header .bloxi-close-btn:hover{background:rgba(239,68,68,.5)}.bloxi-convos-panel{display:none;position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,.98);backdrop-filter:blur(12px);z-index:10;flex-direction:column;animation:.2s ease-out bloxi-slide-in}.bloxi-convos-panel.active{display:flex}.bloxi-convos-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid rgba(99,102,241,.1);font-weight:700;font-size:.9rem;color:var(--bloxi-primary);gap:8px}.bloxi-convos-header span{flex:1;text-align:center}.bloxi-convos-header .bloxi-header-icon-btn{background:rgba(99,102,241,.08);color:var(--bloxi-primary)}.bloxi-convos-header .bloxi-header-icon-btn:hover{background:rgba(99,102,241,.18);color:#4f46e5}.bloxi-convos-list{flex:1;overflow-y:auto;padding:8px}.bloxi-convos-empty{text-align:center;color:#9ca3af;font-size:.8rem;padding:30px 16px}.bloxi-convo-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:10px;cursor:pointer;transition:background .15s;gap:8px}.bloxi-convo-item:hover{background:rgba(99,102,241,.06)}.bloxi-convo-item.active{background:rgba(99,102,241,.1);border-left:3px solid var(--bloxi-primary)}.bloxi-convo-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.bloxi-convo-title{font-size:.82rem;font-weight:600;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bloxi-convo-date{font-size:.7rem;color:#9ca3af}.bloxi-convo-delete{background:0 0;border:none;color:#d1d5db;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color .2s,background .2s;flex-shrink:0}.bloxi-convo-delete:hover{color:var(--color-danger);background:var(--color-danger-light)}.bloxi-chat-history{flex:1;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;background:#fafafa}.bloxi-chat-history::-webkit-scrollbar{width:6px}.bloxi-chat-history::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:6px}.bloxi-message{font-size:.85rem;line-height:1.55;margin:0;padding:10px 14px;border-radius:16px;max-width:85%;word-wrap:break-word;animation:.25s ease-out bloxi-msg-in}.bloxi-message:empty{display:none}.bloxi-ai-msg{background:#f0f0ff;border-bottom-left-radius:4px;align-self:flex-start;border:1px solid rgba(99,102,241,.08)}.bloxi-user-msg{background:linear-gradient(135deg,#3b82f6,#60a5fa);color:#fff;border-bottom-right-radius:4px;align-self:flex-end;box-shadow:0 2px 8px rgba(99,102,241,.25)}.bloxi-message strong{color:var(--bloxi-primary-dark);font-weight:600}.bloxi-user-msg strong{color:#e0e7ff}.bloxi-typing span{display:inline-block;animation:1.4s ease-in-out infinite both bloxi-typing-dot;font-size:1.2em;line-height:.5}.bloxi-typing span:first-child{animation-delay:-.32s}.bloxi-typing span:nth-child(2){animation-delay:-.16s}.bloxi-typing span:nth-child(3){animation-delay:0s}.bloxi-speech-footer{display:flex;align-items:center;gap:8px;padding:10px 12px;border-top:1px solid rgba(0,0,0,.06);background:#fff;border-radius:0 0 var(--bloxi-radius) var(--bloxi-radius);flex-shrink:0}#bloxi-chat-input{flex:1;border:1.5px solid #e5e7eb;border-radius:24px;padding:9px 16px;font-size:.85rem;outline:0;background:#f9fafb;transition:border-color .2s,box-shadow .2s}#bloxi-chat-input:focus{border-color:var(--bloxi-primary);box-shadow:0 0 0 3px rgba(99,102,241,.1)}#bloxi-chat-send{background:linear-gradient(135deg,#3b82f6,#60a5fa);color:#fff;border:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px rgba(99,102,241,.3)}#bloxi-chat-send:hover{transform:scale(1.08);box-shadow:0 4px 14px rgba(99,102,241,.4)}#bloxi-chat-send:active{transform:scale(.92)}.bloxi-ai-msg p{margin:0 0 8px}.bloxi-ai-msg p:last-child{margin-bottom:0}.bloxi-ai-msg strong{color:var(--bloxi-primary);font-weight:700}.bloxi-ai-msg em{font-style:italic;opacity:.9}.bloxi-md-h1{display:block;font-size:1.05rem;margin:10px 0 6px;color:var(--bloxi-primary-dark)}.bloxi-md-h2{display:block;font-size:.95rem;margin:8px 0 4px;color:var(--bloxi-primary-dark)}.bloxi-md-h3{display:block;font-size:.88rem;margin:6px 0 4px;color:var(--bloxi-primary)}.bloxi-code-block{background:#1e1e2e;border-radius:10px;margin:8px 0;overflow:hidden;position:relative}.bloxi-code-lang{display:block;background:rgba(99,102,241,.15);color:#60a5fa;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:4px 12px}.bloxi-code-block pre{margin:0;padding:10px 12px;overflow-x:auto}.bloxi-code-block code{font-family:var(--font-code);font-size:.75rem;line-height:1.5;color:#e2e8f0;white-space:pre}.bloxi-inline-code{background:rgba(99,102,241,.1);color:var(--bloxi-primary);padding:1px 6px;border-radius:4px;font-family:var(--font-code);font-size:.8em;font-weight:500}.bloxi-md-list{margin:6px 0;padding-left:18px;list-style:none}.bloxi-md-list li{position:relative;padding-left:4px;margin-bottom:3px}.bloxi-md-list li::before{content:"•";position:absolute;left:-12px;color:var(--bloxi-primary);font-weight:700}.bloxi-md-hr{border:none;height:1px;background:linear-gradient(90deg,transparent,rgba(99,102,241,.3),transparent);margin:10px 0}[data-theme=dark] .bloxi-ai-msg strong{color:#a5b4fc}[data-theme=dark] .bloxi-inline-code{background:rgba(129,140,248,.15);color:#a5b4fc}[data-theme=dark] .bloxi-code-block{background:#11111b}[data-theme=dark] .bloxi-md-h1,[data-theme=dark] .bloxi-md-h2{color:#a5b4fc}[data-theme=dark] .bloxi-md-h3{color:#60a5fa}@keyframes bloxi-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes bloxi-bubble-float{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-2px)}}@keyframes bloxi-card-in{0%{opacity:0;transform:translateY(10px) scale(.95)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes bloxi-ping{0%{transform:scale(1);opacity:1}100%,75%{transform:scale(1.8);opacity:0}}@keyframes bloxi-online{0%,100%{opacity:1}50%{opacity:.5}}@keyframes bloxi-typing-dot{0%,100%,80%{transform:scale(0);opacity:.3}40%{transform:scale(1);opacity:1}}@keyframes bloxi-ring-pulse{0%,100%{transform:scale(1);opacity:.4}50%{transform:scale(1.06);opacity:.15}}@keyframes bloxi-msg-in{0%{opacity:0;transform:translateY(6px)}100%{opacity:1;transform:translateY(0)}}@keyframes bloxi-slide-in{0%{opacity:0;transform:translateX(-12px)}100%{opacity:1;transform:translateX(0)}}[data-theme=dark] .bloxi-avatar-float{background:0 0!important;border:none!important;box-shadow:none!important}[data-theme=dark] .bloxi-mini-bubble{background:linear-gradient(135deg,#2563eb 0,#3b82f6 100%);color:#e0e7ff}[data-theme=dark] .bloxi-mini-bubble::after{border-top-color:#3b82f6}[data-theme=dark] .bloxi-speech{background:rgba(30,30,46,.97);border-color:rgba(129,140,248,.15);box-shadow:0 8px 32px rgba(0,0,0,.4),0 0 20px rgba(99,102,241,.1)}[data-theme=dark] .bloxi-speech::after{border-top-color:rgba(30,30,46,.97)}[data-theme=dark] .bloxi-speech-header{border-bottom-color:rgba(255,255,255,.08)}[data-theme=dark] .bloxi-speech-name{color:#60a5fa}[data-theme=dark] .bloxi-status{color:#9ca3af}[data-theme=dark] .bloxi-action-btn,[data-theme=dark] .bloxi-close-btn{color:#6b7280}[data-theme=dark] .bloxi-action-btn:hover,[data-theme=dark] .bloxi-close-btn:hover{background:rgba(255,255,255,.1);color:#e5e7eb}[data-theme=dark] .bloxi-action-btn{color:#60a5fa}[data-theme=dark] .bloxi-speech-message{color:#e5e7eb}[data-theme=dark] .bloxi-ai-chat-panel{background:rgba(30,30,46,.98);border-color:rgba(129,140,248,.15);box-shadow:0 12px 40px rgba(0,0,0,.4),0 0 20px rgba(99,102,241,.1)}[data-theme=dark] .bloxi-chat-history{background:#181825}[data-theme=dark] .bloxi-ai-msg{background:#27273a;color:#e5e7eb;border-color:rgba(129,140,248,.1)}[data-theme=dark] .bloxi-speech-footer{background:#1e1e2e;border-top-color:rgba(255,255,255,.08)}[data-theme=dark] #bloxi-chat-input{background:#27273a;border-color:#3f3f5a;color:#e5e7eb}[data-theme=dark] #bloxi-chat-input:focus{border-color:#60a5fa}[data-theme=dark] .bloxi-btn-no{background:rgba(255,255,255,.08);color:#9ca3af}[data-theme=dark] .bloxi-btn-no:hover{background:rgba(255,255,255,.12);color:#e5e7eb}[data-theme=dark] .bloxi-avatar-float::after{border-color:#1e1e2e}[data-theme=dark] .bloxi-gif{filter:drop-shadow(0 4px 16px rgba(129, 140, 248, .35)) drop-shadow(0 2px 4px rgba(0, 0, 0, .2))}[data-theme=dark] .bloxi-ai-chat-panel.bloxi-expanded{box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 30px rgba(99,102,241,.15)}[data-theme=dark] .bloxi-bubble.chat-active .bloxi-ai-chat-panel.bloxi-expanded::before{background:rgba(0,0,0,.55)}[data-theme=dark] .bloxi-header-icon-btn{background:rgba(255,255,255,.08)}[data-theme=dark] .bloxi-header-icon-btn:hover{background:rgba(255,255,255,.18)}[data-theme=dark] .bloxi-convos-panel{background:rgba(24,24,37,.98)}[data-theme=dark] .bloxi-convos-header{border-bottom-color:rgba(129,140,248,.12);color:#60a5fa}[data-theme=dark] .bloxi-convos-header .bloxi-header-icon-btn{background:rgba(129,140,248,.1);color:#a5b4fc}[data-theme=dark] .bloxi-convos-header .bloxi-header-icon-btn:hover{background:rgba(129,140,248,.2);color:#c7d2fe}[data-theme=dark] .bloxi-convo-item:hover{background:rgba(129,140,248,.08)}[data-theme=dark] .bloxi-convo-item.active{background:rgba(129,140,248,.12)}[data-theme=dark] .bloxi-convo-title{color:#e5e7eb}[data-theme=dark] .bloxi-convo-date{color:#6b7280}[data-theme=dark] .bloxi-convo-delete{color:#4b5563}[data-theme=dark] .bloxi-convo-delete:hover{color:#f87171;background:rgba(239,68,68,.12)}[data-theme=dark] .bloxi-convos-empty{color:#6b7280}@media (max-width:480px){:root{--bloxi-size:56px}.bloxi-bubble{bottom:16px;right:16px}.bloxi-speech{width:260px;min-width:200px;right:-8px}.bloxi-ai-chat-panel{width:280px;height:360px;right:-8px}.bloxi-ai-chat-panel.bloxi-expanded{width:100vw;height:100vh;border-radius:0;top:0;left:0;transform:none}.bloxi-header-icon-btn{width:26px;height:26px}.bloxi-convo-title{font-size:.78rem}}#bloxi-summon-btn{position:fixed;bottom:0;right:0;width:32px;height:32px;background:#fff;border-radius:50% 0 0;box-shadow:-2px -2px 8px rgba(0,0,0,.1);display:none;align-items:center;justify-content:center;cursor:pointer;z-index:9999;transition:transform .2s,background .2s,opacity .2s;border-top:1px solid var(--border-color,#e5e7eb);border-left:1px solid var(--border-color,#e5e7eb);opacity:.3;padding-top:2px;padding-left:2px}#bloxi-summon-btn:hover{opacity:1;background:var(--surface-hover,#f3f4f6)}#bloxi-summon-btn img{width:20px;height:20px;border-radius:50%;object-fit:contain;opacity:.8}