:root{color-scheme:light;font:14px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;color:#000;background:#fff}
*{box-sizing:border-box}
body{margin:0;padding:16px;background:#fff;min-height:100svh}
#scan-feedback{width:100%;min-height:32px;padding:6px 12px;margin:8px 0;background:#fff;border:1px solid #000;color:#000}
#scan-feedback[data-flash=success]{background:#00b83f}
#scan-feedback[data-flash=repeat]{background:#eee}
#scan-feedback[data-flash=error]{background:#ff3030}
main{max-width:1100px;margin:auto}
.status{margin-bottom:16px;overflow-wrap:anywhere}
p{margin:8px 0}
p:empty{display:none}
button,.button,input,select{font:inherit;color:#000;background:#fff;border:1px solid #000;border-radius:0;padding:8px 12px}
button,.button{cursor:pointer;display:inline-block;text-align:center}
button:disabled{color:#777;border-color:#aaa;cursor:default}
button:focus-visible,.button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid #000;outline-offset:3px}
.choices,.scan-tools,#controls{display:flex;flex-wrap:wrap;gap:8px}
details,footer,#controls,#transfer-panel{margin-top:16px}
summary{cursor:pointer}
label{display:block;margin:8px 0}
input,select{max-width:100%;width:100%}
input[type=file]{width:auto}
#pairing,#symbol{display:block;width:min(100%,calc(100svh - 180px));height:auto;max-height:calc(100svh - 180px);object-fit:contain;margin:0 auto;background:#fff;image-rendering:pixelated}
.camera{background:#fff;aspect-ratio:4/3;max-height:65svh}
video{width:100%;height:100%;object-fit:contain}
.scan-tools{align-items:center;margin-top:8px}
.scan-tools label{margin:0}
.file-row{display:flex;justify-content:space-between;gap:16px;overflow-wrap:anywhere}
progress{width:100%;height:8px;accent-color:#000;margin-top:8px}
#downloads{display:grid;gap:8px;margin-top:16px}
a{color:#000;overflow-wrap:anywhere}
#next-file{margin-top:8px}
[hidden]{display:none!important}

.sender-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,180px);gap:12px;align-items:end;margin-bottom:16px}
.sender-fields input{width:100%;min-width:0}
