@import "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700&display=swap";:root{color:#111827;font-synthesis:none;--blue:#1a56db;--line:#e2e5ea;--muted:#737b89;background:#e9ebef;font-family:Noto Sans SC,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}*{box-sizing:border-box}body{background:#e9ebef;min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.app-shell{justify-content:center;min-height:100vh;display:flex}.phone-frame{background:#f4f5f7;width:min(100%,430px);min-height:100vh;padding-bottom:88px;position:relative;overflow:hidden;box-shadow:0 0 36px #0f172a14}.page-header{border-bottom:1px solid var(--line);background:#fff;padding:22px 16px 16px;position:relative}.page-header h1{letter-spacing:-.5px;margin:0;font-size:25px;font-weight:700;line-height:1.35}.page-header p{color:var(--muted);margin:6px 0 0;font-size:14px}.page-header.has-back h1,.page-header.has-back p{padding-left:34px}.icon-button{color:#111827;background:0 0;border:0;place-items:center;padding:6px;display:grid}.icon-button svg{width:22px;height:22px}.icon-button.back{position:absolute;top:22px;left:8px}.content{padding:22px 16px 30px}.section-divider{color:#8a919e;align-items:center;gap:14px;margin:2px 0 14px;font-size:12px;display:flex}.section-divider:before,.section-divider:after{content:"";background:var(--line);flex:1;height:1px}.choice-list{gap:10px;display:grid}.choice-card{border:1px solid var(--line);text-align:left;color:#252b35;background:#fff;border-radius:8px;align-items:center;gap:12px;height:54px;padding:0 15px;display:flex}.choice-card.selected{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue);background:#f7faff}.radio{border:2px solid #d3d8e0;border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.selected .radio{border-color:var(--blue)}.radio span{background:var(--blue);border-radius:50%;width:10px;height:10px}.primary,.secondary,.danger-button{border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;font-weight:600;display:flex}.primary{color:#fff;background:var(--blue);box-shadow:0 8px 18px #1a56db2e}.primary:active{background:#1649bc}.primary svg,.secondary svg{width:19px}.secondary{color:#343b48;border:1px solid var(--line);background:#fff}.bottom-action{width:auto;position:absolute;bottom:112px;left:16px;right:16px}.field-error{color:#dc2626;margin:10px 0;font-size:12px}.form-success{color:#138a45;margin:10px 0;font-size:12px}.auth-frame{background:linear-gradient(#edf3ff 0,#f4f5f7 38%);padding-bottom:0}.auth-page{min-height:100vh;padding:68px 20px 30px}.auth-heading{margin-bottom:28px}.auth-heading span{color:var(--blue);font-size:14px;font-weight:600}.auth-heading h1{margin:8px 0 6px;font-size:30px}.auth-heading p{color:var(--muted);margin:0;font-size:14px}.auth-card{border:1px solid var(--line);background:#fff;border-radius:12px;gap:20px;padding:24px 20px;display:grid;box-shadow:0 14px 35px #0f172a12}.verification-field{gap:8px;display:flex}.verification-field input{flex:1;min-width:0}.verification-field button{width:108px;color:var(--blue);background:#f4f7ff;border:1px solid #b9c9eb;border-radius:7px;flex:none;font-size:13px;font-weight:600}.auth-links{justify-content:center;gap:28px;display:flex}.auth-links button{color:var(--blue);background:0 0;border:0;padding:0;font-size:13px}.test-code-tip{color:#8b929e;text-align:center;margin:-7px 0 0;font-size:12px}.bottom-nav{z-index:5;border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(3,1fr);width:min(100%,430px);height:88px;padding-bottom:12px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{color:#a0a6b0;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;display:flex}.bottom-nav svg{width:21px;height:21px}.bottom-nav button.active{color:var(--blue);font-weight:600}.upload-page{gap:20px;padding-bottom:16px;display:grid}.field{gap:8px;font-size:14px;font-weight:600;display:grid}.field em{color:#e11d48;font-style:normal}.field input,.select-field,.filters select{border:1px solid var(--line);background:#fff;border-radius:7px;outline:none;width:100%;height:48px;padding:0 13px}.field input:focus,.select-field:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1a56db14}.select-field{text-align:left;justify-content:space-between;align-items:center;display:flex}.select-field>span{align-items:center;gap:8px;display:flex}.select-field svg{color:#9aa1ad;width:18px}.select-field.placeholder{color:#a0a6b0}.hint{color:#8b929e;margin:-3px 0 0;font-size:12px;font-weight:400}.file-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.upload-card,.file-card{color:#7b8492;background:#fff;border:1px dashed #cfd5df;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:4px;height:94px;display:flex;position:relative;overflow:hidden}.upload-card svg{width:22px}.upload-card span{font-size:11px}.file-card{background:#f8faff;border-style:solid;padding:8px}.file-card>svg{color:var(--blue)}.file-card span{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:10px;font-weight:400;overflow:hidden}.file-card button{background:#fff;border:0;border-radius:50%;padding:2px;display:grid;position:absolute;top:3px;right:3px}.file-card button svg{width:13px}.file-card .file-preview{background:#eef3fb;border-radius:4px;width:100%;height:62px;padding:0;position:static;overflow:hidden}.file-preview img{object-fit:cover;width:100%;height:100%}.file-card .file-remove{z-index:1}.upload-count{color:#7d8593;align-items:center;gap:6px;font-size:12px;font-weight:400;display:flex}.upload-count svg{width:16px}.submit-tip{color:#596273;text-align:center;margin:-12px 0 0;font-size:14px;line-height:1.6}.preview-overlay{z-index:20;background:#0f172ad1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.image-preview{text-align:center;background:#fff;border-radius:10px;width:min(100%,400px);max-height:88vh;padding:42px 12px 12px;position:relative}.image-preview .icon-button{position:absolute;top:6px;right:6px}.image-preview img{object-fit:contain;max-width:100%;max-height:72vh;margin:auto;display:block}.image-preview p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:10px 0 0;font-size:12px;overflow:hidden}.overlay,.dialog-overlay{z-index:10;background:#0f172a7a;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:min(100%,430px);max-height:76vh;padding:8px 20px max(24px, env(safe-area-inset-bottom));background:#fff;border-radius:18px 18px 0 0;animation:.2s ease-out rise;overflow:auto}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}.sheet-handle{background:#d8dce3;border-radius:10px;width:40px;height:4px;margin:0 auto 16px}.sheet-title{justify-content:space-between;align-items:flex-start;display:flex}.sheet-title h2,.confirmation h2{margin:0;font-size:20px}.sheet-title p{color:var(--muted);margin:4px 0 0;font-size:12px}.crumb-back{color:var(--blue);background:0 0;border:0;align-items:center;padding:12px 0;font-size:13px;display:flex}.crumb-back svg{width:16px}.region-list{display:grid}.region-list button{background:0 0;border:0;border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;min-height:52px;display:flex}.region-list svg{color:#a8aeb8;width:18px}.confirmation{text-align:center;position:relative}.confirmation-close{position:absolute;top:14px;right:14px}.confirm-icon,.danger-icon{color:#159447;background:#e9f8ef;border-radius:50%;place-items:center;width:52px;height:52px;margin:8px auto 14px;display:grid}.confirmation>p,.dialog>p{color:var(--muted);font-size:13px;line-height:1.7}.confirmation dl{text-align:left;background:#f7f8fa;border-radius:8px;margin:20px 0;padding:6px 16px}.confirmation dl div{justify-content:space-between;padding:10px 0;font-size:13px;display:flex}.confirmation dt{color:var(--muted)}.confirmation dd{margin:0;font-weight:600}.confirmation .price{border-top:1px solid var(--line)}.confirmation .price dd{color:var(--blue);font-size:19px}.confirmation .price .vip-price{align-items:baseline;gap:8px;display:flex}.confirmation .price del{color:var(--muted);font-size:12px;font-weight:400}.confirmation .price span{color:var(--blue)}.confirmation .secondary{margin-top:9px}.confirmation dl .vip-code-row{align-items:flex-start}.vip-code-row dd{width:min(72%,240px)}.vip-code-control{gap:7px;display:flex}.vip-code-control input{border:1px solid var(--line);background:#fff;border-radius:6px;outline:none;flex:1;min-width:0;height:36px;padding:0 9px}.vip-code-control input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1a56db14}.vip-code-control button{background:var(--blue);color:#fff;border:0;border-radius:6px;flex:none;height:36px;padding:0 12px;font-weight:600}.vip-code-control button:disabled{opacity:.55}.vip-code-row small{margin-top:6px;font-size:11px;font-weight:400;line-height:1.45;display:block}.vip-code-success{color:#159447}.vip-code-error{color:#dc2626}.centered-page{gap:15px;display:grid}.status-card{text-align:center;border:1px solid var(--line);background:#fff;border-radius:9px;padding:34px 22px 24px}.status-illustration{width:76px;height:76px;color:var(--blue);background:#edf3ff;border-radius:50%;place-items:center;margin:0 auto 18px;display:grid}.status-illustration.success{color:#159447;background:#e9f8ef}.status-illustration svg{width:34px;height:34px}.status-card h2{margin:14px 0 8px;font-size:19px}.status-card p{color:var(--muted);margin:0 0 22px;font-size:13px;line-height:1.7}.status-pill{border-radius:99px;align-items:center;gap:4px;width:fit-content;padding:4px 9px;font-size:11px;font-weight:600;display:inline-flex}.status-pill svg{width:12px}.status-pill.generating{color:#1a56db;background:#eaf1ff}.status-pill.ready{color:#138a45;background:#e7f7ed}.status-pill.pending{color:#a16207;background:#fff5d8}.status-pill.failed{color:#c62626;background:#ffeaea}.status-pill.cancelled{color:#737b89;background:#eceef1}.spin{animation:1.1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.progress{background:#e8ebf0;border-radius:9px;height:5px;margin-bottom:22px;overflow:hidden}.progress span{background:var(--blue);border-radius:inherit;width:62%;height:100%;display:block}.notice{color:#315283;background:#eef3fc;border-radius:8px;gap:11px;padding:14px;display:flex}.notice svg{flex:none;width:20px}.notice p{margin:0;font-size:12px;line-height:1.6}.text-button{color:var(--blue);background:0 0;border:0;padding:10px}.download-link{text-decoration:none}.public-download-page{width:min(100%,430px)}.public-download-button{justify-content:center;width:100%;text-decoration:none;display:inline-flex}.wechat-browser-mask{z-index:100;color:#fff;background:#080f1be0;position:fixed;inset:0;overflow:hidden}.wechat-menu-target{top:max(13px, env(safe-area-inset-top));letter-spacing:2px;border:2px solid #fffffff2;border-radius:20px;place-items:center;width:54px;height:36px;font-size:24px;line-height:1;display:grid;position:absolute;right:18px;box-shadow:0 0 0 7px #ffffff1f}.wechat-guide-arrow{fill:none;stroke:#fff;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;width:130px;height:150px;position:absolute;right:28px}.wechat-mask-copy{top:max(205px, calc(env(safe-area-inset-top) + 190px));text-align:center;text-shadow:0 1px 2px #00000059;gap:10px;display:grid;position:absolute;left:28px;right:28px}.wechat-mask-copy strong{font-size:22px}.wechat-mask-copy span{font-size:17px}.wechat-mask-copy small{color:#ffffffc7;font-size:14px}.empty-state{min-height:160px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.empty-state p{margin:0;font-size:13px}.empty-state .secondary{width:auto;padding:0 18px}.empty-state>svg{width:28px;color:var(--blue)}.filters{grid-template-columns:1fr 1fr;gap:10px;display:grid}.filters.single{grid-template-columns:1fr}.filters label{color:#596273;gap:7px;font-size:15px;display:grid}.filters select{color:#303743;height:48px;padding:0 12px;font-size:16px}.history-note{color:#775b15;background:#fff7df;border-radius:8px;margin:0 0 18px;padding:13px 14px;font-size:15px;line-height:1.7}.query-loading{color:var(--muted);margin:18px 0 10px;font-size:15px}.order-list{gap:14px;margin-top:18px;display:grid}.order-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:18px}.order-card dl{margin:0}.order-card dl div{justify-content:space-between;gap:18px;padding:7px 0;font-size:16px;line-height:1.55;display:flex}.order-card dt{color:#596273;flex:none}.order-card dd{text-align:right;margin:0;font-weight:500}.card-actions{border-top:1px solid #edf0f3;justify-content:flex-end;gap:10px;margin-top:8px;padding-top:14px;display:flex}.card-actions button{border-radius:6px;align-items:center;gap:5px;min-height:40px;padding:0 13px;font-size:15px;display:flex}.card-actions svg{width:17px}.small-primary{background:var(--blue);color:#fff;border:0}.small-secondary{border:1px solid var(--line);background:#fff}.danger-link{color:#d43b3b;background:0 0;border:0}.card-actions a{border-radius:5px;align-items:center;gap:4px;height:32px;padding:0 10px;font-size:11px;text-decoration:none;display:flex}.dialog-overlay{align-items:center;padding:20px}.dialog{text-align:center;background:#fff;border-radius:12px;width:min(100%,360px);padding:24px}.danger-icon{color:#dc2626;background:#ffeded}.dialog h2{margin:0;font-size:19px}.dialog>div:last-child{grid-template-columns:1fr 1fr;gap:9px;margin-top:20px;display:grid}.danger-button{color:#fff;background:#dc2626}.native-payment-dialog{justify-items:center;gap:10px;display:grid;position:relative}.native-payment-dialog>.icon-button{position:absolute;top:8px;right:8px}.native-payment-dialog>p{margin:0}.native-payment-dialog>img{width:min(260px,80vw);height:auto}.native-payment-dialog>strong{color:var(--blue);font-size:24px}.native-payment-dialog>small{color:var(--muted)}.native-payment-dialog .qr-loading{width:42px;height:42px;color:var(--blue);margin:70px}.download-dialog{position:relative}.download-dialog-close{position:absolute;top:12px;right:12px}.download-dialog-icon{width:52px;height:52px;color:var(--blue);background:#eaf1ff;border-radius:50%;place-items:center;margin:2px auto 14px;display:grid}.download-dialog-icon svg{width:25px}.download-url-field{text-align:left;margin-top:17px}.download-url-field input{color:#4b5563;font-size:12px}.download-dialog .copy-status{color:#159447;margin:8px 0 0}.download-dialog .download-dialog-actions{grid-template-columns:1fr;margin-top:14px}.download-dialog-actions a{text-decoration:none}.download-dialog-actions svg{width:18px}.section-title{margin:0 0 12px;font-size:16px}.steps{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:26px;padding:18px}.step{grid-template-columns:30px 1fr;gap:12px;padding-bottom:20px;display:grid;position:relative}.step:last-child{padding-bottom:0}.step:not(:last-child):before{content:"";background:#cddcff;width:1px;position:absolute;top:30px;bottom:0;left:14px}.step>span{z-index:1;color:#fff;background:var(--blue);border-radius:50%;place-items:center;width:29px;height:29px;font-size:12px;font-weight:700;display:grid}.step strong{font-size:13px}.step p{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.6}.faq-list{gap:8px;margin-bottom:22px;display:grid}.faq-list article{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.faq-list button{text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;width:100%;min-height:50px;padding:0 14px;font-size:13px;font-weight:600;display:flex}.faq-list svg{color:#9ca3af;width:18px;transition:transform .2s}.faq-list svg.rotated{transform:rotate(90deg)}.faq-list article p{color:var(--muted);margin:0;padding:0 14px 14px;font-size:12px;line-height:1.7}.help-banner{color:#234eaa;background:#e9f0ff;border-radius:8px;align-items:center;gap:10px;padding:15px;display:flex}.help-banner>svg{flex:none;width:22px}.help-banner div{flex:1}.help-banner strong{font-size:13px}.help-banner p{color:#5570a8;margin:2px 0 0;font-size:10px}.help-banner a{color:var(--blue);background:#fff;border:1px solid #aabde5;border-radius:5px;padding:7px 9px;font-size:11px;text-decoration:none}.instructions-richtext{color:#343b48;background:0 0;min-height:210px;margin-bottom:22px;padding:0;font-size:14px;line-height:1.8}.instructions-richtext h1,.instructions-richtext h2,.instructions-richtext h3{color:#111827}.instructions-richtext h2{border-bottom:1px solid var(--line);margin:28px 0 14px;padding-bottom:8px;font-size:20px}.instructions-richtext h2:first-child{margin-top:0}.instructions-richtext h3{margin:20px 0 7px;font-size:16px}.instructions-richtext p{margin:0 0 14px}.instructions-richtext ul,.instructions-richtext ol{margin:0 0 18px;padding-left:23px}.instructions-richtext li{margin-bottom:7px}.instructions-richtext div{border-radius:6px}.instructions-richtext [class~=flex]{display:flex}.instructions-richtext [class~=flex-1]{flex:1}.instructions-richtext [class~=flex-col]{flex-direction:column}.instructions-richtext [class~=items-center]{align-items:center}.instructions-richtext [class~=justify-center]{justify-content:center}.instructions-richtext [class~=flex-shrink-0]{flex-shrink:0}.instructions-richtext [class~=gap-2\.5]{gap:10px}.instructions-richtext [class~=gap-4]{gap:16px}.instructions-richtext [class~=gap-5]{gap:20px}.instructions-richtext [class~=px-4]{padding-left:16px;padding-right:16px}.instructions-richtext [class~=py-4]{padding-top:16px;padding-bottom:16px}.instructions-richtext [class~=py-5]{padding-top:20px;padding-bottom:20px}.instructions-richtext [class~=w-8]{width:32px}.instructions-richtext [class~=h-8]{height:32px}.instructions-richtext [class~=rounded-lg]{border-radius:8px}.instructions-richtext [class~="rounded-[var(--radius)]"]{border-radius:12px}.instructions-richtext [class~=bg-white]{background-color:#fff}.instructions-richtext [class~=border]{border:1px solid var(--line)}.instructions-richtext [class~=overflow-hidden]{overflow:hidden}.instructions-richtext [class~=font-bold]{font-weight:700}.instructions-richtext [class~=font-semibold]{font-weight:600}.instructions-richtext [class~=uppercase]{text-transform:uppercase}.instructions-richtext [class~=tracking-widest]{letter-spacing:.12em}.instructions-richtext [class~="text-[13px]"]{font-size:13px}.instructions-richtext [class~="text-[14px]"]{font-size:14px}.instructions-richtext [class~="text-[var(--muted-foreground)]"]{color:#737b89}.instructions-richtext [class~="text-[var(--foreground)]"]{color:#111827}.instructions-richtext [class~=leading-relaxed]{line-height:1.625}.instructions-richtext [class~=mb-1]{margin-bottom:4px}.instructions-richtext [class~=mb-1\.5]{margin-bottom:6px}.instructions-richtext [class~=mb-3]{margin-bottom:12px}.instructions-richtext [class~=divide-y]>*+*{border-top:1px solid var(--line)}.instructions-richtext>[class~=flex-1]{padding:14px 0 18px}.instructions-richtext>[class~=flex-1]>div>h2[class~="text-[13px]"]{color:#737b89;border:0;margin:0 0 12px;padding:0;font-size:13px;line-height:1.4}.instructions-richtext>[class~=flex-1]>div>[class~=bg-white]{border:1px solid var(--line)}.instructions-richtext>[class~=flex-1]>div+div{margin-top:16px}.instructions-richtext [class~=divide-y]>[class~=flex]{border-radius:0;gap:12px;padding:12px}.instructions-richtext [class~=divide-y]>[class~=flex] p{margin:0}.instructions-richtext [class~=divide-y]>[class~=flex] span{color:var(--blue)!important;background:#edf3ff!important}.instructions-richtext [class~=flex-col]>[class~=bg-white]{padding:12px}.instructions-richtext [class~=flex-col]>[class~=bg-white] p{margin:0}@media (width>=600px){.phone-frame{border-radius:14px;min-height:calc(100vh - 48px);margin:24px 0}.bottom-nav{border-radius:0 0 14px 14px}.bottom-action{bottom:112px}}@media (height<=680px){.page-header{padding-top:18px;padding-bottom:14px}.icon-button.back{top:18px}.bottom-action{width:100%;margin-top:20px;position:static}}.auth-login-tabs{gap:12px;margin-bottom:20px;display:flex}.auth-login-tabs button{color:#555;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #ddd;flex:1;padding:12px 4px}.auth-login-tabs button[aria-pressed=true]{color:#b85e0f;border-color:#e98224}.wechat-login-panel{text-align:center;justify-items:center;gap:12px;margin-bottom:20px;display:grid}.wechat-login-panel img{object-fit:contain;width:240px;max-width:100%;height:240px}.wechat-login-panel small{color:#666;line-height:1.6}
