.mode-toggle{display:flex;gap:.5rem;background:var(--bg-secondary);padding:.25rem;border-radius:8px;width:fit-content;margin-bottom:1.5rem}.mode-btn{padding:.75rem 1.5rem;border:none;background:transparent;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease;color:var(--text-secondary)}.mode-btn.active{background:var(--bg-primary);color:var(--text-primary);box-shadow:0 2px 4px #0000001a}.mode-btn:hover:not(.active){color:var(--text-primary)}.generate-section,.scan-section{display:flex;flex-direction:column;gap:1.5rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{font-weight:500;font-size:.9rem}.input-group select,.input-group input{padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:1rem}.input-group input:focus,.input-group select:focus{outline:none;border-color:var(--accent-color)}.error-message{padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:var(--color-error)}.barcode-result{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:1.5rem;background:var(--bg-secondary);border-radius:12px}.barcode-image{max-width:100%;height:auto;background:#fff;padding:1rem;border-radius:8px}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.scan-options{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem}.or-divider{color:var(--text-secondary);font-size:.9rem}.file-upload{cursor:pointer}.camera-container{position:relative;border-radius:12px;overflow:hidden;background:#000}.camera-preview{width:100%;max-height:400px;object-fit:cover}.scan-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.scan-frame{width:70%;height:50%;border:2px solid rgba(99,102,241,.8);border-radius:12px;box-shadow:0 0 0 9999px #00000080}.stop-btn{position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.scan-result{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background:var(--bg-secondary);border-radius:12px}.result-label{font-size:.9rem;color:var(--text-secondary)}.result-value{font-size:1.25rem;font-weight:600;word-break:break-all;text-align:center;max-width:100%}.privacy-note{margin-top:2rem;padding:1rem;background:var(--bg-secondary);border-radius:8px;text-align:center;font-size:.9rem;color:var(--text-secondary)}
