.io-art{position:relative;padding:0 0 40px;--ac:#4d9eff;--acs:rgba(77,158,255,.14)}
.io-a-blue{--ac:#4d9eff;--acs:rgba(77,158,255,.14);--acl:#8bbcff}
.io-a-teal{--ac:#2dd4bf;--acs:rgba(45,212,191,.13);--acl:#7ee8da}
.io-a-orange{--ac:#fb923c;--acs:rgba(251,146,60,.13);--acl:#fdba74}
.io-a-violet{--ac:#a78bfa;--acs:rgba(167,139,250,.14);--acl:#c4b5fd}
.io-a-all{--ac:#8bbcff;--acs:rgba(139,188,255,.12);--acl:#cfe0ff}
.io-rail{display:none;position:absolute;top:0;bottom:0;left:max(16px,calc(50% - 704px));width:136px;z-index:2}
.io-toc{position:sticky;top:104px;display:flex;flex-direction:column;gap:2px;padding-top:280px}
.io-toch{font:600 10.5px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#7d92b3;margin-bottom:10px}
.io-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}
.io-tocl b{font:600 10.5px 'JetBrains Mono',monospace;color:#7589aa;min-width:16px}
.io-tocl:hover{color:#e8edf5}
.io-tocl.on{border-left-color:#4d9eff;color:#e8edf5}
.io-tocl.on b{color:#4d9eff}
@media (min-width:1400px){.io-rail{display:block}}
@media (min-width:1400px){.io-tocm{display:none}}
.io-head,.io-col{max-width:748px;margin:0 auto;padding:0 24px}
.io-head{padding-top:44px;padding-bottom:36px}
.io-crumb{font:500 12px 'JetBrains Mono',monospace;letter-spacing:.06em;color:#7d92b3;margin-bottom:18px}
.io-crumb a{color:#8a95a8}
.io-crumb span{color:#cfd8e6}
.io-back{display:inline-flex;align-items:center;min-height:44px;font:600 12px 'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:#8bbcff}
.io-back::before{content:"";width:16px;height:1px;background:#8bbcff;margin-right:10px}
.io-kick{font:600 11.5px 'JetBrains Mono',monospace;letter-spacing:.18em;text-transform:uppercase;color:#4d9eff;margin:22px 0 14px}
.io-h1{margin:0;font-size:clamp(34px,4.4vw,50px);font-weight:800;letter-spacing:-.035em;line-height:1.06;color:#f2f5fa}
.io-dek{margin:20px 0 0;font-size:20px;line-height:1.55;color:#a9b6ca}
.io-check{margin:10px 0 0;font:500 12.5px 'JetBrains Mono',monospace;letter-spacing:.03em;color:#7d92b3}
.io-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}
.io-slot-inline{color:#f5c46b;background:rgba(245,196,107,.08);border:1px dashed rgba(245,196,107,.55);padding:1px 6px;border-radius:3px}
.io-col p{margin:0 0 22px;font-size:18px;line-height:1.7;color:#cdd6e3}
.io-col a{color:#8bbcff;text-decoration:underline;text-decoration-color:rgba(139,188,255,.4);text-underline-offset:3px}
.io-col a:hover{color:#fff;text-decoration-color:#fff}
.io-sec{position:relative;padding:40px 0 8px}
.io-sec-cont{padding-top:8px}
.io-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}
.io-secn{font:600 12px 'JetBrains Mono',monospace;letter-spacing:.18em;color:var(--ac)}
.io-secn::after{content:"";display:inline-block;width:36px;height:1px;background:var(--ac);vertical-align:middle;margin-left:12px;opacity:.6}
.io-h2s{font-size:clamp(24px,2.6vw,30px)}
.io-h3{margin:30px 0 10px;font-size:20px;font-weight:700;letter-spacing:-.012em;color:#eef2f8}
.io-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}
.io-sumh{margin:0 0 14px;font:600 11.5px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#8bbcff}
.io-sum ul{margin:0;padding:0;list-style:none;counter-reset:s}
.io-sum li{position:relative;padding:0 0 14px 34px;font-size:16.5px;line-height:1.6;color:#dfe6f2;counter-increment:s}
.io-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}
.io-tocm{margin:0 0 30px;padding:18px 20px;border:1px solid rgba(120,170,255,.14);border-radius:4px}
.io-tocm ol{margin:8px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}
.io-tocm a{display:flex;align-items:center;min-height:40px;font:500 14px Inter,system-ui,sans-serif;color:#cfe0ff;text-decoration:none}
.io-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}
.io-exk{display:block;margin-bottom:10px;font:600 11px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#8bbcff}
.io-ex p{font-size:16.5px;color:#d5deea}
.io-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}
.io-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)}
.io-figt{display:flex;align-items:baseline;gap:12px}
.io-fign{font:700 11.5px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--ac)}
.io-figtt{font-size:18px;font-weight:700;letter-spacing:-.01em;color:#f2f5fa}
.io-fig figcaption{padding:14px 18px 16px;border-top:1px solid rgba(120,170,255,.12);font-size:14px;line-height:1.55;color:#8a9bb8}
.io-ctls{display:flex;flex-wrap:wrap;gap:10px 18px}
.io-ctl{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.io-ctlk{font:600 10.5px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#7d92b3;margin-right:4px}
.io-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}
.io-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}
.io-tog:hover{border-color:var(--ac);color:#fff}
.io-tog.on{border-color:var(--ac);background:var(--acs);color:#fff}
.io-tog.on i,.io-tog.done i{background:var(--ac);color:#060910}
.io-tog.sm{padding:0 10px;font-size:11.5px}
.io-tog.bad.on{border-color:#ff6b6b;background:rgba(255,107,107,.12);color:#ffd0d0}
.io-tog:focus-visible{outline:2px solid #fff;outline-offset:2px}
.io-svgbox{padding:10px 12px}
.io-swipe{display:none;margin:0;padding:0 18px 10px;font:500 11px 'JetBrains Mono',monospace;letter-spacing:.06em;color:#7d92b3}
.io-math{margin:6px 0 0;font:500 12.5px 'JetBrains Mono',monospace;line-height:1.55;color:#9fb0c9}
.io-bign{font-size:46px;font-weight:800;letter-spacing:-.03em;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.io-bigu{font:600 11px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#8a9bb8}
.io-calc{margin-top:4px;padding-top:12px;border-top:1px solid rgba(120,170,255,.12)}
.io-calcl{display:flex;justify-content:space-between;gap:12px;margin-top:10px;font-size:14px;color:#9fb0c9}
.io-calcl>b{font:700 15px 'JetBrains Mono',monospace;color:#fff}
.io-qs{margin:10px 0 26px;padding:0;list-style:none;counter-reset:q}
.io-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}
.io-qs li::before{content:"";position:absolute;left:0;top:14px;width:24px;height:24px;border:1.5px solid #4d9eff;border-radius:4px}
.io-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}
.io-src{margin:0 0 20px;padding:0;list-style:none}
.io-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)}
.io-src b{font:600 13px 'JetBrains Mono',monospace;color:#e8edf5}
.io-src span{font-size:15px;line-height:1.55;color:#aebbd0}
.io-faq1{padding:6px 0 4px;border-top:1px dashed rgba(120,170,255,.18)}
.io-faqq{margin:16px 0 8px;font-size:19px;font-weight:700;letter-spacing:-.01em;line-height:1.35;color:#eef2f8}
.io-faq1 p{font-size:17px}
.io-more{padding-top:56px}
.io-wide{max-width:1168px;margin:0 auto;padding:0 24px}
.io-more .io-kick{color:#7d92b3}
.io-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.io-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}
.io-card:hover{border-color:var(--ac);color:#fff}
.io-cardk{font:600 10.5px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--ac)}
.io-card b{font-size:17px;line-height:1.35;letter-spacing:-.01em}
.io-cardp{font-size:14.5px;line-height:1.55;color:#a3adbd}
.io-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}
.io-cta>div:first-child{flex:1 1 380px}
.io-ctah{margin:0 0 8px;font-size:30px;font-weight:800;letter-spacing:-.03em;color:#fff}
.io-cta p{margin:0;font-size:16px;line-height:1.6;color:#c3cede}
.io-ctab{display:flex;flex-wrap:wrap;gap:10px}
.io-lede{font-size:19.5px!important;color:#e8edf5!important}
.io-col b{color:#eef2f8}
.io-list{margin:0 0 24px;padding:0;list-style:none}
.io-list li{position:relative;padding:12px 0 12px 22px;border-top:1px dashed rgba(120,170,255,.16);font-size:17px;line-height:1.6;color:#cdd6e3}
.io-list li::before{content:"";position:absolute;left:2px;top:23px;width:8px;height:8px;border-radius:2px;background:#4d9eff}
.io-list b{color:#f2f5fa}
.io-tablewrap{max-width:860px;margin:6px auto 28px;padding:0 24px}
.io-tablewrap-n{max-width:748px}
.io-tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid rgba(120,170,255,.16);border-radius:6px;background:#0b1324}
.io-table{width:100%;min-width:560px;border-collapse:collapse;font-size:15px;line-height:1.5}
.io-table caption{text-align:left;padding:14px 16px 0;font:600 11px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#7d92b3}
.io-table th,.io-table td{padding:11px 16px;text-align:left;vertical-align:top;border-top:1px solid rgba(120,170,255,.1)}
.io-table thead th{border-top:0;font:700 12px 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:#e8edf5}
.io-table thead th:nth-child(3){color:#8bbcff}
.io-table tbody th{font-weight:600;color:#e8edf5;width:30%}
.io-table td{color:#bfcbdc}
.io-table td:nth-child(3){background:rgba(77,158,255,.05);color:#e1e8f2}
.io-iktable{min-width:520px}
.io-iktable td:nth-child(3){background:none;color:#bfcbdc}
.io-iktable tbody th{width:14%;font-family:'JetBrains Mono',monospace}
.io-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.io-faq{margin:0 0 30px}
.io-fq{padding:6px 0 4px;border-top:1px dashed rgba(120,170,255,.18)}
.io-fqq{margin:16px 0 8px}
.io-fq p{margin-bottom:14px!important}
.io-t{font:600 11.5px 'JetBrains Mono',monospace;fill:#cfe0ff;letter-spacing:.05em}
.io-t2{font:500 10.5px 'JetBrains Mono',monospace;fill:#7d92b3;letter-spacing:.06em}
.io-tw{fill:#cfe0ff}
.io-tag{font:700 10.5px 'JetBrains Mono',monospace;fill:#cfe0ff;letter-spacing:.04em}
.io-badge{fill:rgba(77,158,255,.14);stroke:rgba(139,188,255,.5);stroke-width:1}
.io-dimx{stroke-dasharray:2 3}
.io-div{stroke:rgba(120,170,255,.22);stroke-width:1}
.io-thin{stroke:rgba(139,188,255,.38);stroke-width:1;fill:none}
.io-pan{fill:rgba(6,9,16,.45);stroke:rgba(120,170,255,.12)}
.io-scroll{min-width:0}
@keyframes io-flow{from{stroke-dashoffset:0}to{stroke-dashoffset:-28}}
@keyframes io-fall{0%{transform:translateY(0);opacity:0}15%{opacity:1}85%{opacity:1}100%{transform:translateY(64px);opacity:0}}
.io-dd0{animation-delay:-.2s}
.io-dd1{animation-delay:-.55s}
.io-dd2{animation-delay:-.9s}
.io-dd3{animation-delay:-1.25s}
.io-dd4{animation-delay:-1.6s}
.io-pair{display:flex;align-items:center;gap:6px}
.io-pair>svg{min-width:0}
.io-pair1>svg{flex:1 1 0}
.io-pair2>svg:first-child{flex:474 1 0}
.io-pair2>svg:last-child{flex:260 1 0}
.io-f1ctl{display:flex;flex-wrap:wrap;gap:10px 22px;padding:12px 18px;border-bottom:1px solid rgba(120,170,255,.1)}
.io-tog.dg{min-width:40px;justify-content:center;padding:0 8px;font-size:13px}
.io-probe{fill:rgba(125,146,179,.08);stroke:#7d92b3;stroke-width:1.4}
.io-dust{fill:#7d92b3}
.io-ok,.io-no,.io-part{opacity:0;transition:opacity .3s}
.io-ok circle{fill:rgba(74,222,128,.16);stroke:#4ade80;stroke-width:1.4}
.io-ok path{stroke:#4ade80;stroke-width:2;fill:none;stroke-linecap:round}
.io-no circle{fill:none;stroke:#7589aa;stroke-width:1.2}
.io-no path{stroke:#7d92b3;stroke-width:2;fill:none;stroke-linecap:round}
.io-part circle{fill:rgba(245,196,107,.14);stroke:#f5c46b;stroke-width:1.4}
.io-part path{stroke:#f5c46b;stroke-width:2;fill:none;stroke-linecap:round}
.io-okk circle{fill:rgba(74,222,128,.2);stroke:#4ade80}
.io-partk circle{fill:rgba(245,196,107,.2);stroke:#f5c46b}
.io-nok circle{fill:none;stroke:#7589aa}
.io-w{opacity:0;transition:opacity .45s}
.io-bcam rect{fill:#1b2a45;stroke:#8bbcff;stroke-width:1.4}
.io-bcam .io-hood{fill:#24395e}
.io-bcam .io-glass{fill:#060910;stroke:#8bbcff;stroke-width:1.4}
.io-bcam .io-arm{fill:#24395e;stroke:#8bbcff;stroke-width:1}
.io-drop{fill:#8bbcff;animation:io-fall 1.75s linear infinite}
.io-ang{stroke:rgba(245,196,107,.6);stroke-width:1;stroke-dasharray:3 4;fill:none}
.io-spray{stroke:#8bbcff;stroke-width:2;stroke-linecap:round;stroke-dasharray:3 9;animation:io-flow 1.1s linear infinite;opacity:.85}
.io-noz{fill:#24395e;stroke:#8bbcff;stroke-width:1.2}
.io-nozb{fill:#24395e;stroke:#8bbcff;stroke-width:1.2}
.io-jet{stroke:rgba(139,188,255,.3);stroke-linecap:round}
.io-jetpk{stroke:#e8f1ff;stroke-linecap:round;stroke-dasharray:6 10;animation:io-flow .5s linear infinite}
.io-jet{opacity:.9}
.io-tank{fill:url(#io-wat)}
.io-tank8{fill:rgba(77,158,255,.22)}
.io-surf{fill:none;stroke:#8bbcff;stroke-width:1.6}
.io-dim{stroke:#f5c46b;stroke-width:1.2;fill:none}
.io-hot{stroke:#fb923c}
.io-fan{fill:rgba(251,146,60,.16);stroke:rgba(251,146,60,.5);stroke-width:1}
.io-hotpk{stroke:#fdba74}
.io-f1out{display:grid;grid-template-columns:190px minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr);border-top:1px solid rgba(120,170,255,.12)}
.io-f1out>div{padding:14px 16px;border-left:1px solid rgba(120,170,255,.1);min-width:0}
.io-f1out>div:first-child{border-left:0}
.io-code b{display:block;margin-top:6px;font:800 27px 'JetBrains Mono',monospace;letter-spacing:-.02em;color:#fff;white-space:nowrap}
.io-dig b{display:block;margin:6px 0 4px;font-size:15px;line-height:1.35;color:#eef2f8}
.io-dig p{margin:0;font-size:13.5px;line-height:1.5;color:#aebbd0}
.io-use{background:rgba(77,158,255,.05)}
.io-use p{margin-top:6px;color:#dfe6f2;font-size:14px}
.io-ctl-mo .io-tog{min-height:36px;padding:0 8px;font-size:11px}
.io-grid{stroke:rgba(120,170,255,.09);stroke-width:1}
.io-frz{stroke:rgba(139,188,255,.45);stroke-width:1;stroke-dasharray:4 4}
.io-tfrz{fill:#8bbcff}
.io-band{opacity:0;transition:opacity .45s}
.io-bandr{fill:rgba(77,158,255,.08)}
.io-bande{stroke:#4d9eff;stroke-width:1.5;stroke-dasharray:6 4}
.io-tband{fill:#8bbcff}
.io-arrowu{fill:none;stroke:#8bbcff;stroke-width:1.4}
.io-roomb{opacity:0;transition:opacity .45s}
.io-roomr{fill:rgba(74,222,128,.14);stroke:rgba(74,222,128,.6);stroke-width:1}
.io-troom{fill:#bdf5d0}
.io-f3.p0 .io-roomb{opacity:1}
.io-f3.p0 .io-mo{opacity:.28}
.io-mo{transition:opacity .45s}
.io-cur{fill:rgba(232,237,245,.06);stroke:rgba(232,237,245,.18);stroke-width:1;transition:transform .5s ease}
.io-rec3{stroke:rgba(232,237,245,.38);stroke-width:1.4}
.io-rhi,.io-rlo{fill:#0b1324;stroke:#e8edf5;stroke-width:1.4}
.io-nb{fill:rgba(139,188,255,.55);stroke:#8bbcff;stroke-width:1}
.io-nblo{fill:#8bbcff}
.io-tmo{fill:#8a9bb8}
.io-sun,.io-sunlab{opacity:0;transition:opacity .45s}
.io-f3.p2 .io-sun,.io-f3.p2 .io-sunlab{opacity:1}
.io-sunr{fill:url(#io-hatch);stroke:rgba(245,196,107,.6);stroke-width:1;stroke-dasharray:3 3}
.io-sunh{fill:#f5c46b}
.io-tsun{fill:#f5c46b}
.io-f3out{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);border-top:1px solid rgba(120,170,255,.12)}
.io-f3m,.io-f3v{padding:14px 18px;min-width:0}
.io-f3v{border-left:1px solid rgba(120,170,255,.1);background:rgba(6,9,16,.3)}
.io-f3m .io-ctlk{color:#fff;font-size:12px}
.io-f3n{margin:8px 0 0;font:500 13px 'JetBrains Mono',monospace;line-height:1.5;color:#cfe0ff}
.io-f3h{margin:10px 0 0;font-size:14px;line-height:1.55;color:#aebbd0}
.io-mst{margin:10px 0 0;padding:8px 10px;border-radius:4px;font-size:13.5px;line-height:1.45}
.io-mst.io-is-ok{background:rgba(74,222,128,.08);color:#bdf5d0;border:1px solid rgba(74,222,128,.3)}
.io-mst.io-is-bad{background:rgba(255,107,107,.08);color:#ffd0d0;border:1px solid rgba(255,107,107,.35)}
.io-f3rate{margin:6px 0 10px;font-size:13.5px;line-height:1.5;color:#cfd8e6}
.io-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.io-stat{padding:8px 10px;border:1px solid rgba(120,170,255,.16);border-radius:4px;display:flex;flex-direction:column;justify-content:space-between;gap:6px}
.io-stat span{font-size:11.5px;line-height:1.35;color:#8a9bb8}
.io-stat b{font:700 16px 'JetBrains Mono',monospace;color:#fff;white-space:nowrap}
.io-stat.io-is-ok b{color:#4ade80}
.io-stat.io-is-bad b{color:#ff6b6b}
.io-stat.io-is-mid b{color:#f5c46b}
.io-stat.io-is-bad{border-color:rgba(255,107,107,.4)}
.io-f3verd{margin:12px 0 0;font-size:14px;line-height:1.55;color:#dfe6f2}
.io-f4grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.io-f4svg{padding:10px 16px;display:flex;align-items:center;min-width:0}
.io-f4r{padding:14px 18px;border-left:1px solid rgba(120,170,255,.12);background:rgba(6,9,16,.3);min-width:0}
.io-f4note{margin:0 0 10px;font-size:14px;line-height:1.5;color:#cfd8e6;min-height:42px}
.io-sl{display:block;margin:10px 0 2px}
.io-slh{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:#9fb0c9}
.io-slh b{font:700 13px 'JetBrains Mono',monospace;color:#fff}
.io-sl input{width:100%;margin:6px 0 0;accent-color:#4d9eff;height:28px}
.io-scale{position:relative;margin:16px 0 4px;padding:20px 0 18px}
.io-scbar{position:relative;height:8px;border-radius:4px;background:rgba(74,222,128,.25);overflow:hidden}
.io-sczone{position:absolute;left:0;top:0;bottom:0;background:rgba(255,107,107,.45)}
.io-mk{position:absolute;top:0;transform:translateX(-50%);font:600 10px 'JetBrains Mono',monospace;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.io-mk i{position:absolute;left:50%;width:2px;height:16px;margin-left:-1px;top:16px}
.io-mka{color:#8bbcff}
.io-mka i{background:#8bbcff}
.io-mkd{top:auto;bottom:-2px;color:#ff9b9b}
.io-mkd i{top:-20px;background:#ff6b6b}
.io-mks{color:#fff}
.io-mks i{background:#fff}
.io-scl{display:flex;justify-content:space-between;margin-top:22px;font:500 10px 'JetBrains Mono',monospace;color:#7589aa}
.io-f4res{margin-top:6px;padding-top:10px;border-top:1px solid rgba(120,170,255,.12)}
.io-calcl{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:#9fb0c9}
.io-calcl>b{font:700 15px 'JetBrains Mono',monospace;color:#fff}
.io-verdict{margin:10px 0 0;font-weight:700;font-size:16px}
.io-verdict.io-is-ok{color:#4ade80}
.io-verdict.io-is-mid{color:#f5c46b}
.io-verdict.io-is-bad{color:#ff6b6b}
.io-f4d{margin:4px 0 0;font-size:14px;line-height:1.5;color:#cfd8e6}
.io-ceil{fill:#101a2e;stroke:rgba(120,170,255,.2)}
.io-base{fill:#24395e;stroke:#8bbcff;stroke-width:1.2}
.io-domep{fill:rgba(139,188,255,.08);stroke:#8bbcff;stroke-width:1.6}
.io-mod rect{fill:#1b2a45;stroke:#7589aa}
.io-lensb{fill:#0b1324;stroke:#8bbcff;stroke-width:1.4}
.io-lensi{fill:#060910;stroke:#4d9eff}
.io-fogwash{fill:#e8edf5;opacity:0;transition:opacity .6s}
.io-fog,.io-frost{opacity:0;transition:opacity .6s}
.io-fd{fill:rgba(232,237,245,.75)}
.io-fr{stroke:#e8edf5;stroke-width:1.1;fill:none}
.io-f4.fog .io-fog{opacity:1}
.io-f4.fog .io-fogwash{opacity:.22}
.io-f4.frost .io-frost,.io-f4.frost .io-fog{opacity:1}
.io-f4.frost .io-fogwash{opacity:.32}
.io-f4.near .io-fog{opacity:.35}
.io-heatg{opacity:0;transition:opacity .6s}
.io-f4.heat .io-heatg{opacity:1}
.io-airf{fill:none;stroke:#f5c46b;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:4 10;animation:io-flow 1.4s linear infinite;opacity:.7}
.io-room{fill:rgba(120,170,255,.035)}
.io-grade{stroke:#8bbcff;stroke-width:2}
.io-wall,.io-wallv{stroke:rgba(232,237,245,.5);stroke-width:4}
.io-pane{fill:rgba(139,188,255,.55)}
.io-shelf{fill:#24395e}
.io-lampb{fill:#7589aa}
.io-lampglow{opacity:0;transition:opacity .5s}
.io-f2.s1 .io-lampglow{opacity:1}
.io-f2.s1 .io-lampb{fill:#f5c46b}
.io-person{fill:#3a4a66}
.io-f2.s2 .io-person,.io-f2.s3 .io-person{fill:#7d92b3}
.io-pole{stroke:#7589aa;stroke-width:3;fill:none}
.io-slamp{fill:#f5c46b}
.io-cone{fill:rgba(245,196,107,.12);opacity:0;transition:opacity .5s}
.io-f2.s2 .io-cone{opacity:1}
.io-cam2 rect{fill:#1b2a45;stroke:#8bbcff;stroke-width:1.2}
.io-lens2{fill:#060910;stroke:#8bbcff;stroke-width:1.2}
.io-led{fill:#ff6b6b;opacity:.3}
.io-hoodb{fill:none;stroke:#e8edf5;stroke-width:3}
.io-cin,.io-chood,.io-cout{opacity:0;transition:opacity .45s}
.io-f2.s0 .io-cin,.io-f2.s1 .io-cin,.io-f2.s2 .io-chood,.io-f2.s3 .io-cout{opacity:1}
.io-f2.s0 .io-led,.io-f2.s3 .io-led{opacity:1}
.io-s{opacity:0;transition:opacity .45s}
.io-f2.s0 .io-s0,.io-f2.s1 .io-s1,.io-f2.s2 .io-s2,.io-f2.s3 .io-s3{opacity:1}
.io-ir{fill:none;stroke:#ff6b6b;stroke-width:2;stroke-dasharray:4 7;animation:io-flow 1s linear infinite}
.io-irback{fill:none;stroke:#ffd0d0;stroke-width:2.6;stroke-dasharray:4 7;animation:io-flow 1s linear infinite}
.io-irback2{opacity:.6}
.io-irweak{fill:none;stroke:rgba(255,107,107,.35);stroke-width:1.2;stroke-dasharray:2 8;animation:io-flow 1.6s linear infinite}
.io-irret{fill:none;stroke:#ffd0d0;stroke-width:2;stroke-dasharray:4 7;animation:io-flow 1s linear infinite}
.io-tir{fill:#ff9b9b}
.io-tlamp{fill:#f5c46b}
.io-lray{fill:none;stroke:#f5c46b;stroke-width:1.8;stroke-dasharray:4 7;animation:io-flow 1.2s linear infinite}
.io-lrayb{stroke:#fde3a7}
.io-ret{fill:none;stroke:#f5c46b;stroke-width:2;stroke-dasharray:4 7;animation:io-flow 1.2s linear infinite}
.io-monf{fill:none;stroke:rgba(139,188,255,.45);stroke-width:2}
.io-mbg{fill:#05070c}
.io-v{opacity:0;transition:opacity .5s}
.io-vside{fill:#3a4252}
.io-vbld{fill:#2a3140}
.io-vdoor{fill:#151a24}
.io-vwin{fill:#4a5468}
.io-vper{fill:#9aa6b8}
.io-vtint{fill:rgba(245,196,107,.12)}
.io-vlamp{fill:#f5c46b}
.io-vhaze{fill:rgba(245,196,107,.12)}
.io-vshelf{fill:rgba(207,224,255,.35)}
.io-vmull{stroke:rgba(207,224,255,.25);stroke-width:4}
.io-vhaze2{fill:rgba(232,237,245,.35)}
.io-rec{fill:#ff6b6b}
.io-vrec{opacity:1}
.io-f2.s0 .io-vscene{opacity:.12}
.io-f2.s0 .io-vglare{opacity:1}
.io-f2.s1 .io-vscene{opacity:.3}
.io-f2.s1 .io-vrefl{opacity:1}
.io-f2.s2 .io-vscene{opacity:.82}
.io-f2.s2 .io-vtint{opacity:1}
.io-f2.s3 .io-vscene{opacity:1}
.io-f2out{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);border-top:1px solid rgba(120,170,255,.12)}
.io-f2t,.io-f2f{padding:14px 18px;min-width:0}
.io-f2f{border-left:1px solid rgba(120,170,255,.1);background:rgba(6,9,16,.3)}
.io-f2t b{display:block;font-size:16px;color:#fff;margin-bottom:6px}
.io-f2t p,.io-f2f p{margin:0;font-size:14px;line-height:1.55;color:#cfd8e6}
.io-f2f p{margin-top:6px}
.io-f2math{padding:10px 18px 12px;margin:0;border-top:1px solid rgba(120,170,255,.1)}
@media (max-width:980px){.io-f1out{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media (max-width:980px){.io-f1out>div:nth-child(3){border-left:0}}
@media (max-width:980px){.io-f1out>div:nth-child(n+3){border-top:1px solid rgba(120,170,255,.1)}}
@media (max-width:980px){.io-f3out,.io-f2out,.io-f4grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:980px){.io-f3v,.io-f2f,.io-f4r{border-left:0;border-top:1px solid rgba(120,170,255,.12)}}
@media (max-width:980px){.io-f4svg{max-width:420px;margin:0 auto}}
@media (max-width:980px){.io-cards{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.io-head,.io-col{padding:0 16px}}
@media (max-width:640px){.io-fig{width:calc(100% - 32px);margin:32px auto 36px}}
@media (max-width:640px){.io-wide,.io-tablewrap{padding:0 16px}}
@media (max-width:640px){.io-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}}
@media (max-width:640px){.io-min640 svg{min-width:700px}}
@media (max-width:640px){.io-pair{flex-direction:column;align-items:stretch;gap:14px}}
@media (max-width:640px){.io-pair>svg{flex:none!important;width:100%}}
@media (max-width:640px){.io-svgbox.io-pair2>svg:first-child .io-t{font-size:16px}}
@media (max-width:640px){.io-svgbox.io-pair2>svg:first-child .io-t2{font-size:15px}}
@media (max-width:640px){.io-svgbox .io-tag{font-size:12px}}
@media (max-width:640px){.io-svgbox.io-pair2>svg:last-child{width:86%!important;margin:0 auto}}
@media (max-width:640px){.io-f4svg .io-t2{font-size:12.5px}}
@media (max-width:640px){.io-svgbox .io-t{font-size:12.5px}}
@media (max-width:640px){.io-svgbox .io-t2{font-size:12px}}
@media (max-width:640px){.io-swipe{display:block;padding:10px 18px 0}}
@media (max-width:640px){.io-swipe-t{padding:0 0 8px}}
@media (max-width:640px){.io-tog{min-height:44px}}
@media (max-width:640px){.io-tog.dg{min-width:44px}}
@media (max-width:640px){.io-ctl-mo .io-tog{min-height:44px;min-width:52px;justify-content:center}}
@media (max-width:640px){.io-col p{font-size:17px}}
@media (max-width:640px){.io-f1out{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.io-f1out>div{border-left:0!important;border-top:1px solid rgba(120,170,255,.1)}}
@media (max-width:640px){.io-f1out>div:first-child{border-top:0}}
@media (max-width:640px){.io-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.io-tocm ol{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.io-src li{grid-template-columns:minmax(0,1fr);gap:4px}}
@media (max-width:640px){.io-fighead{padding:12px 14px}}
@media (max-width:640px){.io-f1ctl{padding:12px 14px}}
@media (max-width:640px){.io-cta{padding:22px}}
[data-iop] *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.io-art *,.io-art *::before,.io-art *::after{animation:none!important;transition:none!important}}
@media (prefers-reduced-motion:reduce){.io-drop{opacity:1}}
.io-f1.a0 .io-p1 .io-no{opacity:1}
.io-f1.a0 .io-p2 .io-no{opacity:1}
.io-f1.a0 .io-p3 .io-no{opacity:1}
.io-f1.a0 .io-p4 .io-no{opacity:1}
.io-f1.a0 .io-p5 .io-no{opacity:1}
.io-f1.a1 .io-p1 .io-ok{opacity:1}
.io-f1.a1 .io-p1 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a1 .io-p1 .io-dust{fill:#4ade80}
.io-f1.a1 .io-p2 .io-no{opacity:1}
.io-f1.a1 .io-p3 .io-no{opacity:1}
.io-f1.a1 .io-p4 .io-no{opacity:1}
.io-f1.a1 .io-p5 .io-no{opacity:1}
.io-f1.a2 .io-p1 .io-ok{opacity:1}
.io-f1.a2 .io-p1 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a2 .io-p1 .io-dust{fill:#4ade80}
.io-f1.a2 .io-p2 .io-ok{opacity:1}
.io-f1.a2 .io-p2 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a2 .io-p2 .io-dust{fill:#4ade80}
.io-f1.a2 .io-p3 .io-no{opacity:1}
.io-f1.a2 .io-p4 .io-no{opacity:1}
.io-f1.a2 .io-p5 .io-no{opacity:1}
.io-f1.a3 .io-p1 .io-ok{opacity:1}
.io-f1.a3 .io-p1 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a3 .io-p1 .io-dust{fill:#4ade80}
.io-f1.a3 .io-p2 .io-ok{opacity:1}
.io-f1.a3 .io-p2 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a3 .io-p2 .io-dust{fill:#4ade80}
.io-f1.a3 .io-p3 .io-ok{opacity:1}
.io-f1.a3 .io-p3 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a3 .io-p3 .io-dust{fill:#4ade80}
.io-f1.a3 .io-p4 .io-no{opacity:1}
.io-f1.a3 .io-p5 .io-no{opacity:1}
.io-f1.a4 .io-p1 .io-ok{opacity:1}
.io-f1.a4 .io-p1 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a4 .io-p1 .io-dust{fill:#4ade80}
.io-f1.a4 .io-p2 .io-ok{opacity:1}
.io-f1.a4 .io-p2 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a4 .io-p2 .io-dust{fill:#4ade80}
.io-f1.a4 .io-p3 .io-ok{opacity:1}
.io-f1.a4 .io-p3 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a4 .io-p3 .io-dust{fill:#4ade80}
.io-f1.a4 .io-p4 .io-ok{opacity:1}
.io-f1.a4 .io-p4 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a4 .io-p4 .io-dust{fill:#4ade80}
.io-f1.a4 .io-p5 .io-no{opacity:1}
.io-f1.a5 .io-p1 .io-ok{opacity:1}
.io-f1.a5 .io-p1 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a5 .io-p1 .io-dust{fill:#4ade80}
.io-f1.a5 .io-p2 .io-ok{opacity:1}
.io-f1.a5 .io-p2 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a5 .io-p2 .io-dust{fill:#4ade80}
.io-f1.a5 .io-p3 .io-ok{opacity:1}
.io-f1.a5 .io-p3 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a5 .io-p3 .io-dust{fill:#4ade80}
.io-f1.a5 .io-p4 .io-ok{opacity:1}
.io-f1.a5 .io-p4 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a5 .io-p4 .io-dust{fill:#4ade80}
.io-f1.a5 .io-p5 .io-part{opacity:1}
.io-f1.a5 .io-p5 .io-probe{stroke:#f5c46b;fill:rgba(245,196,107,.14)}
.io-f1.a5 .io-p5 .io-dust{fill:#f5c46b}
.io-f1.a6 .io-p1 .io-ok{opacity:1}
.io-f1.a6 .io-p1 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a6 .io-p1 .io-dust{fill:#4ade80}
.io-f1.a6 .io-p2 .io-ok{opacity:1}
.io-f1.a6 .io-p2 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a6 .io-p2 .io-dust{fill:#4ade80}
.io-f1.a6 .io-p3 .io-ok{opacity:1}
.io-f1.a6 .io-p3 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a6 .io-p3 .io-dust{fill:#4ade80}
.io-f1.a6 .io-p4 .io-ok{opacity:1}
.io-f1.a6 .io-p4 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a6 .io-p4 .io-dust{fill:#4ade80}
.io-f1.a6 .io-p5 .io-ok{opacity:1}
.io-f1.a6 .io-p5 .io-probe{stroke:#4ade80;fill:rgba(74,222,128,.16)}
.io-f1.a6 .io-p5 .io-dust{fill:#4ade80}
.io-f1.b0 .io-w0{opacity:1}
.io-f1.b1 .io-w1{opacity:1}
.io-f1.b2 .io-w2{opacity:1}
.io-f1.b3 .io-w3{opacity:1}
.io-f1.b4 .io-w4{opacity:1}
.io-f1.b5 .io-w5{opacity:1}
.io-f1.b6 .io-w6{opacity:1}
.io-f1.b7 .io-w7{opacity:1}
.io-f1.b8 .io-w8{opacity:1}
.io-f1.b9 .io-w9{opacity:1}
.io-f3.mo0 .io-cur{transform:translateX(0px)}
.io-f3.mo0 .io-mo0 .io-tmo{fill:#fff}
.io-f3.mo1 .io-cur{transform:translateX(51.33px)}
.io-f3.mo1 .io-mo1 .io-tmo{fill:#fff}
.io-f3.mo2 .io-cur{transform:translateX(102.67px)}
.io-f3.mo2 .io-mo2 .io-tmo{fill:#fff}
.io-f3.mo3 .io-cur{transform:translateX(154px)}
.io-f3.mo3 .io-mo3 .io-tmo{fill:#fff}
.io-f3.mo4 .io-cur{transform:translateX(205.33px)}
.io-f3.mo4 .io-mo4 .io-tmo{fill:#fff}
.io-f3.mo5 .io-cur{transform:translateX(256.67px)}
.io-f3.mo5 .io-mo5 .io-tmo{fill:#fff}
.io-f3.mo6 .io-cur{transform:translateX(308px)}
.io-f3.mo6 .io-mo6 .io-tmo{fill:#fff}
.io-f3.mo7 .io-cur{transform:translateX(359.33px)}
.io-f3.mo7 .io-mo7 .io-tmo{fill:#fff}
.io-f3.mo8 .io-cur{transform:translateX(410.67px)}
.io-f3.mo8 .io-mo8 .io-tmo{fill:#fff}
.io-f3.mo9 .io-cur{transform:translateX(462px)}
.io-f3.mo9 .io-mo9 .io-tmo{fill:#fff}
.io-f3.mo10 .io-cur{transform:translateX(513.33px)}
.io-f3.mo10 .io-mo10 .io-tmo{fill:#fff}
.io-f3.mo11 .io-cur{transform:translateX(564.67px)}
.io-f3.mo11 .io-mo11 .io-tmo{fill:#fff}
.io-f3.c0 .io-band0{opacity:1}
.io-f3.c0:not(.p0) .xn0 .io-nblo{fill:#ff6b6b}
.io-f3.c0:not(.p0) .xr0 .io-rlo{fill:#ff6b6b;stroke:#ff6b6b}
.io-f3.c0:not(.p0) .xh0 .io-rhi{fill:#ff6b6b;stroke:#ff6b6b}
.io-f3.c1 .io-band1{opacity:1}
.io-f3.c1:not(.p0) .xn1 .io-nblo{fill:#ff6b6b}
.io-f3.c1:not(.p0) .xr1 .io-rlo{fill:#ff6b6b;stroke:#ff6b6b}
.io-f3.c1:not(.p0) .xh1 .io-rhi{fill:#ff6b6b;stroke:#ff6b6b}
.io-f3.c2 .io-band2{opacity:1}
.io-f3.c2:not(.p0) .xn2 .io-nblo{fill:#ff6b6b}
.io-f3.c2:not(.p0) .xr2 .io-rlo{fill:#ff6b6b;stroke:#ff6b6b}
.io-f3.c2:not(.p0) .xh2 .io-rhi{fill:#ff6b6b;stroke:#ff6b6b}
