/* /assets/css/news.css — 블리 4사 "소식" 본문 전용 스타일. [2026-08-19]
 *
 * ★ 헤더·모바일메뉴·푸터·FAB 는 홈(index.php)에서 그대로 떠온 마크업 + index.css 가 담당한다.
 *   이 파일은 그 아래 "콘텐츠 영역"(.nw-*)만 손댄다. body·.header·.footer·.inner 등
 *   사이트 공용 클래스는 절대 건드리지 말 것(홈과 달라지면 안 됨).
 * 원본: /var/www/bly-platform/shared/newslib/news.css → scripts/news-deploy.sh 로 4사 배포.
 */

:root{
  --nw-accent:#263FA4;
  --nw-ink:#12172b;
  --nw-body:#37405a;
  --nw-muted:#7b8398;
  --nw-line:#e6e9f2;
  --nw-bg:#f6f7fb;
  --nw-panel:#fff;
  --nw-radius:16px;
  --nw-shadow:0 6px 24px rgba(18,23,43,.06);
}

/* 홈의 고정 퀵바가 없는 페이지라 하단 여백만 되돌린다(그 외 body 규칙은 index.css 그대로). */
body.nw-page{padding-bottom:0}

/* 헤더가 position:fixed 라 본문을 헤더 높이만큼 내린다(홈과 동일한 80px / 모바일 64px). */
.nw-main{padding-top:80px;background:var(--nw-bg);color:var(--nw-body);font-size:16px;line-height:1.75}
.nw-main img{max-width:100%;height:auto}
.nw-main a{color:inherit;text-decoration:none}
.nw-inner{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}

