#wp-qr-code-scanner *{
    box-sizing:border-box;
}

#wp-qr-code-scanner{
    background:#f8fafc;
    color:#111;
    font-family:Arial,sans-serif;
    padding:10px;
    border-radius:12px;
}

#wp-qr-code-scanner .header{
    background:#fff;
    padding:20px 20px 10px;
    border-radius:10px;
    margin-bottom:15px;
    border:1px solid #e2e8f0;
}

#wp-qr-code-scanner h2{
    margin:0 0 10px;
    font-size:22px;
}

#wp-qr-code-scanner .layout{
    display:grid;
    grid-template-columns:1fr;
    gap:15px;
}

#wp-qr-code-scanner .panel{
    background:#fff;
    border:1px solid #dbe3ee;
    border-radius:10px;
    overflow:hidden;
}

#wp-qr-code-scanner .panel-header{
    padding:15px;
    background:#e2e8f0;
    color:#000;
    font-weight:bold;
}

#wp-qr-code-scanner .content{
    padding:15px;
}

#wp-qr-code-scanner label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    font-weight:bold;
    color:#111;
}

#wp-qr-code-scanner input[type="file"],
#wp-qr-code-scanner input[type="text"],
#wp-qr-code-scanner select{
    width:100%;
    border:1px solid #ddd !important;
    border-radius:8px;
    padding:12px;
    background:#fff;
    font-size:14px;
    color:#111 !important;
}

#wp-qr-code-scanner input[type="file"]::file-selector-button{
    border:none;
    background:#eee;
    color:#555;
    padding:10px 14px;
    border-radius:6px;
    margin-right:12px;
    cursor:pointer;
    font-weight:bold;
}

#wp-qr-code-scanner .grid{
    display:grid;
    grid-template-columns:1fr;
    gap:15px;
}

#wp-qr-code-scanner .grid-3{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:15px;
    margin-top:15px;
}

#wp-qr-code-scanner .controls{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:15px;
}

#wp-qr-code-scanner button{
    border:none;
    border-radius:8px;
    padding:10px 14px;
    background:#1b6997 !important;
    color:#fff;
    cursor:pointer;
    font-weight:bold;
}

#wp-qr-code-scanner button:hover{
    opacity:.9;
    background:#d95a00 !important;
}

#wp-qr-code-scanner .results{
    padding:15px;
}

#wp-qr-code-scanner .result{
    padding:12px;
    border-radius:8px;
    margin-bottom:10px;
    font-size:14px;
    line-height:1.5;
}

#wp-qr-code-scanner .error{
    background:#fee2e2;
    border-left:5px solid #ef4444;
    color:#7f1d1d;
}

#wp-qr-code-scanner .success{
    background:#dcfce7;
    border-left:5px solid #22c55e;
    color:#14532d;
}

.CodeMirror{
    height:250px !important;
    font-size:14px;
    background:#fff;
    color:#111;
    border:1px solid #ddd;
    margin-top:10px;
    margin-bottom:10px;
}

.CodeMirror-gutters{
    background:#fff;
    border-right:1px solid #e2e8f0;
}

.CodeMirror-placeholder{
    color:#777 !important;
    opacity:1 !important;
}

#qr-output-box{
    display:none;
    margin-top:25px;
    background:#fff;
    border:1px solid #dbe3ee;
    border-radius:10px;
    overflow:hidden;
}

#qr-output-box .CodeMirror{
    height: 300px !important;
    margin:10px;
    font-size:12px;
}

#qr-output-box .CodeMirror-line{
    padding-left:20px !important;
}

#qr-output-box .CodeMirror-scroll{
    overflow-x:hidden !important;
    overflow-y:auto !important;
}

#qr-preview{
    width:100%;
    max-height:250px;
    object-fit:contain;
    border:1px solid #ddd;
    border-radius:8px;
    display:none;
    margin-top:10px;
}

#qr-video{
    width:100%;
    border:1px solid #ddd;
    border-radius:8px;
    display:none;
    margin-top:10px;
}

@media(max-width:900px){

    #wp-qr-code-scanner .grid,
    #wp-qr-code-scanner .grid-3{
        grid-template-columns:1fr;
    }

}
	
	
	#wp-qr-code-scanner .upload-box,
#wp-qr-code-scanner .camera-box{
    position:relative;
    border:2px dashed #cbd5e1;
    border-radius:14px;
    padding:30px 20px;
    text-align:center;
    background:#f8fafc;
    transition:.3s;
}

#wp-qr-code-scanner .upload-box:hover,
#wp-qr-code-scanner .camera-box:hover{
    border-color:#1b6997;
    background:#f0f9ff;
}

#wp-qr-code-scanner .upload-icon,
#wp-qr-code-scanner .camera-icon{
    font-size:48px;
    line-height:1;
    margin-bottom:10px;
}

#wp-qr-code-scanner .upload-title,
#wp-qr-code-scanner .camera-title{
    font-size:16px;
    font-weight:700;
    margin-bottom:6px;
}

#wp-qr-code-scanner .upload-subtitle,
#wp-qr-code-scanner .camera-status{
    font-size:13px;
    color:#64748b;
    margin-bottom:15px;
}

#wp-qr-code-scanner .upload-box input[type=file]{
    position:absolute;
    inset:0;
    opacity:0;
    cursor:pointer;
    width:100%;
    height:100%;
}

#wp-qr-code-scanner .camera-btn{
    min-width:180px;
}

#wp-qr-code-scanner .camera-box.active{
    border-color:#22c55e;
    background:#f0fdf4;
}

#wp-qr-code-scanner .camera-box.active .camera-status{
    color:#15803d;
    font-weight:600;
}

#wp-qr-code-scanner .camera-box.off{
    border-color:#f59e0b;
    background:#fffbeb;
}

#wp-qr-code-scanner .camera-box.off .camera-status{
    color:#b45309;
}

#qr-preview{
    margin-top:15px;
    background:#fff;
    padding:10px;
}

#qr-video{
    margin-top:15px;
    background:#000;
}
	
	#wp-qr-code-scanner .camera-select-wrapper select{
    margin-top:8px;
}
	#wp-qr-code-scanner .camera-select-wrapper{
    transition:.3s ease;
}

