/* product-ios.css — 商品ページ 新デザイン（?design=ios ゲート中）。
   全ルールを body.ios-pdp-new 配下にスコープ。recipe-ios.css と同じ DS トークン。
   フォントは functions.php 側で preconnect+link（@import 不使用）。 */

/* ---- ローカルトークン（:root を汚さない） ---- */
.ios-pdp-new{
  --ds-cream:#f7f3ea; --ds-ink:#1a1714; --ds-ink-on-yellow:#38322a;
  --ds-yellow:#ffd400; --ds-yellow-hover:#e8c200; --ds-yellow-pale:#fdf6e8;
  --ds-accent:#7C3946; --ds-accent-text:#7C3946;
  --ds-rule:#e2dac9;
  --ds-muted:#6e6353; --ds-disabled:#cfc6b4; --ds-card-bg:#ffffff;
  --ds-ff-gothic:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",sans-serif;
  --ds-ff-body:"Noto Sans JP","Hiragino Sans",sans-serif;
  --ds-ff-mincho:"Shippori Mincho","Hiragino Mincho ProN","Yu Mincho",serif;
  --ds-ff-hand:"Zen Kurenaido","Yuji Syuku","Hiragino Maru Gothic ProN","Yu Gothic",system-ui,sans-serif;
  --ds-radius:6px; --ds-radius-lg:12px; --ds-radius-pill:999px;
  --ds-shadow-card:0 1px 2px rgba(26,23,20,.05), 0 8px 24px rgba(26,23,20,.07);
  --ds-shadow-hover:0 2px 4px rgba(26,23,20,.06), 0 14px 32px rgba(26,23,20,.10);
  --ds-focus-ring:0 0 0 3px rgba(124,57,70,.8);
}

/* ---- ベース（ヘッダー/フッターは対象外） ---- */
.ios-pdp-new #main{ background:var(--ds-cream); }
.ios-pdp-new .shop-container{ background:transparent; }
.ios-pdp-new #main .product-info,
.ios-pdp-new .iosp-pdp-v68{
  font-family:var(--ds-ff-body); color:var(--ds-ink);
}
/* リンク色は散文領域のみ（ブランケット #main a はカードタイトル等に漏れるため廃止） */
.ios-pdp-new .iosp-product-lead a,
.ios-pdp-new .iosp-story-body a,
.ios-pdp-new .iosp-faq__answer a,
.ios-pdp-new .iosp-spec-list a{ color:var(--ds-accent-text); text-underline-offset:3px; }
.ios-pdp-new .iosp-product-rating a{ color:var(--ds-muted); }
/* フォーカスリングは操作要素限定（全要素対象だと iOS Safari でギャラリータップ時に
   flickity の tabindex 要素へ発火し、画像にマゼンタ枠が出る） */
.ios-pdp-new button:focus-visible,
.ios-pdp-new input:focus-visible,
.ios-pdp-new select:focus-visible,
.ios-pdp-new textarea:focus-visible,
.ios-pdp-new summary:focus-visible,
.ios-pdp-new a:focus-visible{ outline:none; box-shadow:var(--ds-focus-ring); }
/* ギャラリー内はタップ誤発火するため無効（拡大はライトボックスで代替） */
.ios-pdp-new .woocommerce-product-gallery :focus-visible,
.ios-pdp-new .product-thumbnails :focus-visible,
.ios-pdp-new .flickity-enabled:focus-visible{ outline:none; box-shadow:none; }

/* パンくず帯：生成りに溶かし、現在地は墨 */
.ios-pdp-new .product-page-title{ background:var(--ds-cream); box-shadow:none; border:none; }
.ios-pdp-new .product-page-title .breadcrumbs,
.ios-pdp-new .product-page-title a{
  font-family:var(--ds-ff-gothic); font-weight:700; font-size:12px;
  color:var(--ds-muted); letter-spacing:.06em;
}
.ios-pdp-new .product-page-title a:hover{ color:var(--ds-accent-text); }
.ios-pdp-new .ios-breadcrumbs--woo .ios-breadcrumb-current{ color:var(--ds-ink); }

/* ---- サマリー列（購入UI。構造・機能は不変、皮だけDS） ---- */
.ios-pdp-new h1.product-title{
  font-family:var(--ds-ff-gothic); font-weight:900; letter-spacing:.02em;
  line-height:1.35; color:var(--ds-ink);
  background:linear-gradient(transparent 62%, var(--ds-yellow) 62%);
  display:inline; padding:0 .08em; font-size:1.7em;
}
.ios-pdp-new .product-info .iosp-tagline{
  font-family:var(--ds-ff-mincho); font-weight:600; font-size:15px;
  color:var(--ds-muted); letter-spacing:.04em; line-height:1.8;
  margin:14px 0 10px; border:none; padding:0;
}
.ios-pdp-new .product-info .price-wrapper .price,
.ios-pdp-new .product-info .price{
  font-family:var(--ds-ff-gothic); font-weight:900; color:var(--ds-ink);
  font-feature-settings:"tnum";
}
.ios-pdp-new .product-info .price .woocommerce-Price-amount{ font-size:24px; }
.ios-pdp-new .product-info .price small{
  font-family:var(--ds-ff-body); font-weight:400; font-size:11px; color:var(--ds-muted);
}
/* 星＝黄の限定点 */
.ios-pdp-new .iosp-product-rating .star-rating span::before,
.ios-pdp-new .star-rating span::before{ color:var(--ds-yellow); }
.ios-pdp-new .star-rating::before{ color:var(--ds-rule); }

/* バリエーション選択・数量 */
.ios-pdp-new .variations th label{
  font-family:var(--ds-ff-gothic); font-weight:700; color:var(--ds-ink); font-size:13px;
}
.ios-pdp-new .product-info select,
.ios-pdp-new .product-info .quantity .qty{
  background:var(--ds-card-bg); border:1px solid var(--ds-rule);
  border-radius:var(--ds-radius); color:var(--ds-ink); box-shadow:none;
}
.ios-pdp-new .reset_variations{ color:var(--ds-muted); font-size:12px; }

