/* Back Button */
.back-button {
    background-image:url('../img/back-button.png');
    background-size:contain;
    height:20px;
    position:absolute;
    cursor:pointer;
    width:20px;
    top:15px;
    left:15px;
}
.back-button-spacer {
    width:100%;
    padding-bottom:24.5px;
}
/* No UI Slider */

/*! nouislider - 10.0.0 - 2017-05-28 14:52:48 */
/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-user-select: none;
    -ms-touch-action: none;
    touch-action: none;
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.noUi-target {
    position: relative;
    direction: ltr;
}
.noUi-base {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    /* Fix 401 */
}
.noUi-connect {
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
}
.noUi-origin {
    position: absolute;
    height: 0;
    width: 0;
}
.noUi-handle {
    position: relative;
    z-index: 1;
}
.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
    -webkit-transition: top 0.3s, right 0.3s, bottom 0.3s, left 0.3s;
    transition: top 0.3s, right 0.3s, bottom 0.3s, left 0.3s;
}
.noUi-state-drag * {
    cursor: inherit !important;
}
/* Painting and performance;
 * Browsers can paint handles in their own layer.
 */
.noUi-base,
.noUi-handle {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
/* Slider size and handle placement;
 */
.noUi-horizontal {
    height: 18px;
}
.noUi-horizontal .noUi-handle {
    width: 34px;
    height: 28px;
    left: -17px;
    top: -6px;
}
.noUi-vertical {
    width: 18px;
}
.noUi-vertical .noUi-handle {
    width: 28px;
    height: 34px;
    left: -6px;
    top: -17px;
}
/* Styling;
 */
.noUi-target {
    background: #FAFAFA;
    border-radius: 4px;
    border: 1px solid #D3D3D3;
    box-shadow: inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB;
}
.noUi-connect {
    background: #3FB8AF;
    border-radius: 4px;
    box-shadow: inset 0 0 3px rgba(51, 51, 51, 0.45);
    -webkit-transition: background 450ms;
    transition: background 450ms;
}
/* Handles and cursors;
 */
.noUi-draggable {
    cursor: ew-resize;
}
.noUi-vertical .noUi-draggable {
    cursor: ns-resize;
}
.noUi-handle {
    border: 1px solid #D9D9D9;
    border-radius: 3px;
    background: #FFF;
    cursor: default;
    box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB;
}
.noUi-active {
    box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB;
}
/* Handle stripes;
 */
.noUi-handle:before,
.noUi-handle:after {
    content: "";
    display: block;
    position: absolute;
    height: 14px;
    width: 1px;
    background: #E8E7E6;
    left: 14px;
    top: 6px;
}
.noUi-handle:after {
    left: 17px;
}
.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
    width: 14px;
    height: 1px;
    left: 6px;
    top: 14px;
}
.noUi-vertical .noUi-handle:after {
    top: 17px;
}
/* Disabled state;
 */
[disabled] .noUi-connect {
    background: #B8B8B8;
}
[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
    cursor: not-allowed;
}
/* Base;
 *
 */
.noUi-pips,
.noUi-pips * {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.noUi-pips {
    position: absolute;
    color: #999;
}
/* Values;
 *
 */
.noUi-value {
    position: absolute;
    white-space: nowrap;
    text-align: center;
}
.noUi-value-sub {
    color: #ccc;
    font-size: 10px;
}
/* Markings;
 *
 */
.noUi-marker {
    position: absolute;
    background: #CCC;
}
.noUi-marker-sub {
    background: #AAA;
}
.noUi-marker-large {
    background: #AAA;
}
/* Horizontal layout;
 *
 */
.noUi-pips-horizontal {
    padding: 10px 0;
    height: 80px;
    top: 100%;
    left: 0;
    width: 100%;
}
.noUi-value-horizontal {
    -webkit-transform: translate3d(-50%, 50%, 0);
    transform: translate3d(-50%, 50%, 0);
}
.noUi-marker-horizontal.noUi-marker {
    margin-left: -1px;
    width: 2px;
    height: 5px;
}
.noUi-marker-horizontal.noUi-marker-sub {
    height: 10px;
}
.noUi-marker-horizontal.noUi-marker-large {
    height: 15px;
}
.noUi-tooltip {
    display: block;
    position: absolute;
    border: 1px solid #D9D9D9;
    border-radius: 3px;
    background: #fff;
    color: #000;
    padding: 5px;
    text-align: center;
    white-space: nowrap;
}
.noUi-horizontal .noUi-tooltip {
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    left: 50%;
    bottom: 120%;
}

/* Shop Page */
#payment-text-wrapper {
    display:none;
}

