Slide Styling Guide
This document provides styling patterns and design references for deck visual slides (TSX + SVG).
Core Principles
- Default to light backgrounds for projection/printing — subtle gradients and colored backgrounds are allowed if they improve readability
- High contrast text (dark text #1d1d1d on light backgrounds)
- Blue accent color (#1791e8) for emphasis and step headers
- Prominent step questions - the main action/question is bold and colored
- Creative visual design - use SVG capabilities to create engaging, professional slides
- Prefer web-safe fonts (Arial, Georgia, Helvetica, Verdana, etc.) for broad compatibility
Two-Column Layout (RECOMMENDED for graphs, not mandatory)
When a slide contains a graph or coordinate plane, two-column often works well:
| Left Column (35-40%) | Right Column (60-65%) |
|---|---|
| Problem text | Graph/SVG visual |
| Tables | Coordinate plane |
| Bullets | Diagrams |
| CFU/Answer boxes | Images |
Why graphs often go on the right:
- Consistent visual anchoring across all step slides
- Left-to-right reading flow: read problem → see visual
However, if two-column would cause content duplication, use centered or full-width instead. A centered layout with a powerful visual is better than a two-column layout that duplicates content.
Layout Zones (All Slides — 640x360 SVG Viewport)
Every slide follows this vertical structure within the 640x360 viewport:
| Zone | Y Position | Height | Purpose |
|---|---|---|---|
| Title | 0-70 | 70 | Slide title + subtitle |
| Buffer | 70-80 | 10 | Separation space |
| Content | 80-340 | 260 | Main content area |
| Buffer | 340-345 | 5 | Separation space |
| Footnote | 345-360 | 15 | Sources, page info |
Color Palette
Use HEX colors directly (6-digit hex required — never rgb/rgba/named colors):
| Color | Hex | Usage |
|---|---|---|
| Primary (Blue) | #1791e8 | Step badges, h1 titles, accents |
| Surface (White) | #ffffff | Slide background |
| Foreground (Dark) | #1d1d1d | Body text |
| Muted (Light Gray) | #f5f5f5 | Content boxes, subtle backgrounds |
| Muted Text | #737373 | Secondary text, footnotes |
| CFU (Amber) | #fef3c7 | Check for understanding boxes |
| Answer (Green) | #dcfce7 | Answer reveal boxes |
| Border | #e5e7eb | Subtle borders |
Typography Hierarchy
Step Badge: 13px bold uppercase (in pill)
Title (h1): 28px bold (primary color #1791e8)
Subtitle (p): 16px regular (dark text #1d1d1d)
Section Header: 15px bold
Body Text: 14px regular
Supporting: 13px regular
Footnotes: 10px
CFU (Check for Understanding) Box
Rendered via CfuAnswerCard component with amber background (#fef3c7), left border (#f59e0b), and "CHECK FOR UNDERSTANDING" header.
Answer Box
Rendered via CfuAnswerCard component with green background (#dcfce7), left border (#22c55e), and "ANSWER" header.
SVG Graph Constraints
CRITICAL for graph alignment:
- Fixed viewport: SVG uses
viewBox="0 0 640 360" - Center in container: Position within the SVG coordinate system
- Coordinate system:
- Origin at top-left of viewBox
- Y-axis increases downward
- For math graphs, transform to flip Y-axis
Graph coordinate mapping:
- Graph units should map consistently to pixels within the 640x360 viewport
- Example: if x-axis spans -10 to 10, that's 20 units
- With appropriate margins: calculate pixels per unit
- ALWAYS calculate:
pixelX = marginLeft + (x - xMin) * pixelsPerUnit
Common Mistakes to Avoid
- Non-hex colors: Use 6-digit hex colors (
#1791e8, notrgb(),rgba(), or named colors) - Content duplication: Never say the same thing in two places on the same slide
- Missing
data-element-id: Every SVG<g>group that participates in progressive reveal needs adata-element-id - Missing
<Animated>wrapper: Elements that appear/disappear need<Animated>wrapping - Wrong viewport: SVG must use 640x360, not other dimensions
Annotation Techniques
When showing steps on slides, use these techniques to highlight changes:
| Technique | Use For | SVG Example |
|---|---|---|
| Highlight | Emphasizing elements | fill="#e8f4fd" on rect backgrounds |
| Border/outline | Circling elements | stroke="#1791e8" stroke-width="2" on shapes |
| Strike-through | Removed items | opacity="0.5" with line-through text decoration |
| Color change | Before/after states | Different fill colors between steps |
Remember: Keep the main visual in the SAME position across slides. Add annotations around it.
Printable Worksheet (Different from Slides)
The printable worksheet uses DIFFERENT styling:
- White background (#ffffff)
- Black text (#000000)
- Times New Roman font for print
- 8.5in x 11in page size
- @media print CSS rules
- page-break-after: always between pages