/* カートボタン＝黄（面はここと版ズレのみ） */
.ios-pdp-new .single_add_to_cart_button.button,
.ios-pdp-new .single_add_to_cart_button.button.alt{
  background:var(--ds-yellow) !important; color:var(--ds-ink-on-yellow) !important;
  font-family:var(--ds-ff-gothic); font-weight:900; letter-spacing:.06em;
  border:none; border-radius:var(--ds-radius); box-shadow:var(--ds-shadow-card);
  text-transform:none;
}
.ios-pdp-new .single_add_to_cart_button.button:hover{
  background:var(--ds-yellow-hover) !important; color:var(--ds-ink-on-yellow) !important;
  box-shadow:var(--ds-shadow-hover);
}
.ios-pdp-new .single_add_to_cart_button.button.disabled,
.ios-pdp-new .single_add_to_cart_button.button:disabled{
  background:var(--ds-disabled) !important; color:var(--ds-muted) !important; box-shadow:none;
}

/* 送料無料バー：白カード＋黄フィル */
.ios-pdp-new .iosp-fsb{
  background:var(--ds-card-bg); border:1px solid var(--ds-rule); border-radius:0;
}
.ios-pdp-new .iosp-fsb__msg{ color:var(--ds-ink); }
.ios-pdp-new .iosp-fsb__track{ background:var(--ds-cream); }
.ios-pdp-new .iosp-fsb__fill{ background:var(--ds-yellow); }
.ios-pdp-new .iosp-fsb--achieved .iosp-fsb__fill{ background:var(--ds-accent); }
.ios-pdp-new .iosp-fsb__cta,
.ios-pdp-new .iosp-fsb--achieved .iosp-fsb__cta{ color:var(--ds-accent-text); }

/* 図鑑リンク（既存ブロックの色だけDSへ） */
.ios-pdp-new .iosp-zukan{ background:var(--ds-card-bg); border:1px solid var(--ds-rule); }
.ios-pdp-new .iosp-zukan__kicker{
  font-family:var(--ds-ff-gothic); font-weight:700; letter-spacing:.12em; color:var(--ds-accent-text);
}
.ios-pdp-new .iosp-zukan a.iosp-zukan__link{ color:var(--ds-ink); }
.ios-pdp-new .iosp-zukan a.iosp-zukan__link:hover{ color:var(--ds-accent-text); }

/* サマリー内の関連記事リスト */
.ios-pdp-new .recent-blog-posts{ border-bottom:1px solid var(--ds-rule); }
.ios-pdp-new .recent-blog-posts a{ color:var(--ds-ink); font-weight:700; }
.ios-pdp-new .recent-blog-posts a:hover{ color:var(--ds-accent-text); }

/* ---- 本文チャプター（iosp-pdp-v68）→ 章見出し v2 ---- */
.ios-pdp-new .iosp-pdp-v68{ counter-reset:ios-sec; }
.ios-pdp-new .iosp-chapter__head{
  position:relative; text-align:left; padding-left:64px; min-height:56px;
  margin:0 0 1.6em; counter-increment:ios-sec;
  display:flex; flex-direction:column; justify-content:center;
}
/* 旧「— 02 —」採番は隠し、白抜きカウンタへ置換 */
.ios-pdp-new .iosp-chapter__num{ display:none; }
.ios-pdp-new .iosp-chapter__head::before{
  content:counter(ios-sec,decimal-leading-zero);
  position:absolute; left:0; top:-2px;
  font-family:var(--ds-ff-gothic); font-weight:900; font-size:52px; line-height:1;
  color:transparent; -webkit-text-stroke:1.5px var(--ds-ink);
  font-feature-settings:"tnum"; pointer-events:none;
}
@supports not (-webkit-text-stroke:1px #000){
  .ios-pdp-new .iosp-chapter__head::before{ color:var(--ds-ink); opacity:.15; }
}
/* 英字サブ→マゼンタキッカー（タイトルの上へ） */
.ios-pdp-new .iosp-chapter__sub{
  order:-1; font-style:normal; text-transform:uppercase;
  font-family:var(--ds-ff-gothic); font-weight:700; font-size:10px;
  letter-spacing:.3em; color:var(--ds-accent-text); margin:0 0 2px;
}
.ios-pdp-new .iosp-chapter__title{
  font-family:var(--ds-ff-gothic); font-weight:900; font-size:24px;
  letter-spacing:.02em; color:var(--ds-ink); margin:0;
}

/* リード：ドロップキャップをマゼンタ文字スロットへ */
.ios-pdp-new .iosp-product-lead p{ color:var(--ds-ink); }
.ios-pdp-new .iosp-product-lead p:first-child::first-letter{ color:var(--ds-accent-text); }

/* ---- レシピカード：グリッド＝quiet（黄なし・白面・角丸0・4:3） ---- */
.ios-pdp-new .iosp-featured-recipes__card{
  background:var(--ds-card-bg); border-radius:0; box-shadow:var(--ds-shadow-card);
  transition:box-shadow .18s, transform .18s;
}
.ios-pdp-new .iosp-featured-recipes__card:hover{
  opacity:1; box-shadow:var(--ds-shadow-hover); transform:translate(2px,2px);
}
/* 2026-08-07 P2: レシピカードの連番バッジは購買アクションではない。黄塗り→ワイン塗り。 */
.ios-pdp-new .iosp-featured-recipes__card::before{
  font-style:normal; font-family:var(--ds-ff-gothic); font-weight:700;
  background:var(--ds-accent); color:#fff;
  font-feature-settings:"tnum"; letter-spacing:.04em;
}
.ios-pdp-new .iosp-featured-recipes__thumb{ margin-bottom:0; }
.ios-pdp-new .iosp-featured-recipes__thumb img{
  aspect-ratio:4/3; filter:none; transition:none;
}
.ios-pdp-new .iosp-featured-recipes__card:hover .iosp-featured-recipes__thumb img{ transform:none; }
.ios-pdp-new .iosp-featured-recipes__title{
  border-top:none; padding:.55em .8em .8em;
  font-family:var(--ds-ff-body); font-weight:700; font-size:.85rem; color:var(--ds-ink);
}
.ios-pdp-new .iosp-featured-recipes__more{
  border:1.5px solid var(--ds-ink); color:var(--ds-ink);
  font-family:var(--ds-ff-gothic); font-weight:700; border-radius:var(--ds-radius-pill);
}
.ios-pdp-new .iosp-featured-recipes__more:hover{
  background:var(--ds-yellow); border-color:var(--ds-yellow); color:var(--ds-ink-on-yellow);
}
.ios-pdp-new .iosp-featured-recipes__more-count{ font-style:normal; }

