@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@100;200;300;400;500;600;700;800;900&display=swap');

.single-product form.variations_form .variations-grid {
    display: grid;
}

.single-product form.variations_form .default-attr-cell {
    display: flex;
    flex-direction: column;
}

.single-product form.variations_form .default-attr-cell h5 {
    padding: 0;
}

.single-product form.variations_form tr.size-fields-container {
    display: flex;
}

.single-product form.variations_form .default-attr-cell:not(.cell-pa_color) ul[role="radiogroup"] {
    justify-content: space-evenly;
}

.single-product form.variations_form .variations-grid .attr-cell.cell-pa_color,
.single-product form.variations_form .variations-grid .attr-cell.size-fields-container {
    grid-column: 1/-1;
}

.single-product form.variations_form .variations-grid .attr-cell.size-fields-container {
    display: flex;
    gap: 30px;
}

.single-product form.variations_form tr.size-fields-container .input-cell label:not(.error),
.single-product .product form.variations_form .variations-grid .attr-cell h5.label label {
    font-family: 'Heebo';
    font-size: 16px;
    line-height: 2;
    font-weight: 700;
}

.single-product .product form.variations_form .variations-grid .attr-cell h5.label {
    margin: 10px 0 0;
}

.single-product form.variations_form tr.size-fields-container .input-cell input[type="number"] {
    padding: .8rem 1rem;
}

.single-product form.variations_form .updated-price-wrapper {
    color: #757575;
    text-align: end;
}

.single-product form.variations_form .updated-price-wrapper span {
    text-decoration: underline;
}

.single-product form.variations_form .updated-price-wrapper p {
    font-size: 20px;
}

.single-product form.variations_form .variations-grid .hidden-cell,
.single-product form.variations_form.custom-attr .woocommerce-variation-price .price bdi {
    display: none;
}

.woo-variation-swatches.rtl .variable-items-wrapper.color-variable-items-wrapper li {
    width: 50px;
    height: 50px;
}

.woo-variation-swatches.rtl .variable-items-wrapper:not([data-attribute_name="attribute_pa_color"]) .variable-item:not(.radio-variable-item) {
    border-radius: 10px;
}

.woo-variation-swatches .wvs-style-rounded.variable-items-wrapper .variable-item:not(.radio-variable-item) img {
    border-radius: 10px;
    height: var(--size);
    width: var(--size);
    object-fit: contain;
}

.single-product form.variations_form .variations-grid .reset-button-wrapper {
    display: flex;
    align-items: end;
    justify-content: end;
    text-decoration: underline;
}

@media only screen and (min-width: 768px) {
    .single-product form.variations_form .variations-grid {
        grid-template-columns: 1fr 1fr;
    }

    .woo-variation-swatches.rtl .variable-items-wrapper:not([data-attribute_name="attribute_pa_color"]) .variable-item:not(.radio-variable-item) {
        --size: clamp(75px, 9.2vw, 110px);
        height: var(--size);
        width: var(--size);

    }

    .woo-variation-swatches.rtl .variable-items-wrapper.color-variable-items-wrapper {
        flex-wrap: nowrap;
    }

    .single-product form.variations_form .variations-grid .reset-button-wrapper {
        grid-column: 2/-1;
        padding-left: 30px;
    }
}

@media only screen and (max-width: 768px) {
    .single-product form.variations_form .variations-grid {
        grid-template-columns: 1fr;
    }

    .single-product form.variations_form .default-attr-cell:not(.cell-pa_color) ul[role="radiogroup"]{
        justify-content: space-between;
        gap: 30px;
    }

    .woo-variation-swatches.rtl .variable-items-wrapper:not([data-attribute_name="attribute_pa_color"]) .variable-item:not(.radio-variable-item) {
        --size: 45%;
        height: var(--size);
        width: var(--size);
        margin: 0;
    }
    .woo-variation-swatches .wvs-style-rounded.variable-items-wrapper .variable-item:not(.radio-variable-item) .variable-item-contents{
    aspect-ratio: 1;
}
    .woo-variation-swatches .wvs-style-rounded.variable-items-wrapper .variable-item:not(.radio-variable-item) img {
        width: 100%;
        height: 100%;
    }
}

.woocommerce .product .elementor-jet-single-add-to-cart .cart .quantity .qty {
    width: unset !important;
    padding-left: 5px;
}


