/* Preview container holds the canvas and overlay */
#previewContainer {
  position: relative;
  width: 300px;
  height: 300px;
  margin: 1rem auto;
  overflow: hidden; /* hide content outside rounded mask */
}

/* Canvas is placed underneath */
#previewContainer canvas {
  cursor: grab;
  width: 100%;
  height: 100%;
  display: block;
}

/* Mask is centered absolute overlay */
#previewContainer #mask {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none; /* allow dragging on canvas */
  box-shadow: 0 0 0 9999px rgba(0,0,0,0.5); /* darken outside */
  border-radius: 20px; /* rounded rectangle */
}

.upload-area {
  text-align: center;
}

button {
  display: block;
  margin: 1rem auto;
}
