/* KORA — home / support / privacy pages (all languages) */
:root {
  color-scheme: light dark;
  --accent: #D85A30;
  --accent-ink: #b8461f;
  --accent-soft: #fbe5dc;
  --ink: #1c1817;
  --ink-soft: #5c5552;
  --line: #ece6e2;
  --bg: #fdfaf7;
  --card: #ffffff;
}

@media (prefers-color-scheme: dark) {
  :root {
    --accent: #f08a62;
    --accent-ink: #f5a585;
    --accent-soft: #3a241c;
    --ink: #f3eeeb;
    --ink-soft: #b3aaa6;
    --line: #3a3431;
    --bg: #161312;
    --card: #211d1b;
  }
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Hiragino Sans",
               "PingFang TC", "PingFang SC", "Apple SD Gothic Neo",
               "Noto Sans CJK KR", "Noto Sans KR", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC",
               "Helvetica Neue", Arial, sans-serif;
  color: var(--ink);
  background: var(--bg);
  line-height: 1.75;
  font-size: 17px;
  -webkit-text-size-adjust: 100%;
  overflow-wrap: anywhere;
}
:lang(ja) body, body:lang(ja) {
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
}
:lang(zh-Hans) body, body:lang(zh-Hans) {
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Noto Sans SC", sans-serif;
}
:lang(zh-Hant) body, body:lang(zh-Hant) {
  font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", "Noto Sans TC", sans-serif;
}

.container {
  max-width: 760px;
  margin: 0 auto;
  padding: 24px 16px 88px;
}
@media (min-width: 600px) {
  .container { padding: 32px 24px 96px; }
}

header.site {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 20px;
  margin-bottom: 18px;
  border-bottom: 1px solid var(--line);
}
header.site img {
  width: 56px;
  height: 56px;
  border-radius: 13px;
  box-shadow: 0 1px 4px rgba(0,0,0,0.12);
  flex-shrink: 0;
}
header.site .title {
  font-weight: 700;
  font-size: 20px;
  letter-spacing: -0.01em;
  line-height: 1.3;
}
header.site .subtitle {
  color: var(--ink-soft);
  font-size: 15px;
  line-height: 1.4;
}

nav.langs {
  display: flex;
  gap: 6px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
nav.langs a {
  border: 1px solid var(--line);
  color: var(--ink-soft);
  font-size: 14px;
  padding: 4px 12px;
  border-radius: 999px;
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease;
}
nav.langs a[aria-current="true"] {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
  font-weight: 600;
}
nav.langs a:hover:not([aria-current="true"]) {
  background: var(--accent-soft);
  color: var(--accent);
}

nav.pages {
  display: flex;
  gap: 18px;
  margin-bottom: 30px;
  font-size: 16px;
  flex-wrap: wrap;
}
nav.pages a {
  color: var(--ink-soft);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  padding-bottom: 2px;
}
nav.pages a:hover { color: var(--accent); }
nav.pages a[aria-current="page"] {
  color: var(--accent);
  border-bottom-color: var(--accent);
  font-weight: 600;
}

h1 {
  font-size: 28px;
  line-height: 1.35;
  letter-spacing: -0.02em;
  margin: 0 0 14px;
}
@media (min-width: 600px) {
  h1 { font-size: 32px; }
}
h2 {
  font-size: 22px;
  line-height: 1.4;
  letter-spacing: -0.01em;
  margin: 40px 0 12px;
}
h3 {
  font-size: 18px;
  line-height: 1.45;
  margin: 24px 0 6px;
  color: var(--accent-ink);
}
.lead {
  color: var(--ink-soft);
  font-size: 18px;
  margin-bottom: 28px;
}
p { margin: 8px 0 14px; }
ul, ol { padding-left: 22px; }
li { margin: 5px 0; }
a { color: var(--accent); }
strong { font-weight: 650; }

.features {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin: 16px 0 8px;
}
@media (min-width: 640px) {
  .features { grid-template-columns: 1fr 1fr; }
}
.card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 16px 20px;
  margin: 14px 0;
}
.features .card { margin: 0; }
.card h3 { margin-top: 0; }
.card p:last-child, .card ul:last-child { margin-bottom: 0; }

.note {
  color: var(--ink-soft);
  font-size: 15px;
}

.table-wrap {
  overflow-x: auto;
  margin: 12px 0 18px;
  -webkit-overflow-scrolling: touch;
}
table {
  border-collapse: collapse;
  width: 100%;
  font-size: 15px;
  line-height: 1.6;
}
th, td {
  border: 1px solid var(--line);
  padding: 8px 10px;
  text-align: left;
  vertical-align: top;
}
th {
  background: var(--accent-soft);
  font-weight: 600;
  white-space: nowrap;
}

.contact {
  background: var(--accent-soft);
  border-radius: 14px;
  padding: 16px 20px;
  margin: 28px 0;
}
.contact a { font-weight: 600; }

footer.site {
  margin-top: 56px;
  padding-top: 20px;
  border-top: 1px solid var(--line);
  font-size: 14px;
  color: var(--ink-soft);
  text-align: center;
}
footer.site a { color: var(--ink-soft); }

/* Root redirect pages */
.picker {
  list-style: none;
  padding: 0;
  display: grid;
  gap: 10px;
}
.picker a {
  display: block;
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px 16px;
  text-decoration: none;
  font-weight: 600;
}
.picker a:hover { background: var(--accent-soft); }
