diff --git a/addons/default/visiosoft/base-theme/resources/css/error.css b/addons/default/visiosoft/base-theme/resources/css/error.css
new file mode 100644
index 000000000..079a4a8be
--- /dev/null
+++ b/addons/default/visiosoft/base-theme/resources/css/error.css
@@ -0,0 +1,20 @@
+body {
+ height: 100vh;
+ background: rgb(255, 255, 255);
+ background: radial-gradient(circle, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 100%);
+}
+
+.color-error-message {
+ color: #555555;
+}
+
+.error-image {
+ max-width: 400px;
+}
+
+.error-btn-home {
+ color: #212529 !important;
+ font-weight: bold;
+ border: 2px solid #555555 !important;
+ text-decoration: none !important;
+}
\ No newline at end of file
diff --git a/addons/default/visiosoft/base-theme/resources/images/errors/403.png b/addons/default/visiosoft/base-theme/resources/images/errors/403.png
new file mode 100644
index 000000000..10ae35e04
Binary files /dev/null and b/addons/default/visiosoft/base-theme/resources/images/errors/403.png differ
diff --git a/addons/default/visiosoft/base-theme/resources/images/errors/404.png b/addons/default/visiosoft/base-theme/resources/images/errors/404.png
new file mode 100644
index 000000000..152155677
Binary files /dev/null and b/addons/default/visiosoft/base-theme/resources/images/errors/404.png differ
diff --git a/addons/default/visiosoft/base-theme/resources/lang/en/errors.php b/addons/default/visiosoft/base-theme/resources/lang/en/errors.php
new file mode 100644
index 000000000..5a7e28aaa
--- /dev/null
+++ b/addons/default/visiosoft/base-theme/resources/lang/en/errors.php
@@ -0,0 +1,9 @@
+ 'Not Found',
+ '403_title' => 'Forbidden',
+ '404_message' => 'The page you were looking for was not found.',
+ '403_message' => 'Access to this resources on the site is denied!',
+ 'home_page' => 'Go to Home Page',
+];
\ No newline at end of file
diff --git a/addons/default/visiosoft/base-theme/resources/views/errors/403.twig b/addons/default/visiosoft/base-theme/resources/views/errors/403.twig
new file mode 100644
index 000000000..dd2f4283e
--- /dev/null
+++ b/addons/default/visiosoft/base-theme/resources/views/errors/403.twig
@@ -0,0 +1,22 @@
+{% extends "visiosoft.theme.base::layouts/error" %}
+
+{% block styles %}
+ {{ asset_style('visiosoft.theme.base::css/error.css') }}
+{% endblock %}
+
+{% block content %}
+
+
+
.url }})
+
+
{{ trans('visiosoft.theme.base::errors.403_title') }}
+
{{ trans('visiosoft.theme.base::errors.403_message') }}
+
+ {% if auth_check() %}
+
{{ trans('visiosoft.theme.base::field.logout.name') }}
+ {% endif %}
+
{{ setting_value('streams::domain', 'openclassify.com') }}
+
+{% endblock %}
\ No newline at end of file
diff --git a/addons/default/visiosoft/base-theme/resources/views/errors/404.twig b/addons/default/visiosoft/base-theme/resources/views/errors/404.twig
new file mode 100644
index 000000000..6cd5a85d2
--- /dev/null
+++ b/addons/default/visiosoft/base-theme/resources/views/errors/404.twig
@@ -0,0 +1,22 @@
+{% extends "visiosoft.theme.base::layouts/error" %}
+
+{% block styles %}
+ {{ asset_style('visiosoft.theme.base::css/error.css') }}
+{% endblock %}
+
+{% block content %}
+
+
+
.url }})
+
+
{{ trans('visiosoft.theme.base::errors.404_title') }}
+
{{ trans('visiosoft.theme.base::errors.404_message') }}
+
+ {% if auth_check() %}
+
{{ trans('visiosoft.theme.base::field.logout.name') }}
+ {% endif %}
+
{{ setting_value('streams::domain', 'openclassify.com') }}
+
+{% endblock %}
\ No newline at end of file
diff --git a/addons/default/visiosoft/base-theme/resources/views/layouts/error.twig b/addons/default/visiosoft/base-theme/resources/views/layouts/error.twig
new file mode 100644
index 000000000..4a34650d5
--- /dev/null
+++ b/addons/default/visiosoft/base-theme/resources/views/layouts/error.twig
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+ {% include "visiosoft.theme.base::partials/metadata" %}
+ {% block styles %}{% endblock %}
+
+
+
+{% block content %}{% endblock %}
+
+
+
\ No newline at end of file
diff --git a/addons/default/visiosoft/base-theme/src/BaseThemeServiceProvider.php b/addons/default/visiosoft/base-theme/src/BaseThemeServiceProvider.php
index 55b13cff5..6748b5a58 100644
--- a/addons/default/visiosoft/base-theme/src/BaseThemeServiceProvider.php
+++ b/addons/default/visiosoft/base-theme/src/BaseThemeServiceProvider.php
@@ -127,8 +127,8 @@ class BaseThemeServiceProvider extends AddonServiceProvider
* @type array|null
*/
protected $mobile = [
- //'streams::errors/404' => 'module::mobile/errors/404',
- //'streams::errors/500' => 'module::mobile/errors/500',
+ 'streams::errors/404' => 'visiosoft.theme.base::errors/404',
+ 'streams::errors/403' => 'visiosoft.theme.base::errors/403',
'anomaly.module.users::login' => 'visiosoft.theme.base::addons/anomaly/users-module/login',
'anomaly.module.users::register' => 'visiosoft.theme.base::addons/anomaly/users-module/register',
'anomaly.module.users::password/forgot' => 'visiosoft.theme.base::addons/anomaly/users-module/password/forgot',