/* ============================================================
  RESET
============================================================ */

* {
	padding: 0;
	margin: 0;
	box-sizing:border-box; 
	-moz-box-sizing:border-box; /* Firefox */ 
	-webkit-box-sizing:border-box; /* Safari */ 
}

input[type=button], input[type=submit], button[type=submit] {
	-webkit-appearance: none;
	cursor: pointer;
}

table {
	border-collapse: collapse;
}

a, a img {
	outline: none;
	border: none;
	text-decoration: none;
}

img {
	max-width: 100%;
	/* height: auto;	wordpress images height fix to keep aspect ratio */
}

p {
	margin-top: 0px;
	margin-bottom: 20px;
}

ul, ol {
	list-style-position: inside;
	margin-bottom: 20px;
}

.hp {
	position:absolute;
	left: -10000px;
}

/* ============================================================
  GENERAL
============================================================ */

body {
	font-family: 'Source Sans Pro', 'helvetica neue', helvetica, arial; 
	color: #444; 
	line-height: 1.8; 
	font-size: 16px; 
	background-color: white;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

footer {
	position:fixed;
	bottom:0px;
	left:0px;
	width:100%;
	text-align:center;
	font-size:12px;
	line-height: 30px;
	z-index:500;
	background-color:#f1f1f1;
	-webkit-box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.25);
}

.vertical-tabs {
	height:400px;
	border-right: 2px solid black;
}

h1, h2, h3, h4, h5 {
	font-weight: bold;
	margin-top: 0px;
	margin-bottom: 20px;
	line-height: 1.2;
	color: #222;
}

h1 {
	font-size: 32px;
	margin-bottom: 40px;
	text-align: center;
}

h2 {
	font-size: 26px;
}

textarea.form-control {
	height: 80px;
}

.padded {
	padding: 50px 0px;
}

.gray {
	background-color: rgba(140, 130, 121, 0.2);
}

.bold {
	font-weight: bold !important;
}

.overlay {
	position: absolute;
	top: 0px;
	right: 0px;
	left: 0px;
	bottom: 0px;
	z-index: 0;
	background: rgba(0,0,0,0.1);
}

header {
	background-color: rgb(0, 51, 160);
}

#bars {
	float: right;
	font-size: 30px;
	color: white;
	background-color: transparent;
	border: none;
	outline: none;
}

.panel-heading {
	padding: 0px;
}

.panel-heading a {
	display: block;
	padding: 10px 15px;
}

.panel-body ul {
	margin-left: 15px;
}

.arrow-steps {
	float: left; 
	width: 100%;
	margin-bottom: 20px;
}

.arrow-steps .step {
	font-size: 14px;
	text-align: center;
	color: #444;
	cursor: default;
	margin-right: 6px;
	padding: 0px 0px 0px 20px;
	line-height: 36px;
	height: 36px;
	white-space: nowrap;
	/*min-width: 100px;*/
	width: calc(14.2% - 6px);
	float: left;
	position: relative;
	background-color: #d9e3f7;
	margin-bottom: 3px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none; 
}

.arrow-steps .step:after,
.arrow-steps .step:before {
	content: " ";
	position: absolute;
	top: 0;
	right: -17px;
	width: 0;
	height: 0;
	border-top: 19px solid transparent;
	border-bottom: 17px solid transparent;
	border-left: 17px solid #d9e3f7;	
	z-index: 2;
}

.arrow-steps .step:before {
	right: auto;
	left: 0;
	border-left: 17px solid white;	
	z-index: 0;
}

.arrow-steps .step:first-child:before {
	border: none;
}

.arrow-steps .step:first-child {
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
}

.arrow-steps .step span {
	position: relative;
}

/* .arrow-steps .step.done span:before {
	content: "✓";
	position: absolute;
	top: -8px;
	left: -20px;
} */

.arrow-steps .step.current {
	color: #fff;
	background-color: #0097A9;
}

.arrow-steps .step.current:after {
	border-left: 17px solid #0097A9;
}

nav > ul > li > a:focus, nav > ul > li > a:hover {
	color: #F6CF00 !important;
	text-decoration: none !important;
}

nav .dropdown-menu a {
	text-align: center;
	font-size: 16px;
}

