* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-tap-highlight-color: transparent;
}

.mainBody img, .imagePanel img {
    -webkit-user-drag: none;
    -khtml-user-drag: none;
    -moz-user-drag: none;
    -ms-user-drag: none;
}

body {
  background: #535353;
  color: #000000;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 16px;
}

.mainBody{
  position: relative;
  width: 100%;
  max-width: 480px;
  aspect-ratio: 2/3.5;
  background: #ffffff;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 10px;
  background-image: url('images/Background.png');
  background-position: center;
  background-repeat: no-repeat;
}

.imagePanel{
  width: 90%;
  aspect-ratio: 1/1;
  background: #737cff00;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
  padding: 20px;
}

.imagePanel img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: scale(1.15);
  transform-origin: center;
}

.swatchPanel{
  width: 90%;
  aspect-ratio: 1/1;
  border-radius: 16px;
  padding: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: visible;
  background-image: url('images/SwatchHolder.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain; 
}

.swatchInner {
  position: relative;
  width: 100%;
  height: 100%;
  transform-origin: center center;
}

.swatch {
  position: absolute;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  transform: translate(-50%, -50%);
}

.swatch-green {
  top: 40%;
  left: 50%;
  opacity: 1;
  width: 40%;
}

.swatch-blue {
  top: 55%;
  left: 20%;
  opacity: 1;
  width: 38%;
}

.swatch-red {
  top: 67%;
  left: 45%;
  opacity: 1;
  width: 35%;
}

#userImage {
  position: absolute;
  width: 95%;
  height: 86%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.85) translateY(-30px);
  display: none;
}

#userImageCanvas{
  position: absolute;
  width: 84%;
  height: 74%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1) translateY(-30px);
}

#uploadPhotoButton{
  position: absolute;
  width: 20%;
  left: 60%;
  top: -5%;
  cursor: pointer; 
  z-index: 20;
}

#takePictureButton{
  position: absolute;
  width: 20%;
  left: 20%;
  top: -5%;
}

#galleryButton{
  position: absolute;
  width: 10%;
  left: 2%;
  top: 1%;
  cursor: pointer; 
  z-index: 20;
}

#paintbrushCursorTip{
  position: absolute;
  width: 25%;
  z-index: 100;
}

#canvasBackground{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: scale(0.85) translateY(-30px);
}

#PaintBottle {
  position: absolute;
  top: 11%;
  width: 100%;
  z-index: 10;
  pointer-events: none;
}

#PaintColour {
  position: absolute;
  top: 11%;
  width: 100%;
  z-index: 9;
  pointer-events: none;
}

#imageUpload {
  display: none;
}

#cameraInput{
  display: none;
}

.hidden {
  display: none !important;
}

.PaintColourBlock{
  z-index: 0;
  position: absolute;
  width: 66%;
  height: 33%;
  top: 35%;
  left: 17.22%;
  background: #ffffff;
  mask-size: 150%, 150%;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-image: url(images/SelectedColour.png);
}

#HEXCode{
  z-index: 100;
  position: absolute;
  width: 66%;
  height: 33%;
  top: 41.5%;
  left: 71%;
  transform: rotate(-55deg);
  text-align: center;
}

#RGBValue{
  z-index: 100;
  position: absolute;
  width: 66%;
  height: 33%;
  top: 43%;
  left: 75%;
  transform: rotate(-55deg);
  font-size: 15px;
  text-align: center;
}

.paintbrushCursorTip{
  z-index: 10000;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 45%;
  left: 90%;
  background: #f50303;
  mask-size: 100%, 100%;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-image: url(images/PaintBrushTip.png);
}

#paintbrushHandle{
  position: absolute;
  width: 180px;
  height: 250px;
  z-index: 10000;
  pointer-events: none;
  display: none;
}

#paintbrushTipColorLayer{
  position: absolute;
  width: 200px;
  height: 250px;
  z-index: 10000;
  pointer-events: none;
  display: none;
  background-color: #000000; 
  mask-image: url(images/PaintBrushTip.png);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: bottom left;
}