/* Modern product carousels — main page */

.mpc-section {
    --mpc-border: #e8ecf1;
    --mpc-text: #1f2937;
    --mpc-muted: #9ca3af;
    --mpc-red: #e53935;
    --mpc-blue: #4285F4;
    margin: 16px auto 22px;
    padding: 0;
    /* Do not set max-width here — .container.mpc-section must keep Bootstrap widths */
    overflow-x: hidden;
}

.mpc-section .mpc-panel {
    background: #fff;
    border: 1px solid var(--mpc-border);
    border-radius: 16px;
    padding: 14px 16px 18px;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.04);
    overflow: hidden;
}

/* Title on the RIGHT, "مشاهده همه" on the LEFT (RTL UI) */
.mpc-section .mpc-head {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
    padding: 2px 4px 12px;
    border-bottom: 1px solid #f1f5f9;
    direction: ltr;
}

.mpc-section .mpc-heading {
    margin: 0;
    font-family: yekan, iransans, sans-serif;
    font-size: 20px;
    font-weight: bold;
    color: #111827;
    line-height: 1.4;
    direction: rtl;
    text-align: right;
}

.mpc-section .mpc-all {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: yekan, iransans, sans-serif;
    font-size: 13px;
    color: #475569 !important;
    text-decoration: none !important;
    white-space: nowrap;
    background: #f8fafc;
    border: 1px solid var(--mpc-border);
    border-radius: 999px;
    padding: 6px 12px;
    transition: background .15s ease, color .15s ease;
    direction: rtl;
}

.mpc-section .mpc-all:hover {
    background: #eef4ff;
    color: var(--mpc-blue) !important;
}

.mpc-section .mpc-track {
    direction: ltr;
    position: relative;
    padding: 6px 8px;
    box-sizing: border-box;
    overflow: hidden;
}

.mpc-section .mpc-carousel {
    direction: ltr;
    overflow: visible;
}

.mpc-section .mpc-carousel .owl-stage-outer {
    direction: ltr;
    overflow: hidden;
    padding: 4px 3px;
    margin: 0;
    box-sizing: border-box;
}

.mpc-section .mpc-carousel .owl-stage {
    display: flex;
    align-items: stretch;
}

.mpc-section .mpc-carousel .owl-item {
    display: flex;
    height: auto;
    box-sizing: border-box;
}

.mpc-section .mpc-carousel .owl-item .item {
    width: 100%;
    display: flex;
    box-sizing: border-box;
    padding: 0 2px;
}

.mpc-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    background: #fff;
    border: 1px solid var(--mpc-border, #e8ecf1);
    border-radius: 14px;
    overflow: hidden;
    text-decoration: none !important;
    color: var(--mpc-text, #1f2937);
    transform: none !important;
    transition: border-color .15s ease;
    box-sizing: border-box;
    box-shadow: none;
}

.mpc-card:hover,
.mpc-card:focus {
    transform: none !important;
    border-color: #dbe3ee;
    box-shadow: none;
    color: var(--mpc-text, #1f2937);
    text-decoration: none !important;
}

.mpc-card .mpc-img {
    position: relative;
    aspect-ratio: 1 / 1;
    margin: 10px 10px 0;
    border: 1px solid #f1f5f9;
    border-radius: 10px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    overflow: hidden;
}

.mpc-card .mpc-img img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
}

.mpc-card .mpc-badge-off {
    position: absolute;
    top: 8px;
    left: 8px;
    min-width: 36px;
    height: 24px;
    padding: 0 7px;
    border-radius: 7px;
    background: var(--mpc-red);
    color: #fff;
    font-family: iransans, yekan, sans-serif;
    font-size: 12px;
    font-weight: bold;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    z-index: 1;
}

.mpc-card .mpc-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 10px 12px 14px;
    direction: rtl;
    text-align: right;
}

