:root { --green:#0A6E8A; --ink:#1f2933; --muted:#6b7280; --bg:#ffffff; --card:#f4f7f5; --line:#dfe6e1; --link:#0b6b9a; }
@media (prefers-color-scheme: dark) { :root { --ink:#e5e7eb; --muted:#9ca3af; --bg:#111827; --card:#1b2430; --line:#2d3a49; --link:#7cc4ea; } }
* { box-sizing:border-box; }
body { margin:0; font:17px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans","Noto Sans SC",sans-serif; color:var(--ink); background:var(--bg); }
.wrap { max-width:760px; margin:0 auto; padding:0 20px; }
header { border-bottom:1px solid var(--line); background:var(--card); }
header .wrap { display:flex; flex-wrap:wrap; gap:10px 20px; align-items:center; padding-top:12px; padding-bottom:12px; }
.brand { font-weight:700; font-size:1.2rem; color:var(--green); text-decoration:none; }
.langs { font-size:.85rem; color:var(--muted); }
.langs a[aria-current] { font-weight:700; color:var(--ink); }
a { color:var(--link); }
h1 { font-size:2rem; line-height:1.2; margin:1.4em 0 .2em; }
h2 { font-size:1.35rem; margin:2em 0 .4em; padding-top:.4em; border-top:1px solid var(--line); }
h2 .n { display:inline-block; min-width:1.6em; height:1.6em; line-height:1.6em; text-align:center; border-radius:50%; background:var(--green); color:#fff; font-size:.85rem; margin-right:.4em; }
.lead { font-size:1.15rem; color:var(--muted); }
.ver { color:var(--muted); font-size:.9rem; }
.toc { background:var(--card); border-radius:12px; padding:6px 22px 14px; margin:1.5em 0; }
.toc h2 { border:0; margin:.8em 0 .2em; font-size:1.1rem; }
.toc ol { margin:0; padding-left:1.2em; columns:2; column-gap:30px; }
@media (max-width:600px) { .toc ol { columns:1; } }
.shot { margin:1.2em auto; text-align:center; }
.shot img { max-width:min(100%,320px); border-radius:18px; border:1px solid var(--line); box-shadow:0 2px 10px rgba(0,0,0,.12); }
.shot.wide img { max-width:100%; border-radius:6px; }
.shot figcaption { font-size:.85rem; color:var(--muted); margin-top:.5em; }
.note { background:var(--card); border-left:4px solid var(--green); padding:.6em 1em; border-radius:6px; margin:1em 0; }
.tablewrap { overflow-x:auto; }
table { border-collapse:collapse; width:100%; font-size:.92rem; }
th,td { border:1px solid var(--line); padding:.5em .7em; text-align:left; vertical-align:top; }
th { background:var(--card); }
li { margin:.25em 0; }
code { background:var(--card); padding:.1em .35em; border-radius:4px; font-size:.92em; }
footer { border-top:1px solid var(--line); margin-top:3em; padding:1em 0 2em; color:var(--muted); font-size:.85rem; }
.links { margin-top:2.5em; }
.chooser { text-align:center; padding-top:4em; }
.langlist { list-style:none; padding:0; display:grid; grid-template-columns:repeat(2,1fr); gap:12px; max-width:420px; margin:2em auto; }
.langlist a { display:block; padding:.8em; border:1px solid var(--line); border-radius:12px; background:var(--card); text-decoration:none; font-weight:600; }
