@keyframes aim-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.qb .aim-progress{transform-origin:left center;animation:aim-progress linear both}@keyframes aim-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.qb .aim-rise{animation:aim-rise .45s cubic-bezier(.2,.8,.2,1) both}@keyframes aim-swap{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.qb .aim-swap{animation:aim-swap .5s cubic-bezier(.2,.8,.2,1) both}.qb .aim-mark{background-color:initial;background-image:linear-gradient(rgb(var(--qb-accent)/.16),rgb(var(--qb-accent)/.16));background-repeat:no-repeat;background-position:0 100%;background-size:0 100%;border-radius:4px;padding:0 2px;margin:0 -2px;color:inherit;transition:background-size .7s cubic-bezier(.2,.8,.2,1) .15s,color .3s ease}.qb .aim-mark[data-on=true]{background-size:100% 100%;color:rgb(var(--qb-ink))}@keyframes aim-caret{0%,45%{opacity:1}55%,to{opacity:0}}.qb .aim-caret{animation:aim-caret 1s steps(1) infinite}@keyframes aim-voice{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.qb .aim-voice>span{transform-origin:center;transform:scaleY(.3);transition:transform .4s ease}.qb .aim-voice[data-on=true]>span{animation:aim-voice .9s ease-in-out infinite}@keyframes aim-ring{0%{stroke-dashoffset:var(--aim-ring-from)}to{stroke-dashoffset:var(--aim-ring-to)}}.qb .aim-ring{stroke-dashoffset:var(--aim-ring-to);animation:aim-ring 1.1s cubic-bezier(.2,.8,.2,1) .15s both}@keyframes aim-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.qb .aim-grow{transform-origin:left center;animation:aim-grow .9s cubic-bezier(.2,.8,.2,1) both}@keyframes aim-drain{0%{stroke-dashoffset:0}to{stroke-dashoffset:var(--aim-drain-len)}}.qb .aim-drain{animation:aim-drain linear both}@keyframes aim-draw{0%{stroke-dashoffset:var(--aim-draw-len)}to{stroke-dashoffset:0}}.qb .aim-draw{stroke-dasharray:var(--aim-draw-len);animation:aim-draw 1.4s cubic-bezier(.3,.7,.2,1) .2s both}.qb .aim-gate:not([data-aim]) :is(.aim-ring,.aim-grow,.aim-draw,.aim-rise){animation:none}.qb .aim-gate[data-aim=armed] :is(.aim-ring,.aim-grow,.aim-draw,.aim-rise){animation-play-state:paused}@media (prefers-reduced-motion:reduce){.qb .aim-caret,.qb .aim-drain,.qb .aim-draw,.qb .aim-grow,.qb .aim-progress,.qb .aim-ring,.qb .aim-rise,.qb .aim-swap,.qb .aim-voice[data-on=true]>span{animation:none!important}.qb .aim-mark{transition:none}}