
.ui-price {
  color: var(--tx-generic-color-primary-dark);
  display: inline-block;
  font-family: var(--tx-generic-font-primary-font-family), var(--tx-generic-font-primary-generic-family);
}

.ui-price__additional-text-block {
  color: var(--tx-generic-color-text);
  display: flex;
  font-family: var(--tx-generic-font-secondary-font-family), var(--tx-generic-font-secondary-generic-family);
  justify-content: center;
  line-height: 15px;
}

.ui-price__discount {
  color: var(--tx-generic-color-text-lighter);
  display: flex;
  font-weight: 500;
  justify-content: center;
  margin-bottom: 3px;
  text-decoration: line-through;
}

.ui-price__value-delimiter {
  align-items: flex-end;
  display: flex;
  flex-flow: row nowrap;
  flex: 0 0 auto;
}

.ui-price__currency {
  display: flex;
  flex: 0 0 auto;

  &.ui-price__currency_left {
    margin-right: 5px;
    order: 1;
  }

  &.ui-price__currency_right {
    margin-left: 5px;
    order: 5;
  }
}

.ui-price__decimals {
  align-self: flex-start;
  display: flex;
  flex: 0 0 auto;
  order: 3;
}

.ui-price__asterisk {
  align-self: flex-start;
  display: flex;
  flex: 0 0 auto;
  order: 4;
}

.ui-price__integers {
  display: flex;
  font-weight: var(--tx-generic-font-primary-weight-bold);
  flex: 0 0 auto;
  order: 2;
}

.ui-price__underline {
  background-color: var(--tx-generic-color-accent);
  display: flex;
  flex: 1 1 auto;
  order: 6;
}

.ui-price_size_xs {
  .ui-price__currency {
    font-size: var(--tx-price-xsmall-font-size-currency);
    line-height: var(--tx-price-currency-xsmall-line-height);

    &.ui-price__currency_left {
      margin-right: 1px;
    }

    &.ui-price__currency_right {
      margin-left: 1px;
    }
  }

  .ui-price__decimals {
    font-size: var(--tx-price-xsmall-font-size-decimals);
    line-height: var(--tx-price-decimals-xsmall-line-height);
  }

  .ui-price__asterisk {
    font-size: var(--tx-price-xsmall-font-size-decimals);
    line-height: var(--tx-price-asterisk-xsmall-line-height);
  }

  .ui-price__integers {
    font-size: var(--tx-price-xsmall-font-size-integers);
    line-height: var(--tx-price-xsmall-line-height-integers);
  }

  .ui-price__underline {
    height: var(--tx-price-xsmall-underline-height);
    margin-top: var(--tx-price-xsmall-underline-margin-top);
  }

  .ui-price__additional-text-block {
    font-size: var(--tx-price-xsmall-font-size-additional-text);
  }

  .ui-price__discount {
    font-size: var(--tx-price-xsmall-font-size-discount);
  }
}

.ui-price_size_s {
  .ui-price__currency {
    font-size: var(--tx-price-small-font-size-currency);
    line-height: var(--tx-price-currency-small-line-height);

    &.ui-price__currency_left {
      margin-right: 2px;
    }

    &.ui-price__currency_right {
      margin-left: 2px;
    }
  }

  .ui-price__decimals {
    font-size: var(--tx-price-small-font-size-decimals);
    line-height: var(--tx-price-decimals-small-line-height);
  }

  .ui-price__asterisk {
    font-size: var(--tx-price-small-font-size-decimals);
    line-height: var(--tx-price-asterisk-small-line-height);
  }

  .ui-price__integers {
    font-size: var(--tx-price-small-font-size-integers);
    line-height: var(--tx-price-small-line-height-integers);
    margin-right: 1px;
  }

  .ui-price__underline {
    height: var(--tx-price-small-underline-height);
    margin-top: var(--tx-price-small-underline-margin-top);
  }

  .ui-price__additional-text-block {
    font-size: var(--tx-price-small-font-size-additional-text);
  }

  .ui-price__discount {
    font-size: var(--tx-price-small-font-size-discount);
  }
}

.ui-price_size_m {
  .ui-price__currency {
    font-size: var(--tx-price-medium-font-size-currency);
    line-height: var(--tx-price-currency-medium-line-height);

    &.ui-price__currency_left {
      margin-right: 2px;
    }

    &.ui-price__currency_right {
      margin-left: 2px;
    }
  }

  .ui-price__decimals {
    font-size: var(--tx-price-medium-font-size-decimals);
    line-height: var(--tx-price-decimals-medium-line-height);
  }

  .ui-price__asterisk {
    font-size: var(--tx-price-medium-font-size-decimals);
    line-height: var(--tx-price-asterisk-medium-line-height);
  }

  .ui-price__integers {
    font-size: var(--tx-price-medium-font-size-integers);
    line-height: var(--tx-price-medium-line-height-integers);
    margin-right: 1px;
  }

  .ui-price__underline {
    height: var(--tx-price-medium-underline-height);
    margin-top: var(--tx-price-medium-underline-margin-top);
  }

  .ui-price__additional-text-block {
    font-size: var(--tx-price-medium-font-size-additional-text);
  }

  .ui-price__discount {
    font-size: var(--tx-price-medium-font-size-discount);
  }
}

.ui-price_size_l {
  .ui-price__currency {
    font-size: var(--tx-price-large-font-size-currency);
    line-height: var(--tx-price-currency-large-line-height);

    &.ui-price__currency_left {
      margin-right: 3px;
    }

    &.ui-price__currency_right {
      margin-left: 3px;
    }
  }

  .ui-price__decimals {
    font-size: var(--tx-price-large-font-size-decimals);
    line-height: var(--tx-price-decimals-large-line-height);
  }

  .ui-price__asterisk {
    font-size: var(--tx-price-large-font-size-decimals);
    line-height: var(--tx-price-asterisk-large-line-height);
  }

  .ui-price__integers {
    font-size: var(--tx-price-large-font-size-integers);
    line-height: var(--tx-price-large-line-height-integers);
    margin-right: 2px;
  }

  .ui-price__underline {
    height: var(--tx-price-large-underline-height);
    margin-top: var(--tx-price-large-underline-margin-top);
  }

  .ui-price__additional-text-block {
    font-size: var(--tx-price-large-font-size-additional-text);
  }

  .ui-price__discount {
    font-size: var(--tx-price-large-font-size-discount);
  }
}

.ui-price_size_xl {
  .ui-price__currency {
    font-size: var(--tx-price-xlarge-font-size-currency);
    line-height: var(--tx-price-currency-xlarge-line-height);
  }

  .ui-price__decimals {
    font-size: var(--tx-price-xlarge-font-size-decimals);
    line-height: var(--tx-price-decimals-xlarge-line-height);
  }

  .ui-price__asterisk {
    font-size: var(--tx-price-xlarge-font-size-decimals);
    line-height: var(--tx-price-asterisk-xlarge-line-height);
  }

  .ui-price__integers {
    font-size: var(--tx-price-xlarge-font-size-integers);
    line-height: var(--tx-price-xlarge-line-height-integers);
    margin-right: 3px;
  }

  .ui-price__underline {
    height: var(--tx-price-xlarge-underline-height);
    margin-top: var(--tx-price-xlarge-underline-margin-top);
  }

  .ui-price__additional-text-block {
    font-size: var(--tx-price-xlarge-font-size-additional-text);
  }

  .ui-price__discount {
    font-size: var(--tx-price-xlarge-font-size-discount);
  }
}
