/* DerDenker 1.1.38 — dedicated print presentation.
   Keep editorial content, remove website chrome and interactive surfaces, and
   make articles / Foundation pages readable on paper and in print-to-PDF. */

@page {
  margin: 16mm 16mm 18mm;
}

@media print {
  html {
    scroll-behavior: auto !important;
  }

  *, *::before, *::after {
    box-shadow: none !important;
    text-shadow: none !important;
  }

  body {
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    color: #111 !important;
    font-size: 10.8pt;
    line-height: 1.48;
    -webkit-print-color-adjust: economy;
    print-color-adjust: economy;
  }

  /* Browser UI / website chrome that has no value on paper. */
  #wpadminbar,
  .skip-link,
  .main-nav,
  .header-tools,
  .search-dialog,
  .dd-newsletter,
  .more-reading,
  .site-footer,
  .dd-category-badge,
  .dd-article-foundations,
  .dd-foundation-nav,
  .page-links,
  button,
  [role="dialog"] {
    display: none !important;
  }

  /* A quiet one-line masthead instead of the interactive site header. */
  .site-header {
    position: static !important;
    display: block !important;
    min-height: 0 !important;
    margin: 0 0 7mm !important;
    padding: 0 0 4mm !important;
    border: 0 !important;
    border-bottom: .5pt solid #9a9a9a !important;
    background: #fff !important;
  }

  .site-header .brand {
    display: block !important;
    width: auto !important;
    padding: 0 !important;
    color: #111 !important;
    text-decoration: none !important;
  }

  .site-header .brand-title {
    display: block !important;
    color: #111 !important;
    font: 700 15pt/1.05 Georgia, "Times New Roman", serif !important;
    letter-spacing: .045em !important;
  }

  .site-header .brand-sub {
    display: none !important;
  }

  .site-header .brand::after {
    content: "derdenker.com";
    display: block;
    margin-top: 1.5mm;
    color: #555;
    font: 500 8.5pt/1.2 Arial, Helvetica, sans-serif;
    letter-spacing: .06em;
  }

  #dd-main {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Do not append long URLs after links. Keep links readable as editorial text. */
  a,
  a:visited {
    color: #111 !important;
    text-decoration-color: #777 !important;
  }

  /* General pagination rules. */
  h1, h2, h3, h4,
  .dd-kicker,
  .dd-foundation-kicker {
    break-after: avoid-page;
    page-break-after: avoid;
  }

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

  blockquote,
  figure,
  table,
  pre,
  .dd-keyline,
  .dd-pullquote,
  .dd-note,
  .dd-statline,
  .dd-metric-line,
  .dd-prompt-list,
  .dd-hypotheses,
  .dd-keywords,
  .dd-brand-divider {
    break-inside: avoid-page;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
  td,
  th {
    break-inside: avoid-page;
    page-break-inside: avoid;
  }

  img,
  svg {
    max-width: 100% !important;
  }

  /* ---------- Articles ---------- */
  .article-page {
    padding: 0 !important;
  }

  .dd-reading,
  .article-header,
  .article-body {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
  }

  .article-header {
    margin-bottom: 5mm !important;
  }

  .article-header .meta {
    margin: 0 0 2.5mm !important;
    color: #555 !important;
    font: 600 8.5pt/1.35 Arial, Helvetica, sans-serif !important;
    letter-spacing: .055em !important;
  }

  .article-header h1 {
    max-width: none !important;
    margin: 0 0 3mm !important;
    color: #111 !important;
    font: 700 25pt/1.08 Georgia, "Times New Roman", serif !important;
    letter-spacing: -.018em !important;
  }

  .article-deck {
    max-width: none !important;
    margin: 0 !important;
    color: #333 !important;
    font: 400 12.5pt/1.42 Arial, Helvetica, sans-serif !important;
  }

  /* Keep the featured image, but make it a restrained editorial element. */
  .article-image {
    width: 100% !important;
    max-width: none !important;
    margin: 5mm auto 7mm !important;
    text-align: center;
    break-inside: avoid-page;
    page-break-inside: avoid;
  }

  .article-image img {
    display: block !important;
    width: auto !important;
    max-width: 140mm !important;
    max-height: 90mm !important;
    margin: 0 auto !important;
    border-radius: 0 !important;
    object-fit: contain !important;
  }

  .article-image figcaption {
    max-width: 140mm;
    margin: 2mm auto 0 !important;
    color: #555 !important;
    font: 8.5pt/1.35 Arial, Helvetica, sans-serif !important;
    text-align: left;
  }

  .article-body .content {
    color: #111 !important;
    font: 400 10.8pt/1.48 Arial, Helvetica, sans-serif !important;
    letter-spacing: 0 !important;
    overflow: visible !important;
  }

  .article-body .content p {
    margin: 0 0 3.2mm !important;
  }

  .article-body .content .dd-lead,
  .article-body .content .dd-article-lead {
    margin: 0 0 5mm !important;
    color: #222 !important;
    font: 400 12.2pt/1.42 Georgia, "Times New Roman", serif !important;
  }

  .article-body .content .dd-kicker {
    margin: 7mm 0 1.5mm !important;
    padding-top: 2.5mm !important;
    border-top: .5pt solid #aaa !important;
    color: #444 !important;
    font: 700 8.3pt/1.25 Arial, Helvetica, sans-serif !important;
    letter-spacing: .08em !important;
  }

  .article-body .content .dd-kicker + h2 {
    margin-top: 0 !important;
  }

  .article-body .content h2 {
    margin: 7mm 0 2.5mm !important;
    color: #111 !important;
    font: 700 17pt/1.15 Georgia, "Times New Roman", serif !important;
  }

  .article-body .content h3 {
    margin: 5.5mm 0 2mm !important;
    color: #111 !important;
    font: 700 13pt/1.2 Georgia, "Times New Roman", serif !important;
  }

  .article-body .content h4 {
    margin: 4.5mm 0 2mm !important;
    color: #111 !important;
    font: 700 10.8pt/1.25 Arial, Helvetica, sans-serif !important;
  }

  .article-body .content ul,
  .article-body .content ol {
    margin: 0 0 3.5mm !important;
  }

  .article-body .content blockquote:not(.dd-pullquote) {
    margin: 4mm 0 5mm !important;
    padding: 2.5mm 0 2.5mm 4mm !important;
    border: 0 !important;
    border-left: 1.5pt solid #555 !important;
    background: transparent !important;
    color: #222 !important;
    font: italic 11.5pt/1.4 Georgia, "Times New Roman", serif !important;
  }

  .article-body .content .dd-keyline {
    margin: 4mm 0 5mm !important;
    padding: 1.5mm 0 1.5mm 4mm !important;
    border-left: 1.5pt solid #555 !important;
    background: transparent !important;
    color: #111 !important;
    font: 650 11.2pt/1.4 Arial, Helvetica, sans-serif !important;
  }

  .article-body .content .dd-pullquote {
    margin: 6mm 0 !important;
    padding: 4mm 0 !important;
    border-top: .75pt solid #777 !important;
    border-bottom: .75pt solid #777 !important;
    color: #111 !important;
    background: transparent !important;
    font: 700 17pt/1.18 Georgia, "Times New Roman", serif !important;
  }

  .article-body .content .dd-note,
  .article-body .content .dd-note--caveat,
  .article-body .content .dd-prompt-list {
    background: transparent !important;
    border-color: #777 !important;
    color: #222 !important;
  }

  .article-body .content .dd-statline > div,
  .article-body .content .dd-hypotheses > div,
  .article-body .content .dd-data-table,
  .article-body .content .wp-block-table {
    background: #fff !important;
    border-color: #999 !important;
  }

  .article-body .content th {
    background: #fff !important;
    color: #111 !important;
  }

  /* Print figures are intentionally a little narrower than the text column.
     In real A4 tests this materially improves pagination: complete diagrams can
     fit into remaining page space instead of being pushed to a new page. */
  .article-body .content figure {
    margin: 4mm auto 5mm !important;
  }

  .article-body .content figure.dd-wide,
  .article-body .content figure.dd-article-visual--wide,
  .article-body .content .wp-block-image.alignwide,
  .article-body .content .alignwide {
    width: 88% !important;
    max-width: 158mm !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }

  /* Tables keep the full paper column; shrinking data tables harms readability. */
  .article-body .content .wp-block-table.alignwide {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
  }

  .article-body .content figure img,
  .article-body .content .wp-block-image img {
    display: block;
    width: auto !important;
    max-width: 158mm !important;
    max-height: 125mm !important;
    margin-inline: auto !important;
    object-fit: contain !important;
  }

  .article-body .content figure figcaption,
  .article-body .content .wp-block-image figcaption {
    max-width: 158mm !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Print the content of collapsed raw-data details as part of the article. */
  .article-body .content details.dd-details:not([open]) > *:not(summary) {
    display: block !important;
  }

  .article-body .content .dd-details summary {
    color: #333 !important;
  }

  .article-body .content .dd-signoff {
    margin: 7mm 0 0 !important;
    padding-top: 3mm !important;
    border-top: .5pt solid #888 !important;
    color: #333 !important;
    font: 700 8.5pt/1.35 Arial, Helvetica, sans-serif !important;
    letter-spacing: .075em !important;
  }

  /* ---------- Foundation pages ---------- */
  .dd-foundation-page {
    padding: 0 !important;
  }

  .dd-foundation-reading {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .dd-foundation-header {
    margin: 0 0 5mm !important;
  }

  .dd-foundation-kicker {
    margin: 0 0 2mm !important;
    color: #555 !important;
    font: 700 8.5pt/1.3 Arial, Helvetica, sans-serif !important;
    letter-spacing: .12em !important;
  }

  .dd-foundation-kicker::before {
    width: 8mm !important;
    border-top-color: #777 !important;
  }

  .dd-foundation-header h1 {
    max-width: none !important;
    color: #111 !important;
    font: 700 25pt/1.08 Georgia, "Times New Roman", serif !important;
    letter-spacing: -.018em !important;
  }

  .dd-foundation-content.content {
    color: #111 !important;
    font: 400 10.8pt/1.48 Arial, Helvetica, sans-serif !important;
  }

  .dd-foundation-content.content > p:nth-of-type(-n+2) {
    max-width: none !important;
    color: #222 !important;
    font: 400 12pt/1.42 Georgia, "Times New Roman", serif !important;
  }

  .dd-foundation-content.content h2 {
    margin: 7mm 0 2.5mm !important;
    color: #111 !important;
    font: 700 17pt/1.15 Georgia, "Times New Roman", serif !important;
  }

  .dd-foundation-content.content h2:first-of-type {
    margin-top: 6mm !important;
    padding-top: 5mm !important;
    border-top: .5pt solid #aaa !important;
  }

  .dd-foundation-content.content h3 {
    color: #111 !important;
  }

  .dd-foundation-content.content h2 + p + ul > li,
  .dd-foundation-content.content h2 + ul > li {
    break-inside: avoid-page;
    page-break-inside: avoid;
  }

  .dd-foundation-content.content h2 + p + ul > li::before,
  .dd-foundation-content.content h2 + ul > li::before {
    background: #fff !important;
    border: .75pt solid #777 !important;
    color: #222 !important;
  }

  /* Memory uses screen-only SVG icons. Replace them with robust print numbers. */
  .dd-foundation-page--memory .dd-foundation-content.content h2 + p + ul > li::before {
    content: "0" counter(dd-foundation-insight) !important;
    background-image: none !important;
    font: 700 9pt/1 Arial, Helvetica, sans-serif !important;
  }

  .dd-foundation-content.content h2 + ul > li {
    background: #fff !important;
    border-color: #aaa !important;
  }


  .dd-foundation-content.content .dd-example-box {
    margin: 5mm 0 !important;
    padding: 4.5mm 5mm !important;
    border: .75pt solid #999 !important;
    border-left: 2.5pt solid #555 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #111 !important;
    break-inside: avoid-page;
    page-break-inside: avoid;
  }

  .dd-foundation-content.content .dd-example-box .dd-example-kicker {
    margin: 0 0 1.5mm !important;
    color: #444 !important;
    font: 700 7.5pt/1.3 Arial, Helvetica, sans-serif !important;
    letter-spacing: .14em !important;
  }

  .dd-foundation-content.content .dd-example-box .dd-example-title {
    margin: 0 0 2.5mm !important;
    color: #111 !important;
    font: 700 14pt/1.2 Georgia, "Times New Roman", serif !important;
  }

  .dd-foundation-content.content .dd-example-box p {
    margin-bottom: 2.2mm !important;
    color: #111 !important;
    font: 400 10pt/1.45 Arial, Helvetica, sans-serif !important;
  }

  .dd-foundation-content.content .dd-example-box .dd-example-quote {
    margin: 2.8mm 0 !important;
    padding: 2.5mm 3mm !important;
    border-left: 1.5pt solid #777 !important;
    background: #fff !important;
    font: italic 400 10.5pt/1.42 Georgia, "Times New Roman", serif !important;
  }

  .dd-foundation-content.content .dd-example-box .dd-example-point {
    margin: 3mm 0 0 !important;
    padding-top: 2.5mm !important;
    border-top: .5pt solid #aaa !important;
    font-weight: 700 !important;
  }

  .dd-foundation-content.content .dd-keyline {
    background: transparent !important;
    border-left-color: #555 !important;
    color: #111 !important;
  }

  /* ---------- Other editorial pages: safe print fallback ---------- */
  .standard-page,
  .wrap-narrow,
  .dd-about-page {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
  }

  .standard-page,
  .dd-about-page {
    padding-top: 0 !important;
  }

  .standard-page .content,
  .dd-about-document {
    color: #111 !important;
    background: #fff !important;
  }
}
