/* Place your Bootstrap and SmartGuide overwrites here as well as any custom classes */
/* General properties */
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700");

body.pdf {
	margin: 15px;
	padding: 15px;
}

body.pdf .panel {
	page-break-inside: avoid;
}

.recap .panel-heading .panel-title {
	font-weight: bold;
}

.recap .panel-body>.row div[class^='col-']>div:not([class='row']) {
	border-bottom: 1px solid #d2d7da;
}

body {
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.846;
	color: #666666;
	background-color: #ffffff;
}

textarea.autoexpand {
	display: block;
	min-height: 37px;
	height: 37px;
}

.form-control {
	width: 100%;
}

.form-control.inline {
	display: inline !important;
	width: auto !important;
}

.form-check-label {
	font-weight: normal;
}

.has-feedback .form-control {
	padding-right: 10px;
}

div.inline {
	display: inline-block;
}

/* Sticky Footer */
html {
	position: relative;
	min-height: 100%;
}

body {
	margin-bottom: 40px;
	/* Margin bottom by footer height */
}

.footer {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 40px;
	/* Set the fixed height of the footer here */
	background-color: #f5f5f5;
}

/* Sticky Footer */

#repeat-errors-validation {
	margin: 10px;
	padding: 5px;
}

span.required {
	color: #d3080c;
	font-weight: 700;
}

.required-input-no-label {
	position: absolute;
	left: 0rem;
	top: 0.6rem;
}

input.tight,
select.tight {
	padding-left: 5px;
	padding-right: 5px;
}

.link-help {
	color: #295376;
}

label.inline {
	display: inline;
}

.label {
	margin-top: 2px;
	margin-left: 2px;
}

.affix-top,
.affix {
	position: static;
}

#leftcol,
#main {
	margin-top: 140px;
}

#loader {
	z-index: 10000;
	border: none;
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	position: fixed;
}

#spinner {
	position: fixed;
	opacity: 75%;
	left: 50%;
	top: 50%;
	z-index: 10000;
	width: 60px;
	height: 60px;
	margin: -65px 0 0 -65px;
	border: 16px solid #ccc;
	border-radius: 50%;
	border-top: 16px solid #26374a;
	-webkit-animation: spin 2s linear infinite;
	animation: spin 2s linear infinite;
}

.mb-0 {
	margin-bottom: 0px;
}

@-webkit-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
	}
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

.modal-header,
.modal-body,
.modal-footer {
	background-color: #ffffff;
}

.overlay-def header {
	background-color: #2e5274;
	padding-top: 0px !important;
	padding-right: 0px !important;
}

.modal-header .close {
	color: #fff;
	text-decoration: none;
	margin-top: 8px !important;
	margin-right: 15px;
}

.modal-title {
	font-size: 18px
	font-weight: 700;
	display: inline-flex;
}

.modal-backdrop {
	opacity: 0.5 !important;
}

@media (min-width: 979px) {
	#sidebar.affix-top {
		position: static;
		margin-top: 30px;
	}

	#sidebar.affix-bottom {
		position: relative;
	}

	#sidebar.affix {
		position: fixed;
		top: 115px;
	}
}

/* Tooltip and popover */
.tooltip,
.popover {
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* Logo */
@media (max-width: 768px) {
	img.logo {
		max-width: 60%;
	}
}

@media (min-width: 768px) {
	.page-header h1 {
		font-size: 24px;
		margin: 40px 0;
	}
}

@media (min-width: 768px) {
	.page-title h2 {
		font-size: 24px;
	}
}

.page-title {
	padding-bottom: 1rem;
}

.smartlet-title {
	padding-top: 1.25rem;
	padding-bottom: 0.625rem;
}

/* DragOver & DropZone for Multiple Uploads */
div.drag-over {
	background-color: black;
	opacity: 0.5;
}

div.drop-popup {
	display: none;
	background: linear-gradient(to BOTTOM, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.5));
	border-style: dashed;
	border-color: #666666;
	border-width: 2px;
	border-radius: 4px;
	padding: 5px;
	padding-bottom: 20px;
	padding-left: 15px;
	padding-right: 15px;
	z-index: 20;
	/* Fit to parent div */
	position: absolute;
	right: 0;
	bottom: 0;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	background-size: cover;
	overflow: hidden;
}

