/*
 * Оформление правовых страниц: политика конфиденциальности и условия.
 *
 * Отдельный файл, а не <style> в каждой странице: документы читают редко,
 * но правят регулярно, и разъезжающееся оформление двух почти одинаковых
 * страниц — первое, что при этом ломается.
 */

:root {
    color-scheme: light dark;
    --ink: #16211d;
    --muted: #5b6b64;
    --bg: #f7faf8;
    --card: #ffffff;
    --line: #dfe7e3;
    --brand: #5f9774;
    --brand-ink: #34614a;
    --warn-bg: #fff8e6;
    --warn-line: #e3b341;
}

@media (prefers-color-scheme: dark) {
    :root {
        --ink: #eef4f1;
        --muted: #9aaba3;
        --bg: #0b1310;
        --card: #111c17;
        --line: #22322b;
        --brand: #7fb492;
        --brand-ink: #a7d7ba;
        --warn-bg: #2a2312;
        --warn-line: #8a6d1f;
    }
}

body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    max-width: 780px;
    margin: 0 auto;
    padding: 28px 20px 80px;
    line-height: 1.7;
    color: var(--ink);
    background: var(--bg);
    font-size: 16px;
}

.brand {
    display: inline-flex;
    align-items: baseline;
    gap: 0;
    text-decoration: none;
    margin-bottom: 26px;
    font-size: 22px;
}

.brand svg { width: 1.744em; height: 1.744em; flex: none; }

.brand span {
    font-weight: 800;
    letter-spacing: -.04em;
    color: var(--brand-ink);
    margin-left: -.131em;
}

.langbar {
    margin: 0 0 20px;
    font-size: 14px;
    color: var(--muted);
}

.langbar strong { color: var(--ink); }

h1 { font-size: 30px; line-height: 1.25; margin: 0 0 6px; letter-spacing: -.02em; }
h2 { font-size: 20px; margin: 38px 0 10px; letter-spacing: -.01em; }
h3 { font-size: 17px; margin: 24px 0 6px; }

.updated { color: var(--muted); font-size: 14px; margin: 0 0 26px; }

.card {
    background: var(--card);
    border: 1px solid var(--line);
    border-left: 4px solid var(--brand);
    border-radius: 12px;
    padding: 16px 18px;
    margin: 22px 0;
}

.card.warn { border-left-color: var(--warn-line); background: var(--warn-bg); }
.card p:first-child { margin-top: 0; }
.card p:last-child { margin-bottom: 0; }

a { color: var(--brand-ink); }

ul, ol { padding-left: 22px; }
li { margin: 6px 0; }

table {
    width: 100%;
    border-collapse: collapse;
    margin: 16px 0;
    font-size: 15px;
    display: block;
    overflow-x: auto;
}

th, td {
    border: 1px solid var(--line);
    padding: 9px 11px;
    text-align: left;
    vertical-align: top;
}

th { background: var(--card); font-weight: 700; }

code {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: 5px;
    padding: 1px 5px;
    font-size: 14px;
}

footer {
    margin-top: 52px;
    padding-top: 20px;
    border-top: 1px solid var(--line);
    color: var(--muted);
    font-size: 14px;
}

footer a { margin-right: 14px; }
