:root{ --ink:#0f172a; --sub:#475569; --line:#e2e8f0; --pri:#4f46e5; }
*{ box-sizing:border-box } html,body{ margin:0 }
body{ font-family:-apple-system,system-ui,'Apple SD Gothic Neo',sans-serif; color:var(--ink); background:#fff; line-height:1.7; }
.wrap{ max-width:760px; margin:0 auto; padding:0 20px; }
header{ display:flex; align-items:center; gap:9px; padding:20px 0; border-bottom:1px solid var(--line); }
.brand{ font-weight:800; font-size:18px; letter-spacing:-.02em; text-decoration:none; color:var(--ink); display:flex; align-items:center; gap:9px; }
.brand .d{ color:var(--pri); } .logo{ width:24px; height:24px; }
nav.top{ margin-left:auto; font-size:14px; } nav.top a{ color:var(--sub); text-decoration:none; margin-left:16px; }
article{ padding:28px 0 10px; }
h1{ font-size:26px; letter-spacing:-.02em; margin:0 0 6px; }
.meta{ color:var(--sub); font-size:13px; margin:0 0 24px; }
h2{ font-size:17px; margin:26px 0 8px; }
p,li{ color:#334155; font-size:14.5px; } ul{ padding-left:20px; } li{ margin:4px 0; }
a{ color:var(--pri); }
.note{ background:#f8fafc; border:1px solid var(--line); border-radius:12px; padding:14px 16px; font-size:13.5px; color:var(--sub); margin:8px 0; }
.todo{ color:#b45309; background:#fffbeb; padding:0 4px; border-radius:4px; font-size:13px; }
footer{ border-top:1px solid var(--line); margin-top:30px; padding:20px 0 50px; font-size:13px; color:var(--sub); text-align:center; }
footer a{ color:var(--sub); }
