:root {
    --light-gray: rgba(39, 43, 62, 0.50);
    --dark-gray: #272B3E;
    --gray: #78787A
}

body {
    background-color: #E0E0E0;
    font-size: 1.2rem;
    font-family: 'aeonikmedium';
}

.bg-lightgray {
    background-color: #fbfcfd;
}

.text-muted {
    color: var(--light-gray) !important;
}

.order-number {
    color: var(--gray) !important;
}

h1, .h1 {
    color: var(--dark-gray);
}

.light-btn {
    background: linear-gradient(130deg, rgba(50, 48, 65, 0.64) 0%, rgba(14, 11, 32, 0.64) 100%) !important;
}

.theme-btn, .theme-btn:hover {
    width: 100%;
    color: #fff;
    line-height: 1.6rem;
    border-radius: 15px;
    height: 64px;
}

.m-view-tab .theme-btn, .m-view-tab .theme-btn:hover {
    font-family: 'aeonikmedium';
    height: 38px;
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 18px;
}

.left-arrow-icon {
    background: url(../images/arrow-left.svg) no-repeat left center;
    background-size: 100%;
}

.app-icons {
    display: block;
    width: 150px;
    height: 32px;
    background-repeat: no-repeat;
    background-position: center right;
    background-size: contain;
}

    .app-icons.googlepay-icon {
        background-image: url(../images/google-pay.svg);
        width: 100%;
        background-position: center center;
        height: 16px;
    }

.active .app-icons.googlepay-icon {
    background-image: url(../images/dark_gpay.svg);
}

.app-icons.applepay-icon {
    background-image: url(../images/apple-pay.svg);
    width: 100%;
    background-position: center center;
    height: 16px;
}

.active .app-icons.applepay-icon {
    background-image: url(../images/dark_apple_pay.svg);
}

.dark-applepay-icon {
    background-image: url(../images/dark_apple_pay.svg);
    width: 100%;
    background-position: center center;
    height: 24px;
}

.app-icons.visa-card-icon {
    background-image: url(../images/visa-card-icon.svg);
}

.active .app-icons.visa-card-icon {
    background-image: url(../images/visa-card-icon.svg);
}

.app-icons.NAPS-icon {
    background-image: url(../images/naps-mobile-black.svg);
}

.active .app-icons.NAPS-icon {
    background-image: url(../images/naps-mobile-black.svg);
}

.app-icons.mada-knet-icon {
    background-image: url(../images/Mada-knet-icon.svg);
}

.active .app-icons.mada-knet-icon {
    background-image: url(../images/Mada-knet-icon.svg);
}

.app-icons.flages-icon {
    background-image: url(../images/flags-icons.svg);
}

.active .app-icons.flages-icon {
    background-image: url(../images/flags-icons.svg);
}

.app-icons.amex-icon {
    background-image: url(../images/american-express.svg);
}

.active .app-icons.amex-icon {
    background-image: url(../images/american-express.svg);
}

@media (min-width: 992px) {
    .app-icons {
        background-position: center center;
    }

        .app-icons.googlepay-icon {
            height: 24px;
        }

        .app-icons.applepay-icon {
            height: 24px;
        }

        .app-icons.NAPS-icon {
            background-image: url(../images/NAPS-black.svg);
            /*height: 17px;*/
        }

    .active .app-icons.NAPS-icon {
        background-image: url(../images/NAPS-white.svg);
    }
}

.header-area {
    position: relative;
    border-radius: 1rem;
    color: #fff;
    text-align: center;
    padding-bottom: 7rem !important;
}

    .header-area::after {
        position: absolute;
        width: 100%;
        height: 100%;
        content: '';
        background: url(../images/header-shadow.png) left top no-repeat;
        left: 0;
        top: 0;
        background-size: contain;
    }

    .header-area h1 {
        color: #f4f3f4 !important
    }

    .header-area p {
        color: #f4f3f4 !important
    }

.brand-icon img {
    width: 100%;
}

.m-header {
    display: flex;
    justify-content: space-between;
}

.brand-icon {
    background: #fff;
    width: 33px;
    border-radius: 100px;
    padding: 0.21rem;
    margin: 0px;
    box-sizing: border-box;
    height: 33px;
}

.main-content {
    width: 100%;
    margin-top: -7rem;
    padding: 0rem 0rem 1rem;
}

    .main-content .card {
        border-radius: 18px 18px 0px 0px;
        border: 0px !important;
        background-color: #fff;
    }

    .main-content .card-body {
        box-shadow: 0 0 18px hsla(0, 0%, 87%, 0.568);
        clip-path: inset(0px -15px 0px -15px);
        padding-top: 0px !important;
        padding-bottom: 0px !important;
    }

    .main-content .card-header {
        border-top-left-radius: 1rem;
        border-top-right-radius: 1rem;
        background-color: #fff;
        margin-bottom: 0;
        border-bottom: 0px solid rgba(0,0,0,.125);
        position: relative;
        z-index: 99;
        padding-bottom: 1rem !important;
    }

    .main-content .card-footer {
        box-shadow: 0 0 18px hsla(0, 0%, 87%, 0.568);
        clip-path: inset(0px -15px 0px -15px);
        background-color: #fff;
        text-align: center;
        font-weight: bold;
        font-size: 0.8rem;
        border: 0px;
        position: relative;
        z-index: 1;
    }

    .main-content .card::after {
        content: '';
        width: 100%;
        height: 30px;
        background: url(../images/card-bottom-2.png) no-repeat center bottom;
        background-size: 100%;
        position: absolute;
        bottom: -30px;
    }

    .main-content .card-footer img {
        width: 100px;
    }

