﻿* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body.product-detail-page {
    background: #fff;
    /*font-family: 'Vazirmatn', sans-serif;*/
    padding: 0 0 70px 0 !important;
    margin: 0 !important;
}

.container-custom {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

.badge-special-outer {
    background: rgba(230, 18, 61, 0.08);
    color: #e6123d;
    padding: 6px 12px;
    font-size: 0.8rem;
    margin-bottom: 8px;
    border-radius: 30px;
    display: inline-block;
}

.main-image-wrapper {
    background: #fff;
    border-radius: 20px;
    border: 1px solid #eee;
    overflow: hidden;
    cursor: pointer;
    touch-action: pan-y pinch-zoom;
}

.main-image {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    display: block;
    pointer-events: none;
}

.thumbnail-scroll {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    margin-top: 15px;
    padding-bottom: 6px;
}

.thumb-item {
    width: 70px;
    height: 70px;
    border-radius: 16px;
    border: 2px solid transparent;
    overflow: hidden;
    cursor: pointer;
    flex-shrink: 0;
    background: white;
}

    .thumb-item.active-thumb {
        border-color: #ef5046;
    }

    .thumb-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.product-title-fa {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 4px;
    color: #1e1e1e;
}

.product-title-en {
    font-size: 0.8rem;
    color: #888;
    margin-bottom: 15px;
}

.color-title {
    font-weight: 600;
    margin-bottom: 8px;
}

.color-circles {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.color-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1.5px solid #ccc;
    cursor: pointer;
}

.circle-orange {
    background: #f97316;
}

.circle-black {
    background: #2d2d2d;
}

.circle-gold {
    background: #d4af37;
}

.circle-white {
    background: #f0f0f0;
    border: 1px solid #aaa;
}

.circle-red {
    background: #dc3545;
}

.circle-green {
    background: #28a745;
}

.features-title {
    font-weight: 700;
    font-size: 1.1rem;
    margin: 20px 0 12px;
}

.features-box-group {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 20px;
}

.feature-card {
    background: #f8f9fa;
    border-radius: 20px;
    padding: 10px;
    text-align: center;
    flex: 1 0 auto;
}

.feature-label {
    font-size: 0.7rem;
    color: #777;
}

.feature-value {
    font-weight: 700;
    font-size: 0.9rem;
    white-space: nowrap;
}

.btn-outline-feature {
    background: white;
    border: 1px solid #ccc;
    border-radius: 30px;
    padding: 6px 18px;
    text-decoration: none;
    color: #333;
    font-size: 0.8rem;
    display: inline-block;
}

    .btn-outline-feature:hover {
        color: #ef5046;
        border-color: #ef5046;
    }

.text-center-wrapper {
    text-align: center;
    margin-top: 10px;
}

.sidebar-card {
    background: #f8f9fc;
    border-radius: 24px;
    padding: 16px;
    border: 1px solid #eef2f5;
}

.product-mini-row {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 15px;
    border-bottom: 1px solid #eee;
    padding-bottom: 12px;
}

.mini-thumb {
    width: 50px;
    height: 50px;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid #ddd;
    flex-shrink: 0;
}

    .mini-thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.mini-product-title {
    font-weight: 600;
    font-size: 0.85rem;
}

.price-tag {
    font-size: 1.4rem;
    font-weight: 800;
    margin: 10px 0;
    text-align: right;
    color: #1e1e1e;
}

.btn-buy {
    background: #ef5046;
    border: none;
    color: white;
    font-weight: 700;
    padding: 10px;
    width: 100%;
    border-radius: 30px;
    cursor: pointer;
    /*font-family: inherit;*/
    transition: background 0.2s;
}

    .btn-buy:hover {
        background: #d63c32;
    }

    .btn-buy:disabled {
        opacity: 0.65;
        cursor: wait;
    }

.cart-action-message {
    min-height: 22px;
    margin-top: 8px;
    font-size: 0.82rem;
    line-height: 1.8;
    text-align: center;
    direction: rtl;
}

.breadcrumb-top {
    font-size: 0.8rem;
    color: #6c757d;
    margin-bottom: 15px;
}

.breadcrumb-second {
    font-size: 0.85rem;
    color: #777;
    margin-bottom: 12px;
}

.related-tags-container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
}

.related-tag {
    background: #e9ecef;
    color: #0d6efd;
    padding: 6px 14px;
    border-radius: 30px;
    font-size: 0.8rem;
    white-space: nowrap;
}

/* دسکتاپ */
@media (min-width: 992px) {
    .product-grid {
        display: flex;
        gap: 24px;
        align-items: stretch;
    }

    .col-gallery,
    .col-details,
    .col-sidebar {
        display: flex;
        flex-direction: column;
    }

    .col-gallery {
        width: 30%;
    }

    .col-details {
        width: 50%;
    }

    .col-sidebar {
        width: 20%;
    }

        .col-sidebar .sidebar-card {
            display: none;
        }

    .desktop-sidebar {
        background: #f8f9fc;
        border-radius: 24px;
        border: 1px solid #eef2f5;
        padding: 20px 16px;
        display: flex;
        flex-direction: column;
        flex: 1;
        height: 100%;
    }

        .desktop-sidebar .sidebar-image {
            text-align: center;
            margin-bottom: 0;
        }

            .desktop-sidebar .sidebar-image img {
                width: 100px;
                height: 100px;
                object-fit: cover;
                border-radius: 20px;
                border: 1px solid #ddd;
            }

        .desktop-sidebar .divider {
            height: 1px;
            background: #e0e0e0;
            margin: 12px 0;
        }

        .desktop-sidebar .product-title-fa-small {
            font-size: 1.1rem;
            font-weight: 700;
            color: #1e1e1e;
            margin-bottom: 4px;
        }

        .desktop-sidebar .product-title-en-small {
            font-size: 0.7rem;
            color: #888;
            margin-bottom: 0;
        }

        .desktop-sidebar .selected-color-text {
            font-size: 0.9rem;
            font-weight: 500;
            color: #333;
        }

        .desktop-sidebar .price-tag {
            font-size: 1.5rem;
            font-weight: 800;
            margin: 0 0 12px 0;
            text-align: right;
        }

        .desktop-sidebar .btn-buy {
            margin-top: auto;
            border-radius: 16px;
            padding: 12px 10px;
        }

    .mobile-only {
        display: none !important;
    }

    .features-box-group {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 15px;
    }

    .feature-card {
        width: auto;
    }

    .desktop-tabs-sticky {
        position: sticky;
        top: 0;
        background: white;
        z-index: 100;
        border-bottom: 1px solid #e0e0e0;
        margin-top: 30px;
        margin-bottom: 20px;
    }

    .desktop-tabs {
        display: flex;
        gap: 32px;
        overflow-x: auto;
        padding: 12px 0;
    }

    .desktop-tab-item {
        text-decoration: none;
        cursor: pointer;
        padding: 6px 0;
        color: #6c757d;
        border-bottom: 2px solid transparent;
        font-size: inherit;
        /*font-family: inherit;*/
    }

        .desktop-tab-item.active {
            color: #1e1e1e;
            font-weight: 700;
            border-bottom-color: #1e1e1e;
        }

    .desktop-section-title {
        font-size: 1.15rem;
        font-weight: 700;
        margin: 18px 0 10px;
    }

    .desktop-content-section {
        background: #fafafa;
        border-radius: 20px;
        padding: 16px;
        margin-bottom: 24px;
        text-align: justify;
        line-height: 1.7;
    }

    .read-more-btn,
    .read-less-btn {
        background: none;
        border: none;
        color: #0d6efd;
        cursor: pointer;
        margin-top: 10px;
        font-size: 0.8rem;
        display: inline-block;
        margin-left: 10px;
        /*font-family: inherit;*/
    }

    .desktop-delivery-wrapper {
        margin-top: 30px;
        border-top: 1px solid #e0e0e0;
        padding-top: 20px;
    }

    .desktop-delivery {
        display: flex;
        justify-content: center;
        gap: 30px;
        flex-wrap: wrap;
    }

    .desktop-delivery-item {
        display: flex;
        align-items: center;
        gap: 8px;
        background: #f8f9fa;
        padding: 6px 18px;
        border-radius: 40px;
        font-size: 0.85rem;
    }

        .desktop-delivery-item i {
            color: #ef5046;
        }

    .gray-line-3px {
        height: 3px;
        background: #e0e0e0;
        margin-top: 12px;
    }

    .specs-table-desktop {
        width: 100%;
        border-collapse: collapse;
        border: none;
        background: white;
        border-radius: 12px;
        overflow: hidden;
    }

        .specs-table-desktop tr {
            border-bottom: 1px solid #ddd;
        }

            .specs-table-desktop tr:first-child {
                border-top: none;
            }

            .specs-table-desktop tr:last-child {
                border-bottom: none;
            }

        .specs-table-desktop td {
            padding: 10px 12px;
            font-size: 0.9rem;
            border: none;
        }

        .specs-table-desktop .spec-label-col-desktop {
            width: 30%;
            color: #555;
            background: #f0f0f0;
        }

        .specs-table-desktop .spec-value-col-desktop {
            width: 70%;
            background: #ffffff;
        }
}

