// Marketing site — assembly + Light/Dark + layout variation switcher. const { useState, useLayoutEffect } = React; function scrollToId(id) { const el = document.getElementById(id); if (!el) return; const y = el.getBoundingClientRect().top + window.scrollY - 70; window.scrollTo({ top: y, behavior: "smooth" }); } function Switcher({ theme, setTheme }) { const seg = (active) => ({ padding: "11px 16px", minHeight: 40, boxSizing: "border-box", borderRadius: 999, border: "none", cursor: "pointer", fontFamily: "var(--font-sans)", fontSize: 12.5, fontWeight: 700, background: active ? "var(--green)" : "transparent", color: active ? "#fff" : "var(--text-secondary)", transition: "all .16s ease", }); const group = { display: "inline-flex", gap: 3, background: "var(--bg-surface)", border: "1px solid var(--line)", borderRadius: 999, padding: 3 }; return (
); } function SiteApp() { const [theme, setTheme] = useState("light"); const [layout, setLayout] = useState("left"); useLayoutEffect(() => { if (window.lucide) window.lucide.createIcons(); }); // 흐름: 공개 마케팅사이트 → 로그인(신디자인) → (로그인 후) 홈허브 const cta = () => { window.location.href = "/v2/login?mode=signup"; }; // 신규 → 회원가입 탭 const login = () => { window.location.href = "/v2/login"; }; // 기존 회원 → 로그인 탭 return (
); } window.SiteApp = SiteApp;