/***** GENERAL SETTINGS *****/
html {
	position: relative;
	min-height: 100%;
}

body {
	/**background-color: #EEE;	**/
	/**background-color: #E5E5E5;	**/
	background-color: white;
	color: #252f6a;
	font-family: DM Sans, Arial, Helvetica, sans-serif;
	letter-spacing: 0.05rem;
	font-size: 16px;
	/* Margin bottom by footer height */
	margin-bottom: 130px;
}

header {
	background-color: white;
	/**background-color: #E5E5E5;**/
	/**border-radius: 8px;**/
	/**margin-top: 20px;**/
	padding-top: 2%;
	padding-bottom: 2%;
	font-size: 16px;
}

main {
	background-color: white;
	border-radius: 8px;
	margin-top: 20px;
	padding-top: 2%;
	padding-bottom: 2%;
	font-size: 16px;
}

footer {
	/**background-color: white;**/
	/**background-color: #ffffff00; **/
	/**background-color: #E5E5E5;**/
	background-color: #E5F6FF66;
	/**border-radius: 8px;**/
	margin-top: 20px;
	/**margin-bottom: 20px;**/
	padding-top: 2%;
	padding-bottom: 2%;
	position: absolute;
	bottom: 0;
	width: 100%;
}

.electiontitle {
	display: none;
}

.electionmargin {
	margin-bottom:15px;margin-top:15px;>
}
.eecontainer {
	/**background-color: white;**/
	/**min-height: 70vh;**/
	visibility: hidden;
}

/**
.voting {
	border: 1px solid #E5F6FF66;
	border-radius: 8px;
	box-shadow: 0px 4px 12px rgba(26, 55, 71, 0.16);
}**/

.hidden, .Empty, .empty, .SmallInstruction, .sectiontitle, .switch {
	display: none;
}

.waiting {
	text-align: center;
}

.space {
	visibility: hidden;
}

.navigation {
	margin-bottom: 15px;
}

.navigation + .logo {
	margin-top: 15px;
}

.btn {
	text-transform: uppercase;
}

.lbutton {
	margin-top: 10px;
	margin-bottom: 10px;
}

.rbutton {
	margin-top: 10px;
	margin-bottom: 10px;
}

.cbutton {
	margin-top: 10px;
	margin-bottom: 10px;
}

/***** TEXT DESCRIPTIONS *****/

.bold {
	font-weight: bold;
}

.strike {
	text-decoration: line-through;
}

.header, .Header, .subheader, .SubHeader {
	text-align: center;
}

.subsubheader, .SubSubHeader, .instruction, .Instruction, .footer, .warning, .Warning, .success, .Success,
.eecopyright, .information, .Information {
	text-align: center;
}

.header, .Header {
	font-size: 160%;
	font-weight: bold;
}

.Header, .Instruction {
	margin-bottom: 20px;
}

.subheader, .SubHeader {
	font-size: 130%;
	font-style: italic;
	font-weight: bold;
}

.subheader2 {
	text-align: left;
	padding-bottom: 15px;
	padding-top: 15px;
	margin-bottom: 15px;
	margin-top: 15px;
	color: #000;
	text-decoration: underline;
	font-style: normal;
}

.subsubheader, .SubSubHeader {
	font-size: 120%;
	font-weight: bold
}

.instruction, .Instruction {
	font-size: 120%;
	font-style: normal;
}

.footer {
	font-size: 100%;
	font-style: italic;
	margin-top: 15px;
}

.footer + .footer {
	margin-top: 5px;
}

.eecopyright {
	color: #000;
	font-size: 90%
}

.warning, .Warning {
	/**color: red;**/
	color: #D74120;
	font-size: 120%;
	font-weight: bold;
	padding: 10px;
}

.success, .Success {
	/**color: red;**/
	color: green;
	font-size: 120%;
	font-weight: bold;
}

.information, .Information {
	color: green;
	font-size: 100%;
	font-weight: bold;
}

.votingInstruction {
	font-size: 110%;
	font-style: normal;
	font-weight: bold;
	margin-top: 10px;
}

.voted {
	font-size: 120%;
	font-style: normal;
	margin-top: 10px;
	margin-bottom: 10px;
	margin-right: 10px;
	padding: 5px 0px 0px 0px;
	overflow-wrap: break-word;
}

/***** LOGIN PAGE *****/

.btn-primary {
	color: #fff;
	/**background-color: #252f6a !important;**/
	/**border-color: #252f6a !important;**/
	font-size: 110%;
	/**outline: none !important;**/
	border-radius: 8px;
	background: #50b8b9;
	border-color: #50b8b9;
}

.btn-primary:focus, .btn-primary:hover, .btn-primary:active {
	color: #fff;
	/**background-color: #252f6a !important;**/
	/**border-color: #252f6a !important;**/
	font-size: 110%;
	/**outline: none !important;**/
	/*outline: 2px solid #0A76CA;*/
	outline-offset: 8px;
	border-radius: 8px;
	background: #50b8b9;
	border-color: #50b8b9;
	/**margin: 80px 120px 80px 120px;
border: 2px solid #0A76CA;**/
}

