/* Shared by the legal pages and public profile pages (fonts and colours come from style.css). */
body.page{min-height:100dvh}
.doc{max-width:740px;margin:24px auto 64px;padding:28px 32px;background:var(--paper);border:1px solid var(--line);border-radius:10px}
.doc h1{margin:0 0 4px;font-size:28px;line-height:1.2}
.doc h2{margin:28px 0 8px;font-size:17px}
.doc p,.doc li{color:#2b3641}
.doc ul{padding-inline-start:20px}
.doc li{margin:6px 0}
.doc a{color:var(--ink)}
.doc .meta{margin:0 0 8px;color:var(--muted);font-size:13px}
.doc-links{margin-block-start:36px;padding-block-start:16px;border-block-start:1px solid var(--line);font-size:14px;color:var(--muted)}
.todo{background:#fff3bf;border-radius:3px;padding:0 4px}
@media(max-width:600px){.doc{margin:0;border:0;border-radius:0;padding:20px 18px 48px}}

/* about, contact, data protection */
.top{justify-content:space-between}
.top-nav{display:flex;gap:16px;font-size:14px}
.top-nav a{color:var(--muted);text-decoration:none}
.top-nav a:hover{color:var(--ink);text-decoration:underline}
.doc .lead{font-size:18px;line-height:1.5;color:var(--ink);margin-block-start:8px}
.notice{margin:24px 0;padding:4px 18px 8px;border:1px solid var(--ok);border-radius:10px;background:var(--soft)}
.notice h2{margin-block-start:14px}
/* the About page's button. Not ".btn-link": the public profile page has its own button with that name and loads this file too */
.btn-about{display:inline-block;padding:12px 20px;border:1px solid var(--ink);border-radius:10px;background:var(--ink);color:#fff!important;text-decoration:none;font-weight:600}
.credit{margin:20px 0 0;font-size:13px;color:var(--muted)}
.credit a{color:var(--muted)}
.kv{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0}
.kv th,.kv td{text-align:start;vertical-align:top;padding:8px 10px;border-block-end:1px solid var(--line)}
.kv th{font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.contact-form{display:grid;gap:14px;margin:12px 0 24px}
.contact-form label{display:grid;gap:5px;font-size:14px;font-weight:500;color:var(--muted)}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{width:100%;font:inherit;color:var(--ink);background:var(--paper);border:1px solid #B9C1CA;border-radius:var(--r);padding:10px 11px;min-height:44px}
.contact-form textarea{resize:vertical}
.contact-form .check{display:flex;gap:10px;align-items:flex-start;font-weight:400;line-height:1.45}
.contact-form .check input{margin-block-start:3px;flex:none;width:16px;height:16px;accent-color:var(--ink)}
.contact-form .msg{margin:0}
.hp{position:absolute;inset-inline-start:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:600px){.top-nav{gap:12px}.kv{font-size:13px}}
