.TableCell {
  --buttons-wrapper-size: calc(0 * 1px);
  z-index: var(--table-z);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: var(--color-typo-primary);
  background-color: var(--color-bg-default);
  grid-row-end: var(--row-span);
}

  .TableCell_withoutBorder {
    border: none;
  }

  .TableCell_isHeader {
    position: relative;
    font-size: var(--size-text-xs);
    font-weight: var(--font-weight-text-bold);
    line-height: var(--line-height-text-s);
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .TableCell_isHeader:not(.TableCell_isHeader_isSeparateRows) {
      border-top: var(--table-border);
      border-bottom: var(--table-border);
    }

  .TableCell_isHeader_isSeparateRows {
      border-top: var(--table-border);
    }

  .TableCell:not(.TableCell_isHeader) {
    font-size: var(--size-text-m);
    line-height: var(--line-height-text-m);
  }

  .TableCell_isResized {
    word-break: break-word;
  }

  .TableCell_isClickable {
    cursor: pointer;
  }

  .TableCell_isSortable,
  .TableCell_isFilterable,
  .TableCell_isControl {
    --buttons-wrapper-size: var(--space-xl);
  }

  .TableCell_isSortable.TableCell_isFilterable,
  .TableCell_isSortable.TableCell_isControl,
  .TableCell_isFilterable.TableCell_isControl {
    --buttons-wrapper-size: var(--space-4xl);
  }

  .TableCell_isSortable.TableCell_isFilterable.TableCell_isControl {
    --buttons-wrapper-size: var(--space-5xl);
  }

  .TableCell_stickyOnTop,
  .TableCell_stickyOnLeft {
    position: sticky;
  }

  .TableCell_stickyOnTop.TableCell_isResizer,
  .TableCell_stickyOnLeft.TableCell_isResizer {
    z-index: calc(var(--sticky-top-and-left-z) + 1);
  }

  .TableCell_stickyOnTop {
    z-index: var(--sticky-top-z);
    top: 0;
  }

  .TableCell_stickyOnLeft {
    z-index: var(--sticky-left-z);
    left: 0;
  }

  .TableCell_stickyOnLeft.TableCell_isHeader {
      z-index: var(--sticky-top-and-left-z);
      margin-right: 2px;
    }

  .TableCell_isBorderTop {
    border-top: var(--table-border);
  }

  .TableCell_isBorderLeft {
    border-left: var(--table-border);
  }

  .TableCell_isSeparateRows {
    margin-bottom: var(--space-2xs);
    -webkit-box-shadow: var(--shadow-table);
            box-shadow: var(--shadow-table);
  }

  .TableCell_isSeparateRows_isHeader {
        -webkit-box-shadow: none;
                box-shadow: none;
      }

  .TableCell_isSeparateRows.TableCell_stickyOnLeft {
        margin-right: 2px;
        -webkit-box-shadow: var(--shadow-sticky);
                box-shadow: var(--shadow-sticky);
      }

  .TableCell_isSeparateFirstColumn {
    margin-left: var(--space-xs);
    border-top-left-radius: var(--table-border-radius);
    border-bottom-left-radius: var(--table-border-radius);
  }

  .TableCell_isSeparateEndColumn {
    margin-right: var(--space-xs);
    border-top-right-radius: var(--table-border-radius);
    border-bottom-right-radius: var(--table-border-radius);
  }

  .TableCell_isSeparateFirstRow {
    margin-top: var(--space-xs);
  }

  .TableCell_isSeparateEndRow {
     margin-bottom: var(--space-xs);
  }

  .TableCell-Wrapper {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
    padding: var(--cell-padding-vertical) var(--cell-padding-horizontal);
    padding-right: calc(
      var(--cell-padding-horizontal) + var(--resizer-width) + var(--buttons-wrapper-size)
    );

  }

  .TableCell-Wrapper_wrap_truncate {
        display: block;
        overflow: hidden;
        max-width: 100%;
        white-space: nowrap;
        text-overflow: ellipsis;
      }

  .TableCell-Wrapper_wrap_break {
        max-width: 100%;
        white-space: pre-wrap;
        word-break: break-word;
      }

  .TableCell-Wrapper_withoutPadding {
      padding: 0;
    }

  .TableCell-Wrapper_verticalAlign_top {
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
    }

  .TableCell-Wrapper_verticalAlign_center {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
    }

  .TableCell-Wrapper_verticalAlign_bottom {
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end;
    }

  .TableCell-Wrapper_horizontalAlign_left {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
    }

  .TableCell-Wrapper_horizontalAlign_center {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      text-align: center;
    }

  .TableCell-Wrapper_horizontalAlign_right {
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      text-align: right;
    }

  .TableCell-Wrapper_isSeparateRows:not(.Table-ContentCell_isFirstColumn)::after {
         content: '';
         position: absolute;
         top: 8px;
         left: -3px;
         bottom: 8px;
         width: 1px;
         background: var(--color-bg-border);
         opacity: 1;
         -webkit-transition: opacity var(--fast-transition);
         transition: opacity var(--fast-transition);
      }
