.qr-dialog{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0;width:min(420px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;border:1px solid var(--line);border-radius:24px;padding:28px;text-align:center;background:var(--bg);color:var(--ink);box-shadow:0 24px 90px #0003}.qr-dialog::backdrop{background:#183729aa;backdrop-filter:blur(8px)}.qr-dialog-close{position:absolute;right:12px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:#eaf1e5;color:#405b47;font:inherit;font-size:24px;cursor:pointer}.qr-dialog h2{margin:16px 0 12px;font-size:23px}.qr-dialog p{margin:12px 0}.qr-dialog img{display:block;margin:18px auto;width:min(250px,100%);height:auto;border-radius:12px}.qr-match{display:block;letter-spacing:5px;font-size:25px;color:#587457;font-weight:800}.qr-legal{font-size:12px}.qr-setting{display:flex;align-items:center;gap:10px;padding:16px 0;font-weight:600}.qr-setting input{width:20px;height:20px;accent-color:#587457}.qr-confirm-panel{max-width:460px}.qr-confirm-panel dl{display:grid;grid-template-columns:80px minmax(0,1fr);gap:10px;text-align:left;margin:20px 0;background:#f1f5ec;padding:16px;border-radius:14px}.qr-confirm-panel dd{overflow-wrap:anywhere}.qr-confirm-panel dt{color:var(--muted)}.qr-confirm-panel>p{margin:16px 0}.qr-confirm-panel .account-actions{justify-content:center}.qr-confirm-account{font-weight:700}#qrScannerVideo{display:block;width:100%;max-height:340px;object-fit:cover;border-radius:16px;background:#203b2b;margin:18px 0}#qrLoginBtn{margin-top:10px}.qr-dialog button:disabled,.qr-confirm-panel button:disabled{opacity:.5;cursor:wait}.qr-dialog button:focus-visible,.qr-setting input:focus-visible{outline:3px solid #7ca86d;outline-offset:3px}

#loginForm{position:relative}#loginForm #qrLoginBtn{position:absolute;top:16px;right:16px;margin:0;width:40px;height:40px;display:grid;place-items:center;padding:8px;border:0;border-radius:12px;background:transparent;color:var(--muted);cursor:pointer;transition:color .18s ease,background .18s ease,transform .18s ease}#loginForm #qrLoginBtn:hover{color:#587457;background:#edf3e8}#loginForm #qrLoginBtn:active{transform:scale(.94)}#loginForm #qrLoginBtn:focus-visible{outline:3px solid #7ca86d;outline-offset:3px}#qrLoginBtn svg{display:block;pointer-events:none}

.qr-dialog .qr-dialog-close{display:grid;place-items:center;box-sizing:border-box;min-width:38px;min-height:38px;padding:0;margin:0;line-height:1}.qr-dialog-close .tyy-icon{display:flex;align-items:center;justify-content:center;vertical-align:middle;font-size:24px;line-height:1}.qr-dialog .qr-dialog-close .tyy-icon>img,.qr-dialog .qr-dialog-close .tyy-icon>svg{display:block;width:100%;height:100%;margin:0;padding:0;border-radius:0;object-fit:contain}
.qr-dialog>form{padding:0!important;margin:0}.qr-dialog #qrScannerRetry{border:1px solid #d5e1cd;border-radius:12px;background:#edf3e8;color:#405b47;font:inherit;padding:10px 16px;cursor:pointer}.qr-dialog .qr-gallery{display:flex;flex-direction:column;gap:8px;align-items:center;margin-top:16px;font-size:13px;color:var(--muted)}.qr-dialog .qr-gallery input{max-width:100%;font:inherit}.qr-dialog .qr-gallery input::file-selector-button{border:0;border-radius:10px;background:#edf3e8;color:#405b47;padding:9px 12px;margin-right:8px;cursor:pointer}
