:root{--ink:#111;--muted:#555;--bg:#fafaf7;--line:#ddd;--accent:#111}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;max-width:780px;margin:0 auto;padding:20px 20px 40px;color:var(--ink);background:var(--bg)}
a{color:#1a3d8f}
header.top nav{font-size:15px;color:var(--muted)}
header.top nav a{color:#333}
h1{font-size:clamp(1.6rem,4.5vw,2.2rem);line-height:1.2;margin:.8em 0 .5em}
h2{font-size:1.15rem;line-height:1.3;margin-top:1.7em}
.lede{font-size:1.06rem}
.cta{display:inline-block;background:var(--accent);color:#fff;padding:14px 22px;border-radius:8px;text-decoration:none;font-weight:600}
.cta:hover,.cta:focus{background:#333}
.demo{margin:1.6em 0;padding:0}
.demo video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#0b1020;border-radius:10px}
.demo figcaption{font-size:14px;color:var(--muted);margin-top:.5em}
.tablewrap{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:15px}
@media (max-width:520px){table{font-size:14px}td,th{padding:6px}}
td,th{border:1px solid var(--line);padding:8px;text-align:left;vertical-align:top}
th{background:#f0efe9}
.cards{list-style:none;padding:0}
.cards li{border:1px solid var(--line);border-radius:10px;padding:4px 18px 10px;margin:14px 0;background:#fff}
.related{font-size:15px}
footer{margin-top:3em;padding-top:1em;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
footer a{color:#333}