/* ---- スペック表 ---- */
.ios-pdp-new .iosp-spec-list{ border-top:2px solid var(--ds-ink); border-bottom:1px solid var(--ds-rule); }
.ios-pdp-new .iosp-spec-list__row{ border-bottom:1px solid var(--ds-rule); }
.ios-pdp-new .iosp-spec-list__row dt,
.ios-pdp-new .iosp-spec-list__label{
  font-family:var(--ds-ff-gothic); font-weight:700; color:var(--ds-ink);
}

/* ---- 物語：版ズレカード（黄スロットはページでここ1箇所） ---- */
.ios-pdp-new .iosp-chapter--story .iosp-story-body{
  position:relative; margin:0 10px 10px 0;
}
.ios-pdp-new .iosp-chapter--story .iosp-story-body::before{
  content:""; position:absolute; inset:14px -10px -10px 14px;
  background:var(--ds-yellow); z-index:0;
}
.ios-pdp-new .iosp-chapter--story .iosp-story-body__content{
  position:relative; z-index:1; background:var(--ds-card-bg);
  box-shadow:var(--ds-shadow-card); padding:1.6em 1.7em;
}
.ios-pdp-new .iosp-story-body__expand{
  position:relative; z-index:1;
  font-family:var(--ds-ff-gothic); font-weight:700;
  color:var(--ds-accent-text); background:transparent; border:none; cursor:pointer;
}

/* ---- FAQ ---- */
.ios-pdp-new .iosp-faq__question{
  font-family:var(--ds-ff-gothic); font-weight:700; color:var(--ds-ink);
  border-left:4px solid var(--ds-yellow); padding-left:12px; margin-top:1.6em;
}
.ios-pdp-new .iosp-faq__answer{ color:var(--ds-ink); }

/* ---- レビュー（既存UIの色だけDSへ） ---- */
.ios-pdp-new .iosp-review-toggle{ border-color:var(--ds-rule); background:var(--ds-card-bg); }
/* 投稿フォームの評価星 (2026-08-07 P2: 未選択 #dcdcdc が背景と同化 1.24:1 → muted 5.9:1 / 選択・hover はワイン。黄不使用)
   style.css の !important 付き旧ルール (.iosp-rating-stars label / .single-product #reviews ...) より
   詳細度を上げて上書きする。レビュー一覧の .star-rating には触れない。 */
.ios-pdp-new #reviews .iosp-rating-stars label{ color:var(--ds-muted) !important; }
.ios-pdp-new.single-product #reviews .iosp-rating-stars label:hover,
.ios-pdp-new.single-product #reviews .iosp-rating-stars label:hover ~ label,
.ios-pdp-new.single-product #reviews .iosp-rating-stars input[type="radio"]:checked ~ label{ color:var(--ds-accent) !important; }
.ios-pdp-new.single-product #reviews .iosp-rating-stars input[type="radio"]:focus-visible + label{ outline:2px solid var(--ds-accent); }
.ios-pdp-new .woocommerce-Reviews .submit,
.ios-pdp-new #respond .submit{
  background:var(--ds-yellow) !important; color:var(--ds-ink-on-yellow) !important;
  font-family:var(--ds-ff-gothic); font-weight:900; border-radius:var(--ds-radius); border:none;
}

/* ---- 点描区切り（1ページ1箇所＝関連商品の前） ---- */
.ios-pdp-new .related.product-section{ border-top:none; }
.ios-pdp-new .related.product-section::before{
  content:""; display:block; height:14px; margin:4px auto 28px; max-width:680px;
  background-image:
    radial-gradient(circle at 3px 3px, var(--ds-ink) 1.6px, transparent 1.8px),
    radial-gradient(circle at 10px 9px, var(--ds-yellow) 2.4px, transparent 2.6px),
    radial-gradient(circle at 17px 4px, var(--ds-accent) 1.3px, transparent 1.5px);
  background-size:22px 14px; background-repeat:repeat-x; opacity:.85;
}
.ios-pdp-new .product-section-title{
  font-family:var(--ds-ff-gothic); font-weight:900; font-size:18px;
  letter-spacing:.08em; color:var(--ds-ink);
}

/* ---- 関連商品カード＝quiet ---- */
.ios-pdp-new .related .product-small .box,
.ios-pdp-new .related .product-small.box{ background:transparent; }
.ios-pdp-new .related .product-small .col-inner{
  background:var(--ds-card-bg); border-radius:0; box-shadow:var(--ds-shadow-card);
  transition:box-shadow .18s, transform .18s; overflow:hidden;
}
.ios-pdp-new .related .product-small:hover .col-inner{
  box-shadow:var(--ds-shadow-hover); transform:translate(2px,2px);
}
.ios-pdp-new .related .box-text-products{ padding:.6em .8em .9em; }
.ios-pdp-new .related .box-text-products .product-title-small a,
.ios-pdp-new .related .box-text-products a{ color:var(--ds-ink); font-weight:700; }
.ios-pdp-new .related .price-wrapper .price{
  font-family:var(--ds-ff-gothic); font-weight:700; color:var(--ds-ink);
  font-feature-settings:"tnum";
}

/* ---- スティッキーカートバー ---- */
.ios-pdp-new .sticky-add-to-cart{ background:var(--ds-card-bg); border-top:1px solid var(--ds-rule); }
.ios-pdp-new .sticky-add-to-cart .button{
  background:var(--ds-yellow) !important; color:var(--ds-ink-on-yellow) !important;
  font-family:var(--ds-ff-gothic); font-weight:900; border-radius:var(--ds-radius); border:none;
}

