.barcode-input{padding:14px;border:1px solid var(--control-border);border-radius:14px;margin:0 0 16px;background:var(--surface)}.barcode-input>label{margin-bottom:10px!important}.barcode-input small,.barcode-hint{display:block;font-size:11px;color:var(--secondary);line-height:1.6}.barcode-actions,.barcode-bulk{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.barcode-actions .btn,.barcode-bulk .btn{font-size:12px;min-height:38px;padding:8px 12px}.barcode-status{font-size:12px;color:var(--primary);line-height:1.5;overflow-wrap:anywhere}.barcode-format{display:flex!important;align-items:center!important;flex-direction:row!important;gap:12px!important;margin-top:10px;font-size:11px}.barcode-format select{flex:1;min-width:0}.barcode-missing{padding:12px;background:var(--accent-bg);border-radius:10px;font-size:12px}.barcode-input [hidden],.barcode-dialog [hidden]{display:none!important}.barcode-dialog{width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;border:1px solid var(--border,var(--border-subtle));border-radius:20px;padding:20px;background:var(--surface,var(--surface));color:var(--text,var(--text-primary));box-shadow:0 20px 70px #123c2933;overflow:auto}.barcode-dialog::backdrop{background:#102f2966;backdrop-filter:blur(3px)}.barcode-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.barcode-dialog h2{font-size:20px;margin:0}.barcode-dialog h3{font-size:15px;margin:12px 0 8px}.barcode-dialog p{font-size:12px;line-height:1.6}.barcode-dialog label{display:grid;gap:6px;font-size:12px;margin:10px 0}.barcode-dialog input,.barcode-dialog select{width:100%;min-width:0;min-height:40px;padding:8px 10px}.barcode-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.barcode-error{color:var(--danger-text);margin:8px 0 0;white-space:pre-line}.barcode-error:empty{display:none}.barcode-preview{background:var(--surface);padding:16px;border:1px solid var(--border-subtle);border-radius:12px;margin-top:14px}.barcode-preview img{display:block;width:100%;max-height:170px;object-fit:contain}.barcode-number{text-align:center;font-family:monospace;overflow-wrap:anywhere}.barcode-checks{display:flex;gap:12px;flex-wrap:wrap}.barcode-checks label{display:flex;align-items:center;gap:6px}.barcode-checks input,.barcode-device-dialog input[type=checkbox]{width:17px;min-height:17px}.barcode-quantities label{display:flex;align-items:center;justify-content:space-between;gap:12px}.barcode-quantities input{width:74px;flex-shrink:0}.barcode-label-preview{display:flex;flex-wrap:wrap;gap:12px;overflow:auto;padding:12px;background:#f1f4f2;border-radius:12px;max-height:280px}.barcode-label{box-sizing:border-box;flex-shrink:0;background:#fff;color:#000;border:1px solid #d6ded9;padding:1.5mm;display:flex;flex-direction:column;align-items:center;overflow:hidden;font-family:Arial}.barcode-label strong,.barcode-label span{font-size:7pt;line-height:9pt;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.barcode-label img{width:100%;min-height:0;flex:1}.barcode-label small{font-size:6pt;white-space:nowrap;line-height:8pt}.barcode-device-dialog details{border-top:1px solid var(--border);padding:12px 0}.barcode-device-dialog summary{cursor:pointer;font-weight:600;font-size:14px}.barcode-device-dialog output{display:block;font-size:12px;padding:10px;background:var(--accent-bg);border-radius:10px;overflow-wrap:anywhere}.barcode-camera video{width:100%;max-height:60dvh;background:var(--button-bg);border-radius:12px;object-fit:cover}.barcode-camera{width:min(640px,calc(100vw - 24px))}.barcode-bulk:empty{display:none}.barcode-bulk{background:var(--accent-bg);padding:8px 12px;border-radius:10px}.barcode-dialog :focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media(max-width:600px){.barcode-actions .btn{min-height:44px}.barcode-dialog{padding:16px;width:calc(100vw - 20px)}.barcode-camera{width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:16px}.barcode-camera video{height:60dvh}.barcode-fields{gap:0 8px}.barcode-input{padding:12px}.barcode-print-dialog{max-height:calc(100dvh - 20px)}}
