/* One stylesheet, served from this origin, because the content-security-policy
   on every page is `style-src 'self'` — no inline styles, no CDN, nothing
   loaded from anywhere else. A page that cannot reach a third party cannot
   leak a token to one through a Referer header. */
:root { color-scheme: light dark; --ink: #1d2433; --quiet: #5b74a0; --line: #d7ddea;
  --paper: #ffffff; --back: #f4f6fb; --accent: #2f57c4; }
@media (prefers-color-scheme: dark) {
  :root { --ink: #e8ecf5; --quiet: #9fb0cf; --line: #2b3550; --paper: #161c2b;
    --back: #0f1421; }
}
* { box-sizing: border-box; }
body { margin: 0; padding: 24px 16px; background: var(--back); color: var(--ink);
  font: 400 16px/1.6 -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.card { max-width: 34rem; margin: 6vh auto; background: var(--paper); padding: 28px;
  border: 1px solid var(--line); border-radius: 12px; }
h1 { margin: 0 0 16px; font-size: 24px; line-height: 1.25; }
p { margin: 0 0 14px; }
.note { color: var(--quiet); font-size: 14px; margin-top: 20px; }
label { display: block; font-weight: 600; margin: 18px 0 6px; }
input[type=email], textarea { width: 100%; padding: 10px 12px; font: inherit;
  color: var(--ink); background: var(--paper); border: 1px solid var(--line);
  border-radius: 8px; }
textarea { min-height: 96px; resize: vertical; }
button { margin-top: 20px; padding: 11px 20px; font: 600 16px/1 inherit;
  color: #fff; background: var(--accent); border: 0; border-radius: 8px;
  cursor: pointer; }
button:hover { filter: brightness(1.08); }
.hint { color: var(--quiet); font-size: 14px; margin-top: 6px; }
.lede { font-size: 18px; }
ul { margin: 0 0 14px; padding-left: 20px; }
li { margin-bottom: 6px; }
