:root {
    /*WHITE*/
    --color-white: #FFFFFF;
    --color-white-900: #EFEFEF;
    --color-white-800: #F2F2F2;
    --color-white-700: #EBEBEB;
    --color-white-500: #F0F0F0;
    --color-white-600: #F6F6F6;
    /*BLACK*/
    --color-black: #000000;
    --color-black-900: #050505;
    --color-black-800: #181818;
    --color-black-200: #221a17;
    --color-black-100: #1E2340;
    /*YELLOW*/
    --color-yellow: #FF9B04;
    --color-yellow-100: #FDC97C;
    --color-yellow-500: #fff0da;
    /*GREEN*/
    --color-green: #54D969;
    --color-green-100: #E8F3EC;
    --color-green-500: #f0dec3;
    /*BLUE*/
    --color-blue: #0F7BA6;
    --color-blue-900: #0000FF;
    --color-blue-800: #04B4FF;
    --color-blue-700: #0A66C2;
    --color-blue-600: #3D77B7;
    --color-blue-100: #E8EFF1;
    --color-blue-grid: #459ad6;
    /*GRAY*/
    --color-gray-800: #333;
    --color-gray-700: #6B6B6B;
    --color-gray-600: #595959;
    --color-gray-500: #898A8D;
    --color-gray-300: #B3BAC5;
    --color-gray-200: #eff1f3;
    --color-gray-100: #e1e9ef;
    /*RED*/
    --color-red-600: #E91D62;
    --color-red-100: #F6EBEB;
    --color-red: #F00;
    /* ORANGE */
    --color-orange-600: #E9781D;
    --color-orange-100: #F6EDEB;
    --color-orange: #FFA500;
}

*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}


.valid.modified:not([type="checkbox"]) {
    outline: #3e8dc7 solid 1px !important;
}

.nav-scrollable[b-h9l5f7lx3r] {
    height: 100% !important;
}

.modal-titulo {
    background-color: var(--primaira-cor-azul-sed) !important;
    color: white !important;
}

.nav-link {
    color: var(--primaira-cor-azul-sed) !important;
}

.btn-info {
    color: #fff;
    background-color: var(--primaira-cor-azul-sed);
}

/* BARRA DE SCROLL BONITA*/
body::-webkit-scrollbar {
    width: 7px;
}

body::-webkit-scrollbar-track {
    background-color: var(--color-white-500);
}

body::-webkit-scrollbar-thumb {
    background-color: #211916;
    border-radius: 20px;
    border: 3px solid #211916;
}

.modal-body::-webkit-scrollbar {
    width: 7px;
}

.modal-body::-webkit-scrollbar-track {
    background-color: var(--color-white-500);
}

.modal-body::-webkit-scrollbar-thumb {
    background-color: #211916;
    border-radius: 20px;
    border: 3px solid #211916;
}
/* END BARRA DE SCROLL BONITA*/
/*
    QUESTOES APOIO
*/
.box-respostas {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px; /* Espaçamento opcional entre os inputs */
}

.box-respostas div {
    display: flex;
    align-items: center;
}

/*BTN DISABLED*/
.btn.disabled, .btn[disabled], fieldset[disabled] {
    cursor: not-allowed;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    opacity: .65;
    color: #fff;
    background-color: var(--primaira-cor-azul-sed);
    border-color: #2e6da4;
    pointer-events: auto;
}
/* END BTN DISABLED*/

