body{
	font-family: Helvetica, "Times New Roman", Times, serif;
	padding: 0em;
	margin: 0;
	font-size: 100%;
	background-color: #fefefe;
	letter-spacing: 0.03em;
	word-spacing: 0.03em;
	background-color: #d9b382;
}

p{
	max-width: 600px;
	margin-top: 0.6px;
	margin-bottom: 0.6px;
}

button{
	font-weight: bold;
	padding: 0.4em;
	margin-right: 0.6em;
	letter-spacing: 0.08em;
}

label{
	font-weight: bold;
	font-size: 0.9em;
}

table{
	border-collapse: collapse;
	background-color: #fff;
	margin: 0em;
}

table td{
	padding: 0.1em;
}

main{
	text-align: center;
	margin: 0.4em;
}

fieldset{
	padding-top: 0.6em;
	padding-bottom: 1em;
}

#mainContent{
	background-color: #f5f5dc;
	margin: 0em;
	display: inline-block;
	padding: 4em;
	padding-bottom: 2em;
	padding-top: 1em;
	border: 1px solid #000;
	width: 600px;
}

#difficultySelectDropdown{
	padding: 0.31em;
	padding-bottom: 0.32em;
	font-size: 1em;
}

#about{
	margin-right: 0em;
	
}

.offScreenContent {
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
	z-index: 100;
}

.userMessagesDiv{
	border: 1px solid #000;
	height: 9em;
	width: auto;
	margin-top: 1em;
	padding: 1em;
	padding-top: 0.6em;
	padding-bottom: 0.6em;
	overflow-x: hidden;
	overflow-y: auto;
	background-color: #fff;
	font-size: 0.9em;
	text-align: left;
}

.userMessages{
	display: inline;
}



/** Input Fields Classes  **/
.inputField{
	padding: 0.2em;
	padding-left: 0.4em;
	padding-right: 0.4em;
	margin: 0px;
	width: 35%;
	height: 35%;
	border: 4px solid transparent;
	font-weight: bold;
	font-size: 2.0em;
	background-color: transparent;
	border-radius: 4px;
	text-align: center;
	color: #222;
}

.inputField:focus{
	border: 4px solid #000;
}

.inputFieldHighContrast{
	padding: 0.2em;
	padding-left: 0.4em;
	padding-right: 0.4em;
	margin: 0px;
	width: 35%;
	height: 35%;
	border: 4px solid transparent;
	font-weight: bold;
	font-size: 2.0em;
	background-color: transparent;
	border-radius: 4px;
	text-align: center;
	color: #fff;
}

.inputFieldHighContrast:focus{
	border: 4px solid #fff;
}

.inputFieldHighlight{
	padding: 0.2em;
	padding-left: 0.4em;
	padding-right: 0.4em;
	margin: 0px;
	width: 35%;
	height: 35%;
	border: 4px dashed #ff0000;
	font-weight: bold;
	font-size: 2.0em;
	background-color: transparent;
	border-radius: 4px;
	text-align: center;
	color: #222;
}

.inputFieldHighContrastHighlight{
	padding: 0.2em;
	padding-left: 0.4em;
	padding-right: 0.4em;
	margin: 0px;
	width: 35%;
	height: 35%;
	border: 4px dashed #ff0000;
	font-weight: bold;
	font-size: 2.0em;
	background-color: transparent;
	border-radius: 4px;
	text-align: center;
	color: #fff;
}


/** TABLE STYLES **/
.sudokuNumberCell{
	border: 1px solid #777;
	line-height: 48px;
    text-align: center;
}

.sudokuNumberCellBorderRight{
	border-right: 4px solid #777;
}

.sudokuNumberCellBorderBottom{
	border-bottom: 4px solid #777;
}

.sudokuNumberCellBorderRightBottom{
	border-right: 4px solid #777;
	border-bottom: 4px solid #777;
}



/** High Contrast Classes  **/
.tableHighContrast{
	background-color: #000;
	color: #fff;
}

.sudokuNumberCellHighContrast{
	border: 1px solid #999;
	text-align: center;
}

.sudokuNumberCellBorderRightHighContrast{
	border-right: 4px solid #999;
}

.sudokuNumberCellBorderBottomHighContrast{
	border-bottom: 4px solid #999;
}

.sudokuNumberCellBorderRightBottomHighContrast{
	border-right: 4px solid #999;
	border-bottom: 4px solid #999;
}



/**  Highlight Classes  **/
.highlightSquare{
	border: 4px solid #00AD00;
}

.highlightSquareHighContrast{
	border: 4px solid #00AD00;
	background-color: #000;
	color: #fff;
}

.highlightSquareHighContrast:focus{
	border: 4px solid #fff;
	background-color: transparent;
	color: #fff;
}
