/* Grid compartit per llistats i taules principals */
.grid-card {
    max-width: 1200px;
    margin: 0 auto 2rem;
}

.grid-table {
    margin-bottom: 0;
}

    .grid-table > thead > tr > th,
    .e-grid .e-headercell {
        background-color: #f8f9fa;
        color: #323232;
        font-weight: 700;
        font-size: 0.85rem;
        text-transform: uppercase;
        border-bottom: 1px solid #dee2e6;
        vertical-align: middle !important;
        text-align: center !important;
    }

    .grid-table > tbody > tr > td,
    .e-grid .e-rowcell {
        vertical-align: middle !important;
        color: #323232;
        font-weight: 500;
        padding-top: 16px !important;
        padding-bottom: 16px !important;
        text-align: center;
    }

.e-grid .e-gridheader {
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}

.e-grid .e-gridcontent,
.e-grid .e-gridpager {
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
}

.grid-action {
    display: flex;
    justify-content: center;
    align-items: center;
}

    .grid-action .e-btn {
        min-width: 42px;
        min-height: 42px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
    }

    .grid-action .is-disabled {
        cursor: not-allowed;
        opacity: 0.6;
        pointer-events: none;
    }

.grid-action-row {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-height: 44px;
}

.grid-table td.text-center,
.grid-table th.text-center {
    vertical-align: middle !important;
}

.grid-table td .badge-estado,
.grid-table td .grid-action-row {
    vertical-align: middle;
}

.grid-table td .badge-estado {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 767.98px) {
    .grid-card {
        padding: 1rem;
    }
}
.provider-cell-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    text-align: center;
}

.grid-table > tbody > tr > td.align-middle,
.grid-table > thead > tr > th.align-middle {
    vertical-align: middle !important;
}