/* ==========================================================================
   Druckansichten der Tourenplanung (Tour und Reise).

   Die Seiten sind für A4 hoch ausgelegt und werden über den Browser-Druck-
   dialog als PDF gespeichert. Alles, was nur am Bildschirm Sinn ergibt
   (Werkzeugleiste), verschwindet im Druck.
   ========================================================================== */

.dr-seite {
    max-width: 900px;
    margin: 0 auto;
    padding: 24px 20px 60px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #10243a;
    font-size: 13px;
    line-height: 1.5;
}

.dr-werkzeug { display: flex; gap: 12px; align-items: center; margin-bottom: 18px; }
.dr-werkzeug button { padding: 9px 16px; border: 0; border-radius: 8px; background: #0C447C; color: #fff; font-size: 14px; font-weight: 600; font-family: inherit; cursor: pointer; }
.dr-werkzeug a { font-size: 13px; color: #185FA5; }

.dr-kopf { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; border-bottom: 2px solid #0C447C; padding-bottom: 10px; margin-bottom: 16px; }
.dr-kopf h1 { margin: 0; font-size: 21px; line-height: 1.25; }
.dr-logo { font-weight: 800; color: #0C447C; font-size: 15px; white-space: nowrap; }
.dr-unter { color: #5d6b7a; font-size: 12.5px; margin-top: 3px; }

.dr-eckdaten { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
.dr-eckdaten div { flex: 1 1 120px; border: 1px solid #dde3ea; border-radius: 8px; padding: 8px 12px; }
.dr-eckdaten span { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: .6px; color: #5d6b7a; }
.dr-eckdaten b { font-size: 17px; font-variant-numeric: tabular-nums; }

.dr-seite h2 { font-size: 13px; text-transform: uppercase; letter-spacing: 1px; color: #5d6b7a; margin: 20px 0 8px; }

.dr-karte { margin-bottom: 8px; }
.dr-karte img { width: 100%; height: auto; border: 1px solid #dde3ea; border-radius: 6px; display: block; }

.dr-tabelle { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.dr-tabelle th { text-align: left; border-bottom: 1px solid #cfd8e0; padding: 6px 8px; font-size: 11px; text-transform: uppercase; letter-spacing: .5px; color: #5d6b7a; }
.dr-tabelle td { border-bottom: 1px solid #eef1f5; padding: 6px 8px; }
.dr-tabelle .r { text-align: right; font-variant-numeric: tabular-nums; }

.dr-chip { display: inline-block; width: 9px; height: 9px; border-radius: 2px; margin-right: 6px; vertical-align: middle; }

.dr-hinweis { border: 1px solid #dde3ea; border-radius: 8px; padding: 10px 12px; color: #5d6b7a; font-size: 12.5px; }
.dr-fehler { max-width: 640px; margin: 40px auto; padding: 14px 16px; border: 1px solid #f3c4c4; background: #fdeaea; color: #A32D2D; border-radius: 10px; font-family: 'Inter', sans-serif; }
.dr-lade { max-width: 640px; margin: 40px auto; color: #5d6b7a; text-align: center; font-family: 'Inter', sans-serif; }

.dr-umbruch { break-before: page; page-break-before: always; height: 0; }
.dr-etappe { break-inside: avoid-page; }

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

    /* Die Druckseiten laufen im normalen App-Layout (damit die Anmeldedaten
       verfügbar sind). Zum Drucken bleibt nur der Inhalt übrig. */
    .navbar-top, .sidebar, .dr-werkzeug { display: none !important; }
    .app-layout { display: block !important; }
    .app-layout > *:not(.dr-seite) { margin: 0 !important; padding: 0 !important; }
    .dr-seite { max-width: none; margin: 0; padding: 0; font-size: 11.5px; }
    .dr-kopf h1 { font-size: 19px; }

    /* Farbflächen (Belagchips, Höhenprofil) müssen mitgedruckt werden –
       ohne das schluckt der Browser sie beim Sparen von Tinte. */
    .dr-chip, .dr-seite svg, .dr-eckdaten { -webkit-print-color-adjust: exact; print-color-adjust: exact; }

    .dr-tabelle { break-inside: auto; }
    .dr-tabelle tr { break-inside: avoid; }
    .dr-karte { break-inside: avoid; }
}
