/* ========================================
   Single Product: Add-to-Cart Styling
   ======================================== */

/* Layout — Quantity + Button in einer Linie, innerhalb der Spalte */
.single-product form.cart,
.single-product .cart {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Quantity Pill Container */
.single-product form.cart .quantity,
.single-product .cart .quantity,
.single-product .custom-quantity-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid #ddd !important;
    border-radius: 25px !important;
    overflow: hidden !important;
    height: 30px !important;
    background: #fff !important;
    flex-shrink: 0;
}

/* +/- Buttons innerhalb Quantity */
.single-product form.cart .quantity .qty-btn,
.single-product form.cart .quantity .qty-minus,
.single-product form.cart .quantity .qty-plus,
.single-product .custom-quantity-wrapper .qty-btn,
.single-product .custom-quantity-wrapper .qty-minus,
.single-product .custom-quantity-wrapper .qty-plus,
.single-product form.cart .quantity button {
    width: 40px !important;
    height: 100% !important;
    border: none !important;
    background: transparent !important;
    font-size: 18px !important;
    cursor: pointer;
    color: #28262c !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
}

/* Qty Input */
.single-product form.cart .quantity input.qty,
.single-product form.cart .quantity input[type="number"],
.single-product .custom-quantity-wrapper input.qty,
.single-product .custom-quantity-wrapper input[type="number"] {
    width: 50px !important;
    text-align: center !important;
    border: none !important;
    font-size: 16px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    -moz-appearance: textfield !important;
    box-shadow: none !important;
    height: 100% !important;
}

.single-product form.cart .quantity input[type="number"]::-webkit-inner-spin-button,
.single-product form.cart .quantity input[type="number"]::-webkit-outer-spin-button,
.single-product .custom-quantity-wrapper input[type="number"]::-webkit-inner-spin-button,
.single-product .custom-quantity-wrapper input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* Mobile Responsive */
@media (max-width: 767px) {
    .single-product form.cart,
    .single-product .cart {
        flex-wrap: wrap !important;
    }

    .single-product form.cart .quantity,
    .single-product .custom-quantity-wrapper {
        width: 100% !important;
        justify-content: space-between !important;
    }

    .single-product form.cart .quantity input.qty,
    .single-product .custom-quantity-wrapper input.qty {
        flex-grow: 1 !important;
    }
}
