/* SailRx Print Stylesheet — loaded only for @media print */

@page {
  size: letter portrait;
  margin: 0.5in 0.5in 0.5in 0.5in;
}

* {
  -webkit-print-color-adjust: exact !important;
  print-color-adjust: exact !important;
}

body {
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 12pt;
  color: #000 !important;
  background: white !important;
  margin: 0;
  padding: 0;
}

/* ── Hide app chrome ─────────────────────────────────────────────────────── */
.no-print,
#lockScreen,
#hipaaModal,
#setupWizard,
#historyPanel,
#sessionBar,
#appNav {
  display: none !important;
}

/* ── Practice header ─────────────────────────────────────────────────────── */
#printHeader {
  display: flex !important;
  align-items: flex-start;
  justify-content: space-between;
  border-bottom: 2pt solid #000;
  padding-bottom: 6pt;
  margin-bottom: 10pt;
}

#printLogoImg {
  max-height: 60pt;
  max-width: 120pt;
  object-fit: contain;
}

#printDoctorBlock {
  text-align: right;
  font-size: 9pt;
  line-height: 1.4;
}

#printDoctorName {
  font-size: 13pt;
  font-weight: bold;
  display: block;
}

/* ── Patient info ────────────────────────────────────────────────────────── */
#printPatientInfo {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 4pt 12pt;
  margin-bottom: 12pt;
  font-size: 10pt;
  border: 1pt solid #ccc;
  padding: 6pt 8pt;
  border-radius: 3pt;
}

.print-patient-field label {
  font-size: 7pt;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #555;
  display: block;
}

.print-patient-field span {
  font-weight: bold;
  font-size: 11pt;
  border-bottom: 0.5pt solid #999;
  min-width: 80pt;
  display: inline-block;
}

/* ── Section titles with Rx symbol ──────────────────────────────────────── */
.print-section-title {
  font-size: 11pt;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin: 10pt 0 4pt 0;
  padding-bottom: 2pt;
  border-bottom: 1pt solid #000;
}

.print-section-title::before {
  content: "℞ ";
  font-size: 14pt;
  font-style: italic;
}

/* ── Prescription tables ─────────────────────────────────────────────────── */
.print-rx-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 8pt;
  font-size: 11pt;
}

.print-rx-table thead tr {
  background-color: #f0f0f0 !important;
}

.print-rx-table th {
  font-size: 7.5pt;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  border-bottom: 2pt solid #000;
  border-right: 0.5pt solid #ccc;
  padding: 3pt 5pt;
  text-align: center;
}

.print-rx-table th:first-child {
  text-align: left;
  width: 30pt;
}

.print-rx-table td {
  border: 0.5pt solid #bbb;
  padding: 5pt 6pt;
  text-align: center;
  font-weight: bold;
  min-width: 36pt;
  height: 18pt;
}

.print-rx-table td.eye-label {
  font-weight: bold;
  text-align: left;
  border-left: none;
  border-top: none;
  border-bottom: 0.5pt solid #bbb;
  font-size: 9pt;
  color: #333;
  background-color: #f9f9f9 !important;
}

/* ── Contact lens brand ──────────────────────────────────────────────────── */
.print-brand-line {
  font-size: 9pt;
  margin: 3pt 0 8pt 0;
  color: #333;
}

/* ── Signature block ─────────────────────────────────────────────────────── */
.print-signature-block {
  margin-top: 16pt;
  display: flex !important;
  align-items: flex-end;
  gap: 24pt;
  page-break-inside: avoid;
}

#printSignature {
  max-height: 52pt;
  max-width: 160pt;
  object-fit: contain;
  display: block !important;
}

.print-signature-line-block {
  flex: 1;
}

.print-sig-line {
  border-top: 1pt solid #000;
  margin-top: 44pt;
}

.print-sig-label {
  font-size: 7.5pt;
  color: #444;
  margin-top: 2pt;
}

/* ── Disclaimers ─────────────────────────────────────────────────────────── */
.federal-disclaimer {
  font-size: 8pt;
  font-style: italic;
  line-height: 1.4;
  margin-top: 8pt;
  color: #444;
  border-top: 0.5pt solid #ccc;
  padding-top: 4pt;
}

.print-footer {
  display: block !important;
  font-size: 7pt;
  color: #888;
  text-align: center;
  margin-top: 10pt;
  border-top: 0.5pt solid #ddd;
  padding-top: 3pt;
}

/* ── Show print-only elements ────────────────────────────────────────────── */
.print-only {
  display: block !important;
}

.print-table-wrap {
  display: block !important;
}

/* ── Page breaks ─────────────────────────────────────────────────────────── */
.rx-section {
  page-break-inside: avoid;
}

#printPatientInfo {
  page-break-after: avoid;
}
