diff --git a/website/src/components/marketing/MarketingShell.tsx b/website/src/components/marketing/MarketingShell.tsx index 98ec518f..92843573 100755 --- a/website/src/components/marketing/MarketingShell.tsx +++ b/website/src/components/marketing/MarketingShell.tsx @@ -60,13 +60,44 @@ export function MarketingShell({ children, showFooter = true }: MarketingShellPr const isDark = colorMode === 'dark' const isHomePage = location.pathname === '/' - const shellClassName = `${isHomePage ? 'bg-transparent' : 'bg-[hsl(var(--background))]'} text-[hsl(var(--foreground))]` + const shellClassName = `bg-transparent text-[hsl(var(--foreground))]` + const shellBackdropClassName = isHomePage + ? isDark + ? 'bg-black/90' + : 'bg-white/80' + : isDark + ? 'bg-black/40' + : 'bg-white/58' + const shaderOverlayClassName = isHomePage + ? 'opacity-[0.94]' + : isDark + ? 'opacity-55' + : 'opacity-35' + const shellShaderStyle = isHomePage && isDark + ? { filter: 'saturate(1.28) contrast(1.08) brightness(1.06)' } + : undefined + const homeGlowGradients = isDark + ? [ + 'radial-gradient(circle_at_50%_8%, hsl(var(--brand-line)/0.14), transparent_22%), radial-gradient(circle_at_82%_18%, hsl(var(--brand-line)/0.16), transparent_24%)', + 'linear-gradient(180deg,rgba(9,10,13,0.04)_0%,rgba(9,10,13,0.3)_42%,rgba(9,10,13,0.72)_100%)', + ] + : [ + 'radial-gradient(circle_at_50%_8%, rgba(166,146,110,0.16), transparent_22%), radial-gradient(circle_at_82%_18%, rgba(120,131,144,0.16), transparent_24%)', + 'linear-gradient(180deg,rgba(247,245,240,0.2)_0%,rgba(247,245,240,0.44)_42%,rgba(247,245,240,0.84)_100%)', + ] + const secondaryGlowClassName = isDark + ? 'bg-[radial-gradient(circle, hsl(var(--brand-line)/0.20), transparent_62%)]' + : 'bg-[radial-gradient(circle, rgba(166,146,110,0.24), transparent_62%)]' + const secondaryGlowAltClassName = isDark + ? 'bg-[radial-gradient(circle, hsl(var(--primary)/0.16), transparent_62%)]' + : 'bg-[radial-gradient(circle, rgba(120,131,144,0.18), transparent_62%)]' const mutedClassName = 'text-[hsl(var(--muted-foreground))]' const borderClassName = isDark ? 'border-white/15' : 'border-[hsl(var(--border))]' + const navHoverClassName = isDark ? 'hover:bg-white/10' : 'hover:bg-black/8' const glassClassName = isDark ? `bg-white/5 ${borderClassName} backdrop-blur-2xl` - : `bg-white/70 ${borderClassName} backdrop-blur-2xl` + : `bg-black/5 ${borderClassName} backdrop-blur-2xl` const logoClassName = 'drop-shadow-[0_0_14px_rgba(232,232,232,0.36)]' const headerFrameClassName = 'h-[10rem] md:h-[10.5rem] lg:h-[11rem]' @@ -90,10 +121,10 @@ export function MarketingShell({ children, showFooter = true }: MarketingShellPr return (
-
+
@@ -102,26 +133,23 @@ export function MarketingShell({ children, showFooter = true }: MarketingShellPr
-
+
)}
-
+
@@ -180,7 +208,7 @@ export function MarketingShell({ children, showFooter = true }: MarketingShellPr className={`block rounded-xl px-3 py-2 text-sm transition-colors ${ activePath === child.to ? 'bg-[hsl(var(--brand-line))] text-[hsl(var(--foreground))]' - : `${mutedClassName} hover:bg-white/10 hover:text-current` + : `${mutedClassName} ${navHoverClassName} hover:text-current` }`} > {child.label} @@ -199,7 +227,7 @@ export function MarketingShell({ children, showFooter = true }: MarketingShellPr className={`public-nav-link ${ isActive ? 'public-nav-link-active' - : `${mutedClassName} hover:bg-white/10 hover:text-current` + : `${mutedClassName} ${navHoverClassName} hover:text-current` }`} > {entry.label} @@ -269,7 +297,7 @@ export function MarketingShell({ children, showFooter = true }: MarketingShellPr
{mobileOpen && ( -
+