﻿table.dataTable th.dt-empty,
table.dataTable td.dt-empty {
    background-color: white;
}

table.dataTable {
    width: 100%;
    width: 100%;
    margin: 0 auto;
    margin: 0 auto;
    border-spacing: 0;
    border-collapse: separate !important;
    border-radius: 16px !important;
    border: none !important;
    box-shadow: 1px 5px 10px 1px rgb(0 0 0 / 5%) !important;
    overflow: hidden;
}

    table.dataTable thead {
        font-weight: bold;
        background: #F4F6F8 !important;
    }

        table.dataTable thead th, table.dataTable tfoot th {
            font-weight: bold;
            text-transform: none;
        }

    table.dataTable > thead > tr > th, table.dataTable > thead > tr > td {
        border-bottom: none !important;
    }

    table.dataTable > tbody > tr.linha-detalhes-custom {
        background-color: #fff
    }

    /* Estilo das abas internas */
    table.dataTable .tabs-container {
        padding: 10px 20px;
    }

    table.dataTable .tabs-header {
        display: flex;
        border-bottom: 1px solid #ddd;
    }

    table.dataTable .tab-btn {
        padding: 8px 15px;
        cursor: pointer;
        border: 1px solid transparent;
        background: none;
        font-size: 13px;
        color: #555;
    }

        table.dataTable .tab-btn.active {
            background: #fff;
            border: 1px solid #ddd;
            border-bottom-color: #fff;
            border-top-left-radius: 16px;
            border-top-right-radius: 16px;
            font-weight: bold;
            margin-bottom: -1px;
        }

    table.dataTable .tab-content {
        display: none;
        border-radius: 0 0 16px 16px !important;
    }

        table.dataTable .tab-content.active {
            display: block;
            border-left: 1px solid #ddd;
            border-right: 1px solid #ddd;
            border-bottom: 1px solid #ddd;
        }
    /* Sub-tabela */
    table.dataTable .sub-table {
        width: 100%;
        border-collapse: collapse;
        font-size: 13px;
    }

        table.dataTable .sub-table th {
            text-align: left;
            padding: 8px;
            border-bottom: 1px solid #ddd;
            color: #333;
        }

        table.dataTable .sub-table td {
            padding: 8px;
            border-bottom: 1px solid #f1f1f1;
            color: #555;
        }

    table.dataTable td.dt-control {
        cursor: pointer;
        text-align: center;
        vertical-align: middle;
    }

        table.dataTable td.dt-control::before {
            content: '+' !important;
            display: inline-flex !important;
            justify-content: center;
            align-items: center;
            width: 22px;
            height: 22px;
            background-color: #00a76f;
            color: white;
            border-radius: 50%;
            font-weight: bold;
            font-size: 16px;
            line-height: 1;
            border: none !important; /* remove a seta original */
            box-shadow: 0 1px 3px rgba(0,0,0,.2);
        }

    table.dataTable tr.shown td.dt-control::before,
    table.dataTable tbody tr.dt-hasChild td.dt-control::before {
        content: '-' !important;
        background-color: #2d353c;
        border: none !important;
    }

    table.dataTable td.dt-control {
        cursor: pointer;
        text-align: center;
        vertical-align: middle;
    }

    table.dataTable tbody td a {
        cursor: pointer;
    }
