/* Cargador transversal del portal. Es autocontenido para que también pueda
   usarse en páginas que no cargan el Design System completo. */
.pr-loading-global {
  position: fixed;
  inset: 0;
  z-index: 20000;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(255, 255, 255, .82);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .18s ease, visibility 0s linear .18s;
}

.pr-loading-global.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition-delay: 0s;
}

.pr-loading-global__logo {
  display: block;
  width: clamp(92px, 16vw, 132px);
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 10px 20px rgba(80, 50, 20, .16));
  transform-origin: center;
  animation: pr-loading-respirar 1.35s ease-in-out infinite;
  will-change: transform, opacity;
}

/* Los logos de entidades pueden ser horizontales, verticales o traer aire
   transparente. Se les reserva una caja algo mayor sin deformarlos. */
.pr-loading-global__logo--entidad {
  width: clamp(124px, 22vw, 180px);
  max-height: clamp(124px, 22vw, 180px);
}

body.pr-loading-activo {
  overflow: hidden;
}

@keyframes pr-loading-respirar {
  0%, 100% { transform: scale(.94); opacity: .82; }
  50%      { transform: scale(1.04); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .pr-loading-global { transition: none; }
  .pr-loading-global__logo { animation: none; }
}
