/* Стани кнопок дій над клієнтом під час запиту (див. js/form_lock.js) */

/* інші кнопки, поки виконується запит */
.btn_locked{
  opacity: 0.45;
  filter: grayscale(40%);
  -webkit-filter: grayscale(40%);
  cursor: not-allowed !important;
  pointer-events: none;
  transition: all 0.2s;
}

/* натиснута кнопка — запит виконується */
.btn_loading{
  position: relative;
  padding-left: 38px !important;
  opacity: 0.85;
  cursor: progress !important;
  pointer-events: none;
  transition: all 0.2s;
}

.btn_loading::before{
  content: '';
  position: absolute;
  left: 13px;
  top: 50%;
  width: 14px;
  height: 14px;
  margin-top: -9px;
  border: 2px solid rgba(255, 255, 255, 0.35);
  border-top-color: #FFFFFF;
  border-radius: 50%;
  -webkit-animation: crm_spin 0.7s linear infinite;
  animation: crm_spin 0.7s linear infinite;
}

/* темний спінер — для світлих кнопок (пошук, стрілка у статистиці) */
.btn_loading_dark::before{
  border-color: rgba(0, 0, 0, 0.2);
  border-top-color: #34495e;
}

/* компактний — спінер замість тексту, для маленьких кнопок */
.btn_loading_compact{
  padding-left: 6px !important;
  padding-right: 6px !important;
  color: transparent !important;
  min-width: 30px;
}

.btn_loading_compact::before{
  left: 50%;
  margin-left: -9px;
}

/* помилка — кнопка знову стане активною через кілька секунд */
.btn_error{
  background-color: #c0392b !important;
  border-bottom: 3px solid #962d22 !important;
  cursor: not-allowed !important;
  pointer-events: none;
  transition: all 0.2s;
}

@-webkit-keyframes crm_spin{
  to { -webkit-transform: rotate(360deg); }
}

@keyframes crm_spin{
  to { transform: rotate(360deg); }
}
