/**
 * @file print.css
 * Verid — Druckansicht & PDF-Export
 */

/* ─── Print-Button (Bildschirm) ─────────────────────────── */

.verid-print-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.25rem 0.75rem;
  font-family: var(--verid-font-body);
  font-size: var(--verid-text-sm);
  font-weight: 600;
  color: var(--verid-color-text-secondary);
  background: transparent;
  border: 1px solid var(--verid-color-border);
  border-radius: var(--verid-radius);
  cursor: pointer;
  text-decoration: none;
  transition: border-color 150ms ease, color 150ms ease;
  margin-inline-start: auto;  /* schiebt Button an den rechten Rand der Flex-Zeile */
}

/* Mobil: Button allein in der Zeile → linksbündig */
@media (max-width: 600px) {
  .verid-print-btn {
    margin-inline-start: 0;
  }
}

.verid-print-btn:hover {
  color: var(--verid-color-accent);
  border-color: var(--verid-color-accent);
}

.verid-print-btn svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

/* ─── @media print ──────────────────────────────────────── */

@media print {

  /* Seitenformat */
  @page {
    size: A4;
    margin: 20mm 18mm 20mm 18mm;
  }

  /* Alles ausblenden außer dem Artikel */
  .site-header,
  .verid-header-row1,
  .verid-header-row2,
  .verid-mega,
  .site-footer,
  .region-sidebar-wrapper,
  .verid-ad,
  .verid-book-pager,
  .verid-print-btn,
  .node__meta,
  #comments,
  .breadcrumb,
  nav,
  .overlay,
  .verid-unpublished-notice,
  body::before {
    display: none !important;
  }

  /* Layout auf volle Breite */
  body {
    background: #fff;
    font-size: 11pt;
    color: #000;
    line-height: 1.5;
  }

  #page-wrapper,
  #page,
  #main-wrapper,
  #main,
  .layout-main,
  .main-content,
  .main-content__container,
  .sidebar-grid,
  .site-main {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Artikel-Header */
  .node__header {
    margin-bottom: 1.5em;
    border-bottom: 1pt solid #000;
    padding-bottom: 0.75em;
  }

  .node__eyebrow {
    font-size: 8pt;
    color: #555;
    margin-bottom: 0.25em;
  }

  h1.node__title {
    font-size: 20pt;
    font-weight: 700;
    margin: 0.2em 0 0;
    line-height: 1.2;
  }

  /* Überschriften */
  h2 {
    font-size: 14pt;
    font-weight: 700;
    margin-top: 1.4em;
    page-break-after: avoid;
    border-top: none !important;
    padding-top: 0 !important;
  }

  h3 { font-size: 12pt; font-weight: 700; margin-top: 1em; page-break-after: avoid; }
  h4 { font-size: 11pt; font-weight: 700; margin-top: 0.8em; page-break-after: avoid; }

  /* Fließtext */
  p { font-size: 11pt; line-height: 1.6; margin-bottom: 0.6em; }

  /* Summa-Box */
  div.summa {
    border: 1pt solid #ccc;
    border-radius: 0;
    padding: 0.6em 0.8em;
    margin-bottom: 1em;
    background: #f8f8f8 !important;
  }

  div.summa::before,
  div.summa::after { display: none; }

  /* Beispiel-Box */
  div.beispiel {
    border-left: 3pt solid #333;
    padding: 0.5em 0.75em;
    margin: 0.8em 0;
    background: #f5f5f5 !important;
    page-break-inside: avoid;
  }

  /* Tabellen */
  table {
    width: 100%;
    border-collapse: collapse;
    font-size: 10pt;
    page-break-inside: avoid;
  }

  th, td {
    border: 0.5pt solid #999;
    padding: 0.3em 0.5em;
    vertical-align: top;
  }

  thead { border-bottom: 1pt solid #333; }

  /* Links: URL in Klammern */
  a[href]::after {
    content: none;
  }

  /* Seitenumbrüche verhindern */
  img, table, div.beispiel, div.summa { page-break-inside: avoid; }

  p, h2, h3, h4 { orphans: 3; widows: 3; }
}