/* موبایل */
@media (max-width: 991px) {
    body {
        padding-bottom: 85px;
    }

    .container-custom {
        padding: 0 14px;
    }

    .desktop-only {
        display: none !important;
    }

    .desktop-sidebar {
        display: none !important;
    }

    .product-grid {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .col-gallery,
    .col-details,
    .col-sidebar {
        width: 100%;
    }

    .thumbnail-scroll {
        display: none;
    }

    /*
       نوار خرید موبایل در بلوک اختصاصی صفحه جزئیات
       در ادامه فایل تعریف شده است.
    */

    .mobile-breadcrumb {
        display: block;
        font-size: 0.75rem;
        color: #777;
        margin-bottom: 5px;
    }

    .product-title-fa {
        font-size: 1.2rem;
    }

    .product-title-en {
        font-size: 0.7rem;
    }

    .mobile-tabs {
        display: flex;
        gap: 18px;
        overflow-x: auto;
        white-space: nowrap;
        padding: 10px 0;
        border-bottom: 1px solid #e0e0e0;
        margin-top: 10px;
        position: sticky;
        top: 0;
        background: white;
        z-index: 50;
    }

    .tab-item {
        font-size: 0.8rem;
        color: #6c757d;
        cursor: pointer;
        padding-bottom: 6px;
        border-bottom: 2px solid transparent;
        text-decoration: none;
    }

        .tab-item.active {
            color: #1e1e1e;
            font-weight: 700;
            border-bottom-color: #1e1e1e;
        }

    .mobile-content-section {
        margin: 15px 0;
    }

    .mobile-color-section {
        margin: 15px 0;
    }

    .color-header {
        font-weight: 600;
        margin-bottom: 8px;
    }

    .color-horizontal-scroll {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        padding: 5px 0;
    }

    .color-rectangle {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        background: white;
        border: 1px solid #ddd;
        border-radius: 30px;
        padding: 4px 12px;
        font-size: 0.75rem;
        cursor: pointer;
        white-space: nowrap;
    }

        .color-rectangle.active-color {
            border-color: #ef5046;
            color: #ef5046;
        }

        .color-rectangle .mini-circle {
            width: 18px;
            height: 18px;
            border-radius: 50%;
            display: inline-block;
        }

    .line-separator {
        height: 1px;
        background: #e0e0e0;
        margin: 15px 0;
    }

    .mobile-spec-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        margin: 10px 0;
    }

        .mobile-spec-header h3 {
            font-size: 1rem;
            font-weight: 700;
        }

        .mobile-spec-header a {
            font-size: 0.7rem;
            color: #6c757d;
            text-decoration: none;
        }

    .spec-horizontal-scroll {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        padding-bottom: 10px;
    }

    .spec-card-mobile {
        background: white;
        border: 1px solid #eef2f5;
        border-radius: 20px;
        padding: 8px 12px;
        min-width: 120px;
        text-align: center;
    }

        .spec-card-mobile .spec-label {
            font-size: 0.65rem;
            color: #777;
        }

        .spec-card-mobile .spec-value {
            font-weight: 700;
            font-size: 0.8rem;
            white-space: nowrap;
        }

    .expert-short-text {
        background: #fafafa;
        padding: 12px;
        border-radius: 16px;
        text-align: justify;
        font-size: 0.8rem;
        line-height: 1.8;
    }

    .gray-bg-btn {
        background: #e9ecef;
        border: none;
        padding: 8px 16px;
        border-radius: 30px;
        display: block;
        margin: 12px auto;
        font-size: 0.8rem;
        cursor: pointer;
        /*font-family: inherit;*/
    }

    .bottom-sheet {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        height: 100vh;
        background: white;
        z-index: 1100;
        transform: translateY(100%);
        transition: transform 0.3s;
        display: flex;
        flex-direction: column;
        border-radius: 24px 24px 0 0;
        overflow: hidden;
    }

        .bottom-sheet.open {
            transform: translateY(40%);
        }

    .sheet-handle {
        width: 40px;
        height: 5px;
        background: #ccc;
        border-radius: 3px;
        margin: 0 auto 8px;
        touch-action: none;
    }

    .sheet-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 14px;
        border-bottom: 1px solid #ddd;
    }

        .sheet-header h3 {
            font-size: 1rem;
        }

    .close-sheet {
        background: none;
        border: none;
        font-size: 1.5rem;
        cursor: pointer;
    }

    .sheet-tabs {
        display: flex;
        gap: 20px;
        padding: 10px 16px;
        border-bottom: 1px solid #ddd;
        overflow-x: auto;
    }

    .sheet-tab {
        font-size: 0.85rem;
        padding-bottom: 6px;
        color: #6c757d;
        cursor: pointer;
        border-bottom: 2px solid transparent;
        white-space: nowrap;
    }

        .sheet-tab.active {
            color: #1e1e1e;
            font-weight: 700;
            border-bottom-color: #1e1e1e;
        }

    .sheet-pane {
        flex: 1;
        overflow-y: auto;
        padding: 16px;
        text-align: justify;
        font-size: 0.85rem;
        line-height: 1.6;
        display: none;
    }

        .sheet-pane.active-pane {
            display: block;
        }

    .specs-table-mobile {
        width: 100%;
        border-collapse: collapse;
        border: none;
    }

        .specs-table-mobile tr {
            border-bottom: 1px solid #ddd;
        }

            .specs-table-mobile tr:first-child {
                border-top: none;
            }

            .specs-table-mobile tr:last-child {
                border-bottom: none;
            }

    .spec-label-col {
        background: #f0f0f0;
        color: #555;
        padding: 10px 8px;
        font-size: 0.8rem;
        width: 30%;
        border: none;
    }

    .spec-value-col {
        background: white;
        padding: 10px 8px;
        font-size: 0.8rem;
        width: 70%;
        border: none;
    }
}

/* لایت‌باکس */
.lightbox-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    z-index: 2000;
    display: none;
    justify-content: center;
    align-items: center;
}

.lightbox-container {
    width: 100%;
    height: 100%;
    background: #000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-radius: 0;
    padding: 0;
}

.lightbox-header {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 10;
}

.close-lightbox {
    background: rgba(255, 255, 255, 0.2);
    border: none;
    color: white;
    font-size: 1.8rem;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lightbox-main-area {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    touch-action: pan-y pinch-zoom;
}

.lightbox-img {
    max-width: 90%;
    max-height: 80vh;
    object-fit: contain;
}

.nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.3);
    border: none;
    color: white;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

    .nav-btn.prev {
        left: 10px;
    }

    .nav-btn.next {
        right: 10px;
    }

.lightbox-thumbnails {
    position: absolute;
    bottom: 15px;
    left: 0;
    right: 0;
    display: flex;
    gap: 10px;
    overflow-x: auto;
    justify-content: center;
    padding: 10px;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 30px;
    margin: 0 auto;
    width: fit-content;
    max-width: 90%;
}

.lb-thumb {
    width: 55px;
    height: 55px;
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid transparent;
    flex-shrink: 0;
}

    .lb-thumb.active-lb-thumb {
        border-color: #ef5046;
    }

    .lb-thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

@media (min-width: 992px) {
    .lightbox-container {
        border-radius: 28px;
        width: auto;
        height: auto;
        max-width: 85vw;
        max-height: 90vh;
        padding: 18px;
    }

    .lightbox-header {
        position: relative;
        top: auto;
        right: auto;
        margin-bottom: 10px;
    }

    .nav-btn {
        position: static;
        transform: none;
        margin: 0 10px;
    }

    .lightbox-main-area {
        flex-direction: row;
    }

    .lightbox-thumbnails {
        position: static;
        background: #2a2a2a;
        margin-top: 15px;
    }

    .close-lightbox {
        margin-right: auto;
    }
}

@media (max-width: 991px) {
    body.product-detail-page {
        padding-bottom: calc(100px + env(safe-area-inset-bottom)) !important;
    }
     
        body.product-detail-page #siteFooter,
        body.product-detail-page #darkModeToggle,
        body.product-detail-page #redFloatingCard,
        body.product-detail-page #mainMobileBottomMenu {
            display: none !important;
        }

        body.product-detail-page #floatBtn {
            width: 46px;
            height: 46px;
            min-width: 46px;
            min-height: 46px;
            font-size: 1rem;
            bottom: calc(100px + env(safe-area-inset-bottom));
            right: 14px;
            z-index: 1035;
        }

        body.product-detail-page .float-contact {
            bottom: calc(100px + env(safe-area-inset-bottom));
            right: 14px;
            z-index: 1035;
        }

        body.product-detail-page #contactMenu {
            bottom: 58px;
            right: 0;
        }

    body.detail-sheet-is-open {
        overflow: hidden;
    }

    /*
       نوار خرید ثابت موبایل:
       قیمت و دکمه خرید بالای نوار پایین صفحه قرار می‌گیرند.
    */
    body.product-detail-page .col-sidebar {
        display: block !important;
        position: fixed !important;
        right: 12px !important;
        left: 12px !important;
        bottom: calc(10px + env(safe-area-inset-bottom)) !important;
        width: auto !important;
        max-width: 680px !important;
        margin: 0 auto !important;
        padding: 8px !important;
        z-index: 1038 !important;
        background: rgba(255, 255, 255, 0.97) !important;
        border: 1px solid rgba(15, 23, 42, 0.10) !important;
        border-radius: 18px !important;
        box-shadow: 0 10px 30px rgba(15, 23, 42, 0.16) !important;
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
        box-sizing: border-box !important;
    }

        body.product-detail-page .col-sidebar .desktop-sidebar {
            display: none !important;
        }

        body.product-detail-page .col-sidebar .sidebar-card {
            display: grid !important;
            grid-template-columns: minmax(120px, 42%) minmax(0, 58%) !important;
            grid-template-areas: "button price" "message message" !important;
            align-items: center !important;
            gap: 6px 10px !important;
            width: 100% !important;
            min-height: 56px !important;
            margin: 0 !important;
            padding: 0 !important;
            direction: ltr !important;
            background: transparent !important;
            border: 0 !important;
            border-radius: 0 !important;
            box-shadow: none !important;
        }

        body.product-detail-page .col-sidebar .product-mini-row,
        body.product-detail-page .col-sidebar .product-compare-entry-mobile {
            display: none !important;
        }

        body.product-detail-page .col-sidebar .price-tag {
            grid-area: price;
            min-width: 0 !important;
            margin: 0 !important;
            padding: 0 6px !important;
            color: #172033 !important;
            font-size: 0.96rem !important;
            font-weight: 900 !important;
            line-height: 1.55 !important;
            text-align: right !important;
            direction: rtl !important;
            white-space: nowrap !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
        }

        body.product-detail-page .col-sidebar .btn-buy {
            grid-area: button;
            width: 100% !important;
            min-width: 0 !important;
            min-height: 48px !important;
            margin: 0 !important;
            padding: 10px 12px !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            gap: 7px !important;
            direction: rtl !important;
            border: 0 !important;
            border-radius: 14px !important;
            background: #ef5046 !important;
            color: #ffffff !important;
            font-size: 0.82rem !important;
            font-weight: 900 !important;
            line-height: 1 !important;
            white-space: nowrap !important;
            box-shadow: 0 6px 16px rgba(239, 80, 70, 0.24) !important;
        }

            body.product-detail-page .col-sidebar .btn-buy:hover,
            body.product-detail-page .col-sidebar .btn-buy:focus-visible {
                background: #d63c32 !important;
                color: #ffffff !important;
                outline: 0;
            }

            body.product-detail-page .col-sidebar .btn-buy:disabled {
                opacity: 0.65;
                cursor: wait;
            }

            body.product-detail-page .col-sidebar .btn-buy i {
                font-size: 0.9rem !important;
            }

        body.product-detail-page .col-sidebar .cart-action-message {
            grid-area: message;
            width: 100% !important;
            min-height: 0 !important;
            margin: 0 !important;
            padding: 0 6px !important;
            direction: rtl;
            font-size: 0.72rem !important;
            line-height: 1.65 !important;
            text-align: center !important;
        }

            body.product-detail-page .col-sidebar .cart-action-message[hidden] {
                display: none !important;
            }

    .product-detail-mobile-bottom-bar {
        position: fixed;
        right: 12px;
        left: 12px;
        bottom: 12px;
        height: 66px;
        background: rgba(255, 255, 255, 0.96);
        border: 1px solid rgba(0, 0, 0, 0.06);
        border-radius: 24px;
        box-shadow: 0 12px 35px rgba(0, 0, 0, 0.16);
        backdrop-filter: blur(12px);
        z-index: 1040;
        padding: 8px;
        display: grid;
        grid-template-columns: 1fr 1fr 1.25fr;
        gap: 8px;
        direction: rtl;
    }

    .detail-bottom-item {
        border: none;
        background: transparent;
        color: #555;
        border-radius: 18px;
        /*font-family: inherit;*/
        font-size: 0.74rem;
        font-weight: 800;
        text-decoration: none;
        cursor: pointer;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 4px;
        min-width: 0;
        transition: all 0.2s ease;
    }

        .detail-bottom-item:hover,
        .detail-bottom-item:focus {
            text-decoration: none;
            color: #ef5046;
        }

        .detail-bottom-item.active {
            background: #fff2f1;
            color: #ef5046;
        }

    .detail-bottom-icon {
        width: 28px;
        height: 28px;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.95rem;
    }

    .detail-bottom-item.active .detail-bottom-icon {
        background: #ef5046;
        color: #fff;
        box-shadow: 0 6px 16px rgba(239, 80, 70, 0.28);
    }

    .detail-buy-bottom-btn {
        background: #fff2f1;
        color: #ef5046;
    }

    .detail-call-bottom-btn {
        background: linear-gradient(135deg, #16a34a, #22c55e);
        color: #fff !important;
        box-shadow: 0 8px 20px rgba(34, 197, 94, 0.35);
        flex-direction: row;
        gap: 8px;
        font-size: 0.82rem;
    }

        .detail-call-bottom-btn:hover,
        .detail-call-bottom-btn:focus {
            color: #fff !important;
            transform: translateY(-1px);
        }

    .detail-call-icon {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.22);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.95rem;
    }

    .detail-sheet-overlay {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.62);
        backdrop-filter: blur(1px);
        z-index: 1050;
        opacity: 0;
        visibility: hidden;
        transition: all 0.25s ease;
    }

        .detail-sheet-overlay.show {
            opacity: 1;
            visibility: visible;
        }

    .bottom-sheet {
        top: 0;
        height: 100vh;
        z-index: 1100;
        transform: translateY(100%);
        transition: transform 0.28s ease;
        will-change: transform;
        border-radius: 24px 24px 0 0;
    }

        .bottom-sheet.open {
            transform: translateY(var(--sheet-translate-y, 40%));
        }

            .bottom-sheet.open.full {
                transform: translateY(0);
                border-radius: 0;
            }

        .bottom-sheet.dragging {
            transition: none;
        }

    .sheet-header {
        position: relative;
        justify-content: center;
        padding: 16px 48px 13px;
        touch-action: none;
        user-select: none;
        border-bottom: 1px solid #eee;
    }

        .sheet-header h3 {
            width: 100%;
            text-align: center;
            font-size: 1rem;
            font-weight: 800;
            margin: 0;
        }

    .sheet-handle {
        position: absolute;
        top: 7px;
        left: 50%;
        transform: translateX(-50%);
        margin: 0;
        width: 46px;
        height: 5px;
        background: #cfcfcf;
        border-radius: 999px;
    }

    .close-sheet {
        position: absolute;
        left: 14px;
        top: 50%;
        transform: translateY(-50%);
        color: #ef5046;
        background: #fff2f1;
        border: 1px solid rgba(239, 80, 70, 0.18);
        width: 34px;
        height: 34px;
        border-radius: 50%;
        font-size: 1.35rem;
        line-height: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .sheet-pane {
        -webkit-overflow-scrolling: touch;
    }
}

