/* Shared styles for privacy.html, terms.html and 404.html */
:root{
  color-scheme:light dark;
  --bg:#FAFAF7;--fg:#14201C;--muted:#4B5A55;--accent:#0E7C66;--line:#D9DED9;--banner:#FFF4D6;--banner-fg:#5C4300;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){--bg:#0B1318;--fg:#E8EFEC;--muted:#A9B8B2;--accent:#5FD0B5;--line:#24333A;--banner:#3A2F0E;--banner-fg:#FFE7A6}
}
:root[data-theme="dark"]{--bg:#0B1318;--fg:#E8EFEC;--muted:#A9B8B2;--accent:#5FD0B5;--line:#24333A;--banner:#3A2F0E;--banner-fg:#FFE7A6}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:16px;line-height:1.65}
.wrap{max-width:760px;margin:0 auto;padding:0 16px}
header.legal-top{padding:28px 0 8px;border-bottom:1px solid var(--line);margin-bottom:24px}
header.legal-top a{color:var(--accent);text-decoration:none;font-weight:600}
h1{font-size:clamp(1.6rem,4vw,2.1rem);line-height:1.2;margin:.4rem 0 .6rem}
h2{font-size:1.15rem;margin:2rem 0 .5rem}
p,li{color:var(--fg)}
.meta{color:var(--muted);font-size:.9rem}
.draft{background:var(--banner);color:var(--banner-fg);border-radius:8px;padding:10px 14px;font-size:.9rem;font-weight:600;margin:16px 0}
a{color:var(--accent)}
a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}
/* The skip link moves focus to <main tabindex="-1">. No ring around the whole page. */
main#main:focus{outline:none}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:16px;top:16px;background:var(--bg);padding:8px 12px;z-index:10}
footer.site-footer{border-top:1px solid var(--line);margin-top:40px;padding:20px 0 40px;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;color:var(--muted);letter-spacing:.04em;text-align:center}
footer.site-footer nav a{color:inherit}
.kv{width:100%;border-collapse:collapse;font-size:.92rem;margin:.6rem 0}
.kv th,.kv td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:8px 6px}
.kv th{width:32%;color:var(--muted);font-weight:600}
