/* A short brand reveal; it never controls application or network readiness. */
.vendiac-logo-loading {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  margin: 0;
  padding: 24px;
  background: #000;
  pointer-events: none;
  user-select: none;
  animation: vendiac-logo-surface 600ms ease-out both;
}
.vendiac-logo-loading[hidden] { display: none !important; }
.vendiac-logo-loading > img {
  display: block;
  width: clamp(220px, 38vw, 280px);
  max-width: 80vw;
  height: auto;
  aspect-ratio: 1080 / 634;
  object-fit: contain;
  margin: 0;
  border: 0;
  animation: vendiac-logo-mark 600ms ease-out both;
}
/* CSS also retires the surface if JavaScript stalls after showing it. */
@keyframes vendiac-logo-surface {
  0%, 56% { opacity: 1; visibility: visible; }
  100% { opacity: 0; visibility: hidden; }
}
@keyframes vendiac-logo-mark {
  0% { opacity: 0; }
  18%, 52% { opacity: 1; }
  100% { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .vendiac-logo-loading { display: none !important; animation: none; }
  .vendiac-logo-loading > img { animation: none; }
}
