/* Site-level typography polish for article reading */

/* More breathing room in article prose — target both single article content AND summary cards */
.single .content,
.summary .content {
  line-height: 1.75 !important;
  font-size: 1.05rem !important;
}

.single .content p,
.summary .content p {
  margin: 1.1rem 0 !important;
}

.single .content > h2,
.single .content h2 {
  margin-top: 2.8rem !important;
  margin-bottom: 0.9rem !important;
  padding-top: 0.4rem;
  line-height: 1.3 !important;
}

.single .content > h3,
.single .content h3 {
  margin-top: 2.2rem !important;
  margin-bottom: 0.7rem !important;
  line-height: 1.35 !important;
}

.single .content > h4,
.single .content h4 {
  margin-top: 1.8rem !important;
  margin-bottom: 0.55rem !important;
}

/* Summary card: ensure h2 inside preview content has a visible gap */
.summary .content h2,
.summary .content h3 {
  display: block;
  margin: 0.8rem 0 0.6rem !important;
  font-size: 1.1rem !important;
  line-height: 1.4 !important;
  font-weight: 600;
}

.single .content ul,
.single .content ol {
  margin: 1rem 0;
  padding-left: 1.6rem;
}

.single .content li {
  margin: 0.4rem 0;
  line-height: 1.7;
}

.single .content blockquote {
  margin: 1.4rem 0;
  padding: 0.2rem 1.1rem;
}

/* Tables: a little more padding per cell and zebra rows */
.single .content table {
  margin: 1.4rem 0;
}

.single .content table th,
.single .content table td {
  padding: 0.55rem 0.9rem;
}

/* Code blocks: give the title bar a little more weight, tighter padding inside */
.code-block .code-block-title-bar p {
  font-family: "JetBrains Mono", "DejaVu Sans Mono", ui-monospace, monospace;
  font-size: 0.82rem;
  opacity: 0.9;
  padding: 0.15rem 0.6rem;
}

.code-block pre {
  padding: 0.2rem 0 !important;
}

.single .content pre code.chroma {
  font-size: 0.92rem;
  line-height: 1.55;
}

/* Inline code: slightly more padding */
.single .content code:not(.chroma) {
  padding: 0.1rem 0.35rem;
}

/* Admonitions: a touch more breathing room */
.admonition {
  margin: 1.6rem 0;
}

.admonition .admonition-content {
  padding: 0.6rem 1rem 0.7rem;
  line-height: 1.7;
}

/* Featured image: cap height on the single page so huge covers don't dominate */
.single .featured-image img {
  max-height: 420px;
  object-fit: contain;
  background: transparent;
}

/* Summary cards: match the 1200x630 cover ratio (630/1200 = 52.5%) so processed
   images fill the container with no letterboxing. */
.home .featured-image-preview,
.summary .featured-image-preview {
  padding: 52.5% 0 0 !important;
}

.home .featured-image-preview img,
.summary .featured-image-preview img {
  object-fit: cover !important;
}
