/* ============================================================
   법적 고지 페이지 공통 스타일
   privacy.html · terms.html · delete-account.html 이 함께 쓴다.

   앱과 같은 화이트 미니멀 · Amber. 다만 여기는 **읽는 문서**라
   본문 폭을 좁게 잡고 줄간격을 넉넉히 둔다.
   ============================================================ */

:root {
  --bg: #FFFFFF;
  --surface: #EFEBE4;
  --ink1: #14161A;
  --ink2: #4B5563;
  --ink3: #6E7681;
  --edge: #DDD8CF;
  --accent: #B0602C;
  --danger: #C0392B;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #14161A;
    --surface: #1E2126;
    --ink1: #F3F4F6;
    --ink2: #C3C7CE;
    --ink3: #8B919B;
    --edge: #2C3037;
    --accent: #E0935F;
  }
}

* { box-sizing: border-box; }

body {
  margin: 0;
  padding: 32px 20px 96px;
  background: var(--bg);
  color: var(--ink1);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
               "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
  font-size: 15px;
  line-height: 1.75;
  -webkit-text-size-adjust: 100%;
}

main { max-width: 44rem; margin: 0 auto; }

/* 언어 전환 */
.langbar {
  display: flex; gap: 8px; justify-content: flex-end;
  max-width: 44rem; margin: 0 auto 24px;
}
.langbar button {
  font: inherit; font-size: 13px; font-weight: 600;
  padding: 6px 14px; border-radius: 999px; cursor: pointer;
  color: var(--ink2); background: var(--surface);
  border: 1px solid var(--edge);
}
.langbar button[aria-pressed="true"] {
  color: #fff; background: var(--accent); border-color: var(--accent);
}

.brand {
  display: flex; align-items: center; gap: 10px;
  font-weight: 800; letter-spacing: 0.04em; font-size: 15px;
  color: var(--accent); margin-bottom: 4px;
}
.brand span { display: inline-block; width: 10px; height: 10px;
  border-radius: 3px; background: var(--accent); }

h1 { font-size: 26px; line-height: 1.3; margin: 0 0 6px; letter-spacing: -0.01em; }
h2 {
  font-size: 17px; margin: 40px 0 10px; padding-top: 20px;
  border-top: 1px solid var(--edge);
}
h2:first-of-type { border-top: none; padding-top: 0; }
h3 { font-size: 15px; margin: 22px 0 6px; }

p, li { color: var(--ink2); }
li { margin: 4px 0; }
ul { padding-left: 20px; }
strong { color: var(--ink1); }

.updated { color: var(--ink3); font-size: 13px; margin: 0 0 28px; }

.callout {
  background: var(--surface);
  border-left: 3px solid var(--accent);
  border-radius: 0 10px 10px 0;
  padding: 14px 16px;
  margin: 18px 0;
}
.callout p { margin: 0; color: var(--ink1); }

table {
  width: 100%; border-collapse: collapse; margin: 14px 0; font-size: 14px;
  display: block; overflow-x: auto; white-space: nowrap;
}
@media (min-width: 620px) { table { display: table; white-space: normal; } }
th, td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--edge); }
th { color: var(--ink1); font-weight: 700; }
td { color: var(--ink2); vertical-align: top; }

a { color: var(--accent); }

footer {
  max-width: 44rem; margin: 56px auto 0; padding-top: 20px;
  border-top: 1px solid var(--edge);
  color: var(--ink3); font-size: 13px;
}
footer a { margin-right: 14px; }

[lang]:not([lang="ko"]):not([lang="en"]) { display: none; }
