/* app-touch.css — Comportements tactiles globaux pour l'app web (TWA + mobile).
 *
 * Chargé sur toutes les pages user-facing via <link rel="stylesheet" href="/css/app-touch.css">.
 * Remplace les patchs inline éparpillés (overscroll-behavior: none / user-select: none /
 * touch-callout: none) qui dataient de chaque page.
 *
 * Objectifs :
 *  1. Bloquer le pull-to-refresh natif Chrome quand on glisse vers le bas en haut de page
 *     (recharger l'app par accident = très mauvaise UX TWA).
 *  2. Bloquer le menu contextuel natif Android/iOS sur appui long (plus de pop-up
 *     "Rechercher / Traduire / Partager" qui interrompt le jeu).
 *
 * Whitelist : on garde la sélection/édition active là où c'est attendu — champs de
 * formulaire, blocs <code>/<pre>, et tout élément qui opt-in via data-selectable
 * ou user-select:all dans son propre CSS (le code de partage planète par exemple).
 */

/* Anti pull-to-refresh : appliqué uniquement sur body (pas sur html).
   Sur certaines pages, mettre overscroll-behavior sur html OU forcer
   overflow-y:auto sur body créait un second scroll container et cassait
   le défilement vertical. body seul suffit à bloquer le reload natif Chrome,
   sans introduire de constraint d'overflow. */
body {
    overscroll-behavior-y: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
}

input, textarea, [contenteditable], [contenteditable] *,
code, pre, [data-selectable] {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
    -webkit-touch-callout: default;
}
