/* A4 landscape, two matching copies. These styles also apply to a cloned preview. */
.rx-print-root {
  --rx-page-width: 281mm;
  --rx-page-height: 194mm;
  width: var(--rx-page-width);
  color: #000;
  font: 2.75mm/1.25 Arial, Helvetica, sans-serif;
  font-weight: 400;
  text-align: left;
  white-space: normal;
  color-scheme: light;
}
#rx-print-root {
  position: absolute;
  left: -100000px;
  top: 0;
  visibility: hidden;
  pointer-events: none;
}
.rx-print-root *, .rx-print-root *::before, .rx-print-root *::after {
  box-sizing: border-box;
  color: #000;
  text-shadow: none;
}
.rx-print-root .rx-print-page {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 7mm;
  width: var(--rx-page-width);
  height: var(--rx-page-height);
  margin: 0;
  padding: 0;
  background: #fff;
  break-after: page;
  page-break-after: always;
}
.rx-print-root .rx-print-page:last-child { break-after: auto; page-break-after: auto; }
.rx-print-root .rx-print-page::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  border-left: .25mm dashed #555;
}
.rx-print-root .rx-print-copy {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: var(--rx-page-height);
  min-width: 0;
  padding: 0 .4mm;
  background: #fff;
}
.rx-print-root .rx-print-top { flex: 0 0 auto; min-width: 0; }
.rx-print-root .rx-print-title {
  margin: 0 0 1.2mm;
  padding: 0;
  font-size: 3.65mm;
  line-height: 1.15;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0;
}
.rx-print-root .rx-print-section-title {
  padding: .35mm 1mm;
  border: .2mm solid #444;
  border-bottom: 0;
  font-size: 2.6mm;
  line-height: 1.2;
  font-weight: 700;
  text-align: center;
}
.rx-print-root .rx-print-issuer {
  display: flex;
  align-items: stretch;
  border: .2mm solid #444;
  min-height: 9mm;
}
.rx-print-root .rx-print-logo-box {
  width: 17mm;
  min-width: 17mm;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1mm;
  border-right: .2mm solid #444;
}
.rx-print-root .rx-print-logo {
  display: block;
  width: 15mm;
  height: 15mm;
  object-fit: contain;
}
.rx-print-root .rx-print-issuer-lines { min-width: 0; flex: 1; }
.rx-print-root .rx-print-issuer-line {
  padding: .65mm 1mm;
  border-bottom: .2mm solid #777;
  min-height: 3.8mm;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.rx-print-root .rx-print-issuer-line:last-child { border-bottom: 0; }
.rx-print-root .rx-print-issuer-name { font-weight: 700; }
.rx-print-root .rx-print-technical {
  margin: .8mm 0;
  font-size: 2.3mm;
  line-height: 1.2;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.rx-print-root .rx-print-via {
  display: flex;
  justify-content: flex-end;
  margin: .6mm 0;
  font-weight: 700;
  font-size: 2.6mm;
}
.rx-print-root .rx-print-via span { border: .2mm solid #444; padding: .3mm 1mm; }
.rx-print-root .rx-print-patient {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  margin: 0 0 2mm;
  font: inherit;
}
.rx-print-root .rx-print-patient td {
  border: .2mm solid #555;
  padding: .45mm 1mm;
  vertical-align: top;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.rx-print-root .rx-print-patient strong { margin-right: 1.5mm; font-weight: 700; }
.rx-print-root .rx-print-body { flex: 1 1 auto; min-height: 0; min-width: 0; padding: 0; }
.rx-print-root .rx-print-medication,
.rx-print-root .rx-print-notes,
.rx-print-root .rx-print-text-part { margin: 0 0 2.8mm; break-inside: avoid; page-break-inside: avoid; }
.rx-print-root .rx-print-medication-heading {
  display: flex;
  align-items: baseline;
  gap: 2mm;
  padding: 0 0 .65mm;
  border-bottom: .2mm dashed #888;
  font-size: 3mm;
  line-height: 1.25;
}
.rx-print-root .rx-print-medication-name {
  flex: 1 1 auto;
  min-width: 0;
  font-weight: 700;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.rx-print-root .rx-print-medication-quantity {
  flex: 0 1 36%;
  min-width: 0;
  font-size: 2.7mm;
  font-weight: 400;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.rx-print-root .rx-print-medication-quantity strong { font-weight: 700; }
.rx-print-root .rx-print-instructions,
.rx-print-root .rx-print-notes-text,
.rx-print-root .rx-print-text-part {
  margin-top: .7mm;
  font-size: 3mm;
  line-height: 1.32;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.rx-print-root .rx-print-continuation { font-size: 2.3mm; font-weight: 400; }
.rx-print-root .rx-print-notes-label { margin-bottom: .4mm; font-size: 2.75mm; font-weight: 700; }
.rx-print-root .rx-print-bottom { flex: 0 0 auto; padding-top: 1.5mm; min-width: 0; }
.rx-print-root .rx-print-issued { margin: 0 0 2mm; text-align: right; font-size: 2.7mm; line-height: 1.35; }
.rx-print-root .rx-print-issued-label { display: block; font-size: 2.3mm; }
.rx-print-root .rx-print-signature { padding-top: 8mm; text-align: center; margin: 0 0 2.4mm; font-size: 2.6mm; }
.rx-print-root .rx-print-signature-line { margin: 0 auto 1mm; width: 73%; border-top: .2mm solid #333; }
.rx-print-root .rx-print-prescriber { font-weight: 700; overflow-wrap: anywhere; white-space: pre-wrap; }
.rx-print-root .rx-print-council { margin-top: .6mm; overflow-wrap: anywhere; white-space: pre-wrap; }
.rx-print-root .rx-print-special-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 3mm; margin: 0 0 1mm; }
.rx-print-root .rx-print-special-box { min-width: 0; height: 29mm; border: .2mm solid #555; font-size: 2.45mm; }
.rx-print-root .rx-print-special-heading { padding: .55mm .6mm; border-bottom: .2mm solid #555; font-weight: 700; text-align: center; font-size: 2.5mm; }
.rx-print-root .rx-print-buyer-row { margin: 0 .8mm; min-height: 4.05mm; padding: .35mm 0 0; border-bottom: .2mm dotted #aaa; white-space: pre-wrap; }
.rx-print-root .rx-print-buyer-row:last-child { border-bottom: 0; }
.rx-print-root .rx-print-supplier-signature { padding-top: 19mm; text-align: center; font-size: 2.2mm; }
.rx-print-root .rx-print-retention { margin: .7mm 0 1mm; text-align: center; font-size: 2.3mm; line-height: 1.2; }
.rx-print-root .rx-print-institution-footer { border-top: .2mm solid #999; padding-top: 1mm; font-size: 2.45mm; line-height: 1.25; white-space: pre-wrap; overflow-wrap: anywhere; }
.rx-print-root .rx-print-page-number { margin-top: .8mm; text-align: right; font-size: 2.3mm; line-height: 1; }
.rx-print-root.rx-print-compact .rx-print-issuer-line { font-size: 2.3mm; min-height: 3mm; padding: .35mm .8mm; }
.rx-print-root.rx-print-compact .rx-print-institution-footer { font-size: 2.2mm; }
.rx-print-root .rx-print-error { border: .2mm solid #555; padding: 5mm; font-size: 3.5mm; line-height: 1.4; }
.rx-print-root .rx-print-error p { margin: 2mm 0 0; }
@page { size: A4 landscape; margin: 8mm; }
@media print {
  html, body { margin: 0 !important; padding: 0 !important; background: #fff !important; width: auto !important; height: auto !important; min-height: 0 !important; overflow: visible !important; }
  body > :not(#rx-print-root) { display: none !important; }
  #rx-print-root { display: block !important; position: static !important; left: auto !important; top: auto !important; visibility: visible !important; pointer-events: auto !important; margin: 0 !important; padding: 0 !important; width: 281mm !important; background: #fff !important; }
  #rx-print-root *, #rx-print-root *::before, #rx-print-root *::after { visibility: visible !important; }
  #rx-print-root .rx-print-page { margin: 0 !important; box-shadow: none !important; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
}
