/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
	color: #222;
}

html {
	font-size: 1em;
	line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
	background: #b3d4fc;
	text-shadow: none;
}

::selection {
	background: #b3d4fc;
	text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

audio,
canvas,
img,
video {
	vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
	resize: vertical;
}

/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */

.browsehappy {
	margin: 0.2em 0;
	background: #ccc;
	color: #000;
	padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/**** OPTIONS ****/
html body, nav input{color:#1B5EAC;font-family:Arial,Sans-serif;}
/***STANDARD CSS***/
/* default link style */
.inputtext{background-color:transparent;border:none;}
/*All things not to be shown*/
.hidden,.Empty,.empty{display: none;}
img{padding:0px;margin:0px;border:0px;}
/*Wait screen between pages (staging area)*/
.waiting{width:100%;padding-top:15%;text-align:center;font-size:120%;font-weight:bold;}
	
/***FRAMEWORK***//*	html body {margin:0;padding:0;background:#1B5EAC;height:100%;background:#1B5EAC url("../images/sides_body.gif") repeat-y center top;}	#votingpl{width:800px;margin:auto;height:100%;padding-top:6px;background:url("../images/top.gif") no-repeat center top;border-top:solid 3px #1B5EAC;padding-left:1px;}	#voting{margin:3px 3px 0px 1px;}*/

#votingpl{ /* Placement wrapper for voting*/width: 100%;	margin: auto;	height: 100%;	padding-top: 6px;}
#voting{ /* Main Body */margin:20px;}
.clear{clear:both;}

/***LOGO***/
.logopl{width:100%;margin:auto;}
.logo{text-align:center;}

/***TEXT STYLE***/
.header, .Header{font-size:25pt;margin-left:7px;text-align:center;}
.subheader, .SubHeader{font-size:200%;font-weight:bold;font-style:italic;margin-left:7px;text-align:center;}
.subsubheader, .SubSubHeader{font-size:190%;font-style:italic;margin-left:7px;text-align:center;}
.instr, .instruction, .Instruction{margin:1px auto 1px 20px;font-size:20pt; color:Navy;}
.space{color:#fff;margin:1px auto 1px auto;font-size:95%; clear:both;}
	/* Error response and alerts */	.warning, .Warning{font-size:20pt;color:red;font-weight:bold;margin-top:10px;margin-bottom:10px;text-align:center;}
	/* Datestamp and server */	.smallwarning, .SmallWarning{padding-top:5px;font-size:70%;color:#ccc;margin-bottom:20px;text-align:center;}
	.footer{padding-top:4px;font-size:19pt;width:100%;margin:auto;text-align:center;}
.overunderwarningbackcolor{ background-color: #FFFFCC;}
	
/***CREDENTIAL***/
/* Credential Wrapper */
.cred{padding-top: 10px;}
div.cred table{margin:auto;width:500px;}
div.cred table tr td{width:50%;}
/* Credential Name */
td.crnm{text-align:right;padding-right:10px; font-size:25pt;}
/* apply hand cursor to all labels */
label{cursor:pointer;cursor:hand;}
/* Credential Input */
td.crin{text-align:left;padding-left:10px;}
.crin input{font-size:25pt;}
/* Highlight Color for Credential Input */
.inputfocus{color: #fff;background-color: #6699CC;}
	
/***MENU***/
.ballotlinktrue{ text-align:center;}
.ballotlinktrue input{ /* Ballot Option (clickable) */	font-size: 120%;width: 600px;border: solid 2px red;margin:4px auto;padding: 10px;cursor: pointer;cursor: hand;color: Red;text-decoration: underline;font-weight: bold;background-color:#fff}
.ballotlinkfalse{ /* Completed Ballot (unclickable) */	font-size: 120%;width: 600px;border:dashed 1px #666;margin:4px auto;padding:10px 0px;font-weight: bold;background-color:#fff;color:#666; text-align:center;}

/***NAVIGATION***/
nav {margin: 20px 0p;}
nav ul{text-align: center; }
nav ul li{margin-left: -40px; padding: 0px;}
nav ul li.left{ float:left; width:300px; }
nav ul li.right{float:right; width:300px; }
nav input{background-repeat: no-repeat;background-color:Transparent;border:none;	font-size:240%;width:300px;height:70px;background-image:url(../../images/kbtn.gif);}
nav#H li{padding:20px;}

/***BALLOT5***/
.ballot5 .sectiontitle{font-size:210%;font-weight:bold;text-align:left;margin-left:7px;margin-top:5px;}
.ballot5 .instruction{margin:1px auto 1px 25px;font-size:105%;text-align:left;}
.ballot5 .header{margin:1px auto 1px 25px;font-size:180%;text-align:left;}
.ballot5 .subheader{margin:1px auto 1px 25px;font-size:200%;font-weight:bold;font-style:italic;text-align:left;}
.ballot5 .subsubheader{margin:1px auto 1px 25px;font-size:190%;font-style:italic;text-align:left;}


/***Candidate Table***/
.ballot5 .candidates{border:none;margin:0px auto 10px auto;width:100%;padding:0px;border:solid 1px #000; background-color:#fff; font-size:large;width:90%;}
.ballot5 .race span.warning{ display:block; clear:both;margin:0px; font-weight:normal;}
.ballot5 .race span.candlink{text-decoration: underline; cursor:pointer;font-size: large; width:100%;display:block;float:left;}

.ballot5 .race{font-size:18pt;padding-left:10px;background-color:#efefef; font-weight:bold;text-align:left}
.ballot5 .race .warning{text-align:left;}
.race .racetitle{color:#000;padding:0px 5px 0px 0px; /*float:left;display:block;clear:both;*/}
.ballot5 .raceinformation{font-size:small;display:block;padding:0px;margin:0px;clear:both;}
.ballot5 .racedetail{font-size:small;font-weight:bold;line-height:20px;}
.ballot5 .racedetailr{font-size:small;float:right;font-weight:bold;}
.ballot5 .sectiontitle{font-size:110%;font-weight:bold;text-align:left;margin-left:7px;margin-top:5px;}
.ballot5 .sectiondesc{margin:1px auto 3px 25px;font-size:95%;text-align:left;}
.ballot5 .RaceDesc, .ballot5 .racedesc{font-size: 13pt;text-transform:none;/*float:left;display:block;clear:both;*/ padding:3px 0px; font-weight:normal;}
.ballot5 .race span.warning{ display:block; clear:both;margin:0px; font-weight:normal;}

/***Checkbox***/
.ballot5 .cbox input{width:50px;height:50px;margin:0px;padding:0px;}
.ballot5 .cbox{float:left;margin:1px;height:50px;padding:0px;}
.ballot5 .cbox2 input{width:50px;height:50px;margin:0px;padding:0px;}
.ballot5 .cbox2{float:left;margin:1px;height:50px;padding:0px;}
.ballot5 .appselect {float:left;margin:1px;height:50px;padding:0px;}
.ballot5 .appselect 
	select {
		-webkit-appearance: none;
   border: 1px solid #555;
   padding: 0.2em;
   background: #fff;
   background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ccc));
   -webkit-appearance: none;
   -webkit-box-shadow: 1px 1px 1px #fff;
   -webkit-border-radius: 0.5em;
   width:50px;
   font-size:14pt;
 }
.ballot5 .appselect input{font-size:14pt;margin:0;padding:1px;}


/***Choice***/
.ballot5 .candidates td{margin:0px auto;color:#000;}
.ccol{width:50%;}
.ccol2{width:50%;}
.ballot5 label{ width:100%; height:100%; display:block;}
.ballot5 .candidate{text-align:left; padding-left:2px;  width:75%;font-size: 20pt;float:left;margin:auto;}
.ballot5 .vcandidate{text-align: left;font-weight: normal;width: 91%;float: right;line-height:50px;font-size: 18pt;}
.ballot5 .vcandidate span{font-weight: normal;width: 100%;display: block;font-size: small;}


/***ChoiceDetails***/
.choicedetails{margin:0px 0px 0px 25px;display:block;clear:both;padding:0px;}
.choicedetails table{width:100%;margin:0px;padding:0px;}
.choicedetails td{font-style:italic;padding:0px;margin:0px;font-size:80%}
.ballot5 .candidate input.writein, input.email{border:none;border-bottom: solid 1px #000;text-decoration: none;cursor: auto;
											   font-weight:normal;color: #000;width: 90%;background-color: #EFEFEF;margin-left: 0px;font-size: medium;font-size: 100%;margin-top:3px;}
.ballot5 span.writeinst{font-size:xx-small;position:relative;width:94%;line-height:normal;margin-left:0px;}

.sectiontitle{ display:none;}


/* ==========================================================================
   Special styles for Apportionment elections
   ========================================================================== */
.candidates input.apportion[type="checkbox"]{ display: none;
} 
.candidates input.apportion{ width: 60px;height: 40px;font-size: larger;} 
.candidates.validate input[type=text]{display: inline; width: 50px; text-align: center; border: none;color:#000;-webkit-text-fill-color:#000000;opacity:1;-webkit-opacity:1;} 
.candidate label {margin-left: 5px;font-size:80%}
.apportionwarning { color: red;}
span.apportion{font-size:80%;/*float:left;display:block;clear:both;*/text-align:left;font-weight:normal;}

.candidates{border: green 1px solid;}

/* ==========================================================================
   Special styles for IPad elections
   ========================================================================== */
.checkboximageon{background-image:url(../../images/on.png);background-repeat: no-repeat;background-position:center; width: 50px;}
.checkboximageoff{background-image:url(../../images/off.png);background-repeat: no-repeat;background-position:center; width: 50px;}
/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
	background-color: transparent;
	border: 0;
	overflow: hidden;
	/* IE 6/7 fallback */
	*text-indent: -9999px;
}

.ir:before {
	content: "";
	display: block;
	width: 0;
	height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
	display: none !important;
	visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
	visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
	content: " "; /* 1 */
	display: table; /* 2 */
}

.clearfix:after {
	clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
	*zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
	/* Style adjustments for viewports that meet the condition */
}

@media print,
	   (-o-min-device-pixel-ratio: 5/4),
	   (-webkit-min-device-pixel-ratio: 1.25),
	   (min-resolution: 120dpi) {
	/* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
	* {
		background: transparent !important;
		color: #000 !important; /* Black prints faster: h5bp.com/s */
		box-shadow: none !important;
		text-shadow: none !important;
	}

	a,
	a:visited {
		text-decoration: underline;
	}

	a[href]:after {
		content: " (" attr(href) ")";
	}

	abbr[title]:after {
		content: " (" attr(title) ")";
	}

	/*
	 * Don't show links for images, or javascript/internal links
	 */

	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content: "";
	}

	pre,
	blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}

	thead {
		display: table-header-group; /* h5bp.com/t */
	}

	tr,
	img {
		page-break-inside: avoid;
	}

	img {
		max-width: 100% !important;
	}

	@page {
		margin: 0.5cm;
	}

	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}

	h2,
	h3 {
		page-break-after: avoid;
	}
}
