/*
 * Accessibility: font sizes & touch targets for users 50+
 * Issue #64 — scoped to mobile (max-width: 768px) except where noted.
 * font-size: 16px on inputs is intentionally global (prevents iOS Safari auto-zoom).
 */

/* ── Inputs: global (iOS zoom prevention requires no media query) ─────── */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="date"],
select,
textarea {
  font-size: 16px;
}

/* ── Mobile overrides ─────────────────────────────────────────────────── */
@media (max-width: 768px) {

  /* Body / global text */
  body,
  p,
  li,
  td,
  th,
  label {
    font-size: 16px;
  }

  /* Caption / helper / muted text — minimum 16px (issue #72) */
  small,
  .text-muted,
  .caption,
  .helper-text,
  .label-secondary,
  .bottom-nav__label {
    font-size: 16px !important;
  }

  /* Buttons and button-like elements */
  button,
  .btn,
  [role="button"],
  input[type="button"],
  input[type="submit"],
  input[type="reset"] {
    min-height: 52px;
    font-size: 16px;
  }

  /* Health tab buttons */
  .health-tabs .tab-btn,
  .tab-btn,
  .tab-btn-sm {
    min-height: 48px;
    padding: 12px 16px;
    font-size: 16px;
  }

  /* Sidebar / nav links */
  .sidebar-link,
  .sidebar a,
  .sidebar .nav-link {
    min-height: 48px;
    padding: 14px 16px;
    font-size: 16px;
  }

  /* Input fields */
  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="tel"],
  input[type="number"],
  input[type="search"],
  input[type="date"],
  select {
    min-height: 52px;
    padding: 14px 12px;
  }

  textarea {
    min-height: 52px;
    padding: 14px 12px;
    font-size: 16px;
  }

}