.select-amount {
    text-align: center;
    width:100%;
}

#payment-button-wrapper {
    margin:15px 0 0 0;
    text-align:center;
}

.topup-btn-container {
    display:inline-block;
    margin-bottom:10px;
    vertical-align:top;
    text-align:center;
}
.row-of-one .topup-btn-container {
    width:50%;
    max-width:200px;
}

.row-of-two .topup-btn-container {
    width:47%;
}

.row-of-two div:nth-child(2n+1) {
    margin:0 2% 10px 0;
}

.row-of-two div:nth-child(2n+2) {
    margin:0 0 10px 2%;
}

.row-of-three .topup-btn-container {
    width:31%;
}

.row-of-three div:nth-child(3n+2) {
    margin:0 2% 10px 2%;
}

.topup-amount {
    border:1px solid rgba(0, 0, 0, 0.2);
    border-radius:4px;
    height: 35px;
    width: 35px;
}

.topup-btn {
    border:none;
    font-weight:400;
    width:100%;
}

.topup-btn-amount {
    font-size:24px;
}

.topup-btn-custom-credits {
    text-transform:uppercase;
}

.topup-btn-custom-credits-amount {
    padding:10px 0 0 0;
}
.button-incentive {
    font-size:12px;
    font-weight:bold;
    margin:5px 0 0 0;
    text-transform: uppercase;
}

#show-topup-slider {
    border:none;
    display:block;
    margin: 0 auto;
    max-width:180px;
    width:100%;
}

#topup-slider {
    padding-top:20px;
}

#topup-slider-range {
    margin:0 15px 0 15px;
}

#topup-slider-value {
    font-size:24px;
    font-weight:bold;
    margin:10px 0 0 0;
    text-align:center;
}

#topup-slider-currency-value {
    font-size:16px;
    font-weight:normal;
    text-align:center;
}

#topup-slider-submit {
    border:none;
    font-weight:bold;
    margin-top:10px;
    padding:8px;
    width:100%;
}

.topup-fee-message {
    margin-top:15px;
    text-align:center;
}

#topup-incentive-message {
    font-size:20px;
    font-weight:bold;
    margin-bottom:10px;
    text-align:center;
}
#topup-incentive-message .incentive-not-allowed {
    font-size:12px;
}

/* Order Details */
.order-details {
    margin-bottom:25px;
}

.order-details-heading {
    font-weight:bold;
    margin:0;
    padding:0 3px 7px 0px;
    text-transform:uppercase;
}

.order-details-table {
    margin:10px 0 0 0;
}

.order-details-table hr {
    margin:0;
    padding:0;
}

.order-details-table p.left,
.order-details-table p.right {
    margin:0;
    padding:7px 3px;
}

.order-details-table .left {
    box-sizing:border-box;
    display:inline-block;
    padding-left:5px;
    text-align:left;
    width:69%;
}

.order-details-table .right {
    box-sizing:border-box;
    display:inline-block;
    padding-right:5px;
    text-align:right;
    width:29%;
}

.order-details-total {
    background-color:#f8f8f8;
    font-weight:bold;
    text-transform:uppercase;
}

