@page {
    size: A4 portrait;
    margin: 0;
}

@media print {
    html, body {
        width: 210mm;
        min-height: 297mm;
        padding: 0;
        background: #ffffff;
    }

    .document {
        display: block;
    }

    .a4-page {
        width: 210mm;
        height: 297mm;
        min-height: 297mm;
        margin: 0;
        padding: 18mm 18mm 22mm;
        box-shadow: none;
        page-break-after: always;
        overflow: hidden;
    }

    .a4-page:last-child {
        page-break-after: auto;
    }

    .toolbar {
        display: none !important;
    }

    input, select, textarea {
        color: #000000;
        background: transparent;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    input::placeholder, textarea::placeholder {
        color: transparent;
    }

    .hint {
        display: none;
    }

    .data-table, .doc-header, .section-title {
        break-inside: avoid;
    }
}
