/**
 * AZUMAYA 全特集共通スタイルシート (feature-common.css) - Refined Edition
 * 
 * 統一ルール:
 * 1. 404販売終了商品: サムネイル画像が薄いグレーベタ化 ＋「販売終了」バッジ ＋ クリック無効化
 * 2. 在庫切れ商品: サムネイル画像の中央に存在感のある「SOLD OUT」バッジ ＋ クリック維持
 */

/* ==========================================================================
   1. 404販売終了（非公開・ページなし）の統一スタイル
   ========================================================================== */

/* サムネイル画像専用ラッパー（幾何学的中心配置保証） */
.feature-thumb-wrap {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  line-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.feature-thumb-wrap img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

/* 「販売終了」バッジ本体（画像のど真ん中に堂々としたサイズで表示） */
.card-badge-vanished,
.stock-badge-vanished {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  background: rgba(255, 255, 255, 0.98) !important;
  color: #1a1a1a !important;
  font-family: -apple-system, BlinkMacSystemFont, "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  padding: 10px 24px !important;
  border-radius: 4px !important;
  border: 1.5px solid rgba(0, 0, 0, 0.35) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.22) !important;
  pointer-events: none !important;
  z-index: 25 !important;
  white-space: nowrap !important;
  text-align: center !important;
  line-height: 1.2 !important;
}

/* 404販売終了時の画像グレーベタ（HTML構造に依存せず100%確実に適用） */
.is-vanished img,
a.is-vanished img,
.lineup-item.is-vanished img,
.slide.is-vanished img {
  filter: grayscale(100%) opacity(0.35) !important;
  transition: filter 0.2s ease !important;
}

/* 404販売終了時のクリック完全無効化 */
.is-vanished,
a.is-vanished,
.is-vanished a {
  pointer-events: none !important;
  cursor: default !important;
}

/* 販売終了時の価格表示を半透明にして存在感を抑える */
.is-vanished .miniprice,
.is-vanished .price,
.is-vanished .price-row,
.is-vanished .sale-price {
  opacity: 0.4 !important;
}

/* ==========================================================================
   2. 在庫切れ (SOLD OUT) の統一スタイル（ユーザー提示画像に完全準拠）
   ========================================================================== */

/* 「SOLD OUT」コンテナ（画像の中心にピッタリ配置） */
.soldout-overlay {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 20 !important;
  pointer-events: none !important;
}

/* 「SOLD OUT」赤ベタ長方形バッジ（参考画像の存在感・サイズ感を完全再現） */
.soldout-badge,
.card-badge-soldout,
.stock-badge-soldout {
  background-color: #ba1a1a !important;
  color: #ffffff !important;
  font-family: -apple-system, BlinkMacSystemFont, "Noto Sans JP", "Outfit", "Arial Black", sans-serif !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  padding: 11px 28px !important;
  letter-spacing: 0.16em !important;
  border-radius: 3px !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.38) !important;
  display: inline-block !important;
  text-align: center !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

/* スマホ表示時の微調整（サムネイル幅に合わせたバランス設計） */
@media (max-width: 600px) {
  .card-badge-vanished,
  .stock-badge-vanished {
    font-size: 13.5px !important;
    padding: 7px 16px !important;
    letter-spacing: 0.08em !important;
  }
  .soldout-badge,
  .card-badge-soldout,
  .stock-badge-soldout {
    font-size: 14.5px !important;
    padding: 8px 18px !important;
    letter-spacing: 0.12em !important;
  }
}

/* 在庫切れ時は画像をわずかに暗くしてバッジを引き立たせる */
.is-soldout img,
a.is-soldout img,
.lineup-item.is-soldout img {
  filter: brightness(0.92);
}

/* 在庫切れ (SOLD OUT) 商品のアクセス維持（入荷お知らせ等のため全特集で100%クリック可能） */
#rattan-feature .lineup-item.is-soldout a,
#garden-summer-feature .lineup-item.is-soldout a,
#living-table-special .lineup-item.is-soldout a,
.product-card.is-soldout .product-link-wrapper,
.product-card.is-soldout a,
.recommend-card.is-soldout a,
.lineup-item.is-soldout a,
.lineup-item.is-soldout,
.is-soldout a,
a.is-soldout {
  pointer-events: auto !important;
  cursor: pointer !important;
}

/* 在庫切れ (SOLD OUT) 商品でも送料無料バッジは維持＆縦書き改行崩れ（送\n料\n無\n料）を全特集で100%防止 */
.is-soldout .free-shipping-badge,
.lineup-item.is-soldout .free-shipping-badge,
.product-card.is-soldout .free-shipping-badge,
.badge-col,
.free-shipping-badge {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* ==========================================================================
   旧式個別バッジ・オーバーレイの完全無効化（二重表記・ダブル表示の絶対防止）
   ========================================================================== */
.stock-overlay,
.stock-overlay__inner,
.stock-overlay__en,
.stock-overlay__ja,
.soldout-price-text,
.badge-nostock,
.badge-soldout,
.badge-vanished:not(.card-badge-vanished) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

