:root {
  color-scheme: dark;
  --bg: #000;
  --ink: #f5f5f7;
  --ink-2: #a1a1a6;
  --line: rgba(255, 255, 255, 0.12);
  --accent: #94b8ff;
}
* { box-sizing: border-box; }
html, body { margin: 0; background: var(--bg); color: var(--ink); }
body {
  font: 17px/1.65 -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  padding: env(safe-area-inset-top, 0px) 20px env(safe-area-inset-bottom, 0px);
}
.doc-nav { max-width: 760px; margin: 0 auto; padding: 24px 0; }
.doc-nav a { color: var(--ink-2); text-decoration: none; font-size: 14px; }
.doc { max-width: 760px; margin: 0 auto; padding-bottom: 120px; }
.doc h1 { font-size: clamp(36px, 6vw, 56px); letter-spacing: -0.03em; line-height: 1.05; margin: 24px 0 16px; }
.doc h2 { font-size: 28px; letter-spacing: -0.02em; margin: 56px 0 12px; padding-top: 16px; border-top: 1px solid var(--line); }
.doc h3 { font-size: 20px; margin: 32px 0 8px; }
.doc p, .doc li { color: #d2d2d7; }
.doc a { color: var(--accent); }
.doc strong { color: var(--ink); }
.doc code { font: 0.9em ui-monospace, "SF Mono", Menlo, monospace; background: #141418; padding: 2px 6px; border-radius: 6px; }
.doc pre { background: #0b0b0d; border: 1px solid var(--line); border-radius: 12px; padding: 16px; overflow-x: auto; }
.doc pre code { background: none; padding: 0; }
.doc blockquote { margin: 16px 0; padding: 4px 16px; border-left: 3px solid var(--accent); color: var(--ink-2); }
.doc table { width: 100%; border-collapse: collapse; font-size: 15px; display: block; overflow-x: auto; }
.doc th, .doc td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--line); vertical-align: top; }
.doc th { color: var(--ink); }
.doc hr { border: 0; border-top: 1px solid var(--line); margin: 40px 0; }