.mpc-card .mpc-title {
    margin: 0 0 12px;
    font-family: yekan, iransans2, sans-serif;
    font-size: 13px;
    font-weight: normal;
    line-height: 1.7;
    color: #374151;
    min-height: 44px;
    max-height: 44px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.mpc-card .mpc-price-row {
    margin-top: auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    direction: rtl;
    min-height: 42px;
}

.mpc-card .mpc-prices {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    flex: 1 1 auto;
}

.mpc-card .mpc-price {
    font-family: iransans, yekan, sans-serif;
    font-size: 15px;
    font-weight: bold;
    color: #111827;
    line-height: 22px;
    height: 22px;
    white-space: nowrap;
}

.mpc-card .mpc-price span {
    font-size: 11px;
    font-weight: normal;
    color: #6b7280;
    margin-right: 2px;
}

.mpc-card .mpc-old {
    font-family: iransans, yekan, sans-serif;
    font-size: 12px;
    color: var(--mpc-muted);
    text-decoration: line-through;
    margin-top: 2px;
    height: 18px;
    line-height: 18px;
}

.mpc-card .mpc-old-spacer {
    visibility: hidden;
    text-decoration: none;
}

.mpc-card .mpc-contact,
.mpc-card .mpc-unavailable {
    font-family: yekan, iransans, sans-serif;
    font-size: 13px;
    font-weight: bold;
    line-height: 22px;
    height: 22px;
}

.mpc-card .mpc-contact {
    color: var(--mpc-blue);
}

.mpc-card .mpc-unavailable {
    color: #9ca3af;
}

/* Owl nav — desktop + mobile
   RTL UI: left arrow = next (forward), right arrow = prev (back) */
.mpc-section .mpc-carousel .owl-nav {
    margin: 0;
    display: block !important;
}

.mpc-section .mpc-carousel .owl-nav.disabled {
    display: block !important;
}

.mpc-section .mpc-carousel .owl-nav button.owl-prev,
.mpc-section .mpc-carousel .owl-nav button.owl-next {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: #475569 !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.08);
    position: absolute;
    top: 38%;
    transform: translateY(-50%);
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 6;
    opacity: 1 !important;
    cursor: pointer;
}

.mpc-section .mpc-carousel .owl-nav button.owl-next {
    left: 2px !important;
    right: auto !important;
}

.mpc-section .mpc-carousel .owl-nav button.owl-prev {
    right: 2px !important;
    left: auto !important;
}

.mpc-section .mpc-carousel .owl-nav button.disabled {
    opacity: 0.35 !important;
    cursor: default;
}

.mpc-section .mpc-carousel .owl-nav button i {
    display: block !important;
    font-size: 13px !important;
    line-height: 1 !important;
    margin: 0 !important;
}

.mpc-section .mpc-carousel .owl-dots {
    margin-top: 12px;
    text-align: center;
}

.mpc-section .mpc-carousel .owl-dot span {
    background: #dbe3ee !important;
}

.mpc-section .mpc-carousel .owl-dot.active span {
    background: var(--mpc-blue) !important;
}

.mpc-sale-grid {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -6px;
}

.mpc-sale-grid .mpc-sale-item {
    width: 25%;
    padding: 6px;
    box-sizing: border-box;
}

.mpc-sale-grid .mpc-sale-item .mpc-card {
    position: relative;
}

.mpc-card .mpc-sold-tag {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 2;
    background: #4285F4;
    color: #fff;
    font-family: yekan, iransans, sans-serif;
    font-size: 11px;
    padding: 4px 8px;
    border-radius: 6px;
}

@media screen and (max-width: 991px) {
    .mpc-section {
        margin: 12px auto 16px;
    }

    .mpc-section .mpc-panel {
        border-radius: 12px;
        padding: 10px 10px 14px;
        overflow: visible;
    }

    .mpc-section .mpc-heading {
        font-size: 16px;
    }

    .mpc-section .mpc-all {
        font-size: 12px;
        padding: 5px 10px;
    }

    .mpc-card .mpc-img {
        margin: 8px 8px 0;
        padding: 8px;
    }

    .mpc-card .mpc-title {
        font-size: 12px;
        min-height: 40px;
        max-height: 40px;
    }

    .mpc-card .mpc-price {
        font-size: 13px;
    }

    .mpc-section .mpc-track {
        padding: 6px 8px;
        overflow: hidden;
    }

    .mpc-section .mpc-carousel .owl-stage-outer {
        overflow: hidden;
        padding: 4px 3px;
    }

    .mpc-section .mpc-carousel .owl-item .item {
        padding: 0 2px;
    }

    .mpc-section .mpc-carousel .owl-nav {
        display: block !important;
    }

    .mpc-section .mpc-carousel .owl-nav button.owl-prev,
    .mpc-section .mpc-carousel .owl-nav button.owl-next {
        width: 32px !important;
        height: 32px !important;
        top: 40%;
    }

    .mpc-section .mpc-carousel .owl-nav button.owl-next {
        left: 2px !important;
        right: auto !important;
    }

    .mpc-section .mpc-carousel .owl-nav button.owl-prev {
        right: 2px !important;
        left: auto !important;
    }

    .mpc-section .mpc-carousel .owl-dots {
        display: none;
    }

    .mpc-sale-grid .mpc-sale-item {
        width: 50%;
    }
}

@media screen and (min-width: 992px) {
    .mpc-section .mpc-heading {
        font-size: 22px;
    }
}
