/*@font-face {
  font-family: '8bit';
  src: url('../fonts/8bit.tff')
  format('truetype');
}*/
    
body {
  width: 100%;
  overflow: hidden;
  background-color: #8DF;
}
body .header {
  width: 100%;
  height: 50px;
  padding: 5px;
  font-size: 14pt;
  z-index: 0;
  text-shadow: 2px 2px 2px #777;
}
tool {
    display: block;
    font-size: 50%;
    line-height: 7px;
    color: #C60;
    overflow: hidden;
}
    #dirt {
	width: 100%;
	display: block;
	position: absolute;
	top: 300px;
	left: 0;
	margin: 0;
	background: #642;
	height: 2000px;
	overflow: hidden;
	z-index: 0;
	border-top: 3px solid #0A0;
    }
    #dirt .gem {
	position: absolute;
	width: 25px;
    top: auto;
	padding: 5px;
	height: 25px;
	cursor: pointer;
	transition: font-size 1s linear,opacity 1s linear,top 500ms linear;
    }
    #dirt .gem.boulder {
	background-image: url('../images/boulder.png');
    }
    .moveUp {
	transition: top 500ms linear;
    }
    .dirt01,.dirt02,.dirt03,.stone01 {
	background-color: #543;
	top: 50px;
	position: absolute;
	width: 100%;
	height: 5000px;
	z-index: -1;
    }
    .dirt02 {
	background-color: #432;
	top: 100px;
    }
    .dirt03 {
	background-color: #321;
	top: 250px;
    }
    .stone01 {
	background-color: #444;
	top: 600px;
    }
    .instructions {
	    color: #ccc;
        position: absolute;
        z-index: 200;
        opacity: 0.3;
        background-color: #000;
        height: 100%;
        width: 100%;
    }
    .instructions h3,.instructions p,.instructions h4 {
	text-align: center;
    }
    .instructions p {
	line-height: 20px;
	color: #9FF;
    }
    .instructions ol {
	margin: auto;
	width: 500px;
    }
    #messages {
	z-index: 100;
	display: none;
	width: 600px;
	margin: auto;
	height: 30px;
	background-color: #bdf;
	position: relative;
	top: -50px;
	max-width: 45%;
	text-align: center;
	opacity: 0.2;
	overflow-y: scroll;
	padding: 7px;
	transition: all 500ms linear;
    }
    #messages:hover {
	opacity: 0.8 !important;
	height: 100px !important;
    }
    #messages span {
	text-align: left;
	display: block;
	margin-bottom: 5px;
    }
#digger {
	width: 100%;
	left: 0%;
	height: 1px;
	border-radius: 0px 0px 6px 0px;
	background-color: #8DF;
	position: absolute;
	top: 300px;
	display: block;
	z-index: 2;
	text-align: right;
	transition: left 50ms;
}
#digger.boost {
	transition: left 10ms;
}
#digger.back {
    border-radius: 0 0 0 6px;
	text-align: left;
}
.purple { color: purple; }
.yellow { color: yellow; }
.green { color: green; }
.white { color: white; }
.blue { color: blue; }
.orange { color: orange; }
.pink { color: pink; }
.red { color: red; }

