:root {
  color-scheme: light dark;
  --text: #1c1c1e;
  --muted: #5c5c60;
  --bg: #ffffff;
  --link: #0a58ca;
  --rule: #d8d8dc;
}
@media (prefers-color-scheme: dark) {
  :root {
    --text: #f2f2f7;
    --muted: #a1a1a6;
    --bg: #111113;
    --link: #6ea8fe;
    --rule: #3a3a3c;
  }
}
* { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 17px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
main { max-width: 42rem; margin: 0 auto; padding: 2.5rem 1.25rem 4rem; }
h1 { font-size: 1.9rem; line-height: 1.25; margin: 0 0 .25rem; }
h2 { font-size: 1.2rem; margin: 2.25rem 0 .5rem; padding-top: 1rem; border-top: 1px solid var(--rule); }
p, li { margin: .4rem 0; }
ul { padding-left: 1.25rem; }
a { color: var(--link); }
.meta { color: var(--muted); margin-bottom: 1.5rem; }
footer { margin-top: 3rem; color: var(--muted); font-size: .9rem; }
.notice { border-left: 4px solid #d08c00; padding: .6rem .9rem; margin: 1rem 0 1.5rem; background: rgba(208, 140, 0, .08); }
.new { display: inline-block; font-size: .8rem; font-weight: 600; padding: .05rem .45rem; border-radius: .4rem; background: #d9f2e1; color: #145c2e; }
@media (prefers-color-scheme: dark) { .new { background: #1d4a2c; color: #c9f0d6; } }
.shots { display: flex; flex-wrap: wrap; gap: 1rem; margin: 1rem 0; }
figure { margin: 0; flex: 0 1 280px; }
figure img { display: block; width: 100%; max-width: 280px; height: auto; border: 1px solid var(--rule); border-radius: 14px; }
figcaption { color: var(--muted); font-size: .9rem; margin-top: .35rem; }
nav.toc ul { margin-top: .25rem; }
