/* ========================================
   商品详情页增强样式
   ======================================== */

/* 1. 分类侧边栏样式（对齐原站 aside-multi-level-menu） */

/* 桌面端：加宽侧边栏至更美观的固定宽度，主内容自适应 */
@media (min-width: 992px) {
  .product-left-sidebar.col-lg-2 {
    flex: 0 0 240px;
    max-width: 240px;
    width: 240px;
    padding-right: 20px;
  }

  .product-main-content.col-lg-10 {
    flex: 0 0 calc(100% - 240px);
    max-width: calc(100% - 240px);
    width: calc(100% - 240px);
  }
}

.product-category-sidebar {
  background: #fff;
  border: none;
  border-radius: 0;
  padding: 0;
  margin-bottom: 20px;
  font-family: "PingFang-SC", "Lucida Grande", "Helvetica", "Arial", "微軟正黑體", sans-serif;
}

.category-sidebar-header {
  font-size: 16px;
  font-weight: 700;
  color: #333;
  padding: 8px 4px 12px;
  margin-bottom: 4px;
}

.category-breadcrumb-nav {
  border-bottom: none;
  margin-bottom: 4px;
}

/* 面包屑返回项：< 图标 + 文本 */
.category-back-link {
  display: flex;
  align-items: center;
  padding: 9px 4px;
  color: #333;
  text-decoration: none;
  transition: color 0.2s;
  font-size: 14px;
  line-height: 1.5;
}

.category-back-link:hover {
  color: #ff5353;
}

.category-back-link .aside-multi-level-menu__breadcrumb-block-arrow-wrapper {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  flex-shrink: 0;
}

.category-back-link i {
  font-size: 14px;
  color: #999;
}

.category-back-link:hover i {
  color: #ff5353;
}

/* 同级分类列表 */
.category-sibling-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* 子分类项：整体缩进对齐原站层级，多行文字保持缩进对齐 */
.category-sibling-item {
  padding: 11px 14px 11px 26px;
  color: #333;
  text-decoration: none;
  font-size: 14px;
  line-height: 1.5;
  transition: background-color 0.2s, color 0.2s;
  border-radius: 4px;
  display: block;
  word-break: break-word;
}

.category-sibling-item:hover {
  background-color: #f8f8f8;
  color: #ff5353;
}

/* 当前分类高亮：原站为浅灰底 + 主色文字 */
.category-sibling-item.active {
  background-color: #f4f4f4;
  color: #ff5353;
  font-weight: 500;
}



/* 2. 商品促销活动模块样式 */
.product-promotions {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  padding: 12px;
  margin-top: 16px;
}

.promotions-title {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #333;
}

.promotions-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.promotion-item {
  margin-bottom: 6px;
}

.promotion-item:last-child {
  margin-bottom: 0;
}

.promotion-link {
  display: flex;
  align-items: center;
  padding: 8px;
  text-decoration: none;
  transition: background-color 0.2s;
  border-radius: 4px;
}

.promotion-link:hover {
  background-color: #f5f5f5;
}

.promotion-tag {
  display: inline-block;
  padding: 2px 8px;
  background-color: #ff6b6b;
  color: #fff;
  font-size: 12px;
  border-radius: 3px;
  margin-right: 8px;
  flex-shrink: 0;
}

.promotion-text {
  color: #333;
  font-size: 13px;
  line-height: 1.4;
}

/* 3. SKU选择器优化样式 */
.product-info .variables-wrap {
  margin-bottom: 1.5rem;
}

.product-info .variable-group {
  margin-bottom: 1rem;
}

.product-info .variable-group > p {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 10px;
  color: #333;
}

.product-info .variable-group > p .text-secondary {
  font-weight: 400;
  color: #666;
}

.product-info .variable-info {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.product-info .variable-info > div {
  border: 1px solid #d0d0d0;
  border-radius: 3px;
  padding: 8px 16px;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s;
  background: #fff;
  color: #333;
  min-width: 60px;
  text-align: center;
}

.product-info .variable-info > div:hover:not(.disabled) {
  border-color: #ff5353;
  color: #ff5353;
}

.product-info .variable-info > div.selected {
  border-color: #ff5353;
  background-color: #fff;
  color: #ff5353;
}

.product-info .variable-info > div.disabled {
  opacity: 0.3;
  cursor: not-allowed;
  position: relative;
}

.product-info .variable-info > div.disabled::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 1px;
  background: #999;
  transform: translateY(-50%);
}

/* 带图片的规格选项 */
.product-info .variable-info > div.is-v-image {
  padding: 4px;
  min-width: 80px;
}

.product-info .variable-info > div.is-v-image .image {
  display: block;
  width: 60px;
  height: 60px;
  margin-bottom: 4px;
}

.product-info .variable-info > div.is-v-image .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2px;
}

/* 4. 响应式适配 */
@media (max-width: 991.98px) {
  .product-category-sidebar {
    display: none;
  }

  .product-promotions {
    margin-top: 12px;
  }

  .promotions-title {
    font-size: 13px;
  }

  .promotion-link {
    padding: 6px;
  }

  .promotion-tag {
    font-size: 11px;
    padding: 1px 6px;
  }

  .promotion-text {
    font-size: 12px;
  }
}

/* 5. 商品详情页整体布局调整 */
.page-product .product-container {
  padding-top: 20px;
}

.page-product .product-left-sidebar {
  padding-right: 15px;
}

@media (min-width: 992px) {
  .page-product .product-left-sidebar {
    padding-right: 20px;
  }
}

/* 6. 改进面包屑schema.org样式（保持原样式） */
.breadcrumb-wrap {
  background-color: #f6f6f6;
  margin-bottom: 20px;
}

