#localLayer [data-generate-promotion]{border-color:#1989fa;background:#fff;color:#1989fa}
#localLayer .promotion-qr-mask{position:fixed;inset:0;z-index:1400;background:rgba(0,0,0,.48);display:flex;align-items:flex-end;justify-content:center;padding:20px 12px 0;overflow:auto}
#localLayer .promotion-qr-popup{position:relative;width:min(100%,420px);max-height:100%;display:flex;flex-direction:column;align-items:center;color:#334155}
#localLayer .promotion-qr-close{position:absolute;right:0;top:0;z-index:2;width:34px;height:34px;border:0;border-radius:50%;background:#fff;color:#64748b;font-size:25px;line-height:30px}
#localLayer .promotion-qr-frame{position:relative;max-width:100%;width:min(340px,calc((100dvh - 150px)*.63));flex:none}
#localLayer .promotion-qr-poster{display:block;width:100%;height:auto;aspect-ratio:600/952}
#localLayer .promotion-qr-state{position:absolute;left:10%;right:10%;top:45%;margin:0;text-align:center;background:#fff;color:#2563eb;padding:18px 4px;border-radius:12px}
#localLayer .promotion-qr-download{position:absolute;bottom:6%;left:15%;width:70%;height:42px;border:0;border-radius:24px;background:#2588fa;color:#fff;font-size:16px;font-weight:600;box-shadow:0 4px 12px #4facfe44}
#localLayer .promotion-qr-download:disabled{opacity:.55}
#localLayer .promotion-qr-sheet{background:#fff;border-radius:20px 20px 0 0;padding:18px 20px calc(20px + env(safe-area-inset-bottom));width:100%;margin-top:12px}
#localLayer .promotion-qr-sheet h3{margin:0 0 13px;text-align:center;font-size:18px;color:#334155}
#localLayer .promotion-qr-link{display:flex;border:1px solid #dbeafe;background:#f8fafc;border-radius:8px;overflow:hidden}
#localLayer .promotion-qr-link input{min-width:0;flex:1;height:42px;padding:10px;border:0;background:transparent;color:#334155;-webkit-text-fill-color:#334155;font-size:12px}
#localLayer .promotion-qr-link button{border:0;background:#eff6ff;color:#2563eb;padding:0 13px;font-size:14px;white-space:nowrap}
