@mixin spinbutton() {
  spinbutton {
    &:focus {
      box-shadow: 0 0 0 2px $color_shadow;
    }
    
    button, entry {
      border: none;
      background-color: gtkalpha($dark_shadow, 0.03);
      
      &:disabled { color: $disabled_fg_color;
        &:backdrop { color: $unfocused_disabled_fg_color; }
      }
    }

    &.horizontal {
      entry {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        padding: 7px 15px;
      }
      
      button {        
        &.down {
          border-right-width: 0;
          border-left-width: 0;
          border-radius: 0;
        }

        &.up {
          border-top-left-radius: 0;
          border-bottom-left-radius: 0;
        }
      }
    }

    &.vertical {
      entry { border-radius: 0; }
      button {
        &.up {
          border-bottom-left-radius: 0;
          border-bottom-right-radius: 0;
          border-bottom-width: 0;
        }

        &.down {
          border-top-width: 0;
          border-top-left-radius: 0;
          border-top-right-radius: 0;
        }
      }
    }
  }
}
