/***************************************************************************
 Common Forms
***************************************************************************/
/* Form layout - left and right columns */
div#right_col_a {
	width:340px;
	float:left;
	padding-top:10px;
}
div#right_col_b {
	width:425px;
	float:right;
	padding-top:10px;
}

/* Alternative form layout - upper and lower rows */
div#right_row_a {
	
}
div#right_row_b {
	
}

/* Instructional messages */
span.instruction_bottom {
	padding-top:5px;
	display:block;
	font-style:italic;
}

/* Form structure tables */
table.fw {
	width:100%;
}
table.right_structure td, table.right_structure th {
	padding:3px;
}

/* Form elements */
select.fw {
	width:100%;
}
input.txt.fw {
	width:99%;
}
textarea.fw {
	width:99%;
}

/***************************************************************************
 Common Sections
***************************************************************************/
/* The all important section container classes */
div.section_container {
	position:static; /* allows pdf print drop-down to paint on top */
	background-color:#e6e7e8;
}
div.section_container_inner {
	padding:6px 6px 16px 6px;
	background-color:transparent;
}
div.cc_inner_data {
	background-color:#fff;
}
table.cc_table {
	width:100%;
}
table.cc_table.bt {
	border-top:1px solid #888;
}
table.cc_table.bb {
	border-bottom:1px solid #888;
}
table.cc_table th, table.cc_table td {
	padding:4px;
}
table.cc_table td.left_col {
	background-color:#f39254;
	color: #FFF;
}
table.cc_table td.help_col {
	width:30px !important;
	background-color:#f39254;
	vertical-align:top;
}
table.cc_table td.element_col {
	width:auto;
	font-size:12px;
	background-color:#fff;
}
table.cc_table img.help_tooltip {
	cursor:help;
	float:right;
}
div.max_chars_words {
	float:right;
	font-size:11px;
	padding:3px 6px 3px 24px;
	margin:0 50px 10px 0;
	background:#F1F4F8 url(/images/icons/information.gif) no-repeat 4px 50%;
	border:1px solid #ABBCD3;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	-o-border-radius:3px;
	border-radius:3px;
}
table.cc_table td.br {
	border-right:1px solid #ccc;
}
div.empty_section_container {
	padding:8px;
	width:98%;
	margin:0 auto;
}
div.element_wrapper {
	min-height:55px;
}
div.element_wrapper.invis {
	min-height:26px;
	text-align:center;
}

/* Section descriptors */
div.section_description {
	margin-bottom:10px;
}
div.cd_left {
	float:left;
	width:580px;
}
div.cd_right {
	float:right;
	width:200px;
}
div.cd_left p {
	color:#666;
	font-size:12px;
}
div.cd_right p {
	font-size:11px;
	text-align:right;
}

/* Control box for each element */
div.control_box {
	margin:4px 0px 2px 0px;
	padding:4px;
	padding-right:0px;
	padding-bottom:2px;
	background-color:#E3F7E3;
	border:1px solid #95C897;
}

/* This over-rides the font size back down to normal after the "enlargening"
   that was applied to generally make the text bigger in rich text boxes. This
   can be found in the "_base_pdf.css.php" css file.
*/
div.control_box * {
	font-size:11px;
}
div.control_box .clear {
	/* Stops IE from over-riding the font size */
	font-size:0px;
}
div.control_box_inner {
	width:99.5%;
	/* Relative positioning is applied at page load in JS */
}
div.element_functions {
	float:left;
	margin-top:2px;
}
div.element_functions a {
	display:block;
	float:left;
}
div.element_data {
	float:left;
	margin:2px 0 0 4px;
	width:220px;
	overflow:hidden;
}
div.element_controls {
	float:right;
}
div.element_controls select {
	font-size:11px;
	margin-right:3px;
	line-height: 30px;
	height: 30px;
}
div.element_controls label {
	float:right;
	margin-top:2px;
	margin-right:2px;
}

