// Spacing scale on a 4px base. Applied through logical properties only
// (see `_mixins.scss`) so RTL needs no mirrored stylesheet.

$space: (
  0: 0,
  1: 0.25rem,
  2: 0.5rem,
  3: 0.75rem,
  4: 1rem,
  5: 1.25rem,
  6: 1.5rem,
  8: 2rem,
  10: 2.5rem,
  12: 3rem,
  16: 4rem,
);

@mixin emit {
  :root {
    @each $step, $value in $space {
      --space-#{$step}: #{$value};
    }
  }
}

@function space($step) {
  @return var(--space-#{$step});
}
