/* =========================================================
   05-blocks.css
   ブロックエディタ出力の補正。最小限。
   ========================================================= */

.wp-block-image img {
	border-radius: var(--nt-radius-md);
}

.wp-block-image figcaption {
	color: var(--nt-color-muted);
	font-size: var(--nt-fs-sm);
	text-align: center;
	margin-top: 0.5em;
}

.wp-block-button__link {
	border-radius: var(--nt-radius-pill);
	font-weight: 600;
	padding: 0.75em 1.5em;
}

.wp-block-quote,
.wp-block-pullquote {
	border-left: 4px solid var(--nt-color-primary);
	background: var(--nt-color-surface);
	padding: 1em 1.25em;
	margin: 1.5em 0;
	border-radius: 0 var(--nt-radius-md) var(--nt-radius-md) 0;
}

.wp-block-table table {
	border-radius: var(--nt-radius-sm);
	overflow: hidden;
	border: 1px solid var(--nt-color-border);
}

.wp-block-separator {
	border: 0;
	border-top: 1px solid var(--nt-color-border);
	opacity: 1;
	margin-block: 2em;
}

.wp-block-cover {
	border-radius: var(--nt-radius-lg);
	overflow: hidden;
}

/* alignwide / alignfull は theme.json + WP コア出力に任せる。
   テーマ側からは触らない。 */

.wp-block-gallery .wp-block-image img {
	border-radius: var(--nt-radius-md);
}

.wp-block-code {
	background: var(--nt-color-surface);
	border: 1px solid var(--nt-color-border);
	border-radius: var(--nt-radius-md);
	padding: 1em 1.25em;
}

.wp-block-pullquote cite,
.wp-block-quote cite {
	color: var(--nt-color-muted);
	font-size: var(--nt-fs-sm);
}

/* =========================================================
   Custom block styles (register_block_style, v0.5 〜)
   inc/setup.php の nt_register_block_styles() で登録した
   .is-style-nt-* バリエーション用のフロント / エディタ共通スタイル。
   既存トークンのみで実装し、4 プリセットで自然に馴染むようにする。
   ========================================================= */

/* core/group : Card Surface — 本文内で使うカード型の囲み */
.wp-block-group.is-style-nt-card-surface {
	background: var(--nt-card-bg);
	border: 1px solid var(--nt-card-border);
	border-radius: var(--nt-radius-lg);
	box-shadow: var(--nt-shadow-sm);
	padding: clamp(20px, 4vw, 32px);
}

/* core/group : Hero Surface — 固定ページ内の簡易ヒーロー / 強調セクション */
.wp-block-group.is-style-nt-hero-surface {
	background: var(--nt-bg-hero);
	color: var(--nt-color-text);
	border: 1px solid var(--nt-color-border);
	border-radius: var(--nt-radius-lg);
	padding: clamp(28px, 6vw, 64px);
	overflow: hidden;
}

/* core/quote : Highlight Quote — 強調引用 / お客様の声 */
.wp-block-quote.is-style-nt-highlight-quote {
	background: var(--nt-color-surface);
	border: 1px solid var(--nt-color-border);
	border-left: 4px solid var(--nt-color-primary);
	border-radius: var(--nt-radius-md);
	padding: clamp(16px, 3vw, 24px) clamp(20px, 4vw, 28px);
	margin: var(--nt-stack) 0;
}

.wp-block-quote.is-style-nt-highlight-quote p {
	font-size: var(--nt-fs-md);
	color: var(--nt-color-text);
}

.wp-block-quote.is-style-nt-highlight-quote cite {
	display: block;
	margin-top: 0.75em;
	color: var(--nt-color-muted);
	font-size: var(--nt-fs-sm);
	font-style: normal;
}

/* core/separator : Branded Separator — primary → accent のブランド区切り線 */
.wp-block-separator.is-style-nt-branded-separator {
	width: min(160px, 40%);
	height: 3px;
	margin: clamp(28px, 5vw, 48px) auto;
	border: 0;
	border-top: 0;
	border-radius: var(--nt-radius-pill);
	background: linear-gradient(90deg, var(--nt-color-primary) 0%, var(--nt-color-accent) 100%);
	opacity: 1;
}

/* core/list : Check List — 特徴 / メリット / チェック項目 */
.wp-block-list.is-style-nt-check-list,
ul.is-style-nt-check-list {
	list-style: none;
	padding-left: 0;
	color: var(--nt-color-text);
}

.wp-block-list.is-style-nt-check-list > li,
ul.is-style-nt-check-list > li {
	position: relative;
	padding-left: 1.75em;
	margin-bottom: 0.5em;
}

.wp-block-list.is-style-nt-check-list > li::before,
ul.is-style-nt-check-list > li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 0.25em;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.1em;
	height: 1.1em;
	border-radius: 50%;
	background: var(--nt-color-primary);
	color: var(--nt-color-primary-contrast);
	font-size: 0.7em;
	font-weight: 700;
	line-height: 1;
}

/* 入れ子リストはチェックスタイルを継承させない (元の list-style に戻す) */
.wp-block-list.is-style-nt-check-list ul,
.wp-block-list.is-style-nt-check-list ol,
ul.is-style-nt-check-list ul,
ul.is-style-nt-check-list ol {
	list-style: revert;
	padding-left: 1.5em;
}

.wp-block-list.is-style-nt-check-list ul > li::before,
.wp-block-list.is-style-nt-check-list ol > li::before,
ul.is-style-nt-check-list ul > li::before,
ul.is-style-nt-check-list ol > li::before {
	content: none;
}

.wp-block-list.is-style-nt-check-list ul > li,
.wp-block-list.is-style-nt-check-list ol > li,
ul.is-style-nt-check-list ul > li,
ul.is-style-nt-check-list ol > li {
	padding-left: 0;
}
