#btnLogin{
    background-color: #007bff !important;
}

.btn-primary {  
    background-color: var(--cor-tema-web)!important;
}
.btn-primary:hover {
    color: #000000!important;
}
.card-primary.card-outline {
    border-top: 3px solid var(--cor-tema-web)!important;
}
.page-item.active .page-link {
    background-color: var(--cor-tema-web)!important;
}
.bg-gradient-primary{
    background-color: var(--cor-tema-web)!important;
    background: var(--cor-tema-web)!important;
}
.swal2-confirm{
    background-color: var(--cor-tema-web)!important;
    background: var(--cor-tema-web)!important;
}
.nav-link .active {
    background-color: var(--cor-tema-web)!important;
    background: var(--cor-tema-web)!important;
}
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    /* color: #fff; */
    background-color: var(--cor-tema-web)!important;
}
.table th {
    border-bottom: 2px solid black;
    background: var(--cor-tema-web)!important;
    color:#fff!important;
    font-size: 11px !important;
}
.nav-pills .nav-link:not(.active):hover {
    color: var(--cor-tema-web) !important
}
.table td, .table th {
    padding: 5px !important;
}
option:hover > select{
    background-color: var(--cor-tema-web)!important;
}
table td{
    font-size: 11px !important;
    max-height: 15% !important;
    min-height: 15% !important;
}

.content-header {
     padding: 0px !important;
}
.btn-primary, .page-link{
    border-color: var(--cor-tema-web)!important;
}
.card-header{
    padding: 0px !important;
    margin-left: 5px !important;
}

.card {
    padding: 0px !important;
}

.card-body {
    padding: 0px !important;
    
}

.card-tools{
    margin: auto !important;
    padding: 5px !important;
}

.card-title{
    padding: 5px !important;
}

.form-group > label {
    display: inline-block !important;
    margin-top: .5rem !important;
    margin-bottom: .0rem !important;
}

.modal-lg{
    max-width: 100% !important;
    margin: 2% !important;
    padding-right: 0px !important;
}

