# Cyanotype study / cobalt

Visual specification · e78fd397d9d7b5249c7e62ece09fddfd3f3d03a47692ede57cfcbbcd1547258f

- Art direction: Cyanotype study. Source logic: Engineering sheets and cyanotype contact prints. Graphic purpose: A constructed form with projection lines; every line describes the same geometry.
- No arbitrary mirrored copies, arbitrary rotations or unrelated motif mixing.
- Algorithm: random-design/2; rule fingerprint: 71caaea0f85d569c
- Reproduction: preserve this design JSON and use the matching release. Seed alone does not encode history-dependent candidate selection.
- Type: IBM Plex Mono / IBM Plex Sans; CJK: Noto Sans SC. Scale 1.221; tracking -0.027em; leading 1.671.
- Composition: frame; 8 columns; margins 4.907%; graphic on right; balance 0.427; rhythm alternating.
- Graphic: isometric; count 4; stroke 1.862; amplitude 0.215; rotation 0°. Use the exported SVG or reproduce its parameters.
- Surface: grid; radius 0px; depth flat.
- WCAG text/paper contrast: body 7.05:1; secondary 5.17:1; accent text 5.15:1. Use accentInk for text on paper, onAccent for text on accent. Accent2 is decorative, not a general text colour.

## Execution contract
Preserve supplied copy, facts and chart data. Do not randomize voice. Use semantic, responsive structure on the web; maintain one coherent theme across varied slide types. Keep text and data editable. Prioritize readable, complete content. A new seed or name alone does not constitute a new style. Explicitly selected themes may be reused. Fonts are referenced, not embedded; install them or agree on substitutes.

## Tokens

```css
:root{
  --paper:#0f3b98;
  --ink:#d0d9ea;
  --muted:#b2bbcb;
  --accent:#c5d2e9;
  --accent-ink:#9bbbf5;
  --accent2:#e6bd77;
  --panel:#98baf3;
  --panel-ink:#272d37;
  --rule:#adbbd5;
  --on-accent:#3d434d;
  --font-display:"IBM Plex Mono","Noto Sans SC",sans-serif;
  --font-body:"IBM Plex Sans","Noto Sans SC",sans-serif;
  --font-cjk:"Noto Sans SC";
  --type-scale:1.221;
  --tracking:-0.027em;
  --leading:1.671;
  --page-margin:4.907%;
  --radius:0px;
  --border:1px;
  --section-gap:104px;
}
```
