input[type="checkbox"] {
  display: none; }
  input[type="checkbox"] + label {
    display: block;
    font-weight: 400;
    cursor: pointer; }
    input[type="checkbox"] + label:before {
      content: "\f096";
      display: inline-block;
      width: 30px;
      font-family: 'FontAwesome';
      color: #0096D5;
      font-size: 20px;
      vertical-align: middle; }
  input[type="checkbox"]:checked + label:before {
    content: "\f046"; }
  input[type="checkbox"].padlock + label {
    margin-top: 10px; }
    input[type="checkbox"].padlock + label:before {
      content: "\f09c"; }
  input[type="checkbox"].padlock:checked + label:before {
    content: "\f023"; }

input[type="radio"] {
  display: none; }
  input[type="radio"] + label {
    display: block;
    font-weight: 400;
    cursor: pointer;
    font-weight: normal !important; }
    input[type="radio"] + label:before {
      content: "\f10c";
      display: inline-block;
      width: 30px;
      font-family: 'FontAwesome';
      color: #0096D5;
      font-size: 20px;
      vertical-align: middle; }
  input[type="radio"]:checked + label:before {
    content: "\f192"; }

input[type="radio"] + label, input[type="checkbox"] + label {
  color: #333333 !important; }

input[type="radio"].danger + label, input[type="radio"].danger + label:before, input[type="checkbox"].danger + label, input[type="checkbox"].danger + label:before {
  color: #E2001A; }

input[type="radio"].danger + label, input[type="checkbox"].danger + label {
  padding: 10px; }

input[type="radio"].danger:checked + label, input[type="radio"].danger:checked + label:before, input[type="checkbox"].danger:checked + label, input[type="checkbox"].danger:checked + label:before {
  color: white; }

input[type="radio"].danger:checked + label, input[type="checkbox"].danger:checked + label {
  background: #E2001A; }

input[type="radio"].warning + label, input[type="radio"].warning + label:before, input[type="checkbox"].warning + label, input[type="checkbox"].warning + label:before {
  color: #ED783C; }

input[type="radio"].warning + label, input[type="checkbox"].warning + label {
  padding: 10px; }

input[type="radio"].warning:checked + label, input[type="radio"].warning:checked + label:before, input[type="checkbox"].warning:checked + label, input[type="checkbox"].warning:checked + label:before {
  color: white; }

input[type="radio"].warning:checked + label, input[type="checkbox"].warning:checked + label {
  background: #ED783C; }

input[type="radio"].success + label, input[type="radio"].success + label:before, input[type="checkbox"].success + label, input[type="checkbox"].success + label:before {
  color: #118948; }

input[type="radio"].success + label, input[type="checkbox"].success + label {
  padding: 10px; }

input[type="radio"].success:checked + label, input[type="radio"].success:checked + label:before, input[type="checkbox"].success:checked + label, input[type="checkbox"].success:checked + label:before {
  color: white; }

input[type="radio"].success:checked + label, input[type="checkbox"].success:checked + label {
  background: #118948; }

.radio.disabled, .checkbox.disabled {
  opacity: .5;
  cursor: not-allowed; }

.checkbox-inline, .radio-inline {
  margin-top: 0 !important;
  padding-left: 0;
  display: inline-block; }
  .checkbox-inline label, .checkbox-inline + label, .radio-inline label, .radio-inline + label {
    display: inline-block !important;
    margin-right: 30px; }
  .checkbox-inline + .help-block, .radio-inline + .help-block {
    clear: left;
    display: block; }

.checkbox-inline + .checkbox-inline, .radio-inline + .radio-inline {
  padding-left: 15px; }

input.form-error, select.form-error, textarea.form-error, button.form-error, div.form-error {
  border-color: #E2001A;
  box-shadow: 0 0 0 0.2rem rgba(226, 0, 26, 0.25); }

.form-control[readonly] {
  cursor: not-allowed;
  border-color: white;
  background: white; }
  .form-control[readonly]:focus {
    box-shadow: none;
    border-color: white; }

.login {
  background: radial-gradient(ellipse at center, #0096D5 0%, #0096D5 35%, #004B93 100%); }

.main-title {
  color: white;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 250%;
  text-shadow: 0 0 10px #000; }

.card-header[data-toggle="collapse"] {
  cursor: pointer;
  position: relative; }
  .card-header[data-toggle="collapse"]:after {
    position: absolute;
    content: "\f077";
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-family: 'FontAwesome';
    transition: .3s transform ease-in-out; }
  .card-header[data-toggle="collapse"].collapsed:after {
    transform: rotate(180deg) translateY(50%); }

.bg-none {
  background: none !important; }

.action-menu {
  top: 50px;
  bottom: auto;
  right: auto;
  left: 270px; }

.global-alert {
  position: fixed;
  z-index: 99999;
  bottom: 30px;
  left: 30px; }

.question-item .question-item {
  position: relative;
  margin-left: 5rem; }
  .question-item .question-item:before {
    font-family: 'FontAwesome';
    position: absolute;
    left: -0.5em;
    top: 0;
    content: "\f148";
    transform: rotate(90deg);
    font-size: 3em;
    color: #333333;
    line-height: 1;
    z-index: 1; }

label {
  color: #004B93;
  font-weight: bold;
  text-transform: uppercase; }

.progress {
  background: #afbac6; }

.cursor-move {
  cursor: move !important; }

.card-header.bg-warning {
  background: linear-gradient(to right, #ED783C 0%, #b34710 100%) !important; }

.card-header.bg-danger {
  background: linear-gradient(to right, #E2001A 0%, #7c000e 100%) !important; }

.card-header.bg-success {
  background: linear-gradient(to right, #118948 0%, #062e18 100%) !important; }

.card-header .card-header-tabs a:not(.active) {
  color: white; }

#chartContainerFixed {
  position: fixed;
  top: 0px;
  left: 266px;
  right: 16px;
  padding-top: 60px;
  z-index: 1;
  background-color: rgba(255, 255, 255, 0.9);
  display: none;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  border-left: 0;
  border-right: 0;
  border-radius: 0; }
  #chartContainerFixed .card {
    border: none;
    border-radius: 0; }
    #chartContainerFixed .card .card-header {
      padding-top: 0.5em;
      margin-left: 20px;
      margin-right: 20px; }
      #chartContainerFixed .card .card-header .nav-link {
        padding: 0.2rem 1rem; }

.highcharts-menu .highcharts-menu-item {
  padding: 2px !important; }

.highcharts-menu hr {
  margin-top: 0.1rem;
  margin-bottom: 0.1rem; }

.project-form .form-group {
  padding: 15px;
  background: rgba(17, 137, 72, 0.1); }
  .project-form .form-group.to-be-completed {
    background: rgba(226, 0, 26, 0.1); }
    .project-form .form-group.to-be-completed.bg-success {
      background: rgba(17, 137, 72, 0.1) !important; }

#dashboardCarousel {
  margin: -15px; }
  #dashboardCarousel .carousel-caption {
    bottom: 50%;
    transform: translateY(50%); }
    #dashboardCarousel .carousel-caption h2 {
      font-size: 50px;
      text-transform: uppercase;
      font-weight: bold;
      color: white; }
    #dashboardCarousel .carousel-caption p {
      font-size: 20px;
      color: rgba(255, 255, 255, 0.8); }
    #dashboardCarousel .carousel-caption h2, #dashboardCarousel .carousel-caption h3 {
      text-shadow: 0 0 10px black; }
  #dashboardCarousel .carousel-item:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4); }
  #dashboardCarousel .carousel-buttons {
    position: absolute;
    bottom: 175px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3; }

.affix {
  position: fixed;
  top: 50px;
  width: 100%;
  z-index: 998;
  background: white;
  padding: 15px;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.3); }

.affix-top {
  position: static; }

.ui-sortable-placebolder.ui-state-highlight {
  border-color: #EAE9E8 !important;
  background: white !important;
  padding: 15px !important; }

.badge.badge-foodsafety {
  background-color: #E4B8B9; }

.badge.badge-qualitydeployment {
  background-color: #DDD9C6; }

.badge.badge-fsqd {
  background-color: #96CDDA; }

.bg-foodsafety {
  background-color: #E4B8B9; }

.bg-qualitydeployment {
  background-color: #DDD9C6; }

.bg-fsqd {
  background-color: #96CDDA; }

.carousel.fade {
  opacity: 1; }

.carousel.fade .carousel-item {
  transition: opacity ease-out 0.7s;
  left: 0;
  opacity: 0;
  /* hide all slides */
  top: 0;
  position: absolute;
  width: 100%;
  display: block; }

.carousel.fade .carousel-item:first-child {
  top: auto;
  position: relative; }

.carousel.fade .carousel-item.active {
  opacity: 1; }

.threePm table {
  font-size: 12px;
  border: 1px solid black !important; }
  .threePm table td, .threePm table th {
    vertical-align: middle;
    text-align: center;
    border-color: black; }
    .threePm table td[data-toggle="modal"], .threePm table th[data-toggle="modal"] {
      cursor: pointer; }
      .threePm table td[data-toggle="modal"]:hover, .threePm table th[data-toggle="modal"]:hover {
        background: rgba(0, 0, 0, 0.1); }
    .threePm table td.active, .threePm table th.active {
      background: #f6b999 !important; }
  .threePm table thead td {
    background: #0096D5;
    color: white;
    font-weight: bold; }
  .threePm table tr.bg-success {
    background: #a5f4c9 !important; }
  .threePm table tr.bg-info {
    background: #d5f3ff !important; }
  .threePm table tr.bg-warning {
    background: #f6b999 !important; }
  .threePm table tr.fat-bottom td, .threePm table tr.fat-bottom th {
    border-bottom-width: 3px; }

.heat-map {
  width: 100%;
  height: 100px; }
  .heat-map .item {
    width: 7.14%;
    height: 100px;
    display: inline-block;
    background: grey; }
    .heat-map .item.low {
      background: #1B884A; }
    .heat-map .item.medium {
      background: #EB7844; }
    .heat-map .item.high {
      background: #DF0A25; }