.nw-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;font-size:15px;font-weight:600;padding:12px 24px;white-space:nowrap;transition:transform .15s,box-shadow .15s,background .15s,color .15s;cursor:pointer}
.nw-btn-solid{background:var(--nw-accent);color:#fff}
.nw-btn-solid:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(18,23,43,.16)}
.nw-btn-line{border:1.5px solid var(--nw-accent);color:var(--nw-accent);background:transparent}
.nw-btn-line:hover{background:var(--nw-accent);color:#fff}
.nw-btn-lg{font-size:16px;padding:14px 30px}

/* ── 코너 인트로 ── */
.nw-hero{background:linear-gradient(135deg,#12172b 0%,#263FA4 100%);color:#fff;padding:54px 0 60px}
.nw-kicker{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.nw-hero h1{margin:0 0 14px;font-size:38px;line-height:1.25;font-weight:800;letter-spacing:-.02em;color:#fff}
.nw-hero-desc{margin:0;max-width:720px;font-size:17px;line-height:1.7;color:rgba(255,255,255,.86)}

.nw-body{padding:34px 20px 60px}

/* ── 분야 칩 ── */
.nw-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.nw-chip{display:inline-block;padding:7px 15px;border-radius:999px;border:1px solid var(--nw-line);background:#fff;font-size:14px;font-weight:500;color:var(--nw-body);transition:.15s}
.nw-chip:hover{border-color:var(--nw-accent);color:var(--nw-accent)}
.nw-chip.on{background:var(--nw-accent);border-color:var(--nw-accent);color:#fff;font-weight:600}

/* ── 카드 목록 ── */
.nw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.nw-card{background:var(--nw-panel);border:1px solid var(--nw-line);border-radius:var(--nw-radius);box-shadow:var(--nw-shadow);overflow:hidden;transition:transform .18s,box-shadow .18s,border-color .18s}
.nw-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(18,23,43,.1);border-color:#d7dcea}
.nw-card-link{display:flex;flex-direction:column;height:100%;padding:22px 22px 20px}
.nw-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:12.5px;color:var(--nw-muted)}
.nw-card-cat{display:inline-block;padding:4px 10px;border-radius:999px;background:#eef1f8;background:color-mix(in srgb,var(--nw-accent) 10%,#fff);color:var(--nw-accent);font-size:12.5px;font-weight:700;white-space:nowrap}
.nw-card-title{margin:0 0 10px;font-size:19px;line-height:1.45;font-weight:700;color:var(--nw-ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nw-card-sum{margin:0 0 16px;font-size:14.5px;line-height:1.7;color:var(--nw-body);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nw-card-more{margin-top:auto;font-size:13.5px;font-weight:700;color:var(--nw-accent)}
.nw-card-more::after{content:' →'}

/* ── 페이지네이션 ── */
.nw-pager{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:44px 0 0}
.nw-pager a{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--nw-line);border-radius:10px;background:#fff;font-size:14px;font-weight:600;color:var(--nw-body)}
.nw-pager a:hover{border-color:var(--nw-accent);color:var(--nw-accent)}
.nw-pager a.on{background:var(--nw-accent);border-color:var(--nw-accent);color:#fff}

/* ── 빈 상태 ── */
.nw-empty{text-align:center;padding:70px 20px;background:#fff;border:1px dashed var(--nw-line);border-radius:var(--nw-radius)}
.nw-empty p{margin:0 0 8px;font-size:19px;font-weight:700;color:var(--nw-ink)}
.nw-empty-sub{font-size:15px!important;font-weight:400!important;color:var(--nw-muted)!important;margin-bottom:22px!important}

/* ── 기사 본문 ── */
.nw-art-in{max-width:840px;padding-top:30px;padding-bottom:20px}
.nw-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:13px;color:var(--nw-muted);margin-bottom:20px}
.nw-crumb a:hover{color:var(--nw-accent)}
.nw-art-head{margin-bottom:26px}
.nw-art-head h1{margin:14px 0 12px;font-size:34px;line-height:1.32;font-weight:800;letter-spacing:-.02em;color:var(--nw-ink)}
.nw-art-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:13.5px;color:var(--nw-muted)}
.nw-lede{margin:0 0 30px;padding:22px 24px;background:#fff;border-left:4px solid var(--nw-accent);border-radius:0 12px 12px 0;font-size:17px;line-height:1.8;color:var(--nw-ink);box-shadow:var(--nw-shadow)}

.nw-prose{font-size:16.5px;line-height:1.9;color:var(--nw-body)}
.nw-prose h2{margin:44px 0 14px;font-size:24px;line-height:1.4;font-weight:800;color:var(--nw-ink);letter-spacing:-.01em}
.nw-prose h2::before{content:'';display:block;width:34px;height:3px;background:var(--nw-accent);border-radius:2px;margin-bottom:14px}
.nw-prose h3{margin:30px 0 10px;font-size:19px;font-weight:700;color:var(--nw-ink)}
.nw-prose p{margin:0 0 18px}
.nw-prose strong{color:var(--nw-ink);font-weight:700}
.nw-prose ul,.nw-prose ol{margin:0 0 20px;padding-left:22px}
.nw-prose li{margin:0 0 9px}
.nw-prose li::marker{color:var(--nw-accent)}
.nw-prose blockquote{margin:0 0 20px;padding:16px 20px;background:#fff;border:1px solid var(--nw-line);border-radius:12px;color:var(--nw-ink);font-size:16px}
.nw-table-wrap{overflow-x:auto;margin:0 0 22px;border:1px solid var(--nw-line);border-radius:12px;background:#fff}
.nw-table-wrap table{width:100%;border-collapse:collapse;font-size:15px;min-width:460px}
.nw-table-wrap th,.nw-table-wrap td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--nw-line);vertical-align:top}
.nw-table-wrap th{background:#f3f5fb;color:var(--nw-ink);font-weight:700;white-space:nowrap}
.nw-table-wrap tr:last-child td{border-bottom:0}

/* ── FAQ / 주제 / 출처 ── */
.nw-faq{margin:48px 0 0;padding:28px 26px;background:#fff;border:1px solid var(--nw-line);border-radius:var(--nw-radius);box-shadow:var(--nw-shadow)}
.nw-faq>h2,.nw-topics>h2,.nw-sources>h2{margin:0 0 18px;font-size:21px;font-weight:800;color:var(--nw-ink)}
.nw-faq-item{padding:16px 0;border-top:1px solid var(--nw-line)}
.nw-faq-item:first-of-type{border-top:0;padding-top:0}
.nw-faq-item h3{margin:0 0 8px;font-size:16.5px;font-weight:700;color:var(--nw-ink)}
.nw-faq-item h3::before{content:'Q. ';color:var(--nw-accent);font-weight:800}
.nw-faq-item p{margin:0;font-size:15.5px;line-height:1.8}

.nw-topics{margin:36px 0 0}
.nw-topic-row{display:flex;flex-wrap:wrap;gap:10px}
.nw-topic{display:flex;flex-direction:column;gap:2px;padding:12px 18px;background:#fff;border:1px solid var(--nw-line);border-radius:12px;font-size:15px;font-weight:700;color:var(--nw-ink);transition:.15s}
.nw-topic em{font-style:normal;font-size:12px;font-weight:500;color:var(--nw-muted)}
.nw-topic:hover{border-color:var(--nw-accent);color:var(--nw-accent);transform:translateY(-2px)}

.nw-sources{margin:36px 0 10px}
.nw-sources ul{margin:0;padding:0;list-style:none}
.nw-sources li{padding:10px 0;border-top:1px solid var(--nw-line);font-size:14.5px}
.nw-sources li:first-child{border-top:0}
.nw-sources a{color:var(--nw-accent);text-decoration:underline;text-underline-offset:3px}
.nw-sources span{display:block;font-size:12.5px;color:var(--nw-muted)}

/* ── CTA 밴드 ── */
.nw-cta-band{margin:10px 0 0;padding:58px 20px;text-align:center;background:linear-gradient(135deg,#12172b 0%,#263FA4 100%);color:#fff}
.nw-cta-band h2{margin:0 0 10px;font-size:27px;font-weight:800;letter-spacing:-.02em;color:#fff}
.nw-cta-band p{margin:0 auto 24px;max-width:620px;font-size:16px;line-height:1.7;color:rgba(255,255,255,.86)}
.nw-cta-row{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
.nw-cta-band .nw-btn-solid{background:#fff;color:#12172b}
.nw-cta-band .nw-btn-line{border-color:rgba(255,255,255,.7);color:#fff}
.nw-cta-band .nw-btn-line:hover{background:#fff;color:#12172b}

/* ── 관련글 ── */
.nw-related{padding:52px 20px 64px}
.nw-related>h2{margin:0 0 22px;font-size:23px;font-weight:800;color:var(--nw-ink)}
.nw-related .nw-card-title{font-size:17px}
.nw-all{margin:30px 0 0;text-align:center}

/* ── 반응형 ── */
@media (max-width:1024px){
  .nw-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:820px){
  .nw-hero{padding:40px 0 46px}
  .nw-hero h1{font-size:29px}
  .nw-hero-desc{font-size:15.5px}
  .nw-art-head h1{font-size:26px}
  .nw-lede{font-size:16px;padding:18px 18px}
  .nw-prose{font-size:16px}
  .nw-prose h2{font-size:21px;margin-top:36px}
  .nw-faq{padding:22px 18px}
  .nw-cta-band{padding:46px 20px}
  .nw-cta-band h2{font-size:22px}
}
@media (max-width:640px){
  .nw-main{padding-top:64px}   /* 홈과 동일한 모바일 헤더 높이 */
}
@media (max-width:600px){
  .nw-grid{grid-template-columns:1fr}
  .nw-body{padding:24px 20px 46px}
}
