:root{--bg:#fff;--bg2:#f6f6f8;--canvas:#f6f6f8;--fg:#12161e;--head:#111a4a;--body:#3b3e47;--muted:#7c7f88;--faint:#a9acb6;--line:#e3e4e8;--line2:#cbcccf;--link:#111a4a;--btn:#111a4a;--btn-fg:#fff;--ok:#167e6c;--ok-bg:#e6f6ef;--warn:#b45309;--warn-bg:#fdf3e7;--bad:#c2410c;--bad-bg:#fdeee7;--info:#1e4199;--info-bg:#eef1fb;--code-bg:#f1f2f5;--chart:#44b48b;--sea:#44b48b;--sea7:#167e6c;--sea4:#94efb7;--orange:#ec652b;--tint:#eef0f7;--code-fg:#167e6c;--shadow:0 1px 2px #111a4a0a,0 1px 1px #111a4a08;--shadow-lg:0 0 0 1px #111a4a0d,0 2px 4px #111a4a0a,0 8px 16px #111a4a0d,0 24px 48px #111a4a12,0 48px 96px #111a4a0f;--f:"Inter","Noto Sans SC",system-ui,sans-serif;--m:"JetBrains Mono",ui-monospace,Menlo,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1528;--bg2:#0b1020;--canvas:#0b1020;--fg:#e8eaf2;--head:#f2f4fb;--body:#c5c9d6;--muted:#9298ad;--faint:#666d85;--line:#222a44;--line2:#323b5c;--link:#c9d2ff;--btn:#f2f4fb;--btn-fg:#111a4a;--ok:#5fd3a5;--ok-bg:#0d2a24;--warn:#fbbf24;--warn-bg:#2e2410;--bad:#f8875a;--bad-bg:#35180f;--info:#a9b9ff;--info-bg:#18203d;--code-bg:#151c33;--chart:#44b48b;--sea:#5fd3a5;--sea7:#44b48b;--sea4:#94efb7;--orange:#ec652b;--tint:#1a2240;--code-fg:#94efb7;--shadow:0 1px 2px #0000004d;--shadow-lg:0 0 0 1px #ffffff0f,0 8px 16px #00000040,0 24px 48px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1528;--bg2:#0b1020;--canvas:#0b1020;--fg:#e8eaf2;--head:#f2f4fb;--body:#c5c9d6;--muted:#9298ad;--faint:#666d85;--line:#222a44;--line2:#323b5c;--link:#c9d2ff;--btn:#f2f4fb;--btn-fg:#111a4a;--ok:#5fd3a5;--ok-bg:#0d2a24;--warn:#fbbf24;--warn-bg:#2e2410;--bad:#f8875a;--bad-bg:#35180f;--info:#a9b9ff;--info-bg:#18203d;--code-bg:#151c33;--chart:#44b48b;--sea:#5fd3a5;--sea7:#44b48b;--sea4:#94efb7;--orange:#ec652b;--tint:#1a2240;--code-fg:#94efb7;--shadow:0 1px 2px #0000004d;--shadow-lg:0 0 0 1px #ffffff0f,0 8px 16px #00000040,0 24px 48px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);min-height:100vh;color:var(--fg);font-family:var(--f);-webkit-font-smoothing:antialiased;margin:0;padding-block:0;padding-inline:0;font-size:14px;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{letter-spacing:-.01em;margin:0;line-height:1.25}h1{font-size:26px;font-weight:600}h2{font-size:17px;font-weight:600}h3{font-size:14px;font-weight:600}.top{top:env(safe-area-inset-top,0px);z-index:5;background:var(--bg);border-bottom:1px solid var(--line);position:sticky}.top .in{align-items:center;gap:18px;max-width:1240px;height:56px;margin:0 auto;padding:0 clamp(16px,3vw,32px);display:flex}.logo{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.proto{font-family:var(--m);color:var(--muted);border:1px solid var(--line2);border-radius:4px;padding:0 5px;font-size:10.5px;font-weight:400}.nav{align-items:center;gap:4px;margin-left:auto;display:flex}.nav button{cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:6px 10px;font-size:13.5px}.nav button:hover{color:var(--fg);background:var(--bg2)}.nav button.on{color:var(--fg);font-weight:500}.btn{border:1px solid var(--line2);background:var(--bg);cursor:pointer;white-space:nowrap;border-radius:8px;padding:7px 13px;font-size:13.5px;font-weight:500}.btn:hover{background:var(--bg2)}.btn.p{background:var(--btn);border-color:var(--btn);color:var(--btn-fg)}.btn.d{color:var(--bad)}.btn.s{padding:4px 10px;font-size:12.5px}.btn.l{color:var(--link);background:0 0;border:0;padding:0;font-weight:500}.btn:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--link);outline-offset:2px}.wrap{max-width:1240px;margin:0 auto;padding:28px clamp(16px,3vw,32px) 80px}.ph{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.sub{color:var(--muted);max-width:70ch;margin-top:4px;font-size:13.5px}.card{border:1px solid var(--line);background:var(--bg);border-radius:12px;min-width:0;padding:18px 20px}.card.flat{padding:0;overflow:hidden}.grid{gap:14px;display:grid}.g2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.pill{white-space:nowrap;vertical-align:middle;border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:11.5px;font-weight:500;display:inline-flex}.p-ok{background:var(--ok-bg);color:var(--ok)}.p-warn{background:var(--warn-bg);color:var(--warn)}.p-bad{background:var(--bad-bg);color:var(--bad)}.p-neu{background:var(--code-bg);color:var(--muted)}.p-info{background:var(--info-bg);color:var(--info)}.p-line{border-color:var(--line2);color:var(--muted)}.tw{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;padding:10px 14px}th{color:var(--muted);font-size:12px;font-weight:500}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--m);font-size:12.5px}tr.click{cursor:pointer}tr.click:hover td{background:var(--bg2)}tr:last-child td{border-bottom:0}code,.mono{font-family:var(--m);font-size:12px}code{background:var(--code-bg);border-radius:4px;padding:1px 5px}pre{font-family:var(--m);background:var(--code-bg);border:1px solid var(--line);border-radius:10px;margin:0;padding:12px 14px;font-size:12.5px;line-height:1.6;overflow-x:auto}pre code{background:0 0;padding:0}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}input:not([type]),input[type=text],input[type=number],input[type=email],input[type=password],input[type=date],input[type=month],select,textarea{border:1px solid var(--line2);background:var(--bg);border-radius:8px;min-width:0;padding:7px 10px;font-size:13.5px}textarea{width:100%;min-height:72px}label.f{color:var(--muted);gap:5px;font-size:12.5px;display:grid}label.f input,label.f select,label.f textarea{color:var(--fg)}.form{gap:14px;display:grid}.form .two{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.banner{border:1px solid #0000;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:13px;display:flex}.b-warn{background:var(--warn-bg);color:var(--warn)}.b-bad{background:var(--bad-bg);color:var(--bad)}.b-info{background:var(--info-bg);color:var(--info)}.tabs{border-bottom:1px solid var(--line);gap:18px;margin-bottom:18px;display:flex;overflow-x:auto}.tabs button{cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 0;font-size:13.5px}.tabs button.on{color:var(--fg);border-bottom-color:var(--fg);font-weight:500}.keybox{background:var(--code-bg);border:1px dashed var(--line2);font-family:var(--m);word-break:break-all;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:12.5px;display:flex}.bal{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.bal .b{border:1px solid var(--line);border-radius:12px;padding:14px 16px}.bal .b.main{background:var(--bg2)}.bal .l{color:var(--muted);justify-content:space-between;align-items:center;font-size:12.5px;display:flex}.bal .v{font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:2px;font-size:26px;font-weight:600}.bal .h{color:var(--muted);margin-top:2px;font-size:12px}.chart{position:relative}.chart svg{width:100%;height:auto;display:block}.tip{pointer-events:none;background:var(--fg);color:var(--bg);white-space:nowrap;border-radius:6px;padding:4px 8px;font-size:12px;display:none;position:absolute;transform:translate(-50%,-120%)}.toast{background:var(--fg);color:var(--bg);z-index:30;border-radius:8px;padding:8px 14px;font-size:13px;display:none;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.note{color:var(--muted);font-size:12.5px}.mlist{gap:10px;display:grid}.mcard{border:1px solid var(--line);cursor:pointer;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;padding:16px 18px;display:grid}.mcard:hover{background:var(--bg2)}.mcard .n{font-size:15px;font-weight:600}.mcard .by{color:var(--muted);margin-left:8px;font-size:12.5px;font-weight:400}.mcard .d{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-column:1/-1;max-width:80ch;font-size:13px;display:-webkit-box;overflow:hidden}.mcard .meta{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;grid-column:1/-1;gap:16px;font-size:12.5px;display:flex}.mcard .meta b{color:var(--fg);font-weight:500}.mcard .r{text-align:right;color:var(--muted);white-space:nowrap;font-size:12.5px}.mcard .r b{color:var(--fg);font-size:14px;font-weight:600;display:block}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips button{border:1px solid var(--line2);background:var(--bg);cursor:pointer;color:var(--muted);border-radius:999px;padding:3px 11px;font-size:12.5px}.chips button.on{border-color:var(--fg);color:var(--fg);font-weight:500}.fbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.fbar select,.fbar input{padding:6px 10px;font-size:13px}.steps{counter-reset:s;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.steps div{border:1px solid var(--line);border-radius:12px;padding:16px 18px}.steps div:before{counter-increment:s;content:"0" counter(s);font-family:var(--m);color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.steps h3{margin-bottom:4px}.hero{text-align:center;padding:64px 0 40px}.hero h1{letter-spacing:-.03em;font-size:42px;font-weight:700;line-height:1.1}.hero p{color:var(--muted);max-width:56ch;margin:14px auto 22px;font-size:17px}.sec{margin-top:56px}.sec h2{margin-bottom:14px;font-size:20px}.foot{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:70px;padding:20px 0;font-size:12.5px;display:flex}.kpi .l{color:var(--muted);font-size:12.5px}.kpi .v{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:24px;font-weight:600}.kpi .h{color:var(--muted);font-size:12px}.lb{flex-wrap:wrap;gap:6px;display:flex}.lb span{border:1px solid var(--line);color:var(--muted);font-size:12px;font-family:var(--m);border-radius:6px;padding:1px 7px}.doc h2{border-top:1px solid var(--line);margin:28px 0 10px;padding-top:20px}.doc h2:first-child{border:0;margin-top:0;padding:0}.doc p{max-width:72ch;color:var(--muted)}.login{place-items:center;min-height:calc(100vh - 56px);padding:24px;display:grid}.login .card{gap:14px;width:min(380px,100%);display:grid}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.envbar{color:#fff;text-align:center;font:600 12px/24px var(--m);letter-spacing:.1em;background:#b45309}.flash{border-radius:10px;margin-bottom:16px;padding:10px 14px;font-size:13px}.flash.ok{background:var(--ok-bg);color:var(--ok)}.flash.err{background:var(--bad-bg);color:var(--bad)}form.inline{display:inline}details.box{border:1px solid var(--line);border-radius:12px;margin-bottom:14px;padding:12px 16px}details.box summary{cursor:pointer;font-weight:600}details.box[open] summary{margin-bottom:12px}.pager{justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.shell{grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.side{border-right:1px solid var(--line);background:var(--bg2);flex-direction:column;height:100vh;padding:16px 12px 12px;display:flex;position:sticky;top:0}.side-logo{color:var(--fg);padding:2px 8px 16px}.side-logo:hover{text-decoration:none}.side-nav{flex:1;align-content:start;gap:16px;display:grid;overflow-y:auto}.side-grp{gap:1px;display:grid}.side-t{letter-spacing:.06em;color:var(--faint);text-transform:uppercase;padding:0 10px 4px;font-size:11px}.side-nav a{color:var(--muted);border-radius:7px;padding:7px 10px;font-size:13.5px;display:block}.side-nav a:hover{color:var(--fg);background:var(--bg);text-decoration:none}.side-nav a.on{color:var(--fg);background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);font-weight:500}.prof{border-top:1px solid var(--line);padding-top:10px;position:relative}.prof summary{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:6px 8px;list-style:none;display:flex}.prof summary::-webkit-details-marker{display:none}.av{background:var(--fg);width:30px;height:30px;color:var(--bg);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:600;display:grid}.pn{min-width:0;color:var(--muted);font-size:12px;line-height:1.35;display:grid}.pn b,.pn span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pn b{color:var(--fg);font-size:13px;font-weight:500}.prof-menu{background:var(--bg);border:1px solid var(--line);border-radius:10px;gap:4px;padding:6px;display:grid;position:absolute;bottom:calc(100% + 6px);left:0;right:0;box-shadow:0 8px 24px #00000014}.pm-h{border-bottom:1px solid var(--line);color:var(--muted);word-break:break-all;padding:8px 10px;font-size:12px;display:grid}.pm-h b{color:var(--fg);font-size:13px;font-weight:500}.prof-menu button{text-align:left;cursor:pointer;width:100%;color:var(--bad);background:0 0;border:0;border-radius:6px;padding:8px 10px;font-size:13.5px}.prof-menu button:hover{background:var(--bg2)}.main{min-width:0;padding:32px clamp(16px,3.2vw,56px) 80px}.mi{min-width:0;max-width:1600px;margin:0 auto}.main .wrap{max-width:none;padding:0}@media (max-width:900px){.shell{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.side{border-right:0;border-bottom:1px solid var(--line);flex-flow:wrap;align-items:center;gap:8px;height:auto;padding:10px 16px;position:static}.side-logo{padding:0}.side-nav{flex-basis:100%;order:3;gap:2px;display:flex;overflow-x:auto}.side-grp{gap:2px;display:flex}.side-t{display:none}.side-nav a{white-space:nowrap}.prof{border:0;margin-left:auto;padding:0}.pn{display:none}.prof-menu{z-index:10;width:240px;inset:calc(100% + 6px) 0 auto auto}.main{padding:20px 16px 60px}}.bi{vertical-align:middle;border-radius:0;flex:none;display:inline-block}.bi-t{background:var(--code-bg);color:var(--muted);place-items:center;font-size:11px;font-weight:600;display:inline-grid}.cbtn{border:1px solid var(--line);background:var(--bg);cursor:pointer;width:24px;height:24px;color:var(--muted);vertical-align:middle;border-radius:6px;place-items:center;padding:0;font-size:12px;display:inline-grid}.cbtn:hover{color:var(--fg);border-color:var(--line2)}.home .hero{padding:72px 0 44px}.feats{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.feats div{border:1px solid var(--line);border-radius:12px;padding:18px 20px}.feats h3{margin-bottom:6px}.feats p{color:var(--muted);margin:0;font-size:13px}.mgrid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.mcard{grid-template-columns:minmax(0,1fr);gap:10px}.mcard .slug{align-items:center;gap:6px;min-width:0;display:flex}.mcard .slug code{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mcard .meta{gap:6px 14px}.bfilter{flex-wrap:wrap;gap:6px;display:flex}.bfilter a{border:1px solid var(--line2);color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:3px 11px 3px 6px;font-size:12.5px;display:inline-flex}.bfilter a.on{border-color:var(--fg);color:var(--fg);font-weight:500}.bfilter a:hover{color:var(--fg);text-decoration:none}.bfilter a.all{padding-left:11px}.docs{grid-template-columns:180px minmax(0,880px);justify-content:center;gap:48px;display:grid}.toc{align-self:start;gap:2px;display:grid;position:sticky;top:20px}.toc a{color:var(--muted);border-radius:6px;padding:5px 10px;font-size:13.5px}.toc a:hover{background:var(--bg2);color:var(--fg);text-decoration:none}.doc h3{margin:18px 0 6px}.doc ul{color:var(--muted);max-width:72ch;padding-left:20px}.doc li{margin:4px 0}.doc pre{margin:8px 0}.doc h2{scroll-margin-top:20px}.tot td{background:var(--bg2);font-weight:500}.urow{border-top:1px solid var(--line);grid-template-columns:130px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 0;display:grid}.urow:first-of-type{border-top:0}.urow code{white-space:nowrap;overflow-x:auto}label.row input[type=checkbox],label.row input[type=radio]{margin:0}.form label.row{flex-wrap:nowrap}@media (max-width:900px){.urow{grid-template-columns:minmax(0,1fr) auto;row-gap:2px}.urow .note{grid-column:1/-1}.urow code{white-space:normal;word-break:break-all}}.lsw{border:1px solid var(--line2);border-radius:8px;margin:0;display:inline-flex;overflow:hidden}.lsw button{cursor:pointer;color:var(--muted);background:0 0;border:0;padding:3px 10px;font-size:12.5px}.lsw button.on{background:var(--fg);color:var(--bg);font-weight:500}.top .nav{gap:8px}.grid.g3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.mgrid{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}.feats{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}.steps{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}.ph{row-gap:12px}.ph form input[type=text]{width:min(280px,100%);min-width:0}.fbar form{flex-wrap:wrap}@media (min-width:1280px){.shell{grid-template-columns:248px minmax(0,1fr)}}@media (max-width:1100px) and (min-width:901px){.shell{grid-template-columns:204px minmax(0,1fr)}.main{padding-inline:24px}}@media (max-width:900px){.docs{grid-template-columns:minmax(0,1fr);gap:16px}.toc{border-bottom:1px solid var(--line);gap:4px;padding-bottom:8px;display:flex;position:static;overflow-x:auto}.hero h1{font-size:32px}.home .hero{padding:44px 0 28px}}@media (max-width:560px){h1{font-size:22px}.ph{align-items:flex-start}.ph form,.ph form input[type=text],.fbar,.fbar form{width:100%}.fbar select,.fbar input[type=text]{flex:140px}.card{padding:14px 16px}.bal .v{font-size:22px}.kpi .v{font-size:20px}.top .in{gap:10px}.top .nav button{padding:6px}.hero h1{font-size:28px}.hero p{font-size:15px}.grid.g2,.form .two{grid-template-columns:minmax(0,1fr)}.row.kpis{gap:18px}}.doc table td{white-space:normal}.doc table td.mono{white-space:nowrap}.flow{counter-reset:f;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px;margin:0 0 22px;padding:0;list-style:none;display:grid}.flow li{border:1px solid var(--line);border-radius:10px;gap:2px;padding:10px 14px 10px 44px;font-size:13px;display:grid;position:relative}.flow li:before{counter-increment:f;content:counter(f);border:1px solid var(--line2);width:22px;height:22px;color:var(--muted);border-radius:50%;place-items:center;font-size:12px;display:grid;position:absolute;top:11px;left:12px}.flow li.done:before{content:"✓";background:var(--ok-bg);color:var(--ok);border-color:#0000}.flow li span{color:var(--muted);font-size:12.5px}.sec-t{margin:6px 0 10px;font-size:15px}.acts{flex-wrap:nowrap;gap:6px}.pm-row{color:var(--muted);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:6px 10px;font-size:13px;display:flex}.prof-menu .lsw button{width:auto;color:var(--muted);border-radius:0;padding:3px 10px}.prof-menu .lsw button.on{color:var(--bg);background:var(--fg)}.pm-link{color:var(--fg);border-radius:6px;padding:8px 10px;font-size:13.5px;display:block}.pm-link:hover{background:var(--bg2);text-decoration:none}body{background:var(--canvas);color:var(--body)}h1,h2,h3{color:var(--head)}h1{letter-spacing:-.02em;font-size:28px}h2{letter-spacing:-.01em}a{color:var(--link);font-weight:500}.logo{color:var(--head)}.logo:hover{text-decoration:none}.logo-in{align-items:center;gap:9px;display:inline-flex}.lm{border-radius:7px;flex:none;display:block}.lw{letter-spacing:-.02em;color:var(--head);font-size:16.5px;font-weight:600}.top{background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom-color:var(--line)}.top .in{height:60px}.nav a{font-weight:400}.nav button{color:var(--body)}.nav button:hover{background:var(--tint);color:var(--head)}.btn{border-color:var(--line);color:var(--head);background:var(--bg);box-shadow:var(--shadow);border-radius:8px;transition:background .15s,border-color .15s,opacity .15s}.btn:hover{background:var(--bg2);text-decoration:none}.btn.p{background:var(--btn);border-color:var(--btn);color:var(--btn-fg);box-shadow:0 1px 2px #111a4a33,inset 0 1px #ffffff14}.btn.p:hover{opacity:.92;background:var(--btn)}.btn.o{border-color:var(--head);color:var(--head);box-shadow:none;background:0 0}.btn.o:hover{background:var(--tint)}.btn.w{color:#111a4a;background:#fff;border-color:#fff}.btn.w:hover{opacity:.92;background:#fff}.btn.lg{padding:10px 18px;font-size:14.5px}.btn.l{box-shadow:none}.btn:focus-visible,input:focus-visible,select:focus-visible{outline-color:var(--sea7)}.card,.bal .b,details.box,.mcard,.steps div,.feats div,.flow li{background:var(--bg);border-color:var(--line);box-shadow:var(--shadow);border-radius:8px}.bal .b.main{background:var(--bg);border-color:color-mix(in srgb,var(--head) 22%,var(--line))}.bal .v,.kpi .v{color:var(--head)}.mcard:hover{background:var(--bg);border-color:var(--line2)}.mcard .n{color:var(--head)}.pill{border-radius:999px}code{background:var(--code-bg);color:var(--code-fg)}pre{background:var(--code-bg);border-radius:8px}pre code{color:inherit}th{color:var(--muted)}td{color:var(--body)}td.num{color:var(--fg)}input:not([type]),input[type=text],input[type=number],input[type=email],input[type=password],input[type=date],input[type=month],select,textarea{border-color:var(--line);background:var(--bg);border-radius:8px}.tabs button.on{color:var(--head);border-bottom-color:var(--head)}.chips button.on,.bfilter a.on{border-color:var(--head);color:var(--head)}.banner,.flash{border-radius:8px}.keybox{color:var(--code-fg);border-radius:8px}.side{background:var(--bg);border-right-color:var(--line)}.side-logo{padding:4px 8px 18px}.side-t{color:var(--faint);font-weight:500}.side-nav a{color:var(--body);border-radius:8px}.side-nav a:hover{background:var(--bg2);color:var(--head)}.side-nav a.on{background:var(--tint);color:var(--head);box-shadow:none;font-weight:600}.prof summary:hover,.prof[open] summary{background:var(--bg2)}.av{background:var(--head);color:var(--btn-fg)}.main{background:var(--canvas)}.prof-menu{box-shadow:var(--shadow-lg);border-radius:8px}.login .card{box-shadow:var(--shadow-lg);padding:28px}.home2{--maxw:1200px}.h2-hero{background:linear-gradient(180deg,var(--bg) 0%,var(--canvas) 100%);border-bottom:1px solid var(--line);position:relative;overflow:hidden}.h2-dots{background-image:radial-gradient(circle,color-mix(in srgb,var(--head) 22%,transparent) 1.1px,transparent 1.3px);opacity:.55;background-size:14px 14px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 70% at 72% 40%,#000 0%,#0000 75%);mask-image:radial-gradient(60% 70% at 72% 40%,#000 0%,#0000 75%)}.h2-in{max-width:var(--maxw);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:56px;margin:0 auto;padding:88px clamp(16px,3vw,32px) 56px;display:grid;position:relative}.h2-badge{border:1px solid var(--line);background:var(--bg);color:var(--body);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:8px;padding:4px 12px 4px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.h2-badge i{background:var(--orange);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb,var(--orange) 18%,transparent);border-radius:50%}.h2-badge span{color:var(--muted)}.h2-badge:hover{border-color:var(--line2);text-decoration:none}.h2-copy h1{letter-spacing:-.035em;text-wrap:balance;margin:22px 0 0;font-size:clamp(38px,5.2vw,60px);font-weight:600;line-height:1.04}.h2-copy h1 .nb{display:inline-block}.h2-copy p{color:var(--body);max-width:44ch;margin:20px 0 30px;font-size:18px;line-height:1.5}.h2-cta{gap:12px}.h2-visual{min-height:340px;position:relative}.pcard{background:var(--bg);box-shadow:var(--shadow-lg);border-radius:10px}.code-card{color:#d7dcf0;background:#0f1636;margin-right:40px;overflow:hidden}.cc-bar{border-bottom:1px solid #ffffff12;align-items:center;gap:6px;padding:10px 14px;display:flex}.cc-bar span{background:#ffffff24;border-radius:50%;width:9px;height:9px}.cc-bar em{font:400 11px/1 var(--m);color:#8a93b8;margin-left:auto;font-style:normal}pre.cc{color:#d7dcf0;white-space:pre;background:0 0;border:0;border-radius:0;padding:16px 18px 20px;font-size:12.5px;line-height:1.7;overflow-x:auto}.c-k{color:#fff;font-weight:500}.c-s{color:#94efb7}.c-p{color:#44b48b}.c-n{color:#88deeb}.rcpt{gap:7px;width:min(280px,72%);padding:16px 18px;font-size:12.5px;display:grid;position:absolute;bottom:-28px;right:0}.rc-h{align-items:center;gap:8px;display:flex}.rc-h b{color:var(--head);font-size:13.5px}.rc-h .pill{margin-left:auto}.rc-m{color:var(--sea7);border-bottom:1px solid var(--line);padding-bottom:6px;font-size:12px}.rc-row{color:var(--muted);justify-content:space-between;display:flex}.rc-row b{color:var(--fg);font-size:12px;font-weight:500}.rc-row.tot{border-top:1px dashed var(--line2);padding-top:7px}.rc-row.tot b{color:var(--sea7);font-weight:600}.h2-stats{max-width:var(--maxw);grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0 auto;padding:22px clamp(16px,3vw,32px) 26px;list-style:none;display:grid;position:relative}.h2-stats li{color:var(--body);border-left:2px solid var(--sea);padding-left:14px;font-size:13px}.h2-body{max-width:var(--maxw);margin:0 auto;padding:0 clamp(16px,3vw,32px)}.h2-sec{margin-top:72px}.h2-sh{justify-content:space-between;align-items:baseline;margin-bottom:18px;display:flex}.h2-sh h2{letter-spacing:-.02em;font-size:clamp(24px,2.6vw,32px);font-weight:600}.more{font-size:13.5px}.bcard{background:var(--bg);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;padding:24px}.feats2{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}@media (max-width:1180px){.feats2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.feats2{grid-template-columns:minmax(0,1fr)}}.feats2 .fi{color:var(--sea7);margin-bottom:14px;display:block}.feats2 h3,.steps2 h3{letter-spacing:-.01em;margin-bottom:6px;font-size:16px;font-weight:600}.feats2 p,.steps2 p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.55}.steps2{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.steps2 .sn{color:var(--sea7);border:1px solid var(--line);border-radius:6px;margin-bottom:10px;padding:1px 7px;font-size:12px;display:inline-block}.h2-band{color:#c9cfe8;background:#111a4a radial-gradient(circle,#94efb729 1px,#0000 1.2px) 0 0/14px 14px;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:72px;padding:40px clamp(24px,4vw,48px);display:flex}.h2-band h2{color:#fff;letter-spacing:-.02em;font-size:clamp(22px,2.4vw,30px);font-weight:600}.h2-band p{max-width:52ch;margin:8px 0 0;font-size:14.5px}.band-url{color:#94efb7;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:8px;padding:9px 12px;font-size:12.5px}.foot2{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:56px;padding:28px 0 40px;font-size:13px;display:flex}.foot2 a{color:var(--muted);font-weight:400}.foot2 a:hover{color:var(--head)}@media (max-width:960px){.h2-in{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:56px}.h2-visual{min-height:0;padding-bottom:28px}.code-card{margin-right:0}.rcpt{width:auto;max-width:300px;margin:-24px 16px 0 auto;position:relative;bottom:auto;right:auto}.h2-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.h2-copy p{font-size:16px}.h2-stats{grid-template-columns:minmax(0,1fr);gap:10px}.h2-sec{margin-top:52px}.h2-band{padding:28px 22px}.rcpt{margin:-20px 0 0 auto}pre.cc{font-size:11.5px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .lm{box-shadow:0 0 0 1px #ffffff2e}}:root[data-theme=dark] .lm{box-shadow:0 0 0 1px #ffffff2e}.tbtn{border:1px solid var(--line);background:var(--bg);color:var(--body);cursor:pointer;border-radius:8px;place-items:center;width:30px;height:30px;padding:0;display:inline-grid}.tbtn:hover{color:var(--head);background:var(--bg2)}.tsw button{place-items:center;padding:4px 9px;display:inline-grid}.prof-menu .tsw button{padding:4px 9px}.lsw button.on,.prof-menu .lsw button.on{background:var(--head);color:var(--btn-fg)}:root[data-theme=dark] .lsw button.on{color:#111a4a}.top .nav form.inline button:not(.tbtn){color:var(--body);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 8px;font-size:13px}
