# Normalize line endings so Windows / WSL checkouts don't break the build.
#
# With git's default `core.autocrlf=true` on Windows, text files are checked out
# with CRLF. The Docker builder runs `bash scripts/*.sh` (with `set -o pipefail`)
# and Node executes `scripts/*.mjs` — CRLF turns the shebang/`\r` into errors and
# the build fails with a confusing exit 127. Pin build- and runtime-critical text
# files to LF regardless of the client's git config.

# Let git detect text vs binary and normalize to LF in the repository.
* text=auto

# Always LF in the working tree, on every platform.
*.sh        text eol=lf
*.bash      text eol=lf
Dockerfile  text eol=lf
*.mjs       text eol=lf
*.cjs       text eol=lf
*.yml       text eol=lf
*.yaml      text eol=lf

# Binary assets — never normalize.
*.png   binary
*.jpg   binary
*.jpeg  binary
*.gif   binary
*.ico   binary
*.pdf   binary
*.woff  binary
*.woff2 binary
*.ttf   binary
*.otf   binary
