Index: backend/src/main/resources/application.properties
===================================================================
--- backend/src/main/resources/application.properties	(revision 5c20c64185ecffb14d2efb75c8120977f8a6bcec)
+++ backend/src/main/resources/application.properties	(revision a8381b18babc398c094b70c3ca5dc6cb0483c327)
@@ -42,6 +42,8 @@
 # ============================
 spring.datasource.hikari.pool-name=trekrHikariPool
-spring.datasource.hikari.maximum-pool-size=20
-spring.datasource.hikari.minimum-idle=5
+# Remote PostgreSQL (especially via SSH tunnel) often has a small max_connections.
+# Use conservative defaults to avoid exhausting connection slots; override via env if needed.
+spring.datasource.hikari.maximum-pool-size=${SPRING_DATASOURCE_HIKARI_MAX_POOL_SIZE:4}
+spring.datasource.hikari.minimum-idle=${SPRING_DATASOURCE_HIKARI_MIN_IDLE:0}
 spring.datasource.hikari.connection-timeout=30000
 spring.datasource.hikari.idle-timeout=600000
