/* Global */

.custom-btn, .btn {
  padding: 0.8rem 1.5rem !important;
  background-color: #F4F4F4;
  border-radius: 5px;
  font-size: 16px !important;
  color: #2c3e50;
  border: 0;
  box-shadow: 0 0 0 0 rgba(0, 168, 255, 0.6) !important;
  transition: all 0.2s ease;
  display: inline-block;
  cursor: pointer;
}

.custom-btn:focus, .btn:focus, .custom-btn.focus {
  box-shadow: 0 0 0 3px rgba(0, 168, 255, 0.6) !important;
  text-decoration: none;
}
.custom-btn.focus:focus {
  box-shadow: 0 0 0 3px rgba(0, 135, 206, 0.6) !important;
}
.custom-btn.small, .btn-sm {
	font-size: 13px !important;
	padding: 0.4rem 1rem !important;
}

.custom-btn.underline {
	line-height: 1;
  padding: 0.8rem 0.5rem !important;
  border-bottom: 2px solid #2c3e50;
  background-color: transparent;
  border-radius: 0;
  font-size: 16px;
  color: #2c3e50;
}

.custom-btn.blue, .btn-primary {
  background-color: #00a8ff;
  color: #ffffff;
}
.custom-btn.blue.underline {
  color: #00a8ff;
  background-color: transparent;
  border-bottom-color: #00a8ff;
}

.custom-btn.alert, .btn-alert {
  background-color: #EDC231;
  color: #ffffff;
}
.custom-btn.alert:focus, .btn-alert:focus, .alert.focus {
  box-shadow: 0 0 0 3px rgba(237, 194, 49, 0.6) !important;
  text-decoration: none;
}

.custom-btn.warning, .btn-danger, .btn.text-danger {
  background-color: #DD2222;
  color: #ffffff;
}

.custom-btn.danger:focus, .btn-danger:focus, .danger.focus {
  box-shadow: 0 0 0 3px rgba(221, 34, 34, 0.6) !important;
  text-decoration: none;
}

.custom-btn.outline-alert {
  border: 1px solid #f1c40f;
  background-color: rgba(241, 196, 15, 0.05);
}

.custom-btn.outline-warning{
  border: 1px solid #DD2222;
  background-color: rgba(221, 34, 34, 0.05);
  color: #DD2222;
}

.custom-btn.success, .btn-success {
  background-color: #2ecc71;
  color: #ffffff;
}

.custom-btn.success:focus, .btn-success:focus, .success.focus {
  box-shadow: 0 0 0 3px rgba(45, 204, 113, 0.6) !important;
  text-decoration: none;
}


.custom-btn.white {
  background-color: #ffffff;
  color: #2c3e50;
}

.custom-btn.border {
  border: 1px solid #cecece;
}
.custom-btn.disabled {
	opacity: 0.6;
	cursor: not-allowed;
}


/* Job */

.job {
  padding: 1.5rem;
  border-radius: 5px;
  background-color: #ffffff;
  border: 1px solid #E0E0E0;
  box-shadow: 0px 1px 2px rgba(0,0,0,0.1);
  margin-bottom: 1rem;
  width: 100%;
}

.job-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 1rem;
}

.job-heading .job-title {
  font-size: 30px;
  line-height: 1;
  color: #2c3e50;
  display: flex;
  flex-direction: column;
  margin: 0;
}
.job-heading .job-title span {
  font-family: "Open Sans",Arial,Helvetica,Sans-Serif;
  font-size: 16px;
  opacity: 0.5;
  margin-bottom: 0.3rem;
}

.job-body {
  font-size: 16px;
  margin: 0.5rem 0;
  max-height: 200px;
  overflow-y: auto;
  position: relative;
  z-index: 1;
  background: #FFF no-repeat;
  background-image: -webkit-radial-gradient(50% 0, farthest-side, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)), -webkit-radial-gradient(50% 100%, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0));
  background-image: -moz-radial-gradient(50% 0, farthest-side, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)), -moz-radial-gradient(50% 100%, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0));
  background-image: radial-gradient(farthest-side at 50% 0, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 50% 100%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0));
  background-position: 0 0, 0 100%;
  background-size: 100% 14px;
}

