:root {
  --bg: #f6f7f9;
  --card: #ffffff;
  --text: #1c2430;
  --muted: #5d6877;
  --line: #d9dee6;
  --accent: #1d5fd1;
  --code-bg: #eef1f5;
  --warn-bg: #fff3cd;
  --warn-text: #5c4400;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #12161c;
    --card: #1b212a;
    --text: #e6eaf0;
    --muted: #9aa5b4;
    --line: #2d3644;
    --accent: #6ea2ff;
    --code-bg: #232b36;
    --warn-bg: #4a3b0c;
    --warn-text: #ffe9a8;
  }
}
* { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 16px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
main {
  max-width: 44rem;
  margin: 0 auto;
  padding: 1.5rem 16px 3rem;
}
h1 { margin: 0 0 .25rem; font-size: 1.7rem; }
h2 { margin: 0 0 .5rem; font-size: 1.1rem; }
.lead { color: var(--muted); margin-top: 0; }
section {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 1rem 1.1rem;
  margin: 1rem 0;
}
a { color: var(--accent); }
code, .block {
  font: 0.9rem ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  background: var(--code-bg);
  padding: .1rem .35rem;
  border-radius: 4px;
  overflow-wrap: anywhere;
}
.block { display: block; margin: .4rem 0; padding: .45rem .6rem; }
.box { background: var(--code-bg); border-radius: 6px; padding: .6rem .7rem; }
.box code { background: none; padding: 0; }
.muted { color: var(--muted); }
.warn {
  background: var(--warn-bg);
  color: var(--warn-text);
  border-radius: 6px;
  padding: .6rem .8rem;
}
.values { display: grid; grid-template-columns: 8rem 1fr; gap: .5rem .8rem; margin: 0; }
.values dt { color: var(--muted); }
.values dd { margin: 0; display: flex; gap: .6rem; align-items: flex-start; flex-wrap: wrap; }
@media (max-width: 30rem) {
  .values { grid-template-columns: 1fr; gap: .1rem; }
  .values dd { margin-bottom: .6rem; }
}
button {
  font: inherit;
  font-size: .85rem;
  color: var(--accent);
  background: none;
  border: 1px solid var(--accent);
  border-radius: 6px;
  padding: .15rem .6rem;
  cursor: pointer;
}
button:hover { background: var(--code-bg); }
button.done { color: var(--muted); border-color: var(--line); }
.qr { display: inline-block; background: #fff; padding: 12px; border-radius: 8px; }
.qr svg { display: block; width: 15rem; height: 15rem; }
ul { padding-left: 1.2rem; }
li { margin: .4rem 0; }
