/* 이용약관·개인정보·문의 V2. docs/design-system-v2.md 기준 · .legal-v2 범위만 · 2026-10-01 */
@font-face{font-family:Pretendard;src:url('/assets/fonts/pretendard/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
body:has(.legal-v2){background:var(--ds-bg,#f7f3ec)}
.legal-v2{max-width:680px;width:100%;margin:0 auto;padding:16px 16px calc(48px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px}
.legal-v2 .lg-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* 위 줄: 뒤로 · 언어 */
.legal-v2 .lg-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.legal-v2 .lg-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--ds-muted);font-size:.875rem;font-weight:600;text-decoration:none}
.legal-v2 .lg-back span{font-size:1.25rem;line-height:1}
.legal-v2 .legal-lang-switch{display:inline-flex;padding:3px;border-radius:12px;background:#efe9df}
.legal-v2 .legal-lang-switch__link{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:10px;color:var(--ds-muted);font-size:.875rem;text-decoration:none}
.legal-v2 .legal-lang-switch__link.is-active{background:var(--ds-surface);color:var(--ds-ink);font-weight:600;box-shadow:0 1px 2px rgb(0 0 0 / .06)}
.legal-v2 .legal-lang-switch__sep{display:none}

/* 제목 */
.legal-v2 .lg-head{display:grid;gap:8px;padding-bottom:16px;border-bottom:1px solid var(--ds-line)}
.legal-v2 .lg-head h1{font-size:1.5rem;line-height:1.35}
.legal-v2 .lg-head p{font-size:.875rem;color:var(--ds-muted)}

/* 본문 (includes/legal/*.php — 운영자 작성 HTML) */
.legal-v2 .lg-doc{color:var(--ds-ink);line-height:1.7}
.legal-v2 .lg-doc h2{margin:32px 0 8px;font-size:1.125rem;font-weight:700;line-height:1.4;color:var(--ds-ink)}
.legal-v2 .lg-doc h2:first-child{margin-top:0}
.legal-v2 .lg-doc h3{margin:20px 0 8px;font-size:1rem;font-weight:600;color:var(--ds-ink)}
.legal-v2 .lg-doc p{margin:0 0 12px;font-size:.9375rem;color:#3b4a41}
.legal-v2 .lg-doc :is(ul,ol){margin:0 0 12px;padding-left:1.25em}
.legal-v2 .lg-doc li{margin-bottom:6px;font-size:.9375rem;color:#3b4a41}
.legal-v2 .lg-doc strong{color:var(--ds-ink);font-weight:600}
.legal-v2 .lg-doc a{color:var(--ds-primary);font-weight:600;overflow-wrap:anywhere}
.legal-v2 .lg-doc .legal-doc__table{width:100%;margin:12px 0 16px;border-collapse:collapse;font-size:.875rem;display:block;overflow-x:auto}
.legal-v2 .lg-doc .legal-doc__table :is(th,td){padding:10px 12px;border-bottom:1px solid var(--ds-line);text-align:left;vertical-align:top}
.legal-v2 .lg-doc .legal-doc__table th{background:#f3efe7;font-weight:600;white-space:nowrap}
.legal-v2 .lg-doc .legal-doc__callout{margin:16px 0;padding:12px 16px;border-radius:12px;border:1px solid #ecd5c6;background:#f8ece4;color:#7a3a22;font-size:.9375rem;line-height:1.6}
.legal-v2 .lg-doc .legal-doc__footnote{font-size:.8125rem;color:var(--ds-muted)}

/* 문의 */
.legal-v2 .lg-card{background:var(--ds-surface);border:1px solid var(--ds-line);border-radius:20px;padding:16px;display:grid;gap:12px}
.legal-v2 .lg-card h2{font-size:1.125rem}
.legal-v2 .lg-card p{color:var(--ds-muted);font-size:.9375rem;line-height:1.6}
.legal-v2 .lg-intro{color:var(--ds-ink)!important}
.legal-v2 .lg-kv{display:grid;margin:0}
.legal-v2 .lg-kv div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid var(--ds-line);font-size:.9375rem}
.legal-v2 .lg-kv div:first-child{border-top:0;padding-top:0}
.legal-v2 .lg-kv dt{color:var(--ds-muted)}
.legal-v2 .lg-kv dd{margin:0;min-width:0}
.legal-v2 .lg-kv a{color:var(--ds-primary);font-weight:600;text-decoration:none;overflow-wrap:anywhere}
.legal-v2 .lg-mail{width:100%}
.legal-v2 .lg-links{padding:0 16px;gap:0}
.legal-v2 .lg-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:12px 0;color:var(--ds-ink);text-decoration:none}
.legal-v2 .lg-links a+a{border-top:1px solid var(--ds-line)}
.legal-v2 .lg-links span{display:grid;gap:2px;min-width:0}
.legal-v2 .lg-links b{font-weight:600}
.legal-v2 .lg-links small{font-size:.8125rem;color:var(--ds-muted)}
.legal-v2 .lg-links em{font-style:normal;color:var(--ds-control);font-size:1.25rem}

@media(min-width:768px){
  .legal-v2{padding-top:32px;gap:24px}
  .legal-v2 .lg-head h1{font-size:1.75rem}
  .legal-v2 .lg-mail{width:auto;justify-self:start;padding-inline:24px}
  .legal-v2 .lg-links a:hover b{color:var(--ds-primary)}
}
