/* One stylesheet, twenty rules. System font, black on white, nothing else. */

body {
  max-width: 42rem;
  margin: 2rem auto;
  padding: 0 1rem;
  font: 17px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  color: #111;
}

a { color: #00e; }

h1 { font-size: 1.5rem; margin: 0 0 1rem; }
h2 { font-size: 1.15rem; margin: 2rem 0 0.4rem; }
h3 { font-size: 1.05rem; margin: 1.5rem 0 0.2rem; }
h4 { font-size: 0.95rem; margin: 1rem 0 0.2rem; }

p, ul, ol, table, figure, blockquote { margin: 0 0 0.8rem; }
ul { padding-left: 1.2rem; }
ul.connections { list-style: none; padding-left: 0; }
.meta { color: #555; font-size: 0.9rem; }

header { margin-bottom: 2.5rem; }
nav a { margin-right: 1rem; }
nav .current { color: #111; text-decoration: none; }

img { max-width: 100%; height: auto; }
figure img { max-width: min(24rem, 100%); }
figcaption { font-size: 0.85rem; color: #555; }

table { border-collapse: collapse; display: block; overflow-x: auto; }
th, td { text-align: left; vertical-align: top; padding: 0.2rem 0.8rem 0.2rem 0;
         border-bottom: 1px solid #ddd; }

blockquote { padding-left: 0.7rem; border-left: 2px solid #ddd; color: #555;
             font-size: 0.9rem; }

footer { border-top: 1px solid #ddd; margin-top: 3rem; padding-top: 0.8rem;
         font-size: 0.9rem; color: #555; }
