html {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    width: 57mm;
    display: flex;
    justify-content: center;
}

body {
    margin: 10mm 2mm; 
    justify-content: center;
    display: flex;
    flex: auto;
}

.main-layout > div:not(:last-child) {
    margin-bottom: 2mm;
}

.main-layout > div.airline-logo {
    align-items: center;
    justify-content: center;
    margin-bottom: 5mm;
}

.flight-direction-info > div.airplane-symbol {
    font-size: 15mm;
}

.airline-logo > img {
    width: 90%;
}

.flight-direction-info {
    text-align: center;
    align-items: center;
    font-size: 5mm;
}

.flight-direction-info .airport-code {
    font-size: 10mm;
}

.flex-row {
    display: flex;
    flex-flow: row;
}

.flex-column {
    width: 100%;
    display: flex;
    flex-flow: column;
    align-items: center;
}

div.value {
    font-weight: bold;
}

.passanger-name {
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 7mm;
    margin-bottom: 5mm;
}

.main-layout > div.flight-info,
.main-layout > div.seating-info {
    margin-bottom: 5mm;
}

.main-layout > div.passanger-baggage > div {
    margin-bottom: 2mm;
}

.flight-info > div,
.seating-info > div {
    width: 90%;
    justify-content: space-between;
}

.file-upload {
    margin-bottom: 10mm;
}

.file-upload > * {
    max-width: 45mm;
}

.barcodes > img,
.barcodes {
    width: 100%;
}

.barcodes > img:not(:last-child) {
    margin-bottom: 10mm;
}

.boarding-times > div {
    display: flex;
    flex-flow: column;
}
