/* ==========================================================
   cart_preview.css
   カートホバープレビュー用スタイル
   ポップアップはbody直下に配置（#header の overflow:hidden 回避）
   ========================================================== */

/* ポップアップ枠（body直下、位置はJSで動的計算） */
.cart-preview-popup_ {
  position: absolute;
  width: 400px;
  background: #fff;
  border: 1px solid #ccc;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  z-index: 9999;
  display: none;
  font-family: "Meiryo", "MS PGothic", sans-serif;
  font-size: 13px;
  color: #333;
  line-height: 1.5;
  text-align: left;
}

/* ヘッダー */
.cart-preview-popup_ .cart-preview-header_ {
  padding: 8px 12px;
  background: #fff;
  border-bottom: 1px solid #ccc;
  font-weight: bold;
  font-size: 13px;
  color: #333;
}

/* 商品リスト領域 */
.cart-preview-popup_ .cart-preview-items_ {
  max-height: 320px;
  overflow-y: auto;
}

/* 商品行 */
.cart-preview-popup_ .cart-preview-item_ {
  padding: 10px 12px;
  border-bottom: 1px solid #e8e8e8;
}
.cart-preview-popup_ .cart-preview-item_:last-child {
  border-bottom: none;
}

/* 閲覧中ハイライト */
.cart-preview-popup_ .viewing_ {
  background: #fff3cd;
}

/* 商品名 */
.cart-preview-popup_ .cart-preview-item-name_ {
  font-size: 13px;
  font-weight: bold;
  color: #333;
  margin-bottom: 4px;
}

/* 「(閲覧中)」ラベル */
.cart-preview-popup_ .viewing-label_ {
  font-size: 11px;
  color: #e67e22;
  font-weight: normal;
  margin-left: 6px;
}

/* フリーカットサイズ情報（青枠） */
.cart-preview-popup_ .cart-preview-freecut_ {
  font-size: 11px;
  color: #333;
  margin-bottom: 4px;
  padding: 4px 8px;
  border: 1px solid #2c7bb5;
  background: #f4f9fd;
  display: inline-block;
}

/* 単価×数量＋合計＋削除 行 */
.cart-preview-popup_ .cart-preview-item-row2_ {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  font-size: 12px;
  color: #666;
  margin-top: 2px;
}

/* 数量エリア */
.cart-preview-popup_ .cart-preview-item-qty_ {
  flex: 1;
}

/* 合計＋削除エリア */
.cart-preview-popup_ .cart-preview-item-amt-area_ {
  display: flex;
  align-items: baseline;
  gap: 10px;
  white-space: nowrap;
}

/* 合計金額 */
.cart-preview-popup_ .cart-preview-item-amt_ {
  font-weight: bold;
  font-size: 13px;
  color: #333;
}

/* 0円メッセージ */
.cart-preview-popup_ .price-zero-msg_ {
  font-size: 11px;
  font-weight: normal;
  color: #333;
  line-height: 1.4;
}

/* 削除リンク（body直下のため #globalnav セレクタ不要、全スタイルをリセット） */
.cart-preview-popup_ .cart-preview-delete-link_,
.cart-preview-popup_ .cart-preview-delete-link_:hover,
.cart-preview-popup_ .cart-preview-delete-link_:visited {
  color: #c0392b;
  text-decoration: underline;
  font-size: 12px;
  cursor: pointer;
  display: inline;
  padding: 0;
  margin: 0;
  background: none;
  font-weight: normal;
  border: none;
  width: auto;
  height: auto;
  text-align: left;
}

/* フッター小計 */
.cart-preview-popup_ .cart-preview-footer_ {
  padding: 10px 12px;
  background: #fff;
  border-top: 1px solid #ccc;
  display: flex;
  justify-content: flex-end;
  align-items: baseline;
  gap: 12px;
  font-size: 13px;
}

/* 小計ラベル */
.cart-preview-popup_ .subtotal-label_ {
  color: #333;
  font-weight: bold;
}

/* 小計金額 */
.cart-preview-popup_ .subtotal-value_ {
  font-weight: bold;
  font-size: 15px;
  color: #333;
}

/* 空カートメッセージ */
.cart-preview-popup_ .cart-preview-empty_ {
  padding: 30px 12px;
  text-align: center;
  color: #999;
  font-size: 13px;
}
