/* 이용약관·개인정보처리방침.
   리포트와 같은 흰 바탕·토큰을 쓰되, 읽는 글이라 폭을 조금 좁힌다. */

html:has(.legal-page), .legal-body { background: transparent; }
.legal-body::after {
  content: '';
  position: fixed;
  top: 0;
  bottom: 0;
  left: 50%;
  z-index: -1;
  width: min(100%, var(--app-max-width));
  transform: translateX(-50%);
  pointer-events: none;
  background: rgba(255,255,255,.94);
}
.legal-page { width: min(calc(100% - (var(--app-gutter) * 2)), var(--app-max-width)); padding: 16px 0 48px; color: var(--report-ink); }

.legal-kicker { display: none; margin: 0; color: var(--ui-muted); font: 600 12px/1.5 var(--sans); letter-spacing: .1em; }
.legal-page h1 { margin: 0; color: var(--report-ink); font: 700 27px/1.4 var(--serif); letter-spacing: -.045em; }

.legal-page .legal-meta { margin-top: 14px; font-size: 12px; color: var(--ui-muted); }
.legal-page .legal-intro { margin-top: 20px; }

.legal-page section { margin-top: 34px; }
.legal-page h2 { margin: 0 0 8px; color: var(--report-ink); font: 600 16px/1.5 var(--sans); letter-spacing: -.025em; }
.legal-page p { margin: 0; color: var(--report-muted); font: 400 15px/1.85 var(--sans); }
.legal-page a { color: #455a76; }

@media (max-width: 400px) {
  .legal-page h1 { font-size: 27px; }
}

.legal-page section p + p, .legal-page section ul + p { margin-top: 10px; }
.legal-page ul { margin: 10px 0; padding-left: 20px; color: var(--report-muted); font: 400 15px/1.85 var(--sans); }
.legal-page li + li { margin-top: 8px; }
.legal-page strong { color: var(--report-ink); font-weight: 600; }
.legal-page a { overflow-wrap: anywhere; }

/* Long-form legal copy keeps the same paper and reading rhythm. */
.legal-body::after{background:rgba(255,253,248,.96)}.legal-page{overflow-wrap:anywhere}.legal-page .legal-meta{display:inline-block;padding:7px 11px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-soft);line-height:1.6}.legal-page .legal-intro{padding:18px;border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface)}.legal-page section{padding-top:24px;border-top:1px solid var(--ui-line);margin-top:26px}.legal-page h2{margin-bottom:12px;font-size:17px}.legal-page a{color:var(--ui-action);text-underline-offset:4px}.legal-page a:focus-visible{outline:2px solid var(--ui-action);outline-offset:3px}
