*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  width: 100%;
  height: 100%;
}

body {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #111; /* Fallback around the square */
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Wrapper keeps the image square and responsive */
.wrapper {
  width: min(90vmin, 800px);
  height: min(90vmin, 800px);
}

/* Clickable box with background image */
.creation-box {
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("img/reactz-bg.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 12px;
  border: 3px solid rgba(0, 0, 0, 0.6);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.creation-box:hover,
.creation-box:focus-visible {
  transform: translateY(-4px) scale(1.01);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.45);
  border-color: rgba(0, 0, 0, 0.9);
  outline: none;
}

.creation-box:active {
  transform: translateY(0) scale(0.99);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.35);
}
