/* Hide bottom border in data-table to match with card-footer */
.data-table-card tbody tr:last-child td,
.data-table-card tbody tr:last-child th {
    border-bottom: none !important;
}

/* Hide CSV item in the ApexCharts export menu */
.apexcharts-menu-item.exportCSV {
    display: none;
}

.import-processing-name {
    font-size: 1.5rem;
    line-height: 1.3;
}

.import-processing-hero {
    --tblr-avatar-size: 3.5rem;
}

.import-processing-step-title {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.35;
}

.import-processing-step-desc {
    font-size: 0.875rem;
    line-height: 1.45;
}

.import-processing-steps.steps-vertical .step-item {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}

.import-processing-steps.steps-vertical .step-item:not(:first-child) {
    margin-top: 0.75rem;
}

.dropdown-menu-scrollable {
    max-height: 500px;
    overflow-y: auto;
}

.dropdown-item-typeahead-focus {
    background-color: var(--tblr-dropdown-link-hover-bg, rgba(0, 0, 0, 0.04));
    color: var(--tblr-dropdown-link-hover-color, inherit);
}

.benchmark-delta-heatmap__tooltip {
    position: fixed;
    z-index: 1080;
    pointer-events: none;
    max-width: 16rem;
    padding: 0.5rem 0.75rem;
    border-radius: 0.375rem;
    background: var(--tblr-bg-surface, #fff);
    border: 1px solid var(--tblr-border-color, rgba(0, 0, 0, 0.1));
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.12);
}

.import-processing-status-message {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.4;
    color: var(--tblr-body-color);
}

.import-processing-spinner-icon {
    width: 1.75rem;
    height: 1.75rem;
    animation: import-processing-spin 0.9s linear infinite;
}

@keyframes import-processing-spin {
    to {
        transform: rotate(360deg);
    }
}

.case-flow-map-square {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    max-height: min(100%, 560px);
}

.case-flow-map-square .case-flow-map-container {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    border-radius: var(--tblr-border-radius, 4px);
    overflow: hidden;
    background: var(--tblr-bg-surface-secondary, #f8f9fa);
}

.case-flow-map-container.leaflet-container {
    height: 100%;
    width: 100%;
    font: inherit;
}

.case-flow-map-container .leaflet-pane {
    z-index: 1;
}

.case-flow-map-container .leaflet-top,
.case-flow-map-container .leaflet-bottom {
    z-index: 2;
}

.data-quality-drawer {
    --bs-offcanvas-width: min(28rem, 100vw);
}

.data-quality-indicator-btn {
    max-width: 100%;
}

.data-quality-dimensions-table .data-quality-dimension-note-row > td {
    padding: 0;
    border-top: none;
}

.data-quality-dimensions-table .data-quality-dimension-row + .data-quality-dimension-note-row > td {
    border-top: none;
}

.data-quality-dimension-note-subtable {
    --bs-table-bg: var(--tblr-bg-surface-secondary, #f8f9fa);
    width: 100%;
    table-layout: fixed;
}

.data-quality-dimension-note-subtable td {
    padding: 0.375rem 0.75rem;
    border: none;
    border-left: 3px solid var(--tblr-border-color, #dee2e6);
}

.data-quality-details-accordion .accordion-button {
    font-size: 0.9375rem;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}

.data-quality-details-accordion .accordion-button:not(.collapsed) {
    box-shadow: none;
}

.data-quality-allocation-table th {
    font-weight: 600;
}

.data-quality-allocation-table th[scope="row"] {
    color: var(--tblr-secondary, #6c757d);
    font-weight: 500;
}

.data-quality-allocation-bucket-sufficient {
    --bs-table-bg: rgba(var(--tblr-green-rgb, 47, 179, 68), 0.04);
.hospital-population-map-pin {
    background: transparent;
    border: none;
}

.hospital-population-map-legend-pin {
    flex-shrink: 0;
}

.hospital-population-map-legend-pin--participating {
    color: #1864ab;
}

.hospital-population-map-legend-pin--reference {
    color: #868e96;
}

.page-body:has(#stats-hospital-population) {
    padding-top: 0;
}
