From 01c31e3e5dfb50ea7b0c4c8f7576074baaecd07e Mon Sep 17 00:00:00 2001 From: gahusb Date: Sat, 13 Jun 2026 00:40:20 +0900 Subject: [PATCH] =?UTF-8?q?feat(nav):=20=EB=8B=A4=ED=81=AC=20=EB=9D=BC?= =?UTF-8?q?=EC=9A=B0=ED=8A=B8=20=EC=9D=B8=EC=A7=80=ED=98=95=20=EB=84=A4?= =?UTF-8?q?=EB=B9=84=EA=B2=8C=EC=9D=B4=EC=85=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/components/TopNav.tsx | 60 +++++++++++++++++++++++++-------------- 1 file changed, 38 insertions(+), 22 deletions(-) diff --git a/app/components/TopNav.tsx b/app/components/TopNav.tsx index f50a7e7..9bfdfff 100644 --- a/app/components/TopNav.tsx +++ b/app/components/TopNav.tsx @@ -65,6 +65,18 @@ export default function TopNav() { return () => window.removeEventListener('keydown', onKey); }, [open]); + // 다크 라우트 판정 + const DARK_ROUTES = ['/', '/outsourcing']; + const isDark = DARK_ROUTES.includes(pathname) || pathname.startsWith('/outsourcing/'); + + // 팔레트 헬퍼 — isDark 분기 + const ink = isDark ? 'var(--jsm-dark-ink)' : 'var(--jsm-ink)'; + const inkSoft = isDark ? 'var(--jsm-dark-soft)' : 'var(--jsm-ink-soft)'; + const surface = isDark ? 'var(--jsm-dark-bg)' : 'var(--jsm-surface)'; + const line = isDark ? 'var(--jsm-dark-line)' : 'var(--jsm-line)'; + const accent = isDark ? 'var(--jsm-accent-bright)' : 'var(--jsm-accent)'; + const accentBg = isDark ? 'rgba(96,165,250,0.12)' : 'var(--jsm-accent-soft)'; + const isActive = (href: string) => { if (href === '/') return pathname === '/'; return pathname === href || pathname.startsWith(href + '/'); @@ -75,9 +87,13 @@ export default function TopNav() {