/* Výsledky a propozice na papíře. Načítá se jen pro tisk. */
@page { size: A4 portrait; margin: 14mm 12mm; }
:root {
  color-scheme: light;
  --on-sun: #111;
  --row: #fff;
  --paper: #fff;
  --mist: #fff;
  --sun-light: #fff;
  --ink: #111;
  --muted: #444;
  --river: #111;
  --line: #bbb;
}
*, *::before, *::after {
  animation: none !important;
  transition: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
/* Přepíše i právě běžící nástup obsahu vytvořený přes Web Animations API. */
body :not(svg, svg *) { transform: none !important; }
html, body { overflow: visible !important; background: #fff !important; color: #111 !important; }
body, body.ut-site { min-height: 0; font: 10pt/1.4 Arial, sans-serif; }
.ut-site #page { display: block; min-height: 0; }
.home-wrap { width: auto; max-width: none; margin: 0; }
.page-main { padding: 0; }
.ut-header, .home-footer, .ut-stats, .ut-scroll-top, .skip-link, .ut-lb,
.ut-buttons, .home-button, .gallery-years, .gallery-jumps { display: none !important; }
a { color: inherit !important; text-decoration: none !important; }
.entry-header { margin-bottom: 6mm; }
.entry-title { font: 700 22pt/1.2 Arial, sans-serif; }
.entry-header::after { content: 'Úhlava Tour · uhlava-tour.cz'; display: block; margin-top: 2mm; color: #444; font-size: 9pt; }
.entry-content h2 { margin: 7mm 0 3mm; font: 700 15pt/1.3 Arial, sans-serif; }
.entry-content h3 { margin: 5mm 0 2mm; font: 700 12pt/1.3 Arial, sans-serif; }
h1, h2, h3, summary { break-after: avoid; }
p, li { orphans: 3; widows: 3; }
.entry-content p { margin-bottom: 3mm; }
.entry-content ul, .entry-content ol { margin-bottom: 4mm; }
.ut-facts, .entry-header + .ut-facts { margin: 0 0 5mm; padding: 3mm 0; break-inside: avoid; }
.ut-facts dl { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ut-facts dl > div { padding: 0 3mm; border-top: 0; }
.ut-facts dt { font-size: 8pt; }
.ut-facts dd { font: 700 14pt/1.2 Arial, sans-serif; }
.ut-facts dd small { font-size: 9pt; }
.archive-note, .race-distance, .archive-details, .race-facts > div {
  background: none !important; padding: 3mm; border-radius: 0;
}
.archive-note { margin-bottom: 5mm; }
.home-kicker { font-size: 9pt; }
.race-section { margin-top: 6mm; }
.race-layout { display: block; margin: 3mm 0; }
.race-layout > div:last-child { display: grid; grid-template-columns: 1fr 1fr; gap: 4mm; break-inside: avoid; }
.race-distance { break-inside: avoid; }
.race-distance + .race-distance { margin-top: 0; }
.entry-content .race-distance h3 { font: 700 13pt/1.3 Arial, sans-serif; }
.race-categories dt { display: inline; min-width: 0; height: auto; padding: 0; background: none; color: inherit; font: 700 10pt/1.4 Arial, sans-serif; }
.race-distance h3 span { font-size: 9pt; }
.race-schedule > div { grid-template-columns: 38mm 1fr; gap: 5mm; padding: 3mm 0; break-inside: avoid; }
.race-schedule dt, .race-schedule dd strong { font: 700 11pt/1.35 Arial, sans-serif; }
.race-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3mm; }
.race-facts dd, .race-fees dd { font: 700 11pt/1.3 Arial, sans-serif; }
.race-fees { margin: 3mm 0; }
.race-fees > div { padding: 3mm 0; break-inside: avoid; }
.race-fees dt small { font-size: 9pt; }
.race-map { margin: 5mm 0; break-inside: avoid; }
.race-map__link { width: fit-content; }
.race-map img { width: auto; max-width: 100%; max-height: 110mm; object-fit: contain; }
.race-route__edge, .race-route__line { stroke-dasharray: none !important; stroke-dashoffset: 0 !important; }
.race-route__edge { stroke-width: 4px; }
.race-route__line { stroke: #006650; stroke-width: 2px; }
.race-route__rider { display: none; }
.entry-content figcaption { font-size: 9pt; }
details:not([open]) { display: none; }
#archiv-propozic:not(:has(details[open])) { display: none; }
.results-year { margin-top: 5mm; }
.results-year:not([hidden]) ~ .results-year:not([hidden]) { break-before: page; }
.results-year__heading { margin-bottom: 3mm; }
.results-year__heading h2 { margin: 0; }
.results-year .results-course { margin: 5mm 0 2mm; font: 700 12pt/1.3 Arial, sans-serif; }
.results-course small, .results-note { font: 9pt/1.35 Arial, sans-serif; }
.results-table { display: table; width: 100%; font: 9pt/1.2 Arial, sans-serif; }
.results-table thead { display: table-header-group; position: static; width: auto; height: auto; overflow: visible; clip-path: none; }
.results-table tbody { display: table-row-group; }
.results-table tr { display: table-row; padding: 0; margin: 0; border: 0; break-inside: avoid; }
.results-table th, .results-table td { display: table-cell; padding: .7mm 1.3mm; border-bottom: 1px solid #ccc; background: none !important; }
.results-table thead th { position: static; font: 700 8pt/1.3 Arial, sans-serif; }
.results-table td::before { display: none !important; }
.results-table .rider { min-width: 0; }
.results-table .rider strong { font-size: 9pt; }
.results-table .rider small { margin-top: 0; font-size: 8pt; }
.results-table .result-time { font: 9pt/1.3 Arial, sans-serif; }
.results-table .result-note { font-size: 8pt; }
.results-table tr[data-rank] .rank span { display: inline; min-width: 0; height: auto; padding: 0; border: 0; background: none; color: inherit; font: inherit; width: auto; border-radius: 0; }
