* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
html, body {
  height: 100%;
  /* overflow: hidden;  */
}


body {
  height: 100vh;
  background-image: url('assets/projectBackground.png');
  background-size: cover;    
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}

#backgroundCoverTop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw; /* fills full screen width */
  height: 770px; /* fills full screen height */
  z-index: 500; /* make sure it's on top of everything */
  object-fit: cover; /* prevents squishing */
  pointer-events: none; /* optional: so it doesn't block clicks */
}
#stars {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 900px; /* or adjust based on your layout */
  z-index: 9999;
  object-fit: cover;
  opacity: 70%;
  pointer-events: none;
}



#musicPlayer{
  position: absolute;
  width: 450px;
  height: 160px;
  top: 555px;
  left: 15px;
  z-index: 9999;
  transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease !important;
}
#musicPlayer:hover{
  transform: scale(1.05) rotate(-1deg);
  /* box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3); */
  filter: brightness(1.05) contrast(1.2);
}

#emotionsSideBar{
  position: fixed;
  z-index: 99;
  height: 355px;
  width: 72px;
  left: 1440px;
  top: 170px;
}

#displayItems img{
  z-index: 999;
  position: absolute;
  transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease !important;
}

#displayItems img:hover{
  transform: scale(1.05) rotate(-1deg);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  filter: brightness(1.05) contrast(1.2);
}

#angerDisplay{
  position: fixed;
  width: 44px;
  height: 46px;
  left: 1454px;
  bottom: 496px;
}

#joyDisplay{
  position: fixed;
  width: 40px;
  height: 40px;
  left: 1457.5px;
  bottom: 369px;
}

#sadDisplay{
  position: fixed;
  width: 44px;
  height: 45px;
  left: 1454.5px;
  bottom: 430px;
}
#fearDisplay{
  position: fixed;
  width: 80px;
  height: 80px;
  left: 1436px;
  bottom: 282.5px;
}
#surpriseDisplay{
  position: fixed;
  width: 46px;
  height: 51px;
  left: 1453px;
  bottom: 230px;
}

#angerDisplay.close, #surpriseDisplay.close, #fearDisplay.close, #sadDisplay.close, #joyDisplay.close{
  display: none;
}
#angerDisplay.open, #surpriseDisplay.open, #fearDisplay.open, #sadDisplay.open, #joyDisplay.open{
  display: block;
  transition: left 0.7s ease-in;
}





/* CLAWMACHINE BASE START */
#machineBase{
    /* height: 100;      */
    position: relative;
    text-align: center;


}
#clawmachineOuterFrameBase{
    height: 100vh;
    z-index: 6;
    position: relative;
}
#clawmachineBackgroundBase {
    width: 394px;
    height: 316px;
    z-index: 1;
    position: absolute;
    top: 79px;       /* vertically center */
    left: 36.4%;
    /* display: flex
; */
    /* justify-content: center; */
    /* align-items: center; */
    /* margin-left: auto;
    margin-right: auto; */


}


/* #clawWrapper{
    position: relative;
} */
#claw{
    position: absolute;
    width: 80px;
    height:95px;
    top:89px;
    left: 590px;
    z-index: 5;
    transition: left 0.7s ease-in;
}

#clawExtension{
    Position: absolute;
    left: 626.1px;
    z-index: 2;
    top: -211px;
    width: 8.7px;
    height: 300px;
}




#machineControls{
    display: flex;
    position: absolute;
    top: 360px;
    justify-content: center;
    align-items: center;
    margin-left: 600px;
    z-index: 8;
}
#leftButton, #rightButton, #downButton{
    width:100px;
    height: 105px;
    /* border: black solid; */
    margin-inline: 5px;
    z-index: 30;
}
/* CLAWMACHINE BASE END */








/* CLAWMACHINE ITEMS START */
#angerFlame{
    position: absolute;
    z-index: 4;
    top: 270px;
    left: 629px;
    width: 120px;
    height: 130px;
    transition: left 0.7s ease-in;
}

#sadTear{
    position: absolute;
    z-index: 4;
    top: 270px;
    left: 678px;
    width: 120px;
    height: 130px;
    transition: left 0.7s ease-in;
}

#joyStar{
    position: absolute;
    z-index: 4;
    top: 270px;
    left: 726px;
    width: 135px;
    height: 135px;
    transition: left 0.7s ease-in;
}

#fearOrb{
    position: absolute;
    z-index: 4;
    top: 270px;
    left: 760px;
    width: 155px;
    height: 155px;
    transition: left 0.7s ease-in;
}