/* ---- 追補R1（初回スクリーンショット検証を受けて） ---- */
/* 物語章：旧グラデ帯・ヘアラインを撤去し版ズレカードに一本化 */
.ios-pdp-new .iosp-chapter--story{ background:none; }
.ios-pdp-new .iosp-chapter--story::before,
.ios-pdp-new .iosp-chapter--story::after{ display:none; }
.ios-pdp-new .iosp-story-body__content p:first-child::first-letter{
  color:var(--ds-accent-text); font-weight:700;
}
.ios-pdp-new .iosp-story-body__attribution{ font-style:normal; color:var(--ds-muted); }

/* レビュー見出し：明朝センター→章見出し級ゴシック（英字subは撤去） */
.ios-pdp-new.single-product #reviews .woocommerce-Reviews-title{
  text-align:left; font-family:var(--ds-ff-gothic); font-weight:900; font-size:22px;
  letter-spacing:.02em; color:var(--ds-ink);
}
.ios-pdp-new.single-product #reviews .woocommerce-Reviews-title::after{ display:none; }
.ios-pdp-new .review-form-inner.has-border{
  border-color:var(--ds-rule) !important; background:var(--ds-card-bg);
}
.ios-pdp-new .woocommerce-noreviews{
  font-family:var(--ds-ff-body); font-style:normal; color:var(--ds-muted);
}

/* トラストピル（送料/送料無料/在庫）：白面＋罫、色面は使わない */
.ios-pdp-new .iosp-trust__item{
  background:var(--ds-card-bg); border:1px solid var(--ds-rule) !important;
  border-radius:var(--ds-radius-pill);
}
.ios-pdp-new .iosp-trust__label{
  color:var(--ds-muted) !important; font-family:var(--ds-ff-gothic); font-weight:700;
}
.ios-pdp-new .iosp-trust__value{ color:var(--ds-ink) !important; font-weight:700; }

/* カレーブック系キット：分量（人前）。価格直下・控えめ・色面/黄なし */
.ios-pdp-new .iosp-servings{
  display:flex; align-items:baseline; gap:.55em;
  margin:.4em 0 .7em; padding:0;
  font-family:var(--ds-ff-gothic); font-size:13px; line-height:1.4;
}
.ios-pdp-new .iosp-servings__label{
  color:var(--ds-muted); font-weight:700; font-size:11px; letter-spacing:.06em;
}
.ios-pdp-new .iosp-servings__value{ color:var(--ds-ink); font-weight:700; }

/* ---- 追補R2：#reviews ID付き旧ルール対策（詳細度を揃えて上書き） ---- */
.ios-pdp-new #reviews .woocommerce-noreviews{
  background:var(--ds-card-bg); border:1px solid var(--ds-rule) !important;
  border-radius:var(--ds-radius);
  font-family:var(--ds-ff-body); font-style:normal; color:var(--ds-muted);
}
.ios-pdp-new #reviews .iosp-review-toggle{
  background:var(--ds-card-bg); border:1px solid var(--ds-rule);
  border-radius:var(--ds-radius);
}
.ios-pdp-new #reviews .iosp-review-toggle__summary{
  font-family:var(--ds-ff-gothic); font-weight:700; color:var(--ds-ink);
}
.ios-pdp-new #reviews .iosp-review-toggle__icon{ color:var(--ds-yellow); }
.ios-pdp-new #reviews .comment-reply-title{
  font-family:var(--ds-ff-gothic); font-weight:700; color:var(--ds-ink);
}

/* ---- モバイル ---- */
@media (max-width:600px){
  .ios-pdp-new h1.product-title{ font-size:1.4em; }
  .ios-pdp-new .iosp-chapter__head{ padding-left:52px; min-height:48px; }
  .ios-pdp-new .iosp-chapter__head::before{ font-size:42px; top:0; }
  .ios-pdp-new .iosp-chapter__title{ font-size:20px; }
}

/* ---- 追補R3：物語モバイル可読性（ユーザーFB: 読みにくい／マージン調整） ---- */
@media (max-width:600px){
  /* 旧ネガティブマージン＋大パディングを撤去し、他章とカラム幅を揃える */
  .ios-pdp-new .iosp-chapter--story{ margin-left:0; margin-right:0; padding:0; }
  .ios-pdp-new .iosp-chapter--story .iosp-story-body{ margin:0 8px 8px 0; }
  .ios-pdp-new .iosp-chapter--story .iosp-story-body::before{ inset:12px -8px -8px 12px; }
  .ios-pdp-new .iosp-chapter--story .iosp-story-body__content{ padding:1.35em 1.25em 1em; }
  /* 級数アップ・両端揃え（字間ガタつきの原因）をやめて左揃えに */
  .ios-pdp-new .iosp-story-body__content p{
    font-size:15px; line-height:1.95; letter-spacing:.01em;
    text-align:left; text-justify:auto;
  }
  /* 「カ のドロップキャップはモバイルでは解除（行頭カギ括弧と衝突） */
  .ios-pdp-new .iosp-story-body__content p:first-child::first-letter{
    float:none; font-size:inherit; line-height:inherit; font-weight:inherit;
    color:inherit; margin:0;
  }
  /* 折りたたみ：透過マスク（背面の版ズレ黄が透けて文字を潰す）→ 白グラデ被せへ */
  .ios-pdp-new .iosp-story-body[data-collapsed="true"] .iosp-story-body__content{
    -webkit-mask-image:none; mask-image:none; max-height:22em;
  }
  .ios-pdp-new .iosp-story-body[data-collapsed="true"] .iosp-story-body__content::after{
    content:""; position:absolute; left:0; right:0; bottom:0; height:5.5em;
    background:linear-gradient(180deg, rgba(255,255,255,0), var(--ds-card-bg) 80%);
  }
  /* 続きを読むを白面のフルワイドバー化（タップ領域確保・カードと一体化） */
  .ios-pdp-new .iosp-story-body__expand{
    width:100%; margin:0; padding:.95em 1em;
    background:var(--ds-card-bg); border-top:1px solid var(--ds-rule);
    box-shadow:var(--ds-shadow-card);
    font-size:14px; letter-spacing:.08em; text-align:center;
  }
  /* 署名は白カードの続きとして描画（黄帯の上に乗せない） */
  .ios-pdp-new .iosp-story-body__attribution{
    position:relative; z-index:1; margin-top:0;
    background:var(--ds-card-bg); padding:.2em 1.25em 1em; text-align:right;
  }
  .ios-pdp-new .iosp-story-body__expand{ border-radius:0 !important; margin-top:-1px; }
}

