input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

.elementor-add-to-cart {
    font-size: 16px;
}

.variations {

    select,
    input[type="radio"],
    .reset_variations {
        display: none;
    }

    th,
    td {
        height: 50px;
        padding-right: 25px;
        text-align: left;
    }

    .variation-radio-buttons {
        display: flex;
        gap: 1rem;

        div:first-child {
            display: none;
        }

        label {
            display: block;
            padding: 10px 15px;
            cursor: pointer;
            transition: all 0.3s;
            border-radius: 10px 0 10px 0;

            &:hover,
            &:focus {
                background: var(--e-global-color-primary);
                color: #FFF;
            }
        }

        input:checked+label {
            background: var(--e-global-color-primary);
            color: #FFF;
        }
    }

}

.woocommerce-variation-price,
.product-price {
    font-size: 26px;
    padding: 0 0 2rem 0;
    margin-bottom: 1rem;
    font-weight: 800;
    color: var(--e-global-color-secondary);

    .woocommerce-Price-currencySymbol {
        font-size: .885rem;
    }
}

.woocommerce-variation-description {
    font-size: 14px;
}


.elementor-add-to-cart form {
    width: 100%;
    justify-content: space-around !important;
    gap: 10px;
}

.woocommerce-variation-add-to-cart,
.elementor-add-to-cart,
.quantity-controls {
    justify-content: space-between !important;
    gap: 10px;
    display: flex;
    align-items: center;

    .plus,
    .minus {
        border: none;
        border-radius: 100%;
        font-size: 22px !important;
        line-height: 1;
        cursor: pointer;
        font-weight: 500 !important;
        width: 32px;
        height: 32px;

        &:disabled {
            cursor: default;
            pointer-events: none;
            background-color: var(--e-global-color-secondary) !important;
            color: #FFF;
            opacity: 0.5;
        }

        &:hover,
        &:focus {
            color: var(--e-global-color-secondary) !important;
            background-color: var(--e-global-color-accent) !important;
        }
    }

    .qty-input {
        height: 46px !important;
        border: 1px solid var(--e-global-color-secondary) !important;
        border-radius: 10px !important;
        font-size: 16px;
        line-height: 1;
        width: 60px;
        text-align: center;
    }

    button[type=submit] {
        background-color: var(--e-global-color-accent) !important;
        border-radius: 20px 20px 0 20px;
        color: var(--e-global-color-secondary) !important;
        width: calc(100% - 150px);

        &:hover,
        &:focus {
            color: #FFF !important;
            background-color: var(--e-global-color-primary) !important;
        }
    }
}

/* Product gallery */
.woocommerce-product-gallery__trigger {
    display: none;
}

.woocommerce-product-gallery__wrapper {
    pointer-events: none;
    border-radius: 0 60px 0 0 !important;
}

.variation p {
    margin-top: 0 !important;
}

.variations {
    margin-bottom: 2rem !important;

    td,
    tr,
    th {
        vertical-align: middle !important;
        padding: 0 !important;
        border: none;

        &:hover {
            background: transparent;
        }

        &.label {
            padding-left: 10px !important;
        }

        &.value {
            display: flex;
            align-items: center;
            padding-left: 10px !important;

            .reset_variations {
                margin-left: auto;
            }
        }
    }
}

.single_add_to_cart_button.button {
    border: none;
    font-weight: 600 !important;
}

.variations_button {
    font-weight: 600 !important;
}

/* Product gallery */

.elementor-menu-cart__product .variation dt {
    font-weight: bold;
    padding: 0px 15px 0px 0;
}

.elementor-menu-cart__toggle_button {
    .elementor-button-icon-qty {
        font-family: var(--e-global-typography-text-font-family), Sans-serif;
        font-size: 14px !important;
        font-weight: 600;
    }
}


.widget_shopping_cart_content:before {
    content: "Seu carrinho";
    display: block;
    font-size: 14px;
    margin-bottom: 5px;
    font-weight: bold;
    text-align: center;
    font-family: "Barlow Condensed", Sans-serif;
    text-transform: uppercase;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--subtotal-divider-color, #d5d8dc);
    padding-bottom: var(--product-divider-gap, 20px);
    font-size: 2rem;
    margin-top: 0;
    color: var(--e-global-color-primary);
}

.elementor-menu-cart__product-remove {
    top: 50%;
    transform: translateY(-100%);
    bottom: auto;
}

.elementor-menu-cart__product-name,
.elementor-menu-cart__product-price {
    padding-left: 0;
    width: 100%;
}

.woocommerce-notices-wrapper,
.e-woocommerce-notices-wrapper {
    a.button {
        background-color: var(--e-global-color-primary);
        border-radius: 20px 20px 0px 20px;
        padding: 10px 20px 10px 20px;
        font-family: "Barlow Condensed", Sans-serif;
        font-weight: 600;
        text-transform: uppercase;
        color: var(--e-global-color-289139d);
        margin-left: auto;

        &:hover,
        &:focus {
            background-color: var(--e-global-color-secondary);
            color: var(--e-global-color-289139d);
        }
    }

    &>div {
        display: flex;
        align-items: center;
        padding-left: 3.5rem;
        font-size: 1rem;

        &:before {
            font-size: 1.5rem;
            left: 1rem;
            top: 50%;
            transform: translate(0, -50%);
        }
    }
}

