diff --git a/kursy/templates/allauth/elements/alert.html b/kursy/templates/allauth/elements/alert.html
new file mode 100644
index 0000000..bf1ff38
--- /dev/null
+++ b/kursy/templates/allauth/elements/alert.html
@@ -0,0 +1,6 @@
+{% load allauth %}
+
+ {% slot message %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/badge.html b/kursy/templates/allauth/elements/badge.html
new file mode 100644
index 0000000..d91c81c
--- /dev/null
+++ b/kursy/templates/allauth/elements/badge.html
@@ -0,0 +1,19 @@
+{% load allauth %}
+{% setvar variant %}
+ {% if "warning" in attrs.tags %}
+ warning
+ {% elif "danger" in attrs.tags %}
+ danger
+ {% elif "secondary" in attrs.tags %}
+ secondary
+ {% elif "success" in attrs.tags %}
+ success
+ {% else %}
+ primary
+ {% endif %}
+{% endsetvar %}
+
+ {% slot %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/button.html b/kursy/templates/allauth/elements/button.html
new file mode 100644
index 0000000..cee5ff3
--- /dev/null
+++ b/kursy/templates/allauth/elements/button.html
@@ -0,0 +1,36 @@
+{% load allauth %}
+{% comment %} djlint:off {% endcomment %}
+<{% if attrs.href %}a href="{{ attrs.href }}"{% else %}button{% endif %}
+{% if attrs.form %}form="{{ attrs.form }}"{% endif %}
+{% if attrs.id %}id="{{ attrs.id }}"{% endif %}
+{% if attrs.name %}name="{{ attrs.name }}"{% endif %}
+{% if attrs.type %}type="{{ attrs.type }}"{% endif %}
+{% if attrs.value %}value="{{ attrs.value }}"{% endif %}
+class="{% block class %}
+ inline-flex items-center justify-center rounded-md font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50
+ {% if "link" in attrs.tags %}bg-transparent p-0 text-blue-600 hover:text-blue-700 hover:underline focus:ring-blue-500
+ {% else %}
+ {% if "prominent" in attrs.tags %}px-5 py-3 text-base{% elif "minor" in attrs.tags %}px-2.5 py-1.5 text-sm{% else %}px-4 py-2 text-sm{% endif %}
+ {% if "outline" in attrs.tags %}
+ border
+ {% if "danger" in attrs.tags %}border-red-600 text-red-600 hover:bg-red-50 focus:ring-red-500{% elif "secondary" in attrs.tags %}border-slate-500 text-slate-600 hover:bg-slate-100 focus:ring-slate-500{% elif "warning" in attrs.tags %}border-amber-500 text-amber-700 hover:bg-amber-50 focus:ring-amber-500{% else %}border-blue-600 text-blue-600 hover:bg-blue-50 focus:ring-blue-500{% endif %}
+ {% else %}
+ {% if "danger" in attrs.tags %}bg-red-600 text-white hover:bg-red-700 focus:ring-red-500{% elif "secondary" in attrs.tags %}bg-slate-600 text-white hover:bg-slate-700 focus:ring-slate-500{% elif "warning" in attrs.tags %}bg-amber-500 text-slate-900 hover:bg-amber-600 focus:ring-amber-500{% else %}bg-blue-600 text-white hover:bg-blue-700 focus:ring-blue-500{% endif %}
+ {% endif %}
+ {% endif %}{% endblock %}">
+ {% if "tool" in attrs.tags %}
+ {% if "delete" in attrs.tags %}
+
+ {% elif "edit" in attrs.tags %}
+
+ {% endif %}
+ {% endif %}
+
+{% if not "tool" in attrs.tags %}
+{% slot %}
+{% endslot %}
+{% endif %}
+{% if attrs.href %}a{% else %}button{% endif %}>
diff --git a/kursy/templates/allauth/elements/button__entrance.html b/kursy/templates/allauth/elements/button__entrance.html
new file mode 100644
index 0000000..b784039
--- /dev/null
+++ b/kursy/templates/allauth/elements/button__entrance.html
@@ -0,0 +1,6 @@
+{% extends "allauth/elements/button.html" %}
+{% load allauth %}
+{% block class %}
+ {{ block.super }}
+ w-full
+{% endblock %}
diff --git a/kursy/templates/allauth/elements/button_group.html b/kursy/templates/allauth/elements/button_group.html
new file mode 100644
index 0000000..c282dc1
--- /dev/null
+++ b/kursy/templates/allauth/elements/button_group.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/details.html b/kursy/templates/allauth/elements/details.html
new file mode 100644
index 0000000..607fe8e
--- /dev/null
+++ b/kursy/templates/allauth/elements/details.html
@@ -0,0 +1,9 @@
+{% load allauth %}
+
+
+ {% slot summary %}
+ {% endslot %}
+
+ {% slot body %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/field.html b/kursy/templates/allauth/elements/field.html
new file mode 100644
index 0000000..9ce7b4d
--- /dev/null
+++ b/kursy/templates/allauth/elements/field.html
@@ -0,0 +1,101 @@
+{% load allauth %}
+{% if attrs.type == "checkbox" or attrs.type == "radio" %}
+
+
+
+ {% if slots.help_text %}
+
+ {% slot help_text %}
+ {% endslot %}
+
+ {% endif %}
+
+{% elif attrs.type == "textarea" %}
+
+
+
+
+{% elif attrs.type == "hidden" %}
+
+{% elif attrs.type == "select" %}
+
+ {% if not attrs.unlabeled %}
+
+ {% endif %}
+
+ {% if attrs.unlabeled %}
+
+ {% endif %}
+
+{% else %}
+
+ {% if not attrs.unlabeled %}
+
+ {% endif %}
+
+ {% if attrs.unlabeled %}
+
+ {% endif %}
+ {% if slots.help_text %}
+
+ {% slot help_text %}
+ {% endslot %}
+
+ {% endif %}
+ {% if attrs.errors %}
+ {% for error in attrs.errors %}
{{ error }}
{% endfor %}
+ {% endif %}
+
+{% endif %}
diff --git a/kursy/templates/allauth/elements/fields.html b/kursy/templates/allauth/elements/fields.html
new file mode 100644
index 0000000..27f5da8
--- /dev/null
+++ b/kursy/templates/allauth/elements/fields.html
@@ -0,0 +1,13 @@
+{% load allauth %}
+{% for bound_field in attrs.form %}
+ {% element field unlabeled=attrs.unlabeled name=bound_field.name type=bound_field.field.widget.input_type required=bound_field.field.required value=bound_field.value id=bound_field.auto_id errors=bound_field.errors placeholder=bound_field.field.widget.attrs.placeholder tabindex=bound_field.field.widget.attrs.tabindex autocomplete=bound_field.field.widget.attrs.autocomplete style=bound_field.field.widget.attrs.style choices=bound_field.field.choices %}
+ {% slot label %}
+ {{ bound_field.label }}
+ {% endslot %}
+ {% if bound_field.field.help_text %}
+ {% slot help_text %}
+ {{ bound_field.field.help_text }}
+ {% endslot %}
+ {% endif %}
+ {% endelement %}
+{% endfor %}
diff --git a/kursy/templates/allauth/elements/form.html b/kursy/templates/allauth/elements/form.html
new file mode 100644
index 0000000..9a5f6fa
--- /dev/null
+++ b/kursy/templates/allauth/elements/form.html
@@ -0,0 +1,14 @@
+{% load allauth %}
+{% for err in attrs.form.non_field_errors %}{{ err }}
{% endfor %}
+
diff --git a/kursy/templates/allauth/elements/form__entrance.html b/kursy/templates/allauth/elements/form__entrance.html
new file mode 100644
index 0000000..abb1a62
--- /dev/null
+++ b/kursy/templates/allauth/elements/form__entrance.html
@@ -0,0 +1,2 @@
+{% extends "allauth/elements/form.html" %}
+{% block form_class %}{% endblock %}
diff --git a/kursy/templates/allauth/elements/h1.html b/kursy/templates/allauth/elements/h1.html
new file mode 100644
index 0000000..f76e46f
--- /dev/null
+++ b/kursy/templates/allauth/elements/h1.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/h1__entrance.html b/kursy/templates/allauth/elements/h1__entrance.html
new file mode 100644
index 0000000..1663419
--- /dev/null
+++ b/kursy/templates/allauth/elements/h1__entrance.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/h2.html b/kursy/templates/allauth/elements/h2.html
new file mode 100644
index 0000000..48f9d1f
--- /dev/null
+++ b/kursy/templates/allauth/elements/h2.html
@@ -0,0 +1 @@
+{% comment %} djlint:off {% endcomment %}{% load allauth %}{% slot %}{% endslot %}
diff --git a/kursy/templates/allauth/elements/h2__entrance.html b/kursy/templates/allauth/elements/h2__entrance.html
new file mode 100644
index 0000000..37fd291
--- /dev/null
+++ b/kursy/templates/allauth/elements/h2__entrance.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/hr.html b/kursy/templates/allauth/elements/hr.html
new file mode 100644
index 0000000..e123ba7
--- /dev/null
+++ b/kursy/templates/allauth/elements/hr.html
@@ -0,0 +1 @@
+
diff --git a/kursy/templates/allauth/elements/img.html b/kursy/templates/allauth/elements/img.html
new file mode 100644
index 0000000..a356bca
--- /dev/null
+++ b/kursy/templates/allauth/elements/img.html
@@ -0,0 +1,5 @@
+
+

+
diff --git a/kursy/templates/allauth/elements/p.html b/kursy/templates/allauth/elements/p.html
new file mode 100644
index 0000000..59c270c
--- /dev/null
+++ b/kursy/templates/allauth/elements/p.html
@@ -0,0 +1 @@
+{% comment %} djlint:off {% endcomment %}{% load allauth %}{% slot %}{% endslot %}
diff --git a/kursy/templates/allauth/elements/panel.html b/kursy/templates/allauth/elements/panel.html
new file mode 100644
index 0000000..1fc867c
--- /dev/null
+++ b/kursy/templates/allauth/elements/panel.html
@@ -0,0 +1,17 @@
+{% load allauth %}
+
+
+
+ {% slot title %}
+ {% endslot %}
+
+ {% slot body %}
+ {% endslot %}
+
+ {% if slots.actions %}
+
+ {% slot actions %}
+ {% endslot %}
+
+ {% endif %}
+
diff --git a/kursy/templates/allauth/elements/provider.html b/kursy/templates/allauth/elements/provider.html
new file mode 100644
index 0000000..cb9b2c3
--- /dev/null
+++ b/kursy/templates/allauth/elements/provider.html
@@ -0,0 +1,6 @@
+{% load allauth %}
+
+ {{ attrs.name }}
+
diff --git a/kursy/templates/allauth/elements/provider_list.html b/kursy/templates/allauth/elements/provider_list.html
new file mode 100644
index 0000000..5752e12
--- /dev/null
+++ b/kursy/templates/allauth/elements/provider_list.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/table.html b/kursy/templates/allauth/elements/table.html
new file mode 100644
index 0000000..e8eed1b
--- /dev/null
+++ b/kursy/templates/allauth/elements/table.html
@@ -0,0 +1,7 @@
+{% load allauth %}
+
+
+ {% slot %}
+ {% endslot %}
+
+
diff --git a/kursy/templates/allauth/elements/tbody.html b/kursy/templates/allauth/elements/tbody.html
new file mode 100644
index 0000000..ddbe91e
--- /dev/null
+++ b/kursy/templates/allauth/elements/tbody.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/td.html b/kursy/templates/allauth/elements/td.html
new file mode 100644
index 0000000..d4cc759
--- /dev/null
+++ b/kursy/templates/allauth/elements/td.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+ |
diff --git a/kursy/templates/allauth/elements/th.html b/kursy/templates/allauth/elements/th.html
new file mode 100644
index 0000000..c344351
--- /dev/null
+++ b/kursy/templates/allauth/elements/th.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+ |
diff --git a/kursy/templates/allauth/elements/thead.html b/kursy/templates/allauth/elements/thead.html
new file mode 100644
index 0000000..6b22db7
--- /dev/null
+++ b/kursy/templates/allauth/elements/thead.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/elements/tr.html b/kursy/templates/allauth/elements/tr.html
new file mode 100644
index 0000000..78b99d5
--- /dev/null
+++ b/kursy/templates/allauth/elements/tr.html
@@ -0,0 +1,5 @@
+{% load allauth %}
+
+ {% slot %}
+ {% endslot %}
+
diff --git a/kursy/templates/allauth/layouts/base.html b/kursy/templates/allauth/layouts/base.html
new file mode 100644
index 0000000..897586d
--- /dev/null
+++ b/kursy/templates/allauth/layouts/base.html
@@ -0,0 +1,26 @@
+
+{% load i18n tailwind_tags %}
+
+
+
+
+
+
+
+ {% block head_title %}{% endblock %}
+
+ {% tailwind_css %}
+ {% block extra_head %}
+ {% endblock extra_head %}
+
+
+{% translate "Skip to main content" %}
+ {% include "header.html" %}
+ {% block body %}
+ {% block content %}
+ {% endblock content %}
+ {% endblock body %}
+ {% block extra_body %}
+ {% endblock extra_body %}
+
+
diff --git a/kursy/templates/allauth/layouts/entrance.html b/kursy/templates/allauth/layouts/entrance.html
new file mode 100644
index 0000000..358c410
--- /dev/null
+++ b/kursy/templates/allauth/layouts/entrance.html
@@ -0,0 +1,26 @@
+{% extends "allauth/layouts/base.html" %}
+{% load i18n allauth %}
+{% block body %}
+
+
+
+
+ {% if messages %}
+ {% for message in messages %}
+ {% element alert level=message.tags %}
+ {% slot message %}
+ {{ message }}
+ {% endslot %}
+ {% endelement %}
+ {% endfor %}
+ {% endif %}
+
+
+ {% block content %}{% endblock %}
+
+
+
+
+
+
+{% endblock %}
diff --git a/kursy/templates/allauth/layouts/manage.html b/kursy/templates/allauth/layouts/manage.html
new file mode 100644
index 0000000..f8cc372
--- /dev/null
+++ b/kursy/templates/allauth/layouts/manage.html
@@ -0,0 +1,68 @@
+{% extends "allauth/layouts/base.html" %}
+{% load allauth %}
+{% block body %}
+
+
+
+
+ {% if messages %}
+
+ {% for message in messages %}
+ {% element alert level=message.tags %}
+ {% slot message %}
+ {{ message }}
+ {% endslot %}
+ {% endelement %}
+ {% endfor %}
+
+ {% endif %}
+ {% block content %}{% endblock %}
+
+
+
+{% endblock %}