*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background:#f0f2f5;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.container{max-width:640px;margin:0 auto;padding:24px 16px}.header{text-align:center;margin-bottom:24px}.header h1{color:#1a1a2e;margin-bottom:4px;font-size:28px;font-weight:700}.subtitle{color:#888;font-size:14px}.tabs{background:#fff;border:1px solid #e5e5e5;border-bottom:none;border-radius:12px 12px 0 0;gap:0;margin-bottom:0;display:flex;overflow:hidden}.tab{cursor:pointer;color:#666;background:#f8f9fa;border:none;flex:1;padding:12px 8px;font-size:14px;font-weight:500;transition:all .2s}.tab.active{color:#1677ff;background:#fff;border-bottom:2px solid #1677ff}.tab:hover{color:#1677ff}.card{background:#fff;border:1px solid #e5e5e5;border-radius:0 0 12px 12px;padding:24px}.card:first-of-type{border-radius:0 0 12px 12px}.card+.card{border-radius:12px;margin-top:16px}.form{flex-direction:column;gap:12px;display:flex}.form label{color:#555;font-size:14px;font-weight:600}.form textarea,.form input,.form select{border:1px solid #d9d9d9;border-radius:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .2s}.form textarea:focus,.form input:focus,.form select:focus{border-color:#1677ff;outline:none;box-shadow:0 0 0 2px #1677ff1a}.form textarea{resize:vertical}.form-hint{color:#999;margin-top:-4px;font-size:12px}.btn{cursor:pointer;border:none;border-radius:8px;width:100%;padding:10px 20px;font-size:15px;font-weight:600;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background:#1677ff}.btn-primary:hover:not(:disabled){background:#4096ff}.btn-secondary{color:#333;background:#f0f0f0}.btn-secondary:hover:not(:disabled){background:#e0e0e0}.btn-link{color:#1677ff;background:0 0;width:auto;padding:8px}.btn-danger-small{color:#fff;cursor:pointer;background:#ff4d4f;border:none;border-radius:4px;width:auto;padding:4px 10px;font-size:12px}.status-badge{color:#fff;border-radius:20px;padding:6px 16px;font-size:14px;font-weight:600;display:inline-block}.badge-running{background:#1677ff}.badge-success{background:#52c41a}.badge-failed{background:#ff4d4f}.status-badge-sm{color:#fff;border-radius:10px;padding:2px 8px;font-size:12px;display:inline-block}.status-time{color:#999;margin-left:12px;font-size:13px}.status-section{align-items:center;margin-bottom:16px;display:flex}.progress-section{text-align:center;background:#f6f8fa;border-radius:8px;margin-bottom:16px;padding:20px}.progress-content{color:#555;font-size:15px}.result-box{text-align:center;border-radius:8px;margin-top:16px;padding:24px}.result-box.success{background:#f6ffed;border:1px solid #b7eb8f}.result-box.error{background:#fff2f0;border:1px solid #ffccc7}.result-icon{margin-bottom:8px;font-size:48px}.result-box.success .result-icon{color:#52c41a}.result-box.error .result-icon{color:#ff4d4f}.result-title{margin-bottom:4px;font-size:20px;font-weight:700}.result-desc{color:#666;margin-bottom:16px;font-size:14px}.refund-info{color:#52c41a;margin-bottom:12px;font-size:14px}.payment-info{text-align:center;color:#fff;background:linear-gradient(135deg,#1677ff 0%,#69b1ff 100%);border-radius:12px;margin-bottom:20px;padding:24px}.amount-label{opacity:.9;font-size:14px}.amount-value{margin:8px 0;font-size:48px;font-weight:700}.amount-desc{opacity:.8;font-size:13px}.qr-section{text-align:center}.qr-container{background:#fff;border:2px solid #e5e5e5;border-radius:12px;margin-bottom:12px;padding:16px;display:inline-block}.qr-code svg{display:block}.qr-loading{color:#999;justify-content:center;align-items:center;width:220px;height:220px;font-size:14px;display:flex}.timer{color:#fa8c16;margin-bottom:16px;font-size:14px}.timer .expired{color:#ff4d4f}.success-section{text-align:center;padding:24px}.success-icon{color:#52c41a;margin-bottom:12px;font-size:64px}.success-text{color:#52c41a;margin-bottom:8px;font-size:24px;font-weight:700}.success-detail{color:#666;margin-bottom:8px;font-size:14px}.success-detail code{background:#f6ffed;border-radius:4px;padding:2px 8px;font-family:monospace}.auto-redirect{color:#999;margin-top:16px;font-size:13px;animation:1.5s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.expired-section{text-align:center;padding:24px}.expired-icon{margin-bottom:8px;font-size:48px}.expired-text{color:#ff4d4f;margin-bottom:16px;font-size:18px}.error-box{color:#ff4d4f;background:#fff2f0;border:1px solid #ffccc7;border-radius:8px;margin-top:12px;padding:12px;font-size:14px}.result-item{color:#555;padding:4px 0;font-size:14px}.result-item.success{color:#52c41a}.result-item strong{color:#333}.table{border-collapse:collapse;width:100%;font-size:13px}.table th{text-align:left;white-space:nowrap;background:#fafafa;border-bottom:2px solid #e5e5e5;padding:10px 8px;font-weight:600}.table td{border-bottom:1px solid #f0f0f0;padding:10px 8px}.table .empty{text-align:center;color:#999;padding:24px}.content-cell{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.toolbar{gap:8px;margin-bottom:16px;display:flex}.toolbar .btn{width:auto}.dialog-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:#fff;border-radius:12px;width:360px;max-width:90vw;padding:24px;box-shadow:0 8px 24px #00000026}.dialog h3{margin-bottom:16px;font-size:18px}.dialog .form{margin-bottom:16px}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.dialog-actions .btn{width:auto}.new-cards-list{background:#f6f8fa;border-radius:6px;max-height:150px;margin-bottom:12px;padding:8px 12px;font-family:monospace;font-size:13px;overflow-y:auto}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:16px;font-size:14px;display:flex}.pagination button{cursor:pointer;background:#fff;border:1px solid #d9d9d9;border-radius:6px;padding:6px 16px;font-size:13px}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination button:hover:not(:disabled){color:#1677ff;border-color:#1677ff}.detail-row{border-bottom:1px solid #f5f5f5;gap:8px;padding:8px 0;font-size:14px;display:flex}.detail-label{color:#999;min-width:70px}.detail-row code{background:#f6f8fa;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:13px}.footer{text-align:center;color:#999;padding:24px;font-size:13px}.footer a{color:#1677ff;text-decoration:none}.loading-box{text-align:center;color:#999;padding:40px;font-size:15px}
