body {
	font-family: calibri, sans-serif;
	font-size: 15px;
	color: #000000; 
	background-color: #FFFFFF; 
	margin: 0px;
	padding: 0px
}
body.D_rtl { direction: rtl }

p {
	margin: 0.8em 0
}
td {
	vertical-align: top;
	font-size: 15px
}
th {
	vertical-align: top;
	text-align: left;
	font-size: 15px;
	font-weight: bold
}

h1 {
	font-size: 165%
}
h2 {
	font-size: 115%;
	margin: 1.5em 0 0.8em 0
}
h3 {
	font-size: 100%
}
hr {
	height: 0px; color: transparent; background-color: transparent;
	border-bottom: 1px solid #5273B9
}
a:link,
a:visited { color: #5273B9;  }
a:hover,
a:active,
a:focus { color: #999999;  }

table.middle td { vertical-align: middle }
table.fixed { table-layout: fixed }
table.fullwidth { width: 100% } 
div.message {
	width: 100%;
	padding: 6px;
	border: 1px solid #5273B9
}
div.prompt {
	text-align: center;
	width: 320px;
	padding: 16px 20px 32px 20px;
	margin: 60px auto;
	border: 1px solid #999999
}
textarea,
input,
select {
	font-family: calibri, sans-serif;
	font-size: 15px;
	vertical-align: middle;
	margin-top: 0px
}

/* Layout elements */
img.s2-logo { max-width: 100%; }
img.s2-responsive { max-width: 100%; }
			
table.layout {
	border-spacing: 0;
}
table.layout > tr > td,
table.layout > tr > th,
table.layout > thead > tr > td,
table.layout > thead > tr > th, 
table.layout > tfoot > tr > td,
table.layout > tfoot > tr > th, 
table.layout > tbody > tr > td,
table.layout > tbody > tr > th {
	padding: 0;
	border: 0 none;
}

/* DIV alignment */
div.aright { margin-left: auto }
div.acenter { margin-left: auto; margin-right: auto }
.spaceAbove { margin-top: 2em }
table.s2iLayout { width: 100%; border-spacing: 0; table-layout: fixed }
table.s2iLayout > tr > td,
table.s2iLayout > tbody > tr > td { padding: 0 }

/* Hide HTML5 input up/down arrows */
div.textinput input[type="number"]::-webkit-outer-spin-button,
div.textinput input[type="number"]::-webkit-inner-spin-button,
td.textinput input[type="number"]::-webkit-outer-spin-button,
td.textinput input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
div.textinput input[type="number"],
td.textinput input[type="number"] {
    -moz-appearance: textfield;
}
			
div.title				{ background-color: #5273B9; color: #FFFFFF; font-weight: bold; padding: 3px 8px 4px 8px }
div.title p				{ margin: 0px 0px 0.5em 0px;  }
div.explanation			{ background-color: #5273B9; color: #FFFFFF; padding: 0px 8px 4px 8px }
div.explanation p		{ margin: 0px 0px 0.5em 0px }
div.title > p:first-child,
div.explanation > p:first-child { margin-top: 0 }
div.title > p:last-child,
div.explanation > p:last-child { margin-bottom: 0 }
div.titleSpacing { margin-top: 0px;  }
div.border { border: 1px solid #5273B9; padding: 9px 8px }
		
div.trouble { color: white; background-color:#EE3300 }
div.s2fail div.title { color: white; background-color:#EE3300 }
div.s2fail div.explanation { color: #EE3300 }


dl.S2Controller {
    display: none;
}

div.question   { }
div.head       { background-color: #dfe6f3; font-weight: bold; }

table.question {
	table-layout: fixed;
	border-collapse: collapse
}
table.question th {
	background-color: #dfe6f3; 
	font-weight: bold;
}
table.question th.value_text { vertical-align: bottom; text-align: center; font-size: 80%; font-weight: normal; }
table.question th.value_text_left { padding-left: 6px; text-align: left }
table.question th.value_text_right { padding-right: 4px; text-align: right }
/* Numbers in texts that are displayed right-to-left */
span.number {
    direction: ltr;
    unicode-bidi: bidi-override;
}

table.question td.value_label,
table.question div.value_label { font-size: 80%; font-weight: normal; }
div.s2anchor div.s2scaleLabels {
	align-items: flex-end;
}
div.s2numbers {
	display: flex;
	width: 100%;
	flex-basis: 100%;
}
table.question th.numbering,
table.question td.numbering,
div.s2numbers > div {
vertical-align: bottom; text-align: center; font-size: 80%; padding-bottom: 0.2em;
}
div.s2numbers > div {
	flex: 1 1 auto;
}
table.question div.polarMiddle { text-align: center; padding-bottom: 0.2em; }
table.question div.slider { position: relative; background-repeat: no-repeat }
body.D_rtl table.question div.slider {
	-webkit-transform: scaleX(-1);
	-ms-transform: scaleX(-1);
    transform: scaleX(-1);
}
table.question div.sliderButton,
div.s2question div.sliderButton,
div.s2input div.sliderButton { position: absolute; top: 0px; background-repeat: no-repeat }
table.s2slider.s2labels {
	table-layout: fixed; position: relative;
}
table.s2slider.s2labels td.value_label {
	overflow: hidden;
}

table.question td { padding: 3px 4px; vertical-align: middle }
table.question td.dropdown.input { padding-top: 0.25em; padding-bottom: 0.25em; }
table.question td.closeRight { text-align: right; padding-right: 0px }
table.question td.closeLeft { text-align: left; padding-left: 0px }
table.question td.nopad-x { padding-left: 0px; padding-right: 0px }
table.question td.itemtext {  }

table.question td.item { padding-top: 8px; padding-bottom: 8px;  }
table.question td.option {  padding-top: 4px; padding-bottom: 4px;  }

table.question th.opener,
table.question td.opener { vertical-align: bottom; }
table.question th.opener { background-color: #dfe6f3;  }
table.question th.opener,
table.question td.opener,
table.question div.opener,
div.question div.opener,
div.s2items div.s2opener {
	font-weight: bold;
}
table.question td.subheading { font-weight: bold; }
table.question th.subheading { font-weight: bold;; vertical-align: bottom; padding-bottom: 2px; padding-top: 6px }
div.subheading { margin: 1em 0 0.5em 0; font-weight: bold; }

table.question td.anchor,
div.question div.anchor { background-color: #dfe6f3;  }
div.shadeF0,
li.shadeF0,
table.question tr.shadeF0 td,
table.question tr.shadeF1 td.invShade { background-color: #dfe6f3;  }
div.shadeF1,
li.shadeF1,
table.question tr.shadeF1 td { background-color: #dfe6f3;  }
table.question tr.shadeF0 td.invShade { background-color: #dfe6f3;  }
table.question tr.shadeH1 td,
table.question tr.shadeH0 td.invShade { background-color: #dfe6f3;  }
table.question tr.shadeH0 td,
table.question tr.shadeH1 td.invShade { background-color: #dfe6f3;  }
table.question tr.hover:hover td,
div.hover:hover { background-color: #FFF1B2;  }

/* Screen reader optimized display */
ul.items { list-style-type: none; padding: 0px; margin: 0px }
ul.items > li { padding: 3px 4px; clear: both; }
ul.items > li input { vertical-align: middle; }
li.trouble { color: #EE3300 }
ul.items > li.select,
ul.items > li.checkbox { padding-left: 25px; text-indent: -25px; }
ul.items fieldset {
	border: 0 none;
	padding: 0;
	margin: 0.5em 0;
}
ul.items fieldset> legend {
	margin-bottom: 0.3em;
	font-weight: bold;
}

table.question th.gapline,
table.question td.gapline,
	div.gapline { padding: 0px; border-left: 1px solid #5273B9; }
table.question th.dont_know { padding-left: 2px; padding-right: 2px; border-left: 1px solid #5273B9; }
table.question td.dont_know,
div.s2question div.s2input.s2dk {
	text-align: center; border-left: 1px solid #5273B9;
}
table.question td.input			{ }
table.question td.input select,
table.question td.input input[type=text] { vertical-align: baseline }
table.question th.wedge			{ text-align: center; padding-left: 0px; padding-right: 0px }
table.question td.spacer		{ padding: 0px; overflow: hidden }
table.question th.spacer		{ padding: 0px; overflow: hidden }
table.question td.text 			{ vertical-align: middle;  }
table.question td.rank			{ text-align: right; padding-right: 4px }
table.question td.rank select	{ text-align: center; width: 42px }
table.question td.float			{ text-align: left; padding: 2px 4px }
table.question td.float input	{ vertical-align: baseline; margin: 3px 0 }
table.question td.float input.trouble	{ border: 1px solid #EE3300 }
table.question td.balloon		{  }
table.question td.balloon p		{ font-size: 10px; margin: 0px 0px 4px 0px }
table.question td.balloon textarea	{ font-size: 11px; border: 1px solid #999999 }
table.question td.balloon textarea.trouble { border: 1px solid #EE3300 }
table.question td.select,
table.question td.select.itemtext textarea {
	vertical-align: middle; 
}
table.question td.checkbox,
table.question td.checkbox.itemtext textarea {
	vertical-align: middle; 
}
table.question td.dropdown		{ }
table.question td.selscale		{ text-align: center; }
table.question td.scale			{ text-align: center; vertical-align: middle;  }
table.question td.polar			{ text-align: center; vertical-align: middle;  }
table.question td.dropdown		{}
table.question td.contact		{ vertical-align: top }
table.question td.contact > input[type="checkbox"] { margin: 0; }
table.question td.left_pol		{ text-align: right }
table.question td.right_pol		{ text-align: left }
table.question td.padding		{ padding: 2px 4px 2px 4px; }
table.question input.number		{ text-align: right }
table.question td.trouble,
table.question tr.trouble td,
div.s2question div.s2item.s2fail {
  	color: #EE3300
}
table.question tr.trouble > td.extended {
	border: 2px solid #EE3300; 
}
table.question td.trouble input[type="text"],
table.question td.trouble select { border: 1px solid #EE3300 }
table.question table.llabels { table-layout: fixed }
table.question table.llabels td { padding: 0px }
table.question table.llabels td.vlabel { vertical-align: middle }

table.question td.container			{ padding: 0 }
table.question th.container			{ padding: 0; text-align: left; font-weight: normal; }
table.question td.container td		{ padding: 0 }
table.question td.container	div		{ position: relative; height: 16px; }
table.question td.container input,
table.question td.container button,
table.question td.container label.inputCST	{ position: absolute; text-align: center; margin-left: 0; margin-right: 0; }
table.question td.container button.input	{ position: absolute }
table.question div.numbering {
clear: both; position: relative; width: 100%; height: 1.2em; margin-bottom: 4px;
}
table.question div.numbering div {
position: absolute; text-align: center; white-space: nowrap; overflow: hidden; font-size: 80%; padding-bottom: 0.2em;
}
div.s2items div.numbering,
div.s2items div.s2labels {
	margin-bottom: 0.2em;
}
div.s2items div.numbering div {
	font-size: 80%; padding-bottom: 0.2em;
}
div.s2items div.s2flex.s2labels {
	align-items: end;
}
			
table.question td.blank				{ padding: 0 }

table.question th.separateB,
table.question td.separateB,
table.question div.separateB,
div.separateB,
div.s2sepH { border-top: 1px solid #5273B9; }
table.question th.separateR,
table.question td.separateR,
div.s2sepV,
div.s2options.s2horizontal > div.s2separator { border-left: 1px solid #5273B9; }
table.question td.residual {  }

/* General opener */
div.s2iOpener,
td.s2iOpener { padding-top: 4px; padding-bottom: 4px; background-color: #dfe6f3; font-weight: bold; }
			
/* Custom inputs */
label.inputCST { display: inline-block; vertical-align: middle; border: 0 none; padding: 0; margin: 0; background-color: transparent; }
label.inputCST::after { content: "\200D"; }  /* zero width joiner to middle-place the CST */


/* Responsive items */
div.s2question div.s2items {
	width: 100%;
}
div.s2question div.s2items.auto {
	/* Default (auto) is the matrix layout, but JS can change that as required */
	display: table;
	border-collapse: collapse;
}
div.s2question div.s2items.matrix {
	display: table;
	border-collapse: collapse;
}
div.s2question div.s2items > div.s2item {
	break-inside: avoid;
	page-break-inside: avoid;
	-webkit-column-break-inside: avoid;
}
div.s2question div.s2items.auto > div.s2item,
div.s2question div.s2items.matrix > div.s2item {
	display: table-row;
}
div.s2question div.s2items.narrow > div.s2item,
div.s2question div.s2items.slim > div.s2item {
	margin-bottom: 1.4em;
}
div.s2question div.s2items.narrow > div.s2item.s2subheading,
div.s2question div.s2items.slim > div.s2item.s2subheading {
	margin-top: 2em;
}
div.s2question div.s2items.flex > div.s2item {
	display: flex;
	align-content: stretch;
}
div.s2question div.s2items.flex > div.s2item.s2text {
	align-items: center;
}
div.s2question div.s2items.auto > div.s2item > div.s2label,
div.s2question div.s2items.auto > div.s2item > div.s2input,
div.s2question div.s2items.matrix > div.s2item > div.s2label,
div.s2question div.s2items.matrix > div.s2item > div.s2input {
	display: table-cell;
	vertical-align: middle; 
}
div.s2question div.s2items.flex > div.s2item > div.s2input {
	flex: 1 1 auto;
}
div.s2item { }
div.s2item > div.s2label {
	position: relative;
	min-width: 10em;
	padding: 8px 0.5em;
}
div.s2item.shadeN > div.s2label:first-child {
	padding-left: 0;
}
div.s2item > div.s2input,
tr.s2item > td > div.s2input,
div.s2item > div.s2dk,
tr.s2item > td > div.s2dk {
	position: relative;
	width: auto;
	margin: 0 auto;
	padding: 8px 0;
}
div.s2aRight div.s2item > div.s2input {
	margin: 0 0 0 auto;
}
div.s2aLeft div.s2item > div.s2input {
	margin: 0 auto 0 0;
}
div.s2question div.s2items > div.s2item.s2anchor > div.s2label,
div.s2question div.s2items > div.s2item.s2anchor > div.s2input,
div.s2question div.s2items > div.s2item.s2subheading > div.s2label,
div.s2question div.s2items > div.s2item.s2subheading > div.s2input {
	vertical-align: bottom;
}
div.s2question div.s2items > div.s2item.s2subheading > div.s2label {
	font-weight: bold;
}
div.s2question div.s2items > div.s2item.s2subheading > div.s2label,
div.s2question div.s2items > div.s2item.s2subheading > div.s2input {
	padding-top: 1em;
}
div.s2labels > div {
	overflow: hidden;
}
div.s2items div.s2heading,
div.s2items div.s2anchor {background-color: #dfe6f3; }
div.s2value {
	vertical-align: bottom;
	text-align: center;
	box-sizing: border-box;
	padding: 0 0.5em;
	font-size: 80%; 
	font-weight: normal;
}
div.s2value.left {
	text-align: right;
}
div.s2value.right {
	text-align: left;
}
div.s2value.left,
div.s2value.right {
	-webkit-box-flex: 1;
	-moz-box-flex: 1;
	-webkit-flex: 1 0 auto;
	-ms-flex: 1 0 auto;
	flex: 1 0 auto;
}
div.s2sepV {
	position: absolute;
	top: 0;
	bottom: 0;
}

/* Visual anchor */
div.s2visual {
	position: relative;
	width: 100%;
}
div.s2visual img {
	position: relative;
}

/* Container for elements of equal height */
div.s2series {
	position: relative;
}
div.s2series > div {
	position: absolute;
	top: 0;
	white-space: nowrap;
	overflow: hidden;
	text-align: center;
}
div.s2series > div:first-child {
	position: relative;
}
div.s2series > div > input {
	/* Safari will clip the radio buttons if there is no vertical margin set */
	margin: 1px 0;
}
/* Additional content visible under certain circumstances */
div.s2question div.s2cntExtended {
	display: none;
}
div.s2items.auto div.s2cntNarrow,
div.s2items.auto div.s2cntSlim,
div.s2items.matrix div.s2cntNarrow,
div.s2items.matrix div.s2cntSlim,
div.s2items.narrow div.s2cntMatrix,
div.s2items.slim div.s2cntMatrix,
div.s2question div.s2items.narrow > div.s2item.s2anchor > div.s2input,
div.s2question div.s2items.slim > div.s2item.s2anchor > div.s2input,
div.s2question div.s2items.narrow > div.s2item.s2anchor > div.s2dk,
div.s2question div.s2items.slim > div.s2item.s2anchor > div.s2dk,
div.s2question div.s2items.narrow > div.s2item.s2subheading > div.s2input,
div.s2question div.s2items.slim > div.s2item.s2subheading > div.s2input,
div.s2question div.s2items.narrow > div.s2item.s2subheading > div.s2dk,
div.s2question div.s2items.slim > div.s2item.s2subheading > div.s2dk
{
	display: none;
}
div.s2items.narrow div.s2anchor div.s2cntMatrix.s2polarLeft,
div.s2items.slim div.s2anchor div.s2cntMatrix.s2polarLeft {
	display: block;
	text-align: center;
}

div.s2flex {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: nowrap;
}
.legacyIE9 div.s2flex {
	display: table;
}
div.s2flex > div {
	-webkit-box-flex: 0;
	-moz-box-flex: 0;
	-webkit-flex: 0 0 auto;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
}
.legacyIE9 div.s2flex > div {
	display: table-cell;
}
/* no-JS fallback */
@media (max-width: 420px) {
	div.s2question div.s2items.auto,
	div.s2question div.s2items.auto > div.s2item,
	div.s2question div.s2items.auto > div.s2item > div.s2label,
	div.s2question div.s2items.auto > div.s2item > div.s2input {
		display: block;
	}
	div.s2question div.s2items.auto > div.s2item.s2anchor > div.s2input,
	div.s2question div.s2items.auto > div.s2item.s2subheading > div.s2input {
		display: none;
	}
	div.s2question div.s2items.auto > div.s2item {
		margin-bottom: 1.4em;
	}
	div.s2question div.s2items > div.s2item.s2subheading {
		margin-top: 2em;
	}
	div.s2items.auto div.s2cntMatrix {
		display: none;
	}
	div.s2items.auto div.s2cntNarrow {
		display: block;
	}
}

div.s2label {
	box-sizing: border-box;
}

/* Text input */
div.s2item.s2text {
	padding: 8px 0;
	flex-wrap: wrap;
}
div.s2item.s2text > div.s2label,
div.s2item.s2text > div.s2input {
	padding: 0 0.5em;
}
div.s2item.s2text > div.s2label,
div.s2input.s2text > div.s2dk-tx,
div.s2input.s2text > div.s2dk-dk {
	padding-top: 3px;
}
div.s2item.s2text > div.s2input {
	display: flex;
	flex-wrap: wrap;
}
div.s2question div.s2items.flex > div.s2item.s2text > div.s2input {
	flex: 1 1 10em;
}
/*
div.s2input.s2text > input[type=text],
div.s2input.s2text > div.s2dk-in > input[type=text],
div.s2input.s2text > textarea,
div.s2input.s2text > div.s2dk-in > textarea {
	margin-top: -3px;
	margin-bottom: -3px;
}
*/
div.s2input.s2text > div.s2dk-in {
	margin-right: 0.5em;
}
div.s2input.s2text > div.s2dk-tx {
	padding-left: 0.5em;
}
div.s2input.s2text > div.s2dk-dk {
	padding-left: 0.5em;
	border-left: 2px solid #5273B9
}
div.s2above {
    margin-bottom: 0.5em;
}

/* Selscale */
div.selscale div.value_text {
	text-align: center;
	padding: 5px 10px; font-weight: normal;
}
div.selscale div.wedge {
	margin-bottom: 4px
}
div.selscale div.numbering {
	text-align: center; font-size: 80%; padding-bottom: 0.2em;
}
div.selscale div.input {
	text-align: center
}

/* horizontal selection */
div.s2question div.s2blocks.s2horizontal {
    padding-top: 8px;
}
div.s2question div.s2horizontal div.value_text {
    padding-left: 2px;
    padding-right: 2px;
}
div.s2question div.s2blocks.s2horizontal,
div.s2question div.s2options.s2horizontal {
    display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
div.s2question div.s2blocks.s2horizontal > div.s2block {
    flex-grow: 1;
}
div.s2question div.s2options.s2horizontal {
    gap: 5px;
}
div.s2question div.s2options.s2horizontal div.s2option {
    flex: 1 1 50px;
    box-sizing: border-box;
}

/* Dynamic Selection Layout */
.s2iSelection.multiple div.option {
	-webkit-align-items:  center;
	align-items: center;
}
.s2iSelection.single div.option {
	-webkit-align-items: center;
	align-items: center;
}
/* .s2iSelection div.option div.input { width: 24px } */
.s2iSelection.dynamic div.option div.input {
	-webkit-box-flex: 0;
	-moz-box-flex: 0;
	-webkit-flex: 0 0 auto;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
}
.s2iSelection.dynamic div.place,
.s2iSelection.dynamic div.option {
	break-inside: avoid;
	page-break-inside: avoid;
	-webkit-column-break-inside: avoid;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
		
.s2iSelection.dynamic div.place,
.s2iSelection.dynamic div.place > div.option {
	-webkit-box-flex: 1;
	-moz-box-flex: 1;
	-webkit-flex-grow: 1;
	-ms-flex-grow: 1;
	flex-grow: 1;
}
.s2iSelection.dynamic div.option div.input > input[type="checkbox"],
.s2iSelection.dynamic div.option div.input > input[type="radio"] {
	margin: 0;
}
.s2iSelection.dynamic div.option {
	flex-flow: row nowrap;
	padding-top: 4px; padding-bottom: 4px; 
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
}
.s2iSelection.dynamic div.label {
	break-inside: avoid-column;
    page-break-inside: avoid;
	-ms-flex: 0 1 auto; /* IE10 */
	flex: 1 1 auto;
}
.s2iSelection.dynamic div.label.first {
	padding-left: 0.5em;
	-webkit-box-ordinal-group: 1;
	-moz-box-ordinal-group: 1;
	-ms-flex-order: 1;
	-webkit-order: 1;
	order: 1;
}
.s2iSelection.dynamic div.label.second {
    padding-right: 0.5em;
	-webkit-box-ordinal-group: 2;
	-moz-box-ordinal-group: 2;
	-ms-flex-order: 2;
	-webkit-order: 2;
	order: 2;
}
.s2iSelection.dynamic div.input.first {
	margin: 0 0.5em;
	-webkit-box-ordinal-group: 1;
	-moz-box-ordinal-group: 1;
	-ms-flex-order: 1;
	-webkit-order: 1;
	order: 1;
}
.s2iSelection.dynamic div.input.second {
	margin: 0 0.5em;
	-webkit-box-ordinal-group: 2;
	-moz-box-ordinal-group: 2;
	-ms-flex-order: 2;
	-webkit-order: 2;
	order: 2;
}

div.legacyIE9 .s2iSelection.dynamic div.option { display: table; width: 100%; }
div.legacyIE9 .s2iSelection.dynamic div.option > div.input { display: table-cell; width: 2em; }
div.legacyIE9 .s2iSelection.dynamic div.option > div.label { display: table-cell; overflow: hidden; min-height: 19px; vertical-align: middle; }
div.legacyIE9 .s2iSelection.dynamic div.option > div.label label { vertical-align: middle; }
div.legacyIE9 .separateB { clear: both; }			
div.legacyIE9 div.subheading { clear: both; }

/* Checkboxes that may become boxes */
.s2iCheckbox {
	text-align: center;
}
/* Safari requires some space below to not clip the inputs */
.s2iCheckbox > input {
	margin: 0 0 2px 0;
}
.s2iCheckbox > label.s2box {
	display: none;
	padding: 0.2em;
	vertical-align: middle;
	font-size: 80%; 
}
/* DK options */
.s2dk .s2iCheckbox {
	font-style: italic;
	opacity: 0.8;
}
/* Always display boxes instead of readio elements on touch devices */
body.D_touch .s2iCheckbox {
		    	display: -webkit-box;
		    	display: -moz-box;
		    	display: -ms-flexbox;
		    	display: -webkit-flex;
		    	display: flex;
		    }
body.D_touch .s2iCheckbox > label.s2box {
		    	display: block;
		    	flex: 1 1 auto;
		    }
body.D_touch .s2iCheckbox > input,
body.D_touch .s2iCheckbox > label.inputCST {
		    	position: absolute;
		    	opacity: 0;
		    	width: 1px;
		    	height: 1px;
		    }
body.D_touch .s2iCheckbox > label.inputCST {
		    	display: none;
		    }
@media screen and (max-width: 480px), handheld, (pointer: coarse) {
	 .s2iCheckbox {
		    	display: -webkit-box;
		    	display: -moz-box;
		    	display: -ms-flexbox;
		    	display: -webkit-flex;
		    	display: flex;
		    }
	 .s2iCheckbox > label.s2box {
		    	display: block;
		    	flex: 1 1 auto;
		    }
	 .s2iCheckbox > input,
	 .s2iCheckbox > label.inputCST {
		    	position: absolute;
		    	opacity: 0;
		    	width: 1px;
		    	height: 1px;
		    }
	 .s2iCheckbox > label.inputCST {
		    	display: none;
		    }
div.question.selscale div.s2anchorVisual,
div.question.selscale div.numbering,
div.question.selscale div.s2label {
        display: none;
    }
div.selscale.shadeF0 {
        background-color: transparent;
	}
div.selscale div.input,
    div.selscale div.input .s2iCheckbox {
        height: 100%;
        box-sizing: border-box;
    }
div.s2question div.s2options.s2horizontal div.s2option div.input,
	div.s2question div.s2options.s2horizontal div.s2iCheckbox {
	    height: 100%;
	    box-sizing: border-box;
	}
}

/* Selection ordered in Rows */
.s2iSelection.dynamic.rows {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-flow: row wrap;
	-webkit-flex-wrap: wrap;
	-webkit-align-items: stretch;
	align-items: stretch;
	justify-content: space-between;
}
.s2iSelection.dynamic.rows div.option {
	-webkit-box-flex: 1;
	-moz-box-flex: 1;
	-webkit-flex: 1 0;
	-ms-flex: 1 0;
	flex: 1 0;
}
.legacyIE9 .s2iSelection.dynamic.rows div.option {
	float: left;
}

/* Ordered in Columns */
.s2iSelection.dynamic.cols {
	-webkit-column-gap: 1.6em;
	-moz-column-gap: 1.6em;
	column-gap: 1.6em;
}
			
/* Dynamic Selection Cards */
.s2iSelection.cards { width: auto }
.s2iSelection.cards.rows { margin-right: -1.6em }
.s2iSelection.cols.cards div.place,
.s2iSelection.rows.cards div.place {
    overflow: hidden; /* column-break-bug in Firefox */
    padding-top: 0.8em; padding-bottom: 0.8em; 
}
.s2iSelection.cols.cards div.option {
	margin-right: 0;
padding: 0.72em 0;
}

.s2iSelection.cards div.option,
.s2iCheckbox > label.s2box {
border-width: 1.6px;  border-style: solid;
border-radius: 5px; 
border-color: #dfe6f3; 
background-color: transparent; 
}
.s2iSelection.cards div.option {
	margin: 0 1.6em 0 0;
}
.s2iSelection.cards div.option {
	background-color: transparent; 
}
			
.s2iSelection.cards div.option.selected,
.s2iCheckbox input:checked ~ label {
	border-color: #5273B9; 
	background-color: #dfe6f3; 
}
.s2iSelection.cards div.option.disabled,
.s2iCheckbox input:disabled ~ label {
	border-color: #CCCCCC; 
	
}
.s2iSelection.cards div.option:hover,
.s2iSelection.cards div.option.focus,
.s2iCheckbox label:hover {
	background-color: #FFF1B2; 
}

.s2iSelection.cards.js div.option > div.input {
    width: 1px;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -webkit-flex: 0 0 1px;
    -ms-flex: 0 0 1px;
    flex: 0 0 1px;
    opacity: 0.02;
    margin: 0;
    overflow: hidden;
}
.s2iSelection.cards.js div.option > div.label { padding: 0 1em; -webkit-flex-grow: 1; flex-grow: 1 }

.selscale div.s2option .s2iCheckbox > label.s2box {
	margin-bottom: -1.6px;
}

div.it-checkbox,
div.it-radio { padding-left: 26px; text-indent: -26px; padding-top: 4px; padding-bottom: 4px;  }
div.it-checkbox > *,
div.it-radio > * { text-indent: 0 }
span.it-checkbox,
span.it-radio { display: inline-block; width: 26px }

/* CardRate */
.s2qtCardrate div.s2item {
    border: 1px solid #000000;
    border-radius: 0.5em;
    overflow: hidden;
}
.s2qtCardrate div.s2title {
background-color: #dfe6f3; 
    padding: 0.5em 0.8em;
}
.s2qtCardrate > div.s2items div.s2title {
    font-weight: bold;
background-color: #dfe6f3; 
}
.s2qtCardrate > div.s2place {
    padding: 20px 0;
    margin-top: 20px;
}
.s2qtCardrate div.s2shelf div.s2title {
    text-align: center;
} 
.s2qtCardrate > div.s2items {
    column-gap: 1.8em;
}
.s2qtCardrate > div.s2items > div.s2item {
    vertical-align: top;
    margin-bottom: 1.6em;
	cursor: move;
}
.s2qtCardrate > div.s2items img {
    max-width: 100%;
    pointer-events: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
    -webkit-user-drag: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
    user-drag: none;
}
.s2qtCardrate div.s2shelf > div.s2item {
    box-shadow: 0 0 1px 1px white;
}
.s2qtCardrate div.s2shelf > div.s2item.hover > div.s2title {
background-color: #FFF1B2; 
}
.s2qtCardrate > div.s2items > div.s2item > div.s2desc {
    padding: 0.5em 0.8em;
}
div.s2qtCardrate > div.s2place.s2target {
	outline: 2px dashed #999999;
}


/* Accordion */
div.s2accordion > .title {
    position: relative;
    z-index: 2;
    margin: 0;
    margin-bottom: -1.6px;
    padding: 0.75em 0.5em;
    font-family: calibri, sans-serif;
	font-size: 15px;
    font-weight: bold;
border-width: 1.6px;  border-style: solid;
border-radius: 5px; 
border-color: #dfe6f3; 
background-color: transparent; 
}
div.s2accordion > .title.selected {
	border-color: #5273B9; 
	background-color: #dfe6f3; 
}
div.s2accordion > .title:hover,
div.s2accordion > .title:focus {
	background-color: #FFF1B2; 
}
div.s2accordion > .title > a {
    text-decoration: none;
    color: #000000; 
}
div.s2accordion > .content {
    position: relative;
    z-index: 1;
    margin: 0;
    margin-bottom: -1.6px;
    padding: 0.5em 0.5em 1.2em 0.5em;
border-width: 1.6px;  border-style: solid;
border-radius: 5px; 
border-color: #dfe6f3; 
}


/* General formatting */
		
div.spacingV  { margin: 1em 0 }
div.spacingV1 { height: 1em }
div.spacingV2 { height: 0.5em }

div.dots		{ margin-left: 16px; text-indent: -16px }
label.dots		{ display: inline-block; margin-left: 16px; text-indent: -16px }
label.dots *,
div.dots * { text-indent: 0 }
table.question div.right		{ text-align: right; }
table.question div.left			{ text-align: left; }

table.right  { margin-left: auto }
table.center { margin-left: auto; margin-right: auto }

table td.left	{ text-align: left }
table td.right	{ text-align: right }
table td.center	{ text-align: center }
table th.center	{ text-align: center }
table td.clipped { overflow: hidden }
div.head div.header,
table th.header,
div.s2iHeading {background-color: #dfe6f3; vertical-align: top; text-align: center; padding-bottom: 6px}
div.extended,
table td.extended { padding: 10px 0px 20px 0px; }
div.extendedItem { padding: 0px 4px 8px 4px; }
ul.items > li div.extendedItem { padding-left: 0; font-weight: bold; }

div.extendedCombine { display: flex; justify-content: space-between; }

table.container { margin-top: 0px;  table-layout: fixed }
table.container div.rankingTgt	{ font-size: 18px; font-weight: bold; color: #AAAAAA; border: 1px solid #AAAAAA; margin-bottom: 2px }
table.container div.rankingHgL	{ background-color: #FFF1B2;  }
table.container div.rankingTkn	{ font-weight: bold; border: 1px solid #000000; background-color: #dfe6f3;  }
table.container div.rankingGry	{ font-weight: bold; border: 1px solid #AAAAAA; background-color: #EEEEEE; color: #AAAAAA }
div.rankingContainer { position: relative; display: block; margin-top: 24px }
li.ranking > div.s2label { display: inline-block; }

table.assignment { width: 100%; }
table.assignment tr.options td { text-align: center; font-size: 18px }
table.assignment tr.options td.disabled { color: #CCCCCC;  }
table.assignment tr.options td.disabled img { filter: grayscale(1) contrast(0.4) brightness(1.45); }
table.assignment tr.options td.selected { color: #5273B9;  }
table.assignment td.stimulus { vertical-align: middle; text-align: center; font-size: 30px; padding: 20px 0px; font-weight: bold }
table.assignment td.stimulus img {
    max-width: 100%;
    max-height: 100%;
}
table.assignment td.introduction { vertical-align: middle; text-align: center; font-size: 18px; padding: 20px 0px }

/* SelClick */
div.selClick { margin-bottom: 50px;  }
div.selClick div.header { margin: 0 0 6px 0; text-align: center }
div.selClick.noscript div.header { text-align: left }
div.selClickSubs { margin-top: 32px }
div.selClickSubs div.fixation { }
div.selClickQuestion { margin-bottom: 0px;  }
table.selClickOptions {
	width: 100%;
	table-layout: fixed;
	border-spacing: 0;
}
div.selClickOptions {
	display: flex;
    flex-wrap: wrap;
	margin-right: -4%;
}
.selClickOption {	
	padding: 8px; margin: 12px 0px;
border-width: 1.6px;  border-style: solid;
border-radius: 5px; 
border-color: #CCCCCC; 
background-color: transparent; 
}
div.selClickOptions > div.selClickOption {
    margin-right: 4%;
    flex-grow: 1;
    flex-shrink: 0;
    box-sizing: border-box;
}
.selClickSeparator {	
    height: 0.5em;
	margin: 12px 0px;
}
.selClickNoScript { padding: 0px 0px 0px 25px; text-indent: -25px; border: 0px none; margin-bottom: 8px }
.selClickOption input.option { vertical-align: top }
.selClickAvailable {
	border-color: #dfe6f3; 
	background-color: transparent; 
}
.selClickAvailable:hover {
	background-color: #FFF1B2; 
}
.selClickSelected {
	border-color: #5273B9; 
	background-color: #dfe6f3; 
}
td.selClickSpacer {
    height: 26px;
}

/* Marker */
div.Marker table { table-layout: fixed }
div.Marker div.legend div.type {
	margin-bottom: 1.2em;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
}
div.Marker div.legend div.type:last-child {
	margin-bottom: 0
}
div.Marker div.legend div.type span.marker {
	display: block;
	-webkit-box-flex: 0;
	-moz-box-flex: 0;
	-webkit-flex: 0 0 auto;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
}
div.Marker div.legend div.type span.desc {
	display: block;
	overflow: hidden;
	-webkit-box-flex: 1;
	-moz-box-flex: 1;
	-webkit-flex: 1 1 auto;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
	margin-left: 0.75em;
}
			
div.Marker div.message { width: 200px; min-height: 8px; background-color: white; border-color: #EE3300 }
table.marker { float: left; margin-right: 2em }
table.marker td { padding-right: 0.5em }
table.marker caption { text-align: left; font-weight: bold; margin-bottom: 0.5em }

.SelBox {
border-width: 1.6px;  border-style: solid;
border-radius: 5px; 
background-color: transparent; 
}
.SelBox:hover,
.SelBox.hover {
	background-color: #FFF1B2; 
}
.SelBox.inactive {
	border-color: #CCCCCC; 
	background-color: transparent; 
}
.SelBox.selected {
	border-color: #5273B9; 
	background-color: #dfe6f3; 
}

/* Text */
input.wordgap {
	font-family: "Courier New","Courier",monospaced;
	font-size: 15px !important; letter-spacing: 1px;
	padding: 0px; margin: 0px 1px; border: 0px none;
	background-image: url("../images/text.char10px.png");
	background-repeat: repeat-x;
	background-position: 0px 0px;
	vertical-align: bottom
}

/* Extended Selection */
div.subheader { padding: 2px 0px; margin-top: 2px }
div.subspacing  { margin-top: 5px }
div.accent { font-weight: bold }
div.subheader button { vertical-align: top; padding: 0px; margin: 0px; border: 0px none; background-color: transparent }
div.subselect { margin-left: 20px; margin-bottom: 2px }
div.suboption { padding: 2px 0px }
div.suboption,
div.subheader { text-indent: -1.8em; padding-left: 1.8em }
div.subheader input,
div.subheader button,
div.subheader div.inputCST,
div.suboption input,
div.suboption button,
div.suboption div.inputCST { vertical-align: middle }
div.shadeA { background-color: #dfe6f3;  }
div.shadeB { background-color: #dfe6f3;  }

/* ImgPaste */
div.imgPasteQ { }
div.imgpaste { float: right; width: 100%; margin: 0 0 20px 20px; position: relative }
div.imgpaste div.imgInput { margin-bottom: 16px }
div.imgpaste div.imgPreview { width: 100%; position: absolute; left: 0; top: 0; background-color: #EEEEEE; overflow: hidden }
div.imgpaste div.imgPreview img { width: 100%; height: auto }
div.imgpaste div.imgTarget {
	padding: 10px; overflow: hidden; opacity: 0.25;
border-width: 1.6px;  border-style: solid;
border-radius: 5px; 
border-color: #dfe6f3; 
}
	
/* Language selection */
div.languageSelection { text-align: center; margin: 80px 0px 60px 0px; min-height: 260px }
div.languageSelection div.option {
	min-width: 80px; max-width: 120px;
	margin: 20px 40px; vertical-align: top;
	display:-moz-inline-stack;
	display:inline-block;
}
div.languageSelection div.desc { font-weight: bold; padding-top: 10px; }
div.languageSelection a { text-decoration: none; color: #000000 }
/* Note: Preserve flag aspect ratio via: width: auto; height: 40px; */
img.s2t-flag {
	width: auto; height: 40px; border: 1.5px outset #999999;
	box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2); -webkit-box-shadow: 4px 4px rgba(0, 0, 0, 0.2); -moz-box-shadow: 4px 4px rgba(0, 0, 0, 0.2)
}
@media (max-width: 450px) {
	div.languageSelection div.option { margin: 16px 20px }
}
/* SVG small symbol */
img.langSymbol,
button.img img.langSymbol {
    border: 1px outset #999999;
    vertical-align: middle;
}

div.feedback { border: 2px solid #EE3300; background-color:#FFCCCC; padding: 14px 16px; margin-bottom: 50px }
.spacing	{ margin-bottom: 50px;  }
div.spacing   table.question { margin-bottom: 0px }
div.center	{ text-align: center; display: table-cell; vertical-align: middle }

div.progressbar {
	position: relative; height: 16px;
	overflow: hidden;
	line-height: 1em;
	
	border: 1px solid;
	border-color: #dfe6f3; 
}
div.progressbar div.progress {
	position: absolute; left: 0px; top: 0px; height: 100%;
	background-color: #dfe6f3; 
}
div.progressbar div.progresstext {
	font-size: 11px; top: 1px;
	position: absolute; width: 100%;
	white-space: nowrap;
	
	text-align: center
}

/* TextElement formatting */

div.info { }
div.info div.title { text-align: center; padding: 3px 16px; background-color: #5273B9; color: white; margin-bottom: 0 }
div.info div.content { background-color: #FFF1B2; border: 1px solid #5273B9; padding: 14px 16px 14px 16px }
div.info div.symbol { position: relative }
div.info div.symbol div.content { min-height: 40px; padding-left: 72px }
div.info div.symbol div.content:before { position: absolute; left: 16px; top: 16px; content:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoBAMAAAB+0KVeAAAAAXNSR0IArs4c6QAAABtQTFRFLJSZZWf+e37/h4b/np7/v8D/1tT+7u7//v/9vLRj8wAAAAF0Uk5TAEDm2GYAAAAdaVRYdENvbW1lbnQAAAAAAENyZWF0ZWQgd2l0aCBHSU1QZC5lBwAAARVJREFUKM99kz1vwkAMhm8qtzoQ6HoSQ1Ym5jKgrKhSdSOpVCkjGVAzho+Q92dzQbbzoQgvcZ74jX22zxg2C1RmaLb5261/ygG2jw0Fm+c9amti8x1tnMCo1MADqcUSyuK4aX/sh4EeRRcqWUpcSEJtwRDI2seqDbWS2r/+SVHVU9Nixx8DvNDIPoM6G8NlZexmDOeVmenL/s7OyXwI2+LB3lGTL6DQG9HkOcRNzZW97wQ3dhOFlKJQeNemI1O5nrLElyaSkiLAaUkzLakhLV6OGWuZ4ZjSkJWWGRoirUtwXTppnaRPUf87bTKPwwO/pOPgwXmw5DU41m/PrhvRcGu6van70L9bsMlVnF7ayfWevgijK/MEnOpiQU7a57EAAAAASUVORK5CYII=) }
div.info div.content > p:first-child { margin-top: 0 }
div.info div.content > p:last-child { margin-bottom: 0 }

div.warning { }
div.warning div.title { text-align: center; padding: 3px 16px; background-color: #EE3300; color: white; margin-bottom: 0 }
div.warning div.content { background-color: #FFCCCC; border: 1px solid #EE3300; padding: 14px 16px 14px 16px }
div.warning div.symbol { position: relative }
div.warning div.symbol div.content { min-height: 40px; padding-left: 72px }
div.warning div.symbol div.content:before { position: absolute; left: 16px; top: 16px; content:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoBAMAAAB+0KVeAAAAAXNSR0IArs4c6QAAABtQTFRF9u7c/0U5/1pN/3ty/6ig/8G9/tbS++Th/v77nLqEMAAAAAF0Uk5TAEDm2GYAAAEHSURBVCjPbVMtE8IwDK3iasM2mOUQYAGDneGwuEkEd2ABgxxf2/vZbGuSFmhMc+/yLi95qTEcFqjMd1gcltPNN2zfC2ojKasQI44AbSYCDm9auCONTEpfFMSWC4u+yRHX7k1dqeuSA3C9+sKzgE2fjLtS61qPgNoJqJRNGcBZx7+7NAVYRe5FJsBTpdoFzwIwJ2lBUX3DmbPKDAQ8Qabd+xm3KHTS5z+4Ng8B1+CWNPfgHBMFlZ5DOb7RuPYrVUmZGrX34lPl+DGJpE83prq2CrzjNdAMF12dLJnKcMlsB4lxvR1sXLu6wDjhl2xHGRwDZc0uOIbo2cQPLHqK8aONnnf8I/x8mQ9sZmJrIWiXtQAAAABJRU5ErkJggg==) }
div.warning div.content > p:first-child { margin-top: 0 }
div.warning div.content > p:last-child { margin-bottom: 0 }

div.chapter { }
div.chapter h1 { }

input.button,
button { background-color: #5273B9; color: white; font-weight: bold; font-size: 13px; border: 0px none; padding: 3px 9px 4px 9px; margin-top: 0 }
img.left { float: left; margin: 0px 16px 8px 0px }
img.right { float: right; margin: 0px 0px 8px 16px }

/* Probing */
#page_probe_button { margin: 1em 0 0.5em; text-align: center }


/* Solution for text inputs with 100% width */
div.textinput input,
div.textinput textarea,
table.question td.textinput input,
table.question td.textinput textarea,
select,
textarea,
input[type="text"],
input[type="number"],
input[type="password"] {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	max-width: 100%;
}
select:focus { max-width: initial; }
div.textinput textarea,
table.question td.textinput textarea { padding-left: 2px; padding-right: 2px }
div.textinput input,
table.question td.textinput input { padding-left: 2px; padding-right: 2px }
input.exactSize,
textarea.exactSize,
select.exactSize,
div.exactSize {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* Suggestion Question */
div.suggestion { border: 1px solid black }
div.suggestion div.item { padding: 3px 5px; cursor: default }
div.suggestion div.item:hover { background-color: #316AC5; color: #FFFFFF }
select.suggestion { width: 100% }
ul.suggestion {
  	list-style-type: none;
  	padding: 0; margin: 0;
}
ul.suggestion > li { display: block; padding: 0.5em;
border-width: 1.6px;  border-style: solid;
border-radius: 5px; 
border-color: #dfe6f3; 
background-color: transparent; 
	border-bottom-style: none;
}
ul.suggestion > li:last-child { border-bottom-style: solid }
ul.suggestion > li:hover,
ul.suggestion > li.highlight {
	background-color: #FFF1B2; 
}

/* Text Question */
input.s2iInputOut {
	border-color: transparent;
	background-color: transparent;
	color: inherit;
}
			
/* SelZoom Question */
div.selzoom div.option { float: left }
div.selzoom div.option div.box {
	display: table-cell;
	vertical-align: middle;
}
div.selzoom div.option div.box.border,
div.selzoom div.option img.border {
	padding: 0px;
border-width: 1.6px;  border-style: solid;
border-radius: 5px; 
border-style: solid;
	border-color: transparent
}
div.selzoom div.option div.box.border.always,
div.selzoom div.option img.border.always {
	border-color: #dfe6f3; 
}
div.selzoom div.option div.box.border:hover,
div.selzoom div.option div.box.border:focus,
div.selzoom div.option img.border:hover,
div.selzoom div.option img.border:focus,
div.selzoom div.option.selected div.box.border,
div.selzoom div.option.selected div.box.border.always,
div.selzoom div.option.selected img.border {
	border-color: #5273B9; 
}
div.selzoom div.option div.text { margin: 0px 20px; text-align: center }
div.selzoom div.option div.input { text-align: center; margin-top: 6px }

/* IAT question */
div.iat {  }
div.iat div.schemeBlack {  }
div.iat div.schemeWhite {  }
div.iat div.frame {
	max-width: 600px;
	margin: 0 auto;
	padding: 16px;
	box-sizing: border-box;
	height: 480px;
	border: 4px solid black;
	position: relative;
}
div.iat div.unused { display: none }
div.schemeBlack div.frame { border: 4px solid black; color: black }
div.schemeWhite div.frame { border: 4px solid white; color: white; background-color: black }
div.iat table.categories { width: 100%; height: 25% }
div.iat table.categories td { font-size: 20px; font-weight: bold; padding: 4px 0 }
div.iat table.categories td.or { color: gray; font-weight: normal; font-size: 14px; padding: 8px 0 }
div.iat table.categories td.left { text-align: left }
div.iat table.categories td.center { text-align: center }
div.iat table.categories td.right { text-align: right }
div.iat table.categories td div.exemplars { font-weight: normal; margin-top: 4px }
div.schemeBlack table.categories td.dim0 { color: #000000 }
div.schemeBlack table.categories td.dim1 { color: #0000FF }
div.schemeBlack div.stim0,
div.schemeBlack span.stim0 { color: #000000 }
div.schemeBlack div.stim1,
div.schemeBlack span.stim1 { color: #0000FF }
div.schemeWhite table.categories td.dim0 { color: #FFFFFF }
div.schemeWhite table.categories td.dim1 { color: #00FF00 }
div.schemeWhite div.stim0,
div.schemeWhite span.stim0 { color: #FFFFFF }
div.schemeWhite div.stim1,
div.schemeWhite span.stim1 { color: #00FF00 }
div.iat div.explanation {
	display: none; position: absolute; bottom: 0px; left: 16px; right: 16px;
	background-color: transparent; color: inherit; padding: 0;
}
div.iat div.explanation p { margin-bottom: 18px }
div.iat div.explanation p.spcBelow { margin-bottom: 60px }
div.iat table.stimulus { position: absolute; left: 0px; top: 0px; width: 100%; height: 100% }
div.iat table.stimulus td { height: 100%; text-align: center; vertical-align: middle; display: none; font-size: 30px; font-weight: bold }
div.iat table.stimulus img { max-width: 100% }
div.iat div.fail { position: absolute; top: 65%; left: 16px; right: 16px; display: none; text-align: center; font-size: 80px; font-weight: bold; color: red; margin-top: 10px }
div.iat div.footer { display: none; font-weight: bold; text-align: center; margin-top: 40px }

div.ScIAT { width: 100% }
div.ScIAT div.explanation { top: 10%; left: 3%; right: 3%; bottom: auto; }
div.ScIAT div.buttons { position: absolute; left: 0; width: 100%; bottom: 0; height: 30%; }
div.ScIAT div.categories { position: absolute; left: 3%; right: 3%; bottom: 0; height: 25%; }
div.iat div.categories > table { width: 100%; height: 100%; border-collapse: collapse; }
div.iat div.categories > table td { vertical-align: middle; padding: 0; }
div.iat div.categories div.left { text-align: center; max-width: 90%; float: left }
div.iat div.categories div.right { text-align: center; max-width: 90%; float: right }
div.iat div.categories div.dimension { font-size: 1.6em; font-weight: bold; }
div.iat div.categories div.or { font-size: 1.2em; color: gray; padding: 0.3em 0; }
			
div.schemeBlack.ScIAT span.stim0,
div.schemeBlack.ScIAT span.stim1 { color: #000000 }
div.schemeWhite.ScIAT span.stim0,
div.schemeWhite.ScIAT span.stim1 { color: #FFFFFF }

/* Transfer Question */
div.s2iTransfer div.bar {
    position: relative;
    margin: 1em 0 4em 0; border: 1px solid;
background-color: #FFFFFF; 
}
div.s2iTransfer div.bar.inactive {
    display: none; 
}
div.s2iTransfer div.indicator { position: absolute; left: 0; top: 0; height: 100%; background-color: #CCCCCC; }
div.s2iTransfer div.label { position: absolute; left: 0; top: 0; width: 100%; height: 100%; text-align: center; }
		
/* Buttons */
.submitButtons { margin: 32px 0px 10px 0px }
.buttonControl { padding: 4px 0px 10px 0px }
.buttonControl input,
.buttonControl button { font-size: 0.86em }
.buttonBack { text-align: left }
.buttonNext { text-align: right }
.buttonSubmit { text-align: right }
.screenreader { position: absolute; top: -9999px; height: 32px; overflow: hidden }
.invisible { position: absolute; top: -8888px; width: 1px; height: 1px; overflow: hidden  }

button.img { padding: 0; border-width: 0; vertical-align: middle; background-color: transparent; line-height: 0.6em }
button.img::-moz-focus-inner { margin: 0; padding: 0; border-width: 0; }
button.img img { margin: 0; padding: 0; border: 0 none }
button.img:focus,
button.img:hover {
	outline-style: solid;
	outline-width: 1.6px; 
	outline-color: #5273B9; 
}

/* Content that must not be selected */
.unselectable {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
    -webkit-user-drag: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
    user-drag: none;
}

.unselectable input {
	-webkit-touch-callout: default;
	-webkit-user-select: auto;
	-khtml-user-select: default;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

.noprint { }
@media print {
	.noprint { display: none }
}

/* Buttons to make invisible for CustomInputs */
.nopacity {
	filter: alpha(opacity=0);
	opacity: 0;
}

/* Answers printing */
div.print { margin: 0 0 30px 0 }
div.print div.item.print { margin: 0 0 4px 0; padding-bottom: 4px; border-bottom: 1px solid #CCCCCC }
div.print div.option.print { margin: 0 0 4px 0 }
div.print div.item.selected { }
div.print div.option.unselected,
div.print div.option.noanswer,
div.print div.item.noanswer,
div.print div.content.noanswer { color: #666666 }
div.print div.prefixed { overflow: hidden }
div.print div.prefixed div.prefix,
div.print div.prefixed span.prefix { display: block; float: left; margin-right: 0.4em }
div.print div.prefixed div.content,
div.print div.prefixed span.content { display: block; overflow: hidden }
div.print span.wordgap { font-family: "Courier New","Courier",monospaced; font-size: 1.2em }
div.print table.question tr.shadeF1 td { background-color: transparent; border-top: 1px solid #CCCCCC; border-bottom: 1px solid #CCCCCC }
div.print table.question th.separateR,
div.print table.question td.separateR,
div.s2sepV,
div.s2options.s2horizontal > div.s2separator { border-left: 2px solid #CCCCCC }
div.print div.s2item { border-bottom: 1px solid #CCCCCC; background-color: transparent; }
div.print div.s2items { border-top: 1px solid #CCCCCC; }
div.print div.s2item > div.s2input,
div.print div.s2item > div.s2dk {
	padding-top: 0.5em; padding-bottom: 0.5em;
}
div.s2question.print { page-break-inside: avoid; }
div.print div.s2answerInput { display: inline-block; border: 1px solid #999999; padding: 2px 6px 2px 4px; }

div.printText { border: 1px solid; padding: 4px; background-color: white; box-sizing: border-box;  }
div.printText.number { text-align: right }

/* Tooltips */
span.S2Tooltip.anchor {
  	white-space: nowrap;
}
span.S2Tooltip.symbol:after {
	content: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAANBAMAAACAxflPAAAAFVBMVEVoa/1kZ/2Agv25uv7Iyf7y8v////9k8fclAAAAAXRSTlMAQObYZgAAAEVJREFUCNdNjFEKwDAMQoVB/yWQc2z0QinC7n+ExTFY/XkKKgDNQktktBkMMYGDeTOA5czCRetspnaul+W+3B/e5f/3/T9+9wxXI+KBIwAAAABJRU5ErkJggg==');
}
span.S2Tooltip.marker:after {
	content: "?";
  	font-size: 0.8em;
	vertical-align: super;
}
span.S2Tooltip.container {
	position: absolute; z-index: 999;
  	left: -99999px; top: -99999px;
}
span.S2Tooltip.anchor:hover + span.S2Tooltip.container {
  	left: auto; top: auto;
}
span.S2Tooltip.tiptext {
  	position: absolute;
  	left: -100px; top: 1.5em; 
	width: 250px; padding: 0.5em 0.8em 0.7em 0.8em;
	color: #000000; background-color: #dfe6f3; border: 1px solid #5273B9;
	font-weight: normal; text-align: left; 
	display: block;
  	text-indent: 0;
}


/* Border formatting */
.rounded {
  	-webkit-border-radius: 5px;
  	-moz-border-radius: 5px;
  	border-radius: 5px 5px;
}
.shadow {
  	-moz-box-shadow: 5px 5px rgba(0, 0, 0, 0.1);
  	-webkit-box-shadow: 5px 5px rgba(0, 0, 0, 0.1);
  	box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1);
}

/* Avoid auto-zoom on iOS smartphones */
@media screen and (-webkit-min-device-pixel-ratio:0) and (max-device-width:1024px) { 
	select,
	textarea,
	input[type="text"],
	input[type="number"],
	input[type="password"] {
		font-size: 16px;
	}
	div.textinput input[type="text"].smallWidth,
	div.textinput input[type="number"].smallWidth {
		box-sizing: content-box;
	}
}
