$mat-paginator-height: 56px;
$mat-paginator-padding: 0 8px;

$mat-paginator-page-size-margin-right: 8px;

$mat-paginator-items-per-page-label-margin: 0 4px;
$mat-paginator-selector-margin: 6px 4px 0 4px;
$mat-paginator-selector-trigger-width: 56px;
$mat-paginator-selector-trigger-outline-width: 64px;
$mat-paginator-selector-trigger-fill-width: 64px;

/** @deprecated Use `$mat-paginator-selector-trigger-width` instead. @breaking-change 8.0.0 */
$mat-paginator-selector-trigger-min-width: $mat-paginator-selector-trigger-width;

/** @deprecated Unused. To be removed */
$mat-paginator-range-actions-min-height: 48px;

$mat-paginator-range-label-margin: 0 32px 0 24px;

$mat-paginator-button-margin: 8px;
$mat-paginator-button-icon-height: 8px;
$mat-paginator-button-icon-width: 8px;

$mat-paginator-button-increment-icon-margin: 12px;
$mat-paginator-button-decrement-icon-margin: 16px;

$mat-paginator-button-first-last-icon-width: 14px;

$mat-paginator-button-first-icon-margin: 3px;
$mat-paginator-button-last-icon-margin: 15px;


$mat-paginator-button-first-decrement-icon-margin: 21px;
$mat-paginator-button-last-increment-icon-margin: 9px;


.mat-paginator {
  display: block;
}

// Note: this wrapper element is only used to get the flexbox vertical centering to work
// with the `min-height` on IE11. It can be removed if we drop support for IE.
.mat-paginator-outer-container {
  display: flex;
}

.mat-paginator-container {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-height: $mat-paginator-height;
  padding: $mat-paginator-padding;
  flex-wrap: wrap-reverse;
  width: 100%;
}

.mat-paginator-page-size {
  display: flex;
  align-items: baseline;
  margin-right: $mat-paginator-page-size-margin-right;

  [dir='rtl'] & {
    margin-right: 0;
    margin-left: $mat-paginator-page-size-margin-right;
  }
}

.mat-paginator-page-size-label {
  margin: $mat-paginator-items-per-page-label-margin;
}

.mat-paginator-page-size-select {
  margin: $mat-paginator-selector-margin;
  width: $mat-paginator-selector-trigger-width;

  &.mat-form-field-appearance-outline {
    width: $mat-paginator-selector-trigger-outline-width;
  }

  &.mat-form-field-appearance-fill {
    width: $mat-paginator-selector-trigger-fill-width;
  }
}

.mat-paginator-range-label {
  margin: $mat-paginator-range-label-margin;
}

.mat-paginator-range-actions {
  display: flex;
  align-items: center;
}

.mat-paginator-icon {
  width: $mat-paginator-height / 2;
  fill: currentColor;

  [dir='rtl'] & {
    transform: rotate(180deg);
  }
}
