.mnqc-control-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 94px;
    min-height: 42px;
    position: relative;
    z-index: 5;
    margin-top: 8px;
    font-family: inherit;
}

.mnqc-add-button,
.mnqc-stepper {
    width: 94px;
    height: 42px;
    border: 2px solid #2f8f18;
    border-radius: 10px;
    box-sizing: border-box;
    font-weight: 800;
    font-size: 17px;
    line-height: 1;
}

.mnqc-add-button {
    cursor: pointer;
    background: #fff;
    color: #2f8f18;
    padding: 0 12px;
    box-shadow: none;
}

.mnqc-stepper {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    overflow: hidden;
    background: #2f8f18;
    color: #fff;
}

.mnqc-stepper button {
    appearance: none;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #fff;
    font-size: 25px;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    min-width: 0;
    min-height: 0;
    box-shadow: none;
}

.mnqc-quantity {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 800;
}

.mnqc-hidden {
    display: none !important;
}

.mnqc-loading {
    opacity: .65;
    pointer-events: none;
}

#mnqc-sticky-cart-root {
    display: none;
}

.mnqc-toast {
    position: fixed;
    left: 50%;
    bottom: 92px;
    transform: translate(-50%, 20px);
    max-width: calc(100% - 36px);
    padding: 10px 16px;
    border-radius: 8px;
    background: #222;
    color: #fff;
    font-size: 14px;
    line-height: 1.35;
    opacity: 0;
    visibility: hidden;
    transition: .2s ease;
    z-index: 100001;
    text-align: center;
}

.mnqc-toast-visible {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
}

@media (max-width: 767px) {
    body.woocommerce-shop,
    body.tax-product_cat,
    body.tax-product_tag,
    body.search-results,
    body.single-product {
        padding-bottom: 92px;
    }

    #mnqc-sticky-cart-root:not(:empty) {
        display: block;
        position: fixed;
        left: 0;
        right: 0;
        bottom: max(10px, env(safe-area-inset-bottom));
        z-index: 99999;
        pointer-events: none;
    }

    .mnqc-sticky-cart {
        display: flex;
        align-items: center;
        width: min(440px, calc(100% - 28px));
        min-height: 68px;
        margin: 0 auto;
        padding: 9px 15px 9px 12px;
        border-radius: 34px;
        background: #27870f;
        color: #fff !important;
        text-decoration: none !important;
        box-shadow: 0 7px 22px rgba(0, 0, 0, .24);
        box-sizing: border-box;
        pointer-events: auto;
    }

    .mnqc-sticky-thumbs {
        display: flex;
        flex: 0 0 auto;
        margin-right: 12px;
        padding-left: 5px;
    }

    .mnqc-sticky-thumb {
        width: 42px;
        height: 42px;
        margin-left: -7px;
        border: 2px solid #fff;
        border-radius: 50%;
        overflow: hidden;
        background: #fff;
    }

    .mnqc-sticky-thumb:first-child {
        margin-left: 0;
    }

    .mnqc-sticky-thumb img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        margin: 0;
    }

    .mnqc-sticky-copy {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
        min-width: 0;
        color: #fff;
        line-height: 1.15;
    }

    .mnqc-sticky-copy strong {
        font-size: 20px;
        color: #fff;
    }

    .mnqc-sticky-copy span {
        margin-top: 3px;
        font-size: 14px;
        color: #fff;
    }

    .mnqc-sticky-arrow {
        flex: 0 0 auto;
        margin-left: 10px;
        font-size: 42px;
        font-weight: 300;
        line-height: 1;
        color: #fff;
    }

    /* Keep the controls compact inside narrow Electro product cards. */
    ul.products li.product .mnqc-control-wrap,
    .products .product .mnqc-control-wrap {
        margin-top: 7px;
    }
}

/* Mobile fallback rendered after the product price. Hidden on desktop. */
.mnqc-mobile-control {
    display: none;
}

@media (max-width: 767px) {
    /* Electro can hide the normal loop add-to-cart wrapper on mobile. */
    .mnqc-loop-control {
        display: none !important;
    }

    ul.products li.product .mnqc-mobile-control,
    .products .product .mnqc-mobile-control,
    li.product .mnqc-mobile-control {
        display: flex !important;
        width: 100%;
        min-width: 0;
        min-height: 38px;
        margin: 7px 0 4px !important;
        position: relative !important;
        visibility: visible !important;
        opacity: 1 !important;
        transform: none !important;
        clear: both;
    }

    .mnqc-mobile-control .mnqc-add-button,
    .mnqc-mobile-control .mnqc-stepper {
        width: 100%;
        max-width: 112px;
        height: 38px;
        font-size: 16px;
        margin-left: auto;
    }

    .mnqc-mobile-control .mnqc-stepper button {
        font-size: 22px;
    }

    .mnqc-mobile-control .mnqc-quantity {
        font-size: 17px;
    }
}