.btn-secondary{
	/**color: #fff;**/
	color: #50b8b9;
	background: white;
	/**background-color: #252f6a !important;**/
	/**border-color: #252f6a !important;**/
	font-size: 100%;
	/**outline: none !important;**/
	border-radius: 8px;
	/**background: #0879D1;**/
}

.btn-secondary:focus, .btn-secondary:hover, .btn-secondary:active {
	/**color: #fff;**/
	color: #50b8b9;
	background: white;
	/**background-color: #252f6a !important;**/
	/**border-color: #252f6a !important;**/
	font-size: 100%;
	/**outline: none !important;**/
	/**outline: 2px solid #50b8b9;**/
	outline-offset: 4px;
	border-radius: 8px;
	/**background: #0879D1;**/
	/**margin: 8px 12px 8px 12px;
border: 2px solid #0A76CA;**/
}

.credinput:focus {
	background-color: #F6F6F6;
	border-color: rgba(37, 47, 106, 0.8) !important;
	box-shadow: 0 1px 1px rgba(80,184,185, 0.075) inset, 0 0 8px rgba(80,184,185, 0.6) !important;
	color: #000;
	outline: 0 none !important;
}

.hiddencred {
	display: none;
}

.languages {
	text-align: center;
	margin-bottom: 5px;
}

/***** MENU PAGE *****/

.btn-danger {
	background-color: #DD0000;
}

.btn-danger:hover {
	background-color: #EE0000;
}

.ballotlinktrue, .ballotlinkfalse {
	margin-bottom: 20px;
}

.ballotlinktrue input, .ballotlinkfalse input {
	font-size: 110%;
	font-weight: bold;
	letter-spacing: 0.2rem;
	white-space: normal;
}



/***** BALLOT PAGE GENERAL SETTINGS *****/

.candidates {
	margin-bottom: 15px;
}

input[type=checkbox] {
	transform: scale(1.4);
}

/***** BALLOT PAGE FPP SETTINGS *****/

/**.candidatesfpp {
	margin-bottom: 15px;
	margin-left: auto;
	margin-right: auto;
	width: 99%;
}

.racetitle {
	background-color: #EEE;
	border: 1px solid #CCC;
	border-bottom: 0px;
	color: #000;
	font-size: 120%;
	font-weight: bold;
	margin-top: 10px;
	padding-left: 7px;
}**/

.candidatesfpp {
	margin-bottom: 15px;
	margin-left: 0px;
	margin-right: 0px;
	width: 100%;
}

.racetitle {
	/**margin-bottom: 15px;**/
	color: #000;
	background: #F8F9FB;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	font-size: 120%;
	font-weight: bold;
	padding: 10px;
}

.RaceDesc {
	margin-bottom: 15px;
	/**background-color: #EEE;
	border: 1px solid #CCC;
	border-top: 0px;
	color: #000;**/
	font-size: 100%;
	font-style: normal;
	text-align: justify;
	padding-left: 10px;
	padding-right: 10px;
}

/**.count-checkboxes-wrapper {
	background-color: #EEE;
	border: 1px solid #CCC;
	border-top: 0px;
	color: green;
	font-size: 100%;
	font-style: italic;
	padding-right: 10px;
}**/
.count-checkboxes-wrapper {
	color: #50b8b9;
	font-size: 100%;
	font-style: italic;
	padding-right: 10px;
}
.count-checkescbox {
	color: #50b8b9;
	font-size: 100%;
	font-style: italic;
}

.cell {
	background-color: #FFF;
	/**border: 1px solid #CCC;**/
	border: 1px solid white;
	padding-bottom: 5px;
	padding-top: 5px;
}

.cell a {
	text-decoration: underline;
}



.cell label, .cell a {
	color: #000;
	font-size: 115%;
	font-weight: normal;
	margin-left: 10px;
}


.racetitle ~ .RaceDesc, .RaceDesc + .count-checkboxes-wrapper, .RaceDesc ~ .cell, .v_warning + .vcandidate {
	border-top-width: 0px;
}

.v_warning {
	border: 1px solid #CCC;
	color: red;
	font-size: 115%;
	padding: 5px;
}

/***** BALLOT PAGE CSE TYPE SETTINGS *****/


.raceimg img {
	vertical-align: top;
}

.racename {
	/**color: red;**/
	color: #353866;
	font-size: 140%;
	font-weight: bold;
	margin-left: 5px;
	text-align: left;
}

.pdffile {
	/**color: red;**/
	color: #0879D1;
}

.racebio {
	font-size: 100%;
	font-style: italic;
	font-weight: normal;
	margin-left: 5px;
	text-align: left;
}

.fullslate {
	color: #222;
	margin-top: 2px;
	margin-bottom: 2px;
}

.full label {
	font-size: 120%;
	/**text-decoration: underline;**/
}

.cse {
	background-color: white;
}

