:root { --bs-body-font-family: "Segoe UI", "Microsoft YaHei", "PingFang SC", sans-serif; }
body { letter-spacing: 0; }
#quarto-content { --bs-body-line-height: 1.85; }
main.content { font-size: 17px; line-height: 1.85; min-width: 0; }
main h1 { font-size: 30px; line-height: 1.45; margin-bottom: 1.4rem; }
#title-block-header h1.title { display: none; }
main h2 { font-size: 24px; line-height: 1.5; margin-top: 2.2rem; }
main h3 { font-size: 20px; line-height: 1.5; }
main h1, main h2, main h3, main p, main li { overflow-wrap: anywhere; }
.navbar { border-bottom: 1px solid var(--bs-border-color); }
.navbar-title { font-weight: 600; font-size: 19px; }
.sidebar-navigation { font-size: 14px; }
.sidebar-item-text { line-height: 1.6; overflow-wrap: anywhere; min-width: 0; }
.sidebar-item .active { font-weight: 600; }
.aa-DetachedCancelButton { white-space: nowrap; }
main p code, main li code { white-space: break-spaces; overflow-wrap: anywhere; }
main img { max-width: 100%; height: auto; display: block; margin: 1.4rem auto; }
main a.reader-image { display: block; cursor: zoom-in; }
main pre { font-size: 14px; line-height: 1.6; border-radius: 4px; }
main pre code { white-space: pre; overflow-wrap: normal; }
main table { font-size: 15px; display: block; max-width: 100%; overflow-x: auto; }
.table-responsive { overflow-x: auto; }
.reader-table { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; margin: 1.5rem 0; }
.reader-table table { display: table; width: 100%; max-width: none; margin: 0; overflow: visible; }
.reader-table th, .reader-table td { min-width: 3rem; padding: .6rem .75rem; overflow-wrap: anywhere; }
.reader-table .reader-compact { white-space: nowrap; overflow-wrap: normal; word-break: normal; }
main.content table code { white-space: pre; overflow-wrap: normal; word-break: normal; }
main mjx-container[display="true"], main .math.display { display: block; max-width: 100%; overflow-x: auto; overflow-y: hidden; }
main math { max-width: 100%; }
main [id] { scroll-margin-top: 6rem; }
.reader-table:focus-visible, a.reader-image:focus-visible, .reader-image-dialog :focus-visible {
  outline: 2px solid var(--bs-link-color); outline-offset: 3px;
}
.reader-image-dialog { width: min(96vw, 1600px); max-width: 96vw; max-height: 94vh; max-height: 94dvh; padding: 0; border: 1px solid var(--bs-border-color); border-radius: 4px; background: var(--bs-body-bg); color: var(--bs-body-color); overflow: hidden; }
.reader-image-dialog::backdrop { background: rgb(0 0 0 / 75%); }
.reader-image-toolbar { display: flex; align-items: center; gap: .5rem; padding: .5rem .75rem; border-bottom: 1px solid var(--bs-border-color); }
.reader-image-caption { flex: 1; min-width: 0; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; max-height: 4.5em; overflow-y: auto; }
.reader-image-toolbar button { flex: 0 0 44px; width: 44px; height: 44px; border: 1px solid var(--bs-border-color); border-radius: 4px; background: var(--bs-body-bg); color: var(--bs-body-color); }
.reader-image-toolbar button:hover { background: var(--bs-tertiary-bg); }
.reader-image-stage { overflow: auto; max-height: calc(94vh - 100px); max-height: calc(94dvh - 100px); padding: .5rem; overscroll-behavior: contain; }
.reader-image-stage img { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(94vh - 120px); max-height: calc(94dvh - 120px); margin: auto; background: white; }
.reader-fullsize .reader-image-stage img { max-width: none; max-height: none; margin: 0; }
blockquote { border-left: 3px solid #528b79; padding: .25rem 1rem; }
body.quarto-dark main img { background: #fff; }
body.quarto-dark .navbar { background-color: #26282b; }
body.quarto-dark .navbar .nav-link,
body.quarto-dark .navbar .quarto-navigation-tool { color: #e3e8ec !important; }
body.quarto-dark .navbar .nav-link.active { color: #9de0ce !important; }
body.quarto-dark #TOC a { color: #9de0ce !important; }
#title-block-header .breadcrumb { background: transparent; padding: 0; }
body.quarto-dark .breadcrumb-item,
body.quarto-dark .breadcrumb-item.active { color: #c8d0d6; }
@media (max-width: 767px) {
  main.content { font-size: 16px; }
  main h1 { font-size: 25px; }
  main h2 { font-size: 22px; }
  main h3 { font-size: 19px; }
  main pre { font-size: 13px; }
  .navbar-title { font-size: 17px; }
  .nav-page { min-width: 0; }
  .nav-page-text { overflow-wrap: anywhere; }
  .reader-image-toolbar { padding: .4rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
}
