.bhw-wishlist-button {
    display: inline-flex;
    align-items: center;
    gap: .4em;
    margin-top: .65em;
    padding: .55em .8em;
    border: 1px solid currentColor;
    border-radius: 4px;
    background: transparent;
    color: inherit;
    line-height: 1.2;
    cursor: pointer;
}
.bhw-wishlist-button:hover,
.bhw-wishlist-button:focus { opacity: .8; }
.bhw-wishlist-button:disabled { opacity: .55; cursor: wait; }
.bhw-wishlist-button .bhw-heart { font-size: 1.2em; line-height: 1; }
.bhw-wishlist-button.is-added .bhw-heart { transform: scale(1.03); }
.bhw-wishlist-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 1.25rem;
}
.bhw-wishlist-card {
    border: 1px solid rgba(0,0,0,.12);
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
}
.bhw-wishlist-image { display: block; aspect-ratio: 1 / 1; overflow: hidden; }
.bhw-wishlist-image img { width: 100%; height: 100%; object-fit: contain; display: block; }
.bhw-wishlist-card-body { padding: 1rem; }
.bhw-wishlist-card h3 { margin: 0 0 .5rem; font-size: 1rem; }
.bhw-wishlist-price { margin-bottom: .5rem; }
.bhw-stock { margin: 0 0 .75rem; font-size: .9rem; }
.bhw-stock.out-of-stock { opacity: .7; }
.bhw-wishlist-actions { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.bhw-wishlist-actions .bhw-wishlist-button { margin-top: 0; }
.bhw-wishlist-toolbar { display: flex; flex-wrap: wrap; gap: .75rem; margin: 0 0 1.25rem; }
.bhw-wishlist-toolbar[hidden] { display: none !important; }
.bhw-wishlist-count { display: inline-block; min-width: 1.4em; text-align: center; }
