Design system
Tokens, components, and prose styles shared by every doc page in this knowledge base. Live examples below — open the source files to copy markup.
Brand palette
OPDA-inspired deep blue spine, with semantic colours for callouts.
#1a4d80
#0b2545
#4a90c2
#eef4f8
#f59e0b
Typography
System font stack with serif optional. Tight headings, relaxed body.
H1 · 36px
H2 · 24px
H3 · 20px
H4 · 18px
Body — 16px / 1.6 leading. Used for all paragraph copy.
Small — 14px / muted colour. Used for captions and meta.
Monospace for inline code and identifiers.
Callouts
Five semantic variants. Use sparingly.
Background context or aside.
Pull-quote-style emphasis on a load-bearing claim. Use one per page max.
Confirms a positive outcome or completed milestone.
Something the reader should be careful about.
Hard blocker or risk.
Pills & badges
Default Brand Info Success Warning Accent
Tables
| Column A | Column B | Column C |
|---|---|---|
| Cell 1 | Cell 2 | Cell 3 |
| Cell 4 | Cell 5 | Cell 6 |
Diagrams (mermaid)
Card grid
Using this in a page
Copy _template.html as a starting point. Each page provides only
the <article class="prose"> contents inside
<div id="app">; site.js wraps it with header and sidebar.
<script src="../ui/site.js"></script>
<script>OPDA.init({ page: 'page-id' });</script>
The page id matches one in the sidebar NAV array (in site.js)
and gets highlighted automatically.