/*
Theme Name: 医師キャリア4.0 Prototype
Theme URI: https://minipapa.jp/
Author: MINIPAPA
Author URI: https://minipapa.jp/
Description: 「医師キャリア4.0」リブランディング用ブロックテーマ（FSE）試作骨格。A4 Quiet Indigo配色、Editorial Blueアクセント、Article 75/41個別スタイルを反映。検証環境：旧Prototype環境（WP 6.6 + PHP 8.2）およびCurrent WXR QA環境（WP 7.1.2 + PHP 8.3.33）。
Version: 0.3.7
Requires at least: 6.6
Tested up to: 7.1.2
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ishi-career-4
Tags: block-theme, full-site-editing, editorial, one-column, custom-colors
*/

:root {
  --wp--custom--color--warm-paper: #F7F4EE;
  --wp--custom--color--soft-white: #FFFEFA;
  --wp--custom--color--ink: #252626;
  --wp--custom--color--muted-indigo: #414D63;
  --wp--custom--color--deep-indigo: #354156;
  --wp--custom--color--warm-gray: #DDD8D0;
  --wp--custom--color--editorial-blue: #496AA5;
  --wp--preset--color--editorial-blue: #496AA5;
}

body {
  font-feature-settings: "palt" 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ワイド幅が画面幅に達する場合もHeroの左右に余白を確保する。 */
.hero-group.alignwide {
  box-sizing: border-box;
  width: calc(100% - 3rem);
  margin-inline: auto;
}

/* 記事ブロック画像のレスポンシブ中央揃え（既存19記事互換用） */
.wp-block-image.aligncenter {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.wp-block-image img {
  max-width: 100%;
  height: auto;
}

/* インライン画像（ブログ村バナー88x31px、トラッキング画素等）の全幅強制防止 */
p > a > img,
p > img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}

/* 区切り線のエディトリアル微調整 */
hr.wp-block-separator {
  border-top-width: 1px;
  border-color: #DDD8D0;
  opacity: 0.7;
}

/* コードブロック（記事41等）のフォールバック装飾 */
pre.wp-block-code {
  background-color: #EFECE5;
  border: 1px solid #DDD8D0;
  border-radius: 3px;
  padding: 1rem 1.25rem;
  overflow-x: auto;
  font-family: Consolas, Monaco, "Andale Mono", monospace;
  font-size: 0.9rem;
  line-height: 1.6;
}

/* ==========================================================================
   A4共通調整：モバイルHero余白圧縮・表示最適化（max-width: 767px）
   ========================================================================== */
@media (max-width: 767px) {
  /* Hero全体の上下padding圧縮（上約28%縮小、下約26%縮小） */
  .hero-group {
    padding-top: 2.5rem !important;
    padding-bottom: 1.85rem !important;
  }

  /* INDEPENDENT EDITORIAL MEDIA 周辺の上下余白縮小 */
  .hero-subhead {
    margin-bottom: 0.35rem !important;
    font-size: 0.8rem !important;
  }

  /* 大見出しと本文の間隔縮小 */
  .hero-heading {
    margin-bottom: 0.5rem !important;
    line-height: 1.25 !important;
  }

  /* 本文とボタンの間隔縮小 */
  .hero-lead {
    margin-top: 0.75rem !important;
    margin-bottom: 1.35rem !important;
    font-size: 0.95rem !important;
    line-height: 1.7 !important;
  }

  /* スマホでのボタン整理（padding圧縮、間隔縮小） */
  .hero-buttons {
    gap: 0.65rem !important;
  }
  .hero-buttons .wp-block-button__link {
    padding: 0.65rem 1.25rem !important;
    font-size: 0.9rem !important;
  }

  /* スマホでのHero画像をコンパクトに（ファーストビュー圧迫防止） */
  .hero-image-figure {
    margin-top: 1.5rem !important;
  }
  .hero-image-figure img {
    max-height: 220px;
    object-fit: cover;
    width: 100%;
  }

  /* 写真キャプションの行間・文字サイズ微調整 */
  .hero-caption {
    font-size: 0.72rem !important;
    line-height: 1.45 !important;
    margin-top: 0.35rem !important;
  }

  /* Hero末尾から代表記事見出しまでの余白縮小 */
  .featured-story-section {
    padding-top: 2rem !important;
    padding-bottom: 2.25rem !important;
  }

  /* スマホでの代表記事「読む」ボタン全幅化 */
  .featured-story-card .wp-block-read-more {
    width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
}

/* ==========================================================================
   代表記事（Featured Story）動的クエリスタイル
   ========================================================================== */
.featured-story-query ul.wp-block-post-template {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.featured-story-query li.wp-block-post {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.featured-story-card .wp-block-read-more {
  display: inline-block;
  padding: 0.65rem 1.4rem;
  font-size: 0.9rem;
  font-weight: 500;
  text-decoration: none;
  border-radius: 2px;
  line-height: 1.5;
  transition: opacity 0.15s ease;
}

.featured-story-card .wp-block-read-more:hover {
  opacity: 0.88;
}

/* ==========================================================================
   SNS / 検索 アイコンボタン列 & 機能的検索ドロップダウン
   ========================================================================== */
.ishi-social-icon-row {
  display: flex;
  align-items: center;
  gap: 7px;
}

.ishi-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 1px solid var(--wp--preset--color--border, #ddd8d0);
  border-radius: 4px;
  color: var(--wp--preset--color--ink, #1f2937);
  background-color: #ffffff;
  text-decoration: none !important;
  box-sizing: border-box;
  transition: all 0.15s ease-in-out;
  cursor: pointer;
}

.ishi-icon-btn:hover,
.ishi-icon-btn:focus-visible {
  border-color: var(--wp--preset--color--primary, #2d3748);
  background-color: #f7f6f3;
  color: #000000;
  outline: none;
}

.ishi-icon-btn:focus-visible {
  outline: 2px solid var(--wp--preset--color--accent, #414D63);
  outline-offset: 2px;
}

.ishi-icon-btn svg {
  display: block;
}

/* 検索ポップアップドロップダウン (純粋HTML5/CSS・外部JS/プラグイン不使用) */
.ishi-search-dropdown {
  position: relative;
  display: inline-block;
}

.ishi-search-dropdown summary {
  list-style: none;
  cursor: pointer;
}

.ishi-search-dropdown summary::-webkit-details-marker {
  display: none;
}

.ishi-search-form {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  background: #ffffff;
  padding: 8px 10px;
  border: 1px solid var(--wp--preset--color--border, #ddd8d0);
  border-radius: 4px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.09);
  z-index: 1000;
  width: 250px;
  box-sizing: border-box;
}

.ishi-search-input {
  flex: 1;
  border: 1px solid var(--wp--preset--color--border, #ddd8d0);
  border-radius: 3px;
  padding: 6px 10px;
  font-size: 0.85rem;
  color: var(--wp--preset--color--ink, #1f2937);
  background: #ffffff;
  outline: none;
  box-sizing: border-box;
}

.ishi-search-input:focus {
  border-color: var(--wp--preset--color--primary, #2d3748);
}

.ishi-search-submit-btn {
  background: var(--wp--preset--color--contrast, #252626);
  color: #ffffff;
  border: none;
  border-radius: 3px;
  padding: 6px 12px;
  font-size: 0.82rem;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s ease;
}

.ishi-search-submit-btn:hover {
  background: #000000;
}

/* ==========================================================================
   ナビゲーションおよびヘッダーのレスポンシブ設計 (Phase 2D-B Quality Fix)
   ========================================================================== */

/* 1. モバイル・タブレット (< 1024px) */
@media (max-width: 1023px) {
  .wp-block-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none !important;
  }

  .wp-block-navigation .wp-block-navigation__responsive-container-open {
    display: flex !important;
  }

  .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open {
    background-color: var(--wp--preset--color--base, #fffefa) !important;
    color: var(--wp--preset--color--contrast, #252626);
  }

  /* 開いたメニューのリンクを24px内側に収め、右寄せ由来の端密着を防ぐ。 */
  .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    box-sizing: border-box;
    padding-inline: 1.5rem;
  }

  .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    width: 100%;
    margin-inline: 0;
    align-items: flex-start;
  }

  .wp-block-navigation .ishi-mobile-entrance {
    font-weight: 600;
  }

  header.wp-block-group .alignwide {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    row-gap: 0.75rem !important;
  }

  .ishi-brand-area {
    order: 1 !important;
  }

  .ishi-social-icon-row {
    order: 2 !important;
    margin-left: auto !important;
    margin-right: 0.85rem !important;
  }

  .wp-block-navigation {
    order: 3 !important;
  }

  @media (max-width: 640px) {
    .ishi-search-dropdown .ishi-search-form {
      left: 0;
      right: auto;
    }

    .ishi-brand-area {
      width: 100% !important;
    }

    .ishi-social-icon-row {
      margin-left: 0 !important;
      margin-right: 0 !important;
    }

    .wp-block-navigation {
      margin-left: auto !important;
    }

    .wp-block-site-title {
      font-size: 1.15rem !important;
    }
  }
}

/* 2. デスクトップ (>= 1024px): 2段構成（上段: ブランド左＋アイコン列右、下段: 5 Knowledge Hub ナビゲーションバー） */
@media (min-width: 1024px) {
  .wp-block-navigation .ishi-mobile-entrance {
    display: none !important;
  }

  .wp-block-navigation .wp-block-navigation__responsive-container-open {
    display: none !important;
  }

  .wp-block-navigation .wp-block-navigation__responsive-container {
    display: block !important;
    position: static !important;
    width: 100% !important;
  }

  header.wp-block-group .alignwide {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    grid-template-rows: auto auto !important;
    align-items: start !important;
    row-gap: 0.85rem !important;
  }

  /* 上段左：ブランド（ロゴ＋by MINIPAPA） */
  .ishi-brand-area {
    grid-column: 1 / 2 !important;
    grid-row: 1 / 2 !important;
    display: flex !important;
    align-items: baseline !important;
  }

  .wp-block-site-title {
    white-space: nowrap !important;
  }

  /* 上段右：SNS / 検索 アイコン列 */
  .ishi-social-icon-row {
    grid-column: 2 / 3 !important;
    grid-row: 1 / 2 !important;
    justify-self: end !important;
  }

  /* 開いた検索フォームを上段の高さに含め、下段ナビとの重なりを防ぐ。 */
  .ishi-search-dropdown[open] {
    width: 250px;
  }

  .ishi-search-dropdown[open] summary {
    margin-left: auto;
  }

  .ishi-search-dropdown[open] .ishi-search-form {
    position: static;
    margin-top: 8px;
  }

  /* 下段：5 Knowledge Hub ナビゲーションバー（1行中央揃え・均等配置） */
  .wp-block-navigation {
    grid-column: 1 / 3 !important;
    grid-row: 2 / 3 !important;
    width: 100% !important;
    border-top: 1px solid var(--wp--preset--color--border, #e5e0d8);
    padding-top: 0.75rem !important;
  }

  .wp-block-navigation__container {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    gap: clamp(1.25rem, 2.2vw, 2.5rem) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .wp-block-navigation .wp-block-navigation-item {
    white-space: nowrap !important;
  }

  .wp-block-navigation .wp-block-navigation-item__content {
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    padding: 0.25rem 0.25rem !important;
    letter-spacing: -0.005em !important;
  }
}

/* ==========================================================================
   トップページ限定 タイポグラフィ拡大 (+20% 実測補正)
   ========================================================================== */
/* 1. Hero セクション */
body.home .hero-heading {
  font-size: clamp(2.25rem, 4.8vw, 3.85rem) !important;
  line-height: 1.2 !important;
}

@media (min-width: 1280px) {
  body.home .hero-heading {
    font-size: 3.85rem !important; /* 61.6px (+18.5% 実測) */
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  body.home .hero-heading {
    font-size: 3.45rem !important; /* 55.2px (+19.8% 実測) */
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  body.home .hero-heading {
    font-size: 2.7rem !important; /* 43.2px (+20.0% 実測) */
  }
}

@media (max-width: 767px) {
  body.home .hero-heading {
    font-size: 2.25rem !important; /* 36.0px (375pxで3行への改行破綻を防ぎ厳密に2行維持する最大適正値) */
    line-height: 1.25 !important;
  }
  body.home .hero-subhead {
    font-size: 0.9rem !important;
  }
  body.home .hero-lead {
    font-size: 1.1rem !important;
    line-height: 1.75 !important;
  }
  body.home .hero-buttons .wp-block-button__link {
    font-size: 1rem !important;
    padding: 0.75rem 1.4rem !important;
  }
}

body.home .hero-subhead {
  font-size: 0.95rem !important;
}

body.home .hero-lead {
  font-size: 1.22rem !important;
  line-height: 1.85 !important;
}

body.home .hero-buttons .wp-block-button__link {
  font-size: 1.05rem !important;
  padding: 0.85rem 1.8rem !important;
}

/* 2. 代表記事（Featured Story） */
body.home #featured-story h2.wp-block-heading:first-child {
  font-size: 1.05rem !important;
}

body.home .featured-story-title a {
  font-size: 1.95rem !important;
  line-height: 1.35 !important;
}

body.home .featured-story-card p:not(.has-muted-color):not(.featured-story-title) {
  font-size: 1.18rem !important;
  line-height: 1.85 !important;
}

body.home .featured-story-card .wp-block-read-more {
  font-size: 1.05rem !important;
}

/* 3. 目的別読書経路（Choose Your Path） */
body.home #choose-your-path h2.wp-block-heading:first-child {
  font-size: 1.05rem !important;
}

body.home #choose-your-path h3 {
  font-size: 1.55rem !important;
}

body.home #choose-your-path p {
  font-size: 1.05rem !important;
}

body.home #choose-your-path .wp-block-button__link {
  font-size: 1.05rem !important;
}

/* 4. マニフェスト帯 */
body.home .has-accent-deep-background-color p:first-child {
  font-size: 1.8rem !important;
  line-height: 1.5 !important;
}

body.home .has-accent-deep-background-color p:nth-child(2) {
  font-size: 1.12rem !important;
  line-height: 1.75 !important;
}

/* 5. 知識体系（Knowledge Hubs） */
body.home #knowledge-hubs h2.wp-block-heading:first-child {
  font-size: 1.05rem !important;
}

body.home #knowledge-hubs > p {
  font-size: 1.8rem !important;
}

body.home #knowledge-hubs .wp-block-columns h3 {
  font-size: 1.35rem !important;
}

body.home #knowledge-hubs .wp-block-columns p {
  font-size: 1.02rem !important;
}

/* 6. 最新記事一覧（Latest Stories） */
body.home #latest-stories h2.wp-block-heading:first-child {
  font-size: 2.1rem !important;
}

body.home #latest-stories .wp-block-post-title {
  font-size: 1.42rem !important;
}

body.home #latest-stories .wp-block-post-excerpt__excerpt {
  font-size: 1.08rem !important;
}

/* 記事本文の外に配置する連載案内。本文データは変更しない。 */
.ishi-series-nav {
  border: 1px solid var(--wp--preset--color--border, #ddd8d0);
  background: var(--wp--preset--color--surface, #fff);
  padding: 1.5rem;
  margin: 0 0 2rem;
}

.ishi-series-nav__heading {
  margin: 0 0 0.75rem;
  font-weight: 700;
}

.ishi-series-nav ol {
  margin: 0;
  padding-left: 1.5rem;
}

.ishi-series-nav li + li {
  margin-top: 0.5rem;
}

/* ==========================================================================
   Editorial Blue Category Archive Prototype (DEC-025)
   Visual Reference v1 Candidate / Category Archive Only
   ========================================================================== */

/* 1. Header Navigation Active State & Focus */
body.category-career-and-life .wp-block-navigation a[href*="/category/career-and-life/"] {
  color: var(--wp--preset--color--editorial-blue, #496AA5) !important;
  font-weight: 600 !important;
  border-bottom: 2px solid var(--wp--preset--color--editorial-blue, #496AA5) !important;
  padding-bottom: 2px;
}

body.category-career-and-life .wp-block-navigation a:focus-visible,
body.category-career-and-life .ishi-category-archive a:focus-visible {
  outline: 2px solid var(--wp--preset--color--editorial-blue, #496AA5) !important;
  outline-offset: 3px;
}

/* 2. Category Archive Layout & Hero */
.ishi-category-archive {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.ishi-category-hero {
  position: relative;
  overflow: hidden;
}

.ishi-category-hero > *:not(.ishi-botanical-shadow) {
  position: relative;
  z-index: 1;
}

/* Botanical Shadow Decoration */
.ishi-botanical-shadow {
  position: absolute;
  top: -10px;
  right: -10px;
  width: 360px;
  height: 260px;
  pointer-events: none;
  user-select: none;
  z-index: 0;
  transition: opacity 0.3s ease;
}

@media (max-width: 1024px) {
  .ishi-botanical-shadow {
    width: 280px;
    height: 210px;
    opacity: 0.75;
  }
}

@media (max-width: 768px) {
  .ishi-botanical-shadow {
    display: none !important;
  }
  .ishi-category-archive {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .ishi-category-hero {
    padding-top: 2.25rem !important;
    padding-bottom: 1.75rem !important;
  }
  .ishi-category-hero h1,
  .ishi-category-hero-title {
    font-size: 1.85rem !important;
  }
}

/* Category Eyebrow */
.ishi-category-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  color: var(--wp--preset--color--editorial-blue, #496AA5);
  font-family: var(--wp--preset--font-family--sans-serif, sans-serif);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
  line-height: 1;
}

.ishi-category-eyebrow-rule {
  display: inline-block;
  width: 44px;
  height: 1px;
  background-color: var(--wp--preset--color--editorial-blue, #496AA5);
  vertical-align: middle;
}

/* Category Hero Title (Ink, Serif, NOT Blue) */
.ishi-category-hero-title,
.ishi-category-hero h1 {
  color: var(--wp--preset--color--contrast, #252626) !important;
  font-family: var(--wp--preset--font-family--serif, serif) !important;
  font-weight: 700;
  letter-spacing: -0.02em;
  margin: 0 0 0.5rem 0 !important;
}

/* Category Hero Description */
.ishi-category-hero-desc {
  color: var(--wp--preset--color--muted, #414D63) !important;
  line-height: 1.75 !important;
  max-width: 720px;
}

.ishi-category-separator {
  border: none !important;
  border-top: 1px solid var(--wp--preset--color--border, #DDD8D0) !important;
  opacity: 0.8;
}

/* 3. Category Archive Post Loop */
.ishi-category-post-card {
  transition: transform 0.2s ease;
}

.ishi-category-meta-row .wp-block-post-date {
  color: var(--wp--preset--color--muted, #414D63);
  font-size: 0.85rem;
  letter-spacing: 0.02em;
}

/* Category Link: Editorial Blue, no pill/badge, subtle bottom border */
.ishi-category-badge-link {
  margin: 0;
}

.ishi-category-badge-link a {
  color: var(--wp--preset--color--editorial-blue, #496AA5) !important;
  text-decoration: none !important;
  font-size: 0.85rem;
  font-weight: 500;
  border-bottom: 1px solid rgba(73, 106, 165, 0.4);
  padding-bottom: 1px;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.ishi-category-badge-link a:hover {
  color: var(--wp--preset--color--accent-deep, #354156) !important;
  border-bottom-color: var(--wp--preset--color--accent-deep, #354156);
}

/* Post Title: Ink, Serif, NOT bright blue on hover */
.ishi-category-post-title a {
  color: var(--wp--preset--color--contrast, #252626) !important;
  text-decoration: none !important;
  font-family: var(--wp--preset--font-family--serif, serif);
  transition: color 0.2s ease;
}

.ishi-category-post-title a:hover {
  color: var(--wp--preset--color--accent-deep, #354156) !important;
}

/* Read More Link: Editorial Blue, subtle underline, hover Deep Indigo */
.ishi-category-post-excerpt .wp-block-post-excerpt__more-link,
.ishi-category-post-excerpt a {
  color: var(--wp--preset--color--editorial-blue, #496AA5) !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(73, 106, 165, 0.4);
  padding-bottom: 1px;
  font-weight: 500;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.ishi-category-post-excerpt .wp-block-post-excerpt__more-link:hover,
.ishi-category-post-excerpt a:hover {
  color: var(--wp--preset--color--accent-deep, #354156) !important;
  border-bottom-color: var(--wp--preset--color--accent-deep, #354156);
}

/* ==========================================================================
   Phase 2E-B2 Article 75 Pilot: Definition Box (Option B: Editorial Blue Accent)
   Scope: Article 75 only (body.single-post.postid-75 .ishi-definition-box.is-article75-pilot)
   [DEC-029, DEC-030]
   ========================================================================== */
/* 狭い画面でも記事本文と見出しを画面端から離す。 */
@media (max-width: 800px) {
  body.single-post.postid-75 main.wp-block-group {
    box-sizing: border-box;
    padding-inline: 24px;
  }
}

/* Article 75の長いJAC見出しだけ、スマホ幅で語中改行を抑える。 */
@media (max-width: 480px) {
  body.single-post.postid-75 .wp-block-post-content > h2.wp-block-heading:last-of-type {
    font-size: 1.5rem;
  }
}

body.single-post.postid-75 .ishi-definition-box.is-article75-pilot {
  background-color: #FFFEFA;
  border: 1px solid #DDD8D0;
  border-left: 3px solid #496AA5;
  padding: 1.5rem 1.75rem;
  margin: 2rem 0 2.5rem 0;
  box-sizing: border-box;
}

body.single-post.postid-75 .ishi-definition-box.is-article75-pilot .ishi-def-eyebrow {
  color: #496AA5;
  font-family: var(--wp--preset--font-family--sans-serif, sans-serif);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin: 0 0 0.5rem 0;
  line-height: 1.2;
}

body.single-post.postid-75 .ishi-definition-box.is-article75-pilot .ishi-def-title {
  color: #252626;
  font-family: var(--wp--preset--font-family--serif, serif);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 1rem 0;
  border-bottom: 1px solid #DDD8D0;
  padding-bottom: 0.75rem;
}

body.single-post.postid-75 .ishi-definition-box.is-article75-pilot .ishi-def-core {
  color: #252626;
  font-size: 0.98rem;
  line-height: 1.75;
  margin: 0 0 1.25rem 0;
}

body.single-post.postid-75 .ishi-definition-box.is-article75-pilot .ishi-def-functions-label {
  color: #252626;
  font-size: 0.95rem;
  margin: 0 0 0.5rem 0;
}

body.single-post.postid-75 .ishi-definition-box.is-article75-pilot .ishi-def-list {
  color: #252626;
  font-size: 0.92rem;
  line-height: 1.7;
  padding-left: 1.25rem;
  margin: 0 0 1.25rem 0;
}

body.single-post.postid-75 .ishi-definition-box.is-article75-pilot .ishi-def-list li {
  margin-bottom: 0.75rem;
}

body.single-post.postid-75 .ishi-definition-box.is-article75-pilot .ishi-def-note {
  color: #414D63;
  font-size: 0.85rem;
  line-height: 1.6;
  margin: 0;
  border-top: 1px dashed #DDD8D0;
  padding-top: 0.75rem;
}

@media (max-width: 768px) {
  body.single-post.postid-75 .ishi-definition-box.is-article75-pilot {
    padding: 1.25rem 1rem;
    margin: 1.5rem 0 2rem 0;
  }
  body.single-post.postid-75 .ishi-definition-box.is-article75-pilot .ishi-def-title {
    font-size: 1.2rem;
  }
}

/* ==========================================================================
   Article 41 Summary Box Pilot Implementation (DEC-033 / DEC-034)
   Scoped strictly to Post ID 41
   ========================================================================== */

body.single-post.postid-41 .ishi-summary-box.is-article41-pilot {
  background: var(--wp--preset--color--surface, #FFFEFA);
  border: 1px solid var(--wp--preset--color--border, #DDD8D0);
  border-left: 3px solid var(--wp--preset--color--editorial-blue, #496AA5);
  border-radius: 4px;
  padding: 1.5rem 1.75rem;
  margin: 2rem 0 2.5rem 0;
  box-sizing: border-box;
}

body.single-post.postid-41 .ishi-summary-box.is-article41-pilot .ishi-summary-eyebrow {
  color: var(--wp--preset--color--editorial-blue, #496AA5);
  font-family: var(--wp--preset--font-family--sans-serif, sans-serif);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin: 0 0 0.5rem 0;
  line-height: 1.2;
}

body.single-post.postid-41 .ishi-summary-box.is-article41-pilot .ishi-summary-title {
  color: var(--wp--preset--color--primary, #252626);
  font-family: var(--wp--preset--font-family--serif, serif);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 1rem 0;
  border-bottom: 1px solid var(--wp--preset--color--border, #DDD8D0);
  padding-bottom: 0.75rem;
}

body.single-post.postid-41 .ishi-summary-box.is-article41-pilot .ishi-summary-list {
  color: var(--wp--preset--color--primary, #252626);
  font-size: 0.95rem;
  line-height: 1.75;
  padding-left: 1.25rem;
  margin: 0;
}

body.single-post.postid-41 .ishi-summary-box.is-article41-pilot .ishi-summary-list li {
  margin-bottom: 0.75rem;
}

body.single-post.postid-41 .ishi-summary-box.is-article41-pilot .ishi-summary-list li:last-child {
  margin-bottom: 0;
}

@media (max-width: 800px) {
  body.single-post.postid-41 main.wp-block-group {
    box-sizing: border-box;
    padding-inline: 24px;
  }
}

@media (max-width: 768px) {
  body.single-post.postid-41 .ishi-summary-box.is-article41-pilot {
    padding: 1.25rem 1rem;
    margin: 1.5rem 0 2rem 0;
  }
  body.single-post.postid-41 .ishi-summary-box.is-article41-pilot .ishi-summary-title {
    font-size: 1.2rem;
  }
}


