diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml
index cf1ecb4..bf2dddc 100644
--- a/.gitea/workflows/build.yml
+++ b/.gitea/workflows/build.yml
@@ -44,7 +44,11 @@ jobs:
unzip -oq dalamud.zip -d "$hooks"
- name: Restore
- run: dotnet restore Craftimizer/Craftimizer.csproj
+ run: dotnet restore Craftimizer/Craftimizer.csproj -p:Platform=x64
- name: Build (Release)
- run: dotnet build Craftimizer/Craftimizer.csproj --configuration Release --no-restore
+ # -p:Platform=x64 is required: csproj declares x64
+ # and win-x64, but project-level
+ # dotnet build defaults to AnyCPU and emits to bin/Release/ instead of
+ # bin/x64/Release/. The release workflow's find step expects the latter.
+ run: dotnet build Craftimizer/Craftimizer.csproj --configuration Release --no-restore -p:Platform=x64
diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml
index 90e26ac..e71c989 100644
--- a/.gitea/workflows/release.yml
+++ b/.gitea/workflows/release.yml
@@ -58,7 +58,11 @@ jobs:
unzip -oq dalamud.zip -d "$hooks"
- name: Build (Release)
- run: dotnet build Craftimizer/Craftimizer.csproj --configuration Release
+ # -p:Platform=x64 is required: csproj declares x64
+ # and win-x64, but project-level
+ # dotnet build defaults to AnyCPU and emits to bin/Release/ instead of
+ # bin/x64/Release/. The Locate latest.zip step below expects the latter.
+ run: dotnet build Craftimizer/Craftimizer.csproj --configuration Release -p:Platform=x64
- name: Locate latest.zip
id: locate