:root { --body-background: #faf9f6; --body-font-color: #28332e; --color-link: #3e6b55; --icon-filter: none; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans CJK SC', sans-serif; }
.book-page { padding: 32px 40px; }
.markdown { font-size: 16px; line-height: 1.9; }
.markdown h1, .markdown h2, .markdown h3 { line-height: 1.45; }
.markdown h2 { padding-top: 20px; }
.markdown img { border-radius: 8px; display: block; margin: 24px auto; }
.markdown mjx-container[display=true] { overflow-x: auto; overflow-y: hidden; padding: 12px 0; max-width: 100%; }
.book-brand { letter-spacing: .05em; }
.book-menu-content { border-right: 1px solid #88958b25; }
.book-toc { font-size: 13px; }
.reading-footer { color: #78857e; font-size: 12px; line-height: 1.8; margin-top: 32px; padding-top: 16px; border-top: 1px solid #88958b35; }
.reading-friends, .reading-footer-meta { display: flex; flex-wrap: wrap; align-items: center; column-gap: 18px; row-gap: 4px; }
.reading-friends { margin-bottom: 8px; font-size: 13px; }
.reading-friends a { display: inline-block; flex: 0 0 auto; margin: 0; padding: 4px 0; }
.reading-friends a:hover, .reading-friends a:focus-visible { text-decoration: underline; text-underline-offset: 3px; }
.reading-friends a span { font-size: 11px; }
.page-visits { white-space: nowrap; font-variant-numeric: tabular-nums; }
.page-visits[hidden] { display: none; }
.markdown .paper-card h2 { padding: 0; }
@media (max-width: 56rem) { .book-page { padding: 20px; min-width: 0; } }
@media (prefers-color-scheme: dark) { :root { --body-background: #1d2521; --body-font-color: #d8e1db; --color-link: #9bc9ac; --icon-filter: invert(1); } .reading-footer { color: #a3b1a8; } }
