# Normalize line endings to LF in the repo, convert to OS native on checkout
* text=auto eol=lf

# Python source — always LF
*.py text eol=lf
*.pyi text eol=lf

# Config files — always LF
*.toml text eol=lf
*.yaml text eol=lf
*.yml text eol=lf
*.cfg text eol=lf
*.ini text eol=lf
*.json text eol=lf

# Docs and markdown — always LF
*.md text eol=lf
*.rst text eol=lf
*.txt text eol=lf

# Shell scripts — always LF (important if contributors run on WSL or Mac)
*.sh text eol=lf

# Windows batch files — CRLF on Windows
*.bat text eol=crlf
*.cmd text eol=crlf

# Notebooks — LF, treated as text for diffs
*.ipynb text eol=lf

# Binary files — no line ending conversion
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.pdf binary
*.pkl binary
*.pt binary
*.onnx binary
*.parquet binary