/* ----------------- فونت و متن مودال برای موبایل ----------------- */
@media (max-width: 768px) {
    .modal-content {
        /*font-family: 'Vazirmatn', sans-serif;*/
        font-size: 16px;
        line-height: 1.6;
        text-align: justify;
        padding: 1rem;
    }

    .modal-body p {
        margin-bottom: 1rem;
    }

    .modal-footer {
        flex-wrap: wrap;
        justify-content: center;
    }
}

/* ----------------- منوی موبایل مخفی هنگام باز بودن هر مودال ----------------- */
@media (max-width: 991px) {
    body.product-modal-is-open .mobile-bottom-bar,
    body.product-modal-is-open .product-detail-mobile-bottom-bar,
    body.detail-sheet-is-open .mobile-bottom-bar,
    body.detail-sheet-is-open .product-detail-mobile-bottom-bar,
    body.lightbox-is-open .mobile-bottom-bar,
    body.lightbox-is-open .product-detail-mobile-bottom-bar,
    body.modal-open .mobile-bottom-bar,
    body.modal-open .product-detail-mobile-bottom-bar,
    body.image-modal-is-open .mobile-bottom-bar,
    body.image-modal-is-open .product-detail-mobile-bottom-bar,
    body.product-modal-is-open .float-contact,
    body.detail-sheet-is-open .float-contact,
    body.lightbox-is-open .float-contact,
    body.image-modal-is-open .float-contact,
    body.modal-open .float-contact {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translateY(120%) !important;
        transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease !important;
    }

    /* لایه‌بندی درست مودال‌ها و بک‌دراپ‌ها */
    body.modal-open .modal {
        z-index: 4000 !important;
    }

    body.modal-open .modal-backdrop {
        z-index: 3990 !important;
    }

    body.modal-open .modal-dialog,
    body.modal-open .modal-content {
        z-index: 4010 !important;
        position: relative;
    }

    /* لایه‌بندی لایت‌باکس سفارشی */
    .lightbox-overlay {
        z-index: 3000 !important;
    }

    /* لایه‌بندی شیت جزئیات */
    .detail-sheet-overlay {
        z-index: 2500 !important;
    }

    .bottom-sheet {
        z-index: 2600 !important;
        /*font-family: 'Vazirmatn', sans-serif !important;*/
    }

    /* انیمیشن مخفی شدن و نمایش منو */
    .mobile-bottom-bar,
    .product-detail-mobile-bottom-bar,
    .bottom-mobile-menu,
    .mobile-nav {
        transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease !important;
    }
}

/* ----------------- فونت و متن شیت جزئیات در موبایل ----------------- */
@media (max-width: 991px) {
    .sheet-pane {
        font-size: 0.9rem !important;
        line-height: 1.9 !important;
        text-align: justify !important;
        text-align-last: auto;
        color: #333;
    }

        .sheet-pane p,
        .sheet-pane div {
            line-height: 1.9 !important;
        }
}

/* ----------------- اصلاح thumbnails مودال تصاویر در دسکتاپ و موبایل ----------------- */

/* ----------------- اصلاح قطعی تامنیل‌های مودال تصاویر ----------------- */

/* دسکتاپ: تامنیل‌ها بزرگ، قابل مشاهده، بدون اسکرول عمودی */
@media (min-width: 992px) {
    .lightbox-overlay {
        overflow: hidden !important;
    }

    .lightbox-content,
    .lightbox-modal-content,
    .lightbox-box {
        width: min(92vw, 1100px) !important;
        max-width: 1100px !important;
        max-height: 92vh !important;
        overflow: hidden !important;
    }

    #lightboxMainImg,
    .lightbox-main-img {
        max-width: 100% !important;
        max-height: 68vh !important;
        object-fit: contain !important;
        display: block !important;
        margin: 0 auto !important;
    }

    .lightbox-thumbnails,
    .lightbox-thumbs,
    .lb-thumbs,
    .lightbox-thumb-list {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 92px !important;
        max-height: 110px !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 12px !important;
        margin: 14px auto 0 auto !important;
        padding: 8px 12px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
    }

    .lb-thumb {
        width: 86px !important;
        height: 76px !important;
        min-width: 86px !important;
        max-width: 86px !important;
        min-height: 76px !important;
        max-height: 76px !important;
        display: block !important;
        flex: 0 0 86px !important;
        object-fit: cover !important;
        border-radius: 10px !important;
        cursor: pointer !important;
        opacity: 0.75 !important;
        border: 2px solid transparent !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
        transition: opacity 0.2s ease, transform 0.2s ease, border-color 0.2s ease !important;
    }

        .lb-thumb:hover {
            opacity: 1 !important;
            transform: translateY(-2px);
        }

        .lb-thumb.active-lb-thumb {
            opacity: 1 !important;
            border-color: #f97316 !important;
        }
}

