diff --git a/src/pages/AdminSettings.tsx b/src/pages/AdminSettings.tsx index 3749d3a..713d2fd 100644 --- a/src/pages/AdminSettings.tsx +++ b/src/pages/AdminSettings.tsx @@ -98,6 +98,12 @@ const MoonIcon = () => ( ) +const MenuIcon = () => ( + + + +) + // ============ SIDEBAR MENU ITEMS ============ interface MenuItem { id: string @@ -158,7 +164,7 @@ export default function AdminSettings() { const [editingName, setEditingName] = useState(false) const [newName, setNewName] = useState('') const [expandedSections, setExpandedSections] = useState>(new Set(['presets'])) - const [sidebarCollapsed, setSidebarCollapsed] = useState(false) + const [mobileMenuOpen, setMobileMenuOpen] = useState(false) // Favorites hook const { favorites, toggleFavorite, isFavorite } = useFavoriteSettings() @@ -844,25 +850,41 @@ export default function AdminSettings() { // ============ RENDER ============ return ( -
- {/* Sidebar */} -
+
+ {/* Mobile overlay */} + {mobileMenuOpen && ( +
setMobileMenuOpen(false)} + /> + )} + + {/* Sidebar - hidden on mobile, visible on desktop */} +
{/* Header */}
- {!sidebarCollapsed && ( -

{t('admin.settings.title')}

- )} +

{t('admin.settings.title')}

+ {/* Close button on mobile */} +
{/* Menu */} -
{/* Main content */} -
- {/* Search header */} -
-
-

+
+ {/* Header */} +
+
+ {/* Mobile menu button */} + + +

{t(`admin.settings.${activeSection}`)} {activeSubCategory && ( - / {t(`admin.settings.categories.${activeSubCategory}`, activeSubCategory)} + / {t(`admin.settings.categories.${activeSubCategory}`, activeSubCategory)} )}

+
-
+ + {/* Search - hidden on very small screens */} +
setSearchQuery(e.target.value)} placeholder={t('admin.settings.searchPlaceholder')} - className="w-64 pl-10 pr-4 py-2 rounded-xl bg-dark-800 border border-dark-700 text-dark-100 placeholder-dark-500 focus:outline-none focus:border-accent-500" + className="w-48 lg:w-64 pl-10 pr-4 py-2 rounded-xl bg-dark-800 border border-dark-700 text-dark-100 placeholder-dark-500 focus:outline-none focus:border-accent-500 text-sm" />
+ + {/* Mobile search */} +
+ setSearchQuery(e.target.value)} + placeholder={t('admin.settings.searchPlaceholder')} + className="w-full pl-10 pr-4 py-2 rounded-xl bg-dark-800 border border-dark-700 text-dark-100 placeholder-dark-500 focus:outline-none focus:border-accent-500 text-sm" + /> +
+ +
+
{/* Content */} -
+
{activeSection === 'favorites' && renderFavoritesContent()} {activeSection === 'branding' && renderBrandingContent()} {activeSection === 'theme' && renderThemeContent()}