* {
	margin: 0;
	box-sizing: border-box;
}
body {
	font-family: Roboto, -apple-system, BlinkMacSystemFont, Segoe UI, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
	background-image: url('/felt.png');
	font-size: 14px;
	width: 100vw;
	height: 100%;
	overflow: hidden;
}

a, .link {
	text-decoration: underline;
	color: white;
	font-weight: normal;
	cursor: pointer;
}

#sapper {
	position: absolute;
	height: 100%;
	width: 100%;
}


/* UI BOXES */
.glossy {
	background: linear-gradient(to bottom, #595962 0%,#383940 50%,#313131 52%,#1d1f2a 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	border-top: 1px solid #88a;	
}
.glossy .inner {
	padding: 4px;
	background: #0d0f1a;
	height: 100%;
	box-shadow: 1px 1px 1px black inset;
}

.glow {
	background: radial-gradient(ellipse at top, #8080a0 0%, #13121B 50%,#000000 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	mix-blend-mode: screen;
	height: 50%;
	width: 100%;
	top: -1px;
	left: 0;
	position: absolute;
}
.btn {
	background: linear-gradient(to bottom, #1e6037 0%,#288a46 50%,#237f40 51%,#37c15e 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	text-align: center;
	display: inline-block;
	color: white;
	text-shadow: 0 0 18px black;
	border: 1px solid #44cc44;
	box-shadow: 0 0 10px #22aa22;
	border-radius: 2px;
	cursor: pointer;
	transition: all 0.3s;
}
.btn.disabled {
	filter: brightness(60%);
	opacity: 0.7;
}
.btn.alt {
	background: linear-gradient(to bottom, #2b9b41 0%,#288c3e 50%,#22823a 51%,#226c3c 100%);
}
.btn.alt:active {
	background: linear-gradient(to bottom, #2b9b41 0%,#288c3e 56%,#22823a 57%,#226c3c 100%);
	border: 1px solid #1e6037;
	box-shadow: 2px 8px 12px rgba(0,0,0,0.5) inset;
}
.btn.orange {
	background: linear-gradient(to bottom, #9a8b1e 0%,#d8b52a 50%,#caab20 51%,#e8d17e 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	border: 1px solid #fab73b;
	box-shadow: 0 0 10px #eb9f12;
}
.btn.red {
	background: linear-gradient(to bottom, #9a451e 0%,#d8532a 50%,#ca4b20 51%,#e8957e 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	border: 1px solid #e22e2e;
	box-shadow: 0 0 10px #bb0f0f;
}
.btn:hover {
	box-shadow: 0 0 10px #55ee55;
}
.btn.orange:hover {
	box-shadow: 0 0 10px #ffb429;
}
.btn.red:hover {
	box-shadow: 0 0 10px #ff1515;
}
.btn:active {
	top: 1px;
}


/* SPEECH BUBBLES */
.left p.bubble {
	top: 10px;
	left: 45px;
}

.right p.bubble {
	top: 10px;
	right: 45px;
}

.left p.bubble:before,
.left p.bubble:after {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
}

.left p.speech:before {
	left: -15px;
	bottom: 4px;
	border: 8px solid;
	border-color:  #333  #333 transparent transparent;
}

.left p.speech:after {
	left: -9px;
	bottom: 7px;
	border: 5px solid;
	border-color:  #fff #fff transparent transparent;
}

.right p.bubble:before,
.right p.bubble:after {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
}

.right p.speech:before {
	right: -15px;
	bottom: 4px;
	border: 8px solid;
	border-color:  #333 transparent transparent #333;
}

.right p.speech:after {
	right: -9px;
	bottom: 7px;
	border: 5px solid;
	border-color:  #fff transparent transparent #fff;
}

.middle p.speech {
	top: -100px;
	left: -140px;
}

.middle p.bubble:before,
.middle p.bubble:after {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
}

.middle p.speech:before {
	left: 51px;
	bottom: -16px;
	border: 8px solid;
	border-color: #333 transparent transparent #333;
}

.middle p.speech:after {
	left: 53px;
	bottom: -10px;
	border: 5px solid;
	border-color: #fff transparent transparent #fff;
}

p.bubble {
	position: absolute;
	width: 160px;
	text-align: center;
	line-height: 1em;
	margin: 4px auto;
	background-color: #fff;
	border: 2px solid #333;
	border-radius: 14px;
	font-family: sans-serif;
	padding: 5px;
	font-size: 14px;
	z-index: 11;
	color: black;

}
