@charset "utf-8";
/* CSS Document */

html {
  /*scroll-behavior: smooth; this breaks the scrolling on the map */
}

html,body {
	
	height:100%;
	touch-action:manipulation;
	
}	

body {
    
    margin:0px;
 
}

body, * {
	
	cursor: url('../img/cursor-small.png?v=6'), auto;
	
}
    
.element-icon {

    background:#fff; width:140px; height:140px; margin:10px; border-radius:10px; padding:20px; display:inline-block; position:relative; -webkit-box-shadow: 0 0 10px 0 rgba(0,0,0,0.1); box-shadow: 0 0 10px 0 rgba(0,0,0,0.1); box-sizing: border-box;

}

.element-icon-selected {

    border:2px solid #d23131;

}

.colour-change {
    
    width:30px; height:30px; border-radius:5px; margin:5px; display:inline-block; box-sizing: border-box;
    
}

.login-box {
    display: inline-block;
    background: #fff;
    padding: 25px 30px 30px 30px;
    position:absolute;
    left:50%;
    top:5%;
    transform:translate(-50%,0);
    border-radius: 0px 0px 5px 5px;
    border-top: 5px solid #00aeef;
    min-width: 250px;
    
}

.soft-shadow {
    
    box-shadow: 0 1px 1px rgb(0 0 0 / 10%), 0 2px 2px rgb(0 0 0 / 10%), 0 4px 4px rgb(0 0 0 / 10%), 0 8px 8px rgb(0 0 0 / 10%), 0 16px 16px rgb(0 0 0 / 10%), 0 32px 32px rgb(0 0 0 / 10%);
    
}

.box h1 {
    color: #fff;
    padding: 15px;
    border-radius: 10px;
    background: #1692ff;
    margin-top: -61px;
    margin-bottom: 0px;
    text-shadow: 3px 3px 0 rgb(0 0 0 / 30%);
	text-align:center;
	
}

.box:before {
  content: " ";
  position: absolute;
  z-index: -1;
  top: 5px;
  left: 5px;
  right: 5px;
  bottom: 5px;
  border: 5px solid rgba(255,255,255,0.5);
  border-radius:10px;
    
}

.box {
    background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0.5) 100%);
    background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(255,255,255,0.5) 100%);
    background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(255,255,255,0.5) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#80ffffff',GradientType=0 );
    backdrop-filter: blur( 4px );
    -webkit-backdrop-filter: blur( 4px );
    border-radius: 15px;
    border: 1px solid #fff;
    width: 100%;
    max-width: 600px;
    position: absolute;
    box-shadow: 0 1px 1px rgb(0 0 0 / 11%), 0 2px 2px rgb(0 0 0 / 11%), 0 4px 4px rgb(0 0 0 / 11%), 0 8px 8px rgb(0 0 0 / 11%), 0 16px 16px rgb(0 0 0 / 11%), 0 32px 32px rgb(0 0 0 / 11%);
    padding: 40px;
    color: #000;
    text-align: center;
    box-sizing: border-box;
}

.box-2:before {
  content: " ";
  position: absolute;
  z-index: -1;
  top: 5px;
  left: 5px;
  right: 5px;
  bottom: 5px;
  border: 5px solid rgba(255,255,255,0.5);
  border-radius:10px;
    
}

.reverse-gradient {
    
    background: -moz-linear-gradient(top, rgba(255,255,255,0.7) 0%, rgba(255,255,255,1) 100%) !important;
    background: -webkit-linear-gradient(top, rgba(255,255,255,0.7) 0%,rgba(255,255,255,1) 100%) !important;
    background: linear-gradient(to bottom, rgba(255,255,255,0.7) 0%,rgba(255,255,255,1) 100%) !important;
    
}
    
.box-arrow-left {

    position: absolute;
    top:-35px;
    left:0px;

}
    
.box-arrow-right {

    position: absolute;
    top:-35px;
    right:-10px;

}
  
.expand-1 {
    
   transition: transform .2s; 
    
}

.expand-1:hover {
  transform: scale(1.1);
}


.expand-2 {
    
   transition: transform .2s; 
    
}

.expand-2:hover {
  transform: scale(1.2);
}

.pulse {
    
    animation: heart-pulse 0.9s infinite ease-out;
}

.unlock-coins-container {
    
    position:absolute; width:130px; text-align:center; background:rgba(22,146,255,0.9); padding:8px; border-radius:10px;
    
}

.padlock {
    
    position:absolute; height:60px; z-index:100;
    
}

