.floating-bubble{position:fixed;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:9999px;background:#1414188c;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 24px #00000059,0 0 0 1px #ffffff05,0 0 20px color-mix(in srgb,var(--theme-icon, #6366f1) 35%,transparent),0 0 40px color-mix(in srgb,var(--theme-icon, #6366f1) 15%,transparent);cursor:grab;z-index:1050;touch-action:none;-webkit-user-select:none;user-select:none}html.hud-overlay .floating-bubble{z-index:100}.floating-bubble:hover{background:#1e1e24a6;box-shadow:0 10px 28px #0006}.floating-bubble:focus-visible{outline:2px solid rgba(129,140,248,.6);outline-offset:2px}.floating-bubble.is-dragging{cursor:grabbing}.floating-bubble__icon{color:#ffffffe6;pointer-events:none}.floating-bubble__badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:9999px;background:var(--theme-primary, #ff007a);color:#fff;font-size:10px;font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px #141418d9;pointer-events:none}.floating-bubble.is-hud{background:radial-gradient(120% 120% at 30% 12%,rgba(255,255,255,.2) 0%,rgba(255,255,255,.06) 40%,transparent 66%),linear-gradient(160deg,#34304cf0,#12101ceb);border-color:#ffffff38;box-shadow:0 10px 28px #00000073,inset 0 1px #ffffff42,inset 0 -7px 14px #00000052,0 0 22px color-mix(in srgb,var(--theme-icon, #6366f1) 34%,transparent),0 0 46px color-mix(in srgb,var(--theme-icon, #6366f1) 16%,transparent)}.floating-bubble.is-hud:before{content:"";position:absolute;top:-9px;right:-9px;bottom:-9px;left:-9px;border-radius:9999px;background:radial-gradient(circle,color-mix(in srgb,var(--theme-icon, #6366f1) 20%,transparent) 0%,transparent 68%);filter:blur(7px);pointer-events:none;z-index:-1}.floating-bubble.is-hud:hover{background:radial-gradient(120% 120% at 30% 12%,rgba(255,255,255,.26) 0%,rgba(255,255,255,.08) 40%,transparent 66%),linear-gradient(160deg,#403a5cf5,#181624f0);box-shadow:0 12px 32px #00000080,inset 0 1px #ffffff4d,inset 0 -7px 14px #00000047,0 0 26px color-mix(in srgb,var(--theme-icon, #6366f1) 38%,transparent),0 0 54px color-mix(in srgb,var(--theme-icon, #6366f1) 18%,transparent)}.floating-bubble__close{position:absolute;top:-6px;left:-6px;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:9999px;background:#1e1e24eb;border:1px solid rgba(255,255,255,.15);color:#fff9;opacity:0;transform:scale(.8);transition:opacity .15s ease,transform .15s ease,background-color .15s ease,color .15s ease;cursor:pointer}.floating-bubble:hover .floating-bubble__close{opacity:1;transform:scale(1)}@media (hover: none){.floating-bubble__close{opacity:1;transform:scale(1)}}.floating-bubble__close:hover{color:#fff;background:#ef4444d9}.floating-bubble-fade-enter-active,.floating-bubble-fade-leave-active{transition:opacity .2s ease,transform .2s ease}.floating-bubble-fade-enter-from,.floating-bubble-fade-leave-to{opacity:0;transform:scale(.85)}.floating-bubble.is-locating{animation:floating-bubble-locate-bounce .7s ease 3}.floating-bubble.is-locating:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:9999px;border:2px solid color-mix(in srgb,var(--theme-icon, #6366f1) 80%,white 20%);background:none;filter:none;z-index:auto;pointer-events:none;opacity:0;animation:floating-bubble-locate-ring .7s ease-out 3}@keyframes floating-bubble-locate-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.75)}}@keyframes floating-bubble-locate-bounce{0%,to{transform:scale(1)}30%{transform:scale(1.18)}60%{transform:scale(.95)}}.floating-bubble.is-bumped{--bump-dist: 10px;animation:floating-bubble-bump-move .52s cubic-bezier(.34,1.56,.4,1) 1}.floating-bubble.is-bumped.is-bump-passive{--bump-dist: 12px}.floating-bubble.is-bumped.is-bump-active{--bump-dist: 6px}.floating-bubble.is-bumped.is-bump-combo{--bump-dist: 16px}.floating-bubble.is-bumped.is-bump-h{--bump-scale-x: .86;--bump-scale-y: 1.1}.floating-bubble.is-bumped.is-bump-v{--bump-scale-x: 1.1;--bump-scale-y: .86}.floating-bubble.is-bumped:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:9999px;border:none;background:color-mix(in srgb,var(--theme-icon, #6366f1) 70%,white 30%);filter:none;z-index:auto;pointer-events:none;opacity:0;animation:floating-bubble-bump-flash .3s ease-out 1}@keyframes floating-bubble-bump-move{0%{transform:translate(0) scale(1)}35%{transform:translate(calc(var(--bump-dx, 0) * var(--bump-dist)),calc(var(--bump-dy, 0) * var(--bump-dist))) scale(var(--bump-scale-x, .9),var(--bump-scale-y, .9))}70%{transform:translate(calc(var(--bump-dx, 0) * var(--bump-dist) * -.22),calc(var(--bump-dy, 0) * var(--bump-dist) * -.22)) scale(1.06)}to{transform:translate(0) scale(1)}}.floating-bubble.is-bumped.is-bump-refuse{animation:floating-bubble-bump-refuse .9s ease-in-out 1}.floating-bubble.is-bumped.is-bump-refuse:before{background:color-mix(in srgb,#f87171 70%,white 30%);animation-duration:.45s}@keyframes floating-bubble-bump-refuse{0%,to{transform:translate(0) rotate(0) scale(1)}12%{transform:translate(-7px) rotate(-9deg) scale(1.04)}30%{transform:translate(7px) rotate(9deg) scale(1.04)}48%{transform:translate(-5px) rotate(-6deg) scale(1.02)}66%{transform:translate(4px) rotate(4deg) scale(1.01)}84%{transform:translate(-2px) rotate(-2deg) scale(1)}}@keyframes floating-bubble-bump-flash{0%{opacity:.85}to{opacity:0}}