.m-footer {
    text-align: center;
    font-weight: bold;
    font-size: 0.8rem;
}

    .m-footer div {
        display: flex;
        justify-content: center;
        align-items: center;
    }

        .m-footer div img {
            width: 100px;
        }

.order-list {
    margin: 0px;
}

    .order-list ul {
        padding: 0px;
    }

        .order-list ul li {
            margin: 0px;
            list-style: none;
            display: flex;
            justify-content: start;
            align-items: center;
            background: #f8f8f8;
            border-radius: 1rem;
            padding: 0.5rem;
        }

            .order-list ul li .outlets-logo {
            }

                .order-list ul li .outlets-logo img {
                    border-radius: 100px;
                    width: 100%;
                }

            .order-list ul li .outlets-detail {
                margin-left: 1rem;
            }

.order-detail hr {
    background-color: #b6b6b6;
    margin: 1.5rem 0;
}

.paymentdetail {
}

.paymentdetail-content {
    background-color: #fff;
    border-radius: 1rem;
    box-shadow: 0 0 10px #f5f5f5;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.paymentmethods {
    background: #f8f8f8;
    background: #f8f8f8;
    border-radius: 1rem;
    padding: 1.5rem;
    margin-bottom: 1rem;
}

.form-control, .form-select {
    line-height: 2.4;
    border-radius: 0.6rem;
    height: 48px;
}

    .form-control::-moz-placeholder {
        color: #A7A7A7;
        opacity: 1
    }

    .form-control::placeholder {
        color: #A7A7A7;
        opacity: 1
    }

.paymentmethods .nav-item {
    display: flex;
    align-items: center;
    justify-content: center;
}

.paymentmethods .nav-link, .paymentmethods .nav-link.active {
    width: 100%;
    padding: 1rem;
    border-radius: 8px;
    background: #FFF;
    box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
    height: 48px;
    margin: 0.5rem 0;
}
.CreditCard-icon {
    position: relative;
    padding-left: 56px;
    background-size: 24px;
}

    .CreditCard-icon:after {
        background-image: url(../images/debit-card.svg);
        background-position: left 17px center;
        background-repeat: no-repeat;
        position: absolute;
        content: '';
        left: 0;
        top: 0;
        width: 56px;
        height: 48px;
        background-size: 24px;
    }

.paymentinfo .form-label {
    color: #000;
    font-weight: 500;
}

.order-number {
    font-size: 0.8rem;
}

@media (min-width: 1200px) {
    .order-number {
        font-size: 1rem;
    }

    body {
        font-size: 1.14rem;
    }

    .order-list ul li {
        padding: 1.5rem;
    }

    .paymentmethods {
        padding: 1.4rem;
    }
}

.modal-header {
    border: 0px;
}

    .modal-header .close-btn {
        width: 30px;
        height: 30px;
        background: url(../images/back-arrow.png) no-repeat left center;
    }

/* .google-icon {
    width: max-content;
    padding-left: 17px;
    background: url(../images/google-icon.png) no-repeat left center;
    background-size: 13px;
}

.google-icon img, .nav-pills .nav-link.apple-pay-c img {
    height: 15px;
}

.nav-pills .nav-link.active .google-icon img,
.nav-pills .nav-link.active.apple-pay-c img,
.nav-pills .nav-link.active.naps-pay img,
.paymentmethods .nav-pills .nav-link.g-pay:focus img, .paymentmethods .nav-pills .nav-link.g-pay:active img,
.paymentmethods .nav-pills .nav-link.apple-pay-c:focus img, .paymentmethods .nav-pills .nav-link.apple-pay-c:active img,
.paymentmethods .nav-pills .nav-link.naps-pay:focus img, .paymentmethods .nav-pills .nav-link.naps-pay:active img {
    filter: invert(1);
    height: 20px;
}
.google-icon img, .nav-pills .nav-link.apple-pay-c img {
    height: 20px;
} 
.naps-pay img{height: 20px;}
.m-view .naps-pay img{height: auto;}*/
.nav-pills .nav-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .nav-pills .nav-link h6 {
        margin: 0px;
    }

.nav-link {
    color: #151327;
}

