﻿/* Basisstile für den Druck */
@media print {
    /* Verberge alle Elemente, die nicht für den Druck geeignet sind */
    header, 
    footer, 
    nav, 
    .sidebar, 
    .advertisement, 
    .no-print {
        display: none;
    }

    /* Passe die Breite und den Abstand der Elemente an */
    body {
        font-family: "Arial", serif;
        font-size: 11pt;
        color: #000;
        background: none;
        margin: 1cm; /* Vermeide zu große Ränder für besseren Druck */
    }

    /* Entferne Hintergrundbilder und Farben */
    * {
        background: none !important;
        color: #000 !important;
        text-shadow: none !important;
        box-shadow: none !important;
    }

    /* Stilisiere Links für den Druck */
    a:link:after, 
    a:visited:after {
        content: " (" attr(href) ")";
        font-size: 10pt;
    }

    /* Bilder anpassen */
    img {
        display: block;
		max-width: 100%;
        height: auto;
        page-break-inside: avoid; /* Vermeide, dass Bilder auf zwei Seiten aufgeteilt werden */
		break-inside: avoid; /* Moderne Alternative zu page-break-inside, bessere Unterstützung in einigen Browsern */
    }

    /* Absätze und Listen für besseren Druckstil */
    p, 
    h1, 
    h2, 
    h3, 
    h4, 
    h5, 
    h6 {
        orphans: 3; /* Vermeide Weisen (einzelne Zeilen am Ende einer Seite) */
        widows: 3;  /* Vermeide Witwen (einzelne Zeilen am Anfang einer Seite) */
    }

	
    /* Tabellenanpassungen für den Druck */
    table {
        width: 100%;
        border-collapse: collapse;
        page-break-inside: avoid;
    }

    th, 
    td {
        border: 1px solid #333;
        padding: 4px;
    }
    button {
        border: 0px solid #333;
    }
    /* Seitenumbruch für bestimmte Elemente */
    .page-break {
        page-break-before: always;
    }
		/* Vermeide Seitenumbrüche in Elternelementen von Bildern */
    .img-print {
        page-break-inside: avoid;
        break-inside: avoid;
        display: block;
        /* Sicherstellen, dass auch Container nicht gebrochen wird */
        overflow: hidden;
    }
    /* Erzwungener Seitenumbruch vor und nach dem Bild-Container */
    .img-print::before, 
    .img-print::after {
        content: "";
        display: block;
        page-break-before: always; /* Seitenumbruch vor dem Bild-Container */
        page-break-after: always;  /* Seitenumbruch nach dem Bild-Container */
        break-before: always;      /* Moderne Alternative für Seitenumbruch */
        break-after: always;       /* Moderne Alternative für Seitenumbruch */
    }
}

