/* Long-form pages (privacy policy, 404). Builds on main.css tokens. */
.back-link { color: var(--fg); font-weight: 600; font-size: 0.95rem; text-decoration: none; padding: 10px 4px; }
.back-link:hover { text-decoration: underline; }

.doc {
  max-width: calc(46rem + 2 * var(--gutter));
  padding-block: clamp(40px, 6vw, 80px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.doc h1 { font-size: var(--step-4); font-weight: 800; letter-spacing: -0.045em; }
.doc h2 { font-size: var(--step-2); font-weight: 700; margin-top: 20px; }
.doc p, .doc li { color: var(--fg); }
.doc ul { margin: 0; padding-left: 1.2em; display: flex; flex-direction: column; gap: 10px; }
.doc .meta { color: var(--muted); font-size: var(--step--1); }
.notice {
  align-self: flex-start;
  background: var(--accent);
  color: var(--on-accent);
  font-weight: 600;
  font-size: var(--step--1);
  padding: 8px 14px;
  border-radius: 10px;
}

.lost {
  padding-block: clamp(64px, 12vw, 160px);
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: flex-start;
}
.lost .code {
  font-family: var(--font-display);
  font-weight: 800;
  font-size: clamp(5rem, 3rem + 12vw, 12rem);
  letter-spacing: -0.07em;
  line-height: 0.8;
}
.lost h1 { font-size: var(--step-3); font-weight: 700; }
.lost p { color: var(--muted); font-size: var(--step-1); max-width: 30em; }
