/* woocommerce.css
  - NILE風に寄せるための上書き（必要最小限）
  - 目的：
    1) 商品名/価格のタイポをNILE寄せ（薄いグレー・余白・字間）
    2) 数量UI（− 1 ＋）を四角枠に統一
    3) 「カートに追加」ボタンを四角枠（塗りなし）/フル幅/中央に
    4) レビュー等の不要要素は functions.php で除去（ここは見た目）
*/

/* ===== 共通（Woo全体の最低限） ===== */
.woocommerce .products{ margin:0; }
.woocommerce table.shop_table{ border-collapse: collapse; }
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{ padding: 12px; }

/* Wooページだけロゴが巨大化する事故を防止（確実に固定） */
body.woocommerce .brand-logo,
body.woocommerce-page .brand-logo{
  height: 40px !important;
  width: auto !important;
  max-height: 40px !important;
}

/* ===== PRODUCTSページ（page-products.php のカード） ===== */
.product-card .meta{ text-align: center; }
.product-card .meta .name{
  margin: 14px 0 0;
  font-weight: 500;
  letter-spacing: .06em;
}
.product-card .meta .lead{ margin: 6px 0 0; opacity: .82; }

/* ===== 商品詳細（single product） ===== */
body.single-product .woocommerce{
  color: #111;
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  letter-spacing: .02em;
}

/* 商品タイトル：NILE寄せ（やや細め・字間・中央） */
body.single-product .woocommerce div.product .product_title{
  font-size: clamp(22px, 2.4vw, 34px);
  line-height: 1.25;
  letter-spacing: .08em;
  font-weight: 500;
  text-align: left; /* NILEは左寄せ寄り。必要ならcenterへ */
  margin: 0 0 12px;
}

/* 価格：薄いグレー＋余白 */
body.single-product .woocommerce div.product p.price,
body.single-product .woocommerce div.product span.price{
  font-size: 18px;
  font-weight: 400;
  letter-spacing: .06em;
  color: rgba(0,0,0,.45);
  margin: 0 0 18px;
}

/* 商品説明（短文など） */
body.single-product .woocommerce div.product .woocommerce-product-details__short-description,
body.single-product .woocommerce div.product .woocommerce-Tabs-panel,
body.single-product .woocommerce div.product .entry-summary{
  font-size: 14px;
  line-height: 1.9;
}

/* 在庫/Noticeなどが出ても目立たないように */
body.single-product .woocommerce .stock,
body.single-product .woocommerce .woocommerce-notices-wrapper{
  font-size: 13px;
  color: rgba(0,0,0,.55);
}

/* ---- 購入フォーム全体：中央に「購入ボックス」を作る ---- */
body.single-product .woocommerce div.product form.cart.clecure-cart{
  display: block;
  margin-top: 10px;
}
body.single-product .woocommerce .clecure-buybox{
  max-width: 520px;
  display: grid;
  gap: 18px;
}

/* バリエーションselect（variable商品）もNILE寄せ */
body.single-product .woocommerce .variations_form .variations{
  margin: 0 0 10px;
}
body.single-product .woocommerce .variations_form .variations td,
body.single-product .woocommerce .variations_form .variations th{
  padding: 0;
  border: 0;
}
body.single-product .woocommerce .variations_form select{
  width: 100%;
  height: 52px;
  border-radius: 2px;
  border: 1px solid rgba(0,0,0,.14);
  background: #fff;
  padding: 0 14px;
  font-size: 14px;
  letter-spacing: .04em;
  appearance: none;
}

/* リセットリンク（ある場合） */
body.single-product .woocommerce .reset_variations{
  display: inline-block;
  margin-top: 8px;
  text-decoration: underline;
  opacity: .7;
  font-size: 12px;
}

/* ---- 数量UI（− 1 ＋）：四角枠（NILE寄せ） ---- */
body.single-product .woocommerce .quantity.clecure-quantity{
  width: 180px;        /* NILEっぽい横幅 */
  height: 52px;
  border: 1px solid rgba(0,0,0,.14);
  border-radius: 2px;
  overflow: hidden;
  background: #fff;
  display: grid;
  grid-template-columns: 60px 1fr 60px;
  align-items: center;
}

/* input（中央） */
body.single-product .woocommerce .quantity.clecure-quantity input.qty{
  width: 100% !important;
  height: 52px;
  border: none !important;
  border-left: 1px solid rgba(0,0,0,.10) !important;
  border-right: 1px solid rgba(0,0,0,.10) !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  text-align: center;
  font-size: 14px;
  color: rgba(0,0,0,.80);
  -moz-appearance: textfield;
}
body.single-product .woocommerce .quantity.clecure-quantity input.qty::-webkit-outer-spin-button,
body.single-product .woocommerce .quantity.clecure-quantity input.qty::-webkit-inner-spin-button{
  -webkit-appearance: none;
  margin: 0;
}

/* －＋ボタン */
body.single-product .woocommerce .clecure-qtybtn{
  height: 52px;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 18px;
  color: rgba(0,0,0,.65);
}
body.single-product .woocommerce .clecure-qtybtn:hover{
  background: rgba(0,0,0,.03);
}

/* Woo標準のform.cartが flex になっているテーマ/プラグイン対策で上書き */
body.single-product .woocommerce div.product form.cart{
  display: block !important;
}

/* ---- 「カートに追加」ボタン：四角枠 / フル幅 / 薄グレー文字 ---- */
body.single-product .woocommerce button.single_add_to_cart_button{
  width: 100% !important;
  height: 56px;
  border-radius: 2px !important;
  background: transparent !important;
  border: 1px solid rgba(0,0,0,.14) !important;
  color: rgba(0,0,0,.55) !important;
  font-weight: 400 !important;
  letter-spacing: .08em;
  padding: 0 !important;
  box-shadow: none !important;
}
body.single-product .woocommerce button.single_add_to_cart_button:hover{
  background: rgba(0,0,0,.02) !important;
  color: rgba(0,0,0,.70) !important;
}

/* ボタンが「button alt」等で上書きされるケースの抑止 */
body.single-product .woocommerce .single_add_to_cart_button.button.alt{
  background: transparent !important;
}

/* variable商品の「現在の価格」等が入る領域を整える */
body.single-product .woocommerce .single_variation_wrap{ margin-top: 12px; }
body.single-product .woocommerce .single_variation{ margin: 0 0 2px; }

/* ===== カート/チェックアウト：最低限のタイポ統一 ===== */
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-account .woocommerce{
  color: #111;
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}


/* ===== Patch v5_11: 商品説明が白になる事故を強制的に黒へ ===== */
.single-product .entry-summary,
.single-product .entry-summary *,
.single-product .woocommerce-product-details__short-description,
.single-product .woocommerce-product-details__short-description *,
.single-product .woocommerce-tabs,
.single-product .woocommerce-tabs *,
.single-product .woocommerce-Tabs-panel,
.single-product .woocommerce-Tabs-panel *,
.single-product .product_meta,
.single-product .product_meta *{
  color: #111 !important;
}


/* ===== FIX: 商品説明（本文/タブ/メタ）の白文字を黒へ =====
   原因: テーマのデフォルト(--fg)が白系で、.page--light の領域外や一部要素が白を継承していた。
   対応: 商品詳細の説明領域をスコープ指定で黒へ固定する。
*/
.woocommerce div.product .summary,
.woocommerce div.product .summary *,
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .woocommerce-tabs *,
.woocommerce div.product .product_meta,
.woocommerce div.product .product_meta *,
.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-product-details__short-description *{
  color: #111 !important;
}
