@page {
  margin: 0;
}
body {
  margin: 10px 30px;
}

@media print {
  body {
    margin-right: 10mm;
  }
  div.test {
    page-break-after: always;
    display: inline-block;
  }
}
#header {
  display: grid;
  grid-template-rows: 10mm 10mm 10mm 10mm 10mm;
  width: 220mm;
  height: 4.5cm;
  margin: 2mm 2mm;
  margin-top: 9mm;
  font-size: 16pt;
  font-family: "Times New Roman", Times, serif;
  text-align: left;
  border: 1pt solid black;
  margin-right: 5mm;
}

.cname {
  font-size: 22pt;
  font-weight: bold;
  text-align: center;
  margin-top: 2mm;
}

.line1 {
  font-size: 16pt;
  padding-left: 1mm;
  font-weight: bold;
  margin-top: 4mm;
  text-align: center;
}

.line2 {
  font-size: 16pt;
  padding-left: 1mm;
  font-weight: bold;
  text-align: center;
}

.ph {
  padding-left: 1mm;
  font-weight: bold;
  font-size: 16pt;
  line-height: 2mm;
  text-align: center;
}

.vat {
  padding-left: 1mm;
  font-weight: bold;
  font-size: 16pt;
  line-height: 2mm;
  text-align: center;
}

#sign {
  text-align: right;
  padding-top: 10mm;
}

#content {
  display: grid;
  width: 220mm;
  height: auto;
  margin: 2mm 2mm;
  grid-template-columns: 15mm 30mm 50mm 25mm 60mm 1fr;
  grid-auto-rows: minmax(5mm, max-content);
  font-family: "Times New Roman", Times, serif;
  border: 1pt solid black;
  border-bottom: none;
  text-align: center;
  word-break: break-all;
  font-size: 16pt;
  /* white-space: nowrap;  hides the content beyond border or div (for border bottom tested) , but together with word-break not works */
  /*overflow: hidden; */
}

.head {
  font-size: 16pt;
  border-bottom: 1pt solid black;
  border-right: 1pt solid black;
}

.c {
  border-bottom: 1pt solid black;
  border-right: 1pt solid black;
  padding-top: 2mm;
}

.cprod {
  padding-left: 2mm;
  text-align: left;
}

.c7 {
  border-right: none;
}

#footeramt {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1pt solid black;
  width: 220mm;
  height: 25mm;
  margin: 2mm 2mm;
  /* padding-top: 10px;  */
  border-radius: 2mm 2mm 2mm 2mm;
  font-family: "Times New Roman", Times, serif;
  padding-top: 2mm;
}

.seal {
  font-size: 16pt;
  font-weight: bold;
  text-align: right;
  padding-right: 10mm;
}

.sign {
  font-size: 12pt;
  padding-top: 6mm;
  padding-right: 13mm;
}

.remarks {
  font-size: 14pt;
  text-align: left;
}

.due {
  text-align: right;
  font-size: 14pt;
  font-weight: bold;
}

#reportname {
  border: 1pt solid black;
  text-align: center;
  width: 230mm;
  height: 9mm;
  /* padding-top: 10px;  */
  font-size: 16pt;
  font-weight: bold;
  border-radius: 2mm 2mm 2mm 2mm;
  font-family: "Times New Roman", Times, serif;
}

#section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 25% 75%;
  height: 2.5cm;
  width: 220mm;
  border: 1pt solid black;
  margin: 2mm 2mm;
  font-size: 16pt;
  font-family: "Times New Roman", Times, serif;
}

.lt {
  padding-left: 2mm;
  text-align: left;
}

.rt {
  text-align: right;
  padding-right: 2mm;
}

.date {
  padding-top: 5mm;
}

p {
  margin: 3pt;
  line-height: 5mm;
}
