.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}}


/* v2.2.0 ledger-style cart layout */
body.woocommerce-cart .entry-title,
body.woocommerce-cart h1.page-title,
body.woocommerce-cart .woocommerce-notices-wrapper + .page-header,
body.woocommerce-cart .cart-empty.woocommerce-info,
body.woocommerce-cart form.woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals {
    display: none !important;
}

#mnqc-cart-page-root {
    width: 100%;
}

.mnqc-cart-shell-v22 {
    width: min(1320px, 100%);
    margin: 0 auto 32px;
    color: #212a34;
}

.mnqc-cart-heading-v22 {
    margin-bottom: 18px;
}

.mnqc-cart-heading-v22 h1 {
    margin: 0;
    font-size: 34px;
    line-height: 1.05;
    color: #121826;
}

.mnqc-cart-heading-v22 p {
    margin: 8px 0 0;
    font-size: 17px;
    color: #6b7280;
}

.mnqc-cart-ledger-wrap {
    border: 1px solid #d8dde5;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
}

.mnqc-cart-ledger-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.mnqc-cart-ledger-table {
    width: 100%;
    min-width: 1180px;
    border-collapse: collapse;
    background: #fff;
}

.mnqc-cart-ledger-table th,
.mnqc-cart-ledger-table td {
    border: 1px solid #d8dde5;
    padding: 10px 12px;
    vertical-align: middle;
    background: #fff;
}

.mnqc-cart-ledger-table thead th {
    background: #f7f8fa;
    color: #111827;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

.mnqc-cart-ledger-subhead th {
    font-size: 12px !important;
    padding: 6px 8px !important;
}

.mnqc-col-sr, .mnqc-ledger-sr { width: 54px; text-align: center; }
.mnqc-col-item { width: 360px; }
.mnqc-col-category { width: 150px; }
.mnqc-col-hsn { width: 110px; }
.mnqc-col-qty { width: 92px; }
.mnqc-col-rate { width: 120px; }
.mnqc-col-taxpct { width: 70px; }
.mnqc-col-taxamt { width: 110px; }
.mnqc-col-amount { width: 120px; }
.mnqc-col-remove, .mnqc-ledger-remove { width: 46px; text-align: center; }

.mnqc-cart-product-ledger {
    align-items: center;
    gap: 16px;
}

.mnqc-cart-product-ledger .mnqc-cart-thumb {
    flex: 0 0 88px;
    width: 88px;
    height: 88px;
}

.mnqc-cart-product-ledger .mnqc-cart-product-copy a,
.mnqc-cart-product-ledger .mnqc-cart-product-copy strong {
    color: #111827;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.28;
    text-decoration: none;
}

.mnqc-ledger-category,
.mnqc-ledger-hsn,
.mnqc-ledger-rate,
.mnqc-ledger-tax-pct,
.mnqc-ledger-tax-amt,
.mnqc-ledger-amount {
    font-size: 15px;
    text-align: center;
    color: #1f2937;
}

.mnqc-ledger-qty {
    text-align: center;
}

.mnqc-ledger-qty .mnqc-cart-qty {
    width: 86px !important;
    height: 46px !important;
}

.mnqc-ledger-amount {
    font-weight: 700;
}

.mnqc-cart-summary-ledger {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) minmax(280px, 430px);
    gap: 0;
    border: 1px solid #d8dde5;
    border-top: 0;
    background: #fff;
}

.mnqc-cart-summary-left,
.mnqc-cart-summary-right {
    padding: 20px 22px;
}

.mnqc-cart-summary-left {
    border-right: 1px solid #d8dde5;
}

.mnqc-summary-total-items {
    font-size: 18px;
    color: #111827;
}

.mnqc-cart-summary-right > div {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 4px 0;
    font-size: 16px;
}

.mnqc-cart-summary-right > div span {
    color: #111827;
}

.mnqc-cart-summary-right > div strong {
    color: #111827;
    font-weight: 600;
}

.mnqc-cart-summary-ledger .mnqc-cart-grand-total {
    margin-top: 12px;
    padding-top: 14px;
    border-top: 2px solid #d8dde5;
    font-size: 18px;
}

