/**
 * print.css - was auf das Blatt kommt: NUR der Ausschnitt des 3D-Fensters.
 *
 * Keine Werkzeugleiste, keine Seitenmenues, keine Listen, keine Dialoge -
 * das Bild und die Masse, die gerade eingeblendet sind.
 *
 * ⚠️ DAS 3D-FENSTER SELBST DRUCKT LEER. Der Renderer laeuft ohne
 * `preserveDrawingBuffer`; nach dem Zeichnen ist der Puffer verworfen, und
 * was der Browser beim Drucken vom `<canvas>` abholt, ist schwarz bzw. leer.
 * Deshalb legt `printView.js` VOR dem Druck ein Standbild an (`scene.render()`
 * und sofort `toDataURL()` - im selben Bild, wie beim Screenshot) und
 * druckt dieses. Das Original-Canvas wird ausgeblendet.
 *
 * ⚠️ EINE PAUSCHALREGEL WIE `body > * { display:none }` WAERE FALSCH. Die
 * Mass-Beschriftungen haengen als eigene Divs direkt am `<body>`
 * (labels_v2.createHtmlLabel) - sie wuerden mit verschwinden. Das Druckblatt
 * traegt deshalb eigene Kopien davon, und ausgeblendet wird alles ausser ihm.
 */

@media print {

    /* Querformat: ein 3D-Fenster ist so gut wie immer breiter als hoch. */
    @page {
        size: landscape;
        margin: 8mm;
    }

    html, body {
        width: auto !important;
        height: auto !important;
        overflow: visible !important;
        background: #ffffff !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Alles weg - ausser dem Druckblatt. */
    body > *:not(#pd-druckblatt) { display: none !important; }

    #pd-druckblatt {
        display: block !important;
        position: static !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        page-break-inside: avoid;
    }

    #pd-druckblatt .pd-bild-huelle {
        position: relative;
        width: 100%;
        line-height: 0;
    }
    #pd-druckblatt img {
        width: 100% !important;
        height: auto !important;
        display: block;
    }

    /* Die Mass-Beschriftungen: auf Papier hell mit dunkler Schrift statt
       umgekehrt - ein dunkler Kasten frisst Toner und liest sich schlechter. */
    #pd-druckblatt .pd-marke {
        position: absolute;
        transform: translate(-50%, -50%);
        background: rgba(255, 255, 255, 0.92) !important;
        border: 1px solid #6b7280;
        border-radius: 4px;
        padding: 2px 6px;
        font-family: 'Segoe UI', Tahoma, sans-serif;
        font-weight: 700;
        line-height: 1.25;
        white-space: nowrap;
        /* ⚠️ Ohne das druckt der Browser Hintergruende NICHT - der Kasten
           waere weg und die Schrift stuende auf dem Bild. */
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* Das Bild selbst darf der Browser nicht aufhellen. */
    #pd-druckblatt img {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* Ausserhalb des Druckens ist das Blatt niemals zu sehen. Es wird nur fuer
   die Dauer des Druckauftrags angelegt und danach wieder entfernt; diese
   Regel ist der Riegel dagegen, dass es bei einem Abbruch stehen bleibt. */
#pd-druckblatt { display: none; }
