:root{--ink:#1d2430;--muted:#5b6472;--line:#d9dee6;--bg:#fbfbf9;--accent:#1f5fa3;}
*{box-sizing:border-box}
html{font-size:17px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",system-ui,sans-serif;line-height:1.7}
main{max-width:44rem;margin:0 auto;padding:3.5rem 1.25rem 5rem}
header.site{max-width:44rem;margin:0 auto;padding:1.25rem 1.25rem 0;display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}
header.site a{color:var(--muted);text-decoration:none;font-size:.9rem}
header.site a:hover,header.site a:focus-visible{color:var(--accent);text-decoration:underline}
header.site nav a{margin-left:1.1rem}
h1{font-size:1.9rem;line-height:1.25;margin:0 0 .4rem;font-weight:700;letter-spacing:-.01em}
h2{font-size:1.15rem;margin:2.4rem 0 .6rem;padding-top:1.2rem;border-top:1px solid var(--line)}
p,li{margin:.35rem 0}
ul{padding-left:1.2rem}
.lead{color:var(--muted);margin-bottom:1.6rem}
.date{color:var(--muted);font-size:.9rem}
a{color:var(--accent)}
table{border-collapse:collapse;width:100%;font-size:.95rem;margin:.6rem 0}
th,td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}
th{color:var(--muted);font-weight:600;white-space:nowrap}
footer{max-width:44rem;margin:0 auto;padding:0 1.25rem 3rem;color:var(--muted);font-size:.85rem;border-top:1px solid var(--line)}
footer p{margin-top:1rem}
@media (max-width:480px){html{font-size:16px}h1{font-size:1.55rem}}
