body.reader-mode { --reader-bg: #faf8f4; --reader-text: #1a1814; }
body.reader-mode.theme-dark { --reader-bg: #1a1814; --reader-text: #e8e4dc; }
body.reader-mode.theme-sepia { --reader-bg: #f4ecd8; --reader-text: #3d2f1f; }
body.reader-mode.theme-oled { --reader-bg: #000; --reader-text: #e0e0e0; }
body.reader-mode { background: var(--reader-bg); color: var(--reader-text); }
.reader-toolbar { position: sticky; top: 0; background: var(--reader-bg); border-bottom: 1px solid #ccc; padding: .5rem; display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; z-index: 10; }
.chapter-body { max-width: 42rem; margin: 0 auto; padding: 1.5rem 1rem 4rem; font-size: 18px; line-height: 1.7; }
.chapter-body.font-sans { font-family: system-ui, sans-serif; }
.chapter-body.font-dyslexic { font-family: "OpenDyslexic", sans-serif; }
.chapter-html table { width: 100%; border-collapse: collapse; font-size: .9em; display: block; overflow-x: auto; }
.chapter-html th, .chapter-html td { border: 1px solid #888; padding: .35rem .5rem; }
.chapter-body.page-mode { height: calc(100vh - 120px); overflow: hidden; }
.chapter-body.page-mode .chapter-html { height: 100%; overflow: hidden; }
.comment.spoiler p { filter: blur(4px); }
.comment.spoiler:hover p { filter: none; }
