/* Static policy pages (privacy-policy.html, terms-of-service.html, data-deletion.html, support.html).
   Plain HTML + this file: readable without JavaScript by reviewers and crawlers. Colours follow the
   game's tokens (src/styles/tokens.css). */
:root {
  --bg: #1b1640; --panel: #2d2360; --line: #5a4aa8; --ink: #efeaff; --ink-2: #b9b0dc; --gold: #ffc83d; --gold-light: #ffe07a;
  color-scheme: dark;
}
* { box-sizing: border-box; }
html { background: var(--bg); }
body {
  margin: 0; background: linear-gradient(180deg, #2d2360 0, var(--bg) 420px) no-repeat, var(--bg);
  color: var(--ink); font: 16px/1.65 'Figtree', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}
a { color: var(--gold-light); }
a:focus-visible { outline: 3px solid var(--gold); outline-offset: 2px; }
.page { max-width: 820px; margin: 0 auto; padding: 24px 16px 64px; }
.brand { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 28px; }
.brand a.home { font: 400 26px/1 'Lilita One', 'Arial Rounded MT Bold', system-ui, sans-serif; color: var(--gold); text-decoration: none; letter-spacing: 0.4px; }
.brand nav { display: flex; gap: 14px; flex-wrap: wrap; font-size: 14px; }
.brand nav a { color: var(--ink-2); text-decoration: none; }
.brand nav a:hover, .brand nav a[aria-current="page"] { color: var(--gold-light); text-decoration: underline; }
h1 { font: 400 36px/1.15 'Lilita One', 'Arial Rounded MT Bold', system-ui, sans-serif; color: var(--gold); margin: 0 0 6px; letter-spacing: 0.4px; }
h2 { font-size: 21px; color: var(--gold-light); margin: 34px 0 8px; }
h3 { font-size: 17px; margin: 22px 0 6px; }
.updated { color: var(--ink-2); font-size: 14px; margin: 0 0 22px; }
.notice { background: var(--panel); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 10px; padding: 14px 16px; margin: 18px 0; }
.notice p { margin: 0.3em 0; }
ul, ol { padding-left: 22px; }
li { margin: 4px 0; }
table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 15px; }
th, td { text-align: left; vertical-align: top; padding: 9px 10px; border-bottom: 1px solid var(--line); }
th { color: var(--gold-light); font-weight: 600; }
.table-wrap { overflow-x: auto; }
form.lookup { display: flex; gap: 8px; flex-wrap: wrap; margin: 10px 0; }
form.lookup input { flex: 1 1 220px; padding: 10px 12px; border-radius: 8px; border: 1px solid var(--line); background: #140f33; color: var(--ink); font: inherit; }
form.lookup button { padding: 10px 18px; border: 0; border-radius: 8px; background: linear-gradient(#ffe07a, #ffc83d 50%, #d8931a); color: #3b2200; font-weight: 800; cursor: pointer; }
#status-result { min-height: 1.6em; }
footer.site { margin-top: 48px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--ink-2); font-size: 14px; }
footer.site nav { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 8px; }
nav.toc { background: var(--panel); border: 1px solid var(--line); border-radius: 10px; padding: 12px 16px; margin: 18px 0 8px; font-size: 15px; }
nav.toc .toc-title { margin: 0 0 4px; font-weight: 700; color: var(--gold-light); }
nav.toc ol { margin: 0; columns: 2 220px; column-gap: 24px; }
nav.toc li { margin: 2px 0; break-inside: avoid; }
code { font-size: 0.92em; background: #140f33; padding: 1px 5px; border-radius: 4px; }
h2[id], h3[id] { scroll-margin-top: 16px; }
