root = Card([header, zoneSection, severitySummary, resourcesSection, sheltersSection, routesSection, weatherSection, statsSection, volunteersSection, donationsSection, aidRequestsSection, commsSection, roadsSection, hospitalsSection, tasksSection, actionsSection, sitrepSection, followups], "card", "column", "xl")
header = CardHeader("Emergency Response Coordination Center", "Live operational overview — updated 14:32")
zoneSection = Card([zoneHeading, zoneTable], "sunk")
zoneHeading = Heading("Active Incidents by Zone", "h2")
zoneTable = Table([zoneCol, severityCol])
zoneCol = Col("Zone", ["North District", "East Riverside", "Downtown Core", "West Hills", "South Harbor"])
severityCol = Col("Severity", ["Critical", "High", "Moderate", "High", "Moderate"])
severitySummary = Callout("warning", "Overall Severity Summary", "3 critical, 5 high, 4 moderate incidents across 5 zones. East Riverside and North District require immediate reinforcement.")
resourcesSection = Card([resourcesHeading, resourcesTable], "sunk")
resourcesHeading = Heading("Available Resources", "h2")
resourcesTable = Table([resourceType, resourceCount])
resourceType = Col("Resource", ["Vehicles", "Personnel", "Supplies"])
resourceCount = Col("Available", ["34", "128", "412 units"])
sheltersSection = Card([sheltersHeading, sheltersTable], "sunk")
sheltersHeading = Heading("Shelters — Capacity & Occupancy", "h2")
sheltersTable = Table([shelterName, capacityCol, occupancyCol])
shelterName = Col("Shelter", ["Riverside High School", "North Gymnasium", "Downtown Convention Center", "West Hills Community Hall"])
capacityCol = Col("Capacity", ["500", "300", "800", "200"])
occupancyCol = Col("Occupancy", ["412", "268", "743", "157"])
routesSection = Card([routesHeading, routesTable], "sunk")
routesHeading = Heading("Evacuation Route Status", "h2")
routesTable = Table([routeName, routeStatus])
routeName = Col("Route", ["Route 1 — North", "Route 2 — East", "Route 3 — West", "Route 4 — South"])
routeStatus = Col("Status", ["Open", "Congested", "Open", "Blocked"])
weatherSection = Card([weatherHeading, weatherChart], "sunk")
weatherHeading = Heading("Weather Forecast — Next 48 Hours", "h2")
weatherChart = LineChart(["0h", "6h", "12h", "18h", "24h", "30h", "36h", "42h", "48h"], [tempSeries, precipSeries], "linear", "Time", "Temp °C / Precip mm")
tempSeries = Series("Temperature (°C)", [18, 17, 16, 15, 14, 14, 15, 16, 17])
precipSeries = Series("Precipitation (mm)", [2, 5, 12, 18, 22, 15, 8, 3, 1])
statsSection = Card([statsHeading, statsTable], "sunk")
statsHeading = Heading("Rescue & Casualty Summary", "h2")
statsTable = Table([statName, statValue])
statName = Col("Metric", ["People Rescued", "Casualties", "Missing"])
statValue = Col("Count", ["1,240", "38", "52"])
volunteersSection = Card([volunteersHeading, volunteersTable], "sunk")
volunteersHeading = Heading("Volunteers on Duty", "h2")
volunteersTable = Table([volunteerName, volunteerAssignment])
volunteerName = Col("Volunteer", ["Maria Chen", "James Okafor", "Priya Patel", "David Kim", "Sofia Alvarez"])
volunteerAssignment = Col("Assignment", ["Shelter Coordination", "Medical Triage", "Supply Distribution", "Route Monitoring", "Communications"])
donationsSection = Card([donationsHeading, donationsTable], "sunk")
donationsHeading = Heading("Donations Received", "h2")
donationsTable = Table([donationType, donationAmount])
donationType = Col("Category", ["Cash", "Food & Water", "Clothing", "Medical Supplies"])
donationAmount = Col("Received", ["$85,000", "2,300 units", "1,150 units", "680 units"])
aidRequestsSection = Card([aidHeading, aidTable], "sunk")
aidHeading = Heading("Aid Requests Awaiting Action", "h2")
aidTable = Table([requestId, requestZone, requestType])
requestId = Col("ID", ["AR-1042", "AR-1043", "AR-1044"])
requestZone = Col("Zone", ["East Riverside", "North District", "Downtown Core"])
requestType = Col("Request", ["Water pumps", "Field medics", "Blankets"])
commsSection = Card([commsHeading, commsTable], "sunk")
commsHeading = Heading("Communication Channels", "h2")
commsTable = Table([channelName, channelStatus])
channelName = Col("Channel", ["Radio Network", "Satellite Link", "Cell Tower A", "Cell Tower B", "Internet Backbone"])
channelStatus = Col("Status", ["Up", "Up", "Down", "Up", "Degraded"])
roadsSection = Card([roadsHeading, roadsTable], "sunk")
roadsHeading = Heading("Roads Closed", "h2")
roadsTable = Table([roadName, roadClosure])
roadName = Col("Road", ["Harbor Blvd", "Riverside Dr", "Mountain Pass Rd"])
roadClosure = Col("Reason", ["Flooding", "Debris", "Landslide"])
hospitalsSection = Card([hospitalsHeading, hospitalsTable], "sunk")
hospitalsHeading = Heading("Nearby Hospitals — Free Beds", "h2")
hospitalsTable = Table([hospitalName, freeBeds])
hospitalName = Col("Hospital", ["St. Mary's General", "City Memorial", "Riverside Medical Center"])
freeBeds = Col("Free Beds", ["24", "12", "8"])
tasksSection = Card([tasksHeading, tasksTable], "sunk")
tasksHeading = Heading("Open Tasks", "h2")
tasksTable = Table([taskName, taskAssignee])
taskName = Col("Task", ["Deploy pumps to East Riverside", "Set up triage at North Gym", "Clear Mountain Pass Rd", "Restock shelter supplies"])
taskAssignee = Col("Assignee", ["Lt. Alvarez", "Dr. Nguyen", "Crew 3", "Volunteer Okafor"])
actionsSection = Card([actionsHeading, requestForm, broadcastForm, zoneForm], "sunk", "column", "m")
actionsHeading = Heading("Coordinator Actions", "h2")
requestForm = Form("resource-request", requestButtons, [requestTypeField, requestQtyField])
requestTypeField = FormControl("Resource Type", requestTypeInput, "e.g. pumps, medics, blankets")
requestTypeInput = Input("resource_type", "Enter resource type")
requestQtyField = FormControl("Quantity", requestQtyInput)
requestQtyInput = Input("quantity", "Enter quantity", "number")
requestButtons = Buttons([requestSubmit])
requestSubmit = Button("Request Resources", null, "primary")
broadcastForm = Form("broadcast", broadcastButtons, [broadcastField])
broadcastField = FormControl("Broadcast Message", broadcastInput, "Sent to all channels")
broadcastInput = TextArea("broadcast_message", "Type update message...", 3)
broadcastButtons = Buttons([broadcastSubmit])
broadcastSubmit = Button("Broadcast Update", null, "primary")
zoneForm = Form("focus-zone", zoneButtons, [zoneSelectField])
zoneSelectField = FormControl("Focus Zone", zoneSelect)
zoneSelect = Select("focus_zone", [zoneNorth, zoneEast, zoneDowntown, zoneWest, zoneSouth], "Select a zone")
zoneNorth = SelectItem("north", "North District")
zoneEast = SelectItem("east", "East Riverside")
zoneDowntown = SelectItem("downtown", "Downtown Core")
zoneWest = SelectItem("west", "West Hills")
zoneSouth = SelectItem("south", "South Harbor")
zoneButtons = Buttons([zoneSubmit])
zoneSubmit = Button("Focus on Zone", null, "secondary")
sitrepSection = Card([sitrepHeading, sitrepForm], "sunk")
sitrepHeading = Heading("File Situation Report", "h2")
sitrepForm = Form("sitrep", sitrepButtons, [sitrepZoneField, sitrepDetailsField])
sitrepZoneField = FormControl("Zone", sitrepZoneSelect)
sitrepZoneSelect = Select("sitrep_zone", [sitrepNorth, sitrepEast, sitrepDowntown, sitrepWest, sitrepSouth], "Select zone for report")
sitrepNorth = SelectItem("north", "North District")
sitrepEast = SelectItem("east", "East Riverside")
sitrepDowntown = SelectItem("downtown", "Downtown Core")
sitrepWest = SelectItem("west", "West Hills")
sitrepSouth = SelectItem("south", "South Harbor")
sitrepDetailsField = FormControl("Situation Details", sitrepDetailsInput)
sitrepDetailsInput = TextArea("sitrep_details", "Describe current situation...", 4)
sitrepButtons = Buttons([sitrepSubmit])
sitrepSubmit = Button("File Situation Report", null, "primary")
followups = FollowUpBlock([followup1, followup2, followup3])
followup1 = FollowUpItem("Show details for East Riverside")
followup2 = FollowUpItem("List all open aid requests")
followup3 = FollowUpItem("Summarize weather risks for next 24 hours")