.blog-content h2[id],.blog-content h3[id]{scroll-margin-top:92px}
.blog-auto-toc{margin-bottom:14px;padding:16px;border:1px solid #e2e8e4;border-radius:16px;background:#fbfcfb}
.blog-auto-toc>span{display:block;font-size:12px;color:#7b8781;margin-bottom:8px}
.blog-auto-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.blog-auto-toc li{margin:0}
.blog-auto-toc li.toc-level-3{padding-right:14px;font-size:13px}
.blog-auto-toc a{display:block;color:#31564b;text-decoration:none;line-height:1.7}
.blog-auto-toc a:hover{text-decoration:underline}
.blog-internal-links .muted{font-size:12px;line-height:1.8;margin-top:0}
.blog-link-suggestions{display:grid;gap:7px}
.blog-link-suggestions button{appearance:none;border:1px solid #dde5e0;background:#fff;border-radius:11px;padding:9px 10px;text-align:right;color:#31564b;cursor:pointer;font:inherit;font-size:12px;line-height:1.7}
.blog-link-suggestions button:hover{border-color:#9bb7ac;background:#f8fbf9}
.blog-content h2:first-child{margin-top:.5em}
@media(max-width:900px){.blog-auto-toc{margin-bottom:12px}.blog-auto-toc ol{max-height:260px;overflow:auto}}

.blog-seo-checklist{list-style:none;margin:10px 0 14px;padding:0;display:grid;gap:6px}
.blog-seo-checklist li{position:relative;padding-right:20px;color:#8a625d;font-size:12px;line-height:1.7}
.blog-seo-checklist li:before{content:'○';position:absolute;right:0;top:0;color:#b78d84}
.blog-seo-checklist li.is-ok{color:#33715f}
.blog-seo-checklist li.is-ok:before{content:'✓';color:#2e8a6b;font-weight:800}

.blog-faq-reader{margin:2.2rem 0;padding:18px;border:1px solid #e2e8e4;border-radius:18px;background:#fbfcfb}
.blog-faq-reader>h2{margin-top:0}
.blog-faq-item{border-top:1px solid #e7ece8;padding:4px 0}
.blog-faq-item:first-of-type{border-top:0}
.blog-faq-item summary{cursor:pointer;list-style:none;font-weight:800;color:#294f44;padding:14px 4px;position:relative;padding-left:28px}
.blog-faq-item summary::-webkit-details-marker{display:none}
.blog-faq-item summary:after{content:'+';position:absolute;left:4px;top:12px;font-size:20px;color:#8c4d35}
.blog-faq-item[open] summary:after{content:'−'}
.blog-faq-answer{padding:0 4px 14px;color:#5e6b65;line-height:2}
.blog-faq-answer p{margin:0}
