{
  "overlay_id": "AYA-XOVL-LAUNCH-GROUND-v1",
  "overlay_type": "data",
  "name": "Launch Ground",
  "description": "What the first frames of the app look like on a phone, tablet and the browser (mobile unit M9.1). One ground colour and one gold wordmark, shared by the iOS launch storyboard, the Android launch theme, the web boot markup and the Flutter handoff layer, so a cold start shows the same plate from the operating system's first paint to the app's first frame and nothing white in between. The handoff layer (lib/core/launch/) reads it; the native and web files carry the same values as resources, pinned equal by test/core/launch/launch_ground_test.dart. The bundled copy under clients/web/aya_ui/assets/config/ is byte-identical.",
  "version": "1.0.0",
  "priority": 50,
  "created_at": "2026-10-03T00:00:00.000000+00:00",
  "applies_to": {
    "tags": ["ui", "mobile", "launch", "responsive"],
    "domains": ["engineering"]
  },
  "configuration": {
    "_note": "Colours are 6-digit sRGB hex. ground is AYAColors.background. mark_ink is the gold the web boot wordmark is baked in. mark_width_fraction is the wordmark's width as a fraction of the shorter screen side, capped at mark_max_width_px logical pixels. fade_ms is how long the handoff layer takes to fade away once the app's first frame is up; under reduced motion it is 0 (an instant, still handoff). A value the file lacks keeps the compiled fallback, which test/core/launch/launch_ground_test.dart pins equal to this block.",
    "ground": "141416",
    "mark_ink": "FFB612",
    "mark_asset": "assets/brand/aya_wordmark.png",
    "mark_width_fraction": 0.46,
    "mark_max_width_px": 420,
    "fade_ms": 200
  },
  "metadata": {
    "name": "Launch Ground",
    "description": "Ground colour and gold wordmark for the app's first frames on phone, tablet and web, shared across the iOS, Android, web-boot and Flutter handoff layers.",
    "level": 1,
    "type": "XOVL",
    "category": "ui"
  }
}
