/* Crazy Promotions frontend gift UI. */

.cf-promo-gift-badge,
.cf-bogo-badge,
.cf-amount-gift-badge,
.cf-category-gift-badge {
    align-items: center;
    background: #ab0e7c;
    color: #fff8e1;
    display: inline-flex;
    font-weight: 700;
    gap: 4px;
    line-height: 1;
    padding: 4px 10px;
    white-space: nowrap;
}

.cf-bogo-badge,
.cf-amount-gift-badge {
    border-radius: 12px;
    font-size: 11px;
}

.cf-category-gift-badge {
    border-radius: 999px;
    font-size: 12px;
    width: fit-content;
}

.cf-bogo-qty-badge,
.cf-amount-gift-qty-badge {
    align-items: center;
    background: rgb(171 14 124 / .1);
    border: 1px solid #ab0e7c;
    border-radius: 12px;
    color: #ab0e7c;
    display: inline-flex;
    font-size: .8em;
    font-weight: 700;
    line-height: 1.2;
    margin-top: 4px;
    padding: 4px 12px;
    white-space: nowrap;
}

.cf-category-gift-qty-badge {
    align-items: center;
    background: #2f3437;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    justify-content: center;
    min-height: 22px;
    min-width: 28px;
    padding: 2px 8px;
}

.cf-bogo-price-dash,
.cf-amount-gift-price {
    color: #27ae60;
    display: inline-block;
    font-size: 1.05em;
    font-weight: 700;
}

.cf-category-gift-price {
    color: #2f3437;
    font-weight: 700;
}

.cf-promo-gift-row .variation dt,
.cf-bogo-gift-row .variation dt,
.cf-amount-gift-row .variation dt,
.cf-category-gift-row .variation dt,
.cf-promo-gift-row del,
.cf-bogo-gift-row del,
.cf-amount-gift-row del,
.cf-category-gift-row del {
    display: none !important;
}