@media only screen and (max-width : 1024px) {
	
	.modal-open {
		position: fixed;
		width: 100%;
	}
	
}

@media only screen and (max-width : 767px) {

	nav {
		position: absolute;
		right: 0px;
		top: -300px;
		background-color: #0033a0;
		z-index: 100;
		-webkit-transition: all 0.2s ease-out;
		-moz-transition: all 0.2s ease-out;
		-o-transition: all 0.2s ease-out;
		transition: all 0.2s ease-out;
	}
	
	nav.active {
		top: 59px;
	}
	
	nav li {
		list-style-type: none;
	}
	
	nav a {
		color: white;
		font-size: 18px;
		display: block;
		padding: 5px 20px;
	}
	
	#open-notepad {
		padding: 5px 10px !important;
	}
	
}

@media only screen and (max-width : 480px) {

	.arrow-steps .step {
		padding: 0px 5px 0px 20px !important;
	}
	
	#notepad {
		width: 90% !important;
	}
	
	#notepad textarea {
		height: 100px !important;
	}
	
	footer {
		line-height: normal;
		padding: 5px;
	}

}

@media only screen and (min-width : 480px) {
	.row {
		margin-left: 20px;
		margin-right: 20px;
	}
}

@media only screen and (min-width : 768px) {
	.row {
		margin-left: -15px;
		margin-right: -15px;
	}

	nav {
		float: right;
		font-size: 16px;
		font-weight: bold;
	}

	nav ul {
		list-style-type: none;
		margin: 0px;
		padding: 0px;
	}

	nav > ul > li {
		float: left; 
		margin-bottom: 0px;
		margin-left: 25px;
	}

	nav > ul > li > a {
		color: white;
		display: block;
		padding: 15px 0px;
	}
	
	nav > ul > li.nav-split {
		border-right: 1px solid #5570a9;
		width: 1px;
		cursor: default;
	}
	
	nav > ul > li.nav-split > span {
		display: block;
		padding: 15px 0px;
	}
	
	nav .dropdown-menu {
		min-width: 140px;
	}
	
	nav .dropdown-menu a {
		font-size: 16px;
	}
}

@media only screen and (min-width : 992px) {
	
}


@media only screen and (min-width : 1200px) {

}

.vjs-poster {
	background-size: cover !important;
}

.custom-control * {
	cursor: pointer;
}

.custom-control {
	position: relative;
	display: block;
	min-height: 1.5rem;
	padding-left: 3rem;
}

.custom-control input[type=checkbox], .custom-control input[type=radio] {
	box-sizing: border-box;
	padding: 0;
}

.custom-control-input {
	position: absolute;
	z-index: -1;
	opacity: 0;
}

.custom-control-label {
	margin-bottom: 0;
	display: inline-block;
	width: 100%;
	padding-top: 3px;
	font-weight: 400;
}

.custom-control-input:active~.custom-control-label::before {
	color: #fff;
	background-color: #59afc1;
}

.custom-checkbox .custom-control-label::before {
	border-radius: .25rem;
	border: 1px solid #babcbd;
}

.custom-control-label::before {
	position: absolute;
	top: 1rem;
	left: 0;
	display: block;
	width: 1.6rem;
	height: 1.6rem;
	pointer-events: none;
	content: "";
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-color: #dee2e6;
}

