/* Cobertura do topo até o 1º leilão — sem elemento no HTML.
   A tela cheia e o spinner são pseudo-elementos do <body>; a classe "cover" no <html> é posta pelo
   /assets/pl.js, igual em toda visita. Sem JS, nada aparece.
   O texto opcional vem de <body data-cover="...">; sem o atributo, fica só o spinner. */
html.cover body::before{
  content:attr(data-cover);
  position:fixed;inset:0;z-index:2147483000;
  display:flex;align-items:center;justify-content:center;padding:2rem;
  background:var(--bg);color:var(--text-light);text-align:center;
  touch-action:none;overscroll-behavior:contain;
}
html.cover body::after{
  content:"";position:fixed;z-index:2147483001;left:50%;top:calc(50% + 3.5rem);
  width:44px;height:44px;margin:-22px 0 0 -22px;box-sizing:border-box;
  border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;
  animation:gira .8s linear infinite;
}
html.cover body:not([data-cover])::after{top:50%}
@keyframes gira{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){html.cover body::after{animation:none}}
html.cover,html.cover body{overflow:hidden}
/* página com wrapper e sem slot (ex.: p1 do funil): a classe entra mas não trava nada */
html.cover:not(:has(.hs-ad)) body::before,
html.cover:not(:has(.hs-ad)) body::after{display:none}
html.cover:not(:has(.hs-ad)),
html.cover:not(:has(.hs-ad)) body{overflow:auto}
