root = Card([header, kpis, priorityFilter, recentTickets, newTicketBtn])
header = CardHeader("Support Overview", "Morning view")
kpis = Card([openKpi, responseKpi], "sunk", "row", "m")
openKpi = Card([openLabel, openValue], "clear", "column", "xs")
openLabel = TextContent("Open tickets", "small")
openValue = TextContent("**23**", "large")
responseKpi = Card([responseLabel, responseValue], "clear", "column", "xs")
responseLabel = TextContent("Avg first response", "small")
responseValue = TextContent("**1h 24m**", "large")
priorityFilter = Buttons([allBtn, highBtn])
allBtn = Button("All priorities", null, "secondary")
highBtn = Button("High priority only", null, "primary")
recentTickets = Card([recentHeading, ticketsTable], "sunk")
recentHeading = Heading("Most recent tickets", "h3")
ticketsTable = Table([ticketId, ticketSubject, ticketPriority])
ticketId = Col("ID", ["#4821", "#4820", "#4819", "#4818", "#4817"])
ticketSubject = Col("Subject", ["Login fails after update", "Billing invoice missing", "API timeout on export", "UI glitch on dashboard", "Password reset not sent"])
ticketPriority = Col("Priority", ["High", "Medium", "Low", "High", "Medium"])
newTicketBtn = Button("Open new ticket", null, "primary")