| What it buys | Why it is not a placeholder |
|---|
| It renders offline | A traveller lands in Korea with no data. A drawn scene renders in airplane mode; a photograph not yet on the phone is a grey box on the one day it matters. |
| It covers what no provider does | Nothing supplies photography of every ordinary Korean venue, and it never will. The drawn set closes that permanently instead of waiting. |
| There is no empty state | Every screen has an image always. There is no "photo missing" branch to design. |
| Coherence | Five scenes in one grammar read as a product where fifty mismatched stock photographs read as a directory. |
The grammar is flat shapes, the flag palette, a gradient sky, and no gradient inside the subject — plus a silhouette. The grammar alone was necessary and not sufficient: the first set drew d-food as a plan view of circles and it read as an abstract test pattern, because a plan view has no outline to be recognised by. It is now a 뚝배기 on a table, and four of the five are elevations with something holding them up. d-palace's roof was also a correctness bug rather than a taste one — both eave edges bowed UP with the same control point, so the roof rendered as a band bulging at the centre with its corners hanging DOWN, the inverse of a 팔작지붕. 🚨 Icons.photo, Icons.broken_image and Icons.image are banned and a lint test fails the build on them — a broken-image glyph tells the user our app failed. Nothing failed; we drew it instead. These are the real scenes, drawn by screens/taegeuk-sprite.js — the same file every mock uses. §6.3, §6.3c.