.blink{animation:blink 1.1s steps(1) infinite}
@keyframes blink{0%,55%{opacity:1}56%,100%{opacity:.15}}
.ktile:hover{box-shadow:0 18px 40px rgba(11,21,32,.28)}
.krow + .krow{border-top:1px solid #1C2F41}
.track{background-image:linear-gradient(90deg,#2E4A63 50%,transparent 0);background-size:10px 2px}
.trackDot{position:absolute;top:-5px;left:0;width:12px;height:12px;border-radius:50%;background:#5BADDD;box-shadow:0 0 0 5px rgba(91,173,221,.22);animation:trackRun 7s linear infinite}
@keyframes trackRun{0%{left:0;opacity:0}5%{opacity:1}95%{opacity:1}100%{left:calc(100% - 12px);opacity:0}}
.flowdot{top:0}
@media (prefers-reduced-motion:no-preference){
.flowdot{animation:flowdot 10s linear infinite}
@keyframes flowdot{0%{top:0%}10%{top:0%}20%{top:25%}30%{top:25%}40%{top:50%}50%{top:50%}60%{top:75%}70%{top:75%}80%{top:calc(100% - 10px)}100%{top:calc(100% - 10px)}}
.bs0{animation:bs0 10s infinite}@keyframes bs0{0%,0%{background-color:#132536;border-color:#22374B}1%,14%{background-color:#16304A;border-color:#5BADDD}16%,100%{background-color:#132536;border-color:#22374B}}
.bs1{animation:bs1 10s infinite}@keyframes bs1{0%,15%{background-color:#132536;border-color:#22374B}17%,32%{background-color:#16304A;border-color:#5BADDD}34%,100%{background-color:#132536;border-color:#22374B}}
.bs2{animation:bs2 10s infinite}@keyframes bs2{0%,33%{background-color:#132536;border-color:#22374B}35%,52%{background-color:#16304A;border-color:#5BADDD}54%,100%{background-color:#132536;border-color:#22374B}}
.bs3{animation:bs3 10s infinite}@keyframes bs3{0%,53%{background-color:#132536;border-color:#22374B}55%,72%{background-color:#16304A;border-color:#5BADDD}74%,100%{background-color:#132536;border-color:#22374B}}
.bs4{animation:bs4 10s infinite}@keyframes bs4{0%,73%{background-color:#132536;border-color:#22374B}75%,96%{background-color:#16304A;border-color:#5BADDD}98%,100%{background-color:#132536;border-color:#22374B}}
.bestAlt{animation:bestAlt 10s infinite}@keyframes bestAlt{0%,38%{opacity:1}40%,100%{opacity:0}}
.bestNeu{animation:bestNeu 10s infinite}@keyframes bestNeu{0%,38%{opacity:0}40%,100%{opacity:1}}
.ly{animation-duration:9s;animation-iteration-count:infinite;animation-timing-function:ease-out}
.ly4{animation-name:ly4}.ly3{animation-name:ly3}.ly2{animation-name:ly2}.ly1{animation-name:ly1}
@keyframes ly4{0%{opacity:0;transform:translateY(14px)}6%,92%{opacity:1;transform:none}100%{opacity:0}}
@keyframes ly3{0%,10%{opacity:0;transform:translateY(14px)}16%,92%{opacity:1;transform:none}100%{opacity:0}}
@keyframes ly2{0%,20%{opacity:0;transform:translateY(14px)}26%,92%{opacity:1;transform:none}100%{opacity:0}}
@keyframes ly1{0%,30%{opacity:0;transform:translateY(14px)}38%,92%{opacity:1;transform:none}100%{opacity:0}}
.lastbar,.lastbar2{transform-box:fill-box;transform-origin:50% 100%}
.lastbar{animation:lastbar 6s ease-in-out infinite}@keyframes lastbar{0%{transform:scaleY(.3)}35%,100%{transform:scaleY(.92)}}
.lastbar2{animation:lastbar2 6s ease-in-out infinite}@keyframes lastbar2{0%,35%{transform:scaleY(0)}60%,100%{transform:scaleY(.6)}}
}
@media (max-width:640px){.track{display:none}.mwrap{white-space:normal !important}.bsgrid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}.bsgrid svg{display:none}}
@media (min-width:641px) and (max-width:1100px){.bsgrid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}}
@media (prefers-reduced-motion:reduce){.pulse,.blink{animation:none}.packet,.trackDot,.flowdot{display:none}}