/* ICONE TROCA DE*/
.btn-alterar-de {
    display: flex;
    width: auto;
    height: 2.9375rem;
    justify-content: center;
    align-items: center;
    gap: 0.625rem;
    flex-shrink: 0;
    border-radius: 0.4375rem;
    box-shadow: 0px 1px 4.7px 0px rgba(0, 0, 0, 0.25);
    text-decoration: none;
    padding: 0 10px;
    background: white;
    p

{
    text-decoration: none;
    color: var(--ttulo2, rgba(24, 59, 86, 0.87));
    text-align: right;
    font-family: Inter;
    font-size: 0.75rem;
    font-style: normal;
    line-height: normal;
    font-weight: 400;
    margin-bottom: 0;
    color: var(--Teclado-tecladoteclas2, #ADB3BC);
    b

{
    font-weight: bold;
    color: var(--ttulo2, rgba(24, 59, 86, 0.87));
}

span {
    color: var(--ttulo2, rgba(24, 59, 86, 0.87));
}

}

&:hover {
    opacity: 0.8;
    box-shadow: 0px 0.5px 4.7px 0px rgba(0, 0, 0, 0.15);
    i

{
    opacity: 0.6;
}

}
}

.icon-alterar-de {
    width: 37px;
    height: 37px;
    display: block;
    background-image: url(./assets/icon-troca-de.svg);
    background-position: top 3px center;
    background-size: contain;
    background-repeat: no-repeat;
}



/* END ICONE TROCA DE*/
/* END BTN DISABLED*/
.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-toggle {
    background-color: #cce4ff;
    padding: 8px 12px;
    border: 1px solid #ccc;
    cursor: pointer;
    width: 100px;
    text-align: center;
    border-radius: 4px;
}

.dropdown-menu {
    position: absolute;
    background-color: #e2efff;
    border: 1px solid #ccc;
    width: 100px;
    max-height: 200px;
    overflow-y: auto;
    z-index: 1000;
    padding: 4px;
    border-radius: 4px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.dropdown-item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px;
}

.tabela-responsiva{
    overflow:auto !important;
}
.icon-disabled {
    opacity: 0.5;
}
/* Esconde a opção para exibir apenas os ícones do menu */
@media screen and (max-width: 768px) {
    .bb-top-row .bi-list {
        display: none !important;
    }
}

@media screen and (max-width: 480px) {
    .bb-top-row .bi-list {
        display: none !important;
    }
}
/* FIM Esconde a opção para exibir apenas os ícones do menu */




/* Tabelas*/
.btnEscolas {
    padding: 0.2rem;
}

.botoes {
    text-align: center;
}

.legenda-grid {
    display: flex;
    justify-content: space-around;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    font-size: 0.85rem;
}

    .legenda-grid > div {
        display: flex;
        align-items: center;
    }

    .legenda-grid a {
        display: inline-flex;
        align-items: center;
        margin-right: 0.5rem;
    }

    .legenda-grid p {
        margin: 0;
    }

.panel-body {
    padding: 15px;
}

.grid-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.items-per-page {
    display: flex;
    align-items: center;
}

    .items-per-page label {
        display: flex;
        align-items: center;
        margin-bottom: 0;
        white-space: nowrap;
    }

    .items-per-page select {
        margin-left: 5px;
        width: auto;
    }

.search-box {
    flex-grow: 0;
    width: auto;
    max-width: 200px;
}

    .search-box input {
        width: 100%;
    }

.table-responsive {
    overflow-x: auto;
}

.table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: #333;
}

    .table th, .table td {
        padding: 0.5rem;
        border: 1px solid #f0f0f0;
    }

    .table th {
        background-color: #459ad6;
        color: #ffffff;
        font-weight: 600;
        letter-spacing: 0.05em;
        vertical-align: middle;
        text-align: center;
        padding: 0.75rem 0.5rem;
    }

    .table td {
        border-bottom: 1px solid #f0f0f0;
        border-right: 1px solid #f0f0f0;
        vertical-align: middle;
    }

    .table tr:last-child td {
        border-bottom: none;
    }

    .table td:last-child {
        border-right: none;
    }

.table-striped tbody tr:nth-of-type(odd) {
    background-color: #e2efff;
}

.pagination-info {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-top: 15px;
}

.items-info {
    margin-bottom: 10px;
}

.pagination {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    list-style: none;
}

.page-item {
    margin: 2px;
}

.page-link {
    padding: 0.25rem 0.5rem;
    color: #459ad6;
    background-color: #fff;
    border: 1px solid #dee2e6;
    border-radius: 0.2rem;
}

.page-item.active .page-link {
    color: #fff;
    background-color: #459ad6;
    border-color: #459ad6;
}

