/* =========================================================
   ZDV Product Page — Common CSS
   Shared by: Separate Lid + No Separate Lid layouts
   Generated from all.css V.12 cleanup
   ========================================================= */

.zdv-product-layout,
.zdv-product-layout * {
  box-sizing: border-box;
}

.zdv-product-layout {
  direction: rtl;
}



/* =========================================================
   01. Product content mobile layout
   ========================================================= */

/* =========================================================
   V.12 - Mobile Product Content Layout
   معرفی → سایدبار → پرسش‌ها → دیدگاه‌ها
   فقط محصول تست 2815
   ========================================================= */

@media (max-width: 767px) {

    /* کانتینر مادر */
    .zdv-product-layout .product-content-wrapper {
        --width: 100% !important;
        --min-height: 0px !important;
        --flex-grow: 0 !important;
        --flex-shrink: 1 !important;

        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        gap: 16px !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: visible !important;
        box-sizing: border-box !important;
    }


    /* چهار بخش اصلی */
    .zdv-product-layout
    .product-content-wrapper
    > .elementor-element-269d549,

    .zdv-product-layout
    .product-content-wrapper
    > .elementor-element-93df7f9,

    .zdv-product-layout
    .product-content-wrapper
    > .elementor-element-ca46b29,

    .zdv-product-layout
    .product-content-wrapper
    > .elementor-element-b8b7192 {
        --width: 100% !important;
        --min-height: 0px !important;
        --flex-grow: 0 !important;
        --flex-shrink: 1 !important;

        display: flex !important;
        flex-direction: column !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        flex: 0 0 auto !important;
        flex-basis: auto !important;
        align-self: stretch !important;

        position: relative !important;
        inset: auto !important;

        margin: 0 !important;
        transform: none !important;

        box-sizing: border-box !important;
    }


    /* ترتیب بخش‌های اصلی */

    /* معرفی محصول */
    .zdv-product-layout
    .product-content-wrapper
    > .elementor-element-269d549 {
        order: 1 !important;
    }

    /* سایدبار: محصولات مشابه، کاربرد، مزایا و FAQ */
    .zdv-product-layout
    .product-content-wrapper
    > .elementor-element-93df7f9 {
        order: 2 !important;
    }

    /* پرسش‌های منتخب */
    .zdv-product-layout
    .product-content-wrapper
    > .elementor-element-ca46b29 {
        order: 3 !important;
    }

    /* دیدگاه‌ها */
    .zdv-product-layout
    .product-content-wrapper
    > .elementor-element-b8b7192 {
        order: 4 !important;
    }


    /* معرفی محصول تمام‌عرض */
    .zdv-product-layout .zdv-intro-card {
        --width: 100% !important;
        --min-height: 0px !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        flex: 0 0 auto !important;
        align-self: stretch !important;

        margin: 0 !important;
        box-sizing: border-box !important;
    }


    /* سایدبار در موبایل زیر هم قرار بگیرد */
    .zdv-product-layout .zdv-side-content {
        --width: 100% !important;
        --min-height: 0px !important;
        --flex-grow: 0 !important;
        --flex-shrink: 1 !important;

        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        gap: 14px !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }


    /* کارت‌های داخل سایدبار */
    .zdv-product-layout .zdv-side-content > .zdv-near-products,
    .zdv-product-layout .zdv-side-content > .zdv-uses-card,
    .zdv-product-layout .zdv-side-content > .zdv-benefits-card,
    .zdv-product-layout .zdv-side-content > .zdv-faq-card {
        --width: 100% !important;
        --min-height: 0px !important;
        --flex-grow: 0 !important;
        --flex-shrink: 1 !important;

        display: flex !important;
        flex-direction: column !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        flex: 0 0 auto !important;
        flex-basis: auto !important;
        align-self: stretch !important;

        position: relative !important;
        inset: auto !important;

        margin: 0 !important;
        transform: none !important;

        box-sizing: border-box !important;
    }


    /* ترتیب داخل سایدبار */

    .zdv-product-layout .zdv-near-products {
        order: 1 !important;
    }

    .zdv-product-layout .zdv-uses-card {
        order: 2 !important;
    }

    .zdv-product-layout .zdv-benefits-card {
        order: 3 !important;
    }

    .zdv-product-layout .zdv-faq-card {
        order: 4 !important;
    }


    /* ریست عرض لایه‌های داخلی */
    .zdv-product-layout
    .product-content-wrapper
    .elementor-widget,

    .zdv-product-layout
    .product-content-wrapper
    .elementor-widget-container,

    .zdv-product-layout
    .product-content-wrapper
    .elementor-shortcode,

    .zdv-product-layout
    .product-content-wrapper
    .zdv-similar-box {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        box-sizing: border-box !important;
    }
}
/* =========================================================
   V.12 - Mobile Intro & Similar Products Polish
   فقط محصول تست 2815
   ========================================================= */

