/* ═══════════════════════════════════════════════════════════════════════════
   print.css — Print stylesheet for the After Dark theme.
   Loaded via media="print". No custom properties — computed values only,
   since CSS custom properties don't resolve reliably in all print engines.
   ═══════════════════════════════════════════════════════════════════════════ */

@media print {

  /* ── Page setup ───────────────────────────────────────────────────────── */

  @page {
    margin: 1.5cm 2cm;
  }

  /* ── Base reset for print ─────────────────────────────────────────────── */

  *,
  *::before,
  *::after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    animation: none !important;
    transition: none !important;
  }

  body {
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 12pt;
    line-height: 1.6;
    color: #000;
    background: #fff;
    max-width: 100%;
    width: 100%;
  }

  /* ── Hide chrome and interactive elements ─────────────────────────────── */

  .broadcast-bar,
  .site-header,
  .site-nav,
  .site-nav__toggle,
  .episode-player,
  .archive-sidebar,
  .sidebar,
  .sidebar-widget,
  .ad-tier-badge,
  .subscribe-cta-block,
  .signal-break,
  .site-footer,
  .site-footer__topper,
  .hero-episode__actions,
  .episode-filter,
  .archive-pagination,
  .navigation,
  .skip-link,
  .btn,
  .search-no-results__links,
  .ad-subscribe-cta,
  .community-gate,
  nav {
    display: none !important;
  }

  /* ── Layout: full width, no grid ──────────────────────────────────────── */

  .container,
  .container--narrow,
  .container--wide {
    max-width: 100%;
    padding: 0;
    margin: 0;
  }

  .archive-layout,
  .layout-sidebar,
  .episode-grid,
  .post-grid,
  .tier-cards,
  .about-teaser__inner,
  .signal-break__inner,
  .host-profiles {
    display: block;
  }

  .site-main {
    min-height: 0;
  }

  /* ── Typography ───────────────────────────────────────────────────────── */

  h1 { font-size: 22pt; margin-bottom: 0.4em; }
  h2 { font-size: 18pt; margin-bottom: 0.3em; }
  h3 { font-size: 14pt; margin-bottom: 0.3em; }
  h4 { font-size: 12pt; }

  /* Strip decorative letter-spacing and text-transform from headings */
  h1, h2, h3, h4, h5, h6 {
    letter-spacing: 0;
    font-family: Georgia, 'Times New Roman', Times, serif;
    page-break-after: avoid;
    orphans: 3;
    widows: 3;
  }

  p, li, blockquote {
    orphans: 3;
    widows: 3;
  }

  /* ── Links — show href after anchor text ──────────────────────────────── */

  a[href]::after {
    content: ' (' attr(href) ')';
    font-size: 10pt;
    font-family: 'Courier New', Courier, monospace;
    color: #444 !important;
    word-break: break-all;
  }

  /* Don't print hrefs for fragment links, javascript:, or mailto: */
  a[href^='#']::after,
  a[href^='javascript:']::after,
  a[href^='mailto:']::after {
    content: '';
  }

  /* ── Episode single — show notes ──────────────────────────────────────── */

  .episode-card__thumbnail-link,
  .episode-card__thumbnail-wrap,
  .episode-card__scanlines,
  .hero-episode__overlay,
  .hero-episode__bg {
    display: none !important;
  }

  .hero-episode {
    min-height: 0;
    display: block;
    overflow: visible;
    border-bottom: 1pt solid #000;
    padding-bottom: 12pt;
    margin-bottom: 16pt;
  }

  .hero-episode__content {
    position: static;
    padding: 0;
  }

  .hero-episode__title {
    font-size: 22pt;
    letter-spacing: 0;
    margin-bottom: 6pt;
  }

  .hero-episode__meta {
    font-family: 'Courier New', Courier, monospace;
    font-size: 10pt;
    margin-bottom: 8pt;
  }

  .hero-episode__excerpt {
    font-size: 11pt;
    max-width: 100%;
  }

  /* Show notes / entry content */

  .entry-content {
    max-width: 100%;
    font-size: 11pt;
    line-height: 1.7;
  }

  .entry-content blockquote {
    border-left: 2pt solid #000;
    padding-left: 12pt;
    margin-left: 0;
    font-style: italic;
  }

  .entry-content blockquote::before {
    display: none;
  }

  /* Episode meta (number, date, duration) */

  .episode-card__meta,
  .episode-card__body {
    page-break-inside: avoid;
  }

  /* ── Episode cards in archive — print as plain list ──────────────────── */

  .episode-card {
    border: none;
    border-bottom: 1pt solid #ccc;
    padding: 8pt 0;
    page-break-inside: avoid;
    transform: none !important;
  }

  .episode-card:hover {
    transform: none;
    box-shadow: none;
  }

  /* ── Post cards ───────────────────────────────────────────────────────── */

  .post-card {
    border: none;
    border-bottom: 1pt solid #ccc;
    padding: 8pt 0;
    page-break-inside: avoid;
    transform: none !important;
  }

  .post-card__thumbnail-link {
    display: none;
  }

  /* ── Section spacing — reduced for print ─────────────────────────────── */

  .section {
    padding-block: 16pt;
    opacity: 1 !important;
    transform: none !important;
  }

  .page-header {
    padding-block: 12pt;
    border-bottom: 1pt solid #000;
    margin-bottom: 16pt;
  }

  /* ── Decorative elements — hide or flatten ────────────────────────────── */

  .scanlines::before,
  .noise-overlay::after,
  .stamp,
  .redacted,
  .redacted-divider::before,
  .mission-block__stamp {
    display: none !important;
  }

  .redacted-divider {
    border-top: 1pt solid #ccc;
  }

  /* ── Tier badge — hide (already in the list above, belt-and-suspenders) */

  .ad-tier-badge { display: none !important; }

  /* ── Search form — not useful in print ───────────────────────────────── */

  .search-form,
  .search-no-results__form {
    display: none;
  }

} /* end @media print */
