:root{--navy:#1b2a41;--blue:#2196f3;--bg:#f4f7fa;--card:#fff;--muted:#64748b}*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,Arial,sans-serif;background:var(--bg);color:#1f2937}.topbar{background:var(--navy);color:#fff;padding:14px 24px;display:flex;align-items:baseline;gap:12px}.brand{font-size:18px;font-weight:700;color:#fff;text-decoration:none}.sub{color:#9fb3c8;font-size:13px}.topnav{margin-left:auto;display:flex;gap:18px}.topnav a{color:#cfe0f0;text-decoration:none;font-size:14px}.topnav a:hover{color:#fff}.doc-layout{display:grid;grid-template-columns:200px 1fr;grid-gap:32px;gap:32px;align-items:start}@media (max-width:720px){.doc-layout{grid-template-columns:1fr}}.doc-nav{position:-webkit-sticky;position:sticky;top:16px;font-size:14px}.doc-nav ul{list-style:none;padding:0;margin:12px 0 0}.doc-nav li{margin:4px 0}.doc-nav a{color:var(--muted);text-decoration:none}.doc-nav li.active a{color:var(--blue);font-weight:600}.doc{background:var(--card);border-radius:12px;padding:28px 34px;box-shadow:0 1px 3px rgba(0,0,0,.06);line-height:1.6;max-width:820px}.doc h1{font-size:26px;margin-top:0}.doc h1,.doc h2{color:var(--navy)}.doc h2{font-size:20px;margin-top:28px;border-bottom:1px solid #eef2f7;padding-bottom:6px}.doc h3{color:var(--navy);font-size:16px;margin-top:20px}.doc a{color:var(--blue)}.doc code{background:#f1f5f9;padding:1px 5px;border-radius:4px;font-size:13px}.doc pre{background:#0f172a;color:#e2e8f0;padding:14px 16px;border-radius:8px;overflow-x:auto}.doc pre code{background:none;color:inherit;padding:0}.doc table{border-collapse:collapse;margin:14px 0;display:block;overflow-x:auto}.doc td,.doc th{border:1px solid #e2e8f0;padding:7px 11px;text-align:left;font-size:13px}.doc blockquote,.doc th{background:#f8fafc}.doc blockquote{border-left:3px solid var(--blue);margin:12px 0;padding:4px 14px;color:#475569}.doc ol,.doc ul{padding-left:22px}.marketing{max-width:900px;margin:0 auto}.marketing section{margin:40px 0}.marketing h2{color:var(--navy);font-size:24px;margin-bottom:12px}.marketing h3{color:var(--navy);font-size:17px;margin:0 0 6px}.marketing p{line-height:1.65;color:#334155}.hero{text-align:center;padding:36px 20px 10px}.hero h1{font-size:34px;color:var(--navy);line-height:1.2;margin:0 auto 14px;max-width:720px}.hero p{font-size:17px;max-width:640px;margin:0 auto}.cta{display:flex;gap:12px;justify-content:center;margin-top:22px;flex-wrap:wrap}.btn{display:inline-block;padding:11px 20px;border-radius:10px;text-decoration:none;font-weight:600;font-size:15px}.btn.primary{background:var(--blue);color:#fff}.btn.ghost{background:#eef2f7;color:var(--navy)}.cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-top:8px}@media (max-width:720px){.cards{grid-template-columns:1fr}.cols{grid-template-columns:1fr!important}}.card{background:var(--card);border-radius:12px;padding:18px;box-shadow:0 1px 3px rgba(0,0,0,.06);border-top:3px solid var(--blue)}.card .k{font-weight:700;color:var(--navy);margin-bottom:6px}.card p{font-size:14px;margin:0}.flow{text-align:center;background:#f1f5f9;border-radius:10px;padding:12px;margin-top:18px;color:var(--navy)}.cols{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px}.demo table{width:100%;border-collapse:collapse;background:var(--card);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.06)}.demo td,.demo th{padding:12px 14px;border-bottom:1px solid #eef2f7;text-align:left;font-size:14px;vertical-align:top}.demo th{background:#f8fafc;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.demo small,.demo th{color:var(--muted)}.pill{display:inline-block;font-size:12px;font-weight:700;padding:2px 10px;border-radius:999px}.pill.allow{background:#e8f5e9;color:#2e7d32}.pill.block{background:#fdecea;color:#c62828}.note{background:#fff8e1;border-left:3px solid #f5a623;padding:10px 14px;border-radius:8px;font-size:14px;margin-top:14px}.footer-cta{text-align:center;background:var(--navy);color:#fff;border-radius:14px;padding:30px}.footer-cta h2{color:#fff}.footer-cta .micro{color:#9fb3c8;font-size:13px;margin-top:14px}.container{max-width:1080px;margin:0 auto;padding:24px}.tiles{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:16px;gap:16px;margin-bottom:24px}@media (max-width:720px){.tiles{grid-template-columns:repeat(2,1fr)}}.tile{background:var(--card);border-radius:12px;padding:18px;box-shadow:0 1px 3px rgba(0,0,0,.06);border-top:3px solid var(--blue)}.tile .n{font-size:30px;font-weight:700;color:var(--navy)}.tile .l{color:var(--muted);font-size:13px;margin-top:4px}.tile.block{border-top-color:#e53935}.tile.warn{border-top-color:#f5a623}h2{color:var(--navy);font-size:16px;margin:24px 0 12px}table{width:100%;border-collapse:collapse;background:var(--card);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.06)}td,th{text-align:left;padding:10px 14px;font-size:13px;border-bottom:1px solid #eef2f7}th{background:#f8fafc;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.badge,th{font-size:11px}.badge{font-weight:700;padding:2px 8px;border-radius:6px}.allow{background:#e8f5e9;color:#2e7d32}.warn{background:#fff8e1;color:#b26a00}.block{background:#fdecea;color:#c62828}.empty{color:var(--muted);padding:24px;text-align:center}.audit{display:inline-flex;gap:6px}.fb{border:1px solid #e2e8f0;background:#fff;border-radius:6px;padding:2px 8px;cursor:pointer;font-size:13px;line-height:1.2}.fb.ok:hover{background:#e8f5e9;border-color:#2e7d32}.fb.bad:hover{background:#fdecea;border-color:#c62828}