.qr-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:inherit;cursor:zoom-in;font:inherit}
.qr-img{transition:transform .18s ease,box-shadow .18s ease}
.qr-item:hover .qr-img,.qr-item:focus-visible .qr-img{transform:scale(1.04);box-shadow:0 6px 16px rgba(59,130,246,.2)}
.qr-item:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:10px}
.qr-preview-modal[hidden]{display:none}
.qr-preview-modal{position:fixed;inset:0;z-index:1500;display:grid;place-items:center;padding:24px}
.qr-preview-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.48);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.qr-preview-dialog{position:relative;width:min(420px,100%);padding:18px;border:1px solid rgba(255,255,255,.62);border-radius:24px;background:var(--sidebar-bg);box-shadow:0 24px 70px rgba(15,23,42,.3);text-align:center}
.qr-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;text-align:left}
.qr-preview-heading h2{margin:0;color:var(--text-primary);font-size:18px;line-height:1.3}
.qr-preview-close{display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:10px;background:var(--accent-light);color:var(--text-secondary);font-size:26px;line-height:1;cursor:pointer}
.qr-preview-close:hover,.qr-preview-close:focus-visible{background:var(--accent);color:#fff}
.qr-preview-image{display:block;width:min(340px,100%);height:auto;margin:0 auto;border-radius:16px;background:#fff;box-shadow:0 8px 26px rgba(15,23,42,.1)}
.qr-preview-dialog p{margin:14px 0 0;color:var(--text-secondary);font-size:14px}
body.dark .qr-preview-dialog{border-color:rgba(255,255,255,.12)}
@media(max-width:1000px){.qr-preview-modal{padding:18px}}
