:root {
  --theme-bg-outlined: var(--bs-gray-dark);
  
  --theme-border-outer: #424a51;
  --theme-border-inner: #32383e;

  --theme-darken-opacity: 0.08;

  --bs-gray-dark-rgb: var(--theme-bg-primary-rgb);
  --bs-gray-dark: rgb(var(--bs-gray-dark-rgb));
}

.modal-header, .modal-footer {
  background-color: rgba(0,0,0,.03);
}
.modal-header {
  border-bottom: 1px solid rgba(0,0,0,.125);
}
.modal-footer {
  border-top: 1px solid rgba(0,0,0,.125);
}

body {
  color: var(--bs-white);
}

.list-group-item {
  background-color: rgba(0,0,0,.15);
}

a.nohover:hover {
  color: inherit !important;
}

.title {
  color: var(--bs-white);
}

.profilecircle, .avatar::after, .avatar-bordered img {
  border-color: var(--bs-gray);
}

.alternatebg:nth-child(even) {
  background-color: #1D1D1D;
}

::-webkit-scrollbar
{
  background-color: var(--theme-bg-secondary);
}

::-webkit-scrollbar-thumb
{
  background-color: var(--theme-bg-primary);
}

/* link overrides */
a, a.nav-link {
  color: var(--bs-white);
}

a:hover,
a:focus {
  color: var(--bs-gray);
}

label a, p:not(.text-muted) a {
  color: var(--bs-gray);
}

.table-custom td a {
  color: var(--bs-white);
}

/* form overrides */
.form-control, .form-select,
.input-group-text,
.page-link {
  background-color: rgba(var(--theme-bg-secondary-rgb), calc(var(--theme-darken-opacity) * 7));
}

.input-group .btn-outline-custom,
.btn-outline-custom.active {
   border-color: var(--theme-border-outer);
 }

.form-control, .form-select,
.input-group-text {
  color: var(--bs-white);
}
.form-control:focus, .form-select:focus {
  background-color: #e9ecef;
  color: var(--bs-dark);
}
.form-control:disabled, .form-control[readonly], .form-select:disabled, .form-select[readonly],
.page-item.disabled .page-link {
  background-color: rgba(var(--theme-bg-secondary-rgb), calc(var(--theme-darken-opacity) * 4));
}

.form-control:disabled, .form-control[readonly], .form-select:disabled, .form-select[readonly] {
  color: var(--bs-gray);
}

.border-dark {
  border-color: var(--theme-bg-primary);
}

/* pagination overrides */
.page-link {
  color: var(--bs-gray);
  border: 1px solid var(--theme-border-outer);
}

.page-item.active .page-link,
.page-link:focus,
.page-link:hover {
  color: var(--bs-light);
  background: var(--theme-gradient);
  border-color: var(--theme-border-outer);
}

.page-item.disabled .page-link {
  color: var(--bs-gray-dark);
  border: 1px solid var(--theme-border-outer);
}

.btn-outline-custom {
  color: var(--bs-gray);
  border-color: var(--theme-border-outer);
  background-color: transparent;
  background-image: none;
}

.btn.btn-tertiary {
  color: var(--bs-gray);
}

.progress {
  background-color: var(--bs-dark);
}
.progress-bar.bg-custom {
  background-color: var(--bs-gray);
}

.table-custom,
.table-striped > tbody > tr:nth-of-type(odd) {
  color: var(--bs-white);
}

.table-custom {
  background-color: rgba(var(--theme-bg-secondary-rgb), calc(var(--theme-opacity)));
}

.table-custom th,
.table-custom td {
  border-color: var(--theme-border-inner);
}

.table-custom.table-bordered > :not(caption) > * > * {
  border-width: 1px;
}

.table-custom.table-bordered > :not(:last-child) > :last-child > * {
  border-bottom: none;
}

.table-custom.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}

#nprogress .bar {
  background: #676767;
  height: 5px;
}
#nprogress .peg {
  box-shadow: 0 0 10px #676767, 0 0 5px #676767;
}

.swal2-popup .swal2-html-container, .swal2-popup .swal2-title, .swal2-cancel {
  color: #fff !important;
}

.swal2-loading .swal2-loader {
  border-top-color: #fff !important;
  border-bottom-color: #fff !important;
}

.swal2-popup .swal2-input,
.swal2-popup .swal2-input:focus,
.swal2-popup .swal2-select,
  .swal2-popup .swal2-select:focus {
  background-color: rgba(var(--theme-bg-secondary-rgb), calc(var(--theme-darken-opacity) * 7));
  color: var(--bs-white);
}

:not(.form-control) > hr {
  background-color: #000;
}
