:root {
   --scrollbar-track-color: rgba(215, 215, 215, 1);
   --scrollbar-thumb-color: rgba(110, 114, 122, 1);
   --grid-font-size: 13px;
   --grid-children-column-size: 11px;
   --grid-light-header-color: #2A2A2A;
}

.animated {
   -webkit-animation-duration: 1s;
   animation-duration: 1s;
   -webkit-animation-fill-mode: both;
   animation-fill-mode: both;
}

.animated.infinite {
   -webkit-animation-iteration-count: infinite;
   animation-iteration-count: infinite;
}

.animated.hinge {
   -webkit-animation-duration: 2s;
   animation-duration: 2s;
}

.animated.bounceIn,
.animated.bounceOut,
.animated.flipOutX,
.animated.flipOutY {
   -webkit-animation-duration: 0.75s;
   animation-duration: 0.75s;
}

@-webkit-keyframes bounce {
   0%,
   20%,
   53%,
   80%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   40%,
   43% {
      -webkit-transform: translate3d(0, -30px, 0);
      transform: translate3d(0, -30px, 0);
   }
   40%,
   43%,
   70% {
      -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
   }
   70% {
      -webkit-transform: translate3d(0, -15px, 0);
      transform: translate3d(0, -15px, 0);
   }
   90% {
      -webkit-transform: translate3d(0, -4px, 0);
      transform: translate3d(0, -4px, 0);
   }
}

@keyframes bounce {
   0%,
   20%,
   53%,
   80%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   40%,
   43% {
      -webkit-transform: translate3d(0, -30px, 0);
      transform: translate3d(0, -30px, 0);
   }
   40%,
   43%,
   70% {
      -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
   }
   70% {
      -webkit-transform: translate3d(0, -15px, 0);
      transform: translate3d(0, -15px, 0);
   }
   90% {
      -webkit-transform: translate3d(0, -4px, 0);
      transform: translate3d(0, -4px, 0);
   }
}

.bounce {
   -webkit-animation-name: bounce;
   animation-name: bounce;
   -webkit-transform-origin: center bottom;
   transform-origin: center bottom;
}

@-webkit-keyframes flash {
   0%,
   50%,
   to {
      opacity: 1;
   }
   25%,
   75% {
      opacity: 0;
   }
}

@keyframes flash {
   0%,
   50%,
   to {
      opacity: 1;
   }
   25%,
   75% {
      opacity: 0;
   }
}

.flash {
   -webkit-animation-name: flash;
   animation-name: flash;
}

