"""
Art Theory, Composition, and Critique
"""
from typing import Dict, List

class ArtTheory:
    def __init__(self):
        self.principles = {
            'balance': 'Distribution of visual weight',
            'contrast': 'Difference between elements',
            'emphasis': 'Creating focal points',
            'movement': 'Path eye follows through art',
            'pattern': 'Repetition of elements',
            'rhythm': 'Visual tempo',
            'unity': 'Harmony of all elements'
        }
        
        self.color_theory = {
            'primary': ['red', 'blue', 'yellow'],
            'secondary': ['orange', 'green', 'purple'],
            'complementary_pairs': [
                ('red', 'green'),
                ('blue', 'orange'),
                ('yellow', 'purple')
            ]
        }
        
        self.composition_rules = [
            'Rule of thirds',
            'Golden ratio',
            'Leading lines',
            'Framing',
            'Symmetry',
            'Depth'
        ]
    
    def critique_artwork(self, artwork_description: str) -> List[str]:
        """Provide art critique"""
        critique = []
        critique.append("Analyzing composition and technique...")
        
        # Check for composition principles
        for principle in self.principles:
            if principle in artwork_description.lower():
                critique.append(f"✓ Good use of {principle}")
        
        # Color analysis
        for color in self.color_theory['primary']:
            if color in artwork_description.lower():
                critique.append(f"✓ Primary color '{color}' used effectively")
        
        return critique
    
    def suggest_improvements(self, current_style: str) -> List[str]:
        """Suggest artistic improvements"""
        return [
            "Experiment with different color palettes",
            "Study works from master artists",
            "Practice daily sketching",
            "Explore new mediums",
            "Focus on light and shadow",
            "Study anatomy and perspective"
        ]
