.grid-card {
  max-width:     1200px;
  margin:        0 auto var(--space-6);
}

.grid-table {
  margin-bottom: 0;
}

.grid-table > thead > tr > th,
.e-grid .e-headercell {
  background-color: var(--color-background);
  color:            var(--color-text-secondary);
  font-weight:      var(--font-weight-semibold);
  font-size:        var(--font-size-sm);
  text-transform:   uppercase;
  letter-spacing:   0.5px;
  border-bottom:    2px solid var(--color-border);
  vertical-align:   middle !important;
  text-align:       center !important;
}

.grid-table > tbody > tr > td,
.e-grid .e-rowcell {
  vertical-align: middle !important;
  color:          var(--color-text-primary);
  font-weight:    var(--font-weight-medium);
  padding-top:    var(--space-3) !important;
  padding-bottom: var(--space-3) !important;
  text-align:     center;
}

.e-grid .e-gridheader {
  border-top-left-radius:  var(--radius-md);
  border-top-right-radius: var(--radius-md);
}

.e-grid .e-gridcontent,
.e-grid .e-gridpager {
  border-bottom-left-radius:  var(--radius-md);
  border-bottom-right-radius: var(--radius-md);
}

.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:             var(--space-2);
  min-height:      44px;
}

.grid-table td .badge-estado {
  display:         inline-flex;
  align-items:     center;
  justify-content: center;
}

.provider-cell-center {
  display:         flex;
  flex-direction:  column;
  align-items:     center;
  justify-content: center;
  gap:             var(--space-1);
  text-align:      center;
}

@media (max-width: 767.98px) {
  .grid-card { padding: var(--space-4); }
}
