.rt-button {
  position: relative;
  border: none;
  outline: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--layer-button-gap);
  cursor: pointer;
  /* padding: var(--layer-button-padding-top) var(--layer-button-padding-right)
    var(--layer-button-padding-bottom) var(--layer-button-padding-left); */
  border-radius: var(--grid-child-child-border-radius-top-left)
    var(--grid-child-child-border-radius-top-right)
    var(--grid-child-child-border-radius-bottom-right)
    var(--grid-child-child-border-radius-bottom-left);
  text-decoration: none;
  /* min-height: var(--layer-button-min-height); */
  padding: 0;
}

.rt-button__inner {
  min-width: var(--layer-button-min-height);
  min-height: var(--layer-button-min-height);
  padding: var(--layer-button-padding-top) var(--layer-button-padding-right)
    var(--layer-button-padding-bottom) var(--layer-button-padding-left);
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
  justify-content: center;
  box-sizing: border-box;
}

.rt-button--disabled {
  cursor: default;
  pointer-events: none;
}

.rt-button--loading {
  cursor: progress;
}

.rt-button--loading > *:not(.rt-button__loader) {
  opacity: 0;
}

.rt-button__container--block-width-fill {
  width: 100%;
}

.rt-button__container--block-width-hug {
  width: max-content;
}

.rt-button__container--block-height-hug {
  height: max-content;
}

.rt-button__container--block-height-fill {
  height: inherit;
  align-self: stretch;
  min-height: var(--layer-button-min-height);
}

.rt-button__labels {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  gap: var(--button-labels-gap);
  padding: var(--button-labels-padding-top) var(--button-labels-padding-right)
    var(--button-labels-padding-bottom) var(--button-labels-padding-left);
  text-decoration-thickness: 8%;
}

.rt-button__labels--text-width-fill {
  flex-grow: 1;
}

.rt-button__labels--text-height-fill {
  justify-content: space-between;
  align-self: stretch;
}

.rt-button__labels--text-justify-start,
.rt-button__labels-group--text-justify-start {
  align-items: flex-start;
  text-align: start;
}

.rt-button__labels--text-justify-center,
.rt-button__labels-group--text-justify-center {
  align-items: center;
  text-align: center;
}

.rt-button__labels--text-justify-end,
.rt-button__labels-group--text-justify-end {
  align-items: flex-end;
  text-align: end;
}

.rt-button__labels-group {
  display: flex;
  max-width: 100%;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  white-space: nowrap;
  gap: var(--labels-group-gap);
  padding: var(--labels-group-padding-top) var(--labels-group-padding-right)
    var(--labels-group-padding-bottom) var(--labels-group-padding-left);
}

.rt-button__loader {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rt-button__labels-group--text-wrap {
  white-space: initial;
  word-break: break-word;
}

.rt-button__labels-group-text {
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
}
