﻿html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}
/* کادر صورتی اسلایدر */
.popular-slider {
    background-color: #fee9ed;
    border-radius: 1rem;
    padding: 1.5rem;
    overflow: visible;
}

    /* کارت: بدون عرض یا ارتفاع ثابت */
    .popular-slider .cards-row .card {
        box-sizing: border-box;
        padding: 0 !important;
        border: 1px solid #e5e5e5;
        border-radius: .5rem;
        overflow: visible !important;
        transition: transform .3s, box-shadow .3s;
        display: flex;
        flex-direction: column;
        /* اجازه می‌دهیم محتوا اندازه‌ی خودش را بگیرد */
        flex: 0 1 auto;
        width: auto !important;
        height: auto !important;
    }

        .popular-slider .cards-row .card:hover {
            transform: translateY(-4px);
            box-shadow: 0 4px 20px rgba(0,0,0,.1);
        }

    /* نسبت تصویر ۱:۱ با ابعاد خودکار */
    .popular-slider .card .ratio {
        --bs-aspect-ratio: 100%;
        box-sizing: border-box;
        margin: 0;
        padding: 0 !important;
        overflow: hidden;
        width: auto !important;
        height: auto !important;
    }

    /* تصویر: حجم کامل را بدون برش اشغال کند */
    .popular-slider .card-img-top {
        display: block;
        max-width: 100% !important;
        max-height: 100% !important;
        width: auto !important;
        height: auto !important;
        object-fit: contain !important;
        object-position: center !important;
        margin: 0 auto;
    }

    /* بدنه کارت (عنوان و قیمت): اندازه‌ی خودکار */
    .popular-slider .card-body {
        box-sizing: border-box;
        padding: 0.5rem !important;
        background-color: #fff;
        flex: 0 1 auto;
        width: auto !important;
        height: auto !important;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .popular-slider .card-title {
        margin-bottom: 0.5rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .popular-slider .card-body .mt-auto {
        margin-top: auto;
        padding-top: 0 !important;
        border-top: none !important;
    }

    /* فلش‌های اسلایدر */
    .popular-slider .carousel-control-prev,
    .popular-slider .carousel-control-next {
        width: 2.5rem;
        height: 2.5rem;
        top: 50%;
        transform: translateY(-50%);
    }

    .popular-slider .carousel-control-prev {
        left: -1rem;
    }

    .popular-slider .carousel-control-next {
        right: -1rem;
    }

    .popular-slider .carousel-control-prev-icon,
    .popular-slider .carousel-control-next-icon {
        background-color: rgba(0,0,0,.5);
        border-radius: 50%;
        background-size: 1.5rem 1.5rem;
    }
/* فقط از lg به بالا فول‌واید باشد */
@media (min-width: 992px) {
    .dropdown-fullwidth .dropdown-menu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: auto !important; /* بگذار محتوا خودش اندازه‌اش را مشخص کند */
        min-width: 100%; /* حداقل به اندازه‌ی li باشد */
    }
}
/* ========== Promo Banner Standard Size (16:9) ========== */
/* کانتینر بنر */
.promo-banner-wrapper {
    position: relative;
    display: inline-block; /* فقط به اندازهٔ تصویر پهنا دارد */
    background: transparent; /* حذف بک‌گراند اضافی */
    border-radius: 1rem;
    overflow: hidden;
}

    /* خودِ تصویر: هیچ مقیاسی نمی‌خورد */
    .promo-banner-wrapper img {
        display: block;
        width: auto;
        height: auto;
    }

    /* لایهٔ محتوا روی تصویر */
    .promo-banner-wrapper .promo-overlay {
        /* حذف background تاریک */
        background: transparent;
        /* بقیه بدون تغییر */
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 2rem;
        color: #fff; /* اگر متن سفید سخت خواناست، آن را به سیاه تغییر دهید */
    }
/* در فایل site.css یا هر فایل استایل مشترک */
/* ۱. هدر را به عرض کامل پنجره فشار بده */
header {
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    width: 100vw;
    box-sizing: border-box;
    z-index: 1000; /* در صورت نیاز هدر روی بقیه بماند */
}

    /* ۲. padding/margin صفر برای بچ‌های مستقیم هدر */
    header > .container-fluid,
    header > nav {
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: none !important;
    }

    /* ۳. اگر ناوبری شما wrap می‌کند */
    header nav.navbar {
        width: 100% !important;
        max-width: none !important;
    }
/* لایه‌ی کلی هدر */


/* گروه آیکون‌ها */
.header-icons {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
}

/* فاصله‌ی ۱۵٪ از کناره‌ها */
.header-icons--left {
    left: 15%;
}

.header-icons--right {
    right: 15%;
}

/* SearchBox در مرکز صفحه */
.header-search {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40%; /* دلخواه — می‌توانید کم و زیاد کنید */
    max-width: 600px;
}
@media (max-width: 768px) {
    .my-custom-class {
        font-size: 14px;
        width: 100%;
    }
}
.mobile-bottom-nav {
    position: fixed !important;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 45px; /* ارتفاع کمتر */
    background: #fff;
    box-shadow: 0 -1px 5px rgba(0,0,0,0.1);
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 9999;
}

.mobile-bottom-nav__item {
    flex: 1 1 auto; /* هر آیتم عرض مساوی بگیرد */
    min-width: 0; /* اجازه کوچک شدن آیتم */
    text-align: center;
    font-size: 8px; /* متن کوچک‌تر */
    color: #555;
    text-decoration: none;
    padding: 2px 0; /* padding کمتر */
    overflow: hidden; /* جلوگیری از بروز اسکرول */
}

    .mobile-bottom-nav__item i {
        display: block;
        font-size: 14px; /* آیکون کوچک‌تر */
        margin-bottom: 0px;
    }

/* حذف اسکرول افقی در خود navbar */
.mobile-bottom-nav::-webkit-scrollbar {
    display: none;
}

body {
    padding-bottom: 50px; /* فضای کافی برای navbar */
}

.footer {
    position: relative;
    padding-bottom: 80px; /* در صورت نیاز به فاصله‌ی کافی */
}

.enamad-seal {
    position: absolute;
    left: 1rem; /* فاصله از لبه‌ی چپ */
    bottom: 1rem; /* فاصله از لبه‌ی پایین */
    cursor: pointer;
}

    .enamad-seal img {
        max-height: 60px;
        display: block;
    }
/* اگر لازم است به جای #reviews-tab-pane 
   یک کلاس اختصاصی مثل .review-item تعریف کنید */
#reviews-tab-pane .review-item {
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid #ddd;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    align-items: flex-start; /* تصویر و متن بالانس باشد */
}

    /* سبک آواتار */
    #reviews-tab-pane .review-item .icon-shape {
        margin-inline-start: 0.5rem; /* در حالت عادی کمی فاصله از متن */
    }

    /* متن‌ها */
    #reviews-tab-pane .review-item .flex-grow-1 {
        margin-inline-start: 0.75rem;
    }

