:root { --reading-accent: #2459ac; --reading-soft: #f3f6fa; --reading-rule: #dce3ec; }
body.quarto-dark { --reading-accent: #90b8fa; --reading-soft: #222b39; --reading-rule: #3c485b; }
#quarto-content { --quarto-body-content-width: 800px; }
main.content { min-width: 0; overflow-wrap: anywhere; }
h1 { line-height: 1.3; letter-spacing: -.025em; }
h2 { margin-top: 2.5rem; line-height: 1.45; }
h3 { line-height: 1.5; }
p, li { text-wrap: pretty; }
main a { text-underline-offset: .2em; }
a:hover { text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--reading-accent); outline-offset: 4px; border-radius: 3px; }
.reading-intro { color: var(--reading-accent); font-size: .9rem; letter-spacing: .08em; margin: .5rem 0 2rem; }
.reading-entry { border-left: 4px solid var(--reading-accent); padding: 1.25rem 1.5rem; background: var(--reading-soft); margin: 2rem 0; }
.reading-entry h2 { margin-top: 0; border: 0; padding: 0; }
.entry-link { display: inline-block; font-weight: 600; min-height: 44px; padding: .5rem 0; }
.unavailable { text-decoration: underline dotted; text-underline-offset: .2em; }
.unavailable::after { content: "（待上线）"; font-size: .8em; }
.table-scroll { max-width: 100%; overflow-x: auto; margin: 1rem 0; }
.table-scroll table { margin: 0; }
.table-scroll:focus-visible { outline-offset: 1px; }
pre.sourceCode, div.sourceCode { max-width: 100%; }
pre.sourceCode { overflow-x: auto; white-space: pre; }
code { overflow-wrap: anywhere; }
main :not(pre) > code { white-space: normal; word-break: break-word; }
pre code { overflow-wrap: normal; }
img, svg, video { max-width: 100%; height: auto; }
.sidebar-item-text { overflow-wrap: anywhere; }
.ai-prompt { border-left: 3px solid var(--reading-accent); padding: 1rem; background: var(--reading-soft); margin: 1.5rem 0; }
@media (min-width: 1200px) { #quarto-sidebar { font-size: .88rem; } }
@media (max-width: 767px) {
  body { font-size: 16px; }
  h1 { font-size: 1.8rem; }
  .reading-entry { padding: 1rem; }
  .navbar-toggler, .quarto-btn-toggle, .quarto-navigation-tool { min-width: 44px; min-height: 44px; }
  .page-navigation a { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
