.hk-art{position:relative;padding:0 0 40px;--ac:#4d9eff;--acs:rgba(77,158,255,.14)}
.hk-a-blue{--ac:#4d9eff;--acs:rgba(77,158,255,.14);--acl:#8bbcff}
.hk-a-teal{--ac:#2dd4bf;--acs:rgba(45,212,191,.13);--acl:#7ee8da}
.hk-a-orange{--ac:#fb923c;--acs:rgba(251,146,60,.13);--acl:#fdba74}
.hk-a-violet{--ac:#a78bfa;--acs:rgba(167,139,250,.14);--acl:#c4b5fd}
.hk-a-all{--ac:#8bbcff;--acs:rgba(139,188,255,.12);--acl:#cfe0ff}
.hk-rail{display:none;position:absolute;top:0;bottom:0;left:max(16px,calc(50% - 704px));width:136px;z-index:2}
.hk-toc{position:sticky;top:104px;display:flex;flex-direction:column;gap:2px;padding-top:280px}
.hk-toch{font:600 10.5px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#7d92b3;margin-bottom:10px}
.hk-tocl{display:flex;gap:8px;align-items:baseline;padding:6px 0 6px 10px;border-left:2px solid rgba(120,170,255,.14);font:500 12.5px Inter,system-ui,sans-serif;color:#8a9bb8}
.hk-tocl b{font:600 10.5px 'JetBrains Mono',monospace;color:#7589aa;min-width:16px}
.hk-tocl:hover{color:#e8edf5}
.hk-tocl.on{border-left-color:#4d9eff;color:#e8edf5}
.hk-tocl.on b{color:#4d9eff}
@media (min-width:1400px){.hk-rail{display:block}}
@media (min-width:1400px){.hk-tocm{display:none}}
.hk-head,.hk-col{max-width:748px;margin:0 auto;padding:0 24px}
.hk-head{padding-top:44px;padding-bottom:36px}
.hk-crumb{font:500 12px 'JetBrains Mono',monospace;letter-spacing:.06em;color:#7d92b3;margin-bottom:18px}
.hk-crumb a{color:#8a95a8}
.hk-crumb span{color:#cfd8e6}
.hk-back{display:inline-flex;align-items:center;min-height:44px;font:600 12px 'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:#8bbcff}
.hk-back::before{content:"";width:16px;height:1px;background:#8bbcff;margin-right:10px}
.hk-kick{font:600 11.5px 'JetBrains Mono',monospace;letter-spacing:.18em;text-transform:uppercase;color:#4d9eff;margin:22px 0 14px}
.hk-h1{margin:0;font-size:clamp(34px,4.4vw,50px);font-weight:800;letter-spacing:-.035em;line-height:1.06;color:#f2f5fa}
.hk-dek{margin:20px 0 0;font-size:20px;line-height:1.55;color:#a9b6ca}
.hk-check{margin:10px 0 0;font:500 12.5px 'JetBrains Mono',monospace;letter-spacing:.03em;color:#7d92b3}
.hk-meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:24px;padding-top:18px;border-top:1px solid rgba(120,170,255,.14);font:500 12.5px 'JetBrains Mono',monospace;letter-spacing:.03em;color:#8a9bb8}
.hk-slot-inline{color:#f5c46b;background:rgba(245,196,107,.08);border:1px dashed rgba(245,196,107,.55);padding:1px 6px;border-radius:3px}
.hk-col p{margin:0 0 22px;font-size:18px;line-height:1.7;color:#cdd6e3}
.hk-col a{color:#8bbcff;text-decoration:underline;text-decoration-color:rgba(139,188,255,.4);text-underline-offset:3px}
.hk-col a:hover{color:#fff;text-decoration-color:#fff}
.hk-sec{position:relative;padding:40px 0 8px}
.hk-sec-cont{padding-top:8px}
.hk-h2{display:flex;flex-direction:column;gap:10px;margin:28px 0 22px;font-size:clamp(28px,3.2vw,36px);font-weight:800;letter-spacing:-.028em;line-height:1.12;color:#f2f5fa}
.hk-secn{font:600 12px 'JetBrains Mono',monospace;letter-spacing:.18em;color:var(--ac)}
.hk-secn::after{content:"";display:inline-block;width:36px;height:1px;background:var(--ac);vertical-align:middle;margin-left:12px;opacity:.6}
.hk-h2s{font-size:clamp(24px,2.6vw,30px)}
.hk-h3{margin:30px 0 10px;font-size:20px;font-weight:700;letter-spacing:-.012em;color:#eef2f8}
.hk-sum{margin:30px 0 30px;padding:24px 26px 10px;background:#0b1324;border:1px solid rgba(120,170,255,.16);border-left:3px solid #4d9eff;border-radius:4px}
.hk-sumh{margin:0 0 14px;font:600 11.5px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#8bbcff}
.hk-sum ul{margin:0;padding:0;list-style:none;counter-reset:s}
.hk-sum li{position:relative;padding:0 0 14px 34px;font-size:16.5px;line-height:1.6;color:#dfe6f2;counter-increment:s}
.hk-sum li::before{content:counter(s);position:absolute;left:0;top:2px;width:22px;height:22px;border:1px solid rgba(77,158,255,.5);border-radius:3px;display:grid;place-items:center;font:600 11px 'JetBrains Mono',monospace;color:#8bbcff}
.hk-tocm{margin:0 0 30px;padding:18px 20px;border:1px solid rgba(120,170,255,.14);border-radius:4px}
.hk-tocm ol{margin:8px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}
.hk-tocm a{display:flex;align-items:center;min-height:40px;font:500 14px Inter,system-ui,sans-serif;color:#cfe0ff;text-decoration:none}
.hk-ex{margin:0 0 10px;padding:22px 24px 4px;background:rgba(77,158,255,.05);border:1px solid rgba(77,158,255,.22);border-radius:4px}
.hk-exk{display:block;margin-bottom:10px;font:600 11px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#8bbcff}
.hk-ex p{font-size:16.5px;color:#d5deea}
.hk-fig{width:calc(100% - 48px);max-width:1120px;margin:44px auto 48px;background:#0b1324;border:1px solid rgba(120,170,255,.16);border-radius:6px;overflow:hidden}
.hk-fighead{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;padding:14px 18px;border-bottom:1px solid rgba(120,170,255,.12);background:rgba(6,9,16,.5)}
.hk-figt{display:flex;align-items:baseline;gap:12px}
.hk-fign{font:700 11.5px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--ac)}
.hk-figtt{font-size:18px;font-weight:700;letter-spacing:-.01em;color:#f2f5fa}
.hk-fig figcaption{padding:14px 18px 16px;border-top:1px solid rgba(120,170,255,.12);font-size:14px;line-height:1.55;color:#8a9bb8}
.hk-ctls{display:flex;flex-wrap:wrap;gap:10px 18px}
.hk-ctl{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.hk-ctlk{font:600 10.5px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#7d92b3;margin-right:4px}
.hk-tog{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 13px;border:1px solid rgba(120,170,255,.24);border-radius:5px;background:rgba(5,8,16,.6);color:#a9bddc;font:600 12px 'JetBrains Mono',monospace;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.hk-tog i{font-style:normal;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:rgba(120,170,255,.12);color:#cfe0ff;font-size:10.5px}
.hk-tog:hover{border-color:var(--ac);color:#fff}
.hk-tog.on{border-color:var(--ac);background:var(--acs);color:#fff}
.hk-tog.on i,.hk-tog.done i{background:var(--ac);color:#060910}
.hk-tog.sm{padding:0 10px;font-size:11.5px}
.hk-tog.hk-bad.on{border-color:#ff6b6b;background:rgba(255,107,107,.12);color:#ffd0d0}
.hk-tog:focus-visible{outline:2px solid #fff;outline-offset:2px}
.hk-svgbox{padding:10px 12px}
.hk-swipe{display:none;margin:0;padding:0 18px 10px;font:500 11px 'JetBrains Mono',monospace;letter-spacing:.06em;color:#7d92b3}
.hk-math{margin:6px 0 0;font:500 12.5px 'JetBrains Mono',monospace;line-height:1.55;color:#9fb0c9}
.hk-bign{font-size:46px;font-weight:800;letter-spacing:-.03em;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.hk-bigu{font:600 11px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#8a9bb8}
.hk-lede{font-size:19px!important;color:#e1e8f2!important}
.hk-list{margin:0 0 24px;padding:0;list-style:none}
.hk-list li{position:relative;padding:0 0 14px 22px;font-size:17.5px;line-height:1.65;color:#cdd6e3}
.hk-list li::before{content:"";position:absolute;left:2px;top:11px;width:7px;height:7px;border-radius:1px;background:#4d9eff}
.hk-list b{color:#f2f5fa}
.hk-tbl{margin:4px 0 26px;overflow-x:auto}
.hk-cmp{width:100%;border-collapse:collapse;font-size:15px;line-height:1.5}
.hk-cmp caption{text-align:left;padding-bottom:10px;font:600 11px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#8bbcff}
.hk-cmp th,.hk-cmp td{text-align:left;vertical-align:top;padding:10px 12px;border-top:1px dashed rgba(120,170,255,.18);color:#cdd6e3}
.hk-cmp thead th{font:700 12px 'JetBrains Mono',monospace;letter-spacing:.14em;color:#fff;border-top:1px solid rgba(120,170,255,.3)}
.hk-cmp tbody th{font-weight:600;color:#eef2f8;width:28%}
.hk-fits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:4px 0 24px}
.hk-fit1{padding:16px 18px 4px;background:#0b1324;border:1px solid rgba(120,170,255,.16);border-top:3px solid #4d9eff;border-radius:4px}
.hk-fit1>b{display:block;font-size:16px;color:#fff;margin-bottom:6px}
.hk-fit1 p{font-size:15.5px!important;line-height:1.55!important;margin-bottom:12px!important}
.hk-mkey{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:6px;font-size:12.5px;color:#9fb0c9}
.hk-mkey span{display:flex;align-items:center;gap:7px}
.hk-mk{width:12px;height:10px;border-radius:2px}
.hk-mkb{background:#4d9eff}
.hk-mkr{background:#ff6b6b}
.hk-mkf{background:repeating-linear-gradient(135deg,rgba(125,146,179,.6) 0 3px,rgba(125,146,179,.15) 3px 6px)}
.hk-mkp{width:3px;background:#f5c46b}
.hk-hide{display:none!important}
.hk-cal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:6px 0 26px}
.hk-calc1{padding:16px 16px 6px;background:#0b1324;border:1px solid rgba(120,170,255,.16);border-top:3px solid #4d9eff;border-radius:4px}
.hk-calc1:nth-child(2){border-top-color:#2dd4bf}
.hk-calc1:nth-child(3){border-top-color:#a78bfa}
.hk-calk{font:700 11px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#cfe0ff}
.hk-calc1 ul{margin:10px 0 0;padding:0 0 0 16px}
.hk-calc1 li{margin-bottom:10px;font-size:14.5px;line-height:1.5;color:#cdd6e3}
.hk-qs{margin:10px 0 26px;padding:0;list-style:none;counter-reset:q}
.hk-qs li{position:relative;padding:14px 0 14px 46px;border-top:1px dashed rgba(120,170,255,.18);font-size:17px;line-height:1.55;color:#e1e8f2;counter-increment:q}
.hk-qs li::before{content:"";position:absolute;left:0;top:14px;width:24px;height:24px;border:1.5px solid #4d9eff;border-radius:4px}
.hk-qs li::after{content:counter(q);position:absolute;left:0;top:14px;width:24px;height:24px;display:grid;place-items:center;font:700 11px 'JetBrains Mono',monospace;color:#8bbcff}
.hk-src{margin:0 0 20px;padding:0;list-style:none}
.hk-src li{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:16px;padding:12px 0;border-top:1px dashed rgba(120,170,255,.16)}
.hk-src b{font:600 13px 'JetBrains Mono',monospace;color:#e8edf5}
.hk-src span{font-size:15px;line-height:1.55;color:#aebbd0}
.hk-faq1{padding:6px 0 4px;border-top:1px dashed rgba(120,170,255,.18)}
.hk-faqq{margin:16px 0 8px;font-size:19px;font-weight:700;letter-spacing:-.01em;line-height:1.35;color:#eef2f8}
.hk-faq1 p{font-size:17px}
.hk-more{padding-top:56px}
.hk-wide{max-width:1168px;margin:0 auto;padding:0 24px}
.hk-more .hk-kick{color:#7d92b3}
.hk-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.hk-card{display:flex;flex-direction:column;gap:10px;padding:22px;background:#0b1324;border:1px solid rgba(120,170,255,.16);border-top:2px solid var(--ac);border-radius:4px;color:#e8edf5}
.hk-card:hover{border-color:var(--ac);color:#fff}
.hk-cardk{font:600 10.5px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--ac)}
.hk-card b{font-size:17px;line-height:1.35;letter-spacing:-.01em}
.hk-cardp{font-size:14.5px;line-height:1.55;color:#a3adbd}
.hk-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;margin:28px 0 18px;padding:30px;background:linear-gradient(135deg,rgba(29,123,255,.16),rgba(11,19,36,.9));border:1px solid rgba(77,158,255,.35);border-radius:6px}
.hk-cta>div:first-child{flex:1 1 380px}
.hk-ctah{margin:0 0 8px;font-size:30px;font-weight:800;letter-spacing:-.03em;color:#fff}
.hk-cta p{margin:0;font-size:16px;line-height:1.6;color:#c3cede}
.hk-ctab{display:flex;flex-wrap:wrap;gap:10px}
.hk-t{font:600 13px 'JetBrains Mono',monospace;fill:#cfe0ff;letter-spacing:.05em}
.hk-t2{font:500 12.5px 'JetBrains Mono',monospace;fill:#7d92b3;letter-spacing:.06em}
.hk-tsm{font-size:11.5px}
.hk-tz{fill:#7589aa;letter-spacing:.2em}
.hk-tl{font:700 12px 'JetBrains Mono',monospace;fill:#060910}
.hk-sup{font-size:8px}
.hk-scroll{min-width:0}
.hk-scroll svg{display:block;width:100%;height:auto}
.hk-ctlrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:12px 18px;border-bottom:1px solid rgba(120,170,255,.12)}
.hk-ctlrow .hk-ctl{gap:6px}
.hk-tog.xs{min-height:34px;padding:0 9px;font-size:11px}
.hk-tog.hk-open i{background:#ff6b6b;color:#060910}
.hk-tog.done i{background:#4ade80;color:#060910}
.hk-tog.hk-ns.on{border-color:#f5c46b;background:rgba(245,196,107,.12);color:#ffe7b3}
.hk-stepline{margin:0;padding:12px 18px;font-size:15px;line-height:1.6;color:#dfe6f2;border-top:1px solid rgba(120,170,255,.1)}
.hk-kv{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:9px 18px 7px;border-top:1px dashed rgba(120,170,255,.14);font-size:13.5px;color:#9fb0c9}
.hk-kv:first-child{border-top:0}
.hk-kv>b{font:600 12.5px 'JetBrains Mono',monospace;color:#e8edf5;text-align:right;max-width:62%}
.hk-kvn{margin:0;padding:0 18px 10px;font-size:13px;line-height:1.5;color:#8a9bb8}
b.hk-tbad{color:#ff8f8f}
b.hk-tok{color:#7ee8a8}
.hk-ver{margin:6px 0 0;padding:7px 11px;border-radius:4px;font:700 12px 'JetBrains Mono',monospace;letter-spacing:.03em;line-height:1.45;color:#060910}
.hk-ver.hk-ok{background:#4ade80}
.hk-ver.hk-bad{background:#ff6b6b}
.hk-ver.hk-warn{background:#f5c46b}
.hk-chip{display:inline-block;padding:3px 8px;border-radius:3px;font:700 10.5px 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:#060910}
.hk-chip.hk-ok{background:#4ade80}
.hk-chip.hk-bad{background:#ff6b6b}
@keyframes hk-flow{to{stroke-dashoffset:-100}}
.hk-zone{fill:rgba(120,170,255,.035);stroke:rgba(120,170,255,.16);stroke-width:1}
.hk-znet{fill:rgba(255,107,107,.035);stroke:rgba(255,107,107,.18)}
.hk-edge{stroke:rgba(139,188,255,.35);stroke-width:1.5;stroke-dasharray:6 6}
.hk-wire path{fill:none;stroke:#2a3a58;stroke-width:2;stroke-linejoin:round}
.hk-dev{fill:#0f1a30;stroke:rgba(139,188,255,.55);stroke-width:1.3}
.hk-rec{stroke:#8bbcff;stroke-width:1.6}
.hk-router{fill:#0f1a30;stroke:#8bbcff}
.hk-cam rect{fill:#13203a;stroke:#8bbcff;stroke-width:1.3}
.hk-cam .hk-lens{fill:#4d9eff}
.hk-cam .hk-arm{fill:none;stroke:#7589aa;stroke-width:2}
.hk-pc rect{fill:#13203a;stroke:#7d92b3;stroke-width:1.3}
.hk-pc path{fill:none;stroke:#7d92b3;stroke-width:1.5}
.hk-pc.hk-adm rect{stroke:#8bbcff;stroke-width:1.8}
.hk-ph rect{fill:#13203a;stroke:#7d92b3;stroke-width:1.3}
.hk-ph .hk-phs{fill:#0a1222;stroke:none}
.hk-globe circle,.hk-globe ellipse,.hk-globe path{fill:none;stroke:#ff8f8f;stroke-width:1.3}
.hk-cloud path{fill:#13203a;stroke:#8bbcff;stroke-width:1.3}
.hk-ap rect{fill:#13203a;stroke:#7d92b3;stroke-width:1.3}
.hk-ap path{fill:none;stroke:#7d92b3;stroke-width:1.6;stroke-linecap:round}
.hk-reg rect{fill:#13203a;stroke:#7d92b3;stroke-width:1.3}
.hk-lock rect{fill:#4ade80}
.hk-lock path{fill:none;stroke:#4ade80;stroke-width:1.8}
.hk-x circle{fill:#060910;stroke:#ff6b6b;stroke-width:1.6}
.hk-x path{stroke:#ff6b6b;stroke-width:2.2;stroke-linecap:round}
.hk-stub{fill:none;stroke:rgba(255,107,107,.45);stroke-width:2;stroke-dasharray:3 5;opacity:0;transition:opacity .4s}
.hk-fl{transition:opacity .45s}
.hk-flb{fill:none;stroke-width:2;stroke-linejoin:round;opacity:.28}
.hk-flf{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:5 11;animation:hk-flow 5s linear infinite}
.hk-rp .hk-flb,.hk-rp .hk-flf,.hk-bad .hk-flb,.hk-bad .hk-flf{stroke:#ff6b6b}
.hk-gp .hk-flb,.hk-gp .hk-flf,.hk-ok .hk-flb,.hk-ok .hk-flf{stroke:#4ade80}
.hk-mine .hk-flb,.hk-mine .hk-flf{stroke:#f5c46b}
.hk-fa .hk-flb,.hk-fa .hk-flf{stroke:#8bbcff}
.hk-f1grid{display:grid;grid-template-columns:minmax(0,1fr) 340px}
.hk-f1map{padding:10px 8px 6px;min-width:0;align-self:center}
.hk-f1side{display:flex;flex-direction:column;gap:12px;padding:18px 0 16px;border-left:1px solid rgba(120,170,255,.12);background:rgba(6,9,16,.35)}
.hk-f1big{display:flex;align-items:baseline;gap:10px;padding:0 18px}
.hk-f1pt{padding:0 18px}
.hk-f1pth{display:grid;grid-template-columns:28px minmax(0,1fr);gap:6px 10px;align-items:start;padding:12px 0 10px;border-top:1px dashed rgba(120,170,255,.18)}
.hk-f1pth i{grid-row:span 2;font:700 12px 'JetBrains Mono',monospace;font-style:normal;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#8bbcff;color:#060910}
.hk-f1pth b{font-size:17px;line-height:1.3;color:#fff}
.hk-f1pth .hk-chip{justify-self:start}
.hk-f1k{margin:10px 0 3px;font:600 10.5px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#ff8f8f}
.hk-f1k:first-of-type{color:#7d92b3}
.hk-f1kok{color:#7ee8a8}
.hk-f1v{margin:0;font-size:14.5px;line-height:1.55;color:#dfe6f2}
.hk-f1src{margin:12px 0 12px;font:500 11.5px 'JetBrains Mono',monospace;line-height:1.5;color:#7d92b3}
.hk-fixb{width:100%;justify-content:center}
.hk-mk .hk-mkr{fill:none;stroke:#fff;stroke-width:2;opacity:0;transition:opacity .3s}
.hk-mk .hk-mkc{fill:#ff6b6b;stroke:#060910;stroke-width:2}
.hk-mk .hk-mkn{transition:opacity .3s}
.hk-mk .hk-mkok{fill:none;stroke:#060910;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .3s}
.hk-tok1,.hk-tok2,.hk-tok3,.hk-tok4{fill:#4ade80;opacity:0;transition:opacity .4s}
.hk-tbad1,.hk-tbad2,.hk-tbad3,.hk-tbad4{fill:#ff8f8f;transition:opacity .4s}
.hk-f1 .hk-x2,.hk-f1 .hk-x5,.hk-f1 .hk-lk6,.hk-f1 .hk-xph{opacity:0;transition:opacity .4s}
.hk-xph{stroke:#ff6b6b;stroke-width:2.4;stroke-linecap:round}
.hk-exph{transition:opacity .4s}
.hk-gpcr{opacity:0}
.hk-vlan{fill:none;stroke:#4ade80;stroke-width:1.4;stroke-dasharray:7 6;opacity:0;transition:opacity .4s}
.hk-tvlan{fill:#4ade80;opacity:0;transition:opacity .4s}
.hk-f2{display:grid;grid-template-columns:330px minmax(0,1fr)}
.hk-f2ctl{display:flex;flex-direction:column;gap:16px;padding:18px;border-right:1px solid rgba(120,170,255,.12);background:rgba(6,9,16,.35)}
.hk-f2ctl .hk-ctlk{width:100%}
.hk-f2out{padding:18px 22px 18px;min-width:0}
.hk-f2desc{margin:0 0 6px;font:600 11.5px 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:#8bbcff}
.hk-f2big{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}
.hk-bigsci,.hk-bigex{font-size:46px;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:#fff;font-variant-numeric:tabular-nums}
.hk-bigsci sup{font-size:.5em;letter-spacing:0}
.hk-f2track{position:relative;height:30px;margin:18px 0 0;background:rgba(120,170,255,.06);border:1px solid rgba(120,170,255,.16);border-radius:3px;overflow:visible}
.hk-bar{position:absolute;left:0;top:0;bottom:0;width:100%;transform-origin:0 50%;transition:transform .7s cubic-bezier(.2,.7,.2,1);border-radius:2px}
.hk-bok{background:linear-gradient(90deg,rgba(74,222,128,.35),#4ade80)}
.hk-bwarn{background:linear-gradient(90deg,rgba(245,196,107,.35),#f5c46b)}
.hk-bbad{background:linear-gradient(90deg,rgba(255,107,107,.35),#ff6b6b)}
.hk-f2m{position:absolute;top:-2px;bottom:-2px;width:2px;background:#e8edf5}
.hk-f2m b{position:absolute;top:36px;left:0;transform:translateX(-50%);white-space:nowrap;font:600 10px 'JetBrains Mono',monospace;letter-spacing:.04em;color:#cfd8e6}
.hk-f2m1{left:4.48%}
.hk-f2m2{left:39.53%}
.hk-f2m3{left:53.06%}
.hk-f2m1 b{transform:none}
.hk-f2scale{margin-top:28px}
.hk-f2scale svg{display:block;width:100%;height:auto}
.hk-ax{stroke:rgba(139,188,255,.35);stroke-width:1}
.hk-tick{stroke:rgba(139,188,255,.5);stroke-width:1}
.hk-f2 .hk-math{margin:10px 0 8px;font:500 12.5px 'JetBrains Mono',monospace;line-height:1.6;color:#9fb0c9}
.hk-f3grid{display:grid;grid-template-columns:minmax(0,1fr) 320px}
.hk-f3map{padding:10px 8px 6px;min-width:0}
.hk-f3side{display:flex;flex-direction:column;padding:14px 0 6px;border-left:1px solid rgba(120,170,255,.12);background:rgba(6,9,16,.35)}
.hk-f3side .hk-stepline{margin-top:auto}
.hk-zflat{fill:rgba(255,107,107,.03);stroke:rgba(255,107,107,.5);stroke-width:1.4;stroke-dasharray:8 6}
.hk-tbadz{fill:#ff8f8f}
.hk-zv{fill:rgba(120,170,255,.03);stroke:rgba(139,188,255,.4);stroke-width:1.2;stroke-dasharray:6 5}
.hk-zvc{stroke:#4ade80;fill:rgba(74,222,128,.03)}
.hk-tvl{fill:#8bbcff}
.hk-tadm{fill:#8bbcff}
.hk-tvpn{fill:#4ade80}
.hk-f3 .hk-fadm,.hk-f3 .hk-flat,.hk-f3 .hk-vl,.hk-f3 .hk-x,.hk-f3 .hk-lkv,.hk-f3 .hk-tvpn{transition:opacity .45s}
.hk-f3.nf .hk-vl,.hk-f3.nv .hk-flat{opacity:0}
.hk-f3.nf .hk-fadm,.hk-f3.nv .hk-foff,.hk-f3.nv .hk-fgst,.hk-f3.nv .hk-freg,.hk-f3.nv .hk-fcam{opacity:0}
.hk-f3.nf .hk-xoff,.hk-f3.nf .hk-xgst,.hk-f3.nf .hk-xreg,.hk-f3.nf .hk-xcam{opacity:0}
.hk-f3.nv .hk-soff,.hk-f3.nv .hk-sgst,.hk-f3.nv .hk-sreg,.hk-f3.nv .hk-scam{opacity:1}
.hk-f3 .hk-fpf,.hk-f3 .hk-frl,.hk-f3 .hk-frl2,.hk-f3 .hk-fvpn,.hk-f3 .hk-lkv,.hk-f3 .hk-tvpn,.hk-f3 .hk-xany{opacity:0}
.hk-f3.ra0 .hk-fpf,.hk-f3.ra1 .hk-frl,.hk-f3.ra1 .hk-frl2,.hk-f3.ra2 .hk-fvpn,.hk-f3.ra2 .hk-lkv,.hk-f3.ra2 .hk-tvpn{opacity:1}
.hk-f3.ra1 .hk-fany,.hk-f3.ra2 .hk-fany{opacity:0}
.hk-f3.ra1 .hk-sany,.hk-f3.ra2 .hk-sany,.hk-f3.ra1 .hk-xany,.hk-f3.ra2 .hk-xany{opacity:1}
.hk-mkey{display:flex;flex-wrap:wrap;gap:6px 18px;padding:4px 10px 8px;font-size:12.5px;color:#9fb0c9}
.hk-mkey span{display:flex;align-items:center;gap:7px}
.hk-lg{display:inline-block;width:16px;height:4px;border-radius:2px}
.hk-lgb{background:#4ade80}
.hk-lgr{background:#ff6b6b}
.hk-lgy{background:#f5c46b}
.hk-lgx{width:12px;height:12px;border-radius:50%;border:1.6px solid #ff6b6b;background:transparent}
.hk-tblw{padding:4px 18px 10px;overflow-x:auto}
.hk-rtab{width:100%;border-collapse:collapse;font-size:14px;line-height:1.45}
.hk-rtab caption{text-align:left;padding:8px 0 8px;font:600 11px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#8bbcff}
.hk-rtab th,.hk-rtab td{text-align:left;padding:7px 10px;border-top:1px dashed rgba(120,170,255,.16);color:#cdd6e3}
.hk-rtab thead th{font:700 11.5px 'JetBrains Mono',monospace;letter-spacing:.12em;color:#fff;border-top:1px solid rgba(120,170,255,.3)}
.hk-rtab td:last-child{font:600 12.5px 'JetBrains Mono',monospace}
.hk-rok td:last-child{color:#7ee8a8}
.hk-rbad td:last-child{color:#ff8f8f}
.hk-rwarn td:last-child{color:#f5c46b}
.hk-f4{display:grid;grid-template-columns:minmax(0,1fr) 330px}
.hk-f4list{margin:0;padding:8px 18px 14px;list-style:none;counter-reset:c}
.hk-ci{counter-increment:c}
.hk-cg{display:block;margin:14px 0 4px;font:700 11px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#8bbcff}
.hk-cir{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px 12px;align-items:center;padding:9px 0 9px 34px;border-top:1px dashed rgba(120,170,255,.14);position:relative}
.hk-cir::before{content:counter(c);position:absolute;left:0;top:12px;width:22px;height:22px;border-radius:50%;border:1px solid #33425e;display:grid;place-items:center;font:700 10.5px 'JetBrains Mono',monospace;color:#7d92b3}
.hk-ci.yes .hk-cir::before{background:#4ade80;border-color:#4ade80;color:#060910}
.hk-ci.no .hk-cir::before{background:#ff6b6b;border-color:#ff6b6b;color:#060910}
.hk-ci.ns .hk-cir::before{background:#f5c46b;border-color:#f5c46b;color:#060910}
.hk-ciq{margin:0;font-size:15px;line-height:1.45;color:#dfe6f2}
.hk-w{font:600 10px 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;padding:3px 7px;border-radius:3px;border:1px solid rgba(120,170,255,.2);color:#9fb0c9}
.hk-w3{border-color:rgba(255,107,107,.5);color:#ff9d9d}
.hk-w2{border-color:rgba(245,196,107,.45);color:#f5c46b}
.hk-cib{display:flex;gap:5px}
.hk-f4side{display:flex;flex-direction:column;gap:10px;padding:18px 18px 18px;border-left:1px solid rgba(120,170,255,.12);background:rgba(6,9,16,.35)}
.hk-f4side .hk-f1big{padding:0}
.hk-f4track{position:relative;height:12px;background:rgba(120,170,255,.08);border-radius:6px;overflow:hidden}
.hk-f4ans{margin:0;font:500 12px 'JetBrains Mono',monospace;color:#9fb0c9}
.hk-todo ol{margin:8px 0 0;padding:0;list-style:none;counter-reset:t}
.hk-todo li{position:relative;display:flex;flex-direction:column;gap:3px;padding:10px 0 10px 30px;border-top:1px dashed rgba(120,170,255,.14);counter-increment:t}
.hk-todo li::before{content:counter(t);position:absolute;left:0;top:11px;width:20px;height:20px;border-radius:3px;background:#8bbcff;color:#060910;display:grid;place-items:center;font:700 10.5px 'JetBrains Mono',monospace}
.hk-todo b{font:600 14.5px/1.45 Inter,system-ui,sans-serif;color:#fff}
.hk-todot{font:500 11px 'JetBrains Mono',monospace;color:#f5c46b}
.hk-todo a{font-size:13.5px;color:#8bbcff;text-decoration:underline;text-decoration-color:rgba(139,188,255,.4);text-underline-offset:3px}
.hk-done{margin:0;font-size:14.5px;line-height:1.55;color:#7ee8a8}
.hk-steps{margin:6px 0 26px;padding:0;list-style:none;counter-reset:st}
.hk-steps li{position:relative;padding:12px 0 12px 44px;border-top:1px dashed rgba(120,170,255,.18);font-size:17px;line-height:1.6;color:#cdd6e3;counter-increment:st}
.hk-steps li::before{content:counter(st);position:absolute;left:0;top:13px;width:26px;height:26px;border-radius:50%;background:#4d9eff;color:#060910;display:grid;place-items:center;font:700 12px 'JetBrains Mono',monospace}
.hk-steps b{color:#f2f5fa}
.hk-col sup{font-size:.65em;line-height:0}
.hk-f1.fx1 .hk-mk1 .hk-mkc{fill:#4ade80}
.hk-f1.fx1 .hk-mk1 .hk-mkn{opacity:0}
.hk-f1.fx1 .hk-mk1 .hk-mkok{opacity:1}
.hk-f1.fx1 .hk-tbad1{opacity:0}
.hk-f1.fx1 .hk-tok1{opacity:1}
.hk-f1.sel1 .hk-mk1 .hk-mkr{opacity:1}
.hk-f1.fx1 .hk-rp1{opacity:0}
.hk-f1.fx2 .hk-mk2 .hk-mkc{fill:#4ade80}
.hk-f1.fx2 .hk-mk2 .hk-mkn{opacity:0}
.hk-f1.fx2 .hk-mk2 .hk-mkok{opacity:1}
.hk-f1.fx2 .hk-tbad2{opacity:0}
.hk-f1.fx2 .hk-tok2{opacity:1}
.hk-f1.sel2 .hk-mk2 .hk-mkr{opacity:1}
.hk-f1.fx2 .hk-rp2{opacity:0}
.hk-f1.fx3 .hk-mk3 .hk-mkc{fill:#4ade80}
.hk-f1.fx3 .hk-mk3 .hk-mkn{opacity:0}
.hk-f1.fx3 .hk-mk3 .hk-mkok{opacity:1}
.hk-f1.fx3 .hk-tbad3{opacity:0}
.hk-f1.fx3 .hk-tok3{opacity:1}
.hk-f1.sel3 .hk-mk3 .hk-mkr{opacity:1}
.hk-f1.fx3 .hk-rp3{opacity:0}
.hk-f1.fx4 .hk-mk4 .hk-mkc{fill:#4ade80}
.hk-f1.fx4 .hk-mk4 .hk-mkn{opacity:0}
.hk-f1.fx4 .hk-mk4 .hk-mkok{opacity:1}
.hk-f1.fx4 .hk-tbad4{opacity:0}
.hk-f1.fx4 .hk-tok4{opacity:1}
.hk-f1.sel4 .hk-mk4 .hk-mkr{opacity:1}
.hk-f1.fx4 .hk-rp4{opacity:0}
.hk-f1.fx5 .hk-mk5 .hk-mkc{fill:#4ade80}
.hk-f1.fx5 .hk-mk5 .hk-mkn{opacity:0}
.hk-f1.fx5 .hk-mk5 .hk-mkok{opacity:1}
.hk-f1.fx5 .hk-tbad5{opacity:0}
.hk-f1.fx5 .hk-tok5{opacity:1}
.hk-f1.sel5 .hk-mk5 .hk-mkr{opacity:1}
.hk-f1.fx5 .hk-rp5{opacity:0}
.hk-f1.fx6 .hk-mk6 .hk-mkc{fill:#4ade80}
.hk-f1.fx6 .hk-mk6 .hk-mkn{opacity:0}
.hk-f1.fx6 .hk-mk6 .hk-mkok{opacity:1}
.hk-f1.fx6 .hk-tbad6{opacity:0}
.hk-f1.fx6 .hk-tok6{opacity:1}
.hk-f1.sel6 .hk-mk6 .hk-mkr{opacity:1}
.hk-f1.fx6 .hk-rp6{opacity:0}
.hk-f1.fx2 .hk-stub2,.hk-f1.fx5 .hk-stub5{opacity:1}
.hk-f1.fx2 .hk-x2,.hk-f1.fx5 .hk-x5,.hk-f1.fx6 .hk-lk6{opacity:1}
.hk-f1.fx4 .hk-exph{opacity:.28}
.hk-f1.fx4 .hk-xph{opacity:1}
.hk-f1.fx4.fx6 .hk-rpcr{opacity:0}
.hk-f1.fx4.fx6 .hk-gpcr{opacity:1}
.hk-f1.fx5 .hk-vlan,.hk-f1.fx5 .hk-tvlan{opacity:1}
.hk-f1.fx3 .hk-c0 rect{stroke:#4ade80}
.hk-f1.sel1 .hk-rp2 .hk-flf{stroke-width:4}
.hk-f1.sel2 .hk-rp2 .hk-flf{stroke-width:4}
.hk-f1.sel3 .hk-rp2 .hk-flf{stroke-width:4}
.hk-f1.sel4 .hk-rp4 .hk-flf,.hk-f1.sel4 .hk-rpcr .hk-flf{stroke-width:4}
.hk-f1.sel5 .hk-rp5 .hk-flf{stroke-width:4}
.hk-f1.sel6 .hk-rp6 .hk-flf,.hk-f1.sel6 .hk-rpcr .hk-flf{stroke-width:4}
@media (max-width:1100px){.hk-f1grid,.hk-f3grid,.hk-f4{grid-template-columns:minmax(0,1fr)}}
@media (max-width:1100px){.hk-f1side,.hk-f3side,.hk-f4side{border-left:0;border-top:1px solid rgba(120,170,255,.12)}}
@media (max-width:1100px){.hk-f2{grid-template-columns:minmax(0,1fr)}}
@media (max-width:1100px){.hk-f2ctl{border-right:0;border-bottom:1px solid rgba(120,170,255,.12)}}
@media (max-width:1100px){.hk-f4side{order:-1;border-top:0;border-bottom:1px solid rgba(120,170,255,.12)}}
@media (max-width:980px){.hk-cards{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.hk-head,.hk-col{padding:0 16px}}
@media (max-width:640px){.hk-fig{width:calc(100% - 32px);margin:32px auto 36px}}
@media (max-width:640px){.hk-wide{padding:0 16px}}
@media (max-width:640px){.hk-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}}
@media (max-width:640px){.hk-min1 svg,.hk-min3 svg{min-width:820px}}
@media (max-width:640px){.hk-min1 .hk-tsm,.hk-min3 .hk-tsm{font-size:10.5px}}
@media (max-width:640px){.hk-swipe{display:block;padding:10px 18px 0}}
@media (max-width:640px){.hk-tog{min-height:44px}}
@media (max-width:640px){.hk-tog.xs{min-height:40px}}
@media (max-width:640px){.hk-col p{font-size:17px}}
@media (max-width:640px){.hk-lede{font-size:18px!important}}
@media (max-width:640px){.hk-dek{font-size:18px}}
@media (max-width:640px){.hk-cir{grid-template-columns:minmax(0,1fr) auto;padding-left:32px}}
@media (max-width:640px){.hk-cib{grid-column:1 / -1}}
@media (max-width:640px){.hk-bigsci,.hk-bigex{font-size:38px}}
@media (max-width:640px){.hk-f2out{padding:16px}}
@media (max-width:640px){.hk-f2m b{font-size:9.5px}}
@media (max-width:640px){.hk-f2m2 b{top:52px}}
@media (max-width:640px){.hk-f2scale{margin-top:58px}}
@media (max-width:640px){.hk-svg2 .hk-t2{font-size:30px}}
@media (max-width:640px){.hk-svg2 .hk-sup{font-size:20px}}
@media (max-width:640px){.hk-svg2 .hk-tcap{display:none}}
@media (max-width:640px){.hk-f4side{order:-1;border-top:0;border-bottom:1px solid rgba(120,170,255,.12)}}
@media (max-width:640px){.hk-rtab{font-size:12.5px}}
@media (max-width:640px){.hk-rtab th,.hk-rtab td{padding:6px 5px}}
@media (max-width:640px){.hk-rtab td:last-child{font-size:11.5px}}
@media (max-width:640px){.hk-src li{grid-template-columns:minmax(0,1fr);gap:4px}}
@media (max-width:640px){.hk-tocm ol{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.hk-cta{padding:22px}}
@media (max-width:640px){.hk-qs li,.hk-steps li{font-size:16px}}
@media (max-width:640px){.hk-stepline{font-size:14.5px}}
@media (max-width:640px){.hk-fighead .hk-ctl{width:100%}}
@media (max-width:640px){.hk-kv>b{max-width:58%}}
[data-hkp] *{animation:none!important}
@media (prefers-reduced-motion:reduce){.hk-art *,.hk-art *::before,.hk-art *::after{animation:none!important;transition:none!important}}
@media (prefers-reduced-motion:reduce){.hk-flf{stroke-dasharray:none;stroke-width:2.5}}
