
.doc-page { gap: 18px; }
.doc-content { line-height: 1.75; overflow: hidden; }
.doc-content > :first-child { margin-top: 0; }
.doc-content h2 { margin: 34px 0 14px; padding-top: 8px; border-top: 1px solid var(--line-soft); font-family: var(--display); font-weight: 400; font-size: 30px; color: #fff; }
.doc-content h3 { margin: 26px 0 10px; font-size: 21px; color: #e4e9ff; }
.doc-content h4 { margin: 18px 0 8px; font-size: 18px; color: #d3dcff; }
.doc-content p { margin: 10px 0; color: var(--text-2); }
.doc-content strong { color: #fff; }
.doc-content code { padding: 2px 7px; border-radius: 7px; background: #091230; color: #a9f5d4; font-family: Consolas, monospace; }
.doc-content pre { overflow: auto; padding: 18px; border-radius: 16px; background: #07102a; border: 1px solid #22305c; }
.doc-content pre code { padding: 0; background: none; color: #dbe4ff; }
.doc-content blockquote { margin: 0 0 18px; padding: 14px 18px; border-left: 4px solid var(--gold); border-radius: 0 14px 14px 0; background: #ffc94a14; color: #ffe7a6; }
.doc-list { display: grid; gap: 8px; margin: 10px 0 18px; padding-left: 24px; color: var(--text-2); }
.doc-list li::marker { color: var(--gold-text); }
.doc-table-wrap { overflow-x: auto; margin: 14px 0 22px; border: 1px solid #2b3463; border-radius: 16px; }
.doc-table { min-width: 720px; }
.doc-table th, .doc-table td { white-space: normal; vertical-align: top; }
.doc-table th:first-child, .doc-table td:first-child { padding-left: 16px; }
.doc-table th:last-child, .doc-table td:last-child { padding-right: 16px; }
.doc-toc { display: flex; flex-wrap: wrap; gap: 8px; padding: 18px; border-radius: 20px; background: var(--card); border: 1px solid var(--line); }
.doc-toc a { display: inline-flex; min-height: 40px; align-items: center; padding: 0 13px; border-radius: 999px; background: #95aaff1f; border: 1px solid #95aaff55; color: #dce4ff; font-weight: 700; }
.doc-toc a:hover { border-color: var(--moon); }
.public-decision { display: grid; gap: 8px; padding: 18px 20px; border-radius: 18px; background: #6ee7b714; border: 1px solid #6ee7b755; }
.public-decision b { color: #a9f5d4; }
.placeholder { padding: 2px 7px; border-radius: 7px; background: #ffc94a1f; color: var(--gold-text); font-weight: 700; }
.download-specs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.download-spec { padding: 16px; border-radius: 16px; background: var(--card-in); border: 1px solid #22305c; }
.download-spec span { display: block; color: var(--text-3); font-size: 13px; }
.download-spec b { display: block; margin-top: 4px; color: #fff; }
.download-steps { counter-reset: step; display: grid; gap: 12px; list-style: none; padding: 0; }
.download-steps li { counter-increment: step; display: grid; grid-template-columns: 44px minmax(0,1fr); gap: 14px; padding: 16px; border-radius: 16px; background: var(--card-in); border: 1px solid #22305c; }
.download-steps li::before { content: counter(step); display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: var(--gold); color: var(--gold-ink); font-family: var(--display); font-size: 22px; }
.download-steps b { display: block; color: #fff; }
.download-steps p { margin: 4px 0 0; color: var(--text-2); }
@media(max-width:700px){.download-specs{grid-template-columns:1fr}.doc-content{padding:20px 18px}.doc-content h2{font-size:25px}.doc-table{min-width:620px}}
