/* PNZ related articles and reading aids. */
.pnz-related-guides { margin: 0 0 25px; border-radius: 9px; background: #fff; }
.pnz-related-guides h2 { font-size: 1.08rem; font-weight: 780; color: #fff; background: #101827; border-left: 4px solid #0b8043; padding: 13px 15px; margin: 0 0 8px; }
.pnz-related-guides-list { padding: 0; margin: 0; list-style: none; }
.pnz-related-guides-list li { border-bottom: 1px solid #edf0f4; margin: 0; padding: 11px 0; list-style: none; }
.pnz-related-guides-list li:last-child { border: 0; }
.pnz-related-guides-list a { display: flex; gap: 13px; align-items: flex-start; text-decoration: none; color: #253044; font-weight: 650; font-size: .89rem; line-height: 1.5; }
.pnz-related-guides-list a:hover { color: #0b8043; text-decoration: underline; }
.pnz-related-thumb, .pnz-related-no-thumb { flex: 0 0 94px; width: 94px; height: 70px; object-fit: cover; border-radius: 6px; }
.pnz-related-no-thumb { background: #f0f5f4; display: grid; place-items: center; font-size: 1.35rem; }
.pnz-related-below { max-width: 760px; margin: 28px auto; padding: 0 15px; }
.pnz-related-below .pnz-related-guides-list { display: grid; grid-template-columns: repeat(auto-fit,minmax(210px,1fr)); gap: 15px; }
.pnz-related-below .pnz-related-guides-list li { border: 1px solid #e5e7eb; padding: 12px; border-radius: 10px; }
/* Prevent Kadence's native similar-post carousel from appearing if it is still enabled. */
.pnz-features-active.single-post .entry-related { display: none !important; }

#pnz-reading-progress { position: fixed; z-index: 10000; height: 4px; top: 0; left: 0; right: 0; background: #e5e7eb; pointer-events: none; }
#pnz-reading-progress-bar { display: block; width: 100%; height: 100%; transform-origin: left center; transform: scaleX(0); background: #f59e0b; transition: none; }

.pnz-auto-toc { box-sizing: border-box; border-radius: 10px; border: 1px solid #dfe5ed; border-left: 4px solid #0b8043; background: #f8fafc; margin: 1.4em 0 1.8em; clear: both; }
.pnz-auto-toc details { margin: 0; padding: 0; }
.pnz-auto-toc summary { display: flex; align-items: center; justify-content: space-between; font-weight: 750; line-height: 1.4; padding: 14px 17px; font-size: 1rem; cursor: pointer; list-style: none; }
.pnz-auto-toc summary::-webkit-details-marker { display: none; }
.pnz-auto-toc summary::after { content: '+'; color: #0b8043; font-weight: 700; font-size: 1.25rem; }
.pnz-auto-toc details[open] > summary::after { content: '−'; }
.entry-content .pnz-auto-toc ol { margin: 0; padding: 0 18px 12px; list-style: none; counter-reset: pnz-toc; }
.entry-content .pnz-auto-toc li { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 9px; margin: 0 0 8px; line-height: 1.45; padding: 0; list-style: none; }
.entry-content .pnz-auto-toc li::before { display: none !important; content: none !important; }
.pnz-auto-toc .pnz-toc-num { grid-column: 1; text-align: right; color: #5d6675; font-size: .88rem; }
.entry-content .pnz-auto-toc li a { grid-column: 2; color: #2563eb !important; text-decoration: none !important; font-size: .91rem; }
.entry-content .pnz-auto-toc li a:hover { text-decoration: underline !important; }
.pnz-auto-toc .pnz-toc-extra[hidden] { display: none; }
.pnz-auto-toc .pnz-toc-toggle { cursor: pointer; background: none; border: 0; display: block; font-size: .83rem; font-weight: 720; color: #0b8043; padding: 0 18px 14px; }
.pnz-auto-toc .pnz-toc-toggle:hover { text-decoration: underline; }
h2[id^="pnz-section-"] { scroll-margin-top: 30px; }
@media(max-width: 600px) {
  .pnz-auto-toc summary { padding: 13px 14px; }
  .entry-content .pnz-auto-toc ol { padding: 0 13px 12px; }
  .entry-content .pnz-auto-toc li { grid-template-columns: 23px minmax(0,1fr); gap: 7px; }
  .pnz-related-guides-list a { font-size: .9rem; }
}
