.pos-scanner-backdrop{z-index:120;background:color-mix(in srgb, var(--ink) 72%, transparent);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.pos-scanner-dialog{border:2px solid var(--ink);background:var(--surface);width:min(100%,620px);max-height:calc(100dvh - 40px);color:var(--ink);overflow-y:auto}.pos-scanner-dialog>header{border-bottom:2px solid var(--pos-rule,var(--border));justify-content:space-between;align-items:center;min-height:68px;padding:10px 16px;display:flex}.pos-scanner-dialog h2{margin:0;font-size:1.3rem}.pos-scanner-dialog button,.pos-scanner-dialog select,.pos-scanner-dialog input{min-height:44px;font:inherit}.pos-scanner-dialog button{color:inherit;cursor:pointer}.pos-scanner-dialog>header button{background:0 0;border:0;place-items:center;width:44px;display:grid}.pos-scanner-camera{background:var(--ink);min-height:260px;position:relative;overflow:hidden}.pos-scanner-camera video{object-fit:cover;width:100%;height:min(48dvh,420px);display:block}.pos-scanner-camera>span{border:3px solid var(--gold);box-shadow:0 0 0 100vmax color-mix(in srgb, var(--ink) 35%, transparent);position:absolute;inset:20%}.pos-scanner-controls{align-items:end;gap:12px;padding:14px 16px 0;display:flex}.pos-scanner-controls label{flex:1;grid-template-columns:auto 1fr;align-items:center;gap:6px 8px;display:grid}.pos-scanner-controls select{border:2px solid var(--pos-rule,var(--border));background:var(--surface);width:100%;color:var(--ink);grid-column:1/-1;padding-inline:10px}.pos-scanner-controls button{border:2px solid var(--pos-rule,var(--border));background:var(--surface-subtle);align-items:center;gap:8px;padding-inline:14px;display:flex}.pos-scanner-controls button[aria-pressed=true]{background:var(--gold);color:var(--gold-foreground)}.pos-scanner-message{min-height:44px;color:var(--muted);margin:0;padding:12px 16px}.pos-scanner-manual{border-top:2px solid var(--pos-rule,var(--border));padding:14px 16px 18px}.pos-scanner-manual>label{align-items:center;gap:8px;margin-bottom:8px;font-weight:700;display:flex}.pos-scanner-manual>div{display:flex}.pos-scanner-manual input{border:2px solid var(--pos-rule,var(--border));background:var(--surface);min-width:0;color:var(--ink);flex:1;padding-inline:12px}.pos-scanner-manual button{background:var(--gold);color:var(--gold-foreground);border:0;padding-inline:18px;font-weight:800}@media (max-width:520px){.pos-scanner-backdrop{padding:0}.pos-scanner-dialog{border:0;width:100%;min-height:100dvh;max-height:100dvh}.pos-scanner-camera video{height:42dvh}}