/* ---- 追補R5：全体レビュー対応（2026-08-02） ---- */
/* 関連商品カード：タイトル＝墨、カテゴリ＝muted */
.ios-pdp-new .related .box-text-products .name a,
.ios-pdp-new .related .box-text-products .product-title a{ color:var(--ds-ink) !important; }
.ios-pdp-new .related .box-text-products .category{ color:var(--ds-muted); }
/* 関連商品ボタン：旧アンバー面→墨アウトラインpill（hoverで黄） */
.ios-pdp-new .related .add-to-cart-button .button{
  background:var(--ds-card-bg) !important; color:var(--ds-ink) !important;
  border:1.5px solid var(--ds-ink) !important; border-radius:var(--ds-radius-pill) !important;
  font-family:var(--ds-ff-gothic); font-weight:700; font-size:12px;
  padding:.5em 1.2em; box-shadow:none !important; white-space:nowrap; text-transform:none;
}
.ios-pdp-new .related .add-to-cart-button .button:hover{
  background:var(--ds-yellow) !important; border-color:var(--ds-yellow) !important;
  color:var(--ds-ink-on-yellow) !important;
}
/* 在庫切れ帯 */
.ios-pdp-new .related .out-of-stock-label{
  background:rgba(26,23,20,.78); color:#fff;
  font-family:var(--ds-ff-gothic); font-weight:700; letter-spacing:.08em;
}
/* FAQ採番：旧イタリック・サフラン→ゴシックtnum muted */
.ios-pdp-new .iosp-faq__item{ border-bottom-color:var(--ds-rule); }
.ios-pdp-new .iosp-faq__item::before{
  font-style:normal; font-family:var(--ds-ff-gothic); font-weight:700;
  color:var(--ds-muted); font-feature-settings:"tnum"; font-size:.95rem; top:1.9em;
}
.ios-pdp-new .iosp-faq__item:first-child::before{ top:.1em; }
/* もっと見る：pill角丸をFlatsome既定(5px)に勝たせる */
.ios-pdp-new .iosp-featured-recipes__more{ border-radius:var(--ds-radius-pill) !important; }

@media (max-width:600px){
  /* 物語カード：モバイルは版ズレ黄を撤去（画面端で「はみ出しバグ」に見える）→ quiet＋上辺黄罫 */
  .ios-pdp-new .iosp-chapter--story .iosp-story-body{ margin:0; }
  .ios-pdp-new .iosp-chapter--story .iosp-story-body::before{ display:none; }
  .ios-pdp-new .iosp-chapter--story .iosp-story-body__content{
    border-top:3px solid var(--ds-yellow); box-shadow:var(--ds-shadow-card);
  }
  .ios-pdp-new .iosp-story-body__attribution{ box-shadow:var(--ds-shadow-card); }
  /* リードのドロップキャップもモバイルは解除（物語と方針統一） */
  .ios-pdp-new .iosp-product-lead p:first-child::first-letter{
    float:none; font-size:inherit; line-height:inherit; font-weight:inherit;
    color:inherit; margin:0;
  }
  /* FAQ：左3.2emの採番ガター撤去（本文幅を確保）、番号は質問の上に小さく */
  .ios-pdp-new .iosp-faq__item{ padding:1.4em 0; }
  .ios-pdp-new .iosp-faq__item::before{ position:static; display:block; margin-bottom:.35em; }
  /* パンくず2行→1行省略 */
  .ios-pdp-new .product-page-title .breadcrumbs{
    display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  }
}

/* ---- 追補R6：物語カードの分断解消（実機FB: 本文と署名の間に隙間） ---- */
@media (max-width:600px){
  /* カードの器は story-body 1枚に統合（content/署名/続きを読むは中身として透過） */
  .ios-pdp-new .iosp-chapter--story .iosp-story-body{
    background:var(--ds-card-bg); box-shadow:var(--ds-shadow-card);
    border-top:3px solid var(--ds-yellow);
  }
  .ios-pdp-new .iosp-chapter--story .iosp-story-body__content{
    border-top:none; box-shadow:none; margin:0; background:transparent;
  }
  .ios-pdp-new .iosp-story-body__content p:last-child{ margin-bottom:0; }
  .ios-pdp-new .iosp-story-body__attribution{
    background:transparent; box-shadow:none; margin:0; padding:.9em 1.25em 1.1em;
  }
  .ios-pdp-new .iosp-story-body__expand{ box-shadow:none; }
}

/* ---- 追補R7：FAQモバイルの間のび解消（実機FB） ---- */
@media (max-width:600px){
  /* 項目番号は非表示（章番号05+黄罫質問で冗長。孤立した数字が縦の空白を生む） */
  .ios-pdp-new .iosp-faq__item::before{ display:none; }
  .ios-pdp-new .iosp-faq__item{ padding:1.15em 0; }
  .ios-pdp-new .iosp-faq__question{ margin-bottom:.55em; }
  .ios-pdp-new .iosp-chapter--faq .iosp-chapter__head{ margin-bottom:1.1em; }
}

/* ---- 追補R8：残課題①⑤⑥（2026-08-02 承認済み） ---- */
/* ① バリエーション未選択ヒント */
.ios-pdp-new .iosp-variation-hint{
  font-family:var(--ds-ff-body); font-size:12.5px; color:var(--ds-muted);
  margin:.6em 0 0; letter-spacing:.02em;
}

