.qr-access-panel { margin: 24px 0; }
.qr-access-panel h2 { margin: 0; }
.qr-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 18px; }
.qr-card { display: grid; justify-items: center; align-content: start; gap: 10px; min-width: 0; padding: 18px; border: 1px solid #d7d9e0; border-radius: 18px; background: #fff; }
.qr-card h2, .qr-card h3 { margin: 0; }
.qr-code { width: min(240px, 100%); padding: 10px; border: 1px solid #c9ccd5; border-radius: 12px; background: #fff; }
.qr-code svg { display: block; width: 100%; height: auto; }
.qr-url { max-width: 100%; margin: 0; color: #4f5560; font-size: .82rem; overflow-wrap: anywhere; text-align: center; }
.qr-card-single { margin: 18px auto; }
@media (max-width: 700px) { .qr-grid { grid-template-columns: 1fr; } }
