ag-grid-aurelia {
  .select-all-container {
    display: flex;
    justify-content: center;
    align-items: center;

    >ui-checkbox {
      >label {
        display: flex;
        justify-content: center;
        height: 100%;
        grid-column-gap: 0;
      }
    }
  }

  &.ag-theme-material.datagrid {
    & .ag-header {
      font-size: 13px;
      z-index: 1;
      border-radius: 5px 5px 0 0;
      border-bottom: solid 1px;

      .ag-pinned-left-header,
      .ag-pinned-right-header {
        border-right: none;
        border-left: none;
      }
    }

    & .ag-cell {
      &.ag-cell-not-inline-editing {
        padding-left: 5px;
        padding-right: 5px;
        line-height: 35px;

        & .ag-cell-wrapper {
          display: block;
          overflow: hidden;
          height: 100%;

          & .ag-cell-value {
            p {
              margin: 0;
            }
          }
        }
      }
    }

    & .ag-header-cell {
      padding-left: 5px;
      padding-right: 5px;

      .ag-header-cell-comp-wrapper>label>span {
        &::after {
          height: 15px;
          width: 15px;
          border: solid 2px;
        }
      }
    }

    & .right-align-ag-grid .ag-header-cell-label {
      display: inline-block;
      text-align: right;
      float: none;
      width: auto;
    }

    & .ag-floating-filter-body,
    .ag-floating-filter-full-body {
      padding: 5px 0 5px 0;

      >div {
        .floating-filter__button {
          width: 100%;
          height: 100%;
          margin: 0;

          >.ui-btn__inner {
            box-shadow: none;
          }
        }
      }
    }

    & .ag-floating-filter-body,
    .ag-filter-filter {
      input {
        padding: 0 0 0 5px;
        margin: 0;
      }
    }

    & .ag-floating-filter-button {
      margin-left: 5px;
    }
  }

  .ag-theme-material {
    & .ag-menu {
      .ag-filter {
        .ag-filter-body {
          margin-bottom: 0;
        }

        .ag-filter-filter,
        .ag-filter-select {
          margin: 0 0 8px 0;
        }
      }

      .ag-input-text-wrapper {
        padding: 10px;
      }

      .ag-menu-header {
        display: none;
      }

      .ag-tabs-body.ag-menu-body {
        padding: 0;
      }
    }

    .ag-root-wrapper {
      cursor: pointer;

      .ag-pinned-left-cols-container {
        left: -1px;

        .ag-row {
          border-left-style: solid;
          border-right-style: solid;

          .ag-cell {
            >.ag-cell-wrapper {
              >.ag-cell-value {
                height: inherit;

                ui-checkbox>label {
                  grid-template-columns: 1fr;
                }
              }
            }
          }
        }
      }
    }

    .ag-ltr .ag-cell {
      border-right: solid 1px;
      border-left: solid 1px;
    }

    .ag-keyboard-focus .ag-header-cell:focus::after {
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
    }

    .ag-row-hover:not(.ag-full-width-row)::before,
    .ag-row-hover.ag-full-width-row.ag-row-group::before {
      left: 1px;
    }

    .ag-cell-focus {
      border: solid 1px;
      outline: none;
    }
  }
}

.ag-theme-material.datagrid {
  .ag-root-wrapper>.ag-root-wrapper-body>.ag-root {
    .ag-body-viewport>.ag-pinned-left-cols-container {
      .ag-cell-value {
        height: inherit;

        ui-checkbox>.ui-option__control {
          display: inherit;
        }
      }
    }
  }
}