﻿@media print {
	.review_buttons {
		display: none;
	}
	#review_header, #review_table, #review_intro {
		color: black !important;
	}
}

/*=== Mobile defines ==========================================================================*/
/* Responsive table. */
.rrow, .rcell { width: 100%; flex-shrink: 1; }
.rcontents { padding: 0 10px 5px 0; }
.rcontents input { width: 100%; }
.rrow.column { flex-direction: column }

@media only screen and (max-width: 500px) {
	.rrow, .rcell { display: inline; }
	.group { display: block; }
	.groupHeader { display: none; }
	.groupQHeader { display: block !important; }
	.rankTable .rcell { display: block; }
}
@media only screen and (min-width: 501px) {
	.rrow { display: flex; -ms-flex-negative: 1; flex-shrink: 1; }
	.rcell { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
}

/*=== Default stylings ========================================================================*/

body { margin: 20px; }

span.separator { font-size: 18pt; }
hr.separator { font-size: 24pt; }

.errorMessage {
	color: red;
	font-weight: bold;
}

p, .form-qtext { display: block; margin: 0; }
font { display: block; }

input[type="text"], select, textarea {
	border: 1px solid darkgray;
}
input[type="submit"], button[type="submit"] {
	white-space: normal;
	-webkit-appearance: none;
}

input, select, textarea {
	background-color: white;
}
	input[type="text"]:focus, select:focus, textarea:focus {
		background-color: lightyellow;
	}
	input[type="radio"], input[type="checkbox"] {
		background-color: transparent;
	}

select, option {
	color: black;
}
select {
	max-width: 100%;
}
	select.placeholder {
		color: gray;
	}

.checkboxTable td, .radioTable td {
	vertical-align: top;
}

.rankNum {
	width: 30px;
	margin-right: 5px;
	text-align: center;
}

.inputError {
	border-color: red !important;
}

.file_attachment .fileName { margin-left: 5px; }
.file_attachment .fileLabel {
	display: none;
}
	.file_attachment.is-dragover .fileLabel {
		padding: 5px;
		border: 1px dashed black;
	}

.m-signature-pad--body canvas {
	background: white;
	left: 0;
	top: 0;
	width: 700px;
	height: 300px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	-moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.02) inset;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.02) inset;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.02) inset;
	border: 1px solid black;
}

.locationTable, .mapTextbox {
	width: 100%;
}

.map-setCurrent {
	filter: drop-shadow(0 3px 0 rgba(0,0,0,.3));
}
	.map-setCurrent:hover {
		filter: drop-shadow(0 3px 0 rgba(0,0,0,.4)) contrast(2);
	}
	.map-setCurrent:active {
		vertical-align: -2px;
		filter: contrast(.6);
	}

.map-setCurrent.darkBg {
	filter: drop-shadow(0 3px 0 rgba(0,0,0,.2)) invert(.8);
}
	.map-setCurrent.darkBg:hover {
		filter: drop-shadow(0 3px 0 rgba(0,0,0,.3)) invert(1);
	}
	.map-setCurrent.darkBg:active {
		vertical-align: -2px;
		filter: invert(.5);
	}

#breadcrumbs {
	margin-bottom: 10px;
}
	#breadcrumbs div {
		display: inline-block;
	}
	#breadcrumbs div + div:before {
		content: "-";
		padding: 0 8px;
		color: black;
	}
	#breadcrumbs > div div {
		margin: 0 3px 5px;
		padding: 2px 6px;
		background-color: white;
		border: 1px solid gray;
		border-radius: 3px;
		box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
	}
		#breadcrumbs > div div.unreached {
			opacity: 0.5;
			background-color: #DDD;
			cursor: not-allowed;
		}
		#breadcrumbs > div div.selected {
			font-weight: bold;
			background-color: #EEE;
		}
		#breadcrumbs > div div.reached:hover {
			background-color: #DDD;
			cursor: pointer;
		}
		#breadcrumbs > div div.reached:active {
			background-color: #BBB;
			box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.3);
		}


/*=== Theme A - Modern ========================================================================*/

/*.modern .form-qtext, .modern font { font-weight: bold; }*/
.modern .breakText { margin-bottom: 5px; }

