/* =========================
   NEWS SECTION (scoped by #news)
   ========================= */

/* 리스트 아이템 레이아웃 */
#news .news-area .nws-item{
    display:flex; gap:16px; align-items:flex-start;
    padding:10px 0; border-bottom:1px solid #eee;
}

/* 썸네일 박스: 고정 비율/크기 */
#news .news-area .nws-item .thumb{
    flex:0 0 140px;           /* 가로 고정 (원하면 120~180px로 조절) */
    aspect-ratio:4/3;         /* 썸네일 비율 */
    overflow:hidden; border-radius:8px; background:#f5f5f5;
}

/* 썸네일 이미지: 꽉 채우되 비율 유지, 넘치는 부분은 잘라냄 */
#news .news-area .nws-item .thumb img{
    width:100%; height:100%;
    object-fit:cover; display:block;
}

/* 텍스트 영역 */
#news .news-area .nws-item dl{ margin:0; flex:1; }
#news .news-area .nws-item dt{ font-weight:700; line-height:1.4; margin:0 0 6px; }
#news .news-area .nws-item dd{ margin:0; color:#555; line-height:1.6; }

/* 날짜 */
#news .news-area .nws-item > p{
    margin:0 0 0 auto; color:#777; white-space:nowrap;
}

/* 말줄임 */
#news .news-area .nws-item dt,
#news .news-area .nws-item dd{
    display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;
}
#news .news-area .nws-item dt{ -webkit-line-clamp:2; } /* 제목 2줄 */
#news .news-area .nws-item dd{ -webkit-line-clamp:3; } /* 본문 3줄 */

/* 액션 영역 & 버튼 */
#news .news-actions{
    display:flex; justify-content:center; align-items:center;
    padding:12px 0;
    margin-top:8px;
    position:relative;
}

#news .news-more-btn{
    position:relative; display:inline-flex; align-items:center; gap:10px;
    padding:12px 18px;
    border:1px solid #d9d9d9; border-radius:9999px;
    background:#fff; color:#222; font-weight:600;
    cursor:pointer;
    transition:background .2s, border-color .2s, transform .05s;
    box-shadow:0 1px 2px rgba(0,0,0,.05);
}
#news .news-more-btn:hover{ background:#f7f7f7; border-color:#ccc; }
#news .news-more-btn:active{ transform:translateY(1px); }
#news .news-more-btn:focus{ outline:2px solid #4c9ffe; outline-offset:2px; }
#news .news-more-btn[disabled]{ opacity:.6; cursor:not-allowed; }

/* 로딩 스피너 */
#news .news-spinner{
    width:16px; height:16px; border-radius:50%;
    border:2px solid #bbb; border-top-color:#4c9ffe;
    display:none; animation:news-spin 1s linear infinite;
}
#news .news-more-btn.is-loading .news-btn-label{ opacity:.7; }
#news .news-more-btn.is-loading .news-spinner{ display:inline-block; }

/* 화면리더 전용 텍스트 */
#news .news-sr-only{
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

#news .news-actions::before{
    content:"";
    position:absolute; left:0; right:0; top:-8px;
    height:1px; background:#e9e9e9;
}

#news .news-more-btn:hover{
    background:#f9f9f9; border-color:#cfcfcf;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
}


@keyframes news-spin { to { transform:rotate(360deg); } }

/* 모바일에서 여백 타이트 + 버튼 중앙폭 제한 */
@media (max-width:640px){
    #news .news-actions{ padding:10px 0; margin-top:6px; }
    #news .news-more-btn{ width:100%; max-width:480px; justify-content:center; }
}
