.sheet.infinite {
    height: auto !important;
}

@page {
    size: A4;
    padding: 30mm;
    margin: 0;
}

header {
    display: block;
    width: 190mm;
}


#print-header {
    display: block !important;
    border-bottom: 1px solid;
    margin-bottom: 0;
    height: 22mm;
    background: white;
}

header, main, footer {
    margin: 0;
}

#print-header .col.right-align {
    padding: 15px;
}

.sheet {
    padding: 10mm;
}


.header-space, .footer-space {
    height: 0;
}

.print-layout-table, .print-layout-td {
    width: 190mm;
    max-width: 190mm;
    min-width: 190mm;
}

.print-layout-td {
    padding: 0;
}

.print-layout-table .no-border {
    border: 0;
}


footer {
    margin-top: 5mm;
    text-align: center;
    width: 190mm;

}

header .row, header .col {
    padding: 0 !important;
    margin: 0 !important;
}

#print-logo {
    padding: 2mm;
    height: 22mm;
    width: auto;
}

.page-break {
    display: block;
    text-align: center;
    margin: auto;
    margin-top: 20px;
    margin-bottom: 20px;
    width: 200px;
    border-top: 1px dashed;
    color: darkgrey;
    page-break-after: always;
}

@media print {
    .header-space {
        height: 35mm;
    }

    .footer-space {
        height: 20mm
    }

    header, footer {
        height: 22mm;
    }

    header {
        position: fixed;
        top: 10mm;
    }

    footer {
        position: fixed;
        bottom: 0;
    }

    .page-break {
        border: white;
    }
}

/* Some stuff for tables */

table.small-print, td.small-print, th.small-print {
    font-size: 10pt;
}

tr {
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}

td, th {
    padding: 1px;
}

td.rotate, th.rotate {
    text-align: center;
    transform: rotate(-90deg);
}
