@font-face{font-family:ZCOOL KuaiLe;src:url(./zcool-kuaile-subset-CfWHZoeM.woff) format("woff");font-display:swap}:root{--sky: #eaf4ff;--sky-deep: #d6e8fb;--surface: #ffffff;--ink: #1d2b4f;--ink-soft: #56658a;--brand: #2f7cf6;--brand-ink: #ffffff;--sphere: #ffc53d;--coral: #e5484d;--amber-bg: #fff4d6;--line: #c3d8f0;--focus: #9b51e0;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--sky: #0e1a33;--sky-deep: #18294d;--surface: #13223f;--ink: #e6eeff;--ink-soft: #9fb0d6;--brand: #5b9dff;--brand-ink: #0a1630;--sphere: #ffd166;--coral: #ff7a7f;--amber-bg: #3a3016;--line: #2a3d66;--focus: #c49bff;color-scheme:dark}}:root[data-theme=dark]{--sky: #0e1a33;--sky-deep: #18294d;--surface: #13223f;--ink: #e6eeff;--ink-soft: #9fb0d6;--brand: #5b9dff;--brand-ink: #0a1630;--sphere: #ffd166;--coral: #ff7a7f;--amber-bg: #3a3016;--line: #2a3d66;--focus: #c49bff;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--sky);color:var(--ink);font-family:system-ui,-apple-system,PingFang SC,Microsoft YaHei,Hiragino Sans GB,Noto Sans CJK SC,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:var(--brand)}code,kbd,.uid{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.86em}code{background:var(--sky-deep);padding:.05em .35em;border-radius:4px;overflow-wrap:anywhere}kbd{border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;padding:0 .35em;background:var(--surface)}.uid{overflow-wrap:anywhere;color:var(--ink-soft)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.page{max-width:760px;margin:0 auto;padding:0 16px 64px}.hero{padding:48px 0 32px}.hero-route{width:220px;height:auto;display:block;margin-bottom:8px}.hero-route path{fill:none;stroke:var(--brand);stroke-width:3;stroke-dasharray:2 9;stroke-linecap:round}.node-island{fill:var(--sphere)}.node-server{fill:var(--ink)}h1{font-family:ZCOOL KuaiLe,PingFang SC,Microsoft YaHei,sans-serif;font-weight:400;font-size:clamp(2.4rem,7vw,3.6rem);line-height:1.1;margin:0 0 16px;letter-spacing:.02em}.lede{font-size:1.125rem;max-width:34em;margin:0 0 8px}.privacy{color:var(--ink-soft);margin:0 0 28px}.direction{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dir{text-align:left;font:inherit;color:inherit;background:var(--surface);border:2px solid var(--line);border-radius:14px;padding:14px 16px;cursor:pointer;display:grid;gap:2px}.dir strong{font-size:1.05rem}.dir span{color:var(--ink-soft);font-size:.9rem}.dir.on{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.trail{position:relative;padding-left:52px}.trail:before{content:"";position:absolute;left:17px;top:20px;bottom:120px;border-left:3px dotted var(--line)}.step{position:relative;padding:8px 0 36px}.marker{position:absolute;left:-52px;top:6px;width:37px;height:37px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:var(--surface);border:3px solid var(--line);color:var(--ink-soft)}.step.active .marker{background:var(--sphere);border-color:var(--sphere);color:#3b2a00}.step.done .marker{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.step.idle{opacity:.55}h2{font-size:1.35rem;line-height:1.35;margin:0 0 6px}h3{font-size:1.1rem;margin:28px 0 6px}.hint{margin:0 0 12px;color:var(--ink-soft)}.caution{margin:0 0 16px;padding:10px 14px;border-radius:10px;background:var(--amber-bg)}.sub{margin:16px 0 8px;font-weight:500}.fine{font-size:.875rem;color:var(--ink-soft);margin:8px 0 0}.drop{border:2px dashed var(--line);border-radius:16px;padding:28px 16px;text-align:center;background:var(--surface);transition:border-color .15s,background .15s}.drop.over{border-color:var(--brand);background:var(--sky-deep)}.drop p{margin:0 0 14px;font-weight:500}.drop-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.where{margin-top:12px}.where summary,.faq summary{cursor:pointer;font-weight:500}.where ul{padding-left:1.2em;margin:8px 0 0}.where li{margin-bottom:6px}.worlds ul,.players,.friends{list-style:none;padding:0;margin:0;display:grid;gap:8px}.world,.player{width:100%;text-align:left;font:inherit;color:inherit;background:var(--surface);border:2px solid var(--line);border-radius:12px;padding:10px 14px;cursor:pointer;display:grid;gap:2px}.world span,.player span{font-size:.875rem;color:var(--ink-soft)}.world.on,.player.on{border-color:var(--brand)}.tag{font-style:normal;font-size:.75rem;font-weight:500;margin-left:8px;padding:1px 8px;border-radius:999px;background:var(--sky-deep);vertical-align:2px}.tag.warn{background:var(--amber-bg)}.missing{margin-top:12px}.missing p{margin:0 0 8px}.tabs{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}.tab{font:inherit;color:var(--ink-soft);background:none;border:0;border-bottom:3px solid transparent;padding:4px 6px;cursor:pointer}.tab.on{color:var(--ink);border-bottom-color:var(--brand);font-weight:500}.field{display:grid;gap:8px;justify-items:start}.field label{font-weight:500}.field input:not([type=checkbox]),.remap input{width:100%;font:inherit;color:inherit;padding:10px 12px;border-radius:10px;border:2px solid var(--line);background:var(--surface)}.field input:focus-visible,.remap input:focus-visible{outline-offset:0}.field .check{font-weight:400;display:flex;gap:8px;align-items:center}.howto{margin:0 0 8px;padding-left:1.3em}.howto li{margin-bottom:4px}.btn{font:inherit;font-weight:500;cursor:pointer;border-radius:10px;padding:8px 16px;border:2px solid var(--ink);background:var(--ink);color:var(--sky)}.btn.ghost{background:transparent;color:var(--ink)}.btn.small{padding:4px 12px;font-size:.9rem}.btn.primary{width:100%;padding:14px 20px;font-size:1.1rem;border-color:var(--brand);background:var(--brand);color:var(--brand-ink);border-radius:14px}.btn:disabled{opacity:.45;cursor:not-allowed}.status{margin:10px 0 0;padding:8px 12px;border-radius:10px;border-left:4px solid var(--line);background:var(--surface)}.status.ok{border-left-color:var(--brand)}.status.err{border-left-color:var(--coral)}.status.warn{border-left-color:var(--sphere);background:var(--amber-bg)}.convert{position:relative;padding:0 0 8px}.result{margin-top:28px;padding:20px;border-radius:16px;background:var(--surface);border:2px solid var(--brand)}.result>p{margin:0 0 8px}.downloads{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.downloads .btn{overflow-wrap:anywhere;text-align:left}.friend{border-top:1px solid var(--line);padding:10px 0}.friend-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.friend-head>div:first-child{display:grid;min-width:0}.friend-head .uid{font-size:.8rem}.friend-actions{display:flex;gap:6px;flex-wrap:wrap}.remap{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:8px}.remap .status{grid-column:1 / -1}.zip{margin-top:20px}.ad{position:relative;display:grid;grid-template-columns:112px 1fr auto;align-items:center;gap:20px;margin:0 0 44px;padding:24px 24px 24px 20px;border-radius:20px;background:radial-gradient(circle at 92% -20%,rgba(255,216,77,.45),transparent 55%),linear-gradient(135deg,#2f7cf6,#5a4ff0);color:#fff;border:3px solid var(--sphere);box-shadow:0 6px #1b3a8a;overflow:hidden}.ad-flag{position:absolute;top:10px;right:14px;font-size:.72rem;padding:0 8px;border-radius:999px;background:#fff3;color:#e8efff}.ad-art{width:112px;height:112px}.ad-rack{fill:#1d3c9c;stroke:#a9cbff;stroke-width:2}.ad-led{fill:#7dffb0;animation:ad-blink 2.4s ease-in-out infinite}.ad-led:nth-of-type(2){animation-delay:.8s}.ad-led:nth-of-type(3){animation-delay:1.6s}.ad-slot{stroke:#6f9cf0;stroke-width:4;stroke-linecap:round}.ad-ball circle:first-child{fill:#ffc53d;stroke:#1d2b4f;stroke-width:3}.ad-ball path{stroke:#1d2b4f;stroke-width:3}.ad-ball circle:last-child{fill:#fff;stroke:#1d2b4f;stroke-width:3}@keyframes ad-blink{0%,to{opacity:1}50%{opacity:.25}}.ad-body{min-width:0}.ad-title{font-family:ZCOOL KuaiLe,PingFang SC,Microsoft YaHei,sans-serif;font-size:clamp(1.6rem,4.6vw,2.1rem);line-height:1.15;margin:0 0 6px;color:#ffd84d}.ad-text{margin:0;color:#eef3ff;max-width:30em}.ad-points{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:12px 0 0}.ad-points li{font-size:.85rem;font-weight:500;padding:2px 10px;border-radius:999px;background:#ffffff29;border:1px solid rgba(255,255,255,.45);color:#fff}.ad-price{margin:10px 0 0;color:#fff;font-weight:500}.ad-price strong{font-size:1.9em;line-height:1;color:#ffd84d;margin:0 2px;vertical-align:-.08em}.ad-cta{display:inline-block;font:inherit;border:0;cursor:pointer;white-space:nowrap;text-decoration:none;font-weight:700;font-size:1.1rem;padding:14px 22px;border-radius:14px;background:#ff5000;color:#fff;box-shadow:0 4px #b33800;transition:transform .12s,box-shadow .12s}.ad-cta:hover{transform:translateY(-2px);box-shadow:0 6px #b33800}.ad-cta:active{transform:translateY(2px);box-shadow:0 1px #b33800}.ad.compact{grid-template-columns:64px 1fr auto;gap:14px;margin:20px 0 4px;padding:16px;border-width:2px;box-shadow:0 4px #1b3a8a}.ad.compact .ad-art{width:64px;height:64px}.ad.compact .ad-title{font-size:1.35rem}.ad.compact .ad-text{font-size:.92rem}.ad.compact .ad-cta{font-size:1rem;padding:10px 16px}.order{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:3px solid var(--sphere);border-radius:20px;background:var(--surface);color:var(--ink);text-align:left;box-shadow:0 8px #1b3a8a}.order::backdrop{background:#0e1a3399}.order[open]{animation:order-in .18s ease-out}@keyframes order-in{0%{opacity:0;transform:translateY(12px) scale(.98)}}.order-inner{position:relative;padding:28px 24px 24px}.order-x{position:absolute;top:10px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:var(--sky-deep);color:var(--ink);font-size:1.4rem;line-height:1;cursor:pointer}.order h2{font-family:ZCOOL KuaiLe,PingFang SC,Microsoft YaHei,sans-serif;font-weight:400;font-size:1.7rem;margin:0 40px 4px 0}.order-price{margin:0 0 20px;color:var(--ink-soft)}.order-price strong{font-size:1.6em;color:#ff5000;vertical-align:-.06em}.order-ways{display:grid;grid-template-columns:1fr 1fr;gap:14px}.order-way{display:grid;align-content:start;justify-items:center;text-align:center;gap:10px;padding:18px 14px;border-radius:14px;border:2px solid var(--line);background:var(--sky)}.order-way h3{margin:0}.order-way p{margin:0;font-size:.9rem;color:var(--ink-soft)}.order-qr{width:168px;height:168px;padding:6px;border-radius:10px;background:#fff}.order-qr svg{display:block;width:100%;height:100%}.faq{margin-top:56px}.faq details{border-top:1px solid var(--line);padding:12px 0}.faq details p{margin:8px 0 0;color:var(--ink-soft);max-width:40em}.foot{margin-top:40px;font-size:.875rem;color:var(--ink-soft)}@media (max-width: 560px){.direction{grid-template-columns:1fr}.trail{padding-left:44px}.trail:before{left:14px}.marker{left:-44px;width:31px;height:31px}.remap{grid-template-columns:1fr}.ad,.ad.compact{grid-template-columns:1fr;text-align:left;padding:20px 16px}.ad-art{width:80px;height:80px}.ad.compact .ad-art{display:none}.ad-cta{text-align:center}.order-ways{grid-template-columns:1fr}.order-inner{padding:24px 16px 18px}}@media (prefers-reduced-motion: reduce){.ad-led,.order[open]{animation:none}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}
