{
  "schemaVersion": "1.0",
  "kind": "comparison",
  "generatedAt": "2026-10-27T14:00:00.800Z",
  "host": "claude-code",
  "writtenBy": {
    "name": "mousa",
    "version": "0.7.1"
  },
  "medium": "game",
  "title": "For an audience that loves Fleetwood Mac, Wes Anderson, The Grand Budapest Hotel and Moonrise Kingdom",
  "audience": {
    "references": [
      {
        "name": "Fleetwood Mac",
        "found": true
      },
      {
        "name": "Wes Anderson",
        "found": true
      },
      {
        "name": "The Grand Budapest Hotel",
        "found": true
      },
      {
        "name": "Moonrise Kingdom",
        "found": true
      }
    ]
  },
  "headline": {
    "value": "0.57",
    "text": "heuristic distance between the two designs, from 0 (alike) to 1",
    "sentence": "9 of 9 devices rest on what the prediction did not contain."
  },
  "arms": [
    {
      "label": "With Qloo",
      "folder": "compare/with-qloo",
      "taste": "qloo",
      "kind": "session",
      "headline": {
        "value": "9 of 9",
        "text": "design devices rest on what the model did not predict",
        "sentence": "9 of 9 devices rest on what the prediction did not contain."
      },
      "link": "/gallery/saltmarsh-claude-code/arms/with-qloo/"
    },
    {
      "label": "Without Qloo",
      "folder": "compare/without-qloo",
      "taste": "own prediction",
      "kind": "baseline",
      "headline": {
        "value": "10",
        "text": "design devices rest on the model's own prediction, with no Qloo data",
        "sentence": "10 devices rest on the prediction alone; no Qloo data was used."
      },
      "link": "/gallery/saltmarsh-claude-code/arms/without-qloo/"
    }
  ],
  "samePrediction": true,
  "measure": "data",
  "distance": {
    "overall": 0.575,
    "palette": 0.236,
    "structure": 0.926,
    "voice": 0.763,
    "method": "Weighted heuristic over the files that differ between the two designs: palette CIE76 colour distance (45%), the parts they name, as ids in their data or as functions, classes and constants in their code (30%), and the words of their text (25%); a part neither design has is left out and the rest reweighted."
  },
  "prediction": {
    "frozenAt": "2026-10-26T21:18:18.650Z",
    "sha256": "aeaf7d0b808bdcd0a22c7cc263abbbd67b305dca0d289a83c3aedafcb3dc1643",
    "sealHolds": true,
    "summary": "Adults who love Wes Anderson's symmetrical, pastel, deadpan films and Fleetwood Mac's warm, melancholy 1970s soft rock. They like nostalgic, handmade, bittersweet stories about found family and gentle eccentrics, and they care about craft and curated detail.",
    "groups": [
      {
        "domain": "videogame",
        "label": "Games",
        "quality": false,
        "entries": [
          {
            "name": "Stardew Valley",
            "measured": false
          },
          {
            "name": "Night in the Woods",
            "measured": true
          },
          {
            "name": "Firewatch",
            "measured": true
          },
          {
            "name": "Gris",
            "measured": false
          },
          {
            "name": "Monument Valley",
            "measured": false
          },
          {
            "name": "A Short Hike",
            "measured": false
          }
        ]
      },
      {
        "domain": "movie",
        "label": "Films",
        "quality": false,
        "entries": [
          {
            "name": "Lost in Translation",
            "measured": true
          },
          {
            "name": "Little Miss Sunshine",
            "measured": false
          },
          {
            "name": "Almost Famous",
            "measured": true
          },
          {
            "name": "Amélie",
            "measured": false
          },
          {
            "name": "Lady Bird",
            "measured": false
          },
          {
            "name": "Paddington 2",
            "measured": false
          }
        ]
      },
      {
        "domain": "tv_show",
        "label": "TV",
        "quality": false,
        "entries": [
          {
            "name": "Twin Peaks",
            "measured": false
          },
          {
            "name": "Fleabag",
            "measured": false
          },
          {
            "name": "Gilmore Girls",
            "measured": false
          },
          {
            "name": "Arrested Development",
            "measured": false
          },
          {
            "name": "Russian Doll",
            "measured": false
          }
        ]
      },
      {
        "domain": "artist",
        "label": "Music",
        "quality": false,
        "entries": [
          {
            "name": "Stevie Nicks",
            "measured": false
          },
          {
            "name": "The Kinks",
            "measured": false
          },
          {
            "name": "Simon & Garfunkel",
            "measured": false
          },
          {
            "name": "Big Thief",
            "measured": false
          },
          {
            "name": "The Velvet Underground",
            "measured": true
          },
          {
            "name": "Joni Mitchell",
            "measured": false
          }
        ]
      },
      {
        "domain": "book",
        "label": "Books",
        "quality": false,
        "entries": [
          {
            "name": "The Secret History",
            "measured": false
          },
          {
            "name": "Norwegian Wood",
            "measured": false
          },
          {
            "name": "The Royal Tenenbaums screenplay",
            "measured": true,
            "as": "The Royal Tenenbaums (film)"
          },
          {
            "name": "Franny and Zooey",
            "measured": false
          },
          {
            "name": "The Catcher in the Rye",
            "measured": true
          }
        ]
      },
      {
        "domain": "style",
        "label": "Pacing",
        "quality": true,
        "entries": [
          {
            "name": "symmetrical framing",
            "measured": false
          },
          {
            "name": "deadpan whimsy",
            "measured": false
          },
          {
            "name": "slow lingering takes",
            "measured": false
          },
          {
            "name": "chapter title cards",
            "measured": false
          },
          {
            "name": "nostalgic 1970s grain",
            "measured": false
          }
        ]
      },
      {
        "domain": "aesthetic",
        "label": "Surfaces",
        "quality": true,
        "entries": [
          {
            "name": "pastel",
            "measured": false
          },
          {
            "name": "vintage",
            "measured": false
          },
          {
            "name": "handmade",
            "measured": false
          },
          {
            "name": "retro 70s",
            "measured": false
          },
          {
            "name": "dollhouse diorama",
            "measured": false
          },
          {
            "name": "film grain",
            "measured": false
          }
        ]
      },
      {
        "domain": "tone",
        "label": "Tone",
        "quality": true,
        "entries": [
          {
            "name": "bittersweet",
            "measured": false
          },
          {
            "name": "melancholic",
            "measured": true
          },
          {
            "name": "whimsical",
            "measured": false
          },
          {
            "name": "nostalgic",
            "measured": false
          },
          {
            "name": "wistful",
            "measured": false
          }
        ]
      },
      {
        "domain": "qualities",
        "label": "Shared qualities",
        "quality": true,
        "entries": [
          {
            "name": "quirky",
            "measured": true
          },
          {
            "name": "coming of age",
            "measured": false
          },
          {
            "name": "found family",
            "measured": true,
            "as": "Family"
          },
          {
            "name": "eccentric characters",
            "measured": false
          },
          {
            "name": "nostalgia",
            "measured": false
          },
          {
            "name": "romantic",
            "measured": false
          }
        ]
      },
      {
        "domain": "art_style",
        "label": "Art styles",
        "quality": true,
        "entries": [
          {
            "name": "pixel art",
            "measured": false
          },
          {
            "name": "hand-drawn",
            "measured": false
          },
          {
            "name": "flat pastel illustration",
            "measured": false
          },
          {
            "name": "stop-motion",
            "measured": false
          },
          {
            "name": "diorama",
            "measured": false
          }
        ]
      }
    ],
    "sketch": {
      "summary": "A symmetrical pastel pixel-art seaside town (Saltmarsh) seen like a diorama, split into chapter title cards, where the player walks a small grid, talks to deadpan eccentrics, collects lost items for them and finds the pieces of a song on a record player, ending in a bittersweet sunset farewell.",
      "palette": [
        "#f2c6c2",
        "#f6e3b4",
        "#9ec1b8",
        "#c9584a",
        "#3e3a5c"
      ],
      "fonts": [
        "Jost",
        "Courier Prime"
      ],
      "sections": [
        "title-card",
        "town-map",
        "dialogue-box",
        "inventory",
        "chapter-card",
        "ending-card"
      ],
      "motifs": [
        "symmetrical centered framing",
        "chapter title cards",
        "pastel seaside diorama",
        "vinyl record and song fragments",
        "1970s film grain"
      ]
    }
  },
  "measured": {
    "counts": {
      "works": 60,
      "worksPredicted": 7,
      "worksNew": 53,
      "qualities": 18,
      "qualitiesPredicted": 3,
      "tags": 24,
      "tagsPredicted": 0,
      "artStyles": 8,
      "predictions": 28,
      "predictionsMeasured": 7,
      "requests": 19,
      "fromCache": 0
    },
    "qualities": {
      "look": [
        {
          "name": "artistic",
          "kind": "look quality",
          "mark": "new",
          "works": [
            "The Velvet Underground",
            "Talking Heads",
            "The Unfinished Swan"
          ],
          "domains": [
            "music",
            "game"
          ],
          "lift": 4
        },
        {
          "name": "Intimate",
          "kind": "look quality",
          "mark": "new",
          "works": [
            "Empire Falls",
            "Run",
            "Bob Dylan"
          ],
          "domains": [
            "TV",
            "music",
            "film"
          ],
          "lift": 1.7
        },
        {
          "name": "Theatrical",
          "kind": "look quality",
          "mark": "new",
          "works": [
            "Talking Heads",
            "David Bowie",
            "Rushmore"
          ],
          "domains": [
            "music",
            "film"
          ],
          "lift": 3.14
        },
        {
          "name": "Raw",
          "kind": "look quality",
          "mark": "new",
          "works": [
            "Run",
            "Neil Young",
            "Bob Dylan"
          ],
          "domains": [
            "TV",
            "music"
          ],
          "lift": 2.25
        },
        {
          "name": "Moody",
          "kind": "look quality",
          "mark": "new",
          "works": [
            "Quirke",
            "National Treasure",
            "Stay"
          ],
          "domains": [
            "TV",
            "film"
          ],
          "lift": 2.06
        }
      ],
      "mood": [
        {
          "name": "melancholic",
          "kind": "mood quality",
          "mark": "predicted",
          "works": [
            "Run",
            "Firewatch",
            "Night in the Woods"
          ],
          "domains": [
            "TV",
            "game",
            "film"
          ],
          "lift": 3.5
        },
        {
          "name": "thought-provoking",
          "kind": "mood quality",
          "mark": "new",
          "works": [
            "Her",
            "RiME",
            "The Witness"
          ],
          "domains": [
            "film",
            "game"
          ],
          "lift": 3.81
        },
        {
          "name": "tense",
          "kind": "mood quality",
          "mark": "new",
          "works": [
            "Firewatch",
            "INSIDE",
            "Oxenfree"
          ],
          "domains": [
            "game",
            "film"
          ],
          "lift": 2.53
        },
        {
          "name": "innovative",
          "kind": "mood quality",
          "mark": "new",
          "works": [
            "Talking Heads",
            "Neil Young",
            "Jeff Buckley"
          ],
          "domains": [
            "music",
            "game"
          ],
          "lift": 1.93
        },
        {
          "name": "Reflective",
          "kind": "mood quality",
          "mark": "new",
          "works": [
            "Boyhood",
            "Lost in Translation",
            "Frances Ha"
          ],
          "domains": [
            "film",
            "game"
          ],
          "lift": 1.44
        }
      ],
      "meaning": [
        {
          "name": "Drama loving",
          "kind": "meaning quality",
          "mark": "new",
          "works": [
            "Sweetbitter",
            "Submarine",
            "Frances Ha"
          ],
          "domains": [
            "TV",
            "film"
          ],
          "lift": 2.63
        },
        {
          "name": "Loyal",
          "kind": "meaning quality",
          "mark": "new",
          "works": [
            "The No. 1 Ladies' Detective Agency",
            "Bob Dylan",
            "Nick Drake"
          ],
          "domains": [
            "TV",
            "music",
            "film"
          ],
          "lift": 1.57
        },
        {
          "name": "Family",
          "kind": "meaning quality",
          "mark": "predicted",
          "works": [
            "Keeping Faith",
            "The Darjeeling Limited",
            "Familiar Grounds"
          ],
          "domains": [
            "TV",
            "film"
          ],
          "lift": 2.09
        },
        {
          "name": "Addiction",
          "kind": "meaning quality",
          "mark": "new",
          "works": [
            "National Treasure",
            "Lou Reed"
          ],
          "domains": [
            "TV",
            "music"
          ],
          "lift": 2.5
        },
        {
          "name": "Love",
          "kind": "meaning quality",
          "mark": "new",
          "works": [
            "Neil Young",
            "Her",
            "Tom Waits"
          ],
          "domains": [
            "music",
            "film"
          ],
          "lift": 1.51
        }
      ]
    },
    "tags": {
      "pacing": [
        {
          "name": "Cinematic Journey",
          "kind": "pacing",
          "mark": "new"
        },
        {
          "name": "Abrasive",
          "kind": "pacing",
          "mark": "new"
        },
        {
          "name": "Stylized",
          "kind": "pacing",
          "mark": "new"
        },
        {
          "name": "Rhythmically Charged",
          "kind": "pacing",
          "mark": "new"
        },
        {
          "name": "Artistically Rich",
          "kind": "pacing",
          "mark": "new"
        },
        {
          "name": "Psychological Intensity",
          "kind": "pacing",
          "mark": "new"
        }
      ],
      "surfaces": [
        {
          "name": "Experimental",
          "kind": "surface",
          "mark": "new"
        },
        {
          "name": "Modern Tailoring",
          "kind": "surface",
          "mark": "new"
        },
        {
          "name": "Sensual",
          "kind": "surface",
          "mark": "new"
        },
        {
          "name": "Sexy",
          "kind": "surface",
          "mark": "new"
        },
        {
          "name": "timeless appeal",
          "kind": "surface",
          "mark": "new"
        },
        {
          "name": "Artsy",
          "kind": "surface",
          "mark": "new"
        }
      ],
      "tone": [
        {
          "name": "Bohemian",
          "kind": "tone",
          "mark": "new"
        },
        {
          "name": "Sophistication",
          "kind": "tone",
          "mark": "new"
        },
        {
          "name": "Mysterious",
          "kind": "tone",
          "mark": "new"
        },
        {
          "name": "Confidence",
          "kind": "tone",
          "mark": "new"
        },
        {
          "name": "Engaging",
          "kind": "tone",
          "mark": "new"
        },
        {
          "name": "Fun",
          "kind": "tone",
          "mark": "new"
        }
      ],
      "artStyles": [
        {
          "name": "Stylized",
          "kind": "art style",
          "mark": "new"
        },
        {
          "name": "3D",
          "kind": "art style",
          "mark": "new"
        },
        {
          "name": "Low-poly",
          "kind": "art style",
          "mark": "new"
        },
        {
          "name": "minimalistic",
          "kind": "art style",
          "mark": "new"
        },
        {
          "name": "Painterly",
          "kind": "art style",
          "mark": "new"
        },
        {
          "name": "2.5D",
          "kind": "art style",
          "mark": "new"
        }
      ]
    },
    "worlds": [
      {
        "label": "Games",
        "works": [
          {
            "name": "Firewatch",
            "kind": "game",
            "mark": "predicted",
            "tags": [
              "3D",
              "Stylized",
              "Low-poly"
            ]
          },
          {
            "name": "INSIDE",
            "kind": "game",
            "mark": "new",
            "tags": [
              "2.5D",
              "realistic",
              "minimalistic"
            ]
          },
          {
            "name": "Night in the Woods",
            "kind": "game",
            "mark": "predicted",
            "tags": [
              "2D hand-drawn",
              "Stylized/Illustrative",
              "melancholic"
            ]
          },
          {
            "name": "The Unfinished Swan",
            "kind": "game",
            "mark": "new",
            "tags": [
              "3D",
              "artistic",
              "minimalist"
            ]
          }
        ]
      },
      {
        "label": "Films",
        "works": [
          {
            "name": "Her",
            "kind": "film",
            "mark": "new",
            "tags": [
              "Thought provoking",
              "Technology ethics",
              "Love"
            ]
          },
          {
            "name": "Boyhood",
            "kind": "film",
            "mark": "new",
            "tags": [
              "Unvarnished domesticity",
              "Reflective",
              "Memory"
            ]
          },
          {
            "name": "Lost in Translation",
            "kind": "film",
            "mark": "predicted",
            "tags": [
              "Reflective",
              "Age disparate romance",
              "Postmodern"
            ]
          },
          {
            "name": "Rushmore",
            "kind": "film",
            "mark": "new",
            "tags": [
              "Theatrical",
              "Resourceful",
              "Charming"
            ]
          }
        ]
      },
      {
        "label": "Films, lesser known",
        "works": [
          {
            "name": "City of God",
            "kind": "film",
            "mark": "new",
            "tags": [
              "Atmospheric",
              "Kinetic",
              "Collage like"
            ]
          },
          {
            "name": "Familiar Grounds",
            "kind": "film",
            "mark": "new",
            "tags": [
              "Quiet minimalism",
              "Atmospheric",
              "Psychological"
            ]
          }
        ]
      },
      {
        "label": "TV",
        "works": [
          {
            "name": "Somebody Somewhere",
            "kind": "TV",
            "mark": "new",
            "tags": [
              "Friendship and community",
              "Grief and healing",
              "Healing through community"
            ]
          },
          {
            "name": "Empire Falls",
            "kind": "TV",
            "mark": "new",
            "tags": [
              "Intimate",
              "Conflicted",
              "Father son relationships"
            ]
          },
          {
            "name": "Keeping Faith",
            "kind": "TV",
            "mark": "new",
            "tags": [
              "Determined",
              "Resilient",
              "Resourceful"
            ]
          },
          {
            "name": "Quirke",
            "kind": "TV",
            "mark": "new",
            "tags": [
              "Shadow heavy",
              "Moody",
              "Slow burn"
            ]
          }
        ]
      },
      {
        "label": "Music",
        "works": [
          {
            "name": "The Velvet Underground",
            "kind": "music",
            "mark": "predicted",
            "tags": [
              "Artistic",
              "Proto-Punk",
              "Minimalist"
            ]
          },
          {
            "name": "Talking Heads",
            "kind": "music",
            "mark": "new",
            "tags": [
              "Post Punk",
              "New Wave",
              "Theatrical"
            ]
          },
          {
            "name": "Lou Reed",
            "kind": "music",
            "mark": "new",
            "tags": [
              "Proto-Punk",
              "Expressive",
              "Experimental"
            ]
          },
          {
            "name": "David Bowie",
            "kind": "music",
            "mark": "new",
            "tags": [
              "Expressive",
              "Charismatic",
              "Theatrical"
            ]
          }
        ]
      },
      {
        "label": "Books",
        "works": [
          {
            "name": "Lord of the Flies",
            "kind": "book",
            "mark": "new",
            "tags": [
              "School",
              "High School",
              "Fiction"
            ]
          },
          {
            "name": "Fahrenheit 451",
            "kind": "book",
            "mark": "new",
            "tags": [
              "Dystopia",
              "Fantasy",
              "Banned Books"
            ]
          },
          {
            "name": "Extremely Loud & Incredibly Close",
            "kind": "book",
            "mark": "new",
            "tags": [
              "Novels",
              "Adult Fiction",
              "Adult"
            ]
          },
          {
            "name": "The Catcher in the Rye",
            "kind": "book",
            "mark": "predicted",
            "tags": [
              "Classics",
              "Young Adult",
              "Banned Books"
            ]
          }
        ]
      }
    ],
    "required": [
      {
        "name": "Night in the Woods",
        "kind": "game",
        "mark": "predicted"
      },
      {
        "name": "Her",
        "kind": "film",
        "mark": "new"
      },
      {
        "name": "Talking Heads",
        "kind": "music",
        "mark": "new"
      },
      {
        "name": "artistic",
        "kind": "look quality",
        "mark": "new"
      },
      {
        "name": "melancholic",
        "kind": "mood quality",
        "mark": "predicted"
      },
      {
        "name": "Drama loving",
        "kind": "meaning quality",
        "mark": "new"
      }
    ]
  },
  "views": [
    {
      "key": "frame",
      "label": "frame",
      "a": {
        "id": "r2-frame",
        "round": 2,
        "view": "frame",
        "width": 1440,
        "height": 810,
        "label": "frame",
        "cited": true,
        "source": ".mousa/captures/r2-frame.png",
        "file": "assets/captures/a-r2-frame.png"
      },
      "b": {
        "id": "r2-frame",
        "round": 2,
        "view": "frame",
        "width": 1440,
        "height": 810,
        "label": "frame",
        "cited": true,
        "source": ".mousa/captures/r2-frame.png",
        "file": "assets/captures/b-r2-frame.png"
      }
    },
    {
      "key": "frame-walk",
      "label": "frame · walk",
      "a": {
        "id": "r2-frame-walk",
        "round": 2,
        "view": "frame",
        "target": "walk",
        "width": 1440,
        "height": 810,
        "label": "frame · walk",
        "cited": true,
        "source": ".mousa/captures/r2-frame-walk.png",
        "file": "assets/captures/a-r2-frame-walk.png"
      },
      "b": null
    },
    {
      "key": "frame-title",
      "label": "frame · title",
      "a": {
        "id": "r2-frame-title",
        "round": 2,
        "view": "frame",
        "target": "title",
        "width": 1440,
        "height": 810,
        "label": "frame · title",
        "cited": true,
        "source": ".mousa/captures/r2-frame-title.png",
        "file": "assets/captures/a-r2-frame-title.png"
      },
      "b": null
    },
    {
      "key": "frame-radio",
      "label": "frame · radio",
      "a": {
        "id": "r2-frame-radio",
        "round": 2,
        "view": "frame",
        "target": "radio",
        "width": 1440,
        "height": 810,
        "label": "frame · radio",
        "cited": true,
        "source": ".mousa/captures/r2-frame-radio.png",
        "file": "assets/captures/a-r2-frame-radio.png"
      },
      "b": null
    },
    {
      "key": "frame-rehearsal",
      "label": "frame · rehearsal",
      "a": {
        "id": "r2-frame-rehearsal",
        "round": 2,
        "view": "frame",
        "target": "rehearsal",
        "width": 1440,
        "height": 810,
        "label": "frame · rehearsal",
        "cited": true,
        "source": ".mousa/captures/r2-frame-rehearsal.png",
        "file": "assets/captures/a-r2-frame-rehearsal.png"
      },
      "b": null
    },
    {
      "key": "frame-stage",
      "label": "frame · stage",
      "a": {
        "id": "r2-frame-stage",
        "round": 2,
        "view": "frame",
        "target": "stage",
        "width": 1440,
        "height": 810,
        "label": "frame · stage",
        "cited": true,
        "source": ".mousa/captures/r2-frame-stage.png",
        "file": "assets/captures/a-r2-frame-stage.png"
      },
      "b": null
    },
    {
      "key": "frame-playtest",
      "label": "frame · playtest",
      "a": null,
      "b": {
        "id": "r2-frame-playtest",
        "round": 2,
        "view": "frame",
        "target": "playtest",
        "width": 1440,
        "height": 810,
        "label": "frame · playtest",
        "cited": false,
        "source": ".mousa/captures/r2-frame-playtest.png",
        "file": "assets/captures/b-r2-frame-playtest.png"
      }
    },
    {
      "key": "frame-town",
      "label": "frame · town",
      "a": null,
      "b": {
        "id": "r2-frame-town",
        "round": 2,
        "view": "frame",
        "target": "town",
        "width": 1440,
        "height": 810,
        "label": "frame · town",
        "cited": true,
        "source": ".mousa/captures/r2-frame-town.png",
        "file": "assets/captures/b-r2-frame-town.png"
      }
    },
    {
      "key": "frame-shutter",
      "label": "frame · shutter",
      "a": null,
      "b": {
        "id": "r2-frame-shutter",
        "round": 2,
        "view": "frame",
        "target": "shutter",
        "width": 1440,
        "height": 810,
        "label": "frame · shutter",
        "cited": true,
        "source": ".mousa/captures/r2-frame-shutter.png",
        "file": "assets/captures/b-r2-frame-shutter.png"
      }
    },
    {
      "key": "frame-tambourine",
      "label": "frame · tambourine",
      "a": null,
      "b": {
        "id": "r2-frame-tambourine",
        "round": 2,
        "view": "frame",
        "target": "tambourine",
        "width": 1440,
        "height": 810,
        "label": "frame · tambourine",
        "cited": true,
        "source": ".mousa/captures/r2-frame-tambourine.png",
        "file": "assets/captures/b-r2-frame-tambourine.png"
      }
    },
    {
      "key": "frame-ending",
      "label": "frame · ending",
      "a": null,
      "b": {
        "id": "r2-frame-ending",
        "round": 2,
        "view": "frame",
        "target": "ending",
        "width": 1440,
        "height": 810,
        "label": "frame · ending",
        "cited": true,
        "source": ".mousa/captures/r2-frame-ending.png",
        "file": "assets/captures/b-r2-frame-ending.png"
      }
    }
  ],
  "layers": [
    {
      "layer": "palette",
      "arms": [
        [
          {
            "id": "dna1",
            "layer": "palette",
            "device": "Low-poly dusk over a dark tidal marsh, oxblood curtains at the edge",
            "anchors": [
              {
                "name": "melancholic",
                "kind": "mood quality",
                "mark": "predicted"
              },
              {
                "name": "artistic",
                "kind": "look quality",
                "mark": "new"
              },
              {
                "name": "Low-poly",
                "kind": "art style",
                "mark": "new"
              }
            ],
            "qualities": [
              "melancholic",
              "artistic",
              "Low-poly"
            ],
            "translation": "Melancholic becomes the last orange of a dusk sky over dark teal water; artistic and Low-poly become flat-shaded facets in a few hard colour bands, with olive reeds silhouetted in front, the way low-poly dusk landscapes draw it. The oxblood of a theatre curtain frames it; a sodium-yellow spotlight is the only bright light.",
            "convention": "low-poly dusk landscapes: flat-shaded facets in bands of sunset colour with dark silhouetted foregrounds",
            "tokens": {
              "colors": [
                "#16383a",
                "#2b6b62",
                "#e8722a",
                "#f5c542",
                "#6e1423",
                "#7d8a3a"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [
                "#16383a",
                "#2b6b62",
                "#e8722a",
                "#f5c542",
                "#6e1423",
                "#7d8a3a"
              ],
              "fonts": [],
              "ids": []
            },
            "method": "source",
            "why": "The palette lives as hex constants in the game script's PAL object and the page's CSS custom properties, drawn in flat facets on the canvas.",
            "cluster": "Melancholic, tense small-town games",
            "check": "present"
          }
        ],
        [
          {
            "id": "dna1",
            "layer": "palette",
            "device": "Sugar-almond seaside on faded seventies stock",
            "anchors": [
              {
                "name": "quirky",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "pastel",
                "kind": "surface",
                "mark": "own"
              },
              {
                "name": "nostalgic 1970s grain",
                "kind": "pacing",
                "mark": "own"
              }
            ],
            "qualities": [
              "quirky",
              "pastel"
            ],
            "translation": "Quirky order, drawn the way cut-away dollhouse sets are: each building its own flat pastel box (salmon hotel, duck-egg bandstand, mustard studio) on an olive marsh, with plum ink instead of black so the whole frame reads like lifted-black 1970s film stock rather than digital pastel.",
            "convention": "Cut-away dollhouse sets seen dead-on: a building sliced open like a cake, each room a lit box in its own pastel",
            "tokens": {
              "colors": [
                "#ee9f95",
                "#a9d6cb",
                "#e2b13c",
                "#7f8f4e",
                "#4b2e3e",
                "#b9cfe8"
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [
                "#e2b13c",
                "#7f8f4e",
                "#b9cfe8"
              ],
              "fonts": [],
              "ids": []
            },
            "method": "source",
            "why": "The game draws on a canvas, so the palette lives as a PAL object of hex constants in the game script, used by every draw call; the page frame uses the same values as CSS custom properties.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          }
        ]
      ]
    },
    {
      "layer": "typography",
      "arms": [
        [
          {
            "id": "dna2",
            "layer": "typography",
            "device": "Playbill fat face over a typewritten script",
            "anchors": [
              {
                "name": "Theatrical",
                "kind": "look quality",
                "mark": "new"
              },
              {
                "name": "Talking Heads",
                "kind": "music",
                "mark": "new"
              }
            ],
            "qualities": [
              "Theatrical",
              "New Wave"
            ],
            "translation": "Theatrical becomes the type of a repertory playbill: a heavy fat-face display for the title, act cards and cast list, and the dialogue set like a typed play script with speaker names before each line.",
            "convention": "school-play and repertory playbills: a fat-face title over a typeset cast list, acts announced on a card",
            "tokens": {
              "fonts": [
                "Rozha One",
                "Cutive Mono"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [
                "Rozha One",
                "Cutive Mono"
              ],
              "ids": []
            },
            "method": "library-font",
            "why": "Rozha One and Cutive Mono are fetched into fonts/ and loaded with @font-face, then used by both the page and canvas text.",
            "cluster": "Theatrical art-rock stage",
            "check": "present"
          }
        ],
        [
          {
            "id": "dna2",
            "layer": "typography",
            "device": "Centred geometric title cards, typewritten dialogue",
            "anchors": [
              {
                "name": "quirky",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "deadpan whimsy",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "vintage",
                "kind": "surface",
                "mark": "own"
              }
            ],
            "qualities": [
              "quirky",
              "deadpan whimsy"
            ],
            "translation": "Chapter and place cards are set as the centred geometric sans capitals of film title cards (Jost, the Futura stand-in), always on a flat colour field with a thin border; every spoken line is typed in Courier Prime like liner notes or a screenplay page, in sentence case, never as small uppercase labels.",
            "convention": "Centred chapter title cards: a single line of geometric sans capitals on a flat coloured field, framed by a thin border",
            "tokens": {
              "fonts": [
                "Jost",
                "Courier Prime"
              ],
              "literals": [
                "TITLE_FONT = '600",
                "TYPE_FONT = '"
              ]
            },
            "surprise": false,
            "method": "library-font",
            "why": "Jost and Courier Prime are fetched into fonts/ and loaded with @font-face, then the canvas waits for document.fonts before drawing the title card so the cards really render in them.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          }
        ]
      ]
    },
    {
      "layer": "imagery",
      "arms": [
        [
          {
            "id": "dna8",
            "layer": "imagery",
            "device": "Faceted marsh set pieces and a tailored stage manager",
            "anchors": [
              {
                "name": "Low-poly",
                "kind": "art style",
                "mark": "new"
              },
              {
                "name": "Modern Tailoring",
                "kind": "surface",
                "mark": "new"
              }
            ],
            "qualities": [
              "Low-poly",
              "Modern Tailoring"
            ],
            "translation": "Low-poly becomes every set piece drawn as flat-shaded triangles on the canvas: dunes, reeds, the pier, the houseboat. Modern Tailoring becomes the cast: figures as narrow tailored silhouettes in suits, cut from a few polygons.",
            "tokens": {
              "literals": [
                "function drawFacetMarsh",
                "function drawTailoredFigure"
              ]
            },
            "surprise": true,
            "method": "source",
            "why": "Every set piece and figure is drawn from polygons by canvas functions, no image files.",
            "cluster": "Melancholic, tense small-town games",
            "check": "present"
          }
        ],
        [
          {
            "id": "dna10",
            "layer": "imagery",
            "device": "Flat pastel diorama under film grain",
            "anchors": [
              {
                "name": "flat pastel illustration",
                "kind": "art style",
                "mark": "own"
              },
              {
                "name": "film grain",
                "kind": "surface",
                "mark": "own"
              },
              {
                "name": "hand-drawn",
                "kind": "art style",
                "mark": "own"
              }
            ],
            "qualities": [
              "flat pastel illustration",
              "film grain"
            ],
            "translation": "Everything is drawn in flat filled shapes with no gradients except the sky, then a fine animated grain and a soft vignette are laid over the frame so it reads as a projected print of a little built set.",
            "tokens": {
              "ids": [
                "grain-overlay"
              ],
              "literals": [
                "drawGrain("
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "grain-overlay"
              ]
            },
            "method": "source",
            "why": "Flat shapes are drawn with fillRect and arcs; drawGrain paints a pre-rendered noise tile with a small random offset each frame, and a vignette, over the whole canvas.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          }
        ]
      ]
    },
    {
      "layer": "motion",
      "arms": [
        [
          {
            "id": "dna3",
            "layer": "motion",
            "device": "Hard curtain sweep between scenes, beat-locked lights",
            "anchors": [
              {
                "name": "Rhythmically Charged",
                "kind": "pacing",
                "mark": "new"
              },
              {
                "name": "Stylized",
                "kind": "pacing",
                "mark": "new"
              }
            ],
            "qualities": [
              "Rhythmically Charged",
              "Stylized"
            ],
            "translation": "Rhythmically Charged and Stylized pacing replace the soft fade I predicted: every scene change is a fast, hard curtain sweep from both wings, and lamps, the spotlight and the tide clock pulse on one shared beat.",
            "convention": "curtain-and-spotlight scene changes of stage musicals and concert films: the cut is a hard sweep, not a dissolve",
            "tokens": {
              "css": [
                "transition: transform 650ms cubic-bezier(.77,0,.18,1)"
              ],
              "literals": [
                "const BEAT_MS = 480"
              ]
            },
            "surprise": true,
            "method": "source",
            "why": "Two DOM curtain panels over the canvas sweep with a CSS transform transition at every scene change; the canvas lights pulse on BEAT_MS.",
            "cluster": "Theatrical art-rock stage",
            "check": "present"
          }
        ],
        [
          {
            "id": "dna9",
            "layer": "motion",
            "device": "Lingering holds and an iris close",
            "anchors": [
              {
                "name": "slow lingering takes",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "nostalgic 1970s grain",
                "kind": "pacing",
                "mark": "own"
              }
            ],
            "qualities": [
              "slow lingering takes"
            ],
            "translation": "Every chapter card holds a beat longer than needed and every scene change closes on a slow circular iris; the dusk sky eases from powder blue through rose to plum while the player stands still.",
            "tokens": {
              "literals": [
                "HOLD_MS = 2600",
                "IRIS_MS = 1400"
              ]
            },
            "surprise": false,
            "method": "source",
            "why": "Holds and the iris are timing constants and a transition routine in the script, with a reduced-motion check that shortens holds and replaces the iris with a cut.",
            "cluster": "Seventies tape warmth",
            "check": "present"
          }
        ]
      ]
    },
    {
      "layer": "voice",
      "arms": [
        [
          {
            "id": "dna9",
            "layer": "voice",
            "device": "Deadpan lines, a pause, then the true thing",
            "anchors": [
              {
                "name": "Her",
                "kind": "film",
                "mark": "new"
              },
              {
                "name": "Submarine",
                "kind": "film",
                "mark": "new"
              },
              {
                "name": "Intimate",
                "kind": "look quality",
                "mark": "new"
              }
            ],
            "qualities": [
              "Thought provoking",
              "Deadpan whimsicality",
              "Intimate"
            ],
            "translation": "Deadpan whimsicality and Intimate become short flat lines in the play script, then a sudden sincere one; Thought provoking becomes the singer's questions, which have an honest answer and an easy one.",
            "tokens": {
              "copy": [
                "The tide is coming in. The band is not.",
                "I kept the setlist. I don't know why. Yes, I do.",
                "Nobody tunes out a person. You just lose the frequency."
              ]
            },
            "surprise": true,
            "method": "copy",
            "why": "The lines are written into the dialogue data of the script and the page.",
            "cluster": "Loyal friends, drama and grief",
            "check": "present"
          }
        ],
        [
          {
            "id": "dna8",
            "layer": "voice",
            "device": "Deadpan neighbours, wistful asides",
            "anchors": [
              {
                "name": "Twin Peaks",
                "kind": "TV",
                "mark": "own"
              },
              {
                "name": "wistful",
                "kind": "tone",
                "mark": "own"
              },
              {
                "name": "eccentric characters",
                "kind": "quality",
                "mark": "own"
              }
            ],
            "qualities": [
              "wistful",
              "eccentric characters"
            ],
            "translation": "Small-town eccentrics speak in grave, exact, slightly absurd sentences about tiny matters, and the narration answers with short wistful asides about leaving.",
            "tokens": {
              "copy": [
                "I have hung these keys since 1974. They have never once hung themselves.",
                "The tide does not wait. Neither, I am told, do ferries."
              ]
            },
            "surprise": false,
            "method": "copy",
            "why": "Dialogue lines are written into the neighbour data in the script, in the deadpan register.",
            "cluster": "Wistful leaving",
            "check": "present"
          }
        ]
      ]
    },
    {
      "layer": "layout",
      "arms": [
        [
          {
            "id": "dna7",
            "layer": "layout",
            "device": "Dress the stage in mirror symmetry",
            "anchors": [
              {
                "name": "Theatrical",
                "kind": "look quality",
                "mark": "new"
              },
              {
                "name": "Rushmore",
                "kind": "film",
                "mark": "new"
              }
            ],
            "qualities": [
              "Theatrical",
              "Resourceful"
            ],
            "translation": "Theatrical and Resourceful become a staging puzzle: on a bare stage grid the player places lamps, amps and a ladder so that each prop has its mirror twin across the centre line, the self-serious care of a school play mounted like an opera.",
            "convention": "art-rock concert stagings: bare boards, one hard white spotlight, a band in tailored suits",
            "tokens": {
              "ids": [
                "stage-grid"
              ],
              "literals": [
                "function checkSymmetry"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "stage-grid"
              ]
            },
            "method": "source",
            "why": "The stage dressing puzzle is a grid scene in the script with a symmetry check.",
            "cluster": "Theatrical art-rock stage",
            "check": "present"
          }
        ],
        [
          {
            "id": "dna3",
            "layer": "layout",
            "device": "Mirror-symmetric town on one pier axis",
            "anchors": [
              {
                "name": "symmetrical framing",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "dollhouse diorama",
                "kind": "surface",
                "mark": "own"
              }
            ],
            "qualities": [
              "symmetrical framing",
              "dollhouse diorama"
            ],
            "translation": "The whole walkable map is mirrored about a vertical pier axis: hotel and studio face each other, bandstand on the axis, marsh and lighthouse below; the hotel is drawn sliced open like a dollhouse with lit rooms.",
            "tokens": {
              "ids": [
                "pier-axis",
                "hotel-cutaway"
              ],
              "literals": [
                "PIER_X ="
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "pier-axis",
                "hotel-cutaway"
              ]
            },
            "method": "source",
            "why": "The map is data in the script: a scene list mirrored about PIER_X, each building with an id such as hotel-cutaway that the draw and collision code use.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          }
        ]
      ]
    },
    {
      "layer": "structure",
      "arms": [
        [
          {
            "id": "dna6",
            "layer": "structure",
            "device": "Get the band back before high tide",
            "anchors": [
              {
                "name": "Drama loving",
                "kind": "meaning quality",
                "mark": "new"
              },
              {
                "name": "Loyal",
                "kind": "meaning quality",
                "mark": "new"
              },
              {
                "name": "Somebody Somewhere",
                "kind": "TV",
                "mark": "new"
              }
            ],
            "qualities": [
              "Drama loving",
              "Loyal",
              "Friendship and community"
            ],
            "translation": "Drama loving and Loyal become the shape of the play: a tide clock runs from low to high water, each member won back is a loyalty restored, and the final show in the pier hall plays out with exactly who came, so the ending differs.",
            "convention": "ensemble reunion stories: one by one the old friends are brought back for one last night",
            "tokens": {
              "ids": [
                "tide-clock",
                "final-show"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "tide-clock",
                "final-show"
              ]
            },
            "method": "source",
            "why": "The tide clock and the final show are the game's state machine; the tide clock is a DOM meter beside the canvas.",
            "cluster": "Loyal friends, drama and grief",
            "check": "present"
          }
        ],
        [
          {
            "id": "dna5",
            "layer": "structure",
            "device": "One last summer day: four favours, four songs, one tide clock",
            "anchors": [
              {
                "name": "found family",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "coming of age",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "Stardew Valley",
                "kind": "game",
                "mark": "own"
              }
            ],
            "qualities": [
              "found family",
              "coming of age"
            ],
            "translation": "Progress is the village-day loop: a tide clock runs from morning to dusk, each neighbour has one errand, and each favour done hands you a song for your record; the songs you gather and the neighbours you helped are what the ending gives back.",
            "tokens": {
              "ids": [
                "tide-clock",
                "favour-ledger"
              ],
              "copy": [
                "Four neighbours. One day. Then the ferry."
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "tide-clock",
                "favour-ledger"
              ]
            },
            "method": "source",
            "why": "The day loop is the game's state machine: a tide clock in game minutes, a favour ledger of four neighbours, and songs awarded per favour, drawn as a HUD.",
            "cluster": "Found family, coming of age",
            "check": "present"
          },
          {
            "id": "dna7",
            "layer": "structure",
            "device": "The held goodbye at the ferry",
            "anchors": [
              {
                "name": "Lost in Translation",
                "kind": "film",
                "mark": "own"
              },
              {
                "name": "bittersweet",
                "kind": "tone",
                "mark": "own"
              },
              {
                "name": "slow lingering takes",
                "kind": "pacing",
                "mark": "own"
              }
            ],
            "qualities": [
              "bittersweet",
              "slow lingering takes"
            ],
            "translation": "The game ends by holding a shot: at dusk the neighbours you helped stand in a symmetrical row on the pier, someone says something the ferry horn swallows, the track list of your record types out, and only then does the end card offer another day.",
            "tokens": {
              "ids": [
                "ferry-goodbye"
              ],
              "copy": [
                "Whatever she says is lost under the ferry horn.",
                "Saltmarsh grows smaller, and then it is a postcard."
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "ferry-goodbye"
              ]
            },
            "method": "source",
            "why": "The ending is a timed scene in the script: neighbours placed symmetrically on the pier, a held dusk sky, typed track list and the end card with play again.",
            "cluster": "Wistful leaving",
            "check": "present"
          }
        ]
      ]
    },
    {
      "layer": "interaction",
      "arms": [
        [
          {
            "id": "dna4",
            "layer": "interaction",
            "device": "Radio dial tuned through static",
            "anchors": [
              {
                "name": "Oxenfree",
                "kind": "game",
                "mark": "new"
              },
              {
                "name": "tense",
                "kind": "mood quality",
                "mark": "new"
              },
              {
                "name": "Mysterious",
                "kind": "tone",
                "mark": "new"
              }
            ],
            "qualities": [
              "tense",
              "Stylized",
              "Mysterious"
            ],
            "translation": "Tense and Mysterious become a tuning puzzle: the player sweeps a needle along a dial while static hisses, finds a voice by its strength meter, and must hold it steady against drift until the keyboardist's broadcast is clear.",
            "convention": "radio-static tuning puzzles: a dial, a needle and voices rising out of the noise",
            "tokens": {
              "ids": [
                "radio-dial"
              ],
              "literals": [
                "function tuneRadio"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "radio-dial"
              ]
            },
            "method": "source",
            "why": "The radio tuning scene is a canvas mini-game in the script, with its dial drawn as the radio-dial scene element.",
            "cluster": "Melancholic, tense small-town games",
            "check": "present"
          },
          {
            "id": "dna5",
            "layer": "interaction",
            "device": "Boathouse rehearsal in three falling lanes",
            "anchors": [
              {
                "name": "Night in the Woods",
                "kind": "game",
                "mark": "predicted"
              },
              {
                "name": "Rhythmically Charged",
                "kind": "pacing",
                "mark": "new"
              }
            ],
            "qualities": [
              "melancholic",
              "Rhythmically Charged"
            ],
            "translation": "Band practice from the small-town games this audience loves, made rhythmically charged: notes fall down three lanes to a synthesised drum loop, and the guitarist only comes back if the player keeps time.",
            "convention": "small-town band-practice rhythm sequences: notes falling down lanes to a cheap drum loop",
            "tokens": {
              "ids": [
                "rhythm-lane"
              ],
              "literals": [
                "function playRehearsal"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "rhythm-lane"
              ]
            },
            "method": "source",
            "why": "The rehearsal is a canvas rhythm game in the script with WebAudio clicks, its lanes drawn as rhythm-lane.",
            "cluster": "Melancholic, tense small-town games",
            "check": "present"
          }
        ],
        [
          {
            "id": "dna4",
            "layer": "interaction",
            "device": "The level shutter: a portrait only takes when the frame is dead centre",
            "anchors": [
              {
                "name": "symmetrical framing",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "Amélie",
                "kind": "film",
                "mark": "own"
              },
              {
                "name": "deadpan whimsy",
                "kind": "pacing",
                "mark": "own"
              }
            ],
            "qualities": [
              "symmetrical framing",
              "deadpan whimsy"
            ],
            "translation": "Symmetry becomes a skill: in the photo studio the viewfinder drifts on the swaying pier and the player presses Space to take the twins' portrait; the closer the centre line sits to the axis, the better the shot, scored in deadpan words.",
            "tokens": {
              "ids": [
                "shutter-frame"
              ],
              "copy": [
                "Hold still. Symmetry is a kind of kindness."
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "shutter-frame"
              ]
            },
            "method": "source",
            "why": "The shutter is a playable minigame state in the script with its own update and draw, scored by distance from the axis.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          },
          {
            "id": "dna6",
            "layer": "interaction",
            "device": "Tambourine for a retired singer: play back a half-remembered song",
            "anchors": [
              {
                "name": "Stevie Nicks",
                "kind": "music",
                "mark": "own"
              },
              {
                "name": "nostalgia",
                "kind": "quality",
                "mark": "own"
              }
            ],
            "qualities": [
              "nostalgia"
            ],
            "translation": "A rhythm favour: shawled Mrs. Varga rehearses an old song at the bandstand, beats slide along a lane and the player keeps time on Space; the notes are synthesised in the page, a little detuned like a worn record.",
            "tokens": {
              "ids": [
                "tambourine-lane"
              ],
              "literals": [
                "detune.value ="
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "tambourine-lane"
              ]
            },
            "method": "source",
            "why": "A rhythm state in the script with a beat chart and Web Audio oscillators, slightly detuned, all synthesised in the page with no files or network.",
            "cluster": "Seventies tape warmth",
            "check": "present"
          }
        ]
      ]
    }
  ],
  "limits": [
    "One pair is one sample. Model variance alone makes two designs differ, so one distance does not isolate what Qloo changed; repeat the pair before calling a difference the data's effect.",
    "The distance is a heuristic over the palettes, part ids and words of the files the two arms changed differently. It does not measure quality or what people prefer.",
    "The headline counts devices anchored to what the prediction did not contain. It shows that the data changed the specification, not that the result is better."
  ],
  "records": [
    {
      "schemaVersion": "1.0",
      "kind": "session",
      "generatedAt": "2026-10-27T14:00:00.796Z",
      "host": "claude-code",
      "writtenBy": {
        "name": "mousa",
        "version": "0.7.1"
      },
      "medium": "game",
      "taste": "qloo",
      "title": "For an audience that loves Fleetwood Mac, Wes Anderson, The Grand Budapest Hotel and Moonrise Kingdom",
      "audience": {
        "references": [
          {
            "name": "Fleetwood Mac",
            "found": true
          },
          {
            "name": "Wes Anderson",
            "found": true
          },
          {
            "name": "The Grand Budapest Hotel",
            "found": true
          },
          {
            "name": "Moonrise Kingdom",
            "found": true
          }
        ]
      },
      "headline": {
        "value": "9 of 9",
        "text": "design devices rest on what the model did not predict",
        "sentence": "9 of 9 devices rest on what the prediction did not contain."
      },
      "numbers": [
        {
          "value": 60,
          "label": "works measured, 7 of them predicted"
        },
        {
          "value": 18,
          "label": "shared qualities, 3 predicted"
        },
        {
          "value": 24,
          "label": "pacing, surface and tone tags, 0 predicted"
        },
        {
          "value": 19,
          "label": "Qloo requests"
        }
      ],
      "prediction": {
        "frozenAt": "2026-10-26T21:18:18.650Z",
        "sha256": "aeaf7d0b808bdcd0a22c7cc263abbbd67b305dca0d289a83c3aedafcb3dc1643",
        "sealHolds": true,
        "summary": "Adults who love Wes Anderson's symmetrical, pastel, deadpan films and Fleetwood Mac's warm, melancholy 1970s soft rock. They like nostalgic, handmade, bittersweet stories about found family and gentle eccentrics, and they care about craft and curated detail.",
        "groups": [
          {
            "domain": "videogame",
            "label": "Games",
            "quality": false,
            "entries": [
              {
                "name": "Stardew Valley",
                "measured": false
              },
              {
                "name": "Night in the Woods",
                "measured": true
              },
              {
                "name": "Firewatch",
                "measured": true
              },
              {
                "name": "Gris",
                "measured": false
              },
              {
                "name": "Monument Valley",
                "measured": false
              },
              {
                "name": "A Short Hike",
                "measured": false
              }
            ]
          },
          {
            "domain": "movie",
            "label": "Films",
            "quality": false,
            "entries": [
              {
                "name": "Lost in Translation",
                "measured": true
              },
              {
                "name": "Little Miss Sunshine",
                "measured": false
              },
              {
                "name": "Almost Famous",
                "measured": true
              },
              {
                "name": "Amélie",
                "measured": false
              },
              {
                "name": "Lady Bird",
                "measured": false
              },
              {
                "name": "Paddington 2",
                "measured": false
              }
            ]
          },
          {
            "domain": "tv_show",
            "label": "TV",
            "quality": false,
            "entries": [
              {
                "name": "Twin Peaks",
                "measured": false
              },
              {
                "name": "Fleabag",
                "measured": false
              },
              {
                "name": "Gilmore Girls",
                "measured": false
              },
              {
                "name": "Arrested Development",
                "measured": false
              },
              {
                "name": "Russian Doll",
                "measured": false
              }
            ]
          },
          {
            "domain": "artist",
            "label": "Music",
            "quality": false,
            "entries": [
              {
                "name": "Stevie Nicks",
                "measured": false
              },
              {
                "name": "The Kinks",
                "measured": false
              },
              {
                "name": "Simon & Garfunkel",
                "measured": false
              },
              {
                "name": "Big Thief",
                "measured": false
              },
              {
                "name": "The Velvet Underground",
                "measured": true
              },
              {
                "name": "Joni Mitchell",
                "measured": false
              }
            ]
          },
          {
            "domain": "book",
            "label": "Books",
            "quality": false,
            "entries": [
              {
                "name": "The Secret History",
                "measured": false
              },
              {
                "name": "Norwegian Wood",
                "measured": false
              },
              {
                "name": "The Royal Tenenbaums screenplay",
                "measured": true,
                "as": "The Royal Tenenbaums (film)"
              },
              {
                "name": "Franny and Zooey",
                "measured": false
              },
              {
                "name": "The Catcher in the Rye",
                "measured": true
              }
            ]
          },
          {
            "domain": "style",
            "label": "Pacing",
            "quality": true,
            "entries": [
              {
                "name": "symmetrical framing",
                "measured": false
              },
              {
                "name": "deadpan whimsy",
                "measured": false
              },
              {
                "name": "slow lingering takes",
                "measured": false
              },
              {
                "name": "chapter title cards",
                "measured": false
              },
              {
                "name": "nostalgic 1970s grain",
                "measured": false
              }
            ]
          },
          {
            "domain": "aesthetic",
            "label": "Surfaces",
            "quality": true,
            "entries": [
              {
                "name": "pastel",
                "measured": false
              },
              {
                "name": "vintage",
                "measured": false
              },
              {
                "name": "handmade",
                "measured": false
              },
              {
                "name": "retro 70s",
                "measured": false
              },
              {
                "name": "dollhouse diorama",
                "measured": false
              },
              {
                "name": "film grain",
                "measured": false
              }
            ]
          },
          {
            "domain": "tone",
            "label": "Tone",
            "quality": true,
            "entries": [
              {
                "name": "bittersweet",
                "measured": false
              },
              {
                "name": "melancholic",
                "measured": true
              },
              {
                "name": "whimsical",
                "measured": false
              },
              {
                "name": "nostalgic",
                "measured": false
              },
              {
                "name": "wistful",
                "measured": false
              }
            ]
          },
          {
            "domain": "qualities",
            "label": "Shared qualities",
            "quality": true,
            "entries": [
              {
                "name": "quirky",
                "measured": true
              },
              {
                "name": "coming of age",
                "measured": false
              },
              {
                "name": "found family",
                "measured": true,
                "as": "Family"
              },
              {
                "name": "eccentric characters",
                "measured": false
              },
              {
                "name": "nostalgia",
                "measured": false
              },
              {
                "name": "romantic",
                "measured": false
              }
            ]
          },
          {
            "domain": "art_style",
            "label": "Art styles",
            "quality": true,
            "entries": [
              {
                "name": "pixel art",
                "measured": false
              },
              {
                "name": "hand-drawn",
                "measured": false
              },
              {
                "name": "flat pastel illustration",
                "measured": false
              },
              {
                "name": "stop-motion",
                "measured": false
              },
              {
                "name": "diorama",
                "measured": false
              }
            ]
          }
        ],
        "sketch": {
          "summary": "A symmetrical pastel pixel-art seaside town (Saltmarsh) seen like a diorama, split into chapter title cards, where the player walks a small grid, talks to deadpan eccentrics, collects lost items for them and finds the pieces of a song on a record player, ending in a bittersweet sunset farewell.",
          "palette": [
            "#f2c6c2",
            "#f6e3b4",
            "#9ec1b8",
            "#c9584a",
            "#3e3a5c"
          ],
          "fonts": [
            "Jost",
            "Courier Prime"
          ],
          "sections": [
            "title-card",
            "town-map",
            "dialogue-box",
            "inventory",
            "chapter-card",
            "ending-card"
          ],
          "motifs": [
            "symmetrical centered framing",
            "chapter title cards",
            "pastel seaside diorama",
            "vinyl record and song fragments",
            "1970s film grain"
          ]
        }
      },
      "measured": {
        "counts": {
          "works": 60,
          "worksPredicted": 7,
          "worksNew": 53,
          "qualities": 18,
          "qualitiesPredicted": 3,
          "tags": 24,
          "tagsPredicted": 0,
          "artStyles": 8,
          "predictions": 28,
          "predictionsMeasured": 7,
          "requests": 19,
          "fromCache": 0
        },
        "qualities": {
          "look": [
            {
              "name": "artistic",
              "kind": "look quality",
              "mark": "new",
              "works": [
                "The Velvet Underground",
                "Talking Heads",
                "The Unfinished Swan"
              ],
              "domains": [
                "music",
                "game"
              ],
              "lift": 4
            },
            {
              "name": "Intimate",
              "kind": "look quality",
              "mark": "new",
              "works": [
                "Empire Falls",
                "Run",
                "Bob Dylan"
              ],
              "domains": [
                "TV",
                "music",
                "film"
              ],
              "lift": 1.7
            },
            {
              "name": "Theatrical",
              "kind": "look quality",
              "mark": "new",
              "works": [
                "Talking Heads",
                "David Bowie",
                "Rushmore"
              ],
              "domains": [
                "music",
                "film"
              ],
              "lift": 3.14
            },
            {
              "name": "Raw",
              "kind": "look quality",
              "mark": "new",
              "works": [
                "Run",
                "Neil Young",
                "Bob Dylan"
              ],
              "domains": [
                "TV",
                "music"
              ],
              "lift": 2.25
            },
            {
              "name": "Moody",
              "kind": "look quality",
              "mark": "new",
              "works": [
                "Quirke",
                "National Treasure",
                "Stay"
              ],
              "domains": [
                "TV",
                "film"
              ],
              "lift": 2.06
            }
          ],
          "mood": [
            {
              "name": "melancholic",
              "kind": "mood quality",
              "mark": "predicted",
              "works": [
                "Run",
                "Firewatch",
                "Night in the Woods"
              ],
              "domains": [
                "TV",
                "game",
                "film"
              ],
              "lift": 3.5
            },
            {
              "name": "thought-provoking",
              "kind": "mood quality",
              "mark": "new",
              "works": [
                "Her",
                "RiME",
                "The Witness"
              ],
              "domains": [
                "film",
                "game"
              ],
              "lift": 3.81
            },
            {
              "name": "tense",
              "kind": "mood quality",
              "mark": "new",
              "works": [
                "Firewatch",
                "INSIDE",
                "Oxenfree"
              ],
              "domains": [
                "game",
                "film"
              ],
              "lift": 2.53
            },
            {
              "name": "innovative",
              "kind": "mood quality",
              "mark": "new",
              "works": [
                "Talking Heads",
                "Neil Young",
                "Jeff Buckley"
              ],
              "domains": [
                "music",
                "game"
              ],
              "lift": 1.93
            },
            {
              "name": "Reflective",
              "kind": "mood quality",
              "mark": "new",
              "works": [
                "Boyhood",
                "Lost in Translation",
                "Frances Ha"
              ],
              "domains": [
                "film",
                "game"
              ],
              "lift": 1.44
            }
          ],
          "meaning": [
            {
              "name": "Drama loving",
              "kind": "meaning quality",
              "mark": "new",
              "works": [
                "Sweetbitter",
                "Submarine",
                "Frances Ha"
              ],
              "domains": [
                "TV",
                "film"
              ],
              "lift": 2.63
            },
            {
              "name": "Loyal",
              "kind": "meaning quality",
              "mark": "new",
              "works": [
                "The No. 1 Ladies' Detective Agency",
                "Bob Dylan",
                "Nick Drake"
              ],
              "domains": [
                "TV",
                "music",
                "film"
              ],
              "lift": 1.57
            },
            {
              "name": "Family",
              "kind": "meaning quality",
              "mark": "predicted",
              "works": [
                "Keeping Faith",
                "The Darjeeling Limited",
                "Familiar Grounds"
              ],
              "domains": [
                "TV",
                "film"
              ],
              "lift": 2.09
            },
            {
              "name": "Addiction",
              "kind": "meaning quality",
              "mark": "new",
              "works": [
                "National Treasure",
                "Lou Reed"
              ],
              "domains": [
                "TV",
                "music"
              ],
              "lift": 2.5
            },
            {
              "name": "Love",
              "kind": "meaning quality",
              "mark": "new",
              "works": [
                "Neil Young",
                "Her",
                "Tom Waits"
              ],
              "domains": [
                "music",
                "film"
              ],
              "lift": 1.51
            }
          ]
        },
        "tags": {
          "pacing": [
            {
              "name": "Cinematic Journey",
              "kind": "pacing",
              "mark": "new"
            },
            {
              "name": "Abrasive",
              "kind": "pacing",
              "mark": "new"
            },
            {
              "name": "Stylized",
              "kind": "pacing",
              "mark": "new"
            },
            {
              "name": "Rhythmically Charged",
              "kind": "pacing",
              "mark": "new"
            },
            {
              "name": "Artistically Rich",
              "kind": "pacing",
              "mark": "new"
            },
            {
              "name": "Psychological Intensity",
              "kind": "pacing",
              "mark": "new"
            }
          ],
          "surfaces": [
            {
              "name": "Experimental",
              "kind": "surface",
              "mark": "new"
            },
            {
              "name": "Modern Tailoring",
              "kind": "surface",
              "mark": "new"
            },
            {
              "name": "Sensual",
              "kind": "surface",
              "mark": "new"
            },
            {
              "name": "Sexy",
              "kind": "surface",
              "mark": "new"
            },
            {
              "name": "timeless appeal",
              "kind": "surface",
              "mark": "new"
            },
            {
              "name": "Artsy",
              "kind": "surface",
              "mark": "new"
            }
          ],
          "tone": [
            {
              "name": "Bohemian",
              "kind": "tone",
              "mark": "new"
            },
            {
              "name": "Sophistication",
              "kind": "tone",
              "mark": "new"
            },
            {
              "name": "Mysterious",
              "kind": "tone",
              "mark": "new"
            },
            {
              "name": "Confidence",
              "kind": "tone",
              "mark": "new"
            },
            {
              "name": "Engaging",
              "kind": "tone",
              "mark": "new"
            },
            {
              "name": "Fun",
              "kind": "tone",
              "mark": "new"
            }
          ],
          "artStyles": [
            {
              "name": "Stylized",
              "kind": "art style",
              "mark": "new"
            },
            {
              "name": "3D",
              "kind": "art style",
              "mark": "new"
            },
            {
              "name": "Low-poly",
              "kind": "art style",
              "mark": "new"
            },
            {
              "name": "minimalistic",
              "kind": "art style",
              "mark": "new"
            },
            {
              "name": "Painterly",
              "kind": "art style",
              "mark": "new"
            },
            {
              "name": "2.5D",
              "kind": "art style",
              "mark": "new"
            }
          ]
        },
        "worlds": [
          {
            "label": "Games",
            "works": [
              {
                "name": "Firewatch",
                "kind": "game",
                "mark": "predicted",
                "tags": [
                  "3D",
                  "Stylized",
                  "Low-poly"
                ]
              },
              {
                "name": "INSIDE",
                "kind": "game",
                "mark": "new",
                "tags": [
                  "2.5D",
                  "realistic",
                  "minimalistic"
                ]
              },
              {
                "name": "Night in the Woods",
                "kind": "game",
                "mark": "predicted",
                "tags": [
                  "2D hand-drawn",
                  "Stylized/Illustrative",
                  "melancholic"
                ]
              },
              {
                "name": "The Unfinished Swan",
                "kind": "game",
                "mark": "new",
                "tags": [
                  "3D",
                  "artistic",
                  "minimalist"
                ]
              }
            ]
          },
          {
            "label": "Films",
            "works": [
              {
                "name": "Her",
                "kind": "film",
                "mark": "new",
                "tags": [
                  "Thought provoking",
                  "Technology ethics",
                  "Love"
                ]
              },
              {
                "name": "Boyhood",
                "kind": "film",
                "mark": "new",
                "tags": [
                  "Unvarnished domesticity",
                  "Reflective",
                  "Memory"
                ]
              },
              {
                "name": "Lost in Translation",
                "kind": "film",
                "mark": "predicted",
                "tags": [
                  "Reflective",
                  "Age disparate romance",
                  "Postmodern"
                ]
              },
              {
                "name": "Rushmore",
                "kind": "film",
                "mark": "new",
                "tags": [
                  "Theatrical",
                  "Resourceful",
                  "Charming"
                ]
              }
            ]
          },
          {
            "label": "Films, lesser known",
            "works": [
              {
                "name": "City of God",
                "kind": "film",
                "mark": "new",
                "tags": [
                  "Atmospheric",
                  "Kinetic",
                  "Collage like"
                ]
              },
              {
                "name": "Familiar Grounds",
                "kind": "film",
                "mark": "new",
                "tags": [
                  "Quiet minimalism",
                  "Atmospheric",
                  "Psychological"
                ]
              }
            ]
          },
          {
            "label": "TV",
            "works": [
              {
                "name": "Somebody Somewhere",
                "kind": "TV",
                "mark": "new",
                "tags": [
                  "Friendship and community",
                  "Grief and healing",
                  "Healing through community"
                ]
              },
              {
                "name": "Empire Falls",
                "kind": "TV",
                "mark": "new",
                "tags": [
                  "Intimate",
                  "Conflicted",
                  "Father son relationships"
                ]
              },
              {
                "name": "Keeping Faith",
                "kind": "TV",
                "mark": "new",
                "tags": [
                  "Determined",
                  "Resilient",
                  "Resourceful"
                ]
              },
              {
                "name": "Quirke",
                "kind": "TV",
                "mark": "new",
                "tags": [
                  "Shadow heavy",
                  "Moody",
                  "Slow burn"
                ]
              }
            ]
          },
          {
            "label": "Music",
            "works": [
              {
                "name": "The Velvet Underground",
                "kind": "music",
                "mark": "predicted",
                "tags": [
                  "Artistic",
                  "Proto-Punk",
                  "Minimalist"
                ]
              },
              {
                "name": "Talking Heads",
                "kind": "music",
                "mark": "new",
                "tags": [
                  "Post Punk",
                  "New Wave",
                  "Theatrical"
                ]
              },
              {
                "name": "Lou Reed",
                "kind": "music",
                "mark": "new",
                "tags": [
                  "Proto-Punk",
                  "Expressive",
                  "Experimental"
                ]
              },
              {
                "name": "David Bowie",
                "kind": "music",
                "mark": "new",
                "tags": [
                  "Expressive",
                  "Charismatic",
                  "Theatrical"
                ]
              }
            ]
          },
          {
            "label": "Books",
            "works": [
              {
                "name": "Lord of the Flies",
                "kind": "book",
                "mark": "new",
                "tags": [
                  "School",
                  "High School",
                  "Fiction"
                ]
              },
              {
                "name": "Fahrenheit 451",
                "kind": "book",
                "mark": "new",
                "tags": [
                  "Dystopia",
                  "Fantasy",
                  "Banned Books"
                ]
              },
              {
                "name": "Extremely Loud & Incredibly Close",
                "kind": "book",
                "mark": "new",
                "tags": [
                  "Novels",
                  "Adult Fiction",
                  "Adult"
                ]
              },
              {
                "name": "The Catcher in the Rye",
                "kind": "book",
                "mark": "predicted",
                "tags": [
                  "Classics",
                  "Young Adult",
                  "Banned Books"
                ]
              }
            ]
          }
        ],
        "required": [
          {
            "name": "Night in the Woods",
            "kind": "game",
            "mark": "predicted"
          },
          {
            "name": "Her",
            "kind": "film",
            "mark": "new"
          },
          {
            "name": "Talking Heads",
            "kind": "music",
            "mark": "new"
          },
          {
            "name": "artistic",
            "kind": "look quality",
            "mark": "new"
          },
          {
            "name": "melancholic",
            "kind": "mood quality",
            "mark": "predicted"
          },
          {
            "name": "Drama loving",
            "kind": "meaning quality",
            "mark": "new"
          }
        ]
      },
      "reading": {
        "clusters": [
          {
            "id": "c1",
            "name": "Theatrical art-rock stage",
            "reading": "The audience's music and its films share a staged, self-aware theatricality: art-rock performed as theatre, a schoolboy's play mounted with total seriousness, tailored suits on a bare stage. They like the seams of the show to be visible.",
            "layers": [
              "typography",
              "motion",
              "layout"
            ],
            "conventions": [
              "school-play and repertory playbills: a fat-face title over a typeset cast list, acts announced on a card",
              "art-rock concert stagings: bare boards, one hard white spotlight, a band in tailored suits",
              "curtain-and-spotlight scene changes of stage musicals and concert films: the cut is a hard sweep, not a dissolve"
            ],
            "refs": [
              {
                "name": "Theatrical",
                "kind": "look quality",
                "mark": "new"
              },
              {
                "name": "artistic",
                "kind": "look quality",
                "mark": "new"
              },
              {
                "name": "Talking Heads",
                "kind": "music",
                "mark": "new"
              },
              {
                "name": "David Bowie",
                "kind": "music",
                "mark": "new"
              },
              {
                "name": "Rushmore",
                "kind": "film",
                "mark": "new"
              },
              {
                "name": "Rhythmically Charged",
                "kind": "pacing",
                "mark": "new"
              },
              {
                "name": "Stylized",
                "kind": "pacing",
                "mark": "new"
              },
              {
                "name": "Modern Tailoring",
                "kind": "surface",
                "mark": "new"
              }
            ],
            "surprise": true
          },
          {
            "id": "c2",
            "name": "Melancholic, tense small-town games",
            "reading": "The games they love are short, melancholic and quietly tense: a small place at dusk, a voice on a radio, a band that practises in a basement. Mystery and sadness sit under a stylised, simplified surface.",
            "layers": [
              "palette",
              "imagery",
              "interaction"
            ],
            "conventions": [
              "low-poly dusk landscapes: flat-shaded facets in bands of sunset colour with dark silhouetted foregrounds",
              "radio-static tuning puzzles: a dial, a needle and voices rising out of the noise",
              "small-town band-practice rhythm sequences: notes falling down lanes to a cheap drum loop"
            ],
            "refs": [
              {
                "name": "melancholic",
                "kind": "mood quality",
                "mark": "predicted"
              },
              {
                "name": "tense",
                "kind": "mood quality",
                "mark": "new"
              },
              {
                "name": "Night in the Woods",
                "kind": "game",
                "mark": "predicted"
              },
              {
                "name": "Oxenfree",
                "kind": "game",
                "mark": "new"
              },
              {
                "name": "Firewatch",
                "kind": "game",
                "mark": "predicted"
              },
              {
                "name": "INSIDE",
                "kind": "game",
                "mark": "new"
              },
              {
                "name": "Low-poly",
                "kind": "art style",
                "mark": "new"
              },
              {
                "name": "Mysterious",
                "kind": "tone",
                "mark": "new"
              }
            ],
            "surprise": true
          },
          {
            "id": "c3",
            "name": "Loyal friends, drama and grief",
            "reading": "Under the style they want intimate, raw drama about loyalty: friends and families who fell apart and come back to each other, told with deadpan restraint and sudden sincerity.",
            "layers": [
              "voice",
              "structure"
            ],
            "conventions": [
              "deadpan indie-film dialogue: short flat lines, a beat of silence, then the true thing",
              "ensemble reunion stories: one by one the old friends are brought back for one last night"
            ],
            "refs": [
              {
                "name": "Drama loving",
                "kind": "meaning quality",
                "mark": "new"
              },
              {
                "name": "Loyal",
                "kind": "meaning quality",
                "mark": "new"
              },
              {
                "name": "Family",
                "kind": "meaning quality",
                "mark": "predicted"
              },
              {
                "name": "Her",
                "kind": "film",
                "mark": "new"
              },
              {
                "name": "Somebody Somewhere",
                "kind": "TV",
                "mark": "new"
              },
              {
                "name": "Submarine",
                "kind": "film",
                "mark": "new"
              },
              {
                "name": "Intimate",
                "kind": "look quality",
                "mark": "new"
              },
              {
                "name": "Raw",
                "kind": "look quality",
                "mark": "new"
              }
            ],
            "surprise": true
          }
        ],
        "setAside": [
          {
            "name": "Lord of the Flies",
            "kind": "book",
            "mark": "new",
            "reason": "A school-syllabus classic common to many audiences; its island-survival plot says nothing about this audience's look or play beyond what the other works already carry."
          },
          {
            "name": "Addiction",
            "kind": "meaning quality",
            "mark": "new",
            "reason": "A meaning tag carried by National Treasure and Lou Reed's subject matter; a five-minute reunion game for this audience gains nothing honest from it and it would sit badly as a mechanic."
          }
        ],
        "approach": "Saltmarsh is staged as a play in a low-poly marsh at dusk: the canvas sits inside a proscenium, each scene change is a hard curtain sweep, and the title, act cards and ending are set like a playbill. The play is a reunion: the player, the band's stage manager, has until high tide to bring three estranged members of a broken-up band back for one last show in the pier hall. Each member is won by a different mechanic borrowed from the games this audience loves: tuning a radio through static to reach the keyboardist, keeping time in a rhythm rehearsal with the guitarist, and choosing the honest line in a deadpan conversation with the singer. Then the player dresses the stage symmetrically, and the curtain rises on whoever came."
      },
      "dna": {
        "thesis": "Saltmarsh is a reunion staged as a play: in a low-poly marsh at dusk, a stage manager has until high tide to win back three estranged bandmates by tuning a radio, keeping time and saying the honest thing, then dresses the stage and raises the curtain on whoever came.",
        "devices": [
          {
            "id": "dna1",
            "layer": "palette",
            "device": "Low-poly dusk over a dark tidal marsh, oxblood curtains at the edge",
            "anchors": [
              {
                "name": "melancholic",
                "kind": "mood quality",
                "mark": "predicted"
              },
              {
                "name": "artistic",
                "kind": "look quality",
                "mark": "new"
              },
              {
                "name": "Low-poly",
                "kind": "art style",
                "mark": "new"
              }
            ],
            "qualities": [
              "melancholic",
              "artistic",
              "Low-poly"
            ],
            "translation": "Melancholic becomes the last orange of a dusk sky over dark teal water; artistic and Low-poly become flat-shaded facets in a few hard colour bands, with olive reeds silhouetted in front, the way low-poly dusk landscapes draw it. The oxblood of a theatre curtain frames it; a sodium-yellow spotlight is the only bright light.",
            "convention": "low-poly dusk landscapes: flat-shaded facets in bands of sunset colour with dark silhouetted foregrounds",
            "tokens": {
              "colors": [
                "#16383a",
                "#2b6b62",
                "#e8722a",
                "#f5c542",
                "#6e1423",
                "#7d8a3a"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [
                "#16383a",
                "#2b6b62",
                "#e8722a",
                "#f5c542",
                "#6e1423",
                "#7d8a3a"
              ],
              "fonts": [],
              "ids": []
            },
            "method": "source",
            "why": "The palette lives as hex constants in the game script's PAL object and the page's CSS custom properties, drawn in flat facets on the canvas.",
            "cluster": "Melancholic, tense small-town games",
            "check": "present"
          },
          {
            "id": "dna2",
            "layer": "typography",
            "device": "Playbill fat face over a typewritten script",
            "anchors": [
              {
                "name": "Theatrical",
                "kind": "look quality",
                "mark": "new"
              },
              {
                "name": "Talking Heads",
                "kind": "music",
                "mark": "new"
              }
            ],
            "qualities": [
              "Theatrical",
              "New Wave"
            ],
            "translation": "Theatrical becomes the type of a repertory playbill: a heavy fat-face display for the title, act cards and cast list, and the dialogue set like a typed play script with speaker names before each line.",
            "convention": "school-play and repertory playbills: a fat-face title over a typeset cast list, acts announced on a card",
            "tokens": {
              "fonts": [
                "Rozha One",
                "Cutive Mono"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [
                "Rozha One",
                "Cutive Mono"
              ],
              "ids": []
            },
            "method": "library-font",
            "why": "Rozha One and Cutive Mono are fetched into fonts/ and loaded with @font-face, then used by both the page and canvas text.",
            "cluster": "Theatrical art-rock stage",
            "check": "present"
          },
          {
            "id": "dna3",
            "layer": "motion",
            "device": "Hard curtain sweep between scenes, beat-locked lights",
            "anchors": [
              {
                "name": "Rhythmically Charged",
                "kind": "pacing",
                "mark": "new"
              },
              {
                "name": "Stylized",
                "kind": "pacing",
                "mark": "new"
              }
            ],
            "qualities": [
              "Rhythmically Charged",
              "Stylized"
            ],
            "translation": "Rhythmically Charged and Stylized pacing replace the soft fade I predicted: every scene change is a fast, hard curtain sweep from both wings, and lamps, the spotlight and the tide clock pulse on one shared beat.",
            "convention": "curtain-and-spotlight scene changes of stage musicals and concert films: the cut is a hard sweep, not a dissolve",
            "tokens": {
              "css": [
                "transition: transform 650ms cubic-bezier(.77,0,.18,1)"
              ],
              "literals": [
                "const BEAT_MS = 480"
              ]
            },
            "surprise": true,
            "method": "source",
            "why": "Two DOM curtain panels over the canvas sweep with a CSS transform transition at every scene change; the canvas lights pulse on BEAT_MS.",
            "cluster": "Theatrical art-rock stage",
            "check": "present"
          },
          {
            "id": "dna4",
            "layer": "interaction",
            "device": "Radio dial tuned through static",
            "anchors": [
              {
                "name": "Oxenfree",
                "kind": "game",
                "mark": "new"
              },
              {
                "name": "tense",
                "kind": "mood quality",
                "mark": "new"
              },
              {
                "name": "Mysterious",
                "kind": "tone",
                "mark": "new"
              }
            ],
            "qualities": [
              "tense",
              "Stylized",
              "Mysterious"
            ],
            "translation": "Tense and Mysterious become a tuning puzzle: the player sweeps a needle along a dial while static hisses, finds a voice by its strength meter, and must hold it steady against drift until the keyboardist's broadcast is clear.",
            "convention": "radio-static tuning puzzles: a dial, a needle and voices rising out of the noise",
            "tokens": {
              "ids": [
                "radio-dial"
              ],
              "literals": [
                "function tuneRadio"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "radio-dial"
              ]
            },
            "method": "source",
            "why": "The radio tuning scene is a canvas mini-game in the script, with its dial drawn as the radio-dial scene element.",
            "cluster": "Melancholic, tense small-town games",
            "check": "present"
          },
          {
            "id": "dna5",
            "layer": "interaction",
            "device": "Boathouse rehearsal in three falling lanes",
            "anchors": [
              {
                "name": "Night in the Woods",
                "kind": "game",
                "mark": "predicted"
              },
              {
                "name": "Rhythmically Charged",
                "kind": "pacing",
                "mark": "new"
              }
            ],
            "qualities": [
              "melancholic",
              "Rhythmically Charged"
            ],
            "translation": "Band practice from the small-town games this audience loves, made rhythmically charged: notes fall down three lanes to a synthesised drum loop, and the guitarist only comes back if the player keeps time.",
            "convention": "small-town band-practice rhythm sequences: notes falling down lanes to a cheap drum loop",
            "tokens": {
              "ids": [
                "rhythm-lane"
              ],
              "literals": [
                "function playRehearsal"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "rhythm-lane"
              ]
            },
            "method": "source",
            "why": "The rehearsal is a canvas rhythm game in the script with WebAudio clicks, its lanes drawn as rhythm-lane.",
            "cluster": "Melancholic, tense small-town games",
            "check": "present"
          },
          {
            "id": "dna6",
            "layer": "structure",
            "device": "Get the band back before high tide",
            "anchors": [
              {
                "name": "Drama loving",
                "kind": "meaning quality",
                "mark": "new"
              },
              {
                "name": "Loyal",
                "kind": "meaning quality",
                "mark": "new"
              },
              {
                "name": "Somebody Somewhere",
                "kind": "TV",
                "mark": "new"
              }
            ],
            "qualities": [
              "Drama loving",
              "Loyal",
              "Friendship and community"
            ],
            "translation": "Drama loving and Loyal become the shape of the play: a tide clock runs from low to high water, each member won back is a loyalty restored, and the final show in the pier hall plays out with exactly who came, so the ending differs.",
            "convention": "ensemble reunion stories: one by one the old friends are brought back for one last night",
            "tokens": {
              "ids": [
                "tide-clock",
                "final-show"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "tide-clock",
                "final-show"
              ]
            },
            "method": "source",
            "why": "The tide clock and the final show are the game's state machine; the tide clock is a DOM meter beside the canvas.",
            "cluster": "Loyal friends, drama and grief",
            "check": "present"
          },
          {
            "id": "dna7",
            "layer": "layout",
            "device": "Dress the stage in mirror symmetry",
            "anchors": [
              {
                "name": "Theatrical",
                "kind": "look quality",
                "mark": "new"
              },
              {
                "name": "Rushmore",
                "kind": "film",
                "mark": "new"
              }
            ],
            "qualities": [
              "Theatrical",
              "Resourceful"
            ],
            "translation": "Theatrical and Resourceful become a staging puzzle: on a bare stage grid the player places lamps, amps and a ladder so that each prop has its mirror twin across the centre line, the self-serious care of a school play mounted like an opera.",
            "convention": "art-rock concert stagings: bare boards, one hard white spotlight, a band in tailored suits",
            "tokens": {
              "ids": [
                "stage-grid"
              ],
              "literals": [
                "function checkSymmetry"
              ]
            },
            "surprise": true,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "stage-grid"
              ]
            },
            "method": "source",
            "why": "The stage dressing puzzle is a grid scene in the script with a symmetry check.",
            "cluster": "Theatrical art-rock stage",
            "check": "present"
          },
          {
            "id": "dna8",
            "layer": "imagery",
            "device": "Faceted marsh set pieces and a tailored stage manager",
            "anchors": [
              {
                "name": "Low-poly",
                "kind": "art style",
                "mark": "new"
              },
              {
                "name": "Modern Tailoring",
                "kind": "surface",
                "mark": "new"
              }
            ],
            "qualities": [
              "Low-poly",
              "Modern Tailoring"
            ],
            "translation": "Low-poly becomes every set piece drawn as flat-shaded triangles on the canvas: dunes, reeds, the pier, the houseboat. Modern Tailoring becomes the cast: figures as narrow tailored silhouettes in suits, cut from a few polygons.",
            "tokens": {
              "literals": [
                "function drawFacetMarsh",
                "function drawTailoredFigure"
              ]
            },
            "surprise": true,
            "method": "source",
            "why": "Every set piece and figure is drawn from polygons by canvas functions, no image files.",
            "cluster": "Melancholic, tense small-town games",
            "check": "present"
          },
          {
            "id": "dna9",
            "layer": "voice",
            "device": "Deadpan lines, a pause, then the true thing",
            "anchors": [
              {
                "name": "Her",
                "kind": "film",
                "mark": "new"
              },
              {
                "name": "Submarine",
                "kind": "film",
                "mark": "new"
              },
              {
                "name": "Intimate",
                "kind": "look quality",
                "mark": "new"
              }
            ],
            "qualities": [
              "Thought provoking",
              "Deadpan whimsicality",
              "Intimate"
            ],
            "translation": "Deadpan whimsicality and Intimate become short flat lines in the play script, then a sudden sincere one; Thought provoking becomes the singer's questions, which have an honest answer and an easy one.",
            "tokens": {
              "copy": [
                "The tide is coming in. The band is not.",
                "I kept the setlist. I don't know why. Yes, I do.",
                "Nobody tunes out a person. You just lose the frequency."
              ]
            },
            "surprise": true,
            "method": "copy",
            "why": "The lines are written into the dialogue data of the script and the page.",
            "cluster": "Loyal friends, drama and grief",
            "check": "present"
          }
        ],
        "stats": {
          "devices": 9,
          "layers": [
            "palette",
            "typography",
            "motion",
            "interaction",
            "structure",
            "layout",
            "imagery",
            "voice"
          ],
          "surpriseAnchored": 9,
          "measuredAnchored": 9,
          "predictionAnchored": 0,
          "qualityAnchored": 9
        }
      },
      "departure": {
        "sketch": {
          "palette": [
            "#f2c6c2",
            "#f6e3b4",
            "#9ec1b8",
            "#c9584a",
            "#3e3a5c"
          ],
          "fonts": [
            "Jost",
            "Courier Prime"
          ],
          "sections": [
            "title-card",
            "town-map",
            "dialogue-box",
            "inventory",
            "chapter-card",
            "ending-card"
          ]
        },
        "palette": [
          {
            "color": "#16383a",
            "nearest": "#3e3a5c",
            "delta": 27,
            "moved": true
          },
          {
            "color": "#2b6b62",
            "nearest": "#9ec1b8",
            "delta": 36,
            "moved": true
          },
          {
            "color": "#e8722a",
            "nearest": "#c9584a",
            "delta": 29,
            "moved": true
          },
          {
            "color": "#f5c542",
            "nearest": "#f6e3b4",
            "delta": 44,
            "moved": true
          },
          {
            "color": "#6e1423",
            "nearest": "#c9584a",
            "delta": 32,
            "moved": true
          },
          {
            "color": "#7d8a3a",
            "nearest": "#f6e3b4",
            "delta": 42,
            "moved": true
          }
        ],
        "fonts": [
          {
            "name": "Rozha One",
            "moved": true
          },
          {
            "name": "Cutive Mono",
            "moved": true
          }
        ],
        "ids": [
          "radio-dial",
          "rhythm-lane",
          "tide-clock",
          "final-show",
          "stage-grid"
        ],
        "threshold": 20
      },
      "decisions": [
        {
          "question": "shortlist",
          "ask": "Which of these would they choose?",
          "decision": "Which game's core loop the mechanics borrow from: radio tuning and talk choices (Oxenfree), band-practice rhythm and small-town walking (Night in the Woods), chores and gifting (Stardew Valley), symmetric spatial puzzles (Monument Valley) or a gentle exploration hike (A Short Hike).",
          "guess": "Stardew Valley and A Short Hike rank highest (cosy chores and gentle walking), Night in the Woods next, Oxenfree and Monument Valley lower.",
          "answer": [
            {
              "label": "Ranked for this audience",
              "names": [
                "Night in the Woods",
                "Oxenfree",
                "Monument Valley",
                "A Short Hike",
                "Stardew Valley"
              ]
            }
          ],
          "requests": 6
        },
        {
          "question": "pacing",
          "ask": "How do the films and series they love move?",
          "decision": "How the five minutes are paced: a free stroll with no clock, or a ticking deadline (the tide) that makes the reunion tense, and how scene changes move.",
          "guess": "Slow, lingering and gentle; no timer, soft fades between scenes.",
          "answer": [
            {
              "label": "Pacing",
              "names": [
                "Cinematic Journey (new)",
                "Abrasive (new)",
                "Stylized (new)",
                "Rhythmically Charged (new)",
                "Artistically Rich (new)",
                "Psychological Intensity (new)"
              ]
            }
          ],
          "requests": 0
        }
      ],
      "reviews": [
        {
          "round": 1,
          "summary": "The walk, the playbill title, the radio, the stage puzzle and the ending all carry their devices, and the play-test drove every mechanic to both endings without an error. Two text collisions and a wedge-shaped sun need repair, and the interiors' flat window blocks and stock key chips look like any game.",
          "met": 3,
          "partly": 3,
          "missed": 0,
          "criteria": [
            {
              "id": "r1",
              "device": "dna8",
              "look": "In the walk view the marsh is drawn in flat-shaded triangles: a faceted dusk sky in orange bands over dark teal water, olive reeds in front, and the stage manager as a narrow suited silhouette.",
              "capture": "r1-frame-walk",
              "verdict": "partly",
              "observed": "The marsh is drawn in flat-shaded triangles: faceted dusk bands from oxblood to orange, dark facet hills, a dark faceted creek with plank boardwalks, olive reeds, and the stage manager as a narrow mustard-suited silhouette with Wren following. But the sun is hidden behind the hills, and in the cast card 'Marguerite, voice' collides with 'the bus shelter'.",
              "repair": "Raise the sun above the hill line so it sinks only as the tide rises, and widen the cast card so names and places no longer overlap."
            },
            {
              "id": "r2",
              "device": "dna2",
              "look": "The title view shows SALTMARSH set large in the fat-face display with a playbill cast list below it in the typewriter face, and the keyboard controls visible.",
              "capture": "r1-frame-title",
              "verdict": "partly",
              "observed": "SALTMARSH is set large in the fat-face display in oxblood on a yellow playbill, with 'The Pier Hall presents', the tagline and a dotted-leader cast list in the typewriter face, and the keys shown below the stage. The sun behind the card reads as a cut-out wedge shape, which breaks the faceted set.",
              "repair": "Draw the sun as a two-facet octagon without the cut wedge."
            },
            {
              "id": "r3",
              "device": "dna4",
              "look": "In the radio view a horizontal dial with a needle, a signal meter and visible static fill the stage, with the tuning keys shown on screen.",
              "capture": "r1-frame-radio",
              "verdict": "met",
              "observed": "A long yellow dial from 88 to 108 MHz with an oxblood needle at 102.3 fills the cabinet; static speckles and garbled glyphs cover Wren's line; the signal meter shows three of twelve bars; the first recovered fragment is listed and the tuning keys are shown. The hold ring is an empty dark disc."
            },
            {
              "id": "r4",
              "device": "dna5",
              "look": "In the rehearsal view three vertical lanes with falling notes and a hit line are clearly readable, with the lane keys labelled.",
              "capture": "r1-frame-rehearsal",
              "verdict": "partly",
              "observed": "Three dark lanes with faceted diamond notes in orange, yellow and olive fall to a yellow hit line, a 'late' cue shows, and the card reads 'Kept time: 8 / 31, Dell needs 22'. But a note past the line covers the down-arrow S key label, so the lane keys are not always readable.",
              "repair": "Stop drawing notes just past the hit line and give the key labels their own strip below the lanes."
            },
            {
              "id": "r5",
              "device": "dna7",
              "look": "In the stage view a grid with a bright centre line shows placed props, and mirrored pairs are visibly marked as matched.",
              "capture": "r1-frame-stage",
              "verdict": "met",
              "observed": "The bare-board stage has a 7 by 3 grid with a dashed yellow centre line through a microphone; the left half carries lamp, palm, amp and ladder; two right-half props are joined to their twins by yellow arcs marked 'twin'; the panel reads 'Twins placed: 2 / 4, out of place: 1'."
            },
            {
              "id": "r6",
              "device": "dna6",
              "look": "In the ending view the curtain is open on the pier-hall stage with the members who came standing in the spotlight, and the tide clock reads high water with a prompt to play again.",
              "capture": "r1-frame",
              "verdict": "met",
              "observed": "Beside the play-test log (43 of 43 passed, no page errors) the game shows the ending: curtain open on the pier-hall stage, Wren, Dell and Marguerite in three yellow spotlight cones, a yellow 'Curtain.' card with the full-cast lines, the tide clock full to high water, and 'R: play again' shown."
            }
          ],
          "critique": {
            "generic": [
              {
                "choice": "The controls are rounded yellow key chips, the stock look of any web game's help bar.",
                "capture": "r1-frame-radio",
                "action": "replaced"
              },
              {
                "choice": "The windows in the porch and the boathouse are two flat colour blocks, orange over teal, unlike the faceted marsh outside.",
                "capture": "r1-frame-rehearsal",
                "action": "replaced"
              },
              {
                "choice": "The rehearsal is three falling-note lanes, the standard rhythm-game layout.",
                "capture": "r1-frame-rehearsal",
                "action": "kept",
                "anchor": "Night in the Woods"
              }
            ],
            "fan": {
              "works": [
                "Somebody Somewhere",
                "The Velvet Underground",
                "Night in the Woods",
                "Oxenfree",
                "Rushmore"
              ],
              "verdict": "partly",
              "why": "They would recognise the band practice and radio tuning of the games, the school-play seriousness of the playbill and the symmetrical stage, the small-town friends drawn back together, and the deadpan lines. But the interiors are flatter than the marsh, the controls look like any web game, the music is thin bleeps rather than anything raw, and two bits of text collide."
            }
          }
        },
        {
          "round": 2,
          "summary": "All six criteria are met after the repairs: the sun and cast card on the marsh, the rehearsal key strip, the faceted windows and the ticket-stub keys. The play-test, run again after the repairs, still passes all 43 checks across both endings. The in-canvas hint bar is still a plain dark strip, and the sound is simple synthesis.",
          "met": 6,
          "partly": 0,
          "missed": 0,
          "criteria": [
            {
              "id": "r1",
              "device": "dna8",
              "look": "In the walk view the marsh is drawn in flat-shaded triangles: a faceted dusk sky in orange bands over dark teal water, olive reeds in front, and the stage manager as a narrow suited silhouette.",
              "capture": "r2-frame-walk",
              "verdict": "met",
              "observed": "The marsh is flat-shaded triangles: faceted dusk bands from oxblood to orange, a two-facet yellow and orange sun now above the dark facet hills, a dark faceted creek with plank boardwalks, olive reeds, and the stage manager as a narrow mustard-suited silhouette with Wren in teal behind. The widened cast card reads cleanly: 'Marguerite, voice ... the bus shelter'."
            },
            {
              "id": "r2",
              "device": "dna2",
              "look": "The title view shows SALTMARSH set large in the fat-face display with a playbill cast list below it in the typewriter face, and the keyboard controls visible.",
              "capture": "r2-frame-title",
              "verdict": "met",
              "observed": "SALTMARSH in the oxblood fat face on a yellow playbill, 'The Pier Hall presents', the tagline, and a dotted-leader cast list in the typewriter face; the sun behind is a two-facet octagon, and the keys show below the stage as oxblood ticket stubs with dashed perforated edges."
            },
            {
              "id": "r3",
              "device": "dna4",
              "look": "In the radio view a horizontal dial with a needle, a signal meter and visible static fill the stage, with the tuning keys shown on screen.",
              "capture": "r2-frame-radio",
              "verdict": "met",
              "observed": "The dial from 88 to 108 MHz with its oxblood needle at 102.3, static speckles over Wren's garbled line, a three-bar signal meter, a yellow-ringed hold dial, the first fragment recovered, and a faceted dusk window with mullions instead of the flat block. The tuning keys show in the canvas and as ticket stubs below."
            },
            {
              "id": "r4",
              "device": "dna5",
              "look": "In the rehearsal view three vertical lanes with falling notes and a hit line are clearly readable, with the lane keys labelled.",
              "capture": "r2-frame-rehearsal",
              "verdict": "met",
              "observed": "Three lanes with faceted diamond notes fall to the yellow hit line; the key labels now sit in their own oxblood strip under the lanes, uncovered; the card reads 'Kept time: 8 / 31, Dell needs 22'; the wall is faceted planks with a hung net, floats and a faceted dusk window."
            },
            {
              "id": "r5",
              "device": "dna7",
              "look": "In the stage view a grid with a bright centre line shows placed props, and mirrored pairs are visibly marked as matched.",
              "capture": "r2-frame-stage",
              "verdict": "met",
              "observed": "The bare-board stage grid with a dashed yellow centre line through the microphone; lamp and palm on the right are joined to their twins by yellow arcs marked 'twin'; the panel reads 'Twins placed: 2 / 4, out of place: 1'; the yellow cursor sits on the right half."
            },
            {
              "id": "r6",
              "device": "dna6",
              "look": "In the ending view the curtain is open on the pier-hall stage with the members who came standing in the spotlight, and the tide clock reads high water with a prompt to play again.",
              "capture": "r2-frame",
              "verdict": "met",
              "observed": "Beside the re-run play-test log (43 of 43 passed, no page errors), the ending: curtain open on the pier-hall stage, Wren, Dell and Marguerite in three yellow spotlight cones, a 'Curtain.' card with the full-cast lines, the tide clock full to high water, and 'R: play again' as a ticket stub."
            }
          ],
          "critique": {
            "generic": [
              {
                "choice": "The in-canvas hint bar at the foot of each scene is a plain dark rectangle with grey text, the stock look of any game's help line.",
                "capture": "r2-frame-stage",
                "action": "replaced"
              },
              {
                "choice": "The rehearsal is three falling-note lanes, the standard rhythm-game layout.",
                "capture": "r2-frame-rehearsal",
                "action": "kept",
                "anchor": "Night in the Woods"
              },
              {
                "choice": "The status of the cast sits in a framed dark box in the corner, a common game HUD panel.",
                "capture": "r2-frame-walk",
                "action": "kept",
                "anchor": "Theatrical"
              }
            ],
            "fan": {
              "works": [
                "Somebody Somewhere",
                "The Velvet Underground",
                "Night in the Woods",
                "Oxenfree",
                "Rushmore"
              ],
              "verdict": "partly",
              "why": "They would recognise the small town at dusk, the radio tuned out of static, the band practice, the playbill and the symmetrical school-play staging, and friends brought back one by one in deadpan lines. What still falls short is the sound: a few synthesised tones and an overdriven sawtooth are thinner and less raw than the music they love, and the figures are small on the marsh."
            }
          }
        }
      ],
      "captures": [
        {
          "id": "r2-frame",
          "round": 2,
          "view": "frame",
          "width": 1440,
          "height": 810,
          "label": "frame",
          "cited": true,
          "source": ".mousa/captures/r2-frame.png",
          "file": "assets/captures/a-r2-frame.png"
        },
        {
          "id": "r2-frame-walk",
          "round": 2,
          "view": "frame",
          "target": "walk",
          "width": 1440,
          "height": 810,
          "label": "frame · walk",
          "cited": true,
          "source": ".mousa/captures/r2-frame-walk.png",
          "file": "assets/captures/a-r2-frame-walk.png"
        },
        {
          "id": "r2-frame-title",
          "round": 2,
          "view": "frame",
          "target": "title",
          "width": 1440,
          "height": 810,
          "label": "frame · title",
          "cited": true,
          "source": ".mousa/captures/r2-frame-title.png",
          "file": "assets/captures/a-r2-frame-title.png"
        },
        {
          "id": "r2-frame-radio",
          "round": 2,
          "view": "frame",
          "target": "radio",
          "width": 1440,
          "height": 810,
          "label": "frame · radio",
          "cited": true,
          "source": ".mousa/captures/r2-frame-radio.png",
          "file": "assets/captures/a-r2-frame-radio.png"
        },
        {
          "id": "r2-frame-rehearsal",
          "round": 2,
          "view": "frame",
          "target": "rehearsal",
          "width": 1440,
          "height": 810,
          "label": "frame · rehearsal",
          "cited": true,
          "source": ".mousa/captures/r2-frame-rehearsal.png",
          "file": "assets/captures/a-r2-frame-rehearsal.png"
        },
        {
          "id": "r2-frame-stage",
          "round": 2,
          "view": "frame",
          "target": "stage",
          "width": 1440,
          "height": 810,
          "label": "frame · stage",
          "cited": true,
          "source": ".mousa/captures/r2-frame-stage.png",
          "file": "assets/captures/a-r2-frame-stage.png"
        }
      ],
      "check": {
        "score": 1,
        "system": "css-vars",
        "present": 9,
        "devices": [
          {
            "id": "dna1",
            "status": "present"
          },
          {
            "id": "dna2",
            "status": "present"
          },
          {
            "id": "dna3",
            "status": "present"
          },
          {
            "id": "dna4",
            "status": "present"
          },
          {
            "id": "dna5",
            "status": "present"
          },
          {
            "id": "dna6",
            "status": "present"
          },
          {
            "id": "dna7",
            "status": "present"
          },
          {
            "id": "dna8",
            "status": "present"
          },
          {
            "id": "dna9",
            "status": "present"
          }
        ],
        "style": {
          "atStart": {
            "stylesheets": [],
            "handWritten": 0,
            "classes": 0
          },
          "now": {
            "stylesheets": [],
            "handWritten": 137,
            "classes": 6
          }
        }
      },
      "limits": [
        "Qloo measured the entities, tags and shared qualities named here and how they relate to this audience. Every colour, font, layout, motion and line drawn from them is the agent's interpretation, marked as such.",
        "A name marked new was not in the prediction the agent froze before any data. Only names are published here: Qloo's ids, affinity scores, popularity and descriptions stay in the project.",
        "The check shows that the declared tokens are in the files, not that the design is good. The review is the agent's own reading of its captures.",
        "One session is one sample. It shows where this design's choices came from, not that people prefer it."
      ]
    },
    {
      "schemaVersion": "1.0",
      "kind": "baseline",
      "generatedAt": "2026-10-27T14:00:00.799Z",
      "host": "claude-code",
      "writtenBy": {
        "name": "mousa",
        "version": "0.7.1"
      },
      "medium": "game",
      "taste": "own prediction",
      "title": "For an audience that loves Fleetwood Mac, Wes Anderson, The Grand Budapest Hotel and Moonrise Kingdom",
      "audience": {
        "references": [
          {
            "name": "Fleetwood Mac"
          },
          {
            "name": "Wes Anderson"
          },
          {
            "name": "The Grand Budapest Hotel"
          },
          {
            "name": "Moonrise Kingdom"
          }
        ]
      },
      "headline": {
        "value": "10",
        "text": "design devices rest on the model's own prediction, with no Qloo data",
        "sentence": "10 devices rest on the prediction alone; no Qloo data was used."
      },
      "numbers": [
        {
          "value": 55,
          "label": "entries in the prediction"
        },
        {
          "value": 0,
          "label": "Qloo requests"
        },
        {
          "value": 10,
          "label": "design devices over 8 layers"
        }
      ],
      "prediction": {
        "frozenAt": "2026-10-26T21:18:24.601Z",
        "sha256": "00ad86897c7516da7e49559500cb196a0a3bb45305426d0a807fc9a39d8d913c",
        "sealHolds": true,
        "summary": "Adults who love Wes Anderson's symmetrical, pastel, deadpan films and Fleetwood Mac's warm, melancholy 1970s soft rock. They like nostalgic, handmade, bittersweet stories about found family and gentle eccentrics, and they care about craft and curated detail.",
        "groups": [
          {
            "domain": "videogame",
            "label": "Games",
            "quality": false,
            "entries": [
              {
                "name": "Stardew Valley"
              },
              {
                "name": "Night in the Woods"
              },
              {
                "name": "Firewatch"
              },
              {
                "name": "Gris"
              },
              {
                "name": "Monument Valley"
              },
              {
                "name": "A Short Hike"
              }
            ]
          },
          {
            "domain": "movie",
            "label": "Films",
            "quality": false,
            "entries": [
              {
                "name": "Lost in Translation"
              },
              {
                "name": "Little Miss Sunshine"
              },
              {
                "name": "Almost Famous"
              },
              {
                "name": "Amélie"
              },
              {
                "name": "Lady Bird"
              },
              {
                "name": "Paddington 2"
              }
            ]
          },
          {
            "domain": "tv_show",
            "label": "TV",
            "quality": false,
            "entries": [
              {
                "name": "Twin Peaks"
              },
              {
                "name": "Fleabag"
              },
              {
                "name": "Gilmore Girls"
              },
              {
                "name": "Arrested Development"
              },
              {
                "name": "Russian Doll"
              }
            ]
          },
          {
            "domain": "artist",
            "label": "Music",
            "quality": false,
            "entries": [
              {
                "name": "Stevie Nicks"
              },
              {
                "name": "The Kinks"
              },
              {
                "name": "Simon & Garfunkel"
              },
              {
                "name": "Big Thief"
              },
              {
                "name": "The Velvet Underground"
              },
              {
                "name": "Joni Mitchell"
              }
            ]
          },
          {
            "domain": "book",
            "label": "Books",
            "quality": false,
            "entries": [
              {
                "name": "The Secret History"
              },
              {
                "name": "Norwegian Wood"
              },
              {
                "name": "The Royal Tenenbaums screenplay"
              },
              {
                "name": "Franny and Zooey"
              },
              {
                "name": "The Catcher in the Rye"
              }
            ]
          },
          {
            "domain": "style",
            "label": "Pacing",
            "quality": true,
            "entries": [
              {
                "name": "symmetrical framing"
              },
              {
                "name": "deadpan whimsy"
              },
              {
                "name": "slow lingering takes"
              },
              {
                "name": "chapter title cards"
              },
              {
                "name": "nostalgic 1970s grain"
              }
            ]
          },
          {
            "domain": "aesthetic",
            "label": "Surfaces",
            "quality": true,
            "entries": [
              {
                "name": "pastel"
              },
              {
                "name": "vintage"
              },
              {
                "name": "handmade"
              },
              {
                "name": "retro 70s"
              },
              {
                "name": "dollhouse diorama"
              },
              {
                "name": "film grain"
              }
            ]
          },
          {
            "domain": "tone",
            "label": "Tone",
            "quality": true,
            "entries": [
              {
                "name": "bittersweet"
              },
              {
                "name": "melancholic"
              },
              {
                "name": "whimsical"
              },
              {
                "name": "nostalgic"
              },
              {
                "name": "wistful"
              }
            ]
          },
          {
            "domain": "qualities",
            "label": "Shared qualities",
            "quality": true,
            "entries": [
              {
                "name": "quirky"
              },
              {
                "name": "coming of age"
              },
              {
                "name": "found family"
              },
              {
                "name": "eccentric characters"
              },
              {
                "name": "nostalgia"
              },
              {
                "name": "romantic"
              }
            ]
          },
          {
            "domain": "art_style",
            "label": "Art styles",
            "quality": true,
            "entries": [
              {
                "name": "pixel art"
              },
              {
                "name": "hand-drawn"
              },
              {
                "name": "flat pastel illustration"
              },
              {
                "name": "stop-motion"
              },
              {
                "name": "diorama"
              }
            ]
          }
        ],
        "sketch": {
          "summary": "A symmetrical pastel pixel-art seaside town (Saltmarsh) seen like a diorama, split into chapter title cards, where the player walks a small grid, talks to deadpan eccentrics, collects lost items for them and finds the pieces of a song on a record player, ending in a bittersweet sunset farewell.",
          "palette": [
            "#f2c6c2",
            "#f6e3b4",
            "#9ec1b8",
            "#c9584a",
            "#3e3a5c"
          ],
          "fonts": [
            "Jost",
            "Courier Prime"
          ],
          "sections": [
            "title-card",
            "town-map",
            "dialogue-box",
            "inventory",
            "chapter-card",
            "ending-card"
          ],
          "motifs": [
            "symmetrical centered framing",
            "chapter title cards",
            "pastel seaside diorama",
            "vinyl record and song fragments",
            "1970s film grain"
          ]
        }
      },
      "reading": {
        "clusters": [
          {
            "id": "c1",
            "name": "Dollhouse symmetry",
            "reading": "A quirky world kept in perfect order: centred, flat-on views of a little built set in sugared pastels, where the joke is how seriously everything is arranged.",
            "layers": [
              "palette",
              "layout",
              "imagery",
              "typography"
            ],
            "conventions": [
              "Cut-away dollhouse sets seen dead-on: a building sliced open like a cake, each room a lit box in its own pastel",
              "Centred chapter title cards: a single line of geometric sans capitals on a flat coloured field, framed by a thin border"
            ],
            "refs": [
              {
                "name": "quirky",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "symmetrical framing",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "dollhouse diorama",
                "kind": "surface",
                "mark": "own"
              },
              {
                "name": "pastel",
                "kind": "surface",
                "mark": "own"
              },
              {
                "name": "flat pastel illustration",
                "kind": "art style",
                "mark": "own"
              },
              {
                "name": "Monument Valley",
                "kind": "game",
                "mark": "own"
              },
              {
                "name": "Amélie",
                "kind": "film",
                "mark": "own"
              },
              {
                "name": "deadpan whimsy",
                "kind": "pacing",
                "mark": "own"
              }
            ]
          },
          {
            "id": "c2",
            "name": "Seventies tape warmth",
            "reading": "Nostalgia as a warm, slightly faded record: amber-and-rose film stock, a cassette or LP as a keepsake, songs half-remembered rather than played clean.",
            "layers": [
              "palette",
              "typography",
              "motion",
              "voice"
            ],
            "conventions": [
              "Faded 1970s colour stock: lifted blacks, rose and mustard cast, a fine grain over everything",
              "Typewritten liner notes and track lists on a record sleeve"
            ],
            "refs": [
              {
                "name": "nostalgia",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "nostalgic 1970s grain",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "retro 70s",
                "kind": "surface",
                "mark": "own"
              },
              {
                "name": "vintage",
                "kind": "surface",
                "mark": "own"
              },
              {
                "name": "film grain",
                "kind": "surface",
                "mark": "own"
              },
              {
                "name": "Stevie Nicks",
                "kind": "music",
                "mark": "own"
              },
              {
                "name": "Joni Mitchell",
                "kind": "music",
                "mark": "own"
              },
              {
                "name": "The Kinks",
                "kind": "music",
                "mark": "own"
              }
            ]
          },
          {
            "id": "c3",
            "name": "Found family, coming of age",
            "reading": "A small place full of odd, kind people; you grow up a little by doing small favours for them until they become your people.",
            "layers": [
              "structure",
              "interaction",
              "voice"
            ],
            "conventions": [
              "Cosy top-down village games: a walkable little map, neighbours with one errand each, a day that ends at dusk",
              "Ensemble cast roll-call: each eccentric introduced by name in a framed portrait card"
            ],
            "refs": [
              {
                "name": "found family",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "coming of age",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "eccentric characters",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "Stardew Valley",
                "kind": "game",
                "mark": "own"
              },
              {
                "name": "A Short Hike",
                "kind": "game",
                "mark": "own"
              },
              {
                "name": "Night in the Woods",
                "kind": "game",
                "mark": "own"
              },
              {
                "name": "The Royal Tenenbaums screenplay",
                "kind": "book",
                "mark": "own"
              },
              {
                "name": "Little Miss Sunshine",
                "kind": "film",
                "mark": "own"
              }
            ]
          },
          {
            "id": "c4",
            "name": "Wistful leaving",
            "reading": "A tender sadness about endings: holding a shot a little too long, a last look back, a goodbye that is also a small romance with a place.",
            "layers": [
              "motion",
              "voice",
              "structure"
            ],
            "conventions": [
              "Held final shot at dusk: the sky shifting through rose to indigo while the figure stands still, long fade to the credit card",
              "Hand-inked end credits rolling slowly over the last frame"
            ],
            "refs": [
              {
                "name": "Lost in Translation",
                "kind": "film",
                "mark": "own"
              },
              {
                "name": "Twin Peaks",
                "kind": "TV",
                "mark": "own"
              },
              {
                "name": "bittersweet",
                "kind": "tone",
                "mark": "own"
              },
              {
                "name": "wistful",
                "kind": "tone",
                "mark": "own"
              },
              {
                "name": "melancholic",
                "kind": "tone",
                "mark": "own"
              },
              {
                "name": "slow lingering takes",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "romantic",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "hand-drawn",
                "kind": "art style",
                "mark": "own"
              }
            ]
          }
        ],
        "setAside": [
          {
            "name": "Gris",
            "kind": "game",
            "mark": "own",
            "reason": "Its watercolour abstraction and grief allegory pull away from the tidy, deadpan dollhouse order the rest of the audience shares."
          },
          {
            "name": "Russian Doll",
            "kind": "TV",
            "mark": "own",
            "reason": "A frantic time-loop and New York nightlife register that clashes with the slow seaside pacing this audience leans to."
          }
        ],
        "approach": "Saltmarsh is a single symmetrical seaside diorama drawn on a canvas in flat pastel blocks with a film-grain overlay, framed like a cut-away dollhouse. Structure comes from c3: the player walks a small town and does one favour each for a handful of eccentric neighbours, each errand a different playable activity (sorting, rhythm, finding), gathering the tracks of a lost record. Chapters open on c1 title cards in a geometric sans. c2 gives the warm faded palette, typewritten dialogue and the record-player keepsake. c4 shapes the end: the tide comes in at dusk, the shot is held, and the player leaves on the ferry with the record playing, then a slow credit card and a play-again prompt."
      },
      "dna": {
        "thesis": "Saltmarsh is the last day of a summer spent in a dead-centred pastel seaside dollhouse: you do one odd favour each for four eccentric neighbours, each favour a different small game, and collect a song from each until the tide turns, the ferry comes and your found family lines up on the pier to see you off.",
        "devices": [
          {
            "id": "dna1",
            "layer": "palette",
            "device": "Sugar-almond seaside on faded seventies stock",
            "anchors": [
              {
                "name": "quirky",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "pastel",
                "kind": "surface",
                "mark": "own"
              },
              {
                "name": "nostalgic 1970s grain",
                "kind": "pacing",
                "mark": "own"
              }
            ],
            "qualities": [
              "quirky",
              "pastel"
            ],
            "translation": "Quirky order, drawn the way cut-away dollhouse sets are: each building its own flat pastel box (salmon hotel, duck-egg bandstand, mustard studio) on an olive marsh, with plum ink instead of black so the whole frame reads like lifted-black 1970s film stock rather than digital pastel.",
            "convention": "Cut-away dollhouse sets seen dead-on: a building sliced open like a cake, each room a lit box in its own pastel",
            "tokens": {
              "colors": [
                "#ee9f95",
                "#a9d6cb",
                "#e2b13c",
                "#7f8f4e",
                "#4b2e3e",
                "#b9cfe8"
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [
                "#e2b13c",
                "#7f8f4e",
                "#b9cfe8"
              ],
              "fonts": [],
              "ids": []
            },
            "method": "source",
            "why": "The game draws on a canvas, so the palette lives as a PAL object of hex constants in the game script, used by every draw call; the page frame uses the same values as CSS custom properties.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          },
          {
            "id": "dna2",
            "layer": "typography",
            "device": "Centred geometric title cards, typewritten dialogue",
            "anchors": [
              {
                "name": "quirky",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "deadpan whimsy",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "vintage",
                "kind": "surface",
                "mark": "own"
              }
            ],
            "qualities": [
              "quirky",
              "deadpan whimsy"
            ],
            "translation": "Chapter and place cards are set as the centred geometric sans capitals of film title cards (Jost, the Futura stand-in), always on a flat colour field with a thin border; every spoken line is typed in Courier Prime like liner notes or a screenplay page, in sentence case, never as small uppercase labels.",
            "convention": "Centred chapter title cards: a single line of geometric sans capitals on a flat coloured field, framed by a thin border",
            "tokens": {
              "fonts": [
                "Jost",
                "Courier Prime"
              ],
              "literals": [
                "TITLE_FONT = '600",
                "TYPE_FONT = '"
              ]
            },
            "surprise": false,
            "method": "library-font",
            "why": "Jost and Courier Prime are fetched into fonts/ and loaded with @font-face, then the canvas waits for document.fonts before drawing the title card so the cards really render in them.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          },
          {
            "id": "dna3",
            "layer": "layout",
            "device": "Mirror-symmetric town on one pier axis",
            "anchors": [
              {
                "name": "symmetrical framing",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "dollhouse diorama",
                "kind": "surface",
                "mark": "own"
              }
            ],
            "qualities": [
              "symmetrical framing",
              "dollhouse diorama"
            ],
            "translation": "The whole walkable map is mirrored about a vertical pier axis: hotel and studio face each other, bandstand on the axis, marsh and lighthouse below; the hotel is drawn sliced open like a dollhouse with lit rooms.",
            "tokens": {
              "ids": [
                "pier-axis",
                "hotel-cutaway"
              ],
              "literals": [
                "PIER_X ="
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "pier-axis",
                "hotel-cutaway"
              ]
            },
            "method": "source",
            "why": "The map is data in the script: a scene list mirrored about PIER_X, each building with an id such as hotel-cutaway that the draw and collision code use.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          },
          {
            "id": "dna4",
            "layer": "interaction",
            "device": "The level shutter: a portrait only takes when the frame is dead centre",
            "anchors": [
              {
                "name": "symmetrical framing",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "Amélie",
                "kind": "film",
                "mark": "own"
              },
              {
                "name": "deadpan whimsy",
                "kind": "pacing",
                "mark": "own"
              }
            ],
            "qualities": [
              "symmetrical framing",
              "deadpan whimsy"
            ],
            "translation": "Symmetry becomes a skill: in the photo studio the viewfinder drifts on the swaying pier and the player presses Space to take the twins' portrait; the closer the centre line sits to the axis, the better the shot, scored in deadpan words.",
            "tokens": {
              "ids": [
                "shutter-frame"
              ],
              "copy": [
                "Hold still. Symmetry is a kind of kindness."
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "shutter-frame"
              ]
            },
            "method": "source",
            "why": "The shutter is a playable minigame state in the script with its own update and draw, scored by distance from the axis.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          },
          {
            "id": "dna5",
            "layer": "structure",
            "device": "One last summer day: four favours, four songs, one tide clock",
            "anchors": [
              {
                "name": "found family",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "coming of age",
                "kind": "quality",
                "mark": "own"
              },
              {
                "name": "Stardew Valley",
                "kind": "game",
                "mark": "own"
              }
            ],
            "qualities": [
              "found family",
              "coming of age"
            ],
            "translation": "Progress is the village-day loop: a tide clock runs from morning to dusk, each neighbour has one errand, and each favour done hands you a song for your record; the songs you gather and the neighbours you helped are what the ending gives back.",
            "tokens": {
              "ids": [
                "tide-clock",
                "favour-ledger"
              ],
              "copy": [
                "Four neighbours. One day. Then the ferry."
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "tide-clock",
                "favour-ledger"
              ]
            },
            "method": "source",
            "why": "The day loop is the game's state machine: a tide clock in game minutes, a favour ledger of four neighbours, and songs awarded per favour, drawn as a HUD.",
            "cluster": "Found family, coming of age",
            "check": "present"
          },
          {
            "id": "dna6",
            "layer": "interaction",
            "device": "Tambourine for a retired singer: play back a half-remembered song",
            "anchors": [
              {
                "name": "Stevie Nicks",
                "kind": "music",
                "mark": "own"
              },
              {
                "name": "nostalgia",
                "kind": "quality",
                "mark": "own"
              }
            ],
            "qualities": [
              "nostalgia"
            ],
            "translation": "A rhythm favour: shawled Mrs. Varga rehearses an old song at the bandstand, beats slide along a lane and the player keeps time on Space; the notes are synthesised in the page, a little detuned like a worn record.",
            "tokens": {
              "ids": [
                "tambourine-lane"
              ],
              "literals": [
                "detune.value ="
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "tambourine-lane"
              ]
            },
            "method": "source",
            "why": "A rhythm state in the script with a beat chart and Web Audio oscillators, slightly detuned, all synthesised in the page with no files or network.",
            "cluster": "Seventies tape warmth",
            "check": "present"
          },
          {
            "id": "dna7",
            "layer": "structure",
            "device": "The held goodbye at the ferry",
            "anchors": [
              {
                "name": "Lost in Translation",
                "kind": "film",
                "mark": "own"
              },
              {
                "name": "bittersweet",
                "kind": "tone",
                "mark": "own"
              },
              {
                "name": "slow lingering takes",
                "kind": "pacing",
                "mark": "own"
              }
            ],
            "qualities": [
              "bittersweet",
              "slow lingering takes"
            ],
            "translation": "The game ends by holding a shot: at dusk the neighbours you helped stand in a symmetrical row on the pier, someone says something the ferry horn swallows, the track list of your record types out, and only then does the end card offer another day.",
            "tokens": {
              "ids": [
                "ferry-goodbye"
              ],
              "copy": [
                "Whatever she says is lost under the ferry horn.",
                "Saltmarsh grows smaller, and then it is a postcard."
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "ferry-goodbye"
              ]
            },
            "method": "source",
            "why": "The ending is a timed scene in the script: neighbours placed symmetrically on the pier, a held dusk sky, typed track list and the end card with play again.",
            "cluster": "Wistful leaving",
            "check": "present"
          },
          {
            "id": "dna8",
            "layer": "voice",
            "device": "Deadpan neighbours, wistful asides",
            "anchors": [
              {
                "name": "Twin Peaks",
                "kind": "TV",
                "mark": "own"
              },
              {
                "name": "wistful",
                "kind": "tone",
                "mark": "own"
              },
              {
                "name": "eccentric characters",
                "kind": "quality",
                "mark": "own"
              }
            ],
            "qualities": [
              "wistful",
              "eccentric characters"
            ],
            "translation": "Small-town eccentrics speak in grave, exact, slightly absurd sentences about tiny matters, and the narration answers with short wistful asides about leaving.",
            "tokens": {
              "copy": [
                "I have hung these keys since 1974. They have never once hung themselves.",
                "The tide does not wait. Neither, I am told, do ferries."
              ]
            },
            "surprise": false,
            "method": "copy",
            "why": "Dialogue lines are written into the neighbour data in the script, in the deadpan register.",
            "cluster": "Wistful leaving",
            "check": "present"
          },
          {
            "id": "dna9",
            "layer": "motion",
            "device": "Lingering holds and an iris close",
            "anchors": [
              {
                "name": "slow lingering takes",
                "kind": "pacing",
                "mark": "own"
              },
              {
                "name": "nostalgic 1970s grain",
                "kind": "pacing",
                "mark": "own"
              }
            ],
            "qualities": [
              "slow lingering takes"
            ],
            "translation": "Every chapter card holds a beat longer than needed and every scene change closes on a slow circular iris; the dusk sky eases from powder blue through rose to plum while the player stands still.",
            "tokens": {
              "literals": [
                "HOLD_MS = 2600",
                "IRIS_MS = 1400"
              ]
            },
            "surprise": false,
            "method": "source",
            "why": "Holds and the iris are timing constants and a transition routine in the script, with a reduced-motion check that shortens holds and replaces the iris with a cut.",
            "cluster": "Seventies tape warmth",
            "check": "present"
          },
          {
            "id": "dna10",
            "layer": "imagery",
            "device": "Flat pastel diorama under film grain",
            "anchors": [
              {
                "name": "flat pastel illustration",
                "kind": "art style",
                "mark": "own"
              },
              {
                "name": "film grain",
                "kind": "surface",
                "mark": "own"
              },
              {
                "name": "hand-drawn",
                "kind": "art style",
                "mark": "own"
              }
            ],
            "qualities": [
              "flat pastel illustration",
              "film grain"
            ],
            "translation": "Everything is drawn in flat filled shapes with no gradients except the sky, then a fine animated grain and a soft vignette are laid over the frame so it reads as a projected print of a little built set.",
            "tokens": {
              "ids": [
                "grain-overlay"
              ],
              "literals": [
                "drawGrain("
              ]
            },
            "surprise": false,
            "moved": {
              "colors": [],
              "fonts": [],
              "ids": [
                "grain-overlay"
              ]
            },
            "method": "source",
            "why": "Flat shapes are drawn with fillRect and arcs; drawGrain paints a pre-rendered noise tile with a small random offset each frame, and a vignette, over the whole canvas.",
            "cluster": "Dollhouse symmetry",
            "check": "present"
          }
        ],
        "stats": {
          "devices": 10,
          "layers": [
            "palette",
            "typography",
            "layout",
            "interaction",
            "structure",
            "voice",
            "motion",
            "imagery"
          ],
          "surpriseAnchored": 0,
          "measuredAnchored": 0,
          "predictionAnchored": 10,
          "qualityAnchored": 10
        }
      },
      "departure": {
        "sketch": {
          "palette": [
            "#f2c6c2",
            "#f6e3b4",
            "#9ec1b8",
            "#c9584a",
            "#3e3a5c"
          ],
          "fonts": [
            "Jost",
            "Courier Prime"
          ],
          "sections": [
            "title-card",
            "town-map",
            "dialogue-box",
            "inventory",
            "chapter-card",
            "ending-card"
          ]
        },
        "palette": [
          {
            "color": "#ee9f95",
            "nearest": "#f2c6c2",
            "delta": 19,
            "moved": false
          },
          {
            "color": "#a9d6cb",
            "nearest": "#9ec1b8",
            "delta": 8,
            "moved": false
          },
          {
            "color": "#e2b13c",
            "nearest": "#f6e3b4",
            "delta": 42,
            "moved": true
          },
          {
            "color": "#7f8f4e",
            "nearest": "#9ec1b8",
            "delta": 37,
            "moved": true
          },
          {
            "color": "#4b2e3e",
            "nearest": "#3e3a5c",
            "delta": 16,
            "moved": false
          },
          {
            "color": "#b9cfe8",
            "nearest": "#9ec1b8",
            "delta": 20,
            "moved": true
          }
        ],
        "fonts": [
          {
            "name": "Jost",
            "moved": false
          },
          {
            "name": "Courier Prime",
            "moved": false
          }
        ],
        "ids": [
          "pier-axis",
          "hotel-cutaway",
          "shutter-frame",
          "tide-clock",
          "favour-ledger",
          "tambourine-lane",
          "ferry-goodbye",
          "grain-overlay"
        ],
        "threshold": 20
      },
      "reviews": [
        {
          "round": 1,
          "summary": "The symmetrical diorama, the cards and the held ending read as planned; the town's signs are clipped and the twins disappear into their backdrop. Repairs: sign strips, studio backdrop, neighbour plaques instead of '!' markers, a curtained proscenium instead of candy stripes at the bandstand, and a backed hint on the ending.",
          "met": 3,
          "partly": 2,
          "missed": 0,
          "criteria": [
            {
              "id": "r1",
              "device": "dna2",
              "look": "The title view shows SALTMARSH in centred geometric sans capitals on a flat salmon field inside a thin plum border, with the keyboard controls typed in a typewriter face below.",
              "capture": "r1-frame",
              "verdict": "met",
              "observed": "SALTMARSH is set in wide-tracked Jost capitals, centred on a flat salmon field inside a double plum border, with a front-on ferry on a duck-egg sea band and the keyboard controls typed in Courier Prime below; grain and vignette visible."
            },
            {
              "id": "r2",
              "device": "dna3",
              "look": "The town view shows the cut-away hotel with lit pastel rooms on the left and the mustard studio on the right, mirrored about a central pier with the bandstand on the axis, and the tide clock and favour ledger along the top.",
              "capture": "r1-frame-town",
              "verdict": "partly",
              "observed": "The cut-away salmon hotel with nine lit pastel rooms sits left and the mustard studio right, mirrored about a central pier with the bandstand on the axis; the tide clock reads 11:10 and the favour ledger shows one key filled. But both building signs overflow their mustard strips and read 'HOTEL POMELINE' and 'HITCOMBE STUDI', and the generic '!' quest markers float over the building fronts.",
              "repair": "Widen the sign strips so both names fit, and replace the '!' markers with small name plaques for neighbours still waiting."
            },
            {
              "id": "r3",
              "device": "dna4",
              "look": "The shutter view shows a viewfinder rectangle whose centre line sits off the plum axis line, with the two twins standing symmetrically inside it and a Space prompt.",
              "capture": "r1-frame-shutter",
              "verdict": "partly",
              "observed": "The viewfinder brackets and red centre marks sit about 80 px right of the dashed plum axis, the Space prompt is clear, but the twins' powder-blue coats vanish into the powder-blue backdrop so only their heads and berets read, and they sit half outside the frame.",
              "repair": "Change the studio backdrop to duck-egg with a mustard sun so the powder coats read as figures."
            },
            {
              "id": "r4",
              "device": "dna6",
              "look": "The tambourine view shows a horizontal lane with beat markers sliding toward a hit ring, Mrs. Varga in a shawl beside it, and a hit counter.",
              "capture": "r1-frame-tambourine",
              "verdict": "met",
              "observed": "A paper lane runs across the screen with mustard tambourine discs sliding in from both sides toward a plum ring on the axis, Mrs. Varga in a rose shawl sings above it, and 'Kept time 5 of 20 · she needs 14' is typed below."
            },
            {
              "id": "r5",
              "device": "dna7",
              "look": "The ending view shows the helped neighbours standing in a symmetrical row on the pier against a dusk sky that runs from rose to plum, with the record's track list typed beside them.",
              "capture": "r1-frame-ending",
              "verdict": "met",
              "observed": "Five figures (twins, Halloran, Pell, Varga) stand in a symmetrical row at the end of a pier that runs to the horizon, under a sky running from plum at the top to rose at the horizon; the typed sleeve lists the four songs and the narration strip reads 'Whatever she says is lost under the ferry horn.' The 'E or Space to continue' hint is hard to read over the rail."
            }
          ],
          "critique": {
            "generic": [
              {
                "choice": "Floating '!' quest markers over neighbours who need help, the stock RPG signpost",
                "capture": "r1-frame-town",
                "action": "replaced"
              },
              {
                "choice": "Candy-striped circus awning across the top of the rehearsal screen, a stock seaside-fair motif",
                "capture": "r1-frame-tambourine",
                "action": "replaced"
              },
              {
                "choice": "A radial vignette darkening every frame's edges, a common retro-filter move",
                "capture": "r1-frame",
                "action": "kept",
                "anchor": "film grain"
              }
            ],
            "fan": {
              "works": [
                "Stardew Valley",
                "Lost in Translation",
                "Twin Peaks",
                "Monument Valley",
                "Little Miss Sunshine"
              ],
              "verdict": "partly",
              "why": "Someone who loves these would recognise the dead-centre framing, the sliced-open pastel hotel, the deadpan neighbours and the held goodbye on the pier, but the floating '!' markers and the fairground stripes pull it back toward any cosy RPG."
            }
          }
        },
        {
          "round": 2,
          "summary": "All five criteria are met in round 2, and the scripted play-test capture (r2-frame-playtest) passed every check from the title through all four favours, both endings and play again. One generic choice remains in the town view, the candy-striped bandstand roof, which I replace in the build after this last round, so no capture shows the fix.",
          "met": 5,
          "partly": 0,
          "missed": 0,
          "criteria": [
            {
              "id": "r1",
              "device": "dna2",
              "look": "The title view shows SALTMARSH in centred geometric sans capitals on a flat salmon field inside a thin plum border, with the keyboard controls typed in a typewriter face below.",
              "capture": "r2-frame",
              "verdict": "met",
              "observed": "Unchanged and still as planned: SALTMARSH in wide-tracked Jost capitals centred on a flat salmon field inside a double plum border, a front-on ferry on the duck-egg sea band, controls typed in Courier Prime and 'Press Enter to begin' in Jost below."
            },
            {
              "id": "r2",
              "device": "dna3",
              "look": "The town view shows the cut-away hotel with lit pastel rooms on the left and the mustard studio on the right, mirrored about a central pier with the bandstand on the axis, and the tide clock and favour ledger along the top.",
              "capture": "r2-frame-town",
              "verdict": "met",
              "observed": "Both signs now fit their strips ('HOTEL POMELINE' on mustard, 'WHITCOMBE STUDIO' on paper); the cut-away hotel and studio mirror each other about the pier with the bandstand on the axis; the tide clock reads 11:10, the ledger shows the key filled, and the '!' markers are gone, replaced by tinted name plaques (MRS. VARGA, THE TWINS, DR. HALLORAN) under the neighbours still waiting."
            },
            {
              "id": "r3",
              "device": "dna4",
              "look": "The shutter view shows a viewfinder rectangle whose centre line sits off the plum axis line, with the two twins standing symmetrically inside it and a Space prompt.",
              "capture": "r2-frame-shutter",
              "verdict": "met",
              "observed": "On the duck-egg backdrop with a mustard sun the twins' powder-blue coats now read as two whole matching figures; the viewfinder and its red centre marks sit right of the dashed plum axis and the typed prompt explains the shot."
            },
            {
              "id": "r4",
              "device": "dna6",
              "look": "The tambourine view shows a horizontal lane with beat markers sliding toward a hit ring, Mrs. Varga in a shawl beside it, and a hit counter.",
              "capture": "r2-frame-tambourine",
              "verdict": "met",
              "observed": "The lane with mustard tambourine discs closing in from both sides on the plum ring is unchanged; the candy stripes are replaced by a salmon valance with a mustard fringe and plum curtains drawn back symmetrically, so the rehearsal reads as a small stage set."
            },
            {
              "id": "r5",
              "device": "dna7",
              "look": "The ending view shows the helped neighbours standing in a symmetrical row on the pier against a dusk sky that runs from rose to plum, with the record's track list typed beside them.",
              "capture": "r2-frame-ending",
              "verdict": "met",
              "observed": "The five figures stand in a symmetrical row at the pier's end under a plum-to-rose dusk, the typed sleeve lists four songs, the narration reads 'Whatever she says is lost under the ferry horn.' and the continue hint now sits legibly on a plum block."
            }
          ],
          "critique": {
            "generic": [
              {
                "choice": "The candy-striped salmon and paper bandstand roof in the town view, a stock seaside-fair motif",
                "capture": "r2-frame-town",
                "action": "replaced"
              },
              {
                "choice": "A radial vignette darkening the edges of every frame",
                "capture": "r2-frame-ending",
                "action": "kept",
                "anchor": "film grain"
              },
              {
                "choice": "A plum and paper checkerboard studio floor",
                "capture": "r2-frame-shutter",
                "action": "kept",
                "anchor": "symmetrical framing"
              }
            ],
            "fan": {
              "works": [
                "Stardew Valley",
                "Lost in Translation",
                "Twin Peaks",
                "Monument Valley",
                "Little Miss Sunshine"
              ],
              "verdict": "partly",
              "why": "They would recognise the dead-centre staging, the sliced-open pastel hotel, the curtained rehearsal, the deadpan neighbours and the held goodbye with a lost line under the horn. But the figures are tiny generic sprites with dot eyes, and the town at a glance still reads more like any cosy farming-style RPG than like a film set someone built by hand."
            }
          }
        }
      ],
      "captures": [
        {
          "id": "r2-frame-playtest",
          "round": 2,
          "view": "frame",
          "target": "playtest",
          "width": 1440,
          "height": 810,
          "label": "frame · playtest",
          "cited": false,
          "source": ".mousa/captures/r2-frame-playtest.png",
          "file": "assets/captures/b-r2-frame-playtest.png"
        },
        {
          "id": "r2-frame",
          "round": 2,
          "view": "frame",
          "width": 1440,
          "height": 810,
          "label": "frame",
          "cited": true,
          "source": ".mousa/captures/r2-frame.png",
          "file": "assets/captures/b-r2-frame.png"
        },
        {
          "id": "r2-frame-town",
          "round": 2,
          "view": "frame",
          "target": "town",
          "width": 1440,
          "height": 810,
          "label": "frame · town",
          "cited": true,
          "source": ".mousa/captures/r2-frame-town.png",
          "file": "assets/captures/b-r2-frame-town.png"
        },
        {
          "id": "r2-frame-shutter",
          "round": 2,
          "view": "frame",
          "target": "shutter",
          "width": 1440,
          "height": 810,
          "label": "frame · shutter",
          "cited": true,
          "source": ".mousa/captures/r2-frame-shutter.png",
          "file": "assets/captures/b-r2-frame-shutter.png"
        },
        {
          "id": "r2-frame-tambourine",
          "round": 2,
          "view": "frame",
          "target": "tambourine",
          "width": 1440,
          "height": 810,
          "label": "frame · tambourine",
          "cited": true,
          "source": ".mousa/captures/r2-frame-tambourine.png",
          "file": "assets/captures/b-r2-frame-tambourine.png"
        },
        {
          "id": "r2-frame-ending",
          "round": 2,
          "view": "frame",
          "target": "ending",
          "width": 1440,
          "height": 810,
          "label": "frame · ending",
          "cited": true,
          "source": ".mousa/captures/r2-frame-ending.png",
          "file": "assets/captures/b-r2-frame-ending.png"
        }
      ],
      "check": {
        "score": 1,
        "system": "css-vars",
        "present": 10,
        "devices": [
          {
            "id": "dna1",
            "status": "present"
          },
          {
            "id": "dna2",
            "status": "present"
          },
          {
            "id": "dna3",
            "status": "present"
          },
          {
            "id": "dna4",
            "status": "present"
          },
          {
            "id": "dna5",
            "status": "present"
          },
          {
            "id": "dna6",
            "status": "present"
          },
          {
            "id": "dna7",
            "status": "present"
          },
          {
            "id": "dna8",
            "status": "present"
          },
          {
            "id": "dna9",
            "status": "present"
          },
          {
            "id": "dna10",
            "status": "present"
          }
        ],
        "style": {
          "atStart": {
            "stylesheets": [],
            "handWritten": 0,
            "classes": 0
          },
          "now": {
            "stylesheets": [
              "style.css"
            ],
            "handWritten": 45,
            "classes": 2
          }
        }
      },
      "limits": [
        "No Qloo data was used: the taste input is the agent's own prediction, frozen before the design began.",
        "The check shows that the declared tokens are in the files, not that the design is good. The review is the agent's own reading of its captures.",
        "One session is one sample. It shows where this design's choices came from, not that people prefer it."
      ]
    }
  ],
  "fonts": [
    {
      "family": "Fraunces",
      "license": "OFL-1.1"
    },
    {
      "family": "Inter",
      "license": "OFL-1.1"
    },
    {
      "family": "DM Mono",
      "license": "OFL-1.1"
    },
    {
      "family": "Rozha One",
      "license": "OFL-1.1"
    },
    {
      "family": "Cutive Mono",
      "license": "OFL-1.1"
    },
    {
      "family": "Jost",
      "license": "OFL-1.1"
    },
    {
      "family": "Courier Prime",
      "license": "OFL-1.1"
    }
  ]
}
