.kf-single { max-width: 860px; background: var(--kf-white); border: 1px solid var(--kf-border); border-radius: var(--kf-radius); padding: 28px; }
.kf-single h1 { margin: 10px 0; font-size: clamp(1.8rem, 4vw, 2.7rem); line-height: 1.35; }
.kf-single__thumb { margin: 22px 0; }
.kf-single__image { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--kf-radius); }
.kf-summary { padding: 16px 18px; border-left: 5px solid var(--kf-blue); background: #EEF4FF; border-radius: 0 var(--kf-radius) var(--kf-radius) 0; font-weight: 700; }
.kf-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; color: var(--kf-muted); font-size: .9rem; }
.kf-affiliate-notice { margin: 18px 0; padding: 12px 14px; border: 1px solid var(--kf-border); border-left: 4px solid var(--kf-blue); border-radius: 0 var(--kf-radius) var(--kf-radius) 0; background: #F7FAFF; color: var(--kf-text); font-size: .92rem; line-height: 1.65; }
.kf-affiliate-notice p { margin: 0; }
.kf-affiliate-notice p + p { margin-top: 4px; }
.kf-toc { border: 1px solid var(--kf-border); background: var(--kf-bg); border-radius: var(--kf-radius); padding: 16px; margin: 24px 0; }
.kf-toc ol { margin-bottom: 0; }
.kf-entry { font-size: 1rem; }
.kf-entry h2 { margin-top: 2em; padding-bottom: 8px; border-bottom: 3px solid var(--kf-border); font-size: 1.6rem; line-height: 1.45; }
.kf-entry h3 { margin-top: 1.6em; border-left: 4px solid var(--kf-blue); padding-left: 10px; font-size: 1.25rem; }
.kf-entry h4 { margin-top: 1.4em; color: var(--kf-navy); font-size: 1.08rem; }
.kf-entry p { margin: 1em 0; }
.kf-entry a { color: var(--kf-blue); text-decoration: underline; text-underline-offset: 3px; }
.kf-entry ul, .kf-entry ol { padding-left: 1.4em; }
.kf-entry li + li { margin-top: .35em; }
.kf-entry strong { color: var(--kf-navy); }
.kf-entry .wp-block-table { overflow-x: auto; margin: 24px 0; }
.kf-entry .wp-block-table::before { content: "横にスクロールできます"; display: block; margin-bottom: 6px; color: var(--kf-muted); font-size: .78rem; }
.kf-entry table { width: 100%; min-width: 620px; border-collapse: collapse; display: table; }
.kf-entry th, .kf-entry td { border: 1px solid var(--kf-border); padding: 10px; }
.kf-entry th { background: var(--kf-bg); }
.kf-entry blockquote { border-left: 5px solid var(--kf-blue); margin: 22px 0; padding: 12px 18px; background: var(--kf-bg); color: var(--kf-text); }
.kf-entry img { border-radius: var(--kf-radius); }
.kf-author { margin-top: 28px; padding: 18px; border: 1px solid var(--kf-border); border-radius: var(--kf-radius); background: var(--kf-bg); }
.kf-box,
.is-style-kf-point,
.is-style-kf-caution,
.is-style-kf-note,
.is-style-kf-conclusion,
.is-style-kf-checklist,
.kf-entry .kf-conclusion,
.kf-entry .kf-understand,
.kf-entry .kf-affiliate-memo,
.kf-entry .kf-service-cta {
	margin: 22px 0;
	padding: 18px 20px;
	border: 1px solid var(--kf-border);
	border-left: 5px solid var(--kf-blue);
	border-radius: 0 var(--kf-radius) var(--kf-radius) 0;
	background: #EEF4FF;
}
.is-style-kf-caution { border-left-color: var(--kf-accent); background: #FFF8E6; }
.is-style-kf-note { border-left-color: var(--kf-muted); background: var(--kf-bg); }
.is-style-kf-conclusion, .kf-entry .kf-conclusion { border-left-color: var(--kf-blue); background: #EEF4FF; }
.is-style-kf-checklist, .kf-entry .kf-understand { background: var(--kf-white); }
.kf-entry .kf-conclusion h2,
.kf-entry .kf-understand h2,
.kf-entry .kf-affiliate-memo h2,
.kf-entry .kf-service-cta h2 { margin-top: 0; font-size: 1.22rem; border-bottom: 0; padding-bottom: 0; }
.kf-entry .kf-understand ul { margin-bottom: 0; }
.kf-entry .kf-understand li::marker,
.is-style-kf-checklist li::marker { color: var(--kf-blue); }
.kf-entry .kf-affiliate-memo { display: none; }
.logged-in .kf-entry .kf-affiliate-memo { display: block; border-left-color: var(--kf-accent); background: #FFF8E6; }
.kf-entry .kf-service-cta { display: grid; gap: 10px; background: linear-gradient(135deg, #EEF4FF, #FFFFFF); }
.kf-entry .kf-service-cta p:last-child { margin-bottom: 0; }