.cf-promo-gift-row .variation,
.cf-promo-gift-row .variation p,
.cf-promo-gift-row .variation dd,
.cf-bogo-gift-row .variation,
.cf-bogo-gift-row .variation p,
.cf-bogo-gift-row .variation dd,
.cf-amount-gift-row .variation,
.cf-amount-gift-row .variation p,
.cf-amount-gift-row .variation dd,
.cf-category-gift-row .variation,
.cf-category-gift-row .variation p,
.cf-category-gift-row .variation dd {
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-menu-cart__product.cf-bogo-gift-row,
.elementor-menu-cart__product.cf-amount-gift-row {
    background-color: transparent !important;
    border-top: 0 !important;
    margin-top: 0 !important;
    padding-top: 5px !important;
}

.elementor-menu-cart__product.cf-category-gift-row {
    background: rgb(14 171 59 / 10%);
    border-radius: 8px;
    margin: 10px 0;
    padding: 8px 0;
}

.elementor-menu-cart__product.cf-promo-gift-row .elementor-menu-cart__product-remove,
.elementor-menu-cart__product.cf-bogo-gift-row .elementor-menu-cart__product-remove,
.elementor-menu-cart__product.cf-amount-gift-row .elementor-menu-cart__product-remove,
.elementor-menu-cart__product.cf-category-gift-row .elementor-menu-cart__product-remove {
    display: none !important;
}

.elementor-menu-cart__product.cf-bogo-gift-row .elementor-menu-cart__product-image,
.elementor-menu-cart__product.cf-amount-gift-row .elementor-menu-cart__product-image {
    padding-left: 20px !important;
    position: relative;
}

.elementor-menu-cart__product.cf-category-gift-row .elementor-menu-cart__product-image {
    position: relative;
}

.elementor-menu-cart__product.cf-bogo-gift-row .elementor-menu-cart__product-image::after,
.elementor-menu-cart__product.cf-amount-gift-row .elementor-menu-cart__product-image::after {
    border-bottom: 2px solid rgb(243 181 0 / .6);
    border-bottom-left-radius: 6px;
    border-left: 2px solid rgb(243 181 0 / .6);
    content: "";
    height: 50%;
    left: 4px;
    position: absolute;
    top: -15px;
    width: 10px;
}

.elementor-menu-cart__product.cf-category-gift-row .elementor-menu-cart__product-image::after {
    align-items: center;
    background: #ab0e7c;
    border-radius: 999px;
    color: #fff8e1;
    content: "\1F381";
    display: flex;
    font-size: 12px;
    height: 24px;
    justify-content: center;
    position: absolute;
    right: -7px;
    top: -7px;
    width: 24px;
}

.elementor-menu-cart__product.cf-bogo-gift-row .elementor-menu-cart__product-image img,
.elementor-menu-cart__product.cf-amount-gift-row .elementor-menu-cart__product-image img {
    border-radius: 6px;
    transform: scale(.9);
}

.elementor-menu-cart__product.cf-category-gift-row .elementor-menu-cart__product-image img {
    opacity: .85;
}

.elementor-menu-cart__product.cf-bogo-gift-row .cf-bogo-clean-qty,
.elementor-menu-cart__product.cf-amount-gift-row .cf-amount-gift-clean-qty {
    background: rgb(243 181 0 / .15) !important;
    border-radius: 6px;
    color: #f3b500 !important;
    display: inline-block;
    font-size: 13px;
    font-weight: 700 !important;
    line-height: 1;
    padding: 4px 8px;
    white-space: nowrap;
}

.elementor-menu-cart__product.cf-category-gift-row .cf-category-gift-clean-qty {
    color: #2f3437;
}

.woocommerce-cart .cart_item.cf-bogo-gift-row td,
.woocommerce-cart .cart_item.cf-amount-gift-row td {
    background: rgb(171 14 124 / .03);
    border-top: 0 !important;
}

.woocommerce-cart .cart_item.cf-category-gift-row td {
    background: rgb(171 14 124 / .05);
}

.woocommerce-cart .cart_item.cf-bogo-gift-row .product-thumbnail img,
.woocommerce-cart .cart_item.cf-amount-gift-row .product-thumbnail img {
    opacity: .9;
    transform: scale(.8);
}

.woocommerce-cart .cart_item.cf-category-gift-row .product-thumbnail img {
    opacity: .85;
}

.woocommerce-cart .cart_item.cf-bogo-gift-row .product-name,
.woocommerce-cart .cart_item.cf-amount-gift-row .product-name,
.woocommerce-cart .cart_item.cf-category-gift-row .product-name {
    position: relative;
}

.woocommerce-cart .cart_item.cf-bogo-gift-row .product-name::before,
.woocommerce-cart .cart_item.cf-amount-gift-row .product-name::before {
    color: #ab0e7c;
    content: "\21aa";
    font-weight: 700;
    left: -10px;
    opacity: .5;
    position: absolute;
}

.woocommerce-cart .cart_item.cf-category-gift-row .product-name::before {
    color: #ab0e7c;
    content: "\1F381";
    display: inline-block;
    font-size: 16px;
    margin-right: 6px;
    vertical-align: middle;
}

/* Elementor mini-cart gift cleanup. */
.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product.cf-promo-gift-row .product-name::before,
.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product.cf-bogo-gift-row .product-name::before,
.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product.cf-amount-gift-row .product-name::before,
.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product.cf-category-gift-row .product-name::before,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-promo-gift-row .elementor-menu-cart__product-image::after,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-bogo-gift-row .elementor-menu-cart__product-image::after,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-amount-gift-row .elementor-menu-cart__product-image::after,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-category-gift-row .elementor-menu-cart__product-image::after,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-promo-gift-row .elementor-menu-cart__product-name::before,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-bogo-gift-row .elementor-menu-cart__product-name::before,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-amount-gift-row .elementor-menu-cart__product-name::before,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-category-gift-row .elementor-menu-cart__product-name::before,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-promo-gift-row .product-name::before,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-bogo-gift-row .product-name::before,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-amount-gift-row .product-name::before,
.elementor-menu-cart__container .elementor-menu-cart__product.cf-category-gift-row .product-name::before {
    content: none !important;
    display: none !important;
}

.elementor-menu-cart__container .woocommerce-mini-cart .elementor-menu-cart__product.cf-promo-gift-row .cf-promo-gift-badge {
    align-items: center;
    display: inline-flex !important;
    max-width: 100%;
    width: max-content;
}

/* WooCommerce Blocks cart gift cleanup. */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-cart-item__quantity,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-bogo-badge) .wc-block-cart-item__quantity,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-amount-gift-badge) .wc-block-cart-item__quantity,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-category-gift-badge) .wc-block-cart-item__quantity,
.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-cart-item__quantity,
.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-bogo-badge) .wc-block-cart-item__quantity,
.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-amount-gift-badge) .wc-block-cart-item__quantity,
.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-category-gift-badge) .wc-block-cart-item__quantity,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-cart-item__quantity,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-bogo-badge) .wc-block-cart-item__quantity,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-amount-gift-badge) .wc-block-cart-item__quantity,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-category-gift-badge) .wc-block-cart-item__quantity,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-cart-item__remove-link,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-bogo-badge) .wc-block-cart-item__remove-link,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-amount-gift-badge) .wc-block-cart-item__remove-link,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-category-gift-badge) .wc-block-cart-item__remove-link,
.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-cart-item__remove-link,
.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-bogo-badge) .wc-block-cart-item__remove-link,
.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-amount-gift-badge) .wc-block-cart-item__remove-link,
.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-category-gift-badge) .wc-block-cart-item__remove-link,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-cart-item__remove-link,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-bogo-badge) .wc-block-cart-item__remove-link,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-amount-gift-badge) .wc-block-cart-item__remove-link,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-category-gift-badge) .wc-block-cart-item__remove-link {
    display: none !important;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-metadata {
    display: block !important;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-metadata__description,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-metadata__description p,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-metadata > p {
    display: block !important;
    height: 1.35em;
    line-height: 1.35 !important;
    margin: 0 !important;
    max-height: 1.35em;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-details,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-details li,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-details__value,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-details__value p {
    align-items: center;
    display: flex !important;
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-details {
    margin: 6px 0 0 !important;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-details__name,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-details__separator {
    display: none !important;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .cf-promo-gift-badge {
    align-items: center;
    display: inline-flex !important;
    max-width: 100%;
    width: max-content;
}

.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-cart-item__wrap,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-cart-item__wrap {
    grid-template-areas:
        "name"
        "meta" !important;
    row-gap: 8px;
}

.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-metadata__description,
.wc-block-cart:is(.is-medium, .is-mobile, .is-small) table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-metadata > p,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-metadata__description,
:is(.is-medium, .is-mobile, .is-small) .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:has(.cf-promo-gift-badge) .wc-block-components-product-metadata > p {
    display: none !important;
}