/* Menu system */
div.m_btn {
	float:left;
	padding:0px 34px;
	margin-right:5px;
	cursor:pointer;
	text-align:center;
	background-color:#C9EDC9;
	border:1px solid #95C897;
	border-right-color:#488A4E;
	border-bottom-color:#488A4E;
}
div.m_btn.hover {
	background-color:#ACE3AC;
	border-color:#488A4E;
	border-right-color:#95C897;
	border-bottom-color:#95C897;
}
div.m_container {
	padding:4px 0;
	display:none;
	top:-64px;
	left:-5px;
	position:absolute;
	background-color:#E3F7E3;
	border:1px solid #95C897;
	border-bottom:none;
	-webkit-border-radius:0px 6px 0px 0px;
	border-radius:0px 6px 0px 0px;
}
div.m_container span.disabled_item {
	display:block;
	width:106px;
	padding:1px 8px 2px 8px;
	color:#999;
}
div.m_container a {
	display:block;
	margin:0 5px;
	padding:1px 8px 2px 8px;
}
div.m_container a:link, div.m_container a:visited {
	background-color:transparent;
}
div.m_container a:hover, div.m_container a:active {
	background-color:#C9EDC9;
}
table.m_table {
	border-collapse:collapse;
}
table.m_table th, table.m_table td {
	padding:0;
	margin:0;
}
table.m_table td.br {
	border-right:1px solid #B0D7B3;
}
/* End menu system */

table.bindings {
	width:365px;
	margin-top:1px;
	border:1px solid #aaa;
}
table.bindings.l {
	float:left;
}
table.bindings.r {
	float:right;
}
table.bindings th, table.bindings td {
	padding:1px;
}
table.bindings th {
	font-weight:bold;
	background-color:#FFC;
	border-bottom:1px solid #888;
}
table.bindings td {
	font-weight:normal;
	background-color:#FFF;
}

/* Re-orderable bindings lists */
table.bindings td ul {
	margin-bottom:1px;
	margin-left:1px;
}
table.bindings td ul li {
	list-style:none;
	width:360px;
	display:block;
	margin:0px;
	padding:0px;
}
table.bindings td ul li:hover {
	background-color:#E4EDFA;
}
table.bindings td ul li .b_l {
	width:246px;
	float:left;
	overflow:hidden;
}
table.bindings td ul li .b_r {
	width:110px;
	float:right;
	overflow:hidden;
	text-align:right;
	padding-right:2px
}

/***************************************************************************
 Common Elements
***************************************************************************/
/* Radio-button table */
table.radio_button_table {
	width:auto;
	border-top:1px solid #ccc;
	border-left:1px solid #ccc;
	background-color:#fff;
}
table.radio_button_table th, table.radio_button_table td {
	border-bottom:1px solid #ccc;
	border-right:1px solid #ccc;
	text-align:center;
}
table.radio_button_table td input {
	margin:0px 12px;
}
table.radio_button_table td img {
	margin:0 auto;
}
table.radio_button_table th {
	font-weight:bold;
	background-color:#eaeaea;
}
table.radio_button_table th.left {
	text-align:left;
}
table.radio_button_table th div {
	padding-right:5px;
}

/* Tabular input */
table.tabular_input {
	width:auto;
	border-top:1px solid #ccc;
	border-left:1px solid #ccc;
	background-color:#fff;
}
table.tabular_input th, table.tabular_input td {
	border-bottom:1px solid #ccc;
	border-right:1px solid #ccc;
	text-align:center;
}
table.tabular_input th {
	font-weight:bold;
	background-color:#eaeaea;
}
table.tabular_input td input,
table.tabular_input td textarea {
	width:95% !important;
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
}
table.tabular_input th.left {
	text-align:left;
}
table.tabular_input th div {
	padding-right:5px;
}

/* Tabular input - with text */
.text_upper {
	margin-bottom:0px;
}
table.tabular_input.upper_lower {
	margin-top:5px;
	margin-bottom:5px;
}
.text_lower {
	margin-top:0px;
}
.element_wrapper table.use_defined_styles {
	background-color: #FFF;
}

/* Tabular input - general */
table.table_align_text_left td * {
	text-align:left;
}
table.table_align_text_center td * {
	text-align:center;
}
table.table_align_text_right td * {
	text-align:right;
}

/* Strung text */
div.strung_text_container {
	float:left;
	margin-bottom:3px;
}
input.strung_text {
	float:left;
	width:150px;
	margin-right:10px;
}
label.strung_text {
	float:left;
	width:70px;
	font-weight:bold;
}
div.clear.strung_text {
	height:0px;
}

