* {
    font-family: sans-serif;
}

html {
    scroll-behavior: smooth;
}

.text-bg-soft {
    background-color: #A370F7 !important;
    color: #ffffff !important;
}

.text-bg-hard {
    background-color: #b6f4df !important;
    color: #064e3b !important;
}

.navbar .nav-link.active {
    font-weight: 600;
    color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .navbar .nav-link {
    color: var(--bs-gray-300);
}
[data-bs-theme="dark"] .navbar .nav-link.active {
    color: var(--bs-light);
    border-bottom-color: var(--bs-light);
}


@media (max-width: 576px) {
    .table td,
    .table th {
        padding: 0.5rem 0.4rem;
    }

    .table thead {
        font-size: 0.78rem;
    }
}

@media print {
    @page {
        margin: 0.5cm;
    }

    body {
        margin: 0;
    }

    .nao-imprimir {
        display: none !important;
    }

    /* Quebra a página ANTES do elemento */
    .quebra-antes {
        page-break-before: always;
        break-before: page;
    }

    /* Quebra a página DEPOIS do elemento */
    .quebra-depois {
        page-break-after: always;
        break-after: page;
    }

    /* Evita quebra dentro do elemento */
    .nao-quebrar {
        page-break-inside: avoid;
        break-inside: avoid;
        display: block;
    }
}


@media print {
    .reduzir-imprimir,
    table,
    th,
    td {
        font-size: 9pt;
    }

    th {
        font-weight: bold;
    }
}

/* Corrigir borda arredondada no topo do carousel */
.carousel-inner {
    border-top-left-radius: calc(0.375rem - 1px);
    border-top-right-radius: calc(0.375rem - 1px);
    overflow: hidden;
}

.carousel-item:first-child img {
    border-top-left-radius: calc(0.375rem - 1px);
    border-top-right-radius: calc(0.375rem - 1px);
}
