/* Protect the shared catalogue cards from BuddyBoss profile typography/buttons.
 * Scope every rule to the real member plugin containers; other profile tabs,
 * themes and ordinary catalogue pages keep their existing presentation. */
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace { width: 100%; min-width: 0; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace--grid .adverts-list {
    --adverts-profile-columns: var(--adverts-columns, 3);
    width: 100%; max-width: calc(var(--adverts-profile-columns) * 360px + (var(--adverts-profile-columns) - 1) * 20px);
    margin-inline: 0; padding: 0; list-style: none;
}
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card { min-width: 0; margin: 0; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card-media img { display: block; margin: 0; padding: 0; border: 0; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card-body {
    --adverts-profile-title-size: 18px;
    --adverts-profile-title-leading: 1.4;
    --adverts-profile-category-size: 12px;
    --adverts-profile-excerpt-size: 13px;
    --adverts-profile-price-size: 22px;
    --adverts-profile-meta-size: 12px;
    --adverts-profile-rating-value-size: 13px;
    font-family: inherit; font-size: 14px; line-height: 1.5;
}
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card-category { margin: 0 0 8px; padding: 0; color: var(--adverts-accent); font-size: var(--adverts-profile-category-size); font-weight: 600; line-height: 1.5; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .advert-post-title {
    --adverts-card-title-line-height: var(--adverts-profile-title-leading);
    margin: 0 0 8px; padding: 0; font-family: inherit; font-size: var(--adverts-profile-title-size); font-weight: 700; line-height: var(--adverts-profile-title-leading); color: var(--adverts-ink); letter-spacing: normal;
}
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .advert-link { font: inherit; color: var(--adverts-ink); text-decoration: none; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .advert-link-text { font: inherit; color: inherit; text-decoration: none; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .advert-link:hover { color: var(--adverts-accent); }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card-excerpt { margin: 0 0 12px; padding: 0; color: var(--adverts-muted); font-size: var(--adverts-profile-excerpt-size); font-weight: 400; line-height: 1.55; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .advert-price { margin: 0 0 16px; padding: 0; color: var(--adverts-ink); background: transparent; font-size: var(--adverts-profile-price-size); font-weight: 700; line-height: 1.3; letter-spacing: normal; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .advert-published { margin: auto 0 0; padding: 0; color: var(--adverts-muted); font-size: var(--adverts-profile-meta-size); line-height: 1.5; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card-ratings { margin-top: 16px; padding-top: 14px; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card-rating-label { margin: 0; color: var(--adverts-muted); font-size: var(--adverts-profile-meta-size); font-weight: 400; line-height: 1.5; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card-rating-value { margin: 0; color: var(--adverts-muted); font-size: var(--adverts-profile-rating-value-size); font-weight: 500; line-height: 1.5; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace--grid .adverts-card-heading:not(:has(.adverts-card-excerpt)) .advert-price { margin-top: calc(var(--adverts-card-excerpt-size) * 3.1 + 12px); }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace--list .adverts-card .advert-price { margin: 0; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace--list .adverts-card .advert-published { margin-top: 12px; }

/* BuddyBoss's generic buttons otherwise turn this into a wide violet pill. */
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .adverts-favorite-button {
    display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px;
    width: 44px; min-width: 44px; max-width: 44px; height: 44px; min-height: 44px; max-height: 44px;
    margin: 0; padding: 0; border: 1px solid #e0e6ef; border-radius: 50%;
    background: #fff; color: #62748f; box-shadow: 0 2px 8px rgba(20,38,67,.08);
    font-family: inherit; font-size: 20px; font-weight: 400; line-height: 1; text-transform: none; letter-spacing: normal;
}
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .adverts-favorite-button:hover { color: #3f66d7; background: #f5f7ff; border-color: #b9c7f5; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .adverts-favorite-button.is-favorite { color: #e15c78; background: #fff5f7; border-color: #f4c3ce; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .adverts-favorite-icon { width: auto; margin: 0; padding: 0; color: inherit; font-size: inherit; line-height: 1; }
:is(#buddypress, .buddypress-wrap) .wpadverts-marketplace .adverts-card .adverts-favorite-icon::before { margin: 0; padding: 0; color: inherit; font-size: inherit; line-height: 1; }

@container adverts-marketplace (max-width: 789px) {
    :is(#buddypress, .buddypress-wrap) .wpadverts-marketplace--grid[data-columns]:where(:not([data-columns="1"]):not([data-columns="2"])) .adverts-list { --adverts-profile-columns: 2; }
}
@container adverts-marketplace (max-width: 579px) {
    :is(#buddypress, .buddypress-wrap) .wpadverts-marketplace--grid[data-columns] .adverts-list { --adverts-profile-columns: 1; }
}
@container adverts-marketplace (max-width: 760px) {
    :is(#buddypress, .buddypress-wrap) .wpadverts-marketplace--list .adverts-card .advert-price { margin: 0 0 12px; }
}
@container adverts-card (min-width: 320px) {
    :is(#buddypress, .buddypress-wrap) .wpadverts-marketplace--grid .adverts-card-body {
        --adverts-profile-title-size: 22px;
        --adverts-profile-title-leading: 1.3;
        --adverts-profile-category-size: 14px;
        --adverts-profile-excerpt-size: 15px;
        --adverts-profile-price-size: 25px;
        --adverts-profile-meta-size: 14px;
        --adverts-profile-rating-value-size: 14px;
    }
}
