/* V2.2.89 — Patient portal readability and page normalization.
 * Keep the approved portal layout intact while enforcing a minimum 14px readable text size.
 */
body.lmp-portal-surface .lmp-patient-unified,
body.lmp-portal-surface .lmp-portal-auth-premium {
  font-size: 14px;
}

/* Shared portal navigation / chrome */
body.lmp-portal-surface .lmp-patient-portal-nav a,
body.lmp-portal-surface .lmp-portal-auth-nav .portal-auth-links a,
body.lmp-portal-surface .lmp-portal-auth-nav .portal-auth-site {
  font-size: 14px !important;
  line-height: 1.5 !important;
}
body.lmp-portal-surface .lmp-portal-auth-nav .portal-auth-brand strong,
body.lmp-portal-surface .lmp-portal-auth-nav .portal-auth-info,
body.lmp-portal-surface .lmp-portal-auth-nav .portal-auth-brand small {
  font-size: 14px !important;
  line-height: 1.7 !important;
}

/* Patient dashboard */
body.lmp-portal-surface .lmp-patient-unified .lmp-portal-hero-copy > span,
body.lmp-portal-surface .lmp-patient-unified .lmp-portal-hero p,
body.lmp-portal-surface .lmp-patient-unified .lmp-portal-user small,
body.lmp-portal-surface .lmp-patient-unified .lmp-portal-user strong,
body.lmp-portal-surface .lmp-patient-unified .lmp-portal-summary span,
body.lmp-portal-surface .lmp-patient-unified .lmp-portal-summary strong,
body.lmp-portal-surface .lmp-patient-unified .section-head span,
body.lmp-portal-surface .lmp-patient-unified .section-head p,
body.lmp-portal-surface .lmp-patient-unified .lmp-patient-current span,
body.lmp-portal-surface .lmp-patient-unified .lmp-patient-current small,
body.lmp-portal-surface .lmp-patient-unified .patient-status-badge,
body.lmp-portal-surface .lmp-patient-unified .timeline-step b,
body.lmp-portal-surface .lmp-patient-unified .timeline-step strong,
body.lmp-portal-surface .lmp-patient-unified .timeline-step span,
body.lmp-portal-surface .lmp-patient-unified .lmp-single-pdf span,
body.lmp-portal-surface .lmp-patient-unified .lmp-single-pdf p,
body.lmp-portal-surface .lmp-patient-unified .lmp-single-pdf a,
body.lmp-portal-surface .lmp-patient-unified .lmp-no-results p,
body.lmp-portal-surface .lmp-patient-unified .lmp-no-results h3,
body.lmp-portal-surface .lmp-patient-unified .history-list article,
body.lmp-portal-surface .lmp-patient-unified .history-list article strong,
body.lmp-portal-surface .lmp-patient-unified .history-list article small,
body.lmp-portal-surface .lmp-patient-unified .history-list article span,
body.lmp-portal-surface .lmp-patient-unified .history-list article a,
body.lmp-portal-surface .lmp-patient-unified .patient-history-tests span,
body.lmp-portal-surface .lmp-patient-unified .patient-history-tests small {
  font-size: 14px !important;
  line-height: 1.9 !important;
}

body.lmp-portal-surface .lmp-patient-unified .lmp-portal-hero h1 {
  font-size: clamp(30px, 4vw, 42px) !important;
}
body.lmp-portal-surface .lmp-patient-unified .lmp-patient-current h3 {
  font-size: 20px !important;
}
body.lmp-portal-surface .lmp-patient-unified .section-head h2,
body.lmp-portal-surface .lmp-patient-unified .timeline-head h2 {
  font-size: 24px !important;
}
body.lmp-portal-surface .lmp-patient-unified .lmp-single-pdf h3,
body.lmp-portal-surface .lmp-patient-unified .lmp-no-results h3 {
  font-size: 20px !important;
}
body.lmp-portal-surface .lmp-patient-unified .timeline-step {
  min-height: 98px;
}

