/* Print layout: one clean race-day plan, no navigation or buttons. */

@page {
  size: A4 portrait;
  margin: 15mm;
}

.no-print,
.skip-link,
#planner-form,
#planner-progress,
.option-actions,
.retailers {
  display: none !important;
}

.print-only { display: block !important; }

body {
  font-size: 10.5pt;
  line-height: 1.35;
  color: #000;
  background: #fff;
}

.wrap {
  max-width: none;
  padding: 0;
}

h1, h2, h3, h4 { color: #000; }

.results-head h2 { font-size: 18pt; margin-bottom: 2mm; }
.results h3 { font-size: 12pt; margin: 6mm 0 2mm; }

/* Summary reads as a compact row of figures. */
.tiles {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 2mm;
  margin-bottom: 4mm;
}

.tile {
  background: none;
  border: 1px solid #999;
  padding: 2mm;
}

.tile dt { font-size: 7pt; }
.tile dd { font-size: 12pt; }

.warnings { max-width: none; }

.warning {
  background: none;
  border: 0;
  border-left: 2pt solid #000;
  padding: 1mm 0 1mm 3mm;
  margin-bottom: 2mm;
  font-size: 9pt;
}

/* The schedule is the part runners actually carry. */
.results table {
  width: 100%;
  border-collapse: collapse;
}

.results th,
.results td {
  border: 1px solid #999;
  padding: 1.5mm 2mm;
  font-size: 10pt;
}

.results thead th {
  background: #eee;
  color: #000;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}

.results thead { display: table-header-group; }
.results tr { break-inside: avoid; }

.option {
  break-inside: avoid;
  border: 1px solid #999;
  padding: 3mm;
  margin-bottom: 3mm;
}

.item + .item { margin-top: 2mm; padding-top: 2mm; }

.options { margin-top: 5mm; }
.options > h3 { break-after: avoid; }

.fineprint { font-size: 8pt; }

.site-footer { display: none; }

/* The cadence strip is the one graphic worth having on paper: it is a pace
   band. Force its colours through, and make sure the entry animation cannot
   leave the beats invisible on a medium that never runs it. */
.cadence-beat,
.cadence-line,
.cadence-cap {
  animation: none !important;
  opacity: 1 !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}

.cadence-beat { transform: none !important; }
.cadence { break-inside: avoid; margin-bottom: 4mm; }
.cadence-track { height: 8mm; }
.cadence-caption { font-size: 9pt; margin-top: 1mm; }

/* The progress beats belong to the form, which does not print. */
.progress { display: none !important; }

/* Swapping is an on-screen action, and the icons are decoration on paper. */
.item-swap,
.item-image { display: none !important; }
