.code-scanner{display:grid;gap:12px}
.code-scanner-viewport{position:relative;overflow:hidden;aspect-ratio:4/3;max-height:55vh;max-height:55dvh;background:#071b2f;border-radius:12px;touch-action:none}
.code-scanner-viewport video{display:block;width:100%;height:100%;object-fit:cover;transform-origin:center}
.code-scanner-controls{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.code-scanner-controls .btn{min-width:52px;padding:8px 12px}
.code-scanner-controls [aria-pressed=true]{background:#078f8e;color:white}
.code-scanner-camera{max-width:100%;font:inherit}
.code-scanner-status{margin:0;color:#61788f;font-size:14px;line-height:1.4}
.code-scanner [hidden]{display:none!important}
@media(max-width:600px){.code-scanner-viewport{aspect-ratio:3/4}.code-scanner-controls .btn{min-height:42px}}