.woocommerce-message {
    background-color: #e0ffe0;
    color: #007a00;
    border: 1px solid #00cc00;
    padding: 15px;
    border-radius: 5px;
}

.woocommerce-error {
    background-color: #ffe0e0;
    color: #a00000;
    border: 1px solid #cc0000;
    padding: 15px;
    border-radius: 5px;
}

.woocommerce-info {
    background-color: #e0f0ff;
    color: #004080;
    border: 1px solid #3399ff;
    padding: 15px;
    border-radius: 5px;
}


/* Cart Page */
.shop_table th {
    text-transform: uppercase;
}

.shop_table,
.e-shop-table {
    font-size: 1rem;
}

.variation {
    font-size: 0.775rem;

    dt {
        font-weight: bold;
    }
}

/* .quantity button {
    background-color: #ddd;
    border: none;
    padding: 5px 10px;
    font-size: 16px;
    cursor: pointer;
} */

.elementor-widget-woocommerce-cart .woocommerce .input-text.qty {
    text-align: center;
    margin: 0 5px;
    height: 100% !important;
    width: 60px;
    min-height: 46px;
    max-height: 100%;
}

.elementor-widget-woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button {
    font-family: "Barlow Condensed", Sans-serif;
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 500;
    width: 100%;
}

#billing_country_field,
#shipping_country_field {
    display: none;
}

.wc_payment_methods.payment_methods {
    display: flex;
    flex-direction: column;
    row-gap: .5rem;
}

.select2-container--default .select2-results__option[aria-selected=true]:hover,
.select2-container--default .select2-results__option[data-selected=true]:hover,
.e-woo-select2-wrapper.select2-results__option[data-selected=true] {
    color: #FFF
}

.coupon .input-text {
    height: 100% !important;
    border-color: var(--e-global-color-text) !important;
    min-height: 48px;
}

.e-con.elementor-sticky--active {
    z-index: var(--z-index, 1099);
}

.elementor-widget-woocommerce-checkout-page .select2-container--default .select2-selection--single,
.elementor-70 .elementor-element.elementor-element-3a0f9b91 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-selection--single {
    height: 53px;
}

.elementor-widget-woocommerce-checkout-page .select2-container--default .select2-selection--single .select2-selection__rendered,
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 38px;
}

.elementor-widget-woocommerce-checkout-page a {
    font-size: 1em;
}

.elementor-widget-woocommerce-checkout-page .e-woocommerce-login-section a,
.elementor-widget-woocommerce-checkout-page .e-coupon-box a {
    display: block;
    margin-top: 10px;
    text-transform: none;
    font-size: 1rem;
}

.elementor-widget-woocommerce-checkout-page .woocommerce-button {
    border-radius: var(--purchase-button-border-radius, 3px) !important;
    color: var(--purchase-button-normal-text-color, #fff) !important;
    float: none;
    min-height: auto;
    padding: var(--purchase-button-padding, 1em 1em) !important;
    width: var(--purchase-button-width, auto) !important;
    height: 53px;
}

/* Cart Page */

/* Mini cart */
.elementor-menu-cart__product {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;

    .product-thumbnail {
        display: none;
    }
}

.elementor-menu-cart__main .widget_shopping_cart_content {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

.elementor-menu-cart__subtotal {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
}

.elementor-menu-cart__footer-buttons {
    display: flex;
    flex-direction: column;
}

/* Mini cart */

@media all and (max-width: 767px) {
    .single_add_to_cart_button.button {
        width: 100%;
        font-size: 1rem !important;
    }

    .elementor-widget-woocommerce-cart .woocommerce table.cart tr {
        padding: 0;
    }

    .woocommerce-cart-form__cart-item .quantity {
        max-width: 200px;
        margin-left: auto;
        width: 100%;
    }

    .theme-hello-elementor table.cart .product-thumbnail {
        display: none !important;
    }
}


.dce-cart-icon {
    line-height: 1 !important;
    display: block !important;
    position: relative;
}

.dce-cart-icon::after {
    content: "";
    width: calc(100% + 24px);
    height: calc(100% + 21px);
    position: absolute;
    left: -12px;
    top: -11px;
    border-radius: 100%;
}

.dce-cart-icon svg {
    fill: var(--e-global-color-text);
    width: 28px
}

.e-loop-item .produto-congelado {
    position: absolute;
    z-index: 99;
    left: 10px;
    top: 10px;

    &>div {
        padding: 6px 10px 6px 26px !important;
        height: 22px !important;
        line-height: 1rem;
        font-size: 10px;
        color: #FFF;
        text-transform: uppercase;
        opacity: .9;
    }
}

.produto-congelado {
    &>div {
        max-width: 150px;
        background: #01abff;
        border-radius: 3px;
        padding: 6px 10px 6px 26px;
        display: flex;
        align-items: center;
        opacity: .9 !important;
        pointer-events: none;
    }

    .elementor-widget-container {
        height: auto !important;
        line-height: 1rem;
        font-size: 10px;
        color: #FFF;
        text-transform: uppercase;
        opacity: .9;
    }

    &:after {
        content: "";
        background-image: url(../images/ice.svg);
        width: 16px;
        height: 16px;
        position: absolute;
        left: 5px;
        top: 50%;
        transform: translate(0, -50%);
        background-size: cover;
    }
}