:root { color-scheme: dark; --ink: #f5f5f7; --mute: #9a9aa2; --line: rgba(255, 255, 255, 0.08); }
* { box-sizing: border-box; margin: 0; }
body { background: radial-gradient(ellipse at 50% 0%, #0d0d10, #000 60%) fixed, #000; color: var(--ink);
  font: 16px/1.6 -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Inter', 'Segoe UI', Roboto, sans-serif; -webkit-font-smoothing: antialiased; }
main { max-width: 720px; margin: 0 auto; padding: 32px 20px 80px; }
.wm { display: inline-block; font-weight: 800; font-size: 22px; letter-spacing: -0.035em; color: var(--ink); text-decoration: none; margin-bottom: 48px; }
.wm span { color: #5c5c63; font-weight: 700; }
h1 { font-size: clamp(34px, 8vw, 48px); line-height: 1.05; letter-spacing: -0.035em; margin-bottom: 12px; }
.date { color: var(--mute); font-size: 14px; margin-bottom: 40px; }
h2 { font-size: 20px; letter-spacing: -0.02em; margin: 40px 0 12px; padding-top: 24px; border-top: 1px solid var(--line); }
p, li { color: #d4d4d9; }
p + p { margin-top: 12px; }
ul { padding-left: 20px; margin-top: 8px; display: grid; gap: 6px; }
a { color: var(--ink); text-underline-offset: 3px; }
strong { color: var(--ink); }
footer { margin-top: 56px; padding-top: 24px; border-top: 1px solid var(--line); color: var(--mute); font-size: 14px; display: flex; gap: 20px; flex-wrap: wrap; }
footer a { color: var(--mute); }

/* The two legal documents (body.legal; the small status pages share this file and stay as they were). */
/* Line length ≈ 70 characters: paragraphs and lists stop narrower than the column (headings and rules keep full width). */
.legal p, .legal ul { max-width: 38em; } /* ≈ 70 Cyrillic characters at 16 px */
.legal h2 { scroll-margin-top: 16px; }
.legal a:focus-visible { outline: 2px solid rgba(245, 245, 247, 0.6); outline-offset: 3px; border-radius: 4px; }
/* «← На главную» sits above the title; 44 px hit areas, look unchanged. */
.legal .back { display: inline-block; position: relative; color: var(--mute); font-size: 14px; text-decoration: none; margin: -24px 0 20px; }
.legal .back::after, .legal footer a::after, .legal .toc a::after { content: ''; position: absolute; inset: -11px -6px; }
.legal footer a { position: relative; }
.legal .toc { margin: -8px 0 8px; padding: 18px 20px; border-radius: 18px; background: rgba(255, 255, 255, 0.04); box-shadow: inset 0 0 0 1px var(--line); }
.legal .toc ol { padding-left: 22px; margin: 0; display: grid; gap: 2px 28px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.legal .toc li { color: var(--mute); font-size: 14px; }
.legal .toc a { color: #d4d4d9; text-decoration: none; display: inline-block; padding: 5px 0; position: relative; }
.legal .toc a::after { inset: -6px -4px; }
@media (hover: hover) and (pointer: fine) { .legal .toc a:hover, .legal .back:hover { color: var(--ink); } }

/* Contents links glide to their section (not with reduced motion). */
@media (prefers-reduced-motion: no-preference) { html:has(body.legal) { scroll-behavior: smooth; } }
