:root{--ink:#16181d;--muted:#5b6472;--line:#e3e7ee;--bg:#f7f8fb;--card:#fff;
--accent:#1d4ed8;--accent-soft:#eef3ff;--good:#0f7a52;--good-soft:#e9f7f1;--warn:#b45309}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%;
font:16px/1.62 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.wrap{max-width:1000px;margin:0 auto}
header{background:linear-gradient(160deg,#0f1730,#1c2f63 60%,#274b9c);color:#fff;padding:32px 22px 28px}
.eyebrow{margin:0 0 6px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.82}
header h1{margin:0;font-size:33px;letter-spacing:-.02em}
header p.sub{margin:10px 0 0;max-width:70ch;opacity:.93;font-size:15px}
header p.prov{margin:14px 0 0;font-size:12.5px;opacity:.78}
.chips{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}
.chip{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);
padding:4px 10px;border-radius:999px;font-size:12.5px}
.chip.soft{background:rgba(255,255,255,.07)}
.btns{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}
.btn{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#fff;
text-decoration:none;font-size:13px;padding:7px 12px;border-radius:9px}
.btn:hover{background:rgba(255,255,255,.24)}
.btn.live{background:#3ddc97;border-color:#3ddc97;color:#04231a;font-weight:600}
nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);
border-bottom:1px solid var(--line)}
nav .wrap{display:flex;gap:6px;overflow-x:auto;padding:9px 22px;scrollbar-width:none}
nav a{flex:0 0 auto;color:var(--muted);text-decoration:none;font-size:13.5px;padding:5px 11px;
border-radius:999px;border:1px solid transparent;white-space:nowrap}
nav a:hover{background:var(--accent-soft);color:var(--accent);border-color:#d6e2ff}
main{padding:24px 22px 70px}
section{margin:0 0 32px}
h2{font-size:21px;margin:26px 0 8px;letter-spacing:-.01em}
h3{font-size:16px;margin:18px 0 6px;color:#243056}
p{margin:9px 0}
.lead{font-size:17px}
.fine{color:var(--muted);font-size:12.5px}
.fine.warn{color:var(--warn);background:#fff8ea;border:1px solid #f2deb4;border-radius:10px;padding:9px 12px}
.vers{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.ver{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 15px;display:flex;gap:14px}
.vn{flex:0 0 46px;font-weight:700;color:var(--accent)}
.vi{min-width:0;font-size:14.5px}
.vi p{margin:4px 0}
ul.files{margin:8px 0 0 18px;padding:0}
ul.files li{margin:5px 0}
ul.files a{color:var(--accent);text-decoration:none;border-bottom:1px dashed #b9c9f0}
.meta{color:var(--muted);font-size:12px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-top:10px}
.st{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.st .n{font-size:19px;font-weight:600;font-variant-numeric:tabular-nums}
.st .l{color:var(--muted);font-size:12px}
.reflect{background:var(--card);border:1px dashed #cfd6e4;border-radius:14px;padding:16px 18px}
.reflect.on{border:1px solid #bfe6d4;background:var(--good-soft)}
details.spec{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 16px;margin-top:10px}
details.spec summary{cursor:pointer;font-weight:600;color:var(--accent)}
.md{margin-top:12px;font-size:15px}
.md h2,.md h3,.md h4,.md h5{margin:18px 0 6px;font-size:17px}
.md pre{background:#0f172a;color:#e8eefc;padding:12px 14px;border-radius:10px;overflow-x:auto;font-size:13px}
.md code{background:#eef1f7;padding:1px 5px;border-radius:5px;font-size:13.5px}
.md pre code{background:none;padding:0;color:inherit}
.md ul,.md ol{margin:8px 0 8px 22px}
.md blockquote{border-left:3px solid var(--accent);background:var(--accent-soft);padding:8px 12px;
border-radius:0 10px 10px 0;margin:10px 0}
.md hr{border:0;border-top:1px solid var(--line);margin:18px 0}
.md .tbl{font-family:ui-monospace,Menlo,monospace;font-size:12.5px;color:var(--muted);overflow-x:auto;white-space:pre}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:18px}
.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:14px;
padding:15px 17px;text-decoration:none;color:var(--ink);box-shadow:0 1px 2px rgba(16,24,40,.04);transition:.15s}
.card:hover{border-color:var(--accent);box-shadow:0 4px 14px rgba(29,78,216,.12);transform:translateY(-1px)}
.card h2{margin:0 0 4px;font-size:16px}
.card p{margin:0;color:var(--muted);font-size:13.5px}
.bs{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}
.b{font-size:11.5px;border:1px solid var(--line);border-radius:999px;padding:2px 9px;color:var(--muted)}
.b.demo{border-color:#9fe3c4;color:var(--good);background:var(--good-soft)}
.b.refl{border-color:#bfe6d4;color:var(--good);background:var(--good-soft)}
.b.none{border-style:dashed}
.tg{margin-top:8px;font-size:11.5px;color:#8792a6}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.filters input[type=search]{flex:1;min-width:180px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);
color:#fff;border-radius:9px;padding:8px 12px;font:inherit;font-size:13.5px}
.filters input::placeholder{color:rgba(255,255,255,.7)}
.fbtn{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#fff;
border-radius:999px;padding:7px 13px;font:inherit;font-size:13px;cursor:pointer}
.fbtn.on{background:#fff;color:#16244d;border-color:#fff;font-weight:600}
.empty{color:var(--muted);text-align:center;padding:24px}
h2 .cnt{color:var(--muted);font-weight:400;font-size:15px}
ul.thin{margin:10px 0 0 20px;color:var(--muted);font-size:13.5px;columns:2;column-gap:26px}
ul.thin li{margin:4px 0;break-inside:avoid}
ul.thin a{color:var(--accent);text-decoration:none;border-bottom:1px dashed #b9c9f0}
footer{margin-top:40px;color:var(--muted);font-size:12.5px;text-align:center}
footer a{color:var(--muted)}
@media print{header{background:#fff;color:#000}nav,.filters{display:none}body{background:#fff}}
