@cell-color: var(--color-text);
@cell-font-size: var(--font-size-md);
@cell-desc-font-size: var(--font-size-sm);
@cell-desc-color: rgba(0, 0, 0, 0.6);
@cell-padding: 10px 12px;
@cell-min-height: 40px;
@cell-border-color: #bcc2cb;
@cell-border-left: 12px;
@cell-border-right: 12px;
@cell-icon-right: 8px;
@cell-extra-left: 8px;

:root {
  --cell-color: @cell-color;
  --cell-font-size: @cell-font-size;
  --cell-desc-font-size: @cell-desc-font-size;
  --cell-desc-color: @cell-desc-color;
  --cell-padding: @cell-padding;
  --cell-min-height: @cell-min-height;
  --cell-border-color: @cell-border-color;
  --cell-border-left: @cell-border-left;
  --cell-border-right: @cell-border-right;
  --cell-icon-right: @cell-icon-right;
  --cell-extra-left: @cell-extra-left;
}

.var-cell {
  align-items: center;
  display: flex;
  min-height: var(--cell-min-height);
  outline: none;
  padding: var(--cell-padding);
  position: relative;
  box-sizing: border-box;
  font-size: var(--cell-font-size);
  color: var(--cell-color);

  &--border {
    &::after {
      position: absolute;
      box-sizing: border-box;
      content: ' ';
      pointer-events: none;
      right: var(--cell-border-right);
      bottom: 0;
      left: var(--cell-border-left);
      border-bottom: 1px solid var(--cell-border-color);
      transform: scaleY(0.5);
    }
  }

  &__icon {
    margin-right: var(--cell-icon-right);
    flex: 0;
  }

  &__content {
    flex: 1;
    overflow: hidden;
  }

  &__title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  &__desc {
    font-size: var(--cell-desc-font-size);
    color: var(--cell-desc-color);
  }

  &__extra {
    flex: 0;
    margin-left: var(--cell-extra-left);
  }
}
