html:has(.landing){scroll-padding-top:calc(env(safe-area-inset-top,0px) + 76px);scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html:has(.landing){scroll-behavior:auto}}.landing{--bg:#f6f7f6;--panel:#fff;--ink:#0c0f0d;--mute:#202923;--line:#dfe3e0;--green:#2fd272;--green-ink:#0b7a3a;--on-green:#04140b;--tint:#2fd2721f;--no:#c0364b;--warn:#8a5f00;--sans:var(--font-geist-sans), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:var(--font-mono), ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--t-xs:13px;--t-sm:15px;--t-md:17px;--t-lg:20px;--t-xl:clamp(28px, 3.6vw, 42px);--t-2xl:clamp(36px, 5vw, 56px);--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s5:48px;--s6:64px;--sec:clamp(64px, 9vw, 104px);--r-s:8px;--r-m:12px;--r-l:18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:var(--t-md);-webkit-font-smoothing:antialiased;min-height:100vh;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);line-height:1.6}html.dark .landing{--bg:#0a0c0b;--panel:#111412;--ink:#e9eeea;--mute:#8f9b94;--line:#222825;--green-ink:#3ddc84;--tint:#2fd2721a;--no:#ef6b7e;--warn:#e0b341;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.landing *,.landing :before,.landing :after{box-sizing:border-box}.landing a{color:inherit}.landing :focus-visible{outline:2px solid var(--green-ink);outline-offset:3px;border-radius:4px}.landing .wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 28px}.landing code,.landing pre{font-family:var(--mono)}.landing code.i{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:2px 6px;font-size:.85em}.landing .band code.i{background:var(--bg)}.landing h1,.landing h2,.landing h3{text-wrap:balance;margin:0;font-weight:600}.landing p{text-wrap:pretty}.landing h1{font-size:var(--t-2xl);letter-spacing:-.04em;line-height:1.05}.landing h2{font-size:var(--t-xl);letter-spacing:-.03em;line-height:1.12}.landing h3{font-size:var(--t-md);letter-spacing:-.01em;line-height:1.35}.landing .sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.landing .sec{padding:var(--sec) 0}.landing .band{background:var(--panel);border-block:1px solid var(--line)}.landing .head{max-width:36em;margin-bottom:var(--s5)}.landing .head p{margin:var(--s2) 0 0;color:var(--mute)}.landing .btn{border-radius:var(--r-s);font:500 var(--t-sm) / 1.2 var(--sans);border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;justify-content:center;align-items:center;padding:11px 18px;text-decoration:none;transition:border-color .15s,background-color .15s;display:inline-flex}.landing .btn:hover{border-color:var(--mute)}.landing .btn.primary{background:var(--green);border-color:var(--green);color:var(--on-green)}.landing .btn.primary:hover{background:#43dc83;border-color:#43dc83}.landing .btn.sm{padding:8px 14px}.landing .band .btn{background:var(--bg)}.landing .actions{gap:var(--s1);flex-wrap:wrap;display:flex}.landing .icon-btn{border-radius:var(--r-s);width:38px;height:38px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;display:inline-grid}.landing .icon-btn:hover{border-color:var(--line);background:var(--panel)}.landing .icon-btn svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.landing .i-sun{display:none}html.dark .landing .i-sun{display:block}html.dark .landing .i-moon{display:none}.landing .top{top:env(safe-area-inset-top,0px);z-index:10;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky}.landing .bar{align-items:center;gap:var(--s3);height:64px;display:flex}.landing .logo{font-family:var(--mono);font-weight:600;font-size:var(--t-lg);letter-spacing:-.02em;align-items:center;gap:7px;text-decoration:none;display:inline-flex}.landing .logo .p{color:var(--green-ink)}.landing .logo .blk{background:var(--green);width:.55em;height:1.05em;margin-left:2px;display:inline-block}.landing .links{gap:var(--s3);font-size:var(--t-sm);margin-left:auto;display:flex}.landing .links a{color:var(--mute);text-decoration:none}.landing .links a:hover{color:var(--ink)}.landing .links .only-m{display:none}.landing .nav-right{align-items:center;gap:var(--s1);display:flex}.landing .login{font-size:var(--t-sm);padding:0 var(--s1);font-weight:500;text-decoration:none}.landing .menu-btn{display:none}.landing .hero{padding:clamp(40px, 6vw, 72px) 0 var(--sec)}.landing .hero-grid{gap:var(--s6);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;display:grid}.landing .lead{font-size:var(--t-lg);color:var(--mute);margin:var(--s3) 0 var(--s4);max-width:30em;line-height:1.5}.landing .cmd{align-items:center;gap:var(--s2);color:#ccc;border-radius:var(--r-m);padding:10px 10px 10px var(--s3);font-family:var(--mono);background:#0c0c0c;display:flex}.landing .cmd .tg{flex:none}.landing .cmd code{white-space:nowrap;-webkit-user-select:all;user-select:all;scrollbar-width:none;flex:1;min-width:0;font-size:clamp(14px,1.4vw,16px);overflow-x:auto}.landing .cmd code::-webkit-scrollbar{display:none}.landing .copy{border-radius:var(--r-s);background:var(--green);min-width:84px;color:var(--on-green);font:600 var(--t-sm) / 1 var(--sans);cursor:pointer;border:0;flex:none;padding:10px 16px;transition:background-color .15s}.landing .copy:hover{background:#43dc83}.landing .hero-meta{margin:var(--s2) 0 var(--s3);color:var(--mute);font-size:var(--t-sm)}.landing .hero .actions{margin-top:var(--s3);align-items:center;gap:12px}.landing .hero .actions .btn{border-radius:10px;min-height:46px;padding:12px 20px;font-weight:600;transition:transform .15s,box-shadow .15s,background-color .15s,border-color .15s}.landing .hero .actions .btn:hover{transform:translateY(-1px)}.landing .hero .actions .hero-primary{gap:10px;box-shadow:0 6px 18px #2fd2722e}.landing .hero .actions .hero-primary span{font-size:18px;line-height:.8;transition:transform .15s}.landing .hero .actions .hero-primary:hover span{transform:translate(2px)}.landing .hero .actions .hero-secondary{background:0 0}.landing .hero .actions .hero-secondary:hover{border-color:var(--green-ink);background:var(--tint)}.landing .tg{color:#16c60c}.landing .ty{color:#f9f1a5}.landing .tr{color:#e74856}.landing .tc{color:#61d6d6}.landing .td{color:#8c8c8c}.landing .tx{color:#f2f2f2}.landing .tl{color:#5b8dff;text-decoration:underline}.landing .flow{grid-template-columns:1fr 112px 1fr 112px 1fr;align-items:stretch;display:grid}.landing .node{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-m);padding:var(--s3)}.landing .node h3{margin-bottom:var(--s1);align-items:center;gap:10px;display:flex}.landing .num{border:1px solid var(--ink);width:24px;height:24px;font:500 var(--t-xs) / 1 var(--mono);border-radius:50%;flex:none;place-items:center;display:inline-grid}.landing .node code{font-size:var(--t-xs);color:var(--green-ink);margin:0 0 var(--s1);word-break:break-all;display:block}.landing .node p{color:var(--mute);font-size:var(--t-sm);margin:0}.landing .link{align-content:center;justify-items:center;gap:var(--s1);display:grid}.landing .link .lab{font:var(--t-xs) / 1 var(--mono);color:var(--mute)}.landing .ln{background:color-mix(in srgb, var(--mute) 40%, transparent);width:100%;height:2px;position:relative}.landing .dot{background:var(--green);border-radius:50%;width:10px;height:10px;margin-top:-5px;display:none;position:absolute;top:50%;left:calc(100% - 10px)}.landing .flow.in .dot{animation:1.6s ease-in-out infinite alternate landing-flowx;display:block}.landing .flow.in .link.b .dot{animation-delay:1.6s}@keyframes landing-flowx{0%{left:calc(100% - 10px)}to{left:0}}@keyframes landing-flowy{0%{top:calc(100% - 10px)}to{top:0}}.landing .zero-grid{gap:var(--s6);grid-template-columns:1fr 1.2fr;align-items:start;display:grid}.landing .zero-grid .head{margin:0}.landing .lists{gap:var(--s4);grid-template-columns:1fr 1fr;display:grid}.landing .lists h3{margin-bottom:var(--s1);font-size:var(--t-sm);color:var(--mute);font-weight:500}.landing .lists ul{margin:0;padding:0;list-style:none}.landing .lists li{border-top:1px solid var(--line);font-size:var(--t-sm);gap:12px;padding:11px 0;display:flex}.landing .lists li:before{width:16px;font-family:var(--mono);flex:none;font-weight:600}.landing .no li{color:var(--mute)}.landing .no li:before{content:"×";color:var(--no)}.landing .yes li:before{content:"✓";color:var(--green-ink)}.landing .bento{gap:var(--s2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.landing .tile{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-m);padding:var(--s3)}.landing .tile h3{margin-bottom:6px}.landing .tile p{color:var(--mute);font-size:var(--t-sm);margin:0}.landing .tile.big{justify-content:space-between;gap:var(--s4);padding:var(--s4);flex-direction:column;grid-area:span 2/span 2;display:flex}.landing .tile.big h3{font-size:var(--t-lg)}.landing .snip{color:#ccc;border-radius:var(--r-s);padding:var(--s2) var(--s3);font-size:var(--t-xs);background:#0c0c0c;line-height:1.8;overflow-x:auto}.landing .snip p{color:inherit;font-size:inherit;white-space:nowrap;margin:0}.landing .insp{margin:0 0 var(--s5);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden}.landing .insp-bar{align-items:center;gap:var(--s2);padding:10px var(--s2);border-bottom:1px solid var(--line);font:var(--t-xs) / 1 var(--mono);color:var(--mute);display:flex}.landing .dots{gap:6px;display:flex}.landing .dots i{background:var(--line);border-radius:50%;width:10px;height:10px}.landing .insp-body{grid-template-columns:minmax(260px,.85fr) 1.4fr;display:grid}.landing .reqs{padding:var(--s1);border-right:1px solid var(--line);font:var(--t-xs) / 1.4 var(--mono);margin:0;list-style:none}.landing .reqs li{border-radius:6px;grid-template-columns:5ch minmax(0,1fr) 3.5ch 6ch;align-items:baseline;gap:1ch;padding:8px 10px;display:grid}.landing .reqs li.sel{background:var(--tint)}.landing .reqs b{font-weight:600}.landing .reqs span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.landing .reqs em{color:var(--green-ink);font-style:normal}.landing .reqs em.w{color:var(--warn)}.landing .reqs small{color:var(--mute);text-align:right;font-size:inherit}.landing .detail{padding:var(--s3);min-width:0}.landing .dh{font:var(--t-sm) / 1.4 var(--mono);flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.landing .dh em{color:var(--green-ink);font-style:normal}.landing .dh small{color:var(--mute);font-size:var(--t-xs)}.landing .tabs{gap:var(--s3);margin:var(--s2) 0;border-bottom:1px solid var(--line);font-size:var(--t-sm);color:var(--mute);display:flex}.landing .tabs span{border-bottom:2px solid #0000;margin-bottom:-1px;padding-bottom:8px}.landing .tabs .on{color:var(--ink);border-color:var(--green)}.landing .hdrs{gap:6px var(--s2);margin:0 0 var(--s2);font:var(--t-xs) / 1.5 var(--mono);grid-template-columns:max-content 1fr;display:grid}.landing .hdrs dt{color:var(--mute)}.landing .hdrs dd{word-break:break-all;margin:0}.landing .detail pre{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-s);padding:12px var(--s2);font-size:var(--t-xs);margin:0;line-height:1.6;overflow-x:auto}.landing .insp-cap{padding:12px var(--s2);border-top:1px solid var(--line);color:var(--mute);font-size:var(--t-sm)}.landing .group+.group{margin-top:var(--s5)}.landing .glabel{font-size:var(--t-sm);color:var(--green-ink);margin:0 0 var(--s2);font-weight:600}.landing .cols4{gap:0 var(--s4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.landing .item{border-top:1px solid var(--line);padding:22px 0 var(--s4)}.landing .item h3{margin-bottom:6px}.landing .item p{color:var(--mute);font-size:var(--t-sm);margin:0}.landing .soon{margin:var(--s5) 0 0;color:var(--mute);font-size:var(--t-sm)}.landing .soon b{color:var(--ink);font-weight:600}.landing .tw{border:1px solid var(--line);border-radius:var(--r-m);background:var(--bg);overflow-x:auto}.landing table{border-collapse:collapse;width:100%;min-width:760px;font-size:var(--t-sm)}.landing th,.landing td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:14px 20px}.landing tr:last-child td{border-bottom:0}.landing thead th{font-size:var(--t-xs);color:var(--mute);font-weight:500}.landing thead th.me{color:var(--ink);font-weight:600}.landing .me{background:var(--tint)}.landing td.me{font-weight:500}.landing td small{color:var(--mute);font-size:var(--t-xs);margin-top:2px;font-weight:400;display:block}.landing .v{align-items:baseline;gap:8px;display:inline-flex}.landing .v.y:before{content:"✓";color:var(--green-ink);font-weight:600}.landing .v.n{color:var(--mute)}.landing .v.n:before{content:"×";color:var(--no);font-weight:600}.landing .v.t{color:var(--mute)}.landing td.me .v.t{color:var(--ink)}.landing .fn{margin:var(--s2) 0 0;color:var(--mute);font-size:var(--t-xs);max-width:60em}.landing .plans{gap:var(--s3);grid-template-columns:1fr 1fr;display:grid}.landing .plan{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:var(--s4);flex-direction:column;display:flex}.landing .plan.hl{border:2px solid var(--green)}.landing .plan .tag{color:var(--mute);font-size:var(--t-sm);margin:2px 0 0}.landing .plan .amt{font-size:var(--t-2xl);letter-spacing:-.05em;margin:var(--s3) 0 var(--s1);font-weight:600;line-height:1}.landing .plan .amt span{font-size:var(--t-sm);letter-spacing:0;color:var(--mute);font-weight:400}.landing .plan>p{color:var(--mute);font-size:var(--t-sm);margin:0}.landing .plan ul{margin:22px 0 var(--s3);flex:1;padding:0;list-style:none}.landing .plan li{border-top:1px solid var(--line);font-size:var(--t-sm);padding:11px 0}.landing .plan .btn{align-self:flex-start}.landing .faq-grid{gap:var(--s6);grid-template-columns:1fr 1.8fr;align-items:start;display:grid}.landing .faq-grid h2{top:calc(env(safe-area-inset-top,0px) + 100px);position:sticky}.landing details{border-top:1px solid var(--line);padding:20px 0}.landing details:last-child{border-bottom:1px solid var(--line)}.landing summary{cursor:pointer;font-weight:500;font-size:var(--t-md);justify-content:space-between;gap:var(--s2);list-style:none;display:flex}.landing summary::-webkit-details-marker{display:none}.landing summary:after{content:"+";font:var(--t-lg) / 1.3 var(--mono);color:var(--mute)}.landing details[open] summary:after{content:"−"}.landing details p{color:var(--mute);max-width:40em;font-size:var(--t-sm);margin:12px 0 0}.landing details::details-content{block-size:0;transition:block-size .25s ease, content-visibility .25s allow-discrete;overflow:hidden}.landing details[open]::details-content{block-size:auto}.landing .box{color:#f2f2f2;border-radius:var(--r-l);padding:var(--s6);gap:var(--s5);background:#0c0c0c;grid-template-columns:1.1fr 1fr;align-items:center;display:grid}.landing .box>*{min-width:0}.landing .box h2{margin-bottom:var(--s1)}.landing .box p{color:#9a9a9a;margin:0}.landing .box .cmd{margin-bottom:var(--s2);background:#161616;border:1px solid #2a2a2a}.landing .box .btn{color:#f2f2f2;background:0 0;border-color:#3a3a3a}.landing .box .btn:hover{border-color:#8a8a8a}.landing footer{border-top:1px solid var(--line);padding:var(--s5) 0 var(--s6);color:var(--mute);font-size:var(--t-sm)}.landing .foot{gap:var(--s5);grid-template-columns:1.6fr 1fr 1fr;display:grid}.landing footer h4{font-size:var(--t-sm);color:var(--ink);margin:0 0 12px;font-weight:600}.landing footer ul{gap:var(--s1);margin:0;padding:0;list-style:none;display:grid}.landing footer a{text-decoration:none}.landing footer a:hover{color:var(--ink)}.landing footer p{max-width:22em;margin:10px 0 0}.landing .legal{margin-top:var(--s5);padding-top:var(--s3);border-top:1px solid var(--line);font-size:var(--t-xs)}@media (max-width:1100px){.landing .cols4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:960px){.landing .hero-grid,.landing .zero-grid,.landing .faq-grid,.landing .plans,.landing .box,.landing .foot,.landing .lists{grid-template-columns:1fr}.landing .hero-grid{gap:var(--s5)}.landing .zero-grid,.landing .faq-grid{gap:var(--s4)}.landing .faq-grid h2{position:static}.landing .box{padding:var(--s4) var(--s3)}.landing .bento{grid-template-columns:repeat(2,minmax(0,1fr))}.landing .tile.big{grid-area:auto/span 2}.landing .menu-btn{display:inline-grid}.landing .links{max-height:calc(100dvh - 64px - env(safe-area-inset-top,0px));overscroll-behavior:contain;background:var(--bg);border-bottom:1px solid var(--line);padding:var(--s1) 28px var(--s2);flex-direction:column;gap:0;margin:0;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.landing .top.open .links{display:flex}.landing .links a{font-size:var(--t-md);border-top:1px solid var(--line);padding:12px 0}.landing .links a:first-child{border-top:0}.landing .nav-right{margin-left:auto}.landing .flow{grid-template-columns:1fr}.landing .link{justify-content:center;align-items:center;gap:var(--s2);grid-auto-flow:column;height:76px}.landing .ln{width:2px;height:48px}.landing .dot{margin:0 0 0 -5px;top:calc(100% - 10px);left:50%}.landing .flow.in .dot{animation-name:landing-flowy}.landing .insp-body{grid-template-columns:1fr}.landing .reqs{border-right:0;border-bottom:1px solid var(--line)}}@media (max-width:640px){.landing .wrap{padding:0 var(--s2)}.landing .links{padding-inline:var(--s2)}.landing .bento,.landing .cols4{grid-template-columns:1fr}.landing .tile.big{grid-column:auto}.landing .login,.landing .nav-right .btn{display:none}.landing .links .only-m{display:block}.landing .cmd{gap:8px;padding:8px 8px 8px 12px}.landing .hero{padding-top:36px;padding-bottom:var(--s5)}.landing .hero-grid{gap:var(--s4)}.landing .hero h1{letter-spacing:-.045em;max-width:13ch;font-size:clamp(34px,9vw,44px);line-height:1.06}.landing .hero .lead{margin:var(--s2) 0 var(--s3);font-size:16px;line-height:1.55}.landing .hero .cmd{gap:7px;padding:8px}.landing .hero .cmd code{font-size:11px}.landing .hero .copy{padding:9px 10px;font-size:12px}.landing .hero-meta{margin:10px 0 18px;font-size:12px;line-height:1.5}.landing .hero .actions{gap:9px}.landing .hero .actions .btn{min-height:44px;padding:11px 14px;font-size:13px}.landing .copy{min-width:0;padding:9px 10px}.landing .box{padding:var(--s3) var(--s2)}.landing .box .cmd{gap:8px;width:100%;min-width:0;padding:8px}.landing .box .cmd code{font-size:11px}.landing .box .copy{min-width:0;padding:9px 8px;font-size:12px}.landing .box .actions{flex-wrap:wrap}.landing footer .legal{overflow-wrap:anywhere}.landing .hero-grid>*{min-width:0}.landing .tw{-webkit-overflow-scrolling:touch;max-width:100%}.tunl-terminal .term{min-height:0;padding:12px;font-size:11px;overflow-x:hidden}.tunl-terminal .term p,.tunl-terminal .kv dd{white-space:normal;overflow-wrap:anywhere}.tunl-terminal .kv{grid-template-columns:8ch minmax(0,1fr)}.tunl-terminal .lgs{min-width:0}.tunl-terminal .lg{grid-template-columns:4ch minmax(0,1fr) 8ch 4ch;column-gap:.6ch;font-size:10px}.tunl-terminal .lg>:first-child{display:none}.tunl-terminal .lg .p{min-width:0}.landing .foot{gap:var(--s3)}}@media (prefers-reduced-motion:reduce){.landing *,.landing :before,.landing :after{transition:none!important;animation:none!important}}
