/* pages/legal.css — 개인정보처리방침(/privacy)·사이트맵(/sitemap). 토큰만 쓴다. 표는 회사소개 정보표(company-info)와 같은 모양. */

/* ── 개인정보처리방침 ─────────────────────────────── */
.legal { max-width: 880px; margin-inline: auto; color: var(--color-text-body); font-size: var(--text-base); line-height: 1.8; word-break: keep-all; overflow-wrap: anywhere; }
.legal__lead { color: var(--color-text); font-size: var(--text-md); }
.legal p + .legal__table,
.legal__lead + .legal__table { margin-top: var(--space-6); }
.legal__table { border-top: 1px solid var(--color-text); }
.legal__row { display: flex; gap: var(--space-4); padding: var(--space-3) 0; border-bottom: 1px solid var(--color-line); }
.legal__row dt { flex: 0 0 120px; font-weight: var(--weight-medium); color: var(--color-text); }
.legal__row dd { min-width: 0; color: var(--color-text); }
.legal__sec { margin-top: var(--space-8); }
.legal__title { margin-bottom: var(--space-4); font-size: var(--text-lg); font-weight: var(--weight-bold); color: var(--color-text); line-height: var(--leading-tight); }
.legal__num { color: var(--color-accent-ink); }
.legal__list { padding-left: 1.2em; list-style: disc; }
.legal__list > li + li { margin-top: var(--space-2); }
.legal__list li::marker { color: var(--color-text-muted); }
/* 이용약관 조문: 항(①②③)은 번호를 내어 쓰고, 호(1. 2.)는 그 안에 */
.legal__clauses > li { position: relative; }
.legal__clauses > li + li { margin-top: var(--space-2); }
.legal__clauses > li:has(> .legal__clause-no) { padding-left: 1.6em; }
.legal__clause-no { position: absolute; left: 0; color: var(--color-text); }
.legal__sub { margin-top: var(--space-2); padding-left: 1.6em; list-style: decimal; }
.legal__sub > li + li { margin-top: var(--space-1); }
.legal__sub li::marker { color: var(--color-text-muted); }
.legal a { color: var(--color-primary-ink); text-decoration: underline; text-underline-offset: 2px; }

@media (min-width: 960px) {
  .legal__row dt { flex-basis: 200px; }
  .legal__title { font-size: var(--text-xl); }
}

/* ── 사이트맵 ─────────────────────────────────────── */
.sitemap { display: grid; gap: var(--space-7) var(--space-6); grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
.sitemap__head { padding-bottom: var(--space-3); border-bottom: 1px solid var(--color-text); font-size: var(--text-md); font-weight: var(--weight-bold); color: var(--color-text); }
.sitemap__head a { color: inherit; }
.sitemap__list { margin-top: var(--space-3); }
.sitemap__list a { display: block; padding: var(--space-2) 0; color: var(--color-text-body); }
.sitemap__head a:hover,
.sitemap__list a:hover { color: var(--color-primary-text); }
.sitemap a:focus-visible { outline: 2px solid var(--color-primary-text); outline-offset: 2px; }
