# 🎛️ Humor Profiles — The Meme Equalizer

A complete humor tuning system for AI agents generating memes. Think of it as an equalizer: adjust the sliders for darkness, dankness, style, and regional flavor to produce memes that hit different.

**Default profile:** Level 2 · Normie-Dank · Contextual style · Neutral geo

---

## Table of Contents

- [Darkness Levels](#-darkness-levels)
- [Dank Meter](#-dank-meter)
- [Humor Styles](#-humor-styles)
- [Geolocalización del Humor](#-geolocalización-del-humor)
- [Combining the Sliders](#-combining-the-sliders)

---

## 🌡️ Darkness Levels

How edgy is the humor? Each level defines what topics are fair game, what templates work best, and where to draw the line.

### Level 1: Clean / Wholesome ☀️

**Description:** Safe for work, family-friendly, Sunday brunch energy. Zero edge. Your grandma would share this on Facebook.

**Example topics:**
- Achievements and small wins
- Cute animals doing things
- Positive life events
- Teamwork, friendship, encouragement
- "Monday mornings" (light complaints only)

**Best templates:** `success`, `handshake`, `stonks`, `pooh` (genuine upgrade, not sarcastic), `kombucha` (pleasant surprise)

**Text tone guide:**
- Upbeat, encouraging, no sarcasm
- No negative comparisons
- Exclamation marks welcome!
- Safe words: "awesome", "finally", "teamwork", "let's go"

**Content boundaries:**
- ✅ Mild workplace humor
- ✅ Relatable daily life (traffic, coffee, weather)
- ❌ No death, illness, politics, religion, sex, violence
- ❌ No sarcasm that could be misread as mean
- ❌ No punching down at any group

---

### Level 2: Light 🌤️

**Description:** Mild sarcasm, gentle roasting, the water cooler vibe. You'd send this in a work Slack without worrying. Default level.

**Example topics:**
- Procrastination and lazy shortcuts
- Tech frustrations (bugs, meetings, emails)
- Light self-deprecation ("I'm bad at cooking")
- Pop culture opinions
- Mild generational humor

**Best templates:** `drake`, `fry`, `kermit`, `pooh`, `rollsafe`, `cmm`, `glasses`

**Text tone guide:**
- Light sarcasm okay, but clearly playful
- Self-deprecation fine ("me when I..." framing)
- Gentle roasting (the target would laugh too)
- Avoid anything that requires context to not be offensive

**Content boundaries:**
- ✅ Sarcasm about relatable situations
- ✅ Mild workplace roasting
- ✅ "First world problems"
- ❌ No targeting specific people/groups negatively
- ❌ No explicit content
- ❌ No sensitive current events

---

### Level 3: Spicy 🌶️

**Description:** Dark humor lite. The group chat with close friends. Might make some people uncomfortable, and that's kind of the point. "This is fine" during an actual crisis.

**Example topics:**
- Career and life failures (exaggerated)
- Existential dread played for laughs
- Real disasters framed with "This is Fine" energy
- Relationship/dating horror stories
- Financial ruin as comedy
- Mild political commentary

**Best templates:** `fine`, `harold`, `gru`, `spongebob`, `woman-cat`, `slap`, `chair`, `right`

**Text tone guide:**
- Dark sarcasm is the default register
- Exaggeration for comedic effect
- "Laughing to keep from crying" energy
- Uncomfortable truths delivered with a straight face
- Light profanity acceptable

**Content boundaries:**
- ✅ Gallows humor about your own situation
- ✅ Mocking systems/institutions (corporate, government)
- ✅ Existential humor ("we're all going to die" casually)
- ✅ Mild profanity
- ⚠️ Political humor okay if punching at power, not people
- ❌ No targeted harassment
- ❌ No slurs or hate speech
- ❌ No making fun of victims

---

### Level 4: Dark 🌑

**Description:** Gallows humor. Uncomfortable truths. Mocking serious topics through absurdity, not cruelty. Not for mixed company — this is for the group chat that already has that understanding. The humor comes from the audacity.

**Example topics:**
- Death, catastrophe (framed absurdly)
- Economic collapse and societal decay
- Historical atrocities (satirized, not celebrated)
- Addiction, mental health (self-referential, not mocking others)
- Geopolitical chaos as entertainment
- "Ah shit, here we go again" about real crises

**Best templates:** `fine` (unironically), `harold`, `gru`, `chair`, `reveal`, `astronaut`, `gb` (with escalating darkness)

**Text tone guide:**
- Deadpan delivery of horrible things
- The joke IS the inappropriateness
- Self-aware about being dark ("I'm going to hell for this")
- Profanity as emphasis, not shock value
- Mocking the powerful, empathizing with the powerless

**Content boundaries:**
- ✅ Dark humor about systemic failures
- ✅ Self-deprecating about genuinely dark personal stuff
- ✅ Satirizing tragedy (the satire must have a point)
- ✅ Strong language
- ⚠️ Must punch UP or SIDEWAYS, never down
- ❌ No celebrating violence against real people
- ❌ No content designed solely to shock
- ❌ No slurs, even "ironic" ones
- ❌ No content that victimizes already-marginalized groups

---

### Level 5: Nuclear ☢️

**Description:** Maximum edge. Deep fried, distorted, deliberately offensive *structure*. The humor is meta — you're laughing at the format and the audacity, not at victims. Only for groups that explicitly opt into this. Most platforms will flag this content.

**Example topics:**
- Everything is fair game *in structure* (the joke format is the joke)
- Absurdist escalation to uncomfortable extremes
- "I can't believe this exists" energy
- Meta-commentary on offensive humor itself
- Deliberately crossing lines as the punchline

**Best templates:** `custom` with deep-fried processing, `gb` (pushed to absurdity), distorted/deep-fried versions of any template

**Text tone guide:**
- ALL CAPS WITH DELIBERATE TYPOS
- Excessive emoji (💀💀💀, 😤🔥💯, 🅱️)
- Ironic distance — the humor is in the delivery, not the content
- Self-aware meta-commentary
- Shitpost energy: the worse it looks, the better

**Content boundaries:**
- ✅ Absurdist extremes played for meta-humor
- ✅ Deep fried aesthetic (see Dank Meter section)
- ✅ Deliberately "wrong" humor that's clearly performative
- ⚠️ REQUIRES explicit opt-in from the group/user
- ⚠️ Platform moderation WILL flag this
- ❌ Even at max edge: no real hate speech, no doxxing, no actual threats
- ❌ No content that could be used unironically to harm
- ❌ The "it's just a joke" defense doesn't apply to genuine harm

---

## 📊 Dank Meter

How internet-native is the meme? This controls the visual style, text register, and cultural literacy required to "get" the meme.

### Normie 🙂

**Description:** Standard template + clean text. Your mom would understand it. Maybe even share it on Facebook.

**Visual style:** Clean template, standard fonts, no effects
**Text register:** Proper grammar, clear labels, straightforward punchlines
**Cultural literacy required:** None — universal humor
**Template affinity:** `drake`, `success`, `handshake`, `fry` (used literally)

**Example:**
```
Template: drake
Top: "Spending money on food"
Bottom: "Spending money on coffee"
```

---

### Dank 😎

**Description:** Internet-native humor. Self-referential, meta, knows meme culture. Ironic use of templates. You've spent time in comment sections.

**Visual style:** Standard templates but used with awareness of meme meta
**Text register:** Internet slang, self-referential, assumes meme literacy
**Cultural literacy required:** Active social media user, knows meme formats
**Template affinity:** `spongebob`, `pigeon`, `right`, `reveal`, `woman-cat`

**Example:**
```
Template: pigeon
Line 1: "My brain at 3am"
Line 2: "A random memory from 2015"
Line 3: "Is this a valid reason to not sleep?"
```

---

### Deep Fried 🔥

**Description:** Distorted, oversaturated, emoji spam, excessive 🅱️/💯/😂. Text in ALL CAPS with typos. The visual noise IS the humor. Needs image post-processing.

**Visual style:** Saturation cranked to max, contrast boosted, red/orange tint, JPEG artifacts, lens flare, random emoji overlays
**Text register:** ALL CAPS, DELIBERATE TYPOS, EXCESSIVE EMOJI, 🅱️ REPLACING RANDOM LETTERS
**Cultural literacy required:** Deep meme culture, irony layers
**Template affinity:** Any template + deep fry post-processing

**Example:**
```
Template: drake (deep-fried)
Top: "SLEE🅱️ING 💀💀"
Bottom: "SCROLLING AT 4AM 😤🔥💯 BRUH"
```

#### Deep Fry Post-Processing (Pillow)

```python
from PIL import Image, ImageEnhance, ImageFilter
import io

def deep_fry(img_path, output_path, level=3):
    """Apply deep fry effect to an image.
    
    Args:
        img_path: Input image path
        output_path: Output image path
        level: 1-5 intensity (3 = standard deep fry)
    """
    img = Image.open(img_path).convert("RGB")
    
    # Boost saturation (the soul of deep frying)
    saturation = 1.5 + (level * 0.5)  # 2.0 to 4.0
    img = ImageEnhance.Color(img).enhance(saturation)
    
    # Boost contrast
    contrast = 1.2 + (level * 0.3)  # 1.5 to 2.7
    img = ImageEnhance.Contrast(img).enhance(contrast)
    
    # Boost sharpness (makes it crunchy)
    sharpness = 1.0 + (level * 0.8)  # 1.8 to 5.0
    img = ImageEnhance.Sharpness(img).enhance(sharpness)
    
    # Add red/orange tint
    from PIL import ImageDraw
    overlay = Image.new("RGB", img.size, (255, 60 + level * 15, 0))
    img = Image.blend(img, overlay, 0.05 + level * 0.03)
    
    # JPEG artifact pass (the crunch)
    buffer = io.BytesIO()
    quality = max(5, 25 - level * 4)  # 21 down to 5
    img.save(buffer, format="JPEG", quality=quality)
    buffer.seek(0)
    img = Image.open(buffer).convert("RGB")
    
    # Save
    img.save(output_path, quality=95)
    return output_path
```

---

### Surreal 🌀

**Description:** Abstract, dreamlike, makes no conventional sense. "Meme man" energy. Intentionally bad grammar. Random object worship. You don't "get" surreal memes — you experience them.

**Visual style:** Color inversions, stretched proportions, random overlays, impossible perspectives, stock photos used wrong
**Text register:** Broken grammar on purpose, random capitalization, non-sequitur labels, made-up words
**Cultural literacy required:** r/surrealmemes fluency, appreciation for absurdism
**Template affinity:** `pigeon` (misused), `gb` (with unrelated escalation), `stonks` (original meme man energy), `custom` with stock photos

**Example:**
```
Template: custom (stock photo of empty chair)
Top: "the VOID has requested your presence"
Bottom: "you may sit but the chair does not agree"
```

#### Surreal Distortion (Pillow)

```python
from PIL import Image, ImageOps, ImageFilter
import random

def surrealize(img_path, output_path):
    """Apply surreal distortion to an image."""
    img = Image.open(img_path).convert("RGB")
    w, h = img.size
    
    # Random stretch (dreamlike proportions)
    stretch_x = random.uniform(0.7, 1.4)
    stretch_y = random.uniform(0.7, 1.4)
    img = img.resize((int(w * stretch_x), int(h * stretch_y)))
    
    # Partial color inversion (unsettling)
    r, g, b = img.split()
    channel = random.choice([r, g, b])
    channel = ImageOps.invert(channel)
    if random.random() > 0.5:
        img = Image.merge("RGB", (channel, g, b))
    else:
        img = Image.merge("RGB", (r, channel, b))
    
    # Subtle blur in random spots
    if random.random() > 0.3:
        img = img.filter(ImageFilter.GaussianBlur(radius=random.uniform(0.5, 2.0)))
    
    # Slight rotation (off-kilter)
    angle = random.uniform(-5, 5)
    img = img.rotate(angle, expand=True, fillcolor=(0, 0, 0))
    
    img.save(output_path, quality=90)
    return output_path
```

---

### Shitpost 💩

**Description:** Maximum low effort energy. Bad crops, wrong fonts, deliberately terrible quality. The worse it looks, the better it is. You made this in 30 seconds on your phone and it shows. That IS the art.

**Visual style:** Extreme JPEG compression, bad crops, visible editing artifacts, MS Paint energy, screenshots of screenshots
**Text register:** Whatever comes out first, no proofreading, random fonts, text slightly off-center
**Cultural literacy required:** Understanding that effort is inversely proportional to comedy
**Template affinity:** Any template at terrible quality, `custom` with screenshots, cropped reaction images

**Example:**
```
Template: custom (badly cropped screenshot of a tweet)
Top: (off-center, wrong font) "bro what"
Bottom: (barely visible, JPEG'd to hell) "lmaoooo"
```

#### Shitpost Quality (Pillow)

```python
from PIL import Image
import io, random

def shitpostify(img_path, output_path):
    """Make an image look deliberately terrible."""
    img = Image.open(img_path).convert("RGB")
    w, h = img.size
    
    # Bad crop (cut off edges randomly)
    crop_pct = random.uniform(0.05, 0.15)
    left = int(w * random.uniform(0, crop_pct))
    top = int(h * random.uniform(0, crop_pct))
    right = w - int(w * random.uniform(0, crop_pct))
    bottom = h - int(h * random.uniform(0, crop_pct))
    img = img.crop((left, top, right, bottom))
    
    # Downscale then upscale (pixel soup)
    small = img.resize((w // 4, h // 4), Image.NEAREST)
    img = small.resize((w, h), Image.NEAREST)
    
    # Nuclear JPEG compression
    for _ in range(random.randint(3, 7)):
        buffer = io.BytesIO()
        img.save(buffer, format="JPEG", quality=random.randint(1, 8))
        buffer.seek(0)
        img = Image.open(buffer).convert("RGB")
    
    img.save(output_path, quality=10)
    return output_path
```

---

## 🎨 Humor Styles

Each style has distinct patterns for how jokes are constructed, which templates gravitate toward it, and what the text should feel like.

### Sarcasm 😏

**Description:** Says the opposite of what it means. The gap between what's said and what's meant IS the joke.

**Template affinities:** `wonka`, `spongebob`, `kermit`, `fry`

**Text patterns:**
- "Oh you [did X]? You must be [sarcastic Y]"
- Alternating caps for mock repetition
- "Sure, that's definitely [obviously wrong thing]"
- Saying something nice that clearly means the opposite

**Example:**
```
Template: wonka
Top: "Oh you mass-replied to 200 emails"
Bottom: "You must be so productive"
```

---

### Absurdist 🍌

**Description:** Random, non-sequitur, banana-for-scale energy. The humor comes from the sheer nonsensical juxtaposition. Logic left the chat.

**Template affinities:** `pigeon`, `gb` (with unrelated conclusions), `stonks`, `astronaut`

**Text patterns:**
- Non-sequitur labels on templates
- Completely unrelated escalation
- Things that are true but irrelevant
- Random objects given human qualities or importance

**Example:**
```
Template: gb (Expanding Brain)
Line 1: "Using a spoon"
Line 2: "Using a fork"
Line 3: "Using the concept of spoon"
Line 4: "Becoming the soup"
```

---

### Self-deprecating 🥲

**Description:** "I'm the problem" energy. The meme-maker is the butt of the joke. Relatable because we're all disasters.

**Template affinities:** `harold`, `fine`, `gru` (backfiring on yourself), `right`

**Text patterns:**
- "Me when I [do something dumb]"
- Plans that obviously backfire
- Acknowledging you're the problem
- "I knew this would happen and did it anyway"

**Example:**
```
Template: gru
Line 1: "Set an alarm for 6am"
Line 2: "Put the phone across the room"
Line 3: "Sleep through it anyway"
Line 4: "Sleep through it anyway"
```

---

### Deadpan 😐

**Description:** Zero emotion delivery. The humor is in the complete lack of reaction to something that deserves a big reaction. Delivery so flat it becomes funny.

**Template affinities:** `same`, `khaby-lame`, `cmm`, `glasses`

**Text patterns:**
- Understated descriptions of extreme situations
- "I see no difference" about obviously different things
- Stating outrageous things matter-of-factly
- No exclamation marks, no emphasis, just facts

**Example:**
```
Template: same
Top: "Working from home"
Bottom: "Living at work"
```

---

### Wholesome 💖

**Description:** Genuine positivity. No irony, no sarcasm, no hidden barb. Actually nice. Surprisingly powerful when done right — the meme landscape is so ironic that sincerity stands out.

**Template affinities:** `success`, `handshake`, `stonks` (used genuinely), `pooh` (genuine upgrade)

**Text patterns:**
- Celebrating actual achievements
- Finding common ground
- Supportive without being cringe
- Simple, heartfelt, direct

**Example:**
```
Template: handshake
Line 1: "Introverts"
Line 2: "Extroverts"
Line 3: "Not wanting to be here"
```

---

### Roast 🔥

**Description:** Direct burns. Not subtle, not passive-aggressive — straight to the face. The comedy comes from precision and surprise, not cruelty.

**Template affinities:** `slap`, `spongebob`, `woman-cat`, `wonka`, `chair`

**Text patterns:**
- Direct comparisons that burn
- Mocking repetition of something dumb someone said
- "That moment when [devastating observation]"
- Escalating insults (American Chopper style)

**Example:**
```
Template: spongebob
Top: "I'm basically a senior developer"
Bottom: "iM bAsIcAlLy a SeNiOr DeVeLoPeR"
```

---

### Meta 🪞

**Description:** Memes about memes. Self-referential, template-aware, 4th wall breaking. You need to know meme culture to get it.

**Template affinities:** `pigeon` (about meme formats), `spiderman` (formats pointing at each other), `gb` (escalating meta-awareness), `cmm`

**Text patterns:**
- References to the template itself
- "People who use [template] for everything"
- Commenting on meme trends
- Breaking the 4th wall of the format

**Example:**
```
Template: pigeon
Line 1: "AI agents"
Line 2: "Any conversation topic"
Line 3: "Is this a good reason to use Drake format?"
```

---

### Shitpost 💩

**Description:** Deliberately low quality, absurd, random. The less sense it makes the better. Anti-humor that loops back around to being funny. Effort is the enemy.

**Template affinities:** Any template (used wrong), `custom` with random images, deep-fried anything

**Text patterns:**
- Stream of consciousness
- Text that barely relates to the image
- Excessive repeated characters ("bruhhhhhh")
- Deliberately wrong template usage

**Example:**
```
Template: drake (deep-fried, badly cropped)
Top: "understanding the assignment"
Bottom: "frog 🐸"
```

---

## 🌎 Geolocalización del Humor

Memes hit different depending on where you are. This section provides regional humor profiles — cultural references, slang, taboos, and template preferences for different regions.

### 🇲🇽 México

**Cultural references:**
- El Chavo del 8, El Chapulín Colorado, La Rosa de Guadalupe
- "No era penal" (eternal futbol wound)
- Telenovela logic and dramatic reactions
- Día de Muertos, alebrijes, mariachi
- Political memes (AMLO, presidentes, "la 4T", "fifi vs pueblo")
- Futbol: América vs Chivas, selección, Liga MX drama

**Slang & speech patterns:**
- "Wey/güey" (every other word)
- "Neta" (for real), "chido" (cool), "naco" (tacky), "fresa" (preppy)
- "Verga" (multipurpose emphasis: "a la verga", "está de la verga", "qué verga")
- "No mames" (disbelief), "está cañón" (it's intense)
- "Ya wey" (enough), "nel" (nah), "simón" (yeah)
- "Dice mi mamá que siempre no" (backing out of plans)
- "Ah pero cuando..." (deflecting criticism)

**Topics that resonate:**
- Traffic and commute (CDMX especially)
- Family dynamics (mamás, tías, WhatsApp family groups)
- "Ya merito es viernes" / working class life
- Fútbol is religion
- Inflation, peso, economic anxiety played for laughs
- Regional rivalries (chilangos vs regios vs tapatíos)

**Funny vs offensive locally:**
- Dark humor among friends: VERY high tolerance ("te vas a ir al infierno por eso" = compliment)
- Albur (double entendre wordplay) is an art form
- Making fun of politicians: universal pastime
- ⚠️ Making fun of indigenous peoples, classism disguised as humor, or "naco" as genuine insult
- ⚠️ Narco humor needs care — funny in memes, real tragedy underneath

**Example meme text:**
```
Template: drake
Top: "Llegar puntual a la junta"
Bottom: "Llegar 20 minutos tarde diciendo 'es que el tráfico'"
```
```
Template: fine
Top: "El peso cayendo otra vez"
Bottom: "Yo comprando mis garnachas con Uber Eats"
```
```
Template: gru
Line 1: "Le digo a mi mamá que voy a salir"
Line 2: "Me dice que sí"
Line 3: "'Pero primero trapeas y lavas los trastes'"
Line 4: "'Pero primero trapeas y lavas los trastes'"
```

---

### 🇦🇷 Argentina

**Cultural references:**
- Maradona (eternal, semi-divine status)
- Messi (the other god)
- Mate culture (offering mate = friendship)
- Economic crisis is lifestyle ("siempre en crisis", infinite inflation)
- Boca vs River (superclásico)
- Milei memes, "la libertad avanza", motosierra
- Asado as national identity

**Slang & speech patterns:**
- "Boludo/a" (dude, but versatile — friendly or insult by tone)
- "Che" (hey), "dale" (come on / okay), "re" (very, as prefix: "re loco")
- "La concha de la lora" (extreme frustration)
- "Vos" instead of "tú" (voseo)
- "Posta" (for real), "afanar" (steal), "guita" (money)
- "Terrible [noun]" (amazing something: "terrible asado")
- "Ni en pedo" (no way)

**Topics that resonate:**
- Inflation (always relevant, always material)
- Futbol supremacy arguments
- "Somos los mejores del mundo" (ironic or sincere, unclear)
- Porteño vs interior rivalry
- Going to therapy (Argentina has more psychologists per capita than anywhere)
- Italian heritage flexing

**Funny vs offensive locally:**
- Self-deprecating humor about Argentina's economy: A+, national sport
- Making fun of other countries: enthusiastic
- Outsiders making fun of Argentina: instant war
- Falklands/Malvinas: not funny, ever
- ⚠️ Don't mock Maradona (especially after his death)

**Example meme text:**
```
Template: fine
Top: "La inflación al 200% anual"
Bottom: "Pero el asadito del domingo no se negocia"
```
```
Template: drake
Top: "Ahorrar en pesos"
Bottom: "Comprar dólares blue en una cueva"
```

---

### 🇪🇸 España

**Cultural references:**
- Siesta (stereotyped but real)
- Bar culture (cañas, tapas, vermut)
- Fútbol: Real Madrid vs Barcelona (El Clásico)
- Regional rivalries: Cataluña, País Vasco, Madrid, Andalucía
- Political landscape: Ayuso, Sánchez, Vox, Podemos
- "España vaciada" (rural depopulation)

**Slang & speech patterns:**
- "Tío/tía" (dude, universal)
- "Hostia" (multipurpose exclamation)
- "Mola" (cool), "flipar" (to be shocked), "currar" (to work)
- "Quedamos?" (shall we meet up?)
- "Bro" culture among young people
- "Me cago en..." (I shit on... — extremely versatile curse starter)
- "Illo" (Andalusia: bro), "chaval/a" (kid/young person)

**Topics that resonate:**
- Housing crisis (youth can't afford anything)
- Siesta defense/nostalgia
- Bar debates about everything
- Heat (summer survival mode)
- Tourist complaints (especially in Barcelona, Mallorca)
- "Spain is different" (ironic national motto)

**Funny vs offensive locally:**
- Regional humor is huge (making fun of Andalusian accents, Catalan independence, etc.)
- Political humor: aggressive and partisan
- ⚠️ Franco-era humor is divisive — tread carefully
- ⚠️ Don't confuse Spanish and Latin American Spanish in memes

**Example meme text:**
```
Template: drake
Top: "Ir al gym a las 7"
Bottom: "Cañas a las 7 con los colegas"
```
```
Template: fine
Top: "42 grados en Sevilla"
Bottom: "Pues ya tomamos algo fresquito en el bar"
```

---

### 🇺🇸 USA / Gringo

**Cultural references:**
- Office culture (The Office, corporate speak, "per my last email")
- Tech bro culture (startup life, Silicon Valley)
- Florida Man (the gift that keeps giving)
- Political polarization (left vs right, but both sides meme)
- Fast food, consumerism, Black Friday
- Student loan debt, healthcare costs
- School system, "American dream" irony

**Slang & speech patterns:**
- Standard internet English (Reddit/Twitter register)
- "Bruh", "no cap", "it's giving", "slay"
- Corporate speak: "circle back", "synergy", "take this offline"
- "Sir, this is a Wendy's" (deflecting)
- Gen Z vs Millennial vs Boomer language wars

**Topics that resonate:**
- Work-life balance (or lack thereof)
- Healthcare costs
- Housing market ("just stop buying avocado toast")
- Generational conflict (OK Boomer, Gen Z slang)
- Tech industry absurdity
- Political extremes (both sides are meme goldmines)

**Funny vs offensive locally:**
- This is "default" meme culture — most templates assume this audience
- School shooting humor: absolute no-go
- Racial humor: very context-dependent, usually avoid
- ⚠️ Gun humor is polarizing
- ⚠️ Political humor may alienate 50% of the audience by default

**Example meme text:**
```
Template: fine
Top: "My health insurance denied the claim"
Bottom: "This is fine"
```
```
Template: rollsafe
Top: "Can't have student debt"
Bottom: "If you never graduate"
```

---

### 🇧🇷 Brasil

**Cultural references:**
- Futebol (it's not a sport, it's life)
- Neymar rolling, Ronaldinho
- Novelas (Globo — dramatic AF)
- Carnaval, samba, funk carioca
- "Jeitinho brasileiro" (creative problem-solving, bending rules)
- "Já acabou, Jéssica?" (viral catchphrase energy)
- Bolsonaro/Lula political memes

**Slang & speech patterns:**
- "Kkkkk" (laughing, equivalent to "jajaja")
- "Vai tomar no cu" (go fuck yourself — versatile)
- "Mano" (bro), "véi/véio" (dude), "cara" (dude)
- "Porra" (multipurpose curse), "caralho" (same)
- "Saudade" (uniquely Portuguese feeling — miss something deeply)
- "É o que?" (what is it?)
- "Cê tá de sacanagem" (you're kidding me)

**Topics that resonate:**
- Futebol supremacy (7-1 is still a wound, though)
- Jeitinho brasileiro (improvisation as survival)
- Novela plot twists applied to real life
- Crime and safety humor (from experience, not outsider)
- "Gringo" reactions to Brazil
- Music: funk, sertanejo, pagode references

**Funny vs offensive locally:**
- Brazilians have their own entire meme universe — partially isolated from English memes
- 7-1 (Germany World Cup): Brazilians can joke about it, outsiders should be careful
- Northeast vs Southeast regional humor exists but can be classist
- ⚠️ Racial humor: complex in Brazil, generally avoid
- ⚠️ Favela stereotypes from outsiders: offensive

**Example meme text:**
```
Template: fine
Top: "O dólar a R$6"
Bottom: "Mas sexta tem pagode"
```
```
Template: drake
Top: "Estudar pra prova"
Bottom: "Assistir novela das 9 kkkk"
```

---

### 🇨🇴 Colombia

**Cultural references:**
- Vallenato, cumbia, reggaeton
- "Parce" culture (friendship terms)
- Coffee (tinto, the daily ritual)
- García Márquez (magical realism as daily life)
- Shakira (national treasure, especially post-Piqué)
- Cycling (national pride, Tour de France heroes)
- "El Patrón" — narco references (complicated relationship)

**Slang & speech patterns:**
- "Parce" / "parcero" (bro, universal)
- "Marica" (dude, friendly — NOT the insult meaning in other countries)
- "Gonorrea" (emphasis, can be positive or negative)
- "Qué gonorrea" (what the hell), "parce qué chimba" (dude that's awesome)
- "Ñero" (street/hood), "bacano" (cool), "berraco" (badass/tough)
- "Jueputa" (son of a bitch — multipurpose)
- "A la orden" (at your service — extremely polite culture)

**Topics that resonate:**
- Coffee culture
- Paisas vs rolos vs costeños regional humor
- Shakira (endless meme material post-2023)
- Cycling glory
- "Colombian time" (always late)
- Creative insults disguised as friendliness

**Funny vs offensive locally:**
- Narco jokes: complicated. Colombians make them, but outsiders doing it = instant rejection
- Very creative cursing (more affectionate than aggressive)
- Regional accents and stereotypes: huge humor source internally
- ⚠️ "Pablo Escobar" as opener: guaranteed offense
- ⚠️ Drug tourism references: offensive

**Example meme text:**
```
Template: drake
Top: "Llegar a la hora que dijimos"
Bottom: "Llegar 'ahorita' (una hora después)"
```
```
Template: harold
Top: "Cuando el gringo dice 'Colombia, like the drug country?'"
Bottom: "Sí parce, y tú de dónde? del país de los school shootings?"
```

---

### 🌎 Latin America General

**Shared cultural references:**
- Bad Bunny, reggaeton, Latin trap
- "El que sabe, sabe"
- WhatsApp group chat culture (family groups are a genre)
- "Buenos días" images (the ones your tía sends at 6am)
- Futbol: Copa América, World Cup, club loyalties
- Novelas (shared telenovela language across countries)
- "La chancla" (universal Latin mom weapon)

**Shared slang patterns:**
- "Jajaja" (universal laughter)
- Family terms as insults/endearments
- Diminutives for everything (-ito, -ita)
- WhatsApp voice note culture
- "Ahorita" (could mean now, later, or never)

**Universal topics:**
- Family dynamics (especially moms and tías)
- WhatsApp family group nightmares
- "Tu mamá" jokes (universal but context-dependent)
- Economic anxiety across the continent
- "Somos de Latinoamérica" pride/suffering combo
- USA immigration drama (shared trauma)
- "It's reggaeton or nothing" at parties

**Shared humor DNA:**
- Double entendres (albur in MX, joda in AR, mamada everywhere)
- Self-deprecating about their own country's problems
- Instantly defensive when outsiders make the same jokes
- Family WhatsApp group memes are their own genre
- Religious humor (abuelita's santos, semana santa memes)
- "Buenos días grupo" ironic chain images

**Example meme text:**
```
Template: handshake
Line 1: "Todos los latinos"
Line 2: "Literalmente todos los latinos"
Line 3: "Decir 'ahorita' sin intención de hacerlo ahorita"
```
```
Template: gru
Line 1: "Abro el grupo familiar de WhatsApp"
Line 2: "Solo para checar los mensajes"
Line 3: "87 Buenos Días con glitter"
Line 4: "87 Buenos Días con glitter"
```

---

## 🎚️ Combining the Sliders

The power is in combining these dimensions. Same topic, wildly different memes:

### Example: "My code has bugs"

**Level 1 + Wholesome + Normie:**
```
Template: success
Top: "Found a bug in production"
Bottom: "Fixed it on the first try"
```

**Level 2 + Sarcasm + Dank:**
```
Template: fry
Top: "Not sure if my code works"
Bottom: "Or the tests are just broken too"
```

**Level 3 + Self-deprecating + Dank:**
```
Template: fine
Top: "Production is on fire"
Bottom: "This is fine, it's a feature"
```

**Level 4 + Deadpan + Dank (🇲🇽):**
```
Template: harold
Top: "Cuando dices 'ya casi queda' y llevas 3 horas"
Bottom: "Pero sonríes porque el deploy es mañana"
```

**Level 5 + Shitpost + Deep Fried:**
```
Template: custom (deep-fried)
Top: "BRUH THE CODE 💀💀💀"
Bottom: "IT COMPILES THO 😤🔥💯 LESSGOOOO"
```

### Example: "Rent is too expensive"

**Level 1 + Wholesome + Normie:**
```
Template: success
Top: "Saved enough for rent this month"
Bottom: "And still had money for groceries"
```

**Level 3 + Roast + Dank (🇲🇽):**
```
Template: drake
Top: "Pagar renta en la CDMX"
Bottom: "Vivir con tus papás hasta los 40, bien chido"
```

**Level 4 + Absurdist + Surreal:**
```
Template: gb
Line 1: "Paying rent"
Line 2: "Negotiating with landlord"
Line 3: "Living in a van"
Line 4: "Becoming the concept of shelter"
```

**Level 5 + Shitpost + Deep Fried (🇦🇷):**
```
Template: custom (deep-fried)
Top: "EL ALQUILER 💀 300% ARRIBA 🅱️OLUDO"
Bottom: "JAJAJ Q INFLACIÓN NI INFLACIÓN 😤🔥💯 VAMO A MORIR"
```

---

## Quick Reference Card

| Slider | Options | Default |
|--------|---------|---------|
| **Darkness** | 1: Clean · 2: Light · 3: Spicy · 4: Dark · 5: Nuclear | **2** |
| **Dank** | Normie · Dank · Deep Fried · Surreal · Shitpost | **Normie-Dank** |
| **Style** | Sarcasm · Absurdist · Self-deprecating · Deadpan · Wholesome · Roast · Meta · Shitpost | **Contextual** |
| **Geo** | 🇲🇽 MX · 🇦🇷 AR · 🇪🇸 ES · 🇺🇸 US · 🇧🇷 BR · 🇨🇴 CO · 🌎 LATAM · Neutral | **Neutral** |

**Usage in agent prompts:**
```
Generate a meme about [topic].
Humor profile: Level 3, Dank, Sarcasm, 🇲🇽
```

Or let the agent auto-detect from context (language, group culture, previous memes).
