/**
 * Страницы, которые читают не ученики: политика конфиденциальности и
 * удаление аккаунта. Их адреса уходят в Google Play Console и App Store
 * Connect, открывают их проверяющие и юристы, поэтому здесь нет ни
 * анимаций, ни дракона — только текст, который удобно читать с телефона.
 *
 * Темы те же, что у главной и кабинета, и общий ключ темы в localStorage:
 * человек, выбравший светлую, не должен получить тёмную страницу.
 */
:root[data-theme="light"] {
  --bg: #f5f2ec;
  --card: #fbf9f4;
  --ink: #1b1f2a;
  --muted: #5c6274;
  --line: #ded8cc;
  --accent: #a8742c;
  --warn: #b84a2a;
  --font-head: 'Literata', Georgia, 'Times New Roman', serif;
  --font-body: 'Golos Text', -apple-system, 'Segoe UI', Roboto, sans-serif;
}

:root[data-theme="dark"] {
  --bg: #11141b;
  --card: #171c26;
  --ink: #eef1f6;
  --muted: #a9b2c4;
  --line: #242a38;
  --accent: #d8b26a;
  --warn: #c2603f;
  --font-head: 'Unbounded', 'Manrope', -apple-system, 'Segoe UI', sans-serif;
  --font-body: 'Manrope', -apple-system, 'Segoe UI', Roboto, sans-serif;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font: 17px/1.62 var(--font-body);
  -webkit-font-smoothing: antialiased;
  padding-top: env(safe-area-inset-top, 0px);
  padding-bottom: env(safe-area-inset-bottom, 0px);
}

.wrap { max-width: 760px; margin: 0 auto; padding: 0 20px 72px; }

header {
  border-bottom: 1px solid var(--line);
  margin-bottom: 36px;
}
header .wrap {
  display: flex; align-items: center; gap: 16px;
  padding-block: 18px; padding-bottom: 18px;
}
.brand {
  font: 700 19px/1 var(--font-head);
  letter-spacing: -.02em; text-decoration: none; color: var(--ink);
}
.grow { flex: 1; }
.theme {
  border: 1px solid var(--line); background: transparent; color: var(--muted);
  border-radius: 999px; padding: 8px 14px; font: 600 14px/1 var(--font-body); cursor: pointer;
}
.theme:hover { color: var(--ink); border-color: var(--accent); }

h1 {
  font: 700 clamp(30px, 5vw, 42px)/1.1 var(--font-head);
  letter-spacing: -.02em; margin: 0 0 10px; text-wrap: balance;
}
h2 {
  font: 700 clamp(21px, 3vw, 26px)/1.2 var(--font-head);
  letter-spacing: -.02em; margin: 40px 0 12px;
}
h3 { font: 600 17px/1.3 var(--font-body); margin: 26px 0 8px; }
p { margin: 0 0 14px; }
ul { margin: 0 0 16px; padding-left: 22px; }
li { margin-bottom: 7px; }
a { color: var(--accent); }
.muted { color: var(--muted); }
.date { color: var(--muted); font-size: 15px; margin-bottom: 30px; }

.card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 22px 24px;
  margin: 24px 0;
}
.card h3:first-child, .card h2:first-child { margin-top: 0; }
.card ul:last-child, .card p:last-child { margin-bottom: 0; }
.card.warn { border-color: var(--warn); }
.card.warn h3 { color: var(--warn); }

table { border-collapse: collapse; width: 100%; margin: 0 0 18px; font-size: 16px; }
th, td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid var(--line); }
th { font-weight: 600; color: var(--muted); font-size: 14px; text-transform: uppercase; letter-spacing: .04em; }

footer {
  border-top: 1px solid var(--line);
  color: var(--muted); font-size: 15px;
}
footer .wrap { padding-block: 22px 28px; display: flex; flex-wrap: wrap; gap: 10px 20px; }

@media (max-width: 560px) {
  body { font-size: 16px; }
  .wrap { padding-inline: 16px; }
  .card { padding: 18px 16px; }
  th, td { padding: 8px 8px; }
}
