/**
 * Buyer marketplace — search, detail pages, category browse
 */
.buyer-search-page { padding-block: var(--space-5); }
.buyer-search-form { margin-bottom: var(--space-5); }
.buyer-search-form__main { display: flex; gap: var(--space-2); margin-bottom: var(--space-3); }
.buyer-search-form__main input[type="search"] { flex: 1; padding: 0.75rem 1rem; border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.buyer-search-form__filters { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.buyer-detail { padding-block: var(--space-5); }
.buyer-detail-grid { display: grid; grid-template-columns: 1fr 320px; gap: var(--space-5); }
@media (max-width: 900px) { .buyer-detail-grid { grid-template-columns: 1fr; } }
.buyer-detail-nav { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-bottom: var(--space-4); }
.buyer-detail-nav__link { padding: 0.5rem 1rem; border: 1px solid var(--color-border); border-radius: var(--radius-md); text-decoration: none; color: var(--color-text); font-size: var(--font-size-sm); }
.buyer-detail-nav__link.is-active, .buyer-detail-nav__link:hover { border-color: var(--color-primary); color: var(--color-primary); }
.buyer-price { font-size: var(--font-size-xl); font-weight: var(--font-weight-bold); color: var(--color-primary); }
.buyer-gallery-main img, .buyer-preview-image { width: 100%; border-radius: var(--radius-md); }
.buyer-detail-thumbs { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-top: var(--space-2); }
.buyer-detail-thumb { width: 64px; height: 64px; object-fit: cover; border-radius: var(--radius-sm); border: 2px solid transparent; cursor: pointer; opacity: 0.7; }
.buyer-detail-thumb:hover { opacity: 1; }
.buyer-detail-thumb.is-active { border-color: var(--color-primary); opacity: 1; }
.buyer-actions { flex-wrap: wrap; margin: var(--space-3) 0; }
/* Digital "What you'll get" download/license panel */
.buyer-download__list { margin: 0; }
.buyer-download__row { display: flex; justify-content: space-between; gap: var(--space-3); padding: 0.4rem 0; border-bottom: 1px solid var(--color-border); }
.buyer-download__row:last-child { border-bottom: 0; }
.buyer-download__row dt { color: var(--color-text-muted, #6b7280); font-size: var(--font-size-sm); margin: 0; }
.buyer-download__row dd { margin: 0; font-weight: var(--font-weight-medium, 500); text-align: right; }
.buyer-download__rights { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-top: var(--space-2); }
/* Related digital products */
.buyer-related-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-3); margin-top: var(--space-2); }
@media (max-width: 900px) { .buyer-related-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .buyer-related-grid { grid-template-columns: 1fr 1fr; } }
.buyer-related-card { display: flex; flex-direction: column; gap: 0.35rem; text-decoration: none; color: var(--color-text); border: 1px solid var(--color-border); border-radius: var(--radius-md); overflow: hidden; transition: border-color .15s ease, box-shadow .15s ease; }
.buyer-related-card:hover { border-color: var(--color-primary); box-shadow: var(--shadow-sm, 0 1px 3px rgba(0,0,0,.08)); }
.buyer-related-card img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: var(--color-surface-muted, #f3f4f6); }
.buyer-related-card__title { font-size: var(--font-size-sm); font-weight: var(--font-weight-medium, 500); padding: 0 0.5rem; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.buyer-related-card__price { font-size: var(--font-size-sm); font-weight: var(--font-weight-bold, 700); color: var(--color-primary); padding: 0 0.5rem 0.5rem; }
.tag-cloud { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.results-group { margin-bottom: var(--space-5); }
.seller-profile-card { display: flex; gap: var(--space-4); align-items: flex-start; }
.avatar-md { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; }
.avatar-lg { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; }
