.stack {
  display: flex;
  gap: var(--size-3);
  flex-direction: column;
  justify-content: flex-start;

  &.sm {
    gap: var(--size-1);
  }

  &.lg {
    gap: var(--size-7);
  }

  &.centered {
    align-items: center;
  }

  &.right {
    align-items: flex-end;
  }

  .hide-if-empty:empty,
  .hide-if-empty:not(:has(*:not(:empty))) {
    display: none;
  }
}
