/* Touch / small-screen fixes (shared by all pages). 44px minimum tap targets (Apple HIG), 16px form text so iOS doesn't zoom on focus. */
@media (pointer: coarse), (max-width: 600px) {
  button, select, summary, [role="tab"], .b, label.b { min-height: 44px !important; }
  button, [role="tab"] { min-width: 44px !important; }
  input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), select { font-size: 16px !important; min-height: 44px; }
  textarea { font-size: 16px !important; }
  input[type="checkbox"], input[type="radio"] { width: 24px; height: 24px; margin: 10px; }
  input[type="file"] { font-size: 16px; min-height: 44px; }
  summary { display: flex; align-items: center; cursor: pointer; }
  header.top a, nav a, footer a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 6px; }
  .tabs { flex-wrap: nowrap !important; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .tabs [role="tab"] { flex: 0 0 auto; }
  html { -webkit-text-size-adjust: 100%; }
  * { -webkit-tap-highlight-color: rgba(79, 87, 214, .15); }
  .ink canvas { touch-action: none; -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
  main, body { padding-bottom: env(safe-area-inset-bottom); }
}
