/* 주소나라 — 키위 단면 테마 · 단일 컬럼 1080px
   연두빛 크림 바탕, 짙은 녹색 히어로·푸터, 키위 그린 번호 원, 껍질 갈색 테두리, 골드키위 뱃지. 제목은 Do Hyeon */
:root{
  --bg:#F6F8EC; --paper:#FFFFFF; --ink:#1E1E1A; --text:#3D4734; --muted:#4A5540; --soft:#5E6B4E; --line:#DCE6CF; --line2:#C9D9AE;
  --dark:#2E4A1E; --kiwi:#7BB342; --kiwi2:#A6D46A; --skin:#8B6B3D; --gold:#F2C94C; --deep:#5E8F2A;
  --hd:'Do Hyeon','Noto Sans KR',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.kn-body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Sans KR',system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.75;word-break:keep-all;overflow-wrap:anywhere}
a{color:var(--dark);text-decoration:none}
a:hover{color:var(--deep)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.qskip{position:absolute;left:-9999px}.qskip:focus{left:12px;top:12px;z-index:99;background:var(--dark);color:#fff;padding:8px 14px;border-radius:999px}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* 헤더 */
.qtop{position:sticky;top:0;z-index:50;background:#fff;border-bottom:3px solid var(--kiwi)}
.qtop-in{min-height:64px;display:flex;align-items:center;flex-wrap:wrap;gap:8px 28px}
.qbrand{display:flex;align-items:center;gap:10px;font-family:var(--hd);font-size:27px;color:var(--dark)}
.qbrand img{width:150px;height:auto}
.qnav{margin-left:auto;display:flex;flex-wrap:wrap;gap:4px 22px;font-size:15px;font-weight:500}
.qnav a{padding:8px 0;color:var(--ink);border-bottom:2px solid transparent}
.qnav a:hover{color:var(--deep);border-color:var(--kiwi)}
.qnav .qhi{color:var(--deep);font-weight:700}
.qmbtn{display:none;margin-left:auto;background:var(--bg);color:var(--dark);border:1px solid var(--line2);border-radius:12px;width:44px;height:44px;font-size:20px;cursor:pointer}

/* 히어로 */
.qhero{background:var(--dark);color:var(--bg);overflow:hidden}
.qhero-in{display:flex;flex-wrap:wrap;gap:32px 48px;align-items:center;padding-top:56px;padding-bottom:72px}
.qhero-main{flex:999 1 500px;min-width:0}
.qbadge{display:inline-block;margin:0 0 14px;background:var(--gold);color:var(--ink);font-size:13px;font-weight:700;padding:3px 14px;border-radius:999px}
.qhero h1{margin:0 0 16px;font-family:var(--hd);font-weight:400;font-size:60px;line-height:1.15}
.qhero h1 span{color:var(--kiwi2)}
.qhsub{margin:0 0 26px;max-width:540px;font-size:17px;color:#DCE6CF}
.qhsub b{color:#fff}
.qsearch{display:flex;max-width:540px;background:#fff;border-radius:999px;padding:6px}
.qsearch input{flex:1;min-width:0;border:0;outline:none;background:none;padding:10px 18px;font:inherit;color:var(--ink)}
.qsearch button{flex:none;background:var(--kiwi);color:var(--ink);border:0;border-radius:999px;padding:0 26px;min-height:46px;font:inherit;font-weight:700;cursor:pointer}
.qsearch button:hover{background:var(--kiwi2)}
.qhero-art{flex:1 1 280px;max-width:340px;margin:0 auto}
.qslice{display:block;width:100%;height:auto}

/* 세 묶음 */
.qmain{padding-bottom:64px}
.qtrio{margin-top:-32px;position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.qtrio a{display:block;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 20px;box-shadow:0 3px 0 var(--line2);color:var(--ink)}
.qtrio a:hover{border-color:var(--kiwi)}
.qtrio .r{font-size:12px;font-weight:700;color:var(--soft)}
.qtrio b{display:block;font-family:var(--hd);font-weight:400;font-size:26px;color:var(--dark)}
.qtrio .w{font-size:14px;color:var(--soft)}
.qhero-img{margin:28px 0 0;width:100%;border-radius:20px}

/* 소개 */
.qintro{padding-top:48px}
.qintro>p{margin:0 0 16px;color:var(--text);max-width:820px}
.qsteps{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;counter-reset:st}
.qsteps li{counter-increment:st;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px 14px 60px;position:relative}
.qsteps li::before{content:counter(st);position:absolute;left:14px;top:14px;width:34px;height:34px;border-radius:50%;background:var(--kiwi);box-shadow:inset 0 0 0 3px var(--skin);display:flex;align-items:center;justify-content:center;font-family:var(--hd);font-size:18px;color:var(--ink)}
.qsteps b{display:block;font-size:16px}
.qsteps span{font-size:14px;color:var(--muted)}
.qintro-n{font-size:14px;color:var(--muted)!important}
.qintro-n a{font-weight:700;border-bottom:1px solid currentColor}
.qnohit{margin:24px 0 0;padding:14px 18px;background:#fff;border:1px dashed var(--kiwi);border-radius:14px;font-weight:700}

/* 키워드 뜻 */
.qwords{padding-top:56px}
.qwgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.qword{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px 22px;box-shadow:0 3px 0 var(--line2)}
.qword h3{margin:0 0 8px;font-size:17px;line-height:1.45}
.qword h3 .kw{font-family:var(--hd);font-weight:400;font-size:24px;color:var(--deep)}
.qword p{margin:0 0 10px;color:var(--text);font-size:15px}
.qword .use{margin:0;padding-top:10px;border-top:1px dashed var(--line2);font-size:14px;color:var(--muted)}
.qword .use b{color:var(--dark)}
.qword .use a{display:inline-block;margin-left:4px;font-weight:700;color:var(--deep);border-bottom:1px solid currentColor}
.qwpick-h{margin:24px 0 10px;font-size:18px}
.qwpick{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.qwpick li{background:#E4F0D2;border-radius:16px;padding:14px 16px}
.qwpick b{display:block;color:var(--dark)}
.qwpick span{font-size:14px;color:var(--muted)}
@media (max-width:640px){.qwgrid,.qwpick{grid-template-columns:1fr}.qword{padding:16px 18px}}

/* 묶음·번호표 줄 */
.qgroup{padding-top:56px}
.qrange{margin:0;font-size:13px;font-weight:700;color:var(--soft);letter-spacing:1px}
.qsec{margin:0 0 12px;font-family:var(--hd);font-weight:400;font-size:32px;line-height:1.3;color:var(--ink)}
.qsec.big{font-size:36px;margin:2px 0 6px}
.qsec .kw{color:var(--deep)}
.qlead{margin:0 0 16px;color:var(--muted);max-width:760px}
.qlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.qrow details{background:#fff;border:1px solid var(--line);border-radius:18px}
.qrow details[open]{border-color:var(--kiwi)}
.qrow summary{cursor:pointer;list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:14px 20px;min-height:44px}
.qrow summary::-webkit-details-marker{display:none}
.qrow .no{flex:none;width:54px;height:54px;border-radius:50%;background:var(--kiwi);box-shadow:inset 0 0 0 4px var(--skin);display:flex;align-items:center;justify-content:center;font-family:var(--hd);font-size:24px;color:var(--ink)}
.qrow .nm{flex:0 1 200px;min-width:0}
.qrow .nm h3{margin:0;font-family:var(--hd);font-weight:400;font-size:22px;line-height:1.3}
.qrow .nm span{font-size:13px;color:var(--soft)}
.qrow .chips{flex:999 1 360px;min-width:0;display:flex;flex-wrap:wrap;gap:6px 8px}
.qrow .chips a{display:inline-flex;gap:6px;align-items:baseline;background:var(--bg);border:1px solid var(--line2);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:700;min-height:36px;color:var(--ink)}
.qrow .chips a:hover{border-color:var(--kiwi);color:var(--deep)}
.qrow .chips a span{font-size:11px;font-weight:400;color:var(--soft)}
.qrow .more{flex:none;font-size:13px;font-weight:700;color:var(--deep)}
.qrow details[open] .more{color:var(--soft)}
.qrow-b{padding:0 20px 16px 92px}
.qrow-b ul{list-style:none;margin:0;padding:10px 0 0;border-top:1px dashed var(--line2);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px}
.qrow-b li{display:flex;gap:8px;align-items:baseline;padding:4px 0;min-width:0}
.qrow-b li a{font-weight:700;white-space:nowrap}
.qrow-b li span{font-size:12px;color:var(--soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qrow-how{margin:10px 0 4px;font-size:14px;color:var(--muted)}
.qrow-go{display:inline-block;font-size:14px;font-weight:700;color:var(--deep)}

/* 블록 공통 */
.qblock{padding-top:56px}
.qhead2{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:14px}
.qhead2 .qsec{margin:0}
.qmore{margin-left:auto;font-weight:700;font-size:14px}
.qmini{font-size:13px;color:var(--soft)}
.qsub{margin:16px 0 8px;font-weight:700;font-size:14px;color:var(--muted)}
.qempty{color:var(--muted)}

/* 최신주소 확인 */
.qcheck-w{margin-top:56px;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:24px;display:flex;flex-wrap:wrap;gap:24px 36px;align-items:flex-start}
.qcheck-h{flex:1 1 260px}
.qcheck-h .qsec{margin-bottom:8px}
.qcheck-h p{margin:0;color:var(--muted)}
.qcheck{flex:999 1 520px;min-width:0}
.qcheck h3{margin:0 0 6px;font-size:18px}
.qcheck p{margin:0 0 14px;color:var(--muted)}
.qstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;text-align:center;font-size:13px}
.qstats div{background:#E4F0D2;border-radius:14px;padding:10px}
.qstats div b{display:block;font-family:var(--hd);font-weight:400;font-size:26px;color:var(--dark)}
.qstats .s2{background:#FBF0CC}.qstats .s2 b{color:#6B5310}
.qstats .s2+.s2{background:#EFEAE0}.qstats .s2+.s2 b{color:#5C4728}
.qstats .s3{background:#F6E1DC}.qstats .s3 b{color:#8A2E1E}
.qhist{list-style:none;margin:12px 0 0;padding:10px 0 0;border-top:1px dashed var(--line2);font-size:13px;color:var(--muted)}
.qhist li{padding:2px 0}
.qcheck-n{margin:12px 0 0!important;font-size:13px;color:var(--soft)!important}
.qcheck-n a{font-weight:700;color:var(--deep)}
.qpage .qcheck{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 22px}

/* 새 글 날짜 카드 */
.qdates{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.qdates a{display:flex;gap:14px;align-items:flex-start;height:100%;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;color:var(--ink)}
.qdates a:hover{border-color:var(--kiwi)}
.qdates time{flex:none;width:48px;text-align:center;border-radius:12px;background:var(--bg);padding:6px 0;line-height:1.2}
.qdates time b{display:block;font-family:var(--hd);font-weight:400;font-size:22px;color:var(--dark)}
.qdates time span{font-size:11px;color:var(--soft)}
.qdates .tx{min-width:0}
.qdates .pc{font-size:12px;font-weight:700;color:var(--deep)}
.qdates .tx b{display:block;font-size:16px;line-height:1.45}

/* 카드형 새 글(목록) */
.qposts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.qposts a{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;color:var(--ink)}
.qposts a:hover{border-color:var(--kiwi)}
.qposts .pc{font-size:12px;font-weight:700;color:var(--deep)}
.qposts b{display:block;margin:6px 0;font-size:17px;line-height:1.45}
.qposts .ex{font-size:14px;color:var(--muted);flex:1}
.qposts .meta{margin-top:10px;font-size:12px;color:var(--soft)}

/* 가이드 */
.qgcards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.qgcards a{display:flex;flex-direction:column;gap:6px;height:100%;background:var(--dark);color:var(--bg);border-radius:16px;padding:16px}
.qgcards a:hover{background:#3A5C27;color:#fff}
.qgcards .no{font-family:var(--hd);font-size:28px;color:var(--kiwi2)}
.qgcards b{font-size:15px;line-height:1.45}
.qguides{list-style:none;margin:0;padding:0}
.qguides li{border-bottom:1px dashed var(--line2)}
.qguides a{display:flex;gap:16px;align-items:baseline;padding:12px 0;color:var(--ink)}
.qguides .no{flex:none;min-width:34px;font-family:var(--hd);font-size:24px;color:var(--deep)}
.qguides .ex{font-size:14px;color:var(--muted)}

/* 급상승 */
.trends{background:#fff;border:1px solid var(--line);border-radius:16px;padding:8px 24px 12px}
.trends .thead{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;justify-content:space-between;padding:6px 0 8px;border-bottom:1px dashed var(--line2)}
.trends .live{font-size:12px;color:var(--soft)}
.trends .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--kiwi);margin-right:6px}
.trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px}
.trend-grid a{display:flex;gap:12px;padding:9px 0;border-bottom:1px dashed var(--line);min-width:0;color:var(--ink)}
.trend-grid .rk{width:24px;font-family:var(--hd);font-size:18px;color:var(--soft)}.trend-grid .rk.top{color:var(--deep)}
.trend-grid .kw{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lead{color:var(--muted)}

/* FAQ */
.qfaq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 18px;margin-bottom:8px}
.qfaq summary{cursor:pointer;padding:14px 0;font-weight:700;list-style:none}
.qfaq summary::-webkit-details-marker{display:none}
.qfaq .q{color:var(--deep)}
.qfaq .a{padding:0 0 14px;color:var(--text)}
.qfaq .a a,.qprose a,.qbox a,.qhome a,.qlead a,.qstat a{color:var(--deep);font-weight:700;border-bottom:1px solid currentColor}

/* 분야·글·페이지 */
.qpage{padding-top:4px}
.qcrumb{padding:16px 0 0;font-size:13px;color:var(--soft)}
.qcrumb a{color:var(--muted)}
.qphead{padding:20px 0 26px;border-bottom:3px solid var(--kiwi)}
.qphead h1{margin:10px 0;font-family:var(--hd);font-weight:400;font-size:44px;line-height:1.25}
.qtag{display:inline-block;font-size:13px;font-weight:700;background:var(--dark);color:#fff;border-radius:999px;padding:3px 14px}
.qstat{margin:0;font-size:14px;color:var(--muted)}
.qdate{margin:0;font-size:13px;color:var(--soft)}
.qhowto{margin:0 0 14px;background:#E4F0D2;border-radius:14px;padding:10px 16px;font-size:14px}
.qhowto b{margin-right:4px;color:var(--dark)}
.qrows{list-style:none;margin:0;padding:6px 20px;background:#fff;border:1px solid var(--line);border-radius:18px}
.qrows li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:12px 0;border-bottom:1px dashed var(--line)}
.qrows li:last-child{border-bottom:0}
.qrows li>a{min-width:0;color:var(--ink)}
.qrows li>a:hover b{color:var(--deep)}
.qrows b{font-size:16px}
.qrows em{font-style:normal;font-size:11px;font-weight:700;background:#FBF0CC;border-radius:999px;padding:0 7px;margin-left:4px}
.qrows .ft{display:block;font-size:13px;color:var(--soft)}
.qrows .dots{flex:1;min-width:24px}
.qrows .dm{font-size:12px;color:var(--deep);white-space:nowrap}
.qst{font-size:12px;font-weight:700;color:var(--soft);white-space:nowrap}
.qst::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:#C9C3B4;margin-right:5px;vertical-align:1px}
.qst-ok{color:var(--dark)}.qst-ok::before{background:var(--kiwi)}
.qst-mv::before{background:var(--gold)}.qst-blk::before{background:var(--skin)}.qst-down{color:#8A2E1E}.qst-down::before{background:#C2412D}
.qbox{margin:28px 0 0;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 20px;box-shadow:0 3px 0 var(--line2)}
.qbox-h{margin:0 0 4px;font-weight:700;color:var(--deep)}
.qbox p{margin:0}
.qtbl{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:12px 0;border:1px solid var(--line);border-radius:16px;background:#fff}
.qtbl table{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}
.qtbl th{background:#E4F0D2;text-align:left;padding:10px 12px;font-weight:700}
.qtbl td{padding:10px 12px;border-top:1px dashed var(--line);vertical-align:top}
.qprose{max-width:760px;padding-top:8px}
.qprose h2{font-family:var(--hd);font-weight:400;font-size:28px;margin:36px 0 8px;line-height:1.35}
.qprose h3{font-size:18px;margin:22px 0 4px}
.qprose p,.qprose li{color:var(--text)}
.qprose ul,.qprose ol{padding-left:22px}
.qprose li{margin:4px 0}
.qchk{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.qchk li{background:#fff;border:1px solid var(--line2);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:700}
.qchk li::before{content:'✓ ';color:var(--deep)}
.qpn{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:8px}
.qpn a{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 16px;font-weight:700;color:var(--ink)}
.qpn a:hover{border-color:var(--kiwi)}
.qpn small{display:block;font-size:12px;color:var(--soft)}
.qpn .n{text-align:right}
.qrel{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.qrel a{display:inline-flex;align-items:center;min-height:40px;background:#E4F0D2;border-radius:999px;padding:6px 16px;font-weight:700;font-size:14px;color:var(--dark)}
.qrel a:hover{background:var(--kiwi2)}
.qrel.plain a{background:#fff;border:1px solid var(--line2)}
.qhome{margin:16px 0 0;color:var(--muted)}
.qpimg{margin:24px 0 0;width:100%;border-radius:20px;overflow:hidden}
.qpimg img{width:100%}
.qpager{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.qpager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 12px;border:1px solid var(--line2);border-radius:999px;background:#fff;font-weight:700}
.qpager .current{background:var(--dark);color:#fff;border-color:var(--dark)}

/* 푸터 */
.qfoot{background:var(--dark);color:#DCE6CF;font-size:14px;margin-top:24px}
.qfoot a{color:#DCE6CF}.qfoot a:hover{color:var(--kiwi2)}
.qfoot-g{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:22px;padding-top:32px;padding-bottom:18px}
.qfoot-brand{margin:0 0 6px;font-family:var(--hd);font-size:26px;color:var(--kiwi2)}
.qfoot p{margin:0 0 6px}
.qfh{margin:0 0 6px!important;font-weight:700;color:#fff}
.qfl{list-style:none;margin:0;padding:0}
.qfl li{margin:2px 0}
.qcp{margin:0;padding:14px 0 26px;border-top:1px dashed #4D6B3B;font-size:12px;color:#AFC09A}

/* 반응형 */
@media (max-width:900px){
  .qposts,.qdates{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qgcards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .qfoot-g{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .wrap{padding:0 16px}
  .qmbtn{display:block}
  .qnav{display:none;width:100%;margin:0 0 12px;flex-direction:column;gap:0}
  .qnav.on{display:flex}
  .qnav a{padding:10px 0;border-bottom:1px solid var(--line)}
  .qhero-in{padding-top:32px;padding-bottom:60px;gap:20px}
  .qhero h1{font-size:40px}
  .qhsub{font-size:15px}
  .qhero-art{max-width:220px}
  .qtrio{grid-template-columns:1fr;margin-top:-28px}
  .qsec{font-size:26px}.qsec.big{font-size:28px}
  .qphead h1{font-size:30px}
  .qsteps,.qposts,.qdates,.qgcards,.trend-grid,.qpn{grid-template-columns:1fr}
  .qrow summary{padding:12px 14px;gap:8px 12px}
  .qrow .no{width:44px;height:44px;font-size:20px}
  .qrow .nm{flex:1 1 calc(100% - 60px)}
  .qrow .chips{flex-basis:100%}
  .qrow-b{padding:0 14px 14px}
  .qrow-b ul{grid-template-columns:1fr}
  .qstats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qcheck-w{padding:22px 18px}
  .qmore{margin-left:0}
  .qfoot-g{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
