/* [ABC-4-226] Indicateur d'envoi commun (scripts/composants/envoi-en-cours.js). La roue reprend spinner-border-sm de
   Bootstrap 5.3 ; ses mesures sont redites ici pour les pages d'administration qui ne chargent pas la feuille de Bootstrap.
   Le bouton garde ses couleurs (contraste de la charte) : l'opacité réduite des boutons désactivés ne s'applique pas
   pendant l'envoi. prefers-reduced-motion : pas de roue, le texte seul. */
.envoi-en-cours__bouton,
.envoi-en-cours__bouton:disabled,
.envoi-en-cours__bouton[aria-disabled="true"] { opacity: 1 !important; cursor: progress !important; }
.envoi-en-cours__roue {
  display: inline-block;
  width: 1rem;
  height: 1rem;
  margin-right: .5em;
  vertical-align: -.125em;
  border: .2em solid currentcolor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: envoi-en-cours-tour .75s linear infinite;
}
@keyframes envoi-en-cours-tour { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .envoi-en-cours__roue { display: none; }
}
.envoi-en-cours__annonce {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
/* [ABC-4-236] Zone d'attente d'une réponse (data-envoi-attente du chatbot, carte d'attente de l'assistant) : visible tout de suite,
   texte de la charte, roue commune (masquée sous prefers-reduced-motion, le texte reste). */
.chatbot-attente,
.assistant__attente { display: flex; align-items: center; gap: .5em; margin: .75rem 0 0; font-weight: 600; color: #183a8f; }
.chatbot-attente[hidden] { display: none; }
.chatbot-attente .envoi-en-cours__roue,
.assistant__attente .envoi-en-cours__roue { margin-right: 0; }
