/* ── 商品詳情頁 */
.item-section { padding: 2.5rem 0 4rem; }

/* ── 麵包屑 */
.breadcrumb-nav { margin-bottom: 1.5rem; }
.breadcrumb { background: none; padding: 0; margin: 0; font-size: .875rem; color: var(--c-muted); }
.breadcrumb-item + .breadcrumb-item::before { color: var(--c-muted); }
.breadcrumb-item a { color: var(--c-primary); }
.breadcrumb-item.active { color: var(--c-text); font-weight: 600; }

/* ── 商品佈局 */
.item-layout { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media (min-width: 768px) {
  .item-layout { grid-template-columns: 1fr 1fr; gap: 3rem; align-items: start; }
}
@media (min-width: 992px) {
  .item-layout { grid-template-columns: 5fr 6fr; }
}

/* ── 商品圖片 */
.item-img-wrap {
  border-radius: var(--radius-lg); overflow: hidden;
  box-shadow: var(--shadow-md); background: var(--c-white); aspect-ratio: 4/3;
}
.item-img-wrap img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ── 商品資訊 */
.item-community-tag {
  display: inline-block; font-size: .8rem; font-weight: 700;
  color: var(--c-primary); background: rgba(59,93,80,.1);
  padding: .2rem .65rem; border-radius: var(--radius-pill); margin-bottom: .6rem; text-decoration: none;
}
.item-name { font-size: 1.6rem; font-weight: 700; color: var(--c-text); margin: 0 0 .4rem; line-height: 1.3; }
.item-price { font-size: 1.25rem; font-weight: 700; color: var(--c-primary); margin: 0 0 1.5rem; }
.item-price .price-label { font-weight: 500; color: var(--c-muted); font-size: 1rem; }
.item-price .price-amount { font-size: 1.5rem; }

/* ── 規格表 */
.item-detail-table {
  width: 100%; font-size: .9375rem; border-collapse: separate; border-spacing: 0; margin-bottom: 2rem;
}
.item-detail-table tr { border-bottom: 1px solid var(--c-border); }
.item-detail-table tr:last-child td,
.item-detail-table tr:last-child th { border-bottom: none; }
.item-detail-table th {
  width: 30%; padding: .75rem .5rem .75rem 0;
  font-weight: 700; color: var(--c-muted); vertical-align: top;
  white-space: nowrap; font-size: .875rem;
}
.item-detail-table td { padding: .75rem 0; color: var(--c-text); line-height: 1.65; }
.item-detail-table .detail-icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--c-accent); color: var(--c-primary);
  margin-right: .4rem; font-size: .8rem; flex-shrink: 0; vertical-align: middle;
}

/* ── 按鈕 */
.item-actions { display: flex; gap: .75rem; flex-wrap: wrap; }
.btn-back {
  display: inline-flex; align-items: center; gap: .4rem;
  padding: .6rem 1.4rem; background: transparent; color: var(--c-primary);
  border: 2px solid var(--c-primary); border-radius: var(--radius-pill);
  font-weight: 700; font-size: .9375rem; text-decoration: none; transition: all var(--trans);
}
.btn-back:hover { background: var(--c-primary); color: #fff; text-decoration: none; }
.btn-back:focus-visible { outline: 3px solid var(--c-focus); outline-offset: 2px; }

.btn-contact {
  display: inline-flex; align-items: center; gap: .4rem;
  padding: .6rem 1.6rem; background: var(--c-secondary-lt); color: var(--c-text);
  border: 2px solid #c9980d; border-radius: var(--radius-pill);
  font-weight: 700; font-size: .9375rem; text-decoration: none; transition: all var(--trans);
}
.btn-contact:hover { background: #e6ac18; color: var(--c-text); text-decoration: none; }
.btn-contact:focus-visible { outline: 3px solid var(--c-focus); outline-offset: 2px; }

/* ── 相關商品 */
.related-section { padding: 2.5rem 0 4rem; background: var(--c-white); }
.related-heading {
  font-size: 1.2rem; font-weight: 700; color: var(--c-text);
  margin-bottom: 1.5rem; padding-bottom: .5rem;
  border-bottom: 3px solid var(--c-secondary-lt); display: inline-block;
}
.related-card {
  background: var(--c-bg); border-radius: var(--radius-md);
  overflow: hidden; border: 1px solid var(--c-border);
  transition: box-shadow var(--trans), transform var(--trans);
  text-decoration: none; display: block; color: var(--c-text);
}
.related-card:hover {
  box-shadow: var(--shadow-md); transform: translateY(-2px); text-decoration: none; color: var(--c-text);
}
.related-card:focus-visible { outline: 3px solid var(--c-focus); outline-offset: 2px; }
.related-card-img { aspect-ratio: 4/3; overflow: hidden; background: var(--c-accent); }
.related-card-img img {
  width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease;
}
.related-card:hover .related-card-img img { transform: scale(1.05); }
.related-card-body { padding: .75rem; }
.related-card-name { font-size: .9rem; font-weight: 700; margin: 0 0 .2rem; }
.related-card-tag { font-size: .75rem; color: var(--c-primary); }
