THEMES = {
    "aurora": {"accent": "cyan", "surface": "dark", "mood": "neon"},
    "dark": {"accent": "white", "surface": "dark", "mood": "classic"},
    "light": {"accent": "blue", "surface": "light", "mood": "clean"},
    "neon_night": {"accent": "magenta", "surface": "dark", "mood": "futuristic"},
    "rose_gold": {"accent": "rose", "surface": "soft", "mood": "luxury"},
    "oceanic": {"accent": "teal", "surface": "deep", "mood": "cool"},
    "ember": {"accent": "orange", "surface": "warm", "mood": "energetic"},
    "orchid": {"accent": "violet", "surface": "dark", "mood": "elegant"},
    "frost": {"accent": "ice", "surface": "cold", "mood": "clean"},
    "royal": {"accent": "gold", "surface": "night", "mood": "premium"},
}

class ThemeManager:
    def __init__(self, default="aurora"):
        self.current = default if default in THEMES else "aurora"

    def set_theme(self, name: str) -> str:
        if name in THEMES:
            self.current = name
        return self.current

    def get_theme(self):
        return THEMES.get(self.current, THEMES["aurora"])

    def list_themes(self):
        return list(THEMES.keys())
