Creative North Star: “The Systems Paper”
System built like well-authored academic paper: typography does heavy lifting, structure immediately legible, nothing competes with argument. Recursive carries headings — weight 200-300, optical-size kerning, no decorative flourish. Newsreader handles body: optical-size serif reads like printed editorial at every size. Two fonts = entire visual identity. Color, spacing, component shape exist only to support them.
Color disciplined to single accent: Reference Blue (#0f62fe). Appears on links, citations, interactive states — never decoration. Rarity is point. Blue link in sea of black Newsreader text signals meaning like blue hyperlink in research PDF — precise, functional, expected.
System explicitly rejects: generic al-folio defaults (white pages, teal accents, uniform card grids), flashy portfolio theatrics (gradient heroes, scroll animations, floating elements), corporate/LinkedIn register (achievement bullets, navy-and-gold safety). Also rejects over-designed academic pages where visual novelty competes with research. Goal: site feels built by person who designed compartmentalization model, not someone who downloaded theme.
Key Characteristics:
One accent, two neutrals, two modes. Palette minimal by design — hiring committee reading publication list should focus on titles, not color choices.
Light mode:
Dark mode:
The Reference Rule. Reference Blue on interactive elements only. No colored section headings, no accent borders, no decorative usage. Eye lands on blue = link or citation. Diluting signal anywhere dilutes it everywhere.
Display/Heading Font: Recursive (with system-ui, sans-serif fallback) — variable font, MONO=0.5, CASL=0 Body Font: Newsreader (with Georgia, serif fallback) Label Font: Audiowide (email/contact only; signature element, not general-purpose label font)
Character: Recursive at MONO=0.5 sits halfway between geometric sans and monospace — letterforms carry faint terminal-manual quality without being literally code. Weight 300, CASL=0 (linear, not casual): reads as precise instrument. Newsreader weight 300 reads like well-printed journal article at every optical size. Pairing unusual: half-mono structural font framing humanist serif body. Signals author works at interface of systems and language.
The Weight Floor Rule. Recursive at weight 300 only for display and headings. Weight 400+ collapses contrast between headings and body. Emphasis within heading: use size, not weight.
The Optical Size Rule. Newsreader is optical-size font (opsz axis 6-72). Always load with font-optical-sizing: auto. Without it, body text looks too heavy, captions look wrong.
The Axis Lock Rule. Recursive must always set font-variation-settings: "MONO" 0.5, "CASL" 0, "slnt" 0. MONO=0 default = pure sans = loses distinctive character, reads generic grotesque.
System is flat. No shadow vocabulary. Depth via typographic hierarchy and thin dividers (border-top: 1px solid var(--global-divider-color)), not z-axis theater. Publication entry distinguished from neighbors by whitespace, not card shadow.
Dark mode surface layers (cards, inline blocks) use tonal step — #212529 on #1c1c1d — not shadow. Separation structural, not decorative.
The Flat-By-Default Rule. Surfaces flat at rest. No hover shadows, no float effects. Element needs interactivity signal: use color (Reference Blue) or underline, not elevation. Link that grows shadow on hover is wrong answer.
Thin, fixed top bar. Links in Recursive weight 300 (title scale). Default: Ink Black / Light Grey (dark). Active/current: Reference Blue. Hover: Reference Blue. No background fill change on hover — color shift is signal.
Body text in Newsreader. Link color: Reference Blue. Hover: Reference Blue + underline. No other treatment. Underline on hover (not default) keeps reading flow clean, confirms link on intent.
Primary content unit. Not card — no border, no background fill, no shadow. Structured row: title in Recursive (title weight 300), authors in Newsreader weight 300, venue/year in Mid Grey. Internal padding: 12px top/bottom, 0 horizontal — page left margin is frame. Distinguished from neighbors by thin horizontal divider.
The Anti-Card Rule. Publication lists, project lists, news items are not cards. Structured text. No border-radius, no background tint, no box-shadow. 1px top divider only permitted separator. Card UI on publication entries = most visible sign of generic template — prohibited.
Current implementation uses border-left: 5px solid var(--global-theme-color). Side-stripe pattern — see Do’s and Don’ts. Target: replace with Reference Blue background tint at 5% opacity + 1px full border, or indentation + italic without border.
Circular image, right-aligned. Email in Audiowide — one place that font appears. Deliberate signature; resist expanding Audiowide to other label contexts.
Light mode: white background, black text. Dark mode: black background, white text. No tint, no decorative radius. Spareness correct — systems researcher’s site; code looks like code, not designed component.
font-variation-settings: "MONO" 0.5, "CASL" 0, "slnt" 0 for headings only. Contrast with Newsreader body is system’s core visual move.var(--global-divider-color)) to separate list entries. Structure via spacing and line, not card borders.font-optical-sizing: auto on Newsreader at every size. Font designed for it.border-left greater than 1px as colored accent stripe on any element. Not blockquotes, not publication entries, not callouts. Most recognizable al-folio default, generic pattern. Replace with background tints or full borders.background-clip: text with gradient). Single solid color only.border-radius + box-shadow + background-color on list entries. Publications are not products.font-variation-settings: "MONO" 0.5, "CASL" 0. At MONO=0, indistinguishable from generic geometric sans, loses all character.