/* Keyframes and registered properties.
   Animation usage lives with each component; these are the shared definitions. */
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes wmUp{from{transform:translateY(45%);opacity:.2}to{transform:none;opacity:1}}
@keyframes mvUp{to{transform:translateY(-100%);visibility:hidden}}
@keyframes mvWords{0%{transform:translateY(-0.0em)}10%{transform:translateY(-1.1em)}20%{transform:translateY(-2.2em)}30%{transform:translateY(-3.3em)}40%{transform:translateY(-4.4em)}50%{transform:translateY(-5.5em)}60%{transform:translateY(-6.6em)}70%{transform:translateY(-7.7em)}80%,100%{transform:translateY(-8.8em)}}
@keyframes dotPop{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes avPop{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes tipFlash{0%{opacity:0;transform:translateY(-4px)}12%,78%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-4px)}}
@keyframes bubPop{0%{opacity:0;transform:scale(0) rotate(-24deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes hdrIn{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}
@keyframes lineUp{from{transform:translateY(112%)}to{transform:none}}
@keyframes fadeUp{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes sheetUp{from{transform:translateY(100%)}to{transform:none}}
@keyframes hlIn{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes marq{to{transform:translateX(-50%)}}
@keyframes rot{to{transform:rotate(360deg)}}
@keyframes spin{to{--ang:360deg}}
@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--acc) 55%,transparent)}100%{box-shadow:0 0 0 10px color-mix(in srgb,var(--acc) 0%,transparent)}}
@keyframes fc1{0%,100%{transform:translate(0,0)}30%{transform:translate(-60px,40px)}60%{transform:translate(30px,70px)}}
@keyframes itIn{from{opacity:0;transform:scale(.5) rotate(-10deg)}to{opacity:1;transform:var(--tf, none)}}
@keyframes eq{from{transform:scaleY(.25)}to{transform:scaleY(1)}}
@keyframes typing{0%,60%,100%{transform:translateY(0);opacity:.35}30%{transform:translateY(-4px);opacity:1}}
@keyframes floaty{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes blink{50%{opacity:0}}
@keyframes shimmer{to{background-position:-200% 0}}
@keyframes slotFlip{0%,2%{transform:rotateY(0deg)}13%,57%{transform:rotateY(180deg)}68%,100%{transform:rotateY(360deg)}}
@keyframes tick4{0%,18%{transform:translateY(0)}25%,43%{transform:translateY(-20%)}50%,68%{transform:translateY(-40%)}75%,93%{transform:translateY(-60%)}100%{transform:translateY(-80%)}}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -6px}}
@keyframes beam{from{background-position:-60% 0}to{background-position:160% 0}}
@keyframes wpBlk{0%{transform:scaleX(0);transform-origin:left}45%{transform:scaleX(1);transform-origin:left}45.01%{transform:scaleX(1);transform-origin:right}100%{transform:scaleX(0);transform-origin:right}}
@keyframes wpTxt{0%,20%{color:transparent}21%,62%{color:var(--color-bg)}70%,100%{color:var(--color-fg)}}
@keyframes it2Flip{0%,2%{transform:rotateY(0)}5%,12%{transform:rotateY(180deg)}15%,100%{transform:rotateY(360deg)}}
@keyframes tqp{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes pulseD{0%{box-shadow:0 0 0 0 var(--color-bg-a45)}100%{box-shadow:0 0 0 10px var(--color-bg-a00)}}
@keyframes sfFlip{0%,6%{transform:rotateY(0)}12%,30%{transform:rotateY(180deg)}36%,100%{transform:rotateY(360deg)}}
@keyframes progG{to{transform:scaleX(1)}}
@keyframes sdUp{from{opacity:0;translate:0 56px}}
@keyframes sdH{from{opacity:0;translate:0 .45em}}
@keyframes sdCard{from{opacity:0;translate:0 80px;scale:.94}}
@keyframes pfill{from{background:transparent;border-color:var(--color-bg-a20);color:var(--color-bg-a50)}}
@keyframes vq{0%,100%{height:5px}50%{height:12px}}
@keyframes moreIn{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
@keyframes orbSpin{to{transform:rotate(360deg)}}
@keyframes orbIn{from{opacity:0;transform:scale(.6) rotate(-40deg)}to{opacity:1;transform:none}}