/* موبایل: تامنیل‌ها کوچک‌تر و اسکرول فقط افقی */
@media (max-width: 991px) {
    .lightbox-thumbnails,
    .lightbox-thumbs,
    .lb-thumbs,
    .lightbox-thumb-list {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 66px !important;
        max-height: 76px !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 8px !important;
        margin: 10px auto 0 auto !important;
        padding: 6px 10px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
        -webkit-overflow-scrolling: touch;
    }

    .lb-thumb {
        width: 58px !important;
        height: 52px !important;
        min-width: 58px !important;
        max-width: 58px !important;
        min-height: 52px !important;
        max-height: 52px !important;
        display: block !important;
        flex: 0 0 58px !important;
        object-fit: cover !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        opacity: 0.75 !important;
        border: 2px solid transparent !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

        .lb-thumb.active-lb-thumb {
            opacity: 1 !important;
            border-color: #f97316 !important;
        }
}


/* موبایل */
@media (max-width: 991px) {
    .mobile-tabs.mobile-only {
        display: flex !important;
        position: sticky !important;
        top: 60px !important; /* ارتفاع منوی بالای موبایل */
        z-index: 900 !important;
        margin: 0 !important;
        padding: 8px 10px !important;
        background: #fff !important;
        border-bottom: 1px solid #eee;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
        gap: 18px;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
    }

    .desktop-tabs-sticky,
    .desktop-tabs {
        display: none !important;
    }
}

/* دسکتاپ */
@media (min-width: 992px) {
    .mobile-tabs.mobile-only {
        display: none !important;
    }

    .desktop-tabs-sticky {
        display: block !important;
        position: sticky !important;
        top: 76px !important; /* ارتفاع منوی بالای دسکتاپ */
        z-index: 900 !important;
        width: 100% !important;
        margin-top: 30px !important;
        margin-bottom: 20px !important;
        background: #fff !important;
        border-bottom: 1px solid #e0e0e0;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    }

    .desktop-tabs {
        display: flex !important;
        align-items: center !important;
        gap: 32px !important;
        width: 100% !important;
        padding: 12px 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
        background: transparent !important;
    }

    .desktop-tab-item {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
        text-decoration: none !important;
        cursor: pointer !important;
        padding: 6px 0 !important;
        color: #6c757d !important;
        border-bottom: 2px solid transparent !important;
        font-size: inherit !important;
        /*font-family: inherit !important;*/
    }

        .desktop-tab-item.active {
            color: #1e1e1e !important;
            font-weight: 700 !important;
            border-bottom-color: #1e1e1e !important;
        }
}


/* فقط صفحه جزئیات محصول: حذف فاصله بالای هدر */
body.product-detail-page #siteHeader {
    top: 0 !important;
    margin-top: 0 !important;
}

/* حذف فاصله احتمالی اولین محتوای صفحه */
body.product-detail-page main,
body.product-detail-page .main-content,
body.product-detail-page .product-detail-page-wrapper,
body.product-detail-page .product-detail-section,
body.product-detail-page .product-detail-container {
    margin-top: 0 !important;
}


/* =========================================================
   Product Detail Mobile Font Scale - V2
   هماهنگ با فونت‌های مودال محصولات
   شامل اصلاح کامل h3 ها
   فقط برای صفحه جزئیات محصول
========================================================= */

@media (max-width: 991px) {

    body.product-detail-page {
        font-size: 14px !important;
    }

        /* -----------------------------------------------------
       Global Headings Fix
       کنترل کامل تیترها مخصوصاً h3
    ----------------------------------------------------- */

        body.product-detail-page h1,
        body.product-detail-page h2,
        body.product-detail-page h3,
        body.product-detail-page h4,
        body.product-detail-page h5,
        body.product-detail-page h6 {
            line-height: 1.75 !important;
            font-weight: 900 !important;
        }

        body.product-detail-page h1 {
            font-size: 1rem !important;
        }

        body.product-detail-page h2 {
            font-size: 1rem !important;
        }

        body.product-detail-page h3 {
            font-size: 0.95rem !important;
        }

        body.product-detail-page h4 {
            font-size: 0.9rem !important;
        }

        body.product-detail-page h5,
        body.product-detail-page h6 {
            font-size: 0.86rem !important;
        }

        /* h3 های داخل بخش‌های محتوایی */
        body.product-detail-page .col-details h3,
        body.product-detail-page .mobile-content-section h3,
        body.product-detail-page .expert-short-text h3,
        body.product-detail-page .sheet-pane h3,
        body.product-detail-page .modal-body h3,
        body.product-detail-page .desktop-content-section h3,
        body.product-detail-page .product-description h3,
        body.product-detail-page .product-content h3,
        body.product-detail-page .product-detail-content h3 {
            font-size: 0.95rem !important;
            line-height: 1.8 !important;
            font-weight: 900 !important;
            margin: 12px 0 8px !important;
        }

        /* -----------------------------------------------------
       Breadcrumb
    ----------------------------------------------------- */

        body.product-detail-page .mobile-breadcrumb,
        body.product-detail-page .breadcrumb-top,
        body.product-detail-page .breadcrumb-second {
            font-size: 0.78rem !important;
            font-weight: 800 !important;
            line-height: 1.8 !important;
        }

            body.product-detail-page .mobile-breadcrumb i,
            body.product-detail-page .breadcrumb-top i,
            body.product-detail-page .breadcrumb-second i {
                font-size: 0.86rem !important;
            }

        /* -----------------------------------------------------
       Badge
    ----------------------------------------------------- */

        body.product-detail-page .badge-special-outer {
            font-size: 0.72rem !important;
            font-weight: 800 !important;
        }

        /* -----------------------------------------------------
       Product Titles
    ----------------------------------------------------- */

        body.product-detail-page .product-title-fa {
            font-size: 1rem !important;
            line-height: 1.75 !important;
            font-weight: 900 !important;
        }

        body.product-detail-page .product-title-en {
            font-size: 0.78rem !important;
            line-height: 1.8 !important;
            font-weight: 700 !important;
        }

        /* -----------------------------------------------------
       Color Section
    ----------------------------------------------------- */

        body.product-detail-page .color-title,
        body.product-detail-page .color-header {
            font-size: 0.82rem !important;
            font-weight: 900 !important;
        }

        body.product-detail-page .color-rectangle {
            font-size: 0.72rem !important;
            font-weight: 800 !important;
        }

        /* -----------------------------------------------------
       Features
    ----------------------------------------------------- */

        body.product-detail-page .features-title {
            font-size: 0.95rem !important;
            line-height: 1.75 !important;
            font-weight: 900 !important;
        }

        body.product-detail-page .feature-label {
            font-size: 0.72rem !important;
            font-weight: 800 !important;
        }

        body.product-detail-page .feature-value {
            font-size: 0.82rem !important;
            line-height: 1.7 !important;
            font-weight: 900 !important;
        }

        body.product-detail-page .btn-outline-feature {
            font-size: 0.78rem !important;
            font-weight: 900 !important;
        }

        /* -----------------------------------------------------
       Mobile Tabs
    ----------------------------------------------------- */

        body.product-detail-page .mobile-tabs .tab-item,
        body.product-detail-page .tab-item {
            font-size: 0.78rem !important;
            font-weight: 800 !important;
        }

            body.product-detail-page .tab-item.active {
                font-weight: 900 !important;
            }

        /* -----------------------------------------------------
       Mobile Specs
    ----------------------------------------------------- */

        body.product-detail-page .mobile-spec-header h3 {
            font-size: 0.95rem !important;
            line-height: 1.75 !important;
            font-weight: 900 !important;
            margin: 0 !important;
        }

        body.product-detail-page .mobile-spec-header a {
            font-size: 0.72rem !important;
            font-weight: 800 !important;
        }

        body.product-detail-page .spec-card-mobile .spec-label {
            font-size: 0.72rem !important;
            font-weight: 800 !important;
        }

        body.product-detail-page .spec-card-mobile .spec-value {
            font-size: 0.82rem !important;
            line-height: 1.7 !important;
            font-weight: 900 !important;
        }

        /* -----------------------------------------------------
       Text Content
    ----------------------------------------------------- */

        body.product-detail-page .expert-short-text,
        body.product-detail-page .expert-short-text p,
        body.product-detail-page .expert-short-text div,
        body.product-detail-page .expert-short-text li,
        body.product-detail-page .mobile-content-section,
        body.product-detail-page .mobile-content-section p,
        body.product-detail-page .mobile-content-section div,
        body.product-detail-page .mobile-content-section li {
            font-size: 0.88rem !important;
            line-height: 2.1 !important;
            font-weight: 500 !important;
        }

        body.product-detail-page .gray-bg-btn {
            font-size: 0.78rem !important;
            font-weight: 900 !important;
        }

        /* -----------------------------------------------------
       Related Tags
    ----------------------------------------------------- */

        body.product-detail-page .related-tag {
            font-size: 0.72rem !important;
            font-weight: 800 !important;
        }

        /* -----------------------------------------------------
       Price / Buy
    ----------------------------------------------------- */

        body.product-detail-page .price-tag {
            font-size: 1rem !important;
            line-height: 1.7 !important;
            font-weight: 900 !important;
        }

        body.product-detail-page .btn-buy {
            font-size: 0.82rem !important;
            font-weight: 900 !important;
        }

        /* -----------------------------------------------------
       Bottom Bar
    ----------------------------------------------------- */

        body.product-detail-page .detail-bottom-item {
            font-size: 0.74rem !important;
            font-weight: 800 !important;
        }

        body.product-detail-page .detail-buy-bottom-btn {
            font-size: 0.78rem !important;
            font-weight: 900 !important;
        }

        body.product-detail-page .detail-call-bottom-btn {
            font-size: 0.82rem !important;
            font-weight: 900 !important;
        }

        body.product-detail-page .detail-bottom-icon,
        body.product-detail-page .detail-call-icon {
            font-size: 0.88rem !important;
        }

        /* -----------------------------------------------------
       Bottom Sheet
    ----------------------------------------------------- */

        body.product-detail-page .bottom-sheet {
            font-size: 14px !important;
        }

        body.product-detail-page .sheet-header h3 {
            font-size: 0.95rem !important;
            line-height: 1.75 !important;
            font-weight: 900 !important;
            margin: 0 !important;
        }

        body.product-detail-page .close-sheet {
            font-size: 1.15rem !important;
        }

        body.product-detail-page .sheet-tab {
            font-size: 0.78rem !important;
            font-weight: 800 !important;
        }

            body.product-detail-page .sheet-tab.active {
                font-weight: 900 !important;
            }

        body.product-detail-page .sheet-pane,
        body.product-detail-page .sheet-pane p,
        body.product-detail-page .sheet-pane div,
        body.product-detail-page .sheet-pane li,
        body.product-detail-page .sheet-pane span {
            font-size: 0.88rem !important;
            line-height: 2.1 !important;
            font-weight: 500 !important;
        }

            body.product-detail-page .sheet-pane h1,
            body.product-detail-page .sheet-pane h2 {
                font-size: 1rem !important;
                line-height: 1.8 !important;
                font-weight: 900 !important;
                margin: 12px 0 8px !important;
            }

            body.product-detail-page .sheet-pane h3 {
                font-size: 0.95rem !important;
                line-height: 1.8 !important;
                font-weight: 900 !important;
                margin: 12px 0 8px !important;
            }

            body.product-detail-page .sheet-pane h4 {
                font-size: 0.9rem !important;
                line-height: 1.8 !important;
                font-weight: 900 !important;
                margin: 10px 0 7px !important;
            }

        /* -----------------------------------------------------
       Specs Table In Sheet
    ----------------------------------------------------- */

        body.product-detail-page .spec-label-col,
        body.product-detail-page .spec-value-col {
            font-size: 0.82rem !important;
            line-height: 1.9 !important;
        }

        body.product-detail-page .spec-label-col {
            font-weight: 800 !important;
        }

        body.product-detail-page .spec-value-col {
            font-weight: 900 !important;
        }

        /* -----------------------------------------------------
       Bootstrap / Product Modal
    ----------------------------------------------------- */

        body.product-detail-page .modal-content {
            font-size: 0.88rem !important;
            line-height: 2 !important;
        }

        body.product-detail-page .modal-title {
            font-size: 0.95rem !important;
            font-weight: 900 !important;
            line-height: 1.75 !important;
        }

        body.product-detail-page .modal-body,
        body.product-detail-page .modal-body p,
        body.product-detail-page .modal-body div,
        body.product-detail-page .modal-body li,
        body.product-detail-page .modal-body span {
            font-size: 0.88rem !important;
            line-height: 2 !important;
        }

            body.product-detail-page .modal-body h1,
            body.product-detail-page .modal-body h2 {
                font-size: 1rem !important;
                line-height: 1.8 !important;
                font-weight: 900 !important;
                margin: 12px 0 8px !important;
            }

            body.product-detail-page .modal-body h3 {
                font-size: 0.95rem !important;
                line-height: 1.8 !important;
                font-weight: 900 !important;
                margin: 12px 0 8px !important;
            }

            body.product-detail-page .modal-body h4 {
                font-size: 0.9rem !important;
                line-height: 1.8 !important;
                font-weight: 900 !important;
                margin: 10px 0 7px !important;
            }

        body.product-detail-page .modal-footer .btn,
        body.product-detail-page .modal-footer button {
            font-size: 0.82rem !important;
            font-weight: 900 !important;
        }

        /* -----------------------------------------------------
       Lightbox
    ----------------------------------------------------- */

        body.product-detail-page .close-lightbox {
            font-size: 1.15rem !important;
        }

        body.product-detail-page .nav-btn {
            font-size: 1rem !important;
        }
}


/* =========================================================
   Medium Mobile
========================================================= */

@media (max-width: 520px) {

    body.product-detail-page .product-title-fa {
        font-size: 0.95rem !important;
    }

    body.product-detail-page .product-title-en {
        font-size: 0.72rem !important;
    }

    body.product-detail-page h1,
    body.product-detail-page h2,
    body.product-detail-page .features-title,
    body.product-detail-page .mobile-spec-header h3,
    body.product-detail-page .sheet-header h3,
    body.product-detail-page .modal-title {
        font-size: 0.95rem !important;
    }

    body.product-detail-page h3,
    body.product-detail-page .col-details h3,
    body.product-detail-page .mobile-content-section h3,
    body.product-detail-page .expert-short-text h3,
    body.product-detail-page .sheet-pane h3,
    body.product-detail-page .modal-body h3 {
        font-size: 0.9rem !important;
        line-height: 1.75 !important;
    }

    body.product-detail-page h4,
    body.product-detail-page .sheet-pane h4,
    body.product-detail-page .modal-body h4 {
        font-size: 0.86rem !important;
    }

    body.product-detail-page .expert-short-text,
    body.product-detail-page .expert-short-text p,
    body.product-detail-page .expert-short-text div,
    body.product-detail-page .expert-short-text li,
    body.product-detail-page .mobile-content-section,
    body.product-detail-page .mobile-content-section p,
    body.product-detail-page .mobile-content-section div,
    body.product-detail-page .mobile-content-section li,
    body.product-detail-page .sheet-pane,
    body.product-detail-page .sheet-pane p,
    body.product-detail-page .sheet-pane div,
    body.product-detail-page .sheet-pane li,
    body.product-detail-page .modal-content,
    body.product-detail-page .modal-body,
    body.product-detail-page .modal-body p,
    body.product-detail-page .modal-body div,
    body.product-detail-page .modal-body li {
        font-size: 0.86rem !important;
        line-height: 2 !important;
    }

    body.product-detail-page .btn-buy,
    body.product-detail-page .detail-call-bottom-btn,
    body.product-detail-page .modal-footer .btn,
    body.product-detail-page .modal-footer button {
        font-size: 0.8rem !important;
    }

    body.product-detail-page .feature-value,
    body.product-detail-page .spec-card-mobile .spec-value,
    body.product-detail-page .spec-label-col,
    body.product-detail-page .spec-value-col {
        font-size: 0.8rem !important;
    }

    body.product-detail-page .price-tag {
        font-size: 0.95rem !important;
    }
}


/* =========================================================
   Small Mobile
========================================================= */

@media (max-width: 390px) {

    body.product-detail-page .mobile-breadcrumb,
    body.product-detail-page .breadcrumb-top,
    body.product-detail-page .breadcrumb-second {
        font-size: 0.72rem !important;
    }

    body.product-detail-page .product-title-fa {
        font-size: 0.9rem !important;
        line-height: 1.7 !important;
    }

    body.product-detail-page .product-title-en {
        font-size: 0.68rem !important;
    }

    body.product-detail-page h1,
    body.product-detail-page h2,
    body.product-detail-page .features-title,
    body.product-detail-page .mobile-spec-header h3,
    body.product-detail-page .sheet-header h3,
    body.product-detail-page .modal-title {
        font-size: 0.9rem !important;
    }

    body.product-detail-page h3,
    body.product-detail-page .col-details h3,
    body.product-detail-page .mobile-content-section h3,
    body.product-detail-page .expert-short-text h3,
    body.product-detail-page .sheet-pane h3,
    body.product-detail-page .modal-body h3 {
        font-size: 0.86rem !important;
        line-height: 1.7 !important;
    }

    body.product-detail-page h4,
    body.product-detail-page .sheet-pane h4,
    body.product-detail-page .modal-body h4 {
        font-size: 0.82rem !important;
    }

    body.product-detail-page .badge-special-outer,
    body.product-detail-page .color-rectangle,
    body.product-detail-page .feature-label,
    body.product-detail-page .mobile-spec-header a,
    body.product-detail-page .spec-card-mobile .spec-label,
    body.product-detail-page .related-tag {
        font-size: 0.68rem !important;
    }

    body.product-detail-page .color-title,
    body.product-detail-page .color-header,
    body.product-detail-page .feature-value,
    body.product-detail-page .spec-card-mobile .spec-value,
    body.product-detail-page .spec-label-col,
    body.product-detail-page .spec-value-col {
        font-size: 0.76rem !important;
    }

    body.product-detail-page .mobile-tabs .tab-item,
    body.product-detail-page .tab-item,
    body.product-detail-page .sheet-tab,
    body.product-detail-page .gray-bg-btn,
    body.product-detail-page .btn-outline-feature,
    body.product-detail-page .btn-buy,
    body.product-detail-page .detail-buy-bottom-btn {
        font-size: 0.72rem !important;
    }

    body.product-detail-page .expert-short-text,
    body.product-detail-page .expert-short-text p,
    body.product-detail-page .expert-short-text div,
    body.product-detail-page .expert-short-text li,
    body.product-detail-page .mobile-content-section,
    body.product-detail-page .mobile-content-section p,
    body.product-detail-page .mobile-content-section div,
    body.product-detail-page .mobile-content-section li,
    body.product-detail-page .sheet-pane,
    body.product-detail-page .sheet-pane p,
    body.product-detail-page .sheet-pane div,
    body.product-detail-page .sheet-pane li,
    body.product-detail-page .modal-content,
    body.product-detail-page .modal-body,
    body.product-detail-page .modal-body p,
    body.product-detail-page .modal-body div,
    body.product-detail-page .modal-body li {
        font-size: 0.82rem !important;
        line-height: 1.9 !important;
    }

    body.product-detail-page .price-tag {
        font-size: 0.9rem !important;
    }

    body.product-detail-page .detail-bottom-item {
        font-size: 0.72rem !important;
    }

    body.product-detail-page .detail-call-bottom-btn {
        font-size: 0.78rem !important;
    }

    body.product-detail-page .detail-bottom-icon,
    body.product-detail-page .detail-call-icon {
        font-size: 0.78rem !important;
    }
}


/* =========================================================
   Product Detail - Mobile Spec Card Auto Width
   اندازه کارت مشخصات بر اساس محتوای spec-value
========================================================= */

@media (max-width: 991px) {

    body.product-detail-page .spec-horizontal-scroll {
        display: flex !important;
        align-items: stretch !important;
        gap: 10px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding-bottom: 10px !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch !important;
    }

        body.product-detail-page .spec-horizontal-scroll::-webkit-scrollbar {
            display: none !important;
        }

    body.product-detail-page .spec-card-mobile {
        flex: 0 0 auto !important;
        width: max-content !important;
        min-width: unset !important;
        max-width: none !important;
        padding: 8px 14px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        white-space: nowrap !important;
    }

        body.product-detail-page .spec-card-mobile .spec-label {
            width: 100% !important;
            max-width: 100% !important;
            font-size: 0.72rem !important;
            font-weight: 800 !important;
            color: #777 !important;
            line-height: 1.6 !important;
            white-space: nowrap !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
        }

        body.product-detail-page .spec-card-mobile .spec-value {
            width: max-content !important;
            max-width: none !important;
            font-size: 0.82rem !important;
            font-weight: 900 !important;
            line-height: 1.7 !important;
            white-space: nowrap !important;
            overflow: visible !important;
            text-overflow: unset !important;
        }
}

@media (max-width: 390px) {

    body.product-detail-page .spec-card-mobile {
        padding: 7px 12px !important;
    }

        body.product-detail-page .spec-card-mobile .spec-label {
            font-size: 0.68rem !important;
        }

        body.product-detail-page .spec-card-mobile .spec-value {
            font-size: 0.76rem !important;
        }
}


/* =========================================================
   Product Detail - Close Sheet Button Blue Theme
   هماهنگ با رنگ آبی اصلی سایت
========================================================= */

@media (max-width: 991px) {

    body.product-detail-page #closeSheetBtn,
    body.product-detail-page .closeSheetBtn,
    body.product-detail-page .close-sheet {
        color: #224173 !important;
        background: rgba(34, 65, 115, 0.08) !important;
        border: 1px solid rgba(34, 65, 115, 0.16) !important;
        box-shadow: 0 6px 16px rgba(34, 65, 115, 0.12) !important;
    }

        body.product-detail-page #closeSheetBtn:hover,
        body.product-detail-page #closeSheetBtn:focus,
        body.product-detail-page .closeSheetBtn:hover,
        body.product-detail-page .closeSheetBtn:focus,
        body.product-detail-page .close-sheet:hover,
        body.product-detail-page .close-sheet:focus {
            color: #fff !important;
            background: linear-gradient(135deg, #224173, #1b3560) !important;
            border-color: #224173 !important;
            box-shadow: 0 8px 20px rgba(34, 65, 115, 0.24) !important;
        }
}

@media (max-width: 991px) {

    body.product-detail-page #mobile-section-specs {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 10px !important;
    }

        body.product-detail-page #mobile-section-specs .mobile-spec-header {
            width: 100% !important;
            display: flex !important;
            flex-direction: row !important;
            align-items: center !important;
            justify-content: space-between !important;
            gap: 12px !important;
            flex-wrap: nowrap !important;
            margin: 0 !important;
        }

            body.product-detail-page #mobile-section-specs .mobile-spec-header h3,
            body.product-detail-page #mobile-section-specs .mobile-spec-header a {
                margin: 0 !important;
                white-space: nowrap !important;
                flex: 0 0 auto !important;
            }

        body.product-detail-page #mobile-section-specs .spec-horizontal-scroll {
            width: 100% !important;
            display: flex !important;
            flex-direction: row !important;
            flex-wrap: nowrap !important;
            overflow-x: auto !important;
            overflow-y: hidden !important;
            margin: 0 !important;
            padding: 0 0 8px 0 !important;
            -webkit-overflow-scrolling: touch !important;
        }

    body.product-detail-page #mobile-section-expert {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 10px !important;
    }

        body.product-detail-page #mobile-section-expert .expert-short-text {
            display: block !important;
            width: 100% !important;
            margin: 0 !important;
            white-space: normal !important;
            overflow: visible !important;
            text-overflow: unset !important;
            text-align: justify !important;
            line-height: 2 !important;
        }

        body.product-detail-page #mobile-section-expert .gray-bg-btn {
            width: 100% !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            margin: 0 !important;
            white-space: nowrap !important;
            text-align: center !important;
        }
}