/* Appointment / booking panels rendered inside the patient portal. */
body.lmp-portal-surface .lmp-patient-unified #appointments,
body.lmp-portal-surface .lmp-patient-unified .lmp-patient-appointments,
body.lmp-portal-surface .lmp-patient-unified .lmp-patient-booking,
body.lmp-portal-surface .lmp-patient-unified #appointments p,
body.lmp-portal-surface .lmp-patient-unified #appointments span,
body.lmp-portal-surface .lmp-patient-unified #appointments small,
body.lmp-portal-surface .lmp-patient-unified #appointments label,
body.lmp-portal-surface .lmp-patient-unified #appointments a,
body.lmp-portal-surface .lmp-patient-unified #appointments button,
body.lmp-portal-surface .lmp-patient-unified #appointments input,
body.lmp-portal-surface .lmp-patient-unified #appointments select,
body.lmp-portal-surface .lmp-patient-unified #appointments textarea,
body.lmp-portal-surface .lmp-patient-unified #appointments td,
body.lmp-portal-surface .lmp-patient-unified #appointments th {
  font-size: 14px !important;
  line-height: 1.9 !important;
}

/* Patient login: both columns and all supporting copy remain readable. */
body.page-lab-patient-login .lmp-portal-auth-premium,
body.page-lab-patient-login .lmp-portal-auth-premium p,
body.page-lab-patient-login .lmp-portal-auth-premium span,
body.page-lab-patient-login .lmp-portal-auth-premium label,
body.page-lab-patient-login .lmp-portal-auth-premium button,
body.page-lab-patient-login .lmp-portal-auth-premium input,
body.page-lab-patient-login .lmp-portal-auth-premium .portal-login-features b,
body.page-lab-patient-login .lmp-portal-auth-premium .portal-login-features span,
body.page-lab-patient-login .lmp-portal-auth-premium .portal-form-note {
  font-size: 14px !important;
  line-height: 1.9 !important;
}
body.page-lab-patient-login .lmp-portal-auth-premium .lmp-portal-auth-intro h1 {
  font-size: clamp(34px, 4vw, 56px) !important;
  line-height: 1.25 !important;
}
body.page-lab-patient-login .lmp-portal-auth-premium .portal-form-title strong {
  font-size: 22px !important;
}
body.page-lab-patient-login .lmp-portal-auth-premium input {
  min-height: 54px !important;
  font-size: 16px !important;
}
body.page-lab-patient-login .lmp-portal-auth-premium button {
  min-height: 52px !important;
  font-weight: 900 !important;
}

/* Other patient-specific profile/history surfaces that use the shared portal shell. */
body.lmp-portal-surface .lmp-patient-profile,
body.lmp-portal-surface .patient-profile,
body.lmp-portal-surface .patient-history,
body.lmp-portal-surface .patient-result-stage,
body.lmp-portal-surface .patient-test-document,
body.lmp-portal-surface .patient-test-document p,
body.lmp-portal-surface .patient-test-document span,
body.lmp-portal-surface .patient-test-document small,
body.lmp-portal-surface .patient-test-document strong,
body.lmp-portal-surface .patient-test-document a,
body.lmp-portal-surface .profile-exam-dates,
body.lmp-portal-surface .profile-exam-dates span,
body.lmp-portal-surface .profile-exam-dates strong,
body.lmp-portal-surface .profile-test-completion-row,
body.lmp-portal-surface .profile-test-completion-row strong,
body.lmp-portal-surface .profile-test-completion-row span,
body.lmp-portal-surface .referral-patient-fields label,
body.lmp-portal-surface .referral-success-link {
  font-size: 14px !important;
  line-height: 1.9 !important;
}

@media (max-width: 700px) {
  body.lmp-portal-surface .lmp-patient-unified .lmp-portal-hero h1 {
    font-size: 30px !important;
  }
  body.lmp-portal-surface .lmp-patient-unified .section-head h2,
  body.lmp-portal-surface .lmp-patient-unified .timeline-head h2 {
    font-size: 21px !important;
  }
  body.lmp-portal-surface .lmp-patient-unified .timeline-step {
    min-width: 165px;
    min-height: 100px;
  }
  body.page-lab-patient-login .lmp-portal-auth-premium .lmp-portal-auth-intro h1 {
    font-size: 32px !important;
  }
}