.custom-control-label::after {
	position: absolute;
	top: 0.8rem;
	left: -0.2rem;
	display: block;
	width: 2rem;
	height: 2rem;
	content: "";
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 50% 50%;
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::before {
	background-color: #3a8ea0;
	border: 1px solid #2d7180;
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::after {
	background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
}

.custom-radio .custom-control-label::before {
    border-radius: 50%;
	border: 1px solid #babcbd;
}

.custom-radio .custom-control-input:checked~.custom-control-label::before {
    background-color: #3a8ea0;
	border: 1px solid #2d7180;
}

.custom-radio .custom-control-input:checked~.custom-control-label::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E");
}

/* ============================================================
  WAITING ROOM
============================================================ */

.thumb {
	display: block;
	position: relative;
	overflow: hidden; 
	height: 220px;
	width: 100%;
	margin: 0 auto 30px auto;
	background-position: center center;
	background-repeat: no-repeat; 
	background-size: cover;
}

.annotation {
	position: absolute;
	padding: 0px 20px;
	width: 100%;
	top: 50%;
	left: 0;
	-ms-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 1;
	font-size: 18px;
	color: white;
	line-height: 1.2;
	text-align: center;
}

.annotation h2 {
	color: white;
	font-size: 20px;
	margin-bottom: 10px;
}

.thumb .overlay { 
	background-color: rgba(0,0,0,0.2);
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	-o-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}

.thumb:hover .overlay, .thumb.completed .overlay {
	background-color: rgba(0,0,0,0.5);
}

.thumb.completed:hover .overlay {
	background-color: rgba(0,0,0,0.2);
}

.thumb .completed {
	display: none;
	position: absolute;
	z-index: 1;
	top: 20px;
	right: 20px;
	color: white;
}

.thumb.completed .completed {
	display: block;
}

.thumb.completed .view {
	position: absolute;
	top: 10px;
	left: 20px;
	font-size: 24px;
	color: white;
}

#concern-radios label.radio-inline {
	margin-right: 10px;
}

#concern-radios label.radio-inline input {
	position: static;
	cursor: pointer;
}

/*.sect1, .sect2 {
	display: none;
}

.sect1.active, .sect2.active {
	display: block;
}*/

@media only screen and (min-width : 480px) {
	.thumb {
		height: 250px;
	}

	.annotation {
		font-size: 20px;
	}

	.annotation h2 {
		font-size: 22px;
	}
}

@media only screen and (min-width : 768px) {
	.thumb {
		width: 80%;
	}
}

@media only screen and (min-width : 992px) {
	.thumb {
		width: 100%;
		height: 230px;
	}
}

@media only screen and (min-width : 1200px) {

}

/* ============================================================
  VIRTUAL CASE
============================================================ */

/* .square-button {
	float: left; 
	display: block;
	width: calc(25% - 10px);
	text-align: center;
	background-color: #0097A9;
	color: white;
	padding: 20px 10px;
	margin-right: 10px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	cursor: pointer;
} */

#open-notepad {
	font-size: 19px;
	position: fixed;
	z-index: 600;
	bottom: 30px;
	left: 50%;
	margin-left: -100px;
	width: 200px;
	/*bottom: 5px;
	right: 5px;*/
	padding: 10px 0px;
	text-align: center;
	background-color: #399739;
	color: white;
	font-weight: bold;
	cursor: pointer;
}

#notepad {
	position: fixed;
	z-index: 600;
	bottom: 0px;
	right: -550px;
	width: 500px;
	margin-bottom: 30px;
	border-color: #f1f1f1;
	-webkit-box-shadow: 7px 7px 18px -7px rgba(0,0,0,0.1);
	-moz-box-shadow: 7px 7px 18px -7px rgba(0,0,0,0.1);
	box-shadow: 7px 7px 18px -7px rgba(0,0,0,0.1);
	-webkit-transition: all .2s ease-out;
	-moz-transition: all .2s ease-out;
	-o-transition: all .2s ease-out;
	transition: all .2s ease-out;
}

#notepad.active {
	right: 10px;
}

#notepad .panel-heading {
	font-weight: bold;
	padding: 15px 15px;
	background-color: #399739;
	color: white;
}

#notepad .panel-title {
	font-size: 19px !important;
}

#notepad textarea {
	width: 100%;
	height: 250px;
	border: none;
	resize: none;
	background-color: transparent;
	outline: none;
}

#close-notepad {
	float: right;
	position: relative;
	top: -18px;
	padding: 0px 10 0px 15px;
	font-size: 30px;
	/* width: 20px;
	height: 20px; */
	/* background-color: red; */
	color: white;
	cursor: pointer;
}

.nav-pills {
	font-weight: bold;
}

#consult-next {
	white-space: normal;
}

#consult-records {
	text-align: center;
}

#consult-records button {
	font-weight: bold;
	font-size: 19px !important;
}

