.qr-fields { display: grid; min-width: 0; gap: .45rem; padding: 0; margin: 0 0 1rem; border: 0; }
.qr-fields label { font-weight: 650; }
.qr-fields input, .qr-fields textarea, .qr-fields select { width: 100%; min-height: 2.75rem; min-width: 0; border: 1px solid var(--line); border-radius: .5rem; background: var(--panel); color: var(--ink); padding: .6rem; font: inherit; }
.qr-fields textarea { resize: vertical; }
.qr-fields textarea:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
.qr-result { display: grid; gap: .8rem; justify-items: start; margin-top: 1rem; }
.qr-result canvas { width: min(100%, 20rem); height: auto; image-rendering: pixelated; border: 1px solid var(--line); }
