/* Rust-mdBook-like readability baseline with stronger section separation */
:root {
  --content-max-width: 860px;
}

.content main {
  max-width: var(--content-max-width);
  line-height: 1.62;
}

.content main p {
  margin: 0.95rem 0;
}

.content main > p,
.content main > ul,
.content main > ol,
.content main > blockquote,
.content main > table {
  max-width: 80ch;
}

.content main h1,
.content main h2,
.content main h3,
.content main h4 {
  line-height: 1.3;
  letter-spacing: 0.005em;
}

.content main h1 {
  margin-top: 0.4rem;
  margin-bottom: 1rem;
}

/* Main readability request: more space between major sections */
.content main h2 {
  margin-top: 4.6rem;
  margin-bottom: 1.05rem;
  padding-bottom: 0.28rem;
  border-bottom: 1px solid var(--searchresults-border-color);
}

.content main h3 {
  margin-top: 2.1rem;
  margin-bottom: 0.75rem;
}

.content main ul,
.content main ol {
  margin-top: 0.65rem;
  margin-bottom: 1.05rem;
  padding-left: 1.45rem;
}

.content main li {
  margin: 0.36rem 0;
}

.content main blockquote {
  margin: 1.2rem 0;
  padding: 0.35rem 0.95rem;
  border-left: 3px solid var(--quote-border);
  background-color: var(--quote-bg);
}

.content main table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.15rem 0;
}

.content main table th,
.content main table td {
  padding: 0.52rem 0.65rem;
  vertical-align: top;
}

/* Keep sidebar readable but not oversized */
.chapter li.chapter-item > a {
  display: block;
  line-height: 1.35;
  padding: 0.1rem 0;
}

.chapter .part-title {
  margin-top: 0.65rem;
  margin-bottom: 0.35rem;
}

@media (max-width: 900px) {
  .content main {
    max-width: 94vw;
  }

  .content main h2 {
    margin-top: 3.4rem;
  }
}
