__pycache__/
*.pyc
.DS_Store
.pytest_cache/
.venv/
media/
.superpowers/
*.egg-info/
# Simulator media. Throwaway / look-tuning binaries stay out of git; the media
# that has GRADUATED into the actual experience — the curated clip bases, the
# per-scale audio, and the baked altitude morphs the manifest references — is
# committed via git-LFS (see .gitattributes), negated back in below. Stale/unused
# media (e.g. the parked right_variants) stays ignored.
simulator/sample_media/**/*.mp4
simulator/sample_media/**/*.wav
simulator/sample_media/**/*.mp3
simulator/sample_media/**/*.ogg
simulator/sample_media/**/*.m4a
# ...EXCEPT the graduated, used experience media (versioned via git-LFS):
!simulator/sample_media/**/base.mp4
!simulator/sample_media/transitions/*.mp4
!simulator/sample_media/**/*.mp3
# Local-only candidate review galleries (re-buildable; not shipped content).
simulator/static/review.html
simulator/static/review_audio.html
simulator/static/review_binaural.html
simulator/static/review_music.html

# Editor annotation/comment-thread metadata (not project content)
.threads/

# Static build outputs (tools/build_static.py)
/dist/
/dist-media/

# Playwright e2e artifacts (should never be committed)
simulator/e2e/test-results/
simulator/e2e/playwright-report/
