.ty-input-number {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .ty-input-number:hover .ty-input-number__controls {
    opacity: 1; }
  .ty-input-number__input {
    font-family: "Open Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", Helvetica, Arial, sans-serif;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    margin: 0;
    color: rgba(0, 0, 0, 0.65);
    border: 1px solid #d9d9d9;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    outline: 0;
    border-radius: 3px;
    font-size: 14px;
    padding-left: 7px;
    padding-right: 25px; }
    .ty-input-number__input:hover {
      border-color: #4DBDB9; }
    .ty-input-number__input:focus {
      border-color: rgba(77, 189, 185, 0.8);
      -webkit-box-shadow: 0 0 0 2px rgba(77, 189, 185, 0.2);
              box-shadow: 0 0 0 2px rgba(77, 189, 185, 0.2); }
    .ty-input-number__input::-webkit-input-placeholder {
      color: #bfbfbf; }
    .ty-input-number__input::-moz-placeholder {
      color: #bfbfbf; }
    .ty-input-number__input:-ms-input-placeholder {
      color: #bfbfbf; }
    .ty-input-number__input::-ms-input-placeholder {
      color: #bfbfbf; }
    .ty-input-number__input::placeholder {
      color: #bfbfbf; }
    .ty-input-number__input::-webkit-inner-spin-button, .ty-input-number__input::-webkit-outer-spin-button {
      -webkit-appearance: none; }
  .ty-input-number__controls {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 1px;
    opacity: 0;
    -webkit-transition: all 300ms;
    transition: all 300ms; }
  .ty-input-number__up, .ty-input-number__down {
    cursor: pointer;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 7px;
    border-left: 1px solid #d9d9d9;
    -webkit-transition: all 300ms;
    transition: all 300ms; }
    .ty-input-number__up:hover, .ty-input-number__down:hover {
      -webkit-box-flex: 2;
          -ms-flex: 2;
              flex: 2; }
      .ty-input-number__up:hover .ty-icon, .ty-input-number__down:hover .ty-icon {
        color: #4DBDB9 !important; }
    .ty-input-number__up:active, .ty-input-number__down:active {
      background-color: #f4f4f4; }
  .ty-input-number__up {
    border-bottom: 1px solid #d9d9d9; }
  .ty-input-number__down {
    padding-top: 1px; }
  .ty-input-number_sm .ty-input-number__input {
    font-size: 13px;
    height: 24px;
    line-height: 24px; }
  .ty-input-number_md .ty-input-number__input {
    font-size: 14px;
    height: 32px;
    line-height: 32px; }
  .ty-input-number_lg .ty-input-number__input {
    font-size: 16px;
    height: 42px;
    line-height: 42px; }
  .ty-input-number_disabled .ty-input-number__input {
    cursor: not-allowed;
    background-color: #f4f4f5;
    color: #999; }
    .ty-input-number_disabled .ty-input-number__input:hover {
      border-color: #d9d9d9; }
  .ty-input-number_disabled .ty-input-number__up, .ty-input-number_disabled .ty-input-number__down {
    cursor: not-allowed; }
    .ty-input-number_disabled .ty-input-number__up .ty-icon, .ty-input-number_disabled .ty-input-number__down .ty-icon {
      color: #999 !important; }
    .ty-input-number_disabled .ty-input-number__up:hover, .ty-input-number_disabled .ty-input-number__down:hover {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
    .ty-input-number_disabled .ty-input-number__up:active, .ty-input-number_disabled .ty-input-number__down:active {
      background-color: transparent; }
  .ty-input-number_always-controls .ty-input-number__controls {
    opacity: 1; }