/* .bg-cleamp, .login-page{
    background-color: #24abd4ff !important;
    color: #fff !important;
}

.bg-cleamp a, .login-page a{
    background-color: #24abd4ff !important;
    color: #fff !important;
}

.bg-cleamp-view{
    background-color: rgb(235, 233, 233) !important;
} */


 /* The switch - the box around the slider */
 .switch {
    font-size: 10px;
    position: relative;
    display: inline-block;
    width: 3.5em;
    height: 2em;
    margin-right: 15px;
    }

    /* Hide default HTML checkbox */
    .switch input {
    opacity: 0;
    width: 0;
    height: 0;
    }

    /* The slider */
    .slider {
    position: absolute;
    cursor: pointer;
    inset: 0;
    background: #9fccfa;
    border-radius: 50px;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }

    .slider:before {
    position: absolute;
    content: "";
    display: flex;
    align-items: center;
    justify-content: center;
    height: 2em;
    width: 2em;
    inset: 0;
    background-color: white;
    border-radius: 50px;
    box-shadow: 0 10px 20px rgba(0,0,0,0.4);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }

    .switch input:checked + .slider {
    background: #0974f1;
    }

    .switch input:focus + .slider {
    box-shadow: 0 0 1px #0974f1;
    }

    .switch input:checked + .slider:before {
    transform: translateX(1.6em);
    }

    .btn-acoes {
        padding: 0px !important;
        font-size: 12px;
        cursor: pointer;
    }
    .btn-acoes:hover {
        color: #ffffff;
    }

    #selectDadosPorPagina{
        height: 30px!important;
        font-size: 0.6rem!important;
    }
    #irParaPagina{
        height: 30px!important;
        font-size: 0.6rem!important;
    }
    .card-footer{
        font-size: 0.6rem!important;
    }
    #ulPagination{
        margin: 0px!important;
    }

    /* Eduardo 17/09/2024 09:17:18 - FILTRO E TITULOS FICAM FIXOS */
        .elemento-fixo {
            position: sticky;
            top: 0;
            z-index: 1000; 
            background-color: #fff;
            
        }
    /* Eduardo 17/09/2024 09:17:18 - FIM FILTRO E TITULOS FICAM FIXOS */

    /* Eduardo 04/04/2025 17:04:52 - sidebar personalizada */

        .nav-sidebar .nav-item .nav-treeview {
            padding-left: 20px; /* Indenta o submenu */
        }
        
        .nav-sidebar .nav-treeview > .nav-item > .nav-link {
            padding-left: 25px !important; /* Deixa ainda mais visível que é submenu */
            font-size: 0.95rem;
        }   
        .nav-sidebar .menu-open > .nav-link {
            background-color: rgba(255, 255, 255, 0.1) !important;
        }
        .nav-sidebar .nav-item > .nav-link.active {
            background-color: rgba(255, 255, 255, 0.2) !important;
        }

        .nav-sidebar .nav-item .nav-treeview {
            padding-left: 20px; /* Indentação do container do submenu */
            margin-left: 0;
            background-color: color-mix(in srgb, var(--cor-tema-web) 8%, transparent) !important;
        }

        /* Item do submenu - PRIORIDADE MÁXIMA para o recuo */
        .nav-sidebar .nav-treeview > .nav-item > .nav-link {
            padding-left: 25px !important; /* Recuo importante */
            font-size: 0.95rem;
            /* Reset de qualquer estilo que possa sobrepor */
            margin-left: 0 !important;
            transform: none !important;
        }

        /* Sobrescrevendo especificamente qualquer estilo que esteja interferindo */
        .nav-sidebar .nav-treeview > .nav-item > .nav-link {
            padding-left: 25px !important; /* Redundância para garantir */
        }

        /* Garantindo que nenhum outro estilo sobrescreva */
        .nav-sidebar .nav-treeview .nav-link {
            padding-left: 25px !important;
        }

        /* Mantendo todos os outros estilos originais */
        .nav-sidebar > .nav-item {
            margin-bottom: 2px;
        }

        .nav-sidebar > .nav-item.menu-open > .nav-link:after {
            content: "";
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 3px;
            background-color: var(--cor-tema-web);
        }

        .nav-sidebar > .nav-item > .nav-link {
            padding: 12px 15px;
            margin: 0;
        }

        .nav-treeview {
            padding: 0;
            margin: 0;
        }

        .nav-treeview > .nav-item {
            margin-bottom: 2px;
        }

        /* Ajuste para o alinhamento vertical */
        .nav-sidebar .nav-link {
            display: flex;
            align-items: center;
            min-height: 40px;
            white-space: normal !important;
            overflow-wrap: break-word;
            word-break: break-word;
        }

        .nav-sidebar .nav-treeview > .nav-item > .nav-link  p {
            white-space: normal !important;
            word-break: break-word !important;
            overflow-wrap: break-word !important;
            flex: 1 1 auto !important;
        }

        .nav-sidebar .nav-link > i {
            width: 24px;
            text-align: center;
            margin-right: 10px;
        }

        .nav-sidebar .nav-treeview > .nav-item > .nav-link {
            padding-left: 35px !important; /* Mantém o recuo esquerdo */
            padding-right: 15px !important; /* Alinha com o item pai */
            margin-left: -20px !important; /* Compensa o padding do container */
            width: calc(100% + 20px) !important; /* Garante a largura total */
        }
        
        /* Ajuste fino para os ícones dos subitens */
        .nav-sidebar .nav-treeview > .nav-item > .nav-link > i {
            margin-left: -5px !important; /* Alinhamento perfeito com o texto */
            margin-right: 10px !important;
        }

        /* Estados e destaques */
        .nav-sidebar > .nav-item.menu-open > .nav-link,
        .nav-treeview > .nav-item > .nav-link.active {
            background-color: color-mix(in srgb, var(--cor-tema-web) 12%, transparent) !important;
        }

        .nav-link{
            padding-bottom: 0px !important;
            padding-top: 0px !important;
        }

        .nav-sidebar > .nav-item > .nav-link:hover,
        .nav-treeview > .nav-item > .nav-link:hover {
            background-color: color-mix(in srgb, var(--cor-tema-web) 5%, transparent) !important;
        }

        .nav-treeview {
            border-top: 1px solid color-mix(in srgb, var(--cor-tema-web) 10%, transparent);
            border-bottom: 1px solid color-mix(in srgb, var(--cor-tema-web) 10%, transparent);
        }

        /* Ajustes para a troca de logos */
            .brand-link {
                transition: all 0.3s ease;
                overflow: hidden;
            }

            /* Logo mini (sidebar recolhida) */
            .sidebar-collapse .brand-link .brand-image-lg {
                display: none;
            }

            .sidebar-collapse .brand-link .brand-image-xs {
                display: block;
                margin: 0 auto;
            }

            /* Logo normal (sidebar expandida) */
            .brand-link .brand-image-lg {
                display: block;
                transition: all 0.3s ease;
            }

            .brand-link .brand-image-xs {
                display: none;
            }

            .nav-treeview {
                display: none;
            }
            
            .nav-item.menu-open > .nav-treeview {
                display: block;
            }

            /* Ajustes para o footer fixo na sidebar */
            .sidebar {
                flex: 1 1 auto !important;
                display: flex !important;
                flex-direction: column !important;
                overflow: hidden;
                max-height: 100vh;
            }

            .os-padding {
                flex: 1;
                display: flex;
                flex-direction: column;
                padding-bottom: 0 !important;
                overflow: hidden;
            }

            .os-viewport {
                flex: 1 1 auto;
                overflow-y: auto !important;
                max-height: 100%;
                -webkit-overflow-scrolling: touch; /* suaviza no iOS */
            }

            .os-content {
                display: flex !important;
                flex-direction: column !important;
                flex: 1 1 auto !important;
                padding: 0 !important;
                min-height: 0;
            }

            .os-content {
                display: flex !important;
                flex-direction: column !important;
                padding: 0 !important;
                padding-bottom: 0 !important;
            }

            .user-footer {
                flex-shrink: 0;
                background-color: color-mix(in srgb, var(--cor-tema-web) 5%, transparent) !important;
                margin-bottom: 0 !important;
                padding-bottom: 10px !important;
                margin-top: auto; /* Empurra para baixo */
            }

            .main-sidebar {
                display: flex;
                flex-direction: column;
                height: 100vh;
            }

            /* Eduardo 12/04/2025 13:42:03 - css do submenu flutuante */
            
            /* Aplica o mesmo estilo do nav-treeview normal */
            .floating-submenu {
                position: absolute;
                top: 0;
                left: 60px; /* ajusta conforme largura da sidebar mini */
                min-width: 220px;
                max-width: 250px;
                max-height: 300px;
                overflow-y: auto;
                background-color: inherit;
                box-shadow: 0 4px 8px rgba(0,0,0,0.2);
                border-radius: 0.25rem;
                z-index: 1050;
                padding: 0;
                margin: 0;
                display: none;
            }

            /* Ativo também fica azul */
            .navbar-dark .nav-sidebar .nav-link.active,
            .navbar-dark .nav-sidebar .nav-link.active i,
            .navbar-dark .nav-sidebar .nav-treeview .nav-link.active,
            .navbar-dark .nav-sidebar .nav-treeview .nav-link.active i {
                color: var(--cor-tema-web) !important;
            }

            .navbar-light .nav-sidebar .nav-link.active,
            .navbar-light .nav-sidebar .nav-link.active i,
            .navbar-light .nav-sidebar .nav-treeview .nav-link.active,
            .navbar-light .nav-sidebar .nav-treeview .nav-link.active i {
                color: var(--cor-tema-web) !important;
            }

            
            .floating-submenu .nav-item {
                margin-bottom: 2px;
            }

            .floating-submenu > .nav-item > .nav-link:hover {
                background-color: color-mix(in srgb, var(--cor-tema-web) 5%, transparent) !important;
                color: var(--cor-tema-web) !important;
            }

            body.dark-mode .floating-submenu .nav-link {
                
                color: inherit !important;
            }
            
            body:not(.dark-mode) .floating-submenu .nav-link {
                color: #6c757d !important;
            }
            
            .floating-submenu .nav-link {
                display: flex !important;
                align-items: center !important;
                font-size: 0.95rem;
                color: inherit;
                background-color: color-mix(in srgb, var(--cor-tema-web) 5%, transparent) !important;
                padding: 10px 15px 10px 25px !important;
                margin: 0 !important;
                min-height: 40px !important;
                width: 100%;
                border-radius: 0 !important;
                white-space: normal !important;
                word-break: break-word !important;
                overflow-wrap: break-word !important;
            }
            
            .floating-submenu .nav-link i {
                width: 24px;
                text-align: center;
                margin-right: 10px;
                flex-shrink: 0;
            }
            
            .floating-submenu .nav-link p {
                margin: 0 !important;
                flex: 1 1 auto;
                display: block;
            }

            /* Esconde toda a logo (XL) no modo recolhido */
            .sidebar-collapse .brand-logo-xl {
                display: none !important;
            }

            /* Opcional: centraliza ou ajusta espaçamento do botão no mini */
            .sidebar-collapse .brand-header {
                justify-content: center;
            }

            .sidebar-collapse .brand-header .sidebar-toggle {
                margin-left: 0 !important;
            }

            /* Esconde qualquer logo quando sidebar estiver mini (recolhida) */
            .sidebar-collapse .logo-xs,
            .sidebar-collapse .logo-xl {
                display: none !important;
            }

            /* Mostra apenas quando expandida */
            .logo-xs,
            .logo-xl {
                display: inline-block;
            }

            /* Regras adicionais de layout */
            .brand-link.logo-switch {
                display: flex;
                align-items: center;
                justify-content: space-between;
            }

            /* Esconde o texto da marca também no modo mini */
            .sidebar-collapse .brand-text {
                display: none !important;
            }
                    
            
        
    /* Eduardo 04/04/2025 17:05:10 - fim sidebar */
    
    