.mnqc-cart-summary-ledger .mnqc-cart-grand-total strong {
    font-size: 28px;
    color: #111827;
    font-weight: 800;
}

@media (max-width: 767px) {
    .mnqc-cart-shell-v22 {
        padding: 0 12px;
        box-sizing: border-box;
    }

    .mnqc-cart-heading-v22 {
        align-items: center;
        gap: 12px;
    }

    .mnqc-cart-heading-v22 h1 {
        font-size: 30px;
    }

    .mnqc-cart-edit-button {
        padding: 10px 14px !important;
        font-size: 14px !important;
    }

    .mnqc-cart-ledger-table {
        min-width: 980px;
    }

    .mnqc-cart-product-ledger .mnqc-cart-thumb {
        flex-basis: 64px;
        width: 64px;
        height: 64px;
    }

    .mnqc-cart-product-ledger .mnqc-cart-product-copy a,
    .mnqc-cart-product-ledger .mnqc-cart-product-copy strong {
        font-size: 14px;
    }

    .mnqc-cart-summary-ledger {
        grid-template-columns: 1fr;
    }

    .mnqc-cart-summary-left {
        border-right: 0;
        border-bottom: 1px solid #d8dde5;
    }

    .mnqc-cart-summary-left,
    .mnqc-cart-summary-right {
        padding: 16px;
    }

    .mnqc-cart-summary-right > div {
        font-size: 15px;
    }
}


/* v2.3.0 Existing dealer checkout: hide billing details and keep shipping address visible. */
body.woocommerce-checkout.logged-in .woocommerce-billing-fields,
body.woocommerce-checkout.logged-in .woocommerce-billing-fields h3,
body.woocommerce-checkout.logged-in .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout.logged-in .mnqc-hidden-billing-field,
body.woocommerce-checkout.logged-in p.mnqc-hidden-billing-field,
body.woocommerce-checkout.logged-in .woocommerce-account-fields,
body.woocommerce-checkout.logged-in #ship-to-different-address {
    display: none !important;
}

body.woocommerce-checkout.logged-in .woocommerce-shipping-fields h3:before {
    content: "Shipping Address";
}

body.woocommerce-checkout.logged-in .woocommerce-shipping-fields h3 > label,
body.woocommerce-checkout.logged-in .woocommerce-shipping-fields h3 > span {
    display: none !important;
}

body.woocommerce-checkout.logged-in .woocommerce-shipping-fields,
body.woocommerce-checkout.logged-in .shipping_address {
    display: block !important;
}

body.woocommerce-checkout.logged-in .woocommerce-shipping-fields {
    margin-top: 0 !important;
}

body.woocommerce-checkout.logged-in .woocommerce-shipping-fields h3 {
    font-size: 32px;
    line-height: 1.2;
    margin: 0 0 24px;
    color: #27313d;
}

body.woocommerce-checkout.logged-in .woocommerce-shipping-fields__field-wrapper {
    display: block !important;
}

body.woocommerce-checkout.logged-in .woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout.logged-in .woocommerce-checkout .form-row textarea,
body.woocommerce-checkout.logged-in .woocommerce-checkout .form-row select,
body.woocommerce-checkout.logged-in .woocommerce-checkout .select2-container .select2-selection--single {
    border-radius: 28px !important;
}

body.woocommerce-checkout.logged-in .woocommerce-checkout-review-order-table .cart-subtotal,
body.woocommerce-checkout.logged-in .woocommerce-checkout-review-order-table .order-total {
    font-size: 15px;
}

@media (max-width: 767px) {
    body.woocommerce-checkout.logged-in .woocommerce-shipping-fields h3 {
        font-size: 28px;
        margin-bottom: 18px;
    }
}


/* v2.5.0 Max protection mode: deterrent + traceability for product/cart/order pages. */
body.mnqc-protected-content {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
    -webkit-touch-callout: none !important;
}