/* ⑤ レビューフォーム内部のDS化 */
.ios-pdp-new #reviews .comment-form-comment textarea,
.ios-pdp-new #reviews .comment-form-author input,
.ios-pdp-new #reviews .comment-form-email input{
  background:var(--ds-card-bg); border:1px solid var(--ds-rule);
  border-radius:var(--ds-radius); color:var(--ds-ink); box-shadow:none;
}
.ios-pdp-new #reviews .comment-form label,
.ios-pdp-new #reviews .iosp-rating-row__label{
  font-family:var(--ds-ff-gothic); font-weight:700; color:var(--ds-ink);
}
.ios-pdp-new #reviews label .required{ color:var(--ds-accent-text); }
.ios-pdp-new #reviews .comment-reply-title{
  font-family:var(--ds-ff-gothic); font-weight:900; font-size:16px; color:var(--ds-ink);
}
.ios-pdp-new #reviews .comment-form .comment-notes,
.ios-pdp-new #reviews .cr-upload-images-title{
  font-family:var(--ds-ff-body); color:var(--ds-muted); font-size:12.5px;
}

/* ⑥ 余白リズム統一（章間48px・レビュー節の大空白解消） */
.ios-pdp-new .iosp-chapter{ margin-bottom:48px; }
.ios-pdp-new .iosp-chapter--lead{ margin-bottom:48px; }
.ios-pdp-new .iosp-pdp-v68{ padding-bottom:8px; }
.ios-pdp-new .woocommerce-Tabs-panel--reviews{ padding-top:8px !important; }
.ios-pdp-new.single-product #reviews .woocommerce-Reviews-title{ margin:0 0 14px; }
.ios-pdp-new #reviews .col{ padding-bottom:0; }
.ios-pdp-new #reviews .iosp-review-toggle{ margin-top:16px; }
.ios-pdp-new #reviews #review_form_wrapper{ margin-top:0; }
.ios-pdp-new .related.product-section{ padding-top:0; }

/* ---- 追補R9：Trust節＋配送・お支払い節（wireframe 11案から採用の2節） ---- */
.ios-pdp-new .iosp-trust-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:14px;
}
@media (max-width:600px){
  .ios-pdp-new .iosp-trust-grid{ grid-template-columns:1fr; gap:10px; }
}
.ios-pdp-new .iosp-trust-card{
  background:var(--ds-card-bg); box-shadow:var(--ds-shadow-card);
  padding:1.1em 1.2em 1.2em; border-top:3px solid var(--ds-yellow);
}
.ios-pdp-new .iosp-trust-card__title{
  font-family:var(--ds-ff-gothic); font-weight:900; font-size:15px;
  color:var(--ds-ink); letter-spacing:.02em; margin:0 0 .5em;
}
.ios-pdp-new .iosp-trust-card__text{
  font-family:var(--ds-ff-body); font-size:13.5px; line-height:1.9;
  color:var(--ds-ink); margin:0;
}
.ios-pdp-new .iosp-trust-more{ margin:1.1em 0 0; text-align:right; }
.ios-pdp-new .iosp-trust-more a{
  font-family:var(--ds-ff-gothic); font-weight:700; font-size:13px;
  color:var(--ds-accent-text); text-decoration:none;
}
.ios-pdp-new .iosp-trust-more a:hover{ text-decoration:underline; }
/* 配送spec表は既存 .iosp-spec-list を流用（中央寄せ最大幅だけ解除して全幅に） */
.ios-pdp-new .iosp-chapter--shipping .iosp-spec-list{ max-width:none; }
.ios-pdp-new .iosp-spec-list--shipping dd{ font-size:13.5px; line-height:1.9; }

/* ---- 追補R8：物語デスクトップの黄帯過多修正（2026-08-03 ユーザーFB） ----
   __expand/__attribution が版ズレ黄(z0)の背面に隠れ、その高さぶん黄が帯状に露出していた。
   白面を story-body 全体に移し、版ズレ黄は z-index:-1 で背面へ（story-body は stacking context
   を作らないこと＝z-index/transform を与えない）。デスクトップは全文表示なので expand は不要。 */
@media (min-width:601px){
  .ios-pdp-new .iosp-chapter--story .iosp-story-body{
    background:var(--ds-card-bg);
    /* 版ズレ黄は擬似要素ではなくオフセット純色影で描く（クリップ・重なり順の事故なし） */
    box-shadow:10px 10px 0 0 var(--ds-yellow), 0 1px 2px rgba(26,23,20,.05), 0 8px 24px rgba(26,23,20,.07);
  }
  .ios-pdp-new .iosp-chapter--story .iosp-story-body::before{ display:none; }
  .ios-pdp-new .iosp-chapter--story .iosp-story-body__content{
    background:transparent; box-shadow:none; padding:1.6em 1.7em .4em;
  }
  .ios-pdp-new .iosp-story-body__expand{ display:none; }
  .ios-pdp-new .iosp-story-body__attribution{
    position:relative; z-index:1; margin:0; padding:0 1.7em 1.5em; text-align:right;
  }
}

/* ---- 追補R11：説明タブのモバイル左右余白（2026-08-05 ユーザーFB「箱に入って左右余白が勿体無い」） ----
   旧 style.css が .woocommerce-Tabs-panel--description に padding:1em(18px) !important と
   別クリーム地 var(--iosp-paper)=#faf6ee を当てており、Flatsome .container の 15px と二重に
   なって本文幅が 390→324px(83%) に痩せ、地色差で「箱」に見えていた。
   モバイルのみ横パディングを外し（gutter は container の 15px 一本）、地は生成りに溶かす。 */
@media (max-width:600px){
  .ios-pdp-new .woocommerce-Tabs-panel--description{
    padding-left:0 !important; padding-right:0 !important;
    background:transparent !important;
  }
}

/* ---- 追補R12：物語モバイルの折りたたみ廃止（2026-08-05 ユーザー承認） ----
   実測: 物語は全175商品で338-775字＝全高526-996px。折りたたみ(22em=352px)が隠すのは
   短編で174px(33%/約4行)、最長でも644px。全文表示にしてもページ増分は最大+1画面
   （全体約8画面に対し+3〜15%）で、得られる摩擦低減のほうが大きいと判断。
   デスクトップは R10 で既に全文表示のため、これで PC/モバイルの挙動が一致する。
   復帰 = このブロックを削除（下の R3/R4 折りたたみ実装はそのまま残してある）。 */
