body { 
	margin: 0; 
	padding: 0; 
	font-family: 'Open Sans', sans-serif;
}
#detail {
	background: #F5F5F5;
	/*position: absolute;*/
	z-index: 1;
	border-radius: 3px;
	border: 1px solid rgba(0, 0, 0, 0.4);
	padding:8px;
	min-width:300px;
}
#menu-year {
	background:transparent;
	position: absolute;
	z-index: 1;
	border: none;
}
#menu-office {
	background:transparent;
	position: absolute;
	z-index: 1;
	border: none;
}
#menu-districts {
	background:transparent;
	position: absolute;
	z-index: 1;
	width: 95%;
	border: none;
}
#search-container {
	background:transparent;
	position: absolute;
	z-index: 1;
	border: none;
}
#search-input {
	width:180px;
	margin-right:10px;
	margin-top:2px;
	line-height: 24px;
}
#menu-statewide {
	max-width:110px !important;
	background:transparent;
	position: absolute;
	z-index: 1;
	border-radius: 3px;
	border: none;
}
@media screen and (min-width: 601px) {
	#map { 
		position: absolute; 
		top: 150px; 
		bottom: 0; 
		width: 100%; 
		max-height:420px; 
	}
	#detail {
		margin-top: 570px;
		margin-left: auto;
		margin-right: auto;
	        min-width:480px;
		max-width:601px;
	}
	#menu-year {
		top: 46px;
		right: 10px;
		width: 50px;
	}
	#menu-office {
		top: 46px;
		right: 70px;
		width: 50px;
	}
	#menu-districts {
		top: 10px;
		left: 10px;
		border-radius: 3px;
		width: 95%;
	}
	#search-container {
		top: 10px;
		right: 120px;
	}
	#search-input {
		width:180px;
		margin-right:10px;
		margin-top:2px;
	}
	#menu-statewide {
		position: absolute; 
		top: 10px; 
		right:10px;
		width:140px !important; 
	}
}
@media screen and (max-width: 600px) {
	#map { position: absolute; top: 150px; bottom: 0; width: 100%; height:240px;}
	#detail {
		margin-top: 390px !important;
		left: 0px !important;
		width: calc(100vw - 18px) !important;
		max-width:600px !important;
		padding:8px;
	}
	#menu-year {
		top: 10px;
		right: 10px;
		width: 50px;
	}
	#menu-office {
		top: 10px;
		right: 70px;
		width: 50px;
	}
	#menu-districts {
		top: 10px;
		left: 10px;
		border-radius: 3px;
		width: 220px;
	}
	#search-container {
		top: 85px;
		left: 10px;
	}
	#search-input {
		width:180px;
		margin-right:10px;
		margin-top:2px;
	}
	#menu-statewide {
		position: absolute; 
		top: 46px; 
		left:10px;
		width:100px !important; 
	}
}
#menu-districts button {
	max-width:100px;
}
button {
	background-color: rgba(25,55,98,1);
	border-radius: 3px;
	border: 1px solid rgba(0, 0, 0, 0.4);
	color: white;
	padding: 5px 5px;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	font-size: 16px;
	margin: 2px 0px;
	cursor: pointer;
	width: 100%;
}
.button-selected {
	background-color: rgba(139,198,227,1);
	border-radius: 3px;
	border: 1px solid rgba(0, 0, 0, 0.4);
	color: white;
	padding: 5px 5px;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	font-size: 16px;
	margin: 2px 0px;
	cursor: pointer;
	width: 100%;
}
#detail-title {
	color:black;
	margin: 5px 5px;
	font-size: 24px;
}
#detail-year {
	color:rgba(25,55,98,1);
	font-size: 24px;
}
#detail-office {
	color:rgba(25,55,98,1);
	font-size: 24px;
}
.results-table {
	color:#666;
    width:100%;
    border-collapse: collapse;
    margin-top:10px;
}
.results-header {
	color:#666;
    width:100%;
    border-bottom: 3px solid #111111;
}
.results-election {
	border-bottom: 3px solid #111111;
}
.results-candidate-row {
	border-bottom: 2px solid #e5e7eb;
}
.results-name {
  	padding:10px 0px 10px 0px;
}
.results-percent {
	font-weight:700;
}
.results-votes {
	text-align:right;
}
.results-percent {
	text-align:right;
}
.results-header-votes {
	text-align:right;
}
.results-header-percent {
	text-align:right;
}
.results-name-blue {
	background-color:rgba(25,55,98,1);
	color:white;
}
.results-name-red {
	background-color:#d71f27;
	color:white;
}
