* { box-sizing: border-box; }
body { margin: 0; background: #f7f9fc; color: #13243a; font: 17px/1.75 system-ui, -apple-system, sans-serif; }
main { max-width: 800px; margin: 0 auto; padding: 36px 24px 64px; }
header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 28px; }
.wordmark { display: inline-flex; align-items: center; gap: 12px; color: inherit; text-decoration: none; font-size: 20px; font-weight: 700; line-height: 1; }
.wordmark img { display: block; flex-shrink: 0; width: 56px; height: auto; }
.wordmark > span { display: flex; align-items: center; min-height: 40px; }
#page-language { appearance: none; width: 140px; height: 44px; padding: 0 40px 0 16px; border: 1px solid #7e8996; border-radius: 8px; background: #fff url('/icons/krds-angle.svg') no-repeat right 16px center / 16px; color: #526276; font: inherit; font-size: 16px; cursor: pointer; }
#page-language:focus-visible { outline: 2px solid #005bcc; outline-offset: 2px; }
h1 { font-size: 32px; line-height: 1.3; }
h2 { font-size: 22px; margin-top: 32px; }
.section-heading { display: flex; align-items: center; gap: 12px; }
.section-icon { width: 40px; height: 40px; flex-shrink: 0; padding: 8px; border-radius: 12px; color: #0070fe; background: #eaf2ff; }
a { color: #005bcc; text-underline-offset: 4px; }
nav { display: flex; gap: 20px; flex-wrap: wrap; }
nav a { color: #657184; text-decoration: underline; }
nav a:hover { color: #13243a; }
.page-toc { display: block; margin-top: 24px; padding: 20px 24px; border: 1px solid #d9e1ec; border-radius: 16px; background: white; }
.page-toc h2 { margin: 0 0 8px; font-size: 18px; }
.page-toc ol { margin: 0; padding-left: 24px; }
.page-toc li + li { margin-top: 4px; }
.page-toc a { color: #005bcc; }
[id] { scroll-margin-top: 24px; }
article { background: white; border: 1px solid #d9e1ec; border-radius: 16px; padding: 24px; margin-top: 24px; }
p, li { overflow-wrap: anywhere; }
.muted { color: #526276; }
.data-lifecycle h3 { margin: 28px 0 8px; font-size: 19px; line-height: 1.5; }
.data-lifecycle h3 + p { margin-top: 0; }
.policy-table-scroll { max-width: 100%; overflow-x: auto; border: 1px solid #d9e1ec; border-radius: 10px; }
.policy-table-scroll:focus-visible { outline: 2px solid #005bcc; outline-offset: 3px; }
.policy-table { width: 100%; min-width: 560px; border-collapse: collapse; table-layout: fixed; font-size: 15px; line-height: 1.65; }
.policy-table caption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.policy-table th, .policy-table td { padding: 14px; text-align: left; vertical-align: top; overflow-wrap: anywhere; border-bottom: 1px solid #d9e1ec; }
.policy-table thead th { background: #eef3fa; font-weight: 700; }
.policy-table th:first-child { width: 25%; }
.policy-table thead th:nth-child(2) { width: 24%; }
.policy-table tbody th { font-weight: 600; }
.policy-table tbody tr:last-child > * { border-bottom: 0; }
.external-ai h3 { margin: 28px 0 12px; font-size: 19px; line-height: 1.5; }
.policy-table--ai { min-width: 680px; }
.policy-table--ai th:first-child { width: 17%; }
.policy-table--ai thead th:nth-child(2) { width: 21%; }
.policy-table--ai thead th:nth-child(3) { width: 36%; }
.policy-table--two thead th:nth-child(2) { width: 75%; }
footer { margin-top: 32px; }
details { border-top: 1px solid #d9e1ec; }
summary { cursor: pointer; font-size: 18px; font-weight: 600; padding: 16px 0; }
summary:focus-visible { outline: 2px solid #005bcc; outline-offset: 4px; border-radius: 4px; }
details[open] summary { padding-bottom: 4px; }
details p { margin: 8px 0 20px; }
details:first-of-type { border-top: 0; }
html[lang="ko"] [data-language="en"], html[lang="en"] [data-language="ko"] { display: none; }
@media (max-width: 480px) {
  main { padding: 24px 16px; }
  article { padding: 18px; }
  h1 { font-size: 27px; }
  .wordmark { gap: 8px; }
  #page-language { width: 132px; padding-left: 12px; padding-right: 36px; background-position: right 12px center; }
}