#digger img {
	width: 25px;
	height: 25px;
	position:absolute;
	bottom: 0;
	right: 0;
	border-radius: 6px;
}
#digger img.toolimg {
    width: 50px;
    height: 50px;
    bottom: -7px;
}
#digger img.toolimg.t14,
#digger img.toolimg.t15 {
    width: 60px;
    height: 60px;
    bottom: -7px;
}
#digger img.toolimg.t16,
#digger img.toolimg.t17 {
    width: 70px;
    height: 70px;
    bottom: -8px;
}
#digger img.toolimg.t18,
#digger img.toolimg.t20,
#digger img.toolimg.t19 {
    width: 80px;
    height: 80px;
    bottom: -10px;
}
#digger img.toolimg.t22,
#digger img.toolimg.t21 {
    width: 90px;
    height: 90px;
    bottom: -12px;
}
#digger img.toolimg.t24,
#digger img.toolimg.t25,
#digger img.toolimg.t26,
#digger img.toolimg.t23 {
    width: 100px;
    height: 100px;
    bottom: -14px;
}
.gemicon {
    color: #A0A;   
}
#digger.back img {
	transform: scaleX(-1);
	-webkit-transform: scaleX(-1);
	-moz-transform: scaleX(-1);
	filter: FlipH;
	left: 0;
	right: auto;
}
#digger.boost img {
	filter: drop-shadow(4px 4px 2px red);
}
#digger.boost b {
	color: #099;
}
#digger.sleep img {
	filter: drop-shadow(4px 4px 2px blue);
}
    #boostCounter {
	padding-left: 5px;
    }
    #status {
	position: absolute;
	display: none;
	top:30px;
	left:10px;
	width: 350px;
	z-index: 5;
    }
    #status fieldset {
	border-radius: 15px 0px;
	border: 4px outset #678;
	background-color: #EEE;
	height: 139px;
	padding: 7px;
    }
    #status fieldset div {
	display: inline-block;
	position: relative;
    }
    #status fieldset .tool {
	overflow: hidden;
    }
    #status fieldset .updates {
	width: 150px;
	position: absolute;
    }
    #status label {
	font-weight: bold;
	color: #777;
	display: inline-block;
    }
    #tools {
	display: block;
	width: 200px;
	height: 60px;
	text-align: right;
	right: 30px;
	top: 5px;
	position: absolute !important;
    }
    #toolbox {
	background: url('../images/toolbox.png') 4px no-repeat #7FC;
	display: none;
	background-size: 30px 30px;
	width: 40px;
	height: 40px;
	border: 2px solid;
	border-radius: 4px;
	right: -10px;
	top: 10px;
	box-shadow: 1px 1px 4px;
	position: absolute;
    }
    .tool {
	width: 54px;
	display: inline-block;
	height: 54px;
	border-radius: 8px;
	background-color: #FFF;
	border: 2px solid #777;
	padding: 5px;
	margin: 5px;
	vertical-align: top;
    }
    .tool name {
        font-size: 80%;
        line-height: 12px;
        vertical-align: top;
        display: flex;
    }
    #tools label {
	display: block;
	bottom: 0;
	position: relative;
    }
    #tools div {
        display: inline-block;
	text-align: center;
    }
    #tools #tier {
        display: none;
        border: 3px solid #5CC;
        box-shadow: 1px 1px 6px;
    }
    #tools #tier.tier {
    }
    #tools #tier name.tier {
        font-size: 219%;
        font-weight: bold;
        display: contents;
        line-height: 25px;
    }
    .icon {
        position: absolute;
        right: -1px;
        top: 0px;
        font-size: 90%;
        color: #77F;
    }
    #tools button {
	position: absolute;
	height: 18px;
	font-size: 10px;
	bottom: -3px;
	left: -10px;
	width: 70px;
	padding-top: 2px;
	line-height: 10px;
	transition: left 300ms linear,bottom 400ms linear,background 600ms linear,height 700ms linear,text-align 500ms linear;
    }
    #tools button:hover:enabled {
	background-color: #090;
	color: #FFF;
	height: 28px;
	bottom: 0px;
    }
    #tools #speedUpgrade {
	left: 30px;
	height: 25px;
	bottom: -10px;
	padding-left: 4px;
	background-color: #090;
	border-color: #595;
	color: #FFF;
	text-align: left;
    }
    #tools #speedUpgrade.d10 {
        left: 26px;
    }
    #tools #speedUpgrade:hover {
	left: -9px;
	bottom: -1px;
	height:	30px;
	text-align: center;
    }
    #tools #speedUpgrade:hover:enabled {
	cursor: pointer;
    }
    .boost .counter {
	display: block;
	top: 0;
	z-index: 1;
	background-color: #CCF;
	position: absolute;
	width: 0%;
	height: 100%;
    }
    .boost .title {
	display: block;
	z-index: 2;
	margin: auto;
    }
    #boostStatus {
	position: absolute;
	right: 10px;
	bottom: 14px;	
    }
    #tools #speedUpgrade:disabled {
	background-color: #CCC;
	color: #444;
	border-color: #777;
    }