.breadcrumb-wrap .breadcrumb {
  margin-bottom: 0;
  background: transparent;
  padding: 0.75rem 0;
}

.breadcrumb-wrap .breadcrumb-item + .breadcrumb-item::before {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

/* 7. 数量选择器样式优化 */
.product-info .quantity-wrap {
  max-width: 150px;
}

.product-info .quantity-wrap .btn {
  border-color: #ddd;
  background: #fff;
  color: #333;
  padding: 0.5rem 0.75rem;
}

.product-info .quantity-wrap .btn:hover:not(:disabled) {
  background-color: #f5f5f5;
  border-color: #111;
}

.product-info .quantity-wrap .form-control {
  border-color: #ddd;
  text-align: center;
  font-weight: 500;
}

/* 8. 购买按钮组优化 */
.product-info .add-cart-btns {
  display: flex;
  gap: 12px;
  margin-bottom: 1rem;
}

.product-info .add-cart-btns .btn {
  flex: 1;
  padding: 0.75rem 1.5rem;
  font-size: 15px;
  border-radius: 4px;
}

@media (max-width: 767.98px) {
  .product-info .add-cart-btns {
    flex-direction: column;
  }

  .product-info .add-cart-btns .btn {
    width: 100%;
  }
}

/* 9. 收藏按钮样式 */
.product-info .add-wishlist .btn {
  padding: 0.5rem 0;
  font-size: 14px;
  transition: all 0.2s;
}

.product-info .add-wishlist .btn:hover {
  color: #ff6b6b;
  transform: translateY(-1px);
}

.product-info .add-wishlist .bi-heart-fill {
  color: #ff6b6b;
}

/* 商品标题（对齐原站：20px 常规字重黑色） */
.product-info .product-name {
  font-size: 20px;
  font-weight: 400;
  color: #000;
  line-height: 1.4;
}

/* 10. 价格显示优化（对齐原站：原价删除线在上、现价大红字在下） */
.product-info .price-wrap {
  display: flex !important;
  flex-direction: column-reverse;
  align-items: flex-start !important;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #eee;
}

.product-info .new-price {
  color: #ff5353;
  font-weight: 700;
  margin-right: 0 !important;
}

.product-info .old-price {
  font-size: 1rem;
  color: #999;
  margin-bottom: 4px;
}

/* 11. 库存和SKU信息样式（原站右侧无此栏，隐藏，代码保留） */
.product-info .stock-and-sku {
  display: none;
}

.product-info .stock-and-sku > div {
  margin-bottom: 0.5rem;
  font-size: 14px;
}

.product-info .stock-and-sku > div:last-child {
  margin-bottom: 0;
}

.product-info .stock-and-sku .title {
  display: inline-block;
  min-width: 60px;
  color: #666;
}

/* 12. 图片区域优化 */
.product-image .product-img {
  position: relative;
  overflow: hidden;
  background: #f5f5f5;
  border: 1px solid #eee;
  border-radius: 4px;
}

.product-image .product-img img {
  display: block;
  width: 100%;
  height: auto;
}

/* 13. 缩略图列表优化 */
.product-image .product-left-thumb-wrap {
  margin-right: 10px;
}

.product-image .product-left-thumb-wrap .swiper-slide {
  cursor: pointer;
  border: 2px solid transparent;
  border-radius: 4px;
  overflow: hidden;
  transition: border-color 0.2s;
}

.product-image .product-left-thumb-wrap .swiper-slide:hover,
.product-image .product-left-thumb-wrap .swiper-slide.active {
  border-color: #111;
}

.product-image .product-left-thumb-wrap img {
  display: block;
  width: 100%;
  height: auto;
}

/* 14. 商品详情折叠区（对齐原站 collapse-group：付款與運送 / 品牌 / 商品特色 / 商品相關分類） */
.md-collapse-groups {
  margin-top: 16px;
}

.md-collapse-group {
  border-top: 1px solid #eee;
}

.md-collapse-groups .md-collapse-group:last-child {
  border-bottom: 1px solid #eee;
}

.md-collapse-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 0;
  color: #333;
  text-decoration: none;
  cursor: pointer;
}

.md-collapse-header:hover {
  color: #333;
  text-decoration: none;
}

.md-collapse-title {
  font-size: 15px;
  font-weight: 500;
}

.md-collapse-arrow {
  font-size: 14px;
  color: #999;
  transition: transform 0.25s ease;
}

.md-collapse-header[aria-expanded="true"] .md-collapse-arrow {
  transform: rotate(180deg);
}

.md-collapse-body {
  padding: 2px 0 16px;
  font-size: 14px;
  color: #333;
}

.md-collapse-subtitle {
  font-weight: 600;
  color: #333;
  margin-bottom: 6px;
}

.md-collapse-subtitle:not(:first-child) {
  margin-top: 14px;
}

.md-collapse-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.md-collapse-list > li {
  padding: 4px 0;
  color: #666;
  line-height: 1.5;
}

.md-collapse-link {
  color: #333;
  text-decoration: none;
  transition: color 0.2s;
}

.md-collapse-link:hover {
  color: #ff5353;
}

/* 商品特色：编号等键值行 */
.md-collapse-feature {
  list-style: none;
  padding: 0;
  margin: 0;
}

.md-collapse-feature > li {
  display: flex;
  padding: 4px 0;
  line-height: 1.5;
}

.md-collapse-feature-title {
  min-width: 84px;
  color: #999;
}

.md-collapse-feature-detail {
  color: #333;
  word-break: break-word;
}

/* 相关分类：一条路径内的分类用分隔符串联 */
.md-related-category {
  padding: 5px 0;
  line-height: 1.6;
}

.md-related-category .md-collapse-link + .md-collapse-link::before {
  content: "/";
  margin: 0 6px;
  color: #ccc;
}
