/* 홈 2차 정리 2026-11-03: 소개 한 줄 + 검색창, 큰 카드 대신 구분선 목록, 제목 17~18px, 보라색은 검색에만. 모서리는 8(작은 요소)·12(큰 패널) 두 단계. */
main.w:has(.h2-top){max-width:1120px;padding:0 20px 40px}
.h2-top,.h2-sec{--tx:#0f172a;--mu:#475569;--bd:#e2e8f0;--br:#6d28d9}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sv{flex:0 0 auto;vertical-align:-4px}.sv.s{width:16px;height:16px;vertical-align:-3px}

/* ② 검색 영역: 높이를 절반으로 */
.h2-top{padding:28px 0 4px}
.h2-top h1{margin:0;font-size:32px;line-height:1.3;letter-spacing:-.03em;font-weight:800;color:var(--tx);border:0}
.h2-top .lead{margin:8px 0 16px;font-size:15.5px;line-height:1.6;color:var(--mu)}
main .h2-top .lead a{color:var(--tx);text-decoration:underline;text-decoration-color:#94a3b8}
.h2-s{position:relative;max-width:820px}
.h2-s .row{display:flex;align-items:stretch;background:#fff;border:1.5px solid #64748b;border-radius:8px;overflow:hidden}
.h2-s .row:focus-within{border-color:var(--br);box-shadow:0 0 0 3px rgba(109,40,217,.18)}
.h2-s select{flex:0 0 auto;width:96px;border:0;border-right:1px solid var(--bd);background:#f8fafc;color:var(--tx);font:inherit;font-size:15px;font-weight:600;padding:0 8px 0 14px;height:50px;border-radius:0;cursor:pointer}
.h2-s input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:16px;color:var(--tx);height:50px;padding:0 14px;border-radius:0}
.h2-s input::placeholder{color:#64748b}
.h2-s .go{flex:0 0 auto;min-width:84px;height:50px;border:0;border-radius:0;background:var(--br);color:#fff;font:inherit;font-size:16px;font-weight:700;cursor:pointer}
.h2-s .go:hover{background:#5b21b6}
.h2-s .res{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:20;background:#fff;border:1px solid var(--bd);border-radius:12px;box-shadow:0 12px 32px rgba(15,23,42,.14);max-height:60vh;overflow:auto}
.h2-s .res:empty{display:none}
main .h2-s .res a{display:flex;gap:10px;align-items:baseline;padding:12px 14px;min-height:44px;color:var(--tx);text-decoration:none;border-bottom:1px solid #f1f5f9}
.h2-s .res a:last-child{border:0}.h2-s .res a:hover,.h2-s .res a:focus-visible{background:#f8fafc}
.h2-s .res em{font-style:normal;flex:0 0 auto;font-size:12.5px;font-weight:700;color:var(--mu);width:48px}
.h2-s .res b{font-weight:700}.h2-s .res small{color:var(--mu);font-size:13.5px}
.h2-s .res p{margin:0;padding:14px;color:var(--mu);font-size:15px}

/* 섹션 공통 */
.h2-sec{margin:44px 0 0}
.h2-hd{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;padding-bottom:10px;border-bottom:1px solid #cbd5e1}
.h2-hd h2{margin:0;padding:0;border:0;font-size:22px;line-height:1.3;letter-spacing:-.02em;font-weight:800;color:var(--tx)}
main .h2-hd a{display:inline-flex;align-items:center;gap:4px;min-height:44px;margin:-12px 0;font-size:14px;font-weight:600;color:var(--mu);text-decoration:none;white-space:nowrap}main .h2-hd a:hover{color:var(--tx);text-decoration:underline}
.h2-sec .kk{margin:0 0 4px;font-size:13px;font-weight:700;color:var(--mu)}
.h2-sec h3{margin:0;font-size:18px;line-height:1.45;font-weight:700;letter-spacing:-.015em;color:var(--tx);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
main .h2-sec h3 a{color:inherit;text-decoration:none}.h2-sec h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.h2-sec .sm{margin:5px 0 0;font-size:15px;line-height:1.6;color:var(--mu);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.h2-sec .mt{margin:6px 0 0;font-size:13.5px;color:#64748b}
.h2-nt{margin:12px 0 0;font-size:14px;color:var(--mu)}main .h2-nt a{color:var(--tx);text-decoration:underline;text-decoration-color:#94a3b8}

/* ③ 지금 읽을 글: 대표 1(왼쪽 큰 칸, 카드는 여기만) + 보조 4(구분선 목록) */
.rd-g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,4fr);gap:32px;padding-top:18px;align-items:start}
.rd-f{background:#faf8ff;border:1px solid #ddd6fe;border-radius:12px;padding:26px 28px}
.rd-f h3{font-size:26px;line-height:1.35;letter-spacing:-.03em;font-weight:800;-webkit-line-clamp:3}
.rd-f .sm{font-size:16.5px;line-height:1.7;-webkit-line-clamp:3;margin-top:12px}
.rd-l{list-style:none;margin:0;padding:0}
.rd-l li{padding:14px 0;border-bottom:1px solid var(--bd)}.rd-l li:first-child{padding-top:0}.rd-l li:last-child{border:0;padding-bottom:0}
.rd-l .sm{-webkit-line-clamp:2}

/* ④ 마감 임박: 공모전 목록 표와 같은 규칙(제목 > 혜택 강조 > 마감 날짜+D-day, 열 제목 1회) */
.op-g{list-style:none;margin:0;padding:0}
.op-h,.op{display:grid;grid-template-columns:minmax(0,1fr) 200px 150px 96px;column-gap:20px;align-items:center}
.op-h{padding:6px 2px;font-size:12.5px;font-weight:700;color:#64748b;border-bottom:1px solid #cbd5e1}
.op{padding:14px 2px;border-bottom:1px solid var(--bd)}
.op p{margin:0}
.op h3{font-size:17px;-webkit-line-clamp:2}
.op .mt{display:flex;gap:8px;align-items:center;margin-top:3px;font-size:13px}.op .mt .kk{margin:0}
main .op .b2{display:inline-flex;align-items:center;gap:4px;color:var(--mu);font-size:13px;font-weight:600;text-decoration:none}.op .b2:hover{color:var(--tx);text-decoration:underline}
.op-c{font-size:14.5px;line-height:1.45;color:var(--mu)}
.op-p{font-size:17px;line-height:1.35;font-weight:800;color:var(--tx)}
.op-d b{display:block;font-size:15px;font-weight:700;color:var(--tx)}.op-d .dd{font-size:13px;font-weight:700;color:var(--mu)}.op-d .dd.u{color:#b91c1c}
.vb{font-size:12.5px;font-weight:600;color:#475569}.vb.op{color:#0f766e}

/* ⑤ 생활 가이드: 구분선 2열 */
.gd-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
.gd-l li{padding:16px 0;border-bottom:1px solid var(--bd)}

/* ⑥ 주제 탐색: 상자 없이 구분선 */
.tp-g{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:24px}
main .tp-g a{display:flex;gap:10px;align-items:flex-start;min-height:64px;padding:14px 0;border-bottom:1px solid var(--bd);color:var(--tx);text-decoration:none}
.tp-g a:hover b{text-decoration:underline}.tp-g .sv{color:#64748b;margin-top:2px}
.tp-g b{display:block;font-size:16px;font-weight:700}.tp-g small{display:block;margin-top:2px;font-size:13.5px;color:var(--mu);line-height:1.4}
.kw-row{margin-top:24px}.kw-row h3{font-size:15px;color:var(--mu);font-weight:700;margin:0 0 4px;display:block}
.chips{display:flex;flex-wrap:wrap;gap:0 18px}
main .chips a{display:inline-flex;align-items:center;min-height:44px;color:var(--tx);font-size:15.5px;text-decoration:underline;text-decoration-color:#cbd5e1;text-underline-offset:4px}.chips a:hover{text-decoration-color:var(--tx)}
main .mp{display:inline-flex;align-items:center;gap:6px;margin-top:6px;min-height:44px;color:var(--tx);font-weight:700;font-size:15px;text-decoration:none}.mp:hover{text-decoration:underline}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8b5cf6;outline-offset:2px}

@media(max-width:1000px){.rd-g{grid-template-columns:1fr;gap:20px}.tp-g{grid-template-columns:repeat(3,minmax(0,1fr))}
 .op-h{display:none}.op{grid-template-columns:minmax(0,1fr) 110px;row-gap:4px}.op-m{grid-column:1 / -1}.op-c{grid-column:1}.op-p{grid-column:1}.op-d{grid-column:2;grid-row:2 / span 2;text-align:right}}
@media(max-width:700px){
  main.w:has(.h2-top){padding:0 16px 32px}
  .h2-top{padding:20px 0 0}.h2-top h1{font-size:26px}.h2-top .lead{font-size:15px}
  .h2-s select{width:78px;padding-left:10px;font-size:14px}.h2-s .go{min-width:68px}
  .h2-sec{margin-top:36px}.h2-hd h2{font-size:21px}
  .rd-f{padding:20px}.rd-f h3{font-size:22px}
  .gd-l{grid-template-columns:1fr;column-gap:0}.tp-g{grid-template-columns:repeat(2,minmax(0,1fr))}
  .op-c::before,.op-p::before{content:attr(data-l) ' ';font-size:12.5px;font-weight:600;color:#64748b}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .h2-top,:root:not([data-theme=light]) .h2-sec{--tx:#e6e9ee;--mu:#a5afbd;--bd:#273040;--br:#a78bfa}
:root:not([data-theme=light]) .h2-s .row,:root:not([data-theme=light]) .rd-f,:root:not([data-theme=light]) .h2-s .res{background:#161a21}
:root:not([data-theme=light]) .h2-s select{background:#1d232d;color:#e6e9ee}
:root:not([data-theme=light]) .h2-s .go{background:#7c3aed}}

/* 검색 아래 목적별 바로가기 (2026-11-04) */
.qk{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 24px;max-width:820px}
main .qk a{display:flex;gap:10px;align-items:flex-start;min-height:56px;padding:12px 0;border-bottom:1px solid var(--bd);color:var(--tx);text-decoration:none}
.qk a:hover b{text-decoration:underline}.qk .sv{color:var(--br);margin-top:2px}
.qk b{display:block;font-size:15.5px;font-weight:700}.qk small{display:block;margin-top:1px;font-size:13px;color:var(--mu);line-height:1.35}
@media(max-width:700px){.qk{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}}
/* 대표 글 자료 사진 (2026-11-05): 16:9, 출처 한 줄 */
.rd-im{display:block;margin:-26px -28px 0;border-radius:12px 12px 0 0;overflow:hidden}
.rd-im img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#e2e8f0}
.rd-cr{margin:6px 0 14px;font-size:12px;line-height:1.45;color:#64748b}main .rd-cr a{color:inherit;text-decoration:underline}
@media(max-width:700px){.rd-im{margin:-20px -20px 0}}
@media(min-width:1001px){.rd-im img{aspect-ratio:2/1}}

/* ⑦ 많이 찾는 글(2026-11-10): 구분선 2열 목록에 순위 숫자 */
.pp-l{counter-reset:pp}
.pp-l li{position:relative;padding-left:34px;counter-increment:pp}
.pp-l li::before{content:counter(pp);position:absolute;left:2px;top:15px;font-size:19px;line-height:1.3;font-weight:800;color:var(--br)}
