.wp_cart_clear_float{
clear:both;
}

.shopping_cart{
padding: 5px;
}
.shopping_cart img{
border:none;
box-shadow: none;
}
.shopping_cart input{
width:auto !important;
margin: 0;
}
.shopping_cart input[type="number"]{
max-width:5em !important;
text-align:center;
}
div.shopping_cart table{
border: none;    
}
div.shopping_cart tr td, div.shopping_cart tr th{
padding:2px 1px;
border: none;
}
div.shopping_cart tr th{
font-weight: bold;    
}
div.shopping_cart tr, div.shopping_cart th{
border: none;    
}
.shopping_cart .wspsc_cart_item_name_th{
text-align: left;
}
.shopping_cart .wspsc_cart_qty_th, .shopping_cart .wspsc_cart_price_th{
text-align: center;
}
.shopping_cart .wp_cart_item_thumbnail{
margin-right: 10px;
}
.shopping_cart .wp_cart_item_thumbnail img{
max-width: 48px;
float: left;
}

.wp_cart_remove_item_form input[type="image"]{
border: none;
cursor: pointer;
}
.wp-cart-button-form input{
width: auto !important;
}
.wp_cart_checkout_button{
cursor: pointer;    
}
.wp_cart_checkout_button:hover{
opacity:0.7;
}

.wp_cart_button:hover{
opacity:0.7;
}
.wp_cart_button_wrapper input{
margin: 0;
}

.wpsc-error-message{
color:red !important;
font-weight:bold;
}
.wpsc-success-message{
color:green !important;
font-weight:bold;
}

/* General shopping cart rerlated */
.wpsc-cart-txn-success-msg {
    background-color: #f4f8ff;
    border: 1px solid #007cba;
    border-radius: 3px;
    padding: 15px 20px;
}

.wpsc-cart-change-quantity-msg{
    font-weight: bold; 
    color: red;
}

/* product box display specific CSS */
.wp_cart_product_display_box{
border: 1px solid #E8E5DC;
box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.2);
margin-bottom: 25px;
padding-bottom: 5px;
width:300px;
}
.wp_cart_product_thumbnail img{
max-width:100%;
}
.wp_cart_product_display_bottom{
padding:10px 15px;	
}
.wp_cart_product_name{
color: #525351;
font-size: 16px;
font-weight: bold;
line-height: 20px;
margin: 0 0 10px 0;
text-transform:uppercase;
}
.wp_cart_product_description{
font-style:italic;
}
.wp_cart_product_price{
color: #525351;
display: block;
font-size: 22px;
font-weight: bold;
line-height: 24px;
margin: 0;
padding: 10px 10px 10px 0;
}
/* end of product display specific CSS */

/* Compact cart css */
.wpsps_compact_cart{
font-family:helvetica;	
background-color:#DDDDDD;
border:1px solid #CCCCCC;
max-width: 240px;
min-width: 200px;
padding: 10px 7px;
margin:5px 0;
}
.wpsps_compact_cart_container{
padding-left: 15px;
font-size: 14px;
}
.wpsps_compact_cart_price{
color: #6A872D;
font-weight: bold;
}
.wpsps_compact_cart_co_btn{
background-color: #A3A3A3 !important;
color: #162636 !important;
font-size: 14px !important;
font-weight:normal !important;
margin-left: 10px !important;
padding: 5px 7px !important;
text-decoration: none !important;
width:auto !important;
height:auto !important;
}
/* End of compact cart css */
/* Compact cart 2 css */
.wspsc_compact_cart2{
background-color:#b4d613;
border:1px solid #92B002;
max-width: 140px;
min-width: 140px;
padding: 2px 2px;
margin:10px 0;
}
.wspsc_compact_cart2_container{
background: url('../images/shopping_cart_icon_2.png') 6px 6px no-repeat;
padding-left: 40px;
}
.wspsc_compact_cart2_inside{
background: #262626;
display: block;
color: #FFFFFF;
font-size: 14px;
text-align: center;
cursor: pointer;
padding: 3px 0;
}
.wspsc_compact_cart2_view_cart_link {
color: #FFFFFF !important;
text-decoration: none;
}
.wspsc_compact_cart2_view_cart_link:hover {
color: #FFFFFF !important;
text-decoration: none;
}
/* End of compact cart 2 css */

