.ktile:hover{box-shadow:0 18px 40px rgba(11,21,32,.28)}
.krow + .krow{border-top:1px solid #1C2F41}
.jrow + .jrow{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}}
@media (prefers-reduced-motion:no-preference){
.klingel{animation:klingel 1.6s ease-out infinite}
@keyframes klingel{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.7);opacity:0}}
.wb{transform-origin:center;animation:wb 1.2s ease-in-out infinite}
@keyframes wb{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
.txtA{animation:txtA 10s steps(30) infinite}
@keyframes txtA{0%,10%{max-width:0}32%,94%{max-width:260px}100%{max-width:260px}}
.txtB{animation:txtB 10s steps(25) infinite}
@keyframes txtB{0%,34%{max-width:0}54%,94%{max-width:260px}100%{max-width:260px}}
.notiz{animation:notiz 10s infinite}
@keyframes notiz{0%,58%{opacity:.25;transform:translateY(6px)}64%,96%{opacity:1;transform:none}100%{opacity:.25}}
}
@media (max-width:640px){.track{display:none}.mwrap{white-space:normal !important}.angrid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}.jhead{display:none !important}.jrow{grid-template-columns:36px minmax(0,1fr) auto !important}.jrow > span:last-child{display:none}}
@media (prefers-reduced-motion:reduce){.pulse{animation:none}.packet,.trackDot{display:none}}
