/// Adjusts the spacing for the stack and contained items.
/// @param {String} $spacing - The spacing variant to use.

@mixin stack-spacing($spacing: base) {
  margin-top: -1 * spacing($spacing);
  margin-left: -1 * spacing($spacing);

  > .p_zv {
    margin-top: spacing($spacing);
    margin-left: spacing($spacing);
    max-width: calc(100% - #{spacing($spacing)});
  }
}

.p_z2 {
  @include stack-spacing;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.p_iq {
  flex-wrap: nowrap;
}

.p_dy {
  flex-direction: column;
}

.p_dr {
  @include stack-spacing(none);
}

.p_yp {
  @include stack-spacing(extra-tight);
}

.p_ne {
  @include stack-spacing(tight);
}

.p_x9 {
  @include stack-spacing(loose);
}

.p_q6 {
  @include stack-spacing(extra-loose);
}

.p_f9 {
  justify-content: flex-start;
}

.p_pp {
  justify-content: flex-end;
}

.p_xh {
  justify-content: center;
}

.p_fz {
  justify-content: space-between;
}

.p_l5 > .p_zv {
  flex: 1 1 auto;
}

.p_ij > .p_zv {
  flex: 1 1 auto;

  @supports (min-width: fit-content) {
    flex: 1 0 0%;
    min-width: fit-content;
  }
}

.p_ts {
  align-items: flex-start;
}

.p_n5 {
  align-items: flex-end;
}

.p_p5 {
  align-items: center;
}

.p_dg {
  align-items: stretch;
}

.p_mq {
  align-items: baseline;
}

.p_zv {
  flex: 0 0 auto;
  min-width: 0;
}

.p_ma {
  flex: 1 1 auto;
}
