/* ============================================================
   DRUCK: nur die Anzeige-Karte landet auf dem Papier, alles
   Bedienbare verschwindet. A4, schwarz auf weiss - unabhaengig
   vom gerade gewaehlten Theme, sonst druckt das dunkle Layout
   eine fast schwarze Seite.
   ============================================================ */
.druck-kopf, .nur-druck, .bw-nur-druck { display: none; }

@media print {
    @page { size: A4; margin: 16mm; }

    /* Alles ausser der Anzeige-Karte ganz raus (nicht nur unsichtbar) -
       sonst haengt der unsichtbare Rest der Seite eine leere zweite Seite
       an, und im dunklen Theme scheint darunter der dunkle Hintergrund durch. */
    html, body { background: #fff !important; min-height: 0; padding: 0; }
    .kopfzeile, footer, #toast-bereich, main > :not(#anzeige-karte) { display: none !important; }
    main { padding: 0; }
    body * { visibility: hidden; }
    .anzeige-karte, .anzeige-karte * { visibility: visible; }
    .anzeige-karte {
        position: absolute; top: 0; left: 0; width: 100%;
        box-shadow: none; border: none; border-radius: 0; padding: 0; background: #fff; color: #000;
    }
    /* #anzeige ist die Bildschirm-Ansicht (an die Fensterbreite angepasst,
       beliebig viele Takte je Zeile) - fuers Papier zeichnet #druck-anzeige
       eigens mit fester Takte-pro-Zeile-Zahl, Groesse und Titel. */
    .anzeige-karte .leiste, .anzeige-karte #verdecken-btn, .anzeige-karte h2, #anzeige { display: none; }
    .anzeige-hinweis { display: none !important; }
    .nur-druck { display: block; }

    .druck-kopf {
        display: flex; justify-content: space-between; align-items: baseline;
        border-bottom: 2px solid #000; padding-bottom: .5rem; margin-bottom: 2.2rem;
    }
    .druck-kopf h1 { font-size: 1.1rem; margin: 0; }
    .druck-kopf .druck-felder { display: flex; gap: 1.5rem; font-size: .8rem; }

    /* stil.css setzt "color" direkt auf diese Elemente (nicht nur vererbt) -
       ein !important auf dem umschliessenden .anzeige-system allein ueberschreibt
       das nicht, geerbte Werte verlieren gegen eine eigene (auch nicht-wichtige)
       Regel am Element selbst. Deshalb hier dieselben Selektoren treffen wie
       in stil.css. Vorher blieb die Notenfarbe im dunklen Theme auf dem hellen
       --text der Bildschirmansicht stehen - "ausgegraut" auf weissem Papier. */
    .anzeige-system,
    .anzeige-system line, .anzeige-system path, .anzeige-system rect,
    .anzeige-system ellipse, .anzeige-system circle, .anzeige-system text {
        color: #000 !important;
    }
    /* Abstand passt zu DRUCK_ZEILENABSTAND in app.js (Einpassen auf eine Seite). */
    .anzeige-system { margin-bottom: 22px !important; max-width: 100%; }
    #druck-anzeige { overflow: visible; }
    .anzeige-system .linien-fuenf { color: #666 !important; }
    [data-ab], .handsatz { opacity: 1 !important; }
    .anzeige-system .handsatz { fill: #000 !important; }   /* "Verdecken" soll auf Papier nie greifen */

    /* Beat-Werkstatt (Klasse druck-beat am body, solange der Beat-Reiter
       offen ist): statt der Rhythmus-Karte das eigene Blatt #bw-druck. */
    /* Drumset-Werkstatt genauso mit druck-drumset und #ds-druck. */
    body.druck-beat .anzeige-karte, body.druck-drumset .anzeige-karte { display: none !important; }
    body.druck-beat #bw-druck, body.druck-drumset #ds-druck { display: block !important; }
    #bw-druck, #bw-druck *, #ds-druck, #ds-druck * { visibility: visible; }
    #bw-druck, #ds-druck { position: absolute; top: 0; left: 0; width: 100%; background: #fff; color: #000; }
    #bw-druck-noten, #ds-druck-noten { text-align: center; }
    .bw-nur-druck .bw-system { display: block; margin: 0 auto 22px; max-width: 100%; }
    .bw-nur-druck .bw-system, .bw-nur-druck .bw-system line, .bw-nur-druck .bw-system path, .bw-nur-druck .bw-system rect,
    .bw-nur-druck .bw-system ellipse, .bw-nur-druck .bw-system circle, .bw-nur-druck .bw-system text { color: #000 !important; }
    .bw-nur-druck .bw-system text { fill: #000 !important; }
    .bw-nur-druck .bw-linie-anzeige { color: #666 !important; }
    .bw-nur-druck .bw-spiel { display: none; }
}
