@-webkit-keyframes spin { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes spin { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes scrollRightText { 
  0% { transform: translate(-100%); }
  100% { transform: translate(0px); }
}
@keyframes scrollLeftText { 
  0% { transform: translate(0px); }
  100% { transform: translate(-100%); }
}
@keyframes rollCircle { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(1turn); }
}
@keyframes festivalOverlap2 { 
  0%, 45%, 100% { transform: translateY(0px); }
  50%, 95% { transform: translateY(-14px); }
}
@keyframes festivalOverlap3 { 
  0%, 20%, 100% { transform: translateY(0px); }
  25%, 45%, 75%, 95% { transform: translateY(-14px); }
  50%, 70% { transform: translateY(-28px); }
}
@keyframes bounce { 
  0%, 100% { transform: scale(0); }
  50% { transform: scale(1); }
}
@keyframes rollCircle { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes moveCopyCellBorder { 
  100% { background-position: 0px -12px, 100% 12px, 12px 0px, -12px 100%; }
}
@-webkit-keyframes bounce { 
  0%, 20%, 53%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transform: translateZ(0px); }
  40%, 43% { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); transform: translate3d(0px, -30px, 0px) scaleY(1.1); }
  70% { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); transform: translate3d(0px, -15px, 0px) scaleY(1.05); }
  80% { transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transform: translateZ(0px) scaleY(0.95); }
  90% { transform: translate3d(0px, -4px, 0px) scaleY(1.02); }
}
@keyframes bounce { 
  0%, 20%, 53%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transform: translateZ(0px); }
  40%, 43% { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); transform: translate3d(0px, -30px, 0px) scaleY(1.1); }
  70% { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); transform: translate3d(0px, -15px, 0px) scaleY(1.05); }
  80% { transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transform: translateZ(0px) scaleY(0.95); }
  90% { transform: translate3d(0px, -4px, 0px) scaleY(1.02); }
}
@-webkit-keyframes flash { 
  0%, 50%, 100% { opacity: 1; }
  25%, 75% { opacity: 0; }
}
@keyframes flash { 
  0%, 50%, 100% { opacity: 1; }
  25%, 75% { opacity: 0; }
}
@-webkit-keyframes pulse { 
  0% { transform: scaleZ(1); }
  50% { transform: scale3d(1.05, 1.05, 1.05); }
  100% { transform: scaleZ(1); }
}
@keyframes pulse { 
  0% { transform: scaleZ(1); }
  50% { transform: scale3d(1.05, 1.05, 1.05); }
  100% { transform: scaleZ(1); }
}
@-webkit-keyframes rubberBand { 
  0% { transform: scaleZ(1); }
  30% { transform: scale3d(1.25, 0.75, 1); }
  40% { transform: scale3d(0.75, 1.25, 1); }
  50% { transform: scale3d(1.15, 0.85, 1); }
  65% { transform: scale3d(0.95, 1.05, 1); }
  75% { transform: scale3d(1.05, 0.95, 1); }
  100% { transform: scaleZ(1); }
}
@keyframes rubberBand { 
  0% { transform: scaleZ(1); }
  30% { transform: scale3d(1.25, 0.75, 1); }
  40% { transform: scale3d(0.75, 1.25, 1); }
  50% { transform: scale3d(1.15, 0.85, 1); }
  65% { transform: scale3d(0.95, 1.05, 1); }
  75% { transform: scale3d(1.05, 0.95, 1); }
  100% { transform: scaleZ(1); }
}
@-webkit-keyframes shakeX { 
  0%, 100% { transform: translateZ(0px); }
  10%, 30%, 50%, 70%, 90% { transform: translate3d(-10px, 0px, 0px); }
  20%, 40%, 60%, 80% { transform: translate3d(10px, 0px, 0px); }
}
@keyframes shakeX { 
  0%, 100% { transform: translateZ(0px); }
  10%, 30%, 50%, 70%, 90% { transform: translate3d(-10px, 0px, 0px); }
  20%, 40%, 60%, 80% { transform: translate3d(10px, 0px, 0px); }
}
@-webkit-keyframes shakeY { 
  0%, 100% { transform: translateZ(0px); }
  10%, 30%, 50%, 70%, 90% { transform: translate3d(0px, -10px, 0px); }
  20%, 40%, 60%, 80% { transform: translate3d(0px, 10px, 0px); }
}
@keyframes shakeY { 
  0%, 100% { transform: translateZ(0px); }
  10%, 30%, 50%, 70%, 90% { transform: translate3d(0px, -10px, 0px); }
  20%, 40%, 60%, 80% { transform: translate3d(0px, 10px, 0px); }
}
@-webkit-keyframes headShake { 
  0% { transform: translate(0px); }
  6.5% { transform: translate(-6px) rotateY(-9deg); }
  18.5% { transform: translate(5px) rotateY(7deg); }
  31.5% { transform: translate(-3px) rotateY(-5deg); }
  43.5% { transform: translate(2px) rotateY(3deg); }
  50% { transform: translate(0px); }
}
@keyframes headShake { 
  0% { transform: translate(0px); }
  6.5% { transform: translate(-6px) rotateY(-9deg); }
  18.5% { transform: translate(5px) rotateY(7deg); }
  31.5% { transform: translate(-3px) rotateY(-5deg); }
  43.5% { transform: translate(2px) rotateY(3deg); }
  50% { transform: translate(0px); }
}
@-webkit-keyframes swing { 
  20% { transform: rotate3d(0, 0, 1, 15deg); }
  40% { transform: rotate3d(0, 0, 1, -10deg); }
  60% { transform: rotate3d(0, 0, 1, 5deg); }
  80% { transform: rotate3d(0, 0, 1, -5deg); }
  100% { transform: rotate3d(0, 0, 1, 0deg); }
}
@keyframes swing { 
  20% { transform: rotate3d(0, 0, 1, 15deg); }
  40% { transform: rotate3d(0, 0, 1, -10deg); }
  60% { transform: rotate3d(0, 0, 1, 5deg); }
  80% { transform: rotate3d(0, 0, 1, -5deg); }
  100% { transform: rotate3d(0, 0, 1, 0deg); }
}
@-webkit-keyframes tada { 
  0% { transform: scaleZ(1); }
  10%, 20% { transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% { transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% { transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  100% { transform: scaleZ(1); }
}
@keyframes tada { 
  0% { transform: scaleZ(1); }
  10%, 20% { transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% { transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% { transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  100% { transform: scaleZ(1); }
}
@-webkit-keyframes wobble { 
  0% { transform: translateZ(0px); }
  15% { transform: translate3d(-25%, 0px, 0px) rotate3d(0, 0, 1, -5deg); }
  30% { transform: translate3d(20%, 0px, 0px) rotate3d(0, 0, 1, 3deg); }
  45% { transform: translate3d(-15%, 0px, 0px) rotate3d(0, 0, 1, -3deg); }
  60% { transform: translate3d(10%, 0px, 0px) rotate3d(0, 0, 1, 2deg); }
  75% { transform: translate3d(-5%, 0px, 0px) rotate3d(0, 0, 1, -1deg); }
  100% { transform: translateZ(0px); }
}
@keyframes wobble { 
  0% { transform: translateZ(0px); }
  15% { transform: translate3d(-25%, 0px, 0px) rotate3d(0, 0, 1, -5deg); }
  30% { transform: translate3d(20%, 0px, 0px) rotate3d(0, 0, 1, 3deg); }
  45% { transform: translate3d(-15%, 0px, 0px) rotate3d(0, 0, 1, -3deg); }
  60% { transform: translate3d(10%, 0px, 0px) rotate3d(0, 0, 1, 2deg); }
  75% { transform: translate3d(-5%, 0px, 0px) rotate3d(0, 0, 1, -1deg); }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes jello { 
  0%, 11.1%, 100% { transform: translateZ(0px); }
  22.2% { transform: skew(-12.5deg) skewY(-12.5deg); }
  33.3% { transform: skew(6.25deg) skewY(6.25deg); }
  44.4% { transform: skew(-3.125deg) skewY(-3.125deg); }
  55.5% { transform: skew(1.5625deg) skewY(1.5625deg); }
  66.6% { transform: skew(-0.78125deg) skewY(-0.78125deg); }
  77.7% { transform: skew(0.390625deg) skewY(0.390625deg); }
  88.8% { transform: skew(-0.195312deg) skewY(-0.195312deg); }
}
@keyframes jello { 
  0%, 11.1%, 100% { transform: translateZ(0px); }
  22.2% { transform: skew(-12.5deg) skewY(-12.5deg); }
  33.3% { transform: skew(6.25deg) skewY(6.25deg); }
  44.4% { transform: skew(-3.125deg) skewY(-3.125deg); }
  55.5% { transform: skew(1.5625deg) skewY(1.5625deg); }
  66.6% { transform: skew(-0.78125deg) skewY(-0.78125deg); }
  77.7% { transform: skew(0.390625deg) skewY(0.390625deg); }
  88.8% { transform: skew(-0.195312deg) skewY(-0.195312deg); }
}
@-webkit-keyframes heartBeat { 
  0% { transform: scale(1); }
  14% { transform: scale(1.3); }
  28% { transform: scale(1); }
  42% { transform: scale(1.3); }
  70% { transform: scale(1); }
}
@keyframes heartBeat { 
  0% { transform: scale(1); }
  14% { transform: scale(1.3); }
  28% { transform: scale(1); }
  42% { transform: scale(1.3); }
  70% { transform: scale(1); }
}
@-webkit-keyframes backInDown { 
  0% { transform: translateY(-1200px) scale(0.7); opacity: 0.7; }
  80% { transform: translateY(0px) scale(0.7); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes backInDown { 
  0% { transform: translateY(-1200px) scale(0.7); opacity: 0.7; }
  80% { transform: translateY(0px) scale(0.7); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}
@-webkit-keyframes backInLeft { 
  0% { transform: translate(-2000px) scale(0.7); opacity: 0.7; }
  80% { transform: translate(0px) scale(0.7); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes backInLeft { 
  0% { transform: translate(-2000px) scale(0.7); opacity: 0.7; }
  80% { transform: translate(0px) scale(0.7); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}
@-webkit-keyframes backInRight { 
  0% { transform: translate(2000px) scale(0.7); opacity: 0.7; }
  80% { transform: translate(0px) scale(0.7); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes backInRight { 
  0% { transform: translate(2000px) scale(0.7); opacity: 0.7; }
  80% { transform: translate(0px) scale(0.7); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}
@-webkit-keyframes backInUp { 
  0% { transform: translateY(1200px) scale(0.7); opacity: 0.7; }
  80% { transform: translateY(0px) scale(0.7); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes backInUp { 
  0% { transform: translateY(1200px) scale(0.7); opacity: 0.7; }
  80% { transform: translateY(0px) scale(0.7); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}
@-webkit-keyframes backOutDown { 
  0% { transform: scale(1); opacity: 1; }
  20% { transform: translateY(0px) scale(0.7); opacity: 0.7; }
  100% { transform: translateY(700px) scale(0.7); opacity: 0.7; }
}
@keyframes backOutDown { 
  0% { transform: scale(1); opacity: 1; }
  20% { transform: translateY(0px) scale(0.7); opacity: 0.7; }
  100% { transform: translateY(700px) scale(0.7); opacity: 0.7; }
}
@-webkit-keyframes backOutLeft { 
  0% { transform: scale(1); opacity: 1; }
  20% { transform: translate(0px) scale(0.7); opacity: 0.7; }
  100% { transform: translate(-2000px) scale(0.7); opacity: 0.7; }
}
@keyframes backOutLeft { 
  0% { transform: scale(1); opacity: 1; }
  20% { transform: translate(0px) scale(0.7); opacity: 0.7; }
  100% { transform: translate(-2000px) scale(0.7); opacity: 0.7; }
}
@-webkit-keyframes backOutRight { 
  0% { transform: scale(1); opacity: 1; }
  20% { transform: translate(0px) scale(0.7); opacity: 0.7; }
  100% { transform: translate(2000px) scale(0.7); opacity: 0.7; }
}
@keyframes backOutRight { 
  0% { transform: scale(1); opacity: 1; }
  20% { transform: translate(0px) scale(0.7); opacity: 0.7; }
  100% { transform: translate(2000px) scale(0.7); opacity: 0.7; }
}
@-webkit-keyframes backOutUp { 
  0% { transform: scale(1); opacity: 1; }
  20% { transform: translateY(0px) scale(0.7); opacity: 0.7; }
  100% { transform: translateY(-700px) scale(0.7); opacity: 0.7; }
}
@keyframes backOutUp { 
  0% { transform: scale(1); opacity: 1; }
  20% { transform: translateY(0px) scale(0.7); opacity: 0.7; }
  100% { transform: translateY(-700px) scale(0.7); opacity: 0.7; }
}
@-webkit-keyframes bounceIn { 
  0%, 20%, 40%, 60%, 80%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  20% { transform: scale3d(1.1, 1.1, 1.1); }
  40% { transform: scale3d(0.9, 0.9, 0.9); }
  60% { opacity: 1; transform: scale3d(1.03, 1.03, 1.03); }
  80% { transform: scale3d(0.97, 0.97, 0.97); }
  100% { opacity: 1; transform: scaleZ(1); }
}
@keyframes bounceIn { 
  0%, 20%, 40%, 60%, 80%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  20% { transform: scale3d(1.1, 1.1, 1.1); }
  40% { transform: scale3d(0.9, 0.9, 0.9); }
  60% { opacity: 1; transform: scale3d(1.03, 1.03, 1.03); }
  80% { transform: scale3d(0.97, 0.97, 0.97); }
  100% { opacity: 1; transform: scaleZ(1); }
}
@-webkit-keyframes bounceInDown { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(0px, -3000px, 0px) scaleY(3); }
  60% { opacity: 1; transform: translate3d(0px, 25px, 0px) scaleY(0.9); }
  75% { transform: translate3d(0px, -10px, 0px) scaleY(0.95); }
  90% { transform: translate3d(0px, 5px, 0px) scaleY(0.985); }
  100% { transform: translateZ(0px); }
}
@keyframes bounceInDown { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(0px, -3000px, 0px) scaleY(3); }
  60% { opacity: 1; transform: translate3d(0px, 25px, 0px) scaleY(0.9); }
  75% { transform: translate3d(0px, -10px, 0px) scaleY(0.95); }
  90% { transform: translate3d(0px, 5px, 0px) scaleY(0.985); }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes bounceInLeft { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(-3000px, 0px, 0px) scaleX(3); }
  60% { opacity: 1; transform: translate3d(25px, 0px, 0px) scaleX(1); }
  75% { transform: translate3d(-10px, 0px, 0px) scaleX(0.98); }
  90% { transform: translate3d(5px, 0px, 0px) scaleX(0.995); }
  100% { transform: translateZ(0px); }
}
@keyframes bounceInLeft { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(-3000px, 0px, 0px) scaleX(3); }
  60% { opacity: 1; transform: translate3d(25px, 0px, 0px) scaleX(1); }
  75% { transform: translate3d(-10px, 0px, 0px) scaleX(0.98); }
  90% { transform: translate3d(5px, 0px, 0px) scaleX(0.995); }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes bounceInRight { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(3000px, 0px, 0px) scaleX(3); }
  60% { opacity: 1; transform: translate3d(-25px, 0px, 0px) scaleX(1); }
  75% { transform: translate3d(10px, 0px, 0px) scaleX(0.98); }
  90% { transform: translate3d(-5px, 0px, 0px) scaleX(0.995); }
  100% { transform: translateZ(0px); }
}
@keyframes bounceInRight { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(3000px, 0px, 0px) scaleX(3); }
  60% { opacity: 1; transform: translate3d(-25px, 0px, 0px) scaleX(1); }
  75% { transform: translate3d(10px, 0px, 0px) scaleX(0.98); }
  90% { transform: translate3d(-5px, 0px, 0px) scaleX(0.995); }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes bounceInUp { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(0px, 3000px, 0px) scaleY(5); }
  60% { opacity: 1; transform: translate3d(0px, -20px, 0px) scaleY(0.9); }
  75% { transform: translate3d(0px, 10px, 0px) scaleY(0.95); }
  90% { transform: translate3d(0px, -5px, 0px) scaleY(0.985); }
  100% { transform: translateZ(0px); }
}
@keyframes bounceInUp { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(0px, 3000px, 0px) scaleY(5); }
  60% { opacity: 1; transform: translate3d(0px, -20px, 0px) scaleY(0.9); }
  75% { transform: translate3d(0px, 10px, 0px) scaleY(0.95); }
  90% { transform: translate3d(0px, -5px, 0px) scaleY(0.985); }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes bounceOut { 
  20% { transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% { opacity: 1; transform: scale3d(1.1, 1.1, 1.1); }
  100% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
}
@keyframes bounceOut { 
  20% { transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% { opacity: 1; transform: scale3d(1.1, 1.1, 1.1); }
  100% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
}
@-webkit-keyframes bounceOutDown { 
  20% { transform: translate3d(0px, 10px, 0px) scaleY(0.985); }
  40%, 45% { opacity: 1; transform: translate3d(0px, -20px, 0px) scaleY(0.9); }
  100% { opacity: 0; transform: translate3d(0px, 2000px, 0px) scaleY(3); }
}
@keyframes bounceOutDown { 
  20% { transform: translate3d(0px, 10px, 0px) scaleY(0.985); }
  40%, 45% { opacity: 1; transform: translate3d(0px, -20px, 0px) scaleY(0.9); }
  100% { opacity: 0; transform: translate3d(0px, 2000px, 0px) scaleY(3); }
}
@-webkit-keyframes bounceOutLeft { 
  20% { opacity: 1; transform: translate3d(20px, 0px, 0px) scaleX(0.9); }
  100% { opacity: 0; transform: translate3d(-2000px, 0px, 0px) scaleX(2); }
}
@keyframes bounceOutLeft { 
  20% { opacity: 1; transform: translate3d(20px, 0px, 0px) scaleX(0.9); }
  100% { opacity: 0; transform: translate3d(-2000px, 0px, 0px) scaleX(2); }
}
@-webkit-keyframes bounceOutRight { 
  20% { opacity: 1; transform: translate3d(-20px, 0px, 0px) scaleX(0.9); }
  100% { opacity: 0; transform: translate3d(2000px, 0px, 0px) scaleX(2); }
}
@keyframes bounceOutRight { 
  20% { opacity: 1; transform: translate3d(-20px, 0px, 0px) scaleX(0.9); }
  100% { opacity: 0; transform: translate3d(2000px, 0px, 0px) scaleX(2); }
}
@-webkit-keyframes bounceOutUp { 
  20% { transform: translate3d(0px, -10px, 0px) scaleY(0.985); }
  40%, 45% { opacity: 1; transform: translate3d(0px, 20px, 0px) scaleY(0.9); }
  100% { opacity: 0; transform: translate3d(0px, -2000px, 0px) scaleY(3); }
}
@keyframes bounceOutUp { 
  20% { transform: translate3d(0px, -10px, 0px) scaleY(0.985); }
  40%, 45% { opacity: 1; transform: translate3d(0px, 20px, 0px) scaleY(0.9); }
  100% { opacity: 0; transform: translate3d(0px, -2000px, 0px) scaleY(3); }
}
@-webkit-keyframes fadeIn { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes fadeIn { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@-webkit-keyframes fadeInDown { 
  0% { opacity: 0; transform: translate3d(0px, -100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInDown { 
  0% { opacity: 0; transform: translate3d(0px, -100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInDownBig { 
  0% { opacity: 0; transform: translate3d(0px, -2000px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInDownBig { 
  0% { opacity: 0; transform: translate3d(0px, -2000px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInLeft { 
  0% { opacity: 0; transform: translate3d(-100%, 0px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInLeft { 
  0% { opacity: 0; transform: translate3d(-100%, 0px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInLeftBig { 
  0% { opacity: 0; transform: translate3d(-2000px, 0px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInLeftBig { 
  0% { opacity: 0; transform: translate3d(-2000px, 0px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInRight { 
  0% { opacity: 0; transform: translate3d(100%, 0px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInRight { 
  0% { opacity: 0; transform: translate3d(100%, 0px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInRightBig { 
  0% { opacity: 0; transform: translate3d(2000px, 0px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInRightBig { 
  0% { opacity: 0; transform: translate3d(2000px, 0px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInUp { 
  0% { opacity: 0; transform: translate3d(0px, 100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInUp { 
  0% { opacity: 0; transform: translate3d(0px, 100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInUpBig { 
  0% { opacity: 0; transform: translate3d(0px, 2000px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInUpBig { 
  0% { opacity: 0; transform: translate3d(0px, 2000px, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInTopLeft { 
  0% { opacity: 0; transform: translate3d(-100%, -100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInTopLeft { 
  0% { opacity: 0; transform: translate3d(-100%, -100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInTopRight { 
  0% { opacity: 0; transform: translate3d(100%, -100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInTopRight { 
  0% { opacity: 0; transform: translate3d(100%, -100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInBottomLeft { 
  0% { opacity: 0; transform: translate3d(-100%, 100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInBottomLeft { 
  0% { opacity: 0; transform: translate3d(-100%, 100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeInBottomRight { 
  0% { opacity: 0; transform: translate3d(100%, 100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes fadeInBottomRight { 
  0% { opacity: 0; transform: translate3d(100%, 100%, 0px); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes fadeOut { 
  0% { opacity: 1; }
  100% { opacity: 0; }
}
@keyframes fadeOut { 
  0% { opacity: 1; }
  100% { opacity: 0; }
}
@-webkit-keyframes fadeOutDown { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, 100%, 0px); }
}
@keyframes fadeOutDown { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, 100%, 0px); }
}
@-webkit-keyframes fadeOutDownBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, 2000px, 0px); }
}
@keyframes fadeOutDownBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, 2000px, 0px); }
}
@-webkit-keyframes fadeOutLeft { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(-100%, 0px, 0px); }
}
@keyframes fadeOutLeft { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(-100%, 0px, 0px); }
}
@-webkit-keyframes fadeOutLeftBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(-2000px, 0px, 0px); }
}
@keyframes fadeOutLeftBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(-2000px, 0px, 0px); }
}
@-webkit-keyframes fadeOutRight { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(100%, 0px, 0px); }
}
@keyframes fadeOutRight { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(100%, 0px, 0px); }
}
@-webkit-keyframes fadeOutRightBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(2000px, 0px, 0px); }
}
@keyframes fadeOutRightBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(2000px, 0px, 0px); }
}
@-webkit-keyframes fadeOutUp { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, -100%, 0px); }
}
@keyframes fadeOutUp { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, -100%, 0px); }
}
@-webkit-keyframes fadeOutUpBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, -2000px, 0px); }
}
@keyframes fadeOutUpBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, -2000px, 0px); }
}
@-webkit-keyframes fadeOutTopLeft { 
  0% { opacity: 1; transform: translateZ(0px); }
  100% { opacity: 0; transform: translate3d(-100%, -100%, 0px); }
}
@keyframes fadeOutTopLeft { 
  0% { opacity: 1; transform: translateZ(0px); }
  100% { opacity: 0; transform: translate3d(-100%, -100%, 0px); }
}
@-webkit-keyframes fadeOutTopRight { 
  0% { opacity: 1; transform: translateZ(0px); }
  100% { opacity: 0; transform: translate3d(100%, -100%, 0px); }
}
@keyframes fadeOutTopRight { 
  0% { opacity: 1; transform: translateZ(0px); }
  100% { opacity: 0; transform: translate3d(100%, -100%, 0px); }
}
@-webkit-keyframes fadeOutBottomRight { 
  0% { opacity: 1; transform: translateZ(0px); }
  100% { opacity: 0; transform: translate3d(100%, 100%, 0px); }
}
@keyframes fadeOutBottomRight { 
  0% { opacity: 1; transform: translateZ(0px); }
  100% { opacity: 0; transform: translate3d(100%, 100%, 0px); }
}
@-webkit-keyframes fadeOutBottomLeft { 
  0% { opacity: 1; transform: translateZ(0px); }
  100% { opacity: 0; transform: translate3d(-100%, 100%, 0px); }
}
@keyframes fadeOutBottomLeft { 
  0% { opacity: 1; transform: translateZ(0px); }
  100% { opacity: 0; transform: translate3d(-100%, 100%, 0px); }
}
@-webkit-keyframes flip { 
  0% { transform: perspective(400px) scaleZ(1) translateZ(0px) rotateY(-360deg); animation-timing-function: ease-out; }
  40% { transform: perspective(400px) scaleZ(1) translateZ(150px) rotateY(-190deg); animation-timing-function: ease-out; }
  50% { transform: perspective(400px) scaleZ(1) translateZ(150px) rotateY(-170deg); animation-timing-function: ease-in; }
  80% { transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0px) rotateY(0deg); animation-timing-function: ease-in; }
  100% { transform: perspective(400px) scaleZ(1) translateZ(0px) rotateY(0deg); animation-timing-function: ease-in; }
}
@keyframes flip { 
  0% { transform: perspective(400px) scaleZ(1) translateZ(0px) rotateY(-360deg); animation-timing-function: ease-out; }
  40% { transform: perspective(400px) scaleZ(1) translateZ(150px) rotateY(-190deg); animation-timing-function: ease-out; }
  50% { transform: perspective(400px) scaleZ(1) translateZ(150px) rotateY(-170deg); animation-timing-function: ease-in; }
  80% { transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0px) rotateY(0deg); animation-timing-function: ease-in; }
  100% { transform: perspective(400px) scaleZ(1) translateZ(0px) rotateY(0deg); animation-timing-function: ease-in; }
}
@-webkit-keyframes flipInX { 
  0% { transform: perspective(400px) rotateX(90deg); animation-timing-function: ease-in; opacity: 0; }
  40% { transform: perspective(400px) rotateX(-20deg); animation-timing-function: ease-in; }
  60% { transform: perspective(400px) rotateX(10deg); opacity: 1; }
  80% { transform: perspective(400px) rotateX(-5deg); }
  100% { transform: perspective(400px); }
}
@keyframes flipInX { 
  0% { transform: perspective(400px) rotateX(90deg); animation-timing-function: ease-in; opacity: 0; }
  40% { transform: perspective(400px) rotateX(-20deg); animation-timing-function: ease-in; }
  60% { transform: perspective(400px) rotateX(10deg); opacity: 1; }
  80% { transform: perspective(400px) rotateX(-5deg); }
  100% { transform: perspective(400px); }
}
@-webkit-keyframes flipInY { 
  0% { transform: perspective(400px) rotateY(90deg); animation-timing-function: ease-in; opacity: 0; }
  40% { transform: perspective(400px) rotateY(-20deg); animation-timing-function: ease-in; }
  60% { transform: perspective(400px) rotateY(10deg); opacity: 1; }
  80% { transform: perspective(400px) rotateY(-5deg); }
  100% { transform: perspective(400px); }
}
@keyframes flipInY { 
  0% { transform: perspective(400px) rotateY(90deg); animation-timing-function: ease-in; opacity: 0; }
  40% { transform: perspective(400px) rotateY(-20deg); animation-timing-function: ease-in; }
  60% { transform: perspective(400px) rotateY(10deg); opacity: 1; }
  80% { transform: perspective(400px) rotateY(-5deg); }
  100% { transform: perspective(400px); }
}
@-webkit-keyframes flipOutX { 
  0% { transform: perspective(400px); }
  30% { transform: perspective(400px) rotateX(-20deg); opacity: 1; }
  100% { transform: perspective(400px) rotateX(90deg); opacity: 0; }
}
@keyframes flipOutX { 
  0% { transform: perspective(400px); }
  30% { transform: perspective(400px) rotateX(-20deg); opacity: 1; }
  100% { transform: perspective(400px) rotateX(90deg); opacity: 0; }
}
@-webkit-keyframes flipOutY { 
  0% { transform: perspective(400px); }
  30% { transform: perspective(400px) rotateY(-15deg); opacity: 1; }
  100% { transform: perspective(400px) rotateY(90deg); opacity: 0; }
}
@keyframes flipOutY { 
  0% { transform: perspective(400px); }
  30% { transform: perspective(400px) rotateY(-15deg); opacity: 1; }
  100% { transform: perspective(400px) rotateY(90deg); opacity: 0; }
}
@-webkit-keyframes lightSpeedInRight { 
  0% { transform: translate3d(100%, 0px, 0px) skew(-30deg); opacity: 0; }
  60% { transform: skew(20deg); opacity: 1; }
  80% { transform: skew(-5deg); }
  100% { transform: translateZ(0px); }
}
@keyframes lightSpeedInRight { 
  0% { transform: translate3d(100%, 0px, 0px) skew(-30deg); opacity: 0; }
  60% { transform: skew(20deg); opacity: 1; }
  80% { transform: skew(-5deg); }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes lightSpeedInLeft { 
  0% { transform: translate3d(-100%, 0px, 0px) skew(30deg); opacity: 0; }
  60% { transform: skew(-20deg); opacity: 1; }
  80% { transform: skew(5deg); }
  100% { transform: translateZ(0px); }
}
@keyframes lightSpeedInLeft { 
  0% { transform: translate3d(-100%, 0px, 0px) skew(30deg); opacity: 0; }
  60% { transform: skew(-20deg); opacity: 1; }
  80% { transform: skew(5deg); }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes lightSpeedOutRight { 
  0% { opacity: 1; }
  100% { transform: translate3d(100%, 0px, 0px) skew(30deg); opacity: 0; }
}
@keyframes lightSpeedOutRight { 
  0% { opacity: 1; }
  100% { transform: translate3d(100%, 0px, 0px) skew(30deg); opacity: 0; }
}
@-webkit-keyframes lightSpeedOutLeft { 
  0% { opacity: 1; }
  100% { transform: translate3d(-100%, 0px, 0px) skew(-30deg); opacity: 0; }
}
@keyframes lightSpeedOutLeft { 
  0% { opacity: 1; }
  100% { transform: translate3d(-100%, 0px, 0px) skew(-30deg); opacity: 0; }
}
@-webkit-keyframes rotateIn { 
  0% { transform: rotate3d(0, 0, 1, -200deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@keyframes rotateIn { 
  0% { transform: rotate3d(0, 0, 1, -200deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@-webkit-keyframes rotateInDownLeft { 
  0% { transform: rotate3d(0, 0, 1, -45deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@keyframes rotateInDownLeft { 
  0% { transform: rotate3d(0, 0, 1, -45deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@-webkit-keyframes rotateInDownRight { 
  0% { transform: rotate3d(0, 0, 1, 45deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@keyframes rotateInDownRight { 
  0% { transform: rotate3d(0, 0, 1, 45deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@-webkit-keyframes rotateInUpLeft { 
  0% { transform: rotate3d(0, 0, 1, 45deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@keyframes rotateInUpLeft { 
  0% { transform: rotate3d(0, 0, 1, 45deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@-webkit-keyframes rotateInUpRight { 
  0% { transform: rotate3d(0, 0, 1, -90deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@keyframes rotateInUpRight { 
  0% { transform: rotate3d(0, 0, 1, -90deg); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@-webkit-keyframes rotateOut { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, 200deg); opacity: 0; }
}
@keyframes rotateOut { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, 200deg); opacity: 0; }
}
@-webkit-keyframes rotateOutDownLeft { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, 45deg); opacity: 0; }
}
@keyframes rotateOutDownLeft { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, 45deg); opacity: 0; }
}
@-webkit-keyframes rotateOutDownRight { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, -45deg); opacity: 0; }
}
@keyframes rotateOutDownRight { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, -45deg); opacity: 0; }
}
@-webkit-keyframes rotateOutUpLeft { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, -45deg); opacity: 0; }
}
@keyframes rotateOutUpLeft { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, -45deg); opacity: 0; }
}
@-webkit-keyframes rotateOutUpRight { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, 90deg); opacity: 0; }
}
@keyframes rotateOutUpRight { 
  0% { opacity: 1; }
  100% { transform: rotate3d(0, 0, 1, 90deg); opacity: 0; }
}
@-webkit-keyframes hinge { 
  0% { animation-timing-function: ease-in-out; }
  20%, 60% { transform: rotate3d(0, 0, 1, 80deg); animation-timing-function: ease-in-out; }
  40%, 80% { transform: rotate3d(0, 0, 1, 60deg); animation-timing-function: ease-in-out; opacity: 1; }
  100% { transform: translate3d(0px, 700px, 0px); opacity: 0; }
}
@keyframes hinge { 
  0% { animation-timing-function: ease-in-out; }
  20%, 60% { transform: rotate3d(0, 0, 1, 80deg); animation-timing-function: ease-in-out; }
  40%, 80% { transform: rotate3d(0, 0, 1, 60deg); animation-timing-function: ease-in-out; opacity: 1; }
  100% { transform: translate3d(0px, 700px, 0px); opacity: 0; }
}
@-webkit-keyframes jackInTheBox { 
  0% { opacity: 0; transform: scale(0.1) rotate(30deg); transform-origin: center bottom; }
  50% { transform: rotate(-10deg); }
  70% { transform: rotate(3deg); }
  100% { opacity: 1; transform: scale(1); }
}
@keyframes jackInTheBox { 
  0% { opacity: 0; transform: scale(0.1) rotate(30deg); transform-origin: center bottom; }
  50% { transform: rotate(-10deg); }
  70% { transform: rotate(3deg); }
  100% { opacity: 1; transform: scale(1); }
}
@-webkit-keyframes rollIn { 
  0% { opacity: 0; transform: translate3d(-100%, 0px, 0px) rotate3d(0, 0, 1, -120deg); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@keyframes rollIn { 
  0% { opacity: 0; transform: translate3d(-100%, 0px, 0px) rotate3d(0, 0, 1, -120deg); }
  100% { opacity: 1; transform: translateZ(0px); }
}
@-webkit-keyframes rollOut { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(100%, 0px, 0px) rotate3d(0, 0, 1, 120deg); }
}
@keyframes rollOut { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(100%, 0px, 0px) rotate3d(0, 0, 1, 120deg); }
}
@-webkit-keyframes zoomIn { 
  0% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  50% { opacity: 1; }
}
@keyframes zoomIn { 
  0% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  50% { opacity: 1; }
}
@-webkit-keyframes zoomInDown { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, -1000px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, 60px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@keyframes zoomInDown { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, -1000px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, 60px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@-webkit-keyframes zoomInLeft { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@keyframes zoomInLeft { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@-webkit-keyframes zoomInRight { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@keyframes zoomInRight { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@-webkit-keyframes zoomInUp { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, 1000px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, -60px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@keyframes zoomInUp { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, 1000px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, -60px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@-webkit-keyframes zoomOut { 
  0% { opacity: 1; }
  50% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  100% { opacity: 0; }
}
@keyframes zoomOut { 
  0% { opacity: 1; }
  50% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  100% { opacity: 0; }
}
@-webkit-keyframes zoomOutDown { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, -60px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, 2000px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@keyframes zoomOutDown { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, -60px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, 2000px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@-webkit-keyframes zoomOutLeft { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0px, 0px); }
  100% { opacity: 0; transform: scale(0.1) translate3d(-2000px, 0px, 0px); }
}
@keyframes zoomOutLeft { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0px, 0px); }
  100% { opacity: 0; transform: scale(0.1) translate3d(-2000px, 0px, 0px); }
}
@-webkit-keyframes zoomOutRight { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0px, 0px); }
  100% { opacity: 0; transform: scale(0.1) translate3d(2000px, 0px, 0px); }
}
@keyframes zoomOutRight { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0px, 0px); }
  100% { opacity: 0; transform: scale(0.1) translate3d(2000px, 0px, 0px); }
}
@-webkit-keyframes zoomOutUp { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, 60px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, -2000px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@keyframes zoomOutUp { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, 60px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, -2000px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}
@-webkit-keyframes slideInDown { 
  0% { transform: translate3d(0px, -100%, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}
@keyframes slideInDown { 
  0% { transform: translate3d(0px, -100%, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes slideInLeft { 
  0% { transform: translate3d(-100%, 0px, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}
@keyframes slideInLeft { 
  0% { transform: translate3d(-100%, 0px, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes slideInRight { 
  0% { transform: translate3d(100%, 0px, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}
@keyframes slideInRight { 
  0% { transform: translate3d(100%, 0px, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes slideInUp { 
  0% { transform: translate3d(0px, 100%, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}
@keyframes slideInUp { 
  0% { transform: translate3d(0px, 100%, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}
@-webkit-keyframes slideOutDown { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(0px, 100%, 0px); }
}
@keyframes slideOutDown { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(0px, 100%, 0px); }
}
@-webkit-keyframes slideOutLeft { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(-100%, 0px, 0px); }
}
@keyframes slideOutLeft { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(-100%, 0px, 0px); }
}
@-webkit-keyframes slideOutRight { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(100%, 0px, 0px); }
}
@keyframes slideOutRight { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(100%, 0px, 0px); }
}
@-webkit-keyframes slideOutUp { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(0px, -100%, 0px); }
}
@keyframes slideOutUp { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(0px, -100%, 0px); }
}
@-webkit-keyframes rotating { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes rotating { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@-webkit-keyframes v-modal-in { 
  0% { opacity: 0; }
}
@keyframes v-modal-in { 
  0% { opacity: 0; }
}
@-webkit-keyframes v-modal-out { 
  100% { opacity: 0; }
}
@keyframes v-modal-out { 
  100% { opacity: 0; }
}
@-webkit-keyframes dialog-fade-in { 
  0% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@keyframes dialog-fade-in { 
  0% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@-webkit-keyframes dialog-fade-out { 
  0% { transform: translateZ(0px); opacity: 1; }
  100% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
}
@keyframes dialog-fade-out { 
  0% { transform: translateZ(0px); opacity: 1; }
  100% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
}
@-webkit-keyframes modal-fade-in { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes modal-fade-in { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@-webkit-keyframes modal-fade-out { 
  0% { opacity: 1; }
  100% { opacity: 0; }
}
@keyframes modal-fade-out { 
  0% { opacity: 1; }
  100% { opacity: 0; }
}
@-webkit-keyframes viewer-fade-in { 
  0% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@keyframes viewer-fade-in { 
  0% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@-webkit-keyframes viewer-fade-out { 
  0% { transform: translateZ(0px); opacity: 1; }
  100% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
}
@keyframes viewer-fade-out { 
  0% { transform: translateZ(0px); opacity: 1; }
  100% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
}
@-webkit-keyframes loading-rotate { 
  100% { transform: rotate(360deg); }
}
@keyframes loading-rotate { 
  100% { transform: rotate(360deg); }
}
@-webkit-keyframes loading-dash { 
  0% { stroke-dasharray: 1, 200; stroke-dashoffset: 0; }
  50% { stroke-dasharray: 90, 150; stroke-dashoffset: -40px; }
  100% { stroke-dasharray: 90, 150; stroke-dashoffset: -120px; }
}
@keyframes loading-dash { 
  0% { stroke-dasharray: 1, 200; stroke-dashoffset: 0; }
  50% { stroke-dasharray: 90, 150; stroke-dashoffset: -40px; }
  100% { stroke-dasharray: 90, 150; stroke-dashoffset: -120px; }
}
@-webkit-keyframes msgbox-fade-in { 
  0% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@keyframes msgbox-fade-in { 
  0% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@-webkit-keyframes progress { 
  0% { background-position: 0px 0px; }
  100% { background-position: 32px 0px; }
}
@keyframes progress { 
  0% { background-position: 0px 0px; }
  100% { background-position: 32px 0px; }
}
@-webkit-keyframes indeterminate { 
  0% { left: -100%; }
  100% { left: 100%; }
}
@keyframes indeterminate { 
  0% { left: -100%; }
  100% { left: 100%; }
}
@-webkit-keyframes striped-flow { 
  0% { background-position: -100% center; }
  100% { background-position: 100% center; }
}
@keyframes striped-flow { 
  0% { background-position: -100% center; }
  100% { background-position: 100% center; }
}
@-webkit-keyframes el-skeleton-loading { 
  0% { background-position: 100% 50%; }
  100% { background-position: 0px 50%; }
}
@keyframes el-skeleton-loading { 
  0% { background-position: 100% 50%; }
  100% { background-position: 0px 50%; }
}
@-webkit-keyframes rotate { 
  100% { transform: rotate(360deg); }
}
@keyframes rotate { 
  100% { transform: rotate(360deg); }
}
@-webkit-keyframes dash { 
  0% { stroke-dasharray: 1, 150; stroke-dashoffset: 0; }
  50% { stroke-dasharray: 90, 150; stroke-dashoffset: -35; }
  100% { stroke-dasharray: 90, 150; stroke-dashoffset: -124; }
}
@keyframes dash { 
  0% { stroke-dasharray: 1, 150; stroke-dashoffset: 0; }
  50% { stroke-dasharray: 90, 150; stroke-dashoffset: -35; }
  100% { stroke-dasharray: 90, 150; stroke-dashoffset: -124; }
}
@-webkit-keyframes slideInRight-enter { 
  0% { opacity: 0; transform-origin: 0px 0px; transform: translate(100%); }
  100% { opacity: 1; transform-origin: 0px 0px; transform: translate(0px); }
}
@keyframes slideInRight-enter { 
  0% { opacity: 0; transform-origin: 0px 0px; transform: translate(100%); }
  100% { opacity: 1; transform-origin: 0px 0px; transform: translate(0px); }
}
@-webkit-keyframes slideInRight-leave { 
  0% { transform-origin: 0px 0px; transform: translate(0px); opacity: 1; }
  100% { transform-origin: 0px 0px; transform: translate(100%); opacity: 0; }
}
@keyframes slideInRight-leave { 
  0% { transform-origin: 0px 0px; transform: translate(0px); opacity: 1; }
  100% { transform-origin: 0px 0px; transform: translate(100%); opacity: 0; }
}
@-webkit-keyframes slideInLeft-enter { 
  0% { opacity: 0; transform-origin: 0px 0px; transform: translate(-100%); }
  100% { opacity: 1; transform-origin: 0px 0px; transform: translate(0px); }
}
@keyframes slideInLeft-enter { 
  0% { opacity: 0; transform-origin: 0px 0px; transform: translate(-100%); }
  100% { opacity: 1; transform-origin: 0px 0px; transform: translate(0px); }
}
@-webkit-keyframes slideInLeft-leave { 
  0% { transform-origin: 0px 0px; transform: translate(0px); opacity: 1; }
  100% { transform-origin: 0px 0px; transform: translate(-100%); opacity: 0; }
}
@keyframes slideInLeft-leave { 
  0% { transform-origin: 0px 0px; transform: translate(0px); opacity: 1; }
  100% { transform-origin: 0px 0px; transform: translate(-100%); opacity: 0; }
}
@-webkit-keyframes refreshAnimation { 
  0% { transform: scale(0.9); }
  50% { transform: scale(1.05); }
  100% { transform: scale(0.9); }
}
@keyframes refreshAnimation { 
  0% { transform: scale(0.9); }
  50% { transform: scale(1.05); }
  100% { transform: scale(0.9); }
}
@keyframes show-570b56f8 { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes rotate-c9a08cfd { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes dialog-fade-in-2b2f5318 { 
  0% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
  100% { transform: translateZ(0px); opacity: 1; }
}
@keyframes dialog-fade-out-2b2f5318 { 
  0% { transform: translateZ(0px); opacity: 1; }
  100% { transform: translate3d(0px, -20px, 0px); opacity: 0; }
}
@keyframes modal-fade-in-2b2f5318 { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes modal-fade-out-2b2f5318 { 
  0% { opacity: 1; }
  100% { opacity: 0; }
}
@keyframes rotate-7a4c4906 { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@-webkit-keyframes nprogress-spinner { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes nprogress-spinner { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.product-showcase[data-v-264a8eb8] { position: relative; display: flex; flex-direction: column; align-items: center; min-height: 540px; color: rgb(17, 24, 39); }
.showcase-art[data-v-264a8eb8] { position: relative; width: min(100%, 620px); height: 338px; margin-top: 18px; }
.ops-board[data-v-264a8eb8] { position: absolute; left: 50%; top: 34px; width: 302px; padding: 18px; border-radius: 16px; background: rgba(255, 255, 255, 0.84); box-shadow: rgba(38, 118, 252, 0.14) 0px 24px 70px; backdrop-filter: blur(12px); transform: translate(-50%); }
.ops-board__top[data-v-264a8eb8] { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; }
.ops-board__top b[data-v-264a8eb8] { display: block; font-size: 15px; color: rgb(23, 32, 51); }
.ops-board__top p[data-v-264a8eb8] { margin: 3px 0px 0px; color: rgb(107, 114, 128); font-size: 10px; }
.ops-logo[data-v-264a8eb8] { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 12px; color: rgb(255, 255, 255); font-size: 22px; font-weight: 800; background: rgb(38, 118, 252); box-shadow: rgba(38, 118, 252, 0.22) 0px 12px 26px; }
.ops-board__body[data-v-264a8eb8] { display: flex; gap: 14px; }
.module-rail[data-v-264a8eb8] { display: grid; gap: 8px; }
.module-rail span[data-v-264a8eb8] { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 10px; color: rgb(255, 255, 255); background: var(--module-color); font-size: 10px; font-weight: 700; }
.ops-main[data-v-264a8eb8] { flex: 1 1 0%; min-width: 0px; }
.metric-row[data-v-264a8eb8] { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 7px; }
.metric-row span[data-v-264a8eb8] { min-width: 0px; padding: 8px 7px; border-radius: 10px; background: rgb(243, 247, 255); }
.metric-row b[data-v-264a8eb8], .metric-row em[data-v-264a8eb8] { display: block; font-style: normal; white-space: nowrap; }
.metric-row b[data-v-264a8eb8] { color: rgb(100, 116, 139); font-size: 8px; font-weight: 600; }
.metric-row em[data-v-264a8eb8] { margin-top: 4px; color: rgb(23, 32, 51); font-size: 12px; font-weight: 800; }
.funnel[data-v-264a8eb8] { display: grid; gap: 7px; margin-top: 14px; }
.funnel i[data-v-264a8eb8] { height: 8px; border-radius: 999px; background: linear-gradient(90deg, rgba(38, 118, 252, 0.86), rgba(49, 197, 111, 0.38)); }
.funnel i[data-v-264a8eb8]:nth-child(2) { width: 78%; }
.funnel i[data-v-264a8eb8]:nth-child(3) { width: 56%; }
.task-strip[data-v-264a8eb8] { display: flex; align-items: center; justify-content: space-between; margin-top: 16px; padding: 10px 12px; border-radius: 12px; background: rgb(17, 24, 39); color: rgb(255, 255, 255); font-size: 11px; }
.task-strip strong[data-v-264a8eb8] { color: rgb(117, 224, 168); font-size: 10px; }
.status-list[data-v-264a8eb8] { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 9px; }
.status-list span[data-v-264a8eb8] { display: grid; grid-template-columns: 20px 1fr; align-items: center; gap: 6px; min-width: 0px; padding: 8px; border-radius: 11px; background: rgb(245, 248, 255); color: rgb(100, 116, 139); font-size: 9px; font-weight: 600; }
.status-list i[data-v-264a8eb8] { grid-row: span 2; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 7px; color: rgb(255, 255, 255); background: rgb(49, 197, 111); font-style: normal; font-size: 8px; font-weight: 800; }
.status-list span:nth-child(2) i[data-v-264a8eb8] { background: rgb(139, 92, 246); }
.status-list strong[data-v-264a8eb8] { min-width: 0px; color: rgb(23, 32, 51); font-size: 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.module-cloud[data-v-264a8eb8] { position: absolute; display: grid; gap: 8px; width: 142px; }
.module-cloud--left[data-v-264a8eb8] { left: 0px; top: 56px; }
.module-cloud--right[data-v-264a8eb8] { right: 0px; top: 56px; }
.module-chip[data-v-264a8eb8] { display: inline-flex; align-items: center; gap: 9px; width: 142px; height: 36px; padding: 0px 12px 0px 9px; border-radius: 12px; background: rgba(255, 255, 255, 0.92); color: rgb(23, 32, 51); font-size: 12px; font-weight: 700; box-shadow: rgba(38, 118, 252, 0.1) 0px 14px 32px; position: relative; z-index: 4; white-space: nowrap; }
.module-chip i[data-v-264a8eb8] { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 26px; height: 26px; border-radius: 9px; background: var(--module-color); color: rgb(255, 255, 255); font-style: normal; font-size: 10px; font-weight: 800; }
.showcase-copy[data-v-264a8eb8] { max-width: 660px; text-align: center; }
.showcase-copy h2[data-v-264a8eb8] { margin: 10px 0px 12px; color: rgb(17, 24, 39); font-size: 28px; font-weight: 800; line-height: 1.25; }
.showcase-copy p[data-v-264a8eb8] { margin: 0px auto; max-width: 610px; color: rgb(105, 115, 134); font-size: 15px; line-height: 1.75; }
.showcase-dots[data-v-264a8eb8] { display: flex; gap: 12px; margin-top: 24px; }
.showcase-dots span[data-v-264a8eb8] { width: 10px; height: 10px; border-radius: 50%; background: rgb(203, 213, 225); }
.showcase-dots span.is-active[data-v-264a8eb8] { background: rgb(92, 114, 149); }
@media screen and (max-width: 1180px){.showcase-art[data-v-264a8eb8] { transform: scale(0.88); transform-origin: center center; }}
@media screen and (max-width: 1180px){.showcase-copy h2[data-v-264a8eb8] { font-size: 24px; }}
@media screen and (max-width: 1180px){.showcase-copy p[data-v-264a8eb8] { font-size: 14px; }}
.auth-layout[data-v-1de24732] { position: relative; display: flex; min-height: 100vh; min-width: 360px; isolation: isolate; overflow: hidden; background: rgb(244, 247, 251); --el-color-primary: #2676fc; --el-border-radius-base: 8px; }
.auth-layout[data-v-1de24732]::before { content: ""; position: absolute; inset: 0px; z-index: 0; background: radial-gradient(circle at 24% 44%, rgba(38, 118, 252, 0.08), transparent 28%), radial-gradient(circle at 78% 52%, rgba(38, 118, 252, 0.06), transparent 34%); pointer-events: none; }
.auth-layout[data-v-1de24732]::after { content: ""; position: absolute; inset: 0px; z-index: 0; background-image: linear-gradient(rgba(89, 119, 170, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(89, 119, 170, 0.035) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(90deg, transparent 0%, rgb(0, 0, 0) 14%, rgb(0, 0, 0) 100%); pointer-events: none; }
.auth-topbar[data-v-1de24732] { position: absolute; top: 48px; left: clamp(48px, 6vw, 84px); right: clamp(48px, 6vw, 84px); z-index: 4; display: flex; align-items: center; justify-content: space-between; }
.auth-logo[data-v-1de24732] { display: inline-flex; align-items: center; line-height: 0; }
.auth-logo img[data-v-1de24732] { display: block; height: 38px; width: auto; }
.auth-lang[data-v-1de24732] { position: relative; z-index: 5; }
.form-panel[data-v-1de24732] { position: relative; z-index: 2; flex: 1 1 0%; min-width: 0px; display: flex; align-items: center; justify-content: space-between; gap: clamp(48px, 7vw, 120px); width: 100%; padding: 104px clamp(72px, 9vw, 148px) 32px; }
.auth-showcase[data-v-1de24732] { position: relative; z-index: 1; flex: 1 1 0px; max-width: 660px; min-width: 440px; }
@media screen and (max-width: 1180px){.form-panel[data-v-1de24732] { gap: 48px; padding-left: 48px; padding-right: 48px; }}
@media screen and (max-width: 1180px){.auth-showcase[data-v-1de24732] { min-width: 380px; }}
@media screen and (max-width: 960px){.auth-topbar[data-v-1de24732] { top: 28px; left: 24px; right: 24px; }}
@media screen and (max-width: 960px){.auth-showcase[data-v-1de24732] { display: none; }}
@media screen and (max-width: 960px){.form-panel[data-v-1de24732] { justify-content: center; padding: 96px 20px 32px; }}
@media screen and (max-width: 768px){.auth-layout[data-v-1de24732] { min-height: 100dvh; overflow-y: auto; }}
@media screen and (max-width: 768px){.auth-topbar[data-v-1de24732] { display: none; }}
@media screen and (max-width: 768px){.form-panel[data-v-1de24732] { padding: 0px; }}
@media screen and (max-width: 768px){.auth-logo img[data-v-1de24732] { height: 32px; }}

.auth-showcase{width:min(660px,100%);position:relative;left:0;top:36px}