@media (max-width: 991px) {
    body.product-detail-page #mobile-section-expert {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 10px !important;
    }

        body.product-detail-page #mobile-section-expert .expert-short-text {
            display: block !important;
            width: 100% !important;
            margin: 0 !important;
            white-space: normal !important;
            overflow: visible !important;
            text-overflow: unset !important;
            text-align: justify !important;
            line-height: 2 !important;
        }

        body.product-detail-page #mobile-section-expert .gray-bg-btn {
            width: 100% !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            margin: 0 !important;
            white-space: nowrap !important;
            text-align: center !important;
        }
}

@media (min-width: 992px) {
    .product-comments-box {
        width: calc(100% - 40px);
        max-width: 1360px !important;
    }

    .product-comments-mobile {
        display: none !important;
    }

    .product-comments-desktop {
        display: block !important;
    }
}

/* =========================================================
   Product Comments - Mobile Digikala Style
========================================================= */

@media (max-width: 991px) {
    .product-comments-desktop {
        display: none !important;
    }

    .product-comments-mobile {
        display: block !important;
        padding-bottom: calc(125px + env(safe-area-inset-bottom)) !important;
    }

    body.product-detail-page .product-comments-box {
        margin: 18px 0 calc(145px + env(safe-area-inset-bottom)) !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: #f7f7f8 !important;
        overflow: visible !important;
    }

    .mobile-comments-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 16px 14px 10px;
        background: #fff;
        border-top: 1px solid #f0f0f0;
    }

        .mobile-comments-head h3 {
            margin: 0 0 6px;
            font-size: 1rem;
            font-weight: 800;
            color: #1f2937;
        }

    .mobile-comments-rate-row {
        display: flex;
        align-items: center;
        gap: 6px;
        color: #6b7280;
        font-size: 0.82rem;
    }

        .mobile-comments-rate-row strong {
            color: #111827;
            font-size: 1.05rem;
        }

    .mobile-comments-see-all {
        border: none;
        background: transparent;
        color: #224173;
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 0.82rem;
        font-weight: 700;
        white-space: nowrap;
        padding: 8px 0;
    }

        .mobile-comments-see-all i {
            font-size: 0.75rem;
        }

    .mobile-comments-carousel {
        display: flex;
        flex-direction: row;
        gap: 10px;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        padding: 8px 14px 22px;
        background: #fff;
    }

        .mobile-comments-carousel::-webkit-scrollbar {
            display: none;
        }

    .mobile-comment-card {
        flex: 0 0 82%;
        min-height: 230px;
        scroll-snap-align: start;
        border: 1px solid #e5e7eb;
        background: #fff;
        border-radius: 12px;
        padding: 14px 12px;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        text-align: right;
        color: #1f2937;
        position: relative;
        box-shadow: 0 6px 18px rgba(15, 23, 42, 0.05);
    }

        .mobile-comment-card:active {
            transform: scale(0.99);
        }

    .mobile-comment-avatar {
        width: 38px;
        height: 38px;
        border-radius: 50%;
        background: linear-gradient(180deg, #fff1c2, #f5b42a);
        color: #fff;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 12px;
        left: 12px;
        box-shadow: 0 4px 12px rgba(245, 180, 42, 0.28);
    }

    .mobile-comment-card-top {
        display: flex;
        align-items: center;
        gap: 8px;
        padding-left: 46px;
        min-height: 38px;
    }

    .mobile-comment-name {
        font-size: 0.86rem;
        font-weight: 800;
        color: #374151;
        max-width: 140px;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .mobile-comment-buyer {
        background: #e8f8ec;
        color: #2e9b4f;
        border-radius: 999px;
        padding: 3px 8px;
        font-size: 0.7rem;
        font-weight: 700;
        white-space: nowrap;
    }

    .mobile-comment-stars {
        color: #f59e0b;
        letter-spacing: 1px;
        font-size: 1.1rem;
        line-height: 1;
        margin: 10px 0 12px;
        direction: ltr;
        text-align: right;
    }

    .mobile-comment-preview {
        display: block;
        color: #334155;
        font-size: 0.84rem;
        line-height: 2;
        min-height: 78px;
        text-align: right;
    }

    .mobile-comment-reply-badge {
        display: inline-flex;
        align-items: center;
        width: fit-content;
        margin-top: 10px;
        padding: 4px 9px;
        border-radius: 999px;
        background: rgba(34, 65, 115, 0.08);
        color: #224173;
        font-size: 0.72rem;
        font-weight: 700;
    }

    .mobile-comment-card-footer {
        margin-top: auto;
        padding-top: 12px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
        color: #9ca3af;
        font-size: 0.75rem;
    }

    .mobile-comment-more-text {
        color: #224173;
        font-weight: 800;
    }

    .mobile-no-comments {
        background: #fff;
        padding: 18px 14px;
        color: #6b7280;
        font-size: 0.9rem;
    }

    .mobile-comment-accordion {
        margin-top: 8px;
        margin-bottom: calc(28px + env(safe-area-inset-bottom)) !important;
        background: #fff;
        border-top: 1px solid #eee;
        border-bottom: 1px solid #eee;
    }

    .mobile-comment-accordion-btn {
        width: 100%;
        border: none;
        background: #fff;
        padding: 14px;
        display: flex;
        align-items: center;
        gap: 10px;
        text-align: right;
        color: #374151;
        font-size: 0.9rem;
        font-weight: 700;
    }

    .mobile-comment-accordion-icon {
        width: 38px;
        height: 38px;
        border-radius: 50%;
        background: #f3f4f6;
        color: #4b5563;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }

    .mobile-comment-accordion-chevron {
        margin-right: auto;
        transition: transform 0.2s ease;
        color: #6b7280;
        font-size: 0.8rem;
    }

    .mobile-comment-accordion.is-open .mobile-comment-accordion-chevron {
        transform: rotate(-90deg);
    }

    .mobile-comment-accordion-body {
        padding: 0 14px 16px;
        background: #fff;
    }

        .mobile-comment-accordion-body[hidden] {
            display: none !important;
        }

        .mobile-comment-accordion-body .blog-form-group {
            margin-bottom: 12px;
        }

        .mobile-comment-accordion-body input,
        .mobile-comment-accordion-body textarea {
            width: 100%;
            border: 1px solid #e5e7eb;
            border-radius: 14px;
            padding: 10px 12px;
            background: #f9fafb;
            outline: none;
            font-size: 0.9rem;
        }

        .mobile-comment-accordion-body textarea {
            resize: vertical;
            min-height: 104px;
        }
}

/* =========================================================
   Product Comments Mobile Modal
========================================================= */

@media (max-width: 991px) {
    .product-mobile-comment-overlay {
        position: fixed;
        inset: 0;
        background: rgba(15, 23, 42, 0.42);
        z-index: 2147483000 !important;
        opacity: 0;
        visibility: hidden;
        transition: 0.2s ease;
    }

        .product-mobile-comment-overlay.active {
            opacity: 1;
            visibility: visible;
        }

    .product-mobile-comment-modal,
    .product-mobile-all-comments-modal {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        background: #fff;
        z-index: 2147483001 !important;
        border-radius: 22px 22px 0 0;
        box-shadow: 0 -18px 44px rgba(15, 23, 42, 0.22);
        transform: translateY(105%);
        transition: transform 0.25s ease;
        height: var(--comment-modal-height, 82dvh) !important;
        max-height: none !important;
        min-height: 48dvh !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        padding: 10px 16px calc(42px + env(safe-area-inset-bottom)) !important;
        will-change: transform, height;
    }

        .product-mobile-comment-modal.active,
        .product-mobile-all-comments-modal.active {
            transform: translateY(0);
        }

        .product-mobile-comment-modal.is-compact,
        .product-mobile-all-comments-modal.is-compact {
            --comment-modal-height: 58dvh;
        }

        .product-mobile-comment-modal.is-expanded,
        .product-mobile-all-comments-modal.is-expanded {
            --comment-modal-height: 82dvh;
        }

        .product-mobile-comment-modal.is-fullscreen,
        .product-mobile-all-comments-modal.is-fullscreen {
            --comment-modal-height: 100dvh;
            height: 100dvh !important;
            max-height: 100dvh !important;
            border-radius: 0 !important;
            padding-top: calc(8px + env(safe-area-inset-top)) !important;
        }

    .product-mobile-modal-handle {
        width: 52px !important;
        height: 5px !important;
        border-radius: 999px;
        background: #cbd5e1 !important;
        margin: 2px auto 12px;
        cursor: ns-resize;
        touch-action: none;
        position: sticky;
        top: 0;
        z-index: 5;
    }

        .product-mobile-modal-handle::after {
            content: "";
            position: absolute;
            inset: -16px -110px;
        }

    .product-mobile-modal-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
        padding-bottom: 12px;
        border-bottom: 1px solid #f1f5f9;
    }

        .product-mobile-modal-head strong {
            display: block;
            font-size: 0.98rem;
            color: #111827;
            margin-bottom: 4px;
        }

        .product-mobile-modal-head span {
            display: block;
            font-size: 0.76rem;
            color: #9ca3af;
        }

    .product-mobile-modal-close {
        width: 36px;
        height: 36px;
        border-radius: 50%;
        border: none;
        background: #f3f4f6;
        color: #374151;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .product-mobile-modal-stars {
        color: #f59e0b;
        direction: ltr;
        text-align: right;
        font-size: 1.15rem;
        letter-spacing: 1px;
        margin: 14px 0 8px;
    }

    .product-mobile-modal-text {
        white-space: pre-line;
        color: #334155;
        font-size: 0.9rem;
        line-height: 2;
        margin: 0;
        text-align: justify;
        padding-bottom: 18px !important;
    }

    .product-mobile-read-more {
        border: none;
        background: transparent;
        color: #224173;
        font-size: 0.84rem;
        font-weight: 800;
        padding: 10px 0 0;
    }

    .product-mobile-admin-reply {
        margin-top: 16px;
        margin-bottom: calc(34px + env(safe-area-inset-bottom)) !important;
        border-radius: 16px;
        background: #f8fafc;
        border: 1px solid #e5e7eb;
        padding: 12px;
    }

    .product-mobile-admin-reply-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        margin-bottom: 8px;
    }

        .product-mobile-admin-reply-head strong {
            color: #224173;
            font-size: 0.85rem;
        }

        .product-mobile-admin-reply-head small {
            color: #9ca3af;
            font-size: 0.72rem;
        }

    .product-mobile-admin-reply p {
        margin: 0;
        color: #475569;
        line-height: 1.9;
        font-size: 0.84rem;
        white-space: pre-line;
    }

    body.mobile-comment-modal-open {
        overflow: hidden !important;
        touch-action: none;
    }
}