.modal {

    display:none;
    background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(255,255,255,0.5) 100%);
    background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(255,255,255,0.5) 100%);
    background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,255,255,0.5) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#80ffffff',GradientType=0 );
    backdrop-filter: blur( 4px );
    -webkit-backdrop-filter: blur( 4px );
    border-radius: 15px;
    border: 1px solid #fff;
    width:100%;
    max-width:500px;
    position: absolute;
    box-shadow: 0 1px 1px rgba(0,0,0,0.11), 
    0 2px 2px rgba(0,0,0,0.11), 
    0 4px 4px rgba(0,0,0,0.11), 
    0 8px 8px rgba(0,0,0,0.11), 
    0 16px 16px rgba(0,0,0,0.11), 
    0 32px 32px rgba(0,0,0,0.11);
    padding:40px;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -40%);
    z-index:1;
    color:#000;
    text-align:center;

}
    
.modal:before {
  content: " ";
  position: absolute;
  z-index: -1;
  top: 5px;
  left: 5px;
  right: 5px;
  bottom: 5px;
  border: 5px solid rgba(255,255,255,0.5);
  border-radius:10px;
    
}
    
.modal h1 {

    color:#fff;
    padding:15px;
    border-radius:10px;
    background:#1692ff;
    margin-top:-61px;
    margin-bottom: 0px;
    text-shadow: 3px 3px 0 rgba(0,0,0,0.3);

}
    
.modal .text {

    font-size:1.3em;
    padding:30px;

}
    
.modal-inner {

    position:relative;

}
    
.modal .button {

    font-family:'Secular One', sans-serif;
    /*text-transform: uppercase;*/
    background: rgb(255,195,30);
    background: -moz-linear-gradient(top,  rgba(255,195,30,1) 0%, rgba(255,117,12,1) 100%) !important;
    background: -webkit-linear-gradient(top,  rgba(255,195,30,1) 0%,rgba(255,117,12,1) 100%) !important;
    background: linear-gradient(to bottom,  rgba(255,195,30,1) 0%,rgba(255,117,12,1) 100%) !important;
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc31e', endColorstr='#ff750c',GradientType=0 ) !important;
    -webkit-border-radius: 15px !important;
    -moz-border-radius: 15px !important;
    border-radius: 15px !important;
    color: #be0000 !important;
    font-size: 2.4em !important;
    font-weight: 100 !important;
    padding: 10px !important;
    text-decoration: none !important;
    display: inline-block !important;
    cursor: pointer !important;
    text-align: center !important;
    margin-bottom:0px !important;
    -webkit-box-shadow: 5px 5px 10px 0 rgba(0,0,0,0.2);
    box-shadow: 5px 5px 10px 0 rgba(0,0,0,0.2);
    /*text-shadow: 2px 2px 0 rgba(0,0,0,0.1);*/
    
}

.modal .button:hover {
    
   opacity:0.9;
        
}

.help-bubble {
	
	position:fixed; top:100px; background:#fff; padding:20px; border-radius:10px; z-index:10001; -webkit-box-shadow: 10px 10px 20px 0 rgba(0,0,0,0.2); box-shadow: 10px 10px 20px 0 rgba(0,0,0,0.2);
	
}

.help-bubble-arrow {
	
	width:1px; height:1px; position:relative;
	
}

.help-bubble-arrow img {
	
	position:absolute; top:-70px; left:-40px; max-width:none;
	
}

.help-bubble h2 {
	
	margin-bottom:-3px; font-size:20px; font-weight:normal;
	
}

.bob-up-and-down {
  animation: MoveUpDown 2s ease-in infinite;
}


.bounce {

	animation: bounceIn 0.6s;
	transform: rotate(0deg) scale(1) translateZ(0);
	transition: all 0.4s cubic-bezier(.8,1.8,.75,.75);

}

@keyframes bounceIn {
  0% {
    opacity: 1;
    transform: scale(.3);
  } 

  50% {
    opacity: 1;
    transform: scale(1.05);
  } 

  70% {
    opacity: 1;
    transform: scale(.9);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes MoveUpDown {
  0%, 100% {
	top:-150px;
  }
  50% {
	top:-140px;
  }
}

#pixie {
  z-index:10;
  position: absolute;
  top: 0;
  left: 0;
}

@keyframes heart-pulse {
  0% {
    transform: scale(1); /* scaling to 0 */
  }
  50% {
    transform: scale(1.1); /* increasing the size */
  }
  100% {
    transform: scale(1); /* seeting back to initial size */
  }
}

@keyframes pulse {
	0% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.7);
	}

	70% {
		transform: scale(1);
		box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
	}

	100% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
	}
}

/* width */
::-webkit-scrollbar {
  width: 20px;
}

/* Track */
::-webkit-scrollbar-track {
  box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
  background:#1692ff;
  border-radius: 10px;
}
 
/* Handle */
::-webkit-scrollbar-thumb {
  background: rgba(255,195,30,1); 
  border-radius: 10px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #b30000; 
}
