.ub-ai{display:block;width:48px;height:48px;flex:none;overflow:visible;color:#1A234B;--ub-paper:#FFFFFF;--ub-tint:#CCE6E1;--ub-green:#008469;--ub-deep:#0A5E4C;--ub-gold:#D6A300;--ub-hood:#424243;--ub-stripe:#B95D2B;--ub-body:#FFFFFF;--ub-ink:#1A234B}
.ub-on-navy .ub-ai,.ub-ai.ub-on-navy{color:#F7F5F0;--ub-paper:#1A234B;--ub-tint:#0A5E4C;--ub-body:#F7F5F0}
.ub-ai *{transform-box:view-box}
.ub-ai .fb{transform-box:fill-box;transform-origin:center}
.ub-ai .p{fill:var(--ub-paper)}
.ub-ai .bd{fill:var(--ub-body);stroke:none}
.ub-ai .h{fill:var(--ub-hood);stroke:none}
.ub-ai .bl{fill:var(--ub-body);stroke:var(--ub-ink)}
.ub-ai .ik{stroke:var(--ub-ink)}
.ub-ai .ikf{fill:var(--ub-ink);stroke:var(--ub-ink)}
.ub-ai .sm{stroke:var(--ub-body)}
.ub-ai .t{fill:var(--ub-tint)}
.ub-ai .g{fill:var(--ub-green);stroke:none}
.ub-ai .gf{fill:var(--ub-green)}
.ub-ai .k{fill:currentColor;stroke:none}
.ub-ai .acc{stroke:var(--ub-green)}
.ub-ai .au{stroke:var(--ub-gold)}
.ub-ai .st{stroke:var(--ub-stripe)}

.ub-ai .ts{stroke:var(--ub-tint)}
.ub-ai .dr{stroke-dasharray:1 2}

.ub-ai--scale{--d:1.9s}
.ub-ai--scale.is-play .sc-core{animation:ub-sc-core var(--d) ease-in-out infinite}
@keyframes ub-sc-core{0%,100%{transform:scale(1)}8%{transform:scale(.82)}17%{transform:scale(1.08)}27%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-i0{animation:ub-sc-i0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-i0{0%{transform:scale(1)}7%,16%{transform:scale(0)}24%{transform:scale(1.08)}31%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-i1{animation:ub-sc-i1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-i1{0%{transform:scale(1)}7%,17.2%{transform:scale(0)}25.2%{transform:scale(1.08)}32.2%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-i2{animation:ub-sc-i2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-i2{0%{transform:scale(1)}7%,18.4%{transform:scale(0)}26.4%{transform:scale(1.08)}33.4%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-i3{animation:ub-sc-i3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-i3{0%{transform:scale(1)}7%,19.6%{transform:scale(0)}27.6%{transform:scale(1.08)}34.6%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-i4{animation:ub-sc-i4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-i4{0%{transform:scale(1)}7%,20.8%{transform:scale(0)}28.8%{transform:scale(1.08)}35.8%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-i5{animation:ub-sc-i5 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-i5{0%{transform:scale(1)}7%,22%{transform:scale(0)}30%{transform:scale(1.08)}37%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o0{animation:ub-sc-o0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o0{0%{transform:scale(1)}7%,34%{transform:scale(0)}42%{transform:scale(1.08)}49%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o1{animation:ub-sc-o1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o1{0%{transform:scale(1)}7%,34.9%{transform:scale(0)}42.9%{transform:scale(1.08)}49.9%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o2{animation:ub-sc-o2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o2{0%{transform:scale(1)}7%,35.8%{transform:scale(0)}43.8%{transform:scale(1.08)}50.8%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o3{animation:ub-sc-o3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o3{0%{transform:scale(1)}7%,36.7%{transform:scale(0)}44.7%{transform:scale(1.08)}51.7%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o4{animation:ub-sc-o4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o4{0%{transform:scale(1)}7%,37.6%{transform:scale(0)}45.6%{transform:scale(1.08)}52.6%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o5{animation:ub-sc-o5 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o5{0%{transform:scale(1)}7%,38.5%{transform:scale(0)}46.5%{transform:scale(1.08)}53.5%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o6{animation:ub-sc-o6 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o6{0%{transform:scale(1)}7%,39.4%{transform:scale(0)}47.4%{transform:scale(1.08)}54.4%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o7{animation:ub-sc-o7 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o7{0%{transform:scale(1)}7%,40.3%{transform:scale(0)}48.3%{transform:scale(1.08)}55.3%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o8{animation:ub-sc-o8 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o8{0%{transform:scale(1)}7%,41.2%{transform:scale(0)}49.2%{transform:scale(1.08)}56.2%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o9{animation:ub-sc-o9 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o9{0%{transform:scale(1)}7%,42.1%{transform:scale(0)}50.1%{transform:scale(1.08)}57.1%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o10{animation:ub-sc-o10 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o10{0%{transform:scale(1)}7%,43%{transform:scale(0)}51%{transform:scale(1.08)}58%,100%{transform:scale(1)}}
.ub-ai--scale.is-play .sc-o11{animation:ub-sc-o11 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sc-o11{0%{transform:scale(1)}7%,43.9%{transform:scale(0)}51.9%{transform:scale(1.08)}58.9%,100%{transform:scale(1)}}

.ub-ai--uniform{--d:1.8s}
.ub-ai--uniform.is-play .un-t{animation:ub-un-t var(--d) cubic-bezier(.4,0,.2,1) infinite}
.ub-ai--uniform.is-play .un-u{animation:ub-un-u var(--d) cubic-bezier(.4,0,.2,1) infinite}
.ub-ai--uniform.is-play .un-a{animation:ub-un-a var(--d) cubic-bezier(.4,0,.2,1) infinite}
.ub-ai--uniform.is-play .un-b{animation:ub-un-b var(--d) cubic-bezier(.4,0,.2,1) infinite}
.ub-ai--uniform.is-play .un-c{animation:ub-un-c var(--d) cubic-bezier(.4,0,.2,1) infinite}
@keyframes ub-un-t{0%,100%{transform:translateY(0)}14%,42%{transform:translateY(-3.6px)}54%{transform:translateY(.9px)}63%{transform:translateY(0)}}
@keyframes ub-un-u{0%,100%{transform:translateY(0)}14%,42%{transform:translateY(3.6px)}54%{transform:translateY(-.9px)}63%{transform:translateY(0)}}
@keyframes ub-un-a{0%,100%{transform:scale(1)}14%{transform:scale(.5)}28%{transform:scale(.56)}42%{transform:scale(.5)}55%{transform:scale(1.12)}65%{transform:scale(1)}}
@keyframes ub-un-b{0%,100%{transform:scale(1)}14%{transform:scale(1.42)}28%{transform:scale(1.36)}42%{transform:scale(1.42)}55%{transform:scale(.93)}65%{transform:scale(1)}}
@keyframes ub-un-c{0%,100%{transform:scale(1)}14%{transform:scale(.76)}28%{transform:scale(.84)}42%{transform:scale(.76)}55%{transform:scale(1.1)}65%{transform:scale(1)}}

.ub-ai--pipette{--d:1.8s}
.ub-ai--pipette .pp-liq{stroke-dasharray:1 1}
.ub-ai--pipette .pp-drop{opacity:0}
.ub-ai--pipette.is-play .pp-all{animation:ub-pp-all var(--d) ease-in-out infinite}
.ub-ai--pipette.is-play .pp-plg{animation:ub-pp-plg var(--d) ease-in-out infinite}
.ub-ai--pipette.is-play .pp-liq{animation:ub-pp-liq var(--d) ease-in-out infinite}
.ub-ai--pipette.is-play .pp-drop{transform-box:fill-box;transform-origin:center;animation:ub-pp-drop var(--d) cubic-bezier(.5,0,.8,.6) infinite}
.ub-ai--pipette.is-play .pp-w{animation:ub-pp-w var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pp-all{0%,100%{transform:translateY(0)}12%,62%{transform:translateY(1.6px)}76%{transform:translateY(0)}}
@keyframes ub-pp-plg{0%,16%,100%{transform:translateY(0)}27%,58%{transform:translateY(2.4px)}72%{transform:translateY(0)}}
@keyframes ub-pp-liq{0%,18%,100%{stroke-dashoffset:0}30%,58%{stroke-dashoffset:.8}74%{stroke-dashoffset:0}}
@keyframes ub-pp-drop{0%,26%{opacity:0;transform:translateY(0) scale(.3)}32%{opacity:1;transform:translateY(0) scale(1)}43%{opacity:1;transform:translateY(4px) scale(1)}44%,100%{opacity:0;transform:translateY(4px) scale(1)}}
@keyframes ub-pp-w{0%{transform:scale(1)}6%,43%{transform:scale(0)}52%{transform:scale(1.4)}60%,100%{transform:scale(1)}}

.ub-ai--droplet{--d:2.5s}
.ub-ai--droplet.is-play .dp-all{transform-origin:24px 24px;animation:ub-dp-all var(--d) cubic-bezier(.4,0,.2,1) infinite}
.ub-ai--droplet.is-play .dp-ring{animation:ub-dp-ring var(--d) ease-in-out infinite}
.ub-ai--droplet.is-play .dp-c{animation:ub-dp-cf var(--d) ease-in-out infinite,ub-dp-c1 var(--d) ease-in-out infinite}
.ub-ai--droplet.is-play .dp-c2{animation-name:ub-dp-cf,ub-dp-c2}
.ub-ai--droplet.is-play .dp-c3{animation-name:ub-dp-cf,ub-dp-c3}
.ub-ai--droplet.is-play .dp-c4{animation-name:ub-dp-cf,ub-dp-c4}
@keyframes ub-dp-all{0%,44%{transform:scale(1)}50%{transform:scale(1.08)}57%,70%{transform:scale(1)}78%,79%{transform:scale(0)}91%{transform:scale(1.1)}100%{transform:scale(1)}}
@keyframes ub-dp-ring{0%,32%{stroke:var(--ub-gold);fill:var(--ub-paper)}48%,78.5%{stroke:var(--ub-green);fill:var(--ub-green)}79%,100%{stroke:var(--ub-gold);fill:var(--ub-paper)}}
@keyframes ub-dp-cf{0%,32%{fill:var(--ub-green)}48%,78.5%{fill:var(--ub-deep)}79%,100%{fill:var(--ub-green)}}
@keyframes ub-dp-c1{0%,79%,100%{transform:translate(0,0)}12%{transform:translate(-1.2px,1.4px)}24%{transform:translate(1px,-1.2px)}34%,78.5%{transform:translate(-.6px,.8px)}}
@keyframes ub-dp-c2{0%,79%,100%{transform:translate(0,0)}12%{transform:translate(1.4px,-1px)}24%{transform:translate(-1px,1.2px)}34%,78.5%{transform:translate(.8px,-.6px)}}
@keyframes ub-dp-c3{0%,79%,100%{transform:translate(0,0)}12%{transform:translate(-1px,-1.4px)}24%{transform:translate(1.2px,1px)}34%,78.5%{transform:translate(-.8px,-.4px)}}
@keyframes ub-dp-c4{0%,79%,100%{transform:translate(0,0)}12%{transform:translate(1.2px,1.2px)}24%{transform:translate(-1.2px,-.8px)}34%,78.5%{transform:translate(.6px,.8px)}}

.ub-ai--instrument{--d:2.6s}
.ub-ai--instrument .in-l,.ub-ai--instrument .in-t{stroke-dasharray:1 1}
.ub-ai--instrument.is-play .in-lid{animation:ub-in-lid var(--d) cubic-bezier(.4,0,.2,1) infinite}
.ub-ai--instrument.is-play .in-t1{animation:ub-in-t1 var(--d) ease-out infinite}
.ub-ai--instrument.is-play .in-t2{animation:ub-in-t2 var(--d) ease-out infinite}
.ub-ai--instrument.is-play .in-t3{animation:ub-in-t3 var(--d) ease-out infinite}
.ub-ai--instrument.is-play .in-t4{animation:ub-in-t4 var(--d) ease-out infinite}
.ub-ai--instrument.is-play .in-l1{animation:ub-in-l1 var(--d) ease-in-out infinite}
.ub-ai--instrument.is-play .in-l2{animation:ub-in-l2 var(--d) ease-in-out infinite}
.ub-ai--instrument.is-play .in-l3{animation:ub-in-l3 var(--d) ease-in-out infinite}
@keyframes ub-in-lid{0%,6%,100%{transform:translateY(0)}17%{transform:translateY(-5.4px)}21%,52%{transform:translateY(-5px)}62%{transform:translateY(.6px)}68%{transform:translateY(0)}}
@keyframes ub-in-t1{0%,6%{stroke-dashoffset:0}6.1%,23%{stroke-dashoffset:1}29%,100%{stroke-dashoffset:0}}
@keyframes ub-in-t2{0%,6%{stroke-dashoffset:0}6.1%,28%{stroke-dashoffset:1}34%,100%{stroke-dashoffset:0}}
@keyframes ub-in-t3{0%,6%{stroke-dashoffset:0}6.1%,33%{stroke-dashoffset:1}39%,100%{stroke-dashoffset:0}}
@keyframes ub-in-t4{0%,6%{stroke-dashoffset:0}6.1%,38%{stroke-dashoffset:1}44%,100%{stroke-dashoffset:0}}
@keyframes ub-in-l1{0%{stroke-dashoffset:0}7%{stroke-dashoffset:-1}7.1%,64%{stroke-dashoffset:1}74%,100%{stroke-dashoffset:0}}
@keyframes ub-in-l2{0%{stroke-dashoffset:0}7%{stroke-dashoffset:-1}7.1%,70%{stroke-dashoffset:1}80%,100%{stroke-dashoffset:0}}
@keyframes ub-in-l3{0%{stroke-dashoffset:0}7%{stroke-dashoffset:-1}7.1%,76%{stroke-dashoffset:1}86%,100%{stroke-dashoffset:0}}

.ub-ai--timer{--d:2s}
.ub-ai--timer .tm-w{stroke:var(--ub-tint);stroke-dasharray:1 1}
.ub-ai--timer.is-play .tm-btn{animation:ub-tm-btn var(--d) ease-in-out infinite}
.ub-ai--timer.is-play .tm-h{transform-origin:24px 27px;animation:ub-tm-h var(--d) cubic-bezier(.45,0,.3,1) infinite}
.ub-ai--timer.is-play .tm-w{animation:ub-tm-w var(--d) cubic-bezier(.45,0,.3,1) infinite}
.ub-ai--timer.is-play .tm-all{transform-origin:24px 27px;animation:ub-tm-all var(--d) ease-in-out infinite}
@keyframes ub-tm-btn{0%,13%,100%{transform:translateY(0)}6%{transform:translateY(1.8px)}}
@keyframes ub-tm-h{0%,7%{transform:rotate(0)}19%,25%{transform:rotate(-90deg)}68%{transform:rotate(7deg)}77%{transform:rotate(-3deg)}85%,100%{transform:rotate(0)}}
@keyframes ub-tm-w{0%,7%{stroke-dashoffset:0}19%,25%{stroke-dashoffset:1}68%,100%{stroke-dashoffset:0}}
@keyframes ub-tm-all{0%,68%,100%{transform:rotate(0)}73%{transform:rotate(-5deg)}79%{transform:rotate(4deg)}85%{transform:rotate(-2deg)}91%{transform:rotate(0)}}

.ub-ai--sample{--d:1.8s}
.ub-ai--sample.is-play .sp-tube{transform-origin:24px 40px;animation:ub-sp-tube var(--d) ease-in-out infinite}
.ub-ai--sample.is-play .sp-lq{transform-origin:24px 19.4px;animation:ub-sp-lq var(--d) ease-in-out infinite}
.ub-ai--sample.is-play .sp-c1{animation:ub-sp-c1 var(--d) ease-in-out infinite}
.ub-ai--sample.is-play .sp-c2{animation:ub-sp-c2 var(--d) ease-in-out infinite}
.ub-ai--sample.is-play .sp-c3{animation:ub-sp-c3 var(--d) ease-in-out infinite}
.ub-ai--sample.is-play .sp-c4{animation:ub-sp-c4 var(--d) ease-in-out infinite}
.ub-ai--sample.is-play .sp-c5{animation:ub-sp-c5 var(--d) ease-in-out infinite}
@keyframes ub-sp-tube{0%,100%{transform:rotate(0)}18%{transform:rotate(-11deg)}40%{transform:rotate(9deg)}60%{transform:rotate(-5deg)}78%{transform:rotate(2deg)}90%{transform:rotate(0)}}
@keyframes ub-sp-lq{0%,100%{transform:rotate(0)}18%{transform:rotate(11deg)}40%{transform:rotate(-9deg)}60%{transform:rotate(5deg)}78%{transform:rotate(-2deg)}90%{transform:rotate(0)}}
@keyframes ub-sp-c1{0%,100%{transform:translate(0,0)}22%{transform:translate(2.6px,1.8px)}46%{transform:translate(-.6px,3.4px)}70%{transform:translate(-.9px,-.6px)}88%{transform:translate(0,0)}}
@keyframes ub-sp-c2{0%,100%{transform:translate(0,0)}22%{transform:translate(.8px,2.6px)}46%{transform:translate(-3px,1.6px)}70%{transform:translate(-1.2px,-1.4px)}88%{transform:translate(0,0)}}
@keyframes ub-sp-c4{0%,100%{transform:translate(0,0)}22%{transform:translate(2.4px,-2.2px)}46%{transform:translate(4px,.8px)}70%{transform:translate(1.2px,1.4px)}88%{transform:translate(0,0)}}
@keyframes ub-sp-c5{0%,100%{transform:translate(0,0)}22%{transform:translate(-2.6px,-1.4px)}46%{transform:translate(-3.8px,1.4px)}70%{transform:translate(-1px,-2.4px)}88%{transform:translate(0,0)}}
@keyframes ub-sp-c3{0%,100%{transform:translate(0,0)}22%{transform:translate(2.2px,-2px)}46%{transform:translate(-2.4px,-2.6px)}70%{transform:translate(-1px,1.2px)}88%{transform:translate(0,0)}}

.ub-ai--load{--d:1.9s}
.ub-ai--load .ld-w{stroke-dasharray:1 1}
.ub-ai--load .ld-tk{opacity:0}
.ub-ai--load.is-play .ld-c{animation:ub-ld-c var(--d) cubic-bezier(.5,0,.3,1) infinite}
.ub-ai--load.is-play .ld-w{animation:ub-ld-w var(--d) ease-in-out infinite}
.ub-ai--load.is-play .ld-h{animation:ub-ld-h var(--d) ease-in-out infinite}
.ub-ai--load.is-play .ld-tk{transform-origin:24px 24px;animation:ub-ld-tk var(--d) ease-out infinite}
@keyframes ub-ld-c{0%,100%{transform:translateY(0)}13%,25%{transform:translateY(-8.5px)}37%{transform:translateY(1.1px)}44%{transform:translateY(0)}}
@keyframes ub-ld-w{0%{stroke-dashoffset:0}8%{stroke-dashoffset:-1}8.1%,46%{stroke-dashoffset:1}80%,100%{stroke-dashoffset:0}}
@keyframes ub-ld-h{0%,35%,100%{transform:translateY(0)}40%{transform:translateY(1.3px)}48%{transform:translateY(0)}}
@keyframes ub-ld-tk{0%,35%{opacity:0;transform:scale(.8)}41%{opacity:1;transform:scale(1)}58%,100%{opacity:0;transform:scale(1.12)}}

.ub-ai--scan{--d:1.6s}
.ub-ai--scan.is-play .sn-l{animation:ub-sn-l var(--d) cubic-bezier(.45,0,.55,1) infinite}
.ub-ai--scan.is-play .sn-c{transform-origin:24px 24px;animation:ub-sn-c var(--d) ease-in-out infinite}
@keyframes ub-sn-l{0%,100%{transform:translateY(0)}20%{transform:translateY(-11px)}62%{transform:translateY(11px)}84%{transform:translateY(0)}}
@keyframes ub-sn-c{0%,62%,100%{transform:scale(1);stroke:currentColor}8%{transform:scale(1.07)}18%{transform:scale(1)}70%{transform:scale(1.1);stroke:var(--ub-green)}82%{transform:scale(1);stroke:var(--ub-green)}94%{stroke:currentColor}}

.ub-ai--lanes{--d:.85s}
.ub-ai--lanes .ln-d{stroke-dasharray:0 6.6}
.ub-ai--lanes.is-play .ln-d{animation:ub-ln var(--d) linear infinite}
@keyframes ub-ln{to{stroke-dashoffset:-6.6}}

.ub-ai--dispense{--d:2s}
.ub-ai--dispense .ds-d{opacity:0}
.ub-ai--dispense.is-play .ds-head{animation:ub-ds-head var(--d) ease-in-out infinite}
@keyframes ub-ds-head{0%,6%,100%{transform:translateY(0)}16%,66%{transform:translateY(2.6px)}78%{transform:translateY(0)}}
.ub-ai--dispense.is-play .ds-w0{animation:ub-ds-w0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
.ub-ai--dispense.is-play .ds-d0{animation:ub-ds-d0 var(--d) cubic-bezier(.5,0,.8,.6) infinite}
@keyframes ub-ds-w0{0%{transform:scale(1)}6%,34%{transform:scale(0)}42%{transform:scale(1.4)}49%,100%{transform:scale(1)}}
@keyframes ub-ds-d0{0%,21%{opacity:0;transform:translateY(0)}24%{opacity:1;transform:translateY(0)}34%{opacity:1;transform:translateY(11.5px)}34.5%,100%{opacity:0;transform:translateY(11.5px)}}
.ub-ai--dispense.is-play .ds-w1{animation:ub-ds-w1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
.ub-ai--dispense.is-play .ds-d1{animation:ub-ds-d1 var(--d) cubic-bezier(.5,0,.8,.6) infinite}
@keyframes ub-ds-w1{0%{transform:scale(1)}6%,45%{transform:scale(0)}53%{transform:scale(1.4)}60%,100%{transform:scale(1)}}
@keyframes ub-ds-d1{0%,32%{opacity:0;transform:translateY(0)}35%{opacity:1;transform:translateY(0)}45%{opacity:1;transform:translateY(11.5px)}45.5%,100%{opacity:0;transform:translateY(11.5px)}}
.ub-ai--dispense.is-play .ds-w2{animation:ub-ds-w2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
.ub-ai--dispense.is-play .ds-d2{animation:ub-ds-d2 var(--d) cubic-bezier(.5,0,.8,.6) infinite}
@keyframes ub-ds-w2{0%{transform:scale(1)}6%,56%{transform:scale(0)}64%{transform:scale(1.4)}71%,100%{transform:scale(1)}}
@keyframes ub-ds-d2{0%,43%{opacity:0;transform:translateY(0)}46%{opacity:1;transform:translateY(0)}56%{opacity:1;transform:translateY(11.5px)}56.5%,100%{opacity:0;transform:translateY(11.5px)}}

.ub-ai--grow{--d:2.2s}
.ub-ai--grow.is-play .gr-all{transform-origin:24px 24px;animation:ub-gr-all var(--d) ease-in-out infinite}
.ub-ai--grow.is-play .gr-core{animation:ub-gr-core var(--d) cubic-bezier(.3,.7,.2,1.3) infinite}
@keyframes ub-gr-all{0%,80%,100%{transform:scale(1)}89%{transform:scale(1.07)}}
@keyframes ub-gr-core{0%,100%{transform:scale(1)}7%,13%{transform:scale(.42)}27%{transform:scale(1.1)}34%{transform:scale(1)}}
.ub-ai--grow.is-play .gr-b0{animation:ub-gr-b0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-gr-b0{0%{transform:scale(1)}6%,28%{transform:scale(0)}37%{transform:scale(1.3)}44%,100%{transform:scale(1)}}
.ub-ai--grow.is-play .gr-b1{animation:ub-gr-b1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-gr-b1{0%{transform:scale(1)}6%,36.5%{transform:scale(0)}45.5%{transform:scale(1.3)}52.5%,100%{transform:scale(1)}}
.ub-ai--grow.is-play .gr-b2{animation:ub-gr-b2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-gr-b2{0%{transform:scale(1)}6%,45%{transform:scale(0)}54%{transform:scale(1.3)}61%,100%{transform:scale(1)}}
.ub-ai--grow.is-play .gr-b3{animation:ub-gr-b3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-gr-b3{0%{transform:scale(1)}6%,53.5%{transform:scale(0)}62.5%{transform:scale(1.3)}69.5%,100%{transform:scale(1)}}
.ub-ai--grow.is-play .gr-b4{animation:ub-gr-b4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-gr-b4{0%{transform:scale(1)}6%,62%{transform:scale(0)}71%{transform:scale(1.3)}78%,100%{transform:scale(1)}}

.ub-ai--dose{--d:1.9s}
.ub-ai--dose.is-play .do-bulb{transform-origin:24px 9.6px;animation:ub-do-bulb var(--d) ease-in-out infinite}
.ub-ai--dose.is-play .do-drop{transform-origin:24px 27.6px;animation:ub-do-drop var(--d) cubic-bezier(.5,0,.8,.6) infinite}
.ub-ai--dose.is-play .do-rip{transform-origin:24px 35.4px;animation:ub-do-rip var(--d) ease-out infinite}
.ub-ai--dose.is-play .do-m1{animation:ub-do-m var(--d) ease-in-out infinite;animation-delay:calc(var(--d)*.05)}
.ub-ai--dose.is-play .do-m2{animation:ub-do-m var(--d) ease-in-out infinite}
.ub-ai--dose.is-play .do-m3{animation:ub-do-m var(--d) ease-in-out infinite;animation-delay:calc(var(--d)*.05)}
@keyframes ub-do-bulb{0%,5%,100%{transform:scale(1,1)}15%,30%{transform:scale(.74,1.05)}42%{transform:scale(1,1)}}
@keyframes ub-do-drop{0%,14%{opacity:1;transform:translateY(0) scale(1)}30%{opacity:1;transform:translateY(5.6px) scale(1)}31%,56%{opacity:0;transform:translateY(0) scale(0)}57%{opacity:1;transform:translateY(0) scale(0)}74%{opacity:1;transform:translateY(0) scale(1.2)}84%,100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes ub-do-rip{0%,30%,100%{transform:scaleX(1)}36%{transform:scaleX(1.5)}46%{transform:scaleX(.8)}56%{transform:scaleX(1.12)}66%{transform:scaleX(1)}}
@keyframes ub-do-m{0%,32%,100%{transform:translateY(0)}41%{transform:translateY(-2.2px)}51%{transform:translateY(.6px)}60%{transform:translateY(0)}}

.ub-ai--curve{--d:2s}
.ub-ai--curve .cv-l{stroke-dasharray:1 1}
.ub-ai--curve.is-play .cv-l{animation:ub-cv-l var(--d) ease-in-out infinite}
.ub-ai--curve.is-play .cv-ic{transform-origin:24.3px 26.6px;animation:ub-cv-ic var(--d) ease-out infinite}
@keyframes ub-cv-l{0%{stroke-dashoffset:0}8%{stroke-dashoffset:-1}8.1%,13%{stroke-dashoffset:1}56%,100%{stroke-dashoffset:0}}
@keyframes ub-cv-ic{0%,7%{transform:scaleY(1)}8%,60%{transform:scaleY(0)}74%,100%{transform:scaleY(1)}}
.ub-ai--curve.is-play .cv-p0{animation:ub-cv-p0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-cv-p0{0%{transform:scale(1)}8%,15%{transform:scale(0)}22%{transform:scale(1.45)}28%,100%{transform:scale(1)}}
.ub-ai--curve.is-play .cv-p1{animation:ub-cv-p1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-cv-p1{0%{transform:scale(1)}8%,24.5%{transform:scale(0)}31.5%{transform:scale(1.45)}37.5%,100%{transform:scale(1)}}
.ub-ai--curve.is-play .cv-p2{animation:ub-cv-p2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-cv-p2{0%{transform:scale(1)}8%,34%{transform:scale(0)}41%{transform:scale(1.45)}47%,100%{transform:scale(1)}}
.ub-ai--curve.is-play .cv-p3{animation:ub-cv-p3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-cv-p3{0%{transform:scale(1)}8%,43.5%{transform:scale(0)}50.5%{transform:scale(1.45)}56.5%,100%{transform:scale(1)}}
.ub-ai--curve.is-play .cv-p4{animation:ub-cv-p4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-cv-p4{0%{transform:scale(1)}8%,53%{transform:scale(0)}60%{transform:scale(1.45)}66%,100%{transform:scale(1)}}

.ub-ai--microscope{--d:1.9s}
.ub-ai--microscope .mc-g{opacity:0}
.ub-ai--microscope.is-play .mc-t{animation:ub-mc-t var(--d) ease-in-out infinite}
.ub-ai--microscope.is-play .mc-s{animation:ub-mc-s var(--d) ease-in-out infinite}
.ub-ai--microscope.is-play .mc-g{animation:ub-mc-g var(--d) ease-out infinite}
@keyframes ub-mc-t{0%,100%{transform:translateY(0)}20%{transform:translateY(3px)}36%{transform:translateY(1px)}50%{transform:translateY(2.3px)}70%{transform:translateY(0)}}
@keyframes ub-mc-s{0%,46%,100%{transform:scale(1)}54%{transform:scale(1.55)}64%{transform:scale(1)}}
@keyframes ub-mc-g{0%,48%{opacity:0;transform:scale(.4)}56%{opacity:1;transform:scale(1)}76%,100%{opacity:0;transform:scale(1.9)}}

.ub-ai--reader{--d:1.9s}
.ub-ai--reader.is-play .rd-bar{animation:ub-rd-bar var(--d) linear infinite}
@keyframes ub-rd-bar{0%,100%{transform:translateX(0)}14%{transform:translateX(-17px)}72%{transform:translateX(17px)}}
.ub-ai--reader.is-play .rd-c0{transform-box:fill-box;transform-origin:center;animation:ub-rd-c0 var(--d) ease-out infinite}
@keyframes ub-rd-c0{0%{opacity:1;transform:scale(1)}9%,22.5%{opacity:.22;transform:scale(1)}27.5%{opacity:1;transform:scale(1.12)}34.5%,100%{opacity:1;transform:scale(1)}}
.ub-ai--reader.is-play .rd-c1{transform-box:fill-box;transform-origin:center;animation:ub-rd-c1 var(--d) ease-out infinite}
@keyframes ub-rd-c1{0%{opacity:1;transform:scale(1)}9%,35.5%{opacity:.22;transform:scale(1)}40.5%{opacity:1;transform:scale(1.12)}47.5%,100%{opacity:1;transform:scale(1)}}
.ub-ai--reader.is-play .rd-c2{transform-box:fill-box;transform-origin:center;animation:ub-rd-c2 var(--d) ease-out infinite}
@keyframes ub-rd-c2{0%{opacity:1;transform:scale(1)}9%,48.7%{opacity:.22;transform:scale(1)}53.7%{opacity:1;transform:scale(1.12)}60.7%,100%{opacity:1;transform:scale(1)}}
.ub-ai--reader.is-play .rd-c3{transform-box:fill-box;transform-origin:center;animation:ub-rd-c3 var(--d) ease-out infinite}
@keyframes ub-rd-c3{0%{opacity:1;transform:scale(1)}9%,61.8%{opacity:.22;transform:scale(1)}66.8%{opacity:1;transform:scale(1.12)}73.8%,100%{opacity:1;transform:scale(1)}}

.ub-ai--flow{--d:.95s}
.ub-ai--flow .fl-d{stroke-dasharray:0 12}
.ub-ai--flow.is-play .fl-d{animation:ub-fl-d var(--d) linear infinite}
.ub-ai--flow.is-play .fl-sc{transform-origin:24px 33px;animation:ub-fl-sc var(--d) ease-out infinite}
.ub-ai--flow.is-play .fl-beam{animation:ub-fl-beam var(--d) linear infinite}
@keyframes ub-fl-d{to{stroke-dashoffset:-12}}
@keyframes ub-fl-sc{0%,100%{opacity:1;transform:scale(1)}30%{opacity:0;transform:scale(1.25)}82%{opacity:0;transform:scale(.5)}}
@keyframes ub-fl-beam{0%,100%{opacity:1}30%{opacity:.4}82%{opacity:.4}}

.ub-ai--sequencing{--d:1.5s}
.ub-ai--sequencing.is-play .sq-h{animation:ub-sq var(--d) linear infinite}
.ub-ai--sequencing.is-play .sq-s{animation:ub-sq-s var(--d) linear infinite}
@keyframes ub-sq{to{transform:translateY(18px)}}
@keyframes ub-sq-s{0%{stroke-dasharray:99.62 400;stroke-dashoffset:-43.48}5%{stroke-dasharray:99.00 400;stroke-dashoffset:-42.10}10%{stroke-dasharray:97.43 400;stroke-dashoffset:-41.16}15%{stroke-dasharray:95.75 400;stroke-dashoffset:-39.98}20%{stroke-dasharray:94.60 400;stroke-dashoffset:-38.19}25%{stroke-dasharray:94.19 400;stroke-dashoffset:-35.83}30%{stroke-dasharray:94.60 400;stroke-dashoffset:-33.05}35%{stroke-dasharray:95.75 400;stroke-dashoffset:-30.12}40%{stroke-dasharray:97.43 400;stroke-dashoffset:-27.26}45%{stroke-dasharray:99.00 400;stroke-dashoffset:-24.74}50%{stroke-dasharray:99.62 400;stroke-dashoffset:-22.75}55%{stroke-dasharray:99.00 400;stroke-dashoffset:-21.37}60%{stroke-dasharray:97.43 400;stroke-dashoffset:-20.43}65%{stroke-dasharray:95.75 400;stroke-dashoffset:-19.25}70%{stroke-dasharray:94.60 400;stroke-dashoffset:-17.46}75%{stroke-dasharray:94.19 400;stroke-dashoffset:-15.10}80%{stroke-dasharray:94.60 400;stroke-dashoffset:-12.32}85%{stroke-dasharray:95.75 400;stroke-dashoffset:-9.39}90%{stroke-dasharray:97.43 400;stroke-dashoffset:-6.53}95%{stroke-dasharray:99.00 400;stroke-dashoffset:-4.01}100%{stroke-dasharray:99.62 400;stroke-dashoffset:-2.02}}

.ub-ai--elisa{--d:2s}
.ub-ai--elisa .el-liq{fill:var(--ub-tint);stroke:none}
.ub-ai--elisa .el-col{fill:var(--ub-green);stroke:none}
.ub-ai--elisa .el-ab{stroke:var(--ub-paper);stroke-width:1.6}
.ub-ai--elisa.is-play .el-drop{transform-origin:24px 6px;animation:ub-el-drop var(--d) cubic-bezier(.5,0,.8,.6) infinite}
.ub-ai--elisa.is-play .el-col{animation:ub-el-col var(--d) ease-in-out infinite}
@keyframes ub-el-drop{0%,10%{opacity:1;transform:translateY(0) scale(1)}30%{opacity:1;transform:translateY(15px) scale(1)}31%,78%{opacity:0;transform:translateY(0) scale(0)}79%{opacity:1;transform:translateY(0) scale(0)}92%{opacity:1;transform:translateY(0) scale(1.18)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes ub-el-col{0%{opacity:1}8%,32%{opacity:0}72%,100%{opacity:1}}

.ub-ai--histology{--d:1.9s}
.ub-ai--histology .hs-nu{fill:var(--ub-paper);stroke:none}
.ub-ai--histology.is-play .hs-sec{animation:ub-hs-sec var(--d) cubic-bezier(.3,.7,.2,1.3) infinite}
@keyframes ub-hs-sec{0%{transform:scale(1)}6%,12%{transform:scale(0)}22%{transform:scale(1.16)}30%,100%{transform:scale(1)}}
.ub-ai--histology.is-play .hs-n0{animation:ub-hs-n0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-hs-n0{0%{transform:scale(1)}6%,36%{transform:scale(0)}42%{transform:scale(1.6)}48%,100%{transform:scale(1)}}
.ub-ai--histology.is-play .hs-n1{animation:ub-hs-n1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-hs-n1{0%{transform:scale(1)}6%,42%{transform:scale(0)}48%{transform:scale(1.6)}54%,100%{transform:scale(1)}}
.ub-ai--histology.is-play .hs-n2{animation:ub-hs-n2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-hs-n2{0%{transform:scale(1)}6%,48%{transform:scale(0)}54%{transform:scale(1.6)}60%,100%{transform:scale(1)}}
.ub-ai--histology.is-play .hs-n3{animation:ub-hs-n3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-hs-n3{0%{transform:scale(1)}6%,54%{transform:scale(0)}60%{transform:scale(1.6)}66%,100%{transform:scale(1)}}
.ub-ai--histology.is-play .hs-n4{animation:ub-hs-n4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-hs-n4{0%{transform:scale(1)}6%,60%{transform:scale(0)}66%{transform:scale(1.6)}72%,100%{transform:scale(1)}}

.ub-ai--plates{--d:1.8s}
.ub-ai--plates.is-play .pl-top{animation:ub-pl-top var(--d) cubic-bezier(.4,0,.2,1) infinite}
.ub-ai--plates.is-play .pl-mid{animation:ub-pl-mid var(--d) cubic-bezier(.4,0,.2,1) infinite}
.ub-ai--plates.is-play .pl-bot{animation:ub-pl-bot var(--d) cubic-bezier(.4,0,.2,1) infinite}
@keyframes ub-pl-top{0%,100%{transform:translateY(0)}15%,32%{transform:translateY(-4.6px)}45%{transform:translateY(.9px)}53%{transform:translateY(0)}}
@keyframes ub-pl-mid{0%,100%{transform:translateY(0)}18%,35%{transform:translateY(-1.6px)}49%{transform:translateY(.7px)}57%{transform:translateY(0)}}
@keyframes ub-pl-bot{0%,100%{transform:translateY(0)}18%,38%{transform:translateY(1.5px)}53%{transform:translateY(-.4px)}61%{transform:translateY(0)}}
.ub-ai--plates.is-play .pl-w0{animation:ub-pl-w0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pl-w0{0%{transform:scale(1)}10%,50%{transform:scale(0)}58%{transform:scale(1.5)}64%,100%{transform:scale(1)}}
.ub-ai--plates.is-play .pl-w1{animation:ub-pl-w1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pl-w1{0%{transform:scale(1)}10%,57%{transform:scale(0)}65%{transform:scale(1.5)}71%,100%{transform:scale(1)}}
.ub-ai--plates.is-play .pl-w2{animation:ub-pl-w2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pl-w2{0%{transform:scale(1)}10%,64%{transform:scale(0)}72%{transform:scale(1.5)}78%,100%{transform:scale(1)}}
.ub-ai--plates.is-play .pl-w3{animation:ub-pl-w3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pl-w3{0%{transform:scale(1)}10%,71%{transform:scale(0)}79%{transform:scale(1.5)}85%,100%{transform:scale(1)}}

.ub-ai--automation{--d:2.3s}
.ub-ai--automation.is-play .au-up{transform-origin:13px 35.5px;animation:ub-au-up var(--d) cubic-bezier(.45,0,.3,1) infinite}
.ub-ai--automation.is-play .au-fore{transform-origin:21px 17.5px;animation:ub-au-fore var(--d) cubic-bezier(.45,0,.3,1) infinite}
.ub-ai--automation.is-play .au-grip{transform-origin:35px 14.5px;animation:ub-au-grip var(--d) cubic-bezier(.45,0,.3,1) infinite}
@keyframes ub-au-up{0%,6%,100%{transform:rotate(0)}32%,50%{transform:rotate(15deg)}78%{transform:rotate(-2deg)}88%{transform:rotate(0)}}
@keyframes ub-au-fore{0%,6%,100%{transform:rotate(0)}32%,50%{transform:rotate(33deg)}78%{transform:rotate(-3deg)}88%{transform:rotate(0)}}
@keyframes ub-au-grip{0%,6%,100%{transform:rotate(0)}32%,50%{transform:rotate(-48deg)}78%{transform:rotate(5deg)}88%{transform:rotate(0)}}

.ub-ai--app-note{--d:1.8s}
.ub-ai--app-note [pathLength]{stroke-dasharray:1 1}
.ub-ai--app-note.is-play .an-all{transform-origin:24px 43.5px;animation:ub-an-all var(--d) ease-in-out infinite}
.ub-ai--app-note.is-play .an-l1{animation:ub-an-l1 var(--d) linear infinite}
.ub-ai--app-note.is-play .an-l2{animation:ub-an-l2 var(--d) linear infinite}
.ub-ai--app-note.is-play .an-b1{transform-origin:17.6px 38px;animation:ub-an-b1 var(--d) cubic-bezier(.3,.7,.2,1.3) infinite}
.ub-ai--app-note.is-play .an-b2{transform-origin:24px 38px;animation:ub-an-b2 var(--d) cubic-bezier(.3,.7,.2,1.3) infinite}
.ub-ai--app-note.is-play .an-b3{transform-origin:30.4px 38px;animation:ub-an-b3 var(--d) cubic-bezier(.3,.7,.2,1.3) infinite}
@keyframes ub-an-all{0%,100%{transform:rotate(0)}9%{transform:rotate(-4deg)}20%{transform:rotate(2.5deg)}30%{transform:rotate(-1deg)}38%{transform:rotate(0)}}
@keyframes ub-an-l1{0%{stroke-dashoffset:0}6%{stroke-dashoffset:-1}6.1%,12%{stroke-dashoffset:1}28%,100%{stroke-dashoffset:0}}
@keyframes ub-an-l2{0%{stroke-dashoffset:0}6%{stroke-dashoffset:-1}6.1%,28%{stroke-dashoffset:1}46%,100%{stroke-dashoffset:0}}
@keyframes ub-an-b1{0%{transform:scaleY(1);opacity:1}6%{transform:scaleY(.1);opacity:1}7%,44%{transform:scaleY(.1);opacity:0}45%{transform:scaleY(.2);opacity:1}56%{transform:scaleY(1.25)}64%,100%{transform:scaleY(1);opacity:1}}
@keyframes ub-an-b2{0%{transform:scaleY(1);opacity:1}6%{transform:scaleY(.1);opacity:1}7%,52%{transform:scaleY(.1);opacity:0}53%{transform:scaleY(.2);opacity:1}64%{transform:scaleY(1.18)}72%,100%{transform:scaleY(1);opacity:1}}
@keyframes ub-an-b3{0%{transform:scaleY(1);opacity:1}6%{transform:scaleY(.1);opacity:1}7%,60%{transform:scaleY(.1);opacity:0}61%{transform:scaleY(.2);opacity:1}72%{transform:scaleY(1.22)}80%,100%{transform:scaleY(1);opacity:1}}

.ub-ai--evaluation{--d:1.7s}
.ub-ai--evaluation .ev-ck{stroke-dasharray:1 1}
.ub-ai--evaluation.is-play .ev-all{transform-origin:24px 42px;animation:ub-ev-all var(--d) ease-in-out infinite}
.ub-ai--evaluation.is-play .ev-r1{animation:ub-ev-r1 var(--d) ease-in-out infinite}
.ub-ai--evaluation.is-play .ev-r2{animation:ub-ev-r2 var(--d) ease-in-out infinite}
.ub-ai--evaluation.is-play .ev-ck{transform-origin:24px 30px;animation:ub-ev-ck var(--d) cubic-bezier(.3,.7,.2,1.3) infinite}
@keyframes ub-ev-all{0%,100%{transform:rotate(0)}10%{transform:rotate(-5deg)}22%{transform:rotate(3.5deg)}34%{transform:rotate(-1.2deg)}44%{transform:rotate(0)}}
@keyframes ub-ev-r1{0%,24%,100%{transform:translateY(0)}11%{transform:translateY(-2.6px)}}
@keyframes ub-ev-r2{0%,6%,30%,100%{transform:translateY(0)}17%{transform:translateY(-2.6px)}}
@keyframes ub-ev-ck{0%{stroke-dashoffset:0;transform:scale(1)}8%{stroke-dashoffset:-1}8.1%,38%{stroke-dashoffset:1;transform:scale(1)}60%{stroke-dashoffset:0;transform:scale(1)}70%{transform:scale(1.22)}82%,100%{stroke-dashoffset:0;transform:scale(1)}}

.ub-ai--location{--d:1.7s}
.ub-ai--location.is-play .lc-pin{transform-origin:24px 39.5px;animation:ub-lc-pin var(--d) cubic-bezier(.4,0,.3,1) infinite}
.ub-ai--location.is-play .lc-rip{animation:ub-lc-rip var(--d) ease-out infinite}
.ub-ai--location.is-play .lc-dot{animation:ub-lc-dot var(--d) ease-in-out infinite}
@keyframes ub-lc-pin{0%,100%{transform:translateY(0) scale(1,1)}7%{transform:translateY(.6px) scale(1.05,.94)}20%{transform:translateY(-9.5px) scale(.96,1.05)}34%{transform:translateY(0) scale(1.09,.9)}44%{transform:translateY(-2.8px) scale(1,1)}54%{transform:translateY(0) scale(1.03,.96)}62%{transform:translateY(0) scale(1,1)}}
@keyframes ub-lc-rip{0%,100%{opacity:1;transform:scale(1)}12%,33%{opacity:0;transform:scale(.3)}36%{opacity:1;transform:scale(.5)}58%{opacity:0;transform:scale(1.7)}59%,70%{opacity:0;transform:scale(1)}86%{opacity:1;transform:scale(1)}}
@keyframes ub-lc-dot{0%,34%,100%{transform:scale(1)}43%{transform:scale(1.3)}54%{transform:scale(1)}}

.ub-ai--mail{--d:2s}
.ub-ai--mail .ml-badge{opacity:0}
.ub-ai--mail .ml-open{opacity:0;transform-origin:24px 15px;transform:scaleY(0)}
.ub-ai--mail .ml-flap{transform-origin:24px 15px}
.ub-ai--mail.is-play .ml-all{transform-origin:24px 39px;animation:ub-ml-all var(--d) ease-in-out infinite}
.ub-ai--mail.is-play .ml-flap{animation:ub-ml-flap var(--d) cubic-bezier(.5,0,.2,1) infinite}
.ub-ai--mail.is-play .ml-open{animation:ub-ml-open var(--d) cubic-bezier(.3,.6,.3,1) infinite}
.ub-ai--mail.is-play .ml-badge{animation:ub-ml-badge var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-ml-all{0%,100%{transform:translateY(0) rotate(0)}8%{transform:translateY(-3px) rotate(-3deg)}18%{transform:translateY(0) rotate(2deg)}26%{transform:translateY(0) rotate(0)}}
@keyframes ub-ml-flap{0%,28%{transform:scaleY(1)}34%,76%{transform:scaleY(0)}84%,100%{transform:scaleY(1)}}
@keyframes ub-ml-open{0%,34%{opacity:0;transform:scaleY(0)}34.5%{opacity:1;transform:scaleY(0)}42%{opacity:1;transform:scaleY(1.06)}46%,70%{opacity:1;transform:scaleY(1)}76%{opacity:1;transform:scaleY(0)}76.5%,100%{opacity:0;transform:scaleY(0)}}
@keyframes ub-ml-badge{0%,46%{opacity:1;transform:scale(0)}54%{opacity:1;transform:scale(1.2)}60%,66%{opacity:1;transform:scale(1)}72%,100%{opacity:1;transform:scale(0)}}

.ub-ai--tissue-lung{--d:2.1s}
.ub-ai--tissue-lung.is-play .lu-l{transform-origin:21px 13px;animation:ub-lu-br var(--d) ease-in-out infinite}
.ub-ai--tissue-lung.is-play .lu-r{transform-origin:27px 13px;animation:ub-lu-br var(--d) ease-in-out infinite}
@keyframes ub-lu-br{0%,100%{transform:scale(1)}30%{transform:scale(1.07)}60%{transform:scale(1)}}
.ub-ai--tissue-lung.is-play .lu-a0{animation:ub-lu-a0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lu-a0{0%{transform:scale(1)}6%,24%{transform:scale(0)}33%{transform:scale(1.3)}40%,100%{transform:scale(1)}}
.ub-ai--tissue-lung.is-play .lu-a1{animation:ub-lu-a1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lu-a1{0%{transform:scale(1)}6%,31%{transform:scale(0)}40%{transform:scale(1.3)}47%,100%{transform:scale(1)}}
.ub-ai--tissue-lung.is-play .lu-a2{animation:ub-lu-a2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lu-a2{0%{transform:scale(1)}6%,38%{transform:scale(0)}47%{transform:scale(1.3)}54%,100%{transform:scale(1)}}
.ub-ai--tissue-lung.is-play .lu-b0{animation:ub-lu-b0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lu-b0{0%{transform:scale(1)}6%,27.5%{transform:scale(0)}36.5%{transform:scale(1.3)}43.5%,100%{transform:scale(1)}}
.ub-ai--tissue-lung.is-play .lu-b1{animation:ub-lu-b1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lu-b1{0%{transform:scale(1)}6%,34.5%{transform:scale(0)}43.5%{transform:scale(1.3)}50.5%,100%{transform:scale(1)}}
.ub-ai--tissue-lung.is-play .lu-b2{animation:ub-lu-b2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lu-b2{0%{transform:scale(1)}6%,41.5%{transform:scale(0)}50.5%{transform:scale(1.3)}57.5%,100%{transform:scale(1)}}

.ub-ai--tissue-breast{--d:2.2s}
.ub-ai--tissue-breast.is-play .br-du{animation:ub-br-hold var(--d) linear infinite}
@keyframes ub-br-hold{0%,100%{opacity:1}50%{opacity:1}}
.ub-ai--tissue-breast.is-play .br-d0{animation:ub-br-d0 var(--d) ease-out infinite}
@keyframes ub-br-d0{0%,6%{stroke-dashoffset:0}6.1%,10%{stroke-dashoffset:1.1}32%,100%{stroke-dashoffset:0}}
.ub-ai--tissue-breast.is-play .br-d1{animation:ub-br-d1 var(--d) ease-out infinite}
@keyframes ub-br-d1{0%,6%{stroke-dashoffset:0}6.1%,12%{stroke-dashoffset:1.1}34%,100%{stroke-dashoffset:0}}
.ub-ai--tissue-breast.is-play .br-d2{animation:ub-br-d2 var(--d) ease-out infinite}
@keyframes ub-br-d2{0%,6%{stroke-dashoffset:0}6.1%,14%{stroke-dashoffset:1.1}36%,100%{stroke-dashoffset:0}}
.ub-ai--tissue-breast.is-play .br-d3{animation:ub-br-d3 var(--d) ease-out infinite}
@keyframes ub-br-d3{0%,6%{stroke-dashoffset:0}6.1%,26%{stroke-dashoffset:1.1}48%,100%{stroke-dashoffset:0}}
.ub-ai--tissue-breast.is-play .br-d4{animation:ub-br-d4 var(--d) ease-out infinite}
@keyframes ub-br-d4{0%,6%{stroke-dashoffset:0}6.1%,28%{stroke-dashoffset:1.1}50%,100%{stroke-dashoffset:0}}
.ub-ai--tissue-breast.is-play .br-l0{animation:ub-br-l0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-l0{0%{transform:scale(1)}6%,30%{transform:scale(0)}39%{transform:scale(1.3)}46%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-l1{animation:ub-br-l1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-l1{0%{transform:scale(1)}6%,33.2%{transform:scale(0)}42.2%{transform:scale(1.3)}49.2%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-l2{animation:ub-br-l2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-l2{0%{transform:scale(1)}6%,36.4%{transform:scale(0)}45.4%{transform:scale(1.3)}52.4%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-l3{animation:ub-br-l3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-l3{0%{transform:scale(1)}6%,39.6%{transform:scale(0)}48.6%{transform:scale(1.3)}55.6%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-l4{animation:ub-br-l4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-l4{0%{transform:scale(1)}6%,42.8%{transform:scale(0)}51.8%{transform:scale(1.3)}58.8%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-l5{animation:ub-br-l5 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-l5{0%{transform:scale(1)}6%,46%{transform:scale(0)}55%{transform:scale(1.3)}62%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-l6{animation:ub-br-l6 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-l6{0%{transform:scale(1)}6%,49.2%{transform:scale(0)}58.2%{transform:scale(1.3)}65.2%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-l7{animation:ub-br-l7 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-l7{0%{transform:scale(1)}6%,52.4%{transform:scale(0)}61.4%{transform:scale(1.3)}68.4%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-l8{animation:ub-br-l8 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-l8{0%{transform:scale(1)}6%,55.6%{transform:scale(0)}64.6%{transform:scale(1.3)}71.6%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-s0{animation:ub-br-s0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-s0{0%{transform:scale(1)}6%,46%{transform:scale(0)}55%{transform:scale(1.3)}62%,100%{transform:scale(1)}}
.ub-ai--tissue-breast.is-play .br-s1{animation:ub-br-s1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-br-s1{0%{transform:scale(1)}6%,49%{transform:scale(0)}58%{transform:scale(1.3)}65%,100%{transform:scale(1)}}

.ub-ai--tissue-colon{--d:2s}
.ub-ai--tissue-colon.is-play .co-c0{animation:ub-co-c0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-co-c0{0%{transform:scale(1)}6%,14%{transform:scale(0)}23%{transform:scale(1.3)}30%,100%{transform:scale(1)}}
.ub-ai--tissue-colon.is-play .co-c1{animation:ub-co-c1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-co-c1{0%{transform:scale(1)}6%,23%{transform:scale(0)}32%{transform:scale(1.3)}39%,100%{transform:scale(1)}}
.ub-ai--tissue-colon.is-play .co-c2{animation:ub-co-c2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-co-c2{0%{transform:scale(1)}6%,32%{transform:scale(0)}41%{transform:scale(1.3)}48%,100%{transform:scale(1)}}
.ub-ai--tissue-colon.is-play .co-c3{animation:ub-co-c3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-co-c3{0%{transform:scale(1)}6%,41%{transform:scale(0)}50%{transform:scale(1.3)}57%,100%{transform:scale(1)}}
.ub-ai--tissue-colon.is-play .co-c4{animation:ub-co-c4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-co-c4{0%{transform:scale(1)}6%,50%{transform:scale(0)}59%{transform:scale(1.3)}66%,100%{transform:scale(1)}}

.ub-ai--tissue-bone-marrow{--d:1.9s}
.ub-ai--tissue-bone-marrow.is-play .bm-c0{animation:ub-bm-c0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-bm-c0{0%{transform:scale(1)}6%,18%{transform:scale(0)}27%{transform:scale(1.3)}34%,100%{transform:scale(1)}}
.ub-ai--tissue-bone-marrow.is-play .bm-c1{animation:ub-bm-c1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-bm-c1{0%{transform:scale(1)}6%,28%{transform:scale(0)}37%{transform:scale(1.3)}44%,100%{transform:scale(1)}}
.ub-ai--tissue-bone-marrow.is-play .bm-c2{animation:ub-bm-c2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-bm-c2{0%{transform:scale(1)}6%,38%{transform:scale(0)}47%{transform:scale(1.3)}54%,100%{transform:scale(1)}}
.ub-ai--tissue-bone-marrow.is-play .bm-c3{animation:ub-bm-c3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-bm-c3{0%{transform:scale(1)}6%,48%{transform:scale(0)}57%{transform:scale(1.3)}64%,100%{transform:scale(1)}}

.ub-ai--tissue-skin{--d:2.1s}
.ub-ai--tissue-skin.is-play .sk-h{animation:ub-sk-h var(--d) ease-in-out infinite}
@keyframes ub-sk-h{0%,6%{stroke-dashoffset:0}6.1%,16%{stroke-dashoffset:1.1}52%,100%{stroke-dashoffset:0}}
.ub-ai--tissue-skin.is-play .sk-b{animation:ub-sk-b var(--d) ease-in-out infinite}
@keyframes ub-sk-b{0%,100%{transform:scale(1)}10%{transform:scale(1.35)}22%{transform:scale(1)}}
.ub-ai--tissue-skin.is-play .sk-c0{animation:ub-sk-c0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sk-c0{0%{transform:scale(1)}6%,34%{transform:scale(0)}43%{transform:scale(1.3)}50%,100%{transform:scale(1)}}
.ub-ai--tissue-skin.is-play .sk-c1{animation:ub-sk-c1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sk-c1{0%{transform:scale(1)}6%,39%{transform:scale(0)}48%{transform:scale(1.3)}55%,100%{transform:scale(1)}}
.ub-ai--tissue-skin.is-play .sk-c2{animation:ub-sk-c2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sk-c2{0%{transform:scale(1)}6%,44%{transform:scale(0)}53%{transform:scale(1.3)}60%,100%{transform:scale(1)}}
.ub-ai--tissue-skin.is-play .sk-c3{animation:ub-sk-c3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sk-c3{0%{transform:scale(1)}6%,49%{transform:scale(0)}58%{transform:scale(1.3)}65%,100%{transform:scale(1)}}
.ub-ai--tissue-skin.is-play .sk-c4{animation:ub-sk-c4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-sk-c4{0%{transform:scale(1)}6%,54%{transform:scale(0)}63%{transform:scale(1.3)}70%,100%{transform:scale(1)}}

.ub-ai--tissue-liver{--d:1.9s}
.ub-ai--tissue-liver.is-play .lv-v{animation:ub-lv-v var(--d) ease-in-out infinite}
@keyframes ub-lv-v{0%,100%{transform:scale(1)}8%{transform:scale(.7)}18%{transform:scale(1.15)}28%{transform:scale(1)}}
.ub-ai--tissue-liver.is-play .lv-c0{animation:ub-lv-c0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lv-c0{0%{transform:scale(1)}6%,20%{transform:scale(0)}29%{transform:scale(1.3)}36%,100%{transform:scale(1)}}
.ub-ai--tissue-liver.is-play .lv-c1{animation:ub-lv-c1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lv-c1{0%{transform:scale(1)}6%,25.5%{transform:scale(0)}34.5%{transform:scale(1.3)}41.5%,100%{transform:scale(1)}}
.ub-ai--tissue-liver.is-play .lv-c2{animation:ub-lv-c2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lv-c2{0%{transform:scale(1)}6%,31%{transform:scale(0)}40%{transform:scale(1.3)}47%,100%{transform:scale(1)}}
.ub-ai--tissue-liver.is-play .lv-c3{animation:ub-lv-c3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lv-c3{0%{transform:scale(1)}6%,36.5%{transform:scale(0)}45.5%{transform:scale(1.3)}52.5%,100%{transform:scale(1)}}
.ub-ai--tissue-liver.is-play .lv-c4{animation:ub-lv-c4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lv-c4{0%{transform:scale(1)}6%,42%{transform:scale(0)}51%{transform:scale(1.3)}58%,100%{transform:scale(1)}}
.ub-ai--tissue-liver.is-play .lv-c5{animation:ub-lv-c5 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-lv-c5{0%{transform:scale(1)}6%,47.5%{transform:scale(0)}56.5%{transform:scale(1.3)}63.5%,100%{transform:scale(1)}}

.ub-ai--tissue-pancreas{--d:2s}
.ub-ai--tissue-pancreas.is-play .pa-du{animation:ub-pa-du var(--d) ease-in-out infinite}
@keyframes ub-pa-du{0%,6%{stroke-dashoffset:0}6.1%,12%{stroke-dashoffset:1.1}44%,100%{stroke-dashoffset:0}}
.ub-ai--tissue-pancreas.is-play .pa-c0{animation:ub-pa-c0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pa-c0{0%{transform:scale(1)}6%,20%{transform:scale(0)}29%{transform:scale(1.3)}36%,100%{transform:scale(1)}}
.ub-ai--tissue-pancreas.is-play .pa-c1{animation:ub-pa-c1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pa-c1{0%{transform:scale(1)}6%,27%{transform:scale(0)}36%{transform:scale(1.3)}43%,100%{transform:scale(1)}}
.ub-ai--tissue-pancreas.is-play .pa-c2{animation:ub-pa-c2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pa-c2{0%{transform:scale(1)}6%,34%{transform:scale(0)}43%{transform:scale(1.3)}50%,100%{transform:scale(1)}}
.ub-ai--tissue-pancreas.is-play .pa-c3{animation:ub-pa-c3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pa-c3{0%{transform:scale(1)}6%,41%{transform:scale(0)}50%{transform:scale(1.3)}57%,100%{transform:scale(1)}}
.ub-ai--tissue-pancreas.is-play .pa-c4{animation:ub-pa-c4 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pa-c4{0%{transform:scale(1)}6%,48%{transform:scale(0)}57%{transform:scale(1.3)}64%,100%{transform:scale(1)}}

.ub-ai--tissue-ovary{--d:2.2s}
.ub-ai--tissue-ovary.is-play .ov-f{transform-origin:28.6px 23.4px;animation:ub-ov-f var(--d) cubic-bezier(.3,.7,.2,1.2) infinite}
@keyframes ub-ov-f{0%,100%{transform:scale(1)}8%,16%{transform:scale(.55)}48%{transform:scale(1.08)}58%{transform:scale(1)}}
.ub-ai--tissue-ovary.is-play .ov-o{animation:ub-ov-o var(--d) ease-in-out infinite}
@keyframes ub-ov-o{0%,48%,100%{transform:scale(1)}56%{transform:scale(1.3)}66%{transform:scale(1)}}
.ub-ai--tissue-ovary.is-play .ov-s0{transform-origin:13.6px 22.2px;animation:ub-ov-s0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-ov-s0{0%{transform:scale(1)}6%,22%{transform:scale(0)}31%{transform:scale(1.25)}38%,100%{transform:scale(1)}}
.ub-ai--tissue-ovary.is-play .ov-s1{transform-origin:17.4px 31.4px;animation:ub-ov-s1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-ov-s1{0%{transform:scale(1)}6%,29%{transform:scale(0)}38%{transform:scale(1.25)}45%,100%{transform:scale(1)}}
.ub-ai--tissue-ovary.is-play .ov-s2{transform-origin:36.6px 31.4px;animation:ub-ov-s2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-ov-s2{0%{transform:scale(1)}6%,36%{transform:scale(0)}45%{transform:scale(1.25)}52%,100%{transform:scale(1)}}
.ub-ai--tissue-ovary.is-play .ov-s3{transform-origin:19.6px 16.2px;animation:ub-ov-s3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-ov-s3{0%{transform:scale(1)}6%,43%{transform:scale(0)}52%{transform:scale(1.25)}59%,100%{transform:scale(1)}}

.ub-ai--tissue-prostate{--d:2s}
.ub-ai--tissue-prostate.is-play .pr-bl{transform-origin:24px 26px;animation:ub-pr-bl var(--d) ease-in-out infinite}
@keyframes ub-pr-bl{0%,100%{transform:scale(1)}14%{transform:scale(1.05,.94)}30%{transform:scale(1)}}
.ub-ai--tissue-prostate.is-play .pr-c0{animation:ub-pr-c0 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pr-c0{0%{transform:scale(1)}6%,22%{transform:scale(0)}31%{transform:scale(1.3)}38%,100%{transform:scale(1)}}
.ub-ai--tissue-prostate.is-play .pr-c1{animation:ub-pr-c1 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pr-c1{0%{transform:scale(1)}6%,30%{transform:scale(0)}39%{transform:scale(1.3)}46%,100%{transform:scale(1)}}
.ub-ai--tissue-prostate.is-play .pr-c2{animation:ub-pr-c2 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pr-c2{0%{transform:scale(1)}6%,38%{transform:scale(0)}47%{transform:scale(1.3)}54%,100%{transform:scale(1)}}
.ub-ai--tissue-prostate.is-play .pr-c3{animation:ub-pr-c3 var(--d) cubic-bezier(.3,.7,.2,1.4) infinite}
@keyframes ub-pr-c3{0%{transform:scale(1)}6%,46%{transform:scale(0)}55%{transform:scale(1.3)}62%,100%{transform:scale(1)}}
