*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,sans-serif;background:#f9fafb;color:#111827;line-height:1.65;font-size:16px}
.wrap{max-width:760px;margin:0 auto;padding:24px;padding-bottom:80px}
header{padding:32px 0 16px;border-bottom:1px solid #e5e7eb;margin-bottom:32px}
header .brand{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
header .brand a.logo{color:#7c3aed;text-decoration:none;font-weight:700;font-size:20px}
header h1{margin:8px 0 4px;font-size:30px;line-height:1.2;color:#111827}
header .updated{color:#6b7280;font-size:14px;margin:0}
.intro{background:#f3f4f6;border-radius:12px;padding:16px 20px;margin:0 0 32px;color:#374151}
.callout{background:#faf5ff;border-left:4px solid #7c3aed;border-radius:8px;padding:14px 16px;margin:16px 0;color:#4c1d95}
.callout.warn{background:#fffbeb;border-color:#f59e0b;color:#78350f}
.callout.info{background:#eff6ff;border-color:#3b82f6;color:#1e3a8a}
.callout.deny{background:#fef2f2;border-color:#ef4444;color:#7f1d1d}
.callout.ok{background:#f0fdf4;border-color:#10b981;color:#065f46}
.callout p:last-child{margin-bottom:0}
h2{margin:40px 0 12px;font-size:22px;color:#111827;padding-bottom:8px;border-bottom:1px solid #e5e7eb}
h3{margin:24px 0 8px;font-size:17px;color:#1f2937}
p{margin:0 0 14px}
ul,ol{margin:0 0 14px;padding-left:24px}
ul li,ol li{margin-bottom:6px}
a{color:#7c3aed;text-decoration:underline;text-underline-offset:2px}
a:hover{color:#6d28d9}
table{width:100%;border-collapse:collapse;margin:16px 0;background:#fff;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb;font-size:14.5px}
th,td{padding:10px 14px;text-align:left;border-bottom:1px solid #e5e7eb;vertical-align:top}
th{background:#f9fafb;font-weight:600;color:#374151}
tr:last-child td{border-bottom:none}
hr{border:0;border-top:1px solid #e5e7eb;margin:32px 0}
.toc{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px 24px;margin:0 0 32px}
.toc h2{margin:0 0 12px;font-size:16px;border:none;padding:0;color:#374151}
.toc ol{margin:0;padding-left:20px;font-size:14.5px;column-count:2;column-gap:16px}
.toc li{break-inside:avoid;margin-bottom:4px}
.toc a{color:#374151;text-decoration:none}
.toc a:hover{color:#7c3aed;text-decoration:underline}
footer{text-align:center;color:#6b7280;font-size:13px;margin-top:48px;padding-top:24px;border-top:1px solid #e5e7eb}
.nav{display:flex;gap:16px;font-size:14px}
.nav a{color:#6b7280;text-decoration:none}
.nav a:hover{color:#7c3aed}
@media (max-width:600px){
  .toc ol{column-count:1}
  header h1{font-size:24px}
  h2{font-size:19px}
  table{font-size:13.5px}
  th,td{padding:8px 10px}
}
