:root { --bg:#000; --fg:#fff; --dim:rgba(255,255,255,.55); --dimmer:rgba(255,255,255,.35); --line:rgba(255,255,255,.14); --mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace; }
* { margin:0; padding:0; box-sizing:border-box; }
body { background:var(--bg); color:var(--fg); font-family:var(--mono); -webkit-font-smoothing:antialiased; }
main { max-width:720px; margin:0 auto; padding:80px 24px 120px; }
a { color:var(--fg); }
.back { display:inline-block; margin-bottom:60px; font-size:11px; letter-spacing:.25em; color:var(--dim); text-decoration:none; }
.back:hover { color:var(--fg); }
h1 { font-size:20px; font-weight:600; letter-spacing:.3em; margin-bottom:8px; }
.date { font-size:11px; color:var(--dimmer); margin-bottom:50px; }
h2 { font-size:12px; font-weight:600; letter-spacing:.35em; margin:44px 0 14px; color:var(--dim); }
h2::before { content:"— "; color:var(--dimmer); }
p, li { font-size:12.5px; line-height:1.9; color:var(--dim); }
p b { color:var(--fg); font-weight:600; }
ul { list-style:none; }
li::before { content:"·  "; color:var(--dimmer); }
.todo { border:1px solid #b58900; color:#b58900; padding:14px 16px; font-size:12px; line-height:1.8; margin:20px 0; }
footer {
  margin-top: 120px; border-top: 1px solid var(--line);
  padding: 34px 24px 44px;
  display: flex; flex-wrap: wrap; gap: 14px 28px; justify-content: center;
  font-size: 11px; letter-spacing: .1em; color: var(--dimmer);
}
footer a { text-decoration: none; color: var(--dim); }
footer a:hover { color: var(--fg); }
footer { align-items: center; }
footer .foot-logo img { display: block; height: 34px; width: 34px; opacity: .8; }
footer .foot-logo:hover img { opacity: 1; }
