.qr-entry {margin:0;min-height:100vh;min-height:100dvh;display:grid;place-items:center;background:#f5f5f4;color:#242321;font-family:system-ui,sans-serif}
.qr-card {box-sizing:border-box;width:min(400px,calc(100vw - 32px));margin:24px auto;padding:32px 24px;background:white;border:1px solid #e2dfdb;border-radius:18px;text-align:center;box-shadow:0 12px 42px #241b1110}
.qr-card h1 {font-size:24px;margin:18px 0 8px;color:#241f1a}
.qr-card p {margin:8px auto;color:#54514e;line-height:1.55}
.qr-brand {width:150px;height:auto}
.qr-frame {width:min(100%,272px);aspect-ratio:1;margin:18px auto 12px;background:#fff;display:grid;place-items:center}
.qr-frame canvas {max-width:100%;height:auto;image-rendering:pixelated}
.qr-card small {display:block;color:#666;min-height:1.2em}
.qr-card button {min-height:44px;margin:12px auto 0;border:0;border-radius:8px;background:#24211f;color:white;padding:0 18px;cursor:pointer}
.qr-card [hidden] {display:none}
