*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:#0f172a;background:#fff}a{color:#7c3aed}:focus-visible{outline:2px solid #7c3aed;outline-offset:2px}.nav{display:flex;align-items:center;gap:22px;padding:16px 36px;font-size:14.5px;max-width:1120px;margin:0 auto}.nav .lang{margin-left:auto;display:flex;align-items:center;gap:6px;color:#64748b;font-size:13.5px}.nav .lang select{padding:8px 10px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;font-size:13.5px}.nav .lang-links{margin-left:auto;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.logo{display:flex;align-items:center;gap:9px;font-weight:800;font-size:19px}.logo img{width:26px;height:26px;border-radius:7px;display:block}.logo span{background:linear-gradient(90deg,#6366f1,#a855f7,#ec4899);-webkit-background-clip:text;background-clip:text;color:transparent}.hero{background:linear-gradient(180deg,#eef2ff,#faf5ff 55%,#fff);text-align:center;padding:70px 20px 40px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:560px;height:560px;left:-160px;top:-200px;background:radial-gradient(circle,#c7d2fe88,transparent 65%)}.hero:after{content:"";position:absolute;width:560px;height:560px;right:-160px;top:-140px;background:radial-gradient(circle,#f9a8d488,transparent 65%)}.hero h1{font-size:50px;margin:0;letter-spacing:-.025em;position:relative}.hero h1 .g{background:linear-gradient(90deg,#6366f1,#a855f7,#ec4899);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{color:#64748b;font-size:17px;position:relative;max-width:640px;margin:14px auto 0}.pills{display:flex;gap:8px;justify-content:center;margin-top:16px;position:relative;flex-wrap:wrap;list-style:none;padding:0}.pills li{background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:6px 14px;font-size:13px;color:#475569;box-shadow:0 2px 8px #6366f111}.tool{max-width:780px;margin:-6px auto 0;background:#fff;border:1px solid #e7eaf3;border-radius:24px;box-shadow:0 30px 80px -20px #7c3aed33;padding:30px;position:relative}.pipeline{list-style:none;display:flex;gap:8px;padding:0;margin:0 0 16px;font-size:12px;font-weight:700;letter-spacing:.06em;color:#64748b}.pipeline li{flex:1;display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:999px;border:1px solid #eef0f6;background:#f8faff;white-space:nowrap;overflow:hidden}.pipeline .dot{width:8px;height:8px;border-radius:50%;background:#cbd5e1;flex:none}.pipeline li.active{color:#6d28d9;border-color:#c4b5fd;background:#f5f3ff}.pipeline li.active .dot{background:linear-gradient(135deg,#6366f1,#a855f7);animation:breathe 1.6s ease-in-out infinite}.pipeline li.done{color:#047857;border-color:#a7f3d0;background:#ecfdf5}.pipeline li.done .dot{background:#10b981}@keyframes breathe{50%{opacity:.35}}.drop{border-radius:16px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(120deg,#6366f1,#a855f7,#ec4899) border-box;border:2px dashed transparent;text-align:center;padding:42px 16px;cursor:pointer;transition:box-shadow .15s ease}.drop:hover,.drop.drag{box-shadow:0 12px 40px -12px #7c3aed55}.drop-big{font-size:21px;font-weight:800;margin:0}.drop-sub{color:#94a3b8;font-size:14px;margin:8px 0 0}.drop-try{font-size:13.5px;margin:10px 0 0;color:#64748b;position:relative}.drop-try a{font-weight:700}.pipe-progress{display:flex;align-items:center;gap:12px;margin:16px 0 4px}.pipe-progress .track{flex:1;height:6px;background:#eef0f6;border-radius:6px;overflow:hidden}#pipebar{height:100%;width:0%;background:linear-gradient(90deg,#6366f1,#a855f7,#ec4899);transition:width .2s ease}#piperead{font-size:12.5px;color:#64748b;font-variant-numeric:tabular-nums;white-space:nowrap}.controls{display:flex;gap:16px;flex-wrap:wrap;margin:14px 0;align-items:center;color:#475569;font-size:14px}.controls select{padding:9px 12px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#0f172a}.actions{display:flex;gap:10px;margin-top:8px;flex-wrap:wrap}.actions .p,.actions button.p{flex:1;background:linear-gradient(90deg,#6366f1,#a855f7);color:#fff;border:0;border-radius:12px;padding:15px;font-size:16px;font-weight:800;cursor:pointer;min-width:200px}.actions button.ghost{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;padding:15px 22px;font-weight:700;color:#334155;cursor:pointer}.actions button:disabled{opacity:.45;cursor:not-allowed}.actions button:not(:disabled):hover{box-shadow:0 8px 24px -8px #7c3aed66}#files{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}#files:empty{display:none}#files li{display:flex;align-items:center;gap:10px;border:1px solid #eef0f6;border-radius:12px;padding:10px 12px;font-size:14px;background:#fff;animation:rise .12s ease}@keyframes rise{0%{transform:translateY(4px);opacity:.4}}#files .lamp{width:28px;height:28px;border-radius:8px;background:#e2e8f0;flex:none;position:relative}#files li.working .lamp{background:linear-gradient(135deg,#6366f1,#a855f7);animation:breathe 1s infinite}#files li.ok .lamp{background:linear-gradient(135deg,#6366f1,#a855f7)}#files li.ok .lamp:after{content:"J";color:#fff;font-weight:800;font-size:13px;position:absolute;inset:0;display:flex;align-items:center;justify-content:center}#files li.fail .lamp{background:#fecaca}#files .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}#files .meta{color:#94a3b8;font-size:12.5px;white-space:nowrap;font-variant-numeric:tabular-nums}#files .dl{font-size:12.5px;font-weight:700;white-space:nowrap}#log{list-style:none;padding:14px 16px;margin:14px 0 0;background:#f8faff;border:1px solid #eef0f6;border-radius:12px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.9;max-height:220px;overflow:auto;color:#475569}#log:empty{display:none}#log li:before{content:"› ";color:#a78bfa}#log li.ok{color:#047857}#log li.fail{color:#dc2626}.cards{max-width:1000px;margin:44px auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:0 24px}.card{border:1px solid #eef0f6;border-radius:18px;padding:24px;background:linear-gradient(180deg,#fafaff,#fff)}.card .n{font-size:12px;font-weight:800;color:#8b5cf6;letter-spacing:.1em}.card h2{margin:8px 0 6px;font-size:20px}.card p{color:#64748b;font-size:14px;margin:0}.guide{max-width:780px;margin:20px auto;padding:0 24px;line-height:1.7}.guide h2{margin-top:32px}.steps{color:#475569;display:grid;gap:10px;padding-left:22px;margin:0}.steps strong{color:#0f172a}.faq{display:grid;gap:10px;margin-top:12px}.faq details{border:1px solid #eef0f6;border-radius:14px;padding:14px 18px;background:#fff}.faq summary{font-weight:800;color:#0f172a;cursor:pointer}.faq p{margin:8px 0 0}.guide p{color:#64748b}.guide strong{color:#0f172a}footer{text-align:center;color:#64748b;font-size:13px;margin:36px 0}footer a{color:#64748b}.foot-langs{margin-bottom:10px;font-size:13px;line-height:2}@media(max-width:640px){.hero h1{font-size:34px}.pipeline{flex-wrap:wrap}.pipeline li{flex:1 1 calc(50% - 4px)}#files,.cards{grid-template-columns:1fr}.tool{margin:0 12px;padding:20px}.actions .p{min-width:0;width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