.page-item.disabled .page-link {
    color: #6c757d;
    pointer-events: none;
    background-color: #fff;
    border-color: #dee2e6;
}

.support-text {
    font-size: 16px;
    width: 85%;
    line-height: 1.5;
    word-wrap: break-word;
    text-align: justify;
}

    .support-text a {
        text-decoration: underline;
    }

.table.gestores th {
    background-color: var(--color-orange-600);
}

.table.todos th {
    background-color: var(--color-gray-800);
}

.table.atrasados th {
    background-color: var(--color-red);
}

.table.andamentos th {
    background-color: var(--color-yellow);
}

.table.concluidos th {
    background-color: var(--color-green);
}

.table.nao-iniciados th {
    background-color: var(--color-blue);
}

.table.inativos th {
    background-color: rebeccapurple;
}

.table.totais th {
    background-color: var(--color-green);
}

.table.gestores tr:nth-of-type(odd) {
    background-color: var(--color-orange-100);
}

.table.todos tr:nth-of-type(odd) {
    background-color: var(--color-gray-100);
}

.table.atrasados tr:nth-of-type(odd) {
    background-color: var(--color-red-100);
}

.table.andamentos tr:nth-of-type(odd) {
    background-color: var(--color-yellow-500);
}

.table.concluidos tr:nth-of-type(odd) {
    background-color: var(--color-green-100);
}

.table.nao-iniciados tr:nth-of-type(odd) {
    background-color: var(--color-blue-100);
}

.table.inativos tr:nth-of-type(odd) {
    background-color: rgba(160, 32, 240, 0.1);
}

.table.totais tr:nth-of-type(odd) {
    background-color: var(--color-green-100);
}

table.semanal {
    border: 2px solid #FFD700;
}

.table.semanal th {
    background-color: #FFD700;
    color: #000;
}

.table.semanal tr:nth-of-type(odd) {
    background-color: #FFFFD9;
}

.table.semanal tr:nth-of-type(even) {
    background-color: #FFFFE0;
}

.table.semanal td {
    border-color: #FFD700;
}

@media screen and (max-width: 1400px) {
    .user-logado {
        font-size: 14px;
    }
    .conteudo-casos {
        justify-content: center;
    }
}

@media screen and (max-width: 1200px) {
    .user-logado {
        font-size: 14px;
    }
    .conteudo-casos {
        justify-content: center;
    }

    .legenda-item {
        width: 100%;
    }

    .conteudo-casos a {
        flex: 0 0 calc(20% - 1rem);
    }
}

@media screen and (max-width: 992px) {
    .user-logado {
        font-size: 12px;
    }
    .conteudo-casos a {
        flex: 0 0 calc(33.33% - 1rem);
        justify-content: center;
    }
}