body.mnqc-protected-content input,
body.mnqc-protected-content textarea,
body.mnqc-protected-content select,
body.mnqc-protected-content .mnqc-cart-qty {
    -webkit-user-select: text !important;
    -moz-user-select: text !important;
    -ms-user-select: text !important;
    user-select: text !important;
}

body.mnqc-protected-content img,
body.mnqc-protected-content a,
body.mnqc-protected-content table,
body.mnqc-protected-content .products,
body.mnqc-protected-content .woocommerce,
body.mnqc-protected-content .mnqc-cart-shell {
    -webkit-user-drag: none !important;
}

#mnqc-security-watermark {
    position: fixed;
    inset: -20vh -20vw;
    z-index: 2147483000;
    pointer-events: none;
    display: grid;
    grid-template-columns: repeat(4, minmax(260px, 1fr));
    gap: 58px 72px;
    transform: rotate(-24deg);
    opacity: .16;
    mix-blend-mode: multiply;
    overflow: hidden;
}

#mnqc-security-watermark span {
    display: block;
    color: #111827;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: .04em;
    text-transform: uppercase;
    white-space: nowrap;
}

#mnqc-security-warning {
    position: fixed;
    left: 50%;
    bottom: max(92px, calc(env(safe-area-inset-bottom) + 24px));
    transform: translate(-50%, 18px);
    z-index: 2147483647;
    width: min(520px, calc(100% - 28px));
    padding: 13px 18px;
    border-radius: 12px;
    background: rgba(17, 24, 39, .96);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
    box-shadow: 0 10px 34px rgba(0, 0, 0, .28);
    opacity: 0;
    visibility: hidden;
    transition: .22s ease;
    pointer-events: none;
}

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

#mnqc-security-blanket {
    position: fixed;
    inset: 0;
    z-index: 2147483600;
    display: none;
    place-items: center;
    background: #071022;
    color: #fff;
    text-align: center;
    padding: 24px;
}

#mnqc-security-blanket div {
    max-width: 620px;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.35;
}

html.mnqc-security-hide-content body.mnqc-protected-content > *:not(#mnqc-security-blanket):not(#mnqc-security-warning) {
    visibility: hidden !important;
}

html.mnqc-security-hide-content #mnqc-security-blanket {
    display: grid !important;
}

@media print {
    body.mnqc-protected-content * {
        visibility: hidden !important;
    }

    body.mnqc-protected-content::before {
        content: "Printing / PDF export is blocked for protected MachNexus dealer content.";
        visibility: visible !important;
        display: block !important;
        position: fixed;
        left: 0;
        top: 0;
        right: 0;
        padding: 40px;
        color: #000;
        font-size: 22px;
        font-weight: 800;
        line-height: 1.4;
        background: #fff;
    }

    #mnqc-security-watermark,
    #mnqc-security-warning,
    #mnqc-security-blanket {
        display: none !important;
    }
}

@media (max-width: 767px) {
    #mnqc-security-watermark {
        grid-template-columns: repeat(2, minmax(230px, 1fr));
        gap: 48px 58px;
        opacity: .14;
    }

    #mnqc-security-watermark span {
        font-size: 11px;
    }
}

/* v3.0.0 Mobile cart fix: replace invoice table on phones with clean product cards. */
.mnqc-cart-ledger-table .mnqc-cart-row {
    display: table-row !important;
    min-height: 0 !important;
    padding: 0 !important;
    border-top: 0 !important;
}
.mnqc-cart-ledger-table .mnqc-cart-row > td {
    display: table-cell !important;
}
.mnqc-cart-product-ledger {
    display: flex !important;
}

