body {
	font-size: 12pt;
}

h1 {
	margin: 1em auto;
	text-align: center;
}

#controls {
	text-align: center;
	margin: 1em auto;
}

#difficulty {
	text-align: center;
}

button {
	height: 3em;
	box-sizing: border-box;
	vertical-align: middle;
	text-align: center;
	padding: 0em 0.5em;
	margin: 0.2em;
	background-color: lightgray;
	border-radius: 0.25em;
	border: 1px solid darkgray;
	cursor: pointer;
}
button:hover {
	border-color: rgb(93, 93, 93);
}

#wall {
	min-height: 2em;
	/* border: 1px solid black; */
	/* white-space: pre;
	font-family: monospace; */
	text-align: center;
}

.cell::-webkit-outer-spin-button,  
.cell::-webkit-inner-spin-button {  
  -webkit-appearance: none;  
  margin: 0;  
} 

.cell {
	border: 1px solid black;
	min-width: 4em;
	width: 4em;
	height: 2em;
	box-sizing: border-box;
	display: inline-block;
	-moz-appearance: textfield;
	appearance: textfield;
	padding: 0;
	margin: 0;
	border-collapse: collapse;
	text-align: center;
	vertical-align: middle;
	line-height: 2em;
	font-size: inherit;
	border-radius: 0;
}
.cell.given {
	background-color: lightgray;
}

input.cell.right {
	background-color: lightgreen;
}

input.cell.wrong {
	background-color: lightpink;
}

input.cell.hint {
	background-color: lightblue;
}
input.cell:focus {
	position: relative;
	z-index: 2;
}

.overlay {
	position: fixed;
	background-color: rgba(0, 0, 0, 0.45);
	color: lightgray;
	font-weight: bold;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	text-align: center;
	vertical-align: middle;
	line-height: 100vh;
}

.row.inverse {
	margin-bottom: -0.55em;
}
.inverse .cell {
	border-radius: 100%;
	height: 4em;
	line-height: 4em;
}