@page {
    size: A4 portrait;
    margin: 12mm 10mm 14mm;
}

@media print {
    html,
    body {
        width: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        background: white !important;
        color: black !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .no-print,
    .app-version-badge {
        display: none !important;
    }

    #print-report {
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .report-document-header,
    .report-score-card {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .report-document-header {
        break-after: avoid;
        page-break-after: avoid;
    }

    .report-score-card {
        margin-top: 4mm !important;
        break-after: avoid;
        page-break-after: avoid;
    }

    #print-tables {
        display: block !important;
        margin-top: 6mm !important;
    }

    #print-tables > * + * {
        margin-top: 7mm !important;
    }

    .report-major-section {
        margin-top: 0 !important;
        padding-top: 4mm !important;
        break-before: page;
        page-break-before: always;
    }

    .report-major-section > h2,
    #print-tables h3 {
        break-after: avoid;
        page-break-after: avoid;
    }

    .report-major-section > h2 + div,
    #print-tables h3 + table,
    #print-tables h3 + div {
        break-before: avoid;
        page-break-before: avoid;
    }

    #print-tables table {
        width: 100% !important;
        break-inside: auto;
        page-break-inside: auto;
    }

    #print-tables thead {
        display: table-header-group;
    }

    #print-tables tfoot {
        display: table-footer-group;
    }

    #print-tables tr,
    #print-tables th,
    #print-tables td {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .report-visual-block,
    .six-zone-card {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .report-summary-grid {
        display: block !important;
        break-inside: auto;
        page-break-inside: auto;
    }

    .report-summary-grid > * {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .report-summary-grid > * + * {
        margin-top: 5mm !important;
    }

    .report-circle-feed-tables > * {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .report-combination-table {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .report-zone-grid,
    .report-heatmap-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: start;
    }

    .print-card {
        background: transparent !important;
        border: 1px solid #cbd5e1 !important;
        color: black !important;
        box-shadow: none !important;
    }

    .print-text-dark {
        color: #0f172a !important;
    }

    .print-text-muted {
        color: #475569 !important;
    }

    .report-score-team-a {
        background: #744577 !important;
        color: white !important;
    }

    .report-score-team-b {
        background: #84c5b1 !important;
        color: #102a24 !important;
    }

    .report-final-score {
        font-size: 2rem !important;
        white-space: nowrap !important;
    }

    .report-gains-turnovers {
        width: 100% !important;
        grid-column: 1 / -1 !important;
    }

    .print-svg-heatmap {
        background: white !important;
    }
}