@media (min-width: 992px) {
    .nav-pills .nav-link {
        justify-content: center;
    }

    .order-detail hr {
        background-color: #b6b6b6;
        margin: 2.5rem 0;
    }

    .header-area {
        border-radius: 2rem;
        padding-bottom: 7rem !important;
    }

    .brand-icon {
        background: #fff;
        width: 80px;
        border-radius: 100px;
        padding: 1rem;
        margin: auto;
        box-sizing: border-box;
        height: 80px;
    }

    .main-content {
        width: 90%;
        margin-top: -7rem;
        padding: 1rem 1rem 2.1rem;
    }

    .nav-pills .nav-link h6 {
        display: none;
    }

    .theme-btn, .theme-btn:hover {
        width: 100%;
        color: #fff;
        line-height: 2rem;
        border-radius: 15px;
        height: 56px;
    }
}

@media (max-width: 992px) {
    .bg-lg-lightgray {
        background-color: #fbfcfd;
    }

    .paymentmethods.m-view {
        background: unset;
        padding: 0px;
    }

        .paymentmethods.m-view .nav-link, .paymentmethods.m-view .nav-link.active {
            box-shadow: unset;
            border: 1px solid #F2F4F7;
        }
}

.paymentmethods.m-view-tab .nav-link, .paymentmethods.m-view-tab .nav-link.active {
    padding: 0.5rem;
}

.modal .modal-dialog {
    bottom: 0;
    top: auto;
    position: fixed;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    margin: 0 auto;
}

.modal.fade .modal-dialog {
    transition: transform .3s ease-out;
    transform: translateY(0px);
}

.modal-content {
    border-radius: 24px 24px 0px 0px;
    min-height: 395px;
}

.animation-circles {
    display: flex;
    justify-content: center;
}

.circle {
    border-radius: 50%;
    background-color: #fff;
    margin: 10px;
    height: 50px;
    width: 50px;
    animation: bounce 1.5s infinite ease;
}

.circle--4 {
    animation-delay: .4s;
    background-color: #022A6A;
}

.circle--3 {
    animation-delay: .3s;
    background-color: #00359D;
}

.circle--2 {
    animation-delay: .2s;
    background-color: #0051C7;
}

.circle--1 {
    background-color: #0082FF;
}

@keyframes bounce {
    0%, 100% {
        opacity: 1;
    }

    60% {
        transform: translateY(15px);
        opacity: .0;
    }
}

#loading-animation {
    position: fixed;
    z-index: 999;
    background-color: #F4F4F5;
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
}

    #loading-animation .animation-message {
        text-align: center;
    }

        #loading-animation .animation-message span {
            display: block;
            margin-bottom: 30px;
            font-size: 22px;
            font-weight: 600;
            font-family: 'Rubik';
        }

.hidden {
    display: none !important;
}

.error.error-text {
    color: red;
    font-family: 'aeonikmedium';
    font-size: 14px;
}

#pills-tabContent .ok-image {
    display: none;
    position: absolute;
    top: 43px;
    right: 12px;
}

.modal-body .ok-image {
    display: none;
    position: absolute;
    top: 40px;
    right: 5px;
}

#pills-tabContent .ok-image.select {
    right: 15px;
}

#pills-tabContent .is-valid .ok-image {
    display: block;
}

#CreditCard-modal .is-valid .ok-image {
    display: block;
}

.form-control:focus {
    box-shadow: unset !important;
    border-color: #ced4da;
}

.tab-pane .row > div, .modal-body .row > div {
    position: relative;
}

.flex-microform-focused {
    outline: 0;
    border-color: #80bdff;
}

.flex-microform-valid {
    background: url(../../images/valid.png) no-repeat center right;
}

.dbt-btn {
    margin-top: 150px !important;
}

.apple-pay {
    -webkit-appearance: -apple-pay-button;
    -apple-pay-button-style: white-outline;
    -apple-pay-button-type: pay;
    /*-apple-pay-button-height: 30px;        
        -apple-pay-button-padding: 14px 0px;*/
    border-radius: 4px;
}

.fake-apple-pay {
    border-radius: 4px;
    background-color: black !important;
    color: white;
    cursor: pointer;
    height: 56px;
    padding: 13px;
}

.fake-apple-pay-btn, .apple-pay-btn {
    height: 30px !important;
}

.gpay-btn .gpay-button-fill > .gpay-button.white, .gpay-btn .gpay-button-fill > .gpay-button.black {
    padding: 0.5rem !important;
    height: 48px !important;
    border-radius: 8px !important;
}

.gpay-button.black.short, .gpay-button.black.plain {
    background-size: 65px;
}

.cancel-link {
    text-align: center;
}

.content-scrollable {
    max-height: 450px;
    overflow-y: scroll;
    overflow-x: hidden;
}

#challenge-window {
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: white;
    top: 0;
    left: 0;
    z-index: 99999;
}

.no-spinner::-webkit-inner-spin-button,
.no-spinner::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.no-spinner {
    padding: 0.375rem 0.75rem;
}