.panda-logo[data-v-c292c30e]{object-fit:contain;border-radius:12px}.cashier-brand[data-v-3fa8626e]{display:flex;align-items:center;gap:14px;margin-bottom:12px}.cashier-brand__text h1[data-v-3fa8626e]{margin:2px 0 0}.cashier-footer[data-v-3fa8626e]{margin-top:28px;padding-top:16px;border-top:1px solid var(--panda-line);text-align:center;font-size:12px;color:#9ca3af}.qr-code-container[data-v-c9920d2d]{display:flex;justify-content:center;align-items:center;padding:20px;background:#fff;border-radius:16px;border:1px solid #e5e7eb}.qr-canvas[data-v-c9920d2d]{display:block;max-width:100%;height:auto}.qr-error[data-v-c9920d2d]{text-align:center;color:#dc2626}.qr-fallback[data-v-c9920d2d]{margin-top:12px;padding:12px;background:#f8fafc;border:1px dashed #94a3b8;border-radius:8px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;word-break:break-all;color:#0f172a}@media(max-width:640px){.qr-code-container[data-v-c9920d2d]{padding:16px}.qr-canvas[data-v-c9920d2d]{width:100%;max-width:240px}}:root{--panda-ink: #1f1f1f;--panda-ink-2: #2b2b2b;--panda-bone: #f7f5f0;--panda-surface: #ffffff;--panda-bamboo: #1f7a43;--panda-bamboo-dark: #176335;--panda-bamboo-soft: #eaf3ee;--panda-gray: #6b7280;--panda-line: #e6e2d9;--panda-red: #d64545;--panda-amber: #c98a1b;--font-display: "Noto Serif SC", "Source Han Serif SC", "Songti SC", serif;--font-body: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", Inter, system-ui, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", ui-monospace, monospace;color-scheme:light;font-family:var(--font-body);color:var(--panda-ink);background:var(--panda-bone);line-height:1.5;font-weight:400}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(900px 400px at 85% -10%,rgba(31,122,67,.06),transparent 60%),linear-gradient(180deg,#faf8f3,#f1eee7)}button{font:inherit}.app-shell{min-height:100vh;padding:32px 16px;display:flex;align-items:flex-start;justify-content:center}.cashier-card{width:100%;max-width:720px;background:var(--panda-surface);border:1px solid var(--panda-line);border-radius:24px;box-shadow:0 20px 50px #1f1f1f14;padding:28px}.cashier-header h1{margin:4px 0 8px;font-size:28px;font-family:var(--font-display)}.eyebrow{color:var(--panda-bamboo);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;display:flex;align-items:center;gap:8px}.page-description{margin:0;color:var(--panda-gray)}.section{border:1px solid var(--panda-line);border-radius:18px;padding:18px;margin-top:18px;background:#fdfcfa}.section-title{font-weight:700;margin-bottom:12px}.summary-row{display:flex;justify-content:space-between;gap:16px;margin-bottom:10px;color:#475569}.summary-row strong{color:var(--panda-ink);text-align:right}.summary-row.total strong{font-size:28px;color:var(--panda-ink);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.countdown{display:inline-block;margin-top:8px;color:#475569;font-weight:600;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.countdown.danger{color:var(--panda-red);animation:pulse 1.5s ease-in-out infinite}.countdown.expired{color:#991b1b;font-weight:700}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@media(prefers-reduced-motion:reduce){.countdown.danger{animation:none}}@media(max-width:640px){.countdown{font-size:15px;display:block;margin-top:12px}}.method-list{display:grid;gap:12px}.method-card{width:100%;border:1px solid var(--panda-line);background:var(--panda-surface);border-radius:16px;padding:16px;display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;transition:all .2s ease;text-align:left;min-height:44px}.method-card:hover:not(.disabled){border-color:var(--panda-bamboo);background:var(--panda-bamboo-soft)}.method-card.active{border-color:var(--panda-bamboo);box-shadow:0 0 0 4px #1f7a431a;background:var(--panda-bamboo-soft)}.method-card.disabled{cursor:not-allowed;opacity:.5}.method-title{font-weight:700;color:var(--panda-ink)}.method-description{color:var(--panda-gray);font-size:14px}.method-tag{color:var(--panda-bamboo);font-size:13px;white-space:nowrap}.actions{margin-top:20px;display:flex;justify-content:flex-end;gap:12px}.actions.stacked{flex-direction:column}.primary-btn,.secondary-btn,.ghost-btn{border:none;border-radius:14px;padding:14px 18px;cursor:pointer;font-weight:700;transition:all .2s ease;min-height:44px}.primary-btn{background:var(--panda-bamboo);color:#fff}.primary-btn:hover:not(:disabled){background:var(--panda-bamboo-dark)}.primary-btn:active:not(:disabled){background:#115228}.primary-btn:disabled{opacity:.6;cursor:not-allowed}.secondary-btn{background:var(--panda-bamboo-soft);color:var(--panda-bamboo-dark)}.secondary-btn:hover:not(:disabled){background:#d5e8dc}.secondary-btn:active:not(:disabled){background:#c2ddcd}.ghost-btn{background:transparent;color:#475569;border:1px solid var(--panda-line)}.ghost-btn:hover:not(:disabled){background:var(--panda-bone)}.ghost-btn:active:not(:disabled){background:#ece8e0}.state-box{margin-top:18px;border-radius:16px;padding:16px;background:var(--panda-bamboo-soft);color:var(--panda-bamboo-dark)}.state-box.error{background:#fdf0ef;color:#b91c1c}.state-box.success{background:var(--panda-bamboo-soft);color:var(--panda-bamboo-dark)}@media(max-width:640px){.state-box{border-radius:12px;padding:14px;font-size:14px}}.pay-panel{text-align:center}.mock-qr{border:1px dashed var(--panda-bamboo);background:var(--panda-bamboo-soft);border-radius:16px;padding:24px 16px;color:var(--panda-ink);word-break:break-all;font-family:var(--font-mono);font-size:13px;line-height:1.6}.h5-pay-area{text-align:center;padding:20px 0}.h5-pay-btn{min-width:200px;font-size:18px;padding:16px 32px}.qr-pay-area{text-align:center}.mobile-qr-tip{background:#faf3e0;color:#92400e;padding:12px;border-radius:12px;margin-bottom:16px;font-size:14px}.copy-btn{margin-top:12px;min-width:160px}.polling-indicator{display:inline-block;animation:spin 1.5s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.polling-indicator{animation:none}}.pay-help,.status-note{margin:12px 0 0;color:var(--panda-gray)}.result-panel{text-align:center}.result-panel.success{background:var(--panda-bamboo-soft);border-color:#bbf7d0}.result-panel.fail{background:#fdf0ef;border-color:#fed7aa}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.result-panel.success .result-icon{animation:successPulse .6s ease-in-out}@media(prefers-reduced-motion:no-preference){.result-panel.success .result-icon{animation:successPulse .6s ease-in-out}}.result-icon{width:56px;height:56px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:700;background:var(--panda-bamboo);color:#fff}.result-title{font-size:22px;font-weight:800;margin-bottom:8px}.result-detail{color:#475569;display:grid;gap:8px}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:8px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-title{height:24px;width:60%;margin-bottom:12px}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.sticky-bottom{position:fixed;bottom:0;left:0;right:0;padding:12px 16px;background:var(--panda-surface);box-shadow:0 -4px 12px #00000014;z-index:100}@supports (padding: env(safe-area-inset-bottom)){.sticky-bottom{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}@media(max-width:640px){.app-shell{padding:0;align-items:stretch}.cashier-card{border-radius:0;box-shadow:none;min-height:100vh;padding:20px 16px 80px}.cashier-header h1{font-size:22px}.eyebrow{font-size:10px}.summary-row.total strong{font-size:22px}.section{border-radius:12px;padding:14px}.method-card{border-radius:12px;padding:14px;flex-direction:column;align-items:flex-start;min-height:44px}.primary-btn,.secondary-btn,.ghost-btn{min-height:48px;font-size:16px;border-radius:12px;width:100%}.summary-row,.actions:not(.sticky-bottom){flex-direction:column;align-items:stretch}.summary-row strong{text-align:left}.mock-qr{padding:20px 12px;font-size:12px}.result-icon{width:80px;height:80px;font-size:40px;margin-bottom:16px}.result-title{font-size:24px}.result-panel{min-height:60vh;display:flex;flex-direction:column;justify-content:center}.h5-pay-btn{width:100%;max-width:280px}.pay-help,.status-note,.page-description{font-size:14px}.method-title{font-size:16px}.method-description{font-size:13px}.method-tag{font-size:12px}}@media(min-width:641px)and (max-width:768px){.cashier-card{max-width:600px}}@media(hover:none){.primary-btn:active:not(:disabled),.secondary-btn:active:not(:disabled),.ghost-btn:active:not(:disabled){transform:scale(.98);transition:transform .1s ease}.method-card:active:not(.disabled){transform:scale(.99);transition:transform .1s ease}}html,body{overscroll-behavior:none;-webkit-overflow-scrolling:touch}@supports (padding: env(safe-area-inset-bottom)){.app-shell{padding-top:max(32px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}@media(max-width:640px){.app-shell{padding-top:env(safe-area-inset-top)}.cashier-card{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.sticky-bottom{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
