/* ==========================================================================
   corop — 投稿本文（エディタで入力した内容）の共通スタイル
   --------------------------------------------------------------------------
   ● フロント側: <div class="corop-content"> の中に効く
   ● 管理画面のエディタ側: assets/css/editor.css が同じ値を持つ
       （WordPress が自動で .editor-styles-wrapper を前置するため、
         エディタ用は「.corop-content 」を外した素の要素セレクタで書く）
   ● editor.css は content.css から機械生成できる:
       python3 -c "import re,io;s=open('assets/css/content.css',encoding='utf-8').read();\
       print(s.replace('.corop-content ',''))" > assets/css/editor.css
       （生成後、先頭コメントとコンテナ用ルールだけ手で調整）
   ========================================================================== */

.corop-content {
	max-width: 736px; /* Figma 654 × 1.125 */
	margin-inline: auto;
	color: var(--corop-ink, #4c4948);
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 2;
	word-break: break-word;
}

/* ===== 段落 ===== */
.corop-content p {
	margin: 0 0 1.8em;
}
.corop-content > *:last-child {
	margin-bottom: 0;
}

/* ===== 見出し ===== */
.corop-content h1,
.corop-content h2,
.corop-content h3,
.corop-content h4,
.corop-content h5,
.corop-content h6 {
	margin: 2.4em 0 0.9em;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.6;
}
.corop-content h1 {
	font-size: 28px;
}
.corop-content h2 {
	padding-bottom: 0.5em;
	border-bottom: 1px solid rgba(76, 73, 72, 0.25);
	font-size: 24px;
}
.corop-content h3 {
	position: relative;
	padding-left: 16px;
	font-size: 20px;
}
.corop-content h3::before {
	content: "";
	position: absolute;
	top: 0.35em;
	left: 0;
	width: 4px;
	height: 1.1em;
	border-radius: 2px;
	background: var(--corop-orange, #d79000);
}
.corop-content h4 {
	font-size: 17px;
}
.corop-content h5,
.corop-content h6 {
	font-size: 15px;
}

/* ===== リンク ===== */
.corop-content a {
	color: var(--corop-orange, #d79000);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.corop-content a:hover {
	opacity: 0.7;
}

/* ===== リスト ===== */
.corop-content ul,
.corop-content ol {
	margin: 0 0 1.8em;
	padding-left: 1.6em;
}
.corop-content li {
	margin-bottom: 0.4em;
}
.corop-content ul li::marker {
	color: var(--corop-olive, #9d8a3c);
}
.corop-content ol li::marker {
	color: var(--corop-olive, #9d8a3c);
	font-weight: 500;
}

/* ===== 引用 ===== */
.corop-content blockquote {
	margin: 0 0 1.8em;
	padding: 20px 24px;
	border-left: 4px solid var(--corop-olive-tint, rgba(157, 138, 60, 0.2));
	background: rgba(217, 217, 217, 0.25);
}
.corop-content blockquote p:last-child {
	margin-bottom: 0;
}
.corop-content blockquote cite {
	display: block;
	margin-top: 8px;
	font-size: 13px;
	font-style: normal;
	opacity: 0.7;
}

/* ===== 画像 ===== */
.corop-content img {
	max-width: 100%;
	height: auto;
}
.corop-content figure {
	margin: 0 0 1.8em;
}
.corop-content figcaption {
	margin-top: 8px;
	font-size: 13px;
	line-height: 1.7;
	text-align: center;
	opacity: 0.75;
}

/* ===== 表 ===== */
.corop-content table {
	width: 100%;
	margin: 0 0 1.8em;
	border-collapse: collapse;
	font-size: 14px;
}
.corop-content th,
.corop-content td {
	padding: 10px 12px;
	border: 1px solid #e1e1e1;
	line-height: 1.7;
	vertical-align: middle;
}
.corop-content th {
	background: var(--corop-light-olive, #dcd7c4);
	font-weight: 500;
}
.corop-content td {
	background: var(--corop-white, #fff);
}

/* ===== 区切り線 ===== */
.corop-content hr {
	margin: 2.6em 0;
	border: 0;
	border-top: 1px dashed rgba(76, 73, 72, 0.45);
}

/* ===== インライン ===== */
.corop-content strong,
.corop-content b {
	font-weight: 600;
}
.corop-content mark {
	background: rgba(215, 144, 0, 0.18);
	color: inherit;
}
.corop-content code {
	padding: 2px 6px;
	border-radius: 3px;
	background: rgba(217, 217, 217, 0.5);
	font-size: 0.92em;
}
.corop-content pre {
	margin: 0 0 1.8em;
	padding: 16px 18px;
	border-radius: 6px;
	background: rgba(217, 217, 217, 0.5);
	overflow-x: auto;
	font-size: 13px;
	line-height: 1.8;
}

/* ===== WordPress 標準の配置クラス ===== */
.corop-content .aligncenter {
	display: block;
	margin-inline: auto;
	text-align: center;
}
.corop-content .alignleft {
	float: left;
	margin: 0 1.5em 1em 0;
}
.corop-content .alignright {
	float: right;
	margin: 0 0 1em 1.5em;
}
.corop-content .alignwide {
	width: calc(100% + 120px);
	max-width: none;
	margin-inline: -60px;
}
.corop-content .alignfull {
	width: 100vw;
	max-width: none;
	margin-inline: calc(50% - 50vw);
}
.corop-content .wp-caption {
	max-width: 100%;
}
.corop-content .wp-caption-text {
	margin-top: 8px;
	font-size: 13px;
	text-align: center;
	opacity: 0.75;
}

/* ===== ブロックエディタのブロック ===== */
.corop-content .wp-block-image {
	margin: 0 0 1.8em;
}
.corop-content .wp-block-buttons {
	margin: 0 0 1.8em;
}
.corop-content .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0 32px;
	border: 2px solid var(--corop-orange, #d79000);
	border-radius: 999px;
	background: var(--corop-white, #fff);
	color: var(--corop-orange, #d79000);
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-decoration: none;
}
.corop-content .wp-block-separator {
	margin: 2.6em auto;
	border: 0;
	border-top: 1px dashed rgba(76, 73, 72, 0.45);
}
.corop-content .wp-block-embed,
.corop-content .wp-block-embed__wrapper {
	margin: 0 0 1.8em;
}
.corop-content .wp-block-table figcaption {
	text-align: center;
}
.corop-content .corop-content__pages {
	margin-top: 2em;
	letter-spacing: 0.1em;
}

/* ==========================================================================
   SP
   ========================================================================== */
@media (max-width: 768px) {
	.corop-content {
		font-size: 14px;
		line-height: 1.95;
	}
	.corop-content h1 {
		font-size: 22px;
	}
	.corop-content h2 {
		font-size: 19px;
	}
	.corop-content h3 {
		font-size: 17px;
	}
	.corop-content h4 {
		font-size: 15px;
	}
	.corop-content blockquote {
		padding: 16px 18px;
	}
	.corop-content table {
		display: block;
		overflow-x: auto;
		white-space: nowrap;
	}
	.corop-content .alignwide {
		width: 100%;
		margin-inline: 0;
	}
	.corop-content .alignleft,
	.corop-content .alignright {
		float: none;
		margin: 0 0 1.5em;
	}
}
