@page {
    size: A4 landscape;
    margin: 7mm;
}

:root,
body {
    background: #ffffff;
    color: #000000;
}

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

.page-shell {
    width: 100%;
    margin: 0;
}

.site-header,
.search-panel,
.page-controls {
    display: none !important;
}

.timetable-sheet,
footer {
    margin: 0;
    padding: 0;
    border: 0;
    box-shadow: none;
}

.sheet-heading {
    margin: 0;
    padding: 2.2mm 3mm;
    border: 0.6mm solid #273443;
    background: #8da8ca !important;
    color: #ffffff !important;
}

.sheet-heading span {
    background: #ffffff !important;
    color: #314d70 !important;
}

.data-meta {
    margin: 2mm 0;
}

.directions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.5mm;
    margin-top: 2.5mm;
}

.direction-panel,
.footnotes,
.legends {
    break-inside: avoid;
}

.direction-panel {
    border-width: 0.6mm;
    box-shadow: none;
}

.route-header {
    min-height: 13mm;
    background: #8da8ca !important;
    color: #ffffff !important;
    border-bottom-width: 0.6mm;
}

.route-arrow {
    background: #ffffff !important;
    color: #6787af !important;
}

th {
    background: #f2f3f4 !important;
}

tbody td:first-child {
    background: #dceee8 !important;
}

tbody tr:nth-child(even) td:first-child {
    background: #d3e8e1 !important;
}

table {
    min-width: 0;
    font-size: 6.8pt;
}

th,
td {
    padding: 0.9mm 1mm;
}

th {
    font-size: 5.8pt;
}

.time {
    font-size: 9pt;
}

.footnotes,
.legends {
    margin-top: 2.5mm;
    font-size: 6.8pt;
}

footer {
    margin-top: 2.5mm;
    font-size: 6.5pt;
}

a[href]::after {
    content: none !important;
}