@-webkit-keyframes pulse {
   0% {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
   50% {
      -webkit-transform: scale3d(1.05, 1.05, 1.05);
      transform: scale3d(1.05, 1.05, 1.05);
   }
   to {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
}

@keyframes pulse {
   0% {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
   50% {
      -webkit-transform: scale3d(1.05, 1.05, 1.05);
      transform: scale3d(1.05, 1.05, 1.05);
   }
   to {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
}

.pulse {
   -webkit-animation-name: pulse;
   animation-name: pulse;
}

@-webkit-keyframes rubberBand {
   0% {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
   30% {
      -webkit-transform: scale3d(1.25, 0.75, 1);
      transform: scale3d(1.25, 0.75, 1);
   }
   40% {
      -webkit-transform: scale3d(0.75, 1.25, 1);
      transform: scale3d(0.75, 1.25, 1);
   }
   50% {
      -webkit-transform: scale3d(1.15, 0.85, 1);
      transform: scale3d(1.15, 0.85, 1);
   }
   65% {
      -webkit-transform: scale3d(0.95, 1.05, 1);
      transform: scale3d(0.95, 1.05, 1);
   }
   75% {
      -webkit-transform: scale3d(1.05, 0.95, 1);
      transform: scale3d(1.05, 0.95, 1);
   }
   to {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
}

@keyframes rubberBand {
   0% {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
   30% {
      -webkit-transform: scale3d(1.25, 0.75, 1);
      transform: scale3d(1.25, 0.75, 1);
   }
   40% {
      -webkit-transform: scale3d(0.75, 1.25, 1);
      transform: scale3d(0.75, 1.25, 1);
   }
   50% {
      -webkit-transform: scale3d(1.15, 0.85, 1);
      transform: scale3d(1.15, 0.85, 1);
   }
   65% {
      -webkit-transform: scale3d(0.95, 1.05, 1);
      transform: scale3d(0.95, 1.05, 1);
   }
   75% {
      -webkit-transform: scale3d(1.05, 0.95, 1);
      transform: scale3d(1.05, 0.95, 1);
   }
   to {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
}

.rubberBand {
   -webkit-animation-name: rubberBand;
   animation-name: rubberBand;
}

@-webkit-keyframes shake {
   0%,
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   10%,
   30%,
   50%,
   70%,
   90% {
      -webkit-transform: translate3d(-10px, 0, 0);
      transform: translate3d(-10px, 0, 0);
   }
   20%,
   40%,
   60%,
   80% {
      -webkit-transform: translate3d(10px, 0, 0);
      transform: translate3d(10px, 0, 0);
   }
}

@keyframes shake {
   0%,
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   10%,
   30%,
   50%,
   70%,
   90% {
      -webkit-transform: translate3d(-10px, 0, 0);
      transform: translate3d(-10px, 0, 0);
   }
   20%,
   40%,
   60%,
   80% {
      -webkit-transform: translate3d(10px, 0, 0);
      transform: translate3d(10px, 0, 0);
   }
}

.shake {
   -webkit-animation-name: shake;
   animation-name: shake;
}

@-webkit-keyframes headShake {
   0% {
      -webkit-transform: translateX(0);
      transform: translateX(0);
   }
   6.5% {
      -webkit-transform: translateX(-6px) rotateY(-9deg);
      transform: translateX(-6px) rotateY(-9deg);
   }
   18.5% {
      -webkit-transform: translateX(5px) rotateY(7deg);
      transform: translateX(5px) rotateY(7deg);
   }
   31.5% {
      -webkit-transform: translateX(-3px) rotateY(-5deg);
      transform: translateX(-3px) rotateY(-5deg);
   }
   43.5% {
      -webkit-transform: translateX(2px) rotateY(3deg);
      transform: translateX(2px) rotateY(3deg);
   }
   50% {
      -webkit-transform: translateX(0);
      transform: translateX(0);
   }
}

@keyframes headShake {
   0% {
      -webkit-transform: translateX(0);
      transform: translateX(0);
   }
   6.5% {
      -webkit-transform: translateX(-6px) rotateY(-9deg);
      transform: translateX(-6px) rotateY(-9deg);
   }
   18.5% {
      -webkit-transform: translateX(5px) rotateY(7deg);
      transform: translateX(5px) rotateY(7deg);
   }
   31.5% {
      -webkit-transform: translateX(-3px) rotateY(-5deg);
      transform: translateX(-3px) rotateY(-5deg);
   }
   43.5% {
      -webkit-transform: translateX(2px) rotateY(3deg);
      transform: translateX(2px) rotateY(3deg);
   }
   50% {
      -webkit-transform: translateX(0);
      transform: translateX(0);
   }
}

.headShake {
   -webkit-animation-timing-function: ease-in-out;
   animation-timing-function: ease-in-out;
   -webkit-animation-name: headShake;
   animation-name: headShake;
}

@-webkit-keyframes swing {
   20% {
      -webkit-transform: rotate(15deg);
      transform: rotate(15deg);
   }
   40% {
      -webkit-transform: rotate(-10deg);
      transform: rotate(-10deg);
   }
   60% {
      -webkit-transform: rotate(5deg);
      transform: rotate(5deg);
   }
   80% {
      -webkit-transform: rotate(-5deg);
      transform: rotate(-5deg);
   }
   to {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
   }
}

@keyframes swing {
   20% {
      -webkit-transform: rotate(15deg);
      transform: rotate(15deg);
   }
   40% {
      -webkit-transform: rotate(-10deg);
      transform: rotate(-10deg);
   }
   60% {
      -webkit-transform: rotate(5deg);
      transform: rotate(5deg);
   }
   80% {
      -webkit-transform: rotate(-5deg);
      transform: rotate(-5deg);
   }
   to {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
   }
}

.swing {
   -webkit-transform-origin: top center;
   transform-origin: top center;
   -webkit-animation-name: swing;
   animation-name: swing;
}

@-webkit-keyframes tada {
   0% {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
   10%,
   20% {
      -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
      transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
   }
   30%,
   50%,
   70%,
   90% {
      -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
      transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
   }
   40%,
   60%,
   80% {
      -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
      transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
   }
   to {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
}

@keyframes tada {
   0% {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
   10%,
   20% {
      -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
      transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
   }
   30%,
   50%,
   70%,
   90% {
      -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
      transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
   }
   40%,
   60%,
   80% {
      -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
      transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
   }
   to {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
}

.tada {
   -webkit-animation-name: tada;
   animation-name: tada;
}

@-webkit-keyframes wobble {
   0% {
      -webkit-transform: none;
      transform: none;
   }
   15% {
      -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
      transform: translate3d(-25%, 0, 0) rotate(-5deg);
   }
   30% {
      -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
      transform: translate3d(20%, 0, 0) rotate(3deg);
   }
   45% {
      -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
      transform: translate3d(-15%, 0, 0) rotate(-3deg);
   }
   60% {
      -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
      transform: translate3d(10%, 0, 0) rotate(2deg);
   }
   75% {
      -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
      transform: translate3d(-5%, 0, 0) rotate(-1deg);
   }
   to {
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes wobble {
   0% {
      -webkit-transform: none;
      transform: none;
   }
   15% {
      -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
      transform: translate3d(-25%, 0, 0) rotate(-5deg);
   }
   30% {
      -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
      transform: translate3d(20%, 0, 0) rotate(3deg);
   }
   45% {
      -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
      transform: translate3d(-15%, 0, 0) rotate(-3deg);
   }
   60% {
      -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
      transform: translate3d(10%, 0, 0) rotate(2deg);
   }
   75% {
      -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
      transform: translate3d(-5%, 0, 0) rotate(-1deg);
   }
   to {
      -webkit-transform: none;
      transform: none;
   }
}

.wobble {
   -webkit-animation-name: wobble;
   animation-name: wobble;
}

@-webkit-keyframes jello {
   0%,
   11.1%,
   to {
      -webkit-transform: none;
      transform: none;
   }
   22.2% {
      -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
      transform: skewX(-12.5deg) skewY(-12.5deg);
   }
   33.3% {
      -webkit-transform: skewX(6.25deg) skewY(6.25deg);
      transform: skewX(6.25deg) skewY(6.25deg);
   }
   44.4% {
      -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
      transform: skewX(-3.125deg) skewY(-3.125deg);
   }
   55.5% {
      -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
      transform: skewX(1.5625deg) skewY(1.5625deg);
   }
   66.6% {
      -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
      transform: skewX(-0.78125deg) skewY(-0.78125deg);
   }
   77.7% {
      -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
      transform: skewX(0.390625deg) skewY(0.390625deg);
   }
   88.8% {
      -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
      transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
   }
}

@keyframes jello {
   0%,
   11.1%,
   to {
      -webkit-transform: none;
      transform: none;
   }
   22.2% {
      -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
      transform: skewX(-12.5deg) skewY(-12.5deg);
   }
   33.3% {
      -webkit-transform: skewX(6.25deg) skewY(6.25deg);
      transform: skewX(6.25deg) skewY(6.25deg);
   }
   44.4% {
      -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
      transform: skewX(-3.125deg) skewY(-3.125deg);
   }
   55.5% {
      -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
      transform: skewX(1.5625deg) skewY(1.5625deg);
   }
   66.6% {
      -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
      transform: skewX(-0.78125deg) skewY(-0.78125deg);
   }
   77.7% {
      -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
      transform: skewX(0.390625deg) skewY(0.390625deg);
   }
   88.8% {
      -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
      transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
   }
}

.jello {
   -webkit-animation-name: jello;
   animation-name: jello;
   -webkit-transform-origin: center;
   transform-origin: center;
}

@-webkit-keyframes bounceIn {
   0%,
   20%,
   40%,
   60%,
   80%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.3, 0.3, 0.3);
      transform: scale3d(0.3, 0.3, 0.3);
   }
   20% {
      -webkit-transform: scale3d(1.1, 1.1, 1.1);
      transform: scale3d(1.1, 1.1, 1.1);
   }
   40% {
      -webkit-transform: scale3d(0.9, 0.9, 0.9);
      transform: scale3d(0.9, 0.9, 0.9);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(1.03, 1.03, 1.03);
      transform: scale3d(1.03, 1.03, 1.03);
   }
   80% {
      -webkit-transform: scale3d(0.97, 0.97, 0.97);
      transform: scale3d(0.97, 0.97, 0.97);
   }
   to {
      opacity: 1;
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
}

@keyframes bounceIn {
   0%,
   20%,
   40%,
   60%,
   80%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.3, 0.3, 0.3);
      transform: scale3d(0.3, 0.3, 0.3);
   }
   20% {
      -webkit-transform: scale3d(1.1, 1.1, 1.1);
      transform: scale3d(1.1, 1.1, 1.1);
   }
   40% {
      -webkit-transform: scale3d(0.9, 0.9, 0.9);
      transform: scale3d(0.9, 0.9, 0.9);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(1.03, 1.03, 1.03);
      transform: scale3d(1.03, 1.03, 1.03);
   }
   80% {
      -webkit-transform: scale3d(0.97, 0.97, 0.97);
      transform: scale3d(0.97, 0.97, 0.97);
   }
   to {
      opacity: 1;
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
   }
}

.bounceIn {
   -webkit-animation-name: bounceIn;
   animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
   0%,
   60%,
   75%,
   90%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, -3000px, 0);
      transform: translate3d(0, -3000px, 0);
   }
   60% {
      opacity: 1;
      -webkit-transform: translate3d(0, 25px, 0);
      transform: translate3d(0, 25px, 0);
   }
   75% {
      -webkit-transform: translate3d(0, -10px, 0);
      transform: translate3d(0, -10px, 0);
   }
   90% {
      -webkit-transform: translate3d(0, 5px, 0);
      transform: translate3d(0, 5px, 0);
   }
   to {
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes bounceInDown {
   0%,
   60%,
   75%,
   90%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, -3000px, 0);
      transform: translate3d(0, -3000px, 0);
   }
   60% {
      opacity: 1;
      -webkit-transform: translate3d(0, 25px, 0);
      transform: translate3d(0, 25px, 0);
   }
   75% {
      -webkit-transform: translate3d(0, -10px, 0);
      transform: translate3d(0, -10px, 0);
   }
   90% {
      -webkit-transform: translate3d(0, 5px, 0);
      transform: translate3d(0, 5px, 0);
   }
   to {
      -webkit-transform: none;
      transform: none;
   }
}

.bounceInDown {
   -webkit-animation-name: bounceInDown;
   animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
   0%,
   60%,
   75%,
   90%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-3000px, 0, 0);
      transform: translate3d(-3000px, 0, 0);
   }
   60% {
      opacity: 1;
      -webkit-transform: translate3d(25px, 0, 0);
      transform: translate3d(25px, 0, 0);
   }
   75% {
      -webkit-transform: translate3d(-10px, 0, 0);
      transform: translate3d(-10px, 0, 0);
   }
   90% {
      -webkit-transform: translate3d(5px, 0, 0);
      transform: translate3d(5px, 0, 0);
   }
   to {
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes bounceInLeft {
   0%,
   60%,
   75%,
   90%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-3000px, 0, 0);
      transform: translate3d(-3000px, 0, 0);
   }
   60% {
      opacity: 1;
      -webkit-transform: translate3d(25px, 0, 0);
      transform: translate3d(25px, 0, 0);
   }
   75% {
      -webkit-transform: translate3d(-10px, 0, 0);
      transform: translate3d(-10px, 0, 0);
   }
   90% {
      -webkit-transform: translate3d(5px, 0, 0);
      transform: translate3d(5px, 0, 0);
   }
   to {
      -webkit-transform: none;
      transform: none;
   }
}

.bounceInLeft {
   -webkit-animation-name: bounceInLeft;
   animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
   0%,
   60%,
   75%,
   90%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: translate3d(3000px, 0, 0);
      transform: translate3d(3000px, 0, 0);
   }
   60% {
      opacity: 1;
      -webkit-transform: translate3d(-25px, 0, 0);
      transform: translate3d(-25px, 0, 0);
   }
   75% {
      -webkit-transform: translate3d(10px, 0, 0);
      transform: translate3d(10px, 0, 0);
   }
   90% {
      -webkit-transform: translate3d(-5px, 0, 0);
      transform: translate3d(-5px, 0, 0);
   }
   to {
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes bounceInRight {
   0%,
   60%,
   75%,
   90%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: translate3d(3000px, 0, 0);
      transform: translate3d(3000px, 0, 0);
   }
   60% {
      opacity: 1;
      -webkit-transform: translate3d(-25px, 0, 0);
      transform: translate3d(-25px, 0, 0);
   }
   75% {
      -webkit-transform: translate3d(10px, 0, 0);
      transform: translate3d(10px, 0, 0);
   }
   90% {
      -webkit-transform: translate3d(-5px, 0, 0);
      transform: translate3d(-5px, 0, 0);
   }
   to {
      -webkit-transform: none;
      transform: none;
   }
}

.bounceInRight {
   -webkit-animation-name: bounceInRight;
   animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
   0%,
   60%,
   75%,
   90%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, 3000px, 0);
      transform: translate3d(0, 3000px, 0);
   }
   60% {
      opacity: 1;
      -webkit-transform: translate3d(0, -20px, 0);
      transform: translate3d(0, -20px, 0);
   }
   75% {
      -webkit-transform: translate3d(0, 10px, 0);
      transform: translate3d(0, 10px, 0);
   }
   90% {
      -webkit-transform: translate3d(0, -5px, 0);
      transform: translate3d(0, -5px, 0);
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

@keyframes bounceInUp {
   0%,
   60%,
   75%,
   90%,
   to {
      -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
   }
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, 3000px, 0);
      transform: translate3d(0, 3000px, 0);
   }
   60% {
      opacity: 1;
      -webkit-transform: translate3d(0, -20px, 0);
      transform: translate3d(0, -20px, 0);
   }
   75% {
      -webkit-transform: translate3d(0, 10px, 0);
      transform: translate3d(0, 10px, 0);
   }
   90% {
      -webkit-transform: translate3d(0, -5px, 0);
      transform: translate3d(0, -5px, 0);
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

.bounceInUp {
   -webkit-animation-name: bounceInUp;
   animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
   20% {
      -webkit-transform: scale3d(0.9, 0.9, 0.9);
      transform: scale3d(0.9, 0.9, 0.9);
   }
   50%,
   55% {
      opacity: 1;
      -webkit-transform: scale3d(1.1, 1.1, 1.1);
      transform: scale3d(1.1, 1.1, 1.1);
   }
   to {
      opacity: 0;
      -webkit-transform: scale3d(0.3, 0.3, 0.3);
      transform: scale3d(0.3, 0.3, 0.3);
   }
}

@keyframes bounceOut {
   20% {
      -webkit-transform: scale3d(0.9, 0.9, 0.9);
      transform: scale3d(0.9, 0.9, 0.9);
   }
   50%,
   55% {
      opacity: 1;
      -webkit-transform: scale3d(1.1, 1.1, 1.1);
      transform: scale3d(1.1, 1.1, 1.1);
   }
   to {
      opacity: 0;
      -webkit-transform: scale3d(0.3, 0.3, 0.3);
      transform: scale3d(0.3, 0.3, 0.3);
   }
}

.bounceOut {
   -webkit-animation-name: bounceOut;
   animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
   20% {
      -webkit-transform: translate3d(0, 10px, 0);
      transform: translate3d(0, 10px, 0);
   }
   40%,
   45% {
      opacity: 1;
      -webkit-transform: translate3d(0, -20px, 0);
      transform: translate3d(0, -20px, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, 2000px, 0);
      transform: translate3d(0, 2000px, 0);
   }
}

@keyframes bounceOutDown {
   20% {
      -webkit-transform: translate3d(0, 10px, 0);
      transform: translate3d(0, 10px, 0);
   }
   40%,
   45% {
      opacity: 1;
      -webkit-transform: translate3d(0, -20px, 0);
      transform: translate3d(0, -20px, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, 2000px, 0);
      transform: translate3d(0, 2000px, 0);
   }
}

.bounceOutDown {
   -webkit-animation-name: bounceOutDown;
   animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
   20% {
      opacity: 1;
      -webkit-transform: translate3d(20px, 0, 0);
      transform: translate3d(20px, 0, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(-2000px, 0, 0);
      transform: translate3d(-2000px, 0, 0);
   }
}

@keyframes bounceOutLeft {
   20% {
      opacity: 1;
      -webkit-transform: translate3d(20px, 0, 0);
      transform: translate3d(20px, 0, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(-2000px, 0, 0);
      transform: translate3d(-2000px, 0, 0);
   }
}

.bounceOutLeft {
   -webkit-animation-name: bounceOutLeft;
   animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
   20% {
      opacity: 1;
      -webkit-transform: translate3d(-20px, 0, 0);
      transform: translate3d(-20px, 0, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(2000px, 0, 0);
      transform: translate3d(2000px, 0, 0);
   }
}

@keyframes bounceOutRight {
   20% {
      opacity: 1;
      -webkit-transform: translate3d(-20px, 0, 0);
      transform: translate3d(-20px, 0, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(2000px, 0, 0);
      transform: translate3d(2000px, 0, 0);
   }
}

.bounceOutRight {
   -webkit-animation-name: bounceOutRight;
   animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
   20% {
      -webkit-transform: translate3d(0, -10px, 0);
      transform: translate3d(0, -10px, 0);
   }
   40%,
   45% {
      opacity: 1;
      -webkit-transform: translate3d(0, 20px, 0);
      transform: translate3d(0, 20px, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, -2000px, 0);
      transform: translate3d(0, -2000px, 0);
   }
}

@keyframes bounceOutUp {
   20% {
      -webkit-transform: translate3d(0, -10px, 0);
      transform: translate3d(0, -10px, 0);
   }
   40%,
   45% {
      opacity: 1;
      -webkit-transform: translate3d(0, 20px, 0);
      transform: translate3d(0, 20px, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, -2000px, 0);
      transform: translate3d(0, -2000px, 0);
   }
}

.bounceOutUp {
   -webkit-animation-name: bounceOutUp;
   animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
   0% {
      opacity: 0;
   }
   to {
      opacity: 1;
   }
}

@keyframes fadeIn {
   0% {
      opacity: 0;
   }
   to {
      opacity: 1;
   }
}

.fadeIn {
   -webkit-animation-name: fadeIn;
   animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, -100%, 0);
      transform: translate3d(0, -100%, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes fadeInDown {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, -100%, 0);
      transform: translate3d(0, -100%, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

.fadeInDown {
   -webkit-animation-name: fadeInDown;
   animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, -2000px, 0);
      transform: translate3d(0, -2000px, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes fadeInDownBig {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, -2000px, 0);
      transform: translate3d(0, -2000px, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

.fadeInDownBig {
   -webkit-animation-name: fadeInDownBig;
   animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes fadeInLeft {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

.fadeInLeft {
   -webkit-animation-name: fadeInLeft;
   animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-2000px, 0, 0);
      transform: translate3d(-2000px, 0, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes fadeInLeftBig {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-2000px, 0, 0);
      transform: translate3d(-2000px, 0, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

.fadeInLeftBig {
   -webkit-animation-name: fadeInLeftBig;
   animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes fadeInRight {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

.fadeInRight {
   -webkit-animation-name: fadeInRight;
   animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(2000px, 0, 0);
      transform: translate3d(2000px, 0, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes fadeInRightBig {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(2000px, 0, 0);
      transform: translate3d(2000px, 0, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

.fadeInRightBig {
   -webkit-animation-name: fadeInRightBig;
   animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, 100%, 0);
      transform: translate3d(0, 100%, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes fadeInUp {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, 100%, 0);
      transform: translate3d(0, 100%, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

.fadeInUp {
   -webkit-animation-name: fadeInUp;
   animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, 2000px, 0);
      transform: translate3d(0, 2000px, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes fadeInUpBig {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, 2000px, 0);
      transform: translate3d(0, 2000px, 0);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

.fadeInUpBig {
   -webkit-animation-name: fadeInUpBig;
   animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
   }
}

@keyframes fadeOut {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
   }
}

.fadeOut {
   -webkit-animation-name: fadeOut;
   animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, 100%, 0);
      transform: translate3d(0, 100%, 0);
   }
}

@keyframes fadeOutDown {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, 100%, 0);
      transform: translate3d(0, 100%, 0);
   }
}

.fadeOutDown {
   -webkit-animation-name: fadeOutDown;
   animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, 2000px, 0);
      transform: translate3d(0, 2000px, 0);
   }
}

@keyframes fadeOutDownBig {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, 2000px, 0);
      transform: translate3d(0, 2000px, 0);
   }
}

.fadeOutDownBig {
   -webkit-animation-name: fadeOutDownBig;
   animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
   }
}

@keyframes fadeOutLeft {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
   }
}

.fadeOutLeft {
   -webkit-animation-name: fadeOutLeft;
   animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(-2000px, 0, 0);
      transform: translate3d(-2000px, 0, 0);
   }
}

@keyframes fadeOutLeftBig {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(-2000px, 0, 0);
      transform: translate3d(-2000px, 0, 0);
   }
}

.fadeOutLeftBig {
   -webkit-animation-name: fadeOutLeftBig;
   animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
   }
}

@keyframes fadeOutRight {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
   }
}

.fadeOutRight {
   -webkit-animation-name: fadeOutRight;
   animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(2000px, 0, 0);
      transform: translate3d(2000px, 0, 0);
   }
}

@keyframes fadeOutRightBig {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(2000px, 0, 0);
      transform: translate3d(2000px, 0, 0);
   }
}

.fadeOutRightBig {
   -webkit-animation-name: fadeOutRightBig;
   animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, -100%, 0);
      transform: translate3d(0, -100%, 0);
   }
}

@keyframes fadeOutUp {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, -100%, 0);
      transform: translate3d(0, -100%, 0);
   }
}

.fadeOutUp {
   -webkit-animation-name: fadeOutUp;
   animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, -2000px, 0);
      transform: translate3d(0, -2000px, 0);
   }
}

@keyframes fadeOutUpBig {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(0, -2000px, 0);
      transform: translate3d(0, -2000px, 0);
   }
}

.fadeOutUpBig {
   -webkit-animation-name: fadeOutUpBig;
   animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
   0% {
      -webkit-transform: perspective(400px) rotateY(-1turn);
      transform: perspective(400px) rotateY(-1turn);
   }
   0%,
   40% {
      -webkit-animation-timing-function: ease-out;
      animation-timing-function: ease-out;
   }
   40% {
      -webkit-transform: perspective(400px) translateZ(150px) rotateY(-190deg);
      transform: perspective(400px) translateZ(150px) rotateY(-190deg);
   }
   50% {
      -webkit-transform: perspective(400px) translateZ(150px) rotateY(-170deg);
      transform: perspective(400px) translateZ(150px) rotateY(-170deg);
   }
   50%,
   80% {
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
   }
   80% {
      -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
      transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
   }
   to {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
   }
}

@keyframes flip {
   0% {
      -webkit-transform: perspective(400px) rotateY(-1turn);
      transform: perspective(400px) rotateY(-1turn);
   }
   0%,
   40% {
      -webkit-animation-timing-function: ease-out;
      animation-timing-function: ease-out;
   }
   40% {
      -webkit-transform: perspective(400px) translateZ(150px) rotateY(-190deg);
      transform: perspective(400px) translateZ(150px) rotateY(-190deg);
   }
   50% {
      -webkit-transform: perspective(400px) translateZ(150px) rotateY(-170deg);
      transform: perspective(400px) translateZ(150px) rotateY(-170deg);
   }
   50%,
   80% {
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
   }
   80% {
      -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
      transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
   }
   to {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
   }
}

.animated.flip {
   -webkit-backface-visibility: visible;
   backface-visibility: visible;
   -webkit-animation-name: flip;
   animation-name: flip;
}

@-webkit-keyframes flipInX {
   0% {
      -webkit-transform: perspective(400px) rotateX(90deg);
      transform: perspective(400px) rotateX(90deg);
      opacity: 0;
   }
   0%,
   40% {
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
   }
   40% {
      -webkit-transform: perspective(400px) rotateX(-20deg);
      transform: perspective(400px) rotateX(-20deg);
   }
   60% {
      -webkit-transform: perspective(400px) rotateX(10deg);
      transform: perspective(400px) rotateX(10deg);
      opacity: 1;
   }
   80% {
      -webkit-transform: perspective(400px) rotateX(-5deg);
      transform: perspective(400px) rotateX(-5deg);
   }
   to {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
   }
}

@keyframes flipInX {
   0% {
      -webkit-transform: perspective(400px) rotateX(90deg);
      transform: perspective(400px) rotateX(90deg);
      opacity: 0;
   }
   0%,
   40% {
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
   }
   40% {
      -webkit-transform: perspective(400px) rotateX(-20deg);
      transform: perspective(400px) rotateX(-20deg);
   }
   60% {
      -webkit-transform: perspective(400px) rotateX(10deg);
      transform: perspective(400px) rotateX(10deg);
      opacity: 1;
   }
   80% {
      -webkit-transform: perspective(400px) rotateX(-5deg);
      transform: perspective(400px) rotateX(-5deg);
   }
   to {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
   }
}

.flipInX {
   -webkit-backface-visibility: visible !important;
   backface-visibility: visible !important;
   -webkit-animation-name: flipInX;
   animation-name: flipInX;
}

@-webkit-keyframes flipInY {
   0% {
      -webkit-transform: perspective(400px) rotateY(90deg);
      transform: perspective(400px) rotateY(90deg);
      opacity: 0;
   }
   0%,
   40% {
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
   }
   40% {
      -webkit-transform: perspective(400px) rotateY(-20deg);
      transform: perspective(400px) rotateY(-20deg);
   }
   60% {
      -webkit-transform: perspective(400px) rotateY(10deg);
      transform: perspective(400px) rotateY(10deg);
      opacity: 1;
   }
   80% {
      -webkit-transform: perspective(400px) rotateY(-5deg);
      transform: perspective(400px) rotateY(-5deg);
   }
   to {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
   }
}

@keyframes flipInY {
   0% {
      -webkit-transform: perspective(400px) rotateY(90deg);
      transform: perspective(400px) rotateY(90deg);
      opacity: 0;
   }
   0%,
   40% {
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
   }
   40% {
      -webkit-transform: perspective(400px) rotateY(-20deg);
      transform: perspective(400px) rotateY(-20deg);
   }
   60% {
      -webkit-transform: perspective(400px) rotateY(10deg);
      transform: perspective(400px) rotateY(10deg);
      opacity: 1;
   }
   80% {
      -webkit-transform: perspective(400px) rotateY(-5deg);
      transform: perspective(400px) rotateY(-5deg);
   }
   to {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
   }
}

.flipInY {
   -webkit-backface-visibility: visible !important;
   backface-visibility: visible !important;
   -webkit-animation-name: flipInY;
   animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
   0% {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
   }
   30% {
      -webkit-transform: perspective(400px) rotateX(-20deg);
      transform: perspective(400px) rotateX(-20deg);
      opacity: 1;
   }
   to {
      -webkit-transform: perspective(400px) rotateX(90deg);
      transform: perspective(400px) rotateX(90deg);
      opacity: 0;
   }
}

@keyframes flipOutX {
   0% {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
   }
   30% {
      -webkit-transform: perspective(400px) rotateX(-20deg);
      transform: perspective(400px) rotateX(-20deg);
      opacity: 1;
   }
   to {
      -webkit-transform: perspective(400px) rotateX(90deg);
      transform: perspective(400px) rotateX(90deg);
      opacity: 0;
   }
}

.flipOutX {
   -webkit-animation-name: flipOutX;
   animation-name: flipOutX;
   -webkit-backface-visibility: visible !important;
   backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
   0% {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
   }
   30% {
      -webkit-transform: perspective(400px) rotateY(-15deg);
      transform: perspective(400px) rotateY(-15deg);
      opacity: 1;
   }
   to {
      -webkit-transform: perspective(400px) rotateY(90deg);
      transform: perspective(400px) rotateY(90deg);
      opacity: 0;
   }
}

@keyframes flipOutY {
   0% {
      -webkit-transform: perspective(400px);
      transform: perspective(400px);
   }
   30% {
      -webkit-transform: perspective(400px) rotateY(-15deg);
      transform: perspective(400px) rotateY(-15deg);
      opacity: 1;
   }
   to {
      -webkit-transform: perspective(400px) rotateY(90deg);
      transform: perspective(400px) rotateY(90deg);
      opacity: 0;
   }
}

.flipOutY {
   -webkit-backface-visibility: visible !important;
   backface-visibility: visible !important;
   -webkit-animation-name: flipOutY;
   animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
   0% {
      -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
      transform: translate3d(100%, 0, 0) skewX(-30deg);
      opacity: 0;
   }
   60% {
      -webkit-transform: skewX(20deg);
      transform: skewX(20deg);
   }
   60%,
   80% {
      opacity: 1;
   }
   80% {
      -webkit-transform: skewX(-5deg);
      transform: skewX(-5deg);
   }
   to {
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

@keyframes lightSpeedIn {
   0% {
      -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
      transform: translate3d(100%, 0, 0) skewX(-30deg);
      opacity: 0;
   }
   60% {
      -webkit-transform: skewX(20deg);
      transform: skewX(20deg);
   }
   60%,
   80% {
      opacity: 1;
   }
   80% {
      -webkit-transform: skewX(-5deg);
      transform: skewX(-5deg);
   }
   to {
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

.lightSpeedIn {
   -webkit-animation-name: lightSpeedIn;
   animation-name: lightSpeedIn;
   -webkit-animation-timing-function: ease-out;
   animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
   0% {
      opacity: 1;
   }
   to {
      -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
      transform: translate3d(100%, 0, 0) skewX(30deg);
      opacity: 0;
   }
}

@keyframes lightSpeedOut {
   0% {
      opacity: 1;
   }
   to {
      -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
      transform: translate3d(100%, 0, 0) skewX(30deg);
      opacity: 0;
   }
}

.lightSpeedOut {
   -webkit-animation-name: lightSpeedOut;
   animation-name: lightSpeedOut;
   -webkit-animation-timing-function: ease-in;
   animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
   0% {
      transform-origin: center;
      -webkit-transform: rotate(-200deg);
      transform: rotate(-200deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: center;
   }
   to {
      transform-origin: center;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

@keyframes rotateIn {
   0% {
      transform-origin: center;
      -webkit-transform: rotate(-200deg);
      transform: rotate(-200deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: center;
   }
   to {
      transform-origin: center;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

.rotateIn {
   -webkit-animation-name: rotateIn;
   animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
   0% {
      transform-origin: left bottom;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: left bottom;
   }
   to {
      transform-origin: left bottom;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

@keyframes rotateInDownLeft {
   0% {
      transform-origin: left bottom;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: left bottom;
   }
   to {
      transform-origin: left bottom;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

.rotateInDownLeft {
   -webkit-animation-name: rotateInDownLeft;
   animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
   0% {
      transform-origin: right bottom;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: right bottom;
   }
   to {
      transform-origin: right bottom;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

@keyframes rotateInDownRight {
   0% {
      transform-origin: right bottom;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: right bottom;
   }
   to {
      transform-origin: right bottom;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

.rotateInDownRight {
   -webkit-animation-name: rotateInDownRight;
   animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
   0% {
      transform-origin: left bottom;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: left bottom;
   }
   to {
      transform-origin: left bottom;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

@keyframes rotateInUpLeft {
   0% {
      transform-origin: left bottom;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: left bottom;
   }
   to {
      transform-origin: left bottom;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

.rotateInUpLeft {
   -webkit-animation-name: rotateInUpLeft;
   animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
   0% {
      transform-origin: right bottom;
      -webkit-transform: rotate(-90deg);
      transform: rotate(-90deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: right bottom;
   }
   to {
      transform-origin: right bottom;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

@keyframes rotateInUpRight {
   0% {
      transform-origin: right bottom;
      -webkit-transform: rotate(-90deg);
      transform: rotate(-90deg);
      opacity: 0;
   }
   0%,
   to {
      -webkit-transform-origin: right bottom;
   }
   to {
      transform-origin: right bottom;
      -webkit-transform: none;
      transform: none;
      opacity: 1;
   }
}

.rotateInUpRight {
   -webkit-animation-name: rotateInUpRight;
   animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
   0% {
      transform-origin: center;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: center;
   }
   to {
      transform-origin: center;
      -webkit-transform: rotate(200deg);
      transform: rotate(200deg);
      opacity: 0;
   }
}

@keyframes rotateOut {
   0% {
      transform-origin: center;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: center;
   }
   to {
      transform-origin: center;
      -webkit-transform: rotate(200deg);
      transform: rotate(200deg);
      opacity: 0;
   }
}

.rotateOut {
   -webkit-animation-name: rotateOut;
   animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
   0% {
      transform-origin: left bottom;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: left bottom;
   }
   to {
      transform-origin: left bottom;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      opacity: 0;
   }
}

@keyframes rotateOutDownLeft {
   0% {
      transform-origin: left bottom;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: left bottom;
   }
   to {
      transform-origin: left bottom;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      opacity: 0;
   }
}

.rotateOutDownLeft {
   -webkit-animation-name: rotateOutDownLeft;
   animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
   0% {
      transform-origin: right bottom;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: right bottom;
   }
   to {
      transform-origin: right bottom;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      opacity: 0;
   }
}

@keyframes rotateOutDownRight {
   0% {
      transform-origin: right bottom;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: right bottom;
   }
   to {
      transform-origin: right bottom;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      opacity: 0;
   }
}

.rotateOutDownRight {
   -webkit-animation-name: rotateOutDownRight;
   animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
   0% {
      transform-origin: left bottom;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: left bottom;
   }
   to {
      transform-origin: left bottom;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      opacity: 0;
   }
}

@keyframes rotateOutUpLeft {
   0% {
      transform-origin: left bottom;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: left bottom;
   }
   to {
      transform-origin: left bottom;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      opacity: 0;
   }
}

.rotateOutUpLeft {
   -webkit-animation-name: rotateOutUpLeft;
   animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
   0% {
      transform-origin: right bottom;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: right bottom;
   }
   to {
      transform-origin: right bottom;
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg);
      opacity: 0;
   }
}

@keyframes rotateOutUpRight {
   0% {
      transform-origin: right bottom;
      opacity: 1;
   }
   0%,
   to {
      -webkit-transform-origin: right bottom;
   }
   to {
      transform-origin: right bottom;
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg);
      opacity: 0;
   }
}

.rotateOutUpRight {
   -webkit-animation-name: rotateOutUpRight;
   animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
   0% {
      transform-origin: top left;
   }
   0%,
   20%,
   60% {
      -webkit-transform-origin: top left;
      -webkit-animation-timing-function: ease-in-out;
      animation-timing-function: ease-in-out;
   }
   20%,
   60% {
      -webkit-transform: rotate(80deg);
      transform: rotate(80deg);
      transform-origin: top left;
   }
   40%,
   80% {
      -webkit-transform: rotate(60deg);
      transform: rotate(60deg);
      -webkit-transform-origin: top left;
      transform-origin: top left;
      -webkit-animation-timing-function: ease-in-out;
      animation-timing-function: ease-in-out;
      opacity: 1;
   }
   to {
      -webkit-transform: translate3d(0, 700px, 0);
      transform: translate3d(0, 700px, 0);
      opacity: 0;
   }
}

@keyframes hinge {
   0% {
      transform-origin: top left;
   }
   0%,
   20%,
   60% {
      -webkit-transform-origin: top left;
      -webkit-animation-timing-function: ease-in-out;
      animation-timing-function: ease-in-out;
   }
   20%,
   60% {
      -webkit-transform: rotate(80deg);
      transform: rotate(80deg);
      transform-origin: top left;
   }
   40%,
   80% {
      -webkit-transform: rotate(60deg);
      transform: rotate(60deg);
      -webkit-transform-origin: top left;
      transform-origin: top left;
      -webkit-animation-timing-function: ease-in-out;
      animation-timing-function: ease-in-out;
      opacity: 1;
   }
   to {
      -webkit-transform: translate3d(0, 700px, 0);
      transform: translate3d(0, 700px, 0);
      opacity: 0;
   }
}

.hinge {
   -webkit-animation-name: hinge;
   animation-name: hinge;
}

@-webkit-keyframes rollIn {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
      transform: translate3d(-100%, 0, 0) rotate(-120deg);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

@keyframes rollIn {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
      transform: translate3d(-100%, 0, 0) rotate(-120deg);
   }
   to {
      opacity: 1;
      -webkit-transform: none;
      transform: none;
   }
}

.rollIn {
   -webkit-animation-name: rollIn;
   animation-name: rollIn;
}

@-webkit-keyframes rollOut {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
      transform: translate3d(100%, 0, 0) rotate(120deg);
   }
}

@keyframes rollOut {
   0% {
      opacity: 1;
   }
   to {
      opacity: 0;
      -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
      transform: translate3d(100%, 0, 0) rotate(120deg);
   }
}

.rollOut {
   -webkit-animation-name: rollOut;
   animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.3, 0.3, 0.3);
      transform: scale3d(0.3, 0.3, 0.3);
   }
   50% {
      opacity: 1;
   }
}

@keyframes zoomIn {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.3, 0.3, 0.3);
      transform: scale3d(0.3, 0.3, 0.3);
   }
   50% {
      opacity: 1;
   }
}

.zoomIn {
   -webkit-animation-name: zoomIn;
   animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

@keyframes zoomInDown {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

.zoomInDown {
   -webkit-animation-name: zoomInDown;
   animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

@keyframes zoomInLeft {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

.zoomInLeft {
   -webkit-animation-name: zoomInLeft;
   animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

@keyframes zoomInRight {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

.zoomInRight {
   -webkit-animation-name: zoomInRight;
   animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

@keyframes zoomInUp {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   60% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

.zoomInUp {
   -webkit-animation-name: zoomInUp;
   animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
   0% {
      opacity: 1;
   }
   50% {
      -webkit-transform: scale3d(0.3, 0.3, 0.3);
      transform: scale3d(0.3, 0.3, 0.3);
   }
   50%,
   to {
      opacity: 0;
   }
}

@keyframes zoomOut {
   0% {
      opacity: 1;
   }
   50% {
      -webkit-transform: scale3d(0.3, 0.3, 0.3);
      transform: scale3d(0.3, 0.3, 0.3);
   }
   50%,
   to {
      opacity: 0;
   }
}

.zoomOut {
   -webkit-animation-name: zoomOut;
   animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
   40% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   to {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
      -webkit-transform-origin: center bottom;
      transform-origin: center bottom;
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

@keyframes zoomOutDown {
   40% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   to {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
      -webkit-transform-origin: center bottom;
      transform-origin: center bottom;
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

.zoomOutDown {
   -webkit-animation-name: zoomOutDown;
   animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
   40% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
      transform: scale(0.1) translate3d(-2000px, 0, 0);
      -webkit-transform-origin: left center;
      transform-origin: left center;
   }
}

@keyframes zoomOutLeft {
   40% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
      transform: scale(0.1) translate3d(-2000px, 0, 0);
      -webkit-transform-origin: left center;
      transform-origin: left center;
   }
}

.zoomOutLeft {
   -webkit-animation-name: zoomOutLeft;
   animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
   40% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
      transform: scale(0.1) translate3d(2000px, 0, 0);
      -webkit-transform-origin: right center;
      transform-origin: right center;
   }
}

@keyframes zoomOutRight {
   40% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
   }
   to {
      opacity: 0;
      -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
      transform: scale(0.1) translate3d(2000px, 0, 0);
      -webkit-transform-origin: right center;
      transform-origin: right center;
   }
}

.zoomOutRight {
   -webkit-animation-name: zoomOutRight;
   animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
   40% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   to {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
      -webkit-transform-origin: center bottom;
      transform-origin: center bottom;
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

@keyframes zoomOutUp {
   40% {
      opacity: 1;
      -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
      transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
      -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
   }
   to {
      opacity: 0;
      -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
      transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
      -webkit-transform-origin: center bottom;
      transform-origin: center bottom;
      -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
   }
}

.zoomOutUp {
   -webkit-animation-name: zoomOutUp;
   animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
   0% {
      -webkit-transform: translate3d(0, -100%, 0);
      transform: translate3d(0, -100%, 0);
      visibility: visible;
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

@keyframes slideInDown {
   0% {
      -webkit-transform: translate3d(0, -100%, 0);
      transform: translate3d(0, -100%, 0);
      visibility: visible;
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

.slideInDown {
   -webkit-animation-name: slideInDown;
   animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
   0% {
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
      visibility: visible;
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

@keyframes slideInLeft {
   0% {
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
      visibility: visible;
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

.slideInLeft {
   -webkit-animation-name: slideInLeft;
   animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
   0% {
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
      visibility: visible;
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

@keyframes slideInRight {
   0% {
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
      visibility: visible;
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

.slideInRight {
   -webkit-animation-name: slideInRight;
   animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
   0% {
      -webkit-transform: translate3d(0, 100%, 0);
      transform: translate3d(0, 100%, 0);
      visibility: visible;
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

@keyframes slideInUp {
   0% {
      -webkit-transform: translate3d(0, 100%, 0);
      transform: translate3d(0, 100%, 0);
      visibility: visible;
   }
   to {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
}

.slideInUp {
   -webkit-animation-name: slideInUp;
   animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
   0% {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   to {
      visibility: hidden;
      -webkit-transform: translate3d(0, 100%, 0);
      transform: translate3d(0, 100%, 0);
   }
}

@keyframes slideOutDown {
   0% {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   to {
      visibility: hidden;
      -webkit-transform: translate3d(0, 100%, 0);
      transform: translate3d(0, 100%, 0);
   }
}

.slideOutDown {
   -webkit-animation-name: slideOutDown;
   animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
   0% {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   to {
      visibility: hidden;
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
   }
}

@keyframes slideOutLeft {
   0% {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   to {
      visibility: hidden;
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
   }
}

.slideOutLeft {
   -webkit-animation-name: slideOutLeft;
   animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
   0% {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   to {
      visibility: hidden;
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
   }
}

@keyframes slideOutRight {
   0% {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   to {
      visibility: hidden;
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
   }
}

.slideOutRight {
   -webkit-animation-name: slideOutRight;
   animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
   0% {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   to {
      visibility: hidden;
      -webkit-transform: translate3d(0, -100%, 0);
      transform: translate3d(0, -100%, 0);
   }
}

@keyframes slideOutUp {
   0% {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
   }
   to {
      visibility: hidden;
      -webkit-transform: translate3d(0, -100%, 0);
      transform: translate3d(0, -100%, 0);
   }
}

.slideOutUp {
   -webkit-animation-name: slideOutUp;
   animation-name: slideOutUp;
}

@font-face {
   font-family: "simple-line-icons";
   src: url("https://cdnjs.cloudflare.com/ajax/libs/simple-line-icons/2.4.1/fonts/Simple-Line-Icons.eot");
   src:
      url("https://cdnjs.cloudflare.com/ajax/libs/simple-line-icons/2.4.1/fonts/Simple-Line-Icons.eot#iefix")
         format("embedded-opentype"),
      url("https://cdnjs.cloudflare.com/ajax/libs/simple-line-icons/2.4.1/fonts/Simple-Line-Icons.woff2")
         format("woff2"),
      url("https://cdnjs.cloudflare.com/ajax/libs/simple-line-icons/2.4.1/fonts/Simple-Line-Icons.ttf")
         format("truetype"),
      url("https://cdnjs.cloudflare.com/ajax/libs/simple-line-icons/2.4.1/fonts/Simple-Line-Icons.woff") format("woff"),
      url("https://cdnjs.cloudflare.com/ajax/libs/simple-line-icons/2.4.1/fonts/Simple-Line-Icons.svg") format("svg");
   font-weight: normal;
   font-style: normal;
}
/*
 Use the following CSS code if you want to have a class per icon.
 Instead of a list of all class selectors, you can use the generic [class*="icon-"] selector, but it's slower:
*/

.icon-user,
.icon-people,
.icon-user-female,
.icon-user-follow,
.icon-user-following,
.icon-user-unfollow,
.icon-login,
.icon-logout,
.icon-emotsmile,
.icon-phone,
.icon-call-end,
.icon-call-in,
.icon-call-out,
.icon-map,
.icon-location-pin,
.icon-direction,
.icon-directions,
.icon-compass,
.icon-layers,
.icon-menu,
.icon-list,
.icon-options-vertical,
.icon-options,
.icon-arrow-down,
.icon-arrow-left,
.icon-arrow-right,
.icon-arrow-up,
.icon-arrow-up-circle,
.icon-arrow-left-circle,
.icon-arrow-right-circle,
.icon-arrow-down-circle,
.icon-check,
.icon-clock,
.icon-plus,
.icon-minus,
.icon-close,
.icon-exclamation,
.icon-organization,
.icon-trophy,
.icon-screen-smartphone,
.icon-screen-desktop,
.icon-plane,
.icon-notebook,
.icon-mustache,
.icon-mouse,
.icon-magnet,
.icon-energy,
.icon-disc,
.icon-cursor,
.icon-cursor-move,
.icon-crop,
.icon-chemistry,
.icon-speedometer,
.icon-shield,
.icon-screen-tablet,
.icon-magic-wand,
.icon-hourglass,
.icon-graduation,
.icon-ghost,
.icon-game-controller,
.icon-fire,
.icon-eyeglass,
.icon-envelope-open,
.icon-envelope-letter,
.icon-bell,
.icon-badge,
.icon-anchor,
.icon-wallet,
.icon-vector,
.icon-speech,
.icon-puzzle,
.icon-printer,
.icon-present,
.icon-playlist,
.icon-pin,
.icon-picture,
.icon-handbag,
.icon-globe-alt,
.icon-globe,
.icon-folder-alt,
.icon-folder,
.icon-film,
.icon-feed,
.icon-drop,
.icon-drawer,
.icon-docs,
.icon-doc,
.icon-diamond,
.icon-cup,
.icon-calculator,
.icon-bubbles,
.icon-briefcase,
.icon-book-open,
.icon-basket-loaded,
.icon-basket,
.icon-bag,
.icon-action-undo,
.icon-action-redo,
.icon-wrench,
.icon-umbrella,
.icon-trash,
.icon-tag,
.icon-support,
.icon-frame,
.icon-size-fullscreen,
.icon-size-actual,
.icon-shuffle,
.icon-share-alt,
.icon-share,
.icon-rocket,
.icon-question,
.icon-pie-chart,
.icon-pencil,
.icon-note,
.icon-loop,
.icon-home,
.icon-grid,
.icon-graph,
.icon-microphone,
.icon-music-tone-alt,
.icon-music-tone,
.icon-earphones-alt,
.icon-earphones,
.icon-equalizer,
.icon-like,
.icon-dislike,
.icon-control-start,
.icon-control-rewind,
.icon-control-play,
.icon-control-pause,
.icon-control-forward,
.icon-control-end,
.icon-volume-1,
.icon-volume-2,
.icon-volume-off,
.icon-calendar,
.icon-bulb,
.icon-chart,
.icon-ban,
.icon-bubble,
.icon-camrecorder,
.icon-camera,
.icon-cloud-download,
.icon-cloud-upload,
.icon-envelope,
.icon-eye,
.icon-flag,
.icon-heart,
.icon-info,
.icon-key,
.icon-link,
.icon-lock,
.icon-lock-open,
.icon-magnifier,
.icon-magnifier-add,
.icon-magnifier-remove,
.icon-paper-clip,
.icon-paper-plane,
.icon-power,
.icon-refresh,
.icon-reload,
.icon-settings,
.icon-star,
.icon-symbol-female,
.icon-symbol-male,
.icon-target,
.icon-credit-card,
.icon-paypal,
.icon-social-tumblr,
.icon-social-twitter,
.icon-social-facebook,
.icon-social-instagram,
.icon-social-linkedin,
.icon-social-pinterest,
.icon-social-github,
.icon-social-google,
.icon-social-reddit,
.icon-social-skype,
.icon-social-dribbble,
.icon-social-behance,
.icon-social-foursqare,
.icon-social-soundcloud,
.icon-social-spotify,
.icon-social-stumbleupon,
.icon-social-youtube,
.icon-social-dropbox {
   font-family: "simple-line-icons";
   speak: none;
   font-style: normal;
   font-weight: normal;
   font-variant: normal;
   text-transform: none;
   line-height: 1;
   /* Better Font Rendering =========== */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}

.icon-user:before {
   content: "\e005";
}

.icon-people:before {
   content: "\e001";
}

.icon-user-female:before {
   content: "\e000";
}

.icon-user-follow:before {
   content: "\e002";
}

.icon-user-following:before {
   content: "\e003";
}

.icon-user-unfollow:before {
   content: "\e004";
}

.icon-login:before {
   content: "\e066";
}

.icon-logout:before {
   content: "\e065";
}

.icon-emotsmile:before {
   content: "\e021";
}

.icon-phone:before {
   content: "\e600";
}

.icon-call-end:before {
   content: "\e048";
}

.icon-call-in:before {
   content: "\e047";
}

.icon-call-out:before {
   content: "\e046";
}

.icon-map:before {
   content: "\e033";
}

.icon-location-pin:before {
   content: "\e096";
}

.icon-direction:before {
   content: "\e042";
}

.icon-directions:before {
   content: "\e041";
}

.icon-compass:before {
   content: "\e045";
}

.icon-layers:before {
   content: "\e034";
}

.icon-menu:before {
   content: "\e601";
}

.icon-list:before {
   content: "\e067";
}

.icon-options-vertical:before {
   content: "\e602";
}

.icon-options:before {
   content: "\e603";
}

.icon-arrow-down:before {
   content: "\e604";
}

.icon-arrow-left:before {
   content: "\e605";
}

.icon-arrow-right:before {
   content: "\e606";
}

.icon-arrow-up:before {
   content: "\e607";
}

.icon-arrow-up-circle:before {
   content: "\e078";
}

.icon-arrow-left-circle:before {
   content: "\e07a";
}

.icon-arrow-right-circle:before {
   content: "\e079";
}

.icon-arrow-down-circle:before {
   content: "\e07b";
}

.icon-check:before {
   content: "\e080";
}

.icon-clock:before {
   content: "\e081";
}

.icon-plus:before {
   content: "\e095";
}

.icon-minus:before {
   content: "\e615";
}

.icon-close:before {
   content: "\e082";
}

.icon-exclamation:before {
   content: "\e617";
}

.icon-organization:before {
   content: "\e616";
}

.icon-trophy:before {
   content: "\e006";
}

.icon-screen-smartphone:before {
   content: "\e010";
}

.icon-screen-desktop:before {
   content: "\e011";
}

.icon-plane:before {
   content: "\e012";
}

.icon-notebook:before {
   content: "\e013";
}

.icon-mustache:before {
   content: "\e014";
}

.icon-mouse:before {
   content: "\e015";
}

.icon-magnet:before {
   content: "\e016";
}

.icon-energy:before {
   content: "\e020";
}

.icon-disc:before {
   content: "\e022";
}

.icon-cursor:before {
   content: "\e06e";
}

.icon-cursor-move:before {
   content: "\e023";
}

.icon-crop:before {
   content: "\e024";
}

.icon-chemistry:before {
   content: "\e026";
}

.icon-speedometer:before {
   content: "\e007";
}

.icon-shield:before {
   content: "\e00e";
}

.icon-screen-tablet:before {
   content: "\e00f";
}

.icon-magic-wand:before {
   content: "\e017";
}

.icon-hourglass:before {
   content: "\e018";
}

.icon-graduation:before {
   content: "\e019";
}

.icon-ghost:before {
   content: "\e01a";
}

.icon-game-controller:before {
   content: "\e01b";
}

.icon-fire:before {
   content: "\e01c";
}

.icon-eyeglass:before {
   content: "\e01d";
}

.icon-envelope-open:before {
   content: "\e01e";
}

.icon-envelope-letter:before {
   content: "\e01f";
}

.icon-bell:before {
   content: "\e027";
}

.icon-badge:before {
   content: "\e028";
}

.icon-anchor:before {
   content: "\e029";
}

.icon-wallet:before {
   content: "\e02a";
}

.icon-vector:before {
   content: "\e02b";
}

.icon-speech:before {
   content: "\e02c";
}

.icon-puzzle:before {
   content: "\e02d";
}

.icon-printer:before {
   content: "\e02e";
}

.icon-present:before {
   content: "\e02f";
}

.icon-playlist:before {
   content: "\e030";
}

.icon-pin:before {
   content: "\e031";
}

.icon-picture:before {
   content: "\e032";
}

.icon-handbag:before {
   content: "\e035";
}

.icon-globe-alt:before {
   content: "\e036";
}

.icon-globe:before {
   content: "\e037";
}

.icon-folder-alt:before {
   content: "\e039";
}

.icon-folder:before {
   content: "\e089";
}

.icon-film:before {
   content: "\e03a";
}

.icon-feed:before {
   content: "\e03b";
}

.icon-drop:before {
   content: "\e03e";
}

.icon-drawer:before {
   content: "\e03f";
}

.icon-docs:before {
   content: "\e040";
}

.icon-doc:before {
   content: "\e085";
}

.icon-diamond:before {
   content: "\e043";
}

.icon-cup:before {
   content: "\e044";
}

.icon-calculator:before {
   content: "\e049";
}

.icon-bubbles:before {
   content: "\e04a";
}

.icon-briefcase:before {
   content: "\e04b";
}

.icon-book-open:before {
   content: "\e04c";
}

.icon-basket-loaded:before {
   content: "\e04d";
}

.icon-basket:before {
   content: "\e04e";
}

.icon-bag:before {
   content: "\e04f";
}

.icon-action-undo:before {
   content: "\e050";
}

.icon-action-redo:before {
   content: "\e051";
}

.icon-wrench:before {
   content: "\e052";
}

.icon-umbrella:before {
   content: "\e053";
}

.icon-trash:before {
   content: "\e054";
}

.icon-tag:before {
   content: "\e055";
}

.icon-support:before {
   content: "\e056";
}

.icon-frame:before {
   content: "\e038";
}

.icon-size-fullscreen:before {
   content: "\e057";
}

.icon-size-actual:before {
   content: "\e058";
}

.icon-shuffle:before {
   content: "\e059";
}

.icon-share-alt:before {
   content: "\e05a";
}

.icon-share:before {
   content: "\e05b";
}

.icon-rocket:before {
   content: "\e05c";
}

.icon-question:before {
   content: "\e05d";
}

.icon-pie-chart:before {
   content: "\e05e";
}

.icon-pencil:before {
   content: "\e05f";
}

.icon-note:before {
   content: "\e060";
}

.icon-loop:before {
   content: "\e064";
}

.icon-home:before {
   content: "\e069";
}

.icon-grid:before {
   content: "\e06a";
}

.icon-graph:before {
   content: "\e06b";
}

.icon-microphone:before {
   content: "\e063";
}

.icon-music-tone-alt:before {
   content: "\e061";
}

.icon-music-tone:before {
   content: "\e062";
}

.icon-earphones-alt:before {
   content: "\e03c";
}

.icon-earphones:before {
   content: "\e03d";
}

.icon-equalizer:before {
   content: "\e06c";
}

.icon-like:before {
   content: "\e068";
}

.icon-dislike:before {
   content: "\e06d";
}

.icon-control-start:before {
   content: "\e06f";
}

.icon-control-rewind:before {
   content: "\e070";
}

.icon-control-play:before {
   content: "\e071";
}

.icon-control-pause:before {
   content: "\e072";
}

.icon-control-forward:before {
   content: "\e073";
}

.icon-control-end:before {
   content: "\e074";
}

.icon-volume-1:before {
   content: "\e09f";
}

.icon-volume-2:before {
   content: "\e0a0";
}

.icon-volume-off:before {
   content: "\e0a1";
}

.icon-calendar:before {
   content: "\e075";
}

.icon-bulb:before {
   content: "\e076";
}

.icon-chart:before {
   content: "\e077";
}

.icon-ban:before {
   content: "\e07c";
}

.icon-bubble:before {
   content: "\e07d";
}

.icon-camrecorder:before {
   content: "\e07e";
}

.icon-camera:before {
   content: "\e07f";
}

.icon-cloud-download:before {
   content: "\e083";
}

.icon-cloud-upload:before {
   content: "\e084";
}

.icon-envelope:before {
   content: "\e086";
}

.icon-eye:before {
   content: "\e087";
}

.icon-flag:before {
   content: "\e088";
}

.icon-heart:before {
   content: "\e08a";
}

.icon-info:before {
   content: "\e08b";
}

.icon-key:before {
   content: "\e08c";
}

.icon-link:before {
   content: "\e08d";
}

.icon-lock:before {
   content: "\e08e";
}

.icon-lock-open:before {
   content: "\e08f";
}

.icon-magnifier:before {
   content: "\e090";
}

.icon-magnifier-add:before {
   content: "\e091";
}

.icon-magnifier-remove:before {
   content: "\e092";
}

.icon-paper-clip:before {
   content: "\e093";
}

.icon-paper-plane:before {
   content: "\e094";
}

.icon-power:before {
   content: "\e097";
}

.icon-refresh:before {
   content: "\e098";
}

.icon-reload:before {
   content: "\e099";
}

.icon-settings:before {
   content: "\e09a";
}

.icon-star:before {
   content: "\e09b";
}

.icon-symbol-female:before {
   content: "\e09c";
}

.icon-symbol-male:before {
   content: "\e09d";
}

.icon-target:before {
   content: "\e09e";
}

.icon-credit-card:before {
   content: "\e025";
}

.icon-paypal:before {
   content: "\e608";
}

.icon-social-tumblr:before {
   content: "\e00a";
}

.icon-social-twitter:before {
   content: "\e009";
}

.icon-social-facebook:before {
   content: "\e00b";
}

.icon-social-instagram:before {
   content: "\e609";
}

.icon-social-linkedin:before {
   content: "\e60a";
}

.icon-social-pinterest:before {
   content: "\e60b";
}

.icon-social-github:before {
   content: "\e60c";
}

.icon-social-google:before {
   content: "\e60d";
}

.icon-social-reddit:before {
   content: "\e60e";
}

.icon-social-skype:before {
   content: "\e60f";
}

.icon-social-dribbble:before {
   content: "\e00d";
}

.icon-social-behance:before {
   content: "\e610";
}

.icon-social-foursqare:before {
   content: "\e611";
}

.icon-social-soundcloud:before {
   content: "\e612";
}

.icon-social-spotify:before {
   content: "\e613";
}

.icon-social-stumbleupon:before {
   content: "\e614";
}

.icon-social-youtube:before {
   content: "\e008";
}

.icon-social-dropbox:before {
   content: "\e00c";
}

.after-row-seperator:not(.after-row-seperator ~ .after-row-seperator) {
   border-top: 2px solid #d32f2f !important;
}

.tomorrow-row-seperator:not(.tomorrow-row-seperator ~ .tomorrow-row-seperator) {
   border-top: 3px solid #6e727a !important;
}

.ag-header-cell {
   overflow: hidden;
}

.ag-header-group-cell-label {
   justify-content: center;
   text-overflow: ellipsis !important;
   width: 100%;
}

.closed-contracts {
   color: #aaaeb3;
}

.ag-theme-balham {
   font-family: "Mulish";
   --ag-selected-row-background-color: #c0dfc0;
   --ag-font-family: "Mulish", sans-serif !important;
}

.ag-theme-balham-dark {
   font-family: "Mulish";
   --ag-font-family: "Mulish", sans-serif !important;
}

.ag-tooltip {
   background-color: #000000 !important;
   color: #ffffff !important;
   font-size: var(--grid-font-size) !important;
   padding: 10px !important;
   border-radius: 10px !important;
   max-width: 250px;
   padding: "10px";
   line-height: 1.5 !important;
}

[id^="boardGrid-"] .ag-row .ag-cell {
   display: flex !important;
   align-items: center !important;
   justify-content: center !important;
   font-size: var(--grid-font-size) !important;
}

[id^="boardGrid-"] .ag-header .ag-header-cell.right-aligned {
   display: flex !important;
   justify-content: flex-end !important;
   padding-right: 12px !important;
   text-align: right !important;
}

[id^="boardGrid-"] .ag-row .ag-cell.left-aligned {
   justify-content: flex-start !important;
}

[id^="boardGrid-"] .ag-row .ag-cell.right-aligned {
   justify-content: flex-end !important;
   padding-right: 12px !important;
}

[id^="boardGrid-"] .ag-row .ag-cell.center-aligned {
   justify-content: center !important;
}

.ag-root-wrapper {
   transition: none !important;
   animation: none !important;
}

.ag-row {
   transition: none !important;
   animation: none !important;
}

.ag-cell {
   transition: none !important;
   animation: none !important;
}

[id^="boardGrid-"] .ag-header-row.ag-header-row-column-group,
[id^="boardGrid-"] .ag-header-group .ag-header-group-cell,
[id^="boardGrid-"] .ag-header .ag-header-cell,
[id^="boardGrid-"] .ag-row .ag-cell,
[id^="boardGrid-"] .ag-row,
[id^="boardGrid-"] .ag-header,
[id^="boardGrid-"] .ag-root-wrapper,
[id*="new-header"] .ag-root-wrapper {
   border: none !important;
}

[id^="boardGrid-main-grid"].ag-header {
   padding-top: 0 !important;
   margin-top: 0 !important;
}

[id^="boardGrid-bots-"].ag-theme-balham .ag-header .ag-header-cell,
[id^="boardGrid-main-grid"].ag-theme-balham .ag-header .ag-header-cell,
[id^="boardGrid-myOffers"].ag-theme-balham .ag-header .ag-header-cell,
[id^="boardGrid-history"].ag-theme-balham .ag-header .ag-header-cell,
[id^="boardGrid-bots-"].ag-theme-balham .ag-row .ag-cell,
[id^="boardGrid-main-grid"].ag-theme-balham .ag-row .ag-cell,
[id^="boardGrid-history"].ag-theme-balham .ag-row .ag-cell,
[id^="boardGrid-myOffers"].ag-theme-balham .ag-row .ag-cell {
   border-right: 0.5px solid #e1e3e6 !important;
}

[id^="boardGrid-bots-"].ag-theme-balham-dark .ag-header .ag-header-cell,
[id^="boardGrid-history"].ag-theme-balham-dark .ag-header .ag-header-cell,
[id^="boardGrid-main-grid"].ag-theme-balham-dark .ag-header .ag-header-cell,
[id^="boardGrid-myOffers"].ag-theme-balham-dark .ag-header .ag-header-cell,
[id^="boardGrid-bots-"].ag-theme-balham-dark .ag-row .ag-cell,
[id^="boardGrid-history"].ag-theme-balham-dark .ag-row .ag-cell,
[id^="boardGrid-main-grid"].ag-theme-balham-dark .ag-row .ag-cell,
[id^="boardGrid-myOffers"].ag-theme-balham-dark .ag-row .ag-cell {
   border-right: 0.5px solid #5a5d64 !important;
}

[id*="new-header-"].ag-theme-balham .ag-header .ag-header-cell {
   border-right: 1px solid #d7d7d7 !important;
   --ag-header-foreground-color: #2A2A2A !important;
}

[id*="new-header-"].ag-theme-balham-dark .ag-header .ag-header-cell {
   border-right: 1px solid #6e727a !important;
}

.ag-theme-balham-dark .last-prediction-before-lock.ag-cell {
   border-top: 1px solid #f87171 !important;
}

.ag-theme-balham .last-prediction-before-lock.ag-cell {
   border-top: 1px solid #ef4444 !important;
}

.ag-theme-balham-dark[id*="new-header"] .ag-cell {
   border-right: 1px solid #6e727a !important;
   &.green-border-bottom {
      border-bottom: 1.5px solid #558b2f !important;
   }
}

.ag-theme-balham[id*="new-header"] .ag-cell {
   border-right: 1px solid #d7d7d7 !important;
   &.green-border-bottom {
      border-bottom: 1.5px solid #558b2f !important;
   }
}

.ag-theme-balham-dark[id*="new-header"] .ag.header-cell,
.ag-theme-balham-dark[id*="new-header"] .ag-pinned-left-header {
   border-right: 1px solid #6e727a !important;
}

.ag-theme-balham[id*="new-header"] .ag.header-cell,
.ag-theme-balham[id*="new-header"] .ag-pinned-left-header {
   border-right: 1px solid #d7d7d7 !important;
}

.ag-theme-balham-dark[id*="new-header"] .ag-header-viewport,
.ag-theme-balham-dark .ag-header-cell.new-tp-bg {
   background-color: #414650;
}

.ag-theme-balham[id*="new-header"] .ag-header.new-tp-bg {
   border-bottom: 1px solid #d1d5db !important;
}

[id^="boardGrid-"] .ag-header-cell {
   padding-left: 8px;
   padding-right: 8px;
}

.no-padding.ag-header-cell {
   padding-left: 0px;
   padding-right: 0px;
}

.no-padding.ag-cell {
   padding-left: 0px;
   padding-right: 0px;
}

.new-header.ag-header-cell {
   padding-left: 16px;
   padding-right: 16px;
}

[id^="boardGrid-"] .ag-header-cell::before {
   background-color: transparent;
}

[id^="boardGrid-"]:not([id*="new-header"]):not([id^="boardGrid-bots-"]):not([id^="boardGrid-main-grid"]):not(
      [id^="boardGrid-myOffers"]
   ):not([id^="boardGrid-history"]):not([id^="boardGrid-depth-"])
   .ag-header-cell::after {
   content: "";
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   right: -1px;
   width: 2px;
   height: 12px;
   background-color: #d7d7d7;
   z-index: 1;
}

[id^="boardGrid-"]:not([id*="new-header"]):not([id^="boardGrid-bots-"]):not([id^="boardGrid-main-grid"]):not(
      [id^="boardGrid-myOffers"]
   ):not([id^="boardGrid-history"]):not([id^="boardGrid-depth-"])
   .ag-header-group-cell::after {
   content: "";
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   right: -1px;
   width: 2px;
   height: 12px;
   background-color: #d7d7d7;
   z-index: 1;
}

.ag-theme-balham [id^="boardGrid-"] .ag-header-cell::after {
   background-color: #e1e3e6;
}

.ag-theme-balham-dark [id^="boardGrid-"] .ag-header-cell::after {
   background-color: #909499;
}

.ag-theme-balham-dark[id*="new-header"] .ag-header-cell::after {
   display: none;
}

.ag-theme-balham[id*="new-header"] .ag-header-cell::after {
   display: none;
}

.ag-theme-balham [id^="boardGrid-"] .ag-header-group-cell::after {
   background-color: #e1e3e6;
}

.ag-theme-balham-dark [id^="boardGrid-"] .ag-header-group-cell::after {
   background-color: #909499;
}

.ag-theme-balham-dark[id*="new-header"] .ag-header-group-cell::after {
   display: none;
}

.ag-theme-balham[id*="new-header"] .ag-header-group-cell::after {
   display: none;
}

[id^="boardGrid-"] .ag-header-group-cell.ag-header-group-cell-no-group::after {
   display: none;
}

[id^="boardGrid-"] .ag-header-cell.ag-header-group-cell::after {
   content: none;
}

[id^="boardGrid-"] .ag-header-cell.main-column-children-header::after {
   visibility: hidden;
}

[id^="boardGrid-"].ag-theme-balham:not([id^="boardGrid-bots-"]):not([id^="boardGrid-main-grid"]):not(
      [id^="boardGrid-myOffers"]
   ):not([id^="boardGrid-history"]):not([id^="boardGrid-depth-"])
   .ag-header {
      border-bottom: 1px solid #d1d5db !important;
}

[id^="boardGrid-"].ag-theme-balham-dark:not([id^="boardGrid-bots-"]):not([id^="boardGrid-main-grid"]):not(
      [id^="boardGrid-myOffers"]
   ):not([id^="boardGrid-history"]):not([id^="boardGrid-depth-"])
   .ag-header {
   border-bottom: 1px solid #414650 !important;
}

[id^="boardGrid-bots-"].ag-theme-balham .ag-header,
[id^="boardGrid-history"].ag-theme-balham .ag-header,
[id^="boardGrid-main-grid"].ag-theme-balham .ag-header,
[id^="boardGrid-myOffers"].ag-theme-balham .ag-header {
   border-bottom: 1px solid #d7d7d7 !important;
}

[id^="boardGrid-bots-"].ag-theme-balham-dark .ag-header {
   border-bottom: 1px solid #000000 !important;
}

[id*="new-header"].ag-theme-balham-dark .ag-header {
   background-color: #414650;
}

[id^="boardGrid-bots-"].ag-theme-balham-dark .ag-header,
[id^="boardGrid-history"].ag-theme-balham-dark .ag-header,
[id^="boardGrid-main-grid"].ag-theme-balham-dark .ag-header,
[id^="boardGrid-myOffers"].ag-theme-balham-dark .ag-header {
   border-bottom: 1px solid #5a5d64 !important;
}

[id*="new-header"].ag-theme-balham-dark .ag-header {
   background-color: #414650;
}

[id^="boardGrid-"].ag-theme-balham .ag-row-even {
   background-color: #f9f9f9;
   &.ag-row-hover {
      --ag-row-hover-color: #e6e6e9;
   }
   &.ag-row-selected,
   &.ag-row-selected::before {
      --ag-selected-row-background-color: #dbeafe;
   }
}
[id^="boardGrid-"].ag-theme-balham .ag-row-odd {
   --ag-odd-row-background-color: #f2f3f5;
   &.ag-row-hover {
      --ag-row-hover-color: #e6e6e9;
   }
   &.ag-row-selected,
   &.ag-row-selected::before {
      --ag-selected-row-background-color: #dbeafe;
   }
}

[id^="boardGrid-"].ag-theme-balham-dark .ag-row-even {
   background-color: #32363e;
   &.ag-row-hover {
      --ag-row-hover-color: #2a2a2a;
   }
   &.ag-row-selected,
   &.ag-row-selected::before {
      --ag-selected-row-background-color: #1e3a8a;
   }
}
[id^="boardGrid-"].ag-theme-balham-dark .ag-row-odd {
   --ag-odd-row-background-color: #414650;
   &.ag-row-hover {
      --ag-row-hover-color: #2a2a2a;
   }
   &.ag-row-selected,
   &.ag-row-selected::before {
      --ag-selected-row-background-color: #1e3a8a;
   }
}

[id^="boardGrid-new-header"].ag-theme-balham-dark .ag-row-even {
   background-color: #414650;
   &.ag-row-hover {
      --ag-row-hover-color: #2a2a2a;
   }
   &.ag-row-selected,
   &.ag-row-selected::before {
      --ag-selected-row-background-color: #1e3a8a;
   }
}
[id^="boardGrid-new-header"].ag-theme-balham-dark .ag-row-odd {
   --ag-odd-row-background-color: #32363e;
   &.ag-row-hover {
      --ag-row-hover-color: #2a2a2a;
   }
   &.ag-row-selected,
   &.ag-row-selected::before {
      --ag-selected-row-background-color: #1e3a8a;
   }
}

[id^="boardGrid-"].ag-theme-balham-dark .ag-header {
   background-color: #1e272e;
}
[id^="boardGrid-"].ag-theme-balham .ag-header {
   background-color: #f9f9f9;
}

[id^="boardGrid-"].ag-theme-balham .ag-cell-data-changed {
   background-color: #facc15 !important;
}
[id^="boardGrid-"].ag-theme-balham-dark .ag-cell-data-changed {
   background-color: #854d0e !important;
}

[id^="boardGrid-"].ag-theme-balham-dark
   .ag-header-row
   [col-id]:not([col-id*="dynamicgroup_"]):not([col-id*="dynamicdetail_"])
   .ag-header-cell-text {
   font-weight: 600;
   color: #d7d7d7;
}

[id^="boardGrid-"].ag-theme-balham-dark
   .ag-header-row
   [col-id]:not([col-id*="dynamicgroup_"])
   .ag-header-cell-comp-wrapper {
   color: #d7d7d7;
   font-weight: 600;
}

[id^="boardGrid-"].ag-theme-balham-dark .ag-header-row [col-id]:not([col-id*="dynamicgroup_"]) .ag-header-group-text {
   color: #d7d7d7;
   font-weight: 600;
}

[id^="boardGrid-"].ag-theme-balham .ag-header-row [col-id]:not([col-id*="dynamicgroup_"]) .ag-header-group-text {
   color: #2A2A2A;
   font-weight: 600;
}

[id^="boardGrid-"] .main-column-header,
[id^="boardGrid-"] .ag-header-group-cell-with-group {
   top: 0;
   /* z-index: 99; */
   font-size: var(--grid-font-size);
   line-height: 19px;
   /* text-align: center; */
   font-weight: 600;
   color: var(--grid-light-header-color)
}

[id^="boardGrid-"] .ag-header-group-cell-with-group {
   justify-content: center;
   transform: translateY(15px);
   z-index: 99;
}

[id^="boardGrid-"] .main-column-children-header {
   top: 0;
   /* z-index: 99; */
   font-size: var(--grid-children-column-size);
   line-height: var(--grid-children-column-size);
   transform: translateY(8px);
   height: 18px;
   font-weight: 600;
}

[id^="boardGrid-bordered"].ag-theme-balham .ag-header,
[id^="boardGrid-bordered"].ag-theme-balham-dark .ag-header {
   border: 1px solid #ebedf0 !important;
}

[id^="boardGrid-bots"] .ag-center-cols-viewport {
   min-height: unset !important;
}

.theme.light #grid-powerPlantBalancingInfo .ag-row-hover.ag-row-selected {
   --ag-selected-row-background-color: #b7e4ff;
}

.right-text {
   text-align: right;
}

.left-text {
   text-align: left;
}

.center-text {
   text-align: center;
}

.center-header {
   justify-content: center !important;
   text-align: center !important;
}

#boardGrid-productionPlanning .ag-pinned-left-header {
   border-right: none !important;
}

div[col-id*="dynamicdetail_"]::after {
   display: none;
   visibility: hidden;
}

[id^="boardGrid-"].ag-theme-balham {
   --ag-value-change-value-highlight-background-color: #fde047 !important;
}

[id^="boardGrid-"].ag-theme-balham-dark {
   --ag-value-change-value-highlight-background-color: #854d0e !important;
}

.react-grid-item:hover {
   z-index: 50 !important;
}

/* Light Theme */
.theme.light .react-grid-item > .react-resizable-handle::after {
   border-right: 2px solid rgba(0, 0, 0, 0.4);
   border-bottom: 2px solid rgba(0, 0, 0, 0.4);
}

/* Dark Theme */
.theme.dark .react-grid-item > .react-resizable-handle::after {
   border-right: 2px solid #d7d7d7;
   border-bottom: 2px solid #d7d7d7;
}

[id^="boardGrid-"] .ag-header-cell-text {
   font-size: var(--grid-font-size) !important;
}

[id^="boardGrid-"].ag-theme-balham .ag-header-cell-text {
   color: var(--grid-light-header-color);
}

[id^="boardGrid-"].ag-theme-balham .ag-body-viewport.ag-row-no-animation.ag-layout-normal {
   background-color: #f9f9f9 !important;
}

[id^="boardGrid-"] .ag-theme-balham .ag-body-viewport.ag-row-animation.ag-layout-normal {
   background-color: #f9f9f9 !important;
}

[id*="new-header"] .ag-cell-range-selected.ag-cell-range-right {
   border-right: 1px solid var(--ag-balham-active-color) !important;
}

[id*="new-header"] .ag-cell-range-selected.ag-cell-range-left {
   border-left: 1px solid var(--ag-balham-active-color) !important;
}

[id*="new-header"] .ag-cell-range-selected.ag-cell-range-top {
   border-top: 1px solid var(--ag-balham-active-color) !important;
}

[id*="new-header"] .ag-cell-range-selected.ag-cell-range-bottom {
   border-bottom: 1px solid var(--ag-balham-active-color) !important;
}

[id*="new-header"] .ag-cell-range-selected.ag-cell-range-selected-1 {
   background-color: var(--ag-range-selection-background-color) !important;
}

.flex-center {
   display: flex;
   justify-content: center;
   align-items: center;
}

#planning-plant-container .ag-header-group-cell-with-group {
   overflow: hidden;
}

::-webkit-scrollbar {
   width: 6px;
   height: 9px;
}

/* Track */
::-webkit-scrollbar-track {
   /* box-shadow: inset 0 0 5px grey; */
   /* background-color: var(--scrollbar-track-color); */
   border-radius: 100px;
}

/* Handle */
::-webkit-scrollbar-thumb {
   background-color: var(--scrollbar-thumb-color);
   border-radius: 100px;
}

.bold-text {
   font-weight: bold;
}

.ag-theme-balham [col-id^="dynamicgroup_"] .ag-header-cell-label,
.ag-theme-balham [col-id^="dynamicdetail_"] .ag-header-cell-label {
   color: #558b2f !important;
   text-align: center;
   display: flex;
   justify-content: center;
   align-items: center;
}

.ag-theme-balham [col-id^="dynamicgroup_"] .ag-header-cell-label,
.ag-theme-balham [col-id^="dynamicdetail_"] .ag-header-cell-label {
   color: #558b2f !important;
   text-align: center;
   display: flex;
   justify-content: center;
   align-items: center;
   white-space: nowrap !important;
   overflow: hidden !important;
   text-overflow: ellipsis !important;
}

.ag-theme-balham-dark [col-id^="dynamicgroup_"] .ag-header-cell-label,
.ag-theme-balham-dark [col-id^="dynamicdetail_"] .ag-header-cell-label {
   color: #7ecc46 !important;
   text-align: center;
   display: flex;
   justify-content: center;
   align-items: center;
   white-space: nowrap !important;
   overflow: hidden !important;
   text-overflow: ellipsis !important;
}

.ag-theme-balham [col-id^="dynamicgroup_"] .ag-header-group-cell-label,
.ag-theme-balham [col-id^="dynamicdetail_"] .ag-header-group-cell-label {
   color: #558b2f !important;
   text-align: center;
   display: flex;
   justify-content: center;
   align-items: center;
}

.ag-theme-balham-dark [col-id^="dynamicgroup_"] .ag-header-group-cell-label,
.ag-theme-balham-dark [col-id^="dynamicdetail_"] .ag-header-group-cell-label {
   color: #7ecc46 !important;
   text-align: center;
   display: flex;
   justify-content: center;
   align-items: center;
}

[id^="boardGrid-main-grid"] .ag-header-cell,
[id^="boardGrid-main-grid"] .ag-header-group-cell {
   padding: 0 !important;
   margin: 0 !important;
}

[id^="boardGrid-main-grid"] .ag-header-cell-label {
   padding: 0 4px !important;
}

[id^="boardGrid-main-grid"] .ag-header-cell::before,
[id^="boardGrid-main-grid"] .ag-header-group-cell:not(.ag-header-span-height.ag-header-group-cell-no-group)::before {
   display: none !important;
}

[id^="boardGrid-main-grid"] .ag-header-group-cell-label {
   transform: translateY(-10px);
}

.react-resizable-handle {
   z-index: 999;
}

:root {
   --depth-widget-buy-width: 0%;
   --depth-widget-sell-width: 0%;
   --depth-widget-progress-buy-bg-color: transparent;
   --depth-widget-progress-sell-bg-color: transparent;
}

.depth-widget-item-light:hover {
   background-color: #E6E6E9 !important;
}

.depth-widget-item-dark:hover {
   background-color: #2A2A2A !important;
}

.depth-widget-progress-buy::before {
   width: 100%;
   top: 0;
   left: 0;
   height: 100%;
   position: relative;
}

.depth-widget-progress-buy::after {
   content: '';
   position: absolute;
   top: 0;
   right: 0;
   height: 25px;
   width: var(--depth-widget-buy-width);
   background-color: var(--depth-widget-progress-buy-bg-color);
   z-index: -1;
   border-top-left-radius: 4px;
   border-bottom-left-radius: 4px;
   /* pointer-events: none; */
}

.depth-widget-progress-sell::after {
   width: 100%;
   top: 0;
   left: 0;
   height: 100%;
   position: relative;
}

.depth-widget-progress-sell::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   height: 25px;
   width: var(--depth-widget-sell-width);
   background-color: var(--depth-widget-progress-sell-bg-color);
   z-index: -1;
   border-top-right-radius: 4px;
   border-bottom-right-radius: 4px;
   /* pointer-events: none; */
}

[id*="depth-"] .ag-row .ag-cell.left-text {
   justify-content: flex-start !important;
}

[id*="depth-"] .ag-row .ag-cell.right-text {
   justify-content: flex-end !important;
}

[id*="depth-"] .ag-row .ag-cell.center-text {
   justify-content: center !important;
}

.ag-theme-balham-dark[id*="depth"] .ag-header-cell, .ag-theme-balham[id*="depth"] .ag-header-cell {
   border-bottom: 1px solid #E6E6E9 !important;
}

.cursor-pointer {
   cursor: "pointer";
}

.center-header .ag-header-cell-comp-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}

.ag-header-group-cell .ag-header-cell-comp-wrapper {
   width: 100%;
}