:root { --bg:#0c0c0e; --ink:#ececee; --mid:#8a8a90; --line:#232327; --accent:#f573e0; }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Noto Sans JP",sans-serif;
  line-height:1.85; -webkit-font-smoothing:antialiased; }
main { max-width:680px; margin:0 auto; padding:72px 24px 96px; }
.mark { font-size:34px; font-weight:700; letter-spacing:0.04em; }
.lead { color:var(--mid); margin-top:4px; }
h2 { font-size:13px; letter-spacing:0.14em; color:var(--mid); margin:44px 0 12px; padding-top:24px; border-top:1px solid var(--line); }
h2::before { content:""; display:inline-block; width:3px; height:11px; background:var(--accent); margin-right:10px; border-radius:1px; }
p, li { font-size:15px; }
ul { padding-left:1.2em; }
a { color:var(--accent); }
code { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:13px; color:var(--mid); }
.en { color:var(--mid); font-size:14px; }
footer { margin-top:64px; padding-top:24px; border-top:1px solid var(--line); color:var(--mid); font-size:13px; }
