.preview-banner{position:sticky;top:0;z-index:100001;padding:10px 16px;background:#fff3c4;color:#674d00;text-align:center;font:600 12px/1.5 'Malgun Gothic',sans-serif}
.qr-admin{margin:20px 0;padding:24px;border:1px solid #eadfcd;border-radius:20px;background:#fffcf6}.qr-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.qr-heading h3{margin:0;font-size:19px}.qr-heading p,.qr-rule{font-size:12px;color:#677c8a;margin:8px 0}.qr-time{font-size:12px;white-space:nowrap}.qr-time b{font-variant-numeric:tabular-nums}.qr-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:26px;margin-top:20px}.qr-tools label{display:grid;gap:7px;font-size:12px}.qr-tools select,.qr-device-row input{font:inherit;padding:10px;border:1px solid #d7e0e7;border-radius:9px;background:white;min-width:0}.qr-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.qr-admin button,.scan-card button{font:600 13px/1.5 'Malgun Gothic',sans-serif;background:#fff;border:1px solid #ddd5c9;padding:10px 15px;border-radius:10px;cursor:pointer}.qr-admin #qrIn,.scan-card .primary{background:#e97336;color:#fff;border-color:#e97336}.qr-admin #qrOut{background:#243c4b;color:#fff;border-color:#243c4b}.qr-admin button:disabled,.scan-card button:disabled{opacity:.5;cursor:wait}.qr-admin details{margin-top:20px;border-top:1px solid #e9e1d5;padding-top:15px}.qr-admin summary{cursor:pointer;font-weight:600;font-size:13px}.qr-admin details p,.qr-hint{font-size:11px;color:#78858c;line-height:1.8}.qr-display{display:grid;justify-items:center;align-content:start;gap:10px;text-align:center;background:white;border:1px solid #ece5d9;border-radius:16px;padding:18px}.qr-display strong{font-size:13px}.qr-image{min-height:200px;display:grid;align-items:center}.qr-image img{width:230px;max-width:100%;height:auto;image-rendering:pixelated}.qr-display span,#qrStatus{font-size:12px;line-height:1.8}.qr-device-row{display:flex;gap:7px;flex-wrap:wrap;align-items:center;font-size:11px;margin-top:10px;padding:10px 0;border-bottom:1px solid #e8e4df}.qr-device-row span{flex-basis:100%}.qr-device-row input{width:155px}.error{color:#b43535!important}.scan-page{margin:0;min-height:100vh;background:#f6f8fb;color:#203543;font-family:'Malgun Gothic','Apple SD Gothic Neo',sans-serif;display:grid;place-items:center;padding:20px;box-sizing:border-box}.scan-card{width:100%;max-width:430px;box-sizing:border-box;background:#fff;border:1px solid #e4e9ec;border-radius:24px;padding:32px;box-shadow:0 16px 50px #25414d0a}.scan-brand{font-size:32px;font-weight:900;color:#e97336}.scan-card h1{font-size:23px;margin:18px 0}.scan-card p{font-size:14px;line-height:1.8;white-space:pre-line}.scan-card .muted{font-size:12px;color:#77868f}.scan-code{font-family:monospace;font-size:28px;letter-spacing:4px;padding:18px;background:#fff3e7;border-radius:12px;text-align:center}.scan-card button{width:100%;margin-top:14px}.scan-card button[hidden]{display:none}.cloud-viewer .qr-admin{font-size:12px;color:#667c89}@media(max-width:750px){.qr-layout{grid-template-columns:1fr}.qr-heading{display:block}.qr-time{display:block;margin-top:12px}.qr-admin{padding:18px}.qr-display{max-width:320px;width:100%;box-sizing:border-box;justify-self:center}}
.qr-approval-feedback{flex-basis:100%;margin:4px 0;font-size:13px!important;font-weight:600;color:#28734a!important;line-height:1.7}.qr-approval-feedback.error{color:#b43535!important}#qrApprovalStatus{font-size:13px;line-height:1.7;font-weight:600;color:#28734a}#qrApprovalStatus:empty{display:none}

.qr-test-box{border:1px solid #8fbaa5;background:#f0f7f3;border-radius:10px;padding:14px;margin:16px 0}.qr-test-box strong{font-size:14px}

.scan-page{padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom));min-height:100svh}.scan-home{text-align:center;font-size:14px}.scan-home a{color:#175b49}

.scan-location{font-size:12px;line-height:1.8;padding:14px;border:1px solid #dce6e1;border-radius:12px;background:#f3f7f4;overflow-wrap:anywhere}.scan-location a{color:#175b49;font-size:12px}.scan-location .location-proof{white-space:pre-line;font-size:12px;margin:0 0 8px}.scan-location[hidden]{display:none}
