/* بورس‌طب | ظاهر عمومی و ریسپانسیو فروشگاه */
/* Hide the older custom duplicate; keep and style the single WooCommerce/builder section below. */
.single-product .boorsteb-related { display: none !important; }
.single-product .related.products:not(.up-sells) { clear: both; margin: 2.25rem 0; padding: clamp(1rem, 2.5vw, 1.75rem); border: 1px solid #e9e2fb; border-radius: 22px; background: linear-gradient(145deg, #fff 0%, #fcfaff 100%); box-shadow: 0 12px 34px rgba(63, 38, 123, .08); font-family: inherit; }
.single-product .related.products:not(.up-sells) > h2 { display: flex; align-items: center; gap: 12px; margin: 0 0 1.25rem; padding: 0 0 12px; border-bottom: 1px solid #eee9f8; color: #27213b; font-size: clamp(1.2rem, 2vw, 1.55rem); font-weight: 800; line-height: 1.7; }
.single-product .related.products:not(.up-sells) > h2::after { content: ""; height: 3px; width: 54px; margin-right: auto; border-radius: 4px; background: #7047ec; }
.single-product .related.products:not(.up-sells) .boorsteb-related-autoplay-control { display: flex; align-items: center; justify-content: center; min-height: 30px; margin: 0 0 8px auto; padding: 4px 11px; border: 1px solid #e7defb; border-radius: 999px; background: #fff; color: #5e43ca; font: inherit; font-size: 11px; font-weight: 700; cursor: pointer; }
.single-product .related.products:not(.up-sells) .boorsteb-related-autoplay-control:focus-visible { outline: 2px solid #7047ec; outline-offset: 2px; }
.single-product .related.products:not(.up-sells) ul.products { display: flex !important; flex-flow: row nowrap !important; direction: rtl; justify-content: flex-start; gap: 16px; margin: 0 !important; padding: 6px 0 12px !important; overflow-x: auto !important; overflow-y: hidden !important; overscroll-behavior-inline: contain; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.single-product .related.products:not(.up-sells) ul.products::-webkit-scrollbar { display: none; }
@media (prefers-reduced-motion: reduce) { .single-product .related.products:not(.up-sells) ul.products { scroll-behavior: auto; } }
.single-product .related.products:not(.up-sells) ul.products::before, .single-product .related.products:not(.up-sells) ul.products::after { content: none !important; display: none !important; }
.single-product .related.products:not(.up-sells) ul.products li.product { display: flex; flex: 0 0 calc((100% - 48px) / 4); flex-direction: column; float: none !important; width: calc((100% - 48px) / 4) !important; min-width: 0; height: 100%; margin: 0 !important; padding: 12px; overflow: hidden; border: 1px solid #eeeaf5; border-radius: 18px; background: #fff; box-shadow: 0 5px 16px rgba(38, 26, 68, .045); text-align: right; scroll-snap-align: start; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.single-product .related.products:not(.up-sells) ul.products li.product:hover { transform: translateY(-3px); border-color: #d9cdf9; box-shadow: 0 12px 24px rgba(63, 38, 123, .11); }
.single-product .related.products:not(.up-sells) ul.products li.product a.woocommerce-LoopProduct-link { display: flex; flex-direction: column; flex: 1 0 auto; color: inherit; text-decoration: none; }
.single-product .related.products:not(.up-sells) ul.products li.product a img { width: 100%; height: auto; aspect-ratio: 1 / 1; max-height: 230px; margin: 0 0 10px !important; border-radius: 13px; background: #fff; object-fit: contain; }
.single-product .related.products:not(.up-sells) ul.products li.product .woocommerce-loop-product__title { min-height: 3.4em; margin: 0 0 8px !important; color: #29243a; font-family: inherit; font-size: 14px; font-weight: 700; line-height: 1.8; }
.single-product .related.products:not(.up-sells) ul.products li.product .price { display: block; margin: 0 0 12px; color: #6550a7; font-family: inherit; font-size: 14px; font-weight: 800; line-height: 1.8; font-variant-numeric: tabular-nums; }
.single-product .related.products:not(.up-sells) ul.products li.product .price del { color: #9893a4; font-weight: 500; }
.single-product .related.products:not(.up-sells) ul.products li.product .price ins { color: #5e43ca; text-decoration: none; }
.single-product .related.products:not(.up-sells) ul.products li.product a.button, .single-product .related.products:not(.up-sells) ul.products li.product a.add_to_cart_button, .single-product .related.products:not(.up-sells) ul.products li.product a.product_type_variable { display: inline-flex; align-items: center; justify-content: center; align-self: flex-start; min-height: 40px; margin: auto 0 0 !important; padding: 9px 17px !important; border: 0 !important; border-radius: 999px !important; background: #7047ec !important; box-shadow: 0 5px 12px rgba(112, 71, 236, .2); color: #fff !important; font-family: inherit; font-size: 13px; font-weight: 700; line-height: 1.5; text-decoration: none; transition: background .2s ease, transform .2s ease, box-shadow .2s ease; }
.single-product .related.products:not(.up-sells) ul.products li.product a.button:hover, .single-product .related.products:not(.up-sells) ul.products li.product a.add_to_cart_button:hover, .single-product .related.products:not(.up-sells) ul.products li.product a.product_type_variable:hover { transform: translateY(-1px); background: #5b35d2 !important; box-shadow: 0 7px 15px rgba(91, 53, 210, .26); color: #fff !important; }
/* متغیرها: دکمه‌ها و سواچ‌ها در نمایشگرهای کوچک قابل لمس بمانند. */
.single-product .variations_form .variations td.value { min-width: 0; }
.single-product .variations_form .variable-items-wrapper { display: flex; flex-wrap: wrap; gap: 8px; }
.single-product .variations_form .variable-item, .single-product .variations_form .button-variable-item { min-height: 40px; }
/* Some site snippets generate a second button group for the same attribute. Keep the primary swatch UI and hide the duplicate. */
.single-product .variations_form .bt-variation-swatches + .bt-swatches-original + .bt-variation-buttons { display: none !important; }
@media (max-width: 767px) {
  .single-product .related.products:not(.up-sells) { margin: 1.35rem 0; padding: 13px; border-radius: 18px; }
  .single-product .related.products:not(.up-sells) > h2 { margin-bottom: 12px; padding-bottom: 9px; }
  .single-product .related.products:not(.up-sells) ul.products { gap: 10px; }
  .single-product .related.products:not(.up-sells) ul.products li.product { flex-basis: calc((100% - 10px) / 2.15); width: calc((100% - 10px) / 2.15) !important; }
  .single-product .related.products:not(.up-sells) ul.products li.product { padding: 9px; border-radius: 14px; }
  .single-product .related.products:not(.up-sells) ul.products li.product a img { margin-bottom: 7px !important; border-radius: 10px; }
  .single-product .related.products:not(.up-sells) ul.products li.product .woocommerce-loop-product__title { min-height: 3.2em; font-size: 12px; line-height: 1.75; }
  .single-product .related.products:not(.up-sells) ul.products li.product .price { font-size: 12px; }
  .single-product .related.products:not(.up-sells) ul.products li.product a.button, .single-product .related.products:not(.up-sells) ul.products li.product a.add_to_cart_button, .single-product .related.products:not(.up-sells) ul.products li.product a.product_type_variable { min-height: 36px; padding: 7px 12px !important; font-size: 11px; }
  .single-product .variations_form .variations { width: 100%; }
  .single-product .variations_form .variations tr { display: flex; flex-direction: column; align-items: stretch; gap: 6px; margin-bottom: 12px; }
  .single-product .variations_form .variations th, .single-product .variations_form .variations td { display: block; width: 100%; padding: 0; text-align: right; }
  .single-product .variations_form .variable-items-wrapper { gap: 6px; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .single-product .related.products:not(.up-sells) ul.products li.product { flex-basis: calc((100% - 32px) / 3); width: calc((100% - 32px) / 3) !important; }
}
