/* css/mobile.css — ajustes transversales para celular.
   Se incluye en todas las páginas de la app. Cubre los hallazgos de la
   auditoría mobile que se resuelven en un solo lugar (M-01, M-02, M-07).
   Los targets táctiles (M-03), las tablas (M-12) y los pisos de tipografía
   por sección (M-06) se ajustan por página. */

/* ── M-01 · iOS Safari hace zoom al enfocar un <input> de menos de 16px ──
   Con !important y solo en móvil: es un workaround de un bug del navegador
   que tiene que ganar sí o sí sobre el CSS de cada página. El tamaño de
   escritorio no se toca. */
@media (max-width: 640px) {
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]):not([type="submit"]):not([type="button"]),
  select,
  textarea {
    font-size: 16px !important;
  }
}

/* ── M-02 · el botón flotante de soporte tapaba la última fila de cada
   lista. En las páginas que lo tienen (body.dp-has-fab, lo pone
   js/widget-soporte.js) se reserva abajo el alto del FAB + el safe-area,
   así flota sobre ese espacio y no sobre contenido. */
@media (max-width: 640px) {
  body.dp-has-fab {
    padding-bottom: calc(72px + env(safe-area-inset-bottom));
  }
}

/* ── M-07 · pulido táctil ───────────────────────────────────────────────
   Sin el recuadro gris nativo de Android en cada toque. */
* {
  -webkit-tap-highlight-color: transparent;
}

/* Scrollear un modal hasta el fondo ya no arrastra la página de atrás. */
[class*="overlay"],
[class*="modal"],
[class*="-modal"],
.mob-menu,
#_spanel {
  overscroll-behavior: contain;
}
