/* AapanSouq Marketplace module — Top Vendors / widgets / library popup */
.umv-mp-block {
    max-width: 1200px;
    margin: 32px auto;
    padding: 0 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, sans-serif;
    color: var(--umv-text, #1c1917);
}
.umv-mp-block-title {
    font-size: 22px;
    font-weight: 700;
    margin: 0 0 16px;
}
.umv-mp-track-wrap { position: relative; }
.umv-mp-track {
    display: flex;
    gap: 16px;
    overflow-x: auto;
    scroll-behavior: smooth;
    padding-bottom: 8px;
    scrollbar-width: thin;
}
.umv-mp-layout-grid .umv-mp-track {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    overflow: visible;
}
.umv-mp-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid var(--umv-border, #e7e5e4);
    background: var(--umv-surface, #fff);
    cursor: pointer;
    font-size: 18px;
    z-index: 2;
    box-shadow: var(--umv-shadow, 0 1px 2px rgba(0,0,0,.08));
}
.umv-mp-nav-prev { left: -6px; }
.umv-mp-nav-next { right: -6px; }

.umv-mp-vendor-card {
    flex: 0 0 200px;
    background: var(--umv-surface, #fff);
    border: 1px solid var(--umv-border, #e7e5e4);
    border-radius: var(--umv-radius, 10px);
    padding: 16px;
    text-align: center;
    transition: box-shadow .15s ease, transform .15s ease;
}
.umv-mp-vendor-card:hover { box-shadow: var(--umv-shadow, 0 4px 12px rgba(0,0,0,.08)); transform: translateY(-2px); }
.umv-mp-vendor-card-link { text-decoration: none; color: inherit; display: block; }
.umv-mp-vendor-logo {
    width: 64px; height: 64px; margin: 0 auto 10px;
    border-radius: 50%; overflow: hidden;
    background: var(--umv-primary, #0f766e);
    color: #fff; display: flex; align-items: center; justify-content: center;
    font-weight: 700; font-size: 22px;
}
.umv-mp-vendor-logo img { width: 100%; height: 100%; object-fit: cover; }
.umv-mp-vendor-name { font-weight: 600; margin: 4px 0; font-size: 15px; }
.umv-mp-vendor-rating { font-size: 13px; color: var(--umv-muted, #78716c); margin-bottom: 6px; }
.umv-mp-star { color: var(--umv-accent, #f59e0b); }
.umv-mp-vendor-meta { display: flex; justify-content: space-between; font-size: 12px; color: var(--umv-muted, #78716c); margin-top: 8px; }
.umv-mp-vendor-sales-badge {
    background: var(--umv-primary, #0f766e); color: #fff; border-radius: 999px; padding: 2px 8px; font-weight: 600;
}

.umv-mp-badges { display: flex; gap: 4px; justify-content: center; flex-wrap: wrap; margin-bottom: 6px; }
.umv-mp-badge { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; padding: 2px 7px; border-radius: 999px; color: #fff; }
.umv-mp-badge-top_seller { background: #0f766e; }
.umv-mp-badge-featured { background: #7f54b3; }
.umv-mp-badge-trending { background: #f59e0b; }
.umv-mp-badge-best_rated { background: #16a34a; }

/* Marketplace Library popup (vendor dashboard) */
.umv-mp-modal {
    position: fixed; inset: 0; background: rgba(0,0,0,.5);
    display: flex; align-items: center; justify-content: center; z-index: 100000;
}
.umv-mp-modal-inner {
    background: #fff; border-radius: 12px; width: 100%; max-width: 640px; max-height: 80vh;
    display: flex; flex-direction: column; padding: 20px; overflow: hidden;
}
.umv-mp-modal-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.umv-mp-modal-close { background: none; border: none; font-size: 24px; cursor: pointer; line-height: 1; }
.umv-mp-library-results { overflow-y: auto; margin-top: 12px; display: flex; flex-direction: column; gap: 8px; }
.umv-mp-library-item {
    display: flex; align-items: center; gap: 12px; padding: 8px; border: 1px solid var(--umv-border, #e7e5e4); border-radius: 8px;
}
.umv-mp-library-item img { width: 44px; height: 44px; object-fit: cover; border-radius: 6px; }
.umv-mp-library-item-info { flex: 1; }
.umv-mp-library-item-title { font-weight: 600; font-size: 14px; }
.umv-mp-library-item-price { font-size: 13px; color: var(--umv-muted, #78716c); }

@media (max-width: 640px) {
    .umv-mp-vendor-card { flex: 0 0 150px; }
}