.modern select,
.modern textarea,
.modern input,
.modern .radiocheck,
.modern .fileUpload {
	-moz-box-shadow: rgba(0, 0, 0, 0.25) 0px 1px 1px 0px,rgba(0, 0, 0, 0.25) 0 1px 1px inset;
	-webkit-box-shadow: rgba(0, 0, 0, 0.25) 0px 1px 1px 0px,rgba(0, 0, 0, 0.25) 0 1px 1px inset;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 1px 1px 0px,rgba(0, 0, 0, 0.25) 0 1px 1px inset;
}
	.modern input:focus {
		outline: none;
	}
	.modern input:disabled {
		opacity: 0.8;
	}

/* selects, textareas */
.modern select { padding: 7px 8px; cursor: pointer; }
.modern textarea { padding: 7px 12px; }
.modern input[type="text"] { padding: 8px 12px; }

.modern select,
.modern textarea,
.modern input[type="text"] {
	margin-top: 3px;
	font-size: 14px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	-moz-transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
	-o-transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
	-webkit-transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
	transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
}
	.modern select:focus,
	.modern textarea:focus,
	.modern button:focus,
	.modern input[type="text"]:focus,
	.modern input[type="submit"]:focus,
	.modern input[type="checkbox"]:focus + .radiocheck,
	.modern input[type="radio"]:focus + .radiocheck,
	.modern input[type="file"]:focus + .fileUpload {
		outline: none;
		border-color: #4d90fe !important;
		-moz-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 1px inset, #4d90fe 0 0 5px 1px;
		-webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 1px inset, #4d90fe 0 0 5px 1px;
		box-shadow: rgba(0, 0, 0, 0.25) 0 1px 1px inset, #4d90fe 0 0 5px 1px;
		background-color: white;
	}

	.modern select, .modern input[type="text"]:not([size]) { width: 100%; }

	.modern .contact select,
	.modern .contact input[type="text"] {
		margin-top: 0;
	}

/* checkboxes, radio buttons */
.modern input[type="checkbox"],
.modern input[type="radio"] {
	height: 0;
	position: absolute;
	z-index: -1;
	opacity: 0;
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
}

.modern .checkboxTable td,
.modern .radioTable td {
	padding: 5px 10px 0px 5px;
}

.modern .radiocheck + label {
	vertical-align: -1px;
}

.modern .radiocheck {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 5px 0 0;
	vertical-align: middle;
	background-color: white;
	border: 1px solid gray;
	cursor: pointer;
}
	.modern input[type="checkbox"]:hover + .radiocheck,
	.modern input[type="radio"]:hover + .radiocheck {
		background-color: #e4e4e4;
	}
	.modern input[type="checkbox"]:active + .radiocheck,
	.modern input[type="radio"]:active + .radiocheck {
		background-color: #ccc;
	}

.modern input[type="checkbox"] + .radiocheck {
	-moz-border-radius: .0875em;
	-webkit-border-radius: .0875em;
	border-radius: .0875em;
}
	.modern input[type="checkbox"]:checked + .radiocheck {
		background-image: url(../images/icons/check-black.png);
		background-position: center center;
		background-repeat: no-repeat;
	}

.modern input[type="radio"] + .radiocheck {
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}
	.modern input[type="radio"]:checked + .radiocheck {
		background-image: url(../images/icons/circle-black.png);
		background-position: center center;
		background-repeat: no-repeat;
	}

/* Rankings */
.modern .rankTable input.rankNum {
	width: 30px;
	padding: 2px 0;
	vertical-align: -2px;
}
.modern .rankNum + span {
	vertical-align: middle;
}

/* buttons */
.modern input[name^="GroupRemove"] { margin: 8px 5px 20px 0; }
.modern .fileUpload { margin-left: 5px; }

.modern .addt_contact_entry:not(:first-of-type),
.modern .udf.side .groupRow:not(:first-of-type) > .groupItem {
	margin-top: 15px;
}
@media only screen and (max-width: 500px) {
	.modern .udf.over .groupRow:not(:nth-child(2)) .rcell:first-child .rcontents { margin-top: 15px; }
}

.modern .file_attachment .fileLabel {
	display: block;
}
.modern input[type="file"] { /* hide the actual file input */
	width: 0 !important;
	line-height: 0;
	z-index: -1;
	opacity: 0;
	position: absolute;
}

