:root{
  --bg:#f4f6f2; --surface:#ffffff; --ink:#17201a; --muted:#5b685e; --line:#d8dfd5; --accent:#2f8f4e;
  --sans:"IBM Plex Sans KR","Malgun Gothic",system-ui,sans-serif;
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){
  --bg:#111613; --surface:#18201b; --ink:#e3eae2; --muted:#93a196; --line:#2a352d; --accent:#5cc27d;
}}
:root[data-theme="dark"]{ --bg:#111613; --surface:#18201b; --ink:#e3eae2; --muted:#93a196; --line:#2a352d; --accent:#5cc27d; }
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 var(--sans)}
.wrap{max-width:760px;margin:0 auto;padding:32px 16px 64px}
nav{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;margin-bottom:28px}
nav a{color:var(--muted);text-decoration:none}
nav a:hover,nav a[aria-current]{color:var(--accent)}
a{color:var(--accent)}
a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
h1{font-size:28px;line-height:1.3;margin:0 0 6px;text-wrap:balance}
h2{font-size:19px;margin:32px 0 8px}
h3{font-size:16px;margin:20px 0 4px}
.meta{color:var(--muted);font-size:14px;margin:0 0 24px}
.lang{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:8px 22px 18px;margin:0 0 24px}
table{width:100%;border-collapse:collapse;font-size:14px}
.tbl{overflow-x:auto}
th,td{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left;vertical-align:top}
th{color:var(--muted);font-weight:600}
footer{color:var(--muted);font-size:13px;margin-top:40px}
