{/* Buttons */}
diff --git a/lib/trip-dates.ts b/lib/trip-dates.ts
index 927b482..a5b1839 100644
--- a/lib/trip-dates.ts
+++ b/lib/trip-dates.ts
@@ -40,6 +40,20 @@ export function formatLocalCalendarYmd(d: Date): string {
return `${y}-${m}-${day}`;
}
+/**
+ * Kebalikan `formatLocalCalendarYmd`: `YYYY-MM-DD` → `Date` di tengah malam
+ * **lokal** browser. Dipakai untuk seed nilai awal date picker dari query
+ * string / DB tanpa pergeseran timezone. Return null kalau format tidak valid.
+ */
+export function localCalendarDateFromYmd(ymd: string): Date | null {
+ const parts = ymd.trim().slice(0, 10).split("-").map(Number);
+ const y = parts[0];
+ const m = parts[1];
+ const d = parts[2];
+ if (!y || !m || !d) return null;
+ return new Date(y, m - 1, d);
+}
+
/**
* Simpan `trip.date` / `trip.endDate`: string `YYYY-MM-DD` diartikan sebagai
* **hari kalender UTC** yang sama (selaras dengan filter Open Trip).