:root {
  --whitesmoke1: #e9ecef;
  --main-color: #3f88c5;
  --main-dark: #252b32;
  --whitesmoke2: #f8f9fa;
  --text-muted2: #adb5bd;
}

body {
  font-family: "Poppins", sans-serif !important;
  font-size: 16px !important;
  background-color: var(--whitesmoke1) !important;
  /* overflow: hidden; */
}

a {
  cursor: pointer;
  text-decoration: none;
  font-family: "Poppins", sans-serif;
}

a {
  -webkit-transition: 0.3s all ease;
  -o-transition: 0.3s all ease;
  transition: 0.3s all ease;
}

li {
  list-style: none;
}

input:focus,
button:focus,
textarea:focus,
select:focus,
a.btn:focus {
  box-shadow: none !important;
}

input,
textarea,
select,
:placeholder-shown,
button,
a,
p,
li,
td,
th,
span {
  font-size: 0.89rem !important;
}

.btn {
  text-wrap: nowrap !important;
}

label {
  font-size: 0.84rem !important;
}

th {
  color: #565656bd !important;
  font-weight: 600;
}

th {
  border-bottom: 1px solid #dfdfe0 !important;
}

td {
  font-size: 0.875rem !important;
  color: #333;
}

label {
  color: #565656 !important;
}

.toast-width {
  /* width: fit-content !important; */
  width: 500px !important;
}

.content {
  margin-top: 80px !important;
  margin-bottom: 50px;
}

.btn-primary {
  background-color: var(--main-color) !important;
  color: var(--whitesmoke2) !important;
  border-color: var(--main-color) !important;
}

.btn-outline-primary {
  color: var(--main-color) !important;
  border-color: var(--main-color) !important;
}

.btn-outline-primary:hover {
  background-color: var(--main-color) !important;
  color: white !important;
}

.text-muted2 {
  color: var(--text-muted2) !important;
}

.bg-whitesmoke2 {
  background-color: var(--whitesmoke2) !important;
}

label {
  margin-bottom: 10px !important;
}

.main-color {
  color: var(--main-color) !important;
}

.main-color-border {
  border-color: var(--main-color) !important;
}

input[type="radio"]:hover {
  cursor: pointer !important;
}

.border-primary {
  border-color: var(--main-color) !important;
}

.bg-primary2 {
  background-color: #004085 !important;
  color: whitesmoke !important;
}

.gridjs-summary {
  font-size: 12px !important;
}

.card,
.modal-content {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1) !important;
  background-color: #ffffff !important;
  transition: all 0.5s ease-in-out !important;
}

.dropdown-menu .dropdown-item {
  color: #565656 !important;
}

.dropdown-menu .dropdown-item {
  padding: 5px 10px !important;
}

.dropdown-item i {
  color: var(--main-color) !important;
}

.dropdown-menu .dropdown-item:hover {
  background-color: var(--main-color) !important;
  color: whitesmoke !important;
  border-radius: 0.25rem !important;
}

.dropdown-menu .dropdown-item:hover > i {
  color: whitesmoke !important;
}

.modal-content {
  background-color: white !important;
  border-radius: 3px !important;
}

.modal {
  z-index: 20000 !important;
}

.modal-title {
  font-weight: 600 !important;
}

.modal-header {
  color: #565656 !important;
  background-color: var(--whitesmoke1) !important;
}

.modal {
  background-color: hsla(0, 0%, 0%, 0.171) !important;
}

.dropdown-menu .actions-btn {
  z-index: -10 !important;
}

input[type="checkbox"]:hover {
  cursor: pointer !important;
}

.loading-page {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999;
  opacity: 1;
  cursor: progress;
  transition: opacity 0.5s ease;
}

.is-invalid,
.is-valid {
  border-color: initial !important;
}

.form-control:valid:focus,
.form-control.is-valid:focus,
.form-control:invalid:focus,
.form-control.is-invalid:focus {
  box-shadow: none !important;
}

div.dt-layout-table {
  border-color: #e5e7eb !important;
  border-radius: 8px 8px 0 0 !important;
  border-top-width: 1px !important;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.26) !important;
  background-color: #fff !important;
  position: relative !important;
  overflow-x: scroll !important;
  overflow-y: hidden !important;
}

div.dt-layout-table > .dt-layout-full {
  padding: 0 !important;
}

div.dt-layout-table + div {
  background-color: #fff;
  border-bottom-width: 1px;
  border-color: #e5e7eb;
  border-radius: 0 0 8px 8px;
  border-top: 1px solid #e5e7eb;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.26);
  padding: 10px 0;
  margin-top: 0 !important;
  position: relative !important;
  z-index: 0 !important;
}