.square-button {
	display: block;
	/*padding: 75px 0px;*/
	padding: 35px 5px;
	outline: none;
	background-color: #f8f8f8;
	margin-bottom: 30px;
	/*color: #0097A9;*/
	color: #007D8C;
	font-weight: bold;
	font-size: 19px;
	-webkit-box-shadow: 7px 7px 18px -7px rgba(0,0,0,0.1);
	-moz-box-shadow: 7px 7px 18px -7px rgba(0,0,0,0.1);
	box-shadow: 7px 7px 18px -7px rgba(0,0,0,0.1);
	text-align: center;
	border: 1px solid #d7d7d7;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	-webkit-transition: all .2s linear;
	-moz-transition: all .2s linear;
	-o-transition: all .2s linear;
	transition: all .2s linear;
	cursor: pointer;
}

.square-button.inactive {
	opacity: 0.5; 
	cursor: default;
	color: #999;
}

.square-button.active {
	/*background-color: #0097A9;*/
	background-color: #007D8C;
	color: white;
}

.square-button:hover {
	text-decoration: none;
	background-color: white;
}

.square-button.inactive:hover {
	background-color: #f8f8f8;
}

.square-button.active:hover {
	background-color: #0097A9;
	color: white;
}

/*.square-button.active:hover {
	background-color: #f8f8f8;
}*/

#square-content {
	padding-top: 30px;
	border-top: 2px dashed #ccc;
}

.question-buttons {
	float: left;
	width: 100%;
}

.question-buttons li {
	list-style-type: none;
	border-bottom: 1px solid #ddd;
}

.question-buttons li a {
	display: block;
	padding: 7px 12px;
	cursor: pointer;
	font-size: 16px;
}

.question-buttons li a.active {
	/*background-color: #f5f5f5;*/
	color: white;
	background-color: #1d5b8f;
}

.question-buttons li ul {
	display: none;
}

.question-buttons li ul.active {
	display: block;
}

.question-buttons li ul li {
	border-top: 1px solid #ddd;
	border-bottom: none;
}

.question-buttons li ul li a {
	position: relative;
	padding-left: 60px;
}

.question-buttons li ul li a:before {
	position: absolute;
	top: 8px;
    left: 30px;
	content: "\f178";
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: none;
}

/*#question-header {
	float: left;
	width: 100%;
	margin-bottom: 20px;
}

#question-header h2 {
	margin-bottom: 0;
	font-size: 24px;
}

#question-header td {
	vertical-align: top;
}

#question-header td:last-child {
	width: 300px;
	text-align: right;
}*/

#question-header {
	margin-bottom: 20px;
	font-size: 24px;
}

#question-close {
	color: #337ab7;
	font-size: 18px;
	line-height: 18px;
	font-weight: bold;
	cursor: pointer;

}

#question-close span {
	position:relative;
	top: 5px;
	font-size: 36px;
}

#question-close:hover {
	color: #1F5E94;
	text-decoration: none;
}

form#rank-changer p {
	margin-bottom: 5px;
}

/*form#rank-changer ul:first-child {
	margin-left: 30px;
}

form#rank-changer ul:first-child li {
	padding: 0px;
	margin: 0px;
}*/

.sortable {
	padding: 0px;
	list-style-type: none;
	width: 100%;
	float:left;
}

.sortable li {
	margin-bottom: 5px; 
	display: block;
	/*border: 1px dashed #ccc;*/
	background-color: #f1f1f1;
	-webkit-border-radius: 3px;
    -moz-border-radius: 3px;
   	border-radius: 3px;
	/*padding: 6px 10px;*/
	cursor: move;
}

.sortable .sortable-div {
	width: 90%;
	padding-left: 10px;
	line-height: 40px;
	display: inline-block;
}

.sortable .diagnoses-close, .sortable .further_test_close {
	float: right;
	font-size: 20px;
	/*margin-top: 4px;*/
	cursor: pointer;
	line-height: 40px;
	padding: 0px 15px 0px 0px;
}

#make-decision {
	position: absolute;
	top: 0px;
	right: 0px;
	background-color: #434c71;
	color: white;
	font-size: 13px;
	padding: 10px 14px;
}

#consult-guide {
	font-size: 18px;
	font-weight: bold;
	color: #222;
}

#consult-buttons {
	margin-top: 10px;
	text-align: center;
}

.nav-tabs {
	border-bottom: 2px solid #333;
}

.nav-tabs>li {
	margin-bottom: -2px;
	font-weight: bold;
	font-size: 17px;
}