.job-body:before,
.job-body:after {
  content: "";
  position: relative;
  z-index: -1;
  display: block;
  height: 30px;
  margin: 0 0 -30px;
  background: -webkit-linear-gradient(top, #FFF, #FFF 30%, rgba(255, 255, 255, 0));
  background: -moz-linear-gradient(top, #FFF, #FFF 30%, rgba(255, 255, 255, 0));
  background: linear-gradient(to bottom, #FFF, #FFF 30%, rgba(255, 255, 255, 0));
}

.job-body:after {
  margin: -30px 0 0;
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0), #FFF 70%, #FFF);
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0), #FFF 70%, #FFF);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #FFF 70%, #FFF);
}

.job-body .title {
  font-size: 19px;
  color: #2c3e50;
}
.job-body p {
  color: #797979;
}
.job-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 1rem;
}
.job-footer .job-show-job {
  padding: 0.8rem 2rem;
  background-color: #F4F4F4;
  border-radius: 3px;
  font-size: 16px;
  color: #2c3e50;
}

/* Job application */

.job-applications-wrapper {
	perspective: 2000px;
  margin: 2rem 0;
}


.job-applications-steps {
	text-align: right;
}
.job-applications-steps .custom-btn {
	margin: 0 0.2rem;
}

.job-applications-steps.mobile {
  display: none;
}

@media (max-width: 768px) {
  .job-applications-steps.mobile {
    padding-top: 1rem;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
  }

  .job-applications-steps.mobile .custom-btn {
    width: 30%;
    margin: 0 1.5% 0.5rem !important;
    text-align: center;
    margin: 0;
    margin-bottom: 0.5rem;
    position: relative;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    padding: 0.8rem 1rem !important;
  }
}

.job-application, .card {
  padding: 2rem;
  border-radius: 10px;
  background-color: #ffffff;
  border: 1px solid #E0E0E0;
  box-shadow: 0px 1px 2px rgba(0,0,0,0.1);
  opacity: 0;
  transition: all 0.5s ease;
}

.job-application.load, .card.load {
	opacity: 1;
  transition: all 0.5s ease;
}

.job-application-heading, .card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 1rem;
}

.job-application-title, .card-title {
  font-size: 30px;
  line-height: 1;
  color: #2c3e50;
  display: flex;
  flex-direction: column;
}
.job-application-title span, .card-title span {
  font-family: "Open Sans",Arial,Helvetica,Sans-Serif;
  font-size: 16px;
  opacity: 0.5;
  margin-bottom: 0.3rem;
}

.job-application-body, .card-body {
	padding: 1rem 0;
	font-size: 16px
}
.job-application-body-title, .card-body-title {
  font-size: 19px;
  color: #2c3e50;
}
.job-application-body p, .card-body p {
  color: #797979;
}

