:root{
  --navy:#10243A; --navy-deep:#F5F8FC; --navy-bright:#EAF0F6;
  --coral:#234E78; --coral-lit:#234E78;
  --cream:#10243A; --line:#D8E1E9;
  --safe:#16684D;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Inter,system-ui,sans-serif;
  background:var(--navy-deep); color:var(--cream);
  max-width:780px; margin:0 auto; padding:0 24px 100px;
  line-height:1.68; -webkit-font-smoothing:antialiased;
}
a{color:var(--coral);}
a:hover{color:var(--coral-lit);}
header.nav{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid var(--line);margin-bottom:44px;}
.brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:17px;letter-spacing:-.02em;text-decoration:none;color:var(--cream);}
.brand-mark{width:32px;height:32px;border-radius:9px;background:#EFF3F7;display:grid;place-items:center;padding:5px;}
.brand-mark svg{width:100%;height:100%;}
.nav a:not(.brand){color:rgba(16,36,58,.6);text-decoration:none;font-size:14.5px;}
.nav a:not(.brand):hover{color:var(--cream);}
h1{font-size:clamp(30px,5vw,40px);letter-spacing:-.035em;margin-bottom:8px;font-weight:680;line-height:1.12;}
.updated{color:#52657A;font-size:13.5px;margin-bottom:40px;}
h2{font-size:20px;margin:40px 0 12px;letter-spacing:-.02em;font-weight:640;}
h3{font-size:16.5px;margin:26px 0 8px;font-weight:620;}
p,li{color:rgba(16,36,58,.72);font-size:15.5px;}
strong{color:var(--cream);font-weight:620;}
ul,ol{padding-left:22px;margin:12px 0;}
li{margin-bottom:8px;}
code{font-family:"SF Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13.5px;
  background:rgba(16,36,58,.07);border:1px solid var(--line);border-radius:6px;padding:2px 7px;color:var(--coral-lit);}
pre{background:#F3F6F9;border:1px solid var(--line);border-radius:12px;padding:16px 18px;
  overflow-x:auto;margin:16px 0;}
pre code{background:none;border:none;padding:0;color:rgba(16,36,58,.85);font-size:13px;line-height:1.7;}
.callout{background:rgba(16,36,58,.045);border:1px solid var(--line);border-radius:14px;
  padding:18px 22px;margin:26px 0;font-size:14.5px;color:rgba(16,36,58,.7);}
.callout.warn{background:rgba(35,78,120,.08);border-color:rgba(35,78,120,.28);}
.callout.good{background:rgba(61,214,140,.07);border-color:rgba(61,214,140,.24);}
.callout strong{color:var(--cream);}
.step{position:relative;padding:20px 0 20px 52px;border-bottom:1px solid var(--line);}
.step:last-of-type{border-bottom:none;}
.step .n{position:absolute;left:0;top:20px;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;
  font-weight:720;font-size:15px;background:var(--navy);color:white;}
.step h3{margin:0 0 6px;}
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 24px;border-radius:12px;font-size:15.5px;
  font-weight:620;text-decoration:none;background:var(--navy);color:white;
  box-shadow:0 6px 22px rgba(35,78,120,.3);transition:transform .25s,box-shadow .25s;}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(35,78,120,.42);color:white;}
footer{margin-top:64px;padding-top:26px;border-top:1px solid var(--line);font-size:13.5px;color:#52657A;}
footer a{color:rgba(16,36,58,.6);text-decoration:none;}
footer a:hover{color:var(--coral);}
@media(prefers-reduced-motion:reduce){*{transition:none!important;}}

:focus-visible{outline:3px solid #438BCE;outline-offset:4px} .btn{max-width:100%;text-align:center} .brand{flex-shrink:0} header.nav{gap:18px} .nav a:not(.brand){text-align:right} @media(max-width:400px){body{padding-left:20px;padding-right:20px}.btn{padding:12px 16px;font-size:14px}}

code{overflow-wrap:anywhere;word-break:break-word}
