/* ======================================= SECTION =====
	bootstrap adjustment (overwriting)
===================================================== */

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
	margin-top: 2px; /* for smaller font */
	/* mobile safari ios < 8: checkbox ?px, radio 1px */
	/* chrome mac: checkbox 2px, radio 1px */
	/* firefox mac: checkbox 2px, radio 3px  */
}

.form-control[disabled],
.form-control[readonly] {
	color: #000;
	opacity: 0.85;  /* 0.5 is to low for mobile safari */
}

fieldset[disabled] .form-control {
	opacity: 0.5;
}

.radio.disabled > label,
.checkbox.disabled > label {
	color: #999;
}

.img-responsive {
	width: auto; /* for ie8 */
}

h1 {
	font-size: 25px;
	font-weight: normal;
}

h4 {
	font-size: 16px;
}


.alert {
	padding: 10px 20px;
}

.btn {
	padding-right: 20px;
	padding-left: 20px;
	/*text-transform: uppercase;*/
}

.modal-header {
	min-height: 52px;
}

/* definition list
-------------------------- */

dd {
	padding-bottom: 10px;
}

@media (min-width: 768px) {
	dt, dd {
		padding-bottom: 3px;
	}

	dd {
		padding-left: 20px;
		border-left: 1px solid #d7d7d7;
	}
}

/* form groups
-------------------------- */

.form-group {
	margin-bottom: 20px;
}

.form-buttons .form-group {
	margin-bottom: 15px;
}

.form-group.long-label .control-label {
    text-align: left;
}

@media (min-width: 768px) {
	.form-group {
		margin-bottom: 15px;
	}
}

/* navbar
-------------------------- */

.navbar-default {
	min-height: 30px;
	border: 0 none;
	background-color: transparent;
	margin-bottom: 0;
}

@media (min-width: 768px) {
	.navbar-nav {
		margin-left: -30px;
	}
}

.navbar-toggle {
	float: left;
	margin-right: 0;
	padding: 5px 10px;
}

/* dropdown
-------------------------- */

.dropdown-header {
	font-size: 12px;
}

.dropdown-menu {
	font-size: 14px;
}

/* ======================================= SECTION =====
	Helper classes for simple element styling
===================================================== */

.requiredIcon {
	font-weight: bold;
	color: #C52241;
	margin-left: 3px;
	font-size: 16px;
	line-height: 0.5em;
}

.restrictedLink,
.restrictedLink:hover,
.restrictedLink:focus {
	text-decoration: line-through;
}

/* to force stacked layout even when columns are defined */

.force-stacked > .form-group > .col-sm-4,
.force-stacked > .form-group > .col-sm-6 {
	width: 100%;
	float: none;
}

.force-stacked > .form-group > .control-label {
	margin-bottom: 5px;
	text-align: left;
}




/* ======================================= SECTION =====
	components
===================================================== */


/* imageSlot
-------------------------- */

.imageSlot img {
	display: block;
}

/* ajax button loader icon
-------------------------- */

#appLock {
	cursor: wait;
}

.btn.busy .glyphicon {
	background: transparent url(../img/loader_black.gif) no-repeat scroll 50% 50%;
	display: inline-block;
	height: 16px;
	margin: -2px 0 -2px -4px;
	overflow: hidden;
	text-indent: -50px;
	width: 16px;
}

/* questionnaire questions and anwsers
-------------------------- */

.questionnaire {
}

.form-horizontal .control-label.secondary-label {
	margin-bottom: 3px;
	font-weight: normal;
}

.secondary-label {
	color: #999;
}

.answerWithFreeText {
}

.answerFreeText {
	margin: 5px 0 0 20px;
}

/* registration summary
-------------------------- */

@media (min-width: 768px) {
    .registration-summary .dl-horizontal dt {
        width: 220px;
    }

    .registration-summary .dl-horizontal dd {
        margin-left: 240px;
    }
}

