diff --git a/src/routes/forgot-password/+page.svelte b/src/routes/forgot-password/+page.svelte
index e702c06..9bb4d7f 100644
--- a/src/routes/forgot-password/+page.svelte
+++ b/src/routes/forgot-password/+page.svelte
@@ -1,49 +1,57 @@
-
-
Forgot Password
-
+
{#if form?.success}
-
- If an account with that email exists, we've sent a password reset link.
+
+
Check your email
+
+ If an account with that email exists, we've sent a password reset link.
+
- {/if}
+ {:else}
+ {#if form?.error && !form?.success}
+
+ {form.error}
+
+ {/if}
- {#if form?.error && !form?.success}
-
+
Forgot Password
+
+ Enter your email and we'll send you a link to reset your password.
+
+
+
+
+
+
+
+
+
+
+
- {form.error}
-
+ Back to Login
+
{/if}
-
-
-
-
- Back to Login
-
-
+
diff --git a/src/routes/layout.css b/src/routes/layout.css
index bb67d48..530afd5 100644
--- a/src/routes/layout.css
+++ b/src/routes/layout.css
@@ -2,95 +2,9 @@
@plugin '@tailwindcss/forms';
@plugin '@tailwindcss/typography';
-/* Use class-based dark mode instead of prefers-color-scheme */
-@custom-variant dark (&:where(.dark, .dark *));
-
-/* ------------------------------------------------------------------ */
-/* Wireframe base — remap all non-gray colors to grayscale */
-/* Use var(--color-gray-N) so dark-mode inversion flows through */
-/* ------------------------------------------------------------------ */
-@theme {
- --color-blue-50: var(--color-gray-100);
- --color-blue-100: var(--color-gray-200);
- --color-blue-200: var(--color-gray-300);
- --color-blue-300: var(--color-gray-400);
- --color-blue-400: var(--color-gray-500);
- --color-blue-500: var(--color-gray-500);
- --color-blue-600: var(--color-gray-600);
- --color-blue-700: var(--color-gray-700);
- --color-blue-800: var(--color-gray-800);
- --color-green-50: var(--color-gray-100);
- --color-green-100: var(--color-gray-200);
- --color-green-200: var(--color-gray-300);
- --color-green-300: var(--color-gray-400);
- --color-green-400: var(--color-gray-500);
- --color-green-500: var(--color-gray-500);
- --color-green-600: var(--color-gray-600);
- --color-green-700: var(--color-gray-700);
- --color-green-800: var(--color-gray-800);
- --color-red-50: var(--color-gray-100);
- --color-red-100: var(--color-gray-200);
- --color-red-200: var(--color-gray-300);
- --color-red-300: var(--color-gray-400);
- --color-red-400: var(--color-gray-500);
- --color-red-500: var(--color-gray-500);
- --color-red-600: var(--color-gray-600);
- --color-red-700: var(--color-gray-700);
- --color-red-800: var(--color-gray-800);
- --color-purple-50: var(--color-gray-100);
- --color-purple-100: var(--color-gray-200);
- --color-purple-200: var(--color-gray-300);
- --color-purple-300: var(--color-gray-400);
- --color-purple-400: var(--color-gray-500);
- --color-purple-500: var(--color-gray-500);
- --color-purple-600: var(--color-gray-600);
- --color-purple-700: var(--color-gray-700);
- --color-purple-800: var(--color-gray-800);
- --color-purple-900: var(--color-gray-900);
- --color-slate-50: var(--color-gray-50);
- --color-slate-100: var(--color-gray-100);
- --color-slate-200: var(--color-gray-200);
- --color-slate-300: var(--color-gray-300);
- --color-slate-400: var(--color-gray-400);
- --color-slate-500: var(--color-gray-500);
- --color-slate-600: var(--color-gray-600);
- --color-slate-700: var(--color-gray-700);
- --color-slate-800: var(--color-gray-800);
- --color-slate-900: var(--color-gray-900);
-
- --radius: 0px;
- --radius-sm: 0px;
- --radius-md: 0px;
- --radius-lg: 0px;
- --radius-xl: 0px;
- --radius-2xl: 0px;
- --radius-3xl: 0px;
-
- --shadow-sm: 0 0 #0000;
- --shadow: 0 0 #0000;
- --shadow-md: 0 0 #0000;
- --shadow-lg: 0 0 #0000;
- --shadow-xl: 0 0 #0000;
- --shadow-2xl: 0 0 #0000;
-}
-
-/* ------------------------------------------------------------------ */
-/* Dark mode form elements */
-/* ------------------------------------------------------------------ */
-.dark input,
-.dark select,
-.dark textarea {
- background-color: #1f2937;
- color: #f9fafb;
- border-color: #374151;
-}
-
-/* ------------------------------------------------------------------ */
-/* Force-disable transitions, animations, and remaining decoration */
-/* ------------------------------------------------------------------ */
-*,
-::before,
-::after {
- transition: none !important;
- animation: none !important;
+@layer base {
+ body {
+ -webkit-font-smoothing: antialiased;
+ text-rendering: optimizeLegibility;
+ }
}
diff --git a/src/routes/login/+page.svelte b/src/routes/login/+page.svelte
index 3b87660..c9a2a12 100644
--- a/src/routes/login/+page.svelte
+++ b/src/routes/login/+page.svelte
@@ -1,6 +1,7 @@
-
- {#if verified}
-
- Your email has been verified. You can now log in.
-
- {/if}
- {#if error}
-
{error}
- {/if}
-
-
-
Forgot Password?
-
Don't have an account? Register
+ {#if verified}
+
+ Your email has been verified. You can now log in.
-
-
Or
-
+ {/if}
+
+ {#if error}
+
+ {error}
+ {/if}
+
+
+
+
+
+ Forgot Password?
+
+
+ Don't have an account?
+
+ Register
+
+
+
+
+
+
+
diff --git a/src/routes/register/+page.svelte b/src/routes/register/+page.svelte
index 8b042e4..ad8bbc1 100644
--- a/src/routes/register/+page.svelte
+++ b/src/routes/register/+page.svelte
@@ -1,60 +1,128 @@
-
- {#if form?.success}
-
-
-
Account created!
-
- We've sent a verification email. Check your inbox and click the link to verify your
- email address, then log in.
-
-
-
- {:else}
-
- {#if form?.error}
-
- {form.error}
-
- {/if}
-
-
Or
-
+ {#if form?.success}
+
+
Account created!
+
+ We've sent a verification email. Check your inbox and click the link to verify your email
+ address, then log in.
+
+
+ Go to Login
+
+
+ {:else}
+ {#if form?.error}
+
+ {form.error}
{/if}
-
+
+
+
+
+
+
+
+
+
+ Already have an account?
+
+ Login
+
+
+ {/if}
diff --git a/src/routes/reset-password/+page.svelte b/src/routes/reset-password/+page.svelte
index f74f746..7d1c957 100644
--- a/src/routes/reset-password/+page.svelte
+++ b/src/routes/reset-password/+page.svelte
@@ -1,42 +1,53 @@
-
-
Reset Password
-
+
{#if form?.error}
-
+