/* SJ Teilen und Drucken: Leiste am Ende jedes Blogbeitrags, Druckausgabe auf DIN A4 */

.sj-share {
  --sjs-ink: var(--sj-ink, #0a1014);
  --sjs-copy: var(--sj-copy, #303941);
  --sjs-muted: var(--sj-muted, #667178);
  --sjs-mint: var(--sj-mint, #77988f);
  --sjs-line: var(--sj-line, #dce2e0);
  --sjs-btn: #051f20;
  --sjs-btn-text: #fff;
  --sjs-surface: #f7f9f8;
  box-sizing: border-box;
  width: min(880px, calc(100% - 48px));
  margin: 44px auto 0;
  padding: 30px 0 8px;
  border-top: 1px solid var(--sjs-line);
  color: var(--sjs-copy);
  font-family: inherit;
}
.sj-share * { box-sizing: border-box; }
.sj-back-article__copy > .sj-share { width: 100%; }
/* Ältere Beiträge haben eigene Knöpfe „Link teilen“ und „Beitrag drucken“; die neue Leiste ersetzt sie */
body.single-post .sj-article__actions [data-sj-share],
body.single-post .sj-article__actions [onclick*="print"] { display: none !important; }

.sj-share .sj-share__kicker {
  margin: 0 0 10px;
  color: var(--sjs-mint);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .16em;
  line-height: 1.4;
  text-transform: uppercase;
}
.sj-share .sj-share__lead {
  margin: 0 0 20px;
  color: var(--sjs-ink);
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.3;
}

.sj-share .sj-share__row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
  margin: 0 0 18px;
}
.sj-share .sj-share__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 15px 24px;
  border: 1px solid var(--sjs-btn);
  border-radius: 999px;
  background: transparent;
  color: var(--sjs-btn);
  font: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition: background-color .15s ease, color .15s ease, transform .15s ease;
}
.sj-share .sj-share__btn--primary {
  background: var(--sjs-btn);
  color: var(--sjs-btn-text);
}
.sj-share .sj-share__btn:hover { transform: translateY(-1px); }
.sj-share .sj-share__btn:not(.sj-share__btn--primary):hover { background: var(--sjs-surface); }
.sj-share .sj-share__btn:focus-visible { outline: 3px solid var(--sjs-mint); outline-offset: 3px; }
.sj-share .sj-share__btn svg { width: 18px; height: 18px; flex: none; }

.sj-share .sj-share__direct {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 14px;
  margin: 0 0 6px;
  color: var(--sjs-muted);
  font-size: 15px;
  line-height: 1.5;
}
.sj-share .sj-share__direct a {
  color: var(--sjs-ink);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  text-decoration-color: var(--sjs-mint);
}
.sj-share .sj-share__direct a:hover { text-decoration-thickness: 2px; }
.sj-share .sj-share__direct a:focus-visible { outline: 3px solid var(--sjs-mint); outline-offset: 3px; border-radius: 4px; }

.sj-share .sj-share__status {
  min-height: 1.5em;
  margin: 8px 0 0;
  color: var(--sjs-mint);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
}
.sj-share .sj-share__print-source { display: none; }

/* Abendmodus der Website */
html.sj-evening .sj-share {
  --sjs-ink: var(--sj-night-text, #eadccc);
  --sjs-copy: var(--sj-night-copy, #bca997);
  --sjs-muted: var(--sj-night-muted, #bca997);
  --sjs-mint: var(--sj-night-accent-soft, #e0a98b);
  --sjs-line: var(--sj-night-border, rgba(234, 220, 204, .15));
  --sjs-btn: var(--sj-night-text, #eadccc);
  --sjs-btn-text: var(--sj-night-bg, #17120f);
  --sjs-surface: var(--sj-night-surface-2, #2a211a);
}

@media (max-width: 720px) {
  .sj-share { width: calc(100% - 36px); margin-top: 34px; padding-top: 24px; }
  .sj-share .sj-share__lead { font-size: 20px; }
  .sj-share .sj-share__btn { padding: 14px 20px; font-size: 15px; }
}

/* ------------------------------------------------------------------ */
/* Druck: DIN A4                                                        */
/* ------------------------------------------------------------------ */

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

@media print {
  html, body {
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    background: #fff !important;
    color: #000 !important;
  }
  body { margin: 0 !important; padding: 0 !important; font-size: 11pt; }

  /* Alles weg, was auf Papier nichts bringt */
  #wpadminbar, .skip-link, #BorlabsCookieBox, #BorlabsCookieWidget, .brlbs-cmpnt-container,
  body.single-post .wp-block-template-part, body.single-post header.wp-block-template-part, body.single-post footer.wp-block-template-part,
  nav, .sj-topbar, .sj-dock, [class^="sj-dock"], [class*=" sj-dock"], #sj-dock,
  .sj-scroll-progress, .sj-evening-notice, .sj-mobile-booking, [class*="brlbs"],
  .sj-article__bar, .sj-article__actions, .sj-article__footer .sj-article__button,
  .sj-cta, .sj-bottom-actions, .sj-article__related, .sj-footer-spacer,
  .sj-share__kicker, .sj-share__lead, .sj-share__row, .sj-share__direct, .sj-share__status,
  iframe, video, audio, .comments-area, #comments, .wp-block-comments, .wp-block-post-comments-form {
    display: none !important;
  }

  /* Volle Satzbreite, keine Vollbild-Tricks */
  .wp-site-blocks, main, .entry-content, .sj-back-article, .sj-article,
  .sj-back-article__head, .sj-back-article__copy, .sj-back-article__copy > .sj-back-figure, .sj-back-figure,
  .sj-article__head, .sj-article__copy, .sj-article__visual, .sj-article__image-break, .sj-article__footer {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    background: #fff !important;
    color: #000 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }
  .entry-content > style { display: none; }

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

  /* Typografie fürs Papier */
  .entry-content h1, .sj-back-article__title {
    margin: 0 0 10pt !important;
    color: #000 !important;
    font-size: 24pt !important;
    font-weight: 700 !important;
    letter-spacing: -.02em !important;
    line-height: 1.12 !important;
    text-wrap: balance;
  }
  .sj-back-article__kicker, .entry-content .sj-kicker {
    margin: 0 0 8pt !important;
    color: #444 !important;
    font-size: 8.5pt !important;
    letter-spacing: .14em !important;
  }
  .entry-content h2 {
    margin: 20pt 0 7pt !important;
    color: #000 !important;
    font-size: 15.5pt !important;
    font-weight: 700 !important;
    letter-spacing: -.015em !important;
    line-height: 1.2 !important;
    break-after: avoid; page-break-after: avoid;
  }
  .entry-content h3 {
    margin: 14pt 0 5pt !important;
    color: #000 !important;
    font-size: 12.5pt !important;
    line-height: 1.25 !important;
    break-after: avoid; page-break-after: avoid;
  }
  .entry-content p, .entry-content li {
    margin: 0 0 7pt !important;
    color: #000 !important;
    font-size: 11pt !important;
    line-height: 1.45 !important;
    orphans: 3; widows: 3;
  }
  .entry-content ul, .entry-content ol { margin: 4pt 0 10pt !important; padding-left: 1.3em !important; }
  .entry-content li { margin-bottom: 3pt !important; }
  .entry-content strong { color: #000 !important; }

  /* Einleitung: statt dunkler Kachel ein Randstrich */
  .entry-content .sj-article__lead {
    margin: 0 0 12pt !important;
    padding: 2pt 0 2pt 10pt !important;
    border-left: 2pt solid #000 !important;
    border-radius: 0 !important;
    background: none !important;
    color: #000 !important;
    font-size: 12.5pt !important;
    line-height: 1.4 !important;
  }

  /* Bilder: ganze Breite, nicht über die Seitengrenze */
  .entry-content figure {
    margin: 10pt 0 12pt !important;
    break-inside: avoid; page-break-inside: avoid;
  }
  .entry-content figure img, .entry-content img {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    border-radius: 3pt !important;
  }
  .entry-content figcaption { margin: 4pt 0 0 !important; color: #444 !important; font-size: 8.5pt !important; }

  /* Markierungen und Verweise: schwarz auf weiß */
  .entry-content .sj-badge,
  html body.single-post main .entry-content article.sj-back-article .sj-badge.sj-badge--good,
  html body.single-post main .entry-content article.sj-back-article .sj-badge.sj-badge--plausible,
  html body.single-post main .entry-content article.sj-back-article .sj-badge.sj-badge--hypothesis {
    display: inline !important;
    margin: 0 4pt 0 0 !important;
    padding: 0 4pt !important;
    border: .6pt solid #000 !important;
    border-radius: 3pt !important;
    background: none !important;
    color: #000 !important;
    font-size: 8pt !important;
    font-weight: 700 !important;
    letter-spacing: .03em !important;
    vertical-align: baseline !important;
  }
  .entry-content .sj-ll-ref {
    margin: 0 1pt !important;
    padding: 0 !important;
    background: none !important;
    color: #444 !important;
    font-size: 8.5pt !important;
    font-weight: 600 !important;
    white-space: nowrap;
  }
  .entry-content .sj-ll-ref::before { content: "["; }
  .entry-content .sj-ll-ref::after { content: "]"; }

  /* Kästen */
  .entry-content .sj-ll-safety, .entry-content .sj-practice-note, .entry-content .sj-disclaimer,
  .entry-content blockquote, .entry-content .sj-sources {
    margin: 10pt 0 12pt !important;
    padding: 8pt 10pt !important;
    border: .7pt solid #000 !important;
    border-radius: 0 !important;
    background: none !important;
    color: #000 !important;
    break-inside: avoid; page-break-inside: avoid;
  }
  .entry-content .sj-disclaimer p { font-size: 9.5pt !important; }

  /* Links: innerhalb der Website nur Text, nach außen mit Adresse */
  .entry-content a { color: #000 !important; text-decoration: underline; text-decoration-thickness: .6pt; }
  .entry-content a[href^="http"]:not([href*="sebastian-jurochnik.de"])::after {
    content: " (" attr(href) ")";
    color: #444;
    font-size: 8.5pt;
    font-weight: 400;
    word-break: break-all;
  }

  /* Aufklappbares: offen und ohne Pfeil */
  .entry-content details { display: block !important; border: 0 !important; }
  .entry-content summary {
    display: block !important;
    padding: 6pt 0 2pt !important;
    color: #000 !important;
    font-size: 11pt !important;
    font-weight: 700 !important;
    list-style: none !important;
  }
  .entry-content summary::-webkit-details-marker { display: none; }
  .entry-content summary::marker { content: ""; }
  .entry-content .sj-faq { margin: 6pt 0 !important; border: 0 !important; }
  .entry-content .sj-faq details { border-bottom: .5pt solid #999 !important; }
  .entry-content .sj-faq details p { padding: 0 0 6pt !important; font-size: 10.5pt !important; }
  .entry-content .sj-ll-list { margin: 14pt 0 0 !important; border: 0 !important; }

  /* Tabellen */
  .entry-content .sj-ll-table-wrap { overflow: visible !important; padding: 0 !important; }
  .entry-content table { width: 100% !important; border-collapse: collapse !important; font-size: 9pt !important; line-height: 1.35 !important; }
  .entry-content thead { display: table-header-group; }
  .entry-content tr { break-inside: avoid; page-break-inside: avoid; }
  .entry-content th, .entry-content td {
    padding: 3pt 5pt !important;
    border-bottom: .5pt solid #999 !important;
    color: #000 !important;
    vertical-align: top;
  }
  .entry-content th { font-size: 8pt !important; letter-spacing: .05em; }

  /* Quelle und Praxis am Ende des Ausdrucks */
  .sj-share { width: 100% !important; margin: 14pt 0 0 !important; padding: 0 !important; border: 0 !important; }
  .sj-share__print-source {
    display: block !important;
    margin-top: 8pt;
    padding-top: 7pt;
    border-top: .7pt solid #000;
    break-inside: avoid; page-break-inside: avoid;
  }
  .sj-share__print-source p {
    margin: 0 0 3pt !important;
    color: #222 !important;
    font-size: 9pt !important;
    line-height: 1.4 !important;
  }
  .sj-share__print-source strong { font-weight: 700; }
}
