
h1 {
    text-align: center;
    font-size: 24pt;
    margin-top: 0;
    margin-bottom: 2mm;
}

h2 {
    text-align: center;
    font-size: 14pt;
    margin-top: 2mm;
}

h3 {
    font-weight: bold;
    font-style: normal;
    font-size: 14pt;
    margin: 0;
    text-align: left;
}

h4 {
    font-weight: bold;
    font-style: italic;
    font-size: 10pt;
    margin: 0;
    text-align: center;
    margin: 2mm 0 2mm 0;
}

.row:first-child { margin-top: 0.5mm; }
.row:last-child { margin-bottom: 0.5mm; }

.bold {
    font-weight: bold;
}

table {
    margin-top: 10mm;
    break-inside: avoid;
}

table th,
table td {
    border: var(--border-thickness) solid black;
    vertical-align: top !important;
}

table .header {
    padding: 1mm 2mm;
}

table .header,
table .footer {
    background-color: #E0E0E0;
}

table .header.red,
table .footer.red {
    background-color: #FFC0C0;
}

table .header.green,
table .footer.green {
    background-color: #C0FFC0;
}

.row {
    display: flex;
    width: 100%;
    font-size: 10pt;
}

.row span {
    flex: 10mm 1 1;
    display: block;
    padding: 0 1mm;
}

.row .units {
    text-align: center;
    font-size: 8pt;
    font-style: italic;
    padding: 1mm;
}

.gradation {
    text-align: center;
}

.number {
    text-align: right;
}

.row span:first-child { flex-basis: 7.5mm; }
.row span:last-child { flex-basis: 17.5mm; }
