body {
}

.reports-page .report-summary-card {
    min-height: 138px;
    border-top: 3px solid transparent !important;
}

.reports-page .report-border-primary {
    border-top-color: #2f6fed !important;
}

.reports-page .report-border-success {
    border-top-color: #198754 !important;
}

.reports-page .report-border-danger {
    border-top-color: #dc3545 !important;
}

.reports-page .report-border-warning {
    border-top-color: #d39e00 !important;
}

.reports-page .report-summary-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 6px;
    font-size: 24px;
}

.reports-page .report-icon-primary {
    color: #2459be;
    background-color: #e8f0ff;
}

.reports-page .report-icon-success {
    color: #146c43;
    background-color: #e6f4ec;
}

.reports-page .report-icon-danger {
    color: #b02a37;
    background-color: #fbeaec;
}

.reports-page .report-icon-warning {
    color: #8a6400;
    background-color: #fff4cf;
}

.reports-page .report-tabs {
    display: inline-flex;
    max-width: 100%;
    padding: 4px;
    overflow-x: auto;
    background-color: #e9ecef;
    border-radius: 6px;
}

.reports-page .report-tab {
    min-height: 38px;
    padding: 8px 16px;
    color: #495057;
    white-space: nowrap;
    background: transparent;
    border: 0;
    border-radius: 4px;
    font-weight: 600;
}

.reports-page .report-tab:hover {
    color: #1b463b;
}

.reports-page .report-tab.active {
    color: #1b463b;
    background-color: #ffffff;
    box-shadow: 0 1px 3px rgba(33, 37, 41, 0.16);
}

.reports-page .report-distribution-row + .report-distribution-row {
    margin-top: 20px;
}

.reports-page .report-progress {
    height: 8px;
    background-color: #e9ecef;
    border-radius: 4px;
}

.reports-page .report-table-state {
    display: flex;
    min-height: 240px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 12px;
    text-align: center;
}

.reports-page .report-state-icon {
    font-size: 34px;
}

.reports-page table th,
.reports-page table td {
    vertical-align: middle;
}

@media (max-width: 575.98px) {
    .reports-page .report-tabs {
        display: flex;
        width: 100%;
    }

    .reports-page .report-tab {
        flex: 1 0 auto;
        padding-inline: 12px;
    }
}

@media print {
    .navbar,
    .reports-page .report-actions,
    .reports-page .report-filter-panel,
    .reports-page .report-tabs,
    .reports-page nav,
    .reports-page .alert {
        display: none !important;
    }

    .reports-page .card {
        break-inside: avoid;
        box-shadow: none !important;
        border: 1px solid #ced4da !important;
    }

    .reports-page .table-responsive {
        overflow: visible !important;
    }

    .reports-page table {
        font-size: 11px;
    }
}
