/* ============ 2026-10-03: 캠퍼스다운 소식 리디자인 (qna.css의 .cd-qna 공통 스타일 + page.css cd-faq-* 재사용) ============ */
.cd-board .cd-board-hero .cd-faq-eyebrow {letter-spacing:.06em}
.cd-board .cd-qna-hero-actions {max-width:34rem}
.cd-board-adminbar {display:flex; justify-content:flex-end; gap:8px; margin:0 0 12px}
.cd-board-adminbar .cd-btn-primary {height:44px}
.cd-board-list {list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px}
.cd-board-card {position:relative; display:flex; gap:18px; align-items:stretch; padding:16px; background:#fff; border:1px solid var(--cd-line); border-radius:18px; color:inherit !important; text-decoration:none !important; transition:border-color .2s, box-shadow .2s, transform .15s}
.cd-board-card:hover {border-color:#cfd5f7; box-shadow:0 10px 26px rgba(79,107,237,.10); transform:translateY(-1px)}
.cd-board-card:focus-visible {outline:3px solid rgba(79,107,237,.35); outline-offset:2px}
.cd-board-thumb {flex:0 0 176px; height:112px; border-radius:12px; overflow:hidden; background:linear-gradient(135deg, #eef1fe 0%, #f6f7ff 60%, #fdf6ff 100%); display:flex; align-items:center; justify-content:center; color:var(--cd-pri)}
.cd-board-thumb img {width:100%; height:100%; object-fit:cover}
.cd-board-thumb .bi {font-size:2rem; opacity:.85}
.cd-board-cbody {flex:1 1 auto; min-width:0; display:flex; flex-direction:column; justify-content:center; gap:6px}
.cd-board-ctitle {margin:0; font-size:1.0625rem; font-weight:700; color:var(--cd-ink); line-height:1.45; word-break:keep-all; overflow-wrap:anywhere; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
.cd-board-cexcerpt {margin:0; font-size:.875rem; color:var(--cd-sub); line-height:1.6; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; word-break:keep-all; overflow-wrap:anywhere}
.cd-board-meta {display:flex; flex-wrap:wrap; align-items:center; font-size:.8125rem; color:#8a90a0}
.cd-board-meta > span {display:inline-flex; align-items:center; gap:4px}
.cd-board-meta > span:not(:last-child)::after {content:"·"; margin:0 8px; color:#c3c7d1}
.cd-board-new {display:inline-flex; align-items:center; height:20px; padding:0 7px; margin-right:6px; border-radius:999px; background:var(--cd-pri); color:#fff; font-size:.6875rem; font-weight:800; vertical-align:2px}
.cd-board-go {flex:0 0 auto; align-self:center; width:32px; height:32px; border-radius:50%; background:#f4f5f9; color:#6b7280; display:flex; align-items:center; justify-content:center; transition:background .2s, color .2s}
.cd-board-card:hover .cd-board-go {background:var(--cd-pri-l); color:var(--cd-pri)}

/* 상세 */
.cd-board-article {background:#fff; border:1px solid var(--cd-line); border-radius:20px; overflow:hidden; box-shadow:0 8px 28px rgba(31,36,51,.05)}
.cd-board-ahead {padding:28px 32px 20px; border-bottom:1px solid #f0f1f5}
.cd-board-ahead .cd-faq-eyebrow {background:var(--cd-pri-l); box-shadow:none}
.cd-board-ahead h1 {margin:12px 0 10px; font-size:1.625rem; font-weight:800; color:var(--cd-ink); letter-spacing:-.02em; line-height:1.4; word-break:keep-all; overflow-wrap:anywhere}
.cd-board-abody {padding:28px 32px 32px; color:#2f3445; font-size:1rem; line-height:1.85; word-break:keep-all; overflow-wrap:anywhere}
.cd-board-abody img, .cd-board-abody video, .cd-board-abody iframe {max-width:100% !important; height:auto}
.cd-board-abody table {max-width:100%; display:block; overflow-x:auto}
.cd-board-abody h1, .cd-board-abody h2, .cd-board-abody h3, .cd-board-abody h4 {color:var(--cd-ink); font-weight:800; line-height:1.4; margin:1.6em 0 .6em; letter-spacing:-.01em}
.cd-board-abody h1 {font-size:1.5rem} .cd-board-abody h2 {font-size:1.3rem} .cd-board-abody h3 {font-size:1.15rem} .cd-board-abody h4 {font-size:1.05rem}
.cd-board-abody > :first-child, .cd-board-abody > div > :first-child {margin-top:0}
.cd-board-abody p {margin:0 0 1em}
.cd-board-abody ul, .cd-board-abody ol {padding-left:1.3em; margin:0 0 1em}
.cd-board-abody li {margin:.25em 0}
.cd-board-abody a {color:var(--cd-pri) !important; text-decoration:underline; text-underline-offset:2px}
.cd-board-files {margin:0 32px 28px; padding:14px 16px; border-radius:14px; background:#f7f8fb; border:1px solid var(--cd-line)}
.cd-board-files b {display:block; margin-bottom:8px; font-size:.8125rem; color:var(--cd-sub)}
.cd-board-files .cd-qna-flist {margin-top:0}
.cd-board-afoot {display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; margin-top:16px}
.cd-board-afoot .cd-btn-ghost {height:46px}
.cd-board-admin-actions {display:flex; gap:8px}
.cd-board-admin-actions .btn {height:46px}
.cd-board .cd-btn-danger {display:inline-flex; align-items:center; justify-content:center; gap:6px; height:46px; padding:0 18px !important; border-radius:12px !important; border:1px solid #f3c4c6 !important; background:#fff !important; color:#d93036 !important; font-weight:600}
.cd-board .cd-btn-danger:hover {background:#fdecec !important}
.cd-board-pn {display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:14px}
.cd-board-pn a {display:flex; flex-direction:column; gap:2px; padding:14px 16px; border-radius:14px; background:#fff; border:1px solid var(--cd-line); color:inherit !important; min-width:0}
.cd-board-pn a:hover {border-color:#cfd5f7}
.cd-board-pn a.is-next {text-align:right; grid-column:2}
.cd-board-pn small {font-size:.75rem; color:var(--cd-sub)}
.cd-board-pn span {font-weight:600; color:var(--cd-ink); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}

/* 작성 */
.cd-board-editor {min-height:0}
.cd-board-editor textarea {width:100%; min-height:320px}
.cd-board-editor iframe {width:100% !important; border-radius:12px}

@media (max-width:640px){
    .cd-board-card {gap:12px; padding:12px; border-radius:14px}
    .cd-board-thumb {flex-basis:92px; height:92px; border-radius:10px}
    .cd-board-thumb .bi {font-size:1.5rem}
    .cd-board-ctitle {font-size:.9375rem}
    .cd-board-cexcerpt {font-size:.8125rem; -webkit-line-clamp:2}
    .cd-board-go {display:none}
    .cd-board-ahead {padding:20px 18px 16px}
    .cd-board-ahead h1 {font-size:1.25rem}
    .cd-board-abody {padding:20px 18px 24px; font-size:.9375rem; line-height:1.8}
    .cd-board-abody h1 {font-size:1.25rem} .cd-board-abody h2 {font-size:1.125rem} .cd-board-abody h3 {font-size:1.05rem}
    .cd-board-files {margin:0 18px 20px}
    .cd-board-afoot {flex-direction:column-reverse; align-items:stretch}
    .cd-board-afoot .btn, .cd-board-admin-actions .btn {width:100%}
    .cd-board-admin-actions {width:100%}
    .cd-board-admin-actions .btn {flex:1 1 0}
    .cd-board-pn {grid-template-columns:1fr}
    .cd-board-pn a.is-next {grid-column:auto}
    .cd-board-adminbar .cd-btn-primary {width:100%}
}
.cd-board .cd-board-hero[hidden] {display:none !important}

/* 2026-10-03 news-url: /news 목록 제목 h1 (기존 h3 와 같은 모양) */
.cd-faq-hero h1.cd-news-h1 {margin:12px 0 6px; font-size:1.625rem; font-weight:800; color:var(--cd-ink); letter-spacing:-.02em; line-height:1.4}
@media (max-width:640px){ .cd-faq-hero h1.cd-news-h1 {font-size:1.375rem} }
