:root { color-scheme: light dark; --bg:#f4f7f6; --paper:#fff; --text:#172c32; --muted:#50646b; --line:#d9e3e3; --accent:#006b73; --tint:#e8f6f4; }
* { box-sizing:border-box; }
html { scroll-padding-top:24px; }
body { margin:0; background:var(--bg); color:var(--text); font:17px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; overflow-wrap:anywhere; }
a { color:var(--accent); text-underline-offset:3px; }
a:hover { text-decoration-thickness:2px; }
a:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
header,main,footer { width:min(100% - 36px,920px); margin-inline:auto; }
header { padding:24px 0; }
.brand { display:inline-flex; gap:10px; align-items:center; font-weight:750; text-decoration:none; color:var(--text); }
.brand img { border-radius:8px; }
.languages { display:flex; gap:8px 14px; flex-wrap:wrap; padding-top:18px; font-size:14px; }
.languages a { padding:4px 2px; }
.languages [aria-current] { font-weight:750; text-decoration-thickness:2px; }
.hero { padding:clamp(24px,5vw,48px); background:var(--paper); border:1px solid var(--line); border-radius:20px; }
.eyebrow { font-size:13px; letter-spacing:.08em; font-weight:750; color:var(--accent); margin:0 0 12px; }
h1 { font-size:clamp(28px,5.5vw,43px); line-height:1.22; margin:0 0 20px; letter-spacing:-.025em; }
.intro { font-size:19px; line-height:1.65; }
.scope { padding:16px 18px; border-left:4px solid var(--accent); background:var(--tint); font-size:15px; }
.toc { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 20px; padding:20px 0 0; }
.toc a { display:block; padding:8px 0; font-size:15px; }
figure { margin:30px 0 8px; }
figure img { width:100%; height:auto; display:block; border-radius:12px; background:#101d23; }
figcaption { font-size:14px; color:var(--muted); margin-top:12px; }
article { margin-top:22px; }
section { padding:26px clamp(22px,5vw,48px); background:var(--paper); border:1px solid var(--line); border-radius:18px; margin:0 0 16px; }
h2 { font-size:23px; line-height:1.4; margin:0 0 16px; }
.number { display:block; color:var(--accent); font-size:13px; letter-spacing:.12em; margin-bottom:6px; }
p { margin:12px 0; }
ol,ul { padding-left:25px; }
li { padding-left:4px; margin:12px 0; }
footer { padding:16px 0 40px; color:var(--muted); font-size:14px; }
@media(max-width:460px) { .toc { grid-template-columns:1fr; gap:0; } body { font-size:16px; } .intro { font-size:17px; } }
@media(prefers-color-scheme:dark) { :root { --bg:#091014; --paper:#111e24; --text:#e4eef0; --muted:#adbec4; --line:#2b4149; --accent:#66ded7; --tint:#163439; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media print { .languages,.toc { display:none; } header,main,footer { width:100%; } body { background:white; color:black; } section,.hero { border:0; padding:12px 0; } section { break-inside:avoid; } }
