/*
** Let's keep an eye on `gap` support and simplify this garbage
** when we can.
** - JF
*/
.InlineStack {
  display: flex;
}

.InlineStackInner {
  display: flex;
}

.InlineStackInner-wrap {
  flex-wrap: wrap;
}

.InlineStackInner-spacingNone {
  margin-block-start: 0;
  margin-inline-start: 0;

  & > * {
    margin-block-start: 0;
    margin-inline-start: 0;
  }
}

.InlineStackInner-spacingExtraTight {
  margin-block-start: calc(var(--x-spacing-tight4x) * -1);
  margin-inline-start: calc(var(--x-spacing-tight4x) * -1);

  & > * {
    margin-block-start: var(--x-spacing-tight4x);
    margin-inline-start: var(--x-spacing-tight4x);
  }
}

.InlineStackInner-spacingTight {
  margin-block-start: calc(var(--x-spacing-tight1x) * -1);
  margin-inline-start: calc(var(--x-spacing-tight1x) * -1);

  & > * {
    margin-block-start: var(--x-spacing-tight1x);
    margin-inline-start: var(--x-spacing-tight1x);
  }
}

.InlineStackInner-spacingBase {
  margin-block-start: calc(var(--x-spacing-base) * -1);
  margin-inline-start: calc(var(--x-spacing-base) * -1);

  & > * {
    margin-block-start: var(--x-spacing-base);
    margin-inline-start: var(--x-spacing-base);
  }
}

.InlineStackInner-spacingLoose {
  margin-block-start: calc(var(--x-spacing-loose1x) * -1);
  margin-inline-start: calc(var(--x-spacing-loose1x) * -1);

  & > * {
    margin-block-start: var(--x-spacing-loose1x);
    margin-inline-start: var(--x-spacing-loose1x);
  }
}

.InlineStackInner-spacingExtraLoose {
  margin-block-start: calc(var(--x-spacing-loose4x) * -1);
  margin-inline-start: calc(var(--x-spacing-loose4x) * -1);

  & > * {
    margin-block-start: var(--x-spacing-loose4x);
    margin-inline-start: var(--x-spacing-loose4x);
  }
}

.InlineStackInner-alignmentLeading {
  align-items: flex-start;
}

.InlineStackInner-alignmentCenter {
  align-items: center;
}

.InlineStackInner-alignmentTrailing {
  align-items: flex-end;
}

.InlineStackInner-alignmentBaseline {
  align-items: baseline;
}

.InlineStackInner-blockAlignmentCenter {
  justify-content: center;
}

.InlineStackInner-blockAlignmentTrailing {
  justify-content: flex-end;
}
