/* Pere Privacy Notice: a quiet reading page in Pere's colours (dark, or light
   when the device prefers it). Served at /console/privacy.css. */
:root { color-scheme: dark light; --bg: #060A09; --panel: #0E1513; --line: rgba(242, 239, 232, .1); --text: #F2EFE8; --muted: #A7B1AD; --accent: #3EE0BB; --warn-bg: rgba(255, 196, 92, .12); --warn: #FFC45C; }
@media (prefers-color-scheme: light) { :root { --bg: #F6F4EF; --panel: #FFFFFF; --line: rgba(12, 19, 18, .12); --text: #0C1312; --muted: #4A5450; --accent: #0A6D66; --warn-bg: #FFF4DB; --warn: #8A5A00; } }
* { box-sizing: border-box; }
html { background: var(--bg); color: var(--text); -webkit-text-size-adjust: 100%; }
body { margin: 0; font: 17px/1.65 "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
a { color: var(--accent); text-underline-offset: 3px; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 6px; }
.skip { position: absolute; left: 16px; top: -60px; padding: 10px 16px; border-radius: 12px; background: var(--accent); color: var(--bg); font-weight: 600; }
.skip:focus { top: 16px; }
header { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: min(100% - 40px, 820px); margin: 0 auto; padding: 28px 0 8px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--text); font-weight: 600; font-size: 19px; text-decoration: none; }
.brand img { width: 30px; height: 30px; }
main { width: min(100% - 40px, 820px); margin: 0 auto; padding: 24px 0 80px; }
h1 { font-size: clamp(34px, 5vw, 48px); line-height: 1.08; letter-spacing: -.03em; margin: 18px 0 10px; }
h2 { font-size: 22px; letter-spacing: -.01em; margin: 44px 0 10px; padding-top: 8px; }
h3 { font-size: 17px; margin: 22px 0 6px; }
p, li { color: var(--text); }
.muted { color: var(--muted); }
.draft { margin: 0 0 20px; padding: 14px 16px; border-radius: 14px; background: var(--warn-bg); color: var(--warn); border: 1px solid currentColor; }
mark.todo { background: var(--warn-bg); color: var(--warn); padding: 1px 6px; border-radius: 6px; font-weight: 600; }
nav.toc { margin: 24px 0; padding: 18px 22px; border-radius: 18px; background: var(--panel); border: 1px solid var(--line); }
nav.toc ol { margin: 6px 0 0; padding-left: 20px; columns: 2 220px; }
table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 15.5px; }
th, td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid var(--line); }
th { color: var(--muted); font-weight: 600; }
footer { width: min(100% - 40px, 820px); margin: 0 auto; padding: 24px 0 48px; border-top: 1px solid var(--line); color: var(--muted); font-size: 14.5px; }
@media (max-width: 600px) { table, thead, tbody, tr, th, td { display: block; } thead { display: none; } td { border: 0; padding: 4px 0; } tr { padding: 10px 0; border-bottom: 1px solid var(--line); } }
