/* ========================================
   コアブロックの補正・調整
   WordPressコアブロックの動作を補正・拡張
======================================== */

mark {
  background-color: transparent;
}

/* すべての WordPress ブロックに上下マージンを適用 */
/* :where() を使用して詳細度を最小限に抑え、簡単に上書き可能にする */
:where(.wp-block + .wp-block),
:where([class*="wp-block-"] + [class*="wp-block-"]) {
  margin-block-start: var(--wp--style--block-gap);
  margin-block-end: 0;
}

.wp-block-media-text>.wp-block-media-text__content {
  padding-right: 0;
  padding-left: 8%;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
  padding-right: 8%;
  padding-left: 0;
}

@media screen and (max-width: 800px) {

  .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content,
  .wp-block-media-text>.wp-block-media-text__content {
    padding-right: 0;
    padding-left: 0;
  }

  .wp-block-media-text>.wp-block-media-text__media {
    margin-bottom: 2rem;
  }
}
.wp-block-media-text__content,
.wp-block-media-text__content>* {
  margin-block-start: 0;
}

/* 詳細、アコーディオンブロック */
.wp-block-details {
  position: relative;
  padding-top: var(--wp--preset--spacing--20);
  padding-right: var(--wp--preset--spacing--30);
  padding-bottom: var(--wp--preset--spacing--20);
  padding-left: var(--wp--preset--spacing--30);
  background-color: var(--wp--preset--color--cream-light-bg);
}

/* パターンのタイトルを表示させる（エディタ内のみ） */
.block-editor-block-patterns-list__item::after {
  content: attr(aria-label);
  display: block;
  margin-top: 6px;
  font-size: 13px;
  color: #1e1e1e;
}

.block-editor-block-patterns-list__item {
  display: flex;
  flex-direction: column;
}

.block-editor-block-patterns-list__item .block-editor-block-preview__container {
  flex: 1;
}

/* 画像の回り込みを持つグループだけ flow-root でクリア */
.wp-block-group:has(.wp-block-image.alignleft),
.wp-block-group:has(.wp-block-image.alignright) {
  display: flow-root;
}

/* 画像の回り込み */
.wp-block-image.alignleft {
  float: left;
  margin-block-start: 0 !important;
  margin-inline-start: 0;
  margin-inline-end: 0;
  margin-bottom: var(--wp--style--block-gap);
  width: auto;
  padding-right: calc(var(--wp--style--block-gap) * 2);
}

.wp-block-image.alignright {
  float: right;
  margin-block-start: 0 !important;
  margin-inline-start: 0;
  margin-inline-end: 0;
  margin-bottom: var(--wp--style--block-gap);
  width: auto;
  padding-left: calc(var(--wp--style--block-gap) * 2);
}

.wp-block-image.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* モバイルでは回り込みを解除 */
@media (max-width: 800px) {

  .wp-block-image.alignleft,
  .wp-block-image.alignright {
    float: none;
    padding-left: 0;
    padding-right: 0;
  }
}

/* セパレーターの線を1pxに（全スタイル共通） */
.entry-content .wp-block-separator {
  border-bottom-width: 1px;
}

/* デフォルトのseparatorのみ全幅に */
.entry-content .wp-block-separator:not([class*="is-style-"]) {
  max-width: 100%;
  width: 100%;
}
