server {
    listen 80;
    server_name localhost;

    root /usr/share/nginx/html;
    index index.html;

    # Compresión para HTML/CSS/JS
    # text/html ya está incluido por defecto en nginx, no repetir
    gzip on;
    gzip_types text/css application/javascript application/json image/svg+xml;
    gzip_min_length 256;

    # Cacheo para assets estáticos (feria local)
    location ~* \.(png|jpg|jpeg|gif|svg|ico|webp)$ {
        expires 7d;
        add_header Cache-Control "public, immutable";
    }

    # Descargas: forzar descarga en lugar de abrir en navegador
    location /downloads/ {
        add_header Content-Disposition "attachment";
        sendfile on;
        tcp_nopush on;
    }

    # Rutas limpias
    location / {
        try_files $uri $uri/ $uri.html =404;
    }

    # Página 404 personalizada
    error_page 404 /404.html;
}
