/* « Suivre ce texte » sur la page d'un texte, et pages de confirmation d'abonnement. */
.suivi-texte {
  margin: 2.5rem 0 1.5rem;
  padding: 1.5rem;
  border: 1px solid var(--border-color, #dfe6e2);
  border-radius: 12px;
  background: var(--card-bg, #ffffff);
}
.suivi-texte__titre { margin: 0 0 0.25rem; font-size: 1.4rem; }
.suivi-texte__intro { margin: 0 0 1rem; color: var(--text-muted, #4b5a52); }
.suivi-texte__choix {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: 1.25rem;
}
.suivi-texte__bloc { display: flex; flex-direction: column; align-items: flex-start; gap: 0.6rem; }
.suivi-texte__bloc p { margin: 0; }
.suivi-texte__sous-titre { margin: 0; font-size: 1.05rem; }
.suivi-texte__form { width: 100%; display: flex; flex-direction: column; gap: 0.5rem; }
.suivi-texte__form label { font-weight: 600; }
.suivi-texte__ligne { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.suivi-texte__ligne input[type="email"] {
  flex: 1 1 220px;
  min-height: 44px;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--border-color, #b8c4bd);
  border-radius: 8px;
  font-size: 1rem;
}
.suivi-texte__ligne .btn-component { min-height: 44px; }
.suivi-texte__note { font-size: 0.875rem; color: var(--text-muted, #4b5a52); }
.suivi-texte__piege { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.suivi-texte__messages { margin-bottom: 1rem; }
.suivi-texte__message { margin: 0 0 0.5rem; padding: 0.75rem 1rem; border-radius: 8px; background: #e8f5ed; color: #124d30; }
.suivi-texte__message--error { background: #fdecea; color: #8a1c14; }

.abonnement-page { max-width: 640px; margin: 3rem auto; padding: 0 16px; }
.abonnement-page__carte {
  padding: 2rem 1.5rem;
  border: 1px solid var(--border-color, #dfe6e2);
  border-radius: 12px;
  background: var(--card-bg, #ffffff);
}
.abonnement-page h1 { font-size: 1.6rem; margin: 0 0 1rem; }
.abonnement-page p { margin: 0 0 1rem; }
.abonnement-page form { margin: 1.5rem 0 0; }
.abonnement-page .btn-component { min-height: 44px; }
