/******** borderSize *******/
/******** borderStyle *******/
/******** radius *******/
/******** shadow distance *******/
/******** size *******/
/******** spacing *******/
/******** shadow *******/
/******** opacity *******/
/******** fontSize *******/
/******** fontWeight ********/
/******** Primary *******/
/******** success *******/
/******** warning *******/
/******** danger *******/
/******** link *******/
/******** radius *******/
/********* icon hover *********/
/**********************************************
 * status: disabled / readonly
 **********************************************/
.sd-rate {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  font-size: 24px;
  line-height: 1;
  user-select: none;
}
.sd-rate-disabled {
  cursor: not-allowed;
}
.sd-rate-character {
  position: relative;
  color: var(--sd-color-fill-3);
  transition: transform 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);
}
.sd-rate-character:not(:last-child) {
  margin-right: 8px;
}
.sd-rate-character-left, .sd-rate-character-right {
  transition: inherit;
}
.sd-rate-character-left > *, .sd-rate-character-right > * {
  float: left;
}
.sd-rate-character-left {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  overflow: hidden;
  white-space: nowrap;
  opacity: 0;
}
.sd-rate-character-scale {
  animation: sd-rate-scale 0.4s cubic-bezier(0.34, 0.69, 0.1, 1);
}
.sd-rate-character-full .sd-rate-character-right {
  color: rgb(var(--sd-gold-6));
}
.sd-rate-character-half .sd-rate-character-left {
  color: rgb(var(--sd-gold-6));
  opacity: 1;
}
.sd-rate-character-disabled {
  cursor: not-allowed;
}
.sd-rate:not(.sd-rate-readonly, .sd-rate-disabled) .sd-rate-character {
  cursor: pointer;
}
.sd-rate:not(.sd-rate-readonly, .sd-rate-disabled) .sd-rate-character:hover, .sd-rate:not(.sd-rate-readonly, .sd-rate-disabled) .sd-rate-character:focus {
  transform: scale(1.2);
}

@keyframes sd-rate-scale {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}