/* Pantalla «Cargando…» de FastNet. Va primero en el <head> (antes que site.css/admin.css) para pintarse desde el
   primer cuadro con el fondo oscuro del sitio (sin destello blanco). La quita js/loader.js cuando la página está lista;
   sin JavaScript la quita <noscript> al instante y, si los scripts fallan, la animación ldr-safe a los 10 s. */
html:not(.ldr-done) { background: #0b0e14; } /* mientras carga (sin destello blanco); loader.js pone .ldr-done al terminar */
.ldr {
  position: fixed; inset: 0; z-index: 2147483000; display: grid; place-items: center; padding: 24px;
  background: radial-gradient(1200px 600px at 20% -10%, #2a0f12, transparent), radial-gradient(900px 500px at 110% 110%, #0f1d3d, transparent), #0b0e14;
  color: #f3f5f8; font: 500 15px/1.4 Poppins, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; text-align: center;
  opacity: 1; animation: ldr-safe .4s ease 10s forwards;
}
.ldr.ldr-js { animation: none; }
.ldr.ldr-out { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .3s ease, visibility 0s linear .3s; }
@keyframes ldr-safe { to { opacity: 0; visibility: hidden; } }
.ldr-in { display: flex; flex-direction: column; align-items: center; gap: 16px; }
.ldr-logo { display: inline-flex; align-items: center; justify-content: center; position: relative; animation: ldr-pulse 1.8s ease-in-out infinite; }
.ldr-logo.pill { background: #fff; padding: 10px 18px; border-radius: 18px; box-shadow: 0 12px 40px -12px rgba(227,30,36,.65); }
.ldr-logo img { display: block; height: 64px; width: auto; max-width: 70vw; }
.ldr-name { font-weight: 700; font-size: 17px; letter-spacing: .01em; }
.ldr-bar { position: relative; display: block; width: 180px; height: 4px; border-radius: 4px; background: rgba(255,255,255,.12); overflow: hidden; }
.ldr-bar i { position: absolute; top: 0; bottom: 0; left: 0; width: 40%; border-radius: inherit; background: linear-gradient(90deg, var(--brand, #e31e24), var(--hot, #ff7a1a)); animation: ldr-slide 1.1s ease-in-out infinite; }
.ldr-txt { color: #a9b2c1; font-size: 14px; letter-spacing: .02em; }
@keyframes ldr-slide { from { transform: translateX(-100%); } to { transform: translateX(250%); } }
@keyframes ldr-pulse { 50% { transform: scale(1.035); opacity: .88; } }
@media (prefers-reduced-motion: reduce) {
  .ldr-logo, .ldr-bar i { animation: none; }
  .ldr-bar i { width: 100%; opacity: .55; }
}
