:root {
  --rv-brand-color: #3f45ff;
  --rv-black: #000;
  --rv-white: #fff;
  --rv-gray-1: #f7f8fa;
  --rv-gray-2: #f2f3f5;
  --rv-gray-3: #ebedf0;
  --rv-gray-4: #dcdee0;
  --rv-gray-5: #c8c9cc;
  --rv-gray-6: #969799;
  --rv-gray-7: #646566;
  --rv-gray-8: #323232;
  --rv-red: #f44336;
  --rv-blue: #3f45ff;
  --rv-orange: #ff976a;
  --rv-orange-dark: #ff590d;
  --rv-orange-light: #fffbe8;
  --rv-green: #00c853;
  --rv-gradient-red: linear-gradient(to right, #ff6034, #ee0a24);
  --rv-gradient-orange: linear-gradient(to right, #ffd01e, #ff8917);
  --rv-primary-color: var(--rv-blue);
  --rv-success-color: var(--rv-green);
  --rv-danger-color: var(--rv-red);
  --rv-warning-color: var(--rv-orange);
  --rv-text-color: var(--rv-gray-8);
  --rv-active-color: var(--rv-gray-2);
  --rv-active-opacity: 0.7;
  --rv-disabled-opacity: 0.5;
  --rv-background-color: var(--rv-gray-1);
  --rv-background-color-light: #fafafa;
  --rv-text-link-color: #576b95;
  --rv-padding-base: 8px;
  --rv-padding-xs: 16px;
  --rv-padding-sm: 24px;
  --rv-padding-md: 32px;
  --rv-padding-lg: 48px;
  --rv-padding-xl: 64px;
  --rv-font-size-xs: 20px;
  --rv-font-size-sm: 24px;
  --rv-font-size-md: 28px;
  --rv-font-size-lg: 32px;
  --rv-font-size-xl: 36px;
  --rv-font-size-xxl: 40px;
  --rv-font-size-xxxl: 48px;
  --rv-font-weight-bold: 500;
  --rv-line-height-xs: 28px;
  --rv-line-height-sm: 36px;
  --rv-line-height-md: 40px;
  --rv-line-height-lg: 44px;
  --rv-line-height-xl: 48px;
  --rv-line-height-xxl: 56px;
  --rv-line-height-xxxl: 64px;
  --rv-base-font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica, Segoe UI, Arial, Roboto, 'PingFang SC', 'miui', 'Hiragino Sans GB', 'Microsoft Yahei', sans-serif;
  --rv-price-integer-font-family: Avenir-Heavy, PingFang SC, Helvetica Neue, Arial, sans-serif;
  --rv-animation-duration-base: 0.3s;
  --rv-animation-duration-fast: 0.2s;
  --rv-animation-timing-function-enter: ease-out;
  --rv-animation-timing-function-leave: ease-in;
  --rv-border-color: var(--rv-gray-3);
  --rv-border-width-base: 2px;
  --rv-border-radius-sm: 4px;
  --rv-border-radius-md: 8px;
  --rv-border-radius-lg: 16px;
  --rv-border-radius-max: 1998px;
}

html {
  -webkit-tap-highlight-color: transparent;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica, Segoe UI, Arial, Roboto, 'PingFang SC', 'miui', 'Hiragino Sans GB', 'Microsoft Yahei', sans-serif;
}

a {
  text-decoration: none;
}

input,
button,
textarea {
  color: inherit;
  font: inherit;
}

a:focus,
input:focus,
button:focus,
textarea:focus,
[class*='rv-']:focus {
  outline: none;
}

ol,
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

@keyframes rv-spin {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

@keyframes rv-slide-up-enter {
  from {
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes rv-slide-up-leave {
  to {
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes rv-slide-down-enter {
  from {
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes rv-slide-down-leave {
  to {
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes rv-slide-left-enter {
  from {
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes rv-slide-left-leave {
  to {
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes rv-slide-right-enter {
  from {
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes rv-slide-right-leave {
  to {
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes rv-fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes rv-fade-out {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes rv-zoom-in {
  from {
    transform: scale(0.8);
    opacity: 0;
  }

  to {
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes rv-zoom-out {
  from {
    transform: scale(1);
    opacity: 1;
  }

  to {
    transform: scale(0.8);
    opacity: 0;
  }
}

@keyframes rv-rotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

.rv-fade-enter-active {
  animation: 0.3s rv-fade-in both ease-out;
}

.rv-fade-exit-active {
  animation: 0.3s rv-fade-out both ease-in;
}

.rv-slide-up-enter-active {
  animation: 0.3s rv-slide-up-enter both ease-out;
}

.rv-slide-up-exit-active {
  animation: 0.3s rv-slide-up-leave both ease-in;
}

.rv-slide-down-enter-active {
  animation: rv-slide-down-enter 0.3s both ease-out;
}

.rv-slide-down-exit-active {
  animation: rv-slide-down-leave 0.3s both ease-in;
}

.rv-slide-left-enter-active {
  animation: rv-slide-left-enter 0.3s both ease-out;
}

.rv-slide-left-exit-active {
  animation: rv-slide-left-leave 0.3s both ease-in;
}

.rv-slide-right-enter-active {
  animation: rv-slide-right-enter 0.3s both ease-out;
}

.rv-slide-right-exit-active {
  animation: rv-slide-right-leave 0.3s both ease-in;
}

.rv-zoom-enter-active {
  animation: 0.3s rv-zoom-in both ease-out;
}

.rv-zoom-exit-active {
  animation: 0.3s rv-zoom-out both ease-in;
}

.rv-ellipsis {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.rv-multi-ellipsis--l2 {
  display: -webkit-box !important;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  /* autoprefixer: ignore next */
  -webkit-box-orient: vertical;
}

.rv-multi-ellipsis--l3 {
  display: -webkit-box !important;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
  /* autoprefixer: ignore next */
  -webkit-box-orient: vertical;
}

.rv-safe-area-top {
  padding-top: constant(safe-area-inset-top);
  padding-top: env(safe-area-inset-top);
}

.rv-safe-area-bottom {
  padding-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
}

[class*='rv-hairline']::after {
  position: absolute;
  box-sizing: border-box;
  content: ' ';
  pointer-events: none;
  top: -50%;
  right: -50%;
  bottom: -50%;
  left: -50%;
  border: 0 solid var(--rv-gray-3);
  transform: scale(0.5);
}

.rv-hairline,
.rv-hairline--top,
.rv-hairline--left,
.rv-hairline--right,
.rv-hairline--bottom,
.rv-hairline--surround,
.rv-hairline--top-bottom {
  position: relative;
}

.rv-hairline--top::after {
  border-top-width: 2px;
}

.rv-hairline--left::after {
  border-left-width: 2px;
}

.rv-hairline--right::after {
  border-right-width: 2px;
}

.rv-hairline--bottom::after {
  border-bottom-width: 2px;
}

.rv-hairline--top-bottom::after,
.rv-hairline-unset--top-bottom::after {
  border-width: 2px 0;
}

.rv-hairline--surround::after {
  border-width: 2px;
}

[class*='rv-shadow'] {
  transition: box-shadow 0.2s linear;
}

[class*='rv-shadow']:hover,
[class*='rv-shadow']:active {
  box-shadow: rgba(0, 0, 0, 0.2) 0 4px 8px -2px, rgba(0, 0, 0, 0.14) 0 8px 10px 0, rgba(0, 0, 0, 0.12) 0 2px 20px 0;
}

.rv-shadow--1 {
  box-shadow: rgba(0, 0, 0, 0.2) 0 4px 2px -2px, rgba(0, 0, 0, 0.14) 0 2px 2px 0, rgba(0, 0, 0, 0.12) 0 2px 6px 0;
}

.rv-shadow--2 {
  box-shadow: rgba(0, 0, 0, 0.2) 0 6px 2px -4px, rgba(0, 0, 0, 0.14) 0 4px 4px 0, rgba(0, 0, 0, 0.12) 0 2px 10px 0;
}

.rv-shadow--3 {
  box-shadow: rgba(0, 0, 0, 0.2) 0 6px 6px -4px, rgba(0, 0, 0, 0.14) 0 6px 8px 0, rgba(0, 0, 0, 0.12) 0 2px 16px 0;
}

.rv-icon--spin {
  animation: rv-spin 1.5s infinite linear;
}

:root {
  --rv-loading-text-color: var(--rv-gray-6);
  --rv-loading-text-font-size: var(--rv-font-size-md);
  --rv-loading-spinner-color: var(--rv-gray-5);
  --rv-loading-spinner-size: 60px;
  --rv-loading-spinner-animation-duration: 0.8s;
}

.rv-loading {
  position: relative;
  color: var(--rv-gray-5);
  font-size: 0;
  vertical-align: middle;
}

.rv-loading__spinner {
  position: relative;
  display: inline-block;
  width: var(--rv-loading-spinner-size);
  max-width: 100%;
  height: var(--rv-loading-spinner-size);
  max-height: 100%;
  vertical-align: middle;
  animation: rv-rotate var(--rv-loading-spinner-animation-duration) linear infinite;
}

.rv-loading__spinner--spinner {
  animation-timing-function: steps(12);
}

.rv-loading__spinner--circular {
  animation-duration: 2s;
}

.rv-loading__spinner--ball {
  animation: none;
}

.rv-loading__line {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.rv-loading__line::before {
  display: block;
  width: 4px;
  height: 25%;
  margin: 0 auto;
  background-color: currentColor;
  border-radius: 40%;
  content: ' ';
}

.rv-loading__circular {
  display: block;
  width: 100%;
  height: 100%;
}

.rv-loading__circular circle {
  animation: rv-circular 1.5s ease-in-out infinite;
  stroke: currentColor;
  stroke-width: 3;
  stroke-linecap: round;
}

.rv-loading__text {
  display: inline-block;
  margin-left: var(--rv-padding-xs);
  color: var(--rv-loading-text-color);
  font-size: var(--rv-loading-text-font-size);
  vertical-align: middle;
}

.rv-loading--vertical {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.rv-loading--vertical .rv-loading__text {
  margin: var(--rv-padding-xs) 0 0;
}

.rv-loading__ball {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  transform: translateZ(0) scale(1);
  transform-origin: 0 0;
  /* see note above */
  backface-visibility: hidden;
}

.rv-loading__ball div {
  position: absolute;
  box-sizing: content-box;
  width: 24px;
  height: 24px;
  border-radius: 50%;
}

.rv-loading__ball div:nth-child(1) {
  background: #448aff;
  animation: rv-ball--right 1s linear infinite;
  animation-delay: -0.5s;
}

.rv-loading__ball div:nth-child(2) {
  background: #ef5350;
  animation: rv-ball--right 1s linear infinite;
  animation-delay: 0s;
}

.rv-loading__ball div:nth-child(3) {
  background: #448aff;
  animation: rv-ball 1s linear infinite;
  animation-delay: -0.5s;
}

@keyframes rv-ball {
  0% {
    transform: translate(0 0);
    opacity: 1;
  }

  49.99% {
    transform: translate(48px, 0);
    opacity: 1;
  }

  50% {
    transform: translate(48px, 0);
    opacity: 0;
  }

  100% {
    transform: translate(0, 0);
    opacity: 0;
  }
}

@keyframes rv-ball--right {
  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(48px, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

/* generated by https://loading.io/ */

@keyframes rv-circular {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }

  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -40;
  }

  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -120;
  }
}

.rv-loading__spinner--spinner i:nth-of-type(1) {
  transform: rotate(30deg);
  opacity: 1;
}

.rv-loading__spinner--spinner i:nth-of-type(2) {
  transform: rotate(60deg);
  opacity: 0.9375;
}

.rv-loading__spinner--spinner i:nth-of-type(3) {
  transform: rotate(90deg);
  opacity: 0.875;
}

.rv-loading__spinner--spinner i:nth-of-type(4) {
  transform: rotate(120deg);
  opacity: 0.8125;
}

.rv-loading__spinner--spinner i:nth-of-type(5) {
  transform: rotate(150deg);
  opacity: 0.75;
}

.rv-loading__spinner--spinner i:nth-of-type(6) {
  transform: rotate(180deg);
  opacity: 0.6875;
}

.rv-loading__spinner--spinner i:nth-of-type(7) {
  transform: rotate(210deg);
  opacity: 0.625;
}

.rv-loading__spinner--spinner i:nth-of-type(8) {
  transform: rotate(240deg);
  opacity: 0.5625;
}

.rv-loading__spinner--spinner i:nth-of-type(9) {
  transform: rotate(270deg);
  opacity: 0.5;
}

.rv-loading__spinner--spinner i:nth-of-type(10) {
  transform: rotate(300deg);
  opacity: 0.4375;
}

.rv-loading__spinner--spinner i:nth-of-type(11) {
  transform: rotate(330deg);
  opacity: 0.375;
}

.rv-loading__spinner--spinner i:nth-of-type(12) {
  transform: rotate(360deg);
  opacity: 0.3125;
}

:root {
  --rv-button-mini-height: 48px;
  --rv-button-mini-padding: 0 var(--rv-padding-base);
  --rv-button-mini-font-size: var(--rv-font-size-xs);
  --rv-button-small-height: 64px;
  --rv-button-small-padding: 0 var(--rv-padding-sm);
  --rv-button-small-font-size: var(--rv-font-size-sm);
  --rv-button-normal-padding: 0 30px;
  --rv-button-normal-font-size: var(--rv-font-size-md);
  --rv-button-large-height: 100px;
  --rv-button-default-height: 88px;
  --rv-button-default-line-height: 1.2;
  --rv-button-default-font-size: var(--rv-font-size-lg);
  --rv-button-default-color: var(--rv-text-color);
  --rv-button-default-background-color: var(--rv-white);
  --rv-button-default-border-color: var(--rv-border-color);
  --rv-button-primary-color: var(--rv-white);
  --rv-button-primary-background-color: var(--rv-primary-color);
  --rv-button-primary-border-color: var(--rv-primary-color);
  --rv-button-success-color: var(--rv-white);
  --rv-button-success-background-color: var(--rv-success-color);
  --rv-button-success-border-color: var(--rv-success-color);
  --rv-button-danger-color: var(--rv-white);
  --rv-button-danger-background-color: var(--rv-danger-color);
  --rv-button-danger-border-color: var(--rv-danger-color);
  --rv-button-warning-color: var(--rv-white);
  --rv-button-warning-background-color: var(--rv-warning-color);
  --rv-button-warning-border-color: var(--rv-warning-color);
  --rv-button-border-width: var(--rv-border-width-base);
  --rv-button-border-radius: var(--rv-border-radius-sm);
  --rv-button-round-border-radius: var(--rv-border-radius-max);
  --rv-button-plain-background-color: var(--rv-white);
  --rv-button-disabled-opacity: var(--rv-disabled-opacity);
  --rv-button-icon-size: 1.2em;
  --rv-button-loading-icon-size: 40px;
}

.rv-button {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  height: var(--rv-button-default-height);
  margin: 0;
  padding: 0;
  font-size: var(--rv-button-default-font-size);
  line-height: var(--rv-button-default-line-height);
  text-align: center;
  border-radius: var(--rv-button-border-radius);
  cursor: pointer;
  transition: opacity var(--rv-animation-duration-fast);
  -webkit-appearance: none;
}

.rv-button::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  background: var(--rv-black);
  border: inherit;
  border-color: var(--rv-black);
  border-radius: inherit;
  /* inherit parent's border radius */
  transform: translate(-50%, -50%);
  opacity: 0;
  content: ' ';
}

.rv-button:active::before {
  opacity: 0.1;
}

.rv-button--loading::before,
.rv-button--disabled::before {
  display: none;
}

.rv-button--default {
  color: var(--rv-button-default-color);
  background: var(--rv-button-default-background-color);
  border: var(--rv-button-border-width) solid var(--rv-button-default-border-color);
}

.rv-button--primary {
  color: var(--rv-button-primary-color);
  background: var(--rv-button-primary-background-color);
  border: var(--rv-button-border-width) solid var(--rv-button-primary-border-color);
}

.rv-button--success,
.rv-button--info {
  color: var(--rv-button-success-color);
  background: var(--rv-button-success-background-color);
  border: var(--rv-button-border-width) solid var(--rv-button-success-border-color);
}

.rv-button--danger {
  color: var(--rv-button-danger-color);
  background: var(--rv-button-danger-background-color);
  border: var(--rv-button-border-width) solid var(--rv-button-danger-border-color);
}

.rv-button--warning {
  color: var(--rv-button-warning-color);
  background: var(--rv-button-warning-background-color);
  border: var(--rv-button-border-width) solid var(--rv-button-warning-border-color);
}

.rv-button--plain {
  background: var(--rv-button-plain-background-color);
}

.rv-button--plain.rv-button--primary {
  color: var(--rv-button-primary-background-color);
}

.rv-button--plain.rv-button--success,
.rv-button--plain.rv-button--info {
  color: var(--rv-button-success-background-color);
}

.rv-button--plain.rv-button--danger {
  color: var(--rv-button-danger-background-color);
}

.rv-button--plain.rv-button--warning {
  color: var(--rv-button-warning-background-color);
}

.rv-button--large {
  width: 100%;
  height: var(--rv-button-large-height);
}

.rv-button--normal {
  padding: var(--rv-button-normal-padding);
  font-size: var(--rv-button-normal-font-size);
}

.rv-button--small {
  height: var(--rv-button-small-height);
  padding: var(--rv-button-small-padding);
  font-size: var(--rv-button-small-font-size);
}

.rv-button__loading {
  color: inherit;
  font-size: inherit;
}

.rv-button__loading .rv-loading__spinner {
  width: var(--rv-button-loading-icon-size);
  height: var(--rv-button-loading-icon-size);
  color: currentColor;
}

.rv-button--mini {
  height: var(--rv-button-mini-height);
  padding: var(--rv-button-mini-padding);
  font-size: var(--rv-button-mini-font-size);
}

.rv-button--mini + .rv-button--mini {
  margin-left: var(--rv-padding-base);
}

.rv-button--block {
  display: block;
  width: 100%;
}

.rv-button--disabled {
  cursor: not-allowed;
  opacity: var(--rv-button-disabled-opacity);
}

.rv-button--loading {
  cursor: default;
}

.rv-button--round {
  border-radius: var(--rv-button-round-border-radius);
}

.rv-button--square {
  border-radius: 0;
}

.rv-button__content {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.rv-button__content::before {
  content: ' ';
}

.rv-button__text {
  max-width: 100%;
}

.rv-button__icon {
  font-size: var(--rv-button-icon-size);
  line-height: inherit;
}

.rv-button__icon + .rv-button__text,
.rv-button__loading + .rv-button__text,
.rv-button__text + .rv-button__icon,
.rv-button__text + .rv-button__loading {
  margin-left: var(--rv-padding-base);
}

.rv-button--hairline {
  border-width: 0;
}

.rv-button--hairline::after {
  border-color: inherit;
  border-radius: calc(var(--rv-button-border-radius) * 2);
}

.rv-button--hairline.rv-button--round::after {
  border-radius: var(--rv-button-round-border-radius);
}

.rv-button--hairline.rv-button--square::after {
  border-radius: 0;
}

.rv-button-group {
  display: inline-flex;
  overflow: hidden;
  border: var(--rv-button-border-width) solid var(--rv-button-default-border-color);
  border-radius: var(--rv-button-border-radius);
}

.rv-button-group .rv-button {
  border-radius: 0;
  flex: 1;
}

.rv-button-group .rv-button__text {
  white-space: nowrap;
}

.rv-button-group .rv-button {
  border-width: 0 var(--rv-button-border-width) 0 0;
}

.rv-button-group .rv-button:last-child {
  border-width: 0;
}

.rv-button-group--primary {
  border-color: var(--rv-button-primary-border-color);
}

.rv-button-group--danger {
  border-color: var(--rv-button-danger-border-color);
}

.rv-button-group--warning {
  border-color: var(--rv-button-warning-border-color);
}

.rv-button-group--success,
.rv-button-group--info {
  border-color: var(--rv-button-success-border-color);
}

.rv-button-group--round {
  border-radius: var(--rv-button-round-border-radius);
}

.rv-button-group--square {
  border-radius: 0;
}

.rv-button-group--disabled {
  cursor: not-allowed;
  opacity: var(--rv-button-disabled-opacity);
}

.rv-button-group--disabled .rv-button {
  --rv-button-disabled-opacity: 1;
}

:root {
  --rv-badge-size: 32px;
  --rv-badge-color: var(--rv-white);
  --rv-badge-padding: 0 6px;
  --rv-badge-font-size: var(--rv-font-size-sm);
  --rv-badge-font-weight: var(--rv-font-weight-bold);
  --rv-badge-border-width: var(--rv-border-width-base);
  --rv-badge-background-color: var(--rv-danger-color);
  --rv-badge-dot-color: var(--rv-danger-color);
  --rv-badge-dot-size: 16px;
  --rv-badge-font-family: -apple-system-font, Helvetica Neue, Arial, sans-serif;
}

.rv-badge {
  display: inline-block;
  box-sizing: border-box;
  min-width: var(--rv-badge-size);
  padding: var(--rv-badge-padding);
  color: var(--rv-badge-color);
  font-weight: var(--rv-badge-font-weight);
  font-size: var(--rv-badge-font-size);
  font-family: var(--rv-badge-font-family);
  line-height: 1.2;
  text-align: center;
  background-color: var(--rv-badge-background-color);
  border: var(--rv-badge-border-width) solid var(--rv-white);
  border-radius: var(--rv-border-radius-max);
}

.rv-badge--fixed {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
  transform-origin: 100%;
}

.rv-badge--dot {
  width: var(--rv-badge-dot-size);
  min-width: 0;
  height: var(--rv-badge-dot-size);
  background-color: var(--rv-badge-dot-color);
  border-radius: 100%;
}

.rv-badge__wrapper {
  position: relative;
  display: inline-block;
}

:root {
  --rv-cell-font-size: var(--rv-font-size-md);
  --rv-cell-line-height: 48px;
  --rv-cell-vertical-padding: 20px;
  --rv-cell-horizontal-padding: var(--rv-padding-md);
  --rv-cell-text-color: var(--rv-text-color);
  --rv-cell-background-color: var(--rv-white);
  --rv-cell-border-color: var(--rv-border-color);
  --rv-cell-active-color: var(--rv-active-color);
  --rv-cell-required-color: var(--rv-danger-color);
  --rv-cell-label-color: var(--rv-gray-6);
  --rv-cell-label-font-size: var(--rv-font-size-sm);
  --rv-cell-label-line-height: var(--rv-line-height-sm);
  --rv-cell-label-margin-top: var(--rv-padding-base);
  --rv-cell-value-color: var(--rv-gray-6);
  --rv-cell-icon-size: 32px;
  --rv-cell-right-icon-color: var(--rv-gray-6);
  --rv-cell-large-vertical-padding: var(--rv-padding-sm);
  --rv-cell-large-title-font-size: var(--rv-font-size-lg);
  --rv-cell-large-label-font-size: var(--rv-font-size-md);
  --rv-cell-group-background-color: var(--rv-white);
  --rv-cell-group-title-color: var(--rv-gray-6);
  --rv-cell-group-title-padding: var(--rv-padding-md) var(--rv-padding-md) var(--rv-padding-xs);
  --rv-cell-group-title-font-size: var(--rv-font-size-md);
  --rv-cell-group-title-line-height: 32px;
  --rv-cell-group-inset-padding: 0 var(--rv-padding-md);
  --rv-cell-group-inset-border-radius: var(--rv-border-radius-lg);
  --rv-cell-group-inset-title-padding: var(--rv-padding-md) var(--rv-padding-md) var(--rv-padding-xs) var(--rv-padding-xl);
}

.rv-cell {
  position: relative;
  display: flex;
  box-sizing: border-box;
  width: 100%;
  padding: var(--rv-cell-vertical-padding) var(--rv-cell-horizontal-padding);
  overflow: hidden;
  color: var(--rv-cell-text-color);
  font-size: var(--rv-cell-font-size);
  line-height: var(--rv-cell-line-height);
  background-color: var(--rv-cell-background-color);
}

.rv-cell::after {
  position: absolute;
  box-sizing: border-box;
  content: ' ';
  pointer-events: none;
  right: var(--rv-padding-md);
  bottom: 0;
  left: var(--rv-padding-md);
  border-bottom: 2px solid var(--rv-cell-border-color);
  transform: scaleY(0.5);
}

.rv-cell:last-child::after,
.rv-cell--borderless::after {
  display: none;
}

.rv-cell__label {
  margin-top: var(--rv-cell-label-margin-top);
  color: var(--rv-cell-label-color);
  font-size: var(--rv-cell-label-font-size);
  line-height: var(--rv-cell-label-line-height);
}

.rv-cell__title,
.rv-cell__value {
  flex: 1;
}

.rv-cell__value {
  position: relative;
  overflow: hidden;
  color: var(--rv-cell-value-color);
  text-align: right;
  vertical-align: middle;
  word-wrap: break-word;
}

.rv-cell__value--alone {
  color: var(--rv-text-color);
  text-align: left;
}

.rv-cell__left-icon,
.rv-cell__right-icon {
  height: var(--rv-cell-line-height);
  font-size: var(--rv-cell-icon-size);
  line-height: var(--rv-cell-line-height);
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.rv-cell__left-icon {
  margin-right: var(--rv-padding-xs);
}

.rv-cell__right-icon {
  margin-left: var(--rv-padding-xs);
  color: var(--rv-cell-right-icon-color);
}

.rv-cell--clickable {
  cursor: pointer;
}

.rv-cell--clickable:active {
  background-color: var(--rv-cell-active-color);
}

.rv-cell--required {
  overflow: visible;
}

.rv-cell--required::before {
  position: absolute;
  left: var(--rv-padding-xs);
  color: var(--rv-cell-required-color);
  font-size: var(--rv-cell-font-size);
  content: '*';
}

.rv-cell--center {
  align-items: center;
}

.rv-cell--large {
  padding-top: var(--rv-cell-large-vertical-padding);
  padding-bottom: var(--rv-cell-large-vertical-padding);
}

.rv-cell--large .rv-cell__title {
  font-size: var(--rv-cell-large-title-font-size);
}

.rv-cell--large .rv-cell__label {
  font-size: var(--rv-cell-large-label-font-size);
}

.rv-cell-group {
  background-color: var(--rv-cell-group-background-color);
}

.rv-cell-group--inset {
  margin: var(--rv-cell-group-inset-padding);
  overflow: hidden;
  border-radius: var(--rv-cell-group-inset-border-radius);
}

.rv-cell-group__title {
  padding: var(--rv-cell-group-title-padding);
  color: var(--rv-cell-group-title-color);
  font-size: var(--rv-cell-group-title-font-size);
  line-height: var(--rv-cell-group-title-line-height);
}

.rv-cell-group__title--inset {
  padding: var(--rv-cell-group-inset-title-padding);
}

:root {
  --rv-overlay-z-index: 1;
  --rv-overlay-background-color: rgba(0, 0, 0, 0.7);
}

.rv-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--rv-overlay-z-index);
  width: 100%;
  height: 100%;
  background-color: var(--rv-overlay-background-color);
}

:root {
  --rv-popup-background-color: var(--rv-white);
  --rv-popup-transition: transform var(--rv-animation-duration-base);
  --rv-popup-round-border-radius: 32px;
  --rv-popup-close-icon-size: 44px;
  --rv-popup-close-icon-color: var(--rv-gray-5);
  --rv-popup-close-icon-active-color: var(--rv-gray-6);
  --rv-popup-close-icon-margin: 32px;
  --rv-popup-close-icon-z-index: 1;
  --rv-popup-title-font-size: 32px;
  --rv-popup-descrition-font-size: 28px;
  --rv-popup-descrition-color: #969799;
}

.rv-overflow-hidden {
  overflow: hidden !important;
}

.rv-popup {
  position: fixed;
  max-height: 100%;
  overflow-y: auto;
  background-color: var(--rv-popup-background-color);
  transition: var(--rv-popup-transition);
  -webkit-overflow-scrolling: touch;
}

.rv-popup--center {
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
}

.rv-popup--center.rv-popup--round {
  border-radius: var(--rv-popup-round-border-radius);
}

.rv-popup--top {
  top: 0;
  left: 0;
  width: 100%;
}

.rv-popup--top.rv-popup--round {
  border-radius: 0 0 var(--rv-popup-round-border-radius) var(--rv-popup-round-border-radius);
}

.rv-popup--right {
  top: 0;
  right: 0;
}

.rv-popup--right.rv-popup--round {
  border-radius: var(--rv-popup-round-border-radius) 0 0 var(--rv-popup-round-border-radius);
}

.rv-popup--bottom {
  bottom: 0;
  left: 0;
  width: 100%;
}

.rv-popup--bottom.rv-popup--round {
  border-radius: var(--rv-popup-round-border-radius) var(--rv-popup-round-border-radius) 0 0;
}

.rv-popup--left {
  top: 0;
  left: 0;
}

.rv-popup--left.rv-popup--round {
  border-radius: 0 var(--rv-popup-round-border-radius) var(--rv-popup-round-border-radius) 0;
}

.rv-popup-slide-top-enter,
.rv-popup-slide-top-exit-active {
  transform: translate3d(0, -100%, 0);
}

.rv-popup-slide-right-enter,
.rv-popup-slide-right-exit-active {
  transform: translate3d(100%, 0, 0);
}

.rv-popup-slide-bottom-enter,
.rv-popup-slide-bottom-exit-active {
  transform: translate3d(0, 100%, 0);
}

.rv-popup-slide-left-enter,
.rv-popup-slide-left-exit-active {
  transform: translate3d(-100%, 0, 0);
}

.rv-popup-slide-top-enter-active,
.rv-popup-slide-left-enter-active,
.rv-popup-slide-right-enter-active,
.rv-popup-slide-bottom-enter-active {
  transform: translate3d(0, 0, 0);
  transition: var(--rv-popup-transition);
}

.rv-popup-slide-top-exit-active,
.rv-popup-slide-left-exit-active,
.rv-popup-slide-right-exit-active,
.rv-popup-slide-bottom-exit-active {
  transition: var(--rv-popup-transition);
  transition-timing-function: var(--rv-animation-timing-function-leave);
}

.rv-popup__close-icon {
  position: absolute;
  z-index: var(--rv-popup-close-icon-z-index);
  color: var(--rv-popup-close-icon-color);
  font-size: var(--rv-popup-close-icon-size);
  cursor: pointer;
}

.rv-popup__close-icon:active {
  color: var(--rv-popup-close-icon-active-color);
}

.rv-popup__close-icon--top-left {
  top: var(--rv-popup-close-icon-margin);
  left: var(--rv-popup-close-icon-margin);
}

.rv-popup__close-icon--top-right {
  top: var(--rv-popup-close-icon-margin);
  right: var(--rv-popup-close-icon-margin);
}

.rv-popup__close-icon--bottom-left {
  bottom: var(--rv-popup-close-icon-margin);
  left: var(--rv-popup-close-icon-margin);
}

.rv-popup__close-icon--bottom-right {
  right: var(--rv-popup-close-icon-margin);
  bottom: var(--rv-popup-close-icon-margin);
}

.rv-popup__title {
  margin: 40px 24px;
  font-weight: 500;
  font-size: var(--rv-popup-title-font-size);
  line-height: var(--rv-popup-title-font-size);
  text-align: center;
}

.rv-popup__descrition {
  margin: 0 40px;
  color: var(--rv-popup-descrition-color);
  font-size: var(--rv-popup-descrition-font-size);
}

:root {
  --rv-action-bar-background-color: var(--rv-white);
  --rv-action-bar-height: 100px;
  --rv-action-bar-button-height: 80px;
  --rv-action-bar-button-warning-color: var(--rv-gradient-orange);
  --rv-action-bar-button-danger-color: var(--rv-gradient-red);
  --rv-action-bar-icon-width: 96px;
  --rv-action-bar-icon-height: 100%;
  --rv-action-bar-icon-color: var(--rv-text-color);
  --rv-action-bar-icon-size: 36px;
  --rv-action-bar-icon-font-size: var(--rv-font-size-xs);
  --rv-action-bar-icon-active-color: var(--rv-active-color);
  --rv-action-bar-icon-text-color: var(--rv-gray-7);
  --rv-action-bar-icon-background-color: var(--rv-white);
}

.rv-action-bar {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  box-sizing: content-box;
  height: var(--rv-action-bar-height);
  background-color: var(--rv-action-bar-background-color);
}

.rv-action-bar-button {
  flex: 1;
  height: var(--rv-action-bar-button-height);
  font-weight: var(--rv-font-weight-bold);
  font-size: var(--rv-font-size-md);
  border: none;
  border-radius: 0;
}

.rv-action-bar-button--first {
  margin-left: 10px;
  border-top-left-radius: var(--rv-border-radius-max);
  border-bottom-left-radius: var(--rv-border-radius-max);
}

.rv-action-bar-button--last {
  margin-right: 10px;
  border-top-right-radius: var(--rv-border-radius-max);
  border-bottom-right-radius: var(--rv-border-radius-max);
}

.rv-action-bar-button--warning {
  background: var(--rv-action-bar-button-warning-color);
}

.rv-action-bar-button--danger {
  background: var(--rv-action-bar-button-danger-color);
}

@media (max-width: 321px) {
  .rv-action-bar-button {
    font-size: 26px;
  }
}

.rv-action-bar-icon {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: var(--rv-action-bar-icon-width);
  height: var(--rv-action-bar-icon-height);
  color: var(--rv-action-bar-icon-text-color);
  font-size: var(--rv-action-bar-icon-font-size);
  line-height: 1;
  text-align: center;
  background-color: var(--rv-action-bar-icon-background-color);
  cursor: pointer;
}

.rv-action-bar-icon:active {
  background-color: var(--rv-action-bar-icon-active-color);
}

.rv-action-bar-icon__icon {
  margin: 0 auto var(--rv-padding-base);
  color: var(--rv-action-bar-icon-color);
  font-size: var(--rv-action-bar-icon-size);
}

:root {
  --rv-dialog-width: 640px;
  --rv-dialog-small-screen-width: 90%;
  --rv-dialog-font-size: var(--rv-font-size-lg);
  --rv-dialog-transition: var(--rv-animation-duration-base);
  --rv-dialog-border-radius: 32px;
  --rv-dialog-background-color: var(--rv-white);
  --rv-dialog-header-font-weight: var(--rv-font-weight-bold);
  --rv-dialog-header-line-height: 48px;
  --rv-dialog-header-padding-top: 52px;
  --rv-dialog-header-isolated-padding: var(--rv-padding-lg) 0;
  --rv-dialog-message-padding: var(--rv-padding-lg);
  --rv-dialog-message-font-size: var(--rv-font-size-md);
  --rv-dialog-message-line-height: var(--rv-line-height-md);
  --rv-dialog-message-max-height: 60vh;
  --rv-dialog-has-title-message-text-color: var(--rv-gray-7);
  --rv-dialog-has-title-message-padding-top: var(--rv-padding-xs);
  --rv-dialog-button-height: 96px;
  --rv-dialog-round-button-height: 72px;
  --rv-dialog-confirm-button-text-color: var(--rv-primary-color);
}

.rv-dialog {
  top: 45%;
  left: 50%;
  width: var(--rv-dialog-width);
  overflow: hidden;
  font-size: var(--rv-dialog-font-size);
  background-color: var(--rv-dialog-background-color);
  border-radius: var(--rv-dialog-border-radius);
  backface-visibility: hidden;
  transition: var(--rv-dialog-transition);
  transition-property: transform, opacity;
}

@media (max-width: 321px) {
  .rv-dialog {
    width: var(--rv-dialog-small-screen-width);
  }
}

.rv-dialog__header {
  padding-top: var(--rv-dialog-header-padding-top);
  font-weight: var(--rv-dialog-header-font-weight);
  line-height: var(--rv-dialog-header-line-height);
  text-align: center;
}

.rv-dialog__header--isolated {
  padding: var(--rv-dialog-header-isolated-padding);
}

.rv-dialog__content--isolated {
  display: flex;
  align-items: center;
  min-height: 208px;
}

.rv-dialog__message {
  flex: 1;
  max-height: var(--rv-dialog-message-max-height);
  padding: 52px var(--rv-dialog-message-padding);
  overflow-y: auto;
  font-size: var(--rv-dialog-message-font-size);
  line-height: var(--rv-dialog-message-line-height);
  white-space: pre-wrap;
  text-align: center;
  word-wrap: break-word;
  -webkit-overflow-scrolling: touch;
}

.rv-dialog__message--has-title {
  padding-top: var(--rv-dialog-has-title-message-padding-top);
  color: var(--rv-dialog-has-title-message-text-color);
}

.rv-dialog__message--left {
  text-align: left;
}

.rv-dialog__message--right {
  text-align: right;
}

.rv-dialog__footer {
  display: flex;
  overflow: hidden;
  user-select: none;
}

.rv-dialog__confirm,
.rv-dialog__cancel {
  flex: 1;
  height: var(--rv-dialog-button-height);
  margin: 0;
  border: 0;
}

.rv-dialog__confirm,
.rv-dialog__confirm:active {
  color: var(--rv-dialog-confirm-button-text-color);
}

.rv-dialog--round-button .rv-dialog__footer {
  position: relative;
  height: auto;
  padding: var(--rv-padding-xs) var(--rv-padding-lg) var(--rv-padding-md);
}

.rv-dialog--round-button .rv-dialog__message {
  padding-bottom: var(--rv-padding-md);
  color: var(--rv-text-color);
}

.rv-dialog--round-button .rv-dialog__confirm,
.rv-dialog--round-button .rv-dialog__cancel {
  height: var(--rv-dialog-round-button-height);
}

.rv-dialog--round-button .rv-dialog__confirm {
  color: var(--rv-white);
}

.rv-dialog-bounce-enter {
  transform: translate3d(-50%, -50%, 0) scale(0.7);
  opacity: 0;
}

.rv-dialog-bounce-exit-active {
  transform: translate3d(-50%, -50%, 0) scale(0.9);
  opacity: 0;
}

.rv-dialog-bounce-enter-active,
.rv-dialog-bounce-leave-exit {
  transform: translate3d(-50%, -50%, 0);
  opacity: 1;
}

:root {
  --rv-field-label-width: 6.2em;
  --rv-field-label-color: var(--rv-gray-7);
  --rv-field-label-margin-right: var(--rv-padding-sm);
  --rv-field-input-text-color: var(--rv-text-color);
  --rv-field-input-error-text-color: var(--rv-danger-color);
  --rv-field-input-disabled-text-color: var(--rv-gray-5);
  --rv-field-placeholder-text-color: var(--rv-gray-5);
  --rv-field-placeholder-text-font-size: var(--rv-font-size-md);
  --rv-field-input-background-color: transparent;
  --rv-field-icon-size: 32px;
  --rv-field-clear-icon-size: 32px;
  --rv-field-clear-icon-color: var(--rv-gray-5);
  --rv-field-right-icon-color: var(--rv-gray-6);
  --rv-field-error-message-color: var(--rv-danger-color);
  --rv-field-error-message-font-size: 24px;
  --rv-field-text-area-min-height: 120px;
  --rv-field-word-limit-color: var(--rv-gray-7);
  --rv-field-word-limit-font-size: var(--rv-font-size-sm);
  --rv-field-word-limit-line-height: 32px;
  --rv-field-disabled-text-color: var(--rv-gray-5);
  --rv-field-required-mark-color: var(--rv-red);
  --rv-field-intro-color: var(--rv-gray-6);
  --rv-field-tooltip-icon-color: var(--rv-gray-5);
}

.rv-field__label {
  flex: none;
  box-sizing: border-box;
  width: var(--rv-field-label-width);
  margin-right: var(--rv-field-label-margin-right);
  color: var(--rv-field-label-color);
  text-align: left;
  word-wrap: break-word;
}

.rv-field__label--center {
  text-align: center;
}

.rv-field__label--right {
  text-align: right;
}

.rv-field__label--required::before {
  margin-right: 4px;
  color: var(--rv-field-required-mark-color);
  content: '*';
}

.rv-field--disabled .rv-field__label {
  color: var(--rv-field-disabled-text-color);
}

.rv-field__value {
  overflow: visible;
}

.rv-field__body {
  display: flex;
  align-items: center;
}

.rv-field__control-wrapper {
  width: 100%;
}

.rv-field__control {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  color: var(--rv-field-input-text-color);
  line-height: inherit;
  text-align: left;
  background-color: var(--rv-field-input-background-color);
  border: 0;
  resize: none;
  user-select: auto;
}

.rv-field__control::placeholder {
  color: var(--rv-field-placeholder-text-color);
  font-size: var(--rv-field-placeholder-text-font-size);
}

.rv-field__control:disabled {
  color: var(--rv-field-input-disabled-text-color);
  cursor: not-allowed;
  opacity: 1;
  -webkit-text-fill-color: var(--rv-field-input-disabled-text-color);
}

.rv-field__control:read-only {
  cursor: default;
}

.rv-field__control--center {
  justify-content: center;
  text-align: center;
}

.rv-field__control--right {
  justify-content: flex-end;
  text-align: right;
}

.rv-field__control--custom {
  display: flex;
  align-items: center;
  min-height: var(--rv-cell-line-height);
}

.rv-field__control--error,
.rv-field__control--error::placeholder {
  color: var(--rv-field-input-error-text-color);
  -webkit-text-fill-color: currentColor;
}

.rv-field__control--min-height {
  min-height: var(--rv-field-text-area-min-height);
}

.rv-field__control[type='date'],
.rv-field__control[type='time'],
.rv-field__control[type='datetime-local'] {
  min-height: var(--rv-cell-line-height);
}

.rv-field__control[type='search'] {
  -webkit-appearance: none;
}

.rv-field__clear,
.rv-field__icon,
.rv-field__button,
.rv-field__right-icon {
  flex-shrink: 0;
}

.rv-field__clear,
.rv-field__right-icon {
  margin-right: calc(var(--rv-padding-xs) * -1);
  padding: 0 var(--rv-padding-xs);
}

.rv-field__clear {
  color: var(--rv-field-clear-icon-color);
  font-size: var(--rv-field-clear-icon-size);
  cursor: pointer;
}

.rv-field__left-icon .rv-icon,
.rv-field__right-icon .rv-icon {
  display: block;
  font-size: var(--rv-field-icon-size);
  line-height: inherit;
}

.rv-field__left-icon {
  margin-right: var(--rv-padding-base);
}

.rv-field__right-icon {
  color: var(--rv-field-right-icon-color);
}

.rv-field__button {
  padding-left: var(--rv-padding-xs);
}

.rv-field__error-message {
  color: var(--rv-field-error-message-color);
  font-size: var(--rv-field-error-message-font-size);
  line-height: 1.4em;
  text-align: left;
}

.rv-field__error-message--center {
  text-align: center;
}

.rv-field__error-message--right {
  text-align: right;
}

.rv-field__tooltip {
  display: inline-block;
  margin-left: 4px;
  color: var(--rv-field-intro-color);
  font-weight: bold;
  vertical-align: middle;
}

.rv-field__intro {
  color: var(--rv-field-intro-color);
  font-size: var(--rv-field-error-message-font-size);
  line-height: 1.4em;
  text-align: left;
}

.rv-field__intro--right {
  text-align: right;
}

.rv-field__intro--center {
  text-align: center;
}

.rv-field__word-limit {
  margin-top: var(--rv-padding-base);
  color: var(--rv-field-word-limit-color);
  font-size: var(--rv-field-word-limit-font-size);
  line-height: var(--rv-field-word-limit-line-height);
  text-align: right;
}

.rv-flexbox {
  display: flex;
}

.rv-flexbox::before,
.rv-flexbox::after {
  display: flex;
}

.rv-flexbox--justify-start {
  justify-content: flex-start;
}

.rv-flexbox--justify-center {
  justify-content: center;
}

.rv-flexbox--justify-end {
  justify-content: flex-end;
}

.rv-flexbox--justify-between {
  justify-content: space-between;
}

.rv-flexbox--justify-around {
  justify-content: space-around;
}

.rv-flexbox--align-start {
  align-items: flex-start;
}

.rv-flexbox--align-center {
  align-items: center;
}

.rv-flexbox--align-end {
  align-items: flex-end;
}

.rv-flexbox--align-baseline {
  align-items: baseline;
}

.rv-flexbox--align-stretch {
  align-items: stretch;
}

.rv-flexbox--row {
  flex-direction: row;
}

.rv-flexbox--row-reverse {
  flex-direction: row-reverse;
}

.rv-flexbox--column {
  flex-direction: column;
}

.rv-flexbox--column-reverse {
  flex-direction: column-reverse;
}

.rv-flexbox--nowrap {
  flex-wrap: nowrap;
}

.rv-flexbox--wrap {
  flex-wrap: wrap;
}

.rv-flexbox--wrap-reverse {
  flex-wrap: wrap-reverse;
}

.rv-flexitem {
  position: relative;
  box-sizing: border-box;
  max-width: 100%;
  min-height: 2px;
}

.rv-flexitem--24 {
  display: block;
  flex: 0 0 100%;
  max-width: 100%;
}

.rv-flexitem--23 {
  display: block;
  flex: 0 0 95.83333333%;
  max-width: 95.83333333%;
}

.rv-flexitem--22 {
  display: block;
  flex: 0 0 91.66666667%;
  max-width: 91.66666667%;
}

.rv-flexitem--21 {
  display: block;
  flex: 0 0 87.5%;
  max-width: 87.5%;
}

.rv-flexitem--20 {
  display: block;
  flex: 0 0 83.33333333%;
  max-width: 83.33333333%;
}

.rv-flexitem--19 {
  display: block;
  flex: 0 0 79.16666667%;
  max-width: 79.16666667%;
}

.rv-flexitem--18 {
  display: block;
  flex: 0 0 75%;
  max-width: 75%;
}

.rv-flexitem--17 {
  display: block;
  flex: 0 0 70.83333333%;
  max-width: 70.83333333%;
}

.rv-flexitem--16 {
  display: block;
  flex: 0 0 66.66666667%;
  max-width: 66.66666667%;
}

.rv-flexitem--15 {
  display: block;
  flex: 0 0 62.5%;
  max-width: 62.5%;
}

.rv-flexitem--14 {
  display: block;
  flex: 0 0 58.33333333%;
  max-width: 58.33333333%;
}

.rv-flexitem--13 {
  display: block;
  flex: 0 0 54.16666667%;
  max-width: 54.16666667%;
}

.rv-flexitem--12 {
  display: block;
  flex: 0 0 50%;
  max-width: 50%;
}

.rv-flexitem--11 {
  display: block;
  flex: 0 0 45.83333333%;
  max-width: 45.83333333%;
}

.rv-flexitem--10 {
  display: block;
  flex: 0 0 41.66666667%;
  max-width: 41.66666667%;
}

.rv-flexitem--9 {
  display: block;
  flex: 0 0 37.5%;
  max-width: 37.5%;
}

.rv-flexitem--8 {
  display: block;
  flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}

.rv-flexitem--7 {
  display: block;
  flex: 0 0 29.16666667%;
  max-width: 29.16666667%;
}

.rv-flexitem--6 {
  display: block;
  flex: 0 0 25%;
  max-width: 25%;
}

.rv-flexitem--5 {
  display: block;
  flex: 0 0 20.83333333%;
  max-width: 20.83333333%;
}

.rv-flexitem--4 {
  display: block;
  flex: 0 0 16.66666667%;
  max-width: 16.66666667%;
}

.rv-flexitem--3 {
  display: block;
  flex: 0 0 12.5%;
  max-width: 12.5%;
}

.rv-flexitem--2 {
  display: block;
  flex: 0 0 8.33333333%;
  max-width: 8.33333333%;
}

.rv-flexitem--1 {
  display: block;
  flex: 0 0 4.16666667%;
  max-width: 4.16666667%;
}

.rv-flexitem--0 {
  display: none;
}

:root {
  --rv-space-gap: 16px;
  --rv-space-gap-vertical: 16px;
  --rv-space-gap-horizontal: 16px;
}

.rv-space__item {
  flex: none;
}

.rv-space {
  display: inline-flex;
  --gap: var(--rv-space-gap);
  --gap-vertical: var(--gap);
  --gap-horizontal: var(--gap);
}

.rv-space--vertical {
  flex-direction: column;
}

.rv-space--vertical > .rv-space__item {
  margin-bottom: var(--gap-vertical);
}

.rv-space--vertical > .rv-space__item:last-child {
  margin-bottom: 0;
}

.rv-space--horizontal {
  flex-direction: row;
}

.rv-space--horizontal > .rv-space__item {
  margin-right: var(--gap-horizontal);
}

.rv-space--horizontal > .rv-space__item:last-child {
  margin-right: 0;
}

.rv-space--horizontal.rv-space--wrap {
  flex-wrap: wrap;
  margin-bottom: calc(var(--gap-vertical) * -1);
}

.rv-space--horizontal.rv-space--wrap > .rv-space__item {
  padding-bottom: var(--gap-vertical);
}

.rv-space.rv-space--block {
  display: flex;
}

.rv-space--align-center {
  align-items: center;
}

.rv-space--align-start {
  align-items: flex-start;
}

.rv-space--align-end {
  align-items: flex-end;
}

.rv-space--align-baseline {
  align-items: baseline;
}

.rv-space--justify-center {
  justify-content: center;
}

.rv-space--justify-start {
  justify-content: flex-start;
}

.rv-space--justify-end {
  justify-content: flex-end;
}

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

.rv-space--justify-around {
  justify-content: space-around;
}

.rv-space--justify-evenly {
  justify-content: space-evenly;
}

.rv-space--justify-stretch {
  justify-content: stretch;
}

:root {
  --rv-typography-color: var(--rv-text-color);
  --rv-typography-link-color: var(--rv-primary-color);
  --rv-typography-font-size: var(--rv-font-size-md);
  --rv-typography-line-height: var(--rv-line-height-md);
  --rv-typography-primary-color: var(--rv-primary-color);
  --rv-typography-danger-color: var(--rv-danger-color);
  --rv-typography-success-color: var(--rv-success-color);
  --rv-typography-secondary-color: var(--rv-gray-6);
  --rv-typography-warning-color: var(--rv-warning-color);
  --rv-typography-disabled-color: var(--rv-gray-5);
  --rv-typography-light-color: var(--rv-white);
}

.rv-typography {
  color: var(--rv-typography-color);
  word-wrap: break-word;
}

.rv-typography--xs {
  font-size: calc(0.8 * var(--rv-typography-font-size));
  line-height: calc(0.8 * var(--rv-typography-line-height));
}

.rv-typography--sm {
  font-size: calc(0.9 * var(--rv-typography-font-size));
  line-height: calc(0.9 * var(--rv-typography-line-height));
}

.rv-typography--md,
.rv-typography--5 {
  font-size: var(--rv-typography-font-size);
  line-height: var(--rv-typography-line-height);
}

.rv-typography--lg,
.rv-typography--l4 {
  font-size: calc(1.2 * var(--rv-typography-font-size));
  line-height: calc(1.2 * var(--rv-typography-line-height));
}

.rv-typography--xl,
.rv-typography--l3 {
  font-size: calc(1.4 * var(--rv-typography-font-size));
  line-height: calc(1.4 * var(--rv-typography-line-height));
}

.rv-typography--xxl,
.rv-typography--l2 {
  font-size: calc(1.6 * var(--rv-typography-font-size));
  line-height: calc(1.6 * var(--rv-typography-line-height));
}

.rv-typography--primary {
  color: var(--rv-typography-primary-color);
}

.rv-typography--danger {
  color: var(--rv-typography-danger-color);
}

.rv-typography--success {
  color: var(--rv-typography-success-color);
}

.rv-typography--secondary {
  color: var(--rv-typography-secondary-color);
}

.rv-typography--light {
  color: var(--rv-typography-light-color);
}

.rv-typography--warning {
  color: var(--rv-typography-warning-color);
}

.rv-typography--disabled {
  color: var(--rv-typography-disabled-color);
  cursor: not-allowed;
}

.rv-typography--underline {
  text-decoration: underline;
}

.rv-typography--delete {
  text-decoration: line-through;
}

.rv-typography--text {
  display: inline-block;
}

.rv-typography--text.rv-ellipsis {
  display: block;
}

.rv-typography--title {
  font-weight: bold;
}

.rv-typography--l1 {
  margin-bottom: 50px;
  font-size: calc(2 * var(--rv-typography-font-size));
  line-height: calc(2 * var(--rv-typography-line-height));
}

.rv-typography--l2 {
  margin-bottom: 40px;
}

.rv-typography--l3 {
  margin-bottom: 30px;
}

.rv-typography--l4 {
  margin-bottom: 20px;
}

.rv-typography--l5 {
  margin-bottom: 12px;
}

.rv-typography--link {
  color: var(--rv-typography-link-color);
  cursor: pointer;
}

.rv-typography--center {
  text-align: center;
}

.rv-typography--strong {
  font-weight: bold;
}

:root {
  --rv-count-down-text-color: var(--rv-text-color);
  --rv-count-down-font-size: var(--rv-font-size-md);
  --rv-count-down-line-height: var(--rv-line-height-md);
}

.rv-count-down {
  color: var(--rv-count-down-text-color);
  font-size: var(--rv-count-down-font-size);
  line-height: var(--rv-count-down-line-height);
}

:root {
  --rv-divider-margin: var(--rv-padding-md) 0;
  --rv-divider-text-color: var(--rv-gray-6);
  --rv-divider-font-size: var(--rv-font-size-md);
  --rv-divider-line-height: 48px;
  --rv-divider-border-color: var(--rv-border-color);
  --rv-divider-content-padding: var(--rv-padding-md);
  --rv-divider-content-left-width: 10%;
  --rv-divider-content-right-width: 10%;
}

.rv-divider {
  display: flex;
  align-items: center;
  margin: var(--rv-divider-margin);
  color: var(--rv-divider-text-color);
  font-size: var(--rv-divider-font-size);
  line-height: var(--rv-divider-line-height);
  border-color: var(--rv-divider-border-color);
  border-style: solid;
  border-width: 0;
}

.rv-divider::before,
.rv-divider::after {
  display: block;
  flex: 1;
  box-sizing: border-box;
  height: 2px;
  border-color: inherit;
  border-style: inherit;
  border-width: var(--rv-border-width-base) 0 0;
}

.rv-divider::before {
  content: '';
}

.rv-divider--hairline::before,
.rv-divider--hairline::after {
  transform: scaleY(0.5);
}

.rv-divider--dashed {
  border-style: dashed;
}

.rv-divider--content-center::before,
.rv-divider--content-left::before,
.rv-divider--content-right::before {
  margin-right: var(--rv-divider-content-padding);
}

.rv-divider--content-center::after,
.rv-divider--content-left::after,
.rv-divider--content-right::after {
  margin-left: var(--rv-divider-content-padding);
  content: '';
}

.rv-divider--content-left::before {
  max-width: var(--rv-divider-content-left-width);
}

.rv-divider--content-right::after {
  max-width: var(--rv-divider-content-right-width);
}

:root {
  --rv-skeleton-row-height: 32px;
  --rv-skeleton-row-background-color: var(--rv-active-color);
  --rv-skeleton-row-margin-top: var(--rv-padding-sm);
  --rv-skeleton-title-width: 40%;
  --rv-skeleton-avatar-size: 64px;
  --rv-skeleton-avatar-background-color: var(--rv-active-color);
  --rv-skeleton-animation-duration: 1.2s;
}

.rv-skeleton {
  display: flex;
  padding: 0 var(--rv-padding-md);
}

.rv-skeleton__avatar {
  flex-shrink: 0;
  width: var(--rv-skeleton-avatar-size);
  height: var(--rv-skeleton-avatar-size);
  margin-right: var(--rv-padding-md);
  background-color: var(--rv-skeleton-avatar-background-color);
}

.rv-skeleton__avatar--round {
  border-radius: var(--rv-border-radius-max);
}

.rv-skeleton__content {
  width: 100%;
}

.rv-skeleton__avatar + .rv-skeleton__content {
  padding-top: var(--rv-padding-xs);
}

.rv-skeleton__row,
.rv-skeleton__title {
  height: var(--rv-skeleton-row-height);
  background-color: var(--rv-skeleton-row-background-color);
}

.rv-skeleton__title {
  width: var(--rv-skeleton-title-width);
  margin: 0;
}

.rv-skeleton__row:not(:first-child) {
  margin-top: var(--rv-skeleton-row-margin-top);
}

.rv-skeleton__title + .rv-skeleton__row {
  margin-top: 40px;
}

.rv-skeleton--animate {
  animation: rv-skeleton-blink var(--rv-skeleton-animation-duration) ease-in-out infinite;
}

.rv-skeleton--round .rv-skeleton__row,
.rv-skeleton--round .rv-skeleton__title {
  border-radius: var(--rv-border-radius-max);
}

@keyframes rv-skeleton-blink {
  50% {
    opacity: 0.6;
  }
}

.rv-lazyload {
  position: relative;
  display: block;
  width: 100%;
}

:root {
  --rv-image-placeholder-text-color: var(--rv-gray-6);
  --rv-image-placeholder-font-size: var(--rv-font-size-md);
  --rv-image-placeholder-background-color: var(--rv-background-color);
  --rv-image-loading-icon-size: 64px;
  --rv-image-loading-icon-color: var(--rv-gray-4);
  --rv-image-error-icon-size: 64px;
  --rv-image-error-icon-color: var(--rv-gray-4);
}

.rv-image {
  position: relative;
  display: inline-block;
}

.rv-image--block {
  display: block;
  width: 100%;
  height: 100%;
}

.rv-image--fix {
  overflow: hidden;
}

.rv-image--fix .rv-image__img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.rv-image--fix-width .rv-image__img {
  width: 100%;
  height: auto;
}

.rv-image--fix-height .rv-image__img {
  width: auto;
  height: 100%;
}

.rv-image--round {
  overflow: hidden;
  border-radius: var(--rv-border-radius-max);
}

.rv-image--round .rv-image__img {
  border-radius: inherit;
}

.rv-image__img,
.rv-image__error,
.rv-image__loading {
  display: block;
  width: 100%;
  height: 100%;
}

.rv-image__error,
.rv-image__loading {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--rv-image-placeholder-text-color);
  font-size: var(--rv-image-placeholder-font-size);
  background-color: var(--rv-image-placeholder-background-color);
}

.rv-image__loading-icon {
  color: var(--rv-image-loading-icon-color);
  font-size: var(--rv-image-loading-icon-size);
}

.rv-image__error-icon {
  color: var(--rv-image-error-icon-color);
  font-size: var(--rv-image-error-icon-size);
}

:root {
  --rv-swipe-slide-size: 100%;
  --rv-swipe-track-offset: 0%;
  --rv-swipe-border-radius: 0;
  --rv-swipe-indicator-size: 12px;
  --rv-swipe-indicator-margin: var(--rv-padding-sm);
  --rv-swipe-indicator-active-opacity: 1;
  --rv-swipe-indicator-inactive-opacity: 0.3;
  --rv-swipe-indicator-active-background-color: var(--rv-white);
  --rv-swipe-indicator-inactive-background-color: var(--rv-border-color);
}

.rv-swiper {
  position: relative;
  z-index: 0;
  display: block;
  width: 100%;
  height: auto;
  overflow: hidden;
  border-radius: var(--rv-swipe-border-radius);
}

.rv-swiper--vertical .rv-swiper__track--allow-touch-move {
  touch-action: pan-x;
}

.rv-swiper--vertical .rv-swiper__track {
  transform: translateY(var(--rv-swipe-track-offset));
}

.rv-swiper--vertical .rv-swiper__track-inner {
  flex-direction: column;
  width: 100%;
  height: var(--rv-swipe-slide-width, var(--rv-swipe-slide-size));
}

.rv-swiper__track {
  width: 100%;
  height: 100%;
  padding: 0;
  white-space: nowrap;
  transform: translateX(var(--rv-swipe-track-offset));
}

.rv-swiper__track--allow-touch-move {
  cursor: grab;
  touch-action: pan-y;
}

.rv-swiper__track-inner {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  width: var(--rv-swipe-slide-width, var(--rv-swipe-slide-size));
  height: 100%;
  overflow: visible;
}

.rv-swiper__slide {
  position: relative;
  display: block;
  flex: none;
  width: 100%;
  height: 100%;
  white-space: unset;
}

.rv-swiper__indicator {
  position: absolute;
  bottom: var(--rv-swipe-indicator-margin);
  left: 50%;
  transform: translateX(-50%);
}

.rv-swiper__indicator--vertical {
  top: 50%;
  bottom: auto;
  left: var(--rv-swipe-indicator-margin);
  transform: translateY(-50%);
}

.rv-swiper-item {
  display: block;
  width: 100%;
  height: 100%;
  white-space: normal;
}

.rv-indicator {
  display: flex;
  width: fit-content;
}

.rv-indicator--vertical {
  flex-direction: column;
}

.rv-indicator--vertical .rv-indicator__dot:not(:last-child) {
  margin-right: 0;
  margin-bottom: var(--rv-swipe-indicator-size);
}

.rv-indicator__dot {
  display: block;
  width: var(--rv-swipe-indicator-size);
  height: var(--rv-swipe-indicator-size);
  margin-right: var(--rv-swipe-indicator-size);
  background-color: var(--rv-swipe-indicator-inactive-background-color);
  border-radius: 100%;
  opacity: var(--rv-swipe-indicator-inactive-opacity);
  transition: opacity var(--rv-animation-duration-fast), background-color var(--rv-animation-duration-fast);
}

.rv-indicator__dot:last-child {
  margin-right: 0;
}

.rv-indicator__dot--active {
  background-color: var(--rv-swipe-indicator-active-background-color);
  opacity: var(--rv-swipe-indicator-active-opacity);
}

:root {
  --rv-image-preview-index-text-color: var(--rv-white);
  --rv-image-preview-index-font-size: var(--rv-font-size-md);
  --rv-image-preview-index-line-height: var(--rv-line-height-md);
  --rv-image-preview-index-text-shadow: 0 2px 2px var(--rv-gray-8);
  --rv-image-preview-overlay-background-color: rgba(0, 0, 0, 0.9);
  --rv-image-preview-close-icon-size: 44px;
  --rv-image-preview-close-icon-color: var(--rv-gray-5);
  --rv-image-preview-close-icon-active-color: var(--rv-gray-6);
  --rv-image-preview-close-icon-margin: var(--rv-padding-md);
  --rv-image-preview-close-icon-z-index: 1;
}

.rv-image-preview {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  transform: none;
  user-select: none;
  touch-action: none;
}

.rv-image-preview__swipe {
  display: flex;
  align-items: center;
  height: 100%;
}

.rv-image-preview__swipe .rv-swiper__track {
  height: 100%;
}

.rv-image-preview__swipe .rv-swiper__track-inner {
  align-items: center;
  height: 100%;
}

.rv-image-preview__item {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  overflow: hidden;
}

.rv-image-preview__cover {
  position: absolute;
  top: 0;
  left: 0;
}

.rv-image-preview__control {
  user-select: none;
  touch-action: none;
}

.rv-image-preview__image {
  width: 100%;
  transition-property: transform;
}

.rv-image-preview__image--vertical {
  width: auto;
  height: 100%;
}

.rv-image-preview__image img {
  -webkit-user-drag: none;
}

.rv-image-preview__image .rv-image__error {
  top: 30%;
  height: 40%;
}

.rv-image-preview__image .rv-image__error-icon {
  font-size: 72px;
}

.rv-image-preview__image .rv-image__loading {
  background-color: transparent;
}

.rv-image-preview__index {
  position: absolute;
  top: var(--rv-padding-md);
  left: 50%;
  color: var(--rv-image-preview-index-text-color);
  font-size: var(--rv-image-preview-index-font-size);
  line-height: var(--rv-image-preview-index-line-height);
  text-shadow: var(--rv-image-preview-index-text-shadow);
  transform: translate(-50%, 0);
}

.rv-image-preview__overlay {
  background-color: var(--rv-image-preview-overlay-background-color);
}

.rv-image-preview__close-icon {
  position: absolute;
  z-index: var(--rv-image-preview-close-icon-z-index);
  color: var(--rv-image-preview-close-icon-color);
  font-size: var(--rv-image-preview-close-icon-size);
  cursor: pointer;
}

.rv-image-preview__close-icon:active {
  color: var(--rv-image-preview-close-icon-active-color);
}

.rv-image-preview__close-icon--top-left {
  top: var(--rv-image-preview-close-icon-margin);
  left: var(--rv-image-preview-close-icon-margin);
}

.rv-image-preview__close-icon--top-right {
  top: var(--rv-image-preview-close-icon-margin);
  right: var(--rv-image-preview-close-icon-margin);
}

.rv-image-preview__close-icon--bottom-left {
  bottom: var(--rv-image-preview-close-icon-margin);
  left: var(--rv-image-preview-close-icon-margin);
}

.rv-image-preview__close-icon--bottom-right {
  right: var(--rv-image-preview-close-icon-margin);
  bottom: var(--rv-image-preview-close-icon-margin);
}

:root {
  --rv-empty-padding: var(--rv-padding-xl) 0;
  --rv-empty-image-size: 320px;
  --rv-empty-description-margin-top: var(--rv-padding-md);
  --rv-empty-description-padding: 0 120px;
  --rv-empty-description-color: var(--rv-gray-6);
  --rv-empty-description-font-size: var(--rv-font-size-md);
  --rv-empty-description-line-height: var(--rv-line-height-md);
  --rv-empty-bottom-margin-top: 48px;
}

.rv-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: var(--rv-empty-padding);
}

.rv-empty__image {
  width: var(--rv-empty-image-size);
  height: var(--rv-empty-image-size);
}

.rv-empty__image img {
  width: 100%;
  height: 100%;
}

.rv-empty__description {
  margin-top: var(--rv-empty-description-margin-top);
  padding: var(--rv-empty-description-padding);
  color: var(--rv-empty-description-color);
  font-size: var(--rv-empty-description-font-size);
  line-height: var(--rv-empty-description-line-height);
}

.rv-empty__bottom {
  margin-top: var(--rv-empty-bottom-margin-top);
}

:root {
  --rv-notify-text-color: var(--rv-white);
  --rv-notify-padding: var(--rv-padding-xs) var(--rv-padding-md);
  --rv-notify-font-size: var(--rv-font-size-md);
  --rv-notify-line-height: var(--rv-line-height-md);
  --rv-notify-primary-background-color: var(--rv-primary-color);
  --rv-notify-success-background-color: var(--rv-success-color);
  --rv-notify-danger-background-color: var(--rv-danger-color);
  --rv-notify-warning-background-color: var(--rv-warning-color);
}

.rv-notify {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: var(--rv-notify-padding);
  color: var(--rv-notify-text-color);
  font-size: var(--rv-notify-font-size);
  line-height: var(--rv-notify-line-height);
  white-space: pre-wrap;
  text-align: center;
  word-wrap: break-word;
}

.rv-notify--primary {
  background-color: var(--rv-notify-primary-background-color);
}

.rv-notify--success {
  background-color: var(--rv-notify-success-background-color);
}

.rv-notify--danger {
  background-color: var(--rv-notify-danger-background-color);
}

.rv-notify--warning {
  background-color: var(--rv-notify-warning-background-color);
}

:root {
  --rv-pull-refresh-head-height: 100px;
  --rv-pull-refresh-head-font-size: var(--rv-font-size-md);
  --rv-pull-refresh-head-text-color: var(--rv-gray-6);
  --rv-pull-refresh-loading-icon-size: 32px;
}

.rv-pull-refresh {
  overflow: hidden;
  user-select: none;
}

.rv-pull-refresh__track {
  position: relative;
  height: 100%;
  transition-property: transform;
}

.rv-pull-refresh__head {
  position: absolute;
  left: 0;
  width: 100%;
  height: var(--rv-pull-refresh-head-height);
  overflow: hidden;
  color: var(--rv-pull-refresh-head-text-color);
  font-size: var(--rv-pull-refresh-head-font-size);
  line-height: var(--rv-pull-refresh-head-height);
  text-align: center;
  transform: translateY(-100%);
}

.rv-pull-refresh__loading .rv-loading__spinner {
  width: var(--rv-pull-refresh-loading-icon-size);
  height: var(--rv-pull-refresh-loading-icon-size);
}

.rv-swipe-cell {
  position: relative;
  overflow: hidden;
  cursor: grab;
}

.rv-swipe-cell__wrapper {
  transition-timing-function: cubic-bezier(0.18, 0.89, 0.32, 1);
  transition-property: transform;
}

.rv-swipe-cell__left,
.rv-swipe-cell__right {
  position: absolute;
  top: 0;
  height: 100%;
}

.rv-swipe-cell__left {
  left: 0;
  transform: translate3d(-100%, 0, 0);
}

.rv-swipe-cell__right {
  right: 0;
  transform: translate3d(100%, 0, 0);
}

:root {
  --rv-share-sheet-header-padding: var(--rv-padding-sm) var(--rv-padding-md) var(--rv-padding-base);
  --rv-share-sheet-title-color: var(--rv-text-color);
  --rv-share-sheet-title-font-size: var(--rv-font-size-md);
  --rv-share-sheet-title-line-height: var(--rv-line-height-md);
  --rv-share-sheet-description-color: var(--rv-gray-6);
  --rv-share-sheet-description-font-size: var(--rv-font-size-sm);
  --rv-share-sheet-description-line-height: 32px;
  --rv-share-sheet-icon-size: 96px;
  --rv-share-sheet-option-name-color: var(--rv-gray-7);
  --rv-share-sheet-option-name-font-size: var(--rv-font-size-sm);
  --rv-share-sheet-option-description-color: var(--rv-gray-5);
  --rv-share-sheet-option-description-font-size: var(--rv-font-size-sm);
  --rv-share-sheet-cancel-button-font-size: var(--rv-font-size-lg);
  --rv-share-sheet-cancel-button-height: 96px;
  --rv-share-sheet-cancel-button-background: var(--rv-white);
}

.rv-share-sheet__header {
  padding: var(--rv-share-sheet-header-padding);
  text-align: center;
}

.rv-share-sheet__title {
  margin-top: var(--rv-padding-xs);
  color: var(--rv-share-sheet-title-color);
  font-weight: normal;
  font-size: var(--rv-share-sheet-title-font-size);
  line-height: var(--rv-share-sheet-title-line-height);
}

.rv-share-sheet__description {
  display: block;
  margin-top: var(--rv-padding-xs);
  color: var(--rv-share-sheet-description-color);
  font-size: var(--rv-share-sheet-description-font-size);
  line-height: var(--rv-share-sheet-description-line-height);
}

.rv-share-sheet__options {
  position: relative;
  display: flex;
  padding: var(--rv-padding-md) 0 var(--rv-padding-md) var(--rv-padding-xs);
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
}

.rv-share-sheet__options--border::before {
  position: absolute;
  box-sizing: border-box;
  content: ' ';
  pointer-events: none;
  top: 0;
  right: 0;
  left: var(--rv-padding-md);
  border-top: 2px solid var(--rv-border-color);
  transform: scaleY(0.5);
}

.rv-share-sheet__options::-webkit-scrollbar {
  height: 0;
}

.rv-share-sheet__option {
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
  user-select: none;
}

.rv-share-sheet__option:active {
  opacity: var(--rv-active-opacity);
}

.rv-share-sheet__icon {
  width: var(--rv-share-sheet-icon-size);
  height: var(--rv-share-sheet-icon-size);
  margin: 0 var(--rv-padding-md);
}

.rv-share-sheet__name {
  margin-top: var(--rv-padding-xs);
  padding: 0 var(--rv-padding-base);
  color: var(--rv-share-sheet-option-name-color);
  font-size: var(--rv-share-sheet-option-name-font-size);
}

.rv-share-sheet__option-description {
  padding: 0 var(--rv-padding-base);
  color: var(--rv-share-sheet-option-description-color);
  font-size: var(--rv-share-sheet-option-description-font-size);
}

.rv-share-sheet__cancel {
  display: block;
  width: 100%;
  padding: 0;
  font-size: var(--rv-share-sheet-cancel-button-font-size);
  line-height: var(--rv-share-sheet-cancel-button-height);
  text-align: center;
  background: var(--rv-share-sheet-cancel-button-background);
  border: none;
  cursor: pointer;
}

.rv-share-sheet__cancel::before {
  display: block;
  height: var(--rv-padding-xs);
  background-color: var(--rv-background-color);
  content: ' ';
}

.rv-share-sheet__cancel:active {
  background-color: var(--rv-active-color);
}

:root {
  --rv-notice-bar-height: 80px;
  --rv-notice-bar-padding: 0 var(--rv-padding-md);
  --rv-notice-bar-wrapable-padding: var(--rv-padding-xs) var(--rv-padding-md);
  --rv-notice-bar-text-color: var(--rv-orange-dark);
  --rv-notice-bar-font-size: var(--rv-font-size-md);
  --rv-notice-bar-line-height: 48px;
  --rv-notice-bar-background-color: var(--rv-orange-light);
  --rv-notice-bar-icon-size: 32px;
  --rv-notice-bar-icon-min-width: 48px;
}

.rv-notice-bar {
  position: relative;
  display: flex;
  align-items: center;
  height: var(--rv-notice-bar-height);
  padding: var(--rv-notice-bar-padding);
  color: var(--rv-notice-bar-text-color);
  font-size: var(--rv-notice-bar-font-size);
  line-height: var(--rv-notice-bar-line-height);
  background-color: var(--rv-notice-bar-background-color);
}

.rv-notice-bar__left-icon,
.rv-notice-bar__right-icon {
  min-width: var(--rv-notice-bar-icon-min-width);
  font-size: var(--rv-notice-bar-icon-size);
}

.rv-notice-bar__left-icon {
  text-align: left;
}

.rv-notice-bar__right-icon {
  text-align: right;
  cursor: pointer;
}

.rv-notice-bar__wrap {
  position: relative;
  display: flex;
  flex: 1;
  align-items: center;
  height: 100%;
  overflow: hidden;
}

.rv-notice-bar__content {
  position: absolute;
  white-space: nowrap;
  transition-timing-function: linear;
}

.rv-notice-bar__content.rv-ellipsis {
  max-width: 100%;
}

.rv-notice-bar--wrapable {
  height: auto;
  padding: var(--rv-notice-bar-wrapable-padding);
}

.rv-notice-bar--wrapable .rv-notice-bar__wrap {
  height: auto;
}

.rv-notice-bar--wrapable .rv-notice-bar__content {
  position: relative;
  white-space: normal;
  word-wrap: break-word;
}

:root {
  --rv-popover-arrow-size: 12px;
  --rv-popover-border-radius: var(--rv-border-radius-lg);
  --rv-popover-action-width: 256px;
  --rv-popover-action-height: 88px;
  --rv-popover-action-font-size: var(--rv-font-size-md);
  --rv-popover-action-line-height: var(--rv-line-height-md);
  --rv-popover-action-icon-size: 40px;
  --rv-popover-light-text-color: var(--rv-text-color);
  --rv-popover-light-background-color: var(--rv-white);
  --rv-popover-light-action-disabled-text-color: var(--rv-gray-5);
  --rv-popover-dark-text-color: var(--rv-white);
  --rv-popover-dark-background-color: #4a4a4a;
  --rv-popover-dark-action-disabled-text-color: var(--rv-gray-6);
}

.rv-popover {
  position: absolute;
  overflow: visible;
  background-color: transparent;
  transition: opacity 0.15s, transform 0.15s;
}

.rv-popover__wrapper {
  display: inline-block;
}

.rv-popover__arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
  border-width: var(--rv-popover-arrow-size);
}

.rv-popover__content {
  overflow: hidden;
  border-radius: var(--rv-popover-border-radius);
}

.rv-popover__action {
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: var(--rv-popover-action-width);
  height: var(--rv-popover-action-height);
  padding: 0 var(--rv-padding-md);
  font-size: var(--rv-popover-action-font-size);
  line-height: var(--rv-line-height-md);
  cursor: pointer;
}

.rv-popover__action:last-child .rv-popover__action-text::after {
  display: none;
}

.rv-popover__action-text {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.rv-popover__action-icon {
  margin-right: var(--rv-padding-xs);
  font-size: var(--rv-popover-action-icon-size);
}

.rv-popover__action--with-icon .rv-popover__action-text {
  justify-content: flex-start;
}

.rv-popover[data-popper-placement^='top'] .rv-popover__arrow {
  bottom: 0;
  border-top-color: currentColor;
  border-bottom-width: 0;
  transform: translate(-50%, 100%);
}

.rv-popover[data-popper-placement='top'] {
  transform-origin: 50% 100%;
}

.rv-popover[data-popper-placement='top'] .rv-popover__arrow {
  left: 50%;
}

.rv-popover[data-popper-placement='top-start'] {
  transform-origin: 0 100%;
}

.rv-popover[data-popper-placement='top-start'] .rv-popover__arrow {
  left: var(--rv-padding-md);
}

.rv-popover[data-popper-placement='top-end'] {
  transform-origin: 100% 100%;
}

.rv-popover[data-popper-placement='top-end'] .rv-popover__arrow {
  right: var(--rv-padding-md);
}

.rv-popover[data-popper-placement^='left'] .rv-popover__arrow {
  right: 0;
  border-right-width: 0;
  border-left-color: currentColor;
  transform: translate(100%, -50%);
}

.rv-popover[data-popper-placement='left'] {
  transform-origin: 100% 50%;
}

.rv-popover[data-popper-placement='left'] .rv-popover__arrow {
  top: 50%;
}

.rv-popover[data-popper-placement='left-start'] {
  transform-origin: 100% 0;
}

.rv-popover[data-popper-placement='left-start'] .rv-popover__arrow {
  top: var(--rv-padding-md);
}

.rv-popover[data-popper-placement='left-end'] {
  transform-origin: 100% 100%;
}

.rv-popover[data-popper-placement='left-end'] .rv-popover__arrow {
  bottom: var(--rv-padding-md);
}

.rv-popover[data-popper-placement^='right'] .rv-popover__arrow {
  left: 0;
  border-right-color: currentColor;
  border-left-width: 0;
  transform: translate(-100%, -50%);
}

.rv-popover[data-popper-placement='right'] {
  transform-origin: 0 50%;
}

.rv-popover[data-popper-placement='right'] .rv-popover__arrow {
  top: 50%;
}

.rv-popover[data-popper-placement='right-start'] {
  transform-origin: 0 0;
}

.rv-popover[data-popper-placement='right-start'] .rv-popover__arrow {
  top: var(--rv-padding-md);
}

.rv-popover[data-popper-placement='right-end'] {
  transform-origin: 0 100%;
}

.rv-popover[data-popper-placement='right-end'] .rv-popover__arrow {
  bottom: var(--rv-padding-md);
}

.rv-popover[data-popper-placement^='bottom'] .rv-popover__arrow {
  top: 0;
  border-top-width: 0;
  border-bottom-color: currentColor;
  transform: translate(-50%, -100%);
}

.rv-popover[data-popper-placement='bottom'] {
  transform-origin: 50% 0;
}

.rv-popover[data-popper-placement='bottom'] .rv-popover__arrow {
  left: 50%;
}

.rv-popover[data-popper-placement='bottom-start'] {
  transform-origin: 0 0;
}

.rv-popover[data-popper-placement='bottom-start'] .rv-popover__arrow {
  left: var(--rv-padding-md);
}

.rv-popover[data-popper-placement='bottom-end'] {
  transform-origin: 100% 0;
}

.rv-popover[data-popper-placement='bottom-end'] .rv-popover__arrow {
  right: var(--rv-padding-md);
}

.rv-popover--light {
  color: var(--rv-popover-light-text-color);
}

.rv-popover--light .rv-popover__content {
  background-color: var(--rv-popover-light-background-color);
  box-shadow: 0 4px 24px rgba(50, 50, 51, 0.12);
}

.rv-popover--light .rv-popover__arrow {
  color: var(--rv-popover-light-background-color);
}

.rv-popover--light .rv-popover__action:active {
  background-color: var(--rv-active-color);
}

.rv-popover--light .rv-popover__action--disabled {
  color: var(--rv-popover-light-action-disabled-text-color);
  cursor: not-allowed;
}

.rv-popover--light .rv-popover__action--disabled:active {
  background-color: transparent;
}

.rv-popover--dark {
  color: var(--rv-popover-dark-text-color);
}

.rv-popover--dark .rv-popover__content {
  background-color: var(--rv-popover-dark-background-color);
}

.rv-popover--dark .rv-popover__arrow {
  color: var(--rv-popover-dark-background-color);
}

.rv-popover--dark .rv-popover__action:active {
  background-color: rgba(0, 0, 0, 0.2);
}

.rv-popover--dark .rv-popover__action--disabled {
  color: var(--rv-popover-dark-action-disabled-text-color);
}

.rv-popover--dark .rv-popover__action--disabled:active {
  background-color: transparent;
}

.rv-popover--dark .rv-popover__action-text::after {
  border-color: var(--rv-gray-7);
}

.rv-popover-zoom-enter-from,
.rv-popover-zoom-leave-active {
  transform: scale(0.8);
  opacity: 0;
}

.rv-popover-zoom-enter-active {
  transition-timing-function: var(--rv-animation-timing-function-enter);
}

.rv-popover-zoom-leave-active {
  transition-timing-function: var(--rv-animation-timing-function-leave);
}

:root {
  --rv-list-text-color: var(--rv-gray-6);
  --rv-list-text-font-size: var(--rv-font-size-md);
  --rv-list-text-line-height: 100px;
  --rv-list-loading-icon-size: 32px;
}

.rv-list__loading,
.rv-list__finished-text,
.rv-list__error-text {
  color: var(--rv-list-text-color);
  font-size: var(--rv-list-text-font-size);
  line-height: var(--rv-list-text-line-height);
  text-align: center;
}

.rv-list__placeholder {
  height: 0;
  pointer-events: none;
}

.rv-list__loading-icon .rv-loading__spinner {
  width: var(--rv-list-loading-icon-size);
  height: var(--rv-list-loading-icon-size);
}

:root {
  --rv-steps-background-color: var(--rv-white);
  --rv-step-text-color: var(--rv-gray-6);
  --rv-step-active-color: var(--rv-success-color);
  --rv-step-process-text-color: var(--rv-text-color);
  --rv-step-font-size: var(--rv-font-size-md);
  --rv-step-line-color: var(--rv-border-color);
  --rv-step-finish-line-color: var(--rv-success-color);
  --rv-step-finish-text-color: var(--rv-text-color);
  --rv-step-icon-size: 24px;
  --rv-step-circle-size: 10px;
  --rv-step-circle-color: var(--rv-gray-6);
  --rv-step-horizontal-title-font-size: var(--rv-font-size-sm);
}

.rv-steps {
  overflow: hidden;
  background-color: var(--rv-steps-background-color);
}

.rv-steps--horizontal {
  padding: 20px 20px 0;
}

.rv-steps--horizontal .rv-steps__items {
  position: relative;
  display: flex;
  margin: 0 0 20px;
  padding-bottom: 44px;
}

.rv-steps--vertical {
  padding: 0 0 0 var(--rv-padding-xl);
}

.rv-step {
  position: relative;
  flex: 1;
  color: var(--rv-step-text-color);
  font-size: var(--rv-step-font-size);
}

.rv-step__circle {
  display: block;
  width: var(--rv-step-circle-size);
  height: var(--rv-step-circle-size);
  background-color: var(--rv-step-circle-color);
  border-radius: 50%;
}

.rv-step__line {
  position: absolute;
  background-color: var(--rv-step-line-color);
  transition: background-color var(--rv-animation-duration-base);
}

.rv-step--horizontal {
  float: left;
}

.rv-step--horizontal:first-child .rv-step__title {
  margin-left: 0;
  transform: none;
}

.rv-step--horizontal:last-child {
  position: absolute;
  right: 2px;
  width: auto;
}

.rv-step--horizontal:last-child .rv-step__title {
  margin-left: 0;
  transform: none;
}

.rv-step--horizontal:last-child .rv-step__circle-container {
  right: -18px;
  left: auto;
}

.rv-step--horizontal .rv-step__circle-container {
  position: absolute;
  top: 60px;
  left: calc(var(--rv-padding-xs) * -1);
  z-index: 1;
  padding: 0 var(--rv-padding-xs);
  background-color: var(--rv-white);
  transform: translateY(-50%);
}

.rv-step--horizontal .rv-step__title {
  display: inline-block;
  margin-left: 6px;
  font-size: var(--rv-step-horizontal-title-font-size);
  transform: translateX(-50%);
}

.rv-step--horizontal .rv-step__line {
  top: 60px;
  left: 0;
  width: 100%;
  height: 2px;
}

.rv-step--horizontal .rv-step__icon {
  display: block;
  font-size: var(--rv-step-icon-size);
}

.rv-step--horizontal .rv-step--process {
  color: var(--rv-step-process-text-color);
}

.rv-step--vertical {
  display: block;
  float: none;
  padding: 20px 20px 20px 0;
  line-height: var(--rv-line-height-sm);
}

.rv-step--vertical:not(:last-child)::after {
  border-bottom-width: 2px;
}

.rv-step--vertical .rv-step__circle-container {
  position: absolute;
  top: 38px;
  left: -30px;
  z-index: 1;
  font-size: var(--rv-step-icon-size);
  line-height: 1;
  transform: translate(-50%, -50%);
}

.rv-step--vertical .rv-step__line {
  top: 32px;
  left: -30px;
  width: 2px;
  height: 100%;
}

.rv-step:last-child .rv-step__line {
  width: 0;
}

.rv-step--finish {
  color: var(--rv-step-finish-text-color);
}

.rv-step--finish .rv-step__circle,
.rv-step--finish .rv-step__line {
  background-color: var(--rv-step-finish-line-color);
}

.rv-step__icon,
.rv-step__title {
  transition: color var(--rv-animation-duration-base);
}

.rv-step__icon--active,
.rv-step__title--active,
.rv-step__icon--finish,
.rv-step__title--finish {
  color: var(--rv-step-active-color);
}

:root {
  --rv-toast-max-width: 70%;
  --rv-toast-font-size: var(--rv-font-size-md);
  --rv-toast-text-color: var(--rv-white);
  --rv-toast-loading-icon-color: var(--rv-white);
  --rv-toast-line-height: var(--rv-line-height-md);
  --rv-toast-border-radius: var(--rv-border-radius-lg);
  --rv-toast-background-color: rgba(0, 0, 0, 0.7);
  --rv-toast-icon-size: 72px;
  --rv-toast-text-min-width: 192px;
  --rv-toast-text-padding: var(--rv-padding-xs) var(--rv-padding-sm);
  --rv-toast-default-padding: var(--rv-padding-md);
  --rv-toast-default-width: 176px;
  --rv-toast-default-min-height: 176px;
  --rv-toast-position-top-distance: 20%;
  --rv-toast-position-bottom-distance: 20%;
}

.rv-toast {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: content-box;
  width: var(--rv-toast-default-width);
  max-width: var(--rv-toast-max-width);
  min-height: var(--rv-toast-default-min-height);
  padding: var(--rv-toast-default-padding);
  color: var(--rv-toast-text-color);
  font-size: var(--rv-toast-font-size);
  line-height: var(--rv-toast-line-height);
  white-space: pre-wrap;
  text-align: center;
  word-break: break-all;
  background-color: var(--rv-toast-background-color);
  border-radius: var(--rv-toast-border-radius);
  transition: all var(--rv-animation-duration-fast);
}

.rv-toast--unclickable {
  overflow: hidden;
  cursor: not-allowed;
}

.rv-toast--unclickable * {
  pointer-events: none;
}

.rv-toast--info,
.rv-toast--html {
  width: fit-content;
  min-width: var(--rv-toast-text-min-width);
  min-height: 0;
  padding: var(--rv-toast-text-padding);
}

.rv-toast--info .rv-toast__info,
.rv-toast--html .rv-toast__info {
  margin-top: 0;
}

.rv-toast--top {
  top: var(--rv-toast-position-top-distance);
}

.rv-toast--bottom {
  top: auto;
  bottom: var(--rv-toast-position-bottom-distance);
}

.rv-toast__icon {
  font-size: var(--rv-toast-icon-size);
}

.rv-toast__loading {
  padding: var(--rv-padding-base);
  color: var(--rv-toast-loading-icon-color);
}

.rv-toast__info {
  margin-top: var(--rv-padding-xs);
}

:root {
  --rv-action-sheet-max-height: 80%;
  --rv-action-sheet-header-height: 96px;
  --rv-action-sheet-header-font-size: var(--rv-font-size-lg);
  --rv-action-sheet-description-color: var(--rv-gray-6);
  --rv-action-sheet-description-font-size: var(--rv-font-size-md);
  --rv-action-sheet-description-line-height: var(--rv-line-height-md);
  --rv-action-sheet-item-background: var(--rv-white);
  --rv-action-sheet-item-font-size: var(--rv-font-size-lg);
  --rv-action-sheet-item-line-height: var(--rv-line-height-lg);
  --rv-action-sheet-item-text-color: var(--rv-text-color);
  --rv-action-sheet-item-disabled-text-color: var(--rv-gray-5);
  --rv-action-sheet-subname-color: var(--rv-gray-6);
  --rv-action-sheet-subname-font-size: var(--rv-font-size-sm);
  --rv-action-sheet-subname-line-height: var(--rv-line-height-sm);
  --rv-action-sheet-close-icon-size: 44px;
  --rv-action-sheet-close-icon-color: var(--rv-gray-5);
  --rv-action-sheet-close-icon-active-color: var(--rv-gray-6);
  --rv-action-sheet-close-icon-padding: 0 var(--rv-padding-md);
  --rv-action-sheet-cancel-text-color: var(--rv-gray-7);
  --rv-action-sheet-cancel-padding-top: var(--rv-padding-xs);
  --rv-action-sheet-cancel-padding-color: var(--rv-background-color);
  --rv-action-sheet-loading-icon-size: 44px;
}

.rv-action-sheet {
  display: flex;
  flex-direction: column;
  max-height: var(--rv-action-sheet-max-height);
  overflow: hidden;
  color: var(--rv-action-sheet-item-text-color);
}

.rv-action-sheet__content {
  flex: 1 auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.rv-action-sheet__item,
.rv-action-sheet__cancel {
  display: block;
  width: 100%;
  padding: 28px var(--rv-padding-md);
  font-size: var(--rv-action-sheet-item-font-size);
  background-color: var(--rv-action-sheet-item-background);
  border: none;
  cursor: pointer;
}

.rv-action-sheet__item:active,
.rv-action-sheet__cancel:active {
  background-color: var(--rv-active-color);
}

.rv-action-sheet__item {
  line-height: var(--rv-action-sheet-item-line-height);
}

.rv-action-sheet__item--loading,
.rv-action-sheet__item--disabled {
  color: var(--rv-action-sheet-item-disabled-text-color);
}

.rv-action-sheet__item--loading:active,
.rv-action-sheet__item--disabled:active {
  background-color: var(--rv-action-sheet-item-background);
}

.rv-action-sheet__item--disabled {
  cursor: not-allowed;
}

.rv-action-sheet__item--loading {
  cursor: default;
}

.rv-action-sheet__cancel {
  flex-shrink: 0;
  box-sizing: border-box;
  color: var(--rv-action-sheet-cancel-text-color);
}

.rv-action-sheet__subname {
  margin-top: var(--rv-padding-xs);
  color: var(--rv-action-sheet-subname-color);
  font-size: var(--rv-action-sheet-subname-font-size);
  line-height: var(--rv-action-sheet-subname-line-height);
}

.rv-action-sheet__gap {
  display: block;
  height: var(--rv-action-sheet-cancel-padding-top);
  background-color: var(--rv-action-sheet-cancel-padding-color);
}

.rv-action-sheet__header {
  flex-shrink: 0;
  font-weight: var(--rv-font-weight-bold);
  font-size: var(--rv-action-sheet-header-font-size);
  line-height: var(--rv-action-sheet-header-height);
  text-align: center;
}

.rv-action-sheet__description {
  position: relative;
  flex-shrink: 0;
  padding: 40px var(--rv-padding-md);
  color: var(--rv-action-sheet-description-color);
  font-size: var(--rv-action-sheet-description-font-size);
  line-height: var(--rv-action-sheet-description-line-height);
  text-align: center;
}

.rv-action-sheet__description::after {
  position: absolute;
  box-sizing: border-box;
  content: ' ';
  pointer-events: none;
  right: var(--rv-padding-md);
  bottom: 0;
  left: var(--rv-padding-md);
  border-bottom: 2px solid var(--rv-border-color);
  transform: scaleY(0.5);
}

.rv-action-sheet__loading-icon .rv-loading__spinner {
  width: var(--rv-action-sheet-loading-icon-size);
  height: var(--rv-action-sheet-loading-icon-size);
}

.rv-action-sheet__close {
  position: absolute;
  top: 0;
  right: 0;
  padding: var(--rv-action-sheet-close-icon-padding);
  color: var(--rv-action-sheet-close-icon-color);
  font-size: var(--rv-action-sheet-close-icon-size);
  line-height: inherit;
}

.rv-action-sheet__close:active {
  color: var(--rv-action-sheet-close-icon-active-color);
}

:root {
  --rv-dropdown-menu-height: 96px;
  --rv-dropdown-menu-background-color: var(--rv-white);
  --rv-dropdown-menu-box-shadow: 0 4px 24px rgba(100, 101, 102, 0.12);
  --rv-dropdown-menu-title-font-size: 30px;
  --rv-dropdown-menu-title-text-color: var(--rv-text-color);
  --rv-dropdown-menu-title-active-text-color: var(--rv-danger-color);
  --rv-dropdown-menu-title-disabled-text-color: var(--rv-gray-6);
  --rv-dropdown-menu-title-padding: 0 var(--rv-padding-xs);
  --rv-dropdown-menu-title-line-height: var(--rv-line-height-lg);
  --rv-dropdown-menu-option-active-color: var(--rv-danger-color);
  --rv-dropdown-menu-content-max-height: 80%;
  --rv-dropdown-item-z-index: 10;
}

.rv-dropdown-menu {
  user-select: none;
}

.rv-dropdown-menu__bar {
  position: relative;
  display: flex;
  height: var(--rv-dropdown-menu-height);
  background-color: var(--rv-dropdown-menu-background-color);
  box-shadow: var(--rv-dropdown-menu-box-shadow);
}

.rv-dropdown-menu__bar--opened {
  z-index: calc(var(--rv-dropdown-item-z-index) + 1);
}

.rv-dropdown-menu__item {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  min-width: 0;
  cursor: pointer;
}

.rv-dropdown-menu__item:active {
  opacity: var(--rv-active-opacity);
}

.rv-dropdown-menu__item--disabled:active {
  opacity: 1;
}

.rv-dropdown-menu__item--disabled .rv-dropdown-menu__title {
  color: var(--rv-dropdown-menu-title-disabled-text-color);
}

.rv-dropdown-menu__title {
  position: relative;
  box-sizing: border-box;
  max-width: 100%;
  padding: var(--rv-dropdown-menu-title-padding);
  color: var(--rv-dropdown-menu-title-text-color);
  font-size: var(--rv-dropdown-menu-title-font-size);
  line-height: var(--rv-dropdown-menu-title-line-height);
}

.rv-dropdown-menu__title::after {
  position: absolute;
  top: 50%;
  right: -8px;
  margin-top: -10px;
  border: 6px solid;
  border-color: transparent transparent var(--rv-gray-4) var(--rv-gray-4);
  transform: rotate(-45deg);
  opacity: 0.8;
  content: '';
}

.rv-dropdown-menu__title--active {
  color: var(--rv-dropdown-menu-title-active-text-color);
}

.rv-dropdown-menu__title--active::after {
  border-color: transparent transparent currentColor currentColor;
}

.rv-dropdown-menu__title--down::after {
  margin-top: -2px;
  transform: rotate(135deg);
}

.rv-dropdown-item {
  position: fixed;
  right: 0;
  left: 0;
  z-index: var(--rv-dropdown-item-z-index);
  overflow: hidden;
}

.rv-dropdown-item__icon {
  line-height: inherit;
  vertical-align: middle;
}

.rv-dropdown-item__option {
  text-align: left;
}

.rv-dropdown-item__option--active {
  color: var(--rv-dropdown-menu-option-active-color);
}

.rv-dropdown-item__option--active .rv-dropdown-item__icon {
  color: var(--rv-dropdown-menu-option-active-color);
}

.rv-dropdown-item--up {
  top: 0;
}

.rv-dropdown-item--down {
  bottom: 0;
}

.rv-dropdown-item__content {
  position: absolute;
  max-height: var(--rv-dropdown-menu-content-max-height);
}

:root {
  --rv-search-padding: 20px var(--rv-padding-sm);
  --rv-search-background-color: var(--rv-white);
  --rv-search-content-background-color: var(--rv-gray-1);
  --rv-search-input-height: 68px;
  --rv-search-label-padding: 0 10px;
  --rv-search-label-color: var(--rv-text-color);
  --rv-search-label-font-size: var(--rv-font-size-md);
  --rv-search-left-icon-color: var(--rv-gray-6);
  --rv-search-action-padding: 0 var(--rv-padding-xs);
  --rv-search-action-text-color: var(--rv-text-color);
  --rv-search-action-font-size: var(--rv-font-size-md);
}

.rv-search {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  padding: var(--rv-search-padding);
  background-color: var(--rv-search-background-color);
}

.rv-search__content {
  display: flex;
  flex: 1;
  padding-left: var(--rv-padding-sm);
  background-color: var(--rv-search-content-background-color);
  border-radius: var(--rv-border-radius-sm);
}

.rv-search__content--round {
  border-radius: var(--rv-border-radius-max);
}

.rv-search__label {
  padding: var(--rv-search-label-padding);
  color: var(--rv-search-label-color);
  font-size: var(--rv-search-label-font-size);
  line-height: var(--rv-search-input-height);
}

.rv-search__field {
  flex: 1;
  padding: 10px var(--rv-padding-xs) 10px 0;
  background-color: transparent;
}

.rv-search__field .rv-field__left-icon {
  color: var(--rv-search-left-icon-color);
}

.rv-search--show-action {
  padding-right: 0;
}

.rv-search input::-webkit-search-decoration,
.rv-search input::-webkit-search-cancel-button,
.rv-search input::-webkit-search-results-button,
.rv-search input::-webkit-search-results-decoration {
  display: none;
}

.rv-search__action {
  padding: var(--rv-search-action-padding);
  color: var(--rv-search-action-text-color);
  font-size: var(--rv-search-action-font-size);
  line-height: var(--rv-search-input-height);
  cursor: pointer;
  user-select: none;
}

.rv-search__action:active {
  background-color: var(--rv-active-color);
}

:root {
  --rv-sidebar-width: 160px;
  --rv-sidebar-font-size: var(--rv-font-size-md);
  --rv-sidebar-line-height: var(--rv-line-height-md);
  --rv-sidebar-text-color: var(--rv-text-color);
  --rv-sidebar-disabled-text-color: var(--rv-gray-5);
  --rv-sidebar-padding: 40px var(--rv-padding-sm);
  --rv-sidebar-active-color: var(--rv-active-color);
  --rv-sidebar-background-color: var(--rv-background-color);
  --rv-sidebar-selected-font-weight: var(--rv-font-weight-bold);
  --rv-sidebar-selected-text-color: var(--rv-text-color);
  --rv-sidebar-selected-border-width: 8px;
  --rv-sidebar-selected-border-height: 32px;
  --rv-sidebar-selected-border-color: var(--rv-danger-color);
  --rv-sidebar-selected-background-color: var(--rv-white);
}

.rv-sidebar {
  width: var(--rv-sidebar-width);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.rv-sidebar__wrapper {
  display: flex;
}

.rv-sidebar__content {
  flex: 1;
}

.rv-sidebar-item {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: var(--rv-sidebar-padding);
  overflow: hidden;
  color: var(--rv-sidebar-text-color);
  font-size: var(--rv-sidebar-font-size);
  line-height: var(--rv-sidebar-line-height);
  background-color: var(--rv-sidebar-background-color);
  cursor: pointer;
  user-select: none;
}

.rv-sidebar-item:active {
  background-color: var(--rv-sidebar-active-color);
}

.rv-sidebar-item:not(:last-child)::after {
  border-bottom-width: 2px;
}

.rv-sidebar-item__text {
  word-break: break-all;
}

.rv-sidebar-item--select {
  color: var(--rv-sidebar-selected-text-color);
  font-weight: var(--rv-sidebar-selected-font-weight);
}

.rv-sidebar-item--select,
.rv-sidebar-item--select:active {
  background-color: var(--rv-sidebar-selected-background-color);
}

.rv-sidebar-item--select::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: var(--rv-sidebar-selected-border-width);
  height: var(--rv-sidebar-selected-border-height);
  background-color: var(--rv-sidebar-selected-border-color);
  transform: translateY(-50%);
  content: '';
}

.rv-sidebar-item--disabled {
  color: var(--rv-sidebar-disabled-text-color);
  cursor: not-allowed;
}

.rv-sidebar-item--disabled:active {
  background-color: var(--rv-sidebar-background-color);
}

.rv-sidebar-item__content {
  background-color: lightblue;
}

:root {
  --rv-sticky-z-index: 99;
}

.rv-sticky--fixed {
  position: fixed;
  z-index: var(--rv-sticky-z-index);
}

:root {
  --rv-tab-text-color: var(--rv-gray-7);
  --rv-tab-active-text-color: var(--rv-primary-color);
  --rv-tab-disabled-text-color: var(--rv-gray-5);
  --rv-tab-font-size: var(--rv-font-size-md);
  --rv-tab-line-height: var(--rv-line-height-md);
  --rv-tabs-default-color: var(--rv-primary-color);
  --rv-tabs-line-height: 88px;
  --rv-tabs-card-height: 60px;
  --rv-tabs-nav-background-color: var(--rv-white);
  --rv-tabs-bottom-bar-width: 80px;
  --rv-tabs-bottom-bar-height: 6px;
  --rv-tabs-bottom-bar-color: var(--rv-primary-color);
}

.rv-tab {
  position: relative;
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 0 var(--rv-padding-base);
  color: var(--rv-tab-text-color);
  font-size: var(--rv-tab-font-size);
  line-height: var(--rv-tab-line-height);
  cursor: pointer;
}

.rv-tab__pane {
  height: 100%;
}

.rv-tab__pane,
.rv-tab__pane-wrapper {
  flex-shrink: 0;
  box-sizing: border-box;
  width: 100%;
}

.rv-tab__pane-wrapper--inactive {
  height: 0;
  overflow: visible;
}

.rv-tab--active {
  color: var(--rv-tab-active-text-color);
  font-weight: var(--rv-font-weight-bold);
}

.rv-tab--disabled {
  color: var(--rv-tab-disabled-text-color);
  cursor: not-allowed;
}

.rv-tab__text--ellipsis {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.rv-tabs {
  position: relative;
}

.rv-tabs__wrap {
  overflow: hidden;
}

.rv-tabs__wrap--page-top {
  position: fixed;
}

.rv-tabs__wrap--content-bottom {
  top: auto;
  bottom: 0;
}

.rv-tabs__wrap--scrollable .rv-tab {
  flex: 1 0 auto;
  padding: 0 var(--rv-padding-sm);
}

.rv-tabs__wrap--scrollable .rv-tabs__nav {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.rv-tabs__wrap--scrollable .rv-tabs__nav::-webkit-scrollbar {
  display: none;
}

.rv-tabs__nav {
  position: relative;
  display: flex;
  background-color: var(--rv-tabs-nav-background-color);
  user-select: none;
}

.rv-tabs__nav--line {
  box-sizing: content-box;
  height: 100%;
  padding-bottom: 30px;
  /* 15*@hd padding to hide scrollbar in mobile safari */
}

.rv-tabs__nav--line.rv-tabs__nav--complete {
  padding-right: var(--rv-padding-xs);
  padding-left: var(--rv-padding-xs);
}

.rv-tabs__nav--start .rv-tab {
  flex: none;
  padding: 0 var(--rv-padding-sm);
}

.rv-tabs__nav--card {
  box-sizing: border-box;
  height: var(--rv-tabs-card-height);
  margin: 0 var(--rv-padding-md);
  border: var(--rv-border-width-base) solid var(--rv-tabs-default-color);
  border-radius: var(--rv-border-radius-sm);
}

.rv-tabs__nav--card .rv-tab {
  color: var(--rv-tabs-default-color);
  border-right: var(--rv-border-width-base) solid var(--rv-tabs-default-color);
}

.rv-tabs__nav--card .rv-tab:last-child {
  border-right: none;
}

.rv-tabs__nav--card .rv-tab.rv-tab--active {
  color: var(--rv-white);
  background-color: var(--rv-tabs-default-color);
}

.rv-tabs__nav--card .rv-tab--disabled {
  color: var(--rv-tab-disabled-text-color);
}

.rv-tabs__line {
  position: absolute;
  bottom: 30px;
  left: 0;
  z-index: 1;
  width: var(--rv-tabs-bottom-bar-width);
  height: var(--rv-tabs-bottom-bar-height);
  background-color: var(--rv-tabs-bottom-bar-color);
  border-radius: var(--rv-tabs-bottom-bar-height);
}

.rv-tabs__track {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  will-change: left;
}

.rv-tabs__content--animated {
  overflow: hidden;
}

.rv-tabs--line .rv-tabs__wrap {
  height: var(--rv-tabs-line-height);
}

.rv-tabs--card > .rv-tabs__wrap {
  height: var(--rv-tabs-card-height);
}

:root {
  --rv-nav-bar-height: 92px;
  --rv-nav-bar-background-color: var(--rv-white);
  --rv-nav-bar-arrow-size: 32px;
  --rv-nav-bar-icon-color: var(--rv-primary-color);
  --rv-nav-bar-text-color: var(--rv-primary-color);
  --rv-nav-bar-title-font-size: var(--rv-font-size-lg);
  --rv-nav-bar-title-text-color: var(--rv-text-color);
  --rv-nav-bar-z-index: 1;
}

.rv-nav-bar {
  position: relative;
  z-index: var(--rv-nav-bar-z-index);
  line-height: var(--rv-line-height-lg);
  text-align: center;
  background-color: var(--rv-nav-bar-background-color);
  user-select: none;
}

.rv-nav-bar--fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}

.rv-nav-bar--safe-area-inset-top {
  padding-top: constant(safe-area-inset-top);
  padding-top: env(safe-area-inset-top);
}

.rv-nav-bar .rv-icon {
  color: var(--rv-nav-bar-icon-color);
}

.rv-nav-bar__content {
  position: relative;
  display: flex;
  align-items: center;
  height: var(--rv-nav-bar-height);
}

.rv-nav-bar__arrow {
  margin-right: var(--rv-padding-base);
  font-size: var(--rv-nav-bar-arrow-size);
}

.rv-nav-bar__title {
  max-width: 60%;
  margin: 0 auto;
  color: var(--rv-nav-bar-title-text-color);
  font-weight: var(--rv-font-weight-bold);
  font-size: var(--rv-nav-bar-title-font-size);
}

.rv-nav-bar__left,
.rv-nav-bar__right {
  position: absolute;
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  padding: 0 var(--rv-padding-md);
  font-size: var(--rv-font-size-md);
  cursor: pointer;
}

.rv-nav-bar__left:active,
.rv-nav-bar__right:active {
  opacity: var(--rv-active-opacity);
}

.rv-nav-bar__left {
  left: 0;
}

.rv-nav-bar__right {
  right: 0;
}

.rv-nav-bar__text {
  color: var(--rv-nav-bar-text-color);
}

:root {
  --rv-tag-padding: 0 var(--rv-padding-base);
  --rv-tag-text-color: var(--rv-white);
  --rv-tag-font-size: var(--rv-font-size-sm);
  --rv-tag-border-radius: 4px;
  --rv-tag-line-height: 32px;
  --rv-tag-medium-padding: 4px 12px;
  --rv-tag-large-padding: var(--rv-padding-base) var(--rv-padding-xs);
  --rv-tag-large-border-radius: var(--rv-border-radius-md);
  --rv-tag-large-font-size: var(--rv-font-size-md);
  --rv-tag-round-border-radius: var(--rv-border-radius-max);
  --rv-tag-danger-color: var(--rv-danger-color);
  --rv-tag-primary-color: var(--rv-primary-color);
  --rv-tag-success-color: var(--rv-success-color);
  --rv-tag-warning-color: var(--rv-warning-color);
  --rv-tag-default-color: var(--rv-gray-6);
  --rv-tag-plain-background-color: var(--rv-white);
}

.rv-tag {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: var(--rv-tag-padding);
  color: var(--rv-tag-text-color);
  font-size: var(--rv-tag-font-size);
  line-height: var(--rv-tag-line-height);
  border-radius: var(--rv-tag-border-radius);
}

.rv-tag--default {
  background-color: var(--rv-tag-default-color);
}

.rv-tag--default.rv-tag--plain {
  color: var(--rv-tag-default-color);
}

.rv-tag--danger {
  background-color: var(--rv-tag-danger-color);
}

.rv-tag--danger.rv-tag--plain {
  color: var(--rv-tag-danger-color);
}

.rv-tag--primary {
  background-color: var(--rv-tag-primary-color);
}

.rv-tag--primary.rv-tag--plain {
  color: var(--rv-tag-primary-color);
}

.rv-tag--success {
  background-color: var(--rv-tag-success-color);
}

.rv-tag--success.rv-tag--plain {
  color: var(--rv-tag-success-color);
}

.rv-tag--warning {
  background-color: var(--rv-tag-warning-color);
}

.rv-tag--warning.rv-tag--plain {
  color: var(--rv-tag-warning-color);
}

.rv-tag--plain {
  background-color: var(--rv-tag-plain-background-color);
  border-color: currentColor;
}

.rv-tag--plain::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 2px solid;
  border-color: inherit;
  border-radius: inherit;
  content: '';
  pointer-events: none;
}

.rv-tag--medium {
  padding: var(--rv-tag-medium-padding);
}

.rv-tag--large {
  padding: var(--rv-tag-large-padding);
  font-size: var(--rv-tag-large-font-size);
  border-radius: var(--rv-tag-large-border-radius);
}

.rv-tag--mark {
  border-radius: 0 var(--rv-tag-round-border-radius) var(--rv-tag-round-border-radius) 0;
}

.rv-tag--mark::after {
  display: block;
  width: 4px;
  content: '';
}

.rv-tag--round {
  border-radius: var(--rv-tag-round-border-radius);
}

.rv-tag__close {
  margin-left: 4px;
  cursor: pointer;
}

.rv-tag--hairline {
  border-width: 0;
}

.rv-tag--hairline::after {
  border-color: inherit;
  border-radius: var(--rv-tag-round-border-radius);
}

.rv-tag--hairline.rv-tag--plain::before {
  border-width: 0;
}

.rv-tag--hairline.rv-tag--round::after {
  border-radius: var(--rv-tag-round-border-radius);
}

:root {
  --rv-grid-item-content-padding: var(--rv-padding-md) var(--rv-padding-xs);
  --rv-grid-item-content-background-color: var(--rv-white);
  --rv-grid-item-content-active-color: var(--rv-active-color);
  --rv-grid-item-icon-size: 56px;
  --rv-grid-item-text-color: var(--rv-gray-7);
  --rv-grid-item-text-font-size: var(--rv-font-size-sm);
}

.rv-grid {
  display: flex;
  flex-wrap: wrap;
}

.rv-grid-item {
  position: relative;
  box-sizing: border-box;
}

.rv-grid-item--square {
  height: 0;
}

.rv-grid-item__icon {
  font-size: var(--rv-grid-item-icon-size);
}

.rv-grid-item__text {
  color: var(--rv-grid-item-text-color);
  font-size: var(--rv-grid-item-text-font-size);
  line-height: 1.5;
  word-break: break-all;
}

.rv-grid-item__icon + .rv-grid-item__text {
  margin-top: var(--rv-padding-xs);
}

.rv-grid-item__content {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  height: 100%;
  padding: var(--rv-grid-item-content-padding);
  background-color: var(--rv-grid-item-content-background-color);
}

.rv-grid-item__content::after {
  z-index: 1;
  border-width: 0 var(--rv-border-width-base) var(--rv-border-width-base) 0;
}

.rv-grid-item__content--square {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
}

.rv-grid-item__content--center {
  align-items: center;
  justify-content: center;
}

.rv-grid-item__content--horizontal {
  flex-direction: row;
}

.rv-grid-item__content--horizontal .rv-grid-item__text {
  margin: 0 0 0 var(--rv-padding-xs);
}

.rv-grid-item__content--reverse {
  flex-direction: column-reverse;
}

.rv-grid-item__content--reverse .rv-grid-item__text {
  margin: 0 0 var(--rv-padding-xs);
}

.rv-grid-item__content--horizontal.rv-grid-item__content--reverse {
  flex-direction: row-reverse;
}

.rv-grid-item__content--horizontal.rv-grid-item__content--reverse .rv-grid-item__text {
  margin: 0 var(--rv-padding-xs) 0 0;
}

.rv-grid-item__content--surround::after {
  border-width: var(--rv-border-width-base);
}

.rv-grid-item__content--clickable {
  cursor: pointer;
}

.rv-grid-item__content--clickable:active {
  background-color: var(--rv-grid-item-content-active-color);
}

:root {
  --rv-index-bar-sidebar-z-index: 2;
  --rv-index-bar-index-font-size: var(--rv-font-size-xs);
  --rv-index-bar-index-line-height: var(--rv-line-height-xs);
  --rv-index-bar-index-active-color: var(--rv-primary-color);
  --rv-index-anchor-z-index: 1;
  --rv-index-anchor-padding: 0 var(--rv-padding-md);
  --rv-index-anchor-text-color: var(--rv-text-color);
  --rv-index-anchor-font-weight: var(--rv-font-weight-bold);
  --rv-index-anchor-font-size: var(--rv-font-size-md);
  --rv-index-anchor-line-height: 64px;
  --rv-index-anchor-background-color: transparent;
  --rv-index-anchor-sticky-text-color: var(--rv-primary-color);
  --rv-index-anchor-sticky-background-color: var(--rv-white);
}

.rv-index-bar__sidebar {
  position: fixed;
  top: 50%;
  right: 0;
  z-index: var(--rv-index-bar-sidebar-z-index);
  display: flex;
  flex-direction: column;
  text-align: center;
  transform: translateY(-50%);
  cursor: pointer;
  user-select: none;
}

.rv-index-bar__index {
  padding: 0 var(--rv-padding-xs) 0 var(--rv-padding-md);
  font-weight: var(--rv-font-weight-bold);
  font-size: var(--rv-index-bar-index-font-size);
  line-height: var(--rv-index-bar-index-line-height);
}

.rv-index-bar__index--active {
  color: var(--rv-index-bar-index-active-color);
}

.rv-index-anchor {
  z-index: var(--rv-index-anchor-z-index);
  box-sizing: border-box;
  padding: var(--rv-index-anchor-padding);
  color: var(--rv-index-anchor-text-color);
  font-weight: var(--rv-index-anchor-font-weight);
  font-size: var(--rv-index-anchor-font-size);
  line-height: var(--rv-index-anchor-line-height);
  background-color: var(--rv-index-anchor-background-color);
}

.rv-index-anchor--sticky {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  color: var(--rv-index-anchor-sticky-text-color);
  background-color: var(--rv-index-anchor-sticky-background-color);
}

:root {
  --rv-collapse-item-transition-duration: var(--rv-animation-duration-base);
  --rv-collapse-item-content-padding: var(--rv-padding-sm) var(--rv-padding-md);
  --rv-collapse-item-content-font-size: var(--rv-font-size-md);
  --rv-collapse-item-content-line-height: 1.5;
  --rv-collapse-item-content-text-color: var(--rv-gray-6);
  --rv-collapse-item-content-background-color: var(--rv-white);
  --rv-collapse-item-title-disabled-color: var(--rv-gray-5);
}

.rv-collapse-item {
  position: relative;
}

.rv-collapse-item--border::after {
  position: absolute;
  box-sizing: border-box;
  content: ' ';
  pointer-events: none;
  top: 0;
  right: var(--rv-padding-md);
  left: var(--rv-padding-md);
  border-top: 2px solid var(--rv-border-color);
  transform: scaleY(0.5);
}

.rv-collapse-item__title .rv-cell__right-icon {
  transform: rotate(90deg) translateZ(0);
  transition: transform var(--rv-collapse-item-transition-duration);
}

.rv-collapse-item__title::after {
  right: var(--rv-padding-md);
  display: none;
}

.rv-collapse-item__title--expanded .rv-cell__right-icon {
  transform: rotate(-90deg);
}

.rv-collapse-item__title--expanded::after {
  display: block;
}

.rv-collapse-item__title--borderless::after {
  display: none;
}

.rv-collapse-item__title--disabled {
  cursor: not-allowed;
}

.rv-collapse-item__title--disabled,
.rv-collapse-item__title--disabled .rv-cell__right-icon {
  color: var(--rv-collapse-item-title-disabled-color);
}

.rv-collapse-item__wrapper {
  overflow: hidden;
  transition: height var(--rv-collapse-item-transition-duration) ease-in-out;
  will-change: height;
}

.rv-collapse-item__content {
  padding: var(--rv-collapse-item-content-padding);
  color: var(--rv-collapse-item-content-text-color);
  font-size: var(--rv-collapse-item-content-font-size);
  line-height: var(--rv-collapse-item-content-line-height);
  background-color: var(--rv-collapse-item-content-background-color);
}

:root {
  --rv-radio-size: 40px;
  --rv-radio-border-color: var(--rv-gray-5);
  --rv-radio-transition-duration: var(--rv-animation-duration-fast);
  --rv-radio-label-margin: var(--rv-padding-xs);
  --rv-radio-label-color: var(--rv-text-color);
  --rv-radio-checked-icon-color: var(--rv-primary-color);
  --rv-radio-disabled-icon-color: var(--rv-gray-5);
  --rv-radio-disabled-label-color: var(--rv-gray-5);
  --rv-radio-disabled-background-color: var(--rv-border-color);
}

.rv-radio {
  display: flex;
  align-items: center;
  overflow: hidden;
  cursor: pointer;
  user-select: none;
}

.rv-radio--disabled {
  cursor: not-allowed;
}

.rv-radio--label-disabled {
  cursor: default;
}

.rv-radio--horizontal {
  margin-right: var(--rv-padding-sm);
}

.rv-radio__icon {
  flex: none;
  height: 1em;
  font-size: var(--rv-radio-size);
  line-height: 1em;
  cursor: pointer;
}

.rv-radio__icon .rv-icon {
  display: block;
  box-sizing: border-box;
  width: 1.25em;
  height: 1.25em;
  color: transparent;
  font-size: 0.8em;
  line-height: 1.25;
  text-align: center;
  border: 2px solid var(--rv-radio-border-color);
  transition-duration: var(--rv-radio-transition-duration);
  transition-property: color, border-color, background-color;
}

.rv-radio__icon--round .rv-icon {
  border-radius: 100%;
}

.rv-radio__icon--checked .rv-icon {
  color: var(--rv-white);
  background-color: var(--rv-radio-checked-icon-color);
  border-color: var(--rv-radio-checked-icon-color);
}

.rv-radio__icon--disabled {
  cursor: not-allowed;
}

.rv-radio__icon--disabled .rv-icon {
  background-color: var(--rv-radio-disabled-background-color);
  border-color: var(--rv-radio-disabled-icon-color);
}

.rv-radio__icon--disabled.rv-radio__icon--checked .rv-icon {
  color: var(--rv-radio-disabled-icon-color);
}

.rv-radio__label {
  margin-left: var(--rv-radio-label-margin);
  color: var(--rv-radio-label-color);
  line-height: var(--rv-radio-size);
}

.rv-radio__label--left {
  margin: 0 var(--rv-radio-label-margin) 0 0;
}

.rv-radio__label--disabled {
  color: var(--rv-radio-disabled-label-color);
}

.rv-radio-group .rv-radio {
  margin-bottom: 16px;
}

.rv-radio-group .rv-radio:last-child {
  margin-bottom: 0;
  margin-right: 0;
}

.rv-radio-group .rv-radio--horizontal {
  margin-bottom: 0;
}

.rv-radio-group--horizontal {
  display: flex;
  flex-wrap: wrap;
}

:root {
  --rv-rate-icon-size: 40px;
  --rv-rate-icon-gutter: var(--rv-padding-base);
  --rv-rate-icon-void-color: var(--rv-gray-5);
  --rv-rate-icon-full-color: var(--rv-danger-color);
  --rv-rate-icon-disabled-color: var(--rv-gray-5);
}

.rv-rate {
  display: inline-flex;
  flex-wrap: wrap;
  cursor: pointer;
  user-select: none;
}

.rv-rate__item {
  position: relative;
}

.rv-rate__item:not(:last-child) {
  padding-right: var(--rv-rate-icon-gutter);
}

.rv-rate__icon {
  display: block;
  width: 1em;
  color: var(--rv-rate-icon-void-color);
  font-size: var(--rv-rate-icon-size);
}

.rv-rate__icon--half {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.rv-rate__icon--full {
  color: var(--rv-rate-icon-full-color);
}

.rv-rate__icon--disabled {
  color: var(--rv-rate-icon-disabled-color);
}

.rv-rate--disabled {
  cursor: not-allowed;
}

.rv-rate--readonly {
  cursor: default;
}

:root {
  --rv-calendar-background-color: var(--rv-white);
  --rv-calendar-popup-height: 80%;
  --rv-calendar-header-box-shadow: 0 4px 20px rgba(125, 126, 128, 0.16);
  --rv-calendar-header-title-height: 88px;
  --rv-calendar-header-title-font-size: var(--rv-font-size-lg);
  --rv-calendar-header-subtitle-font-size: var(--rv-font-size-md);
  --rv-calendar-weekdays-height: 60px;
  --rv-calendar-weekdays-font-size: var(--rv-font-size-sm);
  --rv-calendar-month-title-font-size: var(--rv-font-size-md);
  --rv-calendar-month-mark-color: rgba(242, 243, 245, 0.8);
  --rv-calendar-month-mark-font-size: 320px;
  --rv-calendar-day-height: 128px;
  --rv-calendar-day-font-size: var(--rv-font-size-lg);
  --rv-calendar-range-edge-color: var(--rv-white);
  --rv-calendar-range-edge-background-color: var(--rv-danger-color);
  --rv-calendar-range-middle-color: var(--rv-danger-color);
  --rv-calendar-range-middle-background-opacity: 0.1;
  --rv-calendar-selected-day-size: 108px;
  --rv-calendar-selected-day-color: var(--rv-white);
  --rv-calendar-info-font-size: var(--rv-font-size-xs);
  --rv-calendar-info-line-height: var(--rv-line-height-xs);
  --rv-calendar-selected-day-background-color: var(--rv-danger-color);
  --rv-calendar-day-disabled-color: var(--rv-gray-5);
  --rv-calendar-confirm-button-height: 72px;
  --rv-calendar-confirm-button-margin: 14px 0;
}

.rv-calendar {
  display: flex;
  flex-direction: column;
  height: 100%;
  background-color: var(--rv-calendar-background-color);
}

.rv-calendar__popup.rv-popup--top,
.rv-calendar__popup.rv-popup--bottom {
  height: var(--rv-calendar-popup-height);
}

.rv-calendar__popup.rv-popup--left,
.rv-calendar__popup.rv-popup--right {
  height: 100%;
}

.rv-calendar__popup .rv-popup__close-icon {
  top: 22px;
}

.rv-calendar__header {
  flex-shrink: 0;
  box-shadow: var(--rv-calendar-header-box-shadow);
}

.rv-calendar__month-title,
.rv-calendar__header-title,
.rv-calendar__header-subtitle {
  height: var(--rv-calendar-header-title-height);
  font-weight: var(--rv-font-weight-bold);
  line-height: var(--rv-calendar-header-title-height);
  text-align: center;
}

.rv-calendar__header-title {
  font-size: var(--rv-calendar-header-title-font-size);
}

.rv-calendar__header-subtitle {
  font-size: var(--rv-calendar-header-subtitle-font-size);
}

.rv-calendar__month-title {
  font-size: var(--rv-calendar-month-title-font-size);
}

.rv-calendar__weekdays {
  display: flex;
}

.rv-calendar__weekday {
  flex: 1;
  font-size: var(--rv-calendar-weekdays-font-size);
  line-height: var(--rv-calendar-weekdays-height);
  text-align: center;
}

.rv-calendar__body {
  flex: 1;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.rv-calendar__days {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  user-select: none;
}

.rv-calendar__month-mark {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  color: var(--rv-calendar-month-mark-color);
  font-size: var(--rv-calendar-month-mark-font-size);
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.rv-calendar__day,
.rv-calendar__selected-day {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.rv-calendar__day {
  position: relative;
  width: 14.285%;
  height: var(--rv-calendar-day-height);
  font-size: var(--rv-calendar-day-font-size);
  cursor: pointer;
}

.rv-calendar__day--end,
.rv-calendar__day--start,
.rv-calendar__day--start-end,
.rv-calendar__day--multiple-middle,
.rv-calendar__day--multiple-selected {
  color: var(--rv-calendar-range-edge-color);
  background-color: var(--rv-calendar-range-edge-background-color);
}

.rv-calendar__day--start {
  border-radius: var(--rv-border-radius-md) 0 0 var(--rv-border-radius-md);
}

.rv-calendar__day--end {
  border-radius: 0 var(--rv-border-radius-md) var(--rv-border-radius-md) 0;
}

.rv-calendar__day--start-end,
.rv-calendar__day--multiple-selected {
  border-radius: var(--rv-border-radius-md);
}

.rv-calendar__day--middle {
  color: var(--rv-calendar-range-middle-color);
}

.rv-calendar__day--middle::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: currentColor;
  opacity: var(--rv-calendar-range-middle-background-opacity);
  content: '';
}

.rv-calendar__day--disabled {
  color: var(--rv-calendar-day-disabled-color);
  cursor: default;
}

.rv-calendar__top-info,
.rv-calendar__bottom-info {
  position: absolute;
  right: 0;
  left: 0;
  font-size: var(--rv-calendar-info-font-size);
  line-height: var(--rv-calendar-info-line-height);
}

@media (max-width: 350px) {
  .rv-calendar__top-info,
  .rv-calendar__bottom-info {
    font-size: 18px;
  }
}

.rv-calendar__top-info {
  top: 12px;
}

.rv-calendar__bottom-info {
  bottom: 12px;
}

.rv-calendar__selected-day {
  width: var(--rv-calendar-selected-day-size);
  height: var(--rv-calendar-selected-day-size);
  color: var(--rv-calendar-selected-day-color);
  background-color: var(--rv-calendar-selected-day-background-color);
  border-radius: var(--rv-border-radius-md);
}

.rv-calendar__footer {
  flex-shrink: 0;
  padding-right: var(--rv-padding-md);
  padding-left: var(--rv-padding-md);
}

.rv-calendar__confirm {
  height: var(--rv-calendar-confirm-button-height);
  margin: var(--rv-calendar-confirm-button-margin);
}

:root {
  --rv-cascader-header-height: 96px;
  --rv-cascader-header-padding: 0 var(--rv-padding-md);
  --rv-cascader-title-font-size: var(--rv-font-size-lg);
  --rv-cascader-title-line-height: 40px;
  --rv-cascader-close-icon-size: 44px;
  --rv-cascader-close-icon-color: var(--rv-gray-5);
  --rv-cascader-close-icon-active-color: var(--rv-gray-6);
  --rv-cascader-selected-icon-size: 36px;
  --rv-cascader-tabs-height: 96px;
  --rv-cascader-active-color: var(--rv-primary-color);
  --rv-cascader-options-height: 768px;
  --rv-cascader-option-disabled-color: var(--rv-gray-5);
  --rv-cascader-tab-color: var(--rv-text-color);
  --rv-cascader-unselected-tab-color: var(--rv-gray-6);
}

.rv-cascader__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--rv-cascader-header-height);
  padding: var(--rv-cascader-header-padding);
}

.rv-cascader__title {
  font-weight: var(--rv-font-weight-bold);
  font-size: var(--rv-cascader-title-font-size);
  line-height: var(--rv-cascader-title-line-height);
}

.rv-cascader__close-icon {
  color: var(--rv-cascader-close-icon-color);
  font-size: var(--rv-cascader-close-icon-size);
}

.rv-cascader__close-icon:active {
  color: var(--rv-cascader-close-icon-active-color);
}

.rv-cascader__close-icon .rv-icon {
  display: block;
}

.rv-cascader__tabs .rv-tab {
  flex: none;
  padding: 0 20px;
}

.rv-cascader__tabs.rv-tabs--line .rv-tabs__wrap {
  height: var(--rv-cascader-tabs-height);
}

.rv-cascader__tabs .rv-tabs__nav--complete {
  padding-right: 12px;
  padding-left: 12px;
}

.rv-cascader__tab {
  color: var(--rv-cascader-tab-color);
  font-weight: var(--rv-font-weight-bold);
}

.rv-cascader__tab--unselected {
  color: var(--rv-cascader-unselected-tab-color);
  font-weight: normal;
}

.rv-cascader__option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px var(--rv-padding-md);
  font-size: var(--rv-font-size-md);
  line-height: var(--rv-line-height-md);
  cursor: pointer;
}

.rv-cascader__option:active {
  background-color: var(--rv-active-color);
}

.rv-cascader__option--selected {
  color: var(--rv-cascader-active-color);
  font-weight: var(--rv-font-weight-bold);
}

.rv-cascader__option--disabled {
  color: var(--rv-cascader-option-disabled-color);
  cursor: not-allowed;
}

.rv-cascader__option--disabled:active {
  background-color: transparent;
}

.rv-cascader__selected-icon {
  font-size: var(--rv-cascader-selected-icon-size);
}

.rv-cascader__options {
  box-sizing: border-box;
  height: var(--rv-cascader-options-height);
  padding-top: 12px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

:root {
  --rv-checkbox-size: 40px;
  --rv-checkbox-border-color: var(--rv-gray-5);
  --rv-checkbox-transition-duration: var(--rv-animation-duration-fast);
  --rv-checkbox-label-margin: var(--rv-padding-xs);
  --rv-checkbox-label-color: var(--rv-text-color);
  --rv-checkbox-checked-icon-color: var(--rv-primary-color);
  --rv-checkbox-disabled-icon-color: var(--rv-gray-5);
  --rv-checkbox-disabled-label-color: var(--rv-gray-5);
  --rv-checkbox-disabled-background-color: var(--rv-border-color);
}

.rv-checkbox {
  display: flex;
  align-items: center;
  overflow: hidden;
  cursor: pointer;
  user-select: none;
}

.rv-checkbox--disabled {
  cursor: not-allowed;
}

.rv-checkbox--label-disabled {
  cursor: default;
}

.rv-checkbox--horizontal {
  margin-right: var(--rv-padding-sm);
}

.rv-checkbox__icon {
  flex: none;
  height: 1em;
  font-size: var(--rv-checkbox-size);
  line-height: 1em;
  cursor: pointer;
}

.rv-checkbox__icon .rv-icon {
  display: block;
  box-sizing: border-box;
  width: 1.25em;
  height: 1.25em;
  color: transparent;
  font-size: 0.8em;
  line-height: 1.25;
  text-align: center;
  border: 2px solid var(--rv-checkbox-border-color);
  transition-duration: var(--rv-checkbox-transition-duration);
  transition-property: color, border-color, background-color;
}

.rv-checkbox__icon .rv-icon svg {
  width: 100%;
  height: 100%;
}

.rv-checkbox__icon--round .rv-icon {
  border-radius: 100%;
}

.rv-checkbox__icon--checked .rv-icon {
  color: var(--rv-white);
  background-color: var(--rv-checkbox-checked-icon-color);
  border-color: var(--rv-checkbox-checked-icon-color);
}

.rv-checkbox__icon--disabled {
  cursor: not-allowed;
}

.rv-checkbox__icon--disabled .rv-icon {
  background-color: var(--rv-checkbox-disabled-background-color);
  border-color: var(--rv-checkbox-disabled-icon-color);
}

.rv-checkbox__icon--disabled.rv-checkbox__icon--checked .rv-icon {
  color: var(--rv-checkbox-disabled-icon-color);
}

.rv-checkbox__label {
  margin-left: var(--rv-checkbox-label-margin);
  color: var(--rv-checkbox-label-color);
  line-height: var(--rv-checkbox-size);
}

.rv-checkbox__label--left {
  margin: 0 var(--rv-checkbox-label-margin) 0 0;
}

.rv-checkbox__label--disabled {
  color: var(--rv-checkbox-disabled-label-color);
}

.rv-checkbox-group--horizontal {
  display: flex;
  flex-wrap: wrap;
}

:root {
  --rv-picker-background-color: var(--rv-white);
  --rv-picker-toolbar-height: 88px;
  --rv-picker-title-font-size: var(--rv-font-size-lg);
  --rv-picker-title-line-height: var(--rv-line-height-md);
  --rv-picker-action-padding: 0 var(--rv-padding-md);
  --rv-picker-action-font-size: var(--rv-font-size-md);
  --rv-picker-confirm-action-color: var(--rv-text-link-color);
  --rv-picker-cancel-action-color: var(--rv-gray-6);
  --rv-picker-option-font-size: var(--rv-font-size-lg);
  --rv-picker-option-padding: 0 var(--rv-padding-base);
  --rv-picker-option-text-color: var(--rv-black);
  --rv-picker-option-disabled-opacity: 0.3;
  --rv-picker-loading-icon-color: var(--rv-primary-color);
  --rv-picker-loading-mask-color: rgba(255, 255, 255, 0.9);
}

.rv-picker {
  position: relative;
  background-color: var(--rv-picker-background-color);
  user-select: none;
}

.rv-picker__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--rv-picker-toolbar-height);
}

.rv-picker__cancel,
.rv-picker__confirm {
  height: 100%;
  padding: var(--rv-picker-action-padding);
  font-size: var(--rv-picker-action-font-size);
  background-color: transparent;
  border: none;
  cursor: pointer;
}

.rv-picker__cancel:active,
.rv-picker__confirm:active {
  opacity: var(--rv-active-opacity);
}

.rv-picker__confirm {
  color: var(--rv-picker-confirm-action-color);
}

.rv-picker__cancel {
  color: var(--rv-picker-cancel-action-color);
}

.rv-picker__title {
  max-width: 50%;
  font-weight: var(--rv-font-weight-bold);
  font-size: var(--rv-picker-title-font-size);
  line-height: var(--rv-picker-title-line-height);
  text-align: center;
}

.rv-picker__columns {
  position: relative;
  display: flex;
  cursor: grab;
}

.rv-picker__loading {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--rv-picker-loading-icon-color);
  background-color: var(--rv-picker-loading-mask-color);
}

.rv-picker__frame {
  position: absolute;
  top: 50%;
  right: var(--rv-padding-md);
  left: var(--rv-padding-md);
  z-index: 2;
  transform: translateY(-50%);
  pointer-events: none;
}

.rv-picker__mask {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(180deg, hsla(0, 0%, 100%, 0.9), hsla(0, 0%, 100%, 0.4)), linear-gradient(0deg, hsla(0, 0%, 100%, 0.9), hsla(0, 0%, 100%, 0.4));
  background-repeat: no-repeat;
  background-position: top, bottom;
  transform: translateZ(0);
  pointer-events: none;
}

.rv-picker-column {
  flex: 1;
  overflow: hidden;
  font-size: var(--rv-picker-option-font-size);
}

.rv-picker-column__wrapper {
  transition-timing-function: cubic-bezier(0.23, 1, 0.68, 1);
}

.rv-picker-column__item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--rv-picker-option-padding);
  color: var(--rv-picker-option-text-color);
}

.rv-picker-column__item--disabled {
  cursor: not-allowed;
  opacity: var(--rv-picker-option-disabled-opacity);
}

:root {
  --rv-password-input-height: 100px;
  --rv-password-input-margin: 0 var(--rv-padding-md);
  --rv-password-input-font-size: 40px;
  --rv-password-input-border-radius: 12px;
  --rv-password-input-background-color: var(--rv-white);
  --rv-password-input-info-color: var(--rv-gray-6);
  --rv-password-input-info-font-size: var(--rv-font-size-md);
  --rv-password-input-error-info-color: var(--rv-danger-color);
  --rv-password-input-dot-size: 20px;
  --rv-password-input-dot-color: var(--rv-black);
  --rv-password-input-text-color: var(--rv-text-color);
  --rv-password-input-cursor-color: var(--rv-text-color);
  --rv-password-input-cursor-width: 2px;
  --rv-password-input-cursor-height: 40%;
  --rv-password-input-cursor-animation-duration: 1s;
  --rv-password-input-item-border-radius: 0;
}

.rv-password-input {
  position: relative;
  margin: var(--rv-password-input-margin);
  user-select: none;
}

.rv-password-input input {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  color: transparent;
  text-indent: -999rem;
  background: transparent;
  border: none;
  outline: none;
  appearance: none;
  caret-color: transparent;
}

.rv-password-input input[type='number']::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.rv-password-input__info,
.rv-password-input__error-info {
  margin-top: var(--rv-padding-md);
  font-size: var(--rv-password-input-info-font-size);
  text-align: center;
}

.rv-password-input__info {
  color: var(--rv-password-input-info-color);
}

.rv-password-input__error-info {
  color: var(--rv-password-input-error-info-color);
}

.rv-password-input__security {
  position: relative;
  display: flex;
  width: 100%;
  height: var(--rv-password-input-height);
  cursor: pointer;
}

.rv-password-input__security::after {
  border-radius: var(--rv-password-input-border-radius);
}

.rv-password-input__security li {
  position: relative;
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: var(--rv-password-input-text-color);
  font-size: var(--rv-password-input-font-size);
  line-height: 1.2;
  background-color: var(--rv-password-input-background-color);
  border-radius: var(--rv-password-input-item-border-radius);
}

.rv-password-input__security i {
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--rv-password-input-dot-size);
  height: var(--rv-password-input-dot-size);
  background-color: var(--rv-password-input-dot-color);
  border-radius: 100%;
  transform: translate(-50%, -50%);
  visibility: hidden;
}

.rv-password-input__cursor {
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--rv-password-input-cursor-width);
  height: var(--rv-password-input-cursor-height);
  background-color: var(--rv-password-input-cursor-color);
  transform: translate(-50%, -50%);
  animation: var(--rv-password-input-cursor-animation-duration) rv-cursor-flicker infinite;
}

@keyframes rv-cursor-flicker {
  from {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

:root {
  --rv-number-keyboard-background-color: var(--rv-gray-2);
  --rv-number-keyboard-key-height: 96px;
  --rv-number-keyboard-key-font-size: 56px;
  --rv-number-keyboard-key-active-color: var(--rv-gray-3);
  --rv-number-keyboard-key-background-color: var(--rv-white);
  --rv-number-keyboard-delete-font-size: var(--rv-font-size-lg);
  --rv-number-keyboard-title-color: var(--rv-gray-7);
  --rv-number-keyboard-title-height: 68px;
  --rv-number-keyboard-title-font-size: var(--rv-font-size-lg);
  --rv-number-keyboard-close-padding: 0 var(--rv-padding-md);
  --rv-number-keyboard-close-color: var(--rv-text-link-color);
  --rv-number-keyboard-close-font-size: var(--rv-font-size-md);
  --rv-number-keyboard-button-text-color: var(--rv-white);
  --rv-number-keyboard-button-background-color: var(--rv-primary-color);
  --rv-number-keyboard-z-index: 100;
}

.rv-number-keyboard {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: var(--rv-number-keyboard-z-index);
  width: 100%;
  padding-bottom: 44px;
  background-color: var(--rv-number-keyboard-background-color);
  user-select: none;
}

.rv-number-keyboard--with-title {
  border-radius: 40px 40px 0 0;
}

.rv-number-keyboard__header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: content-box;
  height: var(--rv-number-keyboard-title-height);
  padding-top: 12px;
  color: var(--rv-number-keyboard-title-color);
  font-size: var(--rv-number-keyboard-title-font-size);
}

.rv-number-keyboard__title {
  display: inline-block;
  font-weight: normal;
}

.rv-number-keyboard__title-left {
  position: absolute;
  left: 0;
}

.rv-number-keyboard__body {
  display: flex;
  padding: 12px 0 0 12px;
}

.rv-number-keyboard__keys {
  display: flex;
  flex: 3;
  flex-wrap: wrap;
}

.rv-number-keyboard__close {
  position: absolute;
  right: 0;
  height: 100%;
  padding: var(--rv-number-keyboard-close-padding);
  color: var(--rv-number-keyboard-close-color);
  font-size: var(--rv-number-keyboard-close-font-size);
  background-color: transparent;
  border: none;
  cursor: pointer;
}

.rv-number-keyboard__close:active {
  opacity: var(--rv-active-opacity);
}

.rv-number-keyboard__sidebar {
  display: flex;
  flex: 1;
  flex-direction: column;
}

.rv-number-keyboard--unfit {
  padding-bottom: 0;
}

.rv-key {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--rv-number-keyboard-key-height);
  font-size: var(--rv-number-keyboard-key-font-size);
  line-height: 1.5;
  background-color: var(--rv-number-keyboard-key-background-color);
  border-radius: var(--rv-border-radius-lg);
  cursor: pointer;
}

.rv-key--large {
  position: absolute;
  top: 0;
  right: 12px;
  bottom: 12px;
  left: 0;
  height: auto;
}

.rv-key--blue,
.rv-key--delete {
  font-size: var(--rv-number-keyboard-delete-font-size);
}

.rv-key--active {
  background-color: var(--rv-number-keyboard-key-active-color);
}

.rv-key--blue {
  color: var(--rv-number-keyboard-button-text-color);
  background-color: var(--rv-number-keyboard-button-background-color);
}

.rv-key--blue.rv-key--active {
  opacity: var(--rv-active-opacity);
}

.rv-key__wrapper {
  position: relative;
  flex: 1;
  flex-basis: 33%;
  box-sizing: border-box;
  padding: 0 12px 12px 0;
}

.rv-key__wrapper--wider {
  flex-basis: 66%;
}

.rv-key__delete-icon {
  width: 64px;
  height: 44px;
}

.rv-key__collapse-icon {
  width: 60px;
  height: 48px;
}

.rv-key__loading-icon {
  color: var(--rv-number-keyboard-button-text-color);
}

:root {
  --rv-slider-active-background-color: var(--rv-primary-color);
  --rv-slider-inactive-background-color: var(--rv-gray-3);
  --rv-slider-disabled-opacity: var(--rv-disabled-opacity);
  --rv-slider-bar-height: 4px;
  --rv-slider-button-width: 48px;
  --rv-slider-button-height: 48px;
  --rv-slider-button-border-radius: 50%;
  --rv-slider-button-background-color: var(--rv-white);
  --rv-slider-button-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

.rv-slider {
  position: relative;
  width: 100%;
  height: var(--rv-slider-bar-height);
  background-color: var(--rv-slider-inactive-background-color);
  border-radius: var(--rv-border-radius-max);
  cursor: pointer;
}

.rv-slider::before {
  position: absolute;
  top: calc(var(--rv-padding-xs) * -1);
  right: 0;
  bottom: calc(var(--rv-padding-xs) * -1);
  left: 0;
  content: '';
}

.rv-slider__bar {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: var(--rv-slider-active-background-color);
  border-radius: inherit;
  transition: all var(--rv-animation-duration-fast);
}

.rv-slider__button {
  width: var(--rv-slider-button-width);
  height: var(--rv-slider-button-height);
  background-color: var(--rv-slider-button-background-color);
  border-radius: var(--rv-slider-button-border-radius);
  box-shadow: var(--rv-slider-button-box-shadow);
}

.rv-slider__button-wrapper {
  position: absolute;
  top: 50%;
  cursor: grab;
}

.rv-slider__button-wrapper--right {
  right: 0;
  transform: translate3d(50%, -50%, 0);
}

.rv-slider__button-wrapper--left {
  left: 0;
  transform: translate3d(-50%, -50%, 0);
}

.rv-slider--disabled {
  cursor: not-allowed;
  opacity: var(--rv-slider-disabled-opacity);
}

.rv-slider--disabled .rv-slider__button-wrapper {
  cursor: not-allowed;
}

.rv-slider--vertical {
  display: inline-block;
  width: var(--rv-slider-bar-height);
  height: 100%;
}

.rv-slider--vertical .rv-slider__button-wrapper--right {
  top: auto;
  right: 50%;
  bottom: 0;
  transform: translate3d(50%, 50%, 0);
}

.rv-slider--vertical .rv-slider__button-wrapper--left {
  top: 0;
  right: 50%;
  left: auto;
  transform: translate3d(50%, -50%, 0);
}

.rv-slider--vertical::before {
  top: 0;
  right: calc(var(--rv-padding-xs) * -1);
  bottom: 0;
  left: calc(var(--rv-padding-xs) * -1);
}

:root {
  --rv-stepper-active-color: #e8e8e8;
  --rv-stepper-background-color: var(--rv-active-color);
  --rv-stepper-button-icon-color: var(--rv-text-color);
  --rv-stepper-button-disabled-color: var(--rv-background-color);
  --rv-stepper-button-disabled-icon-color: var(--rv-gray-5);
  --rv-stepper-button-round-theme-color: var(--rv-danger-color);
  --rv-stepper-input-width: 64px;
  --rv-stepper-input-height: 56px;
  --rv-stepper-input-font-size: var(--rv-font-size-md);
  --rv-stepper-input-line-height: normal;
  --rv-stepper-input-text-color: var(--rv-text-color);
  --rv-stepper-input-disabled-text-color: var(--rv-gray-5);
  --rv-stepper-input-disabled-background-color: var(--rv-active-color);
  --rv-stepper-border-radius: var(--rv-border-radius-md);
}

.rv-stepper {
  display: inline-block;
  user-select: none;
}

.rv-stepper__minus,
.rv-stepper__plus {
  position: relative;
  box-sizing: border-box;
  width: var(--rv-stepper-input-height);
  height: var(--rv-stepper-input-height);
  margin: 0;
  padding: 0;
  color: var(--rv-stepper-button-icon-color);
  vertical-align: middle;
  background-color: var(--rv-stepper-background-color);
  border: 0;
  cursor: pointer;
}

.rv-stepper__minus::before,
.rv-stepper__plus::before {
  width: 50%;
  height: 2px;
}

.rv-stepper__minus::after,
.rv-stepper__plus::after {
  width: 2px;
  height: 50%;
}

.rv-stepper__minus::before,
.rv-stepper__plus::before,
.rv-stepper__minus::after,
.rv-stepper__plus::after {
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: currentColor;
  transform: translate(-50%, -50%);
  content: '';
}

.rv-stepper__minus:active,
.rv-stepper__plus:active {
  background-color: var(--rv-stepper-active-color);
}

.rv-stepper__minus--disabled,
.rv-stepper__plus--disabled {
  color: var(--rv-stepper-button-disabled-icon-color);
  background-color: var(--rv-stepper-button-disabled-color);
  cursor: not-allowed;
}

.rv-stepper__minus--disabled:active,
.rv-stepper__plus--disabled:active {
  background-color: var(--rv-stepper-button-disabled-color);
}

.rv-stepper__minus {
  border-radius: var(--rv-stepper-border-radius) 0 0 var(--rv-stepper-border-radius);
}

.rv-stepper__minus::after {
  display: none;
}

.rv-stepper__plus {
  border-radius: 0 var(--rv-stepper-border-radius) var(--rv-stepper-border-radius) 0;
}

.rv-stepper__input {
  box-sizing: border-box;
  width: var(--rv-stepper-input-width);
  height: var(--rv-stepper-input-height);
  margin: 0 4px;
  padding: 0;
  color: var(--rv-stepper-input-text-color);
  font-size: var(--rv-stepper-input-font-size);
  line-height: var(--rv-stepper-input-line-height);
  text-align: center;
  vertical-align: middle;
  background-color: var(--rv-stepper-background-color);
  border: 0;
  border-width: 2px 0;
  border-radius: 0;
  -webkit-appearance: none;
}

.rv-stepper__input:disabled {
  color: var(--rv-stepper-input-disabled-text-color);
  background-color: var(--rv-stepper-input-disabled-background-color);
  -webkit-text-fill-color: var(--rv-stepper-input-disabled-text-color);
  opacity: 1;
}

.rv-stepper__input:read-only {
  cursor: default;
}

.rv-stepper--round .rv-stepper__input {
  background-color: transparent;
}

.rv-stepper--round .rv-stepper__plus,
.rv-stepper--round .rv-stepper__minus {
  border-radius: 100%;
}

.rv-stepper--round .rv-stepper__plus:active,
.rv-stepper--round .rv-stepper__minus:active {
  opacity: var(--rv-active-opacity);
}

.rv-stepper--round .rv-stepper__plus--disabled,
.rv-stepper--round .rv-stepper__minus--disabled,
.rv-stepper--round .rv-stepper__plus--disabled:active,
.rv-stepper--round .rv-stepper__minus--disabled:active {
  opacity: 0.3;
}

.rv-stepper--round .rv-stepper__plus {
  color: var(--rv-white);
  background-color: var(--rv-stepper-button-round-theme-color);
}

.rv-stepper--round .rv-stepper__minus {
  color: var(--rv-stepper-button-round-theme-color);
  background-color: var(--rv-white);
  border: 2px solid var(--rv-stepper-button-round-theme-color);
}

:root {
  --rv-switch-size: 60px;
  --rv-switch-width: 2em;
  --rv-switch-height: 1em;
  --rv-switch-node-size: 1em;
  --rv-switch-node-background-color: var(--rv-white);
  --rv-switch-node-box-shadow: 0 6px 2px 0 rgba(0, 0, 0, 0.05), 0 4px 4px 0 rgba(0, 0, 0, 0.1), 0 6px 6px 0 rgba(0, 0, 0, 0.05);
  --rv-switch-background-color: var(--rv-white);
  --rv-switch-on-background-color: var(--rv-primary-color);
  --rv-switch-transition-duration: var(--rv-animation-duration-base);
  --rv-switch-disabled-opacity: var(--rv-disabled-opacity);
  --rv-switch-border: var(--rv-border-width-base) solid rgba(0, 0, 0, 0.1);
}

.rv-switch {
  position: relative;
  display: inline-block;
  box-sizing: content-box;
  width: var(--rv-switch-width);
  height: var(--rv-switch-height);
  font-size: var(--rv-switch-size);
  background-color: var(--rv-switch-background-color);
  border: var(--rv-switch-border);
  border-radius: var(--rv-switch-node-size);
  cursor: pointer;
  transition: background-color var(--rv-switch-transition-duration);
}

.rv-switch__node {
  position: absolute;
  top: 0;
  left: 0;
  width: var(--rv-switch-node-size);
  height: var(--rv-switch-node-size);
  background-color: var(--rv-switch-node-background-color);
  border-radius: 100%;
  box-shadow: var(--rv-switch-node-box-shadow);
  transition: transform var(--rv-switch-transition-duration) cubic-bezier(0.3, 1.05, 0.4, 1.05);
}

.rv-switch__loading {
  top: 25%;
  left: 25%;
  width: 50%;
  height: 50%;
  line-height: 1;
}

.rv-switch--on {
  background-color: var(--rv-switch-on-background-color);
}

.rv-switch--on .rv-switch__node {
  transform: translateX(calc(var(--rv-switch-width) - var(--rv-switch-node-size)));
}

.rv-switch--on .rv-switch__loading {
  color: var(--rv-switch-on-background-color);
}

.rv-switch--disabled {
  cursor: not-allowed;
  opacity: var(--rv-switch-disabled-opacity);
}

.rv-switch--loading {
  cursor: default;
}

:root {
  --rv-uploader-size: 160px;
  --rv-uploader-icon-size: 48px;
  --rv-uploader-icon-color: var(--rv-gray-4);
  --rv-uploader-text-color: var(--rv-gray-6);
  --rv-uploader-text-font-size: var(--rv-font-size-sm);
  --rv-uploader-upload-background-color: var(--rv-gray-1);
  --rv-uploader-upload-active-color: var(--rv-active-color);
  --rv-uploader-delete-color: var(--rv-white);
  --rv-uploader-delete-icon-size: 28px;
  --rv-uploader-delete-background-color: rgba(0, 0, 0, 0.7);
  --rv-uploader-file-background-color: var(--rv-background-color);
  --rv-uploader-file-icon-size: 40px;
  --rv-uploader-file-icon-color: var(--rv-gray-7);
  --rv-uploader-file-name-padding: 0 var(--rv-padding-base);
  --rv-uploader-file-name-margin-top: var(--rv-padding-xs);
  --rv-uploader-file-name-font-size: var(--rv-font-size-sm);
  --rv-uploader-file-name-text-color: var(--rv-gray-7);
  --rv-uploader-mask-text-color: var(--rv-white);
  --rv-uploader-mask-background-color: rgba(50, 50, 51, 0.88);
  --rv-uploader-mask-icon-size: 44px;
  --rv-uploader-mask-message-font-size: var(--rv-font-size-sm);
  --rv-uploader-mask-message-line-height: var(--rv-line-height-xs);
  --rv-uploader-loading-icon-size: 44px;
  --rv-uploader-loading-icon-color: var(--rv-white);
  --rv-uploader-disabled-opacity: var(--rv-disabled-opacity);
}

.rv-uploader {
  position: relative;
  display: inline-block;
}

.rv-uploader__wrapper {
  display: flex;
  flex-wrap: wrap;
}

.rv-uploader__wrapper--disabled {
  opacity: var(--rv-uploader-disabled-opacity);
}

.rv-uploader__input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  cursor: pointer;
  opacity: 0;
}

.rv-uploader__input-wrapper {
  position: relative;
}

.rv-uploader__input:disabled {
  cursor: not-allowed;
}

.rv-uploader__upload {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: var(--rv-uploader-size);
  height: var(--rv-uploader-size);
  margin: 0 var(--rv-padding-xs) var(--rv-padding-xs) 0;
  background-color: var(--rv-uploader-upload-background-color);
}

.rv-uploader__upload:active {
  background-color: var(--rv-uploader-upload-active-color);
}

.rv-uploader__upload--readonly:active {
  background-color: var(--rv-uploader-upload-background-color);
}

.rv-uploader__upload-icon {
  color: var(--rv-uploader-icon-color);
  font-size: var(--rv-uploader-icon-size);
}

.rv-uploader__upload-text {
  margin-top: var(--rv-padding-xs);
  color: var(--rv-uploader-text-color);
  font-size: var(--rv-uploader-text-font-size);
}

.rv-uploader__preview {
  position: relative;
  margin: 0 var(--rv-padding-xs) var(--rv-padding-xs) 0;
  cursor: pointer;
}

.rv-uploader__preview-image {
  display: block;
  width: var(--rv-uploader-size);
  height: var(--rv-uploader-size);
  overflow: hidden;
}

.rv-uploader__preview-delete {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--rv-uploader-delete-icon-size);
  height: var(--rv-uploader-delete-icon-size);
  background-color: var(--rv-uploader-delete-background-color);
  border-radius: 0 0 0 24px;
}

.rv-uploader__preview-delete-icon {
  color: var(--rv-uploader-delete-color);
  font-size: var(--rv-uploader-delete-icon-size);
  transform: scale(0.7) translate(10%, -10%);
}

.rv-uploader__preview-cover {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.rv-uploader__mask {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--rv-uploader-mask-text-color);
  background-color: var(--rv-uploader-mask-background-color);
}

.rv-uploader__mask-icon {
  font-size: var(--rv-uploader-mask-icon-size);
}

.rv-uploader__mask-message {
  margin-top: 12px;
  padding: 0 var(--rv-padding-base);
  font-size: var(--rv-uploader-mask-message-font-size);
  line-height: var(--rv-uploader-mask-message-line-height);
}

.rv-uploader__loading {
  width: var(--rv-uploader-loading-icon-size);
  height: var(--rv-uploader-loading-icon-size);
  color: var(--rv-uploader-loading-icon-color);
}

.rv-uploader__file {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: var(--rv-uploader-size);
  height: var(--rv-uploader-size);
  background-color: var(--rv-uploader-file-background-color);
}

.rv-uploader__file-icon {
  color: var(--rv-uploader-file-icon-color);
  font-size: var(--rv-uploader-file-icon-size);
}

.rv-uploader__file-name {
  box-sizing: border-box;
  width: 100%;
  margin-top: var(--rv-uploader-file-name-margin-top);
  padding: var(--rv-uploader-file-name-padding);
  color: var(--rv-uploader-file-name-text-color);
  font-size: var(--rv-uploader-file-name-font-size);
  text-align: center;
}

:root {
  --rv-progress-height: 8px;
  --rv-progress-color: var(--rv-primary-color);
  --rv-progress-background-color: var(--rv-gray-3);
  --rv-progress-pivot-padding: 0 10px;
  --rv-progress-pivot-text-color: var(--rv-white);
  --rv-progress-pivot-font-size: var(--rv-font-size-xs);
  --rv-progress-pivot-line-height: 1.6;
  --rv-progress-pivot-background-color: var(--rv-primary-color);
}

.rv-progress {
  position: relative;
  height: var(--rv-progress-height);
  background: var(--rv-progress-background-color);
  border-radius: var(--rv-progress-height);
}

.rv-progress__portion {
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--rv-progress-color);
  border-radius: inherit;
  transform-origin: 0;
  transition: all var(--rv-animation-duration-base) var(--rv-animation-timing-function-enter);
}

.rv-progress__pivot {
  position: absolute;
  top: 50%;
  box-sizing: border-box;
  min-width: 3.6em;
  padding: var(--rv-progress-pivot-padding);
  color: var(--rv-progress-pivot-text-color);
  font-size: var(--rv-progress-pivot-font-size);
  line-height: var(--rv-progress-pivot-line-height);
  text-align: center;
  word-break: keep-all;
  background-color: var(--rv-progress-pivot-background-color);
  border-radius: 1em;
  transition: all var(--rv-animation-duration-base) var(--rv-animation-timing-function-enter);
}

:root {
  --rv-circle-size: 200px;
  --rv-circle-color: var(--rv-primary-color);
  --rv-circle-layer-color: var(--rv-white);
  --rv-circle-text-color: var(--rv-text-color);
  --rv-circle-text-font-weight: var(--rv-font-weight-bold);
  --rv-circle-text-font-size: var(--rv-font-size-md);
  --rv-circle-text-line-height: var(--rv-line-height-md);
}

.rv-circle {
  position: relative;
  display: inline-block;
  width: var(--rv-circle-size);
  height: var(--rv-circle-size);
  text-align: center;
}

.rv-circle svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.rv-circle__layer {
  stroke: var(--rv-circle-layer-color);
}

.rv-circle__hover {
  fill: none;
  stroke: var(--rv-circle-color);
  stroke-linecap: round;
}

.rv-circle__text {
  position: absolute;
  top: 50%;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  padding: 0 var(--rv-padding-base);
  color: var(--rv-circle-text-color);
  font-weight: var(--rv-circle-text-font-weight);
  font-size: var(--rv-circle-text-font-size);
  line-height: var(--rv-circle-text-line-height);
  transform: translateY(-50%);
}

:root {
  --rv-pagination-height: 80px;
  --rv-pagination-font-size: var(--rv-font-size-md);
  --rv-pagination-item-width: 72px;
  --rv-pagination-item-default-color: var(--rv-primary-color);
  --rv-pagination-item-disabled-color: var(--rv-gray-7);
  --rv-pagination-item-disabled-background-color: var(--rv-background-color);
  --rv-pagination-background-color: var(--rv-white);
  --rv-pagination-desc-color: var(--rv-gray-7);
  --rv-pagination-disabled-opacity: var(--rv-disabled-opacity);
}

.rv-pagination {
  display: flex;
  font-size: var(--rv-pagination-font-size);
}

.rv-pagination__item,
.rv-pagination__page-desc {
  display: flex;
  align-items: center;
  justify-content: center;
}

.rv-pagination__item {
  flex: 1;
  box-sizing: border-box;
  min-width: var(--rv-pagination-item-width);
  height: var(--rv-pagination-height);
  color: var(--rv-pagination-item-default-color);
  background-color: var(--rv-pagination-background-color);
  cursor: pointer;
  user-select: none;
}

.rv-pagination__item:active {
  color: var(--rv-white);
  background-color: var(--rv-pagination-item-default-color);
}

.rv-pagination__item::after {
  border-width: var(--rv-border-width-base) 0 var(--rv-border-width-base) var(--rv-border-width-base);
}

.rv-pagination__item:last-child::after {
  border-right-width: var(--rv-border-width-base);
}

.rv-pagination__item--active {
  color: var(--rv-white);
  background-color: var(--rv-pagination-item-default-color);
}

.rv-pagination__prev,
.rv-pagination__next {
  padding: 0 var(--rv-padding-base);
  cursor: pointer;
}

.rv-pagination__item--disabled,
.rv-pagination__item--disabled:active {
  color: var(--rv-pagination-item-disabled-color);
  background-color: var(--rv-pagination-item-disabled-background-color);
  cursor: not-allowed;
  opacity: var(--rv-pagination-disabled-opacity);
}

.rv-pagination__page {
  flex-grow: 0;
}

.rv-pagination__page-desc {
  flex: 1;
  height: var(--rv-pagination-height);
  color: var(--rv-pagination-desc-color);
}

.rv-pagination--simple .rv-pagination__prev::after,
.rv-pagination--simple .rv-pagination__next::after {
  border-width: var(--rv-border-width-base);
}

:root {
  --rv-tabbar-height: 100px;
  --rv-tabbar-z-index: 1;
  --rv-tabbar-background-color: var(--rv-white);
  --rv-tabbar-item-font-size: var(--rv-font-size-sm);
  --rv-tabbar-item-text-color: var(--rv-gray-7);
  --rv-tabbar-item-active-color: var(--rv-primary-color);
  --rv-tabbar-item-active-background-color: var(--rv-white);
  --rv-tabbar-item-line-height: 1;
  --rv-tabbar-item-icon-size: 44px;
  --rv-tabbar-item-icon-margin-bottom: var(--rv-padding-base);
}

.rv-tabbar {
  z-index: var(--rv-tabbar-z-index);
  display: flex;
  box-sizing: content-box;
  width: 100%;
  height: var(--rv-tabbar-height);
  background-color: var(--rv-tabbar-background-color);
}

.rv-tabbar--fixed {
  position: fixed;
  bottom: 0;
  left: 0;
}

.rv-tabbar-item {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--rv-tabbar-item-text-color);
  font-size: var(--rv-tabbar-item-font-size);
  line-height: var(--rv-tabbar-item-line-height);
  cursor: pointer;
}

.rv-tabbar-item__icon {
  margin-bottom: var(--rv-tabbar-item-icon-margin-bottom);
  font-size: var(--rv-tabbar-item-icon-size);
}

.rv-tabbar-item__icon .rv-icon {
  display: block;
}

.rv-tabbar-item__icon .rv-badge {
  margin-top: var(--rv-padding-base);
}

.rv-tabbar-item__icon img {
  display: block;
  height: 40px;
}

.rv-tabbar-item--active {
  color: var(--rv-tabbar-item-active-color);
  background-color: var(--rv-tabbar-item-active-background-color);
}

.rv-form--vertical {
  flex-wrap: wrap;
}

.rv-form--vertical .rv-field__label {
  margin-bottom: 16px;
  width: 100%;
  flex: none;
}

:root {
  --rv-card-size: var(--rv-font-size-md);
  --rv-card-color: var(--rv-text-color);
  --rv-card-background-color: var(--rv-white);
  --rv-card-radius: var(--rv-border-radius-lg);
  --rv-card-body-padding: 0 var(--rv-padding-md);
  --rv-card-header-padding: var(--rv-padding-sm) var(--rv-padding-md);
  --rv-card-header-size: var(--rv-font-size-lg);
  --rv-card-header-color: var(--rv-black);
  --rv-card-footer-padding: var(--rv-padding-sm) var(--rv-padding-md);
}

.rv-card {
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
  color: var(--rv-card-color);
  font-size: var(--rv-card-size);
  background-color: var(--rv-card-background-color);
}

.rv-card--round {
  border-radius: var(--rv-card-radius);
}

.rv-card--border {
  border: 2px solid var(--rv-gray-2);
}

.rv-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: bold;
  font-size: var(--rv-card-header-size);
  color: var(--rv-card-header-color);
  padding: var(--rv-card-header-padding);
}

.rv-card-header__extra {
  font-weight: normal;
}

.rv-card-body {
  padding: var(--rv-card-body-padding);
}

.rv-card-body + .rv-card-cover {
  margin-top: var(--rv-padding-sm);
}

.rv-card-cover + .rv-card-body {
  margin-top: var(--rv-padding-sm);
}

.rv-card-body:first-child {
  padding-top: var(--rv-padding-sm);
}

.rv-card-body:last-child {
  padding-bottom: var(--rv-padding-sm);
}

.rv-card-footer {
  padding: var(--rv-card-footer-padding);
  text-align: right;
}

.rv-card-footer--compact {
  padding: 0;
}

.rv-card-cover {
  width: 100%;
}

:root {
  --rv-product-card-padding: var(--rv-padding-xs) var(--rv-padding-md);
  --rv-product-card-font-size: var(--rv-font-size-sm);
  --rv-product-card-text-color: var(--rv-text-color);
  --rv-product-card-background-color: var(--rv-background-color-light);
  --rv-product-card-thumb-size: 176px;
  --rv-product-card-thumb-border-radius: var(--rv-border-radius-lg);
  --rv-product-card-title-line-height: 32px;
  --rv-product-card-desc-color: var(--rv-gray-7);
  --rv-product-card-desc-line-height: var(--rv-line-height-md);
  --rv-product-card-price-color: var(--rv-gray-8);
  --rv-product-card-origin-price-color: var(--rv-gray-6);
  --rv-product-card-num-color: var(--rv-gray-6);
  --rv-product-card-origin-price-font-size: var(--rv-font-size-xs);
  --rv-product-card-price-font-size: var(--rv-font-size-sm);
  --rv-product-card-price-integer-font-size: var(--rv-font-size-lg);
  --rv-product-card-price-font-family: var(--rv-price-integer-font-family);
}

.rv-product-card {
  position: relative;
  box-sizing: border-box;
  padding: var(--rv-product-card-padding);
  color: var(--rv-product-card-text-color);
  font-size: var(--rv-product-card-font-size);
  background-color: var(--rv-product-card-background-color);
}

.rv-product-card:not(:first-child) {
  margin-top: var(--rv-padding-xs);
}

.rv-product-card__header {
  display: flex;
}

.rv-product-card__thumb {
  position: relative;
  flex: none;
  width: var(--rv-product-card-thumb-size);
  height: var(--rv-product-card-thumb-size);
  margin-right: var(--rv-padding-xs);
}

.rv-product-card__thumb img {
  border-radius: var(--rv-product-card-thumb-border-radius);
}

.rv-product-card__content {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: space-between;
  min-width: 0;
  /* hack for flex box ellipsis */
  min-height: var(--rv-product-card-thumb-size);
}

.rv-product-card__content--centered {
  justify-content: center;
}

.rv-product-card__title,
.rv-product-card__desc {
  word-wrap: break-word;
}

.rv-product-card__title {
  max-height: 64px;
  font-weight: var(--rv-font-weight-bold);
  line-height: var(--rv-product-card-title-line-height);
}

.rv-product-card__desc {
  max-height: var(--rv-product-card-desc-line-height);
  color: var(--rv-product-card-desc-color);
  line-height: var(--rv-product-card-desc-line-height);
}

.rv-product-card__bottom {
  line-height: var(--rv-line-height-md);
}

.rv-product-card__price {
  display: inline-block;
  color: var(--rv-product-card-price-color);
  font-weight: var(--rv-font-weight-bold);
  font-size: var(--rv-product-card-price-font-size);
}

.rv-product-card__price-integer {
  font-size: var(--rv-product-card-price-integer-font-size);
  font-family: var(--rv-product-card-price-font-family);
}

.rv-product-card__price-decimal {
  font-family: var(--rv-product-card-price-font-family);
}

.rv-product-card__origin-price {
  display: inline-block;
  margin-left: 10px;
  color: var(--rv-product-card-origin-price-color);
  font-size: var(--rv-product-card-origin-price-font-size);
  text-decoration: line-through;
}

.rv-product-card__num {
  float: right;
  color: var(--rv-product-card-num-color);
}

.rv-product-card__tag {
  position: absolute;
  top: 4px;
  left: 0;
}

.rv-product-card__footer {
  flex: none;
  text-align: right;
}

.rv-product-card__footer .rv-button {
  margin-left: 10px;
}

:root {
  --rv-submit-bar-height: 100px;
  --rv-submit-bar-z-index: 100;
  --rv-submit-bar-background-color: var(--rv-white);
  --rv-submit-bar-button-width: 220px;
  --rv-submit-bar-price-color: var(--rv-danger-color);
  --rv-submit-bar-price-font-size: var(--rv-font-size-sm);
  --rv-submit-bar-price-integer-font-size: 40px;
  --rv-submit-bar-price-font-family: var(--rv-price-integer-font-family);
  --rv-submit-bar-currency-font-size: var(--rv-font-size-md);
  --rv-submit-bar-text-color: var(--rv-text-color);
  --rv-submit-bar-text-font-size: var(--rv-font-size-md);
  --rv-submit-bar-tip-padding: var(--rv-padding-xs) var(--rv-padding-sm);
  --rv-submit-bar-tip-font-size: var(--rv-font-size-sm);
  --rv-submit-bar-tip-line-height: 1.5;
  --rv-submit-bar-tip-color: #f56723;
  --rv-submit-bar-tip-background-color: #fff7cc;
  --rv-submit-bar-tip-icon-size: 24px;
  --rv-submit-bar-button-height: 80px;
  --rv-submit-bar-padding: 0 var(--rv-padding-md);
}

.rv-submit-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: var(--rv-submit-bar-z-index);
  width: 100%;
  background-color: var(--rv-submit-bar-background-color);
  user-select: none;
}

.rv-submit-bar__tip {
  padding: var(--rv-submit-bar-tip-padding);
  color: var(--rv-submit-bar-tip-color);
  font-size: var(--rv-submit-bar-tip-font-size);
  line-height: var(--rv-submit-bar-tip-line-height);
  background-color: var(--rv-submit-bar-tip-background-color);
}

.rv-submit-bar__tip-icon {
  margin-right: var(--rv-padding-base);
  font-size: var(--rv-submit-bar-tip-icon-size);
  vertical-align: middle;
}

.rv-submit-bar__tip-text {
  vertical-align: middle;
}

.rv-submit-bar__bar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: var(--rv-submit-bar-height);
  padding: var(--rv-submit-bar-padding);
  font-size: var(--rv-submit-bar-text-font-size);
}

.rv-submit-bar__text {
  flex: 1;
  padding-right: var(--rv-padding-sm);
  color: var(--rv-submit-bar-text-color);
  text-align: right;
}

.rv-submit-bar__text span {
  display: inline-block;
}

.rv-submit-bar__suffix-label {
  margin-left: var(--rv-padding-base);
  font-weight: var(--rv-font-weight-bold);
}

.rv-submit-bar__price {
  color: var(--rv-submit-bar-price-color);
  font-weight: var(--rv-font-weight-bold);
  font-size: var(--rv-submit-bar-price-font-size);
}

.rv-submit-bar__price-integer {
  font-size: var(--rv-submit-bar-price-integer-font-size);
  font-family: var(--rv-submit-bar-price-font-family);
}

.rv-submit-bar__button {
  width: var(--rv-submit-bar-button-width);
  height: var(--rv-submit-bar-button-height);
  font-weight: var(--rv-font-weight-bold);
  border: none;
}

.rv-submit-bar__button--danger {
  background: var(--rv-gradient-red);
}

:root {
  --rv-coupon-cell-selected-text-color: var(--rv-text-color);
}

.rv-coupon-cell__value--selected {
  color: var(--rv-coupon-cell-selected-text-color);
}

:root {
  --rv-coupon-margin: 0 var(--rv-padding-sm) var(--rv-padding-sm);
  --rv-coupon-content-height: 168px;
  --rv-coupon-content-padding: 28px 0;
  --rv-coupon-background-color: var(--rv-white);
  --rv-coupon-active-background-color: var(--rv-active-color);
  --rv-coupon-border-radius: var(--rv-border-radius-lg);
  --rv-coupon-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  --rv-coupon-head-width: 192px;
  --rv-coupon-amount-color: var(--rv-primary-color);
  --rv-coupon-amount-font-size: 60px;
  --rv-coupon-currency-font-size: 40%;
  --rv-coupon-name-font-size: var(--rv-font-size-md);
  --rv-coupon-disabled-text-color: var(--rv-gray-6);
  --rv-coupon-description-padding: var(--rv-padding-xs) var(--rv-padding-md);
  --rv-coupon-description-border-color: var(--rv-border-color);
  --rv-coupon-corner-checkbox-icon-color: var(--rv-primary-color);
  --rv-coupon-list-background-color: var(--rv-background-color);
  --rv-coupon-list-field-padding: 10px 0 10px var(--rv-padding-md);
  --rv-coupon-list-exchange-button-height: 64px;
  --rv-coupon-list-close-button-height: 80px;
  --rv-coupon-list-empty-image-size: 400px;
  --rv-coupon-list-empty-tip-color: var(--rv-gray-6);
  --rv-coupon-list-empty-tip-font-size: var(--rv-font-size-md);
  --rv-coupon-list-empty-tip-line-height: var(--rv-line-height-md);
}

.rv-coupon {
  margin: var(--rv-coupon-margin);
  overflow: hidden;
  background-color: var(--rv-coupon-background-color);
  border-radius: var(--rv-coupon-border-radius);
  box-shadow: var(--rv-coupon-box-shadow);
}

.rv-coupon:active {
  background-color: var(--rv-coupon-active-background-color);
}

.rv-coupon__content {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  min-height: var(--rv-coupon-content-height);
  padding: var(--rv-coupon-content-padding);
  color: var(--rv-gray-8);
}

.rv-coupon__head {
  position: relative;
  min-width: var(--rv-coupon-head-width);
  padding: 0 var(--rv-padding-xs);
  color: var(--rv-coupon-amount-color);
  text-align: center;
}

.rv-coupon__amount,
.rv-coupon__condition,
.rv-coupon__name,
.rv-coupon__valid {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.rv-coupon__amount {
  margin-bottom: 12px;
  font-weight: var(--rv-font-weight-bold);
  font-size: var(--rv-coupon-amount-font-size);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.rv-coupon__amount span {
  font-weight: normal;
  font-size: var(--rv-coupon-currency-font-size);
}

.rv-coupon__amount span:not(:empty) {
  margin-left: 4px;
}

.rv-coupon__condition {
  font-size: var(--rv-font-size-sm);
  line-height: 32px;
  white-space: pre-wrap;
}

.rv-coupon__body {
  position: relative;
  flex: 1;
  border-radius: 0 var(--rv-coupon-border-radius) var(--rv-coupon-border-radius) 0;
}

.rv-coupon__name {
  margin-bottom: 20px;
  font-weight: bold;
  font-size: var(--rv-coupon-name-font-size);
  line-height: var(--rv-line-height-md);
}

.rv-coupon__valid {
  font-size: var(--rv-font-size-sm);
}

.rv-coupon__corner {
  position: absolute;
  top: 0;
  right: var(--rv-padding-md);
  bottom: 0;
}

.rv-coupon__corner .rv-checkbox__icon--checked .rv-icon {
  background-color: var(--rv-coupon-corner-checkbox-icon-color);
  border-color: var(--rv-coupon-corner-checkbox-icon-color);
}

.rv-coupon__description {
  padding: var(--rv-coupon-description-padding);
  font-size: var(--rv-font-size-sm);
  border-top: 2px dashed var(--rv-coupon-description-border-color);
}

.rv-coupon--disabled:active {
  background-color: var(--rv-coupon-background-color);
}

.rv-coupon--disabled .rv-coupon-item__content {
  height: calc(var(--rv-coupon-content-height) - 20px);
}

.rv-coupon--disabled .rv-coupon__head {
  color: inherit;
}

.rv-coupon-list {
  position: relative;
  height: 100%;
  background-color: var(--rv-coupon-list-background-color);
}

.rv-coupon-list__field {
  padding: var(--rv-coupon-list-field-padding);
}

.rv-coupon-list__field .rv-field__body {
  height: 68px;
  padding-left: var(--rv-padding-sm);
  line-height: 68px;
  background: var(--rv-gray-1);
  border-radius: 34px;
}

.rv-coupon-list__field .rv-field__body::placeholder {
  color: var(--rv-gray-5);
}

.rv-coupon-list__field .rv-field__clear {
  margin-right: 0;
}

.rv-coupon-list__exchange-bar {
  display: flex;
  align-items: center;
  background-color: var(--rv-white);
}

.rv-coupon-list__exchange {
  flex: none;
  height: var(--rv-coupon-list-exchange-button-height);
  font-size: var(--rv-font-size-lg);
  line-height: calc(var(--rv-coupon-list-exchange-button-height) - 4px);
  border: 0;
}

.rv-coupon-list .rv-tabs__wrap {
  box-shadow: 0 12px 24px -24px var(--rv-gray-6);
}

.rv-coupon-list__list {
  box-sizing: border-box;
  height: calc(100vh - 216px);
  padding: var(--rv-padding-md) 0 var(--rv-padding-lg);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.rv-coupon-list__list--with-bar {
  height: calc(100vh - 304px);
}

.rv-coupon-list__list--with-bottom {
  padding-bottom: 100px;
}

.rv-coupon-list__bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 999;
  box-sizing: border-box;
  width: 100%;
  padding: 10px var(--rv-padding-md);
  font-weight: var(--rv-font-weight-bold);
  background-color: var(--rv-white);
}

.rv-coupon-list__close {
  height: var(--rv-coupon-list-close-button-height);
}

.rv-coupon-list__empty {
  padding-top: 120px;
  text-align: center;
}

.rv-coupon-list__empty p {
  margin: var(--rv-padding-md) 0;
  color: var(--rv-coupon-list-empty-tip-color);
  font-size: var(--rv-coupon-list-empty-tip-font-size);
  line-height: var(--rv-coupon-list-empty-tip-line-height);
}

.rv-coupon-list__empty img {
  width: var(--rv-coupon-list-empty-image-size);
  height: var(--rv-coupon-list-empty-image-size);
}

:root {
  --rv-sku-item-background-color: var(--rv-background-color);
}

.rv-sku {
  /* sku row */
}

.rv-sku__container {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 50%;
  max-height: 80%;
  overflow-y: visible;
  font-size: 28px;
  background: #fff;
}

.rv-sku__body {
  flex: 1 1 auto;
  min-height: 88px;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

.rv-sku__body::-webkit-scrollbar {
  display: none;
}

.rv-sku__header {
  display: flex;
  flex-shrink: 0;
  margin: 0 32px;
}

.rv-sku__header__img-wrap {
  flex-shrink: 0;
  width: 192px;
  height: 192px;
  margin: 24px 24px 24px 0;
  overflow: hidden;
  border-radius: 8px;
}

.rv-sku__header__goods-info {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 24px 40px 24px 0;
}

.rv-sku__header-item {
  margin-top: 16px;
  color: #969799;
  font-size: 24px;
  line-height: 32px;
}

.rv-sku__price-symbol {
  font-size: 32px;
  vertical-align: bottom;
}

.rv-sku__price-num {
  font-weight: 500;
  font-size: 44px;
  vertical-align: bottom;
  word-wrap: break-word;
}

.rv-sku__goods-price {
  margin-left: -4px;
  color: #f44336;
}

.rv-sku__price-tag {
  position: relative;
  display: inline-block;
  margin-left: 16px;
  padding: 0 10px;
  overflow: hidden;
  color: #f44336;
  font-size: 24px;
  line-height: 32px;
  border-radius: 16px;
}

.rv-sku__price-tag::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: currentColor;
  opacity: 0.1;
  content: '';
}

.rv-sku__group-container {
  padding-top: 24px;
}

.rv-sku__group-container--hide-soldout .rv-sku-row__item--disabled {
  display: none;
}

.rv-sku-row {
  margin: 0 32px 24px;
}

.rv-sku-row:last-child {
  margin-bottom: 0;
}

.rv-sku-row__item,
.rv-sku-row__image-item {
  position: relative;
  overflow: hidden;
  color: var(--rv-gray-8);
  border-radius: 8px;
  cursor: pointer;
}

.rv-sku-row__item::before,
.rv-sku-row__image-item::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--rv-sku-item-background-color);
  content: '';
}

.rv-sku-row__item--active,
.rv-sku-row__image-item--active {
  color: #f44336;
}

.rv-sku-row__item--active::before,
.rv-sku-row__image-item--active::before {
  background: currentColor;
  opacity: 0.1;
}

.rv-sku-row__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 80px;
  margin: 0 24px 24px 0;
  font-size: 26px;
  line-height: 32px;
  vertical-align: middle;
}

.rv-sku-row__item-img {
  z-index: 1;
  width: 48px;
  height: 48px;
  margin: 8px 0 8px 8px;
  object-fit: cover;
  border-radius: 4px;
}

.rv-sku-row__item-name {
  z-index: 1;
  padding: 16px;
}

.rv-sku-row__item--disabled {
  color: #c8c9cc;
  background: var(--rv-gray-2);
  cursor: not-allowed;
}

.rv-sku-row__item--disabled .rv-sku-row__item-img {
  opacity: 0.3;
}

.rv-sku-row__image {
  margin-right: 0;
}

.rv-sku-row__image-item {
  display: flex;
  flex-direction: column;
  width: 220px;
  margin: 0 8px 8px 0;
  border: 2px solid transparent;
}

.rv-sku-row__image-item:last-child {
  margin-right: 0;
}

.rv-sku-row__image-item-img {
  width: 100%;
  height: 220px;
}

.rv-sku-row__image-item-img-icon {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
  width: 36px;
  height: 36px;
  color: #fff;
  line-height: 36px;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.4);
  border-bottom-left-radius: 8px;
}

.rv-sku-row__image-item-name {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 80px;
  padding: 8px;
  font-size: 24px;
  line-height: 32px;
}

.rv-sku-row__image-item-name span {
  word-wrap: break-word;
}

.rv-sku-row__image-item--active {
  border-color: currentColor;
}

.rv-sku-row__image-item--disabled {
  color: #c8c9cc;
  cursor: not-allowed;
}

.rv-sku-row__image-item--disabled::before {
  z-index: 2;
  background: var(--rv-gray-2);
  opacity: 0.4;
}

.rv-sku-row__title {
  padding-bottom: 24px;
}

.rv-sku-row__title-multiple {
  color: #969799;
}

.rv-sku-row__scroller {
  margin: 0 -32px;
  overflow-x: scroll;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.rv-sku-row__scroller::-webkit-scrollbar {
  display: none;
}

.rv-sku-row__row {
  display: inline-flex;
  margin-bottom: 8px;
  padding: 0 32px;
}

.rv-sku-row__indicator {
  width: 80px;
  height: 8px;
  background: #ebedf0;
  border-radius: 4px;
}

.rv-sku-row__indicator-wrapper {
  display: flex;
  justify-content: center;
  padding-bottom: 32px;
}

.rv-sku-row__indicator-slider {
  width: 50%;
  height: 100%;
  background-color: #f44336;
  border-radius: 4px;
}

.rv-sku__stepper-stock {
  padding: 24px 32px;
  overflow: hidden;
  line-height: 60px;
}

.rv-sku__stepper {
  float: right;
  padding-left: 8px;
}

.rv-sku__stepper-title {
  float: left;
}

.rv-sku__stepper-quota {
  float: right;
  color: #f44336;
  font-size: 24px;
}

.rv-sku__stock {
  display: inline-block;
  margin-right: 16px;
  color: #969799;
  font-size: 24px;
}

.rv-sku__stock-num--highlight {
  color: #f44336;
}

.rv-sku__actions {
  flex-shrink: 0;
  padding: 0 32px;
}

.rv-sku__actions .rv-action-bar {
  position: relative;
}

.rv-sku__actions .rv-action-bar .rv-button {
  margin: 0;
}

:root {
  --rv-floating-ball-size: calc(48 * 2px);
  --rv-floating-ball-z-index: 8;
}

.rv-floating-ball {
  user-select: none;
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: var(--rv-floating-ball-z-index);
}

.rv-floating-ball__base {
  cursor: pointer;
  position: relative;
  width: var(--rv-floating-ball-size);
  height: var(--rv-floating-ball-size);
}

.rv-floating-ball__menu {
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease;
}

.rv-floating-ball__menu__item {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translate(0);
  transition: all 0.4s ease;
}

.rv-floating-ball__menu__item:nth-child(1) {
  transition-delay: 0s;
}

.rv-floating-ball__menu__item:nth-child(2) {
  transition-delay: 0.05s;
}

.rv-floating-ball__menu__item:nth-child(3) {
  transition-delay: 0.1s;
}

.rv-floating-ball__menu__item:nth-child(4) {
  transition-delay: 0.15s;
}

.rv-floating-ball__menu__item:nth-child(5) {
  transition-delay: 0.2s;
}

.rv-floating-ball--active .rv-floating-ball__menu {
  opacity: 1;
  visibility: visible;
}

.rv-floating-ball--active .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateY(-150%);
}

.rv-floating-ball--active .rv-floating-ball__menu__item:nth-child(2) {
  transform: translate(-110%, -110%);
}

.rv-floating-ball--active .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateX(-150%);
}

.rv-floating-ball--active .rv-floating-ball__menu__item:nth-child(4) {
  transform: translate(-110%, 110%);
}

.rv-floating-ball--active .rv-floating-ball__menu__item:nth-child(5) {
  transform: translateY(150%);
}

.rv-floating-ball--active .rv-floating-ball__menu--left .rv-floating-ball__menu__item:nth-child(2) {
  transform: translate(110%, -110%);
}

.rv-floating-ball--active .rv-floating-ball__menu--left .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateX(150%);
}

.rv-floating-ball--active .rv-floating-ball__menu--left .rv-floating-ball__menu__item:nth-child(4) {
  transform: translate(110%, 110%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateY(-600%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateY(-480%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateY(-360%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical .rv-floating-ball__menu__item:nth-child(4) {
  transform: translateY(-240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical .rv-floating-ball__menu__item:nth-child(5) {
  transform: translateY(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-1 .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateY(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-2 .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateY(-240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-2 .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateY(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-3 .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateY(-360%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-3 .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateY(-240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-3 .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateY(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-4 .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateY(-480%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-4 .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateY(-360%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-4 .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateY(-240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.list-4 .rv-floating-ball__menu__item:nth-child(4) {
  transform: translateY(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.rv-floating-ball__menu--top .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateY(120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.rv-floating-ball__menu--top .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateY(240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.rv-floating-ball__menu--top .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateY(360%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.rv-floating-ball__menu--top .rv-floating-ball__menu__item:nth-child(4) {
  transform: translateY(480%);
}

.rv-floating-ball--active .rv-floating-ball__menu--vertical.rv-floating-ball__menu--top .rv-floating-ball__menu__item:nth-child(5) {
  transform: translateY(600%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateX(-600%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateX(-480%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateX(-360%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal .rv-floating-ball__menu__item:nth-child(4) {
  transform: translateX(-240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal .rv-floating-ball__menu__item:nth-child(5) {
  transform: translateX(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-1 .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateX(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-2 .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateX(-240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-2 .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateX(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-3 .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateX(-360%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-3 .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateX(-240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-3 .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateX(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-4 .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateX(-480%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-4 .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateX(-360%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-4 .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateX(-240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.list-4 .rv-floating-ball__menu__item:nth-child(4) {
  transform: translateX(-120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.rv-floating-ball__menu--left .rv-floating-ball__menu__item:nth-child(1) {
  transform: translateX(120%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.rv-floating-ball__menu--left .rv-floating-ball__menu__item:nth-child(2) {
  transform: translateX(240%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.rv-floating-ball__menu--left .rv-floating-ball__menu__item:nth-child(3) {
  transform: translateX(360%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.rv-floating-ball__menu--left .rv-floating-ball__menu__item:nth-child(4) {
  transform: translateX(480%);
}

.rv-floating-ball--active .rv-floating-ball__menu--horizontal.rv-floating-ball__menu--left .rv-floating-ball__menu__item:nth-child(5) {
  transform: translateX(600%);
}