/* Keep bullet points standard */
td.element_col ul, td.element_col ol {
	margin-left:28px;
	margin-bottom:10px;
}
td.element_col ul li {
	list-style:disc; 
}
td.element_col ol li {
	list-style:decimal;
}

/* Greyed-out upper and lower text representors */
div.greyed_out_text {
	padding:4px;
	margin-bottom:2px;
	border:1px solid #95C897;
	background-color:#E3F7E3;
}
div.greyed_out_text.upper {
	margin-bottom:5px;
}
div.greyed_out_text.lower {
	margin-top:5px;
}

/* Text with drop-down descriptor */
select.drop_down_descriptor {
	margin:5px auto;
}

/* Text with n/a option */
div.checkbox_na {
	margin:5px auto;
}

/* Version Control */
#preview_dbv,
#preview_dbv_tc {
	height:446px;
	overflow-x:hidden;
	overflow-y:scroll;
	margin-top:10px;
	padding:3px;
	border:1px solid #ccc;
}
#preview_dbv_tc {
	overflow-y:hidden;
}
#preview_dbv_tc > iframe {
	width: 100%;
	height: 100%;
}
#preview_dbv p.info {
	background:transparent url(/images/icons/icon_info.png) no-repeat 10px 50%;
	padding:9px 14px 9px 28px !important;
}
#dsv_slots {
	width:320px;
	height:30px;
	margin:15px auto;
	border:1px solid #ccc;
	background-color:#f1f1f1;
}
.v_slot {
	width:20px;
	height:20px;
	float:left;
	margin:4px 5px;
	overflow:hidden;
	border:1px solid #bbb;
	background-color:#fff;
}
.v_slot.filled {
	background-color: #f05930;
	border:1px solid #f05930;
}
#preview_dbv .left_col b a {
	color: #fff;
}

/* FORM ELEMENTS REPLACE STYLES */
.form_element {
	display: inline-block;
}
.form_element > input {
	display: none !important;
}
.form_element.checkbox .the_element,
.form_element.radio .the_element {
	display: inline-block;
	width: 16px;
	height: 16px;
	cursor: pointer;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100%;
	vertical-align: middle;
	border: 1.5px solid #e6e7e8;
}
.form_element.checkbox .the_element {
	background-color: #FFF;
	cursor: pointer;
	background-size: 75%;
}

.section_container .form_element.checkbox .the_element,
.sub_panel .form_element.checkbox .the_element {
	border-color: #d8d9da;
}
.form_element.checkbox .the_element.checked {
	background-image: url(/images/design_2016/orange_tick_icon.svg);
}
.form_element.checkbox .the_element.disabled {
	background-color: #cecfd0;
	cursor: default;
}
.form_element.checkbox .the_element.disabled.checked {
	background-image: url(/images/design_2016/grey_tick_icon.svg);
}
.form_element.checkbox .the_element.hover,
.form_element.checkbox .the_element:not(.disabled):not(.checked):hover {
	background-image: url(/images/design_2016/grey_tick_icon.svg);
}

.section_container .form_element.radio .the_element,
.sub_panel .form_element.radio .the_element {
	border-color: #d8d9da;
}
.form_element.radio .the_element {
	background-image: url(/images/design_2016/white_circle.svg);
	border-radius: 8px;
}
.form_element.radio .the_element.checked {
	background-image: url(/images/design_2016/white_circle_orange_inner.svg);
	cursor: default;
}
.form_element.radio .the_element.disabled {
	background-image: url(/images/design_2016/grey_circle.svg);
	cursor: default;
}
.form_element.radio .the_element.disabled.checked {
	background-image: url(/images/design_2016/grey_circle_d_grey_inner.svg);
	cursor: default;
}
.form_element.radio .the_element.hover,
.form_element.radio .the_element:not(.disabled):not(.checked):hover {
	background-image: url(/images/design_2016/white_circle_grey_inner.svg);
}




select {
	border: 1px solid #e6e7e8;
	min-height: 16px;
	padding: 2px 5px;

	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
select[disabled] {
	background-color: #cecfd0;
}


.buttons_float_bottom {
	clear: both;
	min-height: 26px;
	margin-top: 10px;
}
.panel.height_modified .buttons_float_bottom {
	position: absolute;
	left: 15px;
	right: 15px;
	bottom: 8px;
}


/* END: FORM ELEMENTS REPLACE STYLES */

