/* Hide prices for non-logged users */
body:not(.customer-logged-in) .product-price,
body:not(.customer-logged-in) .price,
body:not(.customer-logged-in) .current-price,
body:not(.customer-logged-in) .regular-price,
body:not(.customer-logged-in) div[itemprop="price"],
body:not(.customer-logged-in) .product-miniature .price,
body:not(.customer-logged-in) .product-prices,
body:not(.customer-logged-in) .product-total .value,
body:not(.customer-logged-in) .tax-shipping-delivery-label,
body:not(.customer-logged-in) .product-discounts,
body:not(.customer-logged-in) .discount {
    display: none !important;
}

/* Style for login required message */
.hide-prices-message {
    margin: 15px 0;
    padding: 15px;
    border-radius: 4px;
    display: flex !important;
    align-items: center;
    gap: 10px;
}

.hide-prices-message .material-icons {
    font-size: 24px;
}

.hide-prices-message .btn {
    margin-left: auto;
}

/* Hide Add to Cart button if enabled */
body:not(.customer-logged-in) .add-to-cart,
body:not(.customer-logged-in) .product-add-to-cart,
body:not(.customer-logged-in) form[action*="cart"] button[type="submit"],
body:not(.customer-logged-in) #add-to-cart-or-refresh button[type="submit"] {
    display: none !important;
}

/* Show message in product lists */
body:not(.customer-logged-in) .product-miniature .product-price-and-shipping {
    position: relative;
    min-height: 50px;
}

body:not(.customer-logged-in) .product-miniature .hide-prices-message {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0;
    padding: 8px;
    font-size: 12px;
}

body:not(.customer-logged-in) .product-miniature .hide-prices-message .btn {
    padding: 4px 8px;
    font-size: 11px;
}

/* Product page specific */
body:not(.customer-logged-in) #main .product-prices {
    display: none !important;
}

body:not(.customer-logged-in) #main .product-prices + .hide-prices-message {
    display: block !important;
    margin: 20px 0;
}

/* Cart page */
body:not(.customer-logged-in) .cart-summary .cart-totals .value {
    display: none !important;
}