/* Upsells */

#upsell-popup {
    position: fixed !important;
    top: 0;
    height: 100vh;
    transition: all .4s linear;
}

@media only screen and (min-width: 768px) {
    #upsell-popup {
        width: 520px;
    }

    #upsell-popup[data-active="false"] {
        left: -530px;
    }
}

@media only screen and (max-width: 768px) {
    #upsell-popup {
        width: 100%;
    }

    #upsell-popup[data-active="false"] {
        left: -100%;
    }
}

#upsell-popup[data-active="true"] {
    left: 0;
}

#upsell-popup .products-list-wrapper {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 540px;
    border-top: 1px solid #e2e2e2;

}

@media only screen and (min-width: 768px) {
    #upsell-popup .products-list-wrapper {
        margin: 25px 15px 0;
    }
}

@media only screen and (max-width: 768px) {
    #upsell-popup .products-list-wrapper {
        margin: 15px 0 0;
    }

    #upsell-popup ul.products.elementor-grid li.product .text-wrapper{
        width: 15px;
    }

}

.products-list-wrapper::-webkit-scrollbar {
    width: 4px;
    background: #ffffff;
}

.products-list-wrapper::-webkit-scrollbar-thumb {
    background: #70597e;
}

#upsell-popup .products-list-wrapper ul.products {
    display: flex !important;
    flex-direction: column;
}

#upsell-popup .products-list-wrapper ul.products.elementor-grid li.product a.woocommerce-loop-product__link {
    width: 50%;
    display: flex;
    gap: 10px;
}

#upsell-popup .elementor-products-grid ul.products.elementor-grid li.product {
    flex-direction: row;
    padding: 12px 5px;
    gap: 5px;
}

#upsell-popup .elementor-products-grid ul.products.elementor-grid li.product:not(:first-of-type) {

    border-top: 1px solid #e2e2e2;
}

#upsell-popup .products-list-wrapper ul li img {
    max-width: 120px;
    aspect-ratio: 1;
    margin: 0;
}

#upsell-popup .elementor-products-grid ul.products.elementor-grid li.product .woocommerce-loop-product__title {
    white-space: nowrap;
}

#upsell-popup .products-list-wrapper ul.products li.product .woocommerce-loop-product__buttons,
#upsell-popup .products-list-wrapper ul.products .upsell-quantity-wrapper {
    display: flex;
    align-items: end;
}

#upsell-popup ul.products li.product .button {
    white-space: nowrap;
}

#upsell-popup ul.products li  .upsell-width-wrapper{
    margin-bottom: 10px;
    display: flex;
    gap: 8px;
    align-items: center;
}

#upsell-popup ul.products li input.upsell-width{
    border-radius: 20px;
}

#upsell-popup ul.products li  .upsell-width-wrapper input.upsell-width{
    text-align: center;
}

#upsell-popup ul.products li  .upsell-width-wrapper .adjusted-price{
    display: none;
    font-size: 14px;
    text-align: start;
}

.qty-input {
    color: #000;
    background: #fff;
    display: flex;
    align-items: end;
    border-radius: 4px;
    border: 1px solid #e2e2e2;
    overflow: hidden;
}

.qty-input .product-qty,
.qty-input .qty-count {
    font-weight: bold;
    border: none;
    height: 30px;
    line-height: 1;
}

.qty-input .product-qty:hover,
.qty-input .qty-count:hover {
    outline: none;
}

.qty-input .qty-count:hover {
    background-color: #aca1a8;
}

.qty-input .product-qty {
    width: 50px;
    text-align: center;
    font-size: 14px;

}

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

.qty-input .qty-count {
    padding: 0;
    cursor: pointer;
    width: 1.8rem;
    font-size: 14px;
    text-indent: -100px;
    position: relative;
}

.qty-input .qty-count:before,
.qty-input .qty-count:after {
    content: "";
    height: 2px;
    width: 10px;
    position: absolute;
    display: block;
    background: #000;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.qty-input .qty-count--add:after {
    transform: rotate(90deg);
}

.qty-input .qty-count:disabled {
    color: #ccc;
    background: #f2f2f2;
    cursor: not-allowed;
    border-color: transparent;
}

.qty-input .qty-count:disabled:before,
.qty-input .qty-count:disabled:after {
    background: #ccc;
}
