:root{
  --bg:#f7f3ea; --card:#fffdf7; --line:#e5dcc8; --ink:#3a3226; --sub:#8a7e68; --accent:#9c2b23;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font-family:'Noto Serif KR','Nanum Myeongjo','Apple SD Gothic Neo','Malgun Gothic',serif;line-height:1.8}
.wrap{max-width:760px;margin:0 auto;padding:24px 16px 64px}
header{text-align:center;margin:18px 0 22px}
header h1{font-size:24px;letter-spacing:4px;font-weight:700}
header h1 a{color:var(--ink);text-decoration:none}
header p{color:var(--sub);font-size:13px;margin-top:6px;letter-spacing:1px}
.topnav{display:flex;gap:8px;justify-content:flex-start;overflow-x:auto;padding:2px 2px 18px;scrollbar-width:none}
.topnav::-webkit-scrollbar{display:none}
.topnav a{flex:none;padding:8px 18px;border:1px solid var(--line);border-radius:22px;background:#fffdf7;color:var(--sub);text-decoration:none;font-size:14px;letter-spacing:1px;white-space:nowrap}
.topnav a:hover{border-color:#c9b88a;color:var(--ink)}
.topnav a.on{background:var(--ink);color:#fff;border-color:var(--ink)}
article{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:28px 26px;box-shadow:0 2px 10px rgba(120,100,60,.06)}
article h2{font-size:21px;margin:0 0 16px;letter-spacing:2px}
article h3{font-size:17px;margin:30px 0 10px;padding-left:12px;border-left:4px solid var(--accent);letter-spacing:1px}
article p{font-size:15px;color:#4a4234;margin-bottom:12px}
article ul{margin:0 0 12px 22px;font-size:15px;color:#4a4234}
article li{margin-bottom:6px}
article table{width:100%;border-collapse:collapse;font-size:14px;margin:12px 0 16px}
article th,article td{border:1px solid var(--line);padding:8px 10px;text-align:center}
article th{background:#f3ecd9;font-weight:700}
article b{color:var(--accent)}
.tip{background:#f7f0dd;border:1px solid #e8d9ab;border-radius:10px;padding:12px 16px;font-size:14px;margin:14px 0}
.cta{display:block;text-align:center;margin:26px 0 4px;padding:14px;background:var(--accent);color:#fff;text-decoration:none;border-radius:10px;font-size:16px;letter-spacing:3px}
.cta:hover{filter:brightness(1.08)}
.ad-slot{display:flex;justify-content:center;margin:20px 0}
.ad-slot:empty{display:none}
.site-footer{margin-top:30px;padding-top:18px;border-top:1px solid var(--line);text-align:center;font-size:13px;color:var(--sub);line-height:2}
.site-footer a{color:var(--sub)}
@media(max-width:560px){article{padding:20px 16px}header h1{font-size:20px}}