.cloud,.cloud1 {
	position: absolute;
	width: 300px;
	height: 130px;
	transition: left 30s linear,background-size 1s ease-out;
	z-index: 4;
	cursor: pointer;
	background-image: url('../images/cloud01.png');
	background-size: 100%;
	background-repeat: no-repeat;
}
.cloud1 {
	background-image: url('../images/cloud02.png');
	height: 80px;
	width: 160px;
	background-size: 100%;
}
.cloud.imploder,.cloud1.imploder {
    background-size: 40%;
	transition: background-size 1s ease-out;
}
    .cloudDrop {
        position: absolute;
        width: 30px;
        height: 30px;
        transition: top 1s ease-in 0.3s;
    }
    .cloudDrop .fa-gem {
        color: #F0F;
    }
    #status span {
	color: #77A;
	padding-left: 10px;
	display: inline-block;
    }
    #status fieldset .updates div::after {
	content: "\A";
	white-space: pre;
    }
    #achievements {
	display:none;
	position:absolute;
	width: 250px;
	height: 200px;
	top: 50px;
	right: -228px;
	padding: 5px;
	border: 1px solid #cc8;
	border-radius: 3px;
	box-shadow: 3px 5px 13px #cc8;
	background-color: #ffc;
	transition: right 500ms linear;
	oveflow: hidden;
    }
    #achievements.hover,
    #achievements:hover {
	right: 0;
    }
    #achievements h1 {
	text-align: center;
	color: #060;
	font-size: 16px;
	text-decoration: underline;
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	left: -40px;
	top: 65px;
	position: absolute;
    }
    #achievements .bubbles {
	height: 188px;
	overflow-y: scroll;
	width: 94%;
	border: 1px inset #cc9;
	border-radius: 6px;
	padding: 5px 0px 0px 6px;
	background-color: #ffe;
	margin: 0 0 0 15px;
    }
    #achievements .bubbles div {
	width: 98%;
	color: #004;
	height: 32px;
	border-radius: 6px;
	border: 1px solid #004;
	padding: 5px;
	box-shadow: 1px 2px 3px #aaa, inset 0px -1px 11px 2px #88f;
	margin-bottom: 5px;
	background-color: #ddf;
    }
    #loginStatus {
	position: absolute;
	display: none;
	right: 5px;
	top: 5px;
	height: 50px;
	padding: 5px;
	margin: 5px;
    }
    #loginStatus label {
	margin-right: 10px;
    }
    #loginStatus button {
	margin-right: 5px;
    }
    button {
	color: #090;
	border: 2px outset #090;
	border-radius: 10px;
	background-color: #efe;
	cursor: pointer;
	outline: none;
    }
    button:hover {
	border: 2px inset #090;
    }
    button:disabled {
	color: #888;
	border: 2px inset #888;
	background-color: #ccc;
	cursor: default;
    }
    #boosts {
	padding: 10px;
	display: none;
	position: absolute;
	top: 145px;
	left: 5px;
	z-index: 7;
    }
    #boosts .boost {
	display: none;
	font-size: 10px;
	margin-right: 5px;
	margin-bottom: 5px;
	width: 74px;
	height: 23px;
	white-space: nowrap;
	overflow: hidden;
	position: relative;
    }
    #boosts .boost.active {
        border-color: #A00;
        border-style: solid;
        background-color: #FDD;
    }
    #boosts .boost.new:before {
      font-family: "Font Awesome 5 Free";
      content: "\f06a";
      display: inline-block;
      vertical-align: middle;
      position: absolute;
    right: 0px;
    top: -2px;
    color: #44F;
    font-weight: 900;
    }
    #boosts span { display: none; }
    #boosts div { display: inline-block; }
    #modalOverlay {
	z-index: 1000;
        width: 100%;
        height: 100%;
        position: absolute;
	background-color: #000;
	opacity: 0.6;
	display: none;
	top: 0;
	margin: 0;
	left: 0;
    }
    #userForm {
	z-index: 20000;
	display: none;
	text-align: center;
	width: 250px;
	margin: auto;
	padding: 10px;
	background-color: #FFF;
	border: 2px solid #666;
	position: relative;
    }
    #userForm label {
	text-align: left;
	display: block;
	padding-left: 20px;
    }
    #userForm #testQuestion {
	color: #00F;
	font-size: 9px;
	white-space: nowrap;
    }
    #userForm input { width: 200px; padding-left: 3px; }
    #userForm .buttons {
	display: block;
	margin-top: 20px;
    }
    .register_now {
	float: right;
	cursor: pointer;
	top: 10px;
	position: absolute;
	right: 10px;
	font-size: 10px;
	text-decoration: underline;
	color: #00C;
    }
    #userForm .registration {
	display: none;
    }
    #userForm input {
	border: 1px solid black;
    }
    .formBox {
     	padding: 1px;
    	border: 1px solid #FFF;
    	margin: 2px;
    }
    .formBox .errorMsg {
    	display: none;
    }
    .formBox.error input {
    	border: 1px solid red;
    	background-color: #FEE;
    }
    .formBox.error {
    	border: 1px solid #F00;
    	background-color: #FCC;
    }
    .formBox.checking {
        border: 1px solid #ddd;
    	background-color: #eee;
    }
    .formBox.good {
    	border: 1px solid #090;
    	background-color: #CFC;
    }
    .formBox.error .errorMsg,
    .formBox.checking .errorMsg,
    .formBox.good .errorMsg {
    	display: block;
    	color: #900;
     	font-size: 14px;
        height: 18px;
        font-weight: bold;
    }
    .formBox.good .errorMsg {
    	color: #090;
    }
    .formBox.checking .errorMsg {
        color: #666;
    }
    #updates,#roadmap {
	display:none;
	width: 500px;
        position: absolute;
        bottom: 0px;
        left: 5px;
        height: 300px;
        overflow-y: scroll;
        background-color: #fff;
	border: 1px solid #999;
    }
    #updates:hover {
        display: block;
    }
    #updates h4 {
	color: #333;
	text-align: center;
    }
    #updates ul {
	padding: 4px;
	border-radius: 4px;
    }
