/*
 * iOS (Safari et tous les navigateurs WebKit de l'iPhone) zoome
 * automatiquement sur un champ dont la police calculée est < 16 px.
 *
 * Sur iPhone uniquement, on force 16 px sur les champs éditables :
 * - @supports (-webkit-touch-callout) ne vise qu'iOS ;
 * - la media query exclut iPad, desktop et tablettes (petit écran
 *   tactile en portrait, ou faible hauteur en paysage).
 *
 * Le zoom manuel reste intact (aucun maximum-scale ni user-scalable).
 * !important l'emporte sur les tailles des feuilles de style des
 * modules. Les champs volontairement plus grands (montant de virement,
 * codes, montant du simulateur Earn) sont exclus et gardent leur taille.
 *
 * Fichier statique (public/) : servi tel quel, sans transpilation, pour
 * que la syntaxe max-width reste comprise par les anciennes versions
 * d'iOS. Lié depuis index.html.
 */
/*
 * Zoom au passage d'un champ à l'autre, clavier ouvert : quand le
 * clavier est affiché, le premier toucher sur le champ suivant est
 * souvent absorbé (barre de suggestions, perte de focus) et le second
 * est interprété comme un double-tap, donc comme un zoom.
 * touch-action: manipulation supprime uniquement le zoom par double-tap :
 * le pincement (zoom manuel d'accessibilité) et le défilement restent
 * possibles. Sans effet sur desktop (souris).
 *
 * text-size-adjust: 100 % empêche iOS d'agrandir lui-même le texte.
 */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  touch-action: manipulation;
}

/*
 * Le test @supports (-webkit-touch-callout) n'était pas reconnu par les
 * versions récentes de Safari : la règle ne s'appliquait jamais. La seule
 * condition d'écran tactile de petite taille suffit (et vaut aussi pour
 * Android, sans inconvénient). Complément : maximum-scale=1 posé sur iOS
 * par index.html.
 */
@media (pointer: coarse) and (max-width: 500px),
  (pointer: coarse) and (max-height: 500px) {
  input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']):not([type='color']):not([type='button']):not([type='submit']):not([type='reset']):not([type='image']):not([type='hidden']):not(.transfer-amount-field input):not(.verify-email-code-field input):not(.transfer-code-field input):not(.earn-amount-input input),
  textarea,
  select,
  [contenteditable='true'] {
    font-size: 16px !important;
  }
}
