TypeScript 98.3%
CSS 0.9%
Shell 0.7%
1// Identité Immbot AI — monogramme net : courbe de valeur qui devient un toit,2// point d'or au sommet. Aplat bleu UQO (pas de dégradé : rendu net à toutes tailles,3// et évite les collisions d'identifiants SVG entre instances).4import Image from "next/image";56export function ImmbotMark({ size = 28, className }: { size?: number; className?: string }) {7 return (8 <svg9 width={size}10 height={size}11 viewBox="0 0 48 48"12 fill="none"13 role="img"14 aria-label="Immbot AI"15 className={className}16 >17 <rect x="1" y="1" width="46" height="46" rx="10" fill="#003E7E" />18 <path19 d="M10 34 L18 34 L27 20 L33 26 L38 15"20 stroke="white"21 strokeWidth="3.4"22 strokeLinecap="round"23 strokeLinejoin="round"24 fill="none"25 />26 <circle cx="38" cy="15" r="3.6" fill="#C6A300" />27 <path d="M14 34 L14 28.5 L20 28.5 L20 34" stroke="white" strokeWidth="2.6" strokeLinejoin="round" fill="none" opacity="0.9" />28 </svg>29 );30}3132export function ImmbotLogo({ size = 28, className }: { size?: number; className?: string }) {33 return (34 <span className={`inline-flex items-center gap-2.5 ${className ?? ""}`}>35 <ImmbotMark size={size} />36 <span className="font-bold tracking-tight text-fg leading-none" style={{ fontSize: size * 0.64 }}>37 Immbot <span className="text-brand-600 dark:text-brand-300">AI</span>38 </span>39 </span>40 );41}4243/** Logo officiel de l'UQO (co-marquage institutionnel). */44export function UqoLogo({ height = 34, className }: { height?: number; className?: string }) {45 return (46 <Image47 src="/uqo-logo.png"48 alt="Université du Québec en Outaouais"49 width={Math.round(height * 2.08)}50 height={height}51 className={className}52 priority={false}53 />54 );55}56