.reading-estimate { font-size: 1.3rem; color: var(--color-secondary-text); white-space: nowrap; }
.reading-estimate::before { content: ' · '; }
.reading-estimate[hidden], [data-reading-card][hidden] { display: none !important; }
.reading-toc { margin: 3.6rem 0 4.4rem !important; padding: 0 2.4rem; background: #f4f2ed; border: 1px solid #e6e1d8; border-radius: .8rem; font-family: Pretendard, -apple-system, sans-serif; font-size: 1.5rem; line-height: 1.6; }
.reading-toc summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 1.6rem; cursor: pointer; padding: 2rem 0; font-weight: 600; }
.reading-toc summary::-webkit-details-marker { display: none; }
.reading-toc small { font-size: 1.2rem; color: var(--color-secondary-text); font-weight: 400; margin-left: 1.2rem; }
.toc-state::after { content: '펼치기 ＋'; font-size: 1.2rem; color: var(--color-secondary-text); font-weight: 400; white-space: nowrap; }
.reading-toc[open] .toc-state::after { content: '접기 −'; }
.reading-toc nav { display: flex; flex-direction: column; padding: 0 0 2rem; gap: .2rem; }
.gh-content .reading-toc nav a { display: flex; align-items: baseline; gap: 1.4rem; padding: .9rem 0; color: #4c473e; text-decoration: none; border: none; box-shadow: none; font-size: 1.5rem; line-height: 1.65; overflow-wrap: anywhere; }
.gh-content .reading-toc nav a:hover { color: var(--ghost-accent-color); }
.toc-number { flex: 0 0 2.1rem; color: var(--ghost-accent-color); font-size: 1.2rem; font-variant-numeric: tabular-nums; }
.reading-heading { scroll-margin-top: 2.8rem; }
.reading-toc :focus-visible { outline: 2px solid var(--ghost-accent-color); outline-offset: 4px; }
@media (max-width: 600px) {
    .reading-toc { padding: 0 1.8rem; margin: 2.8rem 0 3.6rem !important; }
    .reading-toc small { display: none; }
    .gh-content .reading-toc nav a { font-size: 1.4rem; min-height: 4.4rem; }
    .reading-toc summary { min-height: 6rem; }
}
