:root{
  --navy:#1b2a4a; --navy2:#24365e; --gold:#c9a227; --slate:#5a6c7d;
  --dark:#2b2f36; --light:#f4f5f7; --white:#fff; --note:#8a94a0;
  --red:#c0392b; --redbg:#f9e8e6; --yel:#8a6d00; --yelbg:#fbf3dc;
  --grn:#27864a; --grnbg:#e4f2e9; --line:#e2e6ea;
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--dark);background:var(--white);line-height:1.55}
a{color:var(--navy2)}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
header.top{background:var(--navy);color:#fff}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 22px}
.brand{font-weight:800;letter-spacing:.5px;font-size:17px}
.brand span{color:var(--gold);font-weight:400;font-size:12.5px;display:block;letter-spacing:1.2px;text-transform:uppercase}
nav.main a{color:#cfd6e2;text-decoration:none;margin-left:22px;font-size:14px}
nav.main a:hover,nav.main a.active{color:var(--gold)}
.hero{background:var(--navy2);color:#fff;padding:44px 0 38px;border-top:3px solid var(--gold)}
.hero h1{margin:0 0 10px;font-size:32px;line-height:1.25}
.hero p.lede{color:#c9d2e2;font-size:16.5px;max-width:880px;margin:0}
.kicker{color:var(--gold);text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:700;margin-bottom:10px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin:26px 0}
.stat{background:var(--light);border-left:4px solid var(--navy);padding:14px 16px;border-radius:4px}
.stat .v{font-size:23px;font-weight:800;color:var(--navy)}
.stat .l{font-size:12.5px;color:var(--slate);margin-top:4px}
section.block{padding:30px 0;border-bottom:1px solid var(--line)}
h2.sec{color:var(--navy);font-size:22px;margin:0 0 6px}
p.sub{color:var(--slate);margin:0 0 18px;font-size:14.5px}
table.grid{width:100%;border-collapse:collapse;font-size:13.5px}
table.grid th{background:var(--navy);color:#fff;text-align:left;padding:9px 10px;font-size:12px;letter-spacing:.4px;position:sticky;top:0}
table.grid td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}
table.grid tr:hover td{background:#f7f9fc}
.badge{display:inline-block;padding:2px 10px;border-radius:20px;font-size:11.5px;font-weight:700;letter-spacing:.4px}
.badge.RED{background:var(--redbg);color:var(--red);border:1px solid #eec5c0}
.badge.YELLOW{background:var(--yelbg);color:var(--yel);border:1px solid #e8d48a}
.badge.GREEN{background:var(--grnbg);color:var(--grn);border:1px solid #bfe3cc}
.badge.GRAY{background:#eef0f2;color:var(--slate);border:1px solid var(--line)}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px;align-items:center}
.toolbar input[type=text]{padding:8px 12px;border:1px solid var(--line);border-radius:4px;font-size:14px;min-width:240px}
.toolbar select{padding:8px 10px;border:1px solid var(--line);border-radius:4px;font-size:14px;background:#fff}
.toolbar .count{margin-left:auto;color:var(--slate);font-size:13px}
.detail{background:#f7f9fc;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:4px;padding:16px 18px;margin:14px 0;display:none}
.detail h3{margin:0 0 8px;color:var(--navy);font-size:17px}
.detail dl{display:grid;grid-template-columns:150px 1fr;gap:6px 14px;font-size:13.5px;margin:0}
.detail dt{color:var(--slate);font-weight:600}
.detail dd{margin:0}
.doclink{display:inline-block;margin:4px 8px 4px 0;padding:5px 12px;background:var(--navy);color:#fff!important;text-decoration:none;border-radius:4px;font-size:12.5px}
.doclink:hover{background:var(--navy2)}
.nodoc{color:var(--slate);font-style:italic;font-size:13px}
.banner{background:var(--yelbg);border:1px solid #e8d48a;border-radius:6px;padding:14px 18px;margin:18px 0;font-size:14px;color:#5c4d00}
.banner strong{color:var(--navy)}
.callout{background:var(--light);border-radius:6px;padding:18px 20px;margin:16px 0;font-size:14.5px}
.callout.warn{background:var(--redbg);border-left:4px solid var(--red)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:800px){.two{grid-template-columns:1fr}header.top .wrap{flex-direction:column;align-items:flex-start}nav.main{margin-top:10px}nav.main a{margin:0 14px 0 0}}
ul.tight li{margin-bottom:8px}
footer{background:var(--navy);color:#9aa5bb;padding:26px 0;font-size:12.5px;margin-top:40px}
footer a{color:var(--gold)}
.scen{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:18px 0}
.scen .card{border:1px solid var(--line);border-radius:6px;padding:16px}
.scen .card h4{margin:0 0 6px;color:var(--navy)}
.num{font-variant-numeric:tabular-nums}