.nav-tabs>li.active>a, .nav-tabs>li.active>a:hover, .nav-tabs>li.active>a:focus {
	border: 2px solid #333;
	border-bottom-color: transparent;
	color: #222;
}

#text-response {
	font-size: 22px;
	color: #D1352A;
	font-weight: bold;
	margin-bottom: 20px;
	padding: 10px;
	text-align: center;
}

#rank-change-radios label.radio-inline {
	vertical-align: unset;
	margin-left: 15px;
	line-height: normal;
	cursor: pointer;
}

#rank-change-radios label.radio-inline input {
	cursor: pointer;
}

@media only screen and (min-width : 480px) {
	
}

@media only screen and (min-width : 768px) {
	
	#text-response {
		padding: 20px;
	}
	
}

@media only screen and (min-width : 992px) {
	#consult-buttons {
		text-align: right;
	}
	
	#consult-records {
		text-align: left;
	}

	#text-response {
		padding: 80px;
	}

}

@media only screen and (min-width : 1200px) {

}

/* ============================================================
  SURVEY
============================================================ */

.scale_table {
	width: 100%;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 0;
}

.scale_table td {
	text-align: center;
	vertical-align: middle;
	border: 1px solid #999;
	background-color: #fff;
	border-right-style: none;
}

.scale_table td:first-child {
	border-radius: 4px 0 0 4px;
	background-clip: padding-box;
}

.scale_table td:last-child {
	border-right-style: solid;
	border-radius: 0 4px 4px 0;
	background-clip: padding-box;
}

.scale_table input {
	display: none;
}

.scale_table label {
	cursor: pointer;
	display: block;
	padding: 10px 0px;
	margin: 0;
}

.scale_table label:hover {
	background-color: #F5F5F5;
}

.scale_table input:checked + label {
	background-color: #333;
	color: #fff;
}

.slideline-arrow {
	display: block;
	z-index: 100;
	width: 0; 
	height: 0; 
	position: absolute;
        top: 5px;
	margin-left: -15px;
}

.slideline-left {
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent; 
	border-right: 30px solid black;
}

.slideline-right {
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent; 
	border-left: 30px solid black; 
}

.slideline {
	border-radius: 20px!important;
	background: transparent!important;
	border: none!important;
	height: 5px!important;
	margin: 0 5px;
	padding: 15px 0;
	position: relative;
	text-align: left;
}

.slideline-line {
	position: absolute;
	height: 4px;
	top: 13px;
	left: 0;
	width: 100%;
	background: #666;
	border-radius: 20px;
}

.slideline input {
	display: none;
}

.slideline label {
	position: absolute;
	top: 3px;
	background: white;
	border: 2px solid black;
	width: 25px;
	height: 25px;
	border-radius: 20px;
	margin-left: -13px;
	cursor: pointer;
}

.slideline label:hover {
	background-color: #F5F5F5;
}

.slideline input:checked + label {
	background-color: #333;
	color: #fff;
}

/* ============================================================
  FEEDBACK
============================================================ */

.feedback-videos {
	float: left;
	width: 100%;
}

.feedback-videos li {
	list-style-type: none;
	border-bottom: 1px solid #ddd;
}

.feedback-videos li a {
	display: block;
	padding: 6px 0px;
	cursor: pointer;
	font-size: 15px;
}

.feedback-videos li a.active {
	background-color: #f5f5f5;
}

.feedback-box {
	float: none !important;
	border: 1px solid #ddd;
	margin: 0px;
	margin-top: 5px;
	padding: 0px;
	border-radius: 3px;
}

.feedback-box a {
	display: block;
	cursor: pointer;
	padding: 6px 15px;
	margin: 0px;
}

#key_message {
	border-radius: 3px;
	color: white;
	background-color: #5772BD;
}

a.download-box {
	/*background-color: #f7f7f7;*/
	background-color: #0097a9;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	outline: none;
	display: block;
	font-size: 19px; 
	font-weight: bold;
	padding: 20px 10px;
	text-align: center;
	margin-bottom: 10px;
	color: white;
}

a.download-box:focus {
	text-decoration: none;
}

a.download-box:hover {
	text-decoration: none;
	/*background-color: #f5f5f5;*/
	background-color: #008190;
}