{/* Fake toolbar at top */}
=SUM(F2:F5)
{["B", "I", "U"].map((letter) => (
{letter}
))}
{/* Tab bar at top */}
Trip Plan v3 (FINAL)
Budget (old)
{/* Row numbers column */}
{[1, 2, 3, 4, 5].map((num) => (
{num}
))}
{/* Column headers */}
{COLUMN_HEADERS.map((header, i) => (
{header}
))}
{/* Data rows */}
{SPREADSHEET_ROWS.map((row, rowIndex) => {
const rowDelay = 12 + rowIndex * 10; // stagger 10 frames apart (headers + delay)
const rowProgress = spring({
frame: frame - rowDelay,
fps,
config: { damping: 14, stiffness: 250 },
});
return (
{row.map((cell, colIndex) => {
// Stagger individual cells within a row
const cellDelay = rowDelay + colIndex * 3;
const cellProgress = spring({
frame: frame - cellDelay,
fps,
config: { damping: 16, stiffness: 280 },
});
return (
12 ? 13 : 16,
fontWeight: cell.bold ? 700 : 400,
color:
cell.highlight === "red"
? "#C62828"
: cell.text.includes("?")
? "#E65100"
: "#333",
textAlign: "center",
lineHeight: 1.2,
whiteSpace: "pre-wrap",
}}
>
{cell.text}
);
})}
);
})}
{/* Formula error overlay */}
{showError && (
)}
{/* Random sticky notes / annotations for chaos */}
do they even play in Austin???
{/* Red tint overlay */}