* {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  min-height: 100%;
  margin: 0;
}

body {
  min-height: 100vh;
  min-height: 100svh;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.waiting-screen {
  min-height: 100vh;
  min-height: 100svh;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(16px, 4vw, 48px);
  overflow: hidden;
}

.waiting-image {
  display: block;
  width: min(100%, 1000px);
  height: auto;
  max-height: calc(100svh - 32px);
  object-fit: contain;
}

/* Telas menores: preserva a proporção e evita que a imagem fique
   encostada nas bordas. */
@media (max-width: 800px) {
  .waiting-screen {
    padding: 20px 14px;
  }

  .waiting-image {
    width: 100%;
    max-height: none;
    transform: scale(2);
    -moz-transform: scale(2);
  }
}

