#preloader {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: white;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-family: Arial, sans-serif;
}

html[data-bs-theme="dark"] #preloader {
    background: #22282e; 
    color: #dee2e6;
}

.spinner {
    width: 60px;
    height: 60px;
    border: 8px solid #ffc107;
    border-top: 8px solid #f57c00;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-bottom: 15px;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}
.align-right{
    float: right;
}

.form-check-input.big-checkbox {
    transform: scale(1.2);
}
.form-check-label.big-checkbox {
    transform: scale(1.1);
    padding-left:10px;
    cursor: pointer;
}
.btn .icon-btn{
    margin-top: -1px;
    padding-right: 5px;
    transform: scale(1.4);
}
.div-check {
    height: 66px;
}

@media (max-width: 576px) {
    .div-check {
        height: 46px;
    }
}

.div-check-relacao{
    overflow: auto;
    resize: vertical;
    max-height: 400px;
}
.div-check-relacao[style*="height"] {
    max-height: unset;
}
.scroll {
    scrollbar-width: thin;
    scrollbar-color: var(--bs-body-color);
}
.div_check{
    overflow: auto;
    resize: vertical;
    max-height: 200px;
}
.scroll {
    scrollbar-width: thin;
    scrollbar-color: var(--bs-body-color);
}
.div_check[style*="height"] {
    max-height: unset;
}
.campo_invalido {
    border-color: red;
    -moz-box-shadow: 0 0 6px #ffcccc;
    -webkit-box-shadow: 0 0 6px #ffcccc;
    box-shadow: 0 0 6px #ffcccc;
}
.campo_valido {
    border-color: #09d700;
    -moz-box-shadow: 0 0 6px #ccffd4;
    -webkit-box-shadow: 0 0 6px #ccffd4;
    box-shadow: 0 0 6px #ccffd4;
}
.campo_preencher {
    border-color: #ffbe89;
    -moz-box-shadow: 0 0 6px #fee3c7;
    -webkit-box-shadow: 0 0 6px #fee3c7;
    box-shadow: 0 0 6px #fee3c7;
}
.campo_loading {
    background-image: url(../img/loading_mini.gif);
    background-size: 20px 20px;
    background-position: 90% center;
    background-repeat: no-repeat;
    pointer-events: none;
    outline: none;
    background-color: #e7e7e7;
}
.v-center{
    display: flex;
    justify-content: center;
    align-items: center;
}
.z-index-1100{
    z-index: 1500!important;
}
#loading.modal {
    z-index: 1499 !important;
}
.loading-backdrop {
    z-index: 1498 !important;
}
.div-hover:hover {
    color: var(--bs-link-hover-color)!important;
    cursor: pointer;
}
.fc-danger{
    color:#c13535 !important;
}
.fc-success{
    color:#0c8711 !important;
}
.fc-warning{
    color:#f3c02f !important;
}
.tr-success{
    background: #e8ffec;
}
.tr-warining{
    background: #fff8e8;
}
.tr-danger{
    background: #ffe8e8;
}
.oculto{
    display: none;
}
.upload{
    border: 2px dashed var(--bs-input-border-color);
    background: var(--bs-secondary-bg);
    border-radius: 6px;
    cursor: pointer;
    min-height: 150px;
    padding: 20px;
    box-sizing: border-box;
}
.disabled{
    background: var(--bs-body-bg);
}
.bg-body{
    background-color: var(--bs-body-bg);
}