html, body { margin: 0; background: #0a0a0c; color: #e9e7ee; font: 400 1rem/1.7 var(--f-ui, system-ui, sans-serif); }
.wrap { max-width: 760px; margin: 0 auto; padding: 28px 20px 90px; }
.top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 26px; }
.top a.back { color: #a9a7ae; text-decoration: none; font-size: 0.9rem; }
.top a.back:hover { color: #fff; }
.draft { margin: 0 0 24px; padding: 14px 16px; border-radius: 14px; border: 1px solid #a37d00; background: rgba(255, 196, 0, 0.1); color: #ffe08a; font-size: 0.9rem; line-height: 1.5; }
h1 { margin: 0 0 6px; font: 900 clamp(2rem, 6vw, 3rem)/1.05 var(--f-display, Archivo, sans-serif); letter-spacing: -0.02em; }
.meta { margin: 0 0 22px; color: #8d8b94; font-size: 0.9rem; }
.summary { margin: 0 0 28px; padding: 18px 20px; border-radius: 16px; background: #15151a; border: 1px solid #2a2a31; }
.summary h2 { margin: 0 0 8px; font-size: 1rem; letter-spacing: 0.02em; }
.summary ul { margin: 0; padding-left: 1.2em; }
h2 { margin: 34px 0 8px; font: 800 1.25rem/1.25 var(--f-ui, system-ui); }
h3 { margin: 20px 0 6px; font: 700 1rem/1.3 var(--f-ui, system-ui); color: #fff; }
p, li { color: #cfcdd6; } li { margin: 4px 0; }
a { color: #d1c9ff; } a:hover { color: #fff; }
.ph { background: rgba(255, 196, 0, 0.22); color: #ffe08a; padding: 0 4px; border-radius: 4px; font-style: normal; }
.toc { columns: 2; margin: 0 0 20px; padding-left: 1.1em; font-size: 0.92rem; }
table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 0.92rem; }
th, td { text-align: left; vertical-align: top; padding: 9px 10px; border-bottom: 1px solid #2a2a31; }
th { color: #fff; font-weight: 700; }
.note { color: #8d8b94; font-size: 0.88rem; }
@media (max-width: 560px) { .toc { columns: 1; } }
ul, ol { list-style: revert; padding-left: 1.3em; }
.toc { list-style: decimal; }

body.has-nav .wrap { padding-top: calc(var(--nav-h, 64px) + 36px); }