#surpriseBox{
    position: absolute;
    z-index: 4;
    top: 270px;
    left: 823px;
    width: 125px;
    height: 140px;
    transition: left 0.7s ease-in;
}


/* CLAWMACHINE ITEMS END */




/* EMOTION INFOMATION CARDS START */


/* .angerEmotionInfoCard{
    position:absolute;
    z-index: 30;
    height: 560px;
    width: 460px;
    left: 518px;
    top: 80px;
} */

#angerEmotionInfoCard.closed, #sadnessEmotionInfoCard.closed, #joyEmotionInfoCard.closed, #fearEmotionInfoCard.closed , #surpriseEmotionInfoCard.closed{
    display: none;
    position:absolute;
    z-index: 30;
    height: 560px;
    width: 460px;
    left: 518px;
    top: 80px;
}
#angerEmotionInfoCard.opened ,#sadnessEmotionInfoCard.opened , #joyEmotionInfoCard.opened, #fearEmotionInfoCard.opened, #surpriseEmotionInfoCard.opened{
    display: block;
    position:absolute;
    z-index: 30;
    height: 560px;
    width: 460px;
    left: 518px;
    top: 80px;
    animation: slideUp 0.7s ease-in-out forwards;
    /* transition: top 0.7s ease-in; */
}

#angerEmotionInfoCard, #sadnessEmotionInfoCard ,#joyEmotionInfoCard, #fearEmotionInfoCard, #surpriseEmotionInfoCard{
  display: block;
  position: absolute;
  z-index: 30;
  height: 560px;
  width: 460px;
  left: 518px;
  top: 80px;
  border-radius: 20px;
  transition: transform 0.4s ease, box-shadow 0.4s ease, filter 0.4s ease;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}
#angerEmotionInfoCard:hover , #sadnessEmotionInfoCard:hover, #joyEmotionInfoCard:hover, #fearEmotionInfoCard:hover, #surpriseEmotionInfoCard:hover{
  transform: scale(1.05) rotate(-1deg);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  filter: brightness(1.05) contrast(1.2);
}


/* .angerEmotionInfoCard{
    position:absolute;
    z-index: 30;
    height: 560px;
    width: 460px;
    left: 518px;
    top: 800px;
} */






/* EMOTION INFORMATION CARDS END */






/* CLAW TRANSITION */
@keyframes clawMovementRight {
  0%   { transform: rotate(0deg); }
  33%   { transform: rotate(15deg); }
  66%  { transform: rotate(-15deg); }
  100% { transform: rotate(0deg); }
}


@keyframes clawMovementLeft {
  0%   { transform: rotate(0deg); }
  33%   { transform: rotate(-15deg); }
  66%  { transform: rotate(15deg); }
  100% {transform: rotate(0deg);}
}


@keyframes clawMovementDown{
    0%{top: 89px;}
    40%{top: 285px;}
    62%{top: 285px;}
    100%{top: 89px;}
}

@keyframes clawExtensionDownMovement{
    0%{top: -190px}
    40%{top: 10px;}
    62%{top: 10px;}
    100%{top: -190px;}
}


@keyframes objectMovementUp{
    0%{top: 270px;}
    40%{top: 270px;}
    62%{top: 270px;}
    100%{top: 89px;}
}


@keyframes objectMovementDrop{
    0%{top:89px;}
    100%{top: 400px;
         visibility: hidden;}
}


@keyframes slideUp {
  0% {
    opacity: 0;
    transform: translateY(500px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(800px);
  }
}



/* @keyframes fadeOutScale {
  from {
    opacity: 1;
    transform: scale(1);
  }
  to {
    opacity: 0;
    transform: scale(0.8);
  }
} */

.fadeOutScale{
    animation: fadeOutScale 0.4s ease-out forwards;
}

.slideDown{
    animation: slideDown 1.5s ease-in-out forwards;
}



.rightSwingMovement{
    transform-origin: top center;
    animation: clawMovementRight 2s ease-in-out;
}


.leftSwingMovement{
    transform-origin: top center;
    animation: clawMovementLeft 2s ease-in-out;
}


.clawDownMovement{
    animation: clawMovementDown 4s ease-in-out;
}

.clawExtensionDownMovement{
    animation: clawExtensionDownMovement 4s ease-in-out;
}
.objectMovementUp{
    animation: objectMovementUp 4s ease-in-out forwards;
}

.objectMovementDrop {
  animation: objectMovementDrop 0.8s ease-in-out forwards;
}

.slideUpAnimation{
    animation: slideUp 2.5s ease-in-out forwards;
    /* position: absolute; */
}



