Heat the oven: Preheat to 400°F (200°C).
Lightly oil a 9x13-inch baking dish or similar casserole dish.
Mix the spices: In a small bowl, combine chili powder, cumin, smoked paprika, garlic powder, onion powder, salt, and pepper.
Season the fish: Pat the fish dry, drizzle with olive oil, sprinkle with the spice blend and lime zest, and toss gently to coat.
Prep the yogurt sauce: Stir together Greek yogurt, mayo, lime juice, cilantro, and a pinch of salt until smooth. Set aside.
Soften the tortillas (optional but helpful): Stack and microwave the tortillas for 20–30 seconds to make them more pliable. Cut into quarters.
Layer 1: Spread half the salsa on the bottom of the dish.
Arrange half the tortilla pieces over it, slightly overlapping.
Layer 2: Scatter half the seasoned fish pieces over the tortillas. Add half the sliced onion and bell pepper. Drizzle with half the yogurt sauce.
Layer 3: Add the remaining tortillas, then the remaining salsa, fish, onion, and bell pepper.
Dot with the rest of the yogurt sauce.
Top it: Sprinkle cheese on top if using.
Bake: Cover loosely with foil and bake for 12 minutes. Remove foil and bake another 8–12 minutes, until the fish flakes easily and the edges are bubbling. Total time depends on fish thickness; start checking at 18–20 minutes.
Rest: Let the casserole rest for 5–10 minutes so it sets slightly.
Add crunch and freshness: Pile shredded cabbage on top and sprinkle with cilantro.
Add diced avocado and a squeeze of fresh lime. Finish with hot sauce if you like heat.
Serve: Scoop into bowls and add extra lime wedges on the side.