/* Shared extras for blog posts (contents list, series navigation, Did You Know, FAQ) */
.post-body .toc-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:18px 22px;margin:22px 0}
.post-body .toc-box strong{display:block;color:#1e3c72;margin-bottom:8px;font-size:1.05rem}
.post-body .toc-box ol{margin:0;padding-left:22px;columns:2;column-gap:32px}
.post-body .toc-box li{margin:4px 0;break-inside:avoid}
.post-body .toc-box a{color:#334155;text-decoration:none}.post-body .toc-box a:hover{color:#7c3aed;text-decoration:underline}
.post-body .series-box{background:linear-gradient(135deg,#f5f3ff,#fff);border:1px solid #ddd6fe;border-radius:14px;padding:18px 22px;margin:34px 0}
.post-body .series-box strong{display:block;color:#5b21b6;margin-bottom:8px;font-size:1.05rem}
.post-body .series-box ol{margin:0 0 14px;padding-left:22px;columns:2;column-gap:28px}
.post-body .series-box li{margin:4px 0;break-inside:avoid}.post-body .series-box li.current{font-weight:700;color:#1e3c72}.post-body .series-box li.soon{color:#94a3b8}
.post-body .series-box a{color:#334155;text-decoration:none}.post-body .series-box a:hover{color:#7c3aed;text-decoration:underline}
.post-body .series-pn{display:flex;gap:12px;flex-wrap:wrap}
.post-body .series-pn a,.post-body .series-pn span{flex:1 1 220px;padding:10px 14px;border-radius:10px;background:#fff;border:1px solid #ddd6fe;color:#1e3c72;font-weight:600;text-decoration:none}
.post-body .series-pn span{color:#94a3b8;font-weight:500}
.post-body .series-adv{margin:12px 0 0;font-size:.95rem}
.post-body .dyk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:16px 0}
.post-body .dyk-card{background:linear-gradient(135deg,#fffbeb,#fff);border:1px solid #fde68a;border-radius:14px;padding:18px 20px}
.post-body .dyk-card i{color:#d97706;font-size:1.3rem;margin-bottom:8px;display:block}.post-body .dyk-card p{margin:0;line-height:1.65}
.post-body .faq-list details{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin:10px 0;padding:0 18px}
.post-body .faq-list summary{cursor:pointer;font-weight:700;color:#1e3c72;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}
.post-body .faq-list summary::-webkit-details-marker{display:none}.post-body .faq-list summary::after{content:"+";font-size:1.3rem;color:#7c3aed}
.post-body .faq-list details[open] summary::after{content:"\2212"}.post-body .faq-list details p{margin:0 0 14px;line-height:1.7}
@media(max-width:640px){.post-body .toc-box ol,.post-body .series-box ol{columns:1}}
