.vb-trigger{position:fixed;bottom:28px;right:28px;width:60px;height:60px;border-radius:50%;border:none;cursor:pointer;z-index:9998;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d94e3a,#f4a26b);box-shadow:0 4px 24px rgba(217,78,58,.35);transition:all .4s cubic-bezier(.23,1,.32,1);outline:none}.vb-trigger:hover{transform:scale(1.08) translateY(-2px);box-shadow:0 8px 36px rgba(217,78,58,.5)}.vb-trigger-active{background:linear-gradient(135deg,#1a1a1a,#3a3a3a);box-shadow:0 4px 24px rgba(0,0,0,.4)}.vb-trigger-active:hover{box-shadow:0 8px 36px rgba(0,0,0,.5)}.vb-icon{display:flex;align-items:center;justify-content:center;color:#faf8f5;position:relative;z-index:2}.vb-ring{position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;border:1.5px solid rgba(217,78,58,.4);transform:translate(-50%,-50%) scale(1);animation:vb-ring-pulse 2.5s ease-out infinite}.vb-ring-1{animation-delay:0s;border-color:rgba(217,78,58,.5)}.vb-ring-2{animation-delay:.5s;border-color:hsla(24,86%,69%,.4)}.vb-ring-3{animation-delay:1s;border-color:rgba(217,78,58,.3)}@keyframes vb-ring-pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.7}to{transform:translate(-50%,-50%) scale(2.2);opacity:0}}.vb-wave{transform-origin:center}.vb-wave-1{animation:vb-wave 1s ease-in-out 0s infinite alternate}.vb-wave-2{animation:vb-wave 1s ease-in-out .15s infinite alternate}.vb-wave-3{animation:vb-wave 1s ease-in-out .3s infinite alternate}.vb-wave-4{animation:vb-wave 1s ease-in-out .15s infinite alternate}.vb-wave-5{animation:vb-wave 1s ease-in-out 0s infinite alternate}@keyframes vb-wave{0%{opacity:.3;stroke-width:1.5}to{opacity:1;stroke-width:2.5}}.vb-panel{position:fixed;bottom:100px;right:28px;width:320px;max-height:200px;background:#1a1a1a;border:1px solid hsla(36,33%,97%,.08);border-radius:16px;z-index:9998;overflow:hidden;box-shadow:0 12px 48px rgba(0,0,0,.4);animation:vb-panel-in .3s cubic-bezier(.23,1,.32,1) forwards}@keyframes vb-panel-in{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.vb-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid hsla(36,33%,97%,.06)}.vb-panel-title{display:flex;align-items:center;gap:8px;font-family:var(--font-body),system-ui,sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:hsla(36,33%,97%,.7)}.vb-status-dot{width:7px;height:7px;border-radius:50%;background:#8a8580}.vb-status-dot[data-state=listening]{background:#22c55e;animation:vb-dot-pulse 1.5s ease infinite}.vb-status-dot[data-state=speaking]{background:#d94e3a;animation:vb-dot-pulse .8s ease infinite}.vb-status-dot[data-state=connecting]{background:#f4a26b;animation:vb-dot-pulse .5s ease infinite}.vb-status-dot[data-state=error]{background:#ef4444}@keyframes vb-dot-pulse{0%,to{opacity:1}50%{opacity:.4}}.vb-close-btn{background:none;border:none;color:hsla(36,33%,97%,.4);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s}.vb-close-btn:hover{color:#d94e3a}.vb-transcript{padding:16px 18px;font-family:var(--font-body),system-ui,sans-serif;font-size:.82rem;line-height:1.6;color:hsla(36,33%,97%,.6);max-height:130px;overflow-y:auto}.vb-transcript::-webkit-scrollbar{width:3px}.vb-transcript::-webkit-scrollbar-thumb{background:hsla(36,33%,97%,.1);border-radius:3px}.vb-tooltip{position:fixed;bottom:96px;right:28px;background:#1a1a1a;color:hsla(36,33%,97%,.85);font-family:var(--font-body),system-ui,sans-serif;font-size:.78rem;font-weight:500;padding:8px 14px;border-radius:10px;white-space:nowrap;z-index:9997;box-shadow:0 4px 20px rgba(0,0,0,.3);border:1px solid hsla(36,33%,97%,.08);animation:vb-tooltip-in .4s ease forwards;pointer-events:none}.vb-tooltip:after{content:"";position:absolute;bottom:-5px;right:22px;width:10px;height:10px;background:#1a1a1a;border-right:1px solid hsla(36,33%,97%,.08);border-bottom:1px solid hsla(36,33%,97%,.08);transform:rotate(45deg)}@keyframes vb-tooltip-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.vb-trigger{bottom:20px;right:20px;width:52px;height:52px}.vb-panel{bottom:84px;right:16px;left:16px;width:auto}.vb-tooltip{bottom:80px;right:20px;font-size:.72rem}}