/* MachNexus storefront: remove wishlist and compare actions. */
.woocommerce .yith-wcwl-add-to-wishlist,
.woocommerce .yith-wcwl-wishlistaddedbrowse,
.woocommerce .yith-wcwl-wishlistexistsbrowse,
.woocommerce a.add_to_wishlist,
.woocommerce .add-to-wishlist,
.woocommerce .wishlist,
.woocommerce .compare,
.woocommerce a.compare,
.woocommerce .product-compare,
.woocommerce .electro-wc-wishlist,
.woocommerce .electro-wc-compare,
.woocommerce .footer-product-action .add-to-wishlist,
.woocommerce .footer-product-action .compare,
.woocommerce .product-actions .add-to-wishlist,
.woocommerce .product-actions .compare,
.woocommerce .product-loop-footer .add-to-wishlist,
.woocommerce .product-loop-footer .compare,
.single-product .yith-wcwl-add-to-wishlist,
.single-product a.compare {
    display: none !important;
}

/* Product names: keep long machinery titles readable without oversized text. */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .product-item__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .product-title,
.woocommerce .products .product .woocommerce-loop-product__title,
.woocommerce .products .product .product-item__title,
.woocommerce .products .product .product-title {
    font-size: 15px !important;
    line-height: 1.28 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: initial !important;
    overflow-wrap: anywhere;
    word-break: normal;
    text-transform: none;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title a,
.woocommerce ul.products li.product .product-item__title a,
.woocommerce ul.products li.product .product-title a,
.woocommerce .products .product .woocommerce-loop-product__title a,
.woocommerce .products .product .product-item__title a,
.woocommerce .products .product .product-title a {
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: inherit !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
}

@media (max-width: 767px) {
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce ul.products li.product .product-item__title,
    .woocommerce ul.products li.product h2,
    .woocommerce ul.products li.product h3,
    .woocommerce ul.products li.product .product-title,
    .woocommerce .products .product .woocommerce-loop-product__title,
    .woocommerce .products .product .product-item__title,
    .woocommerce .products .product .product-title {
        font-size: 13px !important;
        line-height: 1.3 !important;
        font-weight: 600 !important;
        margin-top: 5px !important;
        margin-bottom: 5px !important;
    }
}

/* v1.4.0: stronger compatibility with Electro and narrow machinery grids. */
body ul.products li.product .woocommerce-loop-product__title,
body ul.products li.product .product-item__title,
body ul.products li.product .product-title,
body .products .product .woocommerce-loop-product__title,
body .products .product .product-item__title,
body .products .product .product-title,
body .products .product h2,
body .products .product h3 {
    font-size: 11px !important;
    line-height: 1.22 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    text-transform: none !important;
}

body ul.products li.product .woocommerce-loop-product__title a,
body ul.products li.product .product-item__title a,
body ul.products li.product .product-title a,
body .products .product .woocommerce-loop-product__title a,
body .products .product .product-item__title a,
body .products .product .product-title a {
    font-size: inherit !important;
    line-height: inherit !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
}

/* Hide wishlist/compare from Electro, YITH and common product-card implementations. */
body .product [class*="wishlist"],
body .product [class*="Wishlist"],
body .product [class*="compare"],
body .product [class*="Compare"],
body li.product [class*="wishlist"],
body li.product [class*="Wishlist"],
body li.product [class*="compare"],
body li.product [class*="Compare"],
body.single-product [class*="wishlist"],
body.single-product [class*="Wishlist"],
body.single-product [class*="compare"],
body.single-product [class*="Compare"],
body .yith-wcwl-add-button,
body .yith-wcwl-add-to-wishlist,
body .yith-wcwl-wishlistexistsbrowse,
body .yith-wcwl-wishlistaddedbrowse,
body .tinv-wraper,
body .tinvwl_add_to_wishlist_button,
body .woosw-btn,
body .woosc-btn,
body .add-to-compare-link,
body .add-to-wishlist-link {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* JS-inserted fallback control. It is intentionally outside Electro's hidden footer. */
.mnqc-mobile-clone {
    display: none;
}

@media (max-width: 767px) {
    body ul.products li.product .woocommerce-loop-product__title,
    body ul.products li.product .product-item__title,
    body ul.products li.product .product-title,
    body .products .product .woocommerce-loop-product__title,
    body .products .product .product-item__title,
    body .products .product .product-title,
    body .products .product h2,
    body .products .product h3 {
        font-size: 12px !important;
        line-height: 1.25 !important;
    }

    li.product > .mnqc-mobile-clone,
    .product > .mnqc-mobile-clone,
    .product-inner > .mnqc-mobile-clone,
    .product-item__inner > .mnqc-mobile-clone {
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 38px !important;
        margin: 7px 0 5px !important;
        position: relative !important;
        z-index: 30 !important;
        visibility: visible !important;
        opacity: 1 !important;
        transform: none !important;
        clear: both !important;
    }

    .mnqc-mobile-clone .mnqc-add-button,
    .mnqc-mobile-clone .mnqc-stepper {
        display: grid;
        width: 100% !important;
        max-width: 118px !important;
        height: 38px !important;
        margin-left: auto !important;
    }

    .mnqc-mobile-clone .mnqc-add-button {
        display: block;
    }

    .mnqc-mobile-clone .mnqc-add-button.mnqc-hidden,
    .mnqc-mobile-clone .mnqc-stepper.mnqc-hidden {
        display: none !important;
    }
}

/* v1.5.0: mobile control is injected next to the visible price, outside Electro's hidden footer. */
.mnqc-card-fallback,
.mnqc-mobile-injected { display: none; }

@media (max-width: 767px) {
    body .products li.product .mnqc-mobile-injected,
    body ul.products li.product .mnqc-mobile-injected,
    body li.product .mnqc-mobile-injected {
        display: flex !important;
        width: 112px !important;
        min-width: 112px !important;
        height: 38px !important;
        min-height: 38px !important;
        margin: 8px 0 8px auto !important;
        padding: 0 !important;
        position: relative !important;
        inset: auto !important;
        float: none !important;
        clear: both !important;
        z-index: 50 !important;
        visibility: visible !important;
        opacity: 1 !important;
        overflow: visible !important;
        transform: none !important;
    }
    body .mnqc-mobile-injected .mnqc-add-button,
    body .mnqc-mobile-injected .mnqc-stepper {
        display: flex;
        width: 112px !important;
        min-width: 112px !important;
        height: 38px !important;
        margin: 0 !important;
    }
    body .mnqc-mobile-injected .mnqc-add-button.mnqc-hidden,
    body .mnqc-mobile-injected .mnqc-stepper.mnqc-hidden { display: none !important; }
    body .mnqc-mobile-injected .mnqc-stepper > button { width: 36px !important; min-width: 36px !important; }
    body .mnqc-mobile-injected .mnqc-quantity { width: 40px !important; min-width: 40px !important; }
}


/* Single product page: custom control directly below the price. */
.single-product .mnqc-single-product-section {
    display: block !important;
    clear: both;
    margin: 10px 0 18px;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative;
    z-index: 20;
}

.single-product .mnqc-single-product-section .mnqc-control-wrap {
    display: inline-flex !important;
    margin: 0;
}

/* Replace the theme's normal simple-product cart block with this AJAX control.
   Variable, grouped and external products keep their native WooCommerce form. */
.single-product div.product.product-type-simple form.cart {
    display: none !important;
}

/* Remove the empty wishlist/compare action row so it cannot reserve space. */
.single-product .summary .product-actions,
.single-product .summary .footer-product-action,
.single-product .summary .yith-wcwl-add-to-wishlist,
.single-product .summary .tinv-wraper,
.single-product .summary a.compare,
.single-product .summary .compare {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

@media (max-width: 767px) {
    .single-product .mnqc-single-product-section {
        margin: 8px 0 14px;
    }
    .single-product .mnqc-single-product-section .mnqc-add-button,
    .single-product .mnqc-single-product-section .mnqc-stepper {
        width: 118px;
        height: 46px;
    }
}

/* v1.6.0: place the mobile ADD/quantity row on its own line below the price. */
@media (max-width: 767px) {
    /* Electro often keeps the price and action as inline/flex siblings. Force a clean vertical stack. */
    body.woocommerce ul.products li.product .price,
    body.woocommerce-page ul.products li.product .price,
    body .products li.product .price,
    body ul.products li.product .price {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        clear: both !important;
        margin: 8px 0 0 !important;
        position: relative !important;
    }

    body .products li.product .mnqc-mobile-injected,
    body ul.products li.product .mnqc-mobile-injected,
    body li.product .mnqc-mobile-injected {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: 40px !important;
        min-height: 40px !important;
        margin: 7px 0 10px !important;
        float: none !important;
        clear: both !important;
        box-sizing: border-box !important;
    }

    body .mnqc-mobile-injected .mnqc-add-button,
    body .mnqc-mobile-injected .mnqc-stepper {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: 40px !important;
        margin: 0 !important;
        border-radius: 9px !important;
        box-sizing: border-box !important;
    }

    body .mnqc-mobile-injected .mnqc-add-button {
        display: block !important;
        padding: 0 8px !important;
        font-size: 16px !important;
    }

    body .mnqc-mobile-injected .mnqc-stepper {
        display: grid !important;
        grid-template-columns: 42px minmax(34px, 1fr) 42px !important;
    }

    body .mnqc-mobile-injected .mnqc-stepper > button,
    body .mnqc-mobile-injected .mnqc-quantity {
        width: auto !important;
        min-width: 0 !important;
    }

    body .mnqc-mobile-injected .mnqc-add-button.mnqc-hidden,
    body .mnqc-mobile-injected .mnqc-stepper.mnqc-hidden {
        display: none !important;
    }

    /* Do the same on the single product page, but keep a sensible maximum width. */
    .single-product .mnqc-single-product-section {
        display: block !important;
        width: 100% !important;
        clear: both !important;
        margin: 10px 0 16px !important;
    }

    .single-product .mnqc-single-product-section .mnqc-control-wrap {
        display: flex !important;
        width: 100% !important;
        max-width: 360px !important;
        margin: 0 !important;
    }

    .single-product .mnqc-single-product-section .mnqc-add-button,
    .single-product .mnqc-single-product-section .mnqc-stepper {
        width: 100% !important;
        max-width: 360px !important;
        height: 44px !important;
    }

    .single-product .mnqc-single-product-section .mnqc-stepper {
        grid-template-columns: 48px minmax(46px, 1fr) 48px !important;
    }
}


/* v1.6.1: Force the mobile quick-cart into its own row below the price. */
@media (max-width: 767px) {
    ul.products li.product .price,
    .products .product .price,
    li.product .price {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        clear: both !important;
        float: none !important;
    }

    .mnqc-mobile-row {
        display: flex !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        clear: both !important;
        float: none !important;
        justify-content: flex-end !important;
        align-items: center !important;
        margin: 7px 0 5px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    .mnqc-mobile-row .mnqc-control-wrap,
    ul.products li.product .mnqc-mobile-injected,
    .products .product .mnqc-mobile-injected,
    li.product .mnqc-mobile-injected {
        display: flex !important;
        flex: 0 0 auto !important;
        width: 132px !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 40px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        visibility: visible !important;
        opacity: 1 !important;
        overflow: visible !important;
        transform: none !important;
        box-sizing: border-box !important;
    }

    .mnqc-mobile-row .mnqc-add-button,
    .mnqc-mobile-row .mnqc-stepper,
    .mnqc-mobile-injected .mnqc-add-button,
    .mnqc-mobile-injected .mnqc-stepper {
        display: grid;
        width: 132px !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 40px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .mnqc-mobile-row .mnqc-add-button,
    .mnqc-mobile-injected .mnqc-add-button {
        display: block !important;
    }

    .mnqc-mobile-row .mnqc-add-button.mnqc-hidden,
    .mnqc-mobile-row .mnqc-stepper.mnqc-hidden,
    .mnqc-mobile-injected .mnqc-add-button.mnqc-hidden,
    .mnqc-mobile-injected .mnqc-stepper.mnqc-hidden {
        display: none !important;
    }

    .mnqc-mobile-row .mnqc-stepper,
    .mnqc-mobile-injected .mnqc-stepper {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .mnqc-mobile-row .mnqc-stepper button,
    .mnqc-mobile-row .mnqc-quantity,
    .mnqc-mobile-injected .mnqc-stepper button,
    .mnqc-mobile-injected .mnqc-quantity {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
    }

    /* Prevent Electro product-card containers from clipping the plus button. */
    ul.products li.product,
    .products .product,
    ul.products li.product .product-inner,
    .products .product .product-inner,
    ul.products li.product .product-item,
    .products .product .product-item {
        overflow: visible !important;
    }
}


/* v1.7.0: isolate each mobile quick-cart control inside its own product card. */
@media (max-width: 767px) {
    .woocommerce ul.products li.product,
    .woocommerce .products .product,
    ul.products li.product,
    .products .product {
        min-width: 0 !important;
    }

    .woocommerce ul.products li.product .mnqc-mobile-row,
    .woocommerce .products .product .mnqc-mobile-row,
    ul.products li.product .mnqc-mobile-row,
    .products .product .mnqc-mobile-row {
        display: block !important;
        position: relative !important;
        float: none !important;
        clear: both !important;
        grid-column: 1 / -1 !important;
        flex: 0 0 100% !important;
        flex-basis: 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        margin: 8px 0 5px !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
        z-index: 8 !important;
    }

    .woocommerce ul.products li.product .mnqc-mobile-row .mnqc-control-wrap,
    .woocommerce .products .product .mnqc-mobile-row .mnqc-control-wrap,
    ul.products li.product .mnqc-mobile-row .mnqc-control-wrap,
    .products .product .mnqc-mobile-row .mnqc-control-wrap {
        display: block !important;
        position: relative !important;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 38px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .woocommerce ul.products li.product .mnqc-mobile-row .mnqc-add-button,
    .woocommerce ul.products li.product .mnqc-mobile-row .mnqc-stepper,
    .woocommerce .products .product .mnqc-mobile-row .mnqc-add-button,
    .woocommerce .products .product .mnqc-mobile-row .mnqc-stepper,
    ul.products li.product .mnqc-mobile-row .mnqc-add-button,
    ul.products li.product .mnqc-mobile-row .mnqc-stepper,
    .products .product .mnqc-mobile-row .mnqc-add-button,
    .products .product .mnqc-mobile-row .mnqc-stepper {
        display: grid;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 38px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    .woocommerce ul.products li.product .mnqc-mobile-row .mnqc-add-button,
    .woocommerce .products .product .mnqc-mobile-row .mnqc-add-button,
    ul.products li.product .mnqc-mobile-row .mnqc-add-button,
    .products .product .mnqc-mobile-row .mnqc-add-button {
        display: block !important;
        text-align: center !important;
    }

    .woocommerce ul.products li.product .mnqc-mobile-row .mnqc-stepper,
    .woocommerce .products .product .mnqc-mobile-row .mnqc-stepper,
    ul.products li.product .mnqc-mobile-row .mnqc-stepper,
    .products .product .mnqc-mobile-row .mnqc-stepper {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) !important;
    }

    .mnqc-mobile-row .mnqc-stepper button,
    .mnqc-mobile-row .mnqc-stepper .mnqc-quantity {
        min-width: 0 !important;
        width: auto !important;
        max-width: none !important;
        overflow: hidden !important;
    }

    /* Hide all other loop copies so only the isolated row remains visible. */
    ul.products li.product > .mnqc-control-wrap:not(.mnqc-mobile-injected),
    .products .product > .mnqc-control-wrap:not(.mnqc-mobile-injected),
    .product-loop-footer > .mnqc-control-wrap:not(.mnqc-mobile-injected),
    .product-item__footer > .mnqc-control-wrap:not(.mnqc-mobile-injected) {
        display: none !important;
    }
}


@media (max-width: 767px) {
    /* Give each mobile product card enough vertical space for the quick-cart row. */
    ul.products li.product,
    .products .product,
    li.product {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
        padding-bottom: 8px !important;
    }

    ul.products li.product .product-outer,
    .products .product .product-outer,
    ul.products li.product .product-inner,
    .products .product .product-inner,
    ul.products li.product .product-loop-footer,
    .products .product .product-loop-footer,
    ul.products li.product .product-item__footer,
    .products .product .product-item__footer,
    ul.products li.product .product-footer,
    .products .product .product-footer {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    ul.products li.product .mnqc-mobile-row,
    .products .product .mnqc-mobile-row,
    li.product .mnqc-mobile-row {
        display: block !important;
        width: 100% !important;
        min-height: 54px;
        margin: 10px 0 6px !important;
        padding: 0 0 6px !important;
        clear: both !important;
        overflow: visible !important;
    }

    ul.products li.product .mnqc-mobile-row .mnqc-control-wrap,
    .products .product .mnqc-mobile-row .mnqc-control-wrap,
    li.product .mnqc-mobile-row .mnqc-control-wrap {
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 46px !important;
        margin: 0 !important;
        justify-content: stretch !important;
    }

    .mnqc-mobile-row .mnqc-add-button,
    .mnqc-mobile-row .mnqc-stepper {
        width: 100% !important;
        max-width: none !important;
        height: 46px !important;
    }

    .mnqc-mobile-row .mnqc-stepper button {
        min-width: 0 !important;
    }
}


@media (max-width: 767px) {
    /* v1.8: reserve a real action area below every price. */
    ul.products li.product .mnqc-mobile-row,
    .products .product .mnqc-mobile-row,
    li.product .mnqc-mobile-row {
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        float: none !important;
        inset: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 66px !important;
        height: 66px !important;
        margin: 8px 0 8px !important;
        padding: 6px 0 8px !important;
        clear: both !important;
        overflow: visible !important;
        z-index: 20 !important;
    }

    .mnqc-mobile-row .mnqc-control-wrap,
    ul.products li.product .mnqc-mobile-row .mnqc-control-wrap,
    .products .product .mnqc-mobile-row .mnqc-control-wrap {
        box-sizing: border-box !important;
        display: flex !important;
        align-items: stretch !important;
        justify-content: stretch !important;
        position: relative !important;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 50px !important;
        height: 50px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    .mnqc-mobile-row .mnqc-add-button,
    .mnqc-mobile-row .mnqc-stepper {
        box-sizing: border-box !important;
        position: relative !important;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 50px !important;
        min-height: 50px !important;
        margin: 0 !important;
        border-radius: 12px !important;
        overflow: hidden !important;
    }

    .mnqc-mobile-row .mnqc-add-button {
        border: 0 !important;
        background: #f0efed !important;
        color: #343a40 !important;
        box-shadow: none !important;
    }

    .mnqc-mobile-row .mnqc-add-button:focus,
    .mnqc-mobile-row .mnqc-add-button:hover,
    .mnqc-mobile-row .mnqc-add-button:active {
        background: #f0efed !important;
        color: #343a40 !important;
        outline: none !important;
        box-shadow: none !important;
    }

    .mnqc-mobile-row .mnqc-stepper {
        display: grid !important;
        grid-template-columns: minmax(42px, 1fr) minmax(42px, 1fr) minmax(42px, 1fr) !important;
        border: 3px solid #2f8f18 !important;
        background: #2f8f18 !important;
    }

    .mnqc-mobile-row .mnqc-stepper.mnqc-hidden,
    .mnqc-mobile-row .mnqc-add-button.mnqc-hidden {
        display: none !important;
    }

    .mnqc-mobile-row .mnqc-stepper button,
    .mnqc-mobile-row .mnqc-quantity {
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
    }

    .mnqc-mobile-row .mnqc-minus,
    .mnqc-mobile-row .mnqc-plus {
        background: #f5f5f5 !important;
        color: #343a40 !important;
    }

    .mnqc-mobile-row .mnqc-quantity {
        background: #2f8f18 !important;
        color: #fff !important;
        font-size: 22px !important;
        font-weight: 800 !important;
    }

    /* Ensure the product itself grows with the reserved action row. */
    ul.products li.product,
    .products .product,
    ul.products li.product .product-outer,
    .products .product .product-outer,
    ul.products li.product .product-inner,
    .products .product .product-inner {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
}


/* v1.8.1: ensure the quantity stepper becomes visible immediately after ADD. */
@media (max-width: 767px) {
    .mnqc-mobile-row .mnqc-stepper:not(.mnqc-hidden) {
        display: grid !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    .mnqc-mobile-row .mnqc-add-button.mnqc-hidden {
        display: none !important;
        visibility: hidden !important;
    }
}


/* v1.8.2: force a visible state for ADD and quantity controls even when Electro applies display rules. */
@media (max-width: 767px) {
    li.product .mnqc-control-wrap .mnqc-add-button:not(.mnqc-hidden),
    .products .product .mnqc-control-wrap .mnqc-add-button:not(.mnqc-hidden) {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    li.product .mnqc-control-wrap .mnqc-stepper:not(.mnqc-hidden),
    .products .product .mnqc-control-wrap .mnqc-stepper:not(.mnqc-hidden) {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 100% !important;
    }

    li.product .mnqc-control-wrap .mnqc-hidden,
    .products .product .mnqc-control-wrap .mnqc-hidden,
    li.product .mnqc-control-wrap [hidden],
    .products .product .mnqc-control-wrap [hidden] {
        display: none !important;
    }
}


/* Desktop-only product-grid fix: place the quick-cart control below the price
   in its own row, without changing the working mobile layout. */
@media (min-width: 768px) {
    body ul.products li.product .mnqc-loop-control,
    body .products .product .mnqc-loop-control,
    body ul.products li.product .mnqc-card-fallback,
    body .products .product .mnqc-card-fallback,
    body ul.products li.product .mnqc-mobile-control,
    body .products .product .mnqc-mobile-control {
        display: none !important;
    }

    body ul.products li.product,
    body .products .product {
        overflow: visible !important;
    }

    body ul.products li.product .mnqc-desktop-row,
    body .products .product .mnqc-desktop-row {
        display: block !important;
        width: 100% !important;
        min-height: 44px;
        margin: 10px 0 0 !important;
        clear: both !important;
        overflow: visible !important;
    }

    body ul.products li.product .mnqc-desktop-row .mnqc-control-wrap,
    body .products .product .mnqc-desktop-row .mnqc-control-wrap {
        display: flex !important;
        align-items: center;
        justify-content: flex-start;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 40px !important;
        margin: 0 !important;
    }

    body ul.products li.product .mnqc-desktop-injected .mnqc-add-button,
    body ul.products li.product .mnqc-desktop-injected .mnqc-stepper,
    body .products .product .mnqc-desktop-injected .mnqc-add-button,
    body .products .product .mnqc-desktop-injected .mnqc-stepper {
        width: 100% !important;
        max-width: 120px !important;
        height: 40px !important;
        margin: 0 !important;
    }

    body ul.products li.product .mnqc-desktop-injected .mnqc-add-button,
    body .products .product .mnqc-desktop-injected .mnqc-add-button {
        display: block;
    }

    body ul.products li.product .mnqc-desktop-injected .mnqc-stepper,
    body .products .product .mnqc-desktop-injected .mnqc-stepper {
        display: grid;
    }

    body ul.products li.product .mnqc-desktop-injected .mnqc-add-button.mnqc-hidden,
    body ul.products li.product .mnqc-desktop-injected .mnqc-stepper.mnqc-hidden,
    body .products .product .mnqc-desktop-injected .mnqc-add-button.mnqc-hidden,
    body .products .product .mnqc-desktop-injected .mnqc-stepper.mnqc-hidden {
        display: none !important;
    }

    body ul.products li.product .mnqc-desktop-injected .mnqc-stepper button,
    body .products .product .mnqc-desktop-injected .mnqc-stepper button {
        font-size: 22px !important;
    }

    body ul.products li.product .mnqc-desktop-injected .mnqc-quantity,
    body .products .product .mnqc-desktop-injected .mnqc-quantity {
        font-size: 17px !important;
    }
}


/* v1.9.1 desktop interaction stability. Electro applies hover animation and
   visibility rules to product actions; the quick-cart controls must remain
   stable and clickable. Mobile rules above are intentionally untouched. */
@media (min-width: 768px) {
    body .mnqc-desktop-row,
    body .mnqc-desktop-row *,
    body .mnqc-desktop-injected,
    body .mnqc-desktop-injected * {
        animation: none !important;
        transition: none !important;
        transform: none !important;
        backface-visibility: visible !important;
    }

    body ul.products li.product .mnqc-desktop-row,
    body .products .product .mnqc-desktop-row {
        position: relative !important;
        z-index: 100 !important;
        pointer-events: auto !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    body .mnqc-desktop-injected,
    body .mnqc-desktop-injected .mnqc-add-button,
    body .mnqc-desktop-injected .mnqc-stepper,
    body .mnqc-desktop-injected .mnqc-stepper button,
    body .mnqc-desktop-injected .mnqc-quantity {
        pointer-events: auto !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        z-index: 101 !important;
    }

    body .mnqc-desktop-injected .mnqc-add-button:hover,
    body .mnqc-desktop-injected .mnqc-add-button:focus,
    body .mnqc-desktop-injected .mnqc-add-button:active,
    body .mnqc-desktop-injected .mnqc-stepper button:hover,
    body .mnqc-desktop-injected .mnqc-stepper button:focus,
    body .mnqc-desktop-injected .mnqc-stepper button:active {
        animation: none !important;
        transition: none !important;
        transform: none !important;
        box-shadow: none !important;
        outline: none !important;
    }

    body .mnqc-desktop-injected .mnqc-add-button.mnqc-hidden,
    body .mnqc-desktop-injected .mnqc-stepper.mnqc-hidden {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}


/* v1.9.2: fixed product title size requested by MachNexus. */
@media (min-width: 768px) {
    body.woocommerce ul.products li.product h2,
    body.woocommerce ul.products li.product h3,
    body.woocommerce ul.products li.product .woocommerce-loop-product__title,
    body.woocommerce ul.products li.product .product-item__title,
    body.woocommerce ul.products li.product .product-title,
    body.woocommerce .products .product h2,
    body.woocommerce .products .product h3,
    body.woocommerce .products .product .woocommerce-loop-product__title,
    body.woocommerce .products .product .product-item__title,
    body.woocommerce .products .product .product-title {
        font-size: 9px !important;
        line-height: 1.3 !important;
    }
}

@media (max-width: 767px) {
    body.woocommerce ul.products li.product h2,
    body.woocommerce ul.products li.product h3,
    body.woocommerce ul.products li.product .woocommerce-loop-product__title,
    body.woocommerce ul.products li.product .product-item__title,
    body.woocommerce ul.products li.product .product-title,
    body.woocommerce .products .product h2,
    body.woocommerce .products .product h3,
    body.woocommerce .products .product .woocommerce-loop-product__title,
    body.woocommerce .products .product .product-item__title,
    body.woocommerce .products .product .product-title {
        font-size: 9px !important;
        line-height: 1.3 !important;
    }
}


/* v2.0.0: editable quantity field for large dealer orders. */
.mnqc-stepper .mnqc-quantity {
    appearance: textfield !important;
    -moz-appearance: textfield !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 2px !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: #2f8f18 !important;
    color: #fff !important;
    text-align: center !important;
    font: inherit !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}
.mnqc-stepper .mnqc-quantity:focus {
    background: #267a14 !important;
    color: #fff !important;
    outline: 2px solid rgba(255,255,255,.7) !important;
    outline-offset: -2px !important;
}
.mnqc-stepper .mnqc-quantity::-webkit-outer-spin-button,
.mnqc-stepper .mnqc-quantity::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}


body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals { display:none !important; }
body.woocommerce-cart #mnqc-sticky-cart-root { display:none !important; }
#mnqc-cart-page-root{width:100%}.mnqc-cart-shell{width:min(1120px,100%);margin:0 auto 32px;color:#27313d}.mnqc-cart-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.mnqc-cart-heading h1{margin:0;font-size:38px;line-height:1.05;color:#111827}.mnqc-cart-heading p{margin:8px 0 0;font-size:18px;color:#6b7280}.mnqc-cart-edit-button,.mnqc-cart-shop-button{border:1px solid #d8dde5!important;border-radius:9px!important;background:#fff!important;color:#27313d!important;padding:12px 18px!important;font-size:16px!important;font-weight:600!important;box-shadow:none!important;text-decoration:none!important}.mnqc-cart-table,.mnqc-cart-summary{border:1px solid #e2e6eb;border-radius:10px;overflow:hidden;background:#fff}.mnqc-cart-table-head,.mnqc-cart-row{display:grid;grid-template-columns:minmax(280px,2.2fr) minmax(92px,.65fr) minmax(105px,.8fr) minmax(105px,.8fr) minmax(120px,.9fr) 34px;align-items:center;column-gap:16px}.mnqc-cart-table-head{padding:15px 18px;background:#f7f8fa;color:#4b5563;font-size:13px;font-weight:700;text-transform:uppercase}.mnqc-cart-row{min-height:118px;padding:14px 18px;border-top:1px solid #e7eaee}.mnqc-cart-row-loading{opacity:.55;pointer-events:none}.mnqc-cart-product{display:flex;align-items:center;min-width:0;gap:16px}.mnqc-cart-thumb{flex:0 0 88px;width:88px;height:88px;padding:7px;border:1px solid #e1e5e9;border-radius:10px;background:#fff}.mnqc-cart-thumb img{width:100%;height:100%;object-fit:contain;margin:0!important}.mnqc-cart-product-copy{display:flex;flex-direction:column;min-width:0}.mnqc-cart-product-copy a,.mnqc-cart-product-copy strong{color:#1f2937;font-size:17px;font-weight:700;line-height:1.25;text-decoration:none}.mnqc-cart-product-copy small{margin-top:5px;color:#7b8491;font-size:14px}.mnqc-cart-qty{width:78px!important;height:48px!important;margin:0!important;padding:5px 8px!important;border:1px solid #d9dee5!important;border-radius:8px!important;background:#fff!important;color:#202a36!important;font-size:17px!important;font-weight:600!important;text-align:center!important;box-shadow:none!important}.mnqc-cart-money{color:#27313d;font-size:16px;white-space:nowrap}.mnqc-cart-line-total{font-weight:650}.mnqc-cart-remove{width:32px!important;height:32px!important;min-width:32px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;color:#68717d!important;font-size:25px!important;line-height:30px!important;box-shadow:none!important}.mnqc-cart-summary{margin-top:18px;padding:16px 28px}.mnqc-cart-summary>div{display:flex;justify-content:space-between;gap:20px;padding:5px 0;font-size:17px}.mnqc-cart-grand-total{margin-top:10px;padding-top:16px!important;border-top:1px dashed #d8dde3;font-size:22px!important;font-weight:800}.mnqc-cart-grand-total small{display:inline-block;margin-left:5px;padding:4px 8px;border-radius:6px;background:#f0f2f4;color:#657080;font-size:12px}.mnqc-cart-grand-total strong{color:#268812;font-size:28px}.mnqc-cart-checkout{display:grid;grid-template-columns:1fr auto 26px;align-items:center;gap:24px;margin-top:18px;padding:18px 26px;border-radius:35px;background:#238b0d;color:#fff!important;text-decoration:none!important;box-shadow:0 8px 22px rgba(35,139,13,.2)}.mnqc-cart-checkout-copy{font-size:22px;font-weight:750}.mnqc-cart-checkout strong{padding-left:24px;border-left:1px solid rgba(255,255,255,.35);color:#fff;font-size:22px}.mnqc-cart-checkout-arrow{font-size:40px;line-height:1}.mnqc-cart-secure{margin:10px 0 0;color:#55606c;font-size:14px;text-align:center}.mnqc-cart-empty{padding:40px 0;text-align:center}
@media(max-width:767px){body.woocommerce-cart{padding-bottom:0!important}.mnqc-cart-shell{padding:0 12px;box-sizing:border-box}.mnqc-cart-heading h1{font-size:32px}.mnqc-cart-edit-button{padding:11px 13px!important;font-size:14px!important}.mnqc-cart-table-head{display:none}.mnqc-cart-row{grid-template-columns:1fr auto;grid-template-areas:"product remove" "qty qty" "price tax" "total total";row-gap:11px;column-gap:12px;min-height:0;padding:14px}.mnqc-cart-product{grid-area:product}.mnqc-cart-thumb{flex-basis:70px;width:70px;height:70px}.mnqc-cart-product-copy a,.mnqc-cart-product-copy strong{font-size:14px}.mnqc-cart-product-copy small{font-size:12px}.mnqc-cart-qty-cell{grid-area:qty;display:flex;align-items:center;gap:10px}.mnqc-cart-qty-cell:before,.mnqc-cart-money:before{content:attr(data-label);color:#7b8491;font-size:12px;font-weight:600;text-transform:uppercase}.mnqc-cart-qty{width:92px!important;height:42px!important}.mnqc-cart-money{display:flex;justify-content:space-between;gap:12px;font-size:14px}.mnqc-cart-row>.mnqc-cart-money:nth-of-type(1){grid-area:price}.mnqc-cart-row>.mnqc-cart-money:nth-of-type(2){grid-area:tax}.mnqc-cart-line-total{grid-area:total;padding-top:10px;border-top:1px dashed #e0e4e8;font-size:16px}.mnqc-cart-remove{grid-area:remove;align-self:start}.mnqc-cart-summary{padding:14px 16px}.mnqc-cart-summary>div{font-size:15px}.mnqc-cart-grand-total{font-size:19px!important}.mnqc-cart-grand-total strong{font-size:23px}.mnqc-cart-checkout{position:sticky;bottom:max(10px,env(safe-area-inset-bottom));z-index:50;grid-template-columns:1fr auto 20px;gap:12px;padding:16px 18px}.mnqc-cart-checkout-copy,.mnqc-cart-checkout strong{font-size:16px}.mnqc-cart-checkout strong{padding-left:12px}.mnqc-cart-checkout-arrow{font-size:32px}}
