/* ==========================================================================
   Le P'tit Club — Champs de formulaire sur mobile

   Safari iOS zoome automatiquement la page quand on donne le focus à un champ
   dont la police fait moins de 16 px, et ne dézoome pas en sortant : le
   visiteur se retrouve avec une mise en page décalée en plein tunnel
   d'inscription. Le thème posant `font-size: inherit` sur les contrôles, ils
   héritaient des 15 px de base et déclenchaient tous le zoom.

   On ne touche PAS au meta viewport : bloquer le zoom avec `maximum-scale=1`
   ou `user-scalable=no` réglerait le symptôme en supprimant le zoom manuel,
   ce qui est un recul d'accessibilité pour les personnes malvoyantes.
   ========================================================================== */

@media (pointer: coarse) {

    /* `max(16px, 1em)` = plancher, pas taille fixe : `1em` dans une déclaration
       font-size se résout sur la police du PARENT, c'est-à-dire exactement ce
       dont ces contrôles héritent aujourd'hui. Les champs à 15 px remontent à
       16 px, ceux déjà au-dessus (selects de variation à 16,5 px) gardent leur
       taille — un `font-size: 16px` sec les aurait rapetissés.

       Le préfixe `body` n'est pas décoratif : le reset du thème
       `input, button, select, textarea { font-size: inherit }` a la même
       spécificité que `select`/`textarea` seuls, et l'emportait par ordre de
       chargement dans le bundle Autoptimize. */
    body input[type="text"],
    body input[type="search"],
    body input[type="tel"],
    body input[type="url"],
    body input[type="email"],
    body input[type="password"],
    body input[type="number"],
    body input[type="date"],
    body input[type="datetime-local"],
    body input[type="month"],
    body input[type="time"],
    body input[type="week"],
    body select,
    body textarea {
        font-size: max(16px, 1em);
    }

    /* select2 (TH EPO Pro) : le champ réellement focalisé est une input de
       recherche injectée en JS, absente du HTML source. Sans elle, un tap sur
       un multiselect zoome malgré les règles ci-dessus. */
    body .select2-container .select2-search__field,
    body .select2-container .select2-selection__rendered,
    body .select2-container .select2-results__option {
        font-size: max(16px, 1em);
    }
}
