.symbol {
  width:52px;
  height:52px;
  transition: transform .35s ease, opacity .25s;
}

.fall {
  animation: fall .35s ease-out;
}

@keyframes fall {
  from {
    transform: translateY(-120px);
    opacity:0;
  }
  to {
    transform: translateY(0);
    opacity:1;
  }
}

.win {
  opacity:0;
  transform: scale(0.6);
}
body{
  margin:0;
  background:#000;
  font-family:Arial, sans-serif;
}

.game{
  max-width:430px;
  margin:auto;
  background:url("../assets/ui/bg.jpg") center/cover no-repeat;
  height:100vh;
  display:flex;
  flex-direction:column;
}

.top-event{
  padding:6px 10px;
  background:rgba(0,0,0,.6);
  color:#fff;
  font-size:12px;
}

.header{
  display:flex;
  padding:10px;
  color:#ffd56a;
}

.character{
  width:120px;
  background:url("../assets/ui/header.png") center/contain no-repeat;
}

.slot-area{
  flex:1;
  display:flex;
  justify-content:center;
  align-items:center;
}

.reels{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  grid-gap:6px;
}

.reels img{
  width:52px;
}

.info-text{
  text-align:center;
  color:#fff;
  margin:6px 0;
}

.feature-panel{
  display:flex;
  justify-content:space-between;
  padding:10px;
}

.buy{
  background:#2b6cff;
  color:#fff;
  padding:10px;
  border-radius:8px;
  border:none;
}

.bet-box{
  background:#f5c66a;
  padding:10px;
  border-radius:8px;
}

.spin-panel{
  display:flex;
  justify-content:center;
  align-items:center;
  margin:10px 0;
}

.spin{
  width:90px;
  height:90px;
  background:url("../assets/ui/spin.png") center/contain no-repeat;
  border:none;
}

.bottom-bar{
  display:flex;
  justify-content:space-between;
  padding:8px;
  background:rgba(0,0,0,.7);
  color:#fff;
}

/* FLASH */
#flash {
  position:fixed;
  inset:0;
  background:white;
  opacity:0;
  pointer-events:none;
  z-index:999;
}

.flash {
  animation: flash .25s ease;
}

@keyframes flash {
  0% {opacity:0;}
  50% {opacity:0.8;}
  100% {opacity:0;}
}

/* PETIR */
#lightning {
  position:fixed;
  top:-100%;
  left:50%;
  width:180px;
  height:100vh;
  background:linear-gradient(
    180deg,
    transparent,
    #fff 40%,
    #aaf 50%,
    #fff 60%,
    transparent
  );
  transform:translateX(-50%);
  opacity:0;
  z-index:998;
}

.strike {
  animation: strike .35s ease;
}

@keyframes strike {
  0% {top:-100%; opacity:0;}
  30% {opacity:1;}
  100% {top:0; opacity:0;}
}

/* SHAKE */
.shake {
  animation: shake .35s;
}

@keyframes shake {
  0% {transform:translate(0,0);}
  25% {transform:translate(6px,-4px);}
  50% {transform:translate(-6px,4px);}
  75% {transform:translate(4px,-6px);}
  100% {transform:translate(0,0);}
}