@media (max-width: 767px) {
    body.woocommerce-cart #content,
    body.woocommerce-cart .site-content,
    body.woocommerce-cart .container,
    body.woocommerce-cart .content-area {
        overflow-x: hidden !important;
    }

    .mnqc-cart-shell-v22 {
        padding: 0 10px !important;
        margin-bottom: 22px !important;
    }

    .mnqc-cart-heading-v22 {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        margin-bottom: 14px !important;
    }

    .mnqc-cart-heading-v22 h1 {
        font-size: 30px !important;
    }

    .mnqc-cart-heading-v22 p {
        font-size: 15px !important;
        margin-top: 4px !important;
    }

    .mnqc-cart-ledger-wrap {
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        overflow: visible !important;
    }

    .mnqc-cart-ledger-scroll {
        overflow: visible !important;
    }

    .mnqc-cart-ledger-table,
    .mnqc-cart-ledger-table tbody {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .mnqc-cart-ledger-table thead {
        display: none !important;
    }

    .mnqc-cart-ledger-table .mnqc-cart-row {
        display: block !important;
        width: 100% !important;
        margin: 0 0 12px 0 !important;
        padding: 12px !important;
        border: 1px solid #e1e6ee !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06) !important;
        box-sizing: border-box !important;
    }

    .mnqc-cart-ledger-table .mnqc-cart-row > td {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        min-height: 0 !important;
        padding: 8px 0 !important;
        border: 0 !important;
        border-bottom: 1px dashed #e5e9ef !important;
        background: transparent !important;
        box-sizing: border-box !important;
        text-align: right !important;
        font-size: 14px !important;
    }

    .mnqc-cart-ledger-table .mnqc-cart-row > td:before {
        content: attr(data-label);
        flex: 0 0 auto;
        padding-right: 12px;
        color: #6b7280;
        font-size: 12px;
        font-weight: 700;
        text-transform: uppercase;
        text-align: left;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-sr {
        justify-content: flex-start !important;
        gap: 8px !important;
        border-bottom: 0 !important;
        padding: 0 0 4px !important;
        color: #6b7280 !important;
        font-size: 12px !important;
        font-weight: 700 !important;
        text-align: left !important;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-sr:before {
        content: "Item" !important;
        padding-right: 0 !important;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-item {
        display: block !important;
        padding: 2px 0 12px !important;
        border-bottom: 1px solid #eef1f5 !important;
        text-align: left !important;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-item:before {
        display: none !important;
    }

    .mnqc-cart-product-ledger {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
    }

    .mnqc-cart-product-ledger .mnqc-cart-thumb {
        flex: 0 0 66px !important;
        width: 66px !important;
        height: 66px !important;
        padding: 6px !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
    }

    .mnqc-cart-product-ledger .mnqc-cart-product-copy {
        min-width: 0 !important;
        flex: 1 1 auto !important;
    }

    .mnqc-cart-product-ledger .mnqc-cart-product-copy a,
    .mnqc-cart-product-ledger .mnqc-cart-product-copy strong {
        font-size: 15px !important;
        line-height: 1.25 !important;
        word-break: break-word !important;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-category,
    .mnqc-cart-ledger-table .mnqc-ledger-hsn {
        display: none !important;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-qty {
        justify-content: space-between !important;
    }

    .mnqc-ledger-qty .mnqc-cart-qty,
    .mnqc-cart-ledger-table .mnqc-cart-qty {
        width: 96px !important;
        height: 40px !important;
        border-radius: 12px !important;
        font-size: 15px !important;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-rate,
    .mnqc-cart-ledger-table .mnqc-ledger-tax-pct,
    .mnqc-cart-ledger-table .mnqc-ledger-tax-amt,
    .mnqc-cart-ledger-table .mnqc-ledger-amount {
        font-size: 14px !important;
        color: #111827 !important;
        white-space: normal !important;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-amount {
        padding-top: 10px !important;
        border-bottom: 0 !important;
        font-size: 17px !important;
        font-weight: 800 !important;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-remove {
        justify-content: flex-end !important;
        border-bottom: 0 !important;
        padding-top: 4px !important;
    }

    .mnqc-cart-ledger-table .mnqc-ledger-remove:before {
        display: none !important;
    }

    .mnqc-cart-ledger-table .mnqc-cart-remove {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        border: 1px solid #e0e5ec !important;
        border-radius: 50% !important;
        background: #fff !important;
        color: #6b7280 !important;
        font-size: 26px !important;
        line-height: 34px !important;
    }

    .mnqc-cart-summary-ledger {
        display: block !important;
        margin-top: 14px !important;
        border: 1px solid #e1e6ee !important;
        border-radius: 14px !important;
        overflow: hidden !important;
    }

    .mnqc-cart-summary-left,
    .mnqc-cart-summary-right {
        padding: 14px !important;
    }

    .mnqc-cart-summary-left {
        border-right: 0 !important;
        border-bottom: 1px solid #e1e6ee !important;
    }

    .mnqc-cart-summary-right > div {
        font-size: 14px !important;
    }

    .mnqc-cart-summary-ledger .mnqc-cart-grand-total strong {
        font-size: 22px !important;
    }
}

/* v3.1.0 Confidential watermark: single light diagonal mark instead of repeated dealer/mobile text. */
#mnqc-security-watermark {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    pointer-events: none !important;
    display: block !important;
    transform: none !important;
    opacity: 1 !important;
    mix-blend-mode: multiply !important;
    overflow: hidden !important;
}

#mnqc-security-watermark span {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 160vw !important;
    max-width: none !important;
    transform: translate(-50%, -50%) rotate(-28deg) !important;
    display: block !important;
    color: #111827 !important;
    opacity: var(--mnqc-watermark-opacity, .06) !important;
    font-size: clamp(24px, 7vw, 92px) !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    letter-spacing: .08em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    #mnqc-security-watermark {
        display: block !important;
        opacity: 1 !important;
    }

    #mnqc-security-watermark span {
        width: 190vw !important;
        font-size: clamp(22px, 9vw, 56px) !important;
        opacity: var(--mnqc-watermark-opacity, .06) !important;
    }
}

/* v3.4.0 Mobile cart compact ledger: use desktop-style table on phones instead of tall cards. */
@media (max-width: 767px) {
    body.woocommerce-cart #content,
    body.woocommerce-cart .site-content,
    body.woocommerce-cart .container,
    body.woocommerce-cart .content-area {
        overflow-x: hidden !important;
    }

    .mnqc-cart-shell-v22 {
        padding: 0 8px !important;
        margin-bottom: 20px !important;
    }

    .mnqc-cart-heading-v22 {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        margin-bottom: 10px !important;
    }

    .mnqc-cart-heading-v22 h1 {
        font-size: 28px !important;
        line-height: 1.1 !important;
    }

    .mnqc-cart-heading-v22 p {
        font-size: 14px !important;
        margin-top: 3px !important;
    }

    .mnqc-cart-edit-button {
        min-height: 40px !important;
        padding: 8px 12px !important;
        border-radius: 12px !important;
        font-size: 13px !important;
    }

    .mnqc-cart-ledger-wrap {
        border: 1px solid #d8dee8 !important;
        border-radius: 12px !important;
        background: #fff !important;
        overflow: hidden !important;
    }

    .mnqc-cart-ledger-scroll {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: thin !important;
    }

    .mnqc-cart-ledger-table {
        display: table !important;
        table-layout: fixed !important;
        width: 100% !important;
        min-width: 920px !important;
        border-collapse: collapse !important;
        background: #fff !important;
    }

    .mnqc-cart-ledger-table thead {
        display: table-header-group !important;
    }

    .mnqc-cart-ledger-table tbody {
        display: table-row-group !important;
    }

    .mnqc-cart-ledger-table tr,
    .mnqc-cart-ledger-table .mnqc-cart-row {
        display: table-row !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    .mnqc-cart-ledger-table th,
    .mnqc-cart-ledger-table td,
    .mnqc-cart-ledger-table .mnqc-cart-row > td {
        display: table-cell !important;
        width: auto !important;
        min-height: 0 !important;
        padding: 9px 7px !important;
        border: 1px solid #d8dee8 !important;
        border-left: 0 !important;
        border-top: 0 !important;
        background: #fff !important;
        vertical-align: middle !important;
        text-align: center !important;
        font-size: 12px !important;
        line-height: 1.25 !important;
        white-space: normal !important;
        box-sizing: border-box !important;
    }

    .mnqc-cart-ledger-table thead th {
        background: #f8fafc !important;
        color: #111827 !important;
        font-size: 12px !important;
        font-weight: 800 !important;
        text-transform: none !important;
    }

    .mnqc-cart-ledger-table .mnqc-cart-row > td:before,
    .mnqc-cart-ledger-table .mnqc-ledger-sr:before,
    .mnqc-cart-ledger-table .mnqc-ledger-item:before,
    .mnqc-cart-ledger-table .mnqc-ledger-remove:before {
        display: none !important;
        content: none !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-sr,
    .mnqc-cart-ledger-table .mnqc-ledger-sr {
        width: 44px !important;
        color: #374151 !important;
        font-size: 12px !important;
        font-weight: 700 !important;
        text-align: center !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-item,
    .mnqc-cart-ledger-table .mnqc-ledger-item {
        width: 260px !important;
        text-align: left !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-category,
    .mnqc-cart-ledger-table .mnqc-ledger-category {
        display: table-cell !important;
        width: 95px !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-hsn,
    .mnqc-cart-ledger-table .mnqc-ledger-hsn {
        display: table-cell !important;
        width: 82px !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-qty,
    .mnqc-cart-ledger-table .mnqc-ledger-qty {
        width: 72px !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-rate,
    .mnqc-cart-ledger-table .mnqc-ledger-rate {
        width: 82px !important;
        text-align: right !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-taxpct,
    .mnqc-cart-ledger-table .mnqc-ledger-tax-pct {
        width: 58px !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-taxamt,
    .mnqc-cart-ledger-table .mnqc-ledger-tax-amt {
        width: 82px !important;
        text-align: right !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-amount,
    .mnqc-cart-ledger-table .mnqc-ledger-amount {
        width: 94px !important;
        text-align: right !important;
        font-size: 13px !important;
        font-weight: 800 !important;
    }

    .mnqc-cart-ledger-table .mnqc-col-remove,
    .mnqc-cart-ledger-table .mnqc-ledger-remove {
        width: 42px !important;
        text-align: center !important;
    }

    .mnqc-cart-product-ledger,
    .mnqc-cart-ledger-table .mnqc-ledger-item .mnqc-cart-product-ledger {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .mnqc-cart-product-ledger .mnqc-cart-thumb {
        flex: 0 0 46px !important;
        width: 46px !important;
        height: 46px !important;
        padding: 3px !important;
        border-radius: 8px !important;
        box-sizing: border-box !important;
    }

    .mnqc-cart-product-ledger .mnqc-cart-thumb img {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
    }

    .mnqc-cart-product-ledger .mnqc-cart-product-copy {
        min-width: 0 !important;
        flex: 1 1 auto !important;
    }

    .mnqc-cart-product-ledger .mnqc-cart-product-copy a,
    .mnqc-cart-product-ledger .mnqc-cart-product-copy strong {
        display: block !important;
        font-size: 12px !important;
        line-height: 1.22 !important;
        font-weight: 800 !important;
        color: #111827 !important;
        word-break: break-word !important;
    }

    .mnqc-ledger-qty .mnqc-cart-qty,
    .mnqc-cart-ledger-table .mnqc-cart-qty {
        width: 54px !important;
        height: 34px !important;
        min-height: 34px !important;
        padding: 4px !important;
        border-radius: 9px !important;
        font-size: 13px !important;
        font-weight: 800 !important;
        text-align: center !important;
    }

    .mnqc-cart-ledger-table .mnqc-cart-remove {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        border: 0 !important;
        border-radius: 50% !important;
        background: transparent !important;
        color: #6b7280 !important;
        font-size: 24px !important;
        line-height: 26px !important;
        padding: 0 !important;
    }

    .mnqc-cart-summary-ledger {
        display: grid !important;
        grid-template-columns: 1fr !important;
        margin-top: 10px !important;
        border: 1px solid #d8dee8 !important;
        border-radius: 12px !important;
        overflow: hidden !important;
    }

    .mnqc-cart-summary-left,
    .mnqc-cart-summary-right {
        padding: 12px !important;
    }

    .mnqc-cart-summary-right .mnqc-summary-line {
        font-size: 14px !important;
        gap: 10px !important;
    }

    .mnqc-cart-summary-right .mnqc-summary-grand {
        font-size: 22px !important;
    }
}
