:root { --paper:#f8f6f0; --ink:#333e36; --muted:#747b70; --green:#475e48; --line:#e1e3d8; --card:#fffef9; }
@media (prefers-color-scheme: dark) { :root { --paper:#141516; --ink:#e8e6df; --muted:#9aa196; --green:#9fbf9f; --line:#2b2e2b; --card:#1c1e1d; } }
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin:0; background:var(--paper); color:var(--ink); font-family: -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Pretendard", "Noto Sans KR", "Segoe UI", Roboto, sans-serif; line-height:1.7; font-size:16px; }
main { max-width: 720px; margin: 0 auto; padding: 32px 20px 64px; }
header { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-bottom:16px; border-bottom:1px solid var(--line); margin-bottom:28px; }
header a.brand { color:var(--ink); text-decoration:none; font-weight:600; }
header nav a { color:var(--green); text-decoration:none; margin-left:14px; font-size:14px; }
h1 { font-size:26px; line-height:1.3; margin:0 0 6px; }
h2 { font-size:18px; margin:32px 0 10px; }
p, li { margin:0 0 10px; }
ul { padding-left:20px; }
.meta { color:var(--muted); font-size:14px; margin-bottom:24px; }
.note { background:var(--card); border:1px solid var(--line); border-radius:13px; padding:14px 16px; }
a { color:var(--green); }
footer { color:var(--muted); font-size:13px; margin-top:48px; padding-top:16px; border-top:1px solid var(--line); }
table { border-collapse:collapse; width:100%; font-size:15px; }
th, td { text-align:left; vertical-align:top; padding:8px 6px; border-bottom:1px solid var(--line); }
th { color:var(--muted); font-weight:600; }
