{% load crispy_forms_tags %}
<form method="post">
    {% csrf_token %}
    <div class="shadow sm:rounded-md sm:overflow-hidden">
        <div class="bg-white py-6 px-4 space-y-6 sm:p-6">
            <div>
                <h3 class="text-lg leading-6 font-medium text-gray-900">{{ view.action_title }} {{ view.get_model_name }}</h3>
                {% if view.get_form_message %}
                    <p class="text-gray-900 my-8">{{ view.get_form_message }}</p>
                {% endif %}
            </div>
            {% crispy form form.helper %}
        </div>
        <div class="px-4 py-3 bg-gray-50 text-right sm:px-6">
            <button
                type="submit"
                class="bg-pc-600 border border-transparent rounded-md shadow-sm py-2 px-4 inline-flex justify-center text-sm font-medium text-white hover:bg-pc-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-pc-500">
                {{ view.submit_button_caption }}
            </button>
        </div>
    </div>
</form>