div.dt-layout-table th {
  background-color: rgba(0, 0, 0, 0.03) !important;
}

div.dt-layout-table td,
div.dt-layout-table th {
  border-color: #e5e7eb !important;
  text-wrap: nowrap !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  border-right: 1px solid;
}

.dt-column-order {
  margin-left: 10px !important;
}

.dt-type-numeric {
  text-align: center !important;
}

.dt-info {
  font-size: 14px !important;
}

.pagination li:not(.disabled) button {
  color: var(--main-color) !important;
}

.pagination li.active button {
  color: white !important;
  background-color: var(--main-color) !important;
}

.dropdown-fixed {
  position: fixed !important;
  top: 0px !important;
  overflow: visible !important;
}

.img-logo {
  object-fit: contain !important;
}

.form-control.no-validation {
  background-image: none !important;
  box-shadow: none !important;
  border-color: #ced4da !important;
  padding-right: 0.75rem !important;
}

.sidebar-link:hover .sidebar-svg {
  filter: invert(48%) sepia(34%) saturate(907%) hue-rotate(165deg)
    brightness(94%) contrast(85%) !important;
}

.main-color-svg {
  filter: invert(48%) sepia(34%) saturate(907%) hue-rotate(165deg)
    brightness(94%) contrast(85%) !important;
}

.dropdown-menu li:hover .main-color-svg {
  filter: invert(98%) sepia(17%) saturate(0%) hue-rotate(206deg)
    brightness(110%) contrast(100%) !important;
}

/* Estilo para o estado Pendente */
.estado-pendente {
  color: #d8b804; /* Texto preto para contraste */
  background-color: #d8b80431;
  border-radius: 10px;
  font-size: small !important;
  font-weight: normal !important;
  padding: 1px 5px !important;
  width: fit-content !important;
  margin: auto;
}

/* Estilo para o estado Pago */
.estado-pago {
  color: #28a745; /* Texto branco para contraste */
  background-color: #28a74634;
  border-radius: 10px;
  font-size: small !important;
  font-weight: normal !important;
  padding: 1px 5px !important;
  width: fit-content !important;
  margin: auto;
}

/* Estilo para o estado Ativo */
.estado-ativo {
  color: #007bff; /* Texto branco para contraste */
  background-color: #007bff2a;
  border-radius: 10px;
  font-size: small !important;
  font-weight: normal !important;
  padding: 1px 5px !important;
  width: fit-content !important;
  margin: auto;
}

/* Estilo para o estado Inativo */
.estado-inativo {
  color: #6c757d; /* Texto branco para contraste */
  background-color: #6c757d28;
  border-radius: 10px;
  font-size: small !important;
  font-weight: normal !important;
  padding: 1px 5px !important;
  width: fit-content !important;
  margin: auto;
}

/* Estilo para o estado Parcialmente Pago */
.estado-parcialmente-pago {
  color: #cf8906; /* Texto preto para contraste */
  background-color: #cf89062f;
  border-radius: 10px;
  font-size: small !important;
  font-weight: normal !important;
  padding: 1px 5px !important;
  width: fit-content !important;
  margin: auto;
}

/* Estilo para o estado Cancelado */
.estado-cancelado {
  color: #dc3545; /* Texto branco para contraste */
  background-color: #dc35462f;
  border-radius: 10px;
  font-size: small !important;
  font-weight: normal !important;
  padding: 1px 5px !important;
  width: fit-content !important;
  margin: auto;
}

/* Estilo para o estado Em Andamento */
.estado-em-andamento {
  color: #1e90ff; /* Texto branco para contraste */
  background-color: #1e8fff2c;
  border-radius: 10px;
  font-size: small !important;
  font-weight: normal !important;
  padding: 1px 5px !important;
  width: fit-content !important;
  margin: auto;
}

/* Estilo para o estado Concluído */
.estado-concluido {
  color: #228b22; /* Texto branco para contraste */
  background-color: #228b2231;
  border-radius: 10px;
  font-size: small !important;
  font-weight: normal !important;
  padding: 1px 5px !important;
  width: fit-content !important;
  margin: auto;
}

.modal-xll {
  max-width: 95%;
  min-width: 1100px;
  margin: auto;
  margin-top: 20px;
}

@media (max-width: 992px) {
  .modal-xll {
    min-width: unset;
    max-width: 100%;
    margin: 0;
    margin-top: 0;
  }
}
