/* 전체 카테고리 디렉터리 (page-categories.php) — 사이트맵형 2단 표 */

.catmap { padding: var(--s-8) 0 var(--s-16); }
.catmap-head { margin-bottom: var(--s-8); }
.catmap-head h1 { font-size: 26px; margin: 0 0 6px; }
.catmap-head p { color: var(--c-fg-3); font-size: 14px; margin: 0 0 var(--s-4); }
.catmap-anchors { display: flex; flex-wrap: wrap; gap: 8px; }
.catmap-anchors a { padding: 6px 12px; border: 1px solid var(--c-border-strong); border-radius: var(--r-pill); font-size: 13px; color: var(--c-fg-2); }
.catmap-anchors a:hover { border-color: var(--c-primary); color: var(--c-primary); text-decoration: none; }

.catmap-section { background: #fff; border: 1px solid var(--c-border); border-radius: var(--r-lg); padding: var(--s-6); margin-bottom: var(--s-6); }
.catmap-section h2 { font-size: 18px; margin: 0 0 var(--s-4); padding-bottom: var(--s-3); border-bottom: 2px solid var(--c-primary); }

.catmap-row { display: grid; grid-template-columns: 220px 1fr; gap: 4px var(--s-6); padding: 10px 0; border-bottom: 1px dashed var(--c-border); align-items: baseline; }
.catmap-row:last-child { border-bottom: 0; }
.catmap-key a { font-weight: 700; color: var(--c-fg-1); font-size: 14px; }
.catmap-key a:hover { color: var(--c-primary); text-decoration: none; }
.catmap-vals { display: flex; flex-wrap: wrap; row-gap: 6px; font-size: 13.5px; }
.catmap-vals a { color: var(--c-fg-2); }
.catmap-vals a:hover { color: var(--c-primary); }
.catmap-vals a + a::before { content: "|"; color: var(--c-border-strong); margin: 0 10px; }
.catmap-count { color: var(--c-fg-4); font-size: 12px; font-variant-numeric: tabular-nums; }

.catmap-pub { margin-bottom: var(--s-6); }
.catmap-pub:last-child { margin-bottom: 0; }
.catmap-pub h3 { font-size: 15px; margin: 0 0 8px; display: flex; align-items: center; gap: 10px; }
.catmap-pub h3 a { color: var(--c-primary); }

/* 출판사 공식 로고 — 흰 타일에 contain 정렬로 소스별 편차(배경·비율)를 통일 */
.catmap-pub-logo {
  flex: 0 0 auto;
  width: 116px; height: 40px;
  object-fit: contain; object-position: center;
  background: #fff;
  border: 1px solid var(--c-border);
  border-radius: var(--r-md, 8px);
  padding: 5px 9px;
}
/* 상단 앵커 — 출판사 로고 칩(작게) */
.catmap-anchor-pub { display: inline-flex; align-items: center; gap: 7px; }
.catmap-anchor-pub img { height: 15px; width: auto; max-width: 76px; object-fit: contain; display: block; }

@media (max-width: 480px) {
  .catmap-pub-logo { width: 96px; height: 34px; }
}

@media (max-width: 768px) {
  .catmap-row { grid-template-columns: 1fr; }
  .catmap-vals a + a::before { margin: 0 8px; }
}
