/* ============================================================
   ANTISPAM.CSS — Masquage du champ piège
   Scopum Web
   ============================================================

   POURQUOI CE FICHIER EXISTE SÉPARÉMENT
   -------------------------------------
   Le masquage doit venir du CSS, pas d'un attribut HTML.

   Un robot lit le HTML brut : s'il voit type="hidden", il sait
   souvent qu'il faut l'ignorer. En revanche, un champ texte tout
   à fait normal dans le HTML, rendu invisible uniquement par une
   feuille de style externe, le piège efficacement — parce qu'il
   ne charge pas la feuille de style.

   POURQUOI PAS display: none
   --------------------------
   Deux raisons.
   1. C'est la première chose que cherchent les bots un peu évolués.
   2. Sur d'autres champs, display:none retire l'élément de l'arbre
      d'accessibilité de façon détectable.

   On préfère sortir le champ du flux visuel tout en le laissant
   « présent » dans le document. L'attribut aria-hidden="true" et
   tabindex="-1" posés dans le HTML se chargent, eux, d'écarter le
   champ des lecteurs d'écran et de la navigation au clavier.
   ============================================================ */

.as-piege {
    /* Sorti du flux : n'occupe aucune place et ne décale rien. */
    position: absolute;

    /* Réduit à un point invisible plutôt que supprimé. */
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);

    /* Envoyé hors de l'écran, en sécurité si clip-path échoue. */
    left: -9999px;

    /* Neutralise tout espacement résiduel. */
    margin: -1px;
    padding: 0;
    border: 0;
    white-space: nowrap;

    /* Non cliquable : évite tout clic accidentel. */
    pointer-events: none;
}

/* ------------------------------------------------------------
   Message d'erreur générique (optionnel)

   À afficher quand une soumission est refusée. Reste volontairement
   vague : ne jamais indiquer au robot QUEL contrôle l'a bloqué,
   sinon il s'adapte.
   ------------------------------------------------------------ */

.as-erreur {
    padding: 0.75rem 1rem;
    margin-block-end: 1.5rem;
    border-inline-start: 4px solid #c0392b;
    background-color: #fdf0ef;
    color: #7d241b;
    font-size: 1rem;
    line-height: 1.5;
}
