:root, :root[data-theme="dark"] { --bg:#1C1B1A; --surface:#262524; --fg:#EDEBE7; --muted:#A29E98; --line:#3A3836; --accent:#EC6464; }
:root[data-theme="light"] { --bg:#E9E7E3; --surface:#F4F3F0; --fg:#1A1A1A; --muted:#625F5A; --line:#CFCCC6; --accent:#B50000; }
* { box-sizing:border-box; margin:0; }
body { min-height:100vh; background:var(--bg); color:var(--fg); font-family:'Figtree',system-ui,sans-serif; font-weight:300; line-height:1.55; transition:background .2s, color .2s; }
.mono { font-family:'DM Mono',monospace; font-size:12px; letter-spacing:.14em; text-transform:uppercase; }
a { color:inherit; text-decoration-color:var(--accent); text-underline-offset:4px; }
a:hover { color:var(--accent); }
.bar { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; }
.bar img { height:34px; width:auto; }
header.bar a { display:block; }
.theme { font:inherit; font-size:12px; color:var(--fg); background:transparent; border:1px solid var(--line); border-radius:999px; padding:8px 14px; cursor:pointer; }
.theme:hover { border-color:var(--accent); color:var(--accent); }
.theme:focus-visible, a:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
/* Dark mode shows the light-ink logo variant */
.logo-dark { display:block; } .logo-light { display:none; }
:root[data-theme="light"] .logo-dark { display:none; } :root[data-theme="light"] .logo-light { display:block; }

/* Home */
.home { min-height:100vh; display:flex; flex-direction:column; justify-content:space-between; padding:32px 16px; max-width:1100px; margin:0 auto; }
.status { display:inline-flex; align-items:center; gap:14px; margin-bottom:28px; padding:12px 20px; border:1px solid var(--line); border-radius:999px; background:var(--surface);
  font-size:clamp(15px,2.4vw,24px); letter-spacing:.16em; }
.status i { width:.7em; height:.7em; border-radius:50%; background:var(--accent); display:block; }
h1 { font-weight:700; font-size:clamp(44px,9vw,112px); line-height:.95; letter-spacing:-.035em; color:var(--accent); max-width:12ch; }
.rule { width:72px; height:3px; background:var(--accent); margin:28px 0; }
.lead { font-size:clamp(18px,2.2vw,24px); line-height:1.3; max-width:34ch; color:var(--fg); }

/* Privacy */
.doc { max-width:680px; margin:0 auto; padding:32px 16px 64px; font-size:18px; }
.doc .bar { margin-bottom:56px; }
.doc h1 { font-size:clamp(34px,6vw,52px); line-height:1; margin-bottom:12px; max-width:none; }
.doc h2 { font-weight:700; font-size:20px; margin:36px 0 8px; }
.doc p, .doc ul { margin-bottom:14px; }
.doc ul { padding-left:20px; }
.doc .mono { color:var(--muted); }
