/* Shared product cards: homepage, shop archives and recommendation carousels. */
body.zgh-ui-v2 .wd-product.product-grid-item .product-wrapper {
    display: flex !important;
    flex-direction: column !important;
    height: 100%;
    gap: 0 !important;
    padding: 12px !important;
    border-radius: 16px !important;
}
body.zgh-ui-v2 .wd-product.product-grid-item .product-element-bottom {
    display: flex !important;
    flex-direction: column !important;
    flex: 1;
    align-items: center;
    gap: 0 !important;
    width: 100%;
    padding: 14px 4px 4px !important;
}
body.zgh-ui-v2 .wd-product.product-grid-item .product-element-bottom .wd-entities-title {
    width: 100%;
    min-height: 40px;
    margin: 0 !important;
    font: 700 14px/20px Arial, Helvetica, sans-serif !important;
    text-align: center;
}
body.zgh-ui-v2 .wd-product.product-grid-item .product-element-bottom .wd-entities-title a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    max-height: 40px;
    overflow: hidden;
    white-space: normal !important;
    line-height: 20px !important;
}
body.zgh-ui-v2 .wd-product.product-grid-item .product-element-bottom .price {
    margin: 10px 0 0 !important;
    font: 700 16px/24px Arial, Helvetica, sans-serif !important;
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn {
    position: static !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin: auto 0 0 !important;
    padding: 14px 0 0 !important;
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop {
    --zgh-btn-hover-text: #111;
    box-sizing: border-box;
    position: relative !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 176px !important;
    max-width: 100%;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 1px solid #000 !important;
    border-radius: 10px !important;
    background: #000 !important;
    color: #97ea90 !important;
    font: 700 13px/20px Arial, Helvetica, sans-serif !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    text-decoration: none !important;
    text-align: center;
    white-space: nowrap;
    box-shadow: none !important;
    transform: none !important;
    transition: background-color .18s ease, color .18s ease, border-color .18s ease !important;
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop .wd-action-text {
    display: inline !important;
    position: static !important;
    min-height: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font: inherit !important;
    line-height: inherit !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
}
/* Keep the label visible instead of sliding it out for a cart glyph. */
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop::before,
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop .wd-action-icon {
    display: none !important;
}
@media (hover: hover) {
    body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop:hover {
        background: #97ea90 !important;
        border-color: #97ea90 !important;
        color: #111 !important;
    }
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop:focus-visible {
    background: #97ea90 !important;
    border-color: #97ea90 !important;
    color: #111 !important;
    outline: 2px solid #111;
    outline-offset: 3px;
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop:active {
    background: #7fda77 !important;
    border-color: #7fda77 !important;
    color: #111 !important;
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop.added {
    background: #97ea90 !important;
    border-color: #97ea90 !important;
    color: #111 !important;
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop.added .wd-action-text::before {
    content: "✓ ";
}
/* Preserve WooCommerce's loading feedback without covering the label. */
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop.loading {
    padding-inline: 6px 24px !important;
    cursor: progress;
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop.loading::after {
    inset-inline-start: auto !important;
    inset-inline-end: 7px;
    width: 13px;
    height: 13px;
    top: calc(50% - 6.5px);
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop:is(.disabled, [aria-disabled="true"]) {
    opacity: .55;
    cursor: not-allowed;
}
body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.added_to_cart {
    margin-top: 10px;
    color: #111;
    font: 600 12px/18px Arial, Helvetica, sans-serif;
    text-transform: none;
}
@media (max-width: 600px) {
    body.zgh-ui-v2 .wd-product.product-grid-item .product-wrapper {
        padding: 8px !important;
        border-radius: 14px !important;
    }
    body.zgh-ui-v2 .wd-product.product-grid-item .product-element-bottom {
        padding: 12px 0 4px !important;
    }
    body.zgh-ui-v2 .wd-product.product-grid-item .product-element-bottom .wd-entities-title {
        min-height: 36px;
        font-size: 12px !important;
        line-height: 18px !important;
    }
    body.zgh-ui-v2 .wd-product.product-grid-item .product-element-bottom .wd-entities-title a {
        max-height: 36px;
        line-height: 18px !important;
    }
    body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop {
        padding: 11px 6px !important;
        font-size: 12px !important;
        line-height: 20px !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    body.zgh-ui-v2 .wd-product.product-grid-item .wd-add-btn > a.add-to-cart-loop {
        transition: none !important;
    }
}