.csefullcbox, .csecbox {
	margin-left: 7px;
	margin-right: 10px;
}

.csecandidate label {
	/**font-weight: bold;**/
	font-weight: normal;
	font-size: 100%;
	color: #222;
}

.csecandidate .strike {
	/**font-weight: bold;**/
	color: #99A6AD;
}

.whitecsecandidates {
}

.csecandidates {
	/**
	border:1px #AAA solid;	
	margin-left: 1px;
	margin-right: 1px;
	padding: 5px 0px 0px 0px;**/
}

.csecandidates:nth-child(2n) {
	clear: left;
}

/***** EXPAND MODE *****/
/*
.csecbox {
	visibility:hidden;
}
*/

/***** BALLOT PAGE CSE TYPE RACE BORDER *****/

.border_top {
	border-top: 1px #AAA solid;
	border-radius: 8px;
}

.border_bottom {
	border-bottom: 1px #AAA solid;
	border-radius: 8px;
}

.sideborder {
	border-left: 1px #AAA solid;
	border-right: 1px #AAA solid;
	border-radius: 8px;
}

/**
.electionevent {
	border: 2px solid #AAA;
	border-radius: 8px;
	margin-left: 1px;
	margin-right: 1px;
	padding: 5px 0px 0px 0px;
	
	background-color: white;
}**/

/**.newFooter {
	border-radius: 8px;
	margin-left: 1px;
	margin-right: 1px;
	padding: 5px 0px 0px 0px;
}**/


.innerborderedpadding {
	border: 2px solid #AAA;
	border-radius: 8px;
	margin-left: 1px;
	margin-right: 1px;
	padding: 5px 0px 0px 0px;
}

.innerborderedpadding:hover, .innerborderedpadding:active, .innerborderedpadding:focus {
	border: 2px solid #0879D1;
}

.innerpadding {
	margin-left: 1px;
	margin-right: 1px;
	padding: 5px 0px 0px 0px;
}

.innerpadding + .innerpadding {
	padding-top: 0px
}

.separator_top {
	border-top: 3px #0879D1 solid;
	/**border-top: 3px #000 solid;**/
}

/***** PERSONAL PAGE *****/

.extraDocuments {
	font-size: 120%;
	margin-bottom: 20px;
	text-decoration: underline;
}

.personalpagecsecandidates:nth-child(2n+1) {
	clear: left;
}

/***** VALIDATION PAGE *****/

.vrace {
	color: black;
	font-size: 140%;
	font-weight: bold;
	margin-bottom: 10px;
}

.vchoices {
	margin-top: 10px;
	margin-bottom: 10px;
}

.vcandidate {
	color: black;
	font-size: 120%;
	padding: 10px;
}

.personalpagechoice {
	color: black;
	font-size: 90%;
	font-weight: normal;
}

.cellnospace {
	cellspacing: "0";
}

.qrcanvas {
	margin: 10px auto;
	display: flex;
	justify-content: center;
	width: 300px;
	height: 300px;
}

@media print {
	#btnHeader {
		display: none;
	}
	#btnButton {
		display: none;
	}	
	#instruction {
		display: none;
	}
	#defaultText {
		display: none;
	}
	body {
		display: table;
		table-layout: fixed;
		padding-top: 0cm;
		padding-bottom: 0cm;
		height: auto;
		width: 100%;
	}	

	#footer {
		position: absolute;
		bottom: 0;
		width: 100%;
		height: 60px;
		page-break-after: always;
	}
}

/***** THANKYOU PAGE *****/

#copyToClipboardDiv{
	width: 100%;
}

textarea {
	resize: none;
	border: 0px;
	width: 100%;
	color: #252f6a;
}

#copyToClipboard{
	vertical-align: top;
	text-align: center;
}


.vcandidates {
	/* Validation pg, Race section */
	margin-left: auto;
	margin-right: auto;
	margin-top: 5px;
	margin-bottom: 10px;
	font-size: 90%;
	color: #000;
	width: 90%;
	font-weight: normal;
	border: solid 1px #0879D1;
	border-radius: 8px;
}
/* Page de fin 
.voted{
	display: none;
}*/
.qrcanvas{
	display: none;
}
#copyToClipboard {
    display: none;
}

.vcandidate {
    font-size: 105%;
}

.voted:nth-last-child(3), 
.voted:nth-last-child(4),
.voted:nth-last-child(5):not(:nth-child(5)), 
.voted:nth-last-child(6):not(:nth-child(4)),
.voted:nth-last-child(7),
.voted:nth-last-child(8){
	display: none;
}



.qrcanvas{
	display: none;
}
#copyToClipboard {
    display: none;
}

.vcandidate {
    font-size: 105%;
}

.voted:nth-last-child(3), 
.voted:nth-last-child(4),
.voted:nth-last-child(5):not(:nth-child(5)), 
.voted:nth-last-child(6):not(:nth-child(4)),
.voted:nth-last-child(7),
.voted:nth-last-child(8){
	display: none;
}