.spinner {
    width: 40px;
    height: 40px;
    position: relative;
    text-align: center;
    -webkit-animation: sk-rotate 2.0s infinite linear;
    animation: sk-rotate 2.0s infinite linear;
  }
  
  .spinner i {
    width: 60%;
    height: 60%;
    display: inline-block;
    position: absolute;
    top: 0;
    background-color: #333;
    border-radius: 100%;
    
    -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
    animation: sk-bounce 2.0s infinite ease-in-out;
  }
  
  .spinner i:nth-child(2) {
    top: auto;
    bottom: 0;
    -webkit-animation-delay: -1.0s;
    animation-delay: -1.0s;
  }
  
  @-webkit-keyframes sk-rotate { 100% { -webkit-transform: rotate(360deg) }}
  @keyframes sk-rotate { 100% { transform: rotate(360deg); -webkit-transform: rotate(360deg) }}
  
  @-webkit-keyframes sk-bounce {
    0%, 100% { -webkit-transform: scale(0.0) }
    50% { -webkit-transform: scale(1.0) }
  }
  
  @keyframes sk-bounce {
    0%, 100% { 
      transform: scale(0.0);
      -webkit-transform: scale(0.0);
    } 50% { 
      transform: scale(1.0);
      -webkit-transform: scale(1.0);
    }
  }

  .sora-order-wrapper button {
      text-align: center;
      background: #2d373e;
      color: #e6eef5;
      border: 0;
    padding: 18px 36px;
    font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif;
    font-weight: 800;
  }

  .sora-order-wrapper button:hover {
    background: #4996be;
    color: white;
  }

  .sora-order-wrapper button .spinner {
    display: none;
    margin-left: auto;
    margin-right: auto;
  }
  .sora-order-wrapper button.pending { font-size:0; padding: 8px; }
  .sora-order-wrapper button.pending .spinner {
    display: inline-block;
  }

  .sora-order-wrapper button .spinner i {
    background-color: #fff;
  }

  .sora-order-payment-form {
    box-shadow: 4px 4px 0px 0px rgba(0,0,0,0.3);
    background: #f8f8f8;
    display: inline-block;
    width: 300px;
    min-height: 300px;
    margin: 20px 0 20px 20px;
    padding: 30px;
    text-align: center;
    float: left;
  }

  .sora-order-payment-form label {
    display: block;
    text-align: left;
  }

  .sora-order-payment-form input, .sora-order-payment-form button, .sora-order-payment-form select {
    display: block;
    width: 100%;
  }

  .sora-order-payment-form img {
    margin-left: auto;
    margin-right: auto;
    clear: both;
    max-height: 50px;
    margin-bottom: 30px;
  }

  .sora-order-payment-form img.paypal_logo {
    margin-bottom: 110px;
  }

  .sora-order-payment-form.disabled {
      opacity: .5;
  }

  .sora-order-payment-form button[disabled] {
    cursor: default;
}
.sora-order-payment-form button[disabled]:hover {
    background: #222;
}


.sora-order-wrapper input::placeholder               { opacity: .6;  }
.sora-order-wrapper input::-webkit-input-placeholder { opacity: .6;  }
.sora-order-wrapper input::-moz-placeholder          { opacity: .6;  }
.sora-order-wrapper input:-ms-input-placeholder      { opacity: .6;  }

.sora-order-price {
  display: inline;
}

button.sora-order-cancel {
  right: 0;
  top: 0;
  position: absolute;
  background: #2d373e;
}

.sora-order-header {
  background-color: #495863;
  color: #e6eef5;
  font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif;
  font-weight: 800;
  padding: 17px 24px;
  position: relative;
  height: 56px;
  box-sizing: border-box; 
}

.sora-order-header .sora-order-price {
  color: white;
}

.sora-order {
  overflow: auto;
  background-color: #e6eaec;
  box-shadow: 3px 3px 0px 0px rgba(0,0,0,0.3);
}

.sora-order-status {
  padding: 20px 20px 0 20px;
}

.sora-order-wrapper, .sora-order-form {
  margin-top: 30px;
}

.sora-order-payment-form h3 {
  padding-top: 0;
}