/* Native disclosures: their complete contents remain in the server HTML. */
body.page-blog-post .ev-article-toc,
body.page-blog-post .ev-image-credits {
  margin: 1.5rem 0;
  overflow-wrap: anywhere;
  border: 1px solid #d7e4f0;
  border-radius: 12px;
  background: #f5f9fd;
  color: #10233f;
}
body.page-blog-post .ev-article-toc > summary,
body.page-blog-post .ev-image-credits > summary {
  padding: .85rem 1rem;
  min-height: 48px;
  cursor: pointer;
  font-weight: 700;
  line-height: 1.6;
}
body.page-blog-post .ev-article-toc > summary::marker,
body.page-blog-post .ev-image-credits > summary::marker { color: #075ea8; }
body.page-blog-post .ev-article-toc > summary:focus-visible,
body.page-blog-post .ev-image-credits > summary:focus-visible,
body.page-blog-post .ev-article-toc a:focus-visible,
body.page-blog-post .ev-image-credits a:focus-visible {
  outline: 3px solid #1475be;
  outline-offset: 3px;
  border-radius: 4px;
}
body.page-blog-post .ev-article-toc nav { padding: 0 1rem 1rem; }
body.page-blog-post .ev-article-toc ol { margin: 0; padding-left: 1.5rem; }
body.page-blog-post .ev-article-toc ol ol { margin: .2rem 0 .45rem; }
body.page-blog-post .ev-article-toc li { margin: .2rem 0; line-height: 1.6; }
body.page-blog-post .ev-article-toc a,
body.page-blog-post .ev-image-credits a {
  color: #075ea8;
  text-decoration: underline;
  text-underline-offset: .16em;
}
body.page-blog-post .ev-article-toc a { padding: .2rem 0; }
body.page-blog-post .post-content :where(h2, h3, h4, h5, h6)[id] { scroll-margin-top: 110px; }
body.page-blog-post .ev-image-credits { font-size: .9rem; }
body.page-blog-post .ev-image-credits > ul { margin: 0; padding: 0 1.25rem 1rem 2.25rem; }
body.page-blog-post .ev-image-credits li { margin-bottom: 1rem; line-height: 1.7; }
body.page-blog-post .ev-image-credits li:last-child { margin-bottom: 0; }
body.page-blog-post .ev-image-credits li > span { display: block; }
body.page-blog-post .ev-image-credits li > a:first-child { display: block; font-weight: 600; }
body.dark-mode.page-blog-post .ev-article-toc,
body.dark-mode.page-blog-post .ev-image-credits,
[data-bs-theme="dark"] body.page-blog-post .ev-article-toc,
[data-bs-theme="dark"] body.page-blog-post .ev-image-credits {
  background: #142c43;
  color: #e8f1fa;
  border-color: #36526c;
}
body.dark-mode.page-blog-post .ev-article-toc a,
body.dark-mode.page-blog-post .ev-image-credits a,
[data-bs-theme="dark"] body.page-blog-post .ev-article-toc a,
[data-bs-theme="dark"] body.page-blog-post .ev-image-credits a { color: #94d0ff; }
body.dark-mode.page-blog-post :is(.ev-article-toc, .ev-image-credits) > summary::marker,
[data-bs-theme="dark"] body.page-blog-post :is(.ev-article-toc, .ev-image-credits) > summary::marker { color: #94d0ff; }

/* Compact weekly reading list, paired with the existing latest-article widget. */
body.page-blog-post .weekly-posts-widget .blog-sidebar-title {
  margin: 0 0 8px;
  line-height: 1.45;
}
body.page-blog-post .weekly-posts-description {
  margin: 0 0 8px;
  color: var(--ev-muted);
  font-size: .85rem;
  line-height: 1.6;
}
body.page-blog-post .weekly-post-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
body.page-blog-post .weekly-post-list > li + li { border-top: 1px solid var(--ev-line); }
body.page-blog-post .weekly-post-item {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 14px 0;
  color: var(--ev-ink);
  text-decoration: none;
  border-radius: 4px;
}
body.page-blog-post .weekly-post-thumb {
  position: relative;
  display: block;
  width: 88px;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 8px;
  background: var(--ev-surface-soft);
}
body.page-blog-post .weekly-post-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  border-radius: 0;
  box-shadow: none;
}
body.page-blog-post .weekly-post-rank {
  position: absolute;
  top: 0;
  left: 0;
  display: grid;
  place-items: center;
  width: 23px;
  height: 23px;
  border-radius: 0 0 7px 0;
  background: #075ea8;
  color: #fff;
  font-size: .75rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
body.page-blog-post .weekly-post-body { min-width: 0; }
body.page-blog-post .weekly-post-title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  overflow-wrap: anywhere;
  color: var(--ev-ink);
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.45;
}
body.page-blog-post .weekly-post-date {
  display: block;
  margin-top: 5px;
  color: var(--ev-muted);
  font-size: .77rem;
  line-height: 1.45;
}
body.page-blog-post .weekly-post-item:is(:hover, :focus-visible) .weekly-post-title {
  color: var(--ev-brand);
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.page-blog-post .weekly-posts-more {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding-top: 8px;
  border-top: 1px solid var(--ev-line);
  color: var(--ev-brand);
  font-size: .85rem;
  font-weight: 700;
  text-decoration: none;
}
body.page-blog-post .weekly-posts-more:hover { text-decoration: underline; }
body.page-blog-post :is(.weekly-post-item, .weekly-posts-more):focus-visible {
  outline: 3px solid var(--ev-brand, #075ea8);
  outline-offset: 3px;
}
@media (max-width: 359px) {
  body.page-blog-post .weekly-post-item { grid-template-columns: 72px minmax(0, 1fr); gap: 10px; }
  body.page-blog-post .weekly-post-thumb { width: 72px; }
}
