@font-face{font-family:MyCardReceiptFont;src:local("Noto Sans CJK SC"),local("Noto Sans SC"),local("Microsoft YaHei UI"),local("Microsoft YaHei"),local("PingFang SC");font-display:block}.mycard-receipt-overlay{position:fixed;inset:0;z-index:1200;background:#0a141e94}.receipt-backdrop{display:flex;align-items:flex-start;justify-content:flex-start;padding:12px;overflow:auto}.receipt-spinner-backdrop{display:grid;place-items:center;overflow:hidden}.receipt-shell{width:540px;min-width:540px;margin:0 auto;position:relative}.receipt-shell.receipt-shell-image{width:min(540px,100%);min-width:0}.receipt-actions{display:flex;justify-content:center;gap:10px;padding:12px 0 0}.receipt-close-btn{border:0;border-radius:999px;padding:9px 18px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 8px 20px #0000002e;background:#fff;color:#333}.receipt-image{display:block;width:100%;max-width:540px;min-width:0;height:auto;background:#fafafa;box-shadow:0 18px 55px #00000052;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.receipt-generation-blocker{position:absolute;inset:0;z-index:3;display:grid;place-items:center;align-content:center;gap:14px;background:#fafafaf0;color:#666;font-size:14px;box-shadow:0 18px 55px #00000052}.mycard-receipt{width:540px;min-width:540px;height:auto;max-height:none;margin:0 auto;background:#fafafa;color:#333;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 18px 55px #00000052;font-family:MyCardReceiptFont,Microsoft YaHei UI,Microsoft YaHei,sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;cursor:default}.mycard-receipt *,.mycard-receipt *:before,.mycard-receipt *:after{user-select:none;-webkit-user-select:none;pointer-events:none;-webkit-user-drag:none}.mr-navbar{height:94px;display:grid;grid-template-columns:90px 1fr 90px;align-items:start;flex-shrink:0;gap:0;margin:0;padding-top:39px;background:#fafafa}.mr-back{width:90px;height:36px;border:0;background:transparent;color:#111;display:grid;place-items:center;padding:0 27px;cursor:default}.mr-back img{width:36px;height:36px;display:block;pointer-events:none}.mr-title{text-align:center;color:#333;font-size:25.5px;font-weight:700;line-height:31px}.mr-nav-spacer{width:90px}.mr-tabs{height:72px;display:flex;align-items:flex-end;overflow:hidden;white-space:nowrap;flex-shrink:0;background:#fafafa}.mr-tab{position:relative;width:130px;padding:0 0 20px;text-align:center;color:#c9c9c9;font-size:21px;font-weight:400;line-height:1;flex-shrink:0}.mr-tab.active{width:108px;color:#111}.mr-tab:nth-child(3){width:146px}.mr-tab:nth-child(4){width:180px}.mr-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#111}.mr-scroll{flex:0 0 auto;overflow:hidden;padding:24px 24px 0;background:#fafafa;scrollbar-width:none;touch-action:none}.mr-scroll::-webkit-scrollbar{display:none}.mr-spinner{width:28px;height:28px;border:3px solid #e6e6e6;border-top-color:#989898;border-radius:50%;animation:mr-spin .8s linear infinite}@keyframes mr-spin{to{transform:rotate(360deg)}}.mr-datefilter{min-height:63px;display:flex;align-items:center;gap:24px;padding:13.5px 30px;margin-bottom:12px;background:#fff;border-radius:10.5px;color:#d1d1d1;font-size:22.5px;line-height:1}.mr-datefilter img{width:36px;height:36px;display:block;pointer-events:none}.mr-card{background:#fff;border-radius:10.5px 10.5px 0 0;padding:12px 24px 3px;box-shadow:none}.mr-field{display:grid;gap:9px;margin-bottom:25.5px}.mr-field:last-child{margin-bottom:0}.mr-trade-field{grid-template-columns:minmax(0,1fr) auto;column-gap:24px}.mr-trade-label{grid-column:1;grid-row:1}.mr-trade-value{grid-column:1;grid-row:2}.mr-trade-copy{grid-column:2;grid-row:1 / 3;align-self:center}.mr-label{color:#989898;font-size:18px;font-weight:400;line-height:1.2}.mr-value{color:#333;font-size:19.5px;font-weight:400;line-height:1.4;word-break:break-word}.mr-copy{flex-shrink:0;color:#39bafc;font-size:18px;font-weight:400;white-space:nowrap}:root{--c-bg: #e8f0f5;--c-surface: #ffffff;--c-surface-alt: #f7f9fb;--c-border: #dce4ea;--c-border-light: #edf2f6;--c-text: #13202c;--c-text-muted: #536370;--c-text-hint: #8fa0ac;--c-primary: #1a6660;--c-primary-dark: #145550;--c-primary-light: #edf7f6;--c-accent: #2a8a82;--c-danger: #991b1b;--c-danger-bg: #fef2f2;--c-danger-border: #fecaca;--c-success: #15803d;--c-success-bg: #f0fdf4;--c-success-border: #bbf7d0;--c-info: #0c4a6e;--c-info-bg: #f0f9ff;--c-info-border: #bae6fd;--shadow-sm: 0 1px 3px rgba(10,20,30,.07), 0 1px 2px rgba(10,20,30,.04);--shadow-md: 0 4px 12px rgba(10,20,30,.09), 0 2px 5px rgba(10,20,30,.05);--shadow-lg: 0 10px 28px rgba(10,20,30,.13), 0 4px 10px rgba(10,20,30,.07);--shadow-xl: 0 24px 56px rgba(10,20,30,.22);--r-sm: 6px;--r-md: 10px;--r-lg: 14px;color:var(--c-text);font-family:Segoe UI,Microsoft YaHei,system-ui,sans-serif;font-size:14px;line-height:1.55;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(ellipse at 25% 0%,#d6e8ef,#e3eff5 42%,#e8f0f5)}button,input,select,textarea{font:inherit}button{border:0}button:disabled{opacity:.52;cursor:not-allowed}h1,h2,h3,p{margin:0}.cashier-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr);gap:0;max-width:820px;margin:0 auto;padding:28px 20px 48px;align-items:start}.cashier-panel{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-md)}.service-status{margin-left:auto;display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:999px;background:color-mix(in srgb,var(--c-success, #22c55e) 12%,transparent);border:1px solid color-mix(in srgb,var(--c-success, #22c55e) 35%,transparent);font-size:12.5px;font-weight:600;color:var(--c-success, #16a34a);white-space:nowrap}.service-status .service-dot{width:8px;height:8px;border-radius:50%;background:var(--c-success, #22c55e);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-success, #22c55e) 25%,transparent);animation:service-pulse 1.8s ease-in-out infinite}.service-status.offline{background:color-mix(in srgb,var(--c-danger, #ef4444) 12%,transparent);border-color:color-mix(in srgb,var(--c-danger, #ef4444) 35%,transparent);color:var(--c-danger, #dc2626)}.service-status.offline .service-dot{background:var(--c-danger, #ef4444);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-danger, #ef4444) 25%,transparent);animation:none}@keyframes service-pulse{0%,to{opacity:1}50%{opacity:.45}}.cashier-panel h1{font-size:22px;font-weight:700;margin-bottom:20px;letter-spacing:-.2px}.status-panel{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--shadow-sm);position:sticky;top:28px}.status-panel h2{font-size:15px;font-weight:700;margin:0 0 14px;color:var(--c-text)}.toast-container{position:fixed;top:18px;right:22px;z-index:9999;display:flex;flex-direction:column;gap:8px;width:340px;max-width:calc(100vw - 44px);pointer-events:none}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--r-md);box-shadow:var(--shadow-lg);font-size:13.5px;line-height:1.45;pointer-events:auto;border:1px solid transparent;animation:toast-in .2s cubic-bezier(.34,1.2,.64,1)}.toast.success{background:var(--c-success-bg);border-color:var(--c-success-border);color:var(--c-success)}.toast.error{background:var(--c-danger-bg);border-color:var(--c-danger-border);color:var(--c-danger)}.toast.info{background:var(--c-info-bg);border-color:var(--c-info-border);color:var(--c-info)}.toast svg{flex-shrink:0;margin-top:1px}.toast-msg{flex:1}.toast-close{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:4px;cursor:pointer;opacity:.55;font-size:14px;background:transparent;color:inherit;padding:0;margin:-2px -4px 0 0}.toast-close:hover{opacity:1;background:#00000017}@keyframes toast-in{0%{opacity:0;transform:translate(16px) scale(.97)}to{opacity:1;transform:translate(0) scale(1)}}.notice{display:flex;align-items:center;gap:10px;border-radius:var(--r-md);padding:11px 14px;margin-bottom:14px;border:1px solid;font-size:13.5px}.notice.success{color:var(--c-success);background:var(--c-success-bg);border-color:var(--c-success-border)}.notice.danger{color:var(--c-danger);background:var(--c-danger-bg);border-color:var(--c-danger-border)}.notice.info{color:var(--c-info);background:var(--c-info-bg);border-color:var(--c-info-border)}.details-toggle{margin-top:18px}.details-toggle-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface-alt);color:var(--c-text-muted);font-size:13.5px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.details-toggle-btn:hover{background:#eef2f5;border-color:#b8c8d2}.details-toggle-btn svg{transition:transform .2s}.details-toggle-btn svg.rotated{transform:rotate(180deg)}.details-toggle .status-card{margin-top:10px}.voucher-inline-warning{display:flex;align-items:center;gap:6px;margin:0;font-size:12.5px;color:var(--c-danger)}.payment-form{display:grid;gap:14px}label{display:grid;gap:6px;font-size:13px;font-weight:500;color:var(--c-text)}input,select,textarea{width:100%;border:1.5px solid var(--c-border);background:var(--c-surface);border-radius:var(--r-md);padding:9px 11px;color:var(--c-text);outline:none;transition:border-color .15s,box-shadow .15s;font-size:14px}textarea{min-height:90px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px #2a8a8221}.captcha-box{display:grid;grid-template-columns:minmax(150px,240px) auto;gap:10px;align-items:end}.captcha-box img{width:100%;max-width:240px;height:80px;object-fit:contain;border:1.5px solid var(--c-border);border-radius:var(--r-md);background:#fff}.captcha-box label{grid-column:1 / -1}.primary,.secondary{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:var(--r-md);cursor:pointer;font-weight:600;font-size:14px;transition:transform .12s,box-shadow .12s,background .12s;white-space:nowrap}.primary{background:linear-gradient(135deg,var(--c-accent) 0%,var(--c-primary) 100%);color:#fff;padding:0 20px;box-shadow:0 1px 3px #1a666047,0 1px 2px #1a666029}.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #1a666057,0 2px 4px #1a666033}.secondary{background:var(--c-surface);color:var(--c-text);padding:0 16px;border:1.5px solid var(--c-border)}.secondary:hover:not(:disabled){background:var(--c-surface-alt);border-color:#b8c8d2;transform:translateY(-1px)}.action-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.status-card{border:1px solid var(--c-border);border-radius:var(--r-md);padding:14px 16px;display:grid;gap:6px;font-size:13.5px}.status-card .label{color:var(--c-text-muted);font-size:12px;font-weight:500}.status-card .value{font-weight:700;font-size:15px}.status-card .sub{font-size:12.5px;color:var(--c-text-muted)}.success-block{padding:16px;border:1px solid var(--c-success-border);background:var(--c-success-bg);border-radius:var(--r-md);display:grid;gap:8px}.success-block .big{font-size:22px;font-weight:700;color:var(--c-success)}.countdown-card{padding:14px 16px;border:1px solid var(--c-border);background:var(--c-surface-alt);border-radius:var(--r-md);display:grid;gap:8px}.countdown-line{font-size:13px;font-weight:600;color:var(--c-text-muted);display:flex;align-items:center;gap:7px}.countdown-line span{color:var(--c-danger);font-size:15px}.preview-lines{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface-alt);font-size:13.5px}.preview-lines .row{display:flex;justify-content:space-between;gap:12px}.preview-lines .val{font-weight:600}.qr-mode{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.qr-mode label{display:flex;align-items:center;gap:8px;border:1.5px solid var(--c-border);border-radius:var(--r-md);padding:10px 14px;cursor:pointer;font-weight:400;transition:border-color .12s,background .12s}.qr-mode label.selected{border-color:var(--c-accent);background:var(--c-primary-light)}.qr-mode input[type=radio]{width:auto;margin:0}.upload-box{display:grid;gap:10px}.upload-button{display:grid;place-items:center;gap:7px;min-height:120px;border:2px dashed var(--c-accent);border-radius:var(--r-md);background:var(--c-primary-light);color:var(--c-primary);text-align:center;cursor:pointer;transition:background .12s,border-color .12s}.upload-button:hover{background:#d9efed;border-color:var(--c-primary)}.upload-button span{color:var(--c-text-muted);font-size:12.5px}.upload-button.disabled{cursor:not-allowed;border-style:solid;border-color:var(--c-border);background:var(--c-surface-alt);color:var(--c-text-hint)}.upload-button.disabled:hover{background:var(--c-surface-alt);border-color:var(--c-border)}.decode-success{display:flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid var(--c-success-border);border-radius:var(--r-md);background:var(--c-success-bg);color:var(--c-success);font-size:13.5px}.decode-error{display:flex;align-items:flex-start;gap:9px;padding:10px 14px;border:1px solid var(--c-danger-border, #fecaca);border-radius:var(--r-md);background:var(--c-danger-bg, #fef2f2);color:var(--c-danger, #dc2626);font-size:13.5px}.decode-error div{display:grid;gap:4px}.decode-error span{color:#991b1b;line-height:1.45}.qr-decoding-backdrop{flex-direction:column;gap:14px;display:flex}.qr-decoding-text{color:#fff;font-size:14px;font-weight:600}.order-history{display:grid;gap:6px}.order-item{border:1px solid var(--c-border);border-left-width:3px;border-left-color:var(--c-border);border-radius:var(--r-md);padding:10px 12px;font-size:12.5px;display:grid;gap:3px;background:var(--c-surface);transition:box-shadow .15s}.order-item:hover{box-shadow:var(--shadow-sm)}.order-item.status-success{border-left-color:var(--c-success)}.order-item.status-failed{border-left-color:var(--c-danger)}.order-item.status-queued{border-left-color:#f59e0b}.order-item.status-processing{border-left-color:#3b82f6}.order-item.status-created{border-left-color:var(--c-accent)}.order-item .order-id{font-weight:600;color:var(--c-text)}.order-item .order-meta{color:var(--c-text-muted);display:flex;gap:8px;flex-wrap:wrap}.order-item .order-status{font-size:11.5px;font-weight:600;padding:1px 6px;border-radius:999px;display:inline-block}.order-item.status-success .order-status{color:var(--c-success);background:var(--c-success-bg)}.order-item.status-failed .order-status{color:var(--c-danger);background:var(--c-danger-bg)}.order-item.status-queued .order-status{color:#92400e;background:#fffbeb}.order-item.status-processing .order-status{color:#1e40af;background:#dbeafe}.order-item.status-created .order-status{color:var(--c-info);background:var(--c-info-bg)}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}.metric-grid div{padding:10px 12px;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface-alt)}.metric-grid span,.metric-grid dt{display:block;font-size:11.5px;color:var(--c-text-muted);font-weight:500}.metric-grid strong,.metric-grid dd{display:block;font-size:17px;font-weight:700;margin-top:2px;margin-left:0}.merge-form{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface-alt);margin-top:14px}.merge-form h3{font-size:13.5px;font-weight:700;margin:0 0 2px}.modal-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:#060e168c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.modal{width:min(520px,100%);max-height:calc(100vh - 36px);overflow:auto;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:22px 24px;box-shadow:var(--shadow-xl);display:grid;gap:14px}.modal h2{font-size:18px;font-weight:700}.modal-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:4px}.qr-source-modal{width:min(360px,100%)}.qr-source-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.qr-source-option{display:grid;place-items:center;gap:8px;min-height:96px;border:1.5px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-text);font-weight:600;font-size:14px;cursor:pointer;transition:background .12s,border-color .12s}.qr-source-option:hover{background:var(--c-primary-light);border-color:var(--c-accent);color:var(--c-primary)}.empty-state{padding:20px 16px;text-align:center;color:var(--c-text-muted);font-size:13px;border:1px dashed var(--c-border);border-radius:var(--r-md);background:var(--c-surface-alt)}.seal{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--c-primary-light);border:1px solid #c6e8e5;border-radius:50%;color:var(--c-primary);flex-shrink:0}header{display:flex;align-items:center;gap:14px;margin-bottom:22px;flex-wrap:wrap}header h1{font-size:20px;font-weight:700;margin:0 0 3px}header p{font-size:13px;color:var(--c-text-muted);margin:0}.tutorial-search{position:relative;z-index:20;margin-bottom:18px}.tutorial-search-field{min-height:46px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface-alt);color:var(--c-text-hint);transition:border-color .15s,box-shadow .15s,background .15s}.tutorial-search-field:focus-within{border-color:var(--c-accent);background:var(--c-surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-accent) 14%,transparent)}.tutorial-search-field svg{flex-shrink:0}.tutorial-search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--c-text);font-size:14px}.tutorial-search-field input::placeholder{color:var(--c-text-hint)}.tutorial-search-results{position:absolute;top:calc(100% + 6px);left:0;right:0;max-height:258px;overflow-y:auto;padding:5px;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface);box-shadow:var(--shadow-lg)}.tutorial-search-result{width:100%;min-height:40px;display:grid;grid-template-columns:20px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:7px 10px;border-radius:var(--r-sm);background:transparent;color:var(--c-text-muted);text-align:left;cursor:pointer}.tutorial-search-result span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tutorial-search-result>svg:last-child{color:var(--c-text-hint)}.tutorial-search-result:hover,.tutorial-search-result.active{background:var(--c-primary-light);color:var(--c-primary)}.tutorial-search-empty{min-height:46px;display:grid;place-items:center;padding:8px 12px;color:var(--c-text-hint);font-size:13px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.section-title h2{font-size:16px;font-weight:700;margin:0}.section-title h3{font-size:14px;font-weight:700;margin:0}.order-history h3{font-size:13.5px;font-weight:700;margin:12px 0 8px;color:var(--c-text-muted)}.show-more-btn{justify-self:start;margin-top:2px}.order-item.merge-record{border-left-color:var(--c-accent)}.order-item.merge-record .order-status.merge-in{color:var(--c-success);background:var(--c-success-bg)}.compact{min-height:32px!important;font-size:13px!important;padding:0 10px!important}.muted{color:var(--c-text-muted);font-size:12.5px}.merge-hint{font-size:13px;color:var(--c-text-muted);margin:0 0 4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.saved-voucher-hint{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--c-success);margin:-4px 0 4px}.saved-voucher-hint button{margin-left:auto;font-size:12px;color:var(--c-text-muted);background:none;padding:0;cursor:pointer;text-decoration:underline}.saved-voucher-hint button:hover{color:var(--c-danger)}.order-receipt-row{margin-top:5px}.receipt-btn{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--c-primary);background:none;border:1px solid var(--c-border);border-radius:4px;padding:3px 9px;cursor:pointer;transition:background .12s,border-color .12s}.receipt-btn:hover{background:var(--c-primary-light);border-color:var(--c-accent)}@media(max-width:820px){.cashier-shell{grid-template-columns:1fr;padding:16px 14px 40px}.cashier-panel{margin-right:0;margin-bottom:16px}.status-panel{position:static}.toast-container{width:calc(100vw - 32px);right:16px;top:14px}}@media(max-width:480px){.captcha-box{grid-template-columns:1fr}}