@media (max-width: 767px) {

    /* ======================================
       1. معرفی محصول کاملاً تمام‌عرض
       ====================================== */

    .zdv-product-layout
    .elementor
    .product-content-wrapper
    .zdv-intro-card {
        width: 100% !important;
        inline-size: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        margin-top: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        margin-left: 0 !important;

        padding: 22px 14px !important;

        box-sizing: border-box !important;
    }


    /* ======================================
       2. فاصله سایدبار از معرفی محصول
       ====================================== */

    .zdv-product-layout
    .product-content-wrapper
    .zdv-side-content {
        margin-top: 16px !important;
    }


    /* ======================================
       3. کادر محصولات مشابه کمی کوچک‌تر
       ====================================== */

    .zdv-product-layout
    .product-content-wrapper
    .zdv-near-products {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout
    .product-content-wrapper
    .zdv-similar-box {
        width: calc(100% - 24px) !important;
        max-width: calc(100% - 24px) !important;

        margin: 0 auto !important;
        padding: 14px 12px 16px !important;

        box-sizing: border-box !important;
    }


    /* ======================================
       4. فاصله داخلی محتوای محصولات مشابه
       ====================================== */

    .zdv-product-layout
    .zdv-similar-box__head {
        width: 100% !important;

        margin: 0 0 12px !important;
        padding-right: 10px !important;
        padding-left: 10px !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout
    .zdv-similar-box__stage {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 auto !important;
        padding-right: 8px !important;
        padding-left: 8px !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout
    .zdv-similar-box__dots {
        margin-top: 12px !important;
        padding-right: 8px !important;
        padding-left: 8px !important;
    }
}
/* =========================================================
   V.12 - Mobile Intro Read More Fix
   حالت بسته: فقط بخشی از متن معرفی
   حالت باز: معرفی + نکات خرید + بخش دوم ACF
   فقط محصول تست 2815
   ========================================================= */

@media (max-width: 767px) {

    /* کارت اصلی دیگر نباید از نظر ارتفاع فشرده شود */
    .zdv-product-layout
    .zdv-intro-card.has-intro-overflow {
        position: relative !important;

        max-height: none !important;
        height: auto !important;
        min-height: 0 !important;

        padding-bottom: 24px !important;

        overflow: visible !important;
    }


    /* فاصله بهتر عنوان اصلی و نام محصول */
    .zdv-product-layout .zdv-intro-title {
        margin-bottom: 10px !important;
    }

    .zdv-product-layout .zdv-intro-top h3 {
        margin-top: 0 !important;
        margin-bottom: 14px !important;
    }


    .zdv-product-layout .zdv-intro-title,
    .zdv-product-layout .zdv-intro-top h2,
    .zdv-product-layout .zdv-intro-top h3 {
        font-size: 18px !important;
        line-height: 1.75 !important;
    }

    .zdv-product-layout .zdv-intro-top,
    .zdv-product-layout .zdv-intro-top p,
    .zdv-product-layout .zdv-intro-top li {
        font-size: 12.5px !important;
        line-height: 2.05 !important;
    }


    /* =====================================================
       حالت بسته: فقط حدود ۶ خط از متن معرفی نمایش داده شود
       ===================================================== */

    .zdv-product-layout
    .zdv-intro-card.has-intro-overflow:not(.is-expanded)
    .zdv-intro-top {
        position: relative !important;

        max-height: 13em !important;
        overflow: hidden !important;
    }


    /* Fade فقط روی انتهای متن معرفی */
    .zdv-product-layout
    .zdv-intro-card.has-intro-overflow:not(.is-expanded)
    .zdv-intro-top::after {
        content: "" !important;

        position: absolute !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;

        height: 80px !important;

        pointer-events: none !important;
        z-index: 2 !important;

        background: linear-gradient(
            to bottom,
            rgba(250, 255, 252, 0) 0%,
            rgba(250, 255, 252, 0.65) 48%,
            rgba(250, 255, 252, 0.96) 82%,
            rgba(250, 255, 252, 1) 100%
        ) !important;
    }


    /* در حالت بسته، دو بخش بعدی اصلاً نمایش داده نشوند */
    .zdv-product-layout
    .zdv-intro-card.has-intro-overflow:not(.is-expanded)
    > .zdv-buying-widget,

    .zdv-product-layout
    .zdv-intro-card.has-intro-overflow:not(.is-expanded)
    > .zdv-intro-bottom-widget {
        display: none !important;
    }


    /* =====================================================
       حالت باز: همه بخش‌ها نمایش داده شوند
       ===================================================== */

    .zdv-product-layout
    .zdv-intro-card.is-expanded
    .zdv-intro-top {
        max-height: none !important;
        overflow: visible !important;
    }

    .zdv-product-layout
    .zdv-intro-card.is-expanded
    .zdv-intro-top::after {
        content: none !important;
        display: none !important;
    }

    .zdv-product-layout
    .zdv-intro-card.is-expanded
    > .zdv-buying-widget,

    .zdv-product-layout
    .zdv-intro-card.is-expanded
    > .zdv-intro-bottom-widget {
        display: block !important;
    }


    /* Fade تزریق‌شده قبلی دیگر استفاده نمی‌شود */
    .zdv-product-layout .zdv-intro-card__fade {
        display: none !important;
    }


    /* =====================================================
       دکمه نمایش بیشتر به‌صورت عادی در جریان صفحه
       ===================================================== */

    .zdv-product-layout .zdv-intro-readmore-all {
        position: static !important;

        width: auto !important;
        min-width: 118px !important;
        min-height: 36px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        margin: 14px auto 0 !important;
        padding: 6px 16px !important;

        border: 1px solid #cbd5e1 !important;
        border-radius: 10px !important;

        background: #f8fafc !important;
        color: #475569 !important;

        font-size: 11px !important;
        line-height: 1.5 !important;
        font-weight: 700 !important;

        transform: none !important;
        cursor: pointer !important;
        z-index: auto !important;
    }


    /* در حالت باز دکمه نمایش کمتر بعد از همه محتوا قرار می‌گیرد */
    .zdv-product-layout
    .zdv-intro-card.is-expanded
    .zdv-intro-readmore-all {
        margin-top: 18px !important;
    }


    /* کارت‌های کوتاه نیازی به دکمه ندارند */
    .zdv-product-layout
    .zdv-intro-card:not(.has-intro-overflow)
    > .zdv-intro-readmore-all {
        display: none !important;
    }
}
/* =========================================================


/* =========================================================
   02. Product header
   ========================================================= */

/* =========================================================
   V.12 - Mobile product header
   عنوان، توضیح کوتاه و بج‌ها
   فقط محصول تست 2815
   ========================================================= */

@media (max-width: 767px) {

    /* -----------------------------------------
       1. کادر عنوان فارسی و انگلیسی
       ----------------------------------------- */

    .zdv-product-layout .zfd-header-v2-hero {
        width: 100% !important;
        padding: 18px 14px 16px !important;
        gap: 8px !important;
    }

    /* عنوان اصلی محصول */
    .zdv-product-layout .zfd-header-v2-title {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    .zdv-product-layout .zfd-header-v2-title h1.product_title {
        margin: 0 !important;

        font-size: 19px !important;
        line-height: 1.6 !important;
        font-weight: 800 !important;

        text-align: center !important;
        
    }

    /* عنوان انگلیسی */
    .zdv-product-layout .zfd-header-v2-subtitle {
        margin: 0 !important;
    }

    .zdv-product-layout .zfd-header-v2-subtitle .elementor-heading-title {
        font-size: 11px !important;
        line-height: 1.6 !important;
    }


    /* -----------------------------------------
       2. توضیح کوتاه محصول
       ----------------------------------------- */

    .zdv-product-layout .zfd-header-v2-usage {
        width: 88% !important;
        max-width: 305px !important;

        margin-right: auto !important;
        margin-left: auto !important;
    }

    .zdv-product-layout .zfd-header-v2-usage .wd-text-block {
        font-size: 13px !important;
        line-height: 2.05 !important;
        text-align: center !important;
    }


    /* -----------------------------------------
       3. نمایش بج‌ها در دو ردیف
       ----------------------------------------- */

    .zdv-product-layout .zfd-header-v2-badges {
        width: 100% !important;
        max-width: 305px !important;

        margin-right: auto !important;
        margin-left: auto !important;
    }

    .zdv-product-layout
    .zfd-header-v2-badges
    .jet-listing-grid__items {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;

        width: 100% !important;
        gap: 8px !important;

        margin: 0 !important;
    }

    .zdv-product-layout
    .zfd-header-v2-badges
    .jet-listing-grid__item {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;

        padding: 0 !important;
        margin: 0 !important;
    }

    .zdv-product-layout
    .zfd-header-v2-badges
    .jet-listing-grid__item
    > .elementor {
        width: 100% !important;
    }

    .zdv-product-layout
    .zfd-header-v2-badges
    .jet-listing-grid__item
    .e-con-inner {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* ظاهر هر بج */
    .zdv-product-layout .zfd-header-v2-badges .zdv-badge {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    .zdv-product-layout
    .zfd-header-v2-badges
    .zdv-badge
    .jet-listing-dynamic-field__content {
        width: 100% !important;
        min-height: 38px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 7px 12px !important;

        font-size: 12px !important;
        line-height: 1.6 !important;
        text-align: center !important;
    }
}
/* ================================
   Product Header V2 - Refined Test
================================ */

.zfd-header-v2{
  width:100%;
  max-width:980px;
  margin:0 auto 24px;
  padding:0;

  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}

/* کارت عنوان */
.zfd-header-v2-hero{
  width:100%;
  max-width:800px;
  margin:0 auto -14px;
   margin-bottom:-14px !important;
  padding:14px 28px 22px;

  background:#FCFCFA;
  border:1px solid #E8E4DC;
  border-radius:22px;
  box-shadow:0 10px 26px rgba(15,23,42,.04);
}

/* Breadcrumb داخل کارت */
.zfd-header-v2-breadcrumb{
  width:100%;
  margin-top:0;

  display:flex;
  justify-content:flex-start;
  align-items:center;

  font-size:13px;
  font-weight:500;
  line-height:1.4;
  color:#9CA3AF;
}

.zfd-header-v2-breadcrumb .wd-breadcrumbs a{
  transition:color .22s ease;
}

.zfd-header-v2-breadcrumb .wd-breadcrumbs a:hover{
  color:#0F8F4F !important;
}
.elementor-widget.zfd-header-v2-breadcrumb .wd-breadcrumbs .wd-last{
  color:#0F8F4F !important;
  font-weight:700 !important;
}
/* عنوان فارسی */
.zfd-header-v2-title,
.zfd-header-v2-title .elementor-heading-title,
.zfd-header-v2 .product_title{
  margin:0 !important;

  text-align:center;
  font-size:26px;
  font-weight:800;
  line-height:1.45;
  letter-spacing:-.2px;
  color:#1F2A2E;
}

/* عنوان انگلیسی */
.zfd-header-v2-subtitle,
.zfd-header-v2-subtitle .elementor-heading-title{
  margin:5px 0 0 !important;
  padding:0 !important;

  text-align:center !important;
  direction:ltr !important;
  unicode-bidi:isolate !important;

  font-family:Arial,"Segoe UI",Tahoma,sans-serif !important;
  font-size:12px !important;
  font-weight:500 !important;
  line-height:1.4;
  letter-spacing:.25px;
  color:#9CA3AF !important;
}

/* بلوک محتوای زیر کارت */
.zfd-header-v2-content{
  width:100%;
  max-width:760px;

  display:flex;
  flex-direction:column;
  align-items:center;

  margin:0 auto;
}

/* توضیح کوتاه */
.zfd-header-v2-usage{
  max-width:760px;
  margin:0 auto -15px !important;

  font-size:15px;
  line-height:1.9;
  color:#374151;
  text-align:center;
}

.zfd-header-v2-usage p{
  margin:0 !important;
}

/* Badges */
.zfd-header-v2-badges{
  width:100%;
  margin:5px auto -15px !important;
}

.zfd-header-v2-badges .jet-listing-grid__items{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
}

.zfd-header-v2-badges .jet-listing-grid__item{
  width:auto !important;
  max-width:none !important;
  flex:0 0 auto !important;
}

.zfd-header-v2-badges .elementor,
.zfd-header-v2-badges .e-con,
.zfd-header-v2-badges .e-con-inner,
.zfd-header-v2-badges .elementor-widget,
.zfd-header-v2-badges .elementor-widget-container{
  width:auto !important;
  max-width:none !important;
  min-width:max-content !important;
  flex:0 0 auto !important;
  margin:0 !important;
  padding:0 !important;
}

.zfd-header-v2-badges .jet-listing-dynamic-field__content{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;

  padding:8px 16px !important;
  border-radius:10px !important;

  background:#F8FAF9 !important;
  border:1px solid #E2E8E5 !important;
  color:#1F3D32 !important;

  font-size:13px !important;
  font-weight:600 !important;
  line-height:1.2 !important;
  white-space:nowrap !important;

  transition:all .22s ease;
}

.zfd-header-v2-badges .jet-listing-dynamic-field__content:before{
  content:"✓";
  margin-left:6px;
  color:#2E7D32;
  font-weight:800;
}

.zfd-header-v2-badges .jet-listing-dynamic-field__content:hover{
  transform:translateY(-1px);
  border-color:#BFD8C8 !important;
  background:#F1F8F4 !important;
}

/* ================================
   Header V2 - Last Update Block
================================ */

.zfd-header-v2-update{
  margin:0 auto !important;
  text-align:center;
}

/* خود باکس بروزرسانی */
.zfd-header-v2-update .zfd-last-update{
  width:fit-content;
  max-width:100%;
  margin:0 auto !important;
  padding:0;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;

  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;

  color:#1F3D32;
  text-align:center;

  transition:all .22s ease;
}

/* خط اول: بروزرسانی خودکار قیمت و موجودی */
.zfd-header-v2-update .zfd-last-update-main{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin-bottom: 12px !important;
  margin-top: 20px !important;
  font-size:14px;
  font-weight:700;
  line-height:1.5;
  color:#234033;
  white-space:nowrap;
}

/* باج فعال */
.zfd-header-v2-update .zfd-last-update-main strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:3px 10px;
  border-radius:999px;

  background:#ECFDF5;
  border:1px solid #86EFAC;
  color:#15803D;

  font-size:14px;
  font-weight:700;
  line-height:1.2;
}

/* خط دوم: آخرین بروزرسانی */
.zfd-header-v2-update .zfd-last-update-sub{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;

  font-size:18px;
  font-weight:800;
  line-height:1.5;
  color:#4B5563;
  white-space:nowrap;
}

/* تاریخ و ساعت */
.zfd-header-v2-update .zfd-last-update-sub strong{
  color:#14532D;
  font-size:19px;
  font-weight:900;
}

/* هاور خیلی ظریف */
.zfd-header-v2-update .zfd-last-update:hover{
  transform:translateY(-1px);
}
.zfd-header-v2-update{
    position:relative;
}

.zfd-header-v2-update:after{
    content:"";
    display:block;

    width:316px;
    height:10px;

    margin:14px auto 0;

    border-radius:999px;

    background:#EEF2F5;
}



/* =========================================================
   03. Mobile main product order
   ========================================================= */

/* =========================================================
   V.12 - Mobile main product order
   گالری قبل از انتخاب ویژگی‌ها
   فقط محصول تست
   ========================================================= */

@media (max-width: 767px) {

    /* والد مشترک گالری و ورییشن‌ها */
    .zdv-product-layout .zd-product-main {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
    }

    /* گالری در جایگاه اول */
    .zdv-product-layout .zd-product-main > .product-media {
        order: 1 !important;
        width: 100% !important;
    }

    /* ورییشن و باکس خرید در جایگاه دوم */
    .zdv-product-layout .zd-product-main > .zdv-summary {
        order: 2 !important;
        width: 100% !important;
    }
}



/* =========================================================
   04. Summary and purchase box common
   ========================================================= */

/* ==========================================================
   ZDV PRODUCT SUMMARY — FINAL CLEAN CSS
   Scope: .zdv-summary
   Notes:
   - Put this CSS on the main product-summary container/global custom CSS.
   - Disable older child-widget CSS for this section to avoid cascade conflicts.
   - JS classes used: is-show, is-active, is-instock, is-outofstock,
     is-single, is-waiting, is-selected, has-nav-inside, has-selection-summary.
========================================================== */


/* ==========================================================
   01) Assistant / Help Box
========================================================== */

.zdv-summary .zdv-help{
  margin: 0 0 10px !important;
}

.zdv-summary .zdv-help__wrap{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  direction: rtl;

  padding: 14px 18px !important;
  border-radius: 18px;

  background: #EFF6FF;
  border: 1px solid #DBEAFE;
  box-shadow: 0 8px 22px rgba(37, 99, 235, .05);
}

.zdv-summary .zdv-help__content{
  flex: 1;
  text-align: right;
}

.zdv-summary .zdv-help__title{
  margin-bottom: 6px;
  color: #0F4EA8;
  font-size: 14px;
  font-weight: 900;
}

.zdv-summary .zdv-help__text{
  color: #2563EB;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.9;
}

.zdv-summary .zdv-help__avatar-slot{
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  border-radius: 50%;
  background: #F8FBFF;
  border: 1px dashed #D8E8FF;
}

.zdv-summary .zdv-help__avatar-placeholder{
  width: 100%;
  height: 100%;
  border-radius: 50%;
}


/* ==========================================================
   02) Variation Stage / Step Layout
   Critical: this block supports the JS step-navigation.
========================================================== */

.zdv-summary .zdv-stage{
  position: relative;
  overflow: visible !important;
}

/* Variations table behaves like a controlled stage */
.zdv-summary .zdv-stage table.variations{
  width: 100% !important;
  display: block !important;
  margin: 0 !important;
}

.zdv-summary .zdv-stage table.variations tbody{
  display: block !important;
  width: 100% !important;
  position: relative;
}

/* All rows are hidden by default */
.zdv-summary .zdv-stage table.variations tr{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;

  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(10px);

  transition:
    opacity .22s ease,
    transform .22s ease,
    visibility .22s ease;
}

/* Active row is visible */
.zdv-summary .zdv-stage table.variations tr.is-active{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

/* Final visual card: nav is moved inside stage by JS */
.zdv-summary .zdv-stage.has-nav-inside{
  background: #ffffff !important;
  border: 1px solid #D8E6F5 !important;
  border-radius: 20px !important;

  padding: 18px !important;

  display: flex !important;
  flex-direction: column !important;

  height: auto !important;
  min-height: 200px !important;
}

.zdv-summary .zdv-stage.has-nav-inside table.variations{
  flex: 1 1 auto !important;
}

/* In final stage, active row becomes real layout instead of overlay box */
.zdv-summary .zdv-stage.has-nav-inside tr.is-active{
  position: relative !important;
  inset: auto !important;
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  border-radius: 0 !important;
}

/* Variation label sits inside the main stage */
.zdv-summary .zdv-stage.has-nav-inside tr.is-active th.label{
  position: absolute !important;
  right: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 4 !important;

  width: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;

  display: block !important;
}

.zdv-summary .zdv-stage.has-nav-inside tr.is-active th.label label{
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;

  color: #166534 !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

.zdv-summary .zdv-stage.has-nav-inside tr.is-active th.label .wd-attr-selected{
  margin-right: 10px !important;
  color: #06b18f !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

/* Options area; right padding reserves space for the label */
.zdv-summary .zdv-stage.has-nav-inside td.value{
  width: 100% !important;
  min-height: auto !important;
  height: auto !important;

  padding: 20px 150px 20px 20px !important;

  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  flex-wrap: wrap !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  border-radius: 0 !important;
}


/* ==========================================================
   03) Swatches / Variation Buttons
========================================================== */

/* Generic swatches */
.zdv-summary .wd-swatches-product .wd-swatch,
.zdv-summary .wd-swatches-single .wd-swatch,
.zdv-summary .wd-swatch{
  border-radius: 14px !important;
  border: 1px solid #D8E2EC !important;
  transition: all .18s ease !important;
}

/* Text swatches: stable width and no inner double layer */
.zdv-summary .wd-swatches-product.wd-text-style-3 .wd-swatch.wd-text{
  min-width: 105px !important;
  height: 46px !important;
  padding: 0 16px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  background: transparent !important;
  background-image: none !important;
  border: 1px solid #D9E3EE !important;
  box-shadow: none !important;

  color: #111827 !important;
}

.zdv-summary .wd-swatches-product.wd-text-style-3 .wd-swatch.wd-text > .wd-swatch-text{
  background: #ffffff  !important;
  background-image: none !important;
  border: 1px solid #D8E6F5 !important;
  box-shadow: none !important;

  padding: 10px !important;
  margin: 0 !important;

  color: inherit !important;
  white-space: nowrap !important;
}

.zdv-summary .wd-swatches-product.wd-text-style-3 .wd-swatch.wd-text:hover{
  background: rgba(255, 255, 255, .35) !important;
  background-image: none !important;
  border-color: #BFD0E3 !important;
  transform: translateY(-1px);
}

.zdv-summary .wd-swatches-product.wd-text-style-3 .wd-swatch.wd-text.wd-active{
  min-width: 105px !important;
  height: 46px !important;

  --wd-swatch-pr-color: #06B18F !important;

  background: #06B18F !important;
  background-image: none !important;
  border-color: #06B18F !important;
  color: #FFFFFF !important;

  box-shadow: 0 8px 18px rgba(16, 185, 129, .22) !important;
}

.zdv-summary .wd-swatches-product.wd-text-style-3 .wd-swatch.wd-text.wd-active > .wd-swatch-text{
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #FFFFFF !important;
}

/* Color swatches */
.zdv-summary .wd-swatch.wd-bg,
.zdv-summary .wd-swatch[class*="wd-bg"]{
  border-radius: 13px !important;
  box-shadow:
    0 0 0 4px #FFFFFF,
    0 6px 16px rgba(15, 23, 42, .10);
}

.zdv-summary .wd-swatch.wd-bg.wd-active,
.zdv-summary .wd-swatch[class*="wd-bg"].wd-active{
  box-shadow:
    0 0 0 4px #FFFFFF,
    0 0 0 6px #10B981,
    0 10px 22px rgba(16, 185, 129, .20);
}

/* Reset link */
.zdv-summary .reset_variations{
  color: #94A3B8 !important;
  font-size: 13px !important;
}


/* ==========================================================
   04) Step Navigation Buttons
========================================================== */

.zdv-summary .zdv-stage.has-nav-inside .zdv-nav{
  margin-top: 20px !important;
  padding: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;

  flex-shrink: 0 !important;
}

.zdv-summary .zdv-nav button{
  min-width: 72px;
  height: 44px;
  padding: 0 18px;

  border: 1px solid #DDE6EF;
  border-radius: 12px;
  background: #FFFFFF;
  color: #334155;

  font-size: 14px;
  font-weight: 800;

  box-shadow: 0 6px 16px rgba(15, 23, 42, .05);
  cursor: pointer;

  transition: all .18s ease;
}

.zdv-summary .zdv-nav button:not(:disabled):hover{
  background: #F0FDF4;
  border-color: #10B981;
  color: #047857;
  transform: translateY(-1px);
}

.zdv-summary .zdv-nav button:disabled,
.zdv-summary .zdv-nav button[aria-disabled="true"]{
  background: #F1F5F9 !important;
  border-color: #F1F5F9 !important;
  color: #CBD5E1 !important;

  box-shadow: none !important;
  cursor: not-allowed !important;
  transform: none !important;
}

.zdv-summary .zdv-nav .zdv-restart{
  min-width: 96px;
  background: #F8FAFC;
  color: #475569;
}

.zdv-summary .zdv-nav .zdv-restart:not(:disabled):hover{
  background: #FFF7ED;
  border-color: #FDBA74;
  color: #C2410C;
}

.zdv-summary .zdv-nav .zdv-next:not(:disabled){
  background: #10B981;
  border-color: #10B981;
  color: #FFFFFF;
  box-shadow: 0 8px 18px rgba(16, 185, 129, .22);
}

.zdv-summary .zdv-nav .zdv-prev:not(:disabled){
  background: #FFFFFF;
  border-color: #CBD5E1;
  color: #334155;
}


/* ==========================================================
   05) Selection Summary
   The old green breadcrumb is hidden. JS copies it into price box.
========================================================== */

.zdv-summary .zdv-breadcrumb{
  display: none !important;
}

.zdv-summary .zdv-price-selection-summary{
  width: 100%;
  margin-top: 2px !important;
  padding-top: 6px !important;

  border-top: 1px dashed rgba(138, 90, 0, .28);

  color: #8A5A00;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5 !important;
  text-align: right;
}


/* ==========================================================
   06) Purchase Box / Rows
========================================================== */

.zdv-summary .zdv-purchase-box{
  margin-top: 10px !important;
  min-height: 430px !important;

  padding: 12px !important;

  border: none;
  border-radius: 22px;
  background: none;

  display: grid !important;
  grid-template-columns: 1fr;
  gap: 8px !important;

  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}

.zdv-summary .zdv-purchase-box:not(.is-show){
  opacity: 1;
  visibility: visible;
  transform: none;
}

/* Common row structure */
.zdv-summary .zdv-price-wrap,
.zdv-summary .zdv-stock-wrap,
.zdv-summary .zdv-bulk-wrap{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;

  margin: 0 !important;
  padding: 9px 16px !important;

  border-radius: 16px;
  background: #F8FAFC;
}

/* Price is the primary row */
.zdv-summary .zdv-price-wrap{
  min-height: 120px !important;
  padding: 12px 16px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  row-gap: 6px !important;

  background: #ffffff !important;
  border: 1px solid #ebebeb !important;
  box-shadow: 0 8px 22px rgba(245, 158, 11, .08) !important;
}
/* Labels */
.zdv-summary .zdv-field-label{
  color: #64748B;
  font-size: 15px;
  font-weight: 600;
}

.zdv-summary .zdv-price-wrap .zdv-field-label{
  color: #8A5A00 !important;
  font-weight: 900 !important;
  min-height: 70px !important;
}

/* Price placeholder and price */
.zdv-summary .zdv-price-slot:not(.has-price) .elementor-widget-wd_single_product_price,
.zdv-summary .zdv-price-slot:not(.has-price) .price{
  display: none !important;
}

.zdv-summary .zdv-price-slot.has-price .zdv-price-placeholder{
  display: none;
}

.zdv-summary .zdv-price-placeholder{
  color: #8A5A00 !important;
  min-height: 70px !important;
  font-size: 15px;
  font-weight: 800 !important;
  opacity: .9;
  text-align: left;
}

.zdv-summary .zdv-price-slot .price,
.zdv-summary .zdv-price-slot .woocommerce-Price-amount,
.zdv-summary .zdv-price-slot bdi{
  color: #8A5A00 !important;
  min-height: 70px !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1.4;
}


/* ==========================================================
   08) Stock Row
========================================================== */

.zdv-summary .zdv-stock,
.zdv-summary .zdv-bulk-info{
  color: #475569;
  font-size: 15px;
  font-weight: 700;
  text-align: left;
}

.zdv-summary .zdv-stock-wrap{
  color: #334155;
  font-size: 16px;
  font-weight: 700;
}

.zdv-summary .zdv-stock-wrap.is-instock{
  background: #ECFDF5 !important;
  border: 1px solid #BBF7D0 !important;
}

.zdv-summary .zdv-stock-wrap.is-instock .zdv-field-label,
.zdv-summary .zdv-stock-wrap.is-instock .zdv-stock{
  color: #166534 !important;
  font-weight: 800;
}

.zdv-summary .zdv-stock-wrap.is-outofstock{
  background: #FEF2F2 !important;
  border: 1px solid #FECACA !important;
}

.zdv-summary .zdv-stock-wrap.is-outofstock .zdv-field-label,
.zdv-summary .zdv-stock-wrap.is-outofstock .zdv-stock{
  color: #991B1B !important;
  font-weight: 800;
}


/* ==========================================================
   09) Bulk / Single Sale Row
========================================================== */

.zdv-summary .zdv-bulk-wrap.is-hidden{
  display: none !important;
}

.zdv-summary .zdv-bulk-wrap.is-active{
  background: #FAFBFC !important;
  border: 1px solid #DDE7F0 !important;
}

.zdv-summary .zdv-bulk-wrap.is-active .zdv-field-label{
  color: #64748B !important;
  font-weight: 800;
}

.zdv-summary .zdv-bulk-wrap.is-active .zdv-bulk-info{
  color: #166534 !important;
  font-weight: 900;
}

.zdv-summary .zdv-bulk-wrap.is-single{
  background: #EFF8FF !important;
  border: 1px solid #D6EEFF !important;
}

.zdv-summary .zdv-bulk-wrap.is-single .zdv-field-label{
  color: #2563EB !important;
  font-weight: 800;
}

.zdv-summary .zdv-bulk-wrap.is-single .zdv-bulk-info{
  color: #60A5FA !important;
  font-weight: 700;
}


/* ==========================================================
   10) Quantity + Add To Cart
========================================================== */

.zdv-summary .zdv-purchase-actions{
  direction: ltr;
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 10px !important;
  align-items: center;
  margin-top: 4px !important;
}

.zdv-summary .zdv-submit{
  grid-column: 1;
  direction: rtl;
}

.zdv-summary .zdv-qty{
  grid-column: 2;
  direction: rtl;
}

.zdv-summary .single_add_to_cart_button{
  width: 100%;
  min-height: 54px;

  border-radius: 16px !important;
  background: #10B981 !important;
  color: #FFFFFF !important;

  font-size: 17px;
  font-weight: 800;

  box-shadow: 0 10px 22px rgba(16, 185, 129, .25);
}

.zdv-summary .zdv-qty .quantity{
  height: 54px;
  border-radius: 16px;
  overflow: hidden;
}

.zdv-summary .single_add_to_cart_button,
.zdv-summary .woopq-quantity-input-plus,
.zdv-summary .woopq-quantity-input-minus{
  transition:
    background-color .18s ease,
    border-color .18s ease,
    color .18s ease,
    box-shadow .18s ease,
    transform .14s ease,
    filter .18s ease !important;
}

.zdv-summary .single_add_to_cart_button:not(:disabled):hover{
  background: #0EA66F !important;
  box-shadow: 0 12px 26px rgba(16, 185, 129, .28) !important;
  transform: translateY(-1px);
}

.zdv-summary .single_add_to_cart_button:not(:disabled):active{
  transform: translateY(1px) scale(.99);
  box-shadow: 0 6px 14px rgba(16, 185, 129, .18) !important;
}

.zdv-summary .woopq-quantity-input-plus:hover,
.zdv-summary .woopq-quantity-input-minus:hover{
  background: #059669 !important;
  border-color: #059669 !important;
  box-shadow: 0 8px 18px rgba(5, 150, 105, .22) !important;
  transform: translateY(-1px);
}

.zdv-summary .woopq-quantity-input-plus:active,
.zdv-summary .woopq-quantity-input-minus:active{
  transform: translateY(1px) scale(.96);
  box-shadow: 0 4px 10px rgba(5, 150, 105, .16) !important;
}


/* Disabled quantity / CTA */
.zdv-summary .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button,
.zdv-summary .woocommerce-variation-add-to-cart-disabled .zdv-qty{
  opacity: .45;
  pointer-events: none;
  filter: grayscale(.2);
}

.zdv-summary .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button{
  background: #CBD5E1 !important;
  box-shadow: none;
}

.zdv-summary .woocommerce-variation-add-to-cart-disabled .zdv-qty,
.zdv-summary .woocommerce-variation-add-to-cart-disabled .zdv-qty *,
.zdv-summary .zdv-qty.is-disabled{
  pointer-events: none !important;
}

.zdv-summary .zdv-qty.is-disabled{
  opacity: .45;
  filter: grayscale(1);
}

.zdv-summary .woocommerce-variation-add-to-cart-disabled .woopq-quantity-input-plus,
.zdv-summary .woocommerce-variation-add-to-cart-disabled .woopq-quantity-input-minus,
.zdv-summary .woocommerce-variation-add-to-cart-disabled .qty,
.zdv-summary .zdv-qty.is-disabled .woopq-quantity-input-plus,
.zdv-summary .zdv-qty.is-disabled .woopq-quantity-input-minus,
.zdv-summary .zdv-qty.is-disabled input.qty,
.zdv-summary .zdv-purchase-box:not(.is-active) .woopq-quantity-input-plus,
.zdv-summary .zdv-purchase-box:not(.is-active) .woopq-quantity-input-minus,
.zdv-summary .zdv-purchase-box:not(.is-active) input.qty{
  background: #E2E8F0 !important;
  border-color: #E2E8F0 !important;
  color: #94A3B8 !important;

  box-shadow: none !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
}

.zdv-summary .zdv-qty.is-disabled .woopq-quantity-input-plus:hover,
.zdv-summary .zdv-qty.is-disabled .woopq-quantity-input-minus:hover,
.zdv-summary .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button:hover{
  transform: none !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
}


/* ==========================================================
   11) Out Of Stock Global State
   Only the stock row remains red. Other commercial rows become neutral.
========================================================== */

.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap.is-single{
  background: #F4F5F7 !important;
  border-color: #D8DDE3 !important;
  box-shadow: none !important;
}
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .zdv-field-label,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .zdv-field-value,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .zdv-unit-price-label,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .zdv-price-label{
  color: #8A95A3 !important;
}

.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .price,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .price *,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .woocommerce-Price-amount,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .woocommerce-Price-currencySymbol{
  color: #6B7280 !important;
}

.zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-selection-summary{
  color: #8D98A6 !important;
  border-top-color: #D8DDE3 !important;
}

.zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap .zdv-field-label,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap .zdv-bulk-info,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap.is-single .zdv-field-label,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap.is-single .zdv-bulk-info{
  color: #8A95A3 !important;
  font-weight: 750 !important;
}

.zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap,
.zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap.is-single{
  opacity: .78 !important;
  filter: grayscale(.35) !important;
  pointer-events: none !important;
}
/* ==========================================================


/* =========================================================
   05. Product variation mobile patches
   ========================================================= */

/* =========================================================
   V.12 - Mobile Product Variation & Purchase Box
   نسخه یکپارچه اصلاحات موبایل
   فقط محصول تست با شناسه 2815
   ========================================================= */

@media (max-width: 767px) {

    /* =====================================================
       1. دستیار ظروف دارو
       ===================================================== */

    .zdv-product-layout .zdv-help__avatar-slot {
        display: none !important;
    }

    .zdv-product-layout .zdv-help__wrap {
        min-height: 92px !important;
        padding: 12px 14px !important;
        gap: 0 !important;
    }

    .zdv-product-layout .zdv-help__content {
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
    }

    .zdv-product-layout .zdv-help__title {
        margin: 0 0 3px !important;

        font-size: 12px !important;
        line-height: 1.6 !important;
        font-weight: 800 !important;
    }

    .zdv-product-layout .zdv-help__text {
        margin: 0 !important;

        font-size: 11.5px !important;
        line-height: 1.85 !important;
        font-weight: 600 !important;
    }


    /* =====================================================
       2. کانتینر مراحل انتخاب ویژگی
       ===================================================== */

    .zdv-product-layout .zdv-stage {
        min-height: 290px !important;

        display: flex !important;
        flex-direction: column !important;

        padding: 14px 12px 12px !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout .zdv-stage table.variations {
        width: 100% !important;
        margin: 0 !important;
        flex: 1 1 auto !important;
    }


    /* عنوان ویژگی مانند «نوع خرید» و «نوع رنگ» */

    .zdv-product-layout
    .zdv-stage
    table.variations
    tr.is-active
    th.label {
        width: 100% !important;

        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;

        padding: 0 4px 10px !important;

        text-align: right !important;
    }

    .zdv-product-layout
    .zdv-stage
    table.variations
    tr.is-active
    th.label label {
        width: auto !important;
        max-width: 100% !important;

        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 6px !important;

        margin: 0 !important;

        font-size: 13px !important;
        line-height: 1.6 !important;
        text-align: right !important;
        white-space: nowrap !important;
    }

    .zdv-product-layout
    .zdv-stage
    table.variations
    tr.is-active
    th.label .wd-attr-selected {
        margin-right: 4px !important;
        margin-left: 0 !important;
    }

    .zdv-product-layout
    .zdv-stage
    table.variations
    tr.is-active
    td.value {
        width: 100% !important;
        padding: 0 !important;
    }


    /* =====================================================
       3. گزینه‌های ورییشن در یک ردیف با Wrap
       ===================================================== */

    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product {
        width: 100% !important;
        max-width: 100% !important;

        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-start !important;

        gap: 8px !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product
    .wd-swatch {
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;

        flex: 0 1 auto !important;

        margin: 0 !important;
        box-sizing: border-box !important;
    }

    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product
    .wd-swatch-text {
        max-width: 100% !important;

        font-size: 12px !important;
        line-height: 1.5 !important;

        white-space: normal !important;
        overflow-wrap: break-word !important;
        text-align: center !important;
    }


    /* =====================================================
       4. دکمه‌های قبلی، بعدی و شروع مجدد
       ===================================================== */

    .zdv-product-layout .zdv-nav {
        width: 100% !important;

        display: grid !important;

        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;

        grid-template-areas:
            "next prev"
            "restart restart" !important;

        gap: 8px !important;

        margin-top: auto !important;
        padding-top: 14px !important;
    }

    .zdv-product-layout .zdv-nav .zdv-prev {
        grid-area: prev !important;
    }

    .zdv-product-layout .zdv-nav .zdv-next {
        grid-area: next !important;
    }

    .zdv-product-layout .zdv-nav .zdv-restart {
        grid-area: restart !important;
    }

    .zdv-product-layout .zdv-nav button {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 36px !important;

        margin: 0 !important;
        padding: 5px 10px !important;

        font-size: 11.5px !important;
        line-height: 1.4 !important;
    }


    /* =====================================================
       5. کارت قیمت محصول
       ===================================================== */

    .zdv-product-layout .zdv-price-wrap {
        padding: 14px 12px 10px !important;
    }

    /* عنوان قیمت محصول */

    .zdv-product-layout
    .zdv-price-wrap
    > .zdv-field-label {
        margin: 0 0 4px !important;

        font-size: 12px !important;
        line-height: 1.6 !important;
        font-weight: 800 !important;

        text-align: center !important;
    }

    /* محل نمایش Placeholder یا قیمت واقعی */

    .zdv-product-layout .zdv-price-slot {
        width: 100% !important;
        min-height: 66px !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 2px 0 5px !important;

        text-align: center !important;
    }

    /* Placeholder قیمت */

    .zdv-product-layout .zdv-price-placeholder {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        font-size: 11.5px !important;
        line-height: 1.8 !important;
        font-weight: 600 !important;

        text-align: center !important;
    }

    /* قیمت واقعی ووکامرس */

    .zdv-product-layout
    .zdv-price-slot
    .zdv-price {
        width: 100% !important;
        text-align: center !important;
    }

    .zdv-product-layout
    .zdv-price-slot
    .zdv-price
    .price {
        width: 100% !important;
        margin: 0 !important;

        text-align: center !important;
        min-height: 43px !important;
    }

    /* نقشه انتخاب محصول */

    .zdv-product-layout .zdv-price-selection-summary {
        width: 100% !important;

        margin: 3px 0 0 !important;
        padding: 7px 4px 0 !important;

        font-size: 10px !important;
        line-height: 1.65 !important;
        font-weight: 600 !important;

        text-align: center !important;
    }

    /* =====================================================
       7. وضعیت موجودی و جزئیات قیمت عمده
       ===================================================== */

    .zdv-product-layout
    .zdv-stock-wrap
    > .zdv-field-label,

    .zdv-product-layout
    .zdv-bulk-wrap
    > .zdv-field-label {
        font-size: 11px !important;
        line-height: 1.5 !important;
        font-weight: 700 !important;
    }

    /* Placeholder وضعیت موجودی قبل از انتخاب */

    .zdv-product-layout
    .zdv-purchase-box:not(.is-active)
    .zdv-stock {
        font-size: 11px !important;
        line-height: 1.6 !important;
        font-weight: 500 !important;
    }

    /* Placeholder قیمت عمده قبل از انتخاب */

    .zdv-product-layout
    .zdv-bulk-wrap:not(.is-active):not(.is-single)
    .zdv-bulk-info {
        font-size: 11px !important;
        line-height: 1.6 !important;
        font-weight: 500 !important;
    }


    /* =====================================================
       8. کنترل تعداد و دکمه ثبت سفارش
       ===================================================== */

    .zdv-product-layout .zdv-purchase-actions {
        width: 100% !important;

        display: flex !important;
        flex-direction: column !important;

        gap: 8px !important;
    }

    /* کنترل تعداد در ردیف اول */

    .zdv-product-layout .zdv-qty {
        order: 1 !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
    }

    .zdv-product-layout .zdv-qty .quantity {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin: 0 !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input {
        width: 100% !important;
        max-width: 100% !important;

        display: grid !important;

        grid-template-columns:
            44px minmax(0, 1fr) 44px !important;

        grid-template-areas:
            "plus field minus" !important;

        gap: 6px !important;

        direction: ltr !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-plus {
        grid-area: plus !important;
    }

    .zdv-product-layout
    .zdv-qty
    input.qty {
        grid-area: field !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        text-align: center !important;
        direction: rtl !important;
    }

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-minus {
        grid-area: minus !important;
    }

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-plus,

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-minus,

    .zdv-product-layout
    .zdv-qty
    input.qty {
        min-height: 40px !important;
        height: 40px !important;

        margin: 0 !important;
        box-sizing: border-box !important;
    }

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-plus,

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-minus {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }


    /* دکمه ثبت سفارش در ردیف دوم */

    .zdv-product-layout .zdv-submit {
        order: 2 !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
    }

    .zdv-product-layout
    .zdv-submit
    .single_variation_wrap,

    .zdv-product-layout
    .zdv-submit
    .woocommerce-variation-add-to-cart {
        width: 100% !important;
        max-width: 100% !important;
    }

    .zdv-product-layout
    .zdv-submit
    .single_add_to_cart_button {
        width: 100% !important;
        min-height: 43px !important;

        margin: 0 !important;
        padding: 8px 14px !important;

        font-size: 12px !important;
        line-height: 1.4 !important;
    }
}
/* =========================================================
   V.12 - Mobile Variation Fix Patch 02
   اصلاح سواچ‌ها، ناوبری، قیمت و کنترل تعداد
   فقط محصول تست 2815
   ========================================================= */

@media (max-width: 767px) {

    /* =====================================================
       1. جلوگیری از خروج محتوا از کادر ورییشن
       ===================================================== */

    .zdv-product-layout .zdv-stage,
    .zdv-product-layout .zdv-stage table.variations,
    .zdv-product-layout .zdv-stage tbody,
    .zdv-product-layout .zdv-stage tr,
    .zdv-product-layout .zdv-stage th,
    .zdv-product-layout .zdv-stage td {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .zdv-product-layout .zdv-stage {
        overflow: hidden !important;
    }

    .zdv-product-layout
    .zdv-stage
    table.variations
    tr.is-active {
        width: 100% !important;
    }

    .zdv-product-layout
    .zdv-stage
    table.variations
    tr.is-active
    td.value {
        width: 100% !important;
        max-width: 100% !important;

        padding-right: 0 !important;
        padding-left: 0 !important;

        overflow: hidden !important;
    }


    /* =====================================================
       2. چیدمان صحیح سواچ‌ها
       ===================================================== */

    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product {
        width: 100% !important;
        max-width: 100% !important;

        display: flex !important;
        flex-flow: row wrap !important;
        align-items: center !important;
        justify-content: center !important;

        gap: 8px !important;

        margin: 0 !important;
        padding: 0 !important;

        direction: rtl !important;
        overflow: hidden !important;
    }

    /* حذف عرض کشیده عمومی سواچ‌ها */
    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product
    > .wd-swatch {
        min-width: 0 !important;
        max-width: 100% !important;

        margin: 0 !important;

        flex-grow: 0 !important;
        flex-shrink: 1 !important;

        box-sizing: border-box !important;
    }


    /* -----------------------------------------------------
       سواچ‌های متنی: پک و تک‌فروشی
       ----------------------------------------------------- */

    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product[data-id="pa_order-type"]
    > .wd-swatch {
        width: auto !important;
        height: auto !important;

        flex-basis: auto !important;

        padding: 8px 13px !important;
    }

    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product[data-id="pa_order-type"]
    .wd-swatch-text {
        width: auto !important;

        font-size: 12px !important;
        line-height: 1.5 !important;

        white-space: nowrap !important;
    }


    /* -----------------------------------------------------
       سواچ‌های رنگ: عرض ثابت و جمع‌وجور
       ----------------------------------------------------- */

    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product[data-id="pa_color"]
    > .wd-swatch {
        width: 40px !important;
        min-width: 40px !important;
        max-width: 40px !important;

        height: 40px !important;
        min-height: 40px !important;
        max-height: 40px !important;

        flex: 0 0 40px !important;

        padding: 3px !important;
    }

    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product[data-id="pa_color"]
    .wd-swatch-bg {
        width: 100% !important;
        height: 100% !important;

        display: block !important;

        margin: 0 !important;

        border-radius: 10px !important;
    }

    /* متن نام رنگ داخل خود دایره نمایش داده نشود */
    .zdv-product-layout
    .zdv-stage
    .wd-swatches-product[data-id="pa_color"]
    .wd-swatch-text {
        display: none !important;
    }


    /* =====================================================
       3. حذف لینک اضافی «لغو انتخاب»
       چون دکمه شروع مجدد داریم
       ===================================================== */

    .zdv-product-layout .zdv-stage .wd-reset-var {
        display: none !important;
    }


    /* =====================================================
       4. قبلی و بعدی یک ردیف؛ شروع مجدد ردیف دوم
       ===================================================== */

    .zdv-product-layout .zdv-stage .zdv-nav {
        position: static !important;

        inset: auto !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        width: 100% !important;
        max-width: 100% !important;

        display: grid !important;

        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1fr) !important;

        grid-template-rows:
            auto
            auto !important;

        gap: 8px !important;

        margin: auto 0 0 !important;
        padding: 14px 0 0 !important;

        direction: rtl !important;

        transform: none !important;
        box-sizing: border-box !important;
    }

    .zdv-product-layout .zdv-stage .zdv-nav button {
        position: static !important;

        inset: auto !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        margin: 0 !important;

        transform: none !important;
        box-sizing: border-box !important;

        direction: rtl !important;
    }

    /* بعدی سمت چپ */
    .zdv-product-layout .zdv-stage .zdv-next {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    /* قبلی سمت راست */
    .zdv-product-layout .zdv-stage .zdv-prev {
        grid-column: 2 !important;
        grid-row: 1 !important;
    }

    /* شروع مجدد، ردیف کامل پایین */
    .zdv-product-layout .zdv-stage .zdv-restart {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
    }


    /* =====================================================
       5. کاهش فاصله سفید کارت قیمت
       ===================================================== */

    .zdv-product-layout .zdv-price-wrap {
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;

        gap: 0 !important;

        min-height: 0 !important;
        height: auto !important;

        padding: 12px 12px 9px !important;
    }

    .zdv-product-layout
    .zdv-price-wrap
    > .zdv-field-label {
        margin: 0 0 0px !important;
        padding: 0 !important;
        min-height: 20px !important;
    }

    .zdv-product-layout .zdv-price-slot {
        width: 100% !important;

        min-height: 0 !important;
        height: auto !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;

        margin: 0 !important;
        padding: 7px 0 5px !important;
    }

    /* قیمت واقعی */
    .zdv-product-layout
    .zdv-price-slot
    .zdv-price,
    .zdv-product-layout
    .zdv-price-slot
    .elementor-widget-container,
    .zdv-product-layout
    .zdv-price-slot
    p.price {
        width: 100% !important;

        min-height: 43px !important;

        margin: 0 !important;
        padding: 0 !important;

        text-align: center !important;
    }

    .zdv-product-layout
    .zdv-price-slot
    p.price {
        line-height: 1.45 !important;
    }

    /* Placeholder قبل از انتخاب */
    .zdv-product-layout .zdv-price-placeholder {
        min-height: 60px !important;

        margin: 0 !important;
        padding: 4px 0 7px !important;

        text-align: center !important;
    }

    /* نقشه انتخاب */
    .zdv-product-layout .zdv-price-selection-summary {
        margin-top: 5px !important;
    }


    /* =====================================================
       6. کنترل تعداد تمام‌عرض
       + سمت چپ، - سمت راست
       ===================================================== */

    .zdv-product-layout .zdv-qty,
    .zdv-product-layout .zdv-qty .quantity {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        display: block !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        display: flex !important;
        flex-direction: row !important;
        align-items: stretch !important;

        gap: 6px !important;

        margin: 0 !important;
        padding: 3px !important;

        direction: rtl !important;
        box-sizing: border-box !important;
    }

    /* دکمه منفی سمت راست */
    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-minus {
        order: 1 !important;

        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;

        flex: 0 0 44px !important;
    }

    /* ورودی عدد، تمام فضای باقی‌مانده */
    .zdv-product-layout
    .zdv-qty
    input.qty {
        order: 2 !important;

        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;

        flex: 1 1 0 !important;

        margin: 0 !important;
        padding: 0 8px !important;

        text-align: center !important;
        box-sizing: border-box !important;
    }

    /* دکمه مثبت سمت چپ */
    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-plus {
        order: 3 !important;

        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;

        flex: 0 0 44px !important;
    }

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-minus,

    .zdv-product-layout
    .zdv-qty
    .woopq-quantity-input-plus,

    .zdv-product-layout
    .zdv-qty
    input.qty {
        height: 40px !important;
        min-height: 40px !important;

        box-sizing: border-box !important;
    }
}



.zdv-guide-content{
    overflow:hidden;
    max-height:0;
    opacity:0;
    padding:0 16px;
    transition:
        max-height .35s ease,
        opacity .25s ease,
        padding .25s ease;
}

.zdv-guide-item[open] .zdv-guide-content{
    max-height:900px;
    opacity:1;
    padding:14px 16px;
}


/* =========================================================
   06. Floating guides shared
   ========================================================= */

/* V.06.3 | Floating Buying Guide */

.zdv-guide-trigger{
    position:fixed;
    right:0;
    top:45%;
    z-index:99990;
    width:52px;
    height:160px;
    background:#2563eb;
    color:#fff;
    border-radius:18px 0 0 18px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    box-shadow:0 10px 30px rgba(37,99,235,.24);
}


.zdv-guide-trigger span{
    writing-mode:vertical-rl;
    text-orientation:mixed;
    font-size:13px;
    font-weight:800;
    letter-spacing:.5px;
}
/* حالت فشرده: فقط آیکن */
.zdv-guide-trigger.is-compact{
    width:52px;
    height:52px;
    border-radius:18px 0 0 18px;
}

.zdv-guide-trigger.is-compact span{
    writing-mode:horizontal-tb;
    font-size:0;
}

.zdv-guide-trigger.is-compact span::before{
    content:"💡";
    font-size:22px;
}

.zdv-guide-overlay{
    position:fixed;
    inset:0;
    background:rgba(15,23,42,.30);
    z-index:99991;
    opacity:0;
    visibility:hidden;
    transition:.25s ease;
}

.zdv-guide-overlay.is-active{
    opacity:1;
    visibility:visible;
}

.zdv-guide-panel{
    position:absolute;
    top:50%;
    right:-430px;
    transform:translateY(-50%);
    width:390px;
    max-width:92vw;
    height:72vh;
    max-height:640px;
    min-height:560px;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:24px;
    transition:.30s ease;
    overflow:hidden;
    box-shadow:-14px 18px 45px rgba(15,23,42,.18);
}

.zdv-guide-overlay.is-active .zdv-guide-panel{
    right:18px;
}

.zdv-guide-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:18px 20px;
    background:#ffffff;
    border-bottom:1px solid #edf2f7;
    border-radius:24px 24px 0 0 !important;
}

/* دکمه مزاحم نشو */
.zdv-guide-minimize{
    border:1px solid #e2e8f0;
    background:#f8fafc;
    color:#64748b;
    border-radius:12px;
    padding:8px 10px;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
    transition:.2s ease;
}

.zdv-guide-minimize:hover{
    background:#eff6ff;
    color:#2563eb;
    border-color:#bfdbfe;
}

.zdv-guide-title{
    font-size:18px;
    font-weight:900;
    color:#143b2b;
}

.zdv-guide-close{
    border:none;
    background:none;
    font-size:26px;
    cursor:pointer;
    color:#64748b;
    line-height:1;
}

.zdv-guide-body{
    padding:18px;
    height:calc(100% - 74px);
    overflow-y:auto;
    position:relative;
}

.zdv-guide-item{
    border:1px solid #e5e7eb;
    border-radius:16px;
    margin-bottom:14px;
    overflow:hidden;
    background:#fff;
}

.zdv-guide-item summary{
    list-style:none;
    transition:.2s ease;
    cursor:pointer;
    padding:14px 16px;
    font-size:14px;
    font-weight:800;
    background:#f8fafc;
    color:#334155;
}

.zdv-guide-item summary:hover{
    background:#eff6ff;
    color:#1d4ed8;
}

.zdv-guide-item[open] summary{
    background:#eef2ff;
    color:#1e3a8a;
}
.zdv-guide-item summary::-webkit-details-marker{
    display:none;
}

.zdv-guide-content{
    padding:14px 16px;
    font-size:13px;
    line-height:2;
    color:#475569;
}
.zdv-guide-subitem{
    padding:14px 0;
    border-bottom:1px dashed #e2e8f0;
}

.zdv-guide-subitem:last-child{
    border-bottom:0;
    padding-bottom:0;
}

.zdv-guide-subtitle{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:6px;
}

.zdv-guide-subtitle strong{
    font-size:13.5px;
    font-weight:900;
    color:#1e3a8a;
}

.zdv-guide-step{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:34px;
    height:22px;
    border-radius:999px;
    background:#eff6ff;
    color:#2563eb;
    font-size:11px;
    font-weight:900;
    direction:ltr;
}

.zdv-guide-subitem p{
    margin:0;
    font-size:13px;
    line-height:2.1;
    color:#475569;
}

.zdv-guide-item summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.zdv-guide-item summary em{
    font-style:normal;
    font-size:11px;
    font-weight:900;
    color:#2563eb;
    background:#eff6ff;
    padding:4px 9px;
    border-radius:999px;
}

.zdv-guide-panel.has-scroll:not(.is-at-bottom)::after{
    content:"ادامه دارد ↓";
    position:absolute;
    bottom:12px;
    left:50%;
    transform:translateX(-50%);
    padding:6px 12px;
    border-radius:999px;
    background:#ffffff;
    color:#2563eb;
    font-size:11px;
    font-weight:900;
    box-shadow:0 8px 22px rgba(15,23,42,.14);
    pointer-events:none;
    z-index:3;
}

.zdv-guide-panel.has-scroll:not(.is-at-bottom)::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:58px;
    background:linear-gradient(to top, #ffffff 20%, rgba(255,255,255,0));
    pointer-events:none;
    z-index:2;
}

.zdv-guide-item summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.zdv-guide-item summary span{
    flex:1;
}

.zdv-guide-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:24px;
    height:24px;
    padding:0 7px;
    border-radius:999px;
    background:#eef4ff;
    color:#2563eb;
    font-size:12px;
    font-weight:900;
    font-style:normal;
    line-height:1;
}

@media(max-width:768px){
    .zdv-guide-trigger{
        top:auto;
        bottom:90px;
        width:58px;
        height:120px;
    }

  

    .zdv-guide-overlay.is-active .zdv-guide-panel{
        right:12px;
    }

    .zdv-guide-head{
        border-radius:22px 22px 0 0;
    }
}
/* ==========================================================
   12) Mobile
========================================================== */

@media (max-width: 767px){

  .zdv-summary .zdv-help__wrap{
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px !important;
  }

  .zdv-summary .zdv-stage.has-nav-inside{
    padding: 16px !important;
  }

  .zdv-summary .zdv-stage.has-nav-inside tr.is-active th.label{
    position: static !important;
    transform: none !important;
    margin-bottom: 10px !important;
  }

  .zdv-summary .zdv-stage.has-nav-inside td.value{
    padding: 12px 0 10px !important;
    justify-content: flex-start !important;
  }

  .zdv-summary .wd-swatches-product.wd-text-style-3 .wd-swatch.wd-text{
    min-width: auto !important;
  }

  .zdv-summary .zdv-price-wrap,
  .zdv-summary .zdv-stock-wrap,
  .zdv-summary .zdv-bulk-wrap{
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }
  .zdv-summary .zdv-purchase-box{
    padding: 0px !important;
    border-radius: 18px;
  }

  .zdv-summary .zdv-purchase-actions{
    grid-template-columns: 1fr !important;
  }

  .zdv-summary .zdv-submit,
  .zdv-summary .zdv-qty{
    grid-column: auto;
  }

  .zdv-summary .zdv-qty .quantity{
    width: 100%;
  }
}
.zdv-summary .zdv-invalid-hidden{
  display:none !important;
}
/* ==========================================================
   V.06.5 | Two Independent Floating Guide Triggers
========================================================== */

.zdv-guide-triggers {
	position: fixed;
	right: 0;
	left: auto;
	top: 45%;
	z-index: 99990;

	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 8px;

	transform: translateY(-50%);
}

/* Reset old fixed positioning */
.zdv-guide-triggers .zdv-guide-trigger {
	position: relative !important;
	inset: auto !important;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;

	width: 52px;
	height: 150px;
	margin: 0;
	padding: 0;

	color: #fff;
	border: 0;
	border-radius: 18px 0 0 18px;

	cursor: pointer;
	overflow: hidden;

	transition:
		width .22s ease,
		height .22s ease,
		background-color .2s ease,
		transform .2s ease,
		box-shadow .2s ease;
}

/* Order guide */
.zdv-guide-triggers .zdv-guide-trigger.is-order {
	background: #2563eb;
	box-shadow:
		0 10px 28px rgba(37, 99, 235, .24);
}

/* Shipping guide */
.zdv-guide-triggers .zdv-guide-trigger.is-shipping {
	background: #089b73;
	box-shadow:
		0 10px 28px rgba(8, 155, 115, .24);
}

.zdv-guide-triggers .zdv-guide-trigger:hover {
	color: #fff;
	transform: translateX(-3px);
}

.zdv-guide-triggers .zdv-guide-trigger.is-order:hover {
	background: #1d4ed8;
}

.zdv-guide-triggers .zdv-guide-trigger.is-shipping:hover {
	background: #047857;
}

/* SVG icon */
.zdv-guide-trigger__icon {
	flex: 0 0 23px;
	width: 23px;
	height: 23px;
	color: currentColor;
}

/* Vertical label */
.zdv-guide-trigger .zdv-guide-trigger__label {
	writing-mode: vertical-rl;
	text-orientation: mixed;

	color: #fff;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .4px;
	line-height: 1.2;
}

/* Compact mode: still two separate buttons */
.zdv-guide-triggers.is-compact .zdv-guide-trigger {
	width: 52px;
	height: 52px;
	gap: 0;
}

.zdv-guide-triggers.is-compact
.zdv-guide-trigger__label {
	display: none;
}

.zdv-guide-triggers.is-compact
.zdv-guide-trigger__icon {
	width: 24px;
	height: 24px;
}

/* Hide inactive guide view */
.zdv-guide-view[hidden] {
	display: none !important;
}

/* Lock background scroll */
body.zdv-guide-open {
	overflow: hidden;
}

/* Header buttons wrapper */
.zdv-guide-head__actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

/* Shipping drawer accent */
.zdv-guide-panel.is-shipping-view
.zdv-guide-title {
	color: #08785c;
}

.zdv-guide-panel.is-shipping-view
.zdv-guide-item summary:hover {
	color: #047857;
	background: #ecfdf5;
}

.zdv-guide-panel.is-shipping-view
.zdv-guide-item[open] summary {
	color: #065f46;
	background: #dff8ec;
}

.zdv-guide-panel.is-shipping-view
.zdv-guide-count,
.zdv-guide-panel.is-shipping-view
.zdv-guide-step {
	color: #047857;
	background: #dcfce7;
}


/* Mobile guardrail */
@media (max-width: 768px) {

	.zdv-guide-triggers {
		top: auto;
		bottom: 90px;
		transform: none;
	}

	.zdv-guide-triggers .zdv-guide-trigger {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;

		width: 52px;
		height: 112px;
	}

	.zdv-guide-triggers.is-compact
	.zdv-guide-trigger {
		width: 52px;
		height: 52px;
	}
}
.zdv-guide-triggers {
	right: 0 !important;
	left: auto !important;
}
/* =========================================================


/* =========================================================
   07. Guide mobile label patch
   ========================================================= */

/* =========================================================
   V.12 - اصلاح نهایی تب‌های راهنما در موبایل
   حذف آیکن + نمایش عمودی متن
   فقط محصول تست
   ========================================================= */

@media (max-width: 767px) {

    /* کانتینر راهنماها */
    .zdv-product-layout .zdv-guide-triggers,
    .zdv-product-layout .zdv-guide-triggers.is-compact {
        position: fixed !important;

        top: 52% !important;
        right: 0 !important;
        bottom: auto !important;
        left: auto !important;

        width: 30px !important;
        height: auto !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;

        gap: 3px !important;

        margin: 0 !important;
        padding: 0 !important;

        transform: translateY(-50%) !important;
        z-index: 9990 !important;
    }


    /* خود دکمه‌ها */
    .zdv-product-layout .zdv-guide-trigger,
    .zdv-product-layout
    .zdv-guide-triggers.is-compact
    .zdv-guide-trigger {
        position: relative !important;

        width: 30px !important;
        min-width: 30px !important;
        max-width: 30px !important;

        height: 112px !important;
        min-height: 112px !important;
        max-height: 112px !important;

        display: block !important;

        margin: 0 !important;
        padding: 0 !important;

        border: 0 !important;
        border-radius: 12px 0 0 12px !important;

        overflow: hidden !important;

        writing-mode: horizontal-tb !important;
        transform: none !important;

        box-shadow:
            0 5px 15px rgba(15, 23, 42, 0.16),
            0 1px 3px rgba(15, 23, 42, 0.12) !important;
    }


    /* حذف کامل آیکن‌ها در موبایل */
    .zdv-product-layout .zdv-guide-trigger__icon {
        display: none !important;
    }


    /* متن عمودی */
    .zdv-product-layout .zdv-guide-trigger__label {
        position: absolute !important;

        top: 50% !important;
        left: 50% !important;

        display: block !important;

        width: max-content !important;
        min-width: max-content !important;
        max-width: none !important;

        margin: 0 !important;
        padding: 0 !important;

        color: #fff !important;

        font-size: 11px !important;
        line-height: 1 !important;
        font-weight: 800 !important;

        white-space: nowrap !important;
        writing-mode: horizontal-tb !important;
        direction: rtl !important;

        text-align: center !important;

        transform:
            translate(-50%, -50%)
            rotate(-90deg) !important;

        transform-origin: center center !important;
    }


    /* رنگ راهنمای سفارش */
    .zdv-product-layout .zdv-guide-trigger.is-order {
        background: #2563eb !important;
    }

    /* رنگ راهنمای ارسال */
    .zdv-product-layout .zdv-guide-trigger.is-shipping {
        background: #07966f !important;
    }
}



/* =========================================================
   08. Gallery
   ========================================================= */

/* ZFD Gallery V.03.5 - Modern Premium Desktop */

@media (min-width: 1025px) {

  .product-media .zdv-main-gallery {
    max-width: 590px;
    margin: 0 auto;
  }

  .product-media .zdv-main-gallery .woocommerce-product-gallery {
    position: relative;
    padding: 18px;
    border-radius: 32px;
    background:
      radial-gradient(circle at 18% 10%, rgba(39,174,96,.10), transparent 32%),
      linear-gradient(145deg, #ffffff 0%, #f7fbf9 48%, #eef8f3 100%);
    border: 1px solid rgba(39,174,96,.20);
    box-shadow:
      0 28px 70px rgba(19, 74, 48, .13),
      0 2px 0 rgba(255,255,255,.9) inset;
    overflow: visible;
  }

  .product-media .zdv-main-gallery .woocommerce-product-gallery:before {
    content: "نمایش تصاویر محصول";
    position: absolute;
    top: 30px;
    right: 30px;
    z-index: 5;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.82);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(39,174,96,.18);
    color: #24543b;
    font-size: 12px;
    font-weight: 700;
    box-shadow: 0 10px 24px rgba(0,0,0,.08);
  }

  .product-media .zdv-main-gallery .wd-gallery-images {
    border-radius: 26px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 12px 30px rgba(0,0,0,.08);
  }

  .product-media .zdv-main-gallery .woocommerce-product-gallery__image,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__image a {
    border-radius: 26px;
    overflow: hidden;
  }

  .product-media .zdv-main-gallery .woocommerce-product-gallery__image img {
    width: 100%;
    height: 535px;
    object-fit: cover;
    object-position: center;
    border-radius: 26px;
    transition: transform .55s ease, filter .55s ease;
    cursor: zoom-in;
  }

  .product-media .zdv-main-gallery .woocommerce-product-gallery__image:hover img {
    transform: scale(1.11);
    filter: contrast(1.06) saturate(1.05) brightness(1.02);
  }

  /* Fullscreen button */
  .product-media .zdv-main-gallery .wd-gallery-btn,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger {
    left: 18px !important;
    bottom: 18px !important;
    top: auto !important;
    right: auto !important;
    width: 54px !important;
    height: 54px !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,.92) !important;
    backdrop-filter: blur(12px);
    box-shadow: 0 14px 32px rgba(0,0,0,.18) !important;
    transition: all .25s ease;
  }

  .product-media .zdv-main-gallery .wd-gallery-btn:hover,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger:hover {
    transform: translateY(-3px) scale(1.05);
  }

  /* Thumbnails wrapper */
  .product-media .zdv-main-gallery .wd-gallery-thumb {
    margin-top: 14px;
    padding: 12px;
    border-radius: 24px;
    background: rgba(255,255,255,.74);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(39,174,96,.18);
    box-shadow:
      0 14px 35px rgba(19,74,48,.08),
      inset 0 1px 0 rgba(255,255,255,.9);
  }

  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-carousel-item {
    height: 126px !important;
    border-radius: 18px;
    opacity: .62;
    overflow: hidden;
    transition: all .28s ease;
  }

  .product-media .zdv-main-gallery .wd-gallery-thumb img {
    width: 100% !important;
    height: 126px !important;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 18px;
    border: 1px solid #e2ece7;
    background: #fff;
    transition: all .28s ease;
  }

  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-carousel-item:hover {
    opacity: 1;
    transform: translateY(-3px);
  }

  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-carousel-item.wd-active,
  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-carousel-item.wd-thumb-active {
    opacity: 1;
  }

  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-active img,
  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-thumb-active img {
    border-color: #20b66a;
    box-shadow:
      0 0 0 3px rgba(32,182,106,.16),
      0 12px 26px rgba(32,182,106,.18);
  }

  /* Dots */
  .product-media .zdv-main-gallery .wd-nav-pagin {
    bottom: 20px !important;
  }

  .product-media .zdv-main-gallery .wd-nav-pagin li span {
    background: rgba(255,255,255,.82);
    box-shadow: 0 3px 10px rgba(0,0,0,.24);
  }

  .product-media .zdv-main-gallery .wd-nav-pagin li.wd-active span {
    width: 24px;
    border-radius: 999px;
    background: #145c38;
  }
}
/* ZFD Gallery V.03.6 - Neutral frame fix */

@media (min-width: 1025px) {

  .product-media .zdv-main-gallery .woocommerce-product-gallery {
    background: #fff !important;
    border-color: #e3e7eb !important;
    box-shadow:
      0 24px 60px rgba(15, 23, 42, .10),
      inset 0 1px 0 rgba(255,255,255,.9) !important;
  }

  .product-media .zdv-main-gallery .woocommerce-product-gallery:before {
    display: none !important;
  }

  .product-media .zdv-main-gallery .wd-gallery-thumb {
    background: #fff !important;
    border-color: #e3e7eb !important;
    box-shadow:
      0 12px 32px rgba(15, 23, 42, .08),
      inset 0 1px 0 rgba(255,255,255,.9) !important;
  }
}
/* ZFD Gallery V.03.7 - UI polish fixes */

@media (min-width: 1025px) {

  /* اصلاح دکمه بزرگنمایی */
  .product-media .zdv-main-gallery .wd-gallery-btn,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger {
    overflow: hidden !important;
    text-indent: -9999px !important;
    font-size: 0 !important;
    color: transparent !important;
  }

  .product-media .zdv-main-gallery .wd-gallery-btn:before,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger:before {
    text-indent: 0 !important;
    font-size: 22px !important;
    color: #333 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
  }

  /* فلش‌های عکس بعدی/قبلی */
  .product-media .zdv-main-gallery .wd-btn-arrow {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.72) !important;
    backdrop-filter: blur(8px);
    box-shadow: 0 8px 22px rgba(15,23,42,.14);
    opacity: .85 !important;
    transition: all .25s ease;
  }

  .product-media .zdv-main-gallery .wd-btn-arrow:hover {
    background: rgba(255,255,255,.92) !important;
    opacity: 1 !important;
    transform: scale(1.05);
  }

  /* حذف سبزی نقطه/اسکرول پایین تصویر */
  .product-media .zdv-main-gallery .wd-nav-pagin li.wd-active span {
    background: #111827 !important;
  }

  .product-media .zdv-main-gallery .wd-nav-pagin li span {
    background: rgba(255,255,255,.75) !important;
  }

  /* حذف سبز از thumbnail فعال */
  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-active img,
  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-thumb-active img {
    border-color: #d1d5db !important;
    box-shadow:
      0 0 0 3px rgba(17,24,39,.08),
      0 10px 24px rgba(15,23,42,.10) !important;
  }

  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-carousel-item {
    opacity: .72 !important;
  }

  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-carousel-item.wd-active,
  .product-media .zdv-main-gallery .wd-gallery-thumb .wd-carousel-item.wd-thumb-active {
    opacity: 1 !important;
  }
}
/* ZFD Gallery V.03.8 - Arrow & zoom icon fix */

@media (min-width: 1025px) {

  .product-media .zdv-main-gallery .wd-btn-arrow {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding: 0 !important;
  }

  .product-media .zdv-main-gallery .wd-btn-arrow:before,
  .product-media .zdv-main-gallery .wd-btn-arrow:after {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    margin: 0 !important;
    transform: none !important;
  }

  .product-media .zdv-main-gallery .wd-gallery-btn,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-indent: 0 !important;
    font-size: 0 !important;
    color: transparent !important;
  }

  .product-media .zdv-main-gallery .wd-gallery-btn:before,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger:before {
    content: "⛶" !important;
    font-size: 24px !important;
    color: #374151 !important;
    line-height: 1 !important;
    margin: 0 !important;
  }

  .product-media .zdv-main-gallery .wd-gallery-btn:after,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger:after {
    display: none !important;
  }
}
/* ZFD Gallery V.03.9 - Real zoom icon */

@media (min-width: 1025px) {

  .product-media .zdv-main-gallery .wd-gallery-btn,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger {
    width: 54px !important;
    height: 54px !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,.92) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    font-size: 0 !important;
    color: transparent !important;
    text-indent: 0 !important;
  }

  .product-media .zdv-main-gallery .wd-gallery-btn:before,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger:before {
    content: "" !important;
    width: 22px !important;
    height: 22px !important;
    display: block !important;
    background-color: #374151 !important;
    mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 3H3v5h2V5h3V3zm8 0v2h3v3h2V3h-5zM5 16H3v5h5v-2H5v-3zm14 3h-3v2h5v-5h-2v3z'/%3E%3C/svg%3E") center / contain no-repeat;
    -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 3H3v5h2V5h3V3zm8 0v2h3v3h2V3h-5zM5 16H3v5h5v-2H5v-3zm14 3h-3v2h5v-5h-2v3z'/%3E%3C/svg%3E") center / contain no-repeat;
    margin: 0 !important;
  }

  .product-media .zdv-main-gallery .wd-gallery-btn:after,
  .product-media .zdv-main-gallery .woocommerce-product-gallery__trigger:after {
    display: none !important;
  }
}
/* حذف مربع اضافی زیر آیکن بزرگنمایی */

.product-media .zdv-main-gallery .wd-gallery-btn:after,
.product-media .zdv-main-gallery .woocommerce-product-gallery__trigger:after,
.product-media .zdv-main-gallery .wd-gallery-btn i,
.product-media .zdv-main-gallery .woocommerce-product-gallery__trigger i {
    display: none !important;
    content: none !important;
}
/* حذف اجزای پیشفرض دکمه بزرگنمایی وودمارت */

.product-media .zdv-main-gallery .wd-action-icon,
.product-media .zdv-main-gallery .wd-action-text {
    display: none !important;
}

.product-media .zdv-main-gallery .woodmart-show-product-gallery {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
}
/* حذف دکمه بزرگنمایی اضافه وودمارت */

.product-media .zdv-main-gallery .product-additional-galleries,
.product-media .zdv-main-gallery .wd-show-product-gallery-wrap,
.product-media .zdv-main-gallery .woodmart-show-product-gallery {
    display: none !important;
}
/* ===== Hover Zoom Pro ===== */

.product-media .zdv-main-gallery .woocommerce-product-gallery__image,
.product-media .zdv-main-gallery .wd-carousel-item {
    overflow: hidden;
    border-radius: 24px;
}

.product-media .zdv-main-gallery .woocommerce-product-gallery__image img,
.product-media .zdv-main-gallery .wd-carousel-item img {
    transition:
        transform .65s cubic-bezier(.22,.61,.36,1),
        filter .45s ease;
    transform: scale(1);
    will-change: transform;
}

/* هاور */

.product-media .zdv-main-gallery .woocommerce-product-gallery__image:hover img,
.product-media .zdv-main-gallery .wd-carousel-item:hover img {
    transform: scale(1.12);
}

/* کمی شارپ تر هنگام هاور */

.product-media .zdv-main-gallery .woocommerce-product-gallery__image:hover img {
    filter: contrast(1.03);
}


/* =========================================================
   09. Product specs
   ========================================================= */

/* ==================================================
   V.06.4 | Specs V2.3 - Final Grid System
   Shortcode: [zd_specs_grouped]
================================================== */

.zfd-product-specs-v2,
.zfd-product-specs-v2 *{
  box-sizing:border-box;
}

.zfd-product-specs-v2{
  width:100%;
  direction:rtl;
}

.zfd-product-specs-v2 .zd-specs-v2{
  width:100%;
  padding:20px 26px 22px;
  border:1px solid #DDE7F2;
  border-radius:22px;
  background:#F8FAFD;
  box-shadow:0 10px 26px rgba(15,23,42,.035);
}

/* Header */
.zfd-product-specs-v2 .zd-specs-v2__head{
  padding-bottom:12px;
  margin-bottom:16px;
  border-bottom:2px dotted #D7E2EE;
}

.zfd-product-specs-v2 .zd-specs-v2__head-right{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:14px;
  flex-wrap:wrap;
}

.zfd-product-specs-v2 .zd-specs-v2__title{
  margin:0;
  color:#2F6FD6 !important;
  font-size:18px;
  font-weight:950;
  line-height:1.4;
}

.zfd-product-specs-v2 .zd-specs-v2__note{
  margin:0;
  padding:5px 12px;
  border-radius:9px;
  background:#E8F0FA;
  color:#52739A;
  font-size:11px;
  font-weight:700;
  line-height:1.6;
}

/* Panels */
.zfd-product-specs-v2 .zd-specs-v2__panel,
.zfd-product-specs-v2 .zd-specs-v2__sub-panel{
  display:none;
}

.zfd-product-specs-v2 .zd-specs-v2__panel.is-active,
.zfd-product-specs-v2 .zd-specs-v2__sub-panel.is-active{
  display:block;
}

/* Shared buttons */
.zfd-product-specs-v2 .zd-specs-v2__main-tab,
.zfd-product-specs-v2 .zd-specs-v2__sub-tab,
.zfd-product-specs-v2 .zd-specs-v2__single-package-label{
  min-height:42px;
  padding:9px 14px;
  border:1px solid #BFD0E4;
  border-radius:12px;
  background:#fff;
  color:#25364A;
  font-size:13px;
  font-weight:900;
  line-height:1.4;
  text-align:center;
  cursor:pointer;
  box-shadow:0 3px 8px rgba(15,23,42,.035);
  transition:all .16s ease;
}

.zfd-product-specs-v2 .zd-specs-v2__main-tab:hover,
.zfd-product-specs-v2 .zd-specs-v2__sub-tab:hover{
  background:#EEF5FF;
  border-color:#93B7E0;
}

.zfd-product-specs-v2 .zd-specs-v2__main-tab.is-active,
.zfd-product-specs-v2 .zd-specs-v2__sub-tab.is-active,
.zfd-product-specs-v2 .zd-specs-v2__single-package-label{
  background:#2F6FD6;
  border-color:#2F6FD6;
  color:#fff;
  box-shadow:0 10px 20px rgba(47,111,214,.16);
}

/* Product area: right buttons + 3-column specs */
.zfd-product-specs-v2 .zd-specs-v2__product-area{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:34px;
  align-items:center;
  padding-bottom:16px;
  margin-bottom:18px;
  border-bottom:2px dotted #D7E2EE;
}

.zfd-product-specs-v2 .zd-specs-v2__product-tabs-col{
  display:flex;
  align-items:center;
  justify-content:flex-start;
}

.zfd-product-specs-v2 .zd-specs-v2__product-tabs-col .zd-specs-v2__main-tabs{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(105px,1fr));
  gap:10px;
  width:100%;
  max-width:250px;
}

.zfd-product-specs-v2 .zd-specs-v2__product-tabs-col .zd-specs-v2__main-tab{
  width:100%;
}

.zfd-product-specs-v2 .zd-specs-v2__single-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px 10px;
}

.zfd-product-specs-v2 .zd-specs-v2__single-grid .zd-specs-v2__card{
  height:50px;
  padding:8px 14px;
  border:1px solid #DDE7F2;
  border-radius:14px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  overflow:hidden;
}

/* Bulk area: right package buttons + 3-column content */
.zfd-product-specs-v2 .zd-specs-v2__bulk-area{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:34px;
  align-items:center;
  min-height:145px;
}

.zfd-product-specs-v2 .zd-specs-v2__bulk-tabs-col{
  display:flex;
  align-items:center;
  justify-content:flex-start;
}

.zfd-product-specs-v2 .zd-specs-v2__sub-tabs{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  width:100%;
  max-width:180px;
}

.zfd-product-specs-v2 .zd-specs-v2__sub-tab,
.zfd-product-specs-v2 .zd-specs-v2__single-package-label{
  width:100%;
  max-width:180px;
}

.zfd-product-specs-v2 .zd-specs-v2__bulk-content-col{
  min-width:0;
}

.zfd-product-specs-v2 .zd-specs-v2__info-wrap{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  align-items:stretch;
}

/* Info cards */
.zfd-product-specs-v2 .zd-specs-v2__info-card{
  min-height:132px;
  padding:0;
  border:1px solid #CFE0F2;
  border-radius:16px;
  background:#fff;
  color:#25364A;
  box-shadow:0 8px 18px rgba(15,23,42,.045);
  overflow:hidden;
}

.zfd-product-specs-v2 .zd-specs-v2__info-title{
  margin:0;
  padding:10px 14px;
  border-bottom:1px solid #DCE8F5;
  background:#EAF3FF;
  color:#2F6FD6;
  font-size:14px;
  font-weight:950;
  line-height:1.5;
  text-align:right;
}

.zfd-product-specs-v2 .zd-specs-v2__info-list{
  display:block;
  padding:8px 14px 10px;
}

.zfd-product-specs-v2 .zd-specs-v2__info-list .zd-specs-v2__card{
  min-height:28px;
  padding:4px 0;
  border:0;
  border-bottom:1px dashed #E3ECF6;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.zfd-product-specs-v2 .zd-specs-v2__info-list .zd-specs-v2__card:last-child{
  border-bottom:0;
}

/* Placeholder cards */
.zfd-product-specs-v2 .zd-specs-v2__placeholder{
  min-height:132px;
  border:1px dashed #BED1E7;
  border-radius:16px;
  background:rgba(234,243,255,.55);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px 18px;
  color:#51677F;
  font-size:13px;
  font-weight:700;
  line-height:2;
  text-align:right;
}

.zfd-product-specs-v2 .zd-specs-v2__placeholder-inner{
  max-width:100%;
}

.zfd-product-specs-v2 .zd-specs-v2__placeholder-inner p{
  margin:0;
}

/* 0 real cards: full width */
.zfd-product-specs-v2 .zd-specs-v2__placeholder--empty{
  grid-column:1 / -1;
}

/* 1 real card: placeholder fills 2 remaining columns */
.zfd-product-specs-v2 .zd-specs-v2__placeholder--one{
  grid-column:span 2;
}

/* 2 real cards: placeholder fills third column */
.zfd-product-specs-v2 .zd-specs-v2__placeholder--two{
  grid-column:span 1;
}

/* Text */
.zfd-product-specs-v2 .zd-specs-v2__label{
  flex:0 0 auto;
  color:#8AA3C0;
  font-size:12px;
  font-weight:850;
  line-height:1.6;
  white-space:nowrap;
}

.zfd-product-specs-v2 .zd-specs-v2__value-wrap{
  min-width:0;
  display:flex;
  align-items:baseline;
  gap:4px;
}

.zfd-product-specs-v2 .zd-specs-v2__value{
  color:#2A3340;
  font-size:14px;
  font-weight:950;
  line-height:1.6;
  white-space:nowrap;
}

.zfd-product-specs-v2 .zd-specs-v2__unit{
  color:#6F8196;
  font-size:11px;
  font-weight:750;
}

.zfd-product-specs-v2 .zd-specs-v2__info-card .zd-specs-v2__label{
  color:#6F8196;
  font-size:11.5px;
  font-weight:800;
}

.zfd-product-specs-v2 .zd-specs-v2__info-card .zd-specs-v2__value{
  color:#1F2D3D;
  font-size:13px;
}

.zfd-product-specs-v2 .zd-specs-v2__info-card .zd-specs-v2__unit{
  color:#1F2D3D;
  font-size:10.5px;
}

/* Height control */
.zfd-product-specs-v2 .zd-specs-v2__panels{
  min-height:300px;
}

/* Tablet */
@media (max-width:1024px){
  .zfd-product-specs-v2 .zd-specs-v2{
    padding:18px 16px;
  }

  .zfd-product-specs-v2 .zd-specs-v2__product-area,
  .zfd-product-specs-v2 .zd-specs-v2__bulk-area{
    grid-template-columns:1fr;
    gap:16px;
  }

  .zfd-product-specs-v2 .zd-specs-v2__product-tabs-col .zd-specs-v2__main-tabs{
    max-width:none;
  }

  .zfd-product-specs-v2 .zd-specs-v2__sub-tabs{
    max-width:none;
    grid-template-columns:repeat(auto-fit,minmax(110px,1fr));
  }

  .zfd-product-specs-v2 .zd-specs-v2__sub-tab,
  .zfd-product-specs-v2 .zd-specs-v2__single-package-label{
    max-width:none;
  }

  .zfd-product-specs-v2 .zd-specs-v2__single-grid,
  .zfd-product-specs-v2 .zd-specs-v2__info-wrap{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .zfd-product-specs-v2 .zd-specs-v2__placeholder--empty,
  .zfd-product-specs-v2 .zd-specs-v2__placeholder--one,
  .zfd-product-specs-v2 .zd-specs-v2__placeholder--two{
    grid-column:1 / -1;
  }

  .zfd-product-specs-v2 .zd-specs-v2__panels{
    min-height:auto;
  }
}

/* Mobile */
@media (max-width:767px){
  .zfd-product-specs-v2 .zd-specs-v2{
    padding:16px 14px;
    border-radius:18px;
  }

  .zfd-product-specs-v2 .zd-specs-v2__head-right{
    display:block;
  }

  .zfd-product-specs-v2 .zd-specs-v2__note{
    display:inline-block;
    margin-top:6px;
  }

  .zfd-product-specs-v2 .zd-specs-v2__single-grid,
  .zfd-product-specs-v2 .zd-specs-v2__info-wrap,
  .zfd-product-specs-v2 .zd-specs-v2__product-tabs-col .zd-specs-v2__main-tabs,
  .zfd-product-specs-v2 .zd-specs-v2__sub-tabs{
    grid-template-columns:1fr;
  }

  .zfd-product-specs-v2 .zd-specs-v2__placeholder{
    min-height: 86px;
    padding: 10px 12px;
    border-radius: 14px;
    font-size: 12px;
    line-height: 1.75;
  }

  .zfd-product-specs-v2 .zd-specs-v2__placeholder-inner p{
    margin: 0;
  }

}
.zfd-specs-title{
    display:flex;
    align-items:center;
    gap:10px;
    color:#0b7d2b;
    font-weight:800;
}

.zfd-specs-title i{
    color:#4b8df8;
    font-size:22px;
    flex-shrink:0;
}
.zfd-product-specs-v2 .zd-specs-v2__title{
  display:flex;
  align-items:center;
  gap:8px;
}

.zfd-product-specs-v2 .zd-specs-v2__title-icon{
  width:26px;
  height:26px;
  border-radius:999px;
  background:#E8F0FA;
  color:#2F6FD6;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
/* =========================================================
   V.12 - Mobile Specs Header & Separator
   فقط محصول تست 2815
   ========================================================= */

@media (max-width: 767px) {

    /* ======================================
       1. وسط‌چین شدن عنوان و بج زیر عنوان
       ====================================== */

    .zdv-product-layout .zd-specs-v2__head-right {
        width: 100% !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;

        text-align: center !important;
    }

    .zdv-product-layout .zd-specs-v2__title {
        width: 100% !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        margin-right: auto !important;
        margin-left: auto !important;

        text-align: center !important;
    }

    .zdv-product-layout .zd-specs-v2__note {
        width: fit-content !important;
        max-width: 100% !important;

        margin-right: auto !important;
        margin-left: auto !important;

        text-align: center !important;
    }


    /* ======================================
       2. خط نقطه‌چین بعد از دکمه‌های مدل
       ====================================== */

    .zdv-product-layout .zd-specs-v2__product-tabs-col {
        position: relative !important;

        width: 100% !important;

        margin-bottom: 16px !important;
        padding-bottom: 16px !important;
    }

    .zdv-product-layout
    .zd-specs-v2__product-tabs-col::after {
        content: "" !important;

        position: absolute !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;

        width: 100% !important;

        border-bottom: 2px dotted #d8e6f8 !important;
    }
}


/* =========================================================
   10. Product intro
   ========================================================= */

  /*====================================================
  Product Intro Container
  ====================================================*/
  
  .product-intro-content{
  
    max-width:88%;
  
    margin-left:auto;
  
    margin-right:40px;
  
    padding:36px 42px;
  
    background:linear-gradient(180deg,#fbfefc 0%,#f3faf6 100%);
  
    border:1px solid #e3efe8;
  
    border-radius:26px;
  
    box-shadow:0 10px 30px rgba(40,90,60,.05);
  
  }
  .product-intro-content p{
  
    font-size:16px;
  
    line-height:2.35;
  
    color:#4e5c55;
  
    text-align:justify;
  
    margin:0 0 22px;
  
  }
  .product-intro-content .zdv-buying-points{
  
    margin-top:34px;
  
    margin-bottom:34px;
  
  }
  .zdv-buying-points{
  
    background:#ffffff;
  
    border:1px solid #ddebe3;
  
    box-shadow:none;
  
  }
  /*====================================================
  ZDV - Product Intro Main Container
  ====================================================*/
  
  .zdv-intro-card{
    max-width: 88% !important;
    margin: 0 0 48px auto !important;
    padding: 38px 42px !important;
    background: linear-gradient(180deg,#fbfefc 0%,#ffffff 100%) !important;
    border: 1px solid #e3efe8 !important;
    border-radius: 28px !important;
    box-shadow: 0 8px 28px rgba(40,90,60,.05) !important;
    overflow: hidden;
  }
  
  /* Title */
  .zdv-intro-card .zdv-content-title h2{
    margin: 0 0 20px !important;
    color: #18492f !important;
    font-weight: 800 !important;
  }
  
  /* WooCommerce intro text */
  .zdv-intro-card .zdv-intro-top h3{
    margin: 0 0 22px !important;
    color: #18492f !important;
    font-weight: 800 !important;
    line-height: 1.7 !important;
  }
  
  .zdv-intro-card .zdv-intro-top p,
  .zdv-intro-card .zdv-intro-bottom__content p{
    margin: 0 0 22px !important;
    font-size: 16px !important;
    line-height: 2.35 !important;
    color: #4f5f57 !important;
    text-align: justify !important;
    text-justify: inter-word;
  }
  
  /* Buying points inside intro */
  .zdv-intro-card .zdv-buying-points{
    margin: 38px 0 !important;
    background: #ffffff !important;
    border: 1px solid #ddebe3 !important;
    border-radius: 22px !important;
    box-shadow: none !important;
  }
  
  /* Intro bottom */
  .zdv-intro-card .zdv-intro-bottom{
    margin-top: 34px !important;
  }
  
  .zdv-intro-card .zdv-intro-bottom__content h3{
    margin: 0 0 18px !important;
    color: #18492f !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.8 !important;
  }
  
  /* Mobile */
  @media (max-width: 767px){
    .zdv-intro-card{
        max-width: 100% !important;
        margin: 0 0 36px !important;
        padding: 24px !important;
        border-radius: 20px !important;
    }
  }



/* =========================================================
   11. Similar products
   ========================================================= */

  /*====================================================
  V.08 - Similar Products Showcase Final
====================================================*/

.zdv-similar-box{
    position: relative;
    margin: 0 0 34px;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    overflow: visible;
    direction: rtl;
}

.zdv-similar-box__head{
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 18px;
    padding: 10px 14px;
    background: #edf9f2;
    border: 1px solid #d8efe2;
    border-radius: 16px;
}

.zdv-similar-box__head h3{
    margin: 0;
    color: #185333;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.5;
}

.zdv-similar-box__stage{
    position: relative;
    height: 255px;
    perspective: 1000px;
    overflow: visible;
}

.zdv-similar-item{
    position: absolute;
    top: 0;
    left: 50%;
    width: 210px;
    height: 245px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(-50%) translateY(20px) scale(.7);
    transition: transform .45s ease, opacity .45s ease, filter .45s ease;
    transform-style: preserve-3d;
}

.zdv-similar-item.is-active{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    z-index: 4;
    filter: none;
    transform: translateX(-50%) translateY(0) scale(1) rotateY(0deg);
}

.zdv-similar-item.is-prev{
    opacity: .38;
    visibility: visible;
    pointer-events: auto;
    z-index: 2;
    filter: grayscale(1) blur(.2px);
    transform: translateX(-112%) translateY(34px) scale(.8) rotateY(-10deg);
}

.zdv-similar-item.is-next{
    opacity: .38;
    visibility: visible;
    pointer-events: auto;
    z-index: 2;
    filter: grayscale(1) blur(.2px);
    transform: translateX(12%) translateY(34px) scale(.8) rotateY(10deg);
}

.zdv-similar-item.is-hidden{
    opacity: 0;
    visibility: hidden;
    z-index: 1;
    pointer-events: none;
}

.zdv-similar-item__image{
    width: 190px;
    height: 190px;
    border-radius: 24px;
    background: #fff;
    border: 1px solid #edf3ef;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: box-shadow .25s ease;
}

.zdv-similar-item.is-active .zdv-similar-item__image{
    box-shadow: 0 22px 45px rgba(30,90,55,.16);
}

.zdv-similar-item__image img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.zdv-similar-item__title{
    margin-top: 12px;
    max-width: 200px;
    color: #22362c;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.65;
    text-align: center;
}

.zdv-similar-item.is-prev .zdv-similar-item__title,
.zdv-similar-item.is-next .zdv-similar-item__title{
    opacity: 0;
}

.zdv-similar-box__dots{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: -10px;
    padding-bottom: 6px;
}

.zdv-similar-box__dots button{
    width: 7px;
    height: 7px;
    min-width: 7px;
    padding: 0;
    border: none;
    border-radius: 999px;
    background: #d8e5dd;
    cursor: pointer;
    transition: .2s ease;
}

.zdv-similar-box__dots button.is-active{
    width: 20px;
    background: #23b777;
}




/* =========================================================
   12. FAQ
   ========================================================= */

/*====================================================
  V.08 - Product FAQ Accordion
====================================================*/

.zdv-faq-accordion{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.zdv-faq-item{
    border:1px solid #e4ece7;
    border-radius:16px;
    background:#fff;
    overflow:hidden;
}

.zdv-faq-question{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 16px;
    background:#fff;
    border:0;
    cursor:pointer;
    text-align:right;
    color:#24382d;
    font-size:14px;
    font-weight:800;
    line-height:1.8;
}

.zdv-faq-question i{
    width:18px;
    height:18px;
    min-width:18px;
    border-radius:50%;
    background:#eaf7ef;
    position:relative;
}

.zdv-faq-question i::before,
.zdv-faq-question i::after{
    content:"";
    position:absolute;
    background:#1f8f4e;
    border-radius:2px;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
}

.zdv-faq-question i::before{
    width:9px;
    height:2px;
}

.zdv-faq-question i::after{
    width:2px;
    height:9px;
    transition:.2s ease;
}

.zdv-faq-item.is-open .zdv-faq-question i::after{
    opacity:0;
}

.zdv-faq-answer{
    max-height:0;
    overflow:hidden;
    transition:max-height .25s ease;
}

.zdv-faq-answer p{
    margin:0;
    padding:0 16px 16px;
    color:#5b6962;
    font-size:13.5px;
    line-height:2;
    text-align:justify;
}
/* ==========================
   FAQ Hover
========================== */

.zdv-faq-question{
    transition: all .25s ease;
}

.zdv-faq-question:hover{
    background:#eefaf4;
    border-color:#bfe7d2;
    color:#146b45;
}

.zdv-faq-question:hover span{
    color:#146b45;
}

.zdv-faq-question:hover i{
    color:#19b16f;
}

/* سوال باز شده */

.zdv-faq-item.is-open .zdv-faq-question{
    background:#e8f8ef;
    border-color:#9dd9bc;
    color:#145c3d;
    box-shadow:0 4px 14px rgba(33,181,115,.08);
}
.zdv-faq-question:hover::before{
    color:#19b16f;
}

.zdv-faq-item.is-open .zdv-faq-question::before{
    color:#19b16f;
}
/*====================================================
  V.08 - FAQ Interaction Polish
====================================================*/

.zdv-faq-question{
    transition:
        background .22s ease,
        border-color .22s ease,
        color .22s ease,
        box-shadow .22s ease;
}

.zdv-faq-question:hover{
    background: #eefaf4;
    color: #146b45;
}

.zdv-faq-question:hover span{
    color: #146b45;
}

.zdv-faq-question i{
    transition:
        background .22s ease,
        transform .22s ease;
}

.zdv-faq-question:hover i{
    background: #dff5e9;
}

/* حالت باز شده */
.zdv-faq-item.is-open{
    border-color: #bfe7d2;
    box-shadow: 0 8px 22px rgba(33,181,115,.08);
}

.zdv-faq-item.is-open .zdv-faq-question{
    background: #e8f8ef;
    color: #145c3d;
}

.zdv-faq-item.is-open .zdv-faq-question span{
    color: #145c3d;
}

/* آیکن + به حالت − */
.zdv-faq-item.is-open .zdv-faq-question i{
    background: #d8f2e4;
    transform: rotate(180deg);
}

.zdv-faq-item.is-open .zdv-faq-question i::after{
    opacity: 0;
}





@media (max-width: 767px){
    .zdv-faq-accordion{
        gap: 9px;
    }

    .zdv-faq-item{
        border-color: #dfeae6;
        background: #fbfefc;
    }

    .zdv-faq-question{
        min-height: 44px;
        padding: 10px 12px;
        background: #f7fbf9;
        color: #22382d;
        font-size: 12.5px;
        line-height: 1.95;
        gap: 9px;
    }

    .zdv-faq-question span{
        display: block;
        min-width: 0;
        line-height: 1.95;
    }

    .zdv-faq-question i{
        width: 17px;
        height: 17px;
        min-width: 17px;
        background: #e6f6ee;
    }

    .zdv-faq-question:hover,
    .zdv-faq-item.is-open .zdv-faq-question{
        background: #eefaf5;
        color: #145c3d;
    }
}
/* =========================================================
   13. Customer QA base
   ========================================================= */

  /*====================================================
  Customer Q&A - Section Title
  ====================================================*/
  
  .product-customer-qa .elementor-heading-title,
  .zdv-customer-qa-title .elementor-heading-title{
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px;
    color: #185333;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.6;
  }
  
  .product-customer-qa .elementor-heading-title::before,
  .zdv-customer-qa-title .elementor-heading-title::before{
    content: "";
    width: 12px;
    height: 12px;
    min-width: 12px;
    border-radius: 50%;
    background: #22c58b;
    box-shadow: 0 0 0 5px rgba(34,197,139,.12);
  }



  /*====================================================
  V.08 - Customer Q&A Cards Compact 2 Columns
====================================================*/

.product-customer-qa{
    direction: rtl;
}

.zdv-customer-qa{
    margin-top: 14px;
}

.zdv-customer-qa__grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

/* Card */
.zdv-customer-qa-card{
    position: relative;
    padding: 16px 18px 16px;
    background: linear-gradient(180deg,#ffffff 0%,#fbfdfc 100%);
    border: 1px solid #e3ebe7;
    border-radius: 20px;
    box-shadow: 0 8px 24px rgba(36,72,52,.045);
    overflow: hidden;
    transition: .22s ease;
}

.zdv-customer-qa-card:hover{
    transform: translateY(-2px);
    box-shadow: 0 14px 32px rgba(30,80,55,.075);
}

.zdv-customer-qa-card::before{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 4px;
    background: #22b573;
}


/* Question */
.zdv-customer-qa-card__question{
    position: relative;
    margin-bottom: 10px;
    padding: 12px 14px;
    padding-right: 14px;
    border-right: 3px solid #22b573;
    background: #f3faff;
    border: 1px solid #edf3ef;
    border-radius: 15px;
    color: #2f4337;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.9;
    text-align: right;
}

.zdv-customer-qa-card__question::before{
    content: none;
    position: absolute;
    top: -9px;
    right: 12px;
    color: #22b573;
    font-size: 24px;
    line-height: 1;
}

/* Answer */
.zdv-customer-qa-card__answer{
    padding: 12px 14px;
    background: #eef8fa;
    border: 1px solid #d8efe2;
    border-radius: 15px;
}

.zdv-customer-qa-card__answer strong{
    display: block;
    margin-bottom: 6px;
    color: #185333;
    font-size: 13px;
    font-weight: 900;
}

.zdv-customer-qa-card__answer p{
    margin: 0;
    color: #4f5f57;
    font-size: 13px;
    line-height: 1.9;
    text-align: justify;
}

/* Hidden cards */
.zdv-customer-qa-card.is-hidden{
    display: none;
}

/* Toggle button */
.zdv-customer-qa__more{
    margin: 18px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 20px;
    border: 1px solid #cfe9da;
    border-radius: 999px;
    background: #e8f8ef;
    color: #158a55;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    transition: .2s ease;
}

.zdv-customer-qa__more:hover{
    background: #20b573;
    border-color: #20b573;
    color: #fff;
}

/* Badge color variations */
.zdv-customer-qa-card.badge-verified .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-verified .zdv-customer-qa-card__head em{
    background: #e8f8ef;
    color: #158a55;
}

.zdv-customer-qa-card.badge-producer .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-producer .zdv-customer-qa-card__head em{
    background: #eef6ff;
    color: #2563eb;
}

.zdv-customer-qa-card.badge-bulk .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-bulk .zdv-customer-qa-card__head em{
    background: #fff5e8;
    color: #c46a13;
}

.zdv-customer-qa-card.badge-pharmacy .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-pharmacy .zdv-customer-qa-card__head em{
    background: #f4efff;
    color: #7c3aed;
}

.zdv-customer-qa-card.badge-laboratory .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-laboratory .zdv-customer-qa-card__head em{
    background: #e8fbff;
    color: #0891b2;
}

.zdv-customer-qa-card.badge-factory .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-factory .zdv-customer-qa-card__head em{
    background: #eef2f6;
    color: #475569;
}

.zdv-customer-qa-card.badge-partner .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-partner .zdv-customer-qa-card__head em{
    background: #fff8db;
    color: #a16207;
}

.zdv-customer-qa-card.badge-customer .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-customer .zdv-customer-qa-card__head em{
    background: #e7f5ee;
    color: #0f6b43;
}
/* Customer Q&A - Final compact header + badges */

.zdv-customer-qa-card__head{
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.zdv-customer-qa-card__avatar{
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 900;
}

.zdv-customer-qa-card__meta{
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    overflow: hidden;
}

.zdv-customer-qa-card__meta strong{
    margin: 0;
    color: #24382d;
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap;
}

.zdv-customer-qa-card__sep{
    color: #c1cbc6;
    font-size: 13px;
    font-weight: 700;
}

.zdv-customer-qa-card__meta small{
    margin: 0;
    color: #75837b;
    font-size: 12px;
    line-height: 1.5;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zdv-customer-qa-card__head em{
    justify-self: end;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 4px 11px;
    border-radius: 999px;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

/* Badge colors */
.zdv-customer-qa-card.badge-verified .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-verified .zdv-customer-qa-card__head em{
    background: #e8f8ef;
    color: #158a55;
}

.zdv-customer-qa-card.badge-producer .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-producer .zdv-customer-qa-card__head em{
    background: #eef6ff;
    color: #2563eb;
}

.zdv-customer-qa-card.badge-bulk .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-bulk .zdv-customer-qa-card__head em{
    background: #fff5e8;
    color: #c46a13;
}

.zdv-customer-qa-card.badge-pharmacy .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-pharmacy .zdv-customer-qa-card__head em{
    background: #f4efff;
    color: #7c3aed;
}

.zdv-customer-qa-card.badge-factory .zdv-customer-qa-card__avatar,
.zdv-customer-qa-card.badge-factory .zdv-customer-qa-card__head em{
    background: #eef2f6;
    color: #475569;
}

/* Mobile */
@media(max-width: 767px){
    .zdv-customer-qa__grid{
        grid-template-columns: 1fr;
    }
}
/* Customer Q&A - Compact one-line header */


.zdv-customer-qa-card__head > div{
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.zdv-customer-qa-card__head strong{
    margin: 0;
    font-size: 14px;
    white-space: nowrap;
}

.zdv-customer-qa-card__head small{
    margin: 0;
    font-size: 12px;
    white-space: nowrap;
    color: #75837b;
}

.zdv-customer-qa-card__head em{
    margin: 0;
    white-space: nowrap;
}


/*====================================================


/* =========================================================
   14. Product reviews
   ========================================================= */

/*====================================================
  V.08 - Product Reviews Clean Version
  Scope: WooCommerce reviews + ZDV custom review form
====================================================*/

.zdv-product-reviews{
    direction: rtl;
    margin-top: 18px;
}

/*====================================================
  01) Summary Dashboard - 3 Cards
====================================================*/

.zdv-product-reviews__top{
    display: grid;
    grid-template-columns: 220px minmax(0,1fr) minmax(0,1fr);
    gap: 16px;
    margin-bottom: 22px;
}

.zdv-review-scorebox,
.zdv-review-breakdown,
.zdv-review-metrics{
    background: #fff;
    border: 1px solid #e1eee7;
    border-radius: 20px;
    box-shadow: 0 8px 22px rgba(36,72,52,.04);
}

.zdv-review-scorebox{
    padding: 22px 18px;
    background: #f4fbf7;
    text-align: center;
}

.zdv-review-scorebox strong{
    display: block;
    color: #185333;
    font-size: 36px;
    font-weight: 900;
    line-height: 1;
}

.zdv-review-stars,
.zdv-review-card__stars{
    color: #ffb400;
    letter-spacing: 2px;
    white-space: nowrap;
}

.zdv-review-stars{
    margin-top: 10px;
    font-size: 21px;
}

.zdv-review-scorebox span{
    display: block;
    margin-top: 8px;
    color: #6d7b74;
    font-size: 12.5px;
    line-height: 1.8;
}

.zdv-review-breakdown,
.zdv-review-metrics{
    padding: 18px 20px;
}

.zdv-review-bar,
.zdv-review-metric{
    display: grid;
    grid-template-columns: 92px 1fr 34px;
    align-items: center;
    gap: 10px;
}

.zdv-review-bar:not(:last-child),
.zdv-review-metric:not(:last-child){
    margin-bottom: 9px;
}

.zdv-review-bar span,
.zdv-review-metric span{
    color: #4f5f57;
    font-size: 12.5px;
    font-weight: 800;
    white-space: nowrap;
}

.zdv-review-bar div,
.zdv-review-metric div{
    height: 7px;
    background: #edf3ef;
    border-radius: 999px;
    overflow: hidden;
}

.zdv-review-bar i,
.zdv-review-metric i{
    display: block;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg,#22b573,#49d79a);
}

.zdv-review-bar em,
.zdv-review-metric em{
    color: #185333;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
    text-align: left;
}

/*====================================================
  02) Review Cards
====================================================*/

.zdv-product-reviews__grid{
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 16px;
}

.zdv-review-card{
    position: relative;
    padding: 16px 18px;
    background: linear-gradient(180deg,#fff 0%,#fbfdfc 100%);
    border: 1px solid #e3ebe7;
    border-radius: 20px;
    box-shadow: 0 8px 24px rgba(36,72,52,.045);
    overflow: hidden;
    transition: .22s ease;
}

.zdv-review-card:hover{
    transform: translateY(-2px);
    box-shadow: 0 14px 32px rgba(30,80,55,.075);
}

.zdv-review-card::before{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 4px;
    background: #22b573;
}

.zdv-review-card__head{
    display: grid;
    grid-template-columns: 40px minmax(0,1fr) auto;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.zdv-review-card__avatar{
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #e8f8ef;
    color: #158a55;
    font-size: 16px;
    font-weight: 900;
}

.zdv-review-card__meta{
    min-width: 0;
}

.zdv-review-card__meta strong{
    display: block;
    color: #24382d;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.5;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zdv-review-card__meta small{
    display: block;
    margin-top: 2px;
    color: #75837b;
    font-size: 12px;
}

.zdv-review-card__stars{
    font-size: 15px;
}

.zdv-review-card > p{
    margin: 0;
    color: #4f5f57;
    font-size: 13px;
    line-height: 1.95;
    text-align: justify;
}

/*====================================================
  03) Empty State + Toggle
====================================================*/

.zdv-product-reviews__empty{
    padding: 34px 28px;
    text-align: center;
    background: #fafdfb;
    border: 1px dashed #dbe9e1;
    border-radius: 20px;
}

.zdv-product-reviews__empty strong{
    display: block;
    color: #185333;
    font-size: 18px;
    font-weight: 900;
    margin-bottom: 8px;
}

.zdv-product-reviews__empty p{
    margin: 0;
    color: #6d7b74;
    font-size: 14px;
    line-height: 2;
}

.zdv-review-card.is-hidden{
    display: none;
}

.zdv-product-reviews__more{
    margin: 20px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 20px;
    border: 1px solid #cfe9da;
    border-radius: 999px;
    background: #e8f8ef;
    color: #158a55;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    transition: .2s ease;
}

.zdv-product-reviews__more:hover{
    background: #20b573;
    border-color: #20b573;
    color: #fff;
}

/*====================================================
  04) Review Form
====================================================*/

.zdv-review-form-wrap{
    margin-top: 24px;
}

.zdv-review-message{
    margin-bottom: 16px;
    padding: 14px 18px;
    border-radius: 16px;
    font-size: 13.5px;
    font-weight: 800;
}

.zdv-review-message.is-success{
    background: #e8f8ef;
    border: 1px solid #cfe9da;
    color: #158a55;
}

.zdv-review-message.is-error{
    background: #fff2f2;
    border: 1px solid #f1caca;
    color: #b42318;
}

.zdv-review-form{
    max-width: 900px;
    margin: 0 auto;
    padding: 22px 26px;
    background: linear-gradient(180deg,#ffffff 0%,#f9fdfa 100%);
    border: 1px solid #dceee5;
    border-radius: 24px;
    box-shadow: 0 10px 30px rgba(36,72,52,.05);
}

.zdv-review-form h3{
    margin: 0 0 6px;
    color: #185333;
    font-size: 20px;
    font-weight: 900;
    line-height: 1.6;
    text-align: center;
}

.zdv-review-form > p{
    margin: 0 0 22px;
    color: #6d7b74;
    font-size: 13.5px;
    line-height: 1.9;
    text-align: center;
}

.zdv-review-form__scores{
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
    margin-bottom: 16px;
}

.zdv-score-input{
    min-height: auto;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #fff;
    border: 1px solid #e3ebe7;
    border-radius: 18px;
}

.zdv-score-input > span{
    margin: 0;
    color: #24382d;
    font-size: 13.5px;
    font-weight: 900;
    white-space: nowrap;
}

.zdv-score-input > div{
    display: flex;
    justify-content: flex-end;
    gap: 7px;
    flex-wrap: nowrap;
}

.zdv-score-input label{
    margin: 0;
}

.zdv-score-input input{
    display: none;
}

.zdv-score-input b{
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #edf3ef;
    color: #547064;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    transition: .18s ease;
}

.zdv-score-input input:checked + b{
    background: #22b573;
    color: #fff;
    box-shadow: 0 6px 16px rgba(34,181,115,.22);
}

/* Overall stars */

.zdv-score-input--overall{
    background: #fffdf7;
    border-color: #f1dfb5;
}

.zdv-rating-input{
    display: inline-flex;
    flex-direction: row-reverse;
    gap: 4px;
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
}

.zdv-rating-input input{
    display: none;
}

.zdv-rating-input label{
    margin: 0;
    cursor: pointer;
    color: #d8c99c;
    font-size: 22px;
    line-height: 1;
    transition: .15s ease;
}

.zdv-rating-input input:checked ~ label,
.zdv-rating-input label:hover,
.zdv-rating-input label:hover ~ label{
    color: #ffb400;
}

/* Review text */

.zdv-review-form__field{
    margin-bottom: 14px;
}

.zdv-review-form__field label{
    display: block;
    margin-bottom: 8px;
    color: #24382d;
    font-size: 13.5px;
    font-weight: 900;
}

.zdv-review-form textarea{
    width: 100%;
    min-height: 115px;
    padding: 13px 15px;
    background: #fff;
    border: 1px solid #dfeae4;
    border-radius: 16px;
    color: #3f4f47;
    font-size: 13.5px;
    line-height: 2;
    resize: vertical;
    outline: none;
    transition: .2s ease;
}

.zdv-review-form textarea:focus{
    border-color: #22b573;
    box-shadow: 0 0 0 4px rgba(34,181,115,.09);
}

.zdv-review-form textarea::placeholder{
    color: #9aa8a0;
}

.zdv-review-form button[type="submit"]{
    float: none;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 18px 0 0 auto;
    min-width: 120px;
    min-height: 44px;
    padding: 10px 26px;
    border: 0;
    border-radius: 999px;
    background: #20b573;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    transition: .2s ease;
}

.zdv-review-form button[type="submit"]:hover{
    background: #15975f;
    transform: translateY(-1px);
}
.zdv-review-login-link{
    color:#158a55;
    font-weight:800;
    text-decoration:none;
    border-bottom:1px dashed rgba(21,138,85,.45);
    transition:.2s ease;
}

.zdv-review-login-link:hover{
    color:#20b573;
    border-bottom-color:#20b573;
}
.zdv-review-card__reply{
    margin-top:14px;
    padding:12px 14px;
    background:#eefaf4;
    border:1px solid #d8efe2;
    border-radius:15px;
}

.zdv-review-card__reply strong{
    display:block;
    margin-bottom:6px;
    color:#185333;
    font-size:13px;
    font-weight:900;
}

.zdv-review-card__reply p{
    margin:0;
    color:#4f5f57;
    font-size:13px;
    line-height:1.9;
}
/* Review card content polish */

.zdv-review-card > p{
    margin-top: 10px;
    padding: 12px 14px;
    background: #fbfefc;
    border: 1px solid #edf3ef;
    border-radius: 14px;
    color: #2f4337;
    font-size: 13.5px;
    font-weight: 600;
    line-height: 2;
    text-align: right;
}

/* Review admin reply - mobile chat style */

.zdv-review-card__reply{
    position: relative;
    width: 90%;
    margin-top: 14px;
    margin-right: auto;
    margin-left: 0;
    padding: 13px 15px;
    background: #eefaf4;
    border: 1px solid #d4eddf;
    border-radius: 15px 15px 15px 6px;
}

.zdv-review-card__reply::before{
    content: "";
    position: absolute;
    top: -14px;
    right: 18px;
    width: 1px;
    height: 14px;
    background: #cfe9da;
}

.zdv-review-card__reply::after{
    content: "";
    position: absolute;
    top: -1px;
    right: 18px;
    width: 18px;
    height: 1px;
    background: #cfe9da;
}

.zdv-review-card__reply strong{
    display: block;
    margin-bottom: 7px;
    color: #185333;
    font-size: 13.5px;
    font-weight: 900;
}

.zdv-review-card__reply p{
    margin: 0;
    color: #34483d;
    font-size: 13.5px;
    font-weight: 600;
    line-height: 2;
    text-align: right;
}
/*====================================================
  Product Review Form - Color & Interaction Polish
====================================================*/

/* Cleaner white form */
.zdv-review-form{
    background:#fff;
    border-color:#dfe8e3;
    box-shadow:0 12px 34px rgba(30,80,55,.035);
}

/* Score cards cleaner */
.zdv-score-input{
    background:#fff;
    border-color:#e3ebe7;
    transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.zdv-score-input:hover{
    border-color:#cfe9da;
    box-shadow:0 8px 22px rgba(36,72,52,.045);
}

/* Number buttons */
.zdv-score-input b{
    transition:
        background .18s ease,
        color .18s ease,
        transform .18s ease,
        box-shadow .18s ease;
}

.zdv-score-input label:hover b{
    background:#dff6ea;
    color:#148954;
    transform:scale(1.08);
}

/* Selected */
.zdv-score-input input:checked + b{
    background:#22b573;
    color:#fff;
    box-shadow:0 7px 18px rgba(34,181,115,.24);
}

/* Textarea */
.zdv-review-form textarea{
    background:#fff;
    border-color:#dfe8e3;
}

.zdv-review-form textarea:hover{
    border-color:#cfe9da;
}

.zdv-review-form textarea:focus{
    border-color:#22b573;
    box-shadow:0 0 0 4px rgba(34,181,115,.08);
}

/* Overall stars */
.zdv-score-input--overall{
    background:#fffdf8;
    border-color:#f1dfb5;
}

.zdv-rating-input label{
    transition:
        color .15s ease,
        transform .15s ease;
}

.zdv-rating-input label:hover{
    transform:scale(1.08);
}

.zdv-rating-input input:checked ~ label,
.zdv-rating-input label:hover,
.zdv-rating-input label:hover ~ label{
    color:#ffb400;
}

/* Submit CTA */
.zdv-review-form button[type="submit"]{
    box-shadow:0 8px 20px rgba(32,181,115,.18);
}

.zdv-review-form button[type="submit"]:hover{
    background:#15975f;
    transform:translateY(-2px);
    box-shadow:0 12px 26px rgba(32,181,115,.26);
}
/* Review score hover preview */

.zdv-score-input label.is-hovered b{
    background:#dff6ea;
    color:#148954;
    transform:scale(1.08);
}

.zdv-score-input input:checked + b{
    background:#22b573;
    color:#fff;
}
/* Mobile */
@media(max-width: 767px){
    .zdv-review-card__reply{
        width: 92%;
    }
}
/*====================================================
  05) Responsive
====================================================*/

@media(max-width: 1024px){
    .zdv-product-reviews__top{
        grid-template-columns: 1fr;
    }
}

@media(max-width: 767px){
    .zdv-product-reviews__grid,
    .zdv-review-form__scores{
        grid-template-columns: 1fr;
    }

    .zdv-review-scorebox{
        padding: 20px;
    }

    .zdv-review-metric{
        grid-template-columns: 110px 1fr 34px;
    }

    .zdv-review-form{
        padding: 16px 14px;
    }

    .zdv-review-form h3{
        font-size: 18px;
        line-height: 1.75;
        text-align: right;
    }

    .zdv-review-form > p{
        font-size: 12.5px;
        line-height: 1.9;
        text-align: right;
    }

    .zdv-review-form__scores{
        gap: 8px;
    }

    .zdv-score-input{
        min-height: 54px;
        padding: 9px 10px;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
    }

    .zdv-score-input > span{
        flex: 1 1 auto;
        min-width: 86px;
        font-size: 12.5px;
        white-space: nowrap;
    }

    .zdv-score-input > div{
        flex: 0 0 auto;
        justify-content: flex-end;
        gap: 5px;
    }

    .zdv-score-input b{
        width: 25px;
        height: 25px;
        font-size: 12px;
    }

    .zdv-rating-input label{
        font-size: 19px;
    }
}

/* =========================================================
   Customer Q&A — Final collapsed behavior
   Desktop: first two-column row with lower fade
   Mobile: first card with lower fade
   JS sets --zdv-qa-collapsed-height
   ========================================================= */
.zdv-customer-qa.has-qa-overflow .zdv-customer-qa__grid {
  position: relative;
  max-height: var(--zdv-qa-collapsed-height, 360px);
  overflow: hidden;
  transition: max-height .35s ease;
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 calc(100% - 88px), transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0%, #000 calc(100% - 88px), transparent 100%);
}
.zdv-customer-qa.is-expanded .zdv-customer-qa__grid {
  max-height: none;
  overflow: visible;
  -webkit-mask-image: none;
  mask-image: none;
}
.zdv-customer-qa .zdv-customer-qa__more {
  min-width: 170px;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 8px auto 0;
  padding: 8px 18px;
  border: 1px solid #b9ddca;
  border-radius: 12px;
  background: #f2fbf6;
  color: #176b3a;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 800;
  cursor: pointer;
}
.zdv-customer-qa:not(.has-qa-overflow) .zdv-customer-qa__more {
  display: none;
}
@media (max-width: 767px) {
  .zdv-customer-qa__grid {
    grid-template-columns: minmax(0,1fr) !important;
  }
  .zdv-customer-qa.has-qa-overflow .zdv-customer-qa__grid {
    -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 calc(100% - 52px), transparent 100%);
    mask-image: linear-gradient(to bottom, #000 0%, #000 calc(100% - 52px), transparent 100%);
  }

  .zdv-customer-qa.has-qa-overflow:not(.is-expanded) .zdv-customer-qa__grid{
    margin-bottom: 0;
  }

  .zdv-customer-qa.has-qa-overflow:not(.is-expanded) .zdv-customer-qa__more{
    margin-top: -18px;
    position: relative;
    z-index: 3;
  }
}

/* =========================================================
   V.12.1 - Mobile Similar Products Fix
   هدف:
   در موبایل فقط محصول فعال نمایش داده شود؛
   کارت‌های قبلی/بعدی مخفی شوند تا اسلایدر عرض صفحه را به‌هم نریزد.
   ========================================================= */

@media (max-width: 767px) {

    .zdv-product-layout .zdv-near-products {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .zdv-product-layout .zdv-similar-box {
        width: calc(100% - 24px) !important;
        max-width: 330px !important;

        margin: 0 auto 14px !important;
        padding: 12px 10px 14px !important;

        overflow: hidden !important;
        border-radius: 18px !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout .zdv-similar-box__head {
        margin: 0 0 12px !important;
        padding: 9px 12px !important;

        border-radius: 14px !important;
        text-align: center !important;
    }

    .zdv-product-layout .zdv-similar-box__head h3 {
        font-size: 14px !important;
        line-height: 1.7 !important;
    }

    .zdv-product-layout .zdv-similar-box__stage {
        position: relative !important;

        width: 100% !important;
        max-width: 100% !important;

        height: 258px !important;
        min-height: 258px !important;

        margin: 0 auto !important;
        padding: 0 !important;

        overflow: hidden !important;
        perspective: none !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout .zdv-similar-item {
        position: absolute !important;
        top: 0 !important;
        left: 50% !important;

        width: 100% !important;
        max-width: 220px !important;
        height: auto !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;

        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;

        filter: none !important;
        transform: translateX(-50%) translateY(10px) scale(.96) !important;

        transition:
            opacity .28s ease,
            transform .28s ease,
            visibility .28s ease !important;
    }

    .zdv-product-layout .zdv-similar-item.is-active {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;

        z-index: 3 !important;

        transform: translateX(-50%) translateY(0) scale(1) !important;
    }

    /* در موبایل کارت‌های کناری نمایش داده نشوند */
    .zdv-product-layout .zdv-similar-item.is-prev,
    .zdv-product-layout .zdv-similar-item.is-next,
    .zdv-product-layout .zdv-similar-item.is-hidden {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;

        z-index: 1 !important;

        filter: none !important;
        transform: translateX(-50%) translateY(10px) scale(.96) !important;
    }

    .zdv-product-layout .zdv-similar-item__image {
        width: 188px !important;
        height: 188px !important;

        border-radius: 22px !important;
        overflow: hidden !important;

        box-sizing: border-box !important;
    }

    .zdv-product-layout .zdv-similar-item__image img {
        width: 100% !important;
        height: 100% !important;

        object-fit: contain !important;
    }

    .zdv-product-layout .zdv-similar-item__title {
        max-width: 210px !important;

        margin-top: 10px !important;

        font-size: 13px !important;
        line-height: 1.7 !important;
        font-weight: 800 !important;

        text-align: center !important;
    }

    .zdv-product-layout .zdv-similar-box__dots {
        width: 100% !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        gap: 7px !important;

        margin: 8px 0 0 !important;
        padding: 0 !important;
    }

    .zdv-product-layout .zdv-similar-box__dots button {
        width: 7px !important;
        height: 7px !important;
        min-width: 7px !important;

        padding: 0 !important;
        border-radius: 999px !important;
    }

    .zdv-product-layout .zdv-similar-box__dots button.is-active {
        width: 19px !important;
    }
}

/* =========================================================
   V.12.8 - Mobile Polish Corrections — Final Pass
   Consolidated mobile fixes after HTML inspection
   ========================================================= */

@media (max-width: 767px) {

  /* Floating guide tabs: narrower mobile rail */
  .zdv-product-layout .zdv-guide-triggers,
  .zdv-product-layout .zdv-guide-triggers.is-compact,
  .zdv-guide-triggers,
  .zdv-guide-triggers.is-compact {
    width: 30px !important;
    max-width: 30px !important;
  }

  .zdv-product-layout .zdv-guide-trigger,
  .zdv-guide-triggers .zdv-guide-trigger,
  .zdv-guide-triggers.is-compact .zdv-guide-trigger {
    width: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .zdv-product-layout .zdv-guide-trigger__label,
  .zdv-guide-triggers .zdv-guide-trigger__label {
    font-size: 10.5px !important;
    line-height: 1.45 !important;
  }

  /* Hide only Woodmart transient selected-value text during reset/step transition.
     Important: do not hide th.label or td.value; hiding the whole active row caused a visible blank/flicker on mobile. */
  .zdv-product-layout .zdv-atc-shell.is-resetting .zdv-stage table.variations th.label .wd-attr-selected,
  .zdv-product-layout .zdv-atc-shell.is-transitioning .zdv-stage table.variations th.label .wd-attr-selected,
  .zdv-product-layout .zdv-stage.is-resetting table.variations th.label .wd-attr-selected,
  .zdv-product-layout .zdv-stage.is-transitioning table.variations th.label .wd-attr-selected,
  .zdv-summary .zdv-atc-shell.is-resetting .zdv-stage table.variations th.label .wd-attr-selected,
  .zdv-summary .zdv-atc-shell.is-transitioning .zdv-stage table.variations th.label .wd-attr-selected,
  .zdv-summary .zdv-stage.is-resetting table.variations th.label .wd-attr-selected,
  .zdv-summary .zdv-stage.is-transitioning table.variations th.label .wd-attr-selected {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: none !important;
  }

  /* Active variation label: keep selected value next to label */
  .zdv-product-layout .zdv-stage table.variations tr.is-active th.label,
  .zdv-summary .zdv-stage table.variations tr.is-active th.label {
    justify-content: flex-start !important;
  }

  .zdv-product-layout .zdv-stage table.variations tr.is-active th.label label,
  .zdv-summary .zdv-stage table.variations tr.is-active th.label label {
    width: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
  }

  .zdv-product-layout .zdv-stage table.variations tr.is-active th.label .wd-attr-selected,
  .zdv-summary .zdv-stage table.variations tr.is-active th.label .wd-attr-selected {
    margin-right: 4px !important;
    margin-left: 0 !important;
  }

  /* Out-of-stock: unit price and bulk/single rows become neutral/inactive */
  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap,
  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap,
  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap.is-single {
    background: #F8FAFC !important;
    border-color: #E2E8F0 !important;
    color: #8A95A3 !important;
    box-shadow: none !important;
    filter: grayscale(1) !important;
    opacity: .88 !important;
    pointer-events: none !important;
  }

  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap *,
  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap *,
  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-bulk-wrap.is-single * {
    color: #8A95A3 !important;
    text-shadow: none !important;
  }

  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .price,
  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .price *,
  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .woocommerce-Price-amount,
  .zdv-summary .zdv-purchase-box.is-outofstock .zdv-price-wrap .woocommerce-Price-currencySymbol {
    color: #6B7280 !important;
  }

  /* Product specs placeholder: compact on mobile */
  .zfd-product-specs-v2 .zd-specs-v2__placeholder {
    min-height: 88px !important;
    padding: 10px 12px !important;
  }

  .zfd-product-specs-v2 .zd-specs-v2__placeholder-inner {
    padding: 0 !important;
  }

  .zfd-product-specs-v2 .zd-specs-v2__placeholder-inner p {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.95 !important;
  }

  /* Product intro: stronger mobile override based on actual Elementor HTML */
  .product-content-wrapper,
  .zdv-product-layout .product-content-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    box-sizing: border-box !important;
  }

  .product-content-wrapper > .elementor-element,
  .product-content-wrapper > .elementor-element-269d549,
  .zdv-product-layout .product-content-wrapper > .elementor-element,
  .zdv-product-layout .product-content-wrapper > .elementor-element-269d549 {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    box-sizing: border-box !important;
  }

  .product-content-wrapper .zdv-intro-card,
  .zdv-product-layout .product-content-wrapper .zdv-intro-card {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 30px !important;
    padding: 19px 13px 21px !important;
    border-radius: 19px !important;
    box-sizing: border-box !important;
  }

  .product-content-wrapper .zdv-intro-title .elementor-heading-title,
  .product-content-wrapper .zdv-intro-card .zdv-content-title h2,
  .zdv-product-layout .zdv-intro-title .elementor-heading-title,
  .zdv-product-layout .zdv-intro-card .zdv-content-title h2 {
    margin-bottom: 9px !important;
    font-size: 20px !important;
    line-height: 1.55 !important;
  }

  .product-content-wrapper .zdv-intro-card .zdv-intro-top h3,
  .zdv-product-layout .zdv-intro-card .zdv-intro-top h3 {
    margin: 0 0 10px !important;
    font-size: 15px !important;
    line-height: 1.8 !important;
  }

  .product-content-wrapper .zdv-intro-card .zdv-intro-top p,
  .product-content-wrapper .zdv-intro-card .zdv-intro-bottom__content p,
  .zdv-product-layout .zdv-intro-card .zdv-intro-top p,
  .zdv-product-layout .zdv-intro-card .zdv-intro-bottom__content p {
    margin: 0 0 14px !important;
    font-size: 12.5px !important;
    line-height: 2 !important;
  }

  .product-content-wrapper .zdv-intro-card:not(.is-expanded) .zdv-intro-top,
  .zdv-product-layout .zdv-intro-card:not(.is-expanded) .zdv-intro-top {
    max-height: 12.3em !important;
  }

  .product-content-wrapper .zdv-intro-readmore-all,
  .zdv-product-layout .zdv-intro-readmore-all {
    min-height: 34px !important;
    margin-top: 13px !important;
    padding: 6px 17px !important;
    border-radius: 10px !important;
    background: #F8FAFC !important;
    border-color: #CBD5E1 !important;
    color: #334155 !important;
    box-shadow: none !important;
  }

  .product-content-wrapper .zdv-intro-readmore-all:hover,
  .product-content-wrapper .zdv-intro-readmore-all:focus,
  .zdv-product-layout .zdv-intro-readmore-all:hover,
  .zdv-product-layout .zdv-intro-readmore-all:focus {
    background: #F1F5F9 !important;
    border-color: #94A3B8 !important;
    color: #0F172A !important;
  }

  /* FAQ: better two-line questions and softer color */
  .zdv-faq-question {
    min-height: 46px !important;
    padding: 10px 12px !important;
    background: #FBFEFC !important;
    border-color: #E2EEE7 !important;
    color: #22382D !important;
    font-size: 12.5px !important;
    line-height: 1.95 !important;
  }

  .zdv-faq-question span {
    line-height: 1.95 !important;
  }

  .zdv-faq-question:hover,
  .zdv-faq-item.is-open .zdv-faq-question {
    background: #EFFAF5 !important;
    color: #145C3D !important;
  }

  /* Customer QA: place button closer to fade end */
  .zdv-customer-qa.has-qa-overflow:not(.is-expanded) .zdv-customer-qa__more {
    margin-top: -26px !important;
    position: relative !important;
    z-index: 4 !important;
  }

  /* Review form: fixed alignment for mobile rating circles */
  .zdv-review-form h3 {
    font-size: 16px !important;
    line-height: 1.7 !important;
    text-align: right !important;
  }

  .zdv-review-form__scores {
    gap: 9px !important;
  }

  .zdv-score-input {
    min-height: 54px !important;
    padding: 8px 10px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    direction: rtl !important;
  }

  .zdv-score-input > span {
    flex: 0 0 auto !important;
    width: 106px !important;
    min-width: 106px !important;
    max-width: 106px !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    white-space: nowrap !important;
    text-align: right !important;
  }

  .zdv-score-input > div {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 7px !important;
    direction: rtl !important;
    margin-right: auto !important;
    margin-left: 0 !important;
  }

  .zdv-score-input label {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    display: inline-flex !important;
  }

  .zdv-score-input b {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    font-size: 12px !important;
  }

  .zdv-rating-input {
    gap: 7px !important;
    margin-right: auto !important;
  }

  .zdv-rating-input label {
    font-size: 20px !important;
  }

  .zdv-review-form button[type="submit"] {
    margin: 18px auto 0 !important;
    align-self: center !important;
  }
}

@media (max-width: 374px) {
  .zdv-score-input {
    gap: 6px !important;
  }

  .zdv-score-input > span {
    width: 95px !important;
    min-width: 95px !important;
    max-width: 95px !important;
    font-size: 11.3px !important;
  }

  .zdv-score-input > div {
    gap: 5px !important;
  }

  .zdv-score-input label,
  .zdv-score-input b {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
  }
}

/* =========================================================
   V.12.5 - Mobile Intro Card Global Elementor Override
   Source issue: Elementor global CSS renders
   .elementor .product-content-wrapper .zdv-intro-card
   with width: calc(100% - 44px) and margin-left: 48px.
   This stronger selector fixes the mobile dead space.
   ========================================================= */
@media (max-width: 767px) {
  .elementor .zdv-product-layout .product-content-wrapper .zdv-intro-card,
  .elementor .zdv-product-layout .product-content-wrapper .zdv-intro-card.has-intro-overflow,
  .elementor .product-content-wrapper .zdv-intro-card.has-intro-overflow,
  .elementor .product-content-wrapper .zdv-intro-card {
    width: calc(100% - 26px) !important;
    max-width: calc(100% - 26px) !important;
    margin-left: 11px !important;
    margin-right: auto !important;
  }
}



/* =========================================================
   V.12.9 - Mobile Variation Stage Stability
   Fixes the brief Woodmart label/value flicker during restart/next/prev.
   Mobile must switch rows instantly; desktop animation remains unchanged.
   ========================================================= */
@media (max-width: 767px) {
  .zdv-product-layout .zdv-stage table.variations tr,
  .zdv-summary .zdv-stage table.variations tr {
    transition: none !important;
    transform: none !important;
  }

  .zdv-product-layout .zdv-stage table.variations tr:not(.is-active),
  .zdv-summary .zdv-stage table.variations tr:not(.is-active) {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .zdv-product-layout .zdv-stage table.variations tr.is-active,
  .zdv-summary .zdv-stage table.variations tr.is-active {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
  }

  .zdv-product-layout .zdv-stage.is-resetting table.variations th.label .wd-attr-selected,
  .zdv-product-layout .zdv-stage.is-transitioning table.variations th.label .wd-attr-selected,
  .zdv-product-layout .zdv-stage.is-zdv-mobile-switching table.variations th.label .wd-attr-selected,
  .zdv-summary .zdv-stage.is-resetting table.variations th.label .wd-attr-selected,
  .zdv-summary .zdv-stage.is-transitioning table.variations th.label .wd-attr-selected,
  .zdv-summary .zdv-stage.is-zdv-mobile-switching table.variations th.label .wd-attr-selected,
  .zdv-product-layout .zdv-stage table.variations th.label .wd-attr-selected.zdv-attr-suppress,
  .zdv-summary .zdv-stage table.variations th.label .wd-attr-selected.zdv-attr-suppress {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    max-width: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* =========================================================
   V.12.10 - Mobile Final Polish by Current Live CSS
   Scope: mobile only
   Notes: Applied on top of the user-edited live CSS file.
   ========================================================= */
@media (max-width: 767px) {

  /* ---------------------------------------------------------
     1) Purchase box: remove inner/extra shadows on mobile
     --------------------------------------------------------- */
  .zdv-product-layout .zdv-purchase-box,
  .zdv-summary .zdv-purchase-box,
  .zdv-product-layout .zdv-purchase-box .zdv-price-wrap,
  .zdv-product-layout .zdv-purchase-box .zdv-stock-wrap,
  .zdv-product-layout .zdv-purchase-box .zdv-bulk-wrap,
  .zdv-summary .zdv-purchase-box .zdv-price-wrap,
  .zdv-summary .zdv-purchase-box .zdv-stock-wrap,
  .zdv-summary .zdv-purchase-box .zdv-bulk-wrap {
    box-shadow: none !important;
  }

  /* Hide fixed/disabled quantity box, e.g. pack quantity 48 when it cannot be increased. */
  .zdv-product-layout .zdv-purchase-box.is-active .zdv-qty.is-disabled,
  .zdv-summary .zdv-purchase-box.is-active .zdv-qty.is-disabled,
  .zdv-product-layout .zdv-purchase-box.is-active .zdv-qty:has(input.qty[readonly]),
  .zdv-summary .zdv-purchase-box.is-active .zdv-qty:has(input.qty[readonly]),
  .zdv-product-layout .zdv-purchase-box.is-active .zdv-qty:has(input.qty:disabled),
  .zdv-summary .zdv-purchase-box.is-active .zdv-qty:has(input.qty:disabled),
  .zdv-product-layout .zdv-purchase-box.is-active .zdv-qty:has(.woopq-quantity-input-plus:disabled),
  .zdv-summary .zdv-purchase-box.is-active .zdv-qty:has(.woopq-quantity-input-plus:disabled),
  .zdv-product-layout .zdv-purchase-box.is-active .zdv-qty:has(.woopq-quantity-input-plus.disabled),
  .zdv-summary .zdv-purchase-box.is-active .zdv-qty:has(.woopq-quantity-input-plus.disabled) {
    display: none !important;
  }

  /* If quantity is hidden, keep submit button full-width and compact. */
  .zdv-product-layout .zdv-purchase-actions:has(.zdv-qty.is-disabled) .zdv-submit,
  .zdv-summary .zdv-purchase-actions:has(.zdv-qty.is-disabled) .zdv-submit,
  .zdv-product-layout .zdv-purchase-actions:has(.zdv-qty input.qty[readonly]) .zdv-submit,
  .zdv-summary .zdv-purchase-actions:has(.zdv-qty input.qty[readonly]) .zdv-submit,
  .zdv-product-layout .zdv-purchase-actions:has(.zdv-qty input.qty:disabled) .zdv-submit,
  .zdv-summary .zdv-purchase-actions:has(.zdv-qty input.qty:disabled) .zdv-submit {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* ---------------------------------------------------------
     2) Buying points: remove nested card borders on mobile
     --------------------------------------------------------- */
  .zdv-product-layout .zdv-intro-card .zdv-buying-points,
  .product-content-wrapper .zdv-intro-card .zdv-buying-points {
    padding: 14px 12px !important;
    background: #ffffff !important;
    border-radius: 18px !important;
  }

  .zdv-product-layout .zdv-intro-card .zdv-buying-point,
  .product-content-wrapper .zdv-intro-card .zdv-buying-point {
    padding: 14px 4px 16px !important;
    margin: 0 !important;

    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px dashed #D7E7DF !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .zdv-product-layout .zdv-intro-card .zdv-buying-point:last-child,
  .product-content-wrapper .zdv-intro-card .zdv-buying-point:last-child {
    border-bottom: 0 !important;
    padding-bottom: 4px !important;
  }

  .zdv-product-layout .zdv-intro-card .zdv-buying-point__content strong,
  .product-content-wrapper .zdv-intro-card .zdv-buying-point__content strong {
    font-size: 13px !important;
    line-height: 1.8 !important;
  }

  .zdv-product-layout .zdv-intro-card .zdv-buying-point__content p,
  .product-content-wrapper .zdv-intro-card .zdv-buying-point__content p {
    font-size: 12px !important;
    line-height: 2 !important;
  }

  /* ---------------------------------------------------------
     3) Unified read-more buttons: intro + customer Q&A
     --------------------------------------------------------- */
  .zdv-product-layout .zdv-intro-readmore-all,
  .product-content-wrapper .zdv-intro-readmore-all,
  .zdv-product-layout .zdv-customer-qa__more,
  .zdv-customer-qa .zdv-customer-qa__more {
    min-width: 142px !important;
    min-height: 38px !important;
    padding: 7px 18px !important;

    border: 1px solid #AFC9D8 !important;
    border-radius: 12px !important;
    background: linear-gradient(180deg, #F7FBFD 0%, #EEF7FA 100%) !important;
    color: #20556A !important;

    font-size: 11.5px !important;
    line-height: 1.5 !important;
    font-weight: 850 !important;

    box-shadow: 0 8px 18px rgba(32, 85, 106, .07) !important;
    transition:
      background-color .18s ease,
      border-color .18s ease,
      color .18s ease,
      box-shadow .18s ease,
      transform .16s ease !important;
  }

  .zdv-product-layout .zdv-intro-readmore-all:hover,
  .product-content-wrapper .zdv-intro-readmore-all:hover,
  .zdv-product-layout .zdv-customer-qa__more:hover,
  .zdv-customer-qa .zdv-customer-qa__more:hover,
  .zdv-product-layout .zdv-intro-readmore-all:focus,
  .product-content-wrapper .zdv-intro-readmore-all:focus,
  .zdv-product-layout .zdv-customer-qa__more:focus,
  .zdv-customer-qa .zdv-customer-qa__more:focus {
    background: linear-gradient(180deg, #EEF8FA 0%, #E3F1F5 100%) !important;
    border-color: #7EAABE !important;
    color: #123F50 !important;
    box-shadow: 0 10px 22px rgba(32, 85, 106, .10) !important;
    transform: translateY(-1px) !important;
  }

  /* ---------------------------------------------------------
     4) Similar products: compact, visually connected title
     --------------------------------------------------------- */
  .zdv-product-layout .zdv-similar-box {
    width: calc(100% - 24px) !important;
    max-width: 330px !important;
    margin: 0 auto 8px !important;
    padding: 12px 12px 10px !important;

    background: #FBFEFC !important;
    border: 1px solid #DDEFE6 !important;
    border-radius: 18px !important;
    box-shadow: 0 10px 22px rgba(30, 80, 55, .04) !important;
  }

  .zdv-product-layout .zdv-similar-box__head {
    margin: 0 0 8px !important;
    padding: 0 4px 9px !important;

    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px dashed #CEE8D9 !important;
    border-radius: 0 !important;
  }

  .zdv-product-layout .zdv-similar-box__head h3 {
    font-size: 13.5px !important;
    line-height: 1.7 !important;
    color: #185333 !important;
  }

  .zdv-product-layout .zdv-similar-box__stage {
    height: 230px !important;
    min-height: 230px !important;
  }

  .zdv-product-layout .zdv-similar-item__image {
    width: 172px !important;
    height: 172px !important;
    border-radius: 20px !important;
  }

  .zdv-product-layout .zdv-similar-item__title {
    margin-top: 8px !important;
    font-size: 12.5px !important;
    line-height: 1.65 !important;
  }

  .zdv-product-layout .zdv-similar-box__dots {
    margin-top: 3px !important;
    margin-bottom: 0 !important;
  }

  .zdv-product-layout .zdv-near-products + .zdv-uses-card,
  .zdv-product-layout .zdv-similar-widget + .zdv-uses-card {
    margin-top: 6px !important;
  }

  /* ---------------------------------------------------------
     5) Reviews: keep right content away from floating guide tabs
     --------------------------------------------------------- */
  .zdv-product-layout .zdv-review-breakdown,
  .zdv-product-layout .zdv-review-metrics,
  .zdv-product-reviews .zdv-review-breakdown,
  .zdv-product-reviews .zdv-review-metrics {
    padding-right: 28px !important;
    padding-left: 16px !important;
  }

  .zdv-product-layout .zdv-review-bar,
  .zdv-product-layout .zdv-review-metric,
  .zdv-product-reviews .zdv-review-bar,
  .zdv-product-reviews .zdv-review-metric {
    column-gap: 8px !important;
  }

  .zdv-product-layout .zdv-review-form > p,
  .zdv-product-reviews .zdv-review-form > p {
    padding-right: 18px !important;
    padding-left: 8px !important;
  }

  .zdv-product-layout .zdv-review-experience-field label,
  .zdv-product-layout .zdv-review-form__field label,
  .zdv-product-reviews .zdv-review-experience-field label,
  .zdv-product-reviews .zdv-review-form__field label {
    padding-right: 18px !important;
  }

  .zdv-product-layout .zdv-review-form textarea,
  .zdv-product-reviews .zdv-review-form textarea {
    padding-right: 18px !important;
    padding-left: 14px !important;
  }
}

/* =========================================================
   V.12.11 - Mobile Corrections After Live Test
   Base: user's current live CSS + previous mobile polish
   Scope: mobile only
   ========================================================= */
@media (max-width: 767px) {

  /* ---------------------------------------------------------
     1) Quantity 48: respect WPC hidden quantity state
     --------------------------------------------------------- */
  .zdv-product-layout .zdv-qty .quantity.hidden,
  .zdv-product-layout .zdv-qty .quantity.woopq-quantity-hidden,
  .zdv-product-layout .zdv-qty .woopq-quantity-hidden,
  .zdv-summary .zdv-qty .quantity.hidden,
  .zdv-summary .zdv-qty .quantity.woopq-quantity-hidden,
  .zdv-summary .zdv-qty .woopq-quantity-hidden {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  .zdv-product-layout .zdv-purchase-actions .zdv-qty:has(.quantity.hidden),
  .zdv-product-layout .zdv-purchase-actions .zdv-qty:has(.woopq-quantity-hidden),
  .zdv-summary .zdv-purchase-actions .zdv-qty:has(.quantity.hidden),
  .zdv-summary .zdv-purchase-actions .zdv-qty:has(.woopq-quantity-hidden) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  .zdv-product-layout .zdv-purchase-actions:has(.zdv-qty .quantity.hidden),
  .zdv-product-layout .zdv-purchase-actions:has(.zdv-qty .woopq-quantity-hidden),
  .zdv-summary .zdv-purchase-actions:has(.zdv-qty .quantity.hidden),
  .zdv-summary .zdv-purchase-actions:has(.zdv-qty .woopq-quantity-hidden) {
    gap: 0 !important;
  }

  .zdv-product-layout .zdv-purchase-actions:has(.zdv-qty .quantity.hidden) .zdv-submit,
  .zdv-product-layout .zdv-purchase-actions:has(.zdv-qty .woopq-quantity-hidden) .zdv-submit,
  .zdv-summary .zdv-purchase-actions:has(.zdv-qty .quantity.hidden) .zdv-submit,
  .zdv-summary .zdv-purchase-actions:has(.zdv-qty .woopq-quantity-hidden) .zdv-submit {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 0 !important;
  }

  /* ---------------------------------------------------------
     2) Buying points: remove nested cards, keep only dashed separators
     --------------------------------------------------------- */
  .zdv-product-layout .zdv-buying-points .zdv-buying-points__grid,
  .product-content-wrapper .zdv-buying-points .zdv-buying-points__grid {
    gap: 0 !important;
  }

  .zdv-product-layout .zdv-buying-points article.zdv-buying-point,
  .zdv-product-layout .zdv-buying-points .zdv-buying-points__grid > article.zdv-buying-point,
  .zdv-product-layout .zdv-intro-card .zdv-buying-points article.zdv-buying-point,
  .product-content-wrapper .zdv-buying-points article.zdv-buying-point,
  .product-content-wrapper .zdv-buying-points .zdv-buying-points__grid > article.zdv-buying-point,
  .product-content-wrapper .zdv-intro-card .zdv-buying-points article.zdv-buying-point {
    width: 100% !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 14px 2px 15px !important;

    background: transparent !important;
    background-image: none !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-left: 0 !important;
    border-bottom: 1px dashed #D4E7DD !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  .zdv-product-layout .zdv-buying-points article.zdv-buying-point:last-child,
  .zdv-product-layout .zdv-buying-points .zdv-buying-points__grid > article.zdv-buying-point:last-child,
  .product-content-wrapper .zdv-buying-points article.zdv-buying-point:last-child,
  .product-content-wrapper .zdv-buying-points .zdv-buying-points__grid > article.zdv-buying-point:last-child {
    border-bottom: 0 !important;
    padding-bottom: 4px !important;
  }

  .zdv-product-layout .zdv-buying-point__icon,
  .product-content-wrapper .zdv-buying-point__icon {
    box-shadow: none !important;
  }

  /* ---------------------------------------------------------
     3) Similar products: tighter rhythm and real slider header
     --------------------------------------------------------- */
  .zdv-product-layout .zdv-near-products,
  .zdv-product-layout .zdv-similar-widget,
  .elementor-widget.zdv-near-products,
  .elementor-widget.zdv-similar-widget {
    margin-top: 0 !important;
    margin-bottom: 6px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .zdv-product-layout .zdv-near-products .zdv-similar-box,
  .zdv-product-layout .zdv-similar-widget .zdv-similar-box,
  .elementor-widget.zdv-near-products .zdv-similar-box,
  .elementor-widget.zdv-similar-widget .zdv-similar-box,
  .zdv-product-layout .zdv-similar-box {
    width: calc(100% - 24px) !important;
    max-width: 318px !important;
    margin: 0 auto 4px !important;
    padding: 0 8px 4px !important;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  .zdv-product-layout .zdv-near-products .zdv-similar-box__head,
  .zdv-product-layout .zdv-similar-widget .zdv-similar-box__head,
  .elementor-widget.zdv-near-products .zdv-similar-box__head,
  .elementor-widget.zdv-similar-widget .zdv-similar-box__head,
  .zdv-product-layout .zdv-similar-box__head {
    width: 100% !important;
    margin: 0 0 4px !important;
    padding: 0 0 5px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px dashed #CFE6DA !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .zdv-product-layout .zdv-near-products .zdv-similar-box__head h3,
  .zdv-product-layout .zdv-similar-widget .zdv-similar-box__head h3,
  .elementor-widget.zdv-near-products .zdv-similar-box__head h3,
  .elementor-widget.zdv-similar-widget .zdv-similar-box__head h3,
  .zdv-product-layout .zdv-similar-box__head h3 {
    margin: 0 !important;
    color: #185333 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.6 !important;
  }

  .zdv-product-layout .zdv-near-products .zdv-similar-box__stage,
  .zdv-product-layout .zdv-similar-widget .zdv-similar-box__stage,
  .elementor-widget.zdv-near-products .zdv-similar-box__stage,
  .elementor-widget.zdv-similar-widget .zdv-similar-box__stage,
  .zdv-product-layout .zdv-similar-box__stage {
    height: 214px !important;
    min-height: 214px !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  .zdv-product-layout .zdv-near-products .zdv-similar-item__image,
  .zdv-product-layout .zdv-similar-widget .zdv-similar-item__image,
  .elementor-widget.zdv-near-products .zdv-similar-item__image,
  .elementor-widget.zdv-similar-widget .zdv-similar-item__image,
  .zdv-product-layout .zdv-similar-item__image {
    width: 164px !important;
    height: 164px !important;
    border-radius: 20px !important;
  }

  .zdv-product-layout .zdv-near-products .zdv-similar-item__title,
  .zdv-product-layout .zdv-similar-widget .zdv-similar-item__title,
  .elementor-widget.zdv-near-products .zdv-similar-item__title,
  .elementor-widget.zdv-similar-widget .zdv-similar-item__title,
  .zdv-product-layout .zdv-similar-item__title {
    margin-top: 6px !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
  }

  .zdv-product-layout .zdv-near-products .zdv-similar-box__dots,
  .zdv-product-layout .zdv-similar-widget .zdv-similar-box__dots,
  .elementor-widget.zdv-near-products .zdv-similar-box__dots,
  .elementor-widget.zdv-similar-widget .zdv-similar-box__dots,
  .zdv-product-layout .zdv-similar-box__dots {
    margin: -2px 0 0 !important;
    padding: 0 !important;
  }

  .zdv-product-layout .zdv-near-products + .zdv-uses-card,
  .zdv-product-layout .zdv-similar-widget + .zdv-uses-card,
  .zdv-product-layout .zdv-side-content > .zdv-uses-card {
    margin-top: 4px !important;
  }

  /* ---------------------------------------------------------
     4) Reviews summary boxes: more right padding away from guide tabs
     --------------------------------------------------------- */
  .zdv-product-layout .zdv-review-breakdown,
  .zdv-product-layout .zdv-review-metrics,
  .zdv-product-reviews .zdv-review-breakdown,
  .zdv-product-reviews .zdv-review-metrics {
    padding-right: 42px !important;
    padding-left: 14px !important;
  }

  .zdv-product-layout .zdv-review-bar,
  .zdv-product-layout .zdv-review-metric,
  .zdv-product-reviews .zdv-review-bar,
  .zdv-product-reviews .zdv-review-metric {
    grid-template-columns: 76px minmax(0, 1fr) 26px !important;
    column-gap: 8px !important;
  }
}

/* =========================================================
   V.12.8 - Semantic mobile content layout
   Purpose: make Product Content CSS shared by Separate Lid + No Separate Lid
   Requires classes on both Elementor layouts:
   .product-content-wrapper
   .zdv-content-main
   .zdv-intro-card
   .zdv-side-content
   .zdv-content-qa
   .zdv-content-reviews
   ========================================================= */
@media (max-width: 767px) {

  .zdv-product-layout .product-content-wrapper,
  .elementor .zdv-product-layout .product-content-wrapper {
    --width: 100% !important;
    --min-height: 0px !important;
    --flex-grow: 0 !important;
    --flex-shrink: 1 !important;

    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;
    box-sizing: border-box !important;
  }

  .zdv-product-layout .product-content-wrapper > .zdv-content-main,
  .zdv-product-layout .product-content-wrapper > .product-intro-section,
  .zdv-product-layout .product-content-wrapper > .zdv-side-content,
  .zdv-product-layout .product-content-wrapper > .product-intro-highlights,
  .zdv-product-layout .product-content-wrapper > .zdv-content-qa,
  .zdv-product-layout .product-content-wrapper > .product-customer-qa,
  .zdv-product-layout .product-content-wrapper > .zdv-content-reviews,
  .zdv-product-layout .product-content-wrapper > .product-reviews-section {
    --width: 100% !important;
    --min-height: 0px !important;
    --flex-grow: 0 !important;
    --flex-shrink: 1 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    flex: 0 0 auto !important;
    flex-basis: auto !important;
    align-self: stretch !important;

    position: relative !important;
    inset: auto !important;
    margin: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    transform: none !important;

    overflow: visible !important;
    box-sizing: border-box !important;
  }

  .zdv-product-layout .product-content-wrapper > .zdv-content-main,
  .zdv-product-layout .product-content-wrapper > .product-intro-section {
    order: 1 !important;
    gap: 14px !important;
  }

  .zdv-product-layout .product-content-wrapper > .zdv-side-content,
  .zdv-product-layout .product-content-wrapper > .product-intro-highlights {
    order: 2 !important;
  }

  .zdv-product-layout .product-content-wrapper > .zdv-content-qa,
  .zdv-product-layout .product-content-wrapper > .product-customer-qa {
    order: 3 !important;
  }

  .zdv-product-layout .product-content-wrapper > .zdv-content-reviews,
  .zdv-product-layout .product-content-wrapper > .product-reviews-section {
    order: 4 !important;
  }

  .zdv-product-layout .zdv-content-main,
  .zdv-product-layout .product-intro-section {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    gap: 14px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  .zdv-product-layout .zdv-content-main > .zdv-intro-card,
  .zdv-product-layout .product-intro-section > .zdv-intro-card,
  .zdv-product-layout .product-intro-section > .product-intro-content,
  .zdv-product-layout .zdv-content-main > .product-intro-content {
    order: 1 !important;
  }

  .zdv-product-layout .zdv-content-main > .zdv-side-content,
  .zdv-product-layout .product-intro-section > .zdv-side-content,
  .zdv-product-layout .zdv-content-main > .product-intro-highlights,
  .zdv-product-layout .product-intro-section > .product-intro-highlights {
    order: 2 !important;
  }

  .zdv-product-layout .zdv-intro-card,
  .elementor .zdv-product-layout .product-content-wrapper .zdv-intro-card,
  .elementor .zdv-product-layout .product-content-wrapper .zdv-intro-card.has-intro-overflow {
    --width: 100% !important;
    --min-height: 0px !important;

    width: calc(100% - 26px) !important;
    min-width: 0 !important;
    max-width: calc(100% - 26px) !important;

    height: auto !important;
    min-height: 0 !important;

    flex: 0 0 auto !important;
    align-self: center !important;

    margin-top: 0 !important;
    margin-right: auto !important;
    margin-bottom: 30px !important;
    margin-left: auto !important;

    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .zdv-product-layout .zdv-side-content,
  .zdv-product-layout .product-intro-highlights {
    --width: 100% !important;
    --min-height: 0px !important;
    --flex-grow: 0 !important;
    --flex-shrink: 1 !important;

    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    gap: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  .zdv-product-layout .zdv-side-content > .zdv-near-products,
  .zdv-product-layout .zdv-side-content > .zdv-uses-card,
  .zdv-product-layout .zdv-side-content > .zdv-benefits-card,
  .zdv-product-layout .zdv-side-content > .zdv-faq-card,
  .zdv-product-layout .product-intro-highlights > .zdv-near-products,
  .zdv-product-layout .product-intro-highlights > .product-uses-box,
  .zdv-product-layout .product-intro-highlights > .product-benefits-box,
  .zdv-product-layout .product-intro-highlights > .product-faq-box {
    --width: 100% !important;
    --min-height: 0px !important;
    --flex-grow: 0 !important;
    --flex-shrink: 1 !important;

    display: flex !important;
    flex-direction: column !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    flex: 0 0 auto !important;
    flex-basis: auto !important;
    align-self: stretch !important;

    position: relative !important;
    inset: auto !important;
    margin: 0 !important;
    transform: none !important;

    box-sizing: border-box !important;
  }

  .zdv-product-layout .zdv-near-products {
    order: 1 !important;
  }

  .zdv-product-layout .zdv-uses-card,
  .zdv-product-layout .product-uses-box {
    order: 2 !important;
  }

  .zdv-product-layout .zdv-benefits-card,
  .zdv-product-layout .product-benefits-box {
    order: 3 !important;
  }

  .zdv-product-layout .zdv-faq-card,
  .zdv-product-layout .product-faq-box {
    order: 4 !important;
  }

  .zdv-product-layout .zdv-content-qa,
  .zdv-product-layout .product-customer-qa,
  .zdv-product-layout .zdv-content-reviews,
  .zdv-product-layout .product-reviews-section {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }
}


/* =========================================================
   V.12.13 - Desktop Read More Buttons Polish
   Scope: desktop/tablet only
   هدف:
   1) اگر معرفی محصول واقعاً ادامه/overflow ندارد، دکمه نمایش بیشتر مخفی شود.
   2) دکمه‌های معرفی و پرسش‌های مشتریان در دسکتاپ هم استایل موبایل را بگیرند.
   ========================================================= */
@media (min-width: 768px) {

  /* Intro read-more must only appear when JS marks the card as overflowed. */
  .zdv-product-layout .zdv-intro-card:not(.has-intro-overflow) > .zdv-intro-readmore-all,
  .product-content-wrapper .zdv-intro-card:not(.has-intro-overflow) > .zdv-intro-readmore-all,
  .zdv-product-layout .zdv-intro-card:not(.has-intro-overflow) .zdv-intro-readmore-all,
  .product-content-wrapper .zdv-intro-card:not(.has-intro-overflow) .zdv-intro-readmore-all {
    display: none !important;
  }

  /* Unified desktop style: intro + customer Q&A buttons */
  .zdv-product-layout .zdv-intro-card.has-intro-overflow .zdv-intro-readmore-all,
  .product-content-wrapper .zdv-intro-card.has-intro-overflow .zdv-intro-readmore-all,
  .zdv-product-layout .zdv-customer-qa__more,
  .zdv-customer-qa .zdv-customer-qa__more {
    width: auto !important;
    min-width: 154px !important;
    min-height: 40px !important;

    align-items: center !important;
    justify-content: center !important;

    margin: 16px auto 0 !important;
    padding: 8px 22px !important;

    border: 1px solid #AFC9D8 !important;
    border-radius: 12px !important;
    background: linear-gradient(180deg, #F7FBFD 0%, #EEF7FA 100%) !important;
    color: #20556A !important;

    font-size: 12px !important;
    line-height: 1.5 !important;
    font-weight: 850 !important;

    box-shadow: 0 8px 18px rgba(32, 85, 106, .07) !important;
    cursor: pointer !important;

    transition:
      background-color .18s ease,
      border-color .18s ease,
      color .18s ease,
      box-shadow .18s ease,
      transform .16s ease !important;
  }

  .zdv-product-layout .zdv-intro-card.has-intro-overflow .zdv-intro-readmore-all:hover,
  .product-content-wrapper .zdv-intro-card.has-intro-overflow .zdv-intro-readmore-all:hover,
  .zdv-product-layout .zdv-intro-card.has-intro-overflow .zdv-intro-readmore-all:focus,
  .product-content-wrapper .zdv-intro-card.has-intro-overflow .zdv-intro-readmore-all:focus,
  .zdv-product-layout .zdv-customer-qa__more:hover,
  .zdv-customer-qa .zdv-customer-qa__more:hover,
  .zdv-product-layout .zdv-customer-qa__more:focus,
  .zdv-customer-qa .zdv-customer-qa__more:focus {
    background: linear-gradient(180deg, #EEF8FA 0%, #E3F1F5 100%) !important;
    border-color: #7EAABE !important;
    color: #123F50 !important;
    box-shadow: 0 10px 22px rgba(32, 85, 106, .10) !important;
    transform: translateY(-1px) !important;
  }

  .zdv-product-layout .zdv-intro-card.has-intro-overflow .zdv-intro-readmore-all:active,
  .product-content-wrapper .zdv-intro-card.has-intro-overflow .zdv-intro-readmore-all:active,
  .zdv-product-layout .zdv-customer-qa__more:active,
  .zdv-customer-qa .zdv-customer-qa__more:active {
    transform: translateY(0) scale(.98) !important;
    box-shadow: 0 6px 14px rgba(32, 85, 106, .08) !important;
  }
}
@media (min-width: 768px) {
  .zdv-product-layout .zdv-intro-card .zdv-buying-points,
  .product-content-wrapper .zdv-intro-card .zdv-buying-points {
    padding: 10px !important;
  }
}