.only-print {
    display: none;
}

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

    * {
        print-color-adjust: exact;
        -webkit-print-color-adjust: exact;
    }

    html,
    body {
        background: #ffffff !important;
        color: #17211c;
        font-size: 9pt;
        line-height: 1.4;
    }

    .site-header,
    .site-footer,
    .back-link,
    .no-print {
        display: none !important;
    }

    .only-print {
        display: block !important;
    }

    .site-shell,
    .site-main,
    .content-card,
    .card,
    .print-card,
    .result-card,
    .printable-result {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #ffffff !important;
        box-shadow: none !important;
    }

    .print-header,
    .print-heading {
        margin: 0 0 5mm !important;
        padding-bottom: 3mm;
        border-bottom: 1px solid #d8dedb;
        text-align: center;
    }

    .print-header h1,
    .print-heading h1 {
        margin: 0 0 1mm !important;
        font-size: 16pt !important;
        line-height: 1.2 !important;
    }

    .print-header h2,
    .print-heading h2 {
        margin: 0 !important;
        font-size: 11pt !important;
        line-height: 1.25;
    }

    .print-header p,
    .print-heading p {
        margin: 0 !important;
        color: #5f6f66;
        font-size: 8.5pt !important;
    }

    .result-card,
    .working-time-result {
        font-size: 9pt !important;
        line-height: 1.4 !important;
    }

    .result-card p,
    .result-card li,
    .working-time-result p,
    .working-time-result li {
        font-size: 9pt !important;
        line-height: 1.4 !important;
    }

    .result-card h2,
    .working-time-result h2 {
        margin: 0 0 2.5mm !important;
        font-size: 12pt !important;
        line-height: 1.25 !important;
    }

    .result-card h3,
    .working-time-result h3 {
        margin: 0 0 2mm !important;
        font-size: 10.5pt !important;
        line-height: 1.3 !important;
    }

    h2,
    h3,
    h4 {
        break-after: avoid;
        page-break-after: avoid;
    }

    .summary-value,
    .summary-card strong,
    .first-year-summary-grid strong,
    .next-acquisition strong {
        font-size: 10.5pt !important;
        line-height: 1.3 !important;
    }

    .notice-result-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 3mm !important;
    }

    .notice-result-grid > div {
        min-width: 0;
        padding: 3mm !important;
        border-radius: 2mm !important;
    }

    .notice-result-grid > div:nth-child(3) {
        grid-column: 1 / -1;
    }

    .notice-result-grid span {
        margin-bottom: 1mm !important;
        font-size: 7.5pt !important;
    }

    .notice-result-grid strong {
        font-size: 10pt !important;
        line-height: 1.25 !important;
    }

    table {
        width: 100%;
        border-collapse: collapse;
    }

    thead {
        display: table-header-group;
    }

    th {
        padding: 2mm !important;
        font-size: 8pt !important;
    }

    td {
        padding: 2mm !important;
        font-size: 8.5pt !important;
        line-height: 1.35;
    }

    tr,
    .summary-card,
    .summary-block,
    .threshold-note {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    a {
        color: inherit;
        text-decoration: none;
    }

        .result-card .result-summary {
        margin: 3mm 0 0 !important;
    }

        .working-time-result .details-section {
        display: none !important;
    }
}