
:root {
  --qx-primary:  #557abc;  /* Blu */
  --qx-info:     #b2b2b2;  /* Grigio */
  --qx-warning:  #e8e346;  /* Giallo */
  --qx-success:  #4fb480;  /* Verde */
  --qx-danger:   #f39322;  /* Arancione */
  --bs-link-color: #557abc;
  --bs-link-color-rgb: 10,88,202;
}

.btn.disabled, .btn:disabled, fieldset:disabled .btn {
  opacity: 0.65 !important;
  cursor: not-allowed;
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--qx-primary);
  --bs-btn-border-color: var(--qx-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #4768a2;
  --bs-btn-hover-border-color: #4768a2;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #3a5789;
  --bs-btn-active-border-color: #3a5789;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #9aaed5;
  --bs-btn-disabled-border-color: #9aaed5;
  --bs-btn-focus-shadow-rgb: 85, 122, 188;
}
.btn-outline-primary {
  --bs-btn-color: var(--qx-primary);
  --bs-btn-border-color: var(--qx-primary);
  --bs-btn-hover-bg: var(--qx-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-disabled-color: #9aaed5;
  --bs-btn-disabled-border-color: #9aaed5;
}
.alert-primary {
  background-color: #e7ecf7;
  border-color: #c5d1ea;
  color: #2e4470;
}

.btn-info {
  --bs-btn-color: #000;
  --bs-btn-bg: var(--qx-info);
  --bs-btn-border-color: var(--qx-info);
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #a1a1a1;
  --bs-btn-hover-border-color: #a1a1a1;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #8e8e8e;
  --bs-btn-active-border-color: #8e8e8e;
  --bs-btn-disabled-color: #333;
  --bs-btn-disabled-bg: #d8d8d8;
  --bs-btn-disabled-border-color: #d8d8d8;
  --bs-btn-focus-shadow-rgb: 178, 178, 178;
}
.btn-outline-info {
  --bs-btn-color: var(--qx-info);
  --bs-btn-border-color: var(--qx-info);
  --bs-btn-hover-bg: var(--qx-info);
  --bs-btn-hover-color: #000;
  --bs-btn-disabled-color: #d8d8d8;
  --bs-btn-disabled-border-color: #d8d8d8;
}
.alert-info {
  background-color: #f0f0f0;
  border-color: #d0d0d0;
  color: #4a4a4a;
}

.btn-warning {
  --bs-btn-color: #000;
  --bs-btn-bg: var(--qx-warning);
  --bs-btn-border-color: var(--qx-warning);
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #d6cf3f;
  --bs-btn-hover-border-color: #d6cf3f;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #c1ba39;
  --bs-btn-active-border-color: #c1ba39;
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #f2ef94;
  --bs-btn-disabled-border-color: #f2ef94;
  --bs-btn-focus-shadow-rgb: 232, 227, 70;
}
.btn-outline-warning {
  --bs-btn-color: var(--qx-warning);
  --bs-btn-border-color: var(--qx-warning);
  --bs-btn-hover-bg: var(--qx-warning);
  --bs-btn-hover-color: #000;
  --bs-btn-disabled-color: #f2ef94;
  --bs-btn-disabled-border-color: #f2ef94;
}
.alert-warning {
  background-color: #fcfbe6;
  border-color: #f0ecb6;
  color: #8b861a;
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--qx-success);
  --bs-btn-border-color: var(--qx-success);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #449c6f;
  --bs-btn-hover-border-color: #449c6f;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #3b8761;
  --bs-btn-active-border-color: #3b8761;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #97d2b5;
  --bs-btn-disabled-border-color: #97d2b5;
  --bs-btn-focus-shadow-rgb: 79, 180, 128;
}
.btn-outline-success {
  --bs-btn-color: var(--qx-success);
  --bs-btn-border-color: var(--qx-success);
  --bs-btn-hover-bg: var(--qx-success);
  --bs-btn-hover-color: #fff;
  --bs-btn-disabled-color: #97d2b5;
  --bs-btn-disabled-border-color: #97d2b5;
}
.alert-success {
  background-color: #eaf8f1;
  border-color: #c7e9d8;
  color: #225f44;
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--qx-danger);
  --bs-btn-border-color: var(--qx-danger);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #da8220;
  --bs-btn-hover-border-color: #da8220;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #be711c;
  --bs-btn-active-border-color: #be711c;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #f8bf84;
  --bs-btn-disabled-border-color: #f8bf84;
  --bs-btn-focus-shadow-rgb: 243, 147, 34;
}
.btn-outline-danger {
  --bs-btn-color: var(--qx-danger);
  --bs-btn-border-color: var(--qx-danger);
  --bs-btn-hover-bg: var(--qx-danger);
  --bs-btn-hover-color: #fff;
  --bs-btn-disabled-color: #f8bf84;
  --bs-btn-disabled-border-color: #f8bf84;
}
.alert-danger {
  background-color: #fdf3eb;
  border-color: #f9d3b1;
  color: #7f450c;
}

.toast {
  border-radius: 0.5rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.toast-header {
  font-weight: 600;
  color: #fff;
}
.toast-primary .toast-header { background-color: var(--qx-primary); }
.toast-success .toast-header { background-color: var(--qx-success); }
.toast-warning .toast-header { background-color: var(--qx-warning); color: #000; }
.toast-danger  .toast-header { background-color: var(--qx-danger); }
.toast-info    .toast-header { background-color: var(--qx-info); color: #000; }

.text-bg-primary {
    color: #fff !important;
    background-color: var(--qx-primary) !important;
}

.text-bg-info {
    color: #000 !important;
    background-color: var(--qx-info) !important;
}

.text-bg-warning {
    color: #000 !important;
    background-color: var(--qx-warning) !important;
}

.text-bg-success {
    color: #fff !important;
    background-color: var(--qx-success) !important;
}

.text-bg-danger {
    color: #fff !important;
    background-color: var(--qx-danger) !important;
}

.active>.page-link, .page-link.active {
    z-index: 3;
    color: var(--bs-pagination-active-color);
    background-color: var(--qx-primary) !important;
    border-color: var(--qx-primary) !important;
}