/* Payment Methods */
.payment-methods {
    margin-bottom:15px;
}
.nav-tabs {
    border-bottom:none;
    font-size:12px;
    text-align:center;
    box-shadow:rgba(0, 0, 0, 0.05) 0 4px 1px;
}
.nav-tabs li {
    border-radius:0;
    margin-bottom:0;
}
.two-methods li {
    width:50%;
}
.three-methods li {
    width:33.3%;
}
.four-methods li {
    width:50%;
}
.nav-tabs li a {
    border:1px solid #d9dbdd;
    border-radius:0;
    margin-right:0;
    padding:10px 5px;
    color:black;
    font-weight:700;
    outline:0;
    position:relative; 
    z-index:3;
    -webkit-transition: background-color 0.2s;
    -moz-transition: background-color 0.2s;
    -o-transition: background-color 0.2s;
    transition: background-color 0.2s;
}
.nav-tabs li a:hover {
    border:1px solid #BDC2C6;
    background-color:#FFF;
    -webkit-transition: background-color 0.2s;
    -moz-transition: background-color 0.2s;
    -o-transition: background-color 0.2s;
    transition: background-color 0.2s;
}
.nav-tabs li.active a,
.nav-tabs li.active a:focus {
    background-color:#FF5252;
    border:1px solid #FF5252;
    color:#FFF;
}
.nav-tabs li.active a:hover {
    background-color:#EC2A2A;
    border:1px solid #EC2A2A;
    color:#FFF;
}
.nav-tabs li:first-of-type a {
    border-radius:2px 0 0 2px;
}
.three-methods li:first-of-type a {
    left:1px;
}
.three-methods li:nth-of-type(2) {
    z-index:4; 
}
.nav-tabs li:last-of-type a {
    border-radius:0 2px 2px 0;
}
.three-methods li:last-of-type a {
    right:1px;
}
.three-methods li.active:nth-child(2) a {
    border-right:1px solid #BDC2C6;
    border-left:1px solid #BDC2C6;
}
.three-methods li.active:nth-child(1) a:hover {
    border-right:1px solid #d9dbdd;
}
.three-methods li.active:nth-child(3) a:hover {
    border-left:1px solid #d9dbdd;
}
.three-methods li:first-of-type a:hover,
.three-methods li:last-of-type a:hover {
    z-index:5;
}
.four-methods li:first-of-type a {
    border-radius:2px 0 0 0;
    position:relative;
    top:1px;
    left:1px;
}
.four-methods li:nth-of-type(2) a {
    border-radius:0 2px 0 0;
    position:relative;
    top:1px;
}
.four-methods li:nth-of-type(3) a {
    border-radius:0 0 2px 0;
    position:relative;
    left:1px;
}
.four-methods li:last-of-type a {
    border-radius:0 0 0 2px;
}

/* End Payment Methods */
.alert {
    text-align: center;
}

/* Payment Forms */
.payment-forms .alert-danger {
    text-align:center;
    margin-bottom:10px;
}
.payment-forms .form-control {
    font-size:16px;
}
.method-image {
    text-align:center;
    padding:10px;
    margin-bottom:15px;
}
.method-description {
    margin-bottom:15px;
}
/* End Payment Forms */

/* Seamless Credit Card Form */ 

#wirecard_seamless_credit_debit {
    margin:0 -7px 0 -7px;
}

#seamless-errors {
    /*display:none;*/
}

#seamless-errors .alert {
    margin:0 7px 20px 7px;
}

#seamless-target {
    height:425px;
    position:relative;
    overflow:hidden;
}

#wirecard_seamless_credit_debit {
    position:relative;
}

#tag {
    text-transform: uppercase;
}
/* Don't transform placeholders */
::-webkit-input-placeholder { /* WebKit browsers */
    text-transform: none;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    text-transform: none;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
    text-transform: none;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
    text-transform: none;
}
::placeholder { /* Recent browsers */
    text-transform: none;
}
/* Don't transform placeholders */

#seamless-spinner,
.payment-form-spinner {
    background-color: #FFFFFF;
    /* For IE 5.5 - 7*/
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000);
    /* For IE 8*/
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)";
    text-align: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom:0;
    right:0;
    z-index: 9999;
    line-height: 20px;
    display:block;
}

#seamless-spinner .sk-cube-grid,
.payment-form-spinner .sk-cube-grid {
    position:absolute;
    top:50%;
    left:50%;
    margin-left: -50px;
    margin-top: -100px;
}

#seamless-submit-wrapper {
    margin:0 7px 0 7px;
}

#submit_seamless {
    outline:none;
}

/* End Seamless Credit Card Form */

/* REST Credit Card Form */ 
#card-brands {
    float:right;
}
.card-icon {
    display:inline-block;
    width:24px;
    height:16px;
    padding-right:5px;
    opacity:0.8;
    background-image:url('../img/card-icons.png'); 
    background-size:120px 16px;
}
.lt-ie9 .card-icon {
    background-image:url('../img/ie8-card-icons.png');
}
    
.card-icon:last-child {
    padding-right:0;
}
#visa-icon {
    background-position:0;
}
#mastercard-icon {
    background-position:-24px 0;
}
#amex-icon {
    background-position:-48px 0;
}
#diners-icon {
    background-position:-72px 0;
}
#jcb-icon {
    background-position:-96px 0;
}
.expiry-group {
    display:inline-block;
    width:48%;
}
.cvc-group {
    width:48%;
    float:right;
}
.card-number-group {
   margin-top:1px;
}
.last-name-group {
    margin-top:26px;
}
/* End Credit Card Form */