/* ======================================= SECTION =====
	app layout
===================================================== */

#appContainer {
	max-width: 970px;
}

/* app top bar
-------------------------- */

#appTopBar .navbar-nav > li > a {
	padding: 10px;
}

#appLangs {
	/* because navbar with negative top margin will overlay it */
	position: relative;
	z-index: 1;
}

#appLangs > li > a {
	color: #999;
	padding-left: 10px;
	padding-right: 10px;
	line-height: 1.4em;
}

#appLangs > li > a:hover,
#appLangs > li > a:focus {
	background-color: transparent;
	color: #333;
}

#appLangs > li.active > a {
	background-color: transparent;
	color: #333;
	font-weight: bold;
}

/* Extra small devices Phones (<768px) */

@media (max-width: 767px) {
	#appTopBar .navbar-default {
		margin-top: -40px;
	}
	#appLangs {
		margin-top: 3px;
	}
}

/* app main menu
-------------------------- */

/* Extra small devices Phones (<768px) */

@media (max-width: 767px) {
	#appMainMenu .nav-pills > li {
		float: none;
		margin-bottom: 2px;
	}

	#appMainMenu .nav-pills > li.pull-right {
		float: none !important;
	}
}

/* ======================================= SECTION =====
	appContent
===================================================== */

#appContent {
	padding: 50px 0;
}

#appContent .alert {
	margin-bottom: 40px;
}

#appContent section {
	margin: 0;
}

#appContent section+section,
#appContent section+.sectionWrapper {
	margin-top: 50px;
}

#appContent section:last-child {
}

#appContent section.withHeader {
	border-top: 5px solid #eee;
	padding-top: 30px;
	margin-top: 50px;
}

#appContent section.withHeader > .sectionHeader {
	margin: -45px 0 0 -20px;
	font-size: 20px;
	color: #999;
	background-color: #fff;
	font-weight: normal;
	float: left;
	padding: 0 20px;
}

#appContent .fieldset {
	padding: 0 0 20px 0;
	border-bottom: 1px dashed #ccc;
	margin-bottom: 25px;
}

#appContent .fieldset:last-child {
	border-bottom: 0 none;
	padding-bottom: 0;
}

#appContent .form-horizontal .fieldset:last-child {
	border-bottom: 1px dashed #ccc;
	padding-bottom: 20px;
}


#appContent .fieldset h4.fieldsetHeader-simple {
	margin-left: 0;
	margin-bottom: 20px;
}

/* medium devices and up (=> 768px) */

@media (min-width: 768px) {
	#appContent {
		padding-right: 20px;
		padding-left: 20px;
	}

	#appContent .fieldset h4.fieldsetHeader-simple {
		margin-left: 200px;
	}

}

#appContent .form-buttons .btn {
	min-width: 100px;
}

#appContent dd.questionnaire table {
    font-weight: normal;
}

.form-buttons .requiredIconLegend {
	text-align: right;
	margin-bottom: 20px;
	color: #999;
}

@media (min-width: 768px) {
	.form-buttons .requiredIconLegend {
		margin-top: 6px;
		margin-bottom: 0;
	}
}

/* ======================================= SECTION =====
	pageDialog / lightbox
===================================================== */

#popupContent .loading {
	height: 100px;
	background: transparent url(../img/loader_black.gif) no-repeat scroll 50% 50%;
}

#popupContent h1 {
	padding: 20px 0;
	margin: 0;
}

/* ======================================= SECTION =====
	appLock
===================================================== */

#appLock {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9999;
	/*for ie8,9,10*/
	background-color: #000;
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: alpha(opacity=0);
}

/* ======================================= SECTION =====
	input-text
===================================================== */

.form-horizontal .form-group.input-text-container {
    margin-left: 0;
    margin-right: 0;
}

.form-horizontal .form-group.input-text-container .input-text-label {
    padding-bottom: 3px;
}
