:root{--blue:#245bc4;--blue-deep:#122f78;--ink:#172540;--muted:#5e6d85;--line:#dbe4f2;--bg:#f3f7fc;--green:#16824e;--pale:#eaf7f0;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.68}
a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:3px solid #1a9a64;outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-9999px;top:10px;background:white;color:var(--ink);padding:10px;z-index:5}.skip:focus{left:10px}
.top{background:#fff;border-bottom:1px solid var(--line)}.top-inner{max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:800;font-size:19px}.mark{display:grid;place-items:center;background:var(--blue);color:white;width:44px;height:44px;border-radius:13px;font-size:22px}.brand em{font-style:normal;color:var(--blue)}nav{display:flex;gap:20px;flex-wrap:wrap}nav a{font-weight:650;color:#344668}
.hero{background:linear-gradient(115deg,#133679,#245bc4 72%,#3475df);color:#fff;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-140px;top:-180px;width:490px;height:490px;border:80px solid rgba(255,255,255,.06);border-radius:50%;pointer-events:none}.hero-inner{max-width:1100px;margin:auto;padding:70px 24px 74px;position:relative;z-index:1}.eyebrow{display:inline-block;border:1px solid rgba(255,255,255,.43);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.hero h1{font-size:clamp(35px,5vw,60px);line-height:1.08;margin:21px 0 15px;letter-spacing:-.035em;max-width:770px}.hero p{font-size:18px;color:#eaf1ff;max-width:680px;margin:0}.meta{margin-top:24px;font-size:14px;color:#eaf1ff}
.wrap{max-width:1100px;margin:auto;padding:35px 24px 75px}.intro{background:#fff;border:1px solid var(--line);border-radius:20px;padding:29px;margin-bottom:24px;box-shadow:0 10px 30px #1b3d7908}.intro h2,.section h2{margin:0 0 10px;font-size:25px;line-height:1.3}.intro p,.section p,.section li{color:var(--muted)}.intro p:last-child{margin-bottom:0}
.layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px;align-items:start}.toc{position:sticky;top:20px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:19px}.toc h2{font-size:15px;margin:0 0 10px}.toc a{display:block;font-size:14px;padding:7px 5px;color:#3c4d6a;border-radius:7px}.toc a:hover{background:#edf3ff;text-decoration:none}.sections{display:grid;gap:18px}.section{scroll-margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:27px;box-shadow:0 5px 20px #1b3d7906}.section ul{padding-left:22px;margin-bottom:0}.section li{margin:8px 0}.section strong{color:var(--ink)}.section p:last-child{margin-bottom:0}.note{background:var(--pale);border-left:4px solid var(--green);padding:17px 20px;border-radius:11px;margin:16px 0}.note p{margin:0;color:#2c6248}.warning{background:#fff6e9;border-left:4px solid #ce922d;border-radius:10px;padding:15px 18px;margin-top:16px}.warning p{margin:0;color:#714e20}.button{display:inline-block;background:var(--blue);padding:12px 20px;border-radius:11px;color:white;font-weight:750;margin:4px 0 10px}.button:hover{background:var(--blue-deep);color:white;text-decoration:none}.footer{border-top:1px solid var(--line);background:white;color:var(--muted);padding:25px}.footer-inner{max-width:1100px;margin:auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px}.footer a{font-weight:650}
@media(max-width:800px){.layout{grid-template-columns:1fr}.toc{position:static}.toc-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}.top-inner{align-items:flex-start}.hero-inner{padding:54px 20px}.section,.intro{padding:22px}}
@media(max-width:510px){.top-inner{flex-direction:column}nav{gap:12px;font-size:14px}.toc-links{grid-template-columns:1fr}.hero h1{font-size:36px}.hero p{font-size:16px}.wrap{padding:24px 14px 50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}