@import mixins // Overlay/content animations =keyframes-vex-fadein +vex-keyframes("vex-fadein") 0% opacity: 0 100% opacity: 1 =keyframes-vex-fadeout +vex-keyframes("vex-fadeout") 0% opacity: 1 100% opacity: 0 // Content animations =keyframes-vex-flyin +vex-keyframes("vex-flyin") 0% opacity: 0 +vex-transform(translateY(-40px)) 100% opacity: 1 +vex-transform(translateY(0)) =keyframes-vex-flyout +vex-keyframes("vex-flyout") 0% opacity: 1 +vex-transform(translateY(0)) 100% opacity: 0 +vex-transform(translateY(-40px)) =keyframes-vex-dropin +vex-keyframes("vex-dropin") // We start at 0 first and, while hidden // move to -800px, where the animation // really begins. This was necessary because // otherwise, when starting the animation // at -800px, the browser scrolls up 800px // to try to display this object positioned // above the page. // https://github.com/HubSpot/vex/issues/21 0% +vex-transform(translateY(0)) opacity: 0 1% +vex-transform(translateY(-800px)) opacity: 0 // Real animation begins here 2% +vex-transform(translateY(-800px)) opacity: 1 100% +vex-transform(translateY(0)) opacity: 1 =keyframes-vex-dropout +vex-keyframes("vex-dropout") 0% +vex-transform(translateY(0)) 100% +vex-transform(translateY(-800px)) =keyframes-vex-slideup +vex-keyframes("vex-slideup") // We start at 0 first and, while hidden // move to -800px, where the animation // really begins. This was necessary because // otherwise, when starting the animation // at -800px, the browser scrolls up 800px // to try to display this object positioned // above the page. // https://github.com/HubSpot/vex/issues/21 0% +vex-transform(translateY(0)) opacity: 0 1% +vex-transform(translateY(800px)) opacity: 0 // Real animation begins here 2% +vex-transform(translateY(800px)) opacity: 1 100% +vex-transform(translateY(0)) opacity: 1 =keyframes-vex-slidedown +vex-keyframes("vex-slidedown") 0% +vex-transform(translateY(0)) 100% +vex-transform(translateY(800px)) =keyframes-vex-flipin-horizontal +vex-keyframes("vex-flipin-horizontal") 0% opacity: 0 +vex-transform(rotateY(-90deg)) 100% opacity: 1 +vex-transform(rotateY(0deg)) =keyframes-vex-flipout-horizontal +vex-keyframes("vex-flipout-horizontal") 0% opacity: 1 +vex-transform(rotateY(0deg)) 100% opacity: 0 +vex-transform(rotateY(90deg)) // Spinner animations =keyframes-vex-rotation +vex-keyframes("vex-rotation") 0% +vex-transform(rotate(0deg)) 100% +vex-transform(rotate(359deg)) // Button animations =keyframes-vex-pulse +vex-keyframes("vex-pulse") 0% +box-shadow(inset 0 0 0 300px transparent) 70% +box-shadow(inset 0 0 0 300px rgba(255, 255, 255, .25)) 100% +box-shadow(inset 0 0 0 300px transparent)