.promotion-qr-host{min-width:0;width:100%}
.promotion-qr-card{display:grid;gap:12px;padding:16px;border:1px solid rgba(103,217,255,.3);border-radius:16px;background:rgba(6,19,32,.72);text-align:center}
.promotion-qr-heading{margin:0;color:var(--ink);font-size:15px;font-weight:700;line-height:1.5;white-space:pre-line}
.promotion-qr-canvas{display:block;width:min(100%,280px);height:auto;margin:0 auto;border:5px solid #fff;border-radius:8px;background:#fff;image-rendering:pixelated}
.promotion-qr-code{margin:0;color:var(--accent-strong);font-size:16px;font-weight:700;letter-spacing:.08em}
.promotion-qr-actions{display:flex;justify-content:center;gap:10px}
.promotion-qr-actions button{min-width:88px;font-size:14px}
.promotion-qr-foot{margin:0;color:#eac17d;font-size:12px;line-height:1.5}
.promotion-qr-expiry{display:block;margin:8px 0;color:var(--muted);font-size:12px;line-height:1.5}
.promotion-qr-status{min-height:1.5em;margin:0;color:var(--warm);font-size:12px;line-height:1.5}
.registration-dialog .account-dialog-card{max-height:calc(100dvh - 28px);overflow:auto}
.profile-challenge>.promotion-qr-host{grid-column:1 / -1}
.registration-challenge>.promotion-qr-host{grid-column:1 / -1}
@media(max-width:560px){.registration-dialog .account-dialog-card{padding:20px 16px}.promotion-qr-card{padding:12px}.promotion-qr-actions button{flex:1}}
