root = Card([header, todayRevenue, comparison, hourlyTrend])
header = CardHeader("Mid-Morning Check-In", "Revenue snapshot as of 10:30 AM")
todayRevenue = Card([revenueLabel, revenueAmount], "sunk", "column", "m", "center")
revenueLabel = TextContent("Revenue so far today", "small-heavy")
revenueAmount = TextContent("$3,247.50", "large-heavy")
comparison = Callout("success", "Ahead of yesterday", "Up $412.30 (+14.5%) vs same time yesterday ($2,835.20)")
hourlyTrend = Card([trendLabel, trendChart], "clear")
trendLabel = TextContent("Hourly trend (today vs yesterday)", "small-heavy")
trendChart = BarChart(["8 AM", "9 AM", "10 AM"], [todaySeries, yesterdaySeries], "grouped", "Hour", "Revenue ($)")
todaySeries = Series("Today", [890, 1240, 1117.50])
yesterdaySeries = Series("Yesterday", [720, 1050, 1065.20])