* {
  line-height: 125%;
}
.page {
  position: relative;
  font-size: 12px;
  font-family: Arial, Helvetica, sans-serif;
  color: #000;
}
.page .footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  font-size: 10px;
}
hr {
  border-color: #000;
}
@media print {
  @page {
    size: A4;
    margin: 15mm;
    zoom: 100%;
    padding: 0;
  }
  .page {
    position: relative;
    page-break-after: always;
  }
  .page[data-size="A4"] {
    height: calc(29.7cm - 15mm - 15mm);
  }
  .page[data-="A4"][data-orientation="portrait"] {
    height: calc(21cm - 15mm - 15mm);
  }
  h1 {
    margin-top: 0;
  }
  a:link,
  a:visited,
  a:hover,
  a:active {
    color: #000;
  }
  .page-break {
    page-break-before: always;
  }
  button[name="print"] {
    display: none;
  }
}
@media screen {
  body {
    background: #e6e9ed;
  }
  .page {
    margin: 5mm auto;
    padding: 15mm;
    background: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  }
  .page[data-size="A4"] {
    width: 21cm;
    height: 29.7cm;
  }
  .page[data-="A4"][data-orientation="portrait"] {
    width: 29.7cm;
    height: 21cm;
  }
  .page .footer {
    left: 15mm;
    right: 15mm;
    bottom: 15mm;
  }
  .page-break {
    border-bottom: 1px #ccc dashed;
    margin: 15mm -15mm;
    line-height: 0;
  }
  button[name="print"] {
    display: none;
  }
  html:hover button[name="print"] {
    position: fixed;
    top: 0cm;
    right: 1cm;
    padding: 0.5em;
    font-size: 8mm;
    display: block;
    margin: 5mm auto;
    z-index: 999999;
    border-radius: 0.25em;
  }
}
