.woocommerce .quantity .qty {
    width: 110px;
    -webkit-appearance: textfield;
       -moz-appearance: textfield;
        appearance: textfield;
    resize: none;

    &::-webkit-inner-spin-button,
    &::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0; /* Optional: removes default margin */
    }
}

.ywraq-with-form .yith-ywraq-before-table-wc-backward {
    display: none !important;
}

.woocommerce table.shop_table {
    border: 0;
    border-collapse: collapse;
    border-radius: 0;

    thead, tbody, tfoot, tr, td, th {
        border: 0;
    }
}

.ywraq-form-table-wrapper {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
}

.yith-ywraq-message {
    width: 100%;
}

.woocommerce .ywraq-form-table-wrapper .yith-ywraq-mail-form-wrapper {
    padding: 0;
}

@media (min-width: 1200px) {
    .ywraq-form-table-wrapper {
        flex-direction: row-reverse;
        align-items: flex-start;
    }

    #yith-ywraq-form {
        width: 800px;
    }

    .woocommerce .ywraq-form-table-wrapper .yith-ywraq-mail-form-wrapper {
        width: calc(100% - 800px);
        padding-right: 70px;
    }
}

.woocommerce .product-thumbnail {
    width: 173px;
}

.woocommerce .product-thumbnail a {
    display: block;
    width: 173px;
    height: 82px;

    img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
    }
}

.woocommerce .ywraq-form-form-wrapper table.cart .product-thumbnail {
    vertical-align: top;
    padding-inline: 0;
}

.woocommerce .ywraq-form-form-wrapper table {
    margin: 0;
}

.woocommerce .ywraq-form-form-wrapper thead .product-name {
    padding-bottom: 25px;
}

.woocommerce .ywraq-form-form-wrapper .product-name {
    padding: 0;
    position: relative;

    h4 {
        margin-bottom: 0;
    }

    .remove {
        position: absolute;
        top: 42px;
        right: 10px;
        width: 24px;
        height: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;

        i {
            font-size: 14px;
            color: #2C88A9;
        }

        &:hover {
            background-color: transparent;
            opacity: 0.75;
        }
    }
}

.woocommerce .ywraq-form-form-wrapper tbody .product-name {
    width: calc(100% - 173px);
}

@media (max-width: 1199px) {
    .woocommerce .ywraq-form-form-wrapper .product-name .remove {
        right: 0;
    }
}

.woocommerce .ywraq-form-form-wrapper {
    border-radius: 0 0 8px 8px;
    background: #F3F8F9;
    box-shadow: 0 0 16px 0 rgba(25, 38, 44, 0.08);
    padding: 32px;
}

.woocommerce table.shop_table .cart_item {
    position: relative;
    width: 100%;

    td {
        border-top: 1px solid #8BB9C8;
        padding-top: 40px;
        padding-bottom: 25px;
    }

    &.is-loading:before {
        display: none;
    }
}

.woocommerce .product-name .h4 {
    text-decoration: none;
    margin-bottom: 10px;
    display: block;
}

.product-features {
    padding-left: 0;
    max-width: 460px;
    margin: 0;

    ul {
        margin: 0;
    }

    li {
        padding-left: 0;

        &:before {
            display: none;
        }

        &:not(:last-child) {
            margin-bottom: 5px;
        }

        p {
            display: flex;
            align-items: center;

            .value {
                color: #2C88A9;
                text-align: right;
                font-family: "Inter", sans-serif;
                font-size: 16px;
                font-style: normal;
                font-weight: 700;
            }

            .label {
                color: #414042;
                padding-right: 20px;
                font-family: "Inter", sans-serif;
                font-size: 16px;
                font-style: normal;
                font-weight: 400;
                flex: 1;
            }
        }
    }
}

@media (max-width: 767px) {
    .product-features {
        max-width: 100%;

        ul {
            li {
                p {
                    .label,
                    .value {
                        font-size: 14px;
                    }
                }
            }
        }
    }
}

.product-quantity-display {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
    max-width: 460px;

    strong {
        color: #414042;
        font-family: "Inter", sans-serif;
        font-size: 16px;
        font-style: normal;
        font-weight: 700;
    }
}

.woocommerce .quantity .qty {
    border-radius: 4px;
    border: 1px solid #ECECEC;
    background-color: transparent;
}

.woocommerce #yith-ywraq-form .update-list-wrapper,
.woocommerce #yith-ywraq-form-preview .update-list-wrapper {
    display: none;
}

.raq-send-request-row {
    text-align: right;
}

