:root{--ink:#1f2933;--sub:#5b6773;--line:#e4e7eb;--bg:#f7f8fa;--acc:#1d6fd8;--card:#fff}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.9 'Pretendard Variable',Pretendard,system-ui,-apple-system,'Apple SD Gothic Neo','Noto Sans KR',sans-serif;letter-spacing:-0.01em;word-break:keep-all;overflow-wrap:break-word}
a{color:var(--acc)}
img{max-width:100%;height:auto}
.top{background:#fff;border-bottom:1px solid var(--line)}
.top .in{max-width:1080px;margin:0 auto;padding:14px 16px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}
.brand{font-weight:900;font-size:21px;color:var(--ink);text-decoration:none}
.nav{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14.5px}
.nav a{color:var(--sub);text-decoration:none}.nav a:hover{color:var(--acc)}
.wrap{max-width:1080px;margin:0 auto;padding:22px 16px 40px}
.post{max-width:760px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px 28px 30px}
@media(max-width:600px){.post{padding:18px 16px 22px;border-radius:0;border-left:0;border-right:0;margin:0 -16px}}
.post h1{font-size:clamp(25px,4.8vw,33px);line-height:1.38;margin:4px 0 10px;letter-spacing:-0.02em}
.meta{font-size:14.5px;color:var(--sub);margin-bottom:16px}
.meta a{color:var(--sub)}
.hero{margin:0 0 18px;border-radius:10px;overflow:hidden;background:var(--bg)}
.hero img{display:block;width:100%}
.body h2{font-size:24px;line-height:1.45;margin:46px 0 16px;padding-top:6px;letter-spacing:-0.02em}
.body h3{font-size:20px;margin:32px 0 10px}
.body p{margin:0 0 24px}
.body li{margin:0 0 8px}
.body ul,.body ol{margin:0 0 24px;padding-left:1.4em}
.body table{border-collapse:collapse;width:100%;font-size:15px;margin:10px 0 18px;display:block;overflow-x:auto}
.body th,.body td{border:1px solid var(--line);padding:8px 10px}
.body th{background:var(--bg)}
.ad{margin:24px 0;text-align:center;min-height:90px}
.ad:has(ins[data-ad-status="unfilled"]){display:none}
.rel{max-width:760px;margin:26px auto 0}
.rel h2{font-size:18px;margin:0 0 10px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit}
.card:hover{border-color:var(--acc)}
.card .th{aspect-ratio:16/9;background:var(--bg);overflow:hidden}
.card .th img{width:100%;height:100%;object-fit:cover;display:block}
.card .tx{padding:10px 12px 12px}
.card b{display:block;font-size:15.5px;line-height:1.45}
.card small{display:block;color:var(--sub);font-size:12.5px;margin-top:4px}
.card p{margin:6px 0 0;font-size:13.5px;color:var(--sub);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ph{margin:0 0 16px}.ph h1{font-size:24px;margin:0}.ph p{margin:4px 0 0;color:var(--sub)}
.pager{display:flex;justify-content:center;gap:6px;margin:26px 0 0;flex-wrap:wrap}
.pager a,.pager span{min-width:38px;text-align:center;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;text-decoration:none;color:var(--ink);font-size:14px}
.pager span{background:var(--ink);color:#fff;border-color:var(--ink)}
.foot{text-align:center;color:var(--sub);font-size:13px;padding:28px 16px 40px}