Workflow
- Audit and internalize all provided materials.
- Create a slide plan before editing (structure, pacing, consolidation).
- Rebuild the narrative for live presentation.
- Apply visual system (theme, colors, hierarchy).
- Optimize content density and clarity.
- Implement layout using container-based alignment (not spacing hacks).
- Verify compile + visual polish across all slide types.
Narrative Structure
Default structure:
- Title
- Hook (engaging opening)
- Research Question
- Roadmap
- Background
- Data
- Identification
- Results
- Mechanisms
- Synthesis (diagram / summary)
- Policy Implications
- Takeaways
- Appendix
Adapt as needed, but prioritize flow for a live audience.
Design System
Theme
- Use a custom minimal Beamer theme
- Avoid default themes (e.g., CambridgeUS)
- Use:
- aspectratio=169
- no navigation symbols
- custom frame titles and footline
Default Color Scheme
Use this unless user specifies otherwise:
Primary: SlateTeal (#1B4D5C)
-> titles, headers
Accent: WarmAmber (#D4A84B)
-> highlights, key numbers
Body Text: DeepCharcoal (#2C3E50)
Secondary Accent: SoftCoral (#C0534D)
-> negative results / significance
Muted: CoolGray (#8899A6)
-> notes, annotations
Light Fill: PaleSage (#EDF2F0)
-> tcolorbox fills, block bodies
Background:
- default: white (#FFFFFF)
- optional: WarmWhite (#FAFAF8) (only if ALL figures have non-white backgrounds)
Color Rules
- Use accent sparingly
- Max 2-3 dominant colors per slide
- Ensure high contrast
- Maintain consistency across slides
Typography & Structure
Clear hierarchy:
- titles emphasized
- body minimal
- highlights selective
Prefer:
- boxes for key ideas
- structured layouts (columns, grids)
Avoid:
Content Rules
- One main idea per slide
- Prefer visuals over text
- Merge redundant slides
- Move secondary content to appendix
- Use overlays (\pause) sparingly
Diagram Rules (TikZ / Visuals)
Optimize in this order:
- Clarity
- Balance
- Fit
- Compactness
Rules:
- Center composition on the slide
- When a horizontal chain overflows, wrap the final node(s) to a centered row below
- Do NOT shrink text or node widths to force a single-row fit
- Use coordinate midpoints to center the wrapped row:
\coordinate (mid) at ($(first.south)!0.5!(last.south)$);
requires \usetikzlibrary{calc}
- Avoid unnecessary arrows (especially to visually separated outcome nodes)
- Group annotation labels directly below their parent nodes
- Use muted colors (CoolGray) for annotation text
- Use a distinct style for outcome/result nodes (e.g., accent fill + accent border)
- Define reusable node styles (box, resultbox, evidence) instead of inline styling
- Always use
positioning library (right=of, below=of) instead of manual coordinates
Layout Rules (CRITICAL)
Core Principle
Never place elements flush against slide edges.
Define a consistent safe zone and enforce it structurally.
Safe Zone
Define a single inset value (e.g., 1.5cm) and apply it consistently to:
- page numbers (via footline rightskip)
- buttons (via trailing \hspace)
- any right-aligned content
This value should be defined once and reused. If the value changes, it must change everywhere.
Frame Titles
Use explicit vertical spacing in the frametitle template:
\setbeamertemplate{frametitle}{%
\vskip18pt%
\nointerlineskip%
{\usebeamerfont{frametitle}\usebeamercolor[fg]{frametitle}\insertframetitle\par}%
\vskip2pt%
{\color{AccentColor}\rule{\textwidth}{1.2pt}}%
\vskip4pt%
}
Key points:
- The top \vskip controls breathing room from the slide edge
- Start at 16-18pt; adjust based on user feedback
- Do NOT rely on Beamer's default frametitle spacing
Footline / Page Numbers
MUST use a beamercolorbox with explicit rightskip.
\setbeamertemplate{footline}{%
\begin{beamercolorbox}[wd=\paperwidth, ht=18pt, right, rightskip=1.5cm]{footline}%
\insertframenumber\,/\,\inserttotalframenumber\vskip4pt%
\end{beamercolorbox}%
}
Why this is critical:
- Trailing \hspace after content gets CLIPPED by the beamercolorbox boundary
- This means
\hfill{content}\hspace{Xcm} does NOT reliably inset from the right
- The ONLY reliable method is setting
rightskip on the containing beamercolorbox
- This was the #1 layout bug encountered in practice
Do NOT use:
% BROKEN: hspace gets clipped at box edge
\setbeamertemplate{footline}{%
\hfill \insertframenumber \hspace{1.5cm}\vskip8pt%
}
Buttons & Navigation
Buttons using \hfill push to the right edge and WILL overlap with page numbers.
Fix: add \hspace matching the footline rightskip after every button group:
\hfill \hyperlink{label}{\beamerbutton{Back}}\hspace{1.5cm}
Apply this to EVERY slide with buttons, including:
- main slides with appendix links (SDID, ATT, etc.)
- appendix slides with Back buttons
- slides with multiple buttons on one line (add \hspace only after the last button)
When a slide has multiple buttons on separate \hfill lines, only the LAST line needs the trailing \hspace:
\hfill \hyperlink{a}{\beamerbutton{Back (A)}}
\hfill \hyperlink{b}{\beamerbutton{Back (B)}}\hspace{1.5cm}
Structural Rule
If spacing changes do not behave as expected:
-> the issue is structural, not numerical
-> fix the container (footline/template), not the text
-> inspect the beamercolorbox or template definition first
Figure Integration
- If ANY figures have white backgrounds -> use white slide background
- Only use WarmWhite (#FAFAF8) if all figures have transparent or matching backgrounds
- Use
keepaspectratio on all \includegraphics calls
- Figures created for 4:3 will not stretch correctly in 16:9; constrain with width only
- Avoid visible "boxed" figures against the background
Rule:
Visual integration > strict theme purity
Appendix
- Separate with a plain divider slide (styled to match the title slide)
- Use
appendixnumberbeamer package to restart slide numbering
- Preserve all hyperlink labels from the main deck
- All Back buttons must link to the correct main-deck label
- Keep appendix slides functional but not presentation-heavy:
- no progressive reveals
- tables can be denser
- reduce decorative elements
Implementation Rules
- Prefer structural fixes over spacing hacks
- Inspect container (beamercolorbox, templates) first
- Avoid repeated trial-and-error spacing
- Use \graphicspath{{figures/}} and store all images in a figures/ subdirectory
- Do not commit compiled outputs (.pdf, .aux, .log, .nav, .out, .snm, .synctex.gz, .toc)
Verification
Compile
- Must compile with pdfLaTeX (not XeLaTeX unless explicitly required)
- Zero errors (warnings for overfull hbox on tables are acceptable)
- Run at least two passes to resolve cross-references and hyperlinks
Visual QA
Check:
- frame titles have top breathing room (not flush with slide edge)
- page numbers are inset from right edge (visible gap)
- no overlap between buttons and page numbers on ANY slide
- diagrams are centered and fit within the frame
- figures blend with background (no visible white boxes)
- dense tables are readable (check appendix slides especially)
- title slide elements are not crowded
Stress Test
Verify on:
- appendix slides with Back buttons (button vs page number overlap)
- dense tables (overfull vbox warnings, readability)
- multi-figure slides (subfigure alignment)
- TikZ diagrams (overflow, centering)
- navigation-heavy slides (robustness checklist with many buttons)
- the title slide and appendix divider (plain frames have different spacing)
Failure Modes to Avoid
- overcrowded slides
- excessive bullets
- overuse of overlays
- edge-clipped elements (especially page numbers)
- diagram overflow (horizontal chain too wide for 16:9)
- figure/background color mismatch
- fragile spacing hacks (\hspace at box boundaries)
- button/page-number overlap
- broken hyperlinks between main deck and appendix
Success Criteria
A successful deck:
- compiles cleanly with pdfLaTeX
- fits presentation time
- is easier to present than original
- looks clean and professional
- preserves academic rigor
- handles spacing robustly across ALL slides (including appendix with buttons)
- has no element flush against any slide edge
Heuristic
When in doubt:
- simplify
- align
- add breathing room
- fix containers, not text
- optimize for live audience, not archive
1---2name: academic-beamer-deck3description: Generate or redesign academic Beamer slide decks that are clear, visually polished, compile-safe, and optimized for live presentation. Transforms existing slides or raw materials into a structured, well-paced, and professional presentation with robust layout and consistent visual design. Use this skill whenever the user mentions creating slides, beamer presentations, redesigning slides, improving slides, academic talk slides, conference presentations, seminar slides, making slides from tex, or fixing beamer slides -- even if they don't explicitly say "Beamer." Accepts .tex files, figures, and talk context (audience, length, venue, purpose) as inputs. Produces a compile-ready .tex file, organized figures folder, and presentation-ready deck as output.4---56## Workflow781. Audit and internalize all provided materials.92. Create a slide plan before editing (structure, pacing, consolidation).103. Rebuild the narrative for live presentation.114. Apply visual system (theme, colors, hierarchy).125. Optimize content density and clarity.136. Implement layout using container-based alignment (not spacing hacks).147. Verify compile + visual polish across all slide types.1516---1718## Narrative Structure1920Default structure:21221. Title232. Hook (engaging opening)243. Research Question254. Roadmap265. Background276. Data287. Identification298. Results309. Mechanisms3110. Synthesis (diagram / summary)3211. Policy Implications3312. Takeaways3413. Appendix3536Adapt as needed, but prioritize flow for a live audience.3738---3940## Design System4142### Theme4344- Use a custom minimal Beamer theme45- Avoid default themes (e.g., CambridgeUS)46- Use:47 - aspectratio=16948 - no navigation symbols49 - custom frame titles and footline5051---5253## Default Color Scheme5455Use this unless user specifies otherwise:5657- Primary: SlateTeal (#1B4D5C)58 -> titles, headers5960- Accent: WarmAmber (#D4A84B)61 -> highlights, key numbers6263- Body Text: DeepCharcoal (#2C3E50)6465- Secondary Accent: SoftCoral (#C0534D)66 -> negative results / significance6768- Muted: CoolGray (#8899A6)69 -> notes, annotations7071- Light Fill: PaleSage (#EDF2F0)72 -> tcolorbox fills, block bodies7374- Background:75 - default: white (#FFFFFF)76 - optional: WarmWhite (#FAFAF8) (only if ALL figures have non-white backgrounds)7778### Color Rules7980- Use accent sparingly81- Max 2-3 dominant colors per slide82- Ensure high contrast83- Maintain consistency across slides8485---8687## Typography & Structure8889- Clear hierarchy:90 - titles emphasized91 - body minimal92 - highlights selective9394- Prefer:95 - boxes for key ideas96 - structured layouts (columns, grids)9798- Avoid:99 - dense paragraphs100 - clutter101102---103104## Content Rules105106- One main idea per slide107- Prefer visuals over text108- Merge redundant slides109- Move secondary content to appendix110- Use overlays (\pause) sparingly111112---113114## Diagram Rules (TikZ / Visuals)115116Optimize in this order:1171181. Clarity1192. Balance1203. Fit1214. Compactness122123Rules:124- Center composition on the slide125- When a horizontal chain overflows, wrap the final node(s) to a centered row below126 - Do NOT shrink text or node widths to force a single-row fit127 - Use coordinate midpoints to center the wrapped row:128 `\coordinate (mid) at ($(first.south)!0.5!(last.south)$);`129 requires `\usetikzlibrary{calc}`130- Avoid unnecessary arrows (especially to visually separated outcome nodes)131- Group annotation labels directly below their parent nodes132- Use muted colors (CoolGray) for annotation text133- Use a distinct style for outcome/result nodes (e.g., accent fill + accent border)134- Define reusable node styles (box, resultbox, evidence) instead of inline styling135- Always use `positioning` library (`right=of`, `below=of`) instead of manual coordinates136137---138139## Layout Rules (CRITICAL)140141### Core Principle142143Never place elements flush against slide edges.144Define a consistent safe zone and enforce it structurally.145146---147148### Safe Zone149150Define a single inset value (e.g., 1.5cm) and apply it consistently to:151- page numbers (via footline rightskip)152- buttons (via trailing \hspace)153- any right-aligned content154155This value should be defined once and reused. If the value changes, it must change everywhere.156157---158159### Frame Titles160161Use explicit vertical spacing in the frametitle template:162163```latex164\setbeamertemplate{frametitle}{%165 \vskip18pt%166 \nointerlineskip%167 {\usebeamerfont{frametitle}\usebeamercolor[fg]{frametitle}\insertframetitle\par}%168 \vskip2pt%169 {\color{AccentColor}\rule{\textwidth}{1.2pt}}%170 \vskip4pt%171}172```173174Key points:175- The top \vskip controls breathing room from the slide edge176- Start at 16-18pt; adjust based on user feedback177- Do NOT rely on Beamer's default frametitle spacing178179---180181### Footline / Page Numbers182183MUST use a beamercolorbox with explicit rightskip.184185```latex186\setbeamertemplate{footline}{%187 \begin{beamercolorbox}[wd=\paperwidth, ht=18pt, right, rightskip=1.5cm]{footline}%188 \insertframenumber\,/\,\inserttotalframenumber\vskip4pt%189 \end{beamercolorbox}%190}191```192193Why this is critical:194- Trailing \hspace after content gets CLIPPED by the beamercolorbox boundary195- This means `\hfill{content}\hspace{Xcm}` does NOT reliably inset from the right196- The ONLY reliable method is setting `rightskip` on the containing beamercolorbox197- This was the #1 layout bug encountered in practice198199Do NOT use:200```latex201% BROKEN: hspace gets clipped at box edge202\setbeamertemplate{footline}{%203 \hfill \insertframenumber \hspace{1.5cm}\vskip8pt%204}205```206207---208209### Buttons & Navigation210211Buttons using \hfill push to the right edge and WILL overlap with page numbers.212213Fix: add \hspace matching the footline rightskip after every button group:214215```latex216\hfill \hyperlink{label}{\beamerbutton{Back}}\hspace{1.5cm}217```218219Apply this to EVERY slide with buttons, including:220- main slides with appendix links (SDID, ATT, etc.)221- appendix slides with Back buttons222- slides with multiple buttons on one line (add \hspace only after the last button)223224When a slide has multiple buttons on separate \hfill lines, only the LAST line needs the trailing \hspace:225```latex226\hfill \hyperlink{a}{\beamerbutton{Back (A)}}227\hfill \hyperlink{b}{\beamerbutton{Back (B)}}\hspace{1.5cm}228```229230---231232### Structural Rule233234If spacing changes do not behave as expected:235-> the issue is structural, not numerical236-> fix the container (footline/template), not the text237-> inspect the beamercolorbox or template definition first238239---240241## Figure Integration242243- If ANY figures have white backgrounds -> use white slide background244- Only use WarmWhite (#FAFAF8) if all figures have transparent or matching backgrounds245- Use `keepaspectratio` on all \includegraphics calls246- Figures created for 4:3 will not stretch correctly in 16:9; constrain with width only247- Avoid visible "boxed" figures against the background248249Rule:250Visual integration > strict theme purity251252---253254## Appendix255256- Separate with a plain divider slide (styled to match the title slide)257- Use `appendixnumberbeamer` package to restart slide numbering258- Preserve all hyperlink labels from the main deck259- All Back buttons must link to the correct main-deck label260- Keep appendix slides functional but not presentation-heavy:261 - no progressive reveals262 - tables can be denser263 - reduce decorative elements264265---266267## Implementation Rules268269- Prefer structural fixes over spacing hacks270- Inspect container (beamercolorbox, templates) first271- Avoid repeated trial-and-error spacing272- Use \graphicspath{{figures/}} and store all images in a figures/ subdirectory273- Do not commit compiled outputs (.pdf, .aux, .log, .nav, .out, .snm, .synctex.gz, .toc)274275---276277## Verification278279### Compile280281- Must compile with pdfLaTeX (not XeLaTeX unless explicitly required)282- Zero errors (warnings for overfull hbox on tables are acceptable)283- Run at least two passes to resolve cross-references and hyperlinks284285---286287### Visual QA288289Check:290291- frame titles have top breathing room (not flush with slide edge)292- page numbers are inset from right edge (visible gap)293- no overlap between buttons and page numbers on ANY slide294- diagrams are centered and fit within the frame295- figures blend with background (no visible white boxes)296- dense tables are readable (check appendix slides especially)297- title slide elements are not crowded298299---300301### Stress Test302303Verify on:304305- appendix slides with Back buttons (button vs page number overlap)306- dense tables (overfull vbox warnings, readability)307- multi-figure slides (subfigure alignment)308- TikZ diagrams (overflow, centering)309- navigation-heavy slides (robustness checklist with many buttons)310- the title slide and appendix divider (plain frames have different spacing)311312---313314## Failure Modes to Avoid315316- overcrowded slides317- excessive bullets318- overuse of overlays319- edge-clipped elements (especially page numbers)320- diagram overflow (horizontal chain too wide for 16:9)321- figure/background color mismatch322- fragile spacing hacks (\hspace at box boundaries)323- button/page-number overlap324- broken hyperlinks between main deck and appendix325326---327328## Success Criteria329330A successful deck:331332- compiles cleanly with pdfLaTeX333- fits presentation time334- is easier to present than original335- looks clean and professional336- preserves academic rigor337- handles spacing robustly across ALL slides (including appendix with buttons)338- has no element flush against any slide edge339340---341342## Heuristic343344When in doubt:345346- simplify347- align348- add breathing room349- fix containers, not text350- optimize for live audience, not archive