/* iDEAL Form */
.ideal-logo {
    max-width:100px;
}
#select-bank {
    margin-top:5px;
}
/* End iDEAL Form */

/* PayPal Form */
#paypal-button {
    display: inline-block;
}

/* Stripe Elements Form */
#card-element {
    border:1px solid rgb(204,204,204);
    border-radius:4px;
    box-shadow:rgba(0, 0, 0, 0.075) 0px 1px 1px 0px inset;
    margin:0 0 5px 0;
    padding:5px 12px;
}
#card-element.StripeElement--invalid {
    border:1px solid #a94442;
}
#card-errors {
    color: #a94442;
}
#stripe_elements .submit {
    margin-top:15px;
}

/* PIN Payments Hosted Fields Form */
#hosted_fields_container {
    min-height:275px;
    position:relative;
}
.pin-form-field {
    height:2.5em;
    width: 100%;
}
.error_message {
    color:rgb(169,68,66);
    margin-top:5px;
}

/* Footer */
footer {
    padding-top: 10px;
}

@media screen and (min-width: 767px) {
    footer {
        height: 38px;
        padding: 10px;
    }
}

/* Footer */
footer {
    background-color:#FF5252;
}
footer ul {
    color:#FFF;
}
footer a,
footer a:link,
footer a:visited,
footer a:hover,
footer a:focus,
footer a:active {
    color:#FFF;
    text-decoration:underline;
}
footer a:hover {
    color:#FFF;
}

/* Modals */
.modal-header .close {
    color:#2d2d2d;
}
.modal-title {
    color:#FF5252;
}
.modal .btn-default {
    color:#FFF;
    background-color:#FF5252;
    border:none;
    /*-webkit-transition: background-color 0.2s;
    -moz-transition: background-color 0.2s;
    -o-transition: background-color 0.2s;
    transition: background-color 0.2s;*/
}
.modal .btn-default:hover,
.modal .btn-default:active,
.modal .btn-default:focus {
    background-color:#EC2A2A;
    /*-webkit-transition: background-color 0.2s;
    -moz-transition: background-color 0.2s;
    -o-transition: background-color 0.2s;
    transition: background-color 0.2s;*/
}

/* Spinner */
.sk-cube-grid {
    width: 100px;
    height: 100px;
    margin: 100px auto;
}

#processing {
    /* Fallback for web browsers that don't support RGBa */
    background-color: white;
    /* RGBa with 0.6 opacity */
    background-color: rgba(0, 0, 0, 0.6);
    /* For IE 5.5 - 7*/
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000);
    /* For IE 8*/
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)";
    text-align: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 10;
    line-height: 200px;
    display: none;
}

.sk-cube-grid {
    position:fixed;
    top:50%;
    left:50%;
    margin-left: -50px;
    margin-top: -50px;
}

.sk-cube-grid .sk-cube {
    width: 33%;
    height: 33%;
    background-color: #FF5252;
    float: left;
    -webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
    animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
}
.sk-cube-grid .sk-cube1 {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s; }
.sk-cube-grid .sk-cube2 {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s; }
.sk-cube-grid .sk-cube3 {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s; }
.sk-cube-grid .sk-cube4 {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s; }
.sk-cube-grid .sk-cube5 {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s; }
.sk-cube-grid .sk-cube6 {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s; }
.sk-cube-grid .sk-cube7 {
    -webkit-animation-delay: 0s;
    animation-delay: 0s; }
.sk-cube-grid .sk-cube8 {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s; }
.sk-cube-grid .sk-cube9 {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s; }

@-webkit-keyframes sk-cubeGridScaleDelay {
    0%, 70%, 100% {
        -webkit-transform: scale3D(1, 1, 1);
        transform: scale3D(1, 1, 1);
    } 35% {
          -webkit-transform: scale3D(0, 0, 1);
          transform: scale3D(0, 0, 1);
      }
}

@keyframes sk-cubeGridScaleDelay {
    0%, 70%, 100% {
        -webkit-transform: scale3D(1, 1, 1);
        transform: scale3D(1, 1, 1);
    } 35% {
          -webkit-transform: scale3D(0, 0, 1);
          transform: scale3D(0, 0, 1);
      }
}
