/* AI 안전 소식 게시판 */
.newsPage .phero{padding:24px 0}
.newsPage .phero h1{font-size:40px;letter-spacing:-1.6px;margin-top:0}
.newsSection{padding:0 0 100px}
.phero+.newsSection{padding-top:20px}
.newsSection .wrap,.newsPage .phero .wrap{max-width:920px}

/* 목록: 10개씩 나눠 보여 준다(news.js) */
.newsList{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}
.newsList li{border-top:1px solid var(--line);margin-top:-1px}
.newsList a{display:flex;align-items:center;gap:14px;padding:14px 22px;color:var(--navy)}
.newsList a:hover .t{color:var(--blue)}
.newsList .n{width:24px;flex:none;text-align:center;font-size:13px;color:var(--muted)}
.newsList .t{flex:1;min-width:0;font-size:16px;font-weight:800;line-height:1.5}
.newsList .v{flex:none;font-size:13px;color:var(--muted)}
.country{flex:none;padding:4px 9px;border-radius:8px;background:#edf5ff;color:var(--blue);font-size:12px;font-weight:800}
.pager{display:flex;justify-content:center;gap:6px;margin-top:18px}
.pager a{min-width:36px;height:36px;padding:0 6px;display:grid;place-items:center;border-radius:10px;font-size:14px;font-weight:700;color:var(--muted)}
.pager a:hover{color:var(--blue)}
.pager a[aria-current="page"]{background:var(--blue);color:#fff}

/* 글 */
.newsPost{max-width:820px;margin:48px auto 0;padding:44px 48px;background:#fff;border:1px solid var(--line);border-radius:28px}
.newsPost h1{font-size:34px;line-height:1.4;font-weight:900;letter-spacing:-1.4px;color:var(--navy)}
.newsMeta{display:flex;align-items:center;gap:12px;margin-top:16px;padding-bottom:22px;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}
.newsPost>p{font-size:17px;line-height:1.9;color:var(--ink);margin-top:20px}
.newsPost>p.src{font-size:15px;margin-top:26px}
.src a{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.react{display:flex;justify-content:center;gap:10px;margin-top:36px}
.react button{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border:1.5px solid #cfe0f3;border-radius:999px;background:#fff;color:var(--navy);font:700 15px "Noto Sans KR",sans-serif;cursor:pointer}
.react button b{font-weight:700;color:var(--muted)}
.react button[aria-pressed="true"]{border-color:var(--blue);background:#edf5ff;color:var(--blue)}
.react button[aria-pressed="true"] b{color:var(--blue)}
.opComment{margin-top:32px;padding:20px 24px;border-radius:18px;background:#edf5ff}
.opComment h2{font-size:15px;font-weight:900;color:var(--navy)}
.opComment p{font-size:16px;line-height:1.8;color:var(--ink);margin-top:6px}
.newsNext{display:flex;gap:14px;margin-top:32px;padding:18px 4px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:15px;color:var(--navy)}
.newsNext span{flex:none;color:var(--muted);font-weight:700}
.newsNext:hover b{color:var(--blue)}
.newsNext b{font-weight:700;min-width:0}
.toList{display:flex;justify-content:center;margin-top:28px}
.toList .btn{height:46px;padding:0 24px;font-size:15px}

.newsList a:focus-visible,.react button:focus-visible,.newsNext:focus-visible,.pager a:focus-visible{outline:3px solid var(--sky);outline-offset:3px}

@media (max-width:760px){
  .newsPage .phero{padding:18px 0}
  .newsPage .phero h1{font-size:30px;letter-spacing:-1.2px}
  .newsSection{padding-bottom:64px}
  .phero+.newsSection{padding-top:14px}
  .newsList{border-radius:16px}
  .newsList a{flex-wrap:wrap;gap:4px 8px;padding:12px 16px}
  .newsList .n{display:none}
  .newsList .t{flex:1 1 100%;order:1;font-size:15px}
  .newsList .country,.newsList .v{order:2}
  .newsPost{margin-top:24px;padding:28px 20px;border-radius:22px}
  .newsPost h1{font-size:25px;letter-spacing:-1px}
  .newsPost>p{font-size:16px}
  .newsNext{flex-direction:column;gap:4px}
}
