{
  "version": 1,
  "generated_at": "2026-10-11T18:26:37.498127+00:00",
  "source": "data/city_fragments.json",
  "workflow": {
    "statuses": [
      "draft",
      "rendered",
      "approved",
      "published",
      "skipped"
    ],
    "publish_scope": "disabled_for_mvp",
    "review_file": "review.html"
  },
  "counts": {
    "total": 54,
    "draft": 0,
    "rendered": 0,
    "approved": 54,
    "published": 0,
    "skipped": 0
  },
  "items": [
    {
      "fragment_id": "city-fragment-001-tallinn",
      "city": "Tallinn",
      "country": "Estonia",
      "center_lat": 59.437,
      "center_lon": 24.745,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when stone streets meet digital governance.",
      "micro_story": "Inside Tallinn's old center, medieval lanes, courtyards, port logic, and e-government identity sit inside a walkable radius. The fragment reads like a city that learned to keep memory visible while moving its services into code.",
      "metric_1": "UNESCO old town core",
      "metric_2": "200 m: gates, lanes, public services",
      "vote_options": [
        "Gaziantep",
        "Guanajuato",
        "Tbilisi"
      ],
      "ig_caption": "City Fragment #001: Tallinn\n\nWhat can 200 m reveal? Stone lanes, port memory, and the quiet machinery of a digital city.\n\nVote the next fragment: Gaziantep, Guanajuato, or Tbilisi.\n\nBuilt by Polisplexity Lab as a small urban evidence format.",
      "fb_caption": "City Fragment #001: Tallinn. A 200 m read of old-town fabric, walkability, port memory, and digital-city identity. Which city should be next: Gaziantep, Guanajuato, or Tbilisi?",
      "hashtags": [
        "#CityFragments",
        "#Tallinn",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin",
        "#OldTown"
      ],
      "status": "approved",
      "index": 1,
      "fingerprint": "502da97009d031295c18b731e86b3b3e07b88854a8d5fe5be01b929f0e8e95bb",
      "outputs": {
        "square": "public/cards/city-fragment-001-tallinn-square.jpg",
        "vertical": "public/stories/city-fragment-001-tallinn-vertical.jpg",
        "preview": "public/previews/city-fragment-001-tallinn.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "city-fragment-002-gaziantep",
      "city": "Gaziantep",
      "country": "Turkiye",
      "center_lat": 37.0662,
      "center_lon": 37.3833,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when food, craft, trade, and resilience share the same streets.",
      "micro_story": "Gaziantep's center compresses bazaar routes, copper work, layered reconstruction, and culinary reputation into a dense commercial surface. The fragment is a reminder that a city can be read through supply chains, workshops, and public thresholds.",
      "metric_1": "Bazaar and craft economy",
      "metric_2": "200 m: trade, repair, food, memory",
      "vote_options": [
        "Guanajuato",
        "Tallinn",
        "Naples"
      ],
      "ig_caption": "City Fragment #002: Gaziantep\n\nA 200 m walk can hold copper work, food memory, bazaar logistics, and the everyday resilience of a trading city.\n\nVote the next fragment: Guanajuato, Tallinn, or Naples.",
      "fb_caption": "City Fragment #002: Gaziantep. A compact read of craft, trade, food systems, and urban resilience inside a 200 m center fragment. Vote the next city: Guanajuato, Tallinn, or Naples.",
      "hashtags": [
        "#CityFragments",
        "#Gaziantep",
        "#UrbanEconomy",
        "#Polisplexity",
        "#Urbanism",
        "#CraftCities"
      ],
      "status": "approved",
      "index": 2,
      "fingerprint": "54dbe53c7aa7371111b26f52c26afa1a8f54bbe58bc26228c08c6086a83d7057",
      "outputs": {
        "square": "public/cards/city-fragment-002-gaziantep-square.jpg",
        "vertical": "public/stories/city-fragment-002-gaziantep-vertical.jpg",
        "preview": "public/previews/city-fragment-002-gaziantep.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "city-fragment-003-guanajuato",
      "city": "Guanajuato",
      "country": "Mexico",
      "center_lat": 21.019,
      "center_lon": -101.2574,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when topography turns streets into tunnels, balconies, and stages.",
      "micro_story": "Guanajuato's center is not a flat grid. It folds through ravines, tunnels, plazas, alleys, and facades that turn movement into a layered civic scene. The fragment connects mining history, tourism, student life, and daily shortcuts.",
      "metric_1": "Ravine city morphology",
      "metric_2": "200 m: tunnel, plaza, alley, balcony",
      "vote_options": [
        "Tallinn",
        "Gaziantep",
        "Quito"
      ],
      "ig_caption": "City Fragment #003: Guanajuato\n\nSome cities are read as grids. Guanajuato is read as slope, tunnel, balcony, alley, and plaza.\n\nVote the next fragment: Tallinn, Gaziantep, or Quito.",
      "fb_caption": "City Fragment #003: Guanajuato. A 200 m urban read of slopes, tunnels, public stages, and mining-city memory. Vote the next city: Tallinn, Gaziantep, or Quito.",
      "hashtags": [
        "#CityFragments",
        "#Guanajuato",
        "#UrbanMorphology",
        "#Polisplexity",
        "#Urbanism",
        "#Mexico"
      ],
      "status": "approved",
      "index": 3,
      "fingerprint": "ccc8cfb93a1fcbf46e6cbe69d55f436e85a16affeb11241d144977b27d2e1eaa",
      "outputs": {
        "square": "public/cards/city-fragment-003-guanajuato-square.jpg",
        "vertical": "public/stories/city-fragment-003-guanajuato-vertical.jpg",
        "preview": "public/previews/city-fragment-003-guanajuato.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-algeria-algiers",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Algeria",
      "tournament_status": "active",
      "city": "Algiers",
      "country": "Algeria",
      "center_lat": 36.7538,
      "center_lon": 3.0588,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when bay, hillside, port, and Casbah memory pull the city upward.",
      "micro_story": "Algiers does not sit flat against the sea. It climbs from port edges into Casbah slopes, white terraces, tight turns, and civic thresholds that make the bay visible even when the street narrows.",
      "metric_1": "Bay-to-Casbah hillside",
      "metric_2": "200 m: port edge, slopes, terraces",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Algiers\n\nAlgiers does not sit flat against the sea. It climbs from port edges into Casbah slopes, white terraces, tight turns, and civic thresholds that make the bay visible even when the street narrows.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Algiers. Algiers does not sit flat against the sea. It climbs from port edges into Casbah slopes, white terraces, tight turns, and civic thresholds that make the bay visible even when the street narrows.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#algiers",
        "#algeria",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "rendered_backlog_ready",
      "series_status": "fallback_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 4,
      "fingerprint": "99db4b5f925d7a6573b8573ad61ecd6ce0b54d6d8339db40cc2c5e1bf3b4e122",
      "outputs": {
        "square": "public/cards/capital-fragment-algeria-algiers-square.jpg",
        "vertical": "public/stories/capital-fragment-algeria-algiers-vertical.jpg",
        "preview": "public/previews/capital-fragment-algeria-algiers.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-argentina-buenos-aires",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Argentina",
      "tournament_status": "active",
      "city": "Buenos Aires",
      "country": "Argentina",
      "center_lat": -34.6037,
      "center_lon": -58.3816,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when a river-plain grid turns distance into avenues, blocks, and public fronts.",
      "micro_story": "Buenos Aires reads as rhythm: long avenues, formal blocks, port memory, cafe edges, and civic facades stretched across the Rio de la Plata plain.",
      "metric_1": "River-plain capital grid",
      "metric_2": "200 m: avenues, blocks, civic fronts",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Buenos Aires\n\nBuenos Aires reads as rhythm: long avenues, formal blocks, port memory, cafe edges, and civic facades stretched across the Rio de la Plata plain.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Buenos Aires. Buenos Aires reads as rhythm: long avenues, formal blocks, port memory, cafe edges, and civic facades stretched across the Rio de la Plata plain.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#buenosaires",
        "#argentina",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "rendered_backlog_ready",
      "series_status": "fallback_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 5,
      "fingerprint": "cfc2f24553b16e33f085db3a8a4b5746bced20c9d6e0d1a39abf4256c7c500a1",
      "outputs": {
        "square": "public/cards/capital-fragment-argentina-buenos-aires-square.jpg",
        "vertical": "public/stories/capital-fragment-argentina-buenos-aires-vertical.jpg",
        "preview": "public/previews/capital-fragment-argentina-buenos-aires.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-australia-canberra",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Australia",
      "tournament_status": "active",
      "city": "Canberra",
      "country": "Australia",
      "center_lat": -35.2809,
      "center_lon": 149.13,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when a planned capital uses landscape as part of its operating system.",
      "micro_story": "Canberra is not accidental street life first. It is axes, institutions, open landscape, lake geometry, and a capital designed to make government legible from the ground.",
      "metric_1": "Planned inland capital",
      "metric_2": "200 m: axes, institutions, landscape",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Canberra\n\nCanberra is not accidental street life first. It is axes, institutions, open landscape, lake geometry, and a capital designed to make government legible from the ground.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Canberra. Canberra is not accidental street life first. It is axes, institutions, open landscape, lake geometry, and a capital designed to make government legible from the ground.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#canberra",
        "#australia",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "rendered_backlog_ready",
      "series_status": "fallback_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 6,
      "fingerprint": "fa33b80b124bace60f2648d1b4fdf0d4dfa022285783fac0e979a15b4a619192",
      "outputs": {
        "square": "public/cards/capital-fragment-australia-canberra-square.jpg",
        "vertical": "public/stories/capital-fragment-australia-canberra-vertical.jpg",
        "preview": "public/previews/capital-fragment-australia-canberra.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-austria-vienna",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Austria",
      "tournament_status": "active",
      "city": "Vienna",
      "country": "Austria",
      "center_lat": 48.2082,
      "center_lon": 16.3738,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when imperial streets, courtyards, and tram logic keep sharing the same block.",
      "micro_story": "Vienna turns old capital order into daily movement: courtyards, ring-street memory, tram lines, shopfronts, and civic layers folded into a walkable fragment.",
      "metric_1": "Danube capital fabric",
      "metric_2": "200 m: courtyards, trams, civic layers",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Vienna\n\nVienna turns old capital order into daily movement: courtyards, ring-street memory, tram lines, shopfronts, and civic layers folded into a walkable fragment.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Vienna. Vienna turns old capital order into daily movement: courtyards, ring-street memory, tram lines, shopfronts, and civic layers folded into a walkable fragment.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#vienna",
        "#austria",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 7,
      "fingerprint": "8c74d6a8cacb722dfd74aac52b6b6f12322b4bd8d4a7380eb40b993db9186cc0",
      "outputs": {
        "square": "public/cards/capital-fragment-austria-vienna-square.jpg",
        "vertical": "public/stories/capital-fragment-austria-vienna-vertical.jpg",
        "preview": "public/previews/capital-fragment-austria-vienna.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-belgium-brussels",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Belgium",
      "tournament_status": "active",
      "city": "Brussels",
      "country": "Belgium",
      "center_lat": 50.8503,
      "center_lon": 4.3517,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when local squares and European bureaucracy collide at street scale.",
      "micro_story": "Brussels compresses two capitals into one surface: neighborhood squares, tram corridors, office pressure, multilingual signs, and the daily choreography of institutional overlap.",
      "metric_1": "European civic crossroads",
      "metric_2": "200 m: squares, trams, offices",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Brussels\n\nBrussels compresses two capitals into one surface: neighborhood squares, tram corridors, office pressure, multilingual signs, and the daily choreography of institutional overlap.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Brussels. Brussels compresses two capitals into one surface: neighborhood squares, tram corridors, office pressure, multilingual signs, and the daily choreography of institutional overlap.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#brussels",
        "#belgium",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 8,
      "fingerprint": "66cfb10c62941ccfe53e478a93a3c4d4dd14e2626f4062fffddc915c989f2a55",
      "outputs": {
        "square": "public/cards/capital-fragment-belgium-brussels-square.jpg",
        "vertical": "public/stories/capital-fragment-belgium-brussels-vertical.jpg",
        "preview": "public/previews/capital-fragment-belgium-brussels.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-bosnia-and-herzegovina-sarajevo",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Bosnia and Herzegovina",
      "tournament_status": "active",
      "city": "Sarajevo",
      "country": "Bosnia and Herzegovina",
      "center_lat": 43.8563,
      "center_lon": 18.4131,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when a valley city forces river, bazaar, and hillside into one corridor.",
      "micro_story": "Sarajevo is read in section: river corridor below, hillside edges above, Ottoman grain, Austro-Hungarian blocks, and public life negotiating a narrow basin.",
      "metric_1": "Valley city corridor",
      "metric_2": "200 m: river, bazaar, hillside",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Sarajevo\n\nSarajevo is read in section: river corridor below, hillside edges above, Ottoman grain, Austro-Hungarian blocks, and public life negotiating a narrow basin.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Sarajevo. Sarajevo is read in section: river corridor below, hillside edges above, Ottoman grain, Austro-Hungarian blocks, and public life negotiating a narrow basin.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#sarajevo",
        "#bosniaandherzegovina",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 9,
      "fingerprint": "7c7e6a82f188c51728d6ed3b7f304e801d5edf6d23eab4063eafc20f48730417",
      "outputs": {
        "square": "public/cards/capital-fragment-bosnia-and-herzegovina-sarajevo-square.jpg",
        "vertical": "public/stories/capital-fragment-bosnia-and-herzegovina-sarajevo-vertical.jpg",
        "preview": "public/previews/capital-fragment-bosnia-and-herzegovina-sarajevo.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-brazil-brasilia",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Brazil",
      "tournament_status": "eliminated",
      "city": "Brasilia",
      "country": "Brazil",
      "center_lat": -15.7939,
      "center_lon": -47.8828,
      "radius_m": 200,
      "story_hook": "A 200 m fragment for the city that stays after the spotlight moves on.",
      "micro_story": "Brasilia is a drawing you can walk through: axes, superblocks, civic voids, and monumental distances that turn the plateau into a planned capital machine.",
      "metric_1": "Modernist plateau capital",
      "metric_2": "200 m: axes, superblocks, civic voids",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Brasilia\n\nThe match ended; the city remains. A 200 m capital-center fragment for reading streets, civic memory, and urban form without leaving the map.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Brasilia. The match ended; the city remains. A 200 m capital-center fragment for streets, civic memory, and urban form.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#brasilia",
        "#brazil",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "farewell_ready",
      "editorial_status": "today_queue",
      "publish_priority": 80,
      "elimination_date": "2026-07-05",
      "elimination_round": "Round of 16",
      "elimination_result": "Norway 2-1 Brazil",
      "elimination_source": "Guardian live report, 2026-07-05",
      "copy_status": "worldcup_voice_matched",
      "index": 10,
      "fingerprint": "f29077bd38f7676659601f825a954e5a36e476de545d2cd5b3b4374d9b9ec91e",
      "outputs": {
        "square": "public/cards/capital-fragment-brazil-brasilia-square.jpg",
        "vertical": "public/stories/capital-fragment-brazil-brasilia-vertical.jpg",
        "preview": "public/previews/capital-fragment-brazil-brasilia.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-canada-ottawa",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Canada",
      "tournament_status": "eliminated",
      "city": "Ottawa",
      "country": "Canada",
      "center_lat": 45.4215,
      "center_lon": -75.6972,
      "radius_m": 200,
      "story_hook": "A 200 m fragment for the city that stays after the spotlight moves on.",
      "micro_story": "Ottawa reads through crossing: riverbank, bridge, federal frontage, winter street, and the quiet scale of a capital built around institutional edges.",
      "metric_1": "River capital threshold",
      "metric_2": "200 m: river, parliament, bridges",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Ottawa\n\nThe match ended; the city remains. A 200 m capital-center fragment for reading streets, civic memory, and urban form without leaving the map.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Ottawa. The match ended; the city remains. A 200 m capital-center fragment for streets, civic memory, and urban form.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#ottawa",
        "#canada",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "farewell_ready",
      "editorial_status": "today_queue",
      "elimination_date": "2026-07-05",
      "elimination_round": "Round of 16",
      "elimination_result": "Morocco 3-0 Canada",
      "elimination_source": "Guardian live report, 2026-07-05",
      "copy_status": "worldcup_voice_matched",
      "index": 11,
      "fingerprint": "930e8fcfb3db92db107b97c2b38f5ec715f08f162748977582861e589e6b666b",
      "outputs": {
        "square": "public/cards/capital-fragment-canada-ottawa-square.jpg",
        "vertical": "public/stories/capital-fragment-canada-ottawa-vertical.jpg",
        "preview": "public/previews/capital-fragment-canada-ottawa.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-cape-verde-praia",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Cape Verde",
      "tournament_status": "active",
      "city": "Praia",
      "country": "Cape Verde",
      "center_lat": 14.933,
      "center_lon": -23.5133,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when an island plateau turns port logic into civic grain.",
      "micro_story": "Praia carries the Atlantic into the block: plateau streets, port orientation, wind, civic thresholds, and a compact capital rhythm shaped by island geography.",
      "metric_1": "Atlantic island capital",
      "metric_2": "200 m: plateau, port, coastal streets",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Praia\n\nPraia carries the Atlantic into the block: plateau streets, port orientation, wind, civic thresholds, and a compact capital rhythm shaped by island geography.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Praia. Praia carries the Atlantic into the block: plateau streets, port orientation, wind, civic thresholds, and a compact capital rhythm shaped by island geography.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#praia",
        "#capeverde",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 12,
      "fingerprint": "b8d070cf0fa90f96490c5239c8170592bb508bd12c59185ec441bfd18400db7d",
      "outputs": {
        "square": "public/cards/capital-fragment-cape-verde-praia-square.jpg",
        "vertical": "public/stories/capital-fragment-cape-verde-praia-vertical.jpg",
        "preview": "public/previews/capital-fragment-cape-verde-praia.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-colombia-bogota",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Colombia",
      "tournament_status": "eliminated",
      "city": "Bogota",
      "country": "Colombia",
      "center_lat": 4.711,
      "center_lon": -74.0721,
      "radius_m": 200,
      "story_hook": "A 200 m Bogota fragment where altitude, civic axes, dense blocks, and mountain memory shape the capital after penalties end.",
      "micro_story": "Bogota turns the end of Colombia's run into an urban reading at ground level. In 200 m, the capital compresses civic routes, dense blocks, institutional edges, mountain orientation, and the daily movement that keeps the city legible beyond the bracket.",
      "metric_1": "Andean capital-center fragment",
      "metric_2": "200 m: civic routes, dense blocks, mountain edge",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Bogota\n\nColombia exits on penalties; Bogota stays as a capital fragment of civic routes, dense blocks, mountain memory, and daily movement inside 200 m.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Bogota. Colombia's penalty exit becomes a 200 m urban read of civic routes, dense blocks, institutional edges, and mountain-oriented capital life.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#bogota",
        "#colombia",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "farewell_ready",
      "editorial_status": "today_queue",
      "elimination_date": "2026-07-07",
      "elimination_round": "Round of 16",
      "elimination_result": "Switzerland 0-0 Colombia, Switzerland won 4-3 on penalties",
      "elimination_source": "FIFA match report, 2026-07-07",
      "publish_priority": 94,
      "copy_status": "worldcup_voice_matched",
      "index": 13,
      "fingerprint": "accac2bf44b426d1c88aa0d9ec1e45da10cc86deaa0cbbb7c2209e3b06a27dd7",
      "outputs": {
        "square": "public/cards/capital-fragment-colombia-bogota-square.jpg",
        "vertical": "public/stories/capital-fragment-colombia-bogota-vertical.jpg",
        "preview": "public/previews/capital-fragment-colombia-bogota.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-croatia-zagreb",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Croatia",
      "tournament_status": "active",
      "city": "Zagreb",
      "country": "Croatia",
      "center_lat": 45.815,
      "center_lon": 15.9819,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when tramlines and lower-town blocks hold a Central European capital together.",
      "micro_story": "Zagreb reads through measured repetition: lower-town blocks, tram movement, civic squares, Sava-plain expansion, and the calm pressure of a capital grid.",
      "metric_1": "Sava plain civic core",
      "metric_2": "200 m: squares, trams, lower-town blocks",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Zagreb\n\nZagreb reads through measured repetition: lower-town blocks, tram movement, civic squares, Sava-plain expansion, and the calm pressure of a capital grid.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Zagreb. Zagreb reads through measured repetition: lower-town blocks, tram movement, civic squares, Sava-plain expansion, and the calm pressure of a capital grid.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#zagreb",
        "#croatia",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 14,
      "fingerprint": "e7cbaf65d36c6f7d2302747e76a721efa6349a7e09cb6570db9a927385954797",
      "outputs": {
        "square": "public/cards/capital-fragment-croatia-zagreb-square.jpg",
        "vertical": "public/stories/capital-fragment-croatia-zagreb-vertical.jpg",
        "preview": "public/previews/capital-fragment-croatia-zagreb.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-curacao-willemstad",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Curaçao",
      "tournament_status": "active",
      "city": "Willemstad",
      "country": "Curacao",
      "center_lat": 12.1224,
      "center_lon": -68.8824,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when harbor color, bridge logic, and trade memory organize the waterfront.",
      "micro_story": "Willemstad is not just a postcard facade. It is harbor crossings, trade blocks, color-coded waterfronts, and Caribbean port memory made walkable.",
      "metric_1": "Harbor color-grid capital",
      "metric_2": "200 m: waterfront, bridges, trade blocks",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Willemstad\n\nWillemstad is not just a postcard facade. It is harbor crossings, trade blocks, color-coded waterfronts, and Caribbean port memory made walkable.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Willemstad. Willemstad is not just a postcard facade. It is harbor crossings, trade blocks, color-coded waterfronts, and Caribbean port memory made walkable.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#willemstad",
        "#curacao",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 15,
      "fingerprint": "9faba54ae32e852abb7dcc866daf79bb1fa9a1c4211892405437de2276554e0e",
      "outputs": {
        "square": "public/cards/capital-fragment-curacao-willemstad-square.jpg",
        "vertical": "public/stories/capital-fragment-curacao-willemstad-vertical.jpg",
        "preview": "public/previews/capital-fragment-curacao-willemstad.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-czech-republic-prague",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Czech Republic",
      "tournament_status": "active",
      "city": "Prague",
      "country": "Czech Republic",
      "center_lat": 50.0755,
      "center_lon": 14.4378,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when river bends and bridge approaches keep medieval grain in motion.",
      "micro_story": "Prague reads like layered movement: Vltava bends, bridge approaches, stone streets, civic thresholds, and a city where old fabric still controls the pace.",
      "metric_1": "River-and-bridge capital",
      "metric_2": "200 m: river bends, bridges, stone streets",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Prague\n\nPrague reads like layered movement: Vltava bends, bridge approaches, stone streets, civic thresholds, and a city where old fabric still controls the pace.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Prague. Prague reads like layered movement: Vltava bends, bridge approaches, stone streets, civic thresholds, and a city where old fabric still controls the pace.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#prague",
        "#czechrepublic",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 16,
      "fingerprint": "ea0f6cbd44b280f88af6f868a20566770fc93049683e61c2aef1eb62bb274f02",
      "outputs": {
        "square": "public/cards/capital-fragment-czech-republic-prague-square.jpg",
        "vertical": "public/stories/capital-fragment-czech-republic-prague-vertical.jpg",
        "preview": "public/previews/capital-fragment-czech-republic-prague.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-dr-congo-kinshasa",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "DR Congo",
      "tournament_status": "active",
      "city": "Kinshasa",
      "country": "DR Congo",
      "center_lat": -4.4419,
      "center_lon": 15.2663,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when the Congo River meets megacity pressure at the edge of the block.",
      "micro_story": "Kinshasa pushes capital life toward scale: river orientation, broad avenues, dense thresholds, administrative edges, and movement that feels regional even inside 200 m.",
      "metric_1": "Congo river megacity edge",
      "metric_2": "200 m: river, avenues, dense thresholds",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Kinshasa\n\nKinshasa pushes capital life toward scale: river orientation, broad avenues, dense thresholds, administrative edges, and movement that feels regional even inside 200 m.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Kinshasa. Kinshasa pushes capital life toward scale: river orientation, broad avenues, dense thresholds, administrative edges, and movement that feels regional even inside 200 m.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#kinshasa",
        "#drcongo",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 17,
      "fingerprint": "bf80555f459210ac9689c2eb62d40918a26c46e77bc3b19f0f08996b4a9c9e12",
      "outputs": {
        "square": "public/cards/capital-fragment-dr-congo-kinshasa-square.jpg",
        "vertical": "public/stories/capital-fragment-dr-congo-kinshasa-vertical.jpg",
        "preview": "public/previews/capital-fragment-dr-congo-kinshasa.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-ecuador-quito",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Ecuador",
      "tournament_status": "active",
      "city": "Quito",
      "country": "Ecuador",
      "center_lat": -0.1807,
      "center_lon": -78.4678,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when altitude makes streets behave like steps, edges, and views.",
      "micro_story": "Quito is a capital read vertically: Andean ridges, plaza sequences, volcanic horizon, tight colonial blocks, and slope turning movement into effort.",
      "metric_1": "Andean ridge capital",
      "metric_2": "200 m: slopes, plazas, volcanic horizon",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Quito\n\nQuito is a capital read vertically: Andean ridges, plaza sequences, volcanic horizon, tight colonial blocks, and slope turning movement into effort.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Quito. Quito is a capital read vertically: Andean ridges, plaza sequences, volcanic horizon, tight colonial blocks, and slope turning movement into effort.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#quito",
        "#ecuador",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 18,
      "fingerprint": "0f5ae362347e874860c87b2923b8ba41f04b45e377021229910ce3b83c62339d",
      "outputs": {
        "square": "public/cards/capital-fragment-ecuador-quito-square.jpg",
        "vertical": "public/stories/capital-fragment-ecuador-quito-vertical.jpg",
        "preview": "public/previews/capital-fragment-ecuador-quito.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-egypt-cairo",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Egypt",
      "tournament_status": "eliminated",
      "city": "Cairo",
      "country": "Egypt",
      "center_lat": 30.0444,
      "center_lon": 31.2357,
      "radius_m": 200,
      "story_hook": "A 200 m Cairo fragment where river logic, dense streets, civic memory, and daily movement outlast the final whistle.",
      "micro_story": "Cairo gives the series a capital that does not need the match to carry its weight. Inside 200 m, river proximity, dense crossings, institutional edges, and layered public life turn the elimination cue into a compact urban reading.",
      "metric_1": "Nile capital-center fragment",
      "metric_2": "200 m: streets, crossings, institutions, public grain",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Cairo\n\nEgypt leaves the tournament; Cairo remains as a dense capital read: streets, crossings, civic memory, and public grain inside 200 m.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Cairo. Egypt's exit becomes a 200 m capital fragment for reading streets, crossings, civic memory, and the urban grain that remains after the match.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#cairo",
        "#egypt",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "farewell_ready",
      "editorial_status": "today_queue",
      "elimination_date": "2026-07-07",
      "elimination_round": "Round of 16",
      "elimination_result": "Argentina 3-2 Egypt",
      "elimination_source": "FIFA match report, 2026-07-07",
      "publish_priority": 95,
      "copy_status": "worldcup_voice_matched",
      "index": 19,
      "fingerprint": "533a3570289daffd4e710aa6e20e10dfff7e03d706d91375f713c972a1906be7",
      "outputs": {
        "square": "public/cards/capital-fragment-egypt-cairo-square.jpg",
        "vertical": "public/stories/capital-fragment-egypt-cairo-vertical.jpg",
        "preview": "public/previews/capital-fragment-egypt-cairo.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-england-london",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "England",
      "tournament_status": "active",
      "city": "London",
      "country": "England",
      "center_lat": 51.5072,
      "center_lon": -0.1276,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when stations, river bends, and institutions make the city feel older than the map.",
      "micro_story": "London reads through networks: Thames orientation, station pressure, institutional fronts, layered streets, and a capital that keeps rewriting itself without losing its traces.",
      "metric_1": "Thames metropolitan core",
      "metric_2": "200 m: river, stations, institutions",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: London\n\nLondon reads through networks: Thames orientation, station pressure, institutional fronts, layered streets, and a capital that keeps rewriting itself without losing its traces.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: London. London reads through networks: Thames orientation, station pressure, institutional fronts, layered streets, and a capital that keeps rewriting itself without losing its traces.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#london",
        "#england",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 20,
      "fingerprint": "4a564ec8e1126a380201dcb57a5ff1fcd68b1d783c1b84b64ff90af9f686cf5e",
      "outputs": {
        "square": "public/cards/capital-fragment-england-london-square.jpg",
        "vertical": "public/stories/capital-fragment-england-london-vertical.jpg",
        "preview": "public/previews/capital-fragment-england-london.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-france-paris",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "France",
      "tournament_status": "active",
      "city": "Paris",
      "country": "France",
      "center_lat": 48.8566,
      "center_lon": 2.3522,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when boulevards, quays, and civic monuments discipline the street.",
      "micro_story": "Paris compresses alignment and memory: Seine quays, boulevard geometry, civic monuments, cafe edges, and dense public life inside a polished urban frame.",
      "metric_1": "Seine capital fabric",
      "metric_2": "200 m: boulevards, quays, monuments",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Paris\n\nParis compresses alignment and memory: Seine quays, boulevard geometry, civic monuments, cafe edges, and dense public life inside a polished urban frame.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Paris. Paris compresses alignment and memory: Seine quays, boulevard geometry, civic monuments, cafe edges, and dense public life inside a polished urban frame.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#paris",
        "#france",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 21,
      "fingerprint": "f42657345f21c68da530afa675fe7bf6ca36c63da66b7b289e0d0da551903b8d",
      "outputs": {
        "square": "public/cards/capital-fragment-france-paris-square.jpg",
        "vertical": "public/stories/capital-fragment-france-paris-vertical.jpg",
        "preview": "public/previews/capital-fragment-france-paris.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-germany-berlin",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Germany",
      "tournament_status": "eliminated",
      "city": "Berlin",
      "country": "Germany",
      "center_lat": 52.52,
      "center_lon": 13.405,
      "radius_m": 200,
      "story_hook": "A 200 m Berlin fragment where civic memory, transit lines, government edges, and everyday crossings outlast an early exit.",
      "micro_story": "Berlin brings an older elimination back into the queue with a capital fragment built from civic memory, transit pressure, government edges, and public crossings. The tournament result fades; the city's layered street logic stays readable.",
      "metric_1": "Layered capital-center fragment",
      "metric_2": "200 m: civic memory, transit, government edges",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Berlin\n\nGermany left earlier; Berlin remains as a 200 m capital read of civic memory, transit lines, government edges, and everyday crossings.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Berlin. Germany's earlier exit becomes a 200 m urban read of civic memory, transit lines, government edges, and daily crossings.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#berlin",
        "#germany",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "farewell_ready",
      "editorial_status": "today_queue",
      "elimination_date": "2026-06-29",
      "elimination_round": "Round of 32",
      "elimination_result": "Paraguay advanced past Germany on penalties",
      "elimination_source": "ESPN/Bavarian Football Works reports, 2026-06-29",
      "publish_priority": 80,
      "copy_status": "worldcup_voice_matched",
      "index": 22,
      "fingerprint": "51013a5cd8e88b1264de971d4576178ad237be451631350fafe88c93ba1eb323",
      "outputs": {
        "square": "public/cards/capital-fragment-germany-berlin-square.jpg",
        "vertical": "public/stories/capital-fragment-germany-berlin-vertical.jpg",
        "preview": "public/previews/capital-fragment-germany-berlin.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-ghana-accra",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Ghana",
      "tournament_status": "active",
      "city": "Accra",
      "country": "Ghana",
      "center_lat": 5.6037,
      "center_lon": -0.187,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when coastal roads, market pressure, and Gulf heat meet in the same civic surface.",
      "micro_story": "Accra is not a generic capital point. It is Gulf orientation, market movement, public thresholds, road heat, and fast-growing civic pressure inside a tight radius.",
      "metric_1": "Gulf coast capital",
      "metric_2": "200 m: coastal roads, markets, public thresholds",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Accra\n\nAccra is not a generic capital point. It is Gulf orientation, market movement, public thresholds, road heat, and fast-growing civic pressure inside a tight radius.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Accra. Accra is not a generic capital point. It is Gulf orientation, market movement, public thresholds, road heat, and fast-growing civic pressure inside a tight radius.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#accra",
        "#ghana",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 23,
      "fingerprint": "097219a8c899aaefe344f55724a0e95b1947015aa1531db715fbf3db6ad85d3f",
      "outputs": {
        "square": "public/cards/capital-fragment-ghana-accra-square.jpg",
        "vertical": "public/stories/capital-fragment-ghana-accra-vertical.jpg",
        "preview": "public/previews/capital-fragment-ghana-accra.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-haiti-port-au-prince",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Haiti",
      "tournament_status": "active",
      "city": "Port-au-Prince",
      "country": "Haiti",
      "center_lat": 18.5944,
      "center_lon": -72.3074,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when bay, hills, port streets, and civic strain share the same slope.",
      "micro_story": "Port-au-Prince is held between bay and hills: port-city movement, slope transitions, dense streets, and public thresholds under constant civic pressure.",
      "metric_1": "Bay-and-hills capital",
      "metric_2": "200 m: slopes, port streets, civic thresholds",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Port-au-Prince\n\nPort-au-Prince is held between bay and hills: port-city movement, slope transitions, dense streets, and public thresholds under constant civic pressure.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Port-au-Prince. Port-au-Prince is held between bay and hills: port-city movement, slope transitions, dense streets, and public thresholds under constant civic pressure.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#portauprince",
        "#haiti",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 24,
      "fingerprint": "7ae42e0d491f6465b429fdd33056ad7be7e51a89acf524618191aafb598c1709",
      "outputs": {
        "square": "public/cards/capital-fragment-haiti-port-au-prince-square.jpg",
        "vertical": "public/stories/capital-fragment-haiti-port-au-prince-vertical.jpg",
        "preview": "public/previews/capital-fragment-haiti-port-au-prince.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-iran-tehran",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Iran",
      "tournament_status": "active",
      "city": "Tehran",
      "country": "Iran",
      "center_lat": 35.6892,
      "center_lon": 51.389,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when the Alborz foothills turn north-south movement into city structure.",
      "micro_story": "Tehran reads from mountain to metropolis: foothill slope, broad avenues, dense blocks, air, pressure, and the pull of north-south movement.",
      "metric_1": "Alborz mountain capital",
      "metric_2": "200 m: slope, avenues, dense blocks",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Tehran\n\nTehran reads from mountain to metropolis: foothill slope, broad avenues, dense blocks, air, pressure, and the pull of north-south movement.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Tehran. Tehran reads from mountain to metropolis: foothill slope, broad avenues, dense blocks, air, pressure, and the pull of north-south movement.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#tehran",
        "#iran",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 25,
      "fingerprint": "51f6677b960dc38dcb1cc92526ab385852f28c72267aad6576277e3758df4cf4",
      "outputs": {
        "square": "public/cards/capital-fragment-iran-tehran-square.jpg",
        "vertical": "public/stories/capital-fragment-iran-tehran-vertical.jpg",
        "preview": "public/previews/capital-fragment-iran-tehran.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-iraq-baghdad",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Iraq",
      "tournament_status": "active",
      "city": "Baghdad",
      "country": "Iraq",
      "center_lat": 33.3152,
      "center_lon": 44.3661,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when the Tigris still organizes memory, crossings, and public edges.",
      "micro_story": "Baghdad carries river logic into every civic reading: Tigris orientation, bridge memory, avenue structure, public edges, and a deep urban past under present movement.",
      "metric_1": "Tigris capital crossing",
      "metric_2": "200 m: river memory, avenues, public edges",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Baghdad\n\nBaghdad carries river logic into every civic reading: Tigris orientation, bridge memory, avenue structure, public edges, and a deep urban past under present movement.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Baghdad. Baghdad carries river logic into every civic reading: Tigris orientation, bridge memory, avenue structure, public edges, and a deep urban past under present movement.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#baghdad",
        "#iraq",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 26,
      "fingerprint": "b449359ab5c5db8a1a7187d69729f582207bb34de160415f85742ef3559a4753",
      "outputs": {
        "square": "public/cards/capital-fragment-iraq-baghdad-square.jpg",
        "vertical": "public/stories/capital-fragment-iraq-baghdad-vertical.jpg",
        "preview": "public/previews/capital-fragment-iraq-baghdad.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-ivory-coast-yamoussoukro",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Ivory Coast",
      "tournament_status": "active",
      "city": "Yamoussoukro",
      "country": "Ivory Coast",
      "center_lat": 6.8276,
      "center_lon": -5.2893,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when monumental ambition creates a capital of boulevards and civic voids.",
      "micro_story": "Yamoussoukro reads as planned ceremony: broad boulevards, low-density thresholds, monumental references, and a capital scale that leaves deliberate space between things.",
      "metric_1": "Inland ceremonial capital",
      "metric_2": "200 m: boulevards, civic voids, planned edges",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Yamoussoukro\n\nYamoussoukro reads as planned ceremony: broad boulevards, low-density thresholds, monumental references, and a capital scale that leaves deliberate space between things.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Yamoussoukro. Yamoussoukro reads as planned ceremony: broad boulevards, low-density thresholds, monumental references, and a capital scale that leaves deliberate space between things.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#yamoussoukro",
        "#ivorycoast",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 27,
      "fingerprint": "14c86f679bae3251d89984dbf4f894c07046ad439162ff4d122e5482fe00f3f0",
      "outputs": {
        "square": "public/cards/capital-fragment-ivory-coast-yamoussoukro-square.jpg",
        "vertical": "public/stories/capital-fragment-ivory-coast-yamoussoukro-vertical.jpg",
        "preview": "public/previews/capital-fragment-ivory-coast-yamoussoukro.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-japan-tokyo",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Japan",
      "tournament_status": "active",
      "city": "Tokyo",
      "country": "Japan",
      "center_lat": 35.6762,
      "center_lon": 139.6503,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when rail logic, vertical density, and tiny blocks compress a metropolis.",
      "micro_story": "Tokyo turns 200 m into intensity: station logic, fine-grain blocks, disciplined crossings, vertical signs, and density that moves with precision.",
      "metric_1": "Rail-metropolis capital",
      "metric_2": "200 m: rail logic, blocks, vertical density",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Tokyo\n\nTokyo turns 200 m into intensity: station logic, fine-grain blocks, disciplined crossings, vertical signs, and density that moves with precision.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Tokyo. Tokyo turns 200 m into intensity: station logic, fine-grain blocks, disciplined crossings, vertical signs, and density that moves with precision.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#tokyo",
        "#japan",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 28,
      "fingerprint": "984df9622adae2f196c8770880a2975476830d513ba7dcda64eda6d939d4f97b",
      "outputs": {
        "square": "public/cards/capital-fragment-japan-tokyo-square.jpg",
        "vertical": "public/stories/capital-fragment-japan-tokyo-vertical.jpg",
        "preview": "public/previews/capital-fragment-japan-tokyo.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-jordan-amman",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Jordan",
      "tournament_status": "active",
      "city": "Amman",
      "country": "Jordan",
      "center_lat": 31.9539,
      "center_lon": 35.9106,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when limestone hills make streets climb, turn, and disappear.",
      "micro_story": "Amman is a city of slopes before it is a grid: limestone hills, wadi cuts, stairs, ridge views, and streets that move between levels.",
      "metric_1": "Limestone hills capital",
      "metric_2": "200 m: hills, wadis, stair streets",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Amman\n\nAmman is a city of slopes before it is a grid: limestone hills, wadi cuts, stairs, ridge views, and streets that move between levels.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Amman. Amman is a city of slopes before it is a grid: limestone hills, wadi cuts, stairs, ridge views, and streets that move between levels.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#amman",
        "#jordan",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 29,
      "fingerprint": "90cd0993fa72174e5488161cfcc7960fab94bbcfe48a46f7a08cd5a325bcc82d",
      "outputs": {
        "square": "public/cards/capital-fragment-jordan-amman-square.jpg",
        "vertical": "public/stories/capital-fragment-jordan-amman-vertical.jpg",
        "preview": "public/previews/capital-fragment-jordan-amman.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-mexico-mexico-city",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Mexico",
      "tournament_status": "active",
      "city": "Mexico City",
      "country": "Mexico",
      "center_lat": 19.4326,
      "center_lon": -99.1332,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when lakebed memory, avenues, and plazas stack into a high-basin capital.",
      "micro_story": "Mexico City turns ground itself into history: lakebed memory, civic plazas, long avenues, dense public life, and a basin that keeps shaping movement.",
      "metric_1": "High-basin capital",
      "metric_2": "200 m: avenues, plazas, lakebed memory",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Mexico City\n\nMexico City turns ground itself into history: lakebed memory, civic plazas, long avenues, dense public life, and a basin that keeps shaping movement.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Mexico City. Mexico City turns ground itself into history: lakebed memory, civic plazas, long avenues, dense public life, and a basin that keeps shaping movement.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#mexicocity",
        "#mexico",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "featured_ready",
      "editorial_status": "city_fragments_feature",
      "publish_priority": 100,
      "copy_status": "worldcup_voice_matched",
      "index": 30,
      "fingerprint": "4eaa9b9f8ee5ceca7d5e141cb4241e02b8c6a0a346267c07676de01720a9f0b7",
      "outputs": {
        "square": "public/cards/capital-fragment-mexico-mexico-city-square.jpg",
        "vertical": "public/stories/capital-fragment-mexico-mexico-city-vertical.jpg",
        "preview": "public/previews/capital-fragment-mexico-mexico-city.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-morocco-rabat",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Morocco",
      "tournament_status": "eliminated",
      "city": "Rabat",
      "country": "Morocco",
      "center_lat": 34.0209,
      "center_lon": -6.8416,
      "radius_m": 200,
      "story_hook": "A 200 m Rabat fragment where royal avenues, civic thresholds, garden edges, and Atlantic movement remain after Morocco's run ends.",
      "micro_story": "Rabat turns Morocco's quarter-final exit into a capital reading at street level. Inside 200 m, royal avenues, administrative edges, garden thresholds, and everyday movement keep the city legible beyond the bracket.",
      "metric_1": "Atlantic capital-center fragment",
      "metric_2": "200 m: royal avenues, civic edges, garden thresholds",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Rabat\n\nMorocco's run ends; Rabat remains as a 200 m capital fragment of royal avenues, civic thresholds, garden edges, and Atlantic movement.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Rabat. Morocco's quarter-final exit becomes a 200 m capital read of royal avenues, civic thresholds, garden edges, and daily movement.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#rabat",
        "#morocco",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "farewell_ready",
      "editorial_status": "today_queue",
      "elimination_date": "2026-07-09",
      "elimination_round": "Quarter-final",
      "elimination_result": "France 2-0 Morocco",
      "elimination_source": "ESPN final score and Reuters/Al Jazeera match reports, 2026-07-09",
      "publish_priority": 99,
      "copy_status": "worldcup_voice_matched",
      "index": 31,
      "fingerprint": "0f9a4eecf1854bd5cfdb4590750216d1dc6f7335515aedbac266003c65ff743f",
      "outputs": {
        "square": "public/cards/capital-fragment-morocco-rabat-square.jpg",
        "vertical": "public/stories/capital-fragment-morocco-rabat-vertical.jpg",
        "preview": "public/previews/capital-fragment-morocco-rabat.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-netherlands-amsterdam",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Netherlands",
      "tournament_status": "active",
      "city": "Amsterdam",
      "country": "Netherlands",
      "center_lat": 52.3676,
      "center_lon": 4.9041,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when canals make blocks, bridges, and bicycles behave like one system.",
      "micro_story": "Amsterdam is water turned into urban order: canal rings, bridge crossings, narrow blocks, cycling scale, and public life organized by infrastructure.",
      "metric_1": "Canal-city civic fragment",
      "metric_2": "200 m: canals, bridges, blocks",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Amsterdam\n\nAmsterdam is water turned into urban order: canal rings, bridge crossings, narrow blocks, cycling scale, and public life organized by infrastructure.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Amsterdam. Amsterdam is water turned into urban order: canal rings, bridge crossings, narrow blocks, cycling scale, and public life organized by infrastructure.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#amsterdam",
        "#netherlands",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 32,
      "fingerprint": "c11ba789c2353f26e9d6c2c8cf2adee023e40a4779875b22834819915f3b6139",
      "outputs": {
        "square": "public/cards/capital-fragment-netherlands-amsterdam-square.jpg",
        "vertical": "public/stories/capital-fragment-netherlands-amsterdam-vertical.jpg",
        "preview": "public/previews/capital-fragment-netherlands-amsterdam.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-new-zealand-wellington",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "New Zealand",
      "tournament_status": "active",
      "city": "Wellington",
      "country": "New Zealand",
      "center_lat": -41.2865,
      "center_lon": 174.7762,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when harbor, hills, and wind make a compact capital feel kinetic.",
      "micro_story": "Wellington is held by weather and landform: harbor edges, steep streets, wind corridors, and government spaces squeezed between hill and water.",
      "metric_1": "Harbor-and-hills capital",
      "metric_2": "200 m: waterfront, slopes, wind corridors",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Wellington\n\nWellington is held by weather and landform: harbor edges, steep streets, wind corridors, and government spaces squeezed between hill and water.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Wellington. Wellington is held by weather and landform: harbor edges, steep streets, wind corridors, and government spaces squeezed between hill and water.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#wellington",
        "#newzealand",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 33,
      "fingerprint": "905265e4eaba94abf1773d4b3d29bc3b26867163ad74cee7cf0bf8be74d89622",
      "outputs": {
        "square": "public/cards/capital-fragment-new-zealand-wellington-square.jpg",
        "vertical": "public/stories/capital-fragment-new-zealand-wellington-vertical.jpg",
        "preview": "public/previews/capital-fragment-new-zealand-wellington.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-norway-oslo",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Norway",
      "tournament_status": "active",
      "city": "Oslo",
      "country": "Norway",
      "center_lat": 59.9139,
      "center_lon": 10.7522,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when fjord edges and hillside movement frame civic redevelopment.",
      "micro_story": "Oslo reads from water upward: fjord edge, tram movement, civic redevelopment, green-blue systems, and a capital learning to face its waterfront.",
      "metric_1": "Fjord capital edge",
      "metric_2": "200 m: waterfront, slopes, civic redevelopment",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Oslo\n\nOslo reads from water upward: fjord edge, tram movement, civic redevelopment, green-blue systems, and a capital learning to face its waterfront.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Oslo. Oslo reads from water upward: fjord edge, tram movement, civic redevelopment, green-blue systems, and a capital learning to face its waterfront.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#oslo",
        "#norway",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 34,
      "fingerprint": "1aa7c79059cf25ab3e4a791362a39fe91349fd3b54ea894f4c3135ee9b5d08f3",
      "outputs": {
        "square": "public/cards/capital-fragment-norway-oslo-square.jpg",
        "vertical": "public/stories/capital-fragment-norway-oslo-vertical.jpg",
        "preview": "public/previews/capital-fragment-norway-oslo.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-panama-panama-city",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Panama",
      "tournament_status": "active",
      "city": "Panama City",
      "country": "Panama",
      "center_lat": 8.9824,
      "center_lon": -79.5199,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when canal economy and bay skyline turn the isthmus into urban pressure.",
      "micro_story": "Panama City makes geography visible as speed: bay edges, tower clusters, canal economy, road movement, and an isthmus capital pulled between ocean systems.",
      "metric_1": "Isthmus skyline capital",
      "metric_2": "200 m: bay edge, towers, canal economy",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Panama City\n\nPanama City makes geography visible as speed: bay edges, tower clusters, canal economy, road movement, and an isthmus capital pulled between ocean systems.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Panama City. Panama City makes geography visible as speed: bay edges, tower clusters, canal economy, road movement, and an isthmus capital pulled between ocean systems.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#panamacity",
        "#panama",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 35,
      "fingerprint": "0da07755d4e8700dc93bdd9c16cefe1fa10c7e6bf67eb20c5a9cabf4b7ef9dc2",
      "outputs": {
        "square": "public/cards/capital-fragment-panama-panama-city-square.jpg",
        "vertical": "public/stories/capital-fragment-panama-panama-city-vertical.jpg",
        "preview": "public/previews/capital-fragment-panama-panama-city.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-paraguay-asuncion",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Paraguay",
      "tournament_status": "eliminated",
      "city": "Asuncion",
      "country": "Paraguay",
      "center_lat": -25.2637,
      "center_lon": -57.5759,
      "radius_m": 200,
      "story_hook": "A 200 m fragment for the city that stays after the spotlight moves on.",
      "micro_story": "Asuncion stays close to the Paraguay River: civic streets, older thresholds, heat, shade, and riverbank memory that give the fragment a slower pulse.",
      "metric_1": "Paraguay river capital",
      "metric_2": "200 m: riverbank, civic streets, heat and shade",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Asuncion\n\nThe match ended; the city remains. A 200 m capital-center fragment for reading streets, civic memory, and urban form without leaving the map.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Asuncion. The match ended; the city remains. A 200 m capital-center fragment for streets, civic memory, and urban form.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#asuncion",
        "#paraguay",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "farewell_ready",
      "editorial_status": "today_queue",
      "publish_priority": 70,
      "elimination_date": "2026-07-05",
      "elimination_round": "Round of 16",
      "elimination_result": "France 1-0 Paraguay",
      "elimination_source": "Guardian live report, 2026-07-05",
      "copy_status": "worldcup_voice_matched",
      "index": 36,
      "fingerprint": "d9314c4ae0e562a2a5df79b0059ec3168ab894ee3f08b03dadd9e834a3b1cf6f",
      "outputs": {
        "square": "public/cards/capital-fragment-paraguay-asuncion-square.jpg",
        "vertical": "public/stories/capital-fragment-paraguay-asuncion-vertical.jpg",
        "preview": "public/previews/capital-fragment-paraguay-asuncion.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-portugal-lisbon",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Portugal",
      "tournament_status": "eliminated",
      "city": "Lisbon",
      "country": "Portugal",
      "center_lat": 38.7223,
      "center_lon": -9.1393,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when hills, trams, and Tagus light make elevation part of the story.",
      "micro_story": "Lisbon is read through climb and view: Tagus orientation, hillside streets, tram-scale turns, tiled edges, and light that makes the slope visible.",
      "metric_1": "Tagus hillside capital",
      "metric_2": "200 m: hills, viewpoints, tram streets",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Lisbon\n\nLisbon is read through climb and view: Tagus orientation, hillside streets, tram-scale turns, tiled edges, and light that makes the slope visible.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Lisbon. Lisbon is read through climb and view: Tagus orientation, hillside streets, tram-scale turns, tiled edges, and light that makes the slope visible.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#lisbon",
        "#portugal",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "copy_status": "worldcup_voice_matched",
      "index": 37,
      "fingerprint": "c79215103e02345b23ce08c4c90ccefe2d16fc2660e1eddc9a066e2f87435ea8",
      "outputs": {
        "square": "public/cards/capital-fragment-portugal-lisbon-square.jpg",
        "vertical": "public/stories/capital-fragment-portugal-lisbon-vertical.jpg",
        "preview": "public/previews/capital-fragment-portugal-lisbon.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-qatar-doha",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Qatar",
      "tournament_status": "active",
      "city": "Doha",
      "country": "Qatar",
      "center_lat": 25.2854,
      "center_lon": 51.531,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when corniche, towers, and desert urbanism make a Gulf capital signal.",
      "micro_story": "Doha reads along the Gulf edge: corniche space, tower clusters, planned public realm, desert heat, and a capital image built at coastal scale.",
      "metric_1": "Gulf corniche capital",
      "metric_2": "200 m: waterfront, towers, desert urbanism",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Doha\n\nDoha reads along the Gulf edge: corniche space, tower clusters, planned public realm, desert heat, and a capital image built at coastal scale.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Doha. Doha reads along the Gulf edge: corniche space, tower clusters, planned public realm, desert heat, and a capital image built at coastal scale.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#doha",
        "#qatar",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 38,
      "fingerprint": "be761d717737813a3e394f39d7f505dbd6b6cea8086b611a471f5ac2286ffb28",
      "outputs": {
        "square": "public/cards/capital-fragment-qatar-doha-square.jpg",
        "vertical": "public/stories/capital-fragment-qatar-doha-vertical.jpg",
        "preview": "public/previews/capital-fragment-qatar-doha.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-saudi-arabia-riyadh",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Saudi Arabia",
      "tournament_status": "active",
      "city": "Riyadh",
      "country": "Saudi Arabia",
      "center_lat": 24.7136,
      "center_lon": 46.6753,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when desert-plateau growth turns roads and compounds into civic form.",
      "micro_story": "Riyadh is not intimate by default. It is arterial roads, compounds, heat-shaped thresholds, civic growth, and desert plateau scale compressed into a fragment.",
      "metric_1": "Desert plateau capital",
      "metric_2": "200 m: arterials, compounds, civic growth",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Riyadh\n\nRiyadh is not intimate by default. It is arterial roads, compounds, heat-shaped thresholds, civic growth, and desert plateau scale compressed into a fragment.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Riyadh. Riyadh is not intimate by default. It is arterial roads, compounds, heat-shaped thresholds, civic growth, and desert plateau scale compressed into a fragment.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#riyadh",
        "#saudiarabia",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 39,
      "fingerprint": "57f0c119896023c7bb51dcdcfaf24546a4c4071d80699e2c1e192795698a7815",
      "outputs": {
        "square": "public/cards/capital-fragment-saudi-arabia-riyadh-square.jpg",
        "vertical": "public/stories/capital-fragment-saudi-arabia-riyadh-vertical.jpg",
        "preview": "public/previews/capital-fragment-saudi-arabia-riyadh.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-scotland-edinburgh",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Scotland",
      "tournament_status": "active",
      "city": "Edinburgh",
      "country": "Scotland",
      "center_lat": 55.9533,
      "center_lon": -3.1883,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when rock, ridge, closes, and stone streets make geology urban.",
      "micro_story": "Edinburgh is topography with a civic script: crags, ridges, closes, stone streets, and views that make the city feel carved before it feels planned.",
      "metric_1": "Crag-and-ridge capital",
      "metric_2": "200 m: ridge streets, closes, volcanic rock",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Edinburgh\n\nEdinburgh is topography with a civic script: crags, ridges, closes, stone streets, and views that make the city feel carved before it feels planned.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Edinburgh. Edinburgh is topography with a civic script: crags, ridges, closes, stone streets, and views that make the city feel carved before it feels planned.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#edinburgh",
        "#scotland",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 40,
      "fingerprint": "1ea50bf7cf065aa7215c78bc4dd3466f98de799c69dbfecbe2f8d26ad3a09551",
      "outputs": {
        "square": "public/cards/capital-fragment-scotland-edinburgh-square.jpg",
        "vertical": "public/stories/capital-fragment-scotland-edinburgh-vertical.jpg",
        "preview": "public/previews/capital-fragment-scotland-edinburgh.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-senegal-dakar",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Senegal",
      "tournament_status": "eliminated",
      "city": "Dakar",
      "country": "Senegal",
      "center_lat": 14.7167,
      "center_lon": -17.4677,
      "radius_m": 200,
      "story_hook": "A 200 m Dakar fragment where Atlantic edges, dense streets, public life, and capital movement remain after extra time.",
      "micro_story": "Dakar gives the backlog a coastal capital fragment: dense crossings, Atlantic orientation, institutional edges, and daily public life inside one compact radius. Senegal's extra-time exit becomes a cue to read the city, not only the score.",
      "metric_1": "Atlantic capital street fragment",
      "metric_2": "200 m: coastal orientation, dense streets, public life",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Dakar\n\nSenegal left after extra time; Dakar remains as a 200 m capital fragment of Atlantic edges, dense streets, public life, and movement.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Dakar. Senegal's extra-time exit becomes a 200 m capital read of Atlantic orientation, dense streets, institutional edges, and daily public life.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#dakar",
        "#senegal",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "farewell_ready",
      "editorial_status": "today_queue",
      "elimination_date": "2026-07-01",
      "elimination_round": "Round of 32",
      "elimination_result": "Belgium 3-2 Senegal after extra time",
      "elimination_source": "Reuters/Al Jazeera and FIFA highlights, 2026-07-01",
      "publish_priority": 79,
      "copy_status": "worldcup_voice_matched",
      "index": 41,
      "fingerprint": "4e1ab75aa1c36b09fadec5c38a3111d925a6d217f81bac7597f118fef7bf27ab",
      "outputs": {
        "square": "public/cards/capital-fragment-senegal-dakar-square.jpg",
        "vertical": "public/stories/capital-fragment-senegal-dakar-vertical.jpg",
        "preview": "public/previews/capital-fragment-senegal-dakar.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-south-africa-pretoria",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "South Africa",
      "tournament_status": "eliminated",
      "city": "Pretoria",
      "country": "South Africa",
      "center_lat": -25.7479,
      "center_lon": 28.2293,
      "radius_m": 200,
      "story_hook": "A 200 m Pretoria fragment where civic avenues, institutional edges, and everyday movement keep the capital readable after an earlier exit.",
      "micro_story": "Pretoria gives the backlog a capital with a different urban signal: administrative edges, broad streets, public thresholds, and daily movement inside one 200 m frame. South Africa's earlier exit becomes a cue to read the city on its own terms.",
      "metric_1": "Administrative capital fragment",
      "metric_2": "200 m: avenues, institutions, public thresholds",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Pretoria\n\nSouth Africa left earlier; Pretoria remains as a 200 m capital read of civic avenues, institutional edges, public thresholds, and daily movement.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Pretoria. South Africa's earlier exit becomes a 200 m capital fragment for reading civic avenues, institutional edges, and public thresholds.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#pretoria",
        "#southafrica",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "series_status": "farewell_ready",
      "editorial_status": "today_queue",
      "elimination_date": "2026-06-28",
      "elimination_round": "Round of 32",
      "elimination_result": "Canada 1-0 South Africa",
      "elimination_source": "FIFA match centre, 2026-06-28",
      "publish_priority": 72,
      "copy_status": "worldcup_voice_matched",
      "index": 42,
      "fingerprint": "5331db60b41be42fe22134ea64d260f329facfa8c512449f02839a968a1aa26f",
      "outputs": {
        "square": "public/cards/capital-fragment-south-africa-pretoria-square.jpg",
        "vertical": "public/stories/capital-fragment-south-africa-pretoria-vertical.jpg",
        "preview": "public/previews/capital-fragment-south-africa-pretoria.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-south-korea-seoul",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "South Korea",
      "tournament_status": "eliminated",
      "city": "Seoul",
      "country": "South Korea",
      "center_lat": 37.5665,
      "center_lon": 126.978,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when mountains, the Han, and transit pressure compress the city.",
      "micro_story": "Seoul is built between force lines: mountain edges, Han River orientation, dense blocks, transit pressure, and civic intensity packed into one radius.",
      "metric_1": "Han river mountain basin",
      "metric_2": "200 m: hills, transit, dense blocks",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Seoul\n\nSeoul is built between force lines: mountain edges, Han River orientation, dense blocks, transit pressure, and civic intensity packed into one radius.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Seoul. Seoul is built between force lines: mountain edges, Han River orientation, dense blocks, transit pressure, and civic intensity packed into one radius.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#seoul",
        "#southkorea",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "copy_status": "worldcup_voice_matched",
      "index": 43,
      "fingerprint": "68d140060cdc2e8bab6e926be2b997bb84f93dcf5f633b7bab2cf3ef43ea58fb",
      "outputs": {
        "square": "public/cards/capital-fragment-south-korea-seoul-square.jpg",
        "vertical": "public/stories/capital-fragment-south-korea-seoul-vertical.jpg",
        "preview": "public/previews/capital-fragment-south-korea-seoul.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-spain-madrid",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Spain",
      "tournament_status": "active",
      "city": "Madrid",
      "country": "Spain",
      "center_lat": 40.4168,
      "center_lon": -3.7038,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when plazas, dry avenues, and plateau light hold the center together.",
      "micro_story": "Madrid reads as high-plateau public life: plazas, dry avenues, dense pedestrian streets, institutional edges, and a capital rhythm built around encounter.",
      "metric_1": "Meseta capital center",
      "metric_2": "200 m: plazas, avenues, plateau streets",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Madrid\n\nMadrid reads as high-plateau public life: plazas, dry avenues, dense pedestrian streets, institutional edges, and a capital rhythm built around encounter.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Madrid. Madrid reads as high-plateau public life: plazas, dry avenues, dense pedestrian streets, institutional edges, and a capital rhythm built around encounter.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#madrid",
        "#spain",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 44,
      "fingerprint": "23880cb6adaa31d9755deb99865ee241561ebfd97c0773c7127f4eb1529501d5",
      "outputs": {
        "square": "public/cards/capital-fragment-spain-madrid-square.jpg",
        "vertical": "public/stories/capital-fragment-spain-madrid-vertical.jpg",
        "preview": "public/previews/capital-fragment-spain-madrid.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-sweden-stockholm",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Sweden",
      "tournament_status": "active",
      "city": "Stockholm",
      "country": "Sweden",
      "center_lat": 59.3293,
      "center_lon": 18.0686,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when water edges and bridges turn islands into a capital fabric.",
      "micro_story": "Stockholm is geography stitched together: island edges, bridge sequences, stone blocks, civic waterfronts, and movement that keeps water in the foreground.",
      "metric_1": "Island capital fabric",
      "metric_2": "200 m: water edges, bridges, stone blocks",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Stockholm\n\nStockholm is geography stitched together: island edges, bridge sequences, stone blocks, civic waterfronts, and movement that keeps water in the foreground.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Stockholm. Stockholm is geography stitched together: island edges, bridge sequences, stone blocks, civic waterfronts, and movement that keeps water in the foreground.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#stockholm",
        "#sweden",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 45,
      "fingerprint": "ba6867216d5a047700128ba0ad5a9d55d3afd10a6c9371e80b4862e99b0206a3",
      "outputs": {
        "square": "public/cards/capital-fragment-sweden-stockholm-square.jpg",
        "vertical": "public/stories/capital-fragment-sweden-stockholm-vertical.jpg",
        "preview": "public/previews/capital-fragment-sweden-stockholm.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-switzerland-bern",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Switzerland",
      "tournament_status": "active",
      "city": "Bern",
      "country": "Switzerland",
      "center_lat": 46.948,
      "center_lon": 7.4474,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when the Aare wraps the city before institutions fill it.",
      "micro_story": "Bern reads as a river curve with civic life inside it: arcades, compact streets, hillside edges, and the Aare bending geography around government.",
      "metric_1": "Aare river bend capital",
      "metric_2": "200 m: arcades, river curve, compact streets",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Bern\n\nBern reads as a river curve with civic life inside it: arcades, compact streets, hillside edges, and the Aare bending geography around government.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Bern. Bern reads as a river curve with civic life inside it: arcades, compact streets, hillside edges, and the Aare bending geography around government.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#bern",
        "#switzerland",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 46,
      "fingerprint": "c20aa9772db2d1d288ffdc6bb3141349916ff6a7f269ada2e581875e3a4ed192",
      "outputs": {
        "square": "public/cards/capital-fragment-switzerland-bern-square.jpg",
        "vertical": "public/stories/capital-fragment-switzerland-bern-vertical.jpg",
        "preview": "public/previews/capital-fragment-switzerland-bern.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-tunisia-tunis",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Tunisia",
      "tournament_status": "active",
      "city": "Tunis",
      "country": "Tunisia",
      "center_lat": 36.8065,
      "center_lon": 10.1815,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when medina grain, lake edges, and avenues meet in one North African layer.",
      "micro_story": "Tunis links urban eras without smoothing them out: medina grain, lake orientation, colonial avenues, civic routes, and North African public thresholds.",
      "metric_1": "Medina-and-lake capital",
      "metric_2": "200 m: medina grain, lake edge, civic routes",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Tunis\n\nTunis links urban eras without smoothing them out: medina grain, lake orientation, colonial avenues, civic routes, and North African public thresholds.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Tunis. Tunis links urban eras without smoothing them out: medina grain, lake orientation, colonial avenues, civic routes, and North African public thresholds.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#tunis",
        "#tunisia",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 47,
      "fingerprint": "ce49d9dd254289c836b4d4b5b8c193d8aa0bdf208a3502c237e6a802d05a0f70",
      "outputs": {
        "square": "public/cards/capital-fragment-tunisia-tunis-square.jpg",
        "vertical": "public/stories/capital-fragment-tunisia-tunis-vertical.jpg",
        "preview": "public/previews/capital-fragment-tunisia-tunis.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-turkey-ankara",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Turkey",
      "tournament_status": "active",
      "city": "Ankara",
      "country": "Turkey",
      "center_lat": 39.9334,
      "center_lon": 32.8597,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when hills and republican boulevards turn the plateau into a capital.",
      "micro_story": "Ankara is inland power at street scale: hills, broad boulevards, republican institutions, dry plateau light, and planned civic movement.",
      "metric_1": "Anatolian plateau capital",
      "metric_2": "200 m: hills, boulevards, republican core",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Ankara\n\nAnkara is inland power at street scale: hills, broad boulevards, republican institutions, dry plateau light, and planned civic movement.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Ankara. Ankara is inland power at street scale: hills, broad boulevards, republican institutions, dry plateau light, and planned civic movement.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#ankara",
        "#turkey",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 48,
      "fingerprint": "a50dc7a2e28dd1ed5638916054c058ff145fcfd592cbb8e6d7690f8e388f6789",
      "outputs": {
        "square": "public/cards/capital-fragment-turkey-ankara-square.jpg",
        "vertical": "public/stories/capital-fragment-turkey-ankara-vertical.jpg",
        "preview": "public/previews/capital-fragment-turkey-ankara.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-united-states-washington-dc",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "United States",
      "tournament_status": "eliminated",
      "city": "Washington, DC",
      "country": "United States",
      "center_lat": 38.9072,
      "center_lon": -77.0369,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when federal axes and Potomac orientation make power spatial.",
      "micro_story": "Washington, DC turns government into geometry: Potomac orientation, federal axes, monuments, gridded streets, and civic distance made visible.",
      "metric_1": "Potomac civic axis",
      "metric_2": "200 m: federal axes, monuments, gridded streets",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Washington, DC\n\nWashington, DC turns government into geometry: Potomac orientation, federal axes, monuments, gridded streets, and civic distance made visible.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Washington, DC. Washington, DC turns government into geometry: Potomac orientation, federal axes, monuments, gridded streets, and civic distance made visible.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#washingtondc",
        "#unitedstates",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "copy_status": "worldcup_voice_matched",
      "index": 49,
      "fingerprint": "21ee41b129a26a681a85ccec0929c22f263eaade1b3cb754c310b4d683c38653",
      "outputs": {
        "square": "public/cards/capital-fragment-united-states-washington-dc-square.jpg",
        "vertical": "public/stories/capital-fragment-united-states-washington-dc-vertical.jpg",
        "preview": "public/previews/capital-fragment-united-states-washington-dc.html"
      },
      "rendered_status": "rendered",
      "published_status": "published"
    },
    {
      "fragment_id": "capital-fragment-uruguay-montevideo",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Uruguay",
      "tournament_status": "active",
      "city": "Montevideo",
      "country": "Uruguay",
      "center_lat": -34.9011,
      "center_lon": -56.1645,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when rambla, port blocks, and river-plate air set the civic rhythm.",
      "micro_story": "Montevideo faces the Rio de la Plata with a slower confidence: port blocks, rambla logic, civic streets, coastal air, and capital life at walking scale.",
      "metric_1": "Rio de la Plata port capital",
      "metric_2": "200 m: rambla, port blocks, civic streets",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Montevideo\n\nMontevideo faces the Rio de la Plata with a slower confidence: port blocks, rambla logic, civic streets, coastal air, and capital life at walking scale.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Montevideo. Montevideo faces the Rio de la Plata with a slower confidence: port blocks, rambla logic, civic streets, coastal air, and capital life at walking scale.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#montevideo",
        "#uruguay",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 50,
      "fingerprint": "ab644792457ede0a20ea9259db1c605d2c941bf776d2c31fd2264e12c1ad0c76",
      "outputs": {
        "square": "public/cards/capital-fragment-uruguay-montevideo-square.jpg",
        "vertical": "public/stories/capital-fragment-uruguay-montevideo-vertical.jpg",
        "preview": "public/previews/capital-fragment-uruguay-montevideo.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "capital-fragment-uzbekistan-tashkent",
      "series": "capital-farewell",
      "tournament": "worldcup-2026",
      "team": "Uzbekistan",
      "tournament_status": "active",
      "city": "Tashkent",
      "country": "Uzbekistan",
      "center_lat": 41.2995,
      "center_lon": 69.2401,
      "radius_m": 200,
      "story_hook": "What 200 m reveal when canals, avenues, and metro logic carry Silk Road memory forward.",
      "micro_story": "Tashkent blends eras in the same radius: canal traces, Soviet avenues, metro-city order, green thresholds, and Silk Road memory under modern movement.",
      "metric_1": "Silk-road metro capital",
      "metric_2": "200 m: avenues, canals, Soviet blocks",
      "vote_options": [
        "next eliminated team",
        "host city",
        "another capital"
      ],
      "ig_caption": "City Fragment: Tashkent\n\nTashkent blends eras in the same radius: canal traces, Soviet avenues, metro-city order, green thresholds, and Silk Road memory under modern movement.\n\nScan the QR for the micro digital twin.",
      "fb_caption": "City Fragment: Tashkent. Tashkent blends eras in the same radius: canal traces, Soviet avenues, metro-city order, green thresholds, and Silk Road memory under modern movement.",
      "hashtags": [
        "#CityFragments",
        "#CapitalCities",
        "#tashkent",
        "#uzbekistan",
        "#Urbanism",
        "#Polisplexity",
        "#DigitalTwin"
      ],
      "status": "approved",
      "editorial_series": "City Fragments",
      "editorial_trigger": "tournament_elimination",
      "editorial_status": "worldcup_backlog_ready",
      "series_status": "worldcup_publish_ready",
      "publish_priority": 1,
      "copy_status": "worldcup_voice_matched",
      "index": 51,
      "fingerprint": "548aba8d870e13c0c73689cc6b03e85b76ef2529488746a3e564c0b64310948a",
      "outputs": {
        "square": "public/cards/capital-fragment-uzbekistan-tashkent-square.jpg",
        "vertical": "public/stories/capital-fragment-uzbekistan-tashkent-vertical.jpg",
        "preview": "public/previews/capital-fragment-uzbekistan-tashkent.html"
      },
      "rendered_status": "rendered",
      "published_status": "not_published"
    },
    {
      "fragment_id": "city-fragment-mexico-guadalajara-centro",
      "city": "Guadalajara",
      "country": "México",
      "center_lat": 20.67648,
      "center_lon": -103.3467,
      "radius_m": 200,
      "place": "Catedral / Plaza de Armas",
      "selection_note": "Centro cívico elegido para esta ampliación; no representa cobertura municipal.",
      "index": 52,
      "story_hook": "Catedral / Plaza de Armas",
      "micro_story": "Recorte de 200 m alrededor de Catedral / Plaza de Armas, con huellas y calles OSM, drenaje oficial disponible y relieve en Caminar.",
      "status": "approved",
      "outputs": {
        "preview": "public/recorrido/?city=city-fragment-mexico-guadalajara-centro"
      },
      "rendered_status": "not_rendered",
      "published_status": "not_published",
      "fingerprint": "bd793f7d5b49519575f29c4a481b48a2e750f914258e77c3c5fe1d910a010ddb"
    },
    {
      "fragment_id": "city-fragment-mexico-zapopan-centro",
      "city": "Zapopan",
      "country": "México",
      "center_lat": 20.7214,
      "center_lon": -103.3928,
      "radius_m": 200,
      "place": "Basílica / Plaza de las Américas",
      "selection_note": "Centro cívico elegido para esta ampliación; no representa cobertura municipal.",
      "index": 53,
      "story_hook": "Basílica / Plaza de las Américas",
      "micro_story": "Recorte de 200 m alrededor de Basílica / Plaza de las Américas, con huellas y calles OSM, drenaje oficial disponible y relieve en Caminar.",
      "status": "approved",
      "outputs": {
        "preview": "public/recorrido/?city=city-fragment-mexico-zapopan-centro"
      },
      "rendered_status": "not_rendered",
      "published_status": "not_published",
      "fingerprint": "b0b2d85b5007032e10655a367c705dd71f148ca59ef37551f655bbd634168abd"
    },
    {
      "fragment_id": "city-fragment-mexico-tlaquepaque-centro",
      "city": "San Pedro Tlaquepaque",
      "country": "México",
      "center_lat": 20.63965,
      "center_lon": -103.3107,
      "radius_m": 200,
      "place": "Jardín Hidalgo / El Parián",
      "selection_note": "Centro cívico elegido para esta ampliación; no representa cobertura municipal.",
      "index": 54,
      "story_hook": "Jardín Hidalgo / El Parián",
      "micro_story": "Recorte de 200 m alrededor de Jardín Hidalgo / El Parián, con huellas y calles OSM, drenaje oficial disponible y relieve en Caminar.",
      "status": "approved",
      "outputs": {
        "preview": "public/recorrido/?city=city-fragment-mexico-tlaquepaque-centro"
      },
      "rendered_status": "not_rendered",
      "published_status": "not_published",
      "fingerprint": "0af7b3325e1913e19a9998d18146485be73dede63d809c37463dbb7036ebe33f"
    }
  ]
}