/* Search Hive — shared chrome (Nav, Footer, helpers, icons) Composes the bound design system (window.SearchHiveDesignSystem_3f2abd). Exports everything to window so each page script can use it. */ const DS = window.SearchHiveDesignSystem_3f2abd; const { Button, Badge, Tag, Avatar, Rating, Card, Input } = DS; /* ----------------------------------------------------------------- * * Lucide-style stroke icons (2px, round joins) — the DS icon set. * ----------------------------------------------------------------- */ const ICON_PATHS = { "arrow-right": '', "arrow-up-right": '', search: '', sparkles: '', palette: '', "trending-up": '', "pen-tool": '', megaphone: '', target: '', layers: '', compass: '', check: '', "check-circle": '', plus: '', minus: '', quote: '', menu: '', x: '', mail: '', "map-pin": '', rocket: '', "bar-chart": '', clock: '', "message-circle": '', zap: '', globe: '', users: '', }; function Icon({ name, size = 24, stroke = 2, color = "currentColor", style = {} }) { return React.createElement("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: color, strokeWidth: stroke, strokeLinecap: "round", strokeLinejoin: "round", style: { display: "block", flex: "none", ...style }, dangerouslySetInnerHTML: { __html: ICON_PATHS[name] || "" }, }); } /* ----------------------------------------------------------------- * * Layout helpers * ----------------------------------------------------------------- */ function Container({ children, width = 1200, style = {} }) { return (
{children}
); } function Eyebrow({ children, icon, style = {} }) { return ( {icon && } {children} ); } /* faint honeycomb texture wash */ function Honeycomb({ opacity = 0.5, style = {} }) { return (