/* BioWeb R19.3.4 — native lightweight 2D hover effects. Loaded only when used. */
[data-bt-hover-animation]{backface-visibility:hidden;will-change:transform}
.bt-hover-grow{transition:transform .3s ease}.bt-hover-grow:hover{transform:scale(1.1)}
.bt-hover-shrink{transition:transform .3s ease}.bt-hover-shrink:hover{transform:scale(.9)}
.bt-hover-rotate{transition:transform .3s ease}.bt-hover-rotate:hover{transform:rotate(4deg)}
.bt-hover-grow-rotate{transition:transform .3s ease}.bt-hover-grow-rotate:hover{transform:scale(1.1) rotate(4deg)}
.bt-hover-float{transition:transform .3s ease}.bt-hover-float:hover{transform:translateY(-8px)}
.bt-hover-sink{transition:transform .3s ease}.bt-hover-sink:hover{transform:translateY(8px)}
.bt-hover-skew{transition:transform .3s ease}.bt-hover-skew:hover{transform:skew(-10deg)}
.bt-hover-skew-forward{transition:transform .3s ease;transform-origin:0 100%}.bt-hover-skew-forward:hover{transform:skew(-10deg)}
.bt-hover-skew-backward{transition:transform .3s ease;transform-origin:0 100%}.bt-hover-skew-backward:hover{transform:skew(10deg)}
.bt-hover-pulse:hover{animation:btHaPulse 1s linear infinite}.bt-hover-pulse-grow:hover{animation:btHaPulseGrow .3s linear infinite alternate}.bt-hover-pulse-shrink:hover{animation:btHaPulseShrink .3s linear infinite alternate}
.bt-hover-push:hover{animation:btHaPush .3s linear 1}.bt-hover-pop:hover{animation:btHaPop .3s linear 1}.bt-hover-bounce-in:hover{animation:btHaBounceIn .5s ease-out 1 forwards}.bt-hover-bounce-out:hover{animation:btHaBounceOut .5s ease-out 1 forwards}
.bt-hover-bob:hover{animation:btHaBob .9s ease-in-out infinite}.bt-hover-hang:hover{animation:btHaHang .9s ease-in-out infinite}.bt-hover-wobble-vertical:hover{animation:btHaWobbleV .9s ease-in-out 1}.bt-hover-wobble-horizontal:hover{animation:btHaWobbleH .9s ease-in-out 1}.bt-hover-wobble-to-bottom-right:hover{animation:btHaWobbleBR .9s ease-in-out 1}.bt-hover-wobble-to-top-right:hover{animation:btHaWobbleTR .9s ease-in-out 1}.bt-hover-wobble-top:hover{transform-origin:0 100%;animation:btHaWobbleTop .9s ease-in-out 1}.bt-hover-wobble-bottom:hover{transform-origin:100% 0;animation:btHaWobbleBottom .9s ease-in-out 1}.bt-hover-wobble-skew:hover{animation:btHaWobbleSkew .9s ease-in-out 1}.bt-hover-buzz:hover{animation:btHaBuzz .15s linear infinite}.bt-hover-buzz-out:hover{animation:btHaBuzzOut .75s linear 1}
@keyframes btHaPulse{25%{transform:scale(1.05)}75%{transform:scale(.95)}}@keyframes btHaPulseGrow{to{transform:scale(1.1)}}@keyframes btHaPulseShrink{to{transform:scale(.9)}}
@keyframes btHaPush{50%{transform:scale(.8)}100%{transform:scale(1)}}@keyframes btHaPop{50%{transform:scale(1.2)}100%{transform:scale(1)}}@keyframes btHaBounceIn{0%,100%{transform:scale(1)}50%{transform:scale(1.2)}75%{transform:scale(.95)}}@keyframes btHaBounceOut{0%,100%{transform:scale(1)}50%{transform:scale(.8)}75%{transform:scale(1.05)}}
@keyframes btHaBob{0%,100%{transform:translateY(-4px)}50%{transform:translateY(-8px)}}@keyframes btHaHang{0%,100%{transform:translateY(4px)}50%{transform:translateY(8px)}}
@keyframes btHaWobbleV{16%{transform:translateY(8px)}33%{transform:translateY(-6px)}50%{transform:translateY(4px)}67%{transform:translateY(-2px)}83%{transform:translateY(1px)}}@keyframes btHaWobbleH{16%{transform:translateX(8px)}33%{transform:translateX(-6px)}50%{transform:translateX(4px)}67%{transform:translateX(-2px)}83%{transform:translateX(1px)}}
@keyframes btHaWobbleBR{16%{transform:translate(8px,8px)}33%{transform:translate(-6px,-6px)}50%{transform:translate(4px,4px)}67%{transform:translate(-2px,-2px)}83%{transform:translate(1px,1px)}}@keyframes btHaWobbleTR{16%{transform:translate(8px,-8px)}33%{transform:translate(-6px,6px)}50%{transform:translate(4px,-4px)}67%{transform:translate(-2px,2px)}83%{transform:translate(1px,-1px)}}
@keyframes btHaWobbleTop{16%{transform:skew(-12deg)}33%{transform:skew(10deg)}50%{transform:skew(-6deg)}67%{transform:skew(4deg)}83%{transform:skew(-2deg)}}@keyframes btHaWobbleBottom{16%{transform:skew(12deg)}33%{transform:skew(-10deg)}50%{transform:skew(6deg)}67%{transform:skew(-4deg)}83%{transform:skew(2deg)}}@keyframes btHaWobbleSkew{16%{transform:skew(-12deg)}33%{transform:skew(10deg)}50%{transform:skew(-6deg)}67%{transform:skew(4deg)}83%{transform:skew(-2deg)}}
@keyframes btHaBuzz{50%{transform:translateX(3px) rotate(2deg)}100%{transform:translateX(-3px) rotate(-2deg)}}@keyframes btHaBuzzOut{10%,30%,50%,70%,90%{transform:translateX(3px) rotate(2deg)}20%,40%,60%,80%{transform:translateX(-3px) rotate(-2deg)}100%{transform:none}}
@media(prefers-reduced-motion:reduce){[data-bt-hover-animation]{animation:none!important;transition:none!important;transform:none!important}}
