# ── Bloquear archivos ocultos (.env, .git, etc.) ──────────────────
<FilesMatch "^\.">
    Require all denied
</FilesMatch>

# ── superaccess.php solo GET ───────────────────────────────────────
<Files "superaccess.php">
    <LimitExcept GET>
        Deny from all
    </LimitExcept>
</Files>

# ── Bloquear acceso directo a archivos sensibles ───────────────────
<FilesMatch "\.(php)$">
    <If "%{THE_REQUEST} !~ /api\.php/">
        # Solo api.php debería ser accesible directamente
    </If>
</FilesMatch>

# ── Deshabilitar listado de directorios ────────────────────────────
Options -Indexes

# ── Bloquear acceso directo a carpetas internas ────────────────────
<IfModule mod_rewrite.c>
    RewriteEngine On

    # Bloquear acceso directo a controladores, dao, modelos, utils
    RewriteRule ^(controladores|dao|modelos|utils)/.*\.php$ - [F,L]
</IfModule>

# ── Headers de seguridad ───────────────────────────────────────────
<IfModule mod_headers.c>
    Header always set X-Frame-Options "DENY"
    Header always set X-Content-Type-Options "nosniff"
    Header always set Referrer-Policy "strict-origin-when-cross-origin"
    Header always set X-XSS-Protection "1; mode=block"
</IfModule>