@media (max-width:600px){
  .ios-pdp-new .iosp-story-body[data-collapsed="true"] .iosp-story-body__content{
    max-height:none !important;
  }
  .ios-pdp-new .iosp-story-body[data-collapsed="true"] .iosp-story-body__content::after{
    content:none !important;
  }
  .ios-pdp-new .iosp-story-body__expand{ display:none !important; }
}

/* ---- 追補R13：CTA階層の整理（2026-08-05 ユーザーFB「墨枠/黄色/ただのリンクを使い分けて」） ----
   確立した規則（基盤spec §4「黄は点で効かせ面積を絞る」＋ top spec のCTA三階層に準拠）:
     黄塗り(primary)     = 購買の主動線のみ（メインのカート追加・stickyバー）
     墨枠(secondary)     = 副次の実行アクション（関連商品のカート追加/オプション選択・レビュー送信）
     テキストリンク(tertiary) = 遷移・開示（もっと見る・章末の「→」リンク）
   形状: ボタン族は --ds-radius(6px) に統一。pill(999px) はバッジ/タグ専用に戻す（v2 §5） */

/* 1. レビュー送信: 黄塗り→墨枠。黄を購買動線に限定して意味を薄めない */
.ios-pdp-new .woocommerce-Reviews .submit,
.ios-pdp-new #respond .submit{
  background:var(--ds-card-bg) !important; color:var(--ds-ink) !important;
  border:1.5px solid var(--ds-ink) !important;
  border-radius:var(--ds-radius) !important;
  font-family:var(--ds-ff-gothic); font-weight:700; box-shadow:none !important;
}
/* 2026-08-07 P2: hover の塗りも黄→墨。R13で地は墨枠にしたが hover で黄に戻っていた */
.ios-pdp-new .woocommerce-Reviews .submit:hover,
.ios-pdp-new #respond .submit:hover{
  background:var(--ds-ink) !important; border-color:var(--ds-ink) !important;
  color:var(--ds-cream) !important;
}

/* 2. 「もっと見る(+N)」: 墨枠pill→テキストリンク。開示操作が購買ボタンと同格に見えていた
      （タップ領域は min-height:44px で確保・spec §11） */
.ios-pdp-new .iosp-featured-recipes__more{
  background:transparent !important; border:none !important; box-shadow:none !important;
  border-radius:0 !important;
  color:var(--ds-accent-text) !important;
  font-family:var(--ds-ff-gothic); font-weight:700; font-size:13px;
  padding:.6em .2em; min-height:44px;
  text-decoration:underline; text-underline-offset:4px;
}
.ios-pdp-new .iosp-featured-recipes__more:hover{
  background:transparent !important; border-color:transparent !important;
  color:var(--ds-ink) !important;
}

/* 3. ボタン族の角丸を6pxに統一（Flatsome既定5px・旧pill指定を上書き） */
.ios-pdp-new .single_add_to_cart_button.button,
.ios-pdp-new .single_add_to_cart_button.button.alt,
.ios-pdp-new .sticky-add-to-cart .button,
.ios-pdp-new .related .add-to-cart-button .button{
  border-radius:var(--ds-radius) !important;
}


/* ---- 追補：リンク下線の統一（2026-08-05） ----
   基盤spec §11「リンクは色だけに頼らず下線併用（色覚多様性対応）」。
   ただし全リンクに引くと目次・カード一覧が線だらけになるため、文脈で切り分ける:
     散文中のインラインリンク / 単独行のtertiary CTAリンク → 下線あり
     ナビゲーション一覧（目次・カードタイトル・メニュー）   → 下線なし（一覧の文脈がアフォーダンス） */
.ios-pdp-new .iosp-trust-more a,
.ios-pdp-new .iosp-story-body__attribution a,
.ios-pdp-new .iosp-story-body__content a,
.ios-pdp-new .iosp-faq a{
  text-decoration:underline; text-underline-offset:3px;
}

/* ---- 2026-08-06 章番号の統一（他ページ型と同じ「番号=見出しブロック中央」へ） ----
   旧: 絶対配置 52px / top:-2px / padding-left:64px → ブロック上寄りで、他ページより小さく見えていた。
   新: grid で番号を1列目・2行ぶち抜きにして align-self:center。キッカー+タイトルの
   ブロック中央に番号が来て、1行見出し（レシピ/ハブ）の flex+center と同じ関係になる。 */
.ios-pdp-new .iosp-chapter__head{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:12px;
  padding-left:0; min-height:0; position:static;
}
.ios-pdp-new .iosp-chapter__head::before{
  position:static; top:auto; left:auto;
  grid-column:1; grid-row:1 / span 2; align-self:center;
  font-size:40px;
}
.ios-pdp-new .iosp-chapter__sub{ grid-column:2; grid-row:1; margin:0 0 2px; }
.ios-pdp-new .iosp-chapter__title{ grid-column:2; grid-row:2; }
@media (min-width:601px){
  .ios-pdp-new .iosp-chapter__head{ column-gap:14px; }
}

/* [2026-08-08 UXレビューP2] 商品ページの読み物本文（リード＋物語）が実測13.6pxで
   全ページ中最小だった。購入判断で読ませたい本文なので15pxに統一（media非依存で確実に）。 */
.ios-pdp-new .iosp-product-lead p,
.ios-pdp-new .iosp-story-body__content p{ font-size:15px; }

/* [2026-08-12 UXレビューP2] 辛さバリエーションの相対目安レジェンド
   （functions.php iosp_heat_scale_legend が出力）。
   ドット=段階の強さ。塗りはワイン（黄=購買専用のため不使用）。 */
.iosp-heat-scale{
	display:flex;
	flex-wrap:wrap;
	gap:6px 16px;
	align-items:center;
	margin:10px 0 2px;
	font-size:12px;
	line-height:1.4;
}
.iosp-heat-scale__label{
	width:100%;
	font-size:11px;
	letter-spacing:.05em;
	color:#6e6353;
}
.iosp-heat-scale__item{
	display:inline-flex;
	align-items:center;
	gap:5px;
}
.iosp-heat-scale__name{
	color:#1c1a17;
}
.iosp-heat-scale__dots{
	display:inline-flex;
	align-items:center;
	gap:2px;
}
.iosp-heat-scale__dots i{
	display:inline-block;
	width:7px;
	height:7px;
	border-radius:50%;
	background:#e3ddd3;
}
.iosp-heat-scale__dots i.is-on{
	background:#7C3946;
}

