diff --git a/src/app/api/settings/branding/route.ts b/src/app/api/settings/branding/route.ts
index b67d04e2..932ce8e3 100644
--- a/src/app/api/settings/branding/route.ts
+++ b/src/app/api/settings/branding/route.ts
@@ -60,6 +60,7 @@ export async function PUT(request: NextRequest) {
logoUrl: parsed.data.logoUrl ?? null,
accentColor: parsed.data.accentColor ?? null,
tagline: parsed.data.tagline ?? null,
+ fontFamily: parsed.data.fontFamily ?? null,
});
return NextResponse.json(saved, { status: 200 });
diff --git a/src/app/invoice/new/page.tsx b/src/app/invoice/new/page.tsx
index 5960f6c3..5f01f216 100644
--- a/src/app/invoice/new/page.tsx
+++ b/src/app/invoice/new/page.tsx
@@ -1,6 +1,7 @@
"use client";
-import { useState, useEffect, useCallback, useMemo, Suspense } from "react";
+import { useState, useEffect, useCallback, useMemo, useRef, Suspense } from "react";
+import { useRegisterShortcuts } from "@/context/ShortcutRegistry";
import { useRouter, useSearchParams, usePathname } from "next/navigation";
import dynamic from "next/dynamic";
import Stepper, { type Step } from "@/components/ui/Stepper";
@@ -652,6 +653,29 @@ function NewInvoiceForm() {
};
};
+ const formRef = useRef