#updates li {
    list-style-type: none;
    color: #444;
	font-size: 80%;
}
#updates li.vbreak {
	background-color: #ccc;
	font-size: 90%;
	font-weight: bolder;
}
    #dirt .dirtBlock {
        display: block;
        width: 100%;
        z-index: 1;
        position: relative;
        transition: height 300ms linear;
        overflow: hidden;
    }
    #dirt .dirtBlock .gem {
        position: absolute;
    }
.extras {
    position: absolute;
    right: -20px;
    height: 25px;
    width: 20px;
    display: block;
    border: 3px solid #070;
    border-left: none;
    top: 6px;
    border-radius: 0 4px 4px 0;
    background-color: #7C7;
    transition: width 1s ease-out,right 1s ease-out;
    z-index: 4;
    text-align: left;
    cursor: pointer;
    overflow: hidden;
}
.extras i {
    padding-left: 2px;
}
.extras.slot1 {
    width: 40px;
    right: -40px;
}
.extras.slot2 {
    width: 80px;
    right: -80px;
}
span.multiplier {
    position: absolute;
    top: 1px;
    background-color: #fff;
    border: 2px solid #090;
    color: #090;
    padding: 2px !important;
    font-size: 70%;
    margin-left: 5px;
}
#gearbox {
    top: 35px;
    background-color: #FB7;
    border-color: #730;
}
#gearbox i {
    color: #730;
}
#storebox {
    top: initial;
    bottom: 16px;
    background-color: #AAD;
    border-color: #449;
}
#storebox i {
    color: #449;
    padding-left: 0;
}
.extras:has(> .fa-lock),
#gearbox:has(> .fa-lock),
#storebox:has(> .fa-lock) {
    background-color: #888;
    cursor: not-allowed;
}
.extras .slot-separator,
.extras .slot-separator {
    width: 5px;
    padding: 0;
    border-left: 2px solid #126D12;
    height: 13px;
    margin-left: 3px;
    margin-top: 2px;
}

.item {
    display: inline-grid;
    width: 175px;
    height: 150px;
    border: 2px solid #559;
    border-radius: 4px;
    padding: 5px;
    margin: 5px;
}
.item label {
    background-color: #99c;
    color: #447;
    padding: 2px 5px;
}
.item desc {
    font-size: 80%;
    height: 78px;
    overflow-x: auto;
    line-height: 15px;
}
.item button {
    background-color: #0A0;
}
.item.bought {
    border-color: #AAA;
}
.item.bought desc {
    color: #777;
}
.item.bought label {
    background-color: #ccc;
    color: #777;
}
.item.bought button {
    background-color: #999;
}
