The iA Writer layer. iA Writer is Markdown only, so a template gets headings, body text, bold, italic, tables, footnotes and one quoting construct and nothing else — and this file is what maps that vocabulary onto typeset.css. It adds no typography of its own; the page, and anything the letter wants for itself, live in letter/page.css.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25@font-face {
26 font-family: "EB Garamond";
27 src: url("fonts/EB-Garamond/EBGaramond-Regular.otf") format("opentype");
28 font-weight: 400;
29 font-style: normal;
30}
31@font-face {
32 font-family: "EB Garamond";
33 src: url("fonts/EB-Garamond/EBGaramond-Italic.otf") format("opentype");
34 font-weight: 400;
35 font-style: italic;
36}
37@font-face {
38 font-family: "EB Garamond";
39 src: url("fonts/EB-Garamond/EBGaramond-SemiBold.otf") format("opentype");
40 font-weight: 600;
41 font-style: normal;
42}
43@font-face {
44 font-family: "EB Garamond";
45 src: url("fonts/EB-Garamond/EBGaramond-SemiBoldItalic.otf") format("opentype");
46 font-weight: 600;
47 font-style: italic;
48}
49
50@font-face {
51 font-family: "Source Sans 3";
52 src: url("fonts/Source-Sans-3/SourceSans3-300.ttf") format("truetype");
53 font-weight: 300;
54 font-style: normal;
55}
56@font-face {
57 font-family: "Source Sans 3";
58 src: url("fonts/Source-Sans-3/SourceSans3-400.ttf") format("truetype");
59 font-weight: 400;
60 font-style: normal;
61}
62@font-face {
63 font-family: "Source Sans 3";
64 src: url("fonts/Source-Sans-3/SourceSans3-400Italic.ttf") format("truetype");
65 font-weight: 400;
66 font-style: italic;
67}
68@font-face {
69 font-family: "Source Sans 3";
70 src: url("fonts/Source-Sans-3/SourceSans3-600.ttf") format("truetype");
71 font-weight: 600;
72 font-style: normal;
73}
74@font-face {
75 font-family: "Source Sans 3";
76 src: url("fonts/Source-Sans-3/SourceSans3-600Italic.ttf") format("truetype");
77 font-weight: 600;
78 font-style: italic;
79}
80@font-face {
81 font-family: "Source Sans 3";
82 src: url("fonts/Source-Sans-3/SourceSans3-700.ttf") format("truetype");
83 font-weight: 700;
84 font-style: normal;
85}
86
87@font-face {
88 font-family: "IBM Plex Mono";
89 src: url("fonts/IBM-Plex-Mono/IBMPlexMono-400.ttf") format("truetype");
90 font-weight: 400;
91 font-style: normal;
92}
93@font-face {
94 font-family: "IBM Plex Mono";
95 src: url("fonts/IBM-Plex-Mono/IBMPlexMono-400Italic.ttf") format("truetype");
96 font-weight: 400;
97 font-style: italic;
98}
99@font-face {
100 font-family: "IBM Plex Mono";
101 src: url("fonts/IBM-Plex-Mono/IBMPlexMono-600.ttf") format("truetype");
102 font-weight: 600;
103 font-style: normal;
104}
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132@media screen {
133 body.typeset {
134 margin: 0;
135 padding: 0;
136 }
137}
138
139
140
141
142
143
144
145
146
147
148@media screen {
149 html {
150 color: #1a1a1a;
151 background-color: #fffefb;
152 }
153}
154
155
156
157@media screen {
158 html.night-mode {
159 color: #d8d4cd;
160 background-color: #1c1c1e;
161 }
162 html.night-mode body.typeset {
163 --ts-ink: #d8d4cd;
164 --ts-ink-muted: #9a958d;
165 --ts-ink-faint: #6f6a64;
166 --ts-rule: #3a3a3c;
167 --ts-rule-strong: #6f6a64;
168 --ts-wash: #2a2a2c;
169 --ts-accent: #d98a8a;
170 }
171}
172
173
174
175
176
177
178
179
180
181
182
183
184
185.typeset sup > a.footnote {
186 font-variant-numeric: lining-nums;
187 text-decoration: none;
188 color: var(--ts-accent);
189}
190
191
192
193
194
195.typeset .footnotes {
196 text-align: left;
197 margin-top: calc(var(--ts-space) * 2);
198 padding-top: var(--ts-space);
199 border-top: 0.5pt solid var(--ts-rule);
200 font-size: var(--ts-sm);
201 line-height: 1.4;
202}
203.typeset .footnotes > hr { display: none; }
204.typeset .footnotes ol { padding-left: 1.8em; }
205.typeset .footnotes li { margin-bottom: 0.4em; }
206.typeset .footnotes li > p {
207 margin: 0;
208 text-indent: 0;
209}
210
211
212@media print {
213 .typeset a.reversefootnote { display: none; }
214}
215
216
217
218
219.typeset a.citation {
220 text-decoration: none;
221 color: var(--ts-accent);
222 font-variant-numeric: lining-nums;
223}
224
225
226
227
228
229
230.typeset li.task-list-item::before { content: none; }
231.typeset .task-list-item-checkbox {
232 -webkit-appearance: none;
233 appearance: none;
234 float: left;
235 width: 0.66em;
236 height: 0.66em;
237 margin: 0.24em 0 0 -1.4em;
238 padding: 0;
239 border: 0.5pt solid var(--ts-rule-strong);
240 background: none;
241}
242.typeset .task-list-item-checkbox:checked {
243 border-color: var(--ts-ink-muted);
244 background: var(--ts-ink-muted);
245 box-shadow: inset 0 0 0 0.75pt #fffefb;
246}
247
248
249
250
251
252
253.typeset th[style*="right"],
254.typeset td[style*="right"] {
255 font-variant-numeric: lining-nums tabular-nums;
256}
257
258
259
260
261
262
263
264
265
266
267
268.typeset hr + p { text-indent: 0; }
269
270
271
272