.signature {
    text-align: center;
    margin-top: 80px;
    margin-bottom: 20px;
}
.signature a {
    text-decoration: none;
}
.signature a:hover {
    text-decoration: underline;
}
.math-definitions {
	display: inline-block;
	text-align: center;
}
.math-definitions td:first-child {
	text-align: right;
}
.math-definitions td:last-child {
	text-align: left;
}
.math-definitions tr.splitter {
	height: 8px;
}
h3 {
	font-family: "Noto Serif";
	font-weight: bold;
	font-size: inherit;
	margin-bottom: 0;
}
h3+p {
	margin-top: 0;
}
.center {
	text-align: center;
}
.game-scrollbox {
	display: inline-block;
	max-width: 100%;
	overflow: auto;
	vertical-align: bottom;
}
.game {
	display: inline-block;
	vertical-align: bottom;
	position: relative;
	border: 10px solid #ccc;
	border-image: url(border.png) 10;
}
.game>.row {
	padding: 0;
	margin: 0;
	height: 16px;
	line-height: 0;
	white-space: nowrap;
	pointer-events: none;
}
.magic-wand {
	cursor: url(cursor.gif) 8 8, auto;
}
.magically-revealed {
	box-shadow: inset 0px 0px 64px 64px rgba(255, 255, 0, 0.3);
}
.logical-necessity {
	box-shadow: inset 0px 0px 64px 64px rgba(255, 0, 0, 0.3);
}
.granted {
	display: none;
}
.magic-wand .granted {
	display: inline;
}
@media (min-resolution: 2dppx) {
	.game {
		border-image: url(borderx2.png) 20;
	}
	.magic-wand {
		cursor: url(cursor2x.gif) 16 16, auto;
	}
}
.game>.row>.sq {
	pointer-events: none;
}
.sq {
	display: inline-block;
	overflow: hidden;
	width: 16px;
	height: 16px;
	background: url(sprite100.gif);
	padding: 0;
	margin: 0;
	image-rendering: -moz-crisp-edges;
}
.sq.m-0 { background-position:-0px -23px; }
.sq.m-1 { background-position:-16px -23px; }
.sq.m-2 { background-position:-32px -23px; }
.sq.m-3 { background-position:-48px -23px; }
.sq.m-4 { background-position:-64px -23px; }
.sq.m-5 { background-position:-80px -23px; }
.sq.m-6 { background-position:-96px -23px; }
.sq.m-7 { background-position:-112px -23px; }
.sq.m-8 { background-position:-128px -23px; }
.sq.fow { background-position:-0px -39px; }
.sq.fow-mine { background-position:-16px -39px; }
.sq.hit-mine { background-position:-32px -39px; }
.sq.wrong-mine { background-position:-48px -39px; }
.sq.actual-mine { background-position:-64px -39px; }
.sq.fow.hold { background-position:-0px -23px; }
.sq.fow.flag { background-position:-16px -39px; }
.sq.fow.has-mine { background-position:-64px -39px; }
.sq.fow.has-mine.flag { background-position:-16px -39px; }
.sq.fow.no-mine.flag { background-position:-48px -39px; }
@media (min-resolution: 2dppx) {
	.sq {
		background-image: url(sprite100x2.png);
		background-size: 144px 91px;
	}
}
button.rule {
	margin: 0;
	padding: 0;
	border: none;
	font: inherit;
	line-height: normal;
	background: none;
	padding-left: 24px;
}
button.rule:before {
	background: url(sprite100.gif);
	background-position:-0px -39px;
	width: 16px;
	height: 16px;
	margin-left: -24px;
	margin-right: 8px;
	overflow: hidden;
	display: inline-block;
	content: " ";
}
button.rule:active:hover:before, button.rule.checked:active:hover:before {
	background-position:-0px -23px;
}
button.rule.checked:before {
	background-position:-16px -39px;
}
@media (min-resolution: 2dppx) {
	button.rule:before {
		background-image: url(sprite100x2.png);
		background-size: 144px 91px;
	}
}
button.restart-game {
	padding: 0px;
	margin: 4px;
	border: none;
	background: url(sprite100.gif);
	background-position:-1px -56px;
	width: 25px;
	height: 25px;
}
button.restart-game.tense {
	background-position:-53px -56px;
}
button.restart-game.dead {
	background-position:-79px -56px;
}
button.restart-game.win {
	background-position:-105px -56px;
}
button.restart-game:active {
	background-position:-27px -56px;
}
@media (min-resolution: 2dppx) {
	button.restart-game {
		background-image: url(sprite100x2.png);
		background-size: 144px 91px;
	}
}
.activity-feedback .stuck, .activity-feedback .thinking {
	display: none;
}
.activity-feedback.stuck .stuck {
	display: inline;
}
.activity-feedback.thinking .thinking {
	display: inline;
}
