root = Card([header, special, legend, menuTabs, hoursSection])
header = CardHeader("The Daily Grind", "Breakfast · Brunch · Coffee")
special = Callout("success", "Today's Special", "Smoked Gouda Grilled Cheese with tomato basil soup — $9.50, served all day.")
legend = TextContent("🌱 marks vegetarian items. Find them all on the Vegetarian tab.")
menuTabs = Tabs([allTab, vegTab])
allTab = TabItem("all", "All menu", [drinksSection, foodSection])
vegTab = TabItem("vegetarian", "Vegetarian", [vegDrinksSection, vegFoodSection])
drinksSection = Card([drinksHeading, drinksTable], "sunk")
drinksHeading = Heading("Drinks", "h2")
drinksTable = Table([drinkCol, drinkPriceCol])
drinkCol = Col("Drink", ["Espresso", "Cappuccino", "Vanilla Latte", "Cold Brew", "Matcha Latte", "Fresh Orange Juice"])
drinkPriceCol = Col("Price", ["$2.50", "$3.75", "$4.25", "$4.00", "$4.75", "$3.50"])
foodSection = Card([foodHeading, foodTable], "sunk")
foodHeading = Heading("Food", "h2")
foodTable = Table([foodCol, foodPriceCol])
foodCol = Col("Item", ["Avocado Toast 🌱", "Smoked Gouda Grilled Cheese", "Turkey Club", "Greek Yogurt Parfait 🌱", "Margherita Croissant 🌱", "BLT"])
foodPriceCol = Col("Price", ["$7.50", "$9.50", "$10.25", "$6.00", "$6.75", "$8.50"])
vegDrinksSection = Card([vegDrinksHeading, vegDrinksNote, vegDrinksTable], "sunk")
vegDrinksHeading = Heading("Vegetarian drinks", "h2")
vegDrinksNote = TextContent("Every drink on our menu is vegetarian-friendly.", "small")
vegDrinksTable = Table([vegDrinkCol, vegDrinkPriceCol])
vegDrinkCol = Col("Drink", ["Espresso", "Cappuccino", "Vanilla Latte", "Cold Brew", "Matcha Latte", "Fresh Orange Juice"])
vegDrinkPriceCol = Col("Price", ["$2.50", "$3.75", "$4.25", "$4.00", "$4.75", "$3.50"])
vegFoodSection = Card([vegFoodHeading, vegFoodTable], "sunk")
vegFoodHeading = Heading("Vegetarian food", "h2")
vegFoodTable = Table([vegFoodCol, vegFoodPriceCol])
vegFoodCol = Col("Item", ["Avocado Toast", "Greek Yogurt Parfait", "Margherita Croissant"])
vegFoodPriceCol = Col("Price", ["$7.50", "$6.00", "$6.75"])
hoursSection = Card([hoursHeading, hoursTable], "sunk")
hoursHeading = Heading("Opening Hours", "h2")
hoursTable = Table([dayCol, hourCol])
dayCol = Col("Day", ["Monday – Friday", "Saturday", "Sunday"])
hourCol = Col("Hours", ["7:00 AM – 6:00 PM", "8:00 AM – 4:00 PM", "8:00 AM – 2:00 PM"])