.gr-procesando[hidden] { display: none; }
.gr-procesando {
  position: fixed;
  top: calc(var(--topbar-h, 52px) + .7rem);
  left: 50%;
  transform: translateX(-50%);
  z-index: 1100;
  display: flex;
  align-items: center;
  gap: .7rem;
  max-width: calc(100vw - 2rem);
  padding: .8rem 1.2rem;
  border: 2px solid var(--accent);
  border-radius: var(--radius, 10px);
  background: var(--bg-elev);
  color: var(--fg);
  box-shadow: var(--shadow);
  font-weight: 600;
  pointer-events: none;
}
.gr-procesando-giro {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  border: 3px solid var(--border);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: gr-procesando-girar .8s linear infinite;
}
@keyframes gr-procesando-girar { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .gr-procesando-giro { animation: none; }
}