/* =========================================================
   Product All Comments Modal
========================================================= */

@media (max-width: 991px) {
    .product-mobile-all-comments-list {
        display: flex;
        flex-direction: column;
        gap: 12px;
        padding-top: 34px !important;
        padding-bottom: calc(130px + env(safe-area-inset-bottom)) !important;
    }

    .product-mobile-all-comments-status {
        color: #6b7280;
        font-size: 0.82rem;
        text-align: center;
        padding: 12px 0 calc(90px + env(safe-area-inset-bottom)) !important;
    }

    .product-mobile-all-comment-item {
        border: 1px solid #e5e7eb;
        border-radius: 16px;
        padding: 12px;
        background: #fff;
    }

    .product-mobile-all-comment-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 8px;
    }

        .product-mobile-all-comment-head strong {
            color: #1f2937;
            font-size: 0.88rem;
        }

        .product-mobile-all-comment-head small {
            color: #9ca3af;
            font-size: 0.72rem;
            white-space: nowrap;
        }

    .product-mobile-all-comment-stars {
        color: #f59e0b;
        direction: ltr;
        text-align: right;
        font-size: 1rem;
        margin-bottom: 8px;
    }

    .product-mobile-all-comment-text {
        margin: 0;
        color: #334155;
        line-height: 2;
        font-size: 0.84rem;
        white-space: pre-line;
        text-align: justify;
    }

    .product-mobile-all-comment-more {
        border: none;
        background: transparent;
        color: #224173;
        font-size: 0.8rem;
        font-weight: 800;
        padding: 8px 0 0;
    }

    .product-mobile-all-comments-modal .product-mobile-modal-handle {
        position: sticky !important;
        top: -12px !important;
        z-index: 60 !important;
        width: calc(100% + 32px) !important;
        height: 42px !important;
        margin: -4px -16px 0 !important;
        border-radius: 22px 22px 0 0 !important;
        background: #fff !important;
    }

        .product-mobile-all-comments-modal .product-mobile-modal-handle::before {
            content: "";
            position: absolute;
            top: 18px !important;
            left: 50%;
            width: 52px;
            height: 5px;
            border-radius: 999px;
            background: #cbd5e1;
            transform: translateX(-50%);
        }

    .product-mobile-all-comments-modal .product-mobile-modal-head {
        position: sticky !important;
        top: 24px !important;
        z-index: 59 !important;
        margin: 0 -16px !important;
        padding: 12px 16px 16px !important;
        background: #fff !important;
        border-bottom: 1px solid #f1f5f9 !important;
        box-shadow: 0 10px 18px rgba(15, 23, 42, 0.06) !important;
    }

        .product-mobile-all-comments-modal .product-mobile-modal-head::before {
            content: "";
            position: absolute;
            left: 0;
            right: 0;
            top: -18px;
            height: 18px;
            background: #fff;
            pointer-events: none;
        }

        .product-mobile-all-comments-modal .product-mobile-modal-head::after {
            content: "";
            position: absolute;
            left: 0;
            right: 0;
            bottom: -18px;
            height: 18px;
            background: linear-gradient(to bottom, #fff 0%, #fff 55%, rgba(255,255,255,0) 100%);
            pointer-events: none;
        }

    .product-mobile-all-comments-modal.is-fullscreen .product-mobile-modal-handle {
        border-radius: 0 !important;
    }
}
/* Hide mobile comment modals on desktop */
@media (min-width: 992px) {
    .product-mobile-comment-overlay,
    .product-mobile-comment-modal,
    .product-mobile-all-comments-modal {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

@media (max-width: 991px) {
    .mobile-comment-see-all-card {
        flex: 0 0 38% !important;
        min-height: 230px;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px;
        padding: 14px 10px !important;
        background: #fff !important;
        border: 1px solid #eef0f3 !important;
        box-shadow: none !important;
    }

    .mobile-comment-see-all-circle {
        width: 44px;
        height: 44px;
        border-radius: 50%;
        border: 1.5px solid #111827;
        color: #111827;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 1.05rem;
    }

    .mobile-comment-see-all-label {
        color: #111827;
        font-size: 0.78rem;
        font-weight: 800;
        white-space: nowrap;
    }
}




/* =========================================================
   Product Related Products
========================================================= */

.product-related-section {
    width: 100%;
    margin: 28px 0 34px;
    padding: 22px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    box-shadow: 0 16px 34px rgba(15, 23, 42, 0.07);
}

.product-related-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.product-related-title-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
}

.product-related-icon {
    width: 44px;
    height: 44px;
    border-radius: 16px;
    background: rgba(34, 65, 115, 0.08);
    color: #224173;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    flex-shrink: 0;
}

.product-related-eyebrow {
    display: block;
    color: #9ca3af;
    font-size: 0.78rem;
    font-weight: 700;
    margin-bottom: 4px;
}

.product-related-title {
    margin: 0;
    color: #111827;
    font-size: 1.18rem;
    font-weight: 900;
}

.product-related-view-all {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #224173;
    background: rgba(34, 65, 115, 0.06);
    border: 1px solid rgba(34, 65, 115, 0.10);
    border-radius: 999px;
    padding: 9px 14px;
    font-size: 0.82rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    transition: 0.2s ease;
}

    .product-related-view-all:hover {
        color: #fff;
        background: #224173;
    }

.product-related-track {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
}

.product-related-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    background: #fff;
    border: 1px solid #eef0f3;
    border-radius: 20px;
    transition: 0.22s ease;
}

    .product-related-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 18px 32px rgba(15, 23, 42, 0.10);
        border-color: rgba(34, 65, 115, 0.22);
    }