@media screen and (max-width: 768px) {
    .user-logado {
        font-size: 12px;
    }
    .grid-controls {
        flex-direction: column;
        align-items: stretch;
    }

    .items-per-page, .search-box {
        width: 100%;
        margin-bottom: 10px;
    }

    .items-per-page {
        justify-content: flex-start;
    }

    .search-box {
        max-width: none;
    }

    .table thead {
        display: none;
    }

    .table, .table tbody, .table tr, .table td {
        display: block;
        width: 100%;
    }

        .table tr {
            margin-bottom: 15px;
            border: 1px solid #f0f0f0;
            border-radius: 8px;
        }

        .table td {
            text-align: right;
            padding-left: 50%;
            position: relative;
            border-bottom: 1px solid #f0f0f0;
            border-right: none;
        }

            .table td:before {
                content: attr(data-label);
                position: absolute;
                left: 6px;
                width: 45%;
                padding-right: 10px;
                white-space: nowrap;
                text-align: left;
                font-weight: bold;
                top: 50%;
                transform: translateY(-50%);
            }

            .table td:last-child {
                border-bottom: none;
            }

    .pagination-info {
        flex-direction: column;
        align-items: flex-start;
    }

    .items-info, .pagination {
        margin-bottom: 10px;
    }

    .legenda-grid {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

        .legenda-grid > div {
            width: 100%;
        }

    .info-row {
        margin-top: 1rem;
        margin-bottom: 1rem;
    }

    .escola-nome {
        margin-bottom: 1rem;
    }

    .conteudo-casos a {
        flex: 0 0 calc(50% - 1rem);
        justify-content: center;
    }
}

@media screen and (max-width: 480px) {
    .user-logado {
        font-size: 10px;
    }
    .conteudo-casos a {
        flex: 0 0 100%;
        justify-content: center;
    }
}
/* Fim Tabelas */

/* MODAL */
.ModalAvaliacao {
    & .modal-dialog

{
    width: 100%;
    max-width: 700px;
    & .modal-content

{
    & .modal-body

{
    p

{
    font-family: Inter;
    color: var(--Text-Title, #374F78);
    font-size: 0.875rem;
    margin-bottom: 0;
    font-style: normal;
    line-height: 115%;
    padding-bottom: 0;
    margin-bottom: 5px;
}

}

& .modal-footer {
    border-top: 0;
    padding-top: 0;
}

}
}
}

.ModalEletiva {
    & .modal-dialog

{
    width: 100%;
    max-width: 700px;
    & .modal-content

{
    & .modal-body

{
    p

{
    font-family: Inter;
    color: var(--Text-Title, #374F78);
    font-size: 0.875rem;
    margin-bottom: 0;
    font-style: normal;
    line-height: 115%;
    padding-bottom: 0;
    margin-bottom: 5px;
}

}

& .modal-footer {
    border-top: 0;
    padding-top: 0;
}

}
}
}

.ModalDiarioClasse {
    & .modal-dialog

{
    & .modal-content

{
    & .modal-header

{
    border-bottom: 0px !important;
    background-color: #FFFFFF !important;
    padding-bottom: 0;
}

& .modal-body {
    p

{
    font-family: Inter;
    color: var(--Text-Title, #374F78);
    font-size: 0.875rem;
    margin-bottom: 0;
    font-style: normal;
    line-height: 115%;
    padding-bottom: 0;
    margin-bottom: 5px;
}

}

& .modal-footer {
    border-top: 0;
    padding-top: 0;
}

}
}
}

/*Inicio Modal Notification */
.modal-notification .modal {
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 99999 !important;
}

.modal-notification .modal-dialog {
    margin: 0;
    max-width: 500px;
}

.modal-notification .modal-confirm {
    color: #636363;
    width: 400px;
    margin: 30px auto;
}

    .modal-notification .modal-confirm .modal-content {
        padding: 20px;
        border-radius: 5px;
        border: none;
        text-align: center;
        font-size: 16px;
    }

    .modal-notification .modal-confirm .modal-header {
        border-bottom: none;
        position: relative;
        justify-content: center;
        height: 60px;
        padding-top: 10px;
        padding-bottom: 5px;
    }

    .modal-notification .modal-confirm .modal-body h4 {
        margin-top: 4px;
        margin-bottom: 18px;
    }

    .modal-notification .modal-confirm .modal-body p {
        margin-top: 4px;
        margin-bottom: 4px;
    }

.modal-notification .modal-footer {
    border-top: none;
}

.modal-notification .modal-confirm .icon-box i {
    font-size: 58px;
    position: relative;
    top: 3px;
}

.modal-notification .modal-confirm .modal-dialog {
    margin-top: 80px;
}

.modal-notification .modal-confirm .btn {
    min-width: 120px;
    min-height: 40px;
    width: auto;
    /*margin: 10px;*/
}

.btn-icon {
    align-items: center;
    gap: 10px;
}

    .btn-icon .material-icons {
        font-size: 18px;
        vertical-align: middle;
    }

.btnCloseModalNotification {
    position: absolute;
    top: -15px;
    right: 10px;
    background: none;
    border: none;
    font-size: 48px;
    cursor: pointer;
    z-index: 9999;
    color: darkgray;
}

.progress {
    width: 100%;
    height: 5px;
    background-color: #f3f3f3;
    border-radius: 5px;
    overflow: hidden;
}

.progress-bar {
    width: 0;
    height: 100%;
    background-color: #007bff;
    /*transition: width 3s linear;*/
}

/* Estilos para diferentes tipos de notificacao */
/* Amarelo */
.icon-warning {
    background: #fff;
    color: #FFC107;
}

.text-warning {
    color: #FFC107;
}

/* Verde */
.icon-success {
    background: #fff;
    color: rgb(25 135 84);
}

.text-success {
    color: rgb(25 135 84);
}

/* Vermelho */
.icon-danger {
    background: #fff;
    color: rgb(220 53 69);
}

.text-danger {
    color: rgb(220 53 69);
}

/* Azul claro */
.icon-info {
    background: #fff;
    color: rgb(13 202 240);
}

.text-info {
    color: rgb(13 202 240);
}

/* Verde */
.icon-question {
    background: #fff;
    color: #25af6b;
}

.text-question {
    color: #25af6b;
}

/* Azul claro */
.icon-save {
    background: #fff;
    color: rgb(13 202 240);
}

.text-save {
    color: rgb(13 202 240);
}

/* Vermelho */
.icon-delete {
    background: #fff;
    color: rgb(220 53 69);
}

.text-delete {
    color: rgb(220 53 69);
}

.modal-footer > *.btn {
    border-radius: 2.75rem;
    width: 100%;
    font-weight: 500;
}
/* Ajustes para smartphones menores */
@media only screen and (max-width: 429px) {
    .modal-notification .modal-dialog {
        max-width: 95%;
    }

    .modal-notification .modal-confirm .modal-content {
        padding: 10px;
        font-size: 16px;
    }

    .btnCloseModalNotification {
        font-size: 40px;
        top: -5px
    }

    .modal-notification .modal-confirm .icon-box i {
        font-size: 40px;
        top: 15px;
    }

    .modal-notification .modal-confirm .btn {
        min-width: 90px;
        min-height: 35px;
        padding: 0 10px;
    }
}

/* Ajustes para dispositivos entre 430px e 768px (smartphones e tablets menores) */
@media only screen and (max-width: 768px) and (min-width: 430px) {

    .modal-notification .modal-dialog {
        max-width: 85%;
    }

    .modal-notification .modal-confirm .modal-content {
        padding: 15px;
        font-size: 16px;
    }

    .btnCloseModalNotification {
        font-size: 36px;
        top: -5px;
    }

    .modal-notification .modal-confirm .icon-box i {
        font-size: 48px;
        top: 15px;
    }

    .modal-notification .modal-confirm .btn {
        min-width: 100px;
        min-height: 35px;
        padding: 0 10px;
    }

    .modal-notification .modal-footer {
        border-top: none;
    }
}

/* Ajustes para dispositivos entre 769px e 1024px (tablets e notebooks pequenos) */
@media only screen and (max-width: 1024px) and (min-width: 769px) {
    .modal-notification .modal-dialog {
        max-width: 75%;
    }

    .modal-notification .modal-confirm .modal-content {
        padding: 18px;
        font-size: 14px;
    }

    .btnCloseModalNotification {
        font-size: 40px;
    }

    .modal-notification .modal-confirm .icon-box i {
        font-size: 48px;
        top: 15px;
    }

    .modal-notification .modal-confirm .btn {
        min-width: 110px;
        min-height: 38px;
        padding: 0 10px;
    }

    .modal-notification .modal-footer {
        border-top: none;
    }
}

/* Ajustes para monitores menores e notebooks antigos (entre 1025px e 1280px) */
@media only screen and (max-width: 1280px) and (min-width: 1025px) {
    .modal-notification .modal-dialog {
        max-width: 70%;
    }

    .modal-notification .modal-confirm .modal-content {
        padding: 20px;
        font-size: 15px;
    }

    .btnCloseModalNotification {
        font-size: 42px;
    }

    .modal-notification .modal-confirm .icon-box i {
        font-size: 48px;
        top: 15px;
    }

    .modal-notification .modal-confirm .btn {
        min-width: 120px;
        min-height: 40px;
        padding: 0 10px;
    }

    .modal-notification .modal-footer {
        border-top: none;
    }
}

/*Fim ModalNotification */