/**
 * Design Philosophy Registry — 20 design philosophies across 5 schools
 *
 * Adapted from Huashu-Design (https://github.com/alchaincyf/huashu-design).
 * These philosophies provide a vocabulary for design direction when the user
 * hasn't specified a concrete design system. They complement the 144 curated
 * design systems and serve as the backbone for designer_recommend.
 *
 * Each philosophy includes:
 *   - Core ethos (the "why")
 *   - Signature traits (the "what" — concrete CSS-token-level characteristics)
 *   - Best medium (HTML, AI-generated, or Hybrid)
 *   - Scene affinity (which content types it shines for)
 *   - Anti-patterns (what would violate this philosophy)
 */
export const DESIGN_PHILOSOPHIES = [
    // ═══════════════════════════════════════════════════════════════════
    // SCHOOL 1: Information Architecture (01-04)
    // Philosophy: "Data is not decoration — it is building material"
    // ═══════════════════════════════════════════════════════════════════
    {
        name: "Pentagram · Michael Bierut",
        school: "Information Architecture",
        schoolIcon: "📐",
        designer: "Michael Bierut",
        ethos: "Typography is language; the grid is thought.",
        description: "Swiss grid modernism: extreme color restraint (black/white + one brand color), typography as primary visual language, 60%+ whitespace, mathematical spacing. When every pixel earns its place, the message becomes unmissable.",
        traits: [
            "Black + white + single brand accent",
            "Swiss grid with precise mathematical spacing",
            "Typography as the primary visual element",
            "60%+ negative space",
            "Helvetica/Univers or equivalent rationalist type",
        ],
        keywords: [
            "restrained", "editorial", "authoritative", "timeless", "grid-based",
        ],
        bestMedium: "html",
        sceneAffinity: [
            "landing pages", "slide decks", "editorial", "brand identities",
        ],
        antiPatterns: [
            "Gradients of any kind",
            "More than 3 font sizes per page",
            "Decorative elements that don't carry information",
            "Color palettes with more than 3 distinct hues",
        ],
    },
    {
        name: "Stamen · Data Poetics",
        school: "Information Architecture",
        schoolIcon: "📐",
        designer: "Stamen Design",
        ethos: "Let data become a landscape you can touch.",
        description: "Cartographic thinking applied to information design: algorithm-generated organic patterns, warm earth-tone palettes (terracotta, sage, deep blue), layered information like topographic maps. Hand-crafted feel despite digital precision.",
        traits: [
            "Warm data palette: terracotta, sage green, deep blues",
            "Algorithm-generated organic patterns",
            "Layered information like topographic maps",
            "Soft shadows and depth",
            "Hand-crafted feel through digital means",
        ],
        keywords: [
            "organic", "layered", "warm", "cartographic", "exploratory",
        ],
        bestMedium: "hybrid",
        sceneAffinity: [
            "data visualizations", "infographics", "analytics dashboards",
        ],
        antiPatterns: [
            "Flat, 2D-only data representation",
            "Cold tech color palettes (neon blues, pure grays)",
            "Over-simplification that loses nuance",
        ],
    },
    {
        name: "iA · Content-First",
        school: "Information Architecture",
        schoolIcon: "📐",
        designer: "Information Architects",
        ethos: "Design is not decoration — it is the architecture of content.",
        description: "Radical content-first hierarchy: system fonts only, classic blue hyperlinks, 66-character reading line length, zero decorative elements. Performance and readability are the only metrics that matter.",
        traits: [
            "System fonts only (SF Pro / Roboto / Inter as fallback)",
            "Classic #0000EE hyperlinks",
            "66-character optimal line length",
            "Zero decorative elements",
            "Progressive disclosure of depth",
        ],
        keywords: [
            "clean", "readable", "functional", "fast", "text-heavy",
        ],
        bestMedium: "html",
        sceneAffinity: [
            "documentation", "blogs", "long-form content", "knowledge bases",
        ],
        antiPatterns: [
            "Custom decorative fonts",
            "Gratuitous images that don't add information",
            "Animation for animation's sake",
            "Fixed-ratio hero images",
        ],
    },
    {
        name: "Fathom · Scientific Narrative",
        school: "Information Architecture",
        schoolIcon: "📐",
        designer: "Fathom Information Design",
        ethos: "Every pixel must carry information.",
        description: "Scientific journal rigor meets modern design: precise quantitative visualization, cool neutral palette (grays, navy), footnotes integrated into layout, clean sans-serif. Information density without clutter.",
        traits: [
            "Neutral scheme: grays, navy, one highlight color",
            "Precise charts, timelines, scatter plots",
            "Footnote/citation design integrated into layout",
            "Clean sans-serif (GT America / Graphik family)",
            "Information density without visual clutter",
        ],
        keywords: [
            "precise", "scholarly", "neutral", "data-dense", "trustworthy",
        ],
        bestMedium: "html",
        sceneAffinity: [
            "reports", "white papers", "annual reviews", "research publications",
        ],
        antiPatterns: [
            "Vague or hand-wavy data visualization",
            "Playful/whimsical color choices",
            "Low information density per screen",
        ],
    },
    // ═══════════════════════════════════════════════════════════════════
    // SCHOOL 2: Motion Poetics (05-08)
    // Philosophy: "Technology itself is a flowing poem"
    // ═══════════════════════════════════════════════════════════════════
    {
        name: "Locomotive · Scroll Narrative",
        school: "Motion Poetics",
        schoolIcon: "🎬",
        designer: "Locomotive",
        ethos: "Scrolling is not browsing — it is a journey.",
        description: "Film-like scene composition with parallax depth, bold typography emerging from darkness, smooth motion blur, generous vertical spacing. Every scroll event is a scene transition in a cinematic narrative.",
        traits: [
            "Dark mode: near-black backgrounds with strategic glowing accents",
            "Parallax depth layering",
            "Bold typography emerging from darkness",
            "100vh hero sections",
            "Film-like scene transitions",
        ],
        keywords: [
            "cinematic", "immersive", "dark", "dramatic", "parallax",
        ],
        bestMedium: "hybrid",
        sceneAffinity: [
            "portfolio sites", "brand stories", "product launches", "immersive landing pages",
        ],
        antiPatterns: [
            "Flat layouts with no depth",
            "Light/white backgrounds (kills the cinematic feel)",
            "Static content with no scroll response",
        ],
    },
    {
        name: "Active Theory · WebGL Poetics",
        school: "Motion Poetics",
        schoolIcon: "🎬",
        designer: "Active Theory",
        ethos: "Making technology visible is making it understandable.",
        description: "3D particle systems representing data flow, real-time WebGL rendering, mouse-reactive environments, neon gradients (cyan/magenta/electric blue) on dark, floating UI with glassmorphism touches.",
        traits: [
            "Particle systems representing data/code flow",
            "3D visualization in depth space",
            "Neon gradients: cyan, magenta, electric blue",
            "Mouse-reactive interactive environments",
            "Depth of field and bokeh effects",
        ],
        keywords: [
            "futuristic", "interactive", "neon", "particle", "3D",
        ],
        bestMedium: "ai-generated",
        sceneAffinity: [
            "hero animations", "tech product showcases", "conference visuals",
        ],
        antiPatterns: [
            "Flat/static layouts",
            "Traditional earth-tone or muted color schemes",
            "Low-contrast, text-heavy designs",
        ],
    },
    {
        name: "Field.io · Generative Aesthetic",
        school: "Motion Poetics",
        schoolIcon: "🎬",
        designer: "Field.io",
        ethos: "Code is the designer.",
        description: "Abstract geometric patterns generated by algorithms, monochromatic base with vibrant accents, mathematical precision in spacing. Voronoi tessellations, Delaunay triangulations, computational beauty as visual language.",
        traits: [
            "Monochromatic base + one vibrant accent",
            "Voronoi/Delaunay pattern systems",
            "Mathematical precision in all spacing",
            "Clean code-as-aesthetic sensibility",
            "Dynamic, algorithm-responsive compositions",
        ],
        keywords: [
            "generative", "mathematical", "abstract", "precise", "computational",
        ],
        bestMedium: "ai-generated",
        sceneAffinity: [
            "brand visuals", "event graphics", "music/art festival sites",
        ],
        antiPatterns: [
            "Hand-drawn or sketch-like aesthetics",
            "Rounded, friendly, organic shapes",
            "Traditional photographic hero images",
        ],
    },
    {
        name: "Resn · Interactive Storytelling",
        school: "Motion Poetics",
        schoolIcon: "🎬",
        designer: "Resn",
        ethos: "Every click advances the story.",
        description: "Gamified user journeys with illustrative + UI hybrid style, scroll-triggered animations, character-driven design, warm color palettes. The interface is a narrative engine — users progress through a story, they don't just browse.",
        traits: [
            "Illustrative + UI element hybrid style",
            "Gamified exploration with progress indicators",
            "Warm color palette despite tech subject matter",
            "Character-driven design with editorial illustration",
            "Scroll-triggered narrative beats",
        ],
        keywords: [
            "playful", "narrative", "illustrative", "gamified", "warm",
        ],
        bestMedium: "hybrid",
        sceneAffinity: [
            "interactive stories", "game-like experiences", "educational content",
        ],
        antiPatterns: [
            "Static, non-interactive layouts",
            "Cold corporate color schemes",
            "Generic SaaS landing page patterns",
        ],
    },
    // ═══════════════════════════════════════════════════════════════════
    // SCHOOL 3: Minimalism (09-12)
    // Philosophy: "Subtract until nothing more can be removed"
    // ═══════════════════════════════════════════════════════════════════
    {
        name: "Experimental Jetset · Conceptual Minimalism",
        school: "Minimalism",
        schoolIcon: "◻️",
        designer: "Experimental Jetset",
        ethos: "One idea = one form.",
        description: "Single visual metaphor per design, Mondrian-esque primary colors (red/blue/yellow + black/white), typography as the only graphic element, grid-based with deliberate rule-breaking. Anti-commercial honesty as aesthetic.",
        traits: [
            "Primary colors only: red, blue, yellow + black/white",
            "Typography as the only graphic element",
            "Grid-based with deliberate rule-breaking moments",
            "No photography — type and geometry only",
            "Single visual metaphor per design",
        ],
        keywords: [
            "conceptual", "bold", "primary", "typographic", "anti-commercial",
        ],
        bestMedium: "hybrid",
        sceneAffinity: [
            "posters", "editorial design", "brand identities", "album art",
        ],
        antiPatterns: [
            "Photography",
            "Gradients or soft textures",
            "More than 4 colors in the palette",
            "Generic sans-serif body type",
        ],
    },
    {
        name: "Müller-Brockmann · Swiss Grid Purism",
        school: "Minimalism",
        schoolIcon: "◻️",
        designer: "Josef Müller-Brockmann",
        ethos: "Objectivity is beauty.",
        description: "Mathematical 8pt baseline grid, absolute left-alignment or centered, two-color maximum (black + one accent), Akzidenz-Grotesk or similar rationalist typeface. No decoration. Functionalism is the only aesthetic principle.",
        traits: [
            "Mathematical 8pt baseline grid",
            "Two colors maximum: black + one accent",
            "Absolute alignment (flush left or centered)",
            "Akzidenz-Grotesk / Univers rationalist type",
            "Zero decorative elements",
        ],
        keywords: [
            "geometric", "rational", "objective", "grid", "pure",
        ],
        bestMedium: "html",
        sceneAffinity: [
            "slide decks", "posters", "editorial layouts", "corporate identity",
        ],
        antiPatterns: [
            "Any decoration that doesn't serve function",
            "Asymmetry without purpose",
            "Color used emotionally rather than systematically",
            "More than 2 type families",
        ],
    },
    {
        name: "Build · Luxury Minimalism",
        school: "Minimalism",
        schoolIcon: "◻️",
        designer: "Build Studio",
        ethos: "Refined simplicity is harder than complexity.",
        description: "Luxury-level whitespace (70%+), subtle type weight shifts (200→600), single accent color used sparingly, high-end product photography aesthetic, golden-ratio proportions. The object itself is the hero.",
        traits: [
            "70%+ whitespace",
            "Subtle type weight shifts (200 to 600)",
            "Single accent color used sparingly",
            "Golden ratio proportions",
            "High-end photography aesthetic",
        ],
        keywords: [
            "luxurious", "refined", "spacious", "premium", "photographic",
        ],
        bestMedium: "html",
        sceneAffinity: [
            "luxury brand sites", "premium product pages", "fashion", "architecture",
        ],
        antiPatterns: [
            "Crowded layouts",
            "Multiple competing accent colors",
            "Bold, chunky type that fights the photography",
            "Low-resolution or stock photography",
        ],
    },
    {
        name: "Sagmeister & Walsh · Joyful Minimalism",
        school: "Minimalism",
        schoolIcon: "◻️",
        designer: "Sagmeister & Walsh",
        ethos: "Beauty is the emotional dimension of function.",
        description: "Unexpected color bursts on a minimal base, handmade elements mixed with digital precision, optimistic visual language, experimental typography that stays readable. Imperfection as human warmth — analog meets digital.",
        traits: [
            "Unexpected color bursts on minimal base",
            "Handmade elements + digital precision",
            "Optimistic, warm visual language",
            "Experimental but readable typography",
            "Imperfection as deliberate human touch",
        ],
        keywords: [
            "joyful", "experimental", "human", "colorful", "bold",
        ],
        bestMedium: "ai-generated",
        sceneAffinity: [
            "brand campaigns", "posters", "festival graphics", "creative portfolios",
        ],
        antiPatterns: [
            "Sterile, machine-perfect execution",
            "Muted, corporate color palettes",
            "Safe, predictable layout choices",
        ],
    },
    // ═══════════════════════════════════════════════════════════════════
    // SCHOOL 4: Experimental Avant-Garde (13-16)
    // Philosophy: "Breaking rules is creating rules"
    // ═══════════════════════════════════════════════════════════════════
    {
        name: "Zach Lieberman · Code Poetry",
        school: "Experimental Avant-Garde",
        schoolIcon: "⚡",
        designer: "Zach Lieberman",
        ethos: "Programming is painting.",
        description: "Hand-drawn aesthetic generated by code, black-and-white purity, real-time generative systems, visible process lines and construction grids. The algorithm itself becomes the art — poetic interpretation of computation.",
        traits: [
            "Black and white only — zero color",
            "Hand-drawn aesthetic from algorithmic generation",
            "Visible process/grid/construction lines",
            "Sketch-like line quality",
            "Poetic interpretation of algorithms",
        ],
        keywords: [
            "generative", "sketch-like", "monochrome", "algorithmic", "poetic",
        ],
        bestMedium: "ai-generated",
        sceneAffinity: [
            "code art", "creative coding demos", "experimental posters",
        ],
        antiPatterns: [
            "Any use of color",
            "Polished, commercial finish",
            "Hidden process — the construction should be visible",
        ],
    },
    {
        name: "Raven Kwok · Parametric Aesthetic",
        school: "Experimental Avant-Garde",
        schoolIcon: "⚡",
        designer: "Raven Kwok",
        ethos: "The beauty of the system surpasses the beauty of the individual.",
        description: "Fractal and recursive structures, high-contrast black and white, architectural information visualization, Chinese garden principles translated into algorithms. Intricate detail that rewards zooming.",
        traits: [
            "Fractal and recursive structures",
            "High-contrast black and white",
            "Architectural information visualization",
            "Chinese garden spatial principles in algorithmic form",
            "Intricate detail rewarding exploration",
        ],
        keywords: [
            "fractal", "recursive", "intricate", "spatial", "parametric",
        ],
        bestMedium: "ai-generated",
        sceneAffinity: [
            "generative art", "installation visuals", "scientific visualization",
        ],
        antiPatterns: [
            "Simple, flat compositions",
            "Pastel or muted color schemes",
            "Low-detail, fast-to-process visuals",
        ],
    },
    {
        name: "Ash Thorp · Cinematic Cyberpunk",
        school: "Experimental Avant-Garde",
        schoolIcon: "⚡",
        designer: "Ash Thorp",
        ethos: "The future is not cold — it is a lonely poem.",
        description: "Film-grade lighting and atmospheric effects, warm cyberpunk (orange/teal — NOT cold blue), narrative concept art feel, volumetric lighting with god rays. Blade Runner warmth over Tron coldness.",
        traits: [
            "Warm cyberpunk: orange + teal, not cold blue",
            "Film-grade volumetric lighting and god rays",
            "Industrial design meets luxury",
            "Narrative concept art feel",
            "Atmospheric depth and mood",
        ],
        keywords: [
            "cinematic", "atmospheric", "cyberpunk", "warm", "conceptual",
        ],
        bestMedium: "ai-generated",
        sceneAffinity: [
            "concept art", "sci-fi visuals", "product launch films", "game visuals",
        ],
        antiPatterns: [
            "Cold blue/purple cyberpunk clichés",
            "Flat, unlit compositions",
            "Overly clean, sterile sci-fi",
        ],
    },
    {
        name: "Territory · FUI (Fantasy UI)",
        school: "Experimental Avant-Garde",
        schoolIcon: "⚡",
        designer: "Territory Studio",
        ethos: "Tomorrow's interfaces, imagined today.",
        description: "Sci-fi screen graphics: holographic projection aesthetics, orange/amber monochrome or cyan accents, multiple overlapping data layers. Believable future technology — the UI from Blade Runner 2049 made real.",
        traits: [
            "Holographic projection aesthetic",
            "Orange/amber monochrome or cyan accents",
            "Multiple overlapping data layers",
            "Technical readouts and data streams",
            "Believable near-future technology",
        ],
        keywords: [
            "futuristic", "holographic", "technical", "layered", "sci-fi",
        ],
        bestMedium: "ai-generated",
        sceneAffinity: [
            "tech dashboards", "sci-fi interfaces", "cybersecurity visuals",
        ],
        antiPatterns: [
            "Minimal, flat UI patterns",
            "Traditional SaaS dashboard conventions",
            "Rounded, friendly shapes",
        ],
    },
    // ═══════════════════════════════════════════════════════════════════
    // SCHOOL 5: Eastern Philosophy (17-20)
    // Philosophy: "Emptiness is content"
    // ═══════════════════════════════════════════════════════════════════
    {
        name: "Takram · Japanese Speculative Design",
        school: "Eastern Philosophy",
        schoolIcon: "🎋",
        designer: "Takram",
        ethos: "Technology is a medium for thinking.",
        description: "Elegant concept prototypes rendered as design artifacts, soft tech aesthetic (rounded corners, gentle shadows), charts as art pieces, modest sophistication. Design as philosophical inquiry rather than commercial output.",
        traits: [
            "Soft tech: rounded corners, gentle shadows",
            "Elegant concept prototypes as design artifacts",
            "Neutral natural colors: beige, soft gray, muted green",
            "Charts and diagrams as art pieces",
            "Modest, understated sophistication",
        ],
        keywords: [
            "speculative", "elegant", "soft", "diagrammatic", "philosophical",
        ],
        bestMedium: "html",
        sceneAffinity: [
            "concept presentations", "research showcases", "product visions",
        ],
        antiPatterns: [
            "Aggressive, loud marketing language",
            "Hard-edged, sharp-cornered components",
            "Bright, saturated commercial palettes",
        ],
    },
    {
        name: "Kenya Hara · Emptiness Design",
        school: "Eastern Philosophy",
        schoolIcon: "🎋",
        designer: "Kenya Hara",
        ethos: "Design is not filling — it is emptying.",
        description: "Extreme whitespace (80%+), paper texture in digital form, layers of white (warm white, cool white, off-white), minimal color (desaturated if any). Zen simplicity — design by subtraction, never by addition.",
        traits: [
            "80%+ whitespace",
            "Paper texture and tactility in digital form",
            "Layers of white: warm, cool, off-white",
            "Minimal color — if any, very desaturated",
            "Design by subtraction, never addition",
        ],
        keywords: [
            "empty", "zen", "white", "tactile", "subtle",
        ],
        bestMedium: "html",
        sceneAffinity: [
            "brand identities", "lifestyle products", "editorial", "minimalist sites",
        ],
        antiPatterns: [
            "Any unnecessary element",
            "Dark backgrounds",
            "Multiple competing colors",
            "Busy or information-dense layouts",
        ],
    },
    {
        name: "Irma Boom · Book Architecture",
        school: "Eastern Philosophy",
        schoolIcon: "🎋",
        designer: "Irma Boom",
        ethos: "Information is physical poetry.",
        description: "Non-linear information structures, play with edges/margins/boundaries, unexpected color combinations (pink+red, orange+brown), handcraft translated to digital. Dense information that invites exploration.",
        traits: [
            "Non-linear information architecture",
            "Play with edges, margins, page boundaries",
            "Unexpected color combos: pink+red, orange+brown",
            "Handcraft feeling in digital execution",
            "Dense, exploration-inviting information design",
        ],
        keywords: [
            "editorial", "unconventional", "tactile", "dense", "boundary-pushing",
        ],
        bestMedium: "hybrid",
        sceneAffinity: [
            "books", "editorial design", "art catalogs", "experimental publications",
        ],
        antiPatterns: [
            "Standard, predictable layouts",
            "Safe, tested color harmonies",
            "Linear, sequential information architecture",
        ],
    },
    {
        name: "Neo Shen · Eastern Light Poetry",
        school: "Eastern Philosophy",
        schoolIcon: "🎋",
        designer: "Neo Shen",
        ethos: "Technology needs human warmth.",
        description: "Digital ink-wash painting, soft glow and light diffusion, poetic negative space, emotional palette (deep blues, warm grays, soft gold). Calligraphic influences in typography, atmospheric depth, tradition in digital form.",
        traits: [
            "Digital ink-wash painting aesthetic",
            "Soft glow and light diffusion effects",
            "Poetic negative space",
            "Emotional palette: deep blues, warm grays, soft gold",
            "Calligraphic typography influences",
        ],
        keywords: [
            "atmospheric", "poetic", "ink-wash", "emotional", "diffused",
        ],
        bestMedium: "ai-generated",
        sceneAffinity: [
            "art direction", "cultural content", "atmospheric brand visuals",
        ],
        antiPatterns: [
            "Hard, sharp edges and borders",
            "Cold, clinical color palettes",
            "Western sans-serif typography dominance",
        ],
    },
];
// ---------------------------------------------------------------------------
// Lookup
// ---------------------------------------------------------------------------
export function findPhilosophy(name) {
    const lower = name.toLowerCase().trim();
    return (DESIGN_PHILOSOPHIES.find((p) => p.name.toLowerCase() === lower) ??
        DESIGN_PHILOSOPHIES.find((p) => p.name.toLowerCase().includes(lower)));
}
// ---------------------------------------------------------------------------
// LLM formatters
// ---------------------------------------------------------------------------
export function formatPhilosophyForLLM(p) {
    return [
        `# ${p.name}`,
        `> ${p.schoolIcon} School: ${p.school} · Designer: ${p.designer}`,
        "",
        `## Ethos`,
        `"${p.ethos}"`,
        "",
        `## Description`,
        p.description,
        "",
        `## Signature Traits`,
        ...p.traits.map((t) => `- ${t}`),
        "",
        `## Keywords`,
        p.keywords.join(" · "),
        "",
        `## Best Medium`,
        p.bestMedium === "html"
            ? "HTML/CSS (precise layout control)"
            : p.bestMedium === "ai-generated"
                ? "AI-generated imagery (visual-first compositions)"
                : "Hybrid (HTML layout + AI-generated imagery)",
        "",
        `## Scene Affinity`,
        p.sceneAffinity.join(", "),
        "",
        `## Anti-Patterns (what NOT to do when using this philosophy)`,
        ...p.antiPatterns.map((a) => `- ❌ ${a}`),
        "",
        `## Quick Prompt DNA`,
        "```",
        `${p.designer} style:`,
        ...p.traits.map((t) => `- ${t}`),
        "```",
    ].join("\n");
}
export function listPhilosophiesForLLM() {
    // Group by school
    const bySchool = new Map();
    for (const p of DESIGN_PHILOSOPHIES) {
        const s = p.school;
        if (!bySchool.has(s))
            bySchool.set(s, []);
        bySchool.get(s).push(p);
    }
    const lines = [
        `# Available Design Philosophies (${DESIGN_PHILOSOPHIES.length} total)`,
        "",
        "Grouped by school. Each philosophy is a complete design direction with specific traits, anti-patterns, and scene affinity. Use `designer_get_philosophy` to load the full philosophy guide.",
        "",
        "## School Overview",
        "",
    ];
    for (const [school, philosophies] of bySchool) {
        const icon = philosophies[0]?.schoolIcon ?? "";
        lines.push(`### ${icon} ${school}`);
        lines.push("");
        lines.push(`| Philosophy | Designer | Best For | Medium |`);
        lines.push(`|---|---|---|---|`);
        for (const p of philosophies) {
            lines.push(`| **${p.name}** | ${p.designer} | ${p.sceneAffinity.slice(0, 2).join(", ")} | ${p.bestMedium} |`);
        }
        lines.push("");
    }
    lines.push("---");
    lines.push("");
    lines.push("## Quick Reference: All Philosophies");
    lines.push("");
    for (const p of DESIGN_PHILOSOPHIES) {
        lines.push(`- **${p.name}** (${p.school}) — ${p.ethos}`);
    }
    return lines.join("\n");
}
