@charset "UTF-8";
/* ============================================================================
   vibeAI — newsroom-detail.css
   /newsroom/{post_id} 게시물 상세 페이지 전용. common.css 뒤에 불러옵니다.

   구성: nav · 작은 타이틀(Newsroom) · 제목 · 날짜 · 본문(템플릿 자리) ·
   이전글 / List / 다음글 · footer. 게시물 데이터(DB)는 D-4 결정 전이라 정적
   자리만 있고, 본문 템플릿은 HTML 주석 위치에 연동합니다.
   ========================================================================= */

.nd-head { padding-top: var(--sec-y); padding-bottom: 0; }

.nd-head__kicker { margin: 0; }

.nd-head__title {
  margin: 14px 0 0;
  font-family: var(--ff-body);
  font-size: var(--fs-h2);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.nd-head__date {
  margin: 18px 0 0;
  font-family: var(--ff-mono);
  font-size: var(--fs-caption);
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--c-ink-3);
}

.nd-head__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.nd-head__meta .nd-head__date { margin: 18px 0 0; }

@media (max-width: 900px) {
  .nd-head__title { font-size: 28px; }
}

/* 관리자(로그인)에게만 보이는 Edit · Delete */
[data-js-detail-admin] {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 18px 0 0;
}

[data-js-detail-admin] a,
[data-js-detail-admin] button {
  display: inline-flex;
  align-items: center;
  padding: 6px 14px;
  border: 1px solid var(--c-line);
  border-radius: var(--r-pill);
  background: transparent;
  font-family: var(--ff-mono);
  font-size: 11px;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--c-ink-2);
  cursor: pointer;
  transition: color var(--dur) var(--ease),
              background var(--dur) var(--ease),
              border-color var(--dur) var(--ease);
}

[data-js-detail-admin] a:hover { color: var(--c-ink); border-color: var(--c-ink-2); }

[data-js-detail-admin] button:hover {
  color: #fff;
  background: var(--c-accent);
  border-color: var(--c-accent);
}

.nd-body {
  padding-top: 40px;
  margin-top: 40px;
  border-top: 1px solid var(--c-line);
}

.nd-pager { padding-block: 40px var(--sec-y); }

.nd-pager__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-block: 40px;
  border-top: 1px solid var(--c-line);
  border-bottom: 1px solid var(--c-line);
  white-space: nowrap;
}

.nd-pager__prev,
.nd-pager__next { min-width: 0; }

.nd-pager__next { text-align: right; }

.nd-pager__label {
  display: block;
  font-family: var(--ff-mono);
  font-size: 10.5px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--c-ink-3);
  margin-bottom: 6px;
}

.nd-pager__side {
  font-size: 14px;
  color: var(--c-ink-2);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.nd-pager__side:hover { color: var(--c-ink); border-bottom-color: var(--c-ink); }

/* 글자 길이만큼만 밑줄 — inline-block으로 블록 폭에 늘어나지 않게 함 */
.nd-pager__list {
  display: inline-block;
  flex: none;
  font-family: var(--ff-body);
  font-size: var(--fs-lede);
  font-weight: 700;
  color: var(--c-ink);
  text-decoration: none;
  border-bottom: 1px solid var(--c-ink);
  padding-bottom: 4px;
  transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.nd-pager__list:hover { color: var(--c-accent); border-bottom-color: var(--c-accent); }

/* 모바일에서도 한 줄 유지 */
@media (max-width: 700px) {
  .nd-pager__inner { gap: 12px; }
  .nd-pager__side { font-size: 13px; }
  .nd-pager__list { font-size: 15px; }
  .nd-pager__label { font-size: 9.5px; }
}
