:root{--글:#1a1a1a;--흐림:#595959;--선:#e2e2e2;--바탕:#fff;--주:#0b5cab;--주눌림:#084a8a}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",sans-serif;font-size:17px;line-height:1.7;color:var(--글);background:var(--바탕);word-break:keep-all;overflow-wrap:anywhere}
.wrap{max-width:680px;margin:0 auto;padding:0 20px}
a{color:var(--주)}
a:focus-visible{outline:3px solid #ffb300;outline-offset:2px}
.top{border-bottom:1px solid var(--선)}
.top a{display:inline-flex;align-items:center;min-height:48px;font-size:17px;font-weight:700;color:var(--글);text-decoration:none}
main.wrap{padding:24px 20px 64px}
h1{font-size:24px;line-height:1.35;margin:0 0 8px;letter-spacing:-.01em}
.when{font-size:13px;color:var(--흐림);margin:0 0 16px}
.lede{margin:0 0 24px;color:var(--흐림)}
.post>:first-child{margin-top:0}
.post h2{font-size:20px;line-height:1.35;margin:40px 0 12px}
.post h3{font-size:17px;line-height:1.35;margin:32px 0 8px}
.post p{margin:0 0 16px}
.post ul,.post ol{margin:0 0 16px;padding-left:20px}
.post li{margin:0 0 8px}
.hl{font-weight:600;color:var(--주)}
.fig{margin:0 0 16px;text-align:center}
.fig img{max-width:100%;height:auto;border-radius:8px;vertical-align:top}
.fig a{display:inline-block}
.fig.lead img{width:200px}
.fig.grid{display:flex;gap:8px;align-items:flex-start}
.fig.grid img{flex:1;min-width:0}
.fig figcaption{font-size:13px;color:var(--흐림);margin-top:8px}
.tbl{overflow-x:auto;margin:0 0 16px}
.tbl table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.5}
.tbl td,.tbl th{border:1px solid var(--선);padding:8px;text-align:center}
.post .btn-row{margin:0 0 12px}
.btn-row+:not(.btn-row){margin-top:24px}
.btn{display:flex;align-items:center;justify-content:center;min-height:52px;padding:12px 16px;border-radius:8px;background:var(--주);color:#fff;font-size:17px;font-weight:600;line-height:1.35;text-align:center;text-decoration:none}
.btn:hover,.btn:active{background:var(--주눌림)}
.ad{margin:48px 0;min-height:280px;text-align:center}
.ad-label{display:block;font-size:12px;color:#767676;margin-bottom:4px}
.ad ins.adsbygoogle{min-height:280px}
.ad:has(ins.adsbygoogle[data-ad-status="unfilled"]){display:none}
.src{margin-top:40px;font-size:15px}
.src h2{font-size:17px;margin:0 0 8px}
.src ul{margin:0;padding-left:20px}
.src li{margin:0 0 8px}
.more{margin-top:64px;padding-top:24px;border-top:1px solid var(--선)}
.more h2{font-size:17px;line-height:1.35;margin:0 0 8px}
.list{list-style:none;margin:0;padding:0}
.list a{display:flex;align-items:center;min-height:52px;padding:12px 0;border-bottom:1px solid var(--선);color:var(--글);line-height:1.5;text-decoration:none}
.list a:hover{color:var(--주)}
.tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.tags a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid var(--선);border-radius:8px;font-size:15px;color:var(--글);text-decoration:none}
.foot{border-top:1px solid var(--선);padding:16px 0 32px;font-size:15px;color:var(--흐림)}
.foot a{display:inline-flex;align-items:center;min-height:48px;margin-right:16px;color:var(--흐림)}
.foot p{margin:0}