/* تغییر در موبایل */
@media (max-width: 576px) {
    /* مرکزچین کردن ستارگان */
    #reviews-tab-pane .review-item .d-flex[dir="ltr"] {
        justify-content: center !important;
        align-self: center !important;
        gap: .25rem; /* فاصله بین ستاره‌ها */
    }

    /* مرکزچین و فاصله بین دکمه‌ها */
    #reviews-tab-pane .review-item .d-flex.justify-content-end {
        justify-content: center !important;
        flex-wrap: wrap; /* اگر کم‌عرض شد، خط‌شکن */
        gap: 0.5rem; /* فاصله بین دکمه "مفید است" و "گزارش" */
        margin-top: 0.75rem; /* فاصله از متنِ بررسی */
    }

    /* اگر لازم شد اندازه دکمه‌ها رو کمی بزرگ‌تر کنیم */
    #reviews-tab-pane .review-item .btn-sm {
        padding: 0.4rem 0.75rem;
        font-size: 0.85rem;
    }
}
/* 1) همه‌ی tab-pane ها را همیشه نمایش بده */
.tab-pane {
      /* جلوی display:none بوت‌استرپ را بگیرد */
  visibility: visible !important; /* جلوی visibility:hidden را بگیرد */
  opacity: 1 !important;         /* جلوی opacity:0 (fade) را بگیرد */
  position: relative !important; /* اطمینان از موقعیت معمولی */
}

/* 2) transition های fade را غیرفعال کن */
.fade {
  transition: none !important;
}

/* 3) برای جداسازی و فاصله زیباتر */
#details-tab-pane {
  margin-bottom: 2rem;           /* فاصله‌ی پایین برای جدا کردن از نظرات */
}
#reviews-tab-pane {
  margin-top: 2rem;              /* اگر لازم است کمی فاصله بالایی هم بده */
}








