:root{--navy:#103065;--navy-deep:#0B2145;--blue:#0B4196;--blue-bright:#2E6BD6;
  --ink:#1C222B;--grey:#5A6478;--line:#D8E0EC;--ice:#C2D6F5;--paper:#FBFCFE;--panel:#F2F5FA;}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--blue)}
.wrap{max-width:820px;margin:0 auto;padding:0 28px}
.hero{background:var(--navy);color:#fff;padding:16px 0 46px}
.hero h1{font-size:2.1rem;letter-spacing:-0.02em;margin-bottom:10px}
.hero p{color:#cdd9ef;font-size:1rem}
main{padding:44px 0 70px}
h2{font-size:1.45rem;color:var(--navy);margin:38px 0 12px;letter-spacing:-0.01em}
h2:first-child{margin-top:0}
h3{font-size:1.05rem;color:var(--blue);margin:24px 0 8px}
p{margin-bottom:13px;font-size:.98rem}
ul{margin:0 0 14px 22px}
li{margin-bottom:7px;font-size:.98rem}
.toc{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px 24px;margin-bottom:34px}
.toc h4{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);margin-bottom:10px}
.toc a{display:block;margin-bottom:6px;text-decoration:none;font-weight:600}
.toc a:hover{text-decoration:underline}
.callout{background:var(--panel);border-left:3px solid var(--blue-bright);
  border-radius:0 8px 8px 0;padding:16px 20px;margin:18px 0}
.callout p:last-child{margin-bottom:0}
.todo{background:#FFF4D6;border:1px solid #E6C86A;border-radius:8px;padding:14px 18px;margin:18px 0;font-size:.92rem}
table{width:100%;border-collapse:collapse;margin:16px 0 22px;font-size:.9rem}
th{background:var(--navy);color:#fff;text-align:left;padding:11px 14px;font-weight:700}
td{padding:11px 14px;border-top:1px solid var(--line);vertical-align:top}
tr:nth-child(even) td{background:var(--panel)}
.updated{font-size:.86rem;color:var(--grey);margin-bottom:26px}
footer{background:var(--navy-deep);color:#9fb2d6;padding:34px 0;font-size:.86rem}
footer a{color:#cdd9ef}
@media (max-width:600px){.hero h1{font-size:1.6rem}.wrap{padding:0 20px}.nav{padding:0 20px}}
