/* 더로우노트 — 차분한 문서형. 외부 폰트 0, 이모지 0. */
:root{
  --c1:#1f3a5f;                       /* 본문 축 */
  --c2:#8a6d3b;                       /* 강조 축 */
  --ink:#1a1a1a;
  --muted:color-mix(in srgb, var(--ink) 55%, #fff);
  --line:color-mix(in srgb, var(--c1) 18%, #fff);
  --bg:#fff;
  --soft:color-mix(in srgb, var(--c1) 4%, #fff);
  --warn:color-mix(in srgb, var(--c2) 12%, #fff);
  --wrap:44rem;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font:400 17px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI","Apple SD Gothic Neo",
       "Noto Sans KR","Malgun Gothic",sans-serif;
  word-break:keep-all;overflow-wrap:break-word;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--c1)}
a:hover{color:var(--c2)}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 1.15rem}

/* 헤더 */
.site-head{border-bottom:1px solid var(--line);background:var(--soft)}
.site-head .wrap{display:flex;align-items:baseline;gap:.7rem;flex-wrap:wrap;padding-block:.9rem}
.site-title{font-size:1.22rem;font-weight:700;margin:0;letter-spacing:-.02em}
.site-title a{color:var(--c1);text-decoration:none}
.site-tag{font-size:.86rem;color:var(--muted);margin:0}
.nav{border-bottom:1px solid var(--line)}
.nav ul{display:flex;flex-wrap:wrap;gap:.15rem;list-style:none;margin:0;padding:.4rem 0}
.nav a{display:block;padding:.35rem .62rem;font-size:.93rem;text-decoration:none;border-radius:4px}
.nav a:hover{background:var(--soft)}

/* 본문 */
main{padding:1.6rem 0 2.6rem}
h1{font-size:1.62rem;line-height:1.35;margin:.2rem 0 .7rem;letter-spacing:-.02em}
h2{font-size:1.22rem;margin:2.1rem 0 .6rem;padding-bottom:.3rem;border-bottom:1px solid var(--line)}
h3{font-size:1.05rem;margin:1.5rem 0 .45rem}
p{margin:0 0 1rem}
ul,ol{margin:0 0 1rem;padding-left:1.35rem}
li{margin-bottom:.4rem}

/* 한 줄 답 */
.lead-answer{
  background:var(--soft);border-left:3px solid var(--c1);
  padding:.85rem 1rem;margin:0 0 1.4rem;border-radius:0 5px 5px 0;
}
.lead-answer p{margin:0;font-weight:600}

/* 표 — 가로스크롤은 표 안에서만(375px 대응) */
.table-wrap{overflow-x:auto;margin:0 0 1.2rem;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font-size:.94rem;min-width:min(100%,30rem)}
th,td{border:1px solid var(--line);padding:.5rem .6rem;text-align:left;vertical-align:top}
th{background:var(--soft);font-weight:600;white-space:nowrap}

/* 출처·확인일 */
.verified{font-size:.82rem;color:var(--muted);margin:-.5rem 0 1.3rem}
.disclaimer{
  font-size:.87rem;color:var(--muted);background:var(--soft);
  border:1px solid var(--line);border-radius:5px;padding:.75rem .9rem;margin:2rem 0 0;
}

/* §2-3 공적 무료 경로 — 광고보다 위 */
.public-routes{margin:2.2rem 0 0;border:1px solid var(--line);border-radius:6px;padding:1rem 1.1rem;background:var(--soft)}
.public-routes h2{margin:0 0 .3rem;border:0;padding:0;font-size:1.1rem}
.pr-lead{font-size:.86rem;color:var(--muted);margin:0 0 .7rem}
.pr-list{list-style:none;margin:0;padding:0}
.pr-list li{margin-bottom:.75rem;font-size:.95rem}
.pr-tel{display:inline-block;font-weight:700;color:var(--c2);margin-left:.3rem}
.pr-desc{display:block;font-size:.87rem;color:var(--muted);margin-top:.1rem}

/* §2-4 광고 블록 — 배경색으로 본문과 분리 */
.ad-block{margin:2rem 0 0;border:1px solid color-mix(in srgb,var(--c2) 32%,#fff);border-radius:6px;background:var(--warn);padding:.9rem 1rem}
.ad-badge{display:inline-block;margin:0 0 .5rem;padding:.1rem .5rem;font-size:.76rem;font-weight:700;color:#fff;background:var(--c2);border-radius:3px;letter-spacing:.02em}
.ad-link{margin:0 0 .55rem;font-size:1rem;font-weight:600}
.ad-disc{margin:0;font-size:.8rem;line-height:1.6;color:var(--muted)}

/* FAQ */
.faq{margin:2.1rem 0 0}
.faq details{border:1px solid var(--line);border-radius:5px;padding:.6rem .85rem;margin-bottom:.5rem}
.faq summary{cursor:pointer;font-weight:600;font-size:.97rem}
.faq details p{margin:.6rem 0 0;font-size:.95rem}

/* 관련 글 */
.related{margin:2.1rem 0 0}
.related ul{list-style:none;padding:0;margin:0}
.related li{border-bottom:1px solid var(--line);padding:.55rem 0}
.related a{text-decoration:none;font-weight:500}

/* 허브·목록 */
.hub-grid{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));margin:1.4rem 0}
.hub-card{border:1px solid var(--line);border-radius:6px;padding:.9rem 1rem}
.hub-card h2{margin:0 0 .3rem;border:0;padding:0;font-size:1.05rem}
.hub-card p{margin:0;font-size:.88rem;color:var(--muted)}
.hub-card a{text-decoration:none}
.post-list{list-style:none;padding:0;margin:1.2rem 0 0}
.post-list li{border-bottom:1px solid var(--line);padding:.7rem 0}
.post-list a{text-decoration:none;font-weight:600}
.post-list .excerpt{display:block;font-size:.88rem;color:var(--muted);margin-top:.2rem;font-weight:400}

/* 도구(§4-2) */
.tool{border:1px solid var(--line);border-radius:6px;padding:1rem;margin:1.4rem 0;background:var(--soft)}
.tool label{display:block;font-size:.9rem;font-weight:600;margin:.7rem 0 .25rem}
.tool select,.tool input{font:inherit;font-size:.95rem;padding:.4rem .5rem;border:1px solid var(--line);border-radius:4px;width:100%;max-width:20rem;background:#fff;color:var(--ink)}
.tool-out{margin-top:1rem;padding:.85rem 1rem;background:#fff;border:1px solid var(--line);border-radius:5px;min-height:2rem}
.tool-note{font-size:.83rem;color:var(--muted);margin:.6rem 0 0}
.stale-badge{background:var(--warn);border:1px solid var(--c2);border-radius:4px;padding:.5rem .7rem;font-size:.87rem;margin:0 0 1rem}

/* 푸터 */
.site-foot{border-top:1px solid var(--line);margin-top:2.6rem;padding:1.4rem 0;background:var(--soft);font-size:.87rem;color:var(--muted)}
.site-foot p{margin:0 0 .4rem}
.site-foot a{color:var(--c1)}

/* 검색 */
.search-form{display:flex;gap:.4rem;margin:1rem 0}
.search-form input[type=search]{flex:1;font:inherit;padding:.45rem .6rem;border:1px solid var(--line);border-radius:4px}
.search-form button{font:inherit;padding:.45rem .9rem;border:1px solid var(--c1);background:var(--c1);color:#fff;border-radius:4px;cursor:pointer}

.skip{position:absolute;left:-9999px}
.skip:focus{left:.5rem;top:.5rem;background:#fff;padding:.5rem;z-index:10}

@media (max-width:420px){
  body{font-size:16.5px}
  h1{font-size:1.42rem}
}
