.tool-qr-scanner .tool-container{display:flex;flex-direction:column;gap:var(--spacing-xl);}
.tool-qr-scanner .mode-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);}
.tool-qr-scanner .tab-btn{flex:1;padding:var(--spacing-md);border:2px solid var(--border);background:var(--bg-body);border-radius:var(--radius-sm);font-weight:600;cursor:pointer;}
.tool-qr-scanner .tab-btn.active{background:var(--primary);color:white;}
.tool-qr-scanner .panel{background:var(--bg-surface);border:2px solid var(--border);border-radius:var(--radius-md);padding:var(--spacing-lg);}
.tool-qr-scanner .panel.hidden{display:none;}
.tool-qr-scanner .video-container{width:100%;max-width:500px;margin:0 auto var(--spacing-lg);}
.tool-qr-scanner #video{width:100%;border:2px solid var(--border);border-radius:var(--radius-md);}
.tool-qr-scanner .upload-area{border:2px dashed var(--border);border-radius:var(--radius-md);padding:var(--spacing-xl);text-align:center;cursor:pointer;}
.tool-qr-scanner .upload-area:hover{border-color:var(--primary);background:var(--bg-light);}
.tool-qr-scanner .upload-icon{font-size:4rem;margin-bottom:var(--spacing-md);}
.tool-qr-scanner .result-panel{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:rgba(16,185,129,0.1);border:2px solid var(--success);border-radius:var(--radius-md);}
.tool-qr-scanner .result-panel.hidden{display:none;}
.tool-qr-scanner .result-text{padding:var(--spacing-md);background:var(--bg-body);border-radius:var(--radius-sm);font-family:'Courier New',monospace;word-break:break-all;margin:var(--spacing-md) 0;}
.tool-qr-scanner .btn.hidden{display:none;}
