Prep the lettuce: Separate leaves and rinse gently.
Pat dry well or spin in a salad spinner. Keep the best cup-shaped leaves for wraps and set aside in the fridge to stay crisp.
Mix the seasoning: In a small bowl, combine 2 teaspoons chili powder, 1 teaspoon ground cumin, 1/2 teaspoon smoked paprika, 1/2 teaspoon dried oregano, 1/2 teaspoon salt, 1/4 teaspoon black pepper, and a pinch of red pepper flakes if you like heat.
Chop aromatics: Finely dice the onion and mince the garlic. Keep them separate.
Brown the protein: Heat 1 tablespoon oil in a large skillet over medium-high.
Add the ground meat and break it up. Cook until browned with some crispy bits, about 5–7 minutes. Drain excess fat if needed.
Soften aromatics: Push the meat to one side.
Add a little more oil if the pan is dry. Sauté onion for 2–3 minutes until translucent, then add garlic for 30 seconds until fragrant.
Season and sauce: Sprinkle the spice mix over the meat and onions. Stir in 1–2 tablespoons tomato paste and cook for 1 minute.
Add 1/3 cup broth or water and simmer 2–3 minutes until thick and glossy. Taste and adjust salt.
Prep toppings: Dice avocado, slice jalapeños, chop cilantro, and cut lime wedges. If using beans or corn, warm them briefly in a small pan with a pinch of salt.
Assemble: Lay out lettuce cups.
Spoon in the spiced meat. Top with tomatoes or pico, avocado, onion, and jalapeños. Add cheese and a dollop of Greek yogurt or sour cream if you like.
Finish with cilantro and a squeeze of lime.
Serve immediately: Lettuce is best crisp. Bring everything to the table and let people build their own.