= Safety Yellow's Sorting Game
:toc:
:icons: font

*A card game for 2-6 players, ages 8+*

image::../assets/yellow-banner.svg[Safety Yellow]

== Overview

Sort items into the correct bins before time runs out! But be careful - putting the wrong thing in a bin causes an ERROR!

*Players:* 2-6
*Time:* 15-25 minutes
*Ages:* 8+ (Cuttle stage)

== What's In The Box

* 48 Item Cards (various types)
* 12 Bin Cards (6 types × 2 each)
* 12 Wild Cards (fits anywhere)
* 8 Error Cards
* 1 Timer (or use phone)
* Rules card

== Item Types

[cols="1,2,3"]
|===
|Type |Color |Examples

|🍎 Food |Red |Apple, Strawberry, Pizza, Cookie
|🐱 Animals |Orange |Cat, Dog, Fish, Bird
|🚗 Vehicles |Blue |Car, Bus, Bike, Plane
|🌳 Nature |Green |Tree, Flower, Rock, Cloud
|📚 Objects |Purple |Book, Phone, Chair, Ball
|⭐ Shapes |Yellow |Circle, Square, Triangle, Star
|===

== Setup

1. Shuffle all Item cards
2. Deal 5 cards to each player
3. Place 3 random Bin cards in the center (shared)
4. Remaining cards form the draw pile

== How To Play

=== On Your Turn

1. **Play** 1 Item card into a matching Bin
2. **OR Draw** 1 card if you can't play
3. **Check** if any bins are full (5 items = score!)

=== Matching Rules

Items must match their Bin type:

----
🍎 Food Bin:     Can hold 🍎 Apple, 🍕 Pizza, 🍪 Cookie
🐱 Animal Bin:   Can hold 🐱 Cat, 🐶 Dog, 🐟 Fish
----

*WRONG matches cause ERRORS!*

----
❌ Putting 🐱 Cat in 🍎 Food Bin = ERROR!
❌ Putting 🚗 Car in 🐱 Animal Bin = ERROR!
----

=== Errors

If you play a card in the wrong bin:

1. Take the card back
2. Draw 1 Error card (negative points!)
3. Your turn ends

=== Wild Cards

Wild cards (🌈) can go in ANY bin! Use them wisely.

=== Scoring a Bin

When a bin has 5 matching items:

1. The player who placed the 5th item scores it
2. Takes all 5 cards (worth 1 point each)
3. Replace with a new Bin from the deck

== Winning

Game ends when:
* Draw pile is empty AND
* No one can play

*Scoring:*
* +1 point per item card scored
* +2 points per Wild card scored
* -2 points per Error card

Highest score wins!

== The Secret (Don't Tell the Kids!)

[NOTE]
====
*What they're learning:*

* **Types:** Each item has a "type" (Food, Animal, Vehicle...)
* **Type checking:** Bins only accept matching types
* **Type errors:** Wrong type in wrong place = error!
* **Type safety:** Careful sorting prevents errors

This is exactly how programming languages check types:

----
let pet: Animal = Cat    ✓ (types match)
let pet: Animal = Pizza  ✗ TYPE ERROR!
----

Yellow is teaching type systems!
====

== Quick Reference

----
MATCHING:
  🍎 Food    → 🍎 items only
  🐱 Animal  → 🐱 items only
  🚗 Vehicle → 🚗 items only
  (etc.)

SPECIAL:
  🌈 Wild = fits any bin

SCORING:
  Fill a bin (5 items) = score it!
  Wrong match = ERROR card (-2 pts)
----

== Variants

=== Type Mismatch (Advanced)

Add "Tricky" cards that LOOK like one type but ARE another:
* 🐠 Goldfish Cracker (Food, not Animal!)
* 🌭 Hot Dog (Food, not Animal!)

Forces players to read carefully - just like type annotations!

=== Speed Sorting

Everyone plays simultaneously! Race to empty your hand. First player out scores bonus.

=== Type Unions (Expert)

Add bins that accept MULTIPLE types:
* "Pet Food" bin accepts 🍎 Food OR 🐱 Animal
* Teaches union types!

---

*Part of the Seven Tentacles Educational Framework*
*Teaching compiler architecture through play*
