/*
 * Harashina Standard — Gutenberg標準ブロックの基礎スタイル
 *
 * Snow Monkey Blocksから将来的に離れるための土台として、標準ブロック
 * (core/group, core/columns, core/cover, core/image, core/heading,
 * core/paragraph, core/buttons, core/list)だけでも確定済みprototypeの
 * トーン（シンプル・洗練・余白・落ち着いた配色）で構成できるようにする。
 *
 * 色・フォント・spacingの基本値はtheme.jsonの styles（global styles）で
 * 既に全ブロック・エディタへ適用されているため、ここで書くのは
 * theme.jsonのglobal stylesだけではカバーしきれない、各コアブロック
 * 固有の見た目調整のみに絞っている。
 *
 * フロントエンドとエディタ（add_editor_style）の両方から読み込み、
 * 見た目の乖離を防ぐ。--wp--preset--* はエディタiframe内でも
 * WordPressが自動生成するため、tokens.cssの読み込み有無に関わらず
 * どちらの文脈でも利用できる。
 *
 * 今回はSnow Monkey Blocksの置換・独自カスタムブロックの新設は行わない。
 */

/* ---- Paragraph: 可読性のための行長制限（wide/full展開時は解除） ----
   70chはラテン文字の可読性（1行50〜75文字）を想定した値で、日本語では
   全角1文字がおよそ2ch相当のため、実質35文字前後で折り返ってしまい、
   不自然に早い改行になる（2026-09-16確認、ID665で発覚）。通常固定ページ
   （page.php／one-column.php／one-column-slim.php、いずれも.entry-content
   を出力）ではこの70ch制限自体を外し、段落を親コンテナ（entry-content、
   slimなら46rem）の幅までそのまま使わせる。.entry-contentを持たない
   専用テンプレート（hpproduction等）やフロントページ（body.home）には
   このセレクタ自体が存在しないため影響しない。 ---- */
.wp-block-paragraph{
	max-width: 70ch;
}
.alignwide > .wp-block-paragraph,
.alignfull > .wp-block-paragraph,
.wp-block-paragraph.alignwide,
.wp-block-paragraph.alignfull{
	max-width: none;
}
body:not(.home) .entry-content .wp-block-paragraph{
	max-width: none;
}

/* ---- Heading: 見出し間の縦リズム（フォント・weightはtheme.json側） ---- */
.wp-block-heading{
	margin-bottom: var(--wp--preset--spacing--s, 1rem);
}

/* ---- Group: 特別な上書きは不要（layout設定はtheme.json側で完結）。
   背景色プリセットを使った際に、内側の余白が詰まりすぎないよう
   最低限のpaddingだけ用意する（著者が明示的にpaddingを設定しない場合の保険）。 ---- */
.wp-block-group.has-background:not([style*="padding"]){
	padding: var(--wp--preset--spacing--m, 1.5rem);
}

/* ---- Columns: カラム間の縦リズム。折り返し（モバイル縦積み）は
   core標準の挙動をそのまま使う（独自の上書きはしない）。 ---- */
.wp-block-columns{
	margin-bottom: var(--wp--preset--spacing--l, 2rem);
}
.wp-block-columns:last-child{
	margin-bottom: 0;
}

/* ---- Cover: 角丸・強い装飾を付けない、静かなトーン ---- */
.wp-block-cover{
	border-radius: 0;
}

/* ---- Image: 角丸なし、キャプションはラベル用フォントで控えめに ---- */
.wp-block-image img{
	border-radius: 0;
	display: block;
	height: auto;
	max-width: 100%;
}
.wp-block-image figcaption{
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.78rem;
	letter-spacing: 0.03em;
	color: var(--wp--preset--color--text-muted);
	margin-top: 0.6rem;
}

/* ---- Buttons: 一般的な単色の塗りつぶしボタンを既定にしない。
   「Outline」スタイルは既存header.phpの.site-header__shopと同じ
   考え方（枠線のみ・hoverでaccent色）に揃え、既定（Fill）も
   鮮やかな単色ではなくtext色ベースの落ち着いた塗りにする。 ---- */
.wp-block-buttons{
	gap: var(--wp--preset--spacing--s, 1rem);
	margin-bottom: var(--wp--preset--spacing--s, 1rem);
}
.wp-block-buttons:last-child{
	margin-bottom: 0;
}

.wp-block-button__link{
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.82rem;
	letter-spacing: 0.05em;
	padding: 0.6em 1.4em;
	border-radius: 2px;
	border: 1px solid var(--wp--preset--color--text);
	transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link{
	background-color: var(--wp--preset--color--text);
	color: var(--wp--preset--color--background);
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:focus{
	background-color: var(--wp--preset--color--accent);
	border-color: var(--wp--preset--color--accent);
}

.wp-block-button.is-style-outline .wp-block-button__link{
	background-color: transparent;
	color: var(--wp--preset--color--text);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:focus{
	color: var(--wp--preset--color--accent);
	border-color: var(--wp--preset--color--accent);
}

/* ---- List: 読みやすい行間・マーカーは控えめな文字色 ---- */
.wp-block-list{
	padding-left: 1.4em;
	color: var(--wp--preset--color--text);
}
.wp-block-list li{
	margin-bottom: 0.5em;
}
.wp-block-list li:last-child{
	margin-bottom: 0;
}
