:root {
   --light-grey: #b3b3b3;
}

* {
   font-family: 'Lato', sans-serif;
}

.custom-small-btn {
   --bs-btn-padding-x: 0.4rem;
   --bs-btn-padding-y: 0.2rem;
   --bs-btn-font-size: 0.6rem;
}
.custom-small-btn i.bi::before {
   vertical-align: -0.2em;
}

/** Buttons **/
.add-project-btn-wrapper {
   z-index: 3;
}
/** END Buttons **/


/** Accordion **/
.time-left-accordion .accordion-button:not(.has-time-left) {
   border: 1px solid var(--bs-success);
   color: var(--bs-success);
   background-color: var(--bs-white);
}

.time-left-accordion .accordion-button.has-time-left {
   background-color: var(--bs-warning);
}

.time-left-accordion .accordion-body .badge {
   font-size: 0.9em;
}

#admin-left-time-per-user-accordion .time-left-badge,
#all-left-time-accordion .time-left-badge {
   cursor: pointer;
}
/** END Accordion **/


/** Dropdown **/
.dropdown-item.active,
.dropdown-item:active {
   color: #000000 !important;
}

.dropdown-item.link-primary.active,
.dropdown-item.link-primary:active {
   color: #ffffff !important;
}

.dropdown-item.link-danger.active,
.dropdown-item.link-danger:active {
   color: #ffffff !important;
   background-color: var(--bs-danger);
}

.dropdown-item.active,
.dropdown-item:active {
   background-color: var(--bs-gray-200);
}

.dropdown-toggle.btn:active,
.dropdown-toggle.btn:hover,
.dropdown-toggle.btn.show {
   background-color: var(--bs-gray-200);
}

.bootstrap-select .dropdown-toggle:focus,
.bootstrap-select>select.mobile-device:focus+.dropdown-toggle {
   outline: thin solid var(--bs-gray-400) !important;
}
/** END Dropdown **/


/** Form fields **/
.form-control,
.form-select,
.form-check-input,
.dropdown-toggle {
   border-color: var(--light-grey);
}

.bootstrap-select .dropdown-menu li.active small {
   color: var( --bs-secondary-color ) !important
}
/** END Form fields **/


body.request-dashboard {
   margin-bottom: 100px;
}

/** Logo **/
header .logo {
   width: 140px;
   max-width: 100%;
}

.boxed-logo {
   width: 180px;
   max-width: 100%;
}
/** END Logo **/

/** Header **/
.status-filter-nav .nav-status-link {
   font-size: .9rem;
}
/** END Header **/

.signin-page .form-container,
.forgot-password-page .form-container,
.signup-page .form-container,
.change-password-page .form-container {
  width: 420px;
  max-width: 100%;
  padding: 32px;
  border-radius: 8px;
}

.forget-password-link {
  font-size: 0.9em;
}

.modal-content,
.modal-body {
   overflow: visible !important;
}


/** Datatable **/
table.fixedHeader-floating {
   margin-top: 0 !important;
}

thead .filters select {
   padding: 4px;
}

table.dataTable.table-striped>tbody>tr.odd>* {
   box-shadow: inset 0 0 0 9999px rgb(0 0 0 / 2%);
}

.table-circle-icon-btn {
   width: 40px;
   height: 40px;
}

table tfoot td {
   font-weight: bold;
}
/** END Datatable **/


/** Add manual request btn **/
.add-performed-activity-btn-wrapper {
   z-index: 5;
}

.dropdown-menu-success {
   background: var(--bs-success);
}

.dropdown-menu-success button {
   color: #ffffff;
}

.dropdown-menu-success button:hover {
   background: var(--bs-success);
   color: #ffffff;
}
/** END Add manual request btn **/


/** Form **/
   form .h5 {
      font-size: 1.1rem;
      margin-bottom: 0;
   }

   .form-check-wrapper {
      display: flex;
      flex-wrap: wrap;
   }

   .form-check-wrapper .form-check {
      flex: 1 0 46%;
   }
/** END Form **/



/** Stats **/
   .light-blue-bg {
      background: #f2f6fc;
   }
   
   .canvas-wrapper:not(.full-height) {
      height: 500px;
      max-height: 100%;
   }

   #admin-spot-projects-activities-charts-row .canvas-wrapper:not(.full-height),
   #admin-monthly-projects-activities-charts-row .canvas-wrapper:not(.full-height) {
      height: 400px;
   }

   #map {
      height: 400px;
   }

   .chart-time-wrapper .badge {
      font-size: 0.8rem;
      word-spacing: 4px;
   }
/** END Stats **/


/** WhatsApp **/
.whatsapp-link {
   text-decoration: none;
   color: #075E54;
}

.whatsapp-link:hover,
.whatsapp-link:active {
   text-decoration: none;
   color: #128C7E;
}
/** END WhatsApp **/


/** Email link **/
.email-link {
   text-decoration: none;
   color: #0049b4;
}

.email-link:hover,
.email-link:active {
   text-decoration: none;
   color: #0d6efd;
}
/** END Email link **/


/** Label giorni di ritardo **/
.request-delay-days {
   padding: 2px 8px;
   display: block;
   margin-top: 0.5em;
   font-size: 0.9em;
   line-height: normal;
}
.request-delay-days.low {
   border-left: 3px solid #28a745;
   color: #28a745;
   background: #f7fff9;
}

.request-delay-days.med {
   border-left: 3px solid #efb813;
   color: #c7a02b;
   background: #fffdf6;
}

.request-delay-days.high {
   border-left: 3px solid #dc3545;
   color: #dc3545;
   background: #fff6f6;;
}
/** END Label giorni di ritardo **/


/** Price **/
.final-price {
   font-size: 1.1em;
}
/** END Price **/