/* [P3 2026-08-13] 07配送→レビュー間の余白圧縮（Playwright実測152px。
   単一バグではなく5宣言の積み上げ＝Wooタブパネル境界の余白二重取り分を削り、
   章間リズム(.iosp-chapter margin-bottom:48px)相当の約80pxに揃える） */
.ios-pdp-new #tab-reviews.woocommerce-Tabs-panel--reviews{ margin-top:0; }
.ios-pdp-new #tab-description.woocommerce-Tabs-panel--description{ padding-bottom:0; }

/* [P3 2026-08-13] パンくず統一: リンク色ワイン・区切り「›」muted・h6→nav化に伴う体裁維持 */
.ios-breadcrumbs--woo{
	font-size:.75em;
	letter-spacing:.02em;
	margin:0 0 .6em;
}
.ios-breadcrumbs--woo a{ color:#7C3946; }
.ios-breadcrumbs--woo a:hover{ text-decoration:underline; text-underline-offset:2px; }
.ios-breadcrumbs--woo .ios-bc-sep{ margin:0 .5em; color:#6e6353; }
.ios-breadcrumbs--woo .ios-breadcrumb-current{ color:#6e6353; }

/* [2026-08-13 UXレビューP2] 06章「使い方まで、伴走」カードの/guide/リンク
   （商品ページから学ぶ層への唯一の出口。description.php が出力） */
.iosp-trust-card__link{
	margin:10px 0 0;
	font-size:13px;
}
.iosp-trust-card__link a{
	display:inline-block;
	padding:10px 0;
	margin:-10px 0;
	color:#7C3946;
	font-weight:700;
	text-decoration:underline;
	text-underline-offset:3px;
}

/* ===== BEGIN 使い方チャプター（一次素材採掘パイロット 2026-08-27） =====
 * 対: description.php .iosp-chapter--usage（usage_* ACFが空の商品では章ごと非描画）
 * 撤去 = このブロック削除。 */
.ios-pdp-new .iosp-chapter--usage .iosp-spec-list{ max-width:none; }
.ios-pdp-new .iosp-spec-list--usage dd{ line-height:2; }
.ios-pdp-new .iosp-usage-quote{
	margin:1.6em auto 0; padding:1.2em 1.4em;
	background:var(--ds-yellow-pale);
	border-left:3px solid var(--ds-accent);
	border-radius:var(--ds-radius);
}
.ios-pdp-new .iosp-usage-quote blockquote{
	margin:0; padding:0; border:none; background:none;
	font-family:var(--ds-ff-mincho); font-size:13px; line-height:2; color:var(--ds-ink);
}
.ios-pdp-new .iosp-usage-quote figcaption{
	margin-top:.7em; font-size:12.5px; color:var(--ds-muted); text-align:right;
	font-family:var(--ds-ff-gothic);
}
/* ===== END 使い方チャプター ===== */

/* ===== BEGIN 関連商品カードDS準拠（2026-08-27 ユーザーFB） =====
 * 対: Flatsome標準の related-products グリッド（マークアップ不変・CSSのみ）
 * 見出しは章ヘッダー変形（counter範囲外のため番号なし・中央寄せ）。撤去 = このブロック削除。 */
.ios-pdp-new .related-products-wrapper .product-section-title{
	display:flex; flex-direction:column; align-items:center; gap:2px;
	border:none; padding:0 0 0; margin:0 auto 1.5em; text-align:center;
	font-family:var(--ds-ff-gothic); font-weight:900; font-size:24px;
	letter-spacing:.02em; color:var(--ds-ink); text-transform:none;
}
.ios-pdp-new .related-products-wrapper .product-section-title::before{
	content:"Related Items";
	text-transform:uppercase;
	font-family:var(--ds-ff-gothic); font-weight:700; font-size:10px;
	letter-spacing:.3em; color:var(--ds-accent-text);
}
@media (max-width:849px){
	.ios-pdp-new .related-products-wrapper .product-section-title{ font-size:20px; }
}
.ios-pdp-new .related-products-wrapper .product-small.box{
	background:var(--ds-card-bg); border-radius:var(--ds-radius-lg);
	box-shadow:var(--ds-shadow-card); overflow:hidden;
	transition:box-shadow .25s ease, transform .25s ease;
}
.ios-pdp-new .related-products-wrapper .product-small.box:hover{
	box-shadow:var(--ds-shadow-hover); transform:translateY(-2px);
}
.ios-pdp-new .related-products-wrapper .box-text{ padding:12px 14px 16px; }
.ios-pdp-new .related-products-wrapper .product-cat{
	font-family:var(--ds-ff-gothic); font-size:10.5px; letter-spacing:.12em;
	color:var(--ds-muted); opacity:1;
}
.ios-pdp-new .related-products-wrapper .product-title,
.ios-pdp-new .related-products-wrapper .product-title a{
	font-family:var(--ds-ff-gothic); font-weight:700; font-size:15px; color:var(--ds-ink);
}
.ios-pdp-new .related-products-wrapper .price,
.ios-pdp-new .related-products-wrapper .price .amount{
	font-family:var(--ds-ff-gothic); color:var(--ds-ink);
}
body.ios-pdp-new .related-products-wrapper a.button.add_to_cart_button{
	font-family:var(--ds-ff-gothic); font-weight:700;
	background-color:var(--ds-yellow) !important; border:none !important; color:var(--ds-ink) !important;
	border-radius:var(--ds-radius); box-shadow:none;
}
body.ios-pdp-new .related-products-wrapper a.button.add_to_cart_button:hover{
	background-color:var(--ds-yellow-hover) !important; color:var(--ds-ink) !important;
}
/* ===== END 関連商品カードDS準拠 ===== */
