:root {
  --paper: #fbf8f1; --grid: rgba(64, 104, 176, 0.11); --card: #ffffff; --line: #e4ddcc;
  --ink: #1c2a4c; --ink-dim: #4a5778; --ink-faint: #7f889d; --pen: #2a55cc; --red: #d8463b; --green: #2c9a5e;
}
@media (prefers-color-scheme: dark) {
  :root {
    --paper: #16211c; --grid: rgba(255, 255, 255, 0.045); --card: #1f2d27; --line: #33473d;
    --ink: #eef2ea; --ink-dim: #bccabf; --ink-faint: #88998d; --pen: #9dbcff; --red: #ff8f80; --green: #6fd39a;
  }
}
* { box-sizing: border-box; }
body {
  margin: 0; font-family: "Manrope", system-ui, sans-serif; color: var(--ink); line-height: 1.65;
  background: var(--paper);
  background-image: linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);
  background-size: 24px 24px; -webkit-font-smoothing: antialiased; overflow-x: hidden;
}
a { color: var(--pen); }
img { max-width: 100%; height: auto; display: block; }
.top { border-bottom: 2px solid var(--ink); background: var(--paper); }
.top .in { max-width: 860px; margin: 0 auto; padding: 14px 18px; display: flex; align-items: center; gap: 12px; }
.top img { width: 38px; height: 38px; border-radius: 10px; border: 2px solid var(--ink); }
.top a { text-decoration: none; color: var(--ink); font-family: "Unbounded", sans-serif; font-weight: 600; font-size: 15px; }
.doc { max-width: 860px; margin: 36px auto 60px; padding: 0 18px; }
.sheet { background: var(--card); border: 2px solid var(--ink); border-radius: 22px; box-shadow: 6px 6px 0 var(--ink); padding: 40px 44px; }
h1 { font-family: "Unbounded", sans-serif; font-size: clamp(24px, 4vw, 32px); line-height: 1.2; margin: 0 0 6px; }
h2 { font-size: 18px; margin: 30px 0 8px; }
p, li { color: var(--ink-dim); }
.meta { color: var(--ink-faint); font-size: 14px; margin: 0 0 24px; }
ol, ul { padding-left: 22px; }
.req { border-top: 2px dashed var(--line); margin-top: 30px; padding-top: 18px; }
.req p { margin: 4px 0; }
.back { display: inline-block; margin-top: 24px; font-weight: 700; }
@media (max-width: 560px) { .sheet { padding: 26px 20px; } }