.job-application-footer, .card-footer {
	padding: 2rem 0 0 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.job-application-footer .custom-btn, .card-footer .custom-btn {
	margin-left: 1rem;
}

.job-application fieldset, .card fieldset {
	padding: 25px 0 5px;
}

.job-application select, .job-application input, .job-application .select2-selection,
.card select, .card input:not([type='button']), .card  .select2-selection {
	border-radius: 3px !important;
	background-color: #ffffff !important;
	border: 1px solid #cecece !important;
	font-size: 14px !important;
	height: 50px !important;
	padding: 12px 10px !important;
  box-sizing: border-box;
  line-height: initial;
  box-shadow: none;
}

.job-application .state-error select, .job-application .state-error input, .job-application .state-error .select2-selection,
.card .state-error select, .card .state-error input, .card .state-error .select2-selection {
  border-color: #DD2222 !important;

}

.job-application .select i, .card .select i {
	top: 50% !important;
	transform: translateY(-50%);
}

.job-application .select2-selection .select2-selection__rendered,
.card .select2-selection .select2-selection__rendered {
	padding: 0;
}

.job-application .select2-selection .select2-selection__arrow b,
.card .select2-selection .select2-selection__arrow b {
	display: flex;
	align-items: center;
}
.job-application .select2-selection .select2-selection__arrow b:before,
.card .select2-selection .select2-selection__arrow b:before {
	height: auto;
}

.select2-results .select2-results__option--highlighted {
	border-radius: 3px !important;
}

.select2-dropdown {
	border: 1px solid #cecece !important;
	border-top: 0 !important;
	padding: 0 6px 16px 6px;
	font-size: 14px;
	border-radius: 0 0 3px 3px;
}
.select2-search__field {
	background: #ffffff !important;
	border-color: #cecece;
	border-radius: 3px;
}

.job-application .icon-prepend,
.card .icon-prepend {
	margin-top: 10.5px;
	margin-left: 2px;
	width: 30px;
}

.job-application .icon-prepend+input,
.card .icon-prepend+input {
	padding-left: 50px !important;
}

.job-application select:focus, .job-application input:focus,
.card select:focus, .card input:focus {
	border-color: #2c3e50 !important;
}

.job-application .input-file .button,
.card .input-file .button {
	background-color: transparent;
	height: 100%;
	width: 100%;
	top: 0;
	right: 0;
	padding: 0;
	line-height: 50px;
	text-align: center;
  font-family: "Font Awesome 5 Pro";
}

.job-application .input-file .button:before,
.card .input-file .button:before {
	content: "\f093";
	font-size: 20px;
	color: #737373;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
}

.job-application .input-file .button>*,
.card .input-file .button>* {
	visibility: hidden;
	opacity: 0;
}

.alert {
  border: 1px solid !important;
  border-radius: 5px;
  font-size: 14px;
}
.alert.alert-danger {
  border-color: #DD2222;
  background-color: rgba(221, 34, 34, 0.05);
  color: #DD2222;
}
.alert.alert-warning {
  border-color: #EDC231;
  color: #EDC231;
  background-color: rgba(237, 194, 49, 0.05);
}
.alert.alert-info {
  border-color: #00a8ff;
  color: #00a8ff;
  background-color: rgba(0, 168, 255, 0.05);
}
.alert.alert-success {
  border-color: #2ecc71;
  color: #2ecc71;
  background-color: rgba(46, 204, 113, 0.05);
}


.onoffswitch-label {
  border: 1px solid #dedede;
}

.onoffswitch-checkbox:checked+.onoffswitch-label {
  border-color: #ffffff;
}

.onoffswitch-switch {
  height: 12px;
  width: 12px;
  top: 6px;
  background: #f6f6f6;
  border: 1px solid #dedede;
  position: absolute;
  box-shadow: none !important;
  right: 33px;
}

.onoffswitch-switch:before {
  display: none !important;
}

.onoffswitch-checkbox:checked+.onoffswitch-label .onoffswitch-switch {
  border-color: #ffffff !important;
  background: #ffffff !important;
  right: 6px;
}


.onoffswitch-inner:before, .onoffswitch-inner:after {
  box-shadow: none !important;
  height: 20px;
  line-height: 20px;
  text-shadow: none !important;
}

.onoffswitch-inner:before {
  background-color: #00a8ff;
}

.onoffswitch-inner {
  transition: all 0.5s ease;
}

.onoffswitch-switch {
  transition: all 0.6s ease;
}

.SmallBox {
  border-radius: 5px;
}

.well {
	border-radius: 3px;
	border: 1px solid #cecece;
	font-size: 14px;
	min-height: 50px;
	padding: 12px 10px;
  box-sizing: border-box;
  line-height: initial;
  box-shadow: none;
  background-color: #F4F4F4;
}

.well.well-light {
	border: 1px solid #cecece;
}

.quick-load-regulation {
  cursor: pointer;
}
.quick-load-regulation td {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.quick-load-regulation td:after {
  content: "\f054";
  font-family: "Font Awesome 5 Pro";
  text-decoration: none;
}

/* Medication stuff */
.medications_results {
    list-style: none;
    border-radius: 0.25rem;
    border: 1px solid #cecece;
    margin-top: 10px;
    display: none;
    cursor: pointer;
}

.medications_results.animated {
    display: block;
}

.medication_filter_item:first-of-type {
    padding-top: 0.6rem;
}
.medication_filter_item:last-of-type {
    padding-bottom: 0.6rem;
}
.medication_filter_item {
    padding: 0.3rem 1rem;
}

.medication_filter_item.focus {
  box-shadow: 0 0 0 2px #00a8ff;
}

.medication_filter_item:hover {
    background-color: #F4F4F4;
}
.radio-button {
  margin-bottom: 0;
}
.radio-input:checked + .radio-button {
  background-color: #00a8ff;
  color: #ffffff;
}

.checkbox-button {
  width: 30px;
  height: 30px;
  padding: 0 !important;
  margin: 0;
  margin-right: 10px;
}

.checkbox-button:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Pro";
  line-height: 30px;
  width: 100%;
  text-align: center;
  display: block;
  opacity: 0;
}

.checkbox-input:checked + .checkbox-button {
  background-color: #00a8ff;
  color: #ffffff;
}

.checkbox-input:checked + .checkbox-button:before {
  opacity: 1;
}

.text-dark {
  color: #2c3e50;
}

.smart-form footer .btn {
  height: auto;
}