prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Promotional code field and button overlap each other.
  In the checkout process:
  <img width="465" alt="zrzut ekranu 2018-01-10 o 10 02 22" src="https://user-images.githubusercontent.com/1561204/34765559-24865056-f5f2-11e7-9e2a-d0ff639e7a79.png">
  
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `saleor/discount/forms.py`
  Content:
  ```
  1 from datetime import date
  2 
  3 from django import forms
  4 from django.utils.encoding import smart_text
  5 from django.utils.translation import pgettext_lazy
  6 
  7 from .models import NotApplicable, Voucher
  8 
  9 
  10 class VoucherField(forms.ModelChoiceField):
  11 
  12     default_error_messages = {
  13         'invalid_choice': pgettext_lazy(
  14             'voucher', pgettext_lazy(
  15                 'Voucher form error', 'Discount code incorrect or expired')),
  16     }
  17 
  18 
  19 class CheckoutDiscountForm(forms.Form):
  20 
  21     voucher = VoucherField(
  22         queryset=Voucher.objects.none(),
  23         to_field_name='code',
  24         label=pgettext_lazy(
  25             'Checkout discount form label for voucher field',
  26             'Gift card or discount code'),
  27         widget=forms.TextInput)
  28 
  29     def __init__(self, *args, **kwargs):
  30         self.checkout = kwargs.pop('checkout')
  31         initial = kwargs.get('initial', {})
  32         if 'voucher' not in initial:
  33             initial['voucher'] = self.checkout.voucher_code
  34         kwargs['initial'] = initial
  35         super().__init__(*args, **kwargs)
  36         self.fields['voucher'].queryset = Voucher.objects.active(
  37             date=date.today())
  38 
  39     def clean(self):
  40         cleaned_data = super().clean()
  41         if 'voucher' in cleaned_data:
  42             voucher = cleaned_data['voucher']
  43             try:
  44                 discount = voucher.get_discount_for_checkout(self.checkout)
  45                 cleaned_data['discount'] = discount
  46             except NotApplicable as e:
  47                 self.add_error('voucher', smart_text(e))
  48         return cleaned_data
  49 
  50     def apply_discount(self):
  51         discount = self.cleaned_data['discount']
  52         voucher = self.cleaned_data['voucher']
  53         self.checkout.discount = discount
  54         self.checkout.voucher_code = voucher.code
  55
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/saleor/discount/forms.py b/saleor/discount/forms.py
  --- a/saleor/discount/forms.py
  +++ b/saleor/discount/forms.py
  @@ -21,7 +21,7 @@
       voucher = VoucherField(
           queryset=Voucher.objects.none(),
           to_field_name='code',
  -        label=pgettext_lazy(
  +        help_text=pgettext_lazy(
               'Checkout discount form label for voucher field',
               'Gift card or discount code'),
           widget=forms.TextInput)
  
verification_info: {"golden_diff": "diff --git a/saleor/discount/forms.py b/saleor/discount/forms.py\n--- a/saleor/discount/forms.py\n+++ b/saleor/discount/forms.py\n@@ -21,7 +21,7 @@\n     voucher = VoucherField(\n         queryset=Voucher.objects.none(),\n         to_field_name='code',\n-        label=pgettext_lazy(\n+        help_text=pgettext_lazy(\n             'Checkout discount form label for voucher field',\n             'Gift card or discount code'),\n         widget=forms.TextInput)\n", "issue": "Promotional code field and button overlap each other.\nIn the checkout process:\r\n<img width=\"465\" alt=\"zrzut ekranu 2018-01-10 o 10 02 22\" src=\"https://user-images.githubusercontent.com/1561204/34765559-24865056-f5f2-11e7-9e2a-d0ff639e7a79.png\">\r\n\n", "before_files": [{"content": "from datetime import date\n\nfrom django import forms\nfrom django.utils.encoding import smart_text\nfrom django.utils.translation import pgettext_lazy\n\nfrom .models import NotApplicable, Voucher\n\n\nclass VoucherField(forms.ModelChoiceField):\n\n    default_error_messages = {\n        'invalid_choice': pgettext_lazy(\n            'voucher', pgettext_lazy(\n                'Voucher form error', 'Discount code incorrect or expired')),\n    }\n\n\nclass CheckoutDiscountForm(forms.Form):\n\n    voucher = VoucherField(\n        queryset=Voucher.objects.none(),\n        to_field_name='code',\n        label=pgettext_lazy(\n            'Checkout discount form label for voucher field',\n            'Gift card or discount code'),\n        widget=forms.TextInput)\n\n    def __init__(self, *args, **kwargs):\n        self.checkout = kwargs.pop('checkout')\n        initial = kwargs.get('initial', {})\n        if 'voucher' not in initial:\n            initial['voucher'] = self.checkout.voucher_code\n        kwargs['initial'] = initial\n        super().__init__(*args, **kwargs)\n        self.fields['voucher'].queryset = Voucher.objects.active(\n            date=date.today())\n\n    def clean(self):\n        cleaned_data = super().clean()\n        if 'voucher' in cleaned_data:\n            voucher = cleaned_data['voucher']\n            try:\n                discount = voucher.get_discount_for_checkout(self.checkout)\n                cleaned_data['discount'] = discount\n            except NotApplicable as e:\n                self.add_error('voucher', smart_text(e))\n        return cleaned_data\n\n    def apply_discount(self):\n        discount = self.cleaned_data['discount']\n        voucher = self.cleaned_data['voucher']\n        self.checkout.discount = discount\n        self.checkout.voucher_code = voucher.code\n", "path": "saleor/discount/forms.py"}], "after_files": [{"content": "from datetime import date\n\nfrom django import forms\nfrom django.utils.encoding import smart_text\nfrom django.utils.translation import pgettext_lazy\n\nfrom .models import NotApplicable, Voucher\n\n\nclass VoucherField(forms.ModelChoiceField):\n\n    default_error_messages = {\n        'invalid_choice': pgettext_lazy(\n            'voucher', pgettext_lazy(\n                'Voucher form error', 'Discount code incorrect or expired')),\n    }\n\n\nclass CheckoutDiscountForm(forms.Form):\n\n    voucher = VoucherField(\n        queryset=Voucher.objects.none(),\n        to_field_name='code',\n        help_text=pgettext_lazy(\n            'Checkout discount form label for voucher field',\n            'Gift card or discount code'),\n        widget=forms.TextInput)\n\n    def __init__(self, *args, **kwargs):\n        self.checkout = kwargs.pop('checkout')\n        initial = kwargs.get('initial', {})\n        if 'voucher' not in initial:\n            initial['voucher'] = self.checkout.voucher_code\n        kwargs['initial'] = initial\n        super().__init__(*args, **kwargs)\n        self.fields['voucher'].queryset = Voucher.objects.active(\n            date=date.today())\n\n    def clean(self):\n        cleaned_data = super().clean()\n        if 'voucher' in cleaned_data:\n            voucher = cleaned_data['voucher']\n            try:\n                discount = voucher.get_discount_for_checkout(self.checkout)\n                cleaned_data['discount'] = discount\n            except NotApplicable as e:\n                self.add_error('voucher', smart_text(e))\n        return cleaned_data\n\n    def apply_discount(self):\n        discount = self.cleaned_data['discount']\n        voucher = self.cleaned_data['voucher']\n        self.checkout.discount = discount\n        self.checkout.voucher_code = voucher.code\n", "path": "saleor/discount/forms.py"}]}