/* Universal Preloader – estilos base (no depende del tema) */
#wp-preloader.wp-preloader {
  position: fixed;
  inset: 0;
  background: var(--wp-bg, #fff);
  display: grid;
  place-items: center;
  z-index: 999999;
  opacity: 1;
  visibility: visible;
  transition: opacity var(--wp-fade-ms, 300ms) ease, visibility var(--wp-fade-ms, 300ms) ease;
}
#wp-preloader.wp-preloader.wp-hide {
  opacity: 0;
  visibility: hidden;
}
#wp-preloader .wp-inner{
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
}
#wp-preloader .wp-logo{
  max-width: var(--wp-logo-w, 200px);
  max-height: var(--wp-logo-h, 200px);
  width:auto;
  height:auto;
}

/* Spinners */
.wp-ring{
  width:40px;
  height:40px;
  border:4px solid rgba(0,0,0,.15);
  border-top-color: rgba(0,0,0,.6);
  border-radius:50%;
  animation:wp-spin 1s linear infinite;
}
@keyframes wp-spin{ to{ transform:rotate(360deg);} }

.wp-bars{
  display:inline-grid;
  grid-auto-flow:column;
  gap:6px;
}
.wp-bars i{
  width:5px;
  height:24px;
  background: rgba(0,0,0,.6);
  display:block;
  border-radius:2px;
  animation:wp-bars 1s ease-in-out infinite;
}
.wp-bars i:nth-child(2){ animation-delay:.1s }
.wp-bars i:nth-child(3){ animation-delay:.2s }
.wp-bars i:nth-child(4){ animation-delay:.3s }
@keyframes wp-bars{ 0%,100%{ transform:scaleY(.5); } 50%{ transform:scaleY(1);} }

.wp-pulse{
  width:12px;
  height:12px;
  border-radius:50%;
  background: rgba(0,0,0,.7);
  box-shadow:0 0 0 0 rgba(0,0,0,.35);
  animation:wp-pulse 1.2s infinite;
}
@keyframes wp-pulse{
  0%{ box-shadow:0 0 0 0 rgba(0,0,0,.35);}
  70%{ box-shadow:0 0 0 20px rgba(0,0,0,0);}
  100%{ box-shadow:0 0 0 0 rgba(0,0,0,0);}
}