.product-related-image-wrap {
    position: relative;
    height: 170px;
    background: #f8fafc;
    overflow: hidden;
}

.product-related-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 16px;
    transition: transform 0.22s ease;
}

.product-related-card:hover .product-related-image {
    transform: scale(1.04);
}

.product-related-badge,
.product-related-stock-badge {
    position: absolute;
    top: 10px;
    z-index: 2;
    border-radius: 999px;
    padding: 5px 9px;
    font-size: 0.7rem;
    font-weight: 800;
}

.product-related-badge {
    right: 10px;
    color: #fff;
    background: #ef4056;
}

.product-related-stock-badge {
    left: 10px;
    color: #64748b;
    background: #f1f5f9;
}

.product-related-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 12px;
}

.product-related-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 22px;
    color: #94a3b8;
    font-size: 0.72rem;
    font-weight: 700;
    overflow: hidden;
}

    .product-related-meta span {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

        .product-related-meta span + span::before {
            content: "•";
            margin-left: 6px;
            color: #cbd5e1;
        }

.product-related-card-title {
    min-height: 46px;
    margin: 8px 0 10px;
    color: #1f2937;
    font-size: 0.86rem;
    font-weight: 850;
    line-height: 1.75;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.product-related-feature {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 12px;
    padding: 8px 9px;
    border-radius: 12px;
    background: #f8fafc;
    color: #64748b;
    font-size: 0.72rem;
}

    .product-related-feature strong {
        color: #334155;
        font-weight: 800;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

.product-related-footer {
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid #f1f5f9;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.product-related-price-box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    min-width: 0;
}

    .product-related-price-box del {
        color: #b6bdc8;
        font-size: 0.72rem;
    }

    .product-related-price-box strong {
        color: #111827;
        font-size: 0.88rem;
        font-weight: 900;
        white-space: nowrap;
    }

.product-related-unavailable {
    color: #94a3b8 !important;
}

.product-related-action {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #f3f4f6;
    color: #224173;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: 0.2s ease;
}

.product-related-card:hover .product-related-action {
    background: #224173;
    color: #fff;
}

/* =========================================================
   Product Related Products - Mobile Carousel
========================================================= */

@media (max-width: 991px) {
    .product-related-section {
        margin: 18px 0 14px;
        padding: 16px 0 10px;
        border: none;
        border-radius: 0;
        box-shadow: none;
        background: #fff;
        overflow: hidden;
    }

    .product-related-head {
        padding: 0 14px;
        margin-bottom: 12px;
    }

    .product-related-icon {
        width: 38px;
        height: 38px;
        border-radius: 14px;
        font-size: 0.95rem;
    }

    .product-related-eyebrow {
        font-size: 0.72rem;
    }

    .product-related-title {
        font-size: 1rem;
    }

    .product-related-view-all {
        padding: 7px 0;
        border: none;
        background: transparent;
        font-size: 0.78rem;
    }

        .product-related-view-all:hover {
            color: #224173;
            background: transparent;
        }

    .product-related-track {
        display: flex;
        flex-direction: row;
        gap: 10px;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        padding: 4px 14px 14px;
    }

        .product-related-track::-webkit-scrollbar {
            display: none;
        }

    .product-related-card {
        flex: 0 0 68%;
        scroll-snap-align: start;
        border-radius: 16px;
    }

    .product-related-image-wrap {
        height: 148px;
    }

    .product-related-image {
        padding: 14px;
    }

    .product-related-body {
        padding: 11px;
    }

    .product-related-card-title {
        font-size: 0.82rem;
        min-height: 44px;
        margin: 7px 0 9px;
    }

    .product-related-feature {
        padding: 7px 8px;
        font-size: 0.7rem;
    }

    .product-related-price-box strong {
        font-size: 0.82rem;
    }

    .product-related-action {
        width: 32px;
        height: 32px;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .product-related-track {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}


/* =========================================================
   Fix Product Details Mobile Extra Empty Spaces
========================================================= */

@media (max-width: 991px) {
    body.product-detail-page .product-comments-box {
        margin-top: 12px !important;
        margin-bottom: calc(82px + env(safe-area-inset-bottom)) !important;
        padding-bottom: 0 !important;
    }

    body.product-detail-page .product-comments-mobile {
        padding-bottom: 0 !important;
    }

    body.product-detail-page .mobile-comment-accordion {
        margin-bottom: 10px !important;
    }

    body.product-detail-page .mobile-comment-accordion-body {
        padding-bottom: 14px !important;
    }

    body.product-detail-page .product-related-section {
        margin-top: 12px !important;
        margin-bottom: 12px !important;
        padding-top: 14px !important;
        padding-bottom: 8px !important;
    }

    body.product-detail-page .product-related-track {
        margin-bottom: 0 !important;
        padding-bottom: 10px !important;
    }
}






/* =========================================================
   Product Details — Equal title sizes
   Same size as #ProductFullNameDesktop
========================================================= */

body.product-detail-page {
    --product-detail-title-size: 1rem;
}

    /* تمام عنوان‌های درخواستی در صفحه جزئیات محصول */
    body.product-detail-page h1,
    body.product-detail-page h2,
    body.product-detail-page h3,
    body.product-detail-page .product-title-fa-small,
    body.product-detail-page .desktop-section-title,
    body.product-detail-page .product-related-title,
    body.product-detail-page .product-related-card-title {
        font-size: var(--product-detail-title-size) !important;
    }

    /* اطمینان از یکسان بودن اندازه با فیلد نام کامل */
    body.product-detail-page #ProductFullNameDesktop {
        font-size: var(--product-detail-title-size) !important;
    }

/* موبایل و تبلت */
@media (max-width: 991px) {
    body.product-detail-page h1,
    body.product-detail-page h2,
    body.product-detail-page h3,
    body.product-detail-page .product-title-fa-small,
    body.product-detail-page .desktop-section-title,
    body.product-detail-page .product-related-title,
    body.product-detail-page .product-related-card-title {
        font-size: var(--product-detail-title-size) !important;
    }
}


/* =========================================================
   Product detail mobile main header
   هدر اصلی صفحه جزئیات محصول در موبایل
   مشابه هدر صفحه /Product/
   ========================================================= */

@media (max-width: 991.98px) {

    /*
     * خود هدر اصلی
     */
    body.product-detail-page #siteHeader.dangaah-header {
        position: sticky !important;
        top: 0 !important;
        z-index: 25000 !important;
        width: 100% !important;
        height: auto !important;
        min-height: 58px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        overflow: visible !important;
        background: #ffffff !important;
    }

    /*
     * ردیف اصلی هدر
     */
    body.product-detail-page
    #siteHeader
    .dangaah-header-main {
        width: 100% !important;
        height: 58px !important;
        min-height: 58px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        background: #ffffff !important;
        border-bottom: 1px solid #eef1f4 !important;
    }

    /*
     * نگهدارنده داخلی هدر
     */
    body.product-detail-page
    #siteHeader
    .dangaah-header-container {
        width: 100% !important;
        max-width: none !important;
        height: 58px !important;
        min-height: 58px !important;
        margin: 0 !important;
        padding: 6px 10px !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        direction: rtl !important;
        gap: 8px !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /*
     * قسمت سمت راست:
     * لوگو و Breadcrumb
     */
    body.product-detail-page
    #siteHeader
    .dangaah-header-identity {
        min-width: 0 !important;
        max-width: calc(100% - 128px) !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        flex: 1 1 auto !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        direction: rtl !important;
        gap: 7px !important;
        visibility: visible !important;
        opacity: 1 !important;
        overflow: hidden !important;
    }

    /*
     * لینک لوگو
     */
    body.product-detail-page
    #siteHeader
    .dangaah-header-logo {
        width: auto !important;
        min-width: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: inline-flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        justify-content: center !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /*
     * تصویر لوگو
     */
    body.product-detail-page
    #siteHeader
    .dangaah-header-logo-image {
        width: auto !important;
        max-width: 58px !important;
        height: 42px !important;
        max-height: 42px !important;
        display: block !important;
        object-fit: contain !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /*
     * نام کامل شرکت در موبایل مخفی شود.
     * فقط لوگو نمایش داده می‌شود.
     */
    body.product-detail-page
    #siteHeader
    .dangaah-header-brand-name {
        display: none !important;
    }

    /*
     * Breadcrumb کنار لوگو
     */
    body.product-detail-page
    #siteHeader
    .dangaah-product-mobile-breadcrumb {
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        display: inline-flex !important;
        flex: 1 1 auto !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 5px !important;
        direction: rtl !important;
        color: #64748b !important;
        font-size: 0.69rem !important;
        font-weight: 800 !important;
        line-height: 1.4 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

        /*
     * لینک‌های خانه و محصولات
     */
        body.product-detail-page
        #siteHeader
        .dangaah-product-mobile-breadcrumb a {
            flex: 0 0 auto !important;
            color: inherit !important;
            text-decoration: none !important;
            white-space: nowrap !important;
        }

        /*
     * متن‌های Breadcrumb
     */
        body.product-detail-page
        #siteHeader
        .dangaah-product-mobile-breadcrumb span {
            min-width: 0 !important;
            display: inline-block !important;
            color: inherit !important;
            text-decoration: none !important;
            white-space: nowrap !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
        }

        /*
     * نام محصول فضای باقی‌مانده را بگیرد
     * و در صورت طولانی‌بودن سه‌نقطه شود.
     */
        body.product-detail-page
        #siteHeader
        .dangaah-product-mobile-breadcrumb
        .dangaah-product-mobile-current {
            flex: 1 1 auto !important;
        }

        /*
     * فلش‌های Breadcrumb
     */
        body.product-detail-page
        #siteHeader
        .dangaah-product-mobile-breadcrumb i {
            flex: 0 0 auto !important;
            color: #94a3b8 !important;
            font-size: 0.6rem !important;
        }

    /*
     * قسمت سمت چپ:
     * حساب کاربری، سبد خرید و منو
     */
    body.product-detail-page
    #siteHeader
    .dangaah-header-actions {
        width: auto !important;
        min-width: 120px !important;
        margin: 0 0 0 auto !important;
        padding: 0 !important;
        display: flex !important;
        flex: 0 0 auto !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        direction: ltr !important;
        gap: 3px !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

        body.product-detail-page
        #siteHeader
        .dangaah-header-actions > * {
            visibility: visible !important;
            opacity: 1 !important;
        }

    /*
     * ترتیب دیداری از چپ به راست:
     * منو، سبد خرید، حساب کاربری
     */
    body.product-detail-page
    #siteHeader
    .dangaah-mobile-menu-button {
        order: 1 !important;
    }

    body.product-detail-page
    #siteHeader
    #siteCartButton {
        order: 2 !important;
    }

    body.product-detail-page
    #siteHeader
    .account-header-menu,
    body.product-detail-page
    #siteHeader
    .dangaah-header-actions > a.dangaah-header-icon-button {
        order: 3 !important;
    }

    /*
     * اندازه دکمه‌ها
     */
    body.product-detail-page
    #siteHeader
    .dangaah-header-icon-button,
    body.product-detail-page
    #siteHeader
    .dangaah-mobile-menu-button {
        width: 38px !important;
        min-width: 38px !important;
        height: 38px !important;
        min-height: 38px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 11px !important;
    }

    /*
     * جست‌وجو در حالت بسته نباید
     * داخل ردیف اصلی هدر فضا اشغال کند.
     */
    body.product-detail-page
    #siteHeader
    .site-search-shell:not(.is-open) {
        width: 0 !important;
        min-width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        display: none !important;
        flex: 0 0 0 !important;
        overflow: hidden !important;
    }

    /*
     * در صورت بازشدن جست‌وجو،
     * پنل تمام صفحه نمایش داده شود.
     */
    body.product-detail-page
    #siteHeader
    .site-search-shell.is-open {
        position: fixed !important;
        inset: 0 !important;
        z-index: 30050 !important;
        width: 100vw !important;
        max-width: none !important;
        height: 100vh !important;
        height: 100dvh !important;
        display: flex !important;
    }

    /*
     * منوی دسکتاپ در موبایل نمایش داده نشود.
     */
    body.product-detail-page
    #siteHeader
    .dangaah-header-nav {
        display: none !important;
    }
}

/*
 * تنظیمات مخصوص موبایل‌های بسیار کوچک
 */
@media (max-width: 360px) {

    body.product-detail-page
    #siteHeader
    .dangaah-header-container {
        padding-right: 6px !important;
        padding-left: 6px !important;
        gap: 4px !important;
    }

    body.product-detail-page
    #siteHeader
    .dangaah-header-actions {
        min-width: 108px !important;
        gap: 1px !important;
    }

    body.product-detail-page
    #siteHeader
    .dangaah-header-icon-button,
    body.product-detail-page
    #siteHeader
    .dangaah-mobile-menu-button {
        width: 35px !important;
        min-width: 35px !important;
        height: 35px !important;
        min-height: 35px !important;
    }

    body.product-detail-page
    #siteHeader
    .dangaah-header-logo-image {
        max-width: 50px !important;
        height: 38px !important;
    }

    body.product-detail-page
    #siteHeader
    .dangaah-product-mobile-breadcrumb {
        gap: 3px !important;
        font-size: 0.63rem !important;
    }
}

/*
 * رنگ Breadcrumb در دارک مود
 */
body.dark-mode.product-detail-page
#siteHeader
.dangaah-product-mobile-breadcrumb {
    color: #cbd5e1 !important;
}

@media (max-width: 991.98px) {

    /*
     * در صفحه جزئیات محصول هیچ منوی عمومی
     * در پایین صفحه نمایش داده نشود.
     */
    body.product-detail-page > .mobile-bottom-bar,
    body.product-detail-page main > .mobile-bottom-bar,
    body.product-detail-page .product-detail-mobile-bottom-bar {
        display: none !important;
    }
}
/* =========================================================
   View cart link after successful add to cart
   لینک مشاهده سبد خرید پس از افزودن موفق محصول
   ========================================================= */

.cart-action-message .cart-action-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #198754;
    font-size: inherit;
    font-weight: 900;
    line-height: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.18s ease, opacity 0.18s ease;
}

    .cart-action-message .cart-action-link:hover {
        color: #146c43;
        text-decoration: underline;
    }

    .cart-action-message .cart-action-link:focus-visible {
        color: #146c43;
        text-decoration: underline;
        outline: 2px solid rgba(25, 135, 84, 0.28);
        outline-offset: 3px;
        border-radius: 5px;
    }
@media (max-width: 991.98px) {

    body.product-detail-page
    .col-sidebar
    .cart-action-message
    .cart-action-link {
        min-height: 28px;
        padding: 2px 8px;
        color: #198754 !important;
        font-size: 0.76rem !important;
        font-weight: 900 !important;
        white-space: nowrap;
    }
}
/* =========================================================
   FIX — Product detail mobile sheets must stay above header
   معرفی / بررسی تخصصی / مشاهده همه مشخصات
   ========================================================= */
@media (max-width: 991.98px) {

    body.product-detail-page .detail-sheet-overlay {
        z-index: 26000 !important;
    }

    body.product-detail-page .bottom-sheet {
        z-index: 26010 !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
    }

    /* وقتی شیت باز است، هدر پشت مودال بماند */
    body.product-detail-page.detail-sheet-is-open #siteHeader.dangaah-header {
        z-index: 25000 !important;
    }
}