diff --git a/resources/views/errors/401.blade.php b/resources/views/errors/401.blade.php
new file mode 100644
index 000000000..a6f5e4edf
--- /dev/null
+++ b/resources/views/errors/401.blade.php
@@ -0,0 +1,8 @@
+@props([
+'code' => '401',
+'title' => 'Unauthorized',
+'subtitle' => 'You are not authorized to access this resource.',
+'icon' => 'tabler-exclamation-circle'
+])
+
+@extends('errors::layout')
\ No newline at end of file
diff --git a/resources/views/errors/403.blade.php b/resources/views/errors/403.blade.php
new file mode 100644
index 000000000..ef832ee42
--- /dev/null
+++ b/resources/views/errors/403.blade.php
@@ -0,0 +1,8 @@
+@props([
+'code' => '403',
+'title' => 'Forbidden',
+'subtitle' => $exception->getMessage(),
+'icon' => 'tabler-exclamation-circle'
+])
+
+@extends('errors::layout')
\ No newline at end of file
diff --git a/resources/views/errors/404.blade.php b/resources/views/errors/404.blade.php
new file mode 100644
index 000000000..736e725d5
--- /dev/null
+++ b/resources/views/errors/404.blade.php
@@ -0,0 +1,8 @@
+@props([
+'code' => '404',
+'title' => 'Not found',
+'subtitle' => 'The requested resource was not found.',
+'icon' => 'tabler-zoom-question'
+])
+
+@extends('errors::layout')
\ No newline at end of file
diff --git a/resources/views/errors/418.blade.php b/resources/views/errors/418.blade.php
new file mode 100644
index 000000000..447e40a24
--- /dev/null
+++ b/resources/views/errors/418.blade.php
@@ -0,0 +1,8 @@
+@props([
+'code' => '418',
+'title' => 'I am a teapot',
+'subtitle' => 'What happened?',
+'icon' => 'tabler-teapot'
+])
+
+@extends('errors::layout')
\ No newline at end of file
diff --git a/resources/views/errors/500.blade.php b/resources/views/errors/500.blade.php
new file mode 100644
index 000000000..cbb68a08d
--- /dev/null
+++ b/resources/views/errors/500.blade.php
@@ -0,0 +1,8 @@
+@props([
+'code' => '500',
+'title' => 'Server Error',
+'subtitle' => fn () => auth()->user()?->isRootAdmin() ? $exception->getMessage() : 'Something went wrong.',
+'icon' => 'tabler-bug'
+])
+
+@extends('errors::layout')
\ No newline at end of file
diff --git a/resources/views/errors/503.blade.php b/resources/views/errors/503.blade.php
new file mode 100644
index 000000000..52ac00e53
--- /dev/null
+++ b/resources/views/errors/503.blade.php
@@ -0,0 +1,8 @@
+@props([
+'code' => '503',
+'title' => 'Maintenance',
+'subtitle' => 'This site is currently down for maintenance.',
+'icon' => 'tabler-traffic-cone'
+])
+
+@extends('errors::layout')
\ No newline at end of file
diff --git a/resources/views/errors/layout.blade.php b/resources/views/errors/layout.blade.php
new file mode 100644
index 000000000..6e6048fbe
--- /dev/null
+++ b/resources/views/errors/layout.blade.php
@@ -0,0 +1,82 @@
+
+ filament()->hasDarkModeForced(),
+ ])>
+
+
+
+
+
+
+
+
+ {{ $title }} - {{ config('app.name') }}
+
+
+ @filamentStyles
+
+ {{ filament()->getTheme()->getHtml() }}
+ {{ filament()->getFontHtml() }}
+
+
+
+ @if (! filament()->hasDarkMode())
+
+ @elseif (filament()->hasDarkModeForced())
+
+ @else
+
+ @endif
+
+
+
+
+
+
+