.woocommerce .woocommerce-input-wrapper .ywraq_error ~ input,
.woocommerce .woocommerce-input-wrapper .ywraq_error ~ textarea {
    border-color: #EC9828;
}

.woocommerce .woocommerce-error {
    border-left: 4px solid #EC9828;
    border-top: 0;
    border-radius: 4px;
    background: #F3F8F9;    

    &::before {
        color: #EC9828;
    }

    p,
    strong {
        font-weight: 600;
        font-family: "Inter", sans-serif;
        font-size: 16px;
        font-style: normal;
        color: #414042;
    }
}

.quantity-field {
    position: relative;

    .plus,
    .minus {
        position: absolute;
        top: 0;
        width: 34px;
        height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        cursor: pointer;

        &:before,
        &:after {
            content: "";
            display: block;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            left: 0;
            right: 0;
            margin: 0 auto;
            background-color: #2C88A9;
        }

        &:before {
            width: 2px;
            height: 10px;
        }

        &:after {
            height: 2px;
            width: 10px;
        }
    }

    .plus {
        right: 0;
    }

    .minus {
        left: 0;

        &:before {
            display: none;
        }
    }
}

.quote-table-actions {
    text-align: right;
    margin-top: 25px;
}

.product-quantity__remove {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-left: auto;
    position: relative;

    i {
        position: absolute;
        top: 7px;
        left: -25px;
        font-size: 14px;
    }
}

.ywraq-wrapper.ywraq-empty,
.ywraq-wrapper.ywraq-with-form.ywraq-empty {
    .ywraq-before-form,
    .yith-ywraq-mail-form-wrapper {
        width: 100%;
    }

    .yith-ywraq-mail-form-wrapper {
        padding-inline: 0;
    }
}


/* Quantity Field Improvements */
.quantity-field {
    position: relative;
    display: inline-flex;
    align-items: center;
    border: 1px solid #ddd;
    border-radius: 4px;
    overflow: hidden;
}

.quantity-field input {
    border: none;
    text-align: center;
    width: 60px;
    padding: 8px 4px;
    outline: none;
}

.quantity-field .plus,
.quantity-field .minus {
    border: none;
    padding: 8px 12px;
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s ease;
}

.quantity-field .plus:hover,
.quantity-field .minus:hover {
    background: #e9ecef;
}

.quantity-field .plus:active,
.quantity-field .minus:active {
    background: #dee2e6;
}

/* YITH Request a Quote Form AJAX Styles */
.yith-ywraq-mail-form-wrapper .woocommerce-message,
.yith-ywraq-mail-form-wrapper .woocommerce-error {
    margin-bottom: 20px;
    padding: 15px;
    border-radius: 4px;
}

.yith-ywraq-mail-form-wrapper .woocommerce-message {
    background: #d4edda;
    border: 1px solid #c3e6cb;
    color: #155724;
}

.yith-ywraq-mail-form-wrapper .woocommerce-error {
    background: #f8d7da;
    border: 1px solid #f5c6cb;
    color: #721c24;
}

.raq-send-request:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.raq-send-request:disabled:hover {
    background-color: #007cba;
}

#yith-ywraq-form .product-quantity.quantity-field,
#yith-ywraq-form-preview .product-quantity.quantity-field {
    padding: 0;
}

.ywraq-before-form:before {
    margin-top: 0;
}

.woocommerce .woocommerce-products ul.products {
    display: flex;
    flex-wrap: wrap;

    li.product {
        margin: 0;
        padding: 0 16px 32px;
        width: 100%;
    }

    li.product .price {
        display: none;
    }

    li.product:before {
        display: none;
    }

    &:before,
    &:after {
        display: none;
    }
}

@media (min-width: 1200px) {
    .woocommerce .woocommerce-products ul.products {
        li.product {
            width: 50%;
        }
    }
}

@media (min-width: 1200px) {
    .woocommerce .woocommerce-products ul.products {
        li.product {
            width: 25%;
        }
    }
}

.woocommerce ul.products li.product a .cutout-button__image img {
    height: 100%;
    object-fit: contain;
    object-position: center;
    border: 0;
}

.woocommerce-products .woocommerce-pagination {
    .page-numbers {
        border: 0;

        &:before,
        &:after {
            display: none;
        }

        li:before {
            display: none;
        }

        li {
            border: 0;
        }

        span,
        a {
            color: #19262C;
            font-size: 16px;
            padding: 10px 20px;
            width: 50px;
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: center;
            line-height: 1;
            border-radius: 50%;
            transition: background-color 0.3s ease;
        }

        span.current {
            color: #fff;
            background-color: #19262C;
        }
    }
}

.ywraq-empty .ywraq-before-form {
    display: none !important;
}