.grid-container {
  display: flex;
  flex-direction: column;
  height: 100%;
  background-color: white;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  position: relative;

  .loading-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;

    .loading-spinner {
      width: 40px;
      height: 40px;
      border: 4px solid #f3f3f3;
      border-top: 4px solid #3498db;
      border-radius: 50%;
      animation: spin 1s linear infinite;
    }
  }
}

:host ::ng-deep {
  .ag-theme-alpine {
    --ag-row-hover-color: #f8f9fa;
    --ag-selected-row-background-color: #e9ecef;
    --ag-odd-row-background-color: #ffffff;
    --ag-row-border-color: #dee2e6;
    
    .cell-wrap-text {
      white-space: normal;
      line-height: 1.5;
      padding: 8px 0;
    }
  }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}