diff --git a/src/app/(auth)/layout.tsx b/src/app/(auth)/layout.tsx
index c365eec..71bbb2f 100644
--- a/src/app/(auth)/layout.tsx
+++ b/src/app/(auth)/layout.tsx
@@ -1,12 +1,12 @@
import { makePageMetadata } from "@/seo/metadata";
-import type { AuthLayoutProps } from "@/types/auth";
+import type { AuthCommonProps } from "@/types/auth";
export const metadata = makePageMetadata({
title: "MyPlanMate — 인증",
description: "MyPlanMate 계정으로 로그인하고, 새 계정을 만들고, 비밀번호를 재설정하세요.",
});
-export default function AuthLayout({ children }: AuthLayoutProps) {
+export default function AuthLayout({ children }: AuthCommonProps) {
return (
{children}
diff --git a/src/app/(auth)/login/page.tsx b/src/app/(auth)/login/page.tsx
index f59323f..9c77db3 100644
--- a/src/app/(auth)/login/page.tsx
+++ b/src/app/(auth)/login/page.tsx
@@ -1,3 +1,6 @@
+import { AuthHeader } from "@/components/auth/AuthHeader";
+import { LoginPageTitle } from "@/components/auth/login/LoginPageTitle";
+import { LoginSubtitle } from "@/components/auth/login/LoginSubtitle";
import { makePageMetadata } from "@/seo/metadata";
export const metadata = {
@@ -12,12 +15,10 @@ export const metadata = {
export default function LoginPage() {
return (
<>
-
- {/* TODO: 나중에 AppLogo + LoginPageTitle + LoginSubtitle로 교체 */}
- PlanMate
- 로그인
- 오늘도 만나서 반가워요!
-
+
+
+
+
{/* TODO: 나중에 LoginMain + AuthCard + LoginForm 구조로 확장 */}
diff --git a/src/components/auth/AuthHeader.tsx b/src/components/auth/AuthHeader.tsx
new file mode 100644
index 0000000..ce79df0
--- /dev/null
+++ b/src/components/auth/AuthHeader.tsx
@@ -0,0 +1,11 @@
+import { AppLogo } from "@/shared/AppLogo";
+import type { AuthCommonProps } from "@/types/auth";
+
+export function AuthHeader({ children }: AuthCommonProps) {
+ return (
+
+ );
+}
diff --git a/src/components/auth/login/LoginPageTitle.tsx b/src/components/auth/login/LoginPageTitle.tsx
new file mode 100644
index 0000000..67c3393
--- /dev/null
+++ b/src/components/auth/login/LoginPageTitle.tsx
@@ -0,0 +1,7 @@
+export function LoginPageTitle() {
+ return (
+
+ 로그인
+
+ );
+}
diff --git a/src/components/auth/login/LoginSubtitle.tsx b/src/components/auth/login/LoginSubtitle.tsx
new file mode 100644
index 0000000..4ef609e
--- /dev/null
+++ b/src/components/auth/login/LoginSubtitle.tsx
@@ -0,0 +1,3 @@
+export function LoginSubtitle() {
+ return 오늘도 만나서 반가워요!
;
+}
diff --git a/src/components/landing/LandingNavBar.tsx b/src/components/landing/LandingNavBar.tsx
index a053e64..35b1130 100644
--- a/src/components/landing/LandingNavBar.tsx
+++ b/src/components/landing/LandingNavBar.tsx
@@ -1,5 +1,5 @@
import { cn } from "@/lib/utils";
-import Image from "next/image";
+import { AppLogo } from "@/shared/AppLogo";
import Link from "next/link";
export function LandingNavBar() {
@@ -12,16 +12,7 @@ export function LandingNavBar() {
aria-label="Global navigation"
>
{/* 좌측: 로고 (이미지) */}
-
-
-
+
{/* 우측: 언어 토글 + 로그인 */}
diff --git a/src/shared/AppLogo.tsx b/src/shared/AppLogo.tsx
new file mode 100644
index 0000000..b5dcd14
--- /dev/null
+++ b/src/shared/AppLogo.tsx
@@ -0,0 +1,17 @@
+import Image from "next/image";
+import Link from "next/link";
+
+export function AppLogo() {
+ return (
+
+
+
+ );
+}
diff --git a/src/types/auth.ts b/src/types/auth.ts
index 34b4422..8afa326 100644
--- a/src/types/auth.ts
+++ b/src/types/auth.ts
@@ -1,5 +1,5 @@
import type { ReactNode } from "react";
-export interface AuthLayoutProps {
+export interface AuthCommonProps {
children: ReactNode;
}