/* block editor related styles */
.wspsc_block_description_text{
    font-size: smaller !important;
    color: #6c757d !important;
}

/* Thank you page shortcode related */
 .wpsc-order-data-box {
     display: flex;
     justify-content: space-between;
     align-content: center;
     width: 100%;
 }

.wpsc-order-data-box-col {
    margin-bottom: 10px;
    margin-right: 10px;
}

.wpsc-order-data-box-col :nth-child(1) {
    font-weight: bold;
    margin-bottom: 10px;
    margin-right: 10px;
}

@media screen and (max-width: 768px) {
    .wpsc-order-data-box {
        display: block;
    }
}

.wpsc-order-details-table,
.wpsc-order-downloads-table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid lightgray;
}

.wpsc-order-details-table td,
.wpsc-order-details-table th,
.wpsc-order-downloads-table td,
.wpsc-order-downloads-table th {
    padding: 15px;
    border-top: 1px solid lightgray;
    border-bottom: 1px solid lightgray;
}

.wpsc-order-shipping-address,
.wpsc-order-shipping-region,
.wpsc-order-billing-address {
    padding: 15px;
    border: 1px solid lightgray;
}


/* Manual Checkout related */
.wpsc-manual-payment-form{
    position: relative;
}

.wpsc-manual-payment-form-instructions{
    white-space: pre-line;
    margin-top: 10px;
    margin-bottom: 14px;
}

.wpsc-manual-payment-form-basic-fields{
    display: grid;
    grid-template-columns: repeat(2, min-content);
    grid-template-areas:
                        "fname lname"
                        "email email";
    column-gap: 10px;
    row-gap: 10px;
}

.wpsc-manual-payment-form-basic-fields div:nth-child(1){ grid-area: fname;}
.wpsc-manual-payment-form-basic-fields div:nth-child(2){ grid-area: lname;}
.wpsc-manual-payment-form-basic-fields div:nth-child(3){ grid-area: email;}

.wpsc-manual-payment-form-address-fields{
    margin-top: 10px;
    display: grid;
    grid-template-columns: repeat(2, min-content);
    grid-template-areas:
                        "street city"
                        "country state"
                        "postalcode postalcode";
    column-gap: 10px;
    row-gap: 10px;
}

.wpsc-manual-payment-form-address-fields div:nth-child(1){ grid-area: street;}
.wpsc-manual-payment-form-address-fields div:nth-child(2){ grid-area: city;}
.wpsc-manual-payment-form-address-fields div:nth-child(3){ grid-area: country;}
.wpsc-manual-payment-form-address-fields div:nth-child(4){ grid-area: state;}
.wpsc-manual-payment-form-address-fields div:nth-child(5){ grid-area: postalcode;}

.wpsc-manual-payment-address-section-label{
    font-size: larger;
    margin: 16px 0 12px;
}

.wpsc-manual-payment-form-field input,
.wpsc-manual-payment-form-field select {
    width: 100%;
}

.wpsc-manual-payment-form-submit-section{
    margin-top: 24px;
}

.wpsc-manual-payment-form-cancel{
    margin-left: 8px !important;
}

.wpsc-manual-checkout-field-error {
    color: #cc0000;
    font-size: smaller;
    margin-top: 4px
}

.wpsc-manual-payment-form-loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    /*background-color: rgba(255, 255, 255, 0.705);*/
    backdrop-filter: blur(2px);
    visibility: hidden;
    transition: opacity 500ms, visibility 500ms;
}

.wpsc-manual-payment-form-loader::after {
    content: '';
    box-sizing: border-box;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 5px solid #ccc;
    border-top-color: #0070ba;
    animation: wpspsc-spinner .6s linear infinite;
}
@keyframes wpspsc-spinner {
    to {
        transform: rotate(360deg);
    }
}
.wpsc-manual-payment-form.loading .wpsc-manual-payment-form-loader{
    visibility: visible !important;
}
/* End of Manual Checkout related */