.modern button,
.modern input[type="button"],
.modern input[name^="GroupRemove"],
.modern input[name^="remove"],
.modern input[name^="add"],
.modern .fileUpload {
	padding: 3px 10px;
	background-color: white;
	border: 1px solid darkgray;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	font-family: Arial, sans-serif;
	font-size: 0.85em;
	margin: 5px 5px 3px 0;
	cursor: pointer;
}
	.modern input:disabled,
	.modern button:hover,
	.modern input[type="button"]:hover,
	.modern input[name^="GroupRemove"]:hover,
	.modern input[name^="remove"]:hover,
	.modern input[name^="add"]:hover,
	.modern input[type="file"]:hover + label .fileUpload,
	.modern .file_attachment.is-dragover .fileUpload {
		background-color: #e4e4e4;
	}
	.modern button:active,
	.modern input[type="button"]:active,
	.modern input[name^="GroupRemove"]:active,
	.modern input[name^="remove"]:active,
	.modern input[name^="add"]:active,
	.modern input[type="file"]:active + .fileUpload {
		background-color: #ccc;
	}
	.modern .fileLabel {
		padding-top: 5px;
	}

/* submit */
.modern .submitButton {
	padding: 8px 15px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	border-width: 0;
	color: white;
	text-shadow: rgba(0, 0, 0, 0.8) 1px 1px 2px;
	-moz-box-shadow: inset 0 -1px rgba(0, 0, 0, 0.4);
	-webkit-box-shadow: inset 0 -1px rgba(0, 0, 0, 0.4);
	box-shadow: inset 0 -1px rgba(0, 0, 0, 0.4);
}
	.modern .submitButton:hover {
		-moz-box-shadow: inset 0 -1px rgba(0, 0, 0, 0.5), inset 0 0 0 50px rgba(0, 0, 0, 0.15);
		-webkit-box-shadow: inset 0 -1px rgba(0, 0, 0, 0.5), inset 0 0 0 50px rgba(0, 0, 0, 0.15);
		box-shadow: inset 0 -1px rgba(0, 0, 0, 0.5), inset 0 0 0 50px rgba(0, 0, 0, 0.15);
	}
	.modern .submitButton:active {
		-moz-box-shadow: inset 0 1px rgba(0, 0, 0, 0.5), inset 0 0 0 50px rgba(0, 0, 0, 0.3);
		-webkit-box-shadow: inset 0 1px rgba(0, 0, 0, 0.5), inset 0 0 0 50px rgba(0, 0, 0, 0.3);
		box-shadow: inset 0 1px rgba(0, 0, 0, 0.5), inset 0 0 0 50px rgba(0, 0, 0, 0.3);
	}

.modern .submitButton.lightBg {
	color: black;
	text-shadow: rgba(0, 0, 0, 0.2) 1px 1px 1px;
	border: 1px solid gray;
	border: 1px solid rgba(0, 0, 0, 0.4);
}
.modern .submitButton.darkBg {
	border: 1px solid gray;
	-moz-box-shadow: inset 0 -1px rgba(128, 128, 128, 0.4);
	-webkit-box-shadow: inset 0 -1px rgba(128, 128, 128, 0.4);
	box-shadow: inset 0 -1px rgba(128, 128, 128, 0.4);
}
	.modern .submitButton.darkBg:hover {
		-moz-box-shadow: inset 0 -1px rgba(128, 128, 128,0.5), inset 0 0 0 50px rgba(128, 128, 128, 0.2);
		-webkit-box-shadow: inset 0 -1px rgba(128, 128, 128,0.5), inset 0 0 0 50px rgba(128, 128, 128, 0.2);
		box-shadow: inset 0 -1px rgba(128, 128, 128,0.5), inset 0 0 0 50px rgba(128, 128, 128, 0.2);
	}
	.modern .submitButton.darkBg:active {
		-moz-box-shadow: inset 0 1px rgba(128, 128, 128,0.6), inset 0 0 0 50px rgba(128, 128, 128, 0.35);
		-webkit-box-shadow: inset 0 1px rgba(128, 128, 128,0.6), inset 0 0 0 50px rgba(128, 128, 128, 0.35);
		box-shadow: inset 0 1px rgba(128, 128, 128,0.6), inset 0 0 0 50px rgba(128, 128, 128, 0.35);
	}

/* review */
#review_table {
	width: 100%;
	text-align: left;
	margin-top: 20px;
}
	#review_table td {
		vertical-align: top;
	}
	#review_table td:first-child {
		width: 50%;
		text-align: right;
		padding-right: 15px;
	}

.modern .review_buttons {
	margin-top: 15px;
}