/* Shared by terms.html, privacy.html and privacy-choices.html. */
:root {
  --bg: #ffffff;
  --ink: #10202f;
  --muted: #52606d;
  --line: #dde5ee;
  --soft: #f3f7fb;
  --blue: #1e7fd8;
}
@media (prefers-color-scheme: dark) {
  :root { --bg: #0b1724; --ink: #e8eef4; --muted: #9fb0c0; --line: #213447; --soft: #0f2031; --blue: #5aa9f0; }
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
body { margin: 0; font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; color: var(--ink); background: var(--bg); line-height: 1.7; }
a { color: var(--blue); }
header { border-bottom: 1px solid var(--line); }
.bar, main, .foot { max-width: 820px; margin: 0 auto; padding: 0 20px; }
.bar { display: flex; align-items: center; justify-content: space-between; height: 60px; }
.bar img { display: block; height: 28px; width: auto; }
.bar a.home { font-weight: 600; text-decoration: none; }
main { padding-top: 40px; padding-bottom: 56px; }
h1 { font-size: clamp(1.8rem, 4vw, 2.4rem); line-height: 1.2; margin: 0 0 6px; }
.updated { color: var(--muted); margin: 0 0 28px; }
h2 { font-size: 1.25rem; margin: 36px 0 8px; }
h3 { font-size: 1.05rem; margin: 22px 0 6px; }
p, li { color: var(--ink); }
ul { padding-left: 22px; }
li { margin-bottom: 6px; }
.note { background: var(--soft); border: 1px solid var(--line); border-radius: 12px; padding: 16px 18px; }
table { width: 100%; border-collapse: collapse; margin: 10px 0; font-size: .95rem; }
th, td { text-align: left; vertical-align: top; padding: 10px 12px; border: 1px solid var(--line); }
th { background: var(--soft); }
.table-wrap { overflow-x: auto; }
.card { border: 1px solid var(--line); border-radius: 14px; padding: 22px; margin: 18px 0; }
.card h2 { margin-top: 0; }
.btn { display: inline-block; padding: 10px 20px; border-radius: 999px; border: 0; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none; }
.btn-primary { background: #1473e6; color: #fff; }
.btn-danger { background: #c62828; color: #fff; }
.btn-plain { background: transparent; color: var(--ink); border: 1.5px solid var(--line); }
.btn:disabled { opacity: .6; cursor: default; }
input[type="text"] { padding: 9px 12px; font: inherit; border: 1.5px solid var(--line); border-radius: 6px; background: var(--bg); color: var(--ink); width: min(240px, 100%); }
.error { color: #d32f2f; }
.ok { color: #12805c; }
footer { background: #000; color: #8e8e8e; padding: 22px 0; font-size: .9rem; }
.foot { display: flex; flex-wrap: wrap; gap: 8px 20px; justify-content: space-between; }
footer nav { display: flex; flex-wrap: wrap; gap: 8px 20px; }
footer a { color: #8e8e8e; text-decoration: none; }
footer a:hover, footer a[aria-current] { color: #fff; }
