@media (max-width: 1024px) {
    .main-grid {
        grid-template-columns: 1fr;
    }
    
    .stats-grid {
        grid-template-columns: 1fr;
    }
    
    .container {
        padding: 1.5rem;
    }
}

@media (max-width: 768px) {
    .title {
        font-size: clamp(2rem, 8vw, 3rem);
    }
    
    .subtitle {
        font-size: 1rem;
    }
    
    .container {
        padding: 1rem;
    }
    
    .chart-section,
    .controls-section,
    .stats-card {
        padding: 1.5rem;
    }
    
    .chart-container {
        height: 400px;
    }
    
    .performance-table {
        font-size: 0.7rem;
    }
    
    .performance-table th,
    .performance-table td {
        padding: 0.5rem 0.25rem;
    }
}

@media (max-width: 480px) {
    .header {
        margin-bottom: 2rem;
    }
    
    .main-grid {
        gap: 1.5rem;
        margin-bottom: 2rem;
    }
    
    .chart-container {
        height: 300px;
    }
    
    .chart-section,
    .controls-section,
    .stats-card {
        padding: 1rem;
        border-radius: 15px;
    }
    
    .control-group {
        margin-bottom: 1.5rem;
    }
    
    .legend-item {
        margin-bottom: 0.5rem;
        padding: 0.25rem;
    }
    
    .performance-table {
        font-size: 0.6rem;
    }
} 