/* 법적 문서 페이지 — style.css의 토큰/기본 스타일 위에 덧씌움 */
.legal-header { border-bottom: 1px solid var(--ink); }
.legal-header .header-inner { justify-content: space-between; }
.legal-back { font-size: .9rem; color: var(--ink-2); }
.legal-back:hover { color: var(--ink); }

.draft-banner {
  background: #fde7d9; border-bottom: 1px dashed var(--accent); color: var(--accent-ink);
  font-family: var(--mono); font-size: .8rem; padding: 10px 0;
}

.legal { max-width: 760px; padding: 64px var(--gutter) 96px; margin: 0 auto; }
.legal h1 { font-size: clamp(2rem, 5vw, 3rem); font-weight: 800; letter-spacing: -.03em; }
.legal .meta-line { font-family: var(--mono); font-size: .8rem; color: var(--muted); margin-bottom: 40px; }
.legal h2 { font-size: 1.3rem; max-width: none; margin-top: 2.4em; padding-top: 1.2em; border-top: 1px solid var(--line); }
.legal h3 { font-size: 1.02rem; margin-top: 1.6em; }
.legal p, .legal li { color: var(--ink-2); }
.legal ul { list-style: disc; padding-left: 1.3em; margin: 0 0 1em; }
.legal li { margin-bottom: .4em; }
.legal a { border-bottom: 1px solid var(--line); }
.legal a:hover { color: var(--accent-ink); border-color: currentColor; }
.legal .caps { text-transform: uppercase; font-size: .9rem; }
.legal-toc { border: 1px solid var(--line); padding: 16px 20px; margin-bottom: 8px; font-size: .92rem; }
.legal-toc ol { list-style: decimal; padding-left: 1.3em; margin: 0; columns: 2; column-gap: 32px; }
.legal-toc li { margin: 2px 0; }
.legal-footer { border-top: 1px solid var(--line); padding: 24px 0; font-family: var(--mono); font-size: .78rem; color: var(--muted); }
.legal-footer .container { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.legal-footer a:hover { color: var(--ink); }

@media (max-width: 600px) { .legal-toc ol { columns: 1; } }
