@page training-report {
  size: A4 landscape;
  margin: 1cm;
}

.report-print {
  background: var(--color-canvas);
  color: var(--color-ink);
  margin: 0;
  padding: var(--gap-lg);
}

.report-print__toolbar {
  align-items: center;
  background: #fff;
  border: 1px solid var(--color-border);
  display: flex;
  justify-content: space-between;
  margin: 0 auto var(--gap-md);
  max-inline-size: 90rem;
  padding: var(--gap-sm) var(--gap-md);
}

.report-print__toolbar-meta {
  color: var(--color-ink-light);
  margin-inline-start: var(--gap-sm);
}

.report-print__warning {
  background: rgb(var(--palette-amber-50));
  border: 1px solid rgb(var(--palette-amber-300));
  margin: 0 auto var(--gap-md);
  max-inline-size: 90rem;
  padding: var(--gap-sm) var(--gap-md);
}

.report-print__document {
  background: #fff;
  margin: 0 auto;
  max-inline-size: 90rem;
  page: training-report;
  padding: var(--gap-xl);
}

.report-print__header {
  background: none;
  border-block-end: 1px solid var(--color-border);
  margin-block-end: var(--gap-lg);
  padding: 0 0 var(--gap-md);
}

.report-print__title {
  font-size: var(--text-x-large);
  margin: 0 0 var(--gap-md);
}

.report-print__metadata,
.report-print__filter-list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap-sm) var(--gap-lg);
  margin: 0;
}

.report-print__metadata-item,
.report-print__filter {
  display: flex;
  gap: var(--gap-xs);
}

.report-print__metadata dt,
.report-print__filter dt {
  color: var(--color-ink-light);
  font-weight: 600;
}

.report-print__metadata dd,
.report-print__filter dd {
  margin: 0;
}

.report-print__filters {
  margin-block-start: var(--gap-md);
}

.report-print__filters-title {
  font-size: var(--text-normal);
  margin: 0 0 var(--gap-xs);
}

.report-print .page-box,
.report-print .page-box__body {
  border: 0;
  box-shadow: none;
  margin: 0;
  padding: 0;
}

.report-print .report-training__header,
.report-print .report-training-filter {
  display: none;
}

@media print {
  .report-print {
    background: #fff;
    font-size: 9pt;
    padding: 0;
  }

  .report-print__document {
    max-inline-size: none;
    padding: 0;
  }

  .report-print__header {
    break-after: avoid;
  }

  .report-print table {
    inline-size: 100%;
    padding: 0;
  }

  .report-print thead {
    display: table-header-group;
  }

  .report-print tr,
  .report-print .report-training-summary__item,
  .report-print .training-plan-item-notes__block {
    break-inside: avoid;
  }

  .report-print .simple-table-scroll {
    overflow: visible;
  }

  .report-print .report-training-table-shell {
    break-before: auto;
    overflow: visible;
  }

  .report-print a {
    color: inherit;
    text-decoration: none;
  }
}
