/**
 * Archive + single: news / articles (punch).
 */

.news-list--archive,
.articles-list--archive {
  padding-block: var(--section-pad-y);
}

.news-list--archive {
  background: var(--color-surface);
}

.articles-list--archive {
  background: var(--color-surface-tint);
}

.archive-empty {
  margin: 0;
  color: var(--color-ink-muted);
}

.site-main--news-single .entry-meta,
.site-main--article-single .entry-meta {
  margin: 0 0 var(--space-8);
  color: var(--color-ink-subtle);
  font-size: var(--text-caption-size);
  line-height: var(--text-caption-lh);
  font-weight: 500;
}

.site-main--news-single .hero--page .hero__title,
.site-main--article-single .hero--page .hero__title {
  max-width: 46rem;
}

.entry-thumbnail-wrap {
  padding-block: 0 var(--space-24);
}

.entry-thumbnail {
  margin: 0;
}

.entry-thumbnail__img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--radius-md, 8px);
}

.site-main--archive-news .pagination,
.site-main--archive-article .pagination,
.site-main--archive-news .nav-links,
.site-main--archive-article .nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-8);
  margin-top: var(--space-32);
  align-items: center;
}

.site-main--archive-news .page-numbers,
.site-main--archive-article .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.25rem;
  height: 2.25rem;
  padding: 0 var(--space-8);
  border-radius: var(--radius-sm, 6px);
  color: var(--color-ink);
  text-decoration: none;
  border: 1px solid var(--color-border, #e5e7eb);
  background: var(--color-surface);
  font-size: var(--text-body-sm-size, 0.875rem);
}

.site-main--archive-news .page-numbers.current,
.site-main--archive-article .page-numbers.current {
  background: var(--color-brand-primary);
  border-color: var(--color-brand-primary);
  color: #fff;
}

.site-main--archive-news .page-numbers:hover:not(.current),
.site-main--archive-article .page-numbers:hover:not(.current) {
  border-color: var(--color-brand-primary);
  color: var(--color-brand-primary);
}

/* —— News single: reading measure + plain hero —— */
.site-main--news-single .editorial-single__layout {
  max-width: min(1100px, 100%);
  margin-inline: auto;
}

.site-main--news-single .editorial-hero--plain .editorial-hero__media {
  background:
    radial-gradient(ellipse at 30% 20%, rgba(237, 28, 36, 0.35), transparent 55%),
    linear-gradient(135deg, #1A1D21 0%, #2A3036 100%);
  min-height: 14rem;
}

.site-main--news-single .editorial-hero--plain .editorial-hero__fallback {
  display: block;
  min-height: 14rem;
}

.site-main--news-single .editorial-single__content .prose {
  max-width: 42rem;
  font-size: 1.0625rem;
  line-height: 1.7;
}

.site-main--news-single .editorial-single__title {
  max-width: 40rem;
}

.site-main--news-single .editorial-single__lead {
  max-width: 40rem;
  color: rgba(255, 255, 255, 0.82);
}

.site-main--news-single .editorial-hero--overlay .editorial-single__meta,
.site-main--news-single .editorial-hero--overlay .editorial-single__title {
  color: #fff;
}

.site-main--news-single .editorial-hero--overlay .editorial-single__date {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.22);
  color: #fff;
}

.site-main--news-single .editorial-hero--overlay .blog-card__rubric {
  color: #fff;
}

.site-main--news-single .prose .doc-card {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  align-items: center;
  margin: 1.25em 0;
  padding: 1rem 1.15rem;
  border: 1px solid var(--color-border, #E2E6E9);
  border-radius: 12px;
  background: var(--color-surface-muted, #F7F9FA);
  text-decoration: none;
  color: inherit;
}

.site-main--news-single .prose .doc-card:hover {
  border-color: #ED1C24;
}

.site-main--news-single .prose .doc-card__label {
  font-weight: 700;
  color: #ED1C24;
}

.site-main--news-single .prose .doc-card__hint {
  color: var(--color-ink-muted, #5C6670);
  font-size: 0.9375rem;
}

.site-main--news-single .prose .warn-box {
  margin: 1.5em 0;
  padding: 1rem 1.2rem;
  border-radius: 0 12px 12px 0;
  border-left: 3px solid #ED1C24;
  background: #FDECEA;
}

.site-main--news-single .prose .warn-box p {
  margin: 0;
}

.site-main--news-single .prose .sign-line {
  margin: 1.25em 0 0.5em;
  text-align: right;
  font-style: italic;
  color: var(--color-ink-muted, #5C6670);
}

.site-main--news-single .prose h2 {
  margin-top: 1.75em;
  font-size: 1.25rem;
}


/* —— News image lightbox (flexbox) —— */
.evidence-grid a[data-lightbox],
.prose .evidence-grid a {
  cursor: zoom-in;
}
.m4-lightbox {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 1.25rem;
  background: rgba(10, 12, 14, 0.88);
  backdrop-filter: blur(4px);
}
.m4-lightbox.is-open {
  display: flex;
}
.m4-lightbox__dialog {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  max-width: min(960px, 100%);
  max-height: min(92vh, 100%);
}
.m4-lightbox__img {
  display: block;
  max-width: 100%;
  max-height: min(82vh, 100%);
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 8px;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.45);
  background: #111;
}
.m4-lightbox__caption {
  margin: 0;
  color: rgba(255, 255, 255, 0.85);
  font-size: 0.9375rem;
  text-align: center;
}
.m4-lightbox__close {
  position: absolute;
  top: -0.25rem;
  right: -0.25rem;
  transform: translate(40%, -40%);
  width: 2.5rem;
  height: 2.5rem;
  border: 0;
  border-radius: 999px;
  background: #ED1C24;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}
.m4-lightbox__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.75rem;
  height: 2.75rem;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
  font-size: 1.5rem;
  cursor: pointer;
}
.m4-lightbox__nav:hover {
  background: rgba(237, 28, 36, 0.9);
}
.m4-lightbox__prev { left: 0.5rem; }
.m4-lightbox__next { right: 0.5rem; }
@media (min-width: 768px) {
  .m4-lightbox__prev { left: -3.25rem; }
  .m4-lightbox__next { right: -3.25rem; }
}
body.m4-lightbox-open {
  overflow: hidden;
}
