diff --git a/assets/css/inputs.css b/assets/css/inputs.css
index b8f29ea..d4b9d96 100644
--- a/assets/css/inputs.css
+++ b/assets/css/inputs.css
@@ -1,4 +1,5 @@
.input {
+ width: 15rem;
box-sizing: border-box;
padding: .5rem .75rem;
font-size: 1rem;
diff --git a/components/emails/password.vue b/components/emails/password.vue
new file mode 100644
index 0000000..9da8f29
--- /dev/null
+++ b/components/emails/password.vue
@@ -0,0 +1,106 @@
+
+
+
+
+
+
+
+ Your traxxx password has been changed.
+
+
+
+
+ Hi, {{ user.username }}
+
+ Your traxxx password was changed.
+
+ Device used to change your password:
+
+
+
+
+
IP:
+
{{ ip }}
+
+
+
Country:
+
{{ country }}
+
+
+
Timestamp:
+
{{ format(timestamp, 'yyyy-MM-dd hh:mm:ss') }}
+
+
+
+
+ If this change was made by you, you can ignore this e-mail. If this was not you, please contact us immediately.
+
+
+
+
diff --git a/components/emails/verify.vue b/components/emails/verify.vue
new file mode 100644
index 0000000..0f1bd26
--- /dev/null
+++ b/components/emails/verify.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+ Please verify your traxxx e-mail address.
+
+
+
+
+ Hi, {{ user.username }}
+
+
+ Thank you for creating your traxxx account!
+ You requested to {{ trigger === 'verify' ? 'verify' : 'change' }} the e-mail address for your traxxx account.
+
+ Please confirm your e-mail address by clicking the button below:
+
+
+
+
+
+ The link will expire in {{ config.auth.emailTokenExpiry }} minutes, or when you request an(other) e-mail change or verification.
+ If you did not sign up, you can safely ignore this e-mail.
+ If you did not request this {{ trigger === 'verify' ? 'verification' : 'change' }}, you can safely ignore this e-mail.
+
+
+
+
+
diff --git a/components/form/password.vue b/components/form/password.vue
new file mode 100644
index 0000000..7083b5a
--- /dev/null
+++ b/components/form/password.vue
@@ -0,0 +1,92 @@
+
+
+
+