/* Application Prof V0.15.4.2.1 — retour visuel transversal des actions IA */
.ai-action-processing,
.ai-action-processing:disabled{
  position:relative;
  opacity:.78;   /* V0.18.12.207 : pas de pointeur « occupé » (cursor:wait) : il restait affiché sur la page suivante */
}

button.ai-action-processing,
a.ai-action-processing{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:.5rem;
}

button.ai-action-processing::before,
a.ai-action-processing::before,
.ai-global-progress-spinner{
  content:"";
  width:.95rem;
  height:.95rem;
  flex:0 0 .95rem;
  box-sizing:border-box;
  border:2px solid currentColor;
  border-right-color:transparent;
  border-radius:50%;
  animation:application-prof-ai-spin .72s linear infinite;
}

form[aria-busy="true"] .ai-action-processing{
  pointer-events:none;
}

.ai-global-progress{
  position:fixed;
  left:50%;
  bottom:18px;
  z-index:100000;
  display:flex;
  align-items:center;
  gap:.65rem;
  max-width:min(520px,calc(100vw - 24px));
  padding:.72rem 1rem;
  border:1px solid var(--line,#cbd5e1);
  border-radius:999px;
  background:var(--surface,#fff);
  color:var(--text,#17202a);
  box-shadow:0 12px 36px rgba(15,23,42,.2);
  font-size:.86rem;
  font-weight:800;
  line-height:1.2;
  transform:translate(-50%,calc(100% + 40px));
  opacity:0;
  pointer-events:none;
  transition:transform .18s ease,opacity .18s ease;
}

.ai-global-progress.is-visible{
  transform:translate(-50%,0);
  opacity:1;
}

.ai-global-progress-spinner{
  color:var(--primary,#234b72);
}

html[data-theme="night"] .ai-global-progress{
  box-shadow:0 14px 38px rgba(0,0,0,.38);
}

@keyframes application-prof-ai-spin{
  to{transform:rotate(360deg)}
}

@media(max-width:700px){
  .ai-global-progress{
    bottom:10px;
    width:max-content;
    max-width:calc(100vw - 20px);
    padding:.65rem .85rem;
    font-size:.8rem;
  }
}

@media(prefers-reduced-motion:reduce){
  button.ai-action-processing::before,
  a.ai-action-processing::before,
  .ai-global-progress-spinner{
    animation-duration:1.8s;
  }
  .ai-global-progress{
    transition:none;
  }
}
