diff --git a/script.js b/script.js
index 63d1bbf..1381ce0 100644
--- a/script.js
+++ b/script.js
@@ -2,13 +2,34 @@
const darkModeToggle = document.getElementById('darkModeToggle');
const body = document.body;
-darkModeToggle.addEventListener('click', () => {
- body.dataset.theme = body.dataset.theme === 'dark' ? 'light' : 'dark';
+// Initialize theme from localStorage or system preference
+document.addEventListener('DOMContentLoaded', () => {
+ const savedTheme = localStorage.getItem('theme');
+ if (savedTheme) {
+ body.dataset.theme = savedTheme;
+ } else {
+ // Check system preference if no saved theme
+ const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
+ body.dataset.theme = prefersDark ? 'dark' : 'light';
+ localStorage.setItem('theme', body.dataset.theme);
+ }
+
+ // Update toggle button icon
darkModeToggle.innerHTML = body.dataset.theme === 'dark'
? ''
: '';
});
+darkModeToggle.addEventListener('click', () => {
+ const newTheme = body.dataset.theme === 'dark' ? 'light' : 'dark';
+ body.dataset.theme = newTheme;
+ localStorage.setItem('theme', newTheme);
+
+ darkModeToggle.innerHTML = newTheme === 'dark'
+ ? ''
+ : '';
+});
+
// Mobile menu toggle
const menuToggle = document.getElementById('menuToggle');
const sidebar = document.querySelector('.sidebar');