/* =============================================================================
 * BEPO – Berliner Prüfungs-Optimierer
 * public/assets/css/parts/print.css – @media print stylesheet
 *
 * Wandelt die Summary-View in ein amtliches Prüfungsprotokoll um.
 * ============================================================================= */

@media print {
    /* -----------------------------------------------------------------------
     * 1. Global: Hintergründe entfernen, Schrift auf Schwarz
     * ----------------------------------------------------------------------- */
    *,
    *::before,
    *::after {
        background: transparent !important;
        background-color: white !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
        border-color: #000 !important;
    }

    body {
        font-family: 'Times New Roman', Times, serif;
        font-size: 11pt;
        line-height: 1.4;
        margin: 1.5cm 1.8cm;
        color: #000;
        background: white !important;
    }

    /* -----------------------------------------------------------------------
     * 2. Verstecken: Navigation, Buttons, Footer, nicht druckbare Elemente
     * ----------------------------------------------------------------------- */
    .no-print,
    .summary-actions,
    .summary-footer,
    .dashboard-footer,
    .summary-btn,
    header.dashboard-header,
    .beenden-btn,
    .timer-container,
    .bike-icon,
    .timer-progress-wrapper {
        display: none !important;
    }

    /* -----------------------------------------------------------------------
     * 3. Summary-Header (Briefkopf)
     * ----------------------------------------------------------------------- */
    .summary-container {
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .summary-header {
        border-bottom: 2px solid #000 !important;
        margin-bottom: 1.2rem;
        padding-bottom: 0.8rem;
        text-align: center;
    }

    .summary-header h1 {
        font-size: 16pt;
        font-weight: bold;
        color: #000 !important;
        margin: 0 0 0.4rem;
    }

    .summary-header .summary-meta {
        font-size: 10pt;
        color: #000 !important;
        line-height: 1.5;
    }

    .summary-header .summary-meta strong {
        color: #000 !important;
    }

    /* -----------------------------------------------------------------------
     * 4. KPI-Cards als Text-Blöcke
     * ----------------------------------------------------------------------- */
    .kpi-row {
        display: block;
        margin-bottom: 1rem;
        page-break-inside: avoid;
    }

    .kpi-card {
        display: inline-block;
        width: 23%;
        border: 1px solid #000 !important;
        border-radius: 0;
        padding: 0.4rem 0.3rem;
        margin: 0.1%;
        text-align: center;
        min-height: auto;
        vertical-align: top;
    }

    .kpi-card .kpi-label {
        font-size: 7pt;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        color: #000 !important;
    }

    .kpi-card .kpi-value {
        font-size: 14pt;
        font-weight: bold;
        color: #000 !important;
    }

    .kpi-card .kpi-sub {
        font-size: 7pt;
        color: #000 !important;
    }

    .kpi-card.kpi-passed .kpi-value,
    .kpi-card.kpi-failed .kpi-value,
    .kpi-card.kpi-total-fp .kpi-value {
        color: #000 !important;
    }

    /* -----------------------------------------------------------------------
     * 5. Ergebnistabelle
     * ----------------------------------------------------------------------- */
    .summary-section-title {
        font-size: 11pt;
        font-weight: bold;
        color: #000 !important;
        border-bottom: 1px solid #000 !important;
        margin: 1rem 0 0.5rem;
        padding-bottom: 0.2rem;
    }

    .results-table-wrapper {
        overflow: visible;
        margin-bottom: 1rem;
    }

    .results-table {
        width: 100%;
        border-collapse: collapse;
        font-size: 9pt;
    }

    .results-table thead th {
        background: #fff !important;
        color: #000 !important;
        font-size: 8pt;
        text-transform: uppercase;
        border-bottom: 2px solid #000 !important;
        border-top: 1px solid #000 !important;
        padding: 0.3rem 0.4rem;
    }

    .results-table tbody td {
        padding: 0.25rem 0.4rem;
        border-bottom: 1px solid #ccc !important;
        color: #000 !important;
    }

    .results-table tbody tr:last-child td {
        border-bottom: 1px solid #000 !important;
    }

    .results-table tbody tr:hover {
        background: transparent !important;
    }

    /* Status- und Ergebnis-Badges: Border statt Hintergrund */
    .results-table .status-badge,
    .results-table .result-badge {
        background: transparent !important;
        color: #000 !important;
        border: 1px solid #000 !important;
        padding: 0.1rem 0.3rem;
        font-size: 7pt;
    }

    .results-table .status-badge {
        text-transform: uppercase;
    }

    /* -----------------------------------------------------------------------
     * 5b. Fehler-Detail-Spalte im Druck
     * ----------------------------------------------------------------------- */

    /* Modal (Student-Detail) im Druck unsichtbar */
    #student-detail-modal,
    .modal-overlay {
        display: none !important;
    }

    /* Print-Fehler-Zelle im Druck sichtbar machen */
    .print-fehler-cell {
        display: table-cell !important;
        font-size: 7pt;
        color: #000 !important;
    }

    /* Detail-Button und leere Anzeige im Druck verstecken */
    .detail-btn,
    .detail-empty {
        display: none !important;
    }

    /* Detail-Spalte im Druck: normale Breite */
    .results-table .detail-col {
        min-width: auto;
        max-width: none;
        white-space: normal;
    }

    /* -----------------------------------------------------------------------
     * 6. Page-Breaks
     * ----------------------------------------------------------------------- */
    .kpi-row {
        page-break-inside: avoid;
    }

    .results-table tr {
        page-break-inside: avoid;
    }

    .results-table thead {
        display: table-header-group;
    }

    .summary-container {
        page-break-after: avoid;
    }

    /* -----------------------------------------------------------------------
     * 7. Zusatz: Amtliches Siegel-Icon (per Content generiert)
     * ----------------------------------------------------------------------- */
    .summary-container::after {
        content: "BEPO – Berliner Prüfungs-Optimierer · © x030.eu";
        display: block;
        text-align: center;
        font-size: 7pt;
        color: #666 !important;
        margin-top: 1.5rem;
        border-top: 1px solid #999 !important;
        padding-top: 0.5rem;
    }
}