(function () { "use strict"; const fallback = "z"; const sharedSizes = { marker: 18, tiny: 22, small: 32, medium: 44, large: 64, focus: 88 }; const characters = { "young z": { id: "young z", displayLabel: "young z", avatar: "/assets/avatars/young-z.jpeg", glow: "#d8a95a", accent: "#f4bf5f", fallback, expressions: { calm: "/assets/avatars/young-z.jpeg", happy: "/assets/avatars/young-z.jpeg", surprised: "/assets/avatars/young-z.jpeg" }, sizes: sharedSizes, observatory: { territory: "nostalgic-playful", presenceKeywords: ["childhood", "play", "crayon", "sun", "blanket", "game", "desk", "drawing", "nostalgia"], atmosphere: "warm childhood light", focusScale: 1.08 } }, z: { id: "z", displayLabel: "z", avatar: "/assets/avatars/z.jpeg", glow: "#d6c38a", accent: "#d8c891", fallback, expressions: { calm: "/assets/avatars/z.jpeg", receptive: "/assets/avatars/z.jpeg" }, sizes: sharedSizes, observatory: { territory: "archive-return", presenceKeywords: ["website", "archive", "observer", "traveler", "making", "return", "home"], atmosphere: "steady archive lantern", focusScale: 1 } }, aphy: { id: "aphy", displayLabel: "aphy", avatar: "/assets/avatars/aphy.jpeg", glow: "#7fb089", accent: "#83d4df", fallback, expressions: { calm: "/assets/avatars/aphy.jpeg", curious: "/assets/avatars/aphy.jpeg", thinking: "/assets/avatars/aphy.jpeg" }, sizes: sharedSizes, observatory: { territory: "system-symbolic", presenceKeywords: ["system", "terminal", "logic", "error", "debug", "console", "css", "search", "backup", "symbol"], atmosphere: "soft diagnostic glow", focusScale: 1.04 } }, lima: { id: "lima", displayLabel: "lima", avatar: "/assets/avatars/lima.jpg", glow: "#d06b78", accent: "#e7a176", fallback, expressions: { calm: "/assets/avatars/lima.jpg", happy: "/assets/avatars/lima.jpg", protective: "/assets/avatars/lima.jpg" }, sizes: sharedSizes, observatory: { territory: "warm-protective", presenceKeywords: ["warm", "home", "safe", "protect", "kitchen", "ring", "love", "rest", "care", "light"], atmosphere: "protective kitchen warmth", focusScale: 1.12 } }, "sensei chi": { id: "sensei chi", displayLabel: "sensei chi", avatar: "/assets/avatars/sensei-chi.jpeg", glow: "#75a9bd", accent: "#9ec4be", fallback, expressions: { calm: "/assets/avatars/sensei-chi.jpeg", reflective: "/assets/avatars/sensei-chi.jpeg" }, sizes: sharedSizes, observatory: { territory: "reflective-patient", presenceKeywords: ["quiet", "reflect", "patience", "tea", "garden", "lesson", "wisdom", "still"], atmosphere: "slow reflective tea light", focusScale: 1.06 } }, "future z": { id: "future z", displayLabel: "future z", avatar: "/assets/avatars/future-z.jpeg", glow: "#a58ac9", accent: "#b7a6cf", fallback, expressions: { calm: "/assets/avatars/future-z.jpeg", nostalgic: "/assets/avatars/future-z.jpeg", warning: "/assets/avatars/future-z.jpeg" }, sizes: sharedSizes, observatory: { territory: "temporal", presenceKeywords: ["future", "time", "age 40", "later", "return", "warning", "ordinary", "clock"], atmosphere: "distant temporal shimmer", focusScale: 1.1 } } }; function get(character) { return characters[character] || characters[fallback]; } function source(character, expression) { const config = get(character); return (config.expressions && expression && config.expressions[expression]) || config.avatar || characters[fallback].avatar; } window.MemoryAvatarRegistry = { fallback, characters, get, source }; }());