table,

td,

th {

    border: 1px dashed #ddd;

    text-align: left;

}



table {

    border-collapse: collapse;

    width: 100%;

}



th,

td {

    padding: 15px;

}

td[colspan] {

    border: 0 !important;

}



.total-wrapper {

    max-width: 300px;

    margin-left: auto;

    margin-top: 15px;

}



.total-wrapper > div {

    padding: 6px 0;

    border-bottom: 1px dashed #ddd;

}



#overlay {

    position: fixed;

    top: 0;

    z-index: 100;

    width: 100%;

    height: 100%;

    display: none;

}

.cv-spinner {

    height: 100%;

    display: flex;

    justify-content: center;

    align-items: center;

}

.spinner {

    width: 40px;

    height: 40px;

    border: 4px #ddd solid;

    border-top: 4px #2e93e6 solid;

    border-radius: 50%;

    animation: sp-anime 0.8s infinite linear;

}

@keyframes sp-anime {

    100% {

        transform: rotate(360deg);

    }

}

.is-hide {

    display: none;

}



.country-code .input-group-prepend .input-group-text {

    background: #fff !important;

}



.country-code select {

    border: none;

}



.country-code select:focus {

    border: none;

    outline: none;

}



.hover-input-popup {

    position: relative;

}



.hover-input-popup:hover .input-popup {

    opacity: 1;

    visibility: visible;

}



.input-popup {

    position: absolute;

    bottom: 130%;

    left: 50%;

    width: 280px;

    background-color: #1a1a1a;

    color: #fff;

    padding: 20px;

    border-radius: 5px;

    -webkit-border-radius: 5px;

    -moz-border-radius: 5px;

    -ms-border-radius: 5px;

    -o-border-radius: 5px;

    -webkit-transform: translateX(-50%);

    -ms-transform: translateX(-50%);

    transform: translateX(-50%);

    opacity: 0;

    visibility: hidden;

    -webkit-transition: all 0.3s;

    -o-transition: all 0.3s;

    transition: all 0.3s;

    z-index: 11111;

    font-size: 14px;

}



.input-popup::after {

    position: absolute;

    content: '';

    bottom: -19px;

    left: 50%;

    margin-left: -5px;

    border-width: 10px 10px 10px 10px;

    border-style: solid;

    border-color: transparent transparent #1a1a1a transparent;

    -webkit-transform: rotate(180deg);

    -ms-transform: rotate(180deg);

    transform: rotate(180deg);

}



.input-popup p {

    padding-left: 20px;

    position: relative;

}



.input-popup p::before {

    position: absolute;

    content: '';

    font-family: 'Line Awesome Free';

    font-weight: 900;

    left: 0;

    top: 4px;

    line-height: 1;

    font-size: 18px;

}



.input-popup p.error {

    text-decoration: line-through;

}



.input-popup p.error::before {

    content: "\f057";

    color: #ea5455;

}



.input-popup p.success::before {

    content: "\f058";

    color: #28c76f;

}



/* loader */

.products-wrapper {

    position: relative;

}

.loader-wrapper {

    position: absolute;

    z-index: 11;

    background-color: rgba(255, 255, 255, 0.596);

    left: 0;

    right: 0;

    top: 0;

    bottom: 0;

    display: grid;

    place-items: center;

}

.loader {

    display: inline-block;

    width: 80px;

    height: 80px;

    

}

.loader:after {

    content: " ";

    display: block;

    width: 64px;

    height: 64px;

    margin: 8px;

    border-radius: 50%;

    border: 6px solid rgb(59, 19, 19);

    border-color: rgb(138, 42, 42) transparent rgb(119, 32, 32) transparent;

    animation: loader 1.2s linear infinite;

}

@keyframes loader {

    0% {

        transform: rotate(0deg);

    }

    100% {

        transform: rotate(360deg);

    }

}