html, body{ background-color: #333; display: flex; align-items: center; justify-content: center; height: 100%; width: 100%; } .btn .fa{ margin-right: 10px; } .fa-spinner{ animation: rotateSpinner 3s infinite linear; } @keyframes rotateSpinner{ to{transform: rotate(360deg);} } .btn{ display: inline-block; border: 2px solid white; padding: 2px; font-family: 'Futura', sans-serif; font-size: 13px; text-transform: uppercase; color: white; text-align: center; transition: all .4s ease-in-out; align-items: center; justify-content: center; overflow: hidden; } .state{ line-height: 3em; padding: 0 10px; width: 160px; background-color: #FF5D66; } .state--added{ width: 120px; background-color: #49dd87; } .state--adding{ width: 200px; background-color: #f99677; } .state--is-hidden{ display: none; transform: scale(.1); } .state--is-active{ animation: stateIn .3s ease; } @keyframes stateIn{ from{ transform: scale(.1); opacity: 0; } }