div.drop-popup>p {
	font-size: 24px;
	text-align: center;
}

.drop-info {
	opacity: 0.75;
	font-size: 0.8em;
}

/* Readonly */
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
	color: #545454;
}

div.repeat:not(.grid-view) table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before,
table.dataTable.dtr-inline.collapsed>tbody>tr.parent>th:first-child:before {
	display: none !important;
}

div.repeat:not(.grid-view) table.dataTable.dtr-inline.collapsed>tbody>tr[role="row"]>td:first-child,
table.dataTable.dtr-inline.collapsed>tbody>tr[role="row"]>th:first-child {
	padding-left: 15px !important;
}

table.uploads-render>tbody>tr {
	vertical-align: top;
	border-bottom: 1px lightgray solid;
}

table.uploads-render>tbody>tr:last-child {
	border-bottom: 0px;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

div.uploads-render .panel-body {
	padding: 0px;
}

div.repeat table td {
	padding: 5px;
	vertical-align: top;
}

table.dataTable td {
	padding: 5px;
}

.table>thead>tr>td {
	vertical-align: bottom;
	border-bottom: 2px solid #ddd;
}

table.dataTable.dtr-inline.collapsed>tbody>tr[role="row"]>td.dtr-control:before,
table.dataTable.dtr-inline.collapsed>tbody>tr[role="row"]>th.dtr-control:before {
	left: -10px;
}

table.dataTable thead tr th,
table.dataTable thead tr td {
	padding: 5px;
	border-bottom: 1px solid #111;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current {
	background-image: none;
	background-color: #2572b4;
	border-color: #2572b4;
	color: #fff !important;
	cursor: default;
	z-index: 2;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
	background-image: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.next,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:last-child {
	border-top-right-radius: 1px;
	border-bottom-right-radius: 1px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.previous,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:first-child {
	border-top-left-radius: 1px;
	border-bottom-left-radius: 1px;
}

th.btn-link {
	text-decoration: none;
	color: revert;
}

div.repeat:not(.grid-view) table {
	border-collapse: collapse !important;
}

div.repeat table td.repeatbutton {
	text-align: right;
	vertical-align: middle;
	padding-left: 10px;
	padding-right: 10px;
	display: inline-block;
}

.nowrap {
	white-space: nowrap;
}

.modal-xl {
	width: 1200px;
}

.row.block-controls {
	margin-top: -15px;
	margin-bottom: 5px;
	padding-bottom: 5px;
}

.block-form {
	border-bottom: 1px #8e8e8e solid;
}

.card .repeatinstance,
.panel .repeatinstance {
	margin: 15px;
	border: 1px #8e8e8e solid;
	border-radius: 3px;
	padding-bottom: 0px;
}

.plain-group .panel-body {
	padding: 0px !important;
}

.datatable-search {
	margin-right: 15px;
}

.modal-body {
	max-height: calc(100vh - 150px);
	overflow-y: auto;
}

.plain-group .panel-body {
	padding: 0px !important;
}

.plain-group {
	border: 0px !important;
}

/* remove margin for panels inside panels */

.panel-borderless {
	border: 0 !important;
	box-shadow: none !important;
	margin-left: -15px;
	margin-right: -15px;
	margin-top: 0px;
	margin-bottom: 0px !important;
}

.panel-borderless .card-header,
.panel-borderless .panel-heading {
	background: #fff;
	border-width: 0px;
}

.panel-heading {
	display: flow-root;
}

.panel-title {
	display: inline-flex;
}

.table-td:first-child {
	padding-left: 0px;
	padding-right: 5px;
}

.table-td:last-child {
	padding-left: 5px;
	padding-right: 0px;
}

.table-td {
	padding-left: 5px;
	padding-right: 5px;
}

table.uploads-render tr td {
	padding: 10px !important;
}

.table td:last-child {
	width: -webkit-fill-available;
}

.margin-0 {
	margin: 0px;
}

.emptyLegend {
	font-size: inherit;
	border-bottom: 0;
	display: none;
	visibility: hidden;
}

.footnote {
	font-size: x-small;
}

.locale-picker {
	margin-top: 8px;
}

.lang-picker {
	text-align: center;
}

/* Buttons - start */
.btn {
	min-width: 44px;
	min-height: 20px !important;
	margin-top: 2px;
	margin-bottom: 2px;
}

.btn-link {
	text-align: left;
	cursor: pointer;
}

.btn-breadcrumb {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

/* xsmall button patch */
.btn-xs {
	min-height: 15px;
}

/* xlarge button - start */
.btn-xlarge {
	padding: 15px 20px !important;
	font-size: 20px !important;
	border-radius: 6px;
	margin: 5px;
	background-color: #ddd;
}

.btn-xlarge.btn-primary {
	background-color: #337ab7;
}

.btn-xlarge.btn-success {
	background-color: #5cb85c;
}

.btn-toolbar {
	margin-bottom: 15px;
}

.repeat .btn-toolbar {
	margin-bottom: 0px;
}

.btn-toolbar {
	flex-wrap: wrap;
}

.btn-toolbar .nowrap {
	flex-wrap: nowrap;
}

.btn-toolbar.text-center {
	display: flex;
	justify-content: center;
}

.btn-toolbar.text-right {
	display: flex;
	justify-content: flex-end;
}

.btn-toolbar.text-left {
	display: flex;
	justify-content: flex-start;
}

.btn-toolbar button {
	margin-left: 5px;
}

.btn-toolbar button:first-child {
	margin-left: 0px;
}

.field-icon {
	position: relative;
	float: right;
	margin-right: 1rem;
	margin-top: -2.5rem;
	z-index: 2;
	cursor: pointer;
}

::-ms-reveal {
	display: none;
}

/* Buttons in a no-col span */
.no-col button {
	margin-left: 5px;
	margin-top: 5px;
}

.no-col button.pull-left {
	margin-right: 5px;
	margin-top: 5px;
	margin-left: 0px !important;
}

/* Buttons - end */

/* Radio & Checkbox - Adjust + Inline */
legend {
	font-size: 14px;
	font-weight: bold;
}

ul.chkbxrdio-grp li {
	list-style: none;
}

tr label .large-radio,
tr label .large-checkbox {
	padding-top: 0px;
	padding-bottom: 0px;
}

tr .checkbox,
tr .radio {
	margin-top: 0px;
	margin-bottom: 0px;
}

input[type="password"],
input[type="text"],
input[type="number"],
input[type="date"] {
	width: 100% !important;
}
input[type="text"].partial-date, select.partial-date {
	width: auto !important;
	display: inline !important;
}

.field-icon {
	position: relative;
	float: right;
	margin-right: 1rem;
	margin-top: -2.5rem;
	z-index: 2;
	cursor: pointer;
}

.radio-inline,
.checkbox-inline {
	display: inline-block;
	padding-left: 0px !important;
}

.radio-inline>ul,
.checkbox-inline>ul {
	padding-left: 25px;
}

.radio-inline>li,
.checkbox-inline>li {
	display: inline-block;
}

.radio-inline-flex,
.checkbox-inline-flex {
	display: inline-flex;
}

.repeat td .radio-inline, .repeat td .checkbox-inline, .repeat th .checkbox-inline {
	padding-left: 7px !important;
	padding-top: 7px;
}

.repeat div.large input[type="checkbox"]:checked+label::after {
	left: 14px;
	top: 7px;
}

/* checkbox in datatable headers when select all is activated with class large */
.repeat tr>th.large input[type="checkbox"]:checked+label::after {
	top: inherit;
	left: 13px;
}

.repeat .modal input[type="checkbox"]:checked+label::after {
	left: 7px;
	top: 0px;
}

th label.required {
	margin-left:10px;
}
.checkbox.required:before,
input[type=checkbox].required:before,
label.required:before,
legend.required:before {
	margin-left: 0px;
}

td>div.form-group {
	margin-bottom: 0px;
}

.form-group .radio-inline-flex>label,
.form-group .checkbox-inline-flex>label {
	display: inline-flex;
}

.form-group ul {
	margin-left: 0px;
	padding-left: 0px;
	margin-bottom: 0px;
}

.form-group li {
	list-style: none;
}

.form-group label {
	margin-bottom: 5px;
}

.field-name {
	margin-right: 5px;
}

.form-group ul.large-checkbox li label,
.form-group ul.large-radio li label {
	margin-left: 5px;
	margin-right: 5px;
	/* for BS3 use in custom.css */
	/* margin-left: 15px; */
}

.checkbox input[type=checkbox],
.checkbox-inline input[type=checkbox],
.radio input[type=radio],
.radio-inline input[type=radio] {
	margin-left: 0px !important;
}

fieldset.large {
	border-top: 0;
	padding-top: 0;
}

.large label {
	cursor: pointer;
	display: block;
	font-size: 16px;
}

.large legend {
	float: none;
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 15px;
	margin-top: 0;
}

.large input[type="radio"],
.large input[type="checkbox"] {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.large input[type="radio"][disabled]+label,
.large input[type="checkbox"][disabled]+label {
	cursor: not-allowed;
	opacity: .5;
}

.large input[type="radio"]+label,
.large input[type="checkbox"]+label {
	display: inline-flex;
	line-height: 1.3;
	padding-left: 0px;
	width: auto;
}

.large input[type="radio"]+label::before,
.large input[type="checkbox"]+label::before {
	border: 4px solid #fff;
	-webkit-box-shadow: 0 0 0 2px #000;
	box-shadow: 0 0 0 2px #000;
	content: "";
	display: inline-block;
	height: 24px;
	left: 0;
	top: 2px;
	width: 24px;
	min-width: 24px;
}

.large input[type="radio"]+label:hover::before,
.large input[type="checkbox"]+label:hover::before {
	background-image: -webkit-gradient(linear, left top, left bottom, from(#e6e5e5), color-stop(50%, white));
	background-image: linear-gradient(to bottom, #e6e5e5, white 50%);
}

.large input[type="radio"]:focus+label::before,
.large input[type="checkbox"]:focus+label::before {
	-webkit-box-shadow: 0 0 0 2px #000, 0 0 8px 4px #3b99fc;
	box-shadow: 0 0 0 2px #000, 0 0 8px 4px #3b99fc;
}

.large .checkbox-inline,
.large .radio-inline {
	margin-left: 0px;
	padding-left: 0px;
}

.large input[type="radio"]+label::before {
	border-radius: 50%;
}

.large input[type="radio"]:checked+label::before {
	background: #444;
}

.large.checkbox input[type="checkbox"]+label,
.large.checkbox input[type="checkbox"]+label+ul {
	font-size: 17px;
	min-height: 23px;
}

.large .field-name {
	margin-left: 10px;
	margin-right: 7px;
}

.large.checkbox input[type="checkbox"]+label::before {
	height: 24px;
	left: 6px;
	top: 4px;
	width: 24px;
}

.large.checkbox input[type="checkbox"]:checked+label::after {
	border-width: 0 3px 3px 0;
	height: 16px;
	left: 14px;
	top: 6px;
	width: 9px;
}

.large input[type="checkbox"]:checked+label::after {
	border-color: #333;
	border-style: solid;
	border-width: 0 4px 4px 0;
	content: "";
	display: inline-block;
	height: 20px;
	left: 7px;
	position: absolute;
	top: 0px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 11px;
}

li.checkbox > span, li.radio > span {
	vertical-align: top;
}

.large.form-inline .label-inline {
	padding-right: 20px;
}

.large.form-inline .label-inline label {
	padding-left: 10px;
}

/* Large Checkbox/Radio Start */
.large-checkbox label,
.large-radio label {
	display: inline-block;
	font-weight: initial;
	margin-left: 5px;
	margin-right: 5px;
}

input[type="checkbox"].large-checkbox,
input[type="radio"].large-radio {
	-webkit-appearance: none;
	width: 23px;
	height: 23px;
	background: white;
	border-radius: 4px;
	border-top: 2px solid #aaa;
	border-bottom: 2px solid #aaa;
	border-left: 2px solid #aaa;
	border-right: 2px solid #aaa;
	vertical-align: middle;
	margin-top: 0px;
	padding-left: 0px;
}

input[type="checkbox"].large-checkbox:hover,
input[type="radio"].large-radio:hover {
	border-bottom: 2px solid #929496;
	border-right: 2px solid #929496;
}



/* DEPRECATED - Large Checkbox Start */
input[type="checkbox"].large-checkbox:checked::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 16px;
	content: "\f00c";
	color: #555;
	padding-left: 2.5px;
}

input[type="checkbox"].large-checkbox:indeterminate::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 16px;
	content: "\f068";
	color: #555;
}

/* Large Checkbox - End */

/* DEPRECATED - Large Radio - Start */
input[type="radio"].large-radio {
	border-radius: 100px;
}

input[type="radio"].large-radio:checked::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 14px;
	content: "\f111";
	color: #555;
	/* position	 : absolute; will break if overflow: scroll*/
	padding-left: 2.5px;
}

/* Large-Radio - End */

/* File Upload */
.btn-file {
	position: relative;
	overflow: hidden;
}

.btn-file input[type=file] {
	position: absolute;
	top: 0;
	right: 0;
	min-width: 100%;
	min-height: 100%;
	font-size: 100px;
	text-align: right;
	filter: alpha(opacity=0);
	opacity: 0;
	background: red;
	cursor: inherit;
	display: block;
}

input[type=file][readonly] {
	background-color: white !important;
	cursor: text !important;
}

/* File Upload */

/* Alerts */
.dismissable:hover {
	background-color: rgb(247, 247, 247) !important;
}

/* Alerts End */

input.autocomplete::after {
	content: "\f0d7";
	font-family: "Font Awesome 5 Free";
	right: 0;
	bottom: 4px;
	position: absolute;
	color: dimgrey;
	pointer-events: none;
}

/* JQuery-Idle-Hands */
#jquery-idle-hands {
	display: none;
	margin: 0 !important;
	padding: 0 !important;
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	color: #666666;
}

#jquery-idle-hands-overlay {
	background-color: rgba(0, 0, 0, 0.25) !important;
}

#jquery-idle-hands-dialog {
	background-color: #ffffff !important;
	border-radius: 4px !important;
	padding: 0px !important;
	margin: 0px !important;
	min-width: 300px !important;
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	border: 1px solid #eea236;
	color: #666666;
}

#jquery-idle-hands-dialog-title {
	color: #ffffff !important;
	text-align: center !important;
	background-color: #f0ad4e !important;
	border-radius: 4px !important;
	padding: 4px !important;
	margin: 0px !important;
	text-align: center !important;
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	font-size: 16px;
}

#jquery-idle-hands-message-container p {
	padding: 0 !important;
	margin: 14px !important;
	text-align: left !important;
	color: #666666;
	font-size: 14px;
}

#jquery-idle-hands hr {
	padding: 0 !important;
	margin: 0 0 4px 0 !important;
	border: 1px solid silver !important;
	border-bottom: none !important;
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	color: #666666;

	height: 1px !important;
}

#jquery-idle-hands-button-container {
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	color: #666666;
}

#jquery-idle-hands-button-container button {
	font-size: 14px;
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	color: #666666;
}

.tinymce.inline-mode:hover {
	background-color: #fff;
}
.tinymce.inline-mode {
	background-color: #fff;
	border: 1px solid #cecece;
	border-radius: 3px;
	padding: 10px;
	min-height: 37px;
	font-size: 16px;
	padding-top: 6px;
	padding-bottom: 6px;
	padding-left: 12px;
	padding-right: 12px;
}

.tinymce.inline-mode[readonly] {
	background-color: #eee;
}

.tinymce.inline-mode:focus {
	border-color: #66afe9;
	box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 8px rgb(102 175 233 / 60%);
	outline-style: none;
	outline-width: 0px;
}

::-webkit-calendar-picker-indicator {
	margin-left: 5px;
	margin-right: 0px;
}

.field-error {
	display: block;
	white-space: normal;
	word-wrap: break-word;
	text-align: left;
}