:root {
  color-scheme: light dark;
  --fg: #111;
  --bg: #fff;
  --muted: #555;
  --line: #bbb;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --fg: #f2f2f2;
    --bg: #0b0b0b;
    --muted: #aaa;
    --line: #444;
  }
}
:root[data-theme="dark"] {
  --fg: #f2f2f2;
  --bg: #0b0b0b;
  --muted: #aaa;
  --line: #444;
}
body {
  margin: 0;
  background: var(--bg);
  color: var(--fg);
  font: 16px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif;
}
main {
  max-width: 36rem;
  margin: 0 auto;
  padding: 3rem 1.25rem;
}
h1 { font-size: 1.5rem; margin: 0 0 0.75rem; }
h2 { font-size: 1.1rem; margin: 1.5rem 0 0.5rem; }
.lede, .hint { color: var(--muted); }
form { display: grid; gap: 0.5rem; margin-top: 1.5rem; }
label { font-size: 0.9rem; }
input[type="text"] {
  font: inherit;
  padding: 0.6rem 0.7rem;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: transparent;
  color: inherit;
}
.consent { display: flex; gap: 0.5rem; align-items: flex-start; }
button {
  justify-self: start;
  font: inherit;
  padding: 0.6rem 1rem;
  border: 1px solid var(--fg);
  border-radius: 6px;
  background: var(--fg);
  color: var(--bg);
  cursor: pointer;
}
button:disabled { opacity: 0.4; cursor: default; }
#message { min-height: 1.5em; }
#result { border-top: 1px solid var(--line); margin-top: 1.5rem; }
code { font-family: ui-monospace, Consolas, monospace; }
[